﻿/* ===== 顶部导航栏样式 - showcourse.aspx 页面保持导航可见 ===== */
/* 注释掉隐藏导航的规则，让 showcourse.aspx 显示母版页导航 */
/*
body:has(#showcontent) .studmasterhead,
body:has(#showcontent) div.studmasterhead,
body:has(#showcontent) .canner,
body:has(#showcontent) div.canner,
body:has(#showcontent) .banner,
body:has(#showcontent) div.banner,
body:has(#showcontent) .menu,
body:has(#showcontent) div.menu,
body:has(#showcontent) .nav,
body:has(#showcontent) nav.nav,
body:has(#showcontent) ul.nav,
body:has(#showcontent) #Menuact {
    display: none !important;
    height: 0 !important;
    max-height: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    visibility: hidden !important;
    opacity: 0 !important;
}
*/

body
{
    margin: 0 auto;
    position: relative;
}
/* 为使用左侧菜单的页面添加左边距 */
body:has(.menu) {
    padding-left: 220px;
}
/* 确保内容区域正确显示 */
body:has(.menu) .studmasterhead {
    margin-left: -180px;
}
body:has(.menu) .stu {
    margin-left: 0;
}
.ground
{
    background-image: url('ground.jpg');
	background-size:cover; 
}

/* ::-webkit-scrollbar { display: none; } Chrome Safari - 已注释，如需隐藏滚动条可取消注释 */

.chatimg
{
     position:fixed;
     bottom:24px;
     right:80px;
     opacity:0.3;
	 width:44px;
	 height:44px;
	 background-image: url('../../images/chatsleep.png');
	 background-size: contain;
	 background-repeat: no-repeat;
	 z-index:9999;
	 cursor:pointer;
	 transition: opacity 0.2s ease;
}
.chatimg:hover
{
     opacity:1;
	 background-image: url('../../images/chat.png');
}

.robotimg
{
     position:fixed;
     bottom:24px;
     right:24px;
     opacity:0.3;
	 width:44px;
	 height:44px;
	 background-image: url('../../images/robotsleep.png');
	 background-size: contain;
	 background-repeat: no-repeat;
	 z-index:9999;
	 cursor:pointer;
	 transition: opacity 0.2s ease;
}
.robotimg:hover
{
     opacity:1;
	 background-image: url('../../images/robotchat.png');
}

table {border-collapse:collapse;}
.st
{
	overflow:hidden;
	height: 100%;
	margin:auto;
	width:100%;/* linux下必须设置宽度，否则错位  */
}
.stu
{
	overflow:hidden;
	height: 100%;
	margin:auto;
	width:100%;/* linux下必须设置宽度，否则错位  */
}
.textbox{
	height:24px;
	line-height:24px;
    font-size: 12pt;
	background-color:#FCECC2;
    border-width: 1px;
	border-color:#C8C8C8;	
		
}

.buttonimg
{
    border-width: 0px;
    background-position: center;
    background-image: url('btn.png');
    background-repeat: no-repeat;
    width: 80px;
    height: 24px;
    line-height: 24px;
    text-align: center;
    font-size: 12pt;
    text-align:center;
}
.buttonimg:hover
{
    font-weight:bold;
}
.buttonnone
{
    border-width: 1px;
    border-color: #CCCCCC;
    width: 80px;
    height: 20px;
    background-color: transparent;
}
*
{
    margin-right: 0px;
    margin-left: 0px;
}
.menu a
{    
    text-decoration: none;
    transition: all 0.18s ease;
} /*链接无下划线none,有为underline*/
.menu a:link
{
    text-decoration: none;
    color: #3c4257 !important;
} /*未访问的链接 */
.menu a:visited
{
    color: #3c4257 !important;
    text-decoration: none;
} /*已访问的链接*/
.menu a:hover
{
    text-decoration: none;
    color: #1a1f36 !important;
} /*鼠标在链接上 */
.menu a:active
{
    color: #1a1f36 !important;
    text-decoration: none;
} /*点击激活链接*/

.shorttitle
{
    text-overflow:ellipsis; 
}

.banner
{
    padding: 0px;
    margin: 0px;
    border-width: 0px;
    height: 100px;
    overflow: hidden;
    background-image: url('road.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    width: 100vw;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}
.canner
{
    padding: 0px;
    margin: 0px;
    border-width: 0px;
    height: 10px;
    overflow: hidden;
    background-image: url('banner.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: right center;
    width: 100vw;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}
.logo1
{
    float: left;
    width: 160px;
    height: 60px;
}
.logo2
{
    float: left;
    width: 640px;
    height: 60px;
}
.menu
{
    background: #ffffff;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Microsoft YaHei", sans-serif;
    position: fixed;
    left: 0;
    top: 110px;
    width: 220px;
    min-width: 220px;
    height: calc(100% - 110px);
    box-shadow: 1px 0 8px rgba(0, 0, 0, 0.04);
    overflow-x: hidden;
    overflow-y: auto;
    z-index: 1000;
    border-right: 1px solid #eef0f4;
    padding: 12px 10px;
}
/* 隐藏滚动条但保留滚动功能 */
.menu::-webkit-scrollbar { width: 3px; }
.menu::-webkit-scrollbar-track { background: transparent; }
.menu::-webkit-scrollbar-thumb { background: #d8dce6; border-radius: 3px; }
.menu::-webkit-scrollbar-thumb:hover { background: #b0b8c8; }
/* 为左侧菜单留出空间 */
body:has(.menu) {
    padding-left: 220px;
}
.studmasterhead:has(.menu) {
    padding-left: 220px;
}
.sp{ padding-right:80px;}

/* ===== 左侧导航菜单样式 ===== */
/* ASP.NET Menu控件渲染为 table 结构，不是 ul/li，所以用 .nav a 而不是 .nav li a */

.nav {
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    font-size: 14px;
    font-weight: 500;
    list-style: none !important;
    display: block !important;
    width: 100% !important;
}

/* 覆盖ASP.NET Menu控件的table布局 - 强制垂直排列 */
.menu table,
.nav table {
    display: block !important;
    width: 100% !important;
    border-collapse: collapse !important;
    border-spacing: 0 !important;
}
.menu table tbody,
.nav table tbody {
    display: block !important;
    width: 100% !important;
}
.menu table tr,
.nav table tr {
    display: block !important;
    width: 100% !important;
    float: none !important;
}
.menu table td,
.nav table td {
    display: block !important;
    width: 100% !important;
    float: none !important;
    padding: 0 !important;
    margin: 1px 0 !important;
    border: none !important;
    white-space: normal !important;
}

/* 所有菜单链接 - 核心样式 */
.menu .nav a,
.nav a {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 10px 14px !important;
    color: #3c4257 !important;
    text-decoration: none !important;
    width: 100% !important;
    box-sizing: border-box !important;
    border-radius: 8px !important;
    border: none !important;
    transition: all 0.18s ease !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    letter-spacing: 0.2px !important;
    line-height: 1.5 !important;
    background-color: transparent !important;
    background-image: none !important;
}

/* 悬停状态 */
.menu .nav a:hover,
.nav a:hover {
    background-color: #f0f1f5 !important;
    color: #1a1f36 !important;
}

/* 选中状态 - 覆盖ASP.NET内联style */
/* ASP.NET Menu 会在选中的 <a> 上加 style="background-color:..." */
.nav a[style],
.menu .nav a[style],
.nav a.selected {
    background-color: #eef2ff !important;
    color: #4f46e5 !important;
    font-weight: 600 !important;
    border: none !important;
}

/* 菜单图标 - 隐藏原始PNG图片 */
.menu .nav a img,
.nav a img {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* 菜单SVG图标基础样式 */
.menu .nav a::before,
.nav a::before {
    content: '' !important;
    display: inline-flex !important;
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    flex-shrink: 0 !important;
    background-size: 20px 20px !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    opacity: 0.6;
    transition: opacity 0.2s ease, transform 0.2s ease;
    /* 默认图标: 文件 */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236366f1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z'/%3E%3Cpolyline points='13 2 13 9 20 9'/%3E%3C/svg%3E") !important;
}
.menu .nav a:hover::before,
.nav a:hover::before {
    opacity: 1;
    transform: scale(1.1);
}
.menu .nav a[style]::before,
.nav a[style]::before {
    opacity: 1;
}

/* ===== 根据img src匹配图标 ===== */
/* 首页/课程 - lesson.png / home.png / mylesson.png */
.nav a:has(img[src*="lesson"])::before,
.nav a:has(img[src*="home"])::before,
.nav a:has(img[src*="mylesson"])::before,
.nav a[href*="showcourse"]::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236366f1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z'/%3E%3Cpolyline points='9 22 9 12 15 12 15 22'/%3E%3C/svg%3E") !important;
}
/* 任务 - mission.png */
.nav a:has(img[src*="mission"])::before,
.nav a[href*="showtask"]::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2310b981' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 11 12 14 22 4'/%3E%3Cpath d='M21 12v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11'/%3E%3C/svg%3E") !important;
}
/* 讨论 - topic.png / topichot.png / topicnormal.png / topictitle.png */
.nav a:has(img[src*="topic"])::before,
.nav a[href*="topicdiscuss"]::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f59e0b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z'/%3E%3C/svg%3E") !important;
}
/* 填表 - bill.png */
.nav a:has(img[src*="bill"])::before,
.nav a[href*="txtform"]::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238b5cf6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3Crect x='8' y='2' width='8' height='4' rx='1' ry='1'/%3E%3Cline x1='8' y1='10' x2='16' y2='10'/%3E%3Cline x1='8' y1='14' x2='16' y2='14'/%3E%3Cline x1='8' y1='18' x2='12' y2='18'/%3E%3C/svg%3E") !important;
}
/* 考试 - check.png */
.nav a:has(img[src*="check"])::before,
.nav a[href*="myexam"]::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ef4444' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7'/%3E%3Cpath d='M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z'/%3E%3C/svg%3E") !important;
}
/* 调查 - survey.png */
.nav a:has(img[src*="survey"])::before,
.nav a[href*="mysurvey"]::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2306b6d4' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='8' y1='6' x2='21' y2='6'/%3E%3Cline x1='8' y1='12' x2='21' y2='12'/%3E%3Cline x1='8' y1='18' x2='21' y2='18'/%3E%3Cline x1='3' y1='6' x2='3.01' y2='6'/%3E%3Cline x1='3' y1='12' x2='3.01' y2='12'/%3E%3Cline x1='3' y1='18' x2='3.01' y2='18'/%3E%3C/svg%3E") !important;
}
/* 编程 - program.png / console.png / blockly.png / blockpy.png */
.nav a:has(img[src*="program"])::before,
.nav a:has(img[src*="console"])::before,
.nav a:has(img[src*="blockly"])::before,
.nav a:has(img[src*="blockpy"])::before,
.nav a[href*="program"]::before,
.nav a[href*="console"]::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ec4899' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='16 18 22 12 16 6'/%3E%3Cpolyline points='8 6 2 12 8 18'/%3E%3C/svg%3E") !important;
}
/* Python - python.png / py.png */
.nav a:has(img[src*="python"])::before,
.nav a:has(img[src*="py."])::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='4 17 10 11 4 5'/%3E%3Cline x1='12' y1='19' x2='20' y2='19'/%3E%3C/svg%3E") !important;
}
/* 描述/说明 - description.png / info.png */
.nav a:has(img[src*="description"])::before,
.nav a:has(img[src*="info"])::before,
.nav a[href*="description"]::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cline x1='12' y1='16' x2='12' y2='12'/%3E%3Cline x1='12' y1='8' x2='12.01' y2='8'/%3E%3C/svg%3E") !important;
}
/* 总结 - summary.png */
.nav a:has(img[src*="summary"])::before,
.nav a[href*="summary"]::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2314b8a6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='12' y1='20' x2='12' y2='10'/%3E%3Cline x1='18' y1='20' x2='18' y2='4'/%3E%3Cline x1='6' y1='20' x2='6' y2='16'/%3E%3C/svg%3E") !important;
}
/* 评价 - peer_review.png / vote.png / wvote.png / good.png */
.nav a:has(img[src*="peer_review"])::before,
.nav a:has(img[src*="vote"])::before,
.nav a:has(img[src*="good"])::before,
.nav a[href*="myevaluate"]::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f59e0b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2'/%3E%3C/svg%3E") !important;
}
/* 素材/仓库 - ware.png */
.nav a:has(img[src*="ware"])::before,
.nav a[href*="ware"]::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a855f7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z'/%3E%3Cpolyline points='3.27 6.96 12 12.01 20.73 6.96'/%3E%3Cline x1='12' y1='22.08' x2='12' y2='12'/%3E%3C/svg%3E") !important;
}
/* 探究 - inquiry.png */
.nav a:has(img[src*="inquiry"])::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23059669' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E") !important;
}
/* 返回 - return.png */
.nav a:has(img[src*="return"])::before,
.nav a[href*="myinfo"]::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236366f1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='19' y1='12' x2='5' y2='12'/%3E%3Cpolyline points='12 19 5 12 12 5'/%3E%3C/svg%3E") !important;
}
/* Excel表格 - excel.png / sheet.png */
.nav a:has(img[src*="excel"])::before,
.nav a:has(img[src*="sheet"])::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23059669' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='2' ry='2'/%3E%3Cline x1='3' y1='9' x2='21' y2='9'/%3E%3Cline x1='3' y1='15' x2='21' y2='15'/%3E%3Cline x1='9' y1='3' x2='9' y2='21'/%3E%3C/svg%3E") !important;
}
/* Word文档 - word.png */
.nav a:has(img[src*="word"])::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpolyline points='14 2 14 8 20 8'/%3E%3Cline x1='16' y1='13' x2='8' y2='13'/%3E%3Cline x1='16' y1='17' x2='8' y2='17'/%3E%3C/svg%3E") !important;
}
/* PPT - pptist.png / mpptx.png */
.nav a:has(img[src*="pptist"])::before,
.nav a:has(img[src*="mpptx"])::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ea580c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='3' width='20' height='14' rx='2' ry='2'/%3E%3Cline x1='8' y1='21' x2='16' y2='21'/%3E%3Cline x1='12' y1='17' x2='12' y2='21'/%3E%3C/svg%3E") !important;
}
/* HTML/网页 - html.png / web.png / site.png / iframe.png */
.nav a:has(img[src*="html"])::before,
.nav a:has(img[src*="web"])::before,
.nav a:has(img[src*="site"])::before,
.nav a:has(img[src*="iframe"])::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e11d48' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cline x1='2' y1='12' x2='22' y2='12'/%3E%3Cpath d='M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z'/%3E%3C/svg%3E") !important;
}
/* AI - ai.png / mlimg.png / text-to-image.png / ocr.png */
.nav a:has(img[src*="ai."])::before,
.nav a:has(img[src*="mlimg"])::before,
.nav a:has(img[src*="text-to-image"])::before,
.nav a:has(img[src*="ocr"])::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237c3aed' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='13 2 3 14 12 14 11 22 21 10 12 10 13 2'/%3E%3C/svg%3E") !important;
}
/* 海报/像素画/精灵 - poster.png / pixel.png / sprites.png */
.nav a:has(img[src*="poster"])::before,
.nav a:has(img[src*="pixel"])::before,
.nav a:has(img[src*="sprites"])::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d946ef' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='2' ry='2'/%3E%3Ccircle cx='8.5' cy='8.5' r='1.5'/%3E%3Cpolyline points='21 15 16 10 5 21'/%3E%3C/svg%3E") !important;
}
/* 思维导图 - kitymind.png */
.nav a:has(img[src*="kitymind"])::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230ea5e9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 16.98h-5.99c-1.1 0-1.95.68-2.95 1.76C8.07 19.83 6.53 21 4 21'/%3E%3Cpath d='M18 7.02h-5.99c-1.1 0-1.95-.68-2.95-1.76C8.07 4.17 6.53 3 4 3'/%3E%3Cpath d='M18 12H4'/%3E%3C/svg%3E") !important;
}
/* 绘图 - excalidraw.png / mxgraph.png */
.nav a:has(img[src*="excalidraw"])::before,
.nav a:has(img[src*="mxgraph"])::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f97316' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 19l7-7 3 3-7 7-3-3z'/%3E%3Cpath d='M18 13l-1.5-7.5L2 2l3.5 14.5L13 18l5-5z'/%3E%3Cpath d='M2 2l7.586 7.586'/%3E%3Ccircle cx='11' cy='11' r='2'/%3E%3C/svg%3E") !important;
}
/* 声音 - sound.png / speek.png */
.nav a:has(img[src*="sound"])::before,
.nav a:has(img[src*="speek"])::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230d9488' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='11 5 6 9 2 9 2 15 6 15 11 19 11 5'/%3E%3Cpath d='M19.07 4.93a10 10 0 0 1 0 14.14M15.54 8.46a5 5 0 0 1 0 7.07'/%3E%3C/svg%3E") !important;
}
/* 游戏 - sokoban.png / tic-tac-toe.png */
.nav a:has(img[src*="sokoban"])::before,
.nav a:has(img[src*="tic-tac"])::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e11d48' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='6' y1='3' x2='6' y2='15'/%3E%3Ccircle cx='18' cy='6' r='3'/%3E%3Ccircle cx='6' cy='18' r='3'/%3E%3Cpath d='M18 9a9 9 0 0 1-9 9'/%3E%3C/svg%3E") !important;
}
/* Markdown - markdown.png */
.nav a:has(img[src*="markdown"])::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23475569' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpolyline points='14 2 14 8 20 8'/%3E%3Cpath d='M7 13h2l2 4 2-8 2 4h2'/%3E%3C/svg%3E") !important;
}
/* 帮助 - help.png */
.nav a:has(img[src*="help"])::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236366f1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3'/%3E%3Cline x1='12' y1='17' x2='12.01' y2='17'/%3E%3C/svg%3E") !important;
}
/* FTP/下载 - ftp.png / soft.png */
.nav a:has(img[src*="ftp"])::before,
.nav a:has(img[src*="soft"])::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230284c7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpolyline points='7 10 12 15 17 10'/%3E%3Cline x1='12' y1='15' x2='12' y2='3'/%3E%3C/svg%3E") !important;
}
/* 手写数字 - handnum.png */
.nav a:has(img[src*="handnum"])::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b45309' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z'/%3E%3C/svg%3E") !important;
}
/* Flash - flashview.png / flashauto.png */
.nav a:has(img[src*="flash"])::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23dc2626' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='23 7 16 12 23 17 23 7'/%3E%3Crect x='1' y='5' width='15' height='14' rx='2' ry='2'/%3E%3C/svg%3E") !important;
}
/* MQTT - mqtt.png */
.nav a:has(img[src*="mqtt"])::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23059669' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.55a11 11 0 0 1 14.08 0'/%3E%3Cpath d='M1.42 9a16 16 0 0 1 21.16 0'/%3E%3Cpath d='M8.53 16.11a6 6 0 0 1 6.95 0'/%3E%3Cline x1='12' y1='20' x2='12.01' y2='20'/%3E%3C/svg%3E") !important;
}
/* 礼物 - gift.png */
.nav a:has(img[src*="gift"])::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e11d48' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 12 20 22 4 22 4 12'/%3E%3Crect x='2' y='7' width='20' height='5'/%3E%3Cline x1='12' y1='22' x2='12' y2='7'/%3E%3Cpath d='M12 7H7.5a2.5 2.5 0 0 1 0-5C11 2 12 7 12 7z'/%3E%3Cpath d='M12 7h4.5a2.5 2.5 0 0 0 0-5C13 2 12 7 12 7z'/%3E%3C/svg%3E") !important;
}
/* SketchUp/3D - sketchup.png */
.nav a:has(img[src*="sketchup"])::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23dc2626' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2L2 7l10 5 10-5-10-5z'/%3E%3Cpath d='M2 17l10 5 10-5'/%3E%3Cpath d='M2 12l10 5 10-5'/%3E%3C/svg%3E") !important;
}

/* 兼容 li 渲染模式（如果 Menu RenderingMode=List） */
.nav li {
    float: none !important;
    display: block !important;
    margin: 1px 0 !important;
    text-align: left !important;
    position: relative !important;
    width: 100% !important;
    clear: both !important;
}

/* li 类名背景图标 - 已用SVG替代，禁用原始PNG */
li.home, li.mission, li.survey, li.topic, li.inquiry, li.return {
    background-image: none !important;
}
.nav li.home a,
.nav li.mission a,
.nav li.survey a,
.nav li.topic a,
.nav li.inquiry a,
.nav li.return a {
    padding-left: 14px;
}

.foot
{
    font-size: 12pt;
    font-family: Arial;
}
.path
{
    margin:auto;
    height: 12px;
}
.studmasterhead
{
    text-align: left;
    margin: auto;
    padding-top: 0px;
    position: relative;
}
/* 为使用左侧菜单的页面添加左边距 */
.studmasterhead:has(.menu) {
    margin-left: 220px;
}
.stu:has(~ .menu),
.stu:has(+ .menu) {
    margin-left: 220px;
}
/* 确保内容区域不会与左侧菜单重叠 */
body:has(.menu) .placeauto {
    margin-left: 0;
    max-width: calc(100% - 220px);
}
.placeauto
{
    margin: auto;
    width: 100%;
}
.bg
{
    background-image: url('bg.png');
    background-repeat: no-repeat;
    width: 100%;
    height: 550px;
}
.indexdiv
{
    margin: auto;
    width: 300px;
    height: 240px;
    background-image: url('login.png');
    background-repeat: no-repeat;
}
.pfdiv
{
    border: 1px solid #E8E8E8;
    margin: auto;
    width: 300px;
}
.indexhead
{
    border-width: 0px;
    height: 24px;
    line-height: 24px;
}


.indexsql
{
    margin: auto;
    width: 360px;
    vertical-align: middle;
}
#student
{
    margin: auto;
    font-family: Arial;
    font-size: 11pt;    
	text-align:center;	
	padding:10px;
}

.left
{
    float: left;
	width:79%;
    text-align: center;
    overflow: hidden;
}
.right
{
    float: right;
	width:20%;
    text-align: center;
    overflow: hidden;
}


.ImagePass
{
	position:fixed;
	left:70%;
	top:240px;
}

.show
{
    border: 1px solid lightsteelblue;
    width: 80px;
    height: 60px;
    vertical-align: middle;
    background-color: #E9F1FE;
    font-size: 12pt;
    font-family: Arial;
}
.centerdiv
{
    text-align: center;
}
.center
{
    background-color: #C0D6E4;
    height: 18px;
    padding-right: 2px;
    line-height: 18px;
}
.pagediv
{
    font-size: 11pt;
    width: 100%;
    color: black;
    height: 20px;
    text-align: right;
}
.onlinediv
{
    border: 1px solid #ABC1EB;
    vertical-align: middle;
    width: 80px;
    height: 38px;
    text-align: center;
}
.onlinebg
{
    background-color: #C0D6E4;
}

.divtop
{
    float: left;
    width: 310px;
}

.divscoreheight
{
    float: left;
    width: 400px;
}

.divscore
{
    margin:auto; 
    width: 390px;
}
.divRank
{
    padding: 2px;
    margin: auto;
    width: 150px;
}
.divinfo
{
    margin:auto; 
    height:30px;
    width:200px;
}
.divinfo1
{
    border: 1px solid #ABC1EB;    
    float: left;
    width: 40px;
    text-align: center;
    background-color: #C0D6E4;
}

.divinfo2
{
    border: 1px solid #ABC1EB;
    float: left;
    width: 150px;
}


.divvote
{
    border: 1px solid #E1EDFF;
    width: 70px;
    height: 60px;
    text-align: center;
    vertical-align: middle;
    background-color: #FFFAEE;
}
.divgood
{
    border: 1px solid #EAEFFB;
    background-color: #F7FBFF;   
    width: 80px;
    text-align: center;
    vertical-align: middle;
}
.divvotebg
{
    background-color: #E1EDFF;
}
.divcenter
{ text-align:center;}
.divborder
{
    border: 1px solid #EAEAEA;
}

.downworkbd
{
    margin:auto;
    border: 1px solid #E6E6E6;
    width: 360px;
}
.downfilebd
{
    margin:auto;
    border: 1px solid #E6E6E6;
    width: 560px;
}
.downcontentbd
{
    border: 1px solid #E6E6E6;
    width: 790px;
}
.downcontent
{
    margin: auto;
    width: 780px;
    text-align: left;
    font: 12px/150% Arial;
    padding: 10px 3px 3px 10px;
}
.textboxcenter
{
    text-align: center;
}

#showcontent
{
    margin:auto;
    font-family: Arial;
    font-size: 12pt;
	padding:10px;
	min-width:0;
	width:100%;
}
.coursetitle
{
    height: 20px;
    font-size: 16pt;
    font-family: Arial;
    font-weight: bold;
}
.descriptioncontent
{
    margin: 20px;
    text-align: left;
    line-height:1.5;
	word-wrap:break-word;
}
.taskcontent
{
    margin: 10px;
    text-align: left;
    line-height:1.5;
	word-wrap:break-word;
}
.sidebar
{
   width:200px;
   top:180px;
   right:10px;
   position:fixed;
   z-index:100;
   background:url("sidebg.png") 0 0 repeat;
}
.coursecontent
{
    text-align: left;
    line-height: 1.8;
    padding: 40px 60px;
    background: #ffffff;
    border-radius: 0;
    box-shadow: none;
    border: none;
    font-size: 16px;
    color: #334155;
    min-height: 400px;
    word-wrap: break-word;
    box-sizing: border-box;
    width: 100%;
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif;
}
.coursecontent h1, .coursecontent h2, .coursecontent h3 {
    color: #1e293b;
    margin-top: 24px;
    margin-bottom: 16px;
    font-weight: 700;
}
.coursecontent p {
    margin-bottom: 16px;
}
.coursecontent img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1);
    margin: 16px 0;
}
.coursecontent table {
    width: 100%;
    border-collapse: collapse;
    margin: 16px 0;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}
.coursecontent table td,
.coursecontent table th {
    padding: 12px;
    border: 1px solid #e2e8f0;
}
.coursecontent table th {
    background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
    font-weight: 600;
    color: #1e293b;
}
.coursecontent a {
    color: #6366f1;
    text-decoration: none;
    font-weight: 500;
    transition: color 0.2s ease;
}
.coursecontent a:hover {
    color: #4f46e5;
    text-decoration: underline;
}
div.placeauto img:hover
{
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.3);
}
.ccontent
{
    margin: auto;
    width: 780px;
}
.myinfo
{
    margin: auto;
    width: 160px;
}
.missiontitle
{
    font-size: 16pt;
    font-family: 宋体, Arial, Helvetica, sans-serif;
    font-weight: bold;
    border-bottom-style: dashed;
    border-bottom-width: 1px;
    border-bottom-color: #D5D5D5;
    padding-bottom: 20px;
	text-align:center;
}
.courseother
{
    padding: 0;
    margin: 0;
    height: 0;
}
.divnull
{
    margin: auto;
    width: 200px;
}
/* .divbgupload - 预留样式类，待使用 */
.ruletabel
{
    font-size: 11pt;
    width: 500px;
}
.rulehead
{
    padding: 0px;
    margin: 0px;
    font-weight: bold;
    color: black;
    height: 16px;
    background-color: #C0D6E4;
    text-align: center;
}
.ruletd
{
    border-bottom-style: dashed;
    border-bottom-width: 1px;
    border-bottom-color: #C0C0C0;
}

.quizscoreheight
{
    float: left;
    width: 50%;
}
.quizone
{
    display:flex;
    padding: 10px;
    margin: auto;    
}
.quizone:hover{
	background-color:#F8DFC9;
}

.quizleftnum
{
    float: left;
    width: 30px;
    text-align: center;
	line-height:24px;
}

.quizleftquestion
{
    float: left;
    width: 80%;
    text-align: left;
	line-height:24px;	
    padding-left: 10px;
}
.quizleftanswer
{
    float: left;
    width: 4px;
}
.quizleftup
{
    float: right;
    width: 20%;
}
.quizresult
{
    margin:auto;
    width: 90%;
}
.quizmyhead
{
    margin:auto;
    border: 0px;
    height: 26px;
}
.quizmyscore
{
    margin:auto;
    width: 98%;
    border: 1px solid #E6E8E8;
}
.quizinfo
{
    margin:auto;
    width: 128px;
    border: 1px solid #ABC1EB;
}
.quizhead
{
    border: 1px solid #ABC1EB;
    text-align: center;
}
.quiztime
{
    margin:auto;
    border: none;
    font-size: 11pt;	
	background:transparent;
    font-family: Arial;
    text-align: center;
}
.divquizscore
{
    margin:auto; 
    width: 90%;
}
.uploaddiv
{
    font-family: Arial;
    font-size: 11pt;
    width: 160px;
    margin: auto;
    text-align: center;
}
.panelFtpcss
{
    text-align: left;
    background-color: #FBE3C4;
}
.panelselfcss
{
    text-align:center;
    background-color: #FBE3C4;
}
.btncopy
{
    background-color: #F2DFC1;
    border: 1px solid #E9C794;
    font-family: Arial;
    font-size: 11pt
}
.txtszcenter
{
    line-height: 18px;
}
.sitevote
{
    border: 1px solid #E1EDFF;
    width: 70px;
    height: 50px;
    text-align: center;
    vertical-align: middle;
    background-color: #FFFFFF;
}
.sitevotebg
{
    background-color: #E1EDFF;
}
.txts24center
{
    line-height: 24px;
}
.txts20center
{
    line-height: 20px;
}
.topicleft
{
    float: left;
    width: auto;
    height: auto;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}
.topicright
{
    float: right;
    width: auto;
    text-align: right;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.topichead
{
    padding: 10px 16px;
    background: #f8f9fb;
    border-bottom: 1px solid #eef0f4;
    height: auto;
    line-height: 1.5;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px;
    min-height: 40px;
}
.topictext
{
    padding: 14px 18px;
    float: none;
    margin: auto;
    white-space: normal;
    line-height: 1.7;
	width: auto;
	word-wrap: break-word;
}
#plant{
	margin: auto;	
}
/* .topicagree - 预留样式类，待使用 */
.formtext
{
    border: 1px dashed #CCCCCC;
    padding: 2px;
    float: left;
    margin: auto;
    white-space: normal;
    display: block;
    line-height: 20px;
    width: 820px;
    background-color: #FFFFDD;
}
.leftmaster
{
    float: left;
    width: 1200px;
    text-align: center;
    overflow: hidden;
}
.rightmaster
{
	position:fixed;
    right:0px;
    width: 240px;
    text-align: center;
    overflow: hidden;
}
.sharedisk
{
    border-width: 0px;
    padding: 0px;
    width: 80px;
    height: 20px;
    background-image: url('../../images/share.gif');
    background-repeat: no-repeat;
    font-size: 11pt;
    line-height: 20px;
}
.nomicdisk
{
    margin: 0px;
    border-width: 0px;
    padding: 0px;
    width: 100px;
    height: 22px;
    background-image: url('../../images/nomicdisk.gif');
    background-repeat: no-repeat;
    font-size: 11pt;
    line-height: 22px;
}      
.textbox
{
    background-color: #FBF4D5;
	border: 1px dashed #ccc;
} 
.textbox:hover
{
	border: 1px dashed #999;
} 
.textlabel
{
    background-color:#FBF4D5; height:20px;width:80px;
	border: 1px dashed #ccc;
}
.textlabel:hover
{
	border: 1px dashed #999;
}
.onlinename
{
    font-size: 11pt;
    font-family: 宋体, Arial, Helvetica, sans-serif;
    text-decoration: none;
    height: 18px;
}
.onlineflag
{
    border-style: 0;
}
.onlinedate
{
    font-family: Arial;
    font-size: 8pt;
    width: 40px;
}
.timg { border: 1px solid #ddd;width:220px; height:180px;border-radius: 24px;  } a:hover img{filter:alpha(Opacity=60);-moz-opacity:0.6;opacity: 0.6}
.divindex{margin: auto;overflow: hidden;}
.thumbbox{width:24.9%;float:left;}
.text-center{font-size: 10pt;color: #666;font-family: Arial;}
.txtblank
{ 
  border: 1px dashed #666;
  background-color:#fadaa9;
  margin:20px;
  height:24px;
}
.leadvote
{   
    opacity: 0.6;
}

.leadvote:hover
{   
    opacity: 1;   
}

.stunum{
	text-align: center;
    vertical-align: middle; 
	opacity:0.5;
	padding:6px;
}
.stunum:hover{
	box-shadow: 4px 4px 8px rgba(0, 0, 0, 0.6);
	opacity:1.0;
}
.stuimg{
    width: 70px;	
	height:80px;
}
.stulink{
	text-decoration:none;	
}


.quizarea{
	width: 980px; margin: auto; padding: 10px; text-align: left; box-shadow:0px 0px 6px #ddd;
}

#questionPage{    
   overflow:auto;
   text-align:left;
}

.blackword{
    border:none;
	outline:none;
	border-bottom: 1px solid #999;
	display: inline-block;
	background: #FFF7D9;
	overflow: hidden;
	text-align: center;
	white-space: nowrap;
	width: 80px;
	font-size:16px;
}
.quiztitle{
	padding:10px;
	margin:auto;
	font-family:Arial,"微软雅黑";
}
.quizraido{
	padding-left:50px;
	margin:4px;
	font-family:Arial,"微软雅黑";
}
.quizquestion{	
	font-size:16px;
	margin:10px;
	border: 1px solid #fff;	
}
.quizquestion:hover{
	background:#fafafa;
}
.btnsubmit{
	text-align: center;	
	padding:10px;
}
.btnwidth{
	width:100px;
}

.linedashed{
	border-width: 1px; border-color: #808080; border-bottom-style: dashed; padding-bottom: 4px;
}
.vcontent{
	margin: auto; padding: 2px; text-align: left; width: 980px; 
}

#Btnform
{
  border-width: 0px; background-color: #3399FF; width: 80px; height: 24px;  
}
#Btnform:hover
{
  color:#fff;
  background-color: #0068D1; 
  cursor:pointer;
}

/* ===== showmission.aspx 页面美化样式 - 强制覆盖 ===== */

/* 整体容器美化 - 使用更高优先级 */
div#showcontent,
#showcontent {
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    animation: fadeIn 0.6s cubic-bezier(0.22, 1, 0.36, 1) !important;
    box-sizing: border-box !important;
    min-width: auto !important;
}
#showcontent br:first-child { display: none !important; }

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* 任务标题美化 - 强制覆盖 */
div.missiontitle,
.missiontitle {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
    border-radius: 0 !important;
    padding: 36px 40px !important;
    margin-bottom: 0 !important;
    text-align: center !important;
    color: #ffffff !important;
    font-size: 22pt !important;
    font-weight: 600 !important;
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important;
    box-shadow: none !important;
    position: relative !important;
    overflow: hidden !important;
    border: none !important;
    border-bottom: none !important;
    border-bottom-style: none !important;
    border-bottom-width: 0 !important;
    border-bottom-color: transparent !important;
    padding-bottom: 36px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.missiontitle::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.15) 0%, transparent 70%);
    animation: shimmer 3s infinite;
}

@keyframes shimmer {
    0%, 100% {
        transform: translate(-50%, -50%) rotate(0deg);
    }
    50% {
        transform: translate(-50%, -50%) rotate(180deg);
    }
}

.missiontitle label {
    color: #ffffff !important;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
    position: relative;
    z-index: 1;
}

/* 任务内容区域美化 - 强制覆盖 */
div#Mcontent.taskcontent,
#Mcontent.taskcontent,
div.taskcontent,
.taskcontent {
    background: #ffffff !important;
    border-radius: 16px !important;
    padding: 32px !important;
    margin: 10px 0 !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08),
                0 0 0 1px rgba(0, 0, 0, 0.04) !important;
    line-height: 1.8 !important;
    font-size: 15px !important;
    color: #334155 !important;
    min-height: 200px !important;
    transition: box-shadow 0.3s ease !important;
    text-align: left !important;
    word-wrap: break-word !important;
    box-sizing: border-box !important;
}

.taskcontent:hover {
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12),
                0 0 0 1px rgba(0, 0, 0, 0.06) !important;
}

.taskcontent img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1);
    margin: 16px 0;
}

.taskcontent table {
    width: 100%;
    border-collapse: collapse;
    margin: 16px 0;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.taskcontent table td,
.taskcontent table th {
    padding: 12px;
    border: 1px solid #e2e8f0;
}

.taskcontent table th {
    background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
    font-weight: 600;
    color: #1e293b;
}

/* 侧边栏美化 - 强制覆盖 */
div.sidebar,
.sidebar {
    width: 280px !important;
    top: 120px !important;
    right: 20px !important;
    position: fixed !important;
    z-index: 100 !important;
    background: #ffffff !important;
    background-image: none !important;
    background-color: #ffffff !important;
    border-radius: 16px !important;
    padding: 24px !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1),
                0 0 0 1px rgba(0, 0, 0, 0.05) !important;
    border: none !important;
    backdrop-filter: blur(10px) !important;
    box-sizing: border-box !important;
}

.sidebar::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #667eea 0%, #764ba2 100%);
    border-radius: 16px 16px 0 0;
}

/* 网盘按钮美化 */
.sharedisk {
    width: 100% !important;
    height: 48px !important;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
    background-image: none !important;
    border: none !important;
    border-radius: 12px !important;
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 4px 12px rgba(102, 126, 234, 0.3) !important;
    padding: 0 !important;
    line-height: 48px !important;
    text-align: center !important;
    margin-bottom: 16px !important;
}

.sharedisk:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(102, 126, 234, 0.4) !important;
    background: linear-gradient(135deg, #764ba2 0%, #667eea 100%) !important;
}

.sharedisk:active {
    transform: translateY(0) !important;
}

/* 作品互评链接美化 */
.sidebar a.txtszcenter {
    display: block !important;
    width: 100% !important;
    height: 48px !important;
    line-height: 48px !important;
    text-align: center !important;
    background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%) !important;
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 12px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    margin: 16px 0 !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 4px 12px rgba(245, 87, 108, 0.3) !important;
}

.sidebar a.txtszcenter:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(245, 87, 108, 0.4) !important;
    background: linear-gradient(135deg, #f5576c 0%, #f093fb 100%) !important;
}

/* 作品提交按钮美化 */
#uploadButton,
#uploadgroupButton {
    width: 100% !important;
    height: 48px !important;
    background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%) !important;
    border: none !important;
    border-radius: 12px !important;
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 4px 12px rgba(79, 172, 254, 0.3) !important;
    margin: 16px 0 !important;
}

#uploadButton:hover,
#uploadgroupButton:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(79, 172, 254, 0.4) !important;
    background: linear-gradient(135deg, #00f2fe 0%, #4facfe 100%) !important;
}

#uploadButton:active,
#uploadgroupButton:active {
    transform: translateY(0) !important;
}

/* 文件类型标签美化 */
.sidebar label,
.sidebar .LabelMfiletype {
    display: block !important;
    padding: 12px 16px !important;
    background: #f8fafc !important;
    border-radius: 8px !important;
    margin: 12px 0 !important;
    color: #475569 !important;
    font-size: 14px !important;
    text-align: center !important;
    border: 1px solid #e2e8f0 !important;
}

/* 消息标签美化 */
.LabelMsgRed {
    display: block !important;
    padding: 12px 16px !important;
    background: #fef2f2 !important;
    border: 1px solid #fecaca !important;
    border-radius: 8px !important;
    color: #dc2626 !important;
    font-size: 14px !important;
    margin: 12px 0 !important;
    text-align: center !important;
}

/* 小组合作面板美化 */
.sidebar .GridViewInfo {
    width: 100% !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05) !important;
    border: 1px solid #e2e8f0 !important;
    margin: 16px 0 !important;
}

.sidebar .GridViewInfo th {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
    color: #ffffff !important;
    padding: 12px !important;
    font-weight: 600 !important;
    text-align: center !important;
    border: none !important;
}

.sidebar .GridViewInfo td {
    padding: 12px !important;
    text-align: center !important;
    border-bottom: 1px solid #e2e8f0 !important;
    background: #ffffff !important;
}

.sidebar .GridViewInfo tr:hover td {
    background: #f8fafc !important;
}

.sidebar .GridViewInfo a {
    color: #667eea !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    transition: color 0.2s ease !important;
}

.sidebar .GridViewInfo a:hover {
    color: #764ba2 !important;
    text-decoration: underline !important;
}

/* 链接按钮美化 */
.sidebar .GridViewInfo .LinkButtonA,
.sidebar .GridViewInfo .LinkButtonP,
.sidebar .GridViewInfo .LinkButtonE {
    display: inline-block !important;
    padding: 6px 12px !important;
    border-radius: 6px !important;
    text-decoration: none !important;
    font-weight: 600 !important;
    transition: all 0.2s ease !important;
    border: none !important;
    cursor: pointer !important;
}

.sidebar .GridViewInfo .LinkButtonA {
    background: #10b981 !important;
    color: #ffffff !important;
}

.sidebar .GridViewInfo .LinkButtonA:hover {
    background: #059669 !important;
    transform: scale(1.05);
}

.sidebar .GridViewInfo .LinkButtonP {
    background: #f59e0b !important;
    color: #ffffff !important;
}

.sidebar .GridViewInfo .LinkButtonP:hover {
    background: #d97706 !important;
    transform: scale(1.05);
}

.sidebar .GridViewInfo .LinkButtonE {
    background: #ef4444 !important;
    color: #ffffff !important;
}

.sidebar .GridViewInfo .LinkButtonE:hover {
    background: #dc2626 !important;
    transform: scale(1.05);
}

/* 响应式设计 */
@media (max-width: 1200px) {
    .sidebar {
        position: relative !important;
        width: 100% !important;
        top: auto !important;
        right: auto !important;
        margin: 24px 0 !important;
    }
    
    #showcontent {
        flex-direction: column;
        padding: 24px 16px !important; /* 移除右侧边距 */
    }
}

@media (max-width: 768px) {
    #showcontent {
        padding: 16px 12px;
    }
    
    .missiontitle {
        padding: 20px 24px !important;
        font-size: 20pt !important;
    }
    
    .taskcontent {
        padding: 24px 20px !important;
    }
    
    .sidebar {
        padding: 20px 16px !important;
    }
}

/* 滚动条美化 */
.taskcontent::-webkit-scrollbar,
.sidebar::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

.taskcontent::-webkit-scrollbar-track,
.sidebar::-webkit-scrollbar-track {
    background: #f1f5f9;
    border-radius: 4px;
}

.taskcontent::-webkit-scrollbar-thumb,
.sidebar::-webkit-scrollbar-thumb {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 4px;
}

.taskcontent::-webkit-scrollbar-thumb:hover,
.sidebar::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(135deg, #764ba2 0%, #667eea 100%);
}

/* ============================================
   彻底隐藏颜色指示器 - 最高优先级规则
   ============================================ */
.pg-color-indicators,
div.pg-color-indicators,
.pg-actions-card .pg-color-indicators,
.pg-sidebar .pg-color-indicators,
.pg-sidebar-sticky .pg-color-indicators,
aside .pg-color-indicators,
.pg-actions-card div.pg-color-indicators,
.pg-sidebar div.pg-color-indicators,
[class*="pg-color-indicators"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    width: 0 !important;
    max-height: 0 !important;
    max-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
    left: -9999px !important;
    top: -9999px !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    border: none !important;
    background: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    pointer-events: none !important;
}

/* ============================================
   左侧菜单响应式设计
   ============================================ */
/* 平板设备 */
@media (max-width: 1024px) {
    .menu {
        width: 200px;
    }
    body:has(.menu) {
        padding-left: 200px;
    }
    .nav {
        font-size: 13pt;
        padding: 16px 0;
    }
    .nav li a {
        padding: 12px 16px 12px 20px;
        white-space: nowrap;
        overflow: visible;
        text-overflow: clip;
    }
    .nav li.home a,
    .nav li.mission a,
    .nav li.survey a,
    .nav li.topic a,
    .nav li.inquiry a,
    .nav li.return a {
        padding-left: 48px;
    }
}

/* 移动设备 - 菜单可折叠 */
@media (max-width: 768px) {
    .menu {
        width: 0;
        overflow: hidden;
        transition: width 0.3s ease;
    }
    .menu.menu-open {
        width: 240px;
    }
    body:has(.menu) {
        padding-left: 0;
    }
    /* 添加菜单切换按钮 */
    .menu-toggle {
        position: fixed;
        top: 10px;
        left: 10px;
        width: 40px;
        height: 40px;
        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        border: none;
        border-radius: 8px;
        color: white;
        font-size: 20px;
        cursor: pointer;
        z-index: 1001;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .menu-toggle:hover {
        background: linear-gradient(135deg, #764ba2 0%, #667eea 100%);
    }
}

.pg-indicator,
.pg-indicator-blue,
.pg-indicator-red,
span.pg-indicator,
.pg-color-indicators .pg-indicator,
.pg-color-indicators span,
.pg-color-indicators .pg-indicator-blue,
.pg-color-indicators .pg-indicator-red,
.pg-actions-card .pg-indicator,
.pg-sidebar .pg-indicator,
[class*="pg-indicator"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    width: 0 !important;
    max-height: 0 !important;
    max-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
    left: -9999px !important;
    top: -9999px !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    border: none !important;
    background: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    pointer-events: none !important;
}

/* ============================================
   左侧菜单响应式设计
   ============================================ */
/* 平板设备 */
@media (max-width: 1024px) {
    .menu {
        width: 200px;
    }
    body:has(.menu) {
        padding-left: 200px;
    }
    .nav {
        font-size: 13pt;
        padding: 16px 0;
    }
    .nav li a {
        padding: 12px 16px 12px 20px;
        white-space: nowrap;
        overflow: visible;
        text-overflow: clip;
    }
    .nav li.home a,
    .nav li.mission a,
    .nav li.survey a,
    .nav li.topic a,
    .nav li.inquiry a,
    .nav li.return a {
        padding-left: 48px;
    }
}

/* 移动设备 - 菜单可折叠 */
@media (max-width: 768px) {
    .menu {
        width: 0;
        overflow: hidden;
        transition: width 0.3s ease;
    }
    .menu.menu-open {
        width: 240px;
    }
    body:has(.menu) {
        padding-left: 0;
    }
    /* 添加菜单切换按钮 */
    .menu-toggle {
        position: fixed;
        top: 10px;
        left: 10px;
        width: 40px;
        height: 40px;
        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        border: none;
        border-radius: 8px;
        color: white;
        font-size: 20px;
        cursor: pointer;
        z-index: 1001;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .menu-toggle:hover {
        background: linear-gradient(135deg, #764ba2 0%, #667eea 100%);
    }
}