/* 首页样式 */
/* 版心 */
.wrapper {
  margin: 0 auto;
  width: 1200px;
}

body {
  background-color: #f3f5f7 !important;
}

.header {
    height: 100px;
    background-color: #fff;
}

.header .wrapper {
    padding-top: 29px;
    /* 顶部间隔 */
    display: flex;
    /* 让盒子水平 */
}

.logo a {
    display: block;
    /* 让宽高在a生效 */
    width: 195px;
    height: 41px;
    background-image: url(../img/images/logo.png);
    font-size: 0;
    /* 隐藏文字 */
}

/* 导航 */
.nav {
    margin-left: 102px;
}
.nav ul {
    display: flex;
    /* 默认li换行，让盒子水平 */
}
.nav li {
    margin-right: 24px;
}
.nav li a {
    display: block;
    padding: 6px 8px;
    line-height: 27px;
    font-size: 19px;
}

/* active类选择器，表示默认选中的a */
.nav li .active,
.nav li a:hover {
    border-bottom: 2px solid #00a4ff;
}


.search  {
    display: flex;
    /* 给input和a一个父盒子，让他们水平，并且它们侧轴会拉伸，跟父级一样 */
    width: 412px;
    height: 40px;
    padding-left: 19px;
    padding-right: 10px;
    background-color: #f3f5f7;
    border-radius: 20px;

}

.search input {
    flex: 1;
    /* 作用: 在父元素 display: flex 时，当前子项会填充并与其他 flex: 1 的兄弟等分主轴上的可用空间。
    常见用途: 等宽列、让某项占满剩余空间。
    对比:
    flex: auto → 1 1 auto：先按内容大小，再分配剩余空间。
    flex: none → 0 0 auto：不伸不缩，按内容/基础尺寸布局。 */
    border: 0;
    background-color: transparent;
    outline: none;
    /* 去掉表单控件的焦点框 */
}

/* ::placeholder就是选中placeholder 属性文字样式 */
.search input::placeholder {
    font-size: 14px;
    color: #999;

}

/* 父级已经加了flex，子级变成弹性盒子，加宽高生效,不用转显示模式 */
.search a {
    align-self: center;
    width: 16px;
    height: 16px;
    background-image: url(../img/images/search.png);
}


/* 用户区 */
.user {
    margin-left: 32px;
    margin-top: 4px;
}

.user img {
    vertical-align: middle;
    /* 处理行内块和和行内垂直方向对齐方式 */
    border-radius: 20px;
}

.user a span {
    font-size: 16px;
    color: #333;
    margin-top: 9px;
    margin-left: 7px;
}

/* banner区域 */
.banner {
    height: 420px;
    background-color: #0092cb;
}

.banner .wrapper {
    display: flex; 
    /* 弹性盒子 */
    justify-content: space-between;
    /* 主轴对齐方式, left 和 right*/
    height: 420px;
    background-image: url(../img/uploads/banner.png);
}

/* 测导航 */
.banner .left {
    padding: 3px 20px;
    width: 191px;
    height: 420px;
    background-color: rgba(0,0,0,0.42);
}

.banner .left a{
    display: block;
    /* 块级，默认是父级的100% */
    height: 46px;
    background: url(../img/images/right.png) no-repeat right center;
    line-height: 46px;
    /* 针对元素内文本的行高（行间距）进行设置,控制文本在垂直方向的排版和居中效果。当 line-height 与元素的 height 相等时，
    文本会在元素内垂直居中（这是常用的垂直居中技巧） */
    font-size: 16px;
    color: #fff;
}
.banner .left a:hover {
    background-image: url(../img/images/right-hover.png);
    color:#00a4ff;
}

/* 课程表区域 */
.banner .right {
    margin-top: 60px;
    width: 218px;
    height: 305px;
    background-color: #209dd5;
}

.banner .right h3 {
    margin-left: 14px;
    height: 48px;
    line-height: 48px;
    font-size: 15px;
    color: #fff;
    font-weight: 400;
}

.banner .right .content {
    padding: 14px;
    height: 257px;
    background-color: #fff;
    /* color是给文本，bgc是给盒子 */
    border-radius: 10px;
}

.banner .right dl {
    margin-bottom: 12px;
    border-bottom: 1px solid #e0e0e0;
    /* 样式为 solid（实线，其他常见样式还有 dashed 虚线、dotted 点线等） */
}

.banner .right dt {
    margin-bottom: 8px;
    font-size: 14px;
    line-height: 20px;
    font-weight: 700;
}

.banner .right dd {
    margin-bottom: 8px;
    font-size: 12px;
    line-height: 16px;
}

.banner .right dd span {
    color: #00a4ff;
}

.banner .right dd strong {
    color: #7d7d7d;
    font-weight: 400;
}

.banner .right a  {
    display: block;
    height: 32px;
    background-color: #00a4ff;
    text-align: center;
    /* 水平居中 */
    border-radius: 15px;
    line-height: 32px;
    color: #fff;
    font-size: 14px;

}

/* 推荐区域 */
.recommend {
    display: flex;
    margin-top: 11px;
    padding: 0 20px;
    line-height: 60px;
    height: 60px;
    background-color: #fff;
    box-shadow: 0px 1px 2px 0px rgba(0,0,0,0.1);
}

.recommend h3 {
    color: #00a4ff;
    font-size: 18px;
    font-weight: 400;
}

.recommend ul {
    flex: 1;
    /* 让盒子水平拉伸，填满剩余空间，把修改兴趣挤到最右边去 */
    display: flex;
}

.recommend ul li a {
    padding: 0 24px;
    border-right: 1px solid #e0e0e0;
    /* 行内标签，a由内容撑开，小技巧 */
    font-size: 16px;

}

.recommend ul li:last-child a {
    border-right:none;
}

.recommend .modify {
    font-size: 16px;
    color: #00a4ff;
}


/* 推荐课程 */
.course {
    margin-top: 15px;

}

/* 标题，公共类，不设置父级 */
.hd {
    display: flex;
    justify-content: space-between;
    /* 主轴对齐方式，放两边 */
    height: 60px;
    line-height: 60px;
}

.hd h3 {
    font-size: 21px;
    font-weight: 400;
}

.hd .more {
    font-size: 14px;
    color: #999;
    background: url(../img/images/more.png) no-repeat right center;
    /* 弹性盒子默认侧轴拉伸，高不跟字一样大，解决如上右补充 */
    /* 前面写的bgrimage，一开始是铺满的，然后加了no repeat之后消失不见了，改成background才变好 */
    padding-right: 20px;
}

/* 课程内容，公共类 */
.bd ul {
    display: flex;
    flex-wrap: wrap;
    /* 弹性盒子换行显示 */
    justify-content: space-between;
    /* 主轴对齐方式，拉开水平距离 */
    /* align-content: space-between; */
    /* 行之间的间距，这个没用，用下面的bottom  */
}
.bd li {
    margin-bottom: 14px;
    width: 228px;
    height: 271px;
    background-color: pink;   
}

.bd li .pic {
    /* 不要写成.li */
    height: 156px;
}

.bd li .text {
    padding: 20px;
    height: 115px;
    background-color: #fff;
}

.bd li .text h4 {
    margin-bottom: 13px;
    height: 40px;
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
    
}

.bd li .text p {
    font-size: 14px;
    line-height: 20px;
    color: #999;
}

.bd li .text p span {
    color: #fa6400;
}
.bd li .text p i{
    font-style: normal;
    /* 斜体掰正 */
}

/* 前端 */
.hd ul {
    display: flex;

}

.hd li {
    margin-right: 60px;
}

.hd li a {
    font-size: 16px;
    margin-right: 60px;
}

.hd li .active {
    color: #00a4ff;
}

.bd {
    display: flex;
    justify-content: space-between;
    /* 左右分开 */
}
.bd .left {
    width: 228px;
    /* background-color: pink; */
}

.bd .right {
    width: 957px;
    /* background-color: pink; */
}

.bd .right .top {
    margin-bottom: 15px;
    height: 100px;
}

.footer {
    margin-top: 60px;
    padding-top: 60px;
    height: 273px;
    background-color: #fff;
}

.footer .wrapper {
    display: flex;
    justify-content: space-between;
}
.footer .left {
    width: 440px;
    /* background-color: pink; */
}

.footer .left p {
    margin-top: 24px;
    margin-bottom: 14px;
}

.footer .left .download {
    display: block;
    width: 120px;
    height: 36px;
    border: 1px solid #00a4ff;
    text-align: center;
    line-height: 34px;
    color: #00a4ff;
}

.footer .right {
    display: flex;
}

.footer .right dl {
    margin-right: 130px;
}

.footer .right dt {
    margin-bottom: 12px;
    font-size: 16px;
    line-height: 23px;
}

.footer .right a {
    font-size: 14px;
    color: #666;
    line-height: 24px;
}