﻿* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* 设置根元素的字体大小 */
html {
    /*font-size: 62.5%;*/ /* 10px based on browser default of 16px */
     /* 1rem = 10px */
}

body {
    font-size: 0.875rem; /* 12px based on root element */
    font-family: 'Microsoft YaHei', Helvetica, Arial, sans-serif;
    color: #333;
    line-height: 1.6;
    background-color: #f4f4f4;
    overflow-y:hidden;
}
/* 链接样式 */
a {
    color: #007bff;
    text-decoration: none;
}

    a:hover {
        text-decoration: underline;
    }
/* 常用标题样式 */
h1, h2, h3, h4, h5, h6 {
    margin-bottom: 0.3125rem;
    font-weight: bold;
    line-height: 1.8;
}
.roman {
    font-family: "Times New Roman";
}
.color3d {
    color: #3d3d3d;
}

h1 {
    font-size: 1.5rem; /* 24px based on root element */
}

h2 {
    font-size: 1.25rem; /* 20px based on root element */
}

h3 {
    font-size: 1.125rem; /* 18px based on root element */
}

h4 {
    font-size: 1rem; /* 16px based on root element */
}

h5 {
    font-size: 0.875rem; /* 14px based on root element */
}

h6 {
    font-size: 1.2rem; /* 12px based on root element */
}

.pl5 {
    padding-left: 5px;
}
.pl10 {
    padding-left: 10px;
}

.pr10 {
    padding-right: 10px;
}

.pl20 {
    padding-left: 20px;
}

.plr10 {
    padding: 0 10px;
}

.pt10 {
    padding-top: 10px;
}

.bold {
    font-weight: bold;
}
.red {
    color:red;
}
.progress {
    border-radius: 0 20px 20px 0 !important;
    height:18px !important;
}
.progress-bar {
    border-radius: 0 20px 20px 0 !important;
    background-color: #6495ED !important;
}
/*使得图片在div里正常显示*/
.img {
    object-fit: none;
    width: 100%;
    height: 100%;
}
.img100 {
    width: 100%;
    height: 100%;
}
li, ol, p, ul {
    /*line-height: 1.125rem*/
}
button, input, select, td, textarea, th {
    font-size: 0.875rem;
}

button, input, select, textarea {
    outline: 0;
}

    button:hover {
        cursor: pointer
    }
button, input, select, textarea {
    font-family: 'Microsoft YaHei',Helvetica,Arial,sans-serif;
    -webkit-font-smoothing: antialiased;
    padding: 0.3125rem;
    margin-bottom: 0.625rem;
    border: 1px solid #ddd;
}

.center {
    display: flex;
    justify-content: center;
    align-items: center;
}
.contentDiv {
    background-color: #FFF;
    margin-top: 56px;
}
.wyContent {
    /*overflow-y: auto;*/
    overflow:hidden;
    /*padding: 30px 0 10px 0;*/
    /*margin-left: 240px;*/
    height:calc(100vh - 96px);
}
.left-menu {
    display:flex;
    gap: 20px;
}
.right-menu {
    display: flex;
    justify-content: space-between;
    flex: 1;
    align-items:center;
}
.content-white {
    height: 100%;
    background: #fff;
    padding: 15px 30px 10px 30px;
}
.paixu-menu {
    border-radius: 4px;
    background: #F7F9FC;
    display: flex;
    align-items: center;
    border: 1px solid #DDE0E7;
}
    .paixu-menu > div {
        padding: 0 10px;
        background:#fff;
    }
    .paixu-menu > .left-img {
        border-right: 1px solid #DDE0E7;
    }
        .paixu-menu >div:hover {
            background: #F7F9FC;
        }
        .paixu-menu >div.select {
            background: #F7F9FC;
        }
        .paixu-menu img{
            width:25px;
        }

.content-menu {
    height: 45px;
    /* line-height: 2.125rem; */
    color: #3D3D3D;
    font-size: 0.875rem;
    padding: 0 50px;
    /* border-bottom: 1px solid #D8D8D8; */
    /* margin-bottom: 1.75rem; */
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
    background: #F4F7FF;
}
.content-one {
    border-radius: 10px;
    background: #FFFFFF;
    border: 1px solid #E8E8E8;
}
.content-file {
    border-radius: 10px;
    background: #FFFFFF;
    border: 1px solid #E8E8E8;
    flex: 1;
    overflow-y: auto;
}
.left-content-padding {
    padding: 15px;
}
.right-content-padding {
    padding: 30px 40px;
}
.content-menu img {
    cursor: pointer;
}
    .course-first {
        border-radius: 6px;
        background-color: #fff;
        border: 1px solid #fff;
        box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.05);
        min-height: 550px;
        font-size: 0.875rem;
    }
    .course-first > div {
        padding: 40px;
    }
.content-content {
    border-radius: 6px;
    background-color: #F4F7FF;
    /*min-height: 550px;*/
    font-size: 0.875rem;
    padding: 15px;
    border: 0;
    box-shadow: none;
    height: calc(100% - 45px);
    padding-top:0;
}
.left-menu img {
    width: 25px
}
    .content-content > div {
        /*padding:10px 40px 40px 40px;*/
    }
.index-index {
    overflow-y: auto;
    height: calc(100vh - 40px);
    min-width:1400px;
}
.index-headerDiv {
    /*height: 56px;*/
    padding:15px;
    background-color: #fff;
    display: flex;
    justify-content: center;
}
.index-indextop {
    width: 100%;
    height: 320px;
    background-image: url(/image/index/index.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
    background-position: center;
}
.index-search {
    width: 900px;
    height: 60px;
    border-radius: 500px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    background: linear-gradient(270deg, #647FED 0%, #6495ED 100%);
    box-sizing: border-box;
    border: 1px solid #FFFFFF;
    box-shadow: 0px 4px 10px 0px rgba(100, 123, 237, 0.38);
    bottom: -40px;
    display: flex;
    align-items: center;
    padding: 0 50px;
    gap: 20px; /* 增加输入框和按钮间距 */
}
.index-search-input {
    flex-grow: 1; /* 占据剩余空间 */
}
    .index-search-input input {
        width: 100%;
        font-size: 1rem;
        color: #FFFFFF;
        background: transparent; /* 背景透明 */
        border: none; /* 移除默认边框 */
        outline: none; /* 移除聚焦轮廓 */
        margin: 0;
    }
.index-search .index-search-button {
    margin-left: auto; /* 将按钮推到右侧 */
    flex-shrink: 0; /* 防止按钮被压缩 */
}
.index-search-button img {
    width: 45px;
    background: #FFFFFF;
    border-radius: 30px;
    cursor:pointer;
}
.index-content-parent {
    width: 100%;
    display: flex;
    justify-content: center;
    padding-top: 50px;
}
.index-content {
    width:85%;
}
    .index-content .content-head {
        border-bottom: 1px solid #D8D8D8;
        display:flex;
        justify-content:space-between;
        padding:0 50px;
    }
.content-head .head-top {
    display: flex;
    gap: 20px;
    padding: 5px 0;
    line-height: 32px;
}
.head-top span {
    font-size: 1.125rem;
    color: #6F6F6F;
    width: 100px;
    cursor: pointer;
    display: flex;
    justify-content: center;
    border-bottom: 1px solid #f4f4f4;
}
.head-top .active {
    font-size: 1.25rem;
    color: #6495ED;
    font-weight: bolder;
    border-bottom: 1px solid #6495ED;
}
.head-top span:hover {
    font-size: 1.25rem;
    color: #6495ED;
    font-weight: bolder;
    border-bottom: 1px solid #6495ED;
}
.index-course-list {
    display: flex;
    gap: 50px;
    flex-wrap: wrap;
    padding: 20px 50px;
    font-size: 0.875rem;
    color: #6F6F6F;
    /*justify-content:center;*/
}
    .index-course-list > div {
        width: 321px;
        /*height: 526px;*/
        border-radius: 20px;
        background: #FFFFFF;
        box-shadow: 0px 4px 10px 0px rgba(100, 123, 237, 0.34);
    }
.course-img {
    height: 300px;
    border-radius: 20px 20px 0px 0px;
    overflow: hidden
}
    .course-img img {
        width: 100%;
        height: 100%;
    }
    .headerDiv {
        height: 56px;
        background-color: #ffffff;
        /*background-color: #4c5370;*/
        display: flex;
        justify-content: center;
        background: #6495ED;
    }
.content-course {
    display: flex;
    justify-content: space-between;
    line-height: 38px;
    white-space:nowrap;
    overflow:hidden;
}
.content-btn {
    padding-top: 10px;
}
.btn-showcourse {
    width: 80px;
    margin: 0;
    width: 284px;
    height: 43px;
    border-radius: 50px;
    background: linear-gradient(270deg, #6495ED 3%, #647FED 100%);
    font-size: 1rem;
    font-weight: bold;
    letter-spacing: 0.39px;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
}
.index-course-name {
    font-size: 1rem;
    color:#000;
    font-weight: bold;
}
.course-xi {
    color: #6495ED;
}
.headerDivStudent {
    height: 56px;
    /*background-color: #4c5370;*/
    display: flex;
    justify-content: center;
    background-color: #ffffff;
    background: linear-gradient(269deg, #E1DBFF 4%, #FFEBDF 92%);
}
.hidden {
    display: none;
}
.text-left {
    text-align: left;
}

.text-center {
    text-align: center;
}

.text-right {
    text-align: right;
}

.text-justify {
    text-align: justify;
}
    .btn-wyzg {
        cursor: pointer;
        color: #ffffff;
        background-color: #6495ED;
        border: 1px solid #6495ED;
        font-size: 0.875rem;
        /*font-weight: 700;*/
        --bs-btn-padding-x: 0.75rem;
        --bs-btn-padding-y: 0.375rem;
        --bs-btn-line-height: 1.5;
        display: inline-block;
        padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
        line-height: var(--bs-btn-line-height);
        text-align: center;
        text-decoration: none;
        vertical-align: middle;
        cursor: pointer;
        -webkit-user-select: none;
        -moz-user-select: none;
        user-select: none;
        border-radius: 4px;
        display:flex;
        align-items:center;
        justify-content:center;
    }
.btn-wyzg-no {
    cursor: pointer;
    background-color: #ffffff;
    color: #6495ED;
    border: 1px solid #6495ED;
}
    .btn-wyzg-no:hover {
        background-color: #6495ED;
        color:#ffffff;
    }
.btn-wyzg-student {
    background-color: #6495ED;
    border: 1px solid #6495ED;
}
    .btn-wyzg:hover {
        background-color:#2251A8;
    }
        .btn-wyzg img {
            width:21px;
        }
        .btn-wyzg span {
            padding-left:5px;
        }
.btn-wyzg-nobg {
    border-radius: 5px;
    background: rgba(100, 149, 237, 0.2118);
    box-sizing: border-box;
    border: 1px solid rgba(100, 149, 237, 0.2118);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
    line-height: var(--bs-btn-line-height);
    /* 新增：初始不可点击样式 */
    cursor: not-allowed;
    pointer-events: none;
    padding:10px 20px;
}
#btn_add {
    margin-left:20px;
}
#btn_add_student {
    margin-left: 20px;
}
.headlogin {
    /*border: 1px #6495ED solid;*/
    /*background-color: #6495ED;*/
    background: #fff;
    /*color: #ffffff;*/
    border-radius: 4px;
    position: absolute;
    font-family: SimHei, SimHei-Regular;
    font-weight: 400;
    font-size: 0.875rem;
    text-align: center;
    width: 80px;
    height: 35px;
    line-height: 35px;
    z-index: 100;
    cursor: pointer;
    letter-spacing: 0.21px;
}
.headlogin-div {
    /*width: 80px;
    height: 35px;
    border-radius: 2px;
    line-height: 35px;*/
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}
.headerb {
    height: 100%;
    align-items: center;
}
.headerb .logo-a {
    display: flex;
}
.fundLogo {
    padding-left: 15px;
    /*height: 49px;*/
    display: flex;
    align-items: center;
    /*font-size: 1.125rem;
    color: #fff;*/
}
.picdiv {
    width: 45px;
    height: 45px;
    border-radius: 50%;
    border: 1px solid;
    margin-right: 5px;
}
    .picdiv img {
        width: 100%;
        height: 100%;
        border-radius: 50%;
    }
.headnickname {
    overflow: hidden;
    width: 90px;
    display: block;
    text-overflow: ellipsis;
    /*color: #2DC87B;*/
    font-weight: 500;
}

.head1 {
    font-size: 0.875rem;
    font-family: SimHei, SimHei-Regular;
    font-weight: 500;
    color: #fff;
}
.head2 {
    font-size: 0.875rem;
    font-family: SimHei, SimHei-Regular;
    font-weight: 500;
    color: #6495ED;
}
.autoWidth {
    /*width: 85%;*/
    /*min-width: 1120px;*/
    min-width: 1120px;
    max-width: 1260px;
    width: 1120px;
    margin: 0 auto;
}

.head-user {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.menuBar {
    width: 74px;
    height: 63px;
    position: fixed;
    top: 100px;
    /*display: flex !important;
    justify-content: center;*/
    background-image: url('/image/menuBar.png');
    background-size: contain;
    cursor: pointer;
    display: none;
}

    .menuBar .barcenter {
        display: flex;
        justify-content: center;
        width: 100%;
        height: 100%;
    }

    .menuBar div {
        display: flex;
        align-items: center;
    }

.endDiv .funcDiv {
    background-color: #a9b5e8;
    flex-grow: 1;
}

.endDiv .endEnd {
    height: 38px;
    display: flex;
    align-content: center;
    justify-content: center;
    flex-wrap: wrap;
}
.menuList .menu-hideword {
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 49px;
    height: 49px;
    border-top: 5px solid #f0f2f8;
    cursor: pointer;
    /*position: absolute;*/
    width: 100%;
    /*bottom: 0px;*/
}
.menuList span {
    padding-left: 7px;
}
.gfgx {
    border-bottom: 1px solid #CECECE;
    margin: 0 20px;
}
.headin {
    font-size: 0.75rem;
    font-family: Microsoft YaHei, Microsoft YaHei-Regular;
    font-weight: 400;
    text-align: left;
    color: #717070;
    line-height: 20px;
    min-width: 94px;
    border-radius: 6px;
}
    .headin ul {
        list-style: none;
        padding-left: 0;
    }

        .headin ul img {
            width: 15px;
            margin-right: 10px;
        }

        .headin ul li {
            padding: 5px 13px;
            /*margin-top: 20px;*/
            font-size: 0.875rem;
        }
.liitem {
    display: block;
    width: 100%;
    padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
    clear: both;
    font-weight: 400;
    color: var(--bs-dropdown-link-color);
    text-align: inherit;
    text-decoration: none;
    white-space: nowrap;
    background-color: transparent;
    border: 0;
}

.foot {
    font-size: 0.75rem;
    font-family: Adobe Heiti Std, Adobe Heiti Std-R;
    color: #8c8c8c;
    line-height: 1.75rem;
}
.footup {
    font-size: 0.875rem;
    /*font-family: Adobe Heiti Std, Adobe Heiti Std-R;*/
    color: #333333;
    width: 65%;
    margin: auto;
    padding: 26px 0 20px 0;
}
    .footup ul {
        list-style: none;
    }
    .footup li {
        line-height: 24px;
    }
    .footup .titleLi {
        font-size: 0.9375rem;
        font-weight: 800;
        padding-bottom: 6px;
    }
    .footup .hideLi {
        display:none;
    }
    .footup a {
        color: #666666;
        text-decoration:none;
    }
    .fourstyle {
        font-size: 1.0625rem;
        font-weight: 700;
        color: #ffffff;
    }

.leftMenu {
    width: 100%;
    /*display: inline-flex;
    flex-direction: row;*/
}

    .leftMenu ul {
        list-style: none;
        padding-left: 0;
    }

        .leftMenu ul img {
            width: 15px;
            margin-right: 10px;
        }

        .leftMenu ul li {
            padding: 10px 28px;
            /*margin-top: 20px;*/
            font-size: 0.875rem;
        }

    .leftMenu .selectLi {
        border-left: 2px solid #6495ED;
        color: #6495ED;
    }

    .leftMenu .moveLi {
        background-color: #6495ED;
        color: #FFE300;
    }
.headin .moveLi {
    color: #6495ED;
    font-weight:600;
}

/* 定义垂直滚动条 */
::-webkit-scrollbar {
    width: 0.3125rem;
    height: 0.3125rem;
}
/* 定义滑轨 */
::-webkit-scrollbar-track {
    background-color: #f5f5f5; /* 背景色 */
}
/* 定义滑块 */
::-webkit-scrollbar-thumb {
    background-color: #ccc; /* 前景色 */
    border-radius: 5px; /* 圆角 */
}

.pageDiv {
    height: 50px !important;
    border: 0 !important;
}
    .pageDiv a {
        text-decoration: none;
        font-size:0.875rem;
    }

.table .backColor {
    background-color: #D1D6DE;
    font-weight: bold;
}

.table th, td {
    border: 1px #fff solid;
    /*text-align: center;*/
    font-size: 0.875rem;
    /*height: 55px;*/
    background: #FAFAFA;
    vertical-align: middle;
}
.table thead th {
    /*color:#fff;*/
    color: #464646;
}
.alertcss {
    width: auto !important;
    min-width: 200px;
    max-width: 500px;
}
.modal-dialog {
    margin: 0 auto; /* Auto margins on the sides */
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)!important;
    width:100%;
}
.collect-clear, .collectpic-clear {
    color: #FF2323;
    cursor: pointer;
    padding-left: 20px;
}
.collect-clear img, .collectpic-clear img {
    width: 15px;
    height: 15px;
}
    .collect-clear span, .collectpic-clear span {
        padding-left: 3px;
    }
/* 全屏模态框 */
.modal-fullscreen {
    width: 100vw;
    height: calc(100vh - 80px);
    margin: 0;
    padding: 0;
    position: fixed;
    overflow: auto;
}
/* 80%屏幕模态框 */
.modal-80pct {
    width: 80%;
    max-width: initial;
    height: 80%;
    max-height: initial;
    margin: auto;
    position: fixed;
    overflow: auto;
}
/* 70%屏幕模态框 */
.modal-70pct {
    width: 70%;
    max-width: initial;
    height: 70%;
    max-height: initial;
    margin: auto;
    position: fixed;
    overflow: auto;
}
/* 60%屏幕模态框 */
.modal-60pct {
    width: 60%;
    max-width: initial;
    height: 60%;
    max-height: initial;
    margin: auto;
    position: fixed;
    overflow: auto;
}
/* 50%屏幕模态框 */
.modal-50pct {
    width: 50%;
    max-width: initial;
    height: 50%;
    max-height: initial;
    margin: auto;
    position: fixed;
    overflow: auto;
}
.modal-header {
    position: sticky;
    top: 0;
    background-color: #fff; /* 根据需要设置背景颜色 */
    z-index: 1000; /* 确保标题在滚动时保持在顶部 */
}

.modal-footer {
    position: sticky;
    bottom: 0;
    background-color: #fff; /* 根据需要设置背景颜色 */
    z-index: 1000; /* 确保底部在滚动时保持在底部 */
}

.modal-body {
    overflow: auto; /* 在需要时显示滚动条 */
    height: calc(100% - (65px + 48px)); /* 根据实际情况调整高度 */
    padding:20px;
    line-height:28px;
}

.answerText {
    width: 100px;
    display: inline-block;
}
.form-control {
    font-size:0.875rem !important;
}
.node {
    cursor: pointer;
    stroke: #fff;
    stroke-width: 2px;
}

.menu-item {
    padding: 8px 12px;
    cursor: pointer;
}

.link {
    stroke: #999;
    stroke-opacity: 0.6;
}


.d3node {
    cursor: pointer;
    /*stroke: #fff;*/
    stroke-width: 2px;
}
.menu-item:hover {
    background-color: #f0f0f0;
}
.context-menu {
    position: absolute;
    background: white;
    border: 1px solid #ccc;
    box-shadow: 2px 2px 5px rgba(0,0,0,0.2);
    z-index: 999;
}
.context-menu-3d {
    position: fixed !important; /* 关键修改 */
    left: 0;
    top: 0;
    max-width: 200px;
    white-space: nowrap;
    /*position: absolute;*/
    background: white;
    border: 1px solid #ccc;
    min-width: 120px;
    padding: 8px 0;
    border-radius: 4px;
    box-shadow: 2px 2px 5px rgba(0,0,0,0.2);
    z-index: 9999;
    margin: 0 !important; /* 清除所有外边距 */
    transform: none !important; /* 禁用变换 */
}

.menu-item {
    padding: 8px 20px;
    cursor: pointer;
}

    .menu-item:hover {
        background: #f0f0f0;
    }


.menu {
    position: absolute;
    background: white;
    border: 1px solid #999;
    padding: 5px;
    display: none;
}
#footer {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 1030;
    width: 100%;
    height:40px;
}
.topmenu {

}
    .topmenu > div {
        width: 150px;
        text-align: center;
        cursor: pointer;
        color: #233340;
        font-size: 1rem;
        position: relative; /* 为伪元素提供定位基准 */
        padding-bottom: 8px; /* 为三角形预留空间 */
    }
    .topmenu .active {
        color: #6495ED;
        font-weight:bold;
    }
        /* 添加下方三角形 */
        .topmenu .active::after {
            content: "";
            display: block;
            position: absolute;
            bottom: 0;
            left: 50%;
            transform: translateX(-50%);
            width: 0;
            height: 0;
            border-style: solid;
            border-width: 0 6px 6px 6px; /* 调整三角形大小 */
            border-color: transparent transparent #FF9029 transparent; /* 三角形颜色与文字一致 */
        }
    .topmenu > div::after {
        transition: all 0.3s ease;
        opacity: 0;
    }

    .topmenu .active::after {
        opacity: 1;
    }
.topmenuStudent {
}

    .topmenuStudent > div {
        width: 150px;
        text-align: center;
        cursor: pointer;
        color: #233340;
        font-size: 1rem;
        position: relative; /* 为伪元素提供定位基准 */
        padding-bottom: 8px; /* 为三角形预留空间 */
    }

    .topmenuStudent .active {
        color: #6495ED;
        font-weight: bold;
    }
        /* 添加下方三角形 */
        .topmenuStudent .active::after {
            content: "";
            display: block;
            position: absolute;
            bottom: 0;
            left: 50%;
            transform: translateX(-50%);
            width: 0;
            height: 0;
            border-style: solid;
            border-width: 0 6px 6px 6px; /* 调整三角形大小 */
            border-color: transparent transparent #FF2323 transparent; /* 三角形颜色与文字一致 */
        }

    .topmenuStudent > div::after {
        transition: all 0.3s ease;
        opacity: 0;
    }

    .topmenuStudent .active::after {
        opacity: 1;
    }
.list-green {
    color: #07C160;
}
.list-red {
    color: #FF2323;
}
.list-blue {
    color: #3D64FF;
}
.list-black {
    color: #464646;
}
.list-orange {
    color: #FF7B29;
}
.list-gray {
    color: #b0b2b7;
}
.list-purple {
    color: #876EE4;
}
.join-homework-button {
    color: #FF8229;
}
.join-homework-button img {
    width: 24px;
    height: 24px;
}
.join-exam-button {
    color: #3932C2;
}

    .join-exam-button img {
        width: 24px;
        height: 24px;
    }
.menu_ul_height > li {
    color: #3D3D3D;
    font-weight: normal;
    font-size: 0.875rem;
    padding:0 0.625rem;
    border-radius:5px;
}
.menu_ul_height .active {
    color: #6495ED;
}
.menu_ul_height .selected {
    color: #6495ED;
}
.menu_ul_height .active_stu {
    color: #6495ED;
}
.menu_ul_height .selected_stu {
    color: #6495ED;
}
.menu_ul_height .bg {
    background: rgba(100, 149, 237, 0.2);
}
.menu_ul_height .bg_stu {
    background: #D9DEFA;
}
.ul-son {
    padding: 0;
}
.ul-son > li {
    color: #737373;
    font-weight: normal;
    font-size: 0.875rem;
    padding:0 1.25rem;
    border-radius:5px;
}
    .ul-son .active {
        background: rgba(100, 149, 237, 0.2);
        color: #6495ED;
    }
    .ul-son .selected {
        background: rgba(100, 149, 237, 0.2);
        color: #6495ED;
    }
    .ul-son .active_stu {
        background: #D9DEFA;
        color: #6495ED;
    }
    .ul-son .selected_stu {
        background: #D9DEFA;
        color: #6495ED;
    }
.orange {
    color: #FF6200;
}
.temp {
    padding: 0 5px;
    cursor: pointer;
    color: #3D64FF
}

.temp-trip {
    padding-left: 20px;
    color: #737373
}
.st-list {
    color: #737373;
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 17px;
    letter-spacing: 0.39px;
    display:flex;
    padding:10px 0 30px 0;
}
    .st-list .active {
        position: relative;
        color: #5F88FB;
    }
/* 添加下方三角形 */
        .st-list .active::after {
            content: "";
            display: block;
            position: absolute;
            bottom: -20px;
            left: 50%;
            transform: translateX(-50%);
            width: 0;
            height: 0;
            border-style: solid;
            border-width: 0 10px 10px 10px; /* 调整三角形大小 */
            border-color: transparent transparent #3D64FF transparent; /* 三角形颜色与文字一致 */
        }
    .st-list > div {
        cursor:pointer;
    }
    .st-list .right-st {
        margin-left:50px;
    }
.txlist {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    padding: 0;
}

    .txlist li {
        flex: 0 0 calc(33.33% - 11px); /* 三列计算(需考虑gap) */
        list-style: none;
        display: flex;
        align-items: center;
    }
    .txlist input {
        width: 20px;
        display: inline-block;
        border: 0;
        opacity: 1;
        background-color: #F7F8FC;
        color: #FF2323;
        text-align:center;
        margin:0;
        padding:0;
    }
.opendiv {
    padding:20px 50px;
    line-height:32px;
}
    .opendiv .form-check {
        padding-left:1.875rem;
        display:flex;
        align-items:center;
    }
    .opendiv input {
        margin-top:0;
        margin-bottom:0;
        margin-right:0.625rem;
    }
.form-select {
    font-size:0.875rem;
}
.opendiv .questiontype {
    font-family: Source Han Sans;
    font-weight: 700;
    font-size: 0.875rem;
    font-variation-settings: "opsz";
}
.opendiv .questiontitle {
    padding-left:1.25rem;
    display:flex;
}
.opendiv .questioncontent {
    padding-left:0.625rem;
}
.opendiv .inputnone {
    width: 40px;
    display: inline-block;
    margin: 0;
}
.opendiv .scoretype {
    font-size: 0.875rem;
    font-weight: normal;
}
.opendiv .operation-icon {
    cursor:pointer;
}
.opendiv .scoreinput {
    display:flex;
}
    .opendiv .scoreinput input {
        width:60px;
        margin-bottom:0.625rem;
    }
.course-name {
    cursor:pointer;
}
.sub-options {
    line-height:32px;
}
.prompt-btn {
    width: 120px;
    height: 35px;
    background: rgba(100, 149, 237, 0.1);
    color: #3D64FF;
    font-size:0.75rem;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
}
.sub-row {
    background: #F7F8FC;
}
.nonetrip {
    color: #1D2129;
    font-size: 1rem;
    padding-top: 20px;
    text-align: center;
    padding-bottom: 40px;
}
button > img {
    margin-right:5px;
}
.searchcourse {
    display: flex;
    flex-wrap: nowrap;
    gap: 20px;
}

    .searchcourse > div {
        display: flex;
        align-items: center;
    }

    .searchcourse select {
        width: 200px;
        margin: 0;
    }
.gomanage {
    padding-right:20px;
}
.gomanage > div {
    width: 120px;
    height: 36px;
    border-radius: 4px;
    color: #fff;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    cursor: pointer;
}
    .gomanage .editcourse {
        background: linear-gradient(270deg, #6495ED 2%, #1F5AC3 100%);
    }
    .gomanage .startstudy {
        background: linear-gradient(270deg, #8264ED 0%, #482FB8 100%);
    }
.add-new {
    color: #fff;
    background: rgba(112, 153, 255, 0.74);
    border-radius: 9px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    /*gap: 10px;*/
}

.historylist {
    /*height: 35px;*/
    padding:10px;
    border-radius: 277px;
    border: 1px solid #4381F2;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #7099FF;
    font-size: 12px;
}

.role-list {
    padding: 0 0.9375rem;
    display: flex;
    flex-direction: column;
    gap: 10px;
    height: calc(100% - 124px);
    overflow-y: auto;
}

    .role-list > div {
        height: 52px;
        border-radius: 8px;
        padding: 5px;
        cursor: pointer;
        display: flex;
        justify-content: space-between;
        align-items: center;
        transition: all 0.2s ease;
        position: relative;
    }

        .role-list > div:hover {
            background: rgba(112, 153, 255, 0.1);
            color: #7099FF;
        }

    .role-list .active {
        background: rgba(112, 153, 255, 0.23);
        color: #7099FF;
    }

    .role-list .role-date {
        font-size: 10px;
        color: #888;
    }

    .role-list .role-name {
        display: -webkit-box;
        overflow: hidden;
        text-overflow: ellipsis;
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
    }

.role-info {
    display: flex;
    flex-direction: column;
    flex: 1;
}

.role-actions {
    display: none;
    position: relative;
}
.action-btn {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: rgba(112, 153, 255, 0.1);
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: all 0.2s ease;
    border: none;
    color: #7099FF;
}

    .action-btn:hover {
        background: rgba(112, 153, 255, 0.2);
    }

.action-menu {
    position: absolute;
    top: 30px;
    right: 0;
    background: white;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    padding: 8px 0;
    z-index: 100;
    min-width: 120px;
    display: none;
}

    .action-menu.show {
        display: block;
    }

.action-menu-item {
    padding: 8px 16px;
    cursor: pointer;
    font-size: 14px;
    transition: background 0.2s ease;
}

    .action-menu-item:hover {
        background: rgba(112, 153, 255, 0.1);
    }

    .action-menu-item.delete {
        color: #e74c3c;
    }
.upload-div-ground {
    /*height: calc(100% - 45px);*/
    padding: 30px;
    line-height: 28px;
    border-radius: 16px;
    background: linear-gradient(112deg, rgba(203, 200, 255, 0.19) 0%, rgba(188, 207, 255, 0.67) 100%);
    border: 3px solid #8170FF;
}
.upload-div {
    border-radius: 16px;
    opacity: 1;
    box-sizing: border-box;
    border: 3px dashed #FFFFFF;
    padding: 100px 50px;
}
    .upload-div > div {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        height: 100%;
    }

.upload-btn {
    width: 200px;
    height: 42px;
    border-radius: 12px;
    /*background: #707070;*/
    color: #fff;
    font-size: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    background: linear-gradient(104deg, #7099FF 11%, #4381F2 88%);
}
.upload-menu {
    font-size: 26px;
    font-weight: bold;
    color: #7099FF;
}
.upload-before {
    display: flex;
    align-items: center;
    gap: 20px;
    padding-bottom: 20px;
    flex-wrap:wrap;
}
.content-uptj {
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
    /*padding-right: 7rem;*/
    padding-top: 20px;
}
.content-div{
    padding:30px;
    overflow-y:auto;
}