﻿/* ===== 顶部导航栏样式 - 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: 0;
}
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: 15%;
    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: 32%;
    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;
}

/* 菜单图标 */
.menu .nav a img,
.nav a img {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    max-width: 18px !important;
    max-height: 18px !important;
    display: inline-block !important;
    object-fit: contain !important;
    opacity: 0.65;
    transition: opacity 0.18s ease;
    vertical-align: middle !important;
    flex-shrink: 0 !important;
}
.nav a:hover img {
    opacity: 0.9;
}
.nav a[style] img {
    opacity: 1;
}

/* 兼容 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 类名背景图标 */
li.home {
    background: url(../../images/lesson.png) 8px center no-repeat;
    background-size: 18px 18px;
}
li.mission {
    background: url(../../images/mission.png) 8px center no-repeat;
    background-size: 18px 18px;
}
li.survey {
    background: url(../../images/survey.png) 8px center no-repeat;
    background-size: 18px 18px;
}
li.topic {
    background: url(../../images/topic.png) 8px center no-repeat;
    background-size: 18px 18px;
}
li.inquiry {
    background: url(../../images/inquiry.png) 8px center no-repeat;
    background-size: 18px 18px;
}
li.return {
    background: url(../../images/return.png) 8px center no-repeat;
    background-size: 18px 18px;
}
.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: 32px;
}

.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;
}
.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:1056px;
}
.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.5;
    padding: 20px;
}
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: 2px;
}
.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: 500px;
    height: 12px;
}
.topicright
{
    float: right;
    width: 400px;
    text-align: right;
}
.topichead
{
    padding: 4px;
    background-color: #E2EDFC;
    border-bottom-style: solid;
    border-bottom-width: 1px;
    border-bottom-color: #E7E7E7;
    height: 28px;
    line-height: 28px;
}
.topictext
{
    padding: 4px;
    float: left;
    margin: auto;
    white-space: normal;
    line-height: 20px;
	width: 99%;
}
#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: 1400px !important;
    margin: 0 auto !important;
    padding: 24px 320px 24px 16px !important; /* 右侧留出空间给固定侧边栏 */
    display: flex !important;
    flex-direction: column !important;
    gap: 24px !important;
    animation: fadeIn 0.6s cubic-bezier(0.22, 1, 0.36, 1) !important;
    box-sizing: border-box !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;
    background-image: none !important;
    border-radius: 16px !important;
    padding: 28px 32px !important;
    margin-bottom: 0 !important;
    text-align: center !important;
    color: #ffffff !important;
    font-size: 24pt !important;
    font-weight: 600 !important;
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important;
    box-shadow: 0 10px 40px rgba(102, 126, 234, 0.3), 
                0 0 0 1px rgba(255, 255, 255, 0.1) inset !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: 28px !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%);
    }
}