/*
 * Main CSS file for AI Chinese Community
 * Version: 1.0.0
 * Description: Main stylesheet for desktop and default layouts
 * Last Updated: 2026-03-19
 */

/* ===========================================================
   Base Styles
   =========================================================== */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    font-size: 16px;
    line-height: 1.5;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
    width: 100%;
    height: 100%;
    min-height: 100vh;
    background-color: #e2e2e2;
    font-family: "PingFang SC", "Microsoft YaHei", "Lucida Grande", "Lucida Sans Unicode", "Arial", sans-serif;
    margin: 0;
    padding: 0;
    color: #333;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.layout {
    display: flex;
    flex-direction: column;
    width: 100%;
    min-height: 100vh;
}

img {
    max-width: 100%;
    height: auto;
    vertical-align: middle;
    border: none;
    background-color: whitesmoke;
}

.empty_line_15 {
    height: 15px;
    display: block;
}

.hander {
    cursor: pointer;
}

/* ===========================================================
   Header Styles
   =========================================================== */

.header {
    width: 100%;
    background-color: #222;
    color: #fff;
    margin: 0;
    flex: 0 0 auto;
    position: fixed;
    z-index: 10000;
    border-bottom: 15px solid #e2e2e2;
}

a {
    color: #2d2d2d;
    text-decoration: none;
    transition: color 0.3s ease;
}

a:hover,
a:focus {
    color: #FF6F00;
    text-decoration: underline;
    outline: none;
}

.avatar {
    width: 50px;
    height: 50px;
    border-radius: 5px;
    border: 2px solid #fff;
}

.btnEle {
    cursor: pointer;
    font-weight: 450;
    transition: color 0.3s ease;
}

.btnEle:hover,
.btnEle:focus {
    color: #FF6F00;
    outline: none;
}

.btnEle::before {
    padding-left: 3px;
}

.avatar2 {
    width: 50px;
    height: 50px;
    border-radius: 5px;
    border: 2px solid #dff9c6;
}

.point {
    text-align: center;
    vertical-align: middle;
    color: #777;
}

.menu_cont>.mob_ele {
    display: none !important;
}

.sucess_msg {
    color: red;
    background-color: #f8f1e6;
    font-size: 0.95em;
    padding: 5px 10px;
    margin: 0;
    text-align: center;
    line-height: 180%;
}

.err_msg {
    color: #FF6F00;
    background-color: #ffffe2;
    font-size: 0.95em;
    padding: 5px 10px;
    margin: 0;
    line-height: 160%;
}

.err_msg_sm {
    color: #FF6F00;
    background-color: #ffffe2;
    font-size: 0.95em;
    padding: 2px 5px !important;
    margin: 0;
    line-height: 160%;
}

.info_msg {
    color: #5D5D5D;
    background-color: #f8f1e6;
    font-size: 0.95em;
    padding: 5px 10px;
    margin: 0;
    text-align: center;
    line-height: 180%;
}

.header .cont {
    width: 1250px;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    margin: 0 auto;
}

.header .cont .logo {
    height: 60px;
    display: flex;
    justify-content: left;
    align-items: center;
    color: #FF6F00;
    padding: 0 20px 0 0;
}

.header .cont .logo a {
    color: #ff6f00 !important;
    text-decoration: none !important;
    vertical-align: bottom;
    font-size: 1.6em;
    letter-spacing: 0px;
    font-weight: bold;
}

.header .cont .logo a img {
    background-color: transparent;
    max-height: 60px;
}

.header .cont .logo a:hover {
    text-decoration: none !important;
}

.header .menu_cont {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    flex: 1;
}

.menu_cont .menu>ul>li {
    list-style: none;
    padding-right: 15px;
    float: left;
}

.menu_cont .menu a {
    padding-right: 3px;
}

.menu_cont .menu>ul>li>a {
    color: #ccc;
    text-decoration: none;
}

.menu_cont .menu_dropdonwn>a {
    padding-right: 5px;
    color: #FF6F00;
    text-decoration: none;
}

.menu_cont .menu_dropdonwn>ul {
    position: absolute;
    border: 1px solid #eee;
    z-index: 1001;
    background-color: #fff;
    margin: 20px 0 0 -38px;
    padding: 10px;
}

.menu_cont .menu_dropdonwn>ul li {
    list-style: none;
    background-color: #fff;
    margin: 0;
    padding: 5px;
}

.menu_cont .menu_dropdonwn>ul li a {
    padding-right: 5px;
    color: #2d2d2d;
    text-decoration: none;
}

.menu_cont .profile {
    right: 50%;
    margin-left: auto;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
}

.container {
    width: 1250px;
    display: flex;
    justify-content: space-between;
    margin: 0 auto 15px;
    flex: 1 0 auto;
    position: relative;
    top: 75px;
}

.container a {
    text-decoration: none;
    color: #2d2d2d;
}

.container a:hover {
    text-decoration: underline;
    color: #000;
}

.container>.main {
    width: 100%;
    margin-right: 15px;
}

.container>.main>.nav {
    position: sticky;
    width: 100%;
    z-index: 1000;
    top: 75px;
    border-bottom: 1px solid #eee;
}

.container>.main>.nav>.parent {
    background-color: #fff;
    border-bottom: 1px solid #f2f2f2;
    font-size: 15px;
    padding: 10px;
    line-height: 180%;
}

.container>.main>.nav>.parent>a {
    color: #3d3d3d;
    font-weight: 600;
    border-radius: 5px;
    vertical-align: middle;
    padding: 4px 7px;
    white-space: nowrap;
    line-height: 200%;
}

.container>.main>.nav>.parent>a:hover {
    color: #fff;
    background-color: #2c3a52;
    text-decoration: none;
}

.container>.main>.nav>.parent>.selected {
    color: #fff;
    background-color: #2c3a52;
    text-decoration: none;
}

.container>.main>.nav>.parent_sm {
    background-color: #fff;
    border-bottom: 1px solid #f2f2f2;
    font-size: 14px;
    padding: 7px 20px;
    line-height: 160%;
}

.container>.main>.nav>.parent_sm>a {
    color: #3d3d3d;
    font-weight: 500;
    border-radius: 3px;
    vertical-align: middle;
    padding: 2px 5px;
    white-space: nowrap;
    line-height: 160%;
}

.container>.main>.nav>.parent_sm>a:hover {
    color: #fff;
    background-color: #2c3a52;
    text-decoration: none;
}

.container>.main>.nav>.parent_sm>.selected {
    color: #fff;
    background-color: #2c3a52;
    text-decoration: none;
}

.container>.main>.nav>.children {
    background-color: #fcfcfc;
    border-bottom: 1px solid #f9f9f9;
    font-size: 13px;
    vertical-align: middle;
    padding: 7px 15px;
    line-height: 140%;
    text-align: justify;
}

.container>.main>.nav>.children>a {
    margin-right: 5px;
    color: #3e4654;
    padding: 5px 3px;
    white-space: nowrap;
    line-height: 150%;
}

.container>.main>.nav>.children>a:hover {
    color: #000;
    text-decoration: underline;
}

.lrnav {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    margin: 0;
    background-color: #f9f9f9;
    border-bottom: 1px solid #f5f5f5;
    font-size: 14px;
    line-height: 140%;
    padding: 9px 10px;
}

.lrnav_trans {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    margin: 0;
    font-size: 14px;
    line-height: 140%;
    padding: 0 5px 11px 5px;
}

.lrnav .l {
    vertical-align: middle;
    padding-right: 10px;
}

.lrnav .l>a,
.lrnav .l>span,
.lrnav .l>i,
.lrnav_trans .l>a,
.lrnav_trans .l>span,
.lrnav_trans .l>i {
    padding: 0 2px;
}


.lrnav .r,
.lrnav_trans .r {
    margin-left: auto;
    vertical-align: middle;
}

.lrnav .r>a,
.lrnav .r>span,
.lrnav .r>i,
.lrnav_trans .r>a,
.lrnav_trans .r>span,
.lrnav_trans .r>i {
    padding-left: 1px;
}

.lrnav_trans a {
    color: #3d3d3d;
}


.nav .r input,
.lrnav_trans input {
    vertical-align: middle;
}

.nav .r input[type='search'],
.lrnav_trans input[type='search'] {
    width: 150px;
    padding: 2px 2px;
}

.nav .r input[type='submit'],
.lrnav_trans input[type='submit'] {
    padding: 1px 5px;
}

.container>.main .content {
    background-color: #fff;
    margin: 0 0 15px;
    padding: 0;
    position: relative;
    z-index: 999;
    top: 0px;
}


.container>.main .content>.item {
    border-bottom: 1px solid #eee;
    color: #666;
    font-size: 14px;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    margin: 0;
    padding: 15px;
}

.container>.main .content>.item .l {
    padding-right: 15px;
}

.container>.main .content>.item .c {
    margin: 0;
    padding: 0;
    text-align: justify;
}

.container>.main .content>.item .c h3 {
    color: #3d3d3d;
    font-size: 17px;
    font-weight: 600;
    margin: 0;
    padding: 0 0 5px;
}

.container>.main .content>.item .c h4 {
    color: #3d3d3d;
    font-size: 15px;
    font-weight: 550;
    margin: 0;
    padding: 0 0 8px;
}

.container>.main .content>.item .c .sub_title {
    padding: 0;
    font-size: 14px;
}

.container>.main .content>.item .c .sub_title strong {
    font-weight: normal;
}

.container>.main .content>.item .r {
    margin-left: auto;
    padding-left: 15px;
    width: 20%;
    text-align: right;
}

.container>.main .content>.item .r_news {
    width: 28% !important;
}

/* 话题详情页图片错误处理 */
#article_content {
    max-width: 875px;
}

#article_content img {
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

#article_content img[src=""],
#article_content img:not([src]),
#article_content img[src*="undefined"],
#article_content img[src*="null"] {
    display: none;
}

/* 图片加载失败时的默认样式 */
#article_content img {
    background-color: #f5f5f5;
    background-image: url('/static/images/default/none2.png');
    background-size: 50px 50px;
    background-repeat: no-repeat;
    background-position: center;
    min-height: 50px;
}

#article_content img:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #f5f5f5;
    background-image: url('/static/images/default/none2.png');
    background-size: 50px 50px;
    background-repeat: no-repeat;
    background-position: center;
}

#article_content img[src]:not([src=""]) {
    background: none;
}

.news_cover {
    width: 132px;
    height: 88px;
    border: 1px solid #efefef;
    object-fit: cover;
    object-position: center;
    background-color: #f5f5f5;
}

.pc_news_cover_cont {
    width: 132px;
    flex-shrink: 0;
    margin-right: 15px;
}

.mobile_conver {
    display: none;
    width: 0;
}

.news_summary {
    color: #444;
    font-size: 14px;
    line-height: 140%;
    padding: 0 0 5px;
}

#divContent_1 {
    max-width: 628px !important;
}

#divContent_1 img {
    max-width: 90% !important;
}

#divContent_1 a {
    word-wrap: break-word !important;
}


#txtContent_ifr img {
    max-width: 90% !important;
}

.container>.main .content>.item .r .bubble {
    border-radius: 6px;
    background-color: #FAEBD7;
    color: #444;
    padding: 6px;
    font-size: 12px;
}

.container>.main .content>.item_news {
    border-bottom: 1px solid #eee;
    color: #555;
    font-size: 14px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0;
    padding: 15px 20px 5px 20px;
    box-sizing: border-box;

    flex-wrap: wrap;
}

.container>.main .content>.item_news .title {
    font-size: 1.2em;
    color: #FF6F00;
    width: 20px;
}

.container>.main .content>.item_news .twocol {
    width: 47%;
    padding: 0;
    margin: 0 0 0 10px;
}

.container>.main .content>.item_news .twocol ul {
    padding: 0;
    margin: 0;
    width: 100%;
}

.container>.main .content>.item_news .twocol ul li {
    width: 100%;
    height: 30px;
    line-height: 180%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    list-style-position: inside;
    list-style-type: square;
    font-size: 14px;
}

.container>.main .content>.item_news .twocol ul li a:hover {
    color: #000;
}

.container>.main .content>.item_news .onecol_more {
    width: 100%;
    text-align: right;
    font-size: 13px;
    padding: 0;
}

.container>.main .content .sample_ul {
    margin: 0;
    padding: 15px 15px 15px 44px;
}

.container>.main .content .sample_ul_li {
    margin: 0;
    padding: 8px 0;

}

.container>.main .content .sample_ul_li h3 {
    line-height: 160%;
    font-size: 1em;
}

.container>.main .content .sample_ul_li .important h3 {
    color: #000 !important;
}

.container>.main .content .sample_ul_li>.sub_title {
    font-size: 14px;
    color: #777;
}

.container>.sidebar {
    margin-left: auto;
}

.sticky_box {
    position: sticky !important;
    z-index: 1000;
    top: 75px;
    background-color: #e2e2e2;
    border-bottom: solid 1px #e2e2e2;
    margin-bottom: 0 !important;
}

.container>.main .pager {
    background-color: #f9f9f9;
    text-align: center;
    vertical-align: middle;
    font-size: 14px;
    margin: 0;
    padding: 15px 12px;
}

.container>.main>.node_list {
    background-color: #ffff;
    margin: 0;
    padding: 0;
}

.container>.main>.node_list>.node {
    background-color: #fff;
    border-bottom: 1px solid #eee;
    color: #777;
    font-size: 14px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin: 0;
    padding: 10px 15px;
}

.container>.main>.node_list>.node .l {
    width: 80px;
    text-align: right;
    flex-shrink: 0;
    line-height: 150%;
    margin: 0;
    padding: 5px 15px 5px 0;
}

.container>.main>.node_list>.node .l>a {
    color: #777;
    font-weight: bold;
    white-space: nowrap;
}

.container>.main>.node_list>.node .l>a:hover {
    color: #FF6F00;
}

.container>.main>.node_list>.node .r {
    line-height: 180%;
    margin: 0;
    padding: 5px 15px;
}

.container>.main>.node_list>.node .r>a {
    padding: 0 15px 0 0;
    color: #111;
    white-space: nowrap;
}

.container>.main>.node_list>.node .r>a:hover {
    color: #FF6F00;
}

.container>.main>.node_list>.node strong {
    font-weight: normal;
}

.container>.main>.article {
    background-color: #fff;
    margin: 0;
    padding: 15px 20px;
}

.container>.main .article .title_cont {
    border-bottom: 1px solid #eee;
    margin: 0 0 10px;
}

.article code {
    padding: 0.2em 0.4em;
    margin: 0 0 5px 0;
    font-size: 85%;
    white-space: break-spaces;
    background-color: #efefef;
    border-radius: 6px;
    overflow-x: auto;
}

.article code>pre {
    margin-bottom: 15px;
    background-color: #eee;
    overflow-x: auto;
}

.article:not(code) pre {
    padding: 0.2em 0.4em 0 0.4em;
    margin: 0 0 15px 0;
    background-color: #eee;
    border-radius: 6px;
    overflow-x: auto;
}

.title_cont h1 {
    font-size: 22px;
}

.container>.main .article .title_cont .subhead {
    font-size: 14px;
    color: #777;
    margin: 0;
    padding: 5px 2px 5px 2px;
    text-align: justify;
}

.container>.main .article img {
    max-width: 765px;
}

.main .article_cont {
    line-height: 170%;
    font-size: 0.95em;
    word-wrap: break-word;
}

.main .article_cont a {
    word-wrap: break-word !important;
}

.main .article_cont h1 {
    font-size: 1.2em;
    color: #222;
    margin: 0;
    padding: 1.2em 0 0.5em 0;
}

.main .article_cont h2 {
    font-size: 1.15em;
    color: #2d2d2d;
    margin: 0;
    padding: 1.15em 0 0.45em 0;
}

.main .article_cont h3 {
    font-size: 1.1em;
    color: #333;
    margin: 0;
    padding: 1.1em 0 0.4em 0;
}

.main .article_cont p {
    font-size: 1em;
    color: #2d2d2d;
    line-height: 190%;
    margin: 0;
    padding: 10px 0;
}

.toastui-editor-main .ProseMirror>div {
    font-size: 1em;
    color: #2d2d2d;
    line-height: 160% !important;
    margin: 0;
    padding: 0 0 15px 0 !important;
}

.main .article_cont a {
    text-decoration: underline;
    color: #2d2d2d;
}

.main .article_cont ul,
.main .article_cont ol {
    padding: 5px 10px 10px 25px;
}

.container .main .article_cont ul li,
.container .main .article_cont ol li {
    padding: 3px 0;
    line-height: 150%;
    color: #555;
}

.container .main .article_cont ul li p,
.container .main .article_cont ol li p {
    padding: 0;
    line-height: 160%;
    color: #555;
}

.container .main .article_cont img {
    max-width: 100%;
}

.article_btm_tool {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    font-size: 14px !important;
    background-color: #f9f9f9;
    color: #777;
    border-top: 1px solid #f1f1f1;
    margin: 0 0 15px;
    padding: 8px 15px;
}

.article_btm_tool .l {
    vertical-align: middle;
}

.article_btm_tool .r {
    vertical-align: middle;
    margin-left: auto;
}

.article_btm_tool .r span>span {
    font-size: 14px;
    font-family: "PingFang SC", "Microsoft YaHei";
}

.article_btm_tool a {
    color: #777 !important;
    padding-left: 4px;
}

.article_tags {
    background-color: #fff;
    margin: 0;
    padding: 15px 0 5px 0;
    line-height: 180%;
    font-size: 14px;
    text-align: justify;
}

.article_tags a {
    background-color: #eee;
    color: #666;
    border-radius: 10px;
    text-decoration: none;
    font-size: 14px;
    line-height: 200%;
    margin: 0 0 0 3px;
    padding: 3px 5px;
    white-space: nowrap;
}

.origin_area {
    background-color: #fbfbfb;
    color: #888;
    margin: 10px 0 0 0;
    padding: 7px 10px;
    font-size: 14px;
}

.origin_area a {
    color: #666 !important;
}

.origin_desc {
    font-size: 14px;
    font-weight: 400;
    color: #999 !important;
    padding: 5px 0;
    line-height: 150%;
}

.container>.main blockquote {
    position: relative;
    background-color: #f6f6f6;
    border-left: 6px solid #e6e6e6;
    font-style: normal;
    font-weight: 400;
    word-break: break-word;
    margin: 0 0 20px;
    padding: 5px 20px;
}

.container>.main>.comment_list {
    background-color: #fff;
    margin: 0 0 15px;
    padding: 0;
    word-wrap: break-word;
}

.container>.main>.comment_list .item {
    border-bottom: 1px solid #eee;
    color: #3d3d3d;
    font-size: 14px;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    margin: 0;
    padding: 15px;
}

.container>.main>.comment_list .item .l {
    flex-shrink: 0;
}

.container>.main>.comment_list .item .c {
    padding-left: 13px;
    flex-wrap: wrap;
    flex-grow: 1;
}

.container>.main>.comment_list .item .c>.tool {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 0 0 5px 0;
}

.container>.main>.comment_list .item .c>.tool .reply {
    padding-left: 15px;
    font-size: 14px;
    margin-left: auto;
    text-align: right;
    color: #999 !important;
}

.container>.main>.comment_list .item .c>.tool .reply span>span {
    font-size: 14px;
    font-family: "PingFang SC", "Microsoft YaHei";
}

.container>.main>.comment_list .item .c>.tool .reply a {
    text-decoration: none;
    font-size: 13px;
    color: #999;
    padding-left: 4px;
}

.container>.main>.comment_list .item .c>.tool .reply a:hover {
    color: #FF6F00;
}

.container>.main>.comment_list .item .c>.tool .reply .icon_txt {
    padding-left: 2px;
    font-weight: 400;
}

.container>.main>.comment_list .item .c>.cont p {
    margin: 0;
}

.container>.main>.comment_list .item .r {
    margin-left: auto;
    padding-left: 15px;
    flex-shrink: 0;
    font-size: 14px;
}

.container>.main>.comment_list .item .c>.cont img {
    max-width: 80%;
}

.comment_list pre {
    background-color: #eee;
    overflow: auto;
    padding: 10px 15px;
    z-index: 1000;
}

.container>.main>.comment_list .nocont {
    text-align: center;
    font-size: 14px;
    color: #777;
    padding: 20px 15px;
}

.container>.main>.comment_list .replyCont {
    background-color: #f9f9f9;
    font-size: 0.95em;
    color: #777;
    margin: 5px 10px;
    padding: 5px;
}

.container>.main>.comment_list .replyCont>p {
    display: inline-block;
    color: #777;
    margin: 0;
    padding: 0;
    line-height: 160%;
}

.container>.main .table_line tr th {
    background-color: #eee;
    text-align: left;
    padding: 12px 8px;
}

.container>.main .table_line tr td {
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
    text-align: left;
    padding: 10px 8px;
}

.container>.main .table_line tr td p {
    line-height: 140%;
    margin: 0;
    padding: 0;
    display: inline-block;
}

.comment_action {
    background-color: #fff;
    margin: 0 0 15px;
    padding: 15px;
}

.comment_action .title {
    color: #3d3d3d;
    font-size: 15px;
    margin: 0;
    padding: 0 0 15px;
}

.comment_action .subhead {
    display: inline;
    color: #333;
    font-size: 0.95em;
    margin: 0 0 0 15px;
    padding: 0;
}

.comment_action .iconfont {
    font-size: 0.95em !important;
}

.comment_action .inp a {
    width: 65px;
    text-align: center;
}

.iconfont {
    margin-right: 2px;
}

.comment_action .inp {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    font-size: 0.8em;
    text-align: center;
}

.comment_action .inp>textarea {
    margin-left: 13px;
}

.comment_action .tool {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    font-size: 0.95em;
    color: #777;
    padding-right: 5px;
}

.comment_action .intr ul {
    color: #777;
    font-size: 0.9em;
    margin: 0 0 0 40px;
}

.comment_action .tool .btn {
    margin-left: auto;
    flex-shrink: 0;
}

.form {
    background-color: #fff;
    font-size: 0.95em;
    margin: 0 0 15px;
    padding: 25px;
}

.form textarea,
.form input[type='text'],
.form select {
    max-width: 100%;
}

.form .cont_mid {
    margin: 0 auto;
    width: 65%;
    min-height: 550px;
}

.form .cont_lag {
    margin: 0 auto;
    width: 93%;
    min-height: 550px;
}

.form .title {
    color: #777;
    font-size: 14px;
}

.form .label {
    color: #777;
    font-size: 14px;
    padding: 10px 0;
}

.form .required {
    color: #FF6F00;
    font-size: 12px;
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    margin: 0;
}

.form .input input[type='text'],
.form .input input[type='password'],
.form .input input[type='datetime'],
.form .input input[type='datetime-local'],
select {
    outline: none;
    border: 1px solid #777;
    padding: 10px 3px;
}

.form .input {
    color: #2d2d2d;
    margin: 0;
    padding: 5px 0 15px;
}

.form .input textarea {
    outline: none;
    border: 1px solid #777;
}

.tool_btm {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    text-align: right;
}

.form .form_table tr td {
    font-size: 14px;
    text-align: left;
    vertical-align: top;
    color: #777;
    padding: 6px 3px;
}

.form .form_table tr .frm_avatar {
    width: 95px;
    padding: 3px 6px 3px 0;
    text-align: center;
}

.form .form_table tr .frm_avatar>img {
    width: 80px;
    border-radius: 5px;
}

.container>.sidebar .box {
    background-color: #fff;
    width: 320px;
    margin: 0 0 15px;
    padding: 0 0 10px;
}

.box_nogap {
    padding: 0 !important;
}

.box_10gap {
    padding: 10px 10px 4px 10px !important;
}

.todo_input_box .input_area {
    padding: 15px 15px 0 15px;
    margin: 0;
}

.todo_input_box textarea {
    width: 100%;
    padding: 5px;
    box-sizing: border-box;
}

.todo_input_box .toolbar {
    font-size: 15px;
    color: #999;
    padding: 0 15px 15px 15px;
    margin: 0;
    text-align: right;
    vertical-align: middle;
    box-sizing: border-box;
}

.todo_input_box .toolbar span,
.todo_input_box .toolbar a {
    padding-left: 6px;
    vertical-align: middle;
}

.todo_input_box .toolbar input[type="checkbox"] {
    padding: 0;
    margin: 0;
    vertical-align: middle;
}

.todo_input_box .toolbar input[type="checkbox"] {
    width: 13px;
    height: 13px;
}

.todo_list ul li .iconfont {
    font-size: 14px;
    color: #FF6F00;
}

.todo_list .other_todo {
    color: #666 !important;
}

.todo_list .finished_todo {
    color: rgb(0, 38, 17) !important;
}

.box_title {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    font-size: 15px;
    font-weight: 600;
    background-color: #f9f9f9;
    color: #3d3d3d;
    border-bottom: 1px solid #f1f1f1;
    margin: 0;
    padding: 8px 15px;
}

.box_title>.l {
    vertical-align: middle;
}

.box_title>.r {
    vertical-align: middle;
    margin-left: auto;
    font-weight: normal;
    font-size: 0.95em;
}

i[class*="fa"] {
    padding-right: 4px;
}

.box_inner_title {
    font-size: 0.9em;
    font-weight: 600;
    color: #4d4d4d;
    margin: 0;
    padding: 8px 15px 0 22px;
}

.container>.sidebar .big_img {
    width: 300px;
    padding: 10px;
}

.box ul {
    color: #3d3d3d;
    margin: 5px auto;
    padding: 0 15px 0 36px;
}

.box ul li {
    line-height: 155%;
    font-size: 14px;
    padding: 5px 0;
}

.box ul li a {
    word-wrap: break-word;
    word-break: break-all;
    overflow-wrap: break-word;
    hyphens: auto;
    max-width: 100%;
}

.box ul li ul {
    color: #5d5d5d;
    margin: 5px auto;
    padding: 0 10px 0 20px;
}

.box ul li ul li a {
    display: inline-block;
    word-wrap: break-word;
    word-break: break-all;
    overflow-wrap: break-word;
    hyphens: auto;
    max-width: 100%;
}

.box>.img_list {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    font-size: 14px;
    color: #555;
    line-height: 170%;
    padding: 15px;
}

.box>.img_list img {
    margin-right: 10px;
    width: 50px;
    border-radius: 5px;

}

.box250>.img_grid,
.box>.img_grid {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    align-items: center;
    font-size: 14px;
    color: #555;
    padding: 5px;
}

.box250>.img_grid .item,
.box>.img_grid .item {
    text-align: center;
    vertical-align: middle;
    padding: 8px;
}

.box250>.img_grid .img_desc,
.box>.img_grid .img_desc {
    font-size: 0.95em;
    width: 60px;
    height: 20px;
    text-align: center;
    overflow: hidden;
    color: #777;
    padding: 3px 0;
}

.box250>.img_grid img,
.box>.img_grid img {
    width: 50px;
    border-radius: 5px;
    /* filter: grayscale(10%); */
    transition: filter .1s .1s ease-in;
}

.box250>.img_grid img:hover,
.box>.img_grid img:hover {
    width: 50px;
    border-radius: 5px;
    filter: grayscale(0%);
    transition: filter .3s .5s ease-out;
}

.box250 .img_grid2,
.box .img_grid2 {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    align-items: center;
    font-size: 14px;
    color: #555;
    padding: 5px;
}

.box250 .img_grid2 img,
.box .img_grid2 img {
    width: 120px;
    border-radius: 0;
    padding: 15px 15px 0 15px;
    vertical-align: middle;
    border: none;
    background-color: #fff;
}

.box250 .img_grid2 .img_desc,
.box .img_grid2 .img_desc {
    font-size: 0.95em;
    width: 120px;
    height: 0.95em;
    text-align: center;
    overflow: hidden;
    color: #777;
    padding: 3px 15px;
}

.box250 .tags_list,
.box>.tags_list {
    text-align: justify;
    font-size: 14px;
    color: #555;
    padding: 5px;
}

.box250>.tags_list .item,
.box>.tags_list .item {
    display: inline-block;
    white-space: nowrap;
    padding: 6px 8px;
}

.box250 .sub_title,
.box .sub_title {
    font-size: 0.95em;
    color: #777;
}

.table_line .sub_title {
    font-size: 0.95em;
    color: #777;
}

.box250>.btn_list,
.box>.btn_list {
    font-size: 14px;
    color: #555;
    text-align: left;
    padding: 0 15px 10px;
}

.box250 .table tr td,
.box .table tr td {
    font-size: 14px;
    padding: 10px 20px;
}

.btn {
    font-size: 15px;
    border: 0;
    display: inline-block;
    text-decoration: none !important;
    margin: 4px 2px;
    padding: 5px 10px;
    cursor: pointer;
}

.btn_sm {
    font-size: 15px;
    border: 0;
    display: inline-block;
    text-decoration: none !important;
    margin: 2px 1px;
    padding: 3px 6px;
    cursor: pointer;
}

.redbtn {
    color: #fefefe !important;
    background-color: #FF6F00;
    vertical-align: middle;
}

.redbtn:hover {
    color: #fff !important;
    background-color: #fb5a4c;
}

.greenbtn {
    color: #fefefe !important;
    background-color: #22CE6B;
    vertical-align: middle;
}

.greenbtn:hover {
    color: #fff !important;
    background-color: #26E174;
}

.bluebtn {
    color: #fefefe !important;
    background-color: #4285F4;
    vertical-align: middle;
}

.bluebtn:hover {
    color: #fff !important;
    background-color: #5695f9;
}

.graybtn {
    color: #fefefe !important;
    background-color: #777;
    vertical-align: middle;
}

.graybtn:hover {
    color: #fff !important;
    background-color: #777;
}

.yellowbtn {
    background-color: #FBBC04 !important;
    color: #fefefe !important;
    vertical-align: middle;
}

.yellowbtn {
    background-color: #ffc71d !important;
    color: #fff !important;
    vertical-align: middle;
}

.box>.txt_list,
.boxcomm .txt_list {
    font-size: 14px;
    color: #555;
    padding: 15px;
    line-height: 200%;
}

.box>.txt_list p,
.box250 .txt_list p {
    font-size: 14px;
    color: #2d2d2d;
    margin: 0;
    padding: 3px 0 3px 3px;
}

.box .main_cnt_title,
.box250 .main_cnt_title {
    font-size: 1.2em;
    font-weight: bold;
    color: #2d2d2d;
    margin: 0;
    padding: 0 0 3px 0;
}

.box .sub_cnt_title,
.box250 .sub_cnt_title {
    font-size: 1em;
    font-weight: normal;
    line-height: 160%;
    color: #3d3d3d;
    margin: 0;
    padding: 0;
}

.box .line,
.box250 .line {
    border-bottom: 1px solid #ccc;
    margin: 0 0 8px 0;
    padding: 0;
}

.txtSearch {
    padding: 6px 3px;
    margin: 0 3px 0 0;
    width: 233px;
    vertical-align: middle;
}

.btnSearch {
    padding: 4px 7px;
    margin: 0 0 0 3px;
    vertical-align: middle;
}

.preset_avatar img {
    border: 3px solid #fff;
    vertical-align: middle;
    width: 70px;
    height: 70px;
    margin: 2px 0;
    padding: 10px;
}

.preset_avatar .selected {
    border: 3px solid #FF6F00 !important;
}

.greenb {
    font-weight: 700 !important;
    color: #22CE6B !important;
}

.redb {
    font-weight: 700 !important;
    color: #FF6F00 !important;
}

.grayb {
    font-weight: 700 !important;
    color: #ccc !important;
}

.greenn {
    font-weight: 400 !important;
    color: #22CE6B !important;
}

.redn {
    font-weight: 400 !important;
    color: #FF6F00 !important;
}

.grayn {
    font-weight: 400 !important;
    color: #ccc !important;
}

.bluen {
    font-weight: 400 !important;
    color: #4285F4 !important;
}

#spanCheckinMsg {
    color: #ccc;
    padding-left: 10px;
}

.select2-results__options {
    font-size: 14px;
    color: #555;
}

.alert-info {
    color: #3c763d;
    background-color: #dff0d8;
    text-align: center;
    padding: 12px;
    font-size: 14px;
}

.footer {
    font-size: 14px;
    width: 100%;
    line-height: 180%;
    background: #fff;
    margin: 15px auto 0 auto;
    padding: 25px 0;
    flex: 0 0 auto;
    position: relative;
    top: 60px;
    z-index: 100;
}

.footer .content {
    width: 1250px;
    bottom: 0;
    color: #555;
    margin: 0 auto;
    padding: 0;
}

.footer .content .point {
    font-size: 12px;
    vertical-align: baseline;
    color: #777;
    padding: 0 5px;
}

.footer .content .subtxt strong {
    color: #2d2d2d;
    font-weight: bold;
}

/* Footer content wrapper with flexbox layout */
.footer-content-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
    gap: 15px;
}

.footer-text {
    flex: 1;
    min-width: 0;
    text-align: left;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.footer-info-line {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    width: 100%;
}

.copyright-info {
    text-align: left;
    white-space: normal;
    word-wrap: break-word;
    word-break: break-word;
    line-height: 1.6;
}

.system-info {
    text-align: left;
    white-space: normal;
    word-wrap: break-word;
    word-break: break-word;
    line-height: 1.6;
}

.footer-bottom {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
}

.footer-info-container {
    flex: 1;
    min-width: 200px;
}

.w3c-validation {
    flex: 0 0 auto;
    opacity: 0.8;
    transition: opacity 0.3s ease;
    z-index: 100;
    text-align: left;
    align-self: center;
}

.w3c-validation:hover {
    opacity: 1;
}

.w3c-validation img {
    border: none;
    display: block;
    border-radius: 4px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.w3c-validation a {
    display: block;
    padding: 2px;
    background-color: white;
    border-radius: 6px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    transition: all 0.2s ease;
}

.w3c-validation a:hover {
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
    transform: translateY(-1px);
}

/* Screen reader only text */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

::selection,
::-webkit-selection,
::-moz-selection {
    background: #000;
    color: #fff;
}

.header .cont .menu>ul,
.form .form_table tr,
.container>.sidebar .box .table tr {
    margin: 0;
    padding: 0;
}

.header .cont .menu>ul>li>a:hover,
.header .cont .menu>ul>li>.selected,
.header .cont .menu_dropdonwn a:hover {
    color: #FF6F00;
    text-decoration: none;
}


.container>.main>.article_btm_tool a .comment_action a:hover {
    text-decoration: none;
}

.container>.main>.comment_list .item .c>.cont .form .text {
    color: #333;
}

.container>.main .table_line,
.form .form_table,
.container>.sidebar .box .table {
    width: 100%;
    border-collapse: collapse;
    font-size: 13px;
}

.container>.main .table_line a {
    text-decoration: underline;
    color: #000;
}

.container>.main .table_line a:hover {
    color: #FF6F00;
}


.container>.sidebar .box .ul_img {
    margin: 5px;
    padding: 0 15px;
}

.container>.sidebar .box .li_img {
    list-style: none;
    line-height: 150%;
}

.container>.sidebar .box .li_img a {
    align-items: center;
    vertical-align: middle;
}

.container>.sidebar .box .li_img span {
    vertical-align: middle;
}


.container>.sidebar .box .li_img a>img {
    width: 23px;
    height: 23px;
}

.log_view {
    color: #777;
    padding: 10px;
    background-color: #fff;
    margin-bottom: 25px;
    font-size: 13px;
}

.log_item {
    padding: 6px;
    line-height: 200%;
}

.log_item a {
    text-decoration: underline;
    color: #3d3d3d;
}

.log_item p {
    display: inline-block;
    padding: 0;
    margin: 0;
}

.norec {
    text-align: center;
    margin: 0;
    padding: 20px 0;
    color: #aaa;
    width: 100%;
    font-size: 14px;
}

.norec_sm {
    text-align: center;
    margin: 0;
    padding: 10px 0;
    color: #aaa;
    width: 100%;
    font-size: 14px;
}

.modal_box label {
    color: #777;
    margin-right: 15px;
    font-size: 14px;
}

.modal_box input[type='text'],
.modal_box select {
    padding: 5px 3px;
}

.modal_box input[type='text'] {
    min-width: 250px;
}

.modal_box select {
    min-width: 80px;
}

.modal_box .txt_bar {
    padding: 6px 0;
}

.modal_box .tool_bar {
    padding: 5px 0;
    text-align: right;
}

.toastui-editor-tooltip>.text {
    color: #fff;
}

.social-share {
    font-size: 13px !important;
}

.social-share .social-share-icon {
    width: 15px !important;
    height: 15px !important;
    line-height: 15px !important;
    border: none !important;
    font-size: 14px !important;
}

/*单页样式 开始*/
.cont_full {
    width: 100%;
    margin: 0;
    padding: 0;
}

.cont_search {
    display: flex;
    flex-direction: row;
    justify-content: center;
    padding: 20px 15px 30px 15px;
    margin: 0 auto;
    text-align: center;
    line-height: 180%;
    font-size: 1em;
}

.search_area {
    position: relative;
    width: 510px;
    margin: 5px 0;
}

.search_input {
    border-radius: 50px;
    color: #2d2d2d;
    border: 1px solid rgba(255, 255, 255, .05);
    padding: 10px 20px;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    background-color: #e2e2e2;
    outline: 0;
    width: 508px;
}

.search_button {
    position: absolute;
    top: 11px;
    right: 0;
    background: transparent;
    border: 0 !important;
    width: unset;
    height: unset;
    margin: 0 9px;
    border-radius: 3px;
}

.cont_title {
    background-color: #fcfcfc;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    font-size: 14px;
    border-top: 1px dotted #eee;
    border-bottom: 1px dotted #eee;
    padding: 7px 5px 7px 12px;
    margin: 0;
}

.cont_title .l h3 {
    padding-right: 3px;
    font-size: 1.06em;
    cursor: pointer;
    margin-bottom: 4px;
}

.cont_title .l h3 a {
    font-size: 1.06em;
    font-weight: bold;
}

.cont_title .l span,
.cont_title .l a {
    font-size: 0.90em;
    font-weight: 400;
    padding-right: 4px;
    color: #3d3d3d;
    cursor: pointer;
}

.cont_title .l span:hover,
.cont_title .l a:hover {
    color: #FF6F00;
}

.cont_title .l .selected,
.cont_title .l a .selected {
    color: #FF6F00;
}

.cont_title .r {
    text-align: right;
    flex-grow: 1;
}

.search_msg {
    font-size: 0.9em;
    font-weight: 400;
    color: #888;
    padding-left: 10px;
}

.cont_item {
    background-color: #fff;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    flex-wrap: wrap;
    padding: 10px 15px 0 15px;
    margin-bottom: 10px;
    width: 100%;
    box-sizing: border-box;
}

.cont_item_sm {
    padding: 5px 0 0 20px;
    background-color: #fff;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    flex-wrap: wrap;
    margin-bottom: 10px;
    width: 100%;
    box-sizing: border-box;
}

.cont_item_sm_title {
    margin: 15px 0 0 20px;
    font-size: 1em;
    color: #4d4d4d;
}

.cont_item .logo {
    width: 40px;
    height: 40px;
    vertical-align: middle;
}

.cont_item .item {
    /* width: 25%; */
    font-size: 14px;
    margin: 0 0 25px 0;
    display: flex;
}

.cont_item a:hover {
    text-decoration: none;
    background-color: #f9f9f9;
}

.cont_item a {
    display: flex;
    box-sizing: border-box;
}

.cont_item_sm a {
    display: flex;
    box-sizing: border-box;
}

.cont_item .item3 {
    box-sizing: border-box;
    /* width: 33.3333%; */
    margin: 0 0 10px 0;
    padding: 15px 10px;
}

.cont_item .item4 {
    box-sizing: border-box;
    margin: 0;
    padding: 10px;
    display: flex;
    align-items: center;
    width: 25%;
}

.cont_item_sm .item4 {
    box-sizing: border-box;
    margin: 0;
    padding: 10px;
    display: flex;
    align-items: center;
    width: 25%;
}

.cont_item .item .item_txt {
    padding-left: 5px;
}

.item_txt .item_title {
    width: 230px;
    font-size: 1em;
    font-weight: 600;
    color: #3d3d3d;
    overflow-x: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;

}

.item_txt .item_desc {
    width: 230px;
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 0.88em;
    font-weight: 350;
    line-height: 160%;
    color: #666;
}

.cont_item a:hover .item_txt .item_title {
    color: #FF6F00;
    font-weight: 600;
}

.cont_item a:hover .item_txt .item_desc {
    color: #555;
}

.cont_aidetail {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    flex-wrap: nowrap;
    padding: 15px;
    font-size: 14px;
    color: #2d2d2d;
    border-bottom: 1px dotted #e2e2e2;
}

.cont_aidetail .cont_icon {
    width: 200px;
    height: 200px;
    overflow: hidden;
    text-align: center;

    margin-right: 20px;
    box-sizing: border-box;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    background-color: #e2e2e2;
    transition: background-color .3s;

    border-radius: 6px;
    padding: 10px;
}

.blur-layer {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    position: absolute;
    width: inherit;
    height: inherit;
    opacity: .4;

    -moz-filter: blur(10px);
    -ms-filter: blur(10px);
    -webkit-filter: blur(10px);
    filter: blur(10px);
    background-size: cover;
}


.cont_aidetail .cont_icon img {
    max-width: 90% !important;
    min-width: 72px !important;
    max-height: 90% !important;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    border-radius: 6px;
}

.cont_aidetail .cont_txt {
    flex: 1;
    line-height: 160%;
}

.cont_txt_title {
    padding: 7px 0 10px 0;
}

.cont_txt_dec {
    color: #2d2d2d;
    padding-bottom: 12px;
    line-height: 160%;
}

.cont_txt_tag {
    padding-bottom: 8px;
    color: #999;
}

.cont_txt_tag a {
    color: #4d4d4d;
    padding-bottom: 10px;
    line-height: 150%;
    padding-right: 3px;
}

.cont_txt_tag>span {
    padding-right: 5px;
}

.cont_txt_tag .canclick {
    cursor: pointer;
}

.cont_txt_tag .canclick:hover {
    color: #FF6F00;
}

.cont_txt_tag i {
    padding-right: 2px;
}

.cont_txt_link {
    color: #999;
    font-weight: 400;
}

.cont_aiarticle {
    background-color: #fff;
    color: #4d4d4d;
    margin: 0;
    padding: 15px 25px;
    font-size: 14px;
    border-bottom: 1px dotted #e2e2e2;
}

.cont_aiarticle h2,
.cont_aiarticle h3 {
    padding: 10px 0 5px 0;
    font-size: 1.2em;
}

.cont_aiarticle h4,
.cont_aiarticle h5,
.cont_aiarticle h6 {
    padding: 10px 0 3px 0;
    font-size: 1.08em;
}

.cont_aiarticle p {
    line-height: 160%;
    font-size: 14px;
    word-wrap: break-word;
    padding: 7px 0;
}

.cont_aiarticle ul,
.cont_aiarticle ol {
    padding: 2px 15px 2px 20px;
}

.cont_aiarticle ul li,
.cont_aiarticle ol li {
    padding: 2px 5px 2px 10px;
    line-height: 160%;
    font-size: 14px;
    word-wrap: break-word;
    color: #5d5d5d;
}

.cont_aiarticle img {
    max-width: 765px;
    vertical-align: middle;
}

.jBox-content {
    font-size: 0.88em;
}

.cont_single {
    background-color: #fff;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 20px;
    margin: 0 auto 15px auto;
    min-height: 460px;
}

.cont_single .item {
    width: 50%;
    margin: 0 0 25px 0;
    line-height: 180%;
    text-align: center;
}

.cont_single .item p {
    font-size: 15px;
    color: #555;
}

.cont_single .logo {
    width: 50px;
    height: 50px;
    vertical-align: middle;
}

/*单页样式 结束*/

/* 表格 styles */
.article_cont table {
    min-width: 75%;
    width: 100%;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #ccc;
    border: 1px;
    border-color: #bababa;
}

.article_cont table thead,
.article_cont table tr {
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #bababa;
}

/* Padding and font style */
.article_cont table td,
.article_cont table th {
    text-align: left;
    padding: 3px 5px;
    font-size: 0.99em;
    color: #5d5d5d;
}

.article_cont table th {
    font-size: 1em;
    color: #3d3d3d;
    background-color: #ccc;
}

.article_cont table td p,
.article_cont table th p {
    line-height: 160% !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Alternating background colors */
.article_cont table tr:nth-child(even) {
    background: #efefef
}

.article_cont table tr:nth-child(odd) {
    background: #fff
}

.nice-select {
    background-color: transparent;
    border-radius: 5px;
    border: none;
    padding-left: 10px;
    padding-right: 20px;
    color: #555;
    height: 18px;
    line-height: 18px;
}

.nice-select.small {
    height: 18px;
    line-height: 18px;
}

.newFlag {
    background-color: #f7d670;
    color: #FF6F00;
    margin: 0 1px 0 0;
    padding: 0 1px;
    font-size: 12px;
    font-weight: 600;
    vertical-align: text-top;
    border-radius: 2px;
}

.freeFlag {
    background-color: #dff9c6;
    color: green;
    margin: 0 1px 0 0;
    padding: 0 1px;
    font-size: 12px;
    font-weight: 600;
    vertical-align: text-top;
    border-radius: 2px;
}

/* 回到顶部 开始 */
/* 按钮容器样式 */
.scroll-buttons-container {
    position: fixed;
    bottom: 30px;
    right: 30px;
    z-index: 1000;
    display: flex;
    flex-direction: column;
    gap: 0;
}

.scroll-buttons {
    display: flex;
    flex-direction: column;
    gap: 0;
    border-radius: 4px;
    overflow: hidden;
}

/* 按钮通用样式 */
.scroll-button {
    width: 50px;
    height: 50px;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    padding: 0;
    margin: 0;
    position: relative;
}

/* Scroll to top button styles */
.scroll-top-btn {
    background-color: #ff5722;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.scroll-top-btn:hover {
    background-color: #e64a19;
}

.scroll-top-btn .scroll-icon {
    color: white;
    font-size: 18px;
    line-height: 1;
    display: block;
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

/* Scroll to bottom button styles */
.scroll-bottom-btn {
    background-color: #1976d2;
}

.scroll-bottom-btn:hover {
    background-color: #1565c0;
}

.scroll-bottom-btn .scroll-icon {
    color: white;
    font-size: 18px;
    line-height: 1;
    display: block;
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.scroll-icon {
    transition: transform 0.3s ease;
}

.scroll-button:hover .scroll-icon {
    transform: translate(-50%, -50%) scale(1.1);
}

/* Responsive design */
@media (max-width: 768px) {
    .scroll-buttons-container {
        bottom: 20px;
        right: 20px;
    }

    .scroll-button {
        width: 45px;
        height: 45px;
    }

    .scroll-top-btn .scroll-icon,
    .scroll-bottom-btn .scroll-icon {
        font-size: 16px;
    }
}

/* 回到顶部 结束 */

/* ===========================================================
   Course Styles
   =========================================================== */

/* Course styles start */
.menu-container {
    position: relative;
    display: inline-block;
    margin: 0 5px;
}

#dy_menu {
    position: absolute;
    top: 100%;
    left: 0;
    margin: 5px 0 0;
    max-height: 50vh;
    overflow-y: auto;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    background-color: #fff;
    opacity: 1;
    width: 250px;
    overflow-x: hidden;
    display: none;
    z-index: 9999;
}

#dy_menu.hidden {
    display: none;
}

#dy_menu_mobile {
    display: none;
    margin: 0 0 15px 0;
    max-height: 50vh;
    overflow-y: auto;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    background-color: #fff;
    width: 100%;
    overflow-x: hidden;
}

#dy_menu_mobile.hidden {
    display: none;
}

.menu-arrow {
    font-size: 0.8em !important;
    vertical-align: middle;
}

.boxcomm {
    margin: 15px;
    padding: 10px 15px;
    background-color: #fff;
    overflow-x: hidden;
    overflow-y: visible;
    box-sizing: border-box;
}

.boxcomm .menu_title {
    background-color: #f9f9f9;
    margin-top: 5px;
    padding: 8px 7px 8px 15px;
    line-height: 160%;
    font-weight: 600;
    font-size: 14px;
    color: #6d6d6d;
}

.boxcomm .menu_link_lg,
.boxcomm .menu_link_md,
.boxcomm .menu_link_sm {
    display: block;
    padding: 8px 5px 8px 20px;
    line-height: 160%;
    font-size: 14px;
    color: #1d1d1d;
    overflow-wrap: anywhere;
}

.boxcomm .menu_link_md {
    padding: 7px 7px 7px 20px;
    line-height: 140%;
    color: #3d3d3d;
}

.boxcomm .menu_link_sm {
    padding: 5px 7px 5px 20px;
    color: #4d4d4d;
}

.boxcomm .menu_link_md:before,
.boxcomm .menu_link_sm:before {
    float: left;
    content: "";
    background: #888;
    min-width: 4px;
    width: 4px;
    height: 4px;
    overflow: hidden;
    margin: 8px 6px 0 0;
}

.boxcomm .active {
    color: #FF6F00;
}

.next_intro {
    margin-top: 25px;
}

.next_intro p {
    color: #5d5d5d !important;
}

.course_area {
    width: 100%;
    margin: 0 0 15px 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.course_area h2 {
    color: #5d5d5d;
}

.course_item {
    text-decoration: none !important;
    background-color: #f9f9f9;
    border: 1px solid #f5f5f5;
    width: calc((91.1% - 15px)/3);
    max-width: calc((91.1% - 15px)/3);
    min-width: calc((91.1% - 15px)/3);
    margin: 0 10px 10px 0;
    padding: 8px;
    font-size: 14px;
    flex: 1;
}

.course_item:nth-child(3n) {
    margin-right: 0;
}

.course_item:hover {
    background-color: #eeeeee;
}

.course_item h3 {
    color: #2d2d2d !important;
    margin: 0;
    padding: 0 0 7px 0 !important;
}

.course_intro {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
}

.course_intro img {
    width: 32px;
    margin-right: auto;
}

.course_intro p {
    color: #4d4d4d !important;
    font-size: 14px !important;
    line-height: 125% !important;
    margin-left: 14px !important;
    padding: 0 !important;
    height: 36px;
    overflow-y: hidden;
    width: 100%;
}

.course_result {
    margin: 5px 0 20px 0 !important;
    min-height: 563px !important;
}

.course_result>.result_title {
    color: #4d4d4d;
}

.course_result>.result_title h3 {
    margin: 0;
}

.course_result>.result_cont {
    line-height: 150% !important;
    color: #2d2d2d !important;
    font-size: 15px !important;
    margin: 0 !important;
    padding: 0 0 5px 0 !important;
}

.course_result>.result_origin {
    color: #777 !important;
    font-size: 14px !important;
    margin: 0 !important;
    padding: 0 0 5px 0 !important;
}

@media screen and (max-width: 414px),
(max-width:600px),
(min-width:600px) and (max-width:960px) {
    #dy_menu {
        position: relative;
        margin: 0 0 15px 0;
        top: auto;
        max-height: 50vh;
        overflow-y: auto;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
        background-color: #fff;
        opacity: 1;
        width: 100%;
        overflow-x: hidden;
        left: 0;
        display: block;
    }

    #dy_menu.hidden {
        display: block;
    }

    #menuToggleBtn {
        display: none;
    }

    .boxcomm {
        margin: 15px;
        padding: 10px 15px;
        box-sizing: border-box;
    }

    .boxcomm .menu_link_lg,
    .boxcomm .menu_link_md {
        display: inline-block;
        padding: 7px 5px 7px 15px;
    }

    .course_item {
        width: calc((90.3% - 15px)/2);
        max-width: calc((90.3% - 15px)/2);
        min-width: calc((90.3% - 15px)/2);
    }

    .course_item:nth-child(3n) {
        margin-right: auto;
    }

    .course_item:nth-child(2n) {
        margin-right: 0;
    }
}

/* Course styles end */

/* ===========================================================
   Latest News Styles (box_two)
   =========================================================== */

.box_two {
    margin-top: 15px;
    background-color: #fff;
    border-radius: 4px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.box_two .list_box {
    display: flex;
    flex-wrap: wrap;
    padding: 10px 15px;
    gap: 0;
}

.box_two .list_column {
    width: 50%;
    padding: 0 20px;
    box-sizing: border-box;
}

.box_two .list_column ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.box_two .list_column ul li {
    line-height: 1.6;
    font-size: 14px;
    padding: 6px 0 6px 15px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    position: relative;
}

.box_two .list_column ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 5px;
    height: 5px;
    background-color: #4d4d4d;
    border-radius: 50%;
}

.box_two .list_column ul li a {
    color: #2d2d2d;
    text-decoration: none;
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.box_two .list_column ul li a:hover {
    color: #000000;
    text-decoration: underline;
}