:root{font-family:MiSans,HarmonyOS Sans SC,Microsoft YaHei,PingFang SC,sans-serif;color:#16202b;background:#eceff1;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}.task-evaluation-page{display:grid;gap:14px;min-width:0}.task-evaluation-page-head{position:sticky;top:12px;z-index:20;display:flex;gap:16px;align-items:center;justify-content:space-between;min-width:0;padding:16px;background:#fff;border:1px solid #e1e7f0;border-radius:8px;box-shadow:0 14px 28px #0f172a14}.task-evaluation-page-title,.task-evaluation-page-actions{display:flex;gap:12px;align-items:center;min-width:0}.task-evaluation-page-title>div{display:grid;gap:4px;min-width:0}.task-evaluation-page-title h3{min-width:0;margin:0;overflow:hidden;color:#172033;font-size:20px;font-weight:950;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.task-evaluation-page-title span{min-width:0;overflow:hidden;color:#667085;font-size:13px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.task-evaluation-page .task-evaluation-shell{display:grid;gap:14px}.task-evaluation-page .task-evaluation-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:stretch;padding:18px;background:#fff;border:1px solid #e1e7f0;border-radius:8px}.task-evaluation-page .task-evaluation-hero>div:first-child{display:grid;align-content:start;gap:6px;min-width:0}.task-evaluation-page .task-evaluation-hero strong{min-width:0;margin:0;color:#172033;font-size:22px;font-weight:950;line-height:1.35;overflow-wrap:anywhere;white-space:normal}.task-evaluation-page .task-evaluation-hero p{margin:0;color:#667085;font-size:13px;font-weight:750;overflow-wrap:anywhere}.task-evaluation-page .task-evaluation-hero-metrics{display:grid;grid-template-columns:repeat(2,minmax(126px,1fr));gap:10px}.task-evaluation-page .task-evaluation-hero-metrics article{display:grid;align-content:start;gap:4px;min-width:0;padding:12px;background:#f8fafc;border:1px solid #e6ebf2;border-radius:8px}.task-evaluation-page .task-evaluation-hero-metrics strong{color:#0f62fe;font-size:22px;line-height:1.2}.task-evaluation-page .task-evaluation-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,420px);gap:14px;align-items:start}.task-evaluation-page .task-evaluation-main{display:grid;gap:14px;min-width:0}.task-evaluation-page .task-evaluation-side{position:sticky;top:16px;min-width:0}.task-evaluation-page .task-evaluation-review-panel,.task-evaluation-page .task-evaluation-deliverable-panel,.task-evaluation-page .task-evaluation-form{display:grid;gap:14px;margin-bottom:0;padding:16px;background:#fff;border:1px solid #e1e7f0;border-radius:8px}.task-evaluation-page .task-evaluation-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;overflow:hidden;border:1px solid #e6ebf2;border-radius:8px}.task-evaluation-page .task-evaluation-info-grid article{display:grid;gap:5px;min-width:0;padding:12px;background:#fbfcfe;border:0;border-right:1px solid #e6ebf2;border-radius:0}.task-evaluation-page .task-evaluation-info-grid article:last-child{border-right:0}.task-evaluation-page .task-evaluation-info-grid strong{min-width:0;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal}.task-evaluation-page .task-evaluation-copy-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.task-evaluation-page .task-evaluation-review-text{display:grid;align-content:start;gap:8px;min-width:0;min-height:86px;padding:12px;background:#f8fafc;border:1px solid #e6ebf2;border-radius:8px}.task-evaluation-page .task-evaluation-student-deliverable-list{display:grid;gap:12px;max-height:none;overflow:visible;padding-right:0}.task-evaluation-page .task-evaluation-deliverable-item{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:center;min-width:0;padding:10px;background:#fff;border:1px solid #e6ebf2;border-left:3px solid #0f62fe;border-radius:8px}.task-evaluation-page .task-evaluation-deliverable-content,.task-evaluation-page .task-student-evaluation-person{display:grid;gap:4px;min-width:0}.task-evaluation-page .task-evaluation-deliverable-content strong,.task-evaluation-page .task-evaluation-deliverable-content span,.task-evaluation-page .task-evaluation-deliverable-content em,.task-evaluation-page .task-evaluation-deliverable-content .submitted-content-link{min-width:0;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal}.task-evaluation-page .task-evaluation-deliverable-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end;min-width:86px}.task-evaluation-page .task-evaluation-deliverable-index{display:grid;place-items:center;width:24px;height:24px;color:#475569;background:#eef2f7;border-radius:6px;font-size:12px;font-weight:900}.task-evaluation-page .task-student-evaluation-list{max-height:420px}.task-evaluation-page .task-student-evaluation-row{display:grid;grid-template-columns:minmax(0,1fr) 116px;gap:10px;align-items:center;min-width:0}.task-evaluation-page .task-student-comment-input{grid-column:1 / -1}.task-evaluation-page .task-student-evaluation-person strong,.task-evaluation-page .task-student-evaluation-person span{display:block;min-width:0;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal}@media(max-width:980px){.task-evaluation-page .task-evaluation-hero,.task-evaluation-page .task-evaluation-layout{grid-template-columns:1fr}.task-evaluation-page .task-evaluation-side{position:static}.task-evaluation-page .task-evaluation-info-grid,.task-evaluation-page .task-evaluation-copy-grid,.task-evaluation-page .task-evaluation-hero-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.task-evaluation-page-head,.task-evaluation-page-title{display:grid;align-items:stretch}.task-evaluation-page-head{top:8px}.task-evaluation-page-actions{align-items:stretch;justify-content:stretch}.task-evaluation-page-actions .el-button{flex:1}.task-evaluation-page .task-evaluation-info-grid,.task-evaluation-page .task-evaluation-copy-grid,.task-evaluation-page .task-evaluation-deliverable-item,.task-evaluation-page .task-evaluation-hero-metrics,.task-evaluation-page .task-student-evaluation-row{grid-template-columns:1fr}.task-evaluation-page-title h3,.task-evaluation-page-title span{white-space:normal}}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(90deg,rgba(13,17,23,.04) 1px,transparent 1px),linear-gradient(180deg,rgba(13,17,23,.04) 1px,transparent 1px),#eceff1;background-size:42px 42px}button,input,textarea{font:inherit}.el-button.el-button--primary:not(.is-link){--el-button-bg-color: #18c6a5;--el-button-border-color: #18c6a5;--el-button-hover-bg-color: #2b7fff;--el-button-hover-border-color: #2b7fff;--el-button-active-bg-color: #12997f;--el-button-active-border-color: #12997f;--el-button-text-color: #ffffff;--el-button-hover-text-color: #ffffff;--el-button-active-text-color: #ffffff;--el-button-disabled-text-color: rgba(255, 255, 255, .72);color:#fff!important;font-weight:900;background:linear-gradient(135deg,#18c6a5,#2b7fff);border-color:transparent!important;box-shadow:0 10px 22px #2b7fff2e}.el-button.el-button--primary:not(.is-link):hover,.el-button.el-button--primary:not(.is-link):focus{color:#fff!important;background:linear-gradient(135deg,#16b89a,#1f6fe5);border-color:transparent!important}.el-button.el-button--primary:not(.is-link):active{color:#fff!important;background:linear-gradient(135deg,#12997f,#1b5fd0);border-color:transparent!important}.el-button.el-button--primary:not(.is-link) span,.el-button.el-button--primary:not(.is-link) svg{color:#fff!important}.el-tag{display:inline-flex!important;align-items:center;justify-content:center;gap:4px;text-align:center;vertical-align:middle;line-height:1!important}.el-tag .el-tag__content{display:inline-flex;align-items:center;justify-content:center;min-width:0;line-height:1}.login-page{display:grid;place-items:center;min-height:100vh;padding:clamp(20px,4vw,56px);color:#102b3c;background:radial-gradient(circle at 78% 16%,rgba(55,211,153,.15),transparent 24%),radial-gradient(circle at 12% 84%,rgba(14,165,233,.11),transparent 26%),#edf7f7}.login-shell{position:relative;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(380px,.88fr);grid-template-rows:auto 1fr auto;column-gap:clamp(28px,3.5vw,46px);row-gap:20px;align-items:stretch;width:min(1240px,100%);min-height:min(760px,calc(100vh - clamp(40px,8vw,112px)));margin:0 auto;padding:clamp(96px,9vw,112px) clamp(28px,4vw,46px) clamp(28px,4vw,46px);overflow:hidden;isolation:isolate;background:linear-gradient(155deg,rgba(44,204,160,.18),transparent 34%),linear-gradient(330deg,rgba(26,126,201,.32),transparent 42%),#0d2638;border:1px solid rgba(255,255,255,.12);border-radius:30px;box-shadow:0 30px 70px #0d263833}.login-hero{display:contents}.login-shell:before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;content:"";background:linear-gradient(90deg,rgba(118,224,197,.08) 1px,transparent 1px),linear-gradient(180deg,rgba(118,224,197,.08) 1px,transparent 1px);background-size:34px 34px;-webkit-mask-image:linear-gradient(135deg,black,transparent 76%);mask-image:linear-gradient(135deg,black,transparent 76%)}.login-shell:after{content:"";position:absolute;right:-100px;bottom:-120px;width:340px;height:340px;background:radial-gradient(circle at 34% 34%,rgba(118,224,197,.28),transparent 52%),#149abf33;border-radius:999px;filter:blur(2px);opacity:.8}.login-brand,.login-hero-copy,.login-feature-grid,.login-guidelines,.login-card,.login-options{position:relative;z-index:1}.login-brand{position:absolute;top:clamp(18px,2vw,24px);left:clamp(18px,2vw,24px);display:flex;align-items:flex-start;gap:14px}.login-brand-mark{display:grid;place-items:center;width:54px;height:54px;color:#fff;background:linear-gradient(135deg,#1cc8a1,#25a9d6 62%,#f7c948);border-radius:14px;box-shadow:0 16px 34px #21c2a642}.login-brand-mark svg{width:28px;height:28px}.login-brand span,.login-card-head span{display:block;color:#0ea5e9;font-size:12px;font-weight:900;letter-spacing:0;text-transform:uppercase}.login-brand p{display:block;margin:5px 0 0;color:#75e4c5;font-size:11px;font-weight:900;line-height:1.35;letter-spacing:0}.login-brand strong{display:block;margin-top:4px;color:#f5fffc;font-size:21px}.login-hero-copy{display:grid;grid-column:1;grid-row:1;gap:10px;max-width:700px}.login-hero-copy h1{margin:0;max-width:700px;color:#fff;font-size:clamp(32px,4vw,52px);line-height:1.14;letter-spacing:0}.login-hero-copy span{max-width:600px;color:#31506a;font-size:17px;line-height:1.8;font-weight:800}.login-feature-grid{display:grid;grid-column:1;grid-row:3;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:none}.login-feature-grid article{display:flex;align-items:center;gap:10px;min-height:64px;padding:12px 14px;background:#ffffff12;border:1px solid rgba(255,255,255,.13);border-radius:16px;box-shadow:inset 0 1px #ffffff12}.login-feature-grid svg{flex:0 0 auto;width:22px;height:22px;color:#75e4c5}.login-feature-grid strong{color:#f5fffc;font-size:14px;font-weight:900}.login-feature-grid span{color:#b8d5d4;font-size:14px;line-height:1.5;font-weight:800}.login-guidelines{display:grid;grid-column:1;grid-row:2;align-self:start;gap:12px;max-width:none;padding:18px 24px 20px;background:#061a2875;border:1px solid rgba(167,239,218,.2);border-radius:18px;box-shadow:inset 0 1px #ffffff0f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.login-guidelines-head{display:grid;gap:0}.login-guidelines-head>span{color:#75e4c5;font-size:14px;font-weight:950;letter-spacing:.08em}.login-guidelines-head h2{margin:0;color:#f5fffc;font-size:24px;line-height:1.35}.login-guidelines-list{display:grid;grid-template-columns:1fr;gap:0;margin:0;padding:0;list-style:none}.login-guidelines-list li{display:grid;grid-template-columns:32px minmax(0,1fr);gap:11px;align-items:start;min-width:0;padding:9px 0;border-top:1px solid rgba(167,239,218,.16)}.login-guidelines-list b{display:grid;place-items:center;width:30px;height:30px;color:#0d4a49;background:#9deed5;border-radius:8px;font-size:13px;font-weight:950;letter-spacing:.02em}.login-guidelines-list p{min-width:0;margin:0;color:#c7dedb;font-size:clamp(16px,1.45vw,19px);line-height:1.55;font-weight:800;white-space:normal}.login-guidelines-list p strong{margin-right:5px;color:#f5fffc;font-size:inherit;font-weight:950;white-space:nowrap}.login-panel{position:relative;z-index:1;display:grid;grid-column:2;grid-row:2;place-items:start center;align-self:start;min-height:0;padding:0}.login-card{display:grid;align-content:center;width:min(420px,100%);height:auto;padding:42px;background:#fff;border:1px solid rgba(16,43,60,.08);border-radius:26px;box-shadow:0 28px 70px #0d263829}.login-card-head{display:grid;gap:8px;margin-bottom:28px}.login-card-head h2{margin:0;color:#102b3c;font-size:32px;line-height:1.1;letter-spacing:0}.login-card-head p{margin:0;color:#5a7084;font-weight:800}.login-form .el-form-item__label{color:#284a5c;font-weight:900}.login-form .el-input__wrapper{min-height:52px;background:#f7fbfb;border-radius:14px;box-shadow:0 0 0 1px #148c9029 inset}.login-options{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 22px;color:#5a7084;font-size:13px;font-weight:800}.login-submit{width:100%;min-height:52px;border:0;border-radius:14px;background:linear-gradient(135deg,#14b8a6,#1686e8);font-size:16px;box-shadow:0 14px 24px #1686e833}.app-shell{display:grid;grid-template-columns:292px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;height:100vh;padding:24px 18px;color:#f8fafc;background:linear-gradient(150deg,rgba(55,211,153,.16),transparent 36%),linear-gradient(25deg,rgba(237,93,71,.14),transparent 38%),#101418;border-right:1px solid rgba(255,255,255,.08);overflow:hidden}.brand-block{display:flex;align-items:center;gap:14px;min-height:76px;padding:0 10px 20px;border-bottom:1px solid rgba(255,255,255,.12)}.brand-mark{display:grid;place-items:center;width:48px;height:48px;color:#101418;background:#37d399;border-radius:8px;box-shadow:0 18px 35px #37d3993d}.brand-mark svg{width:25px;height:25px}.sidebar-collapse-button{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;margin-left:auto;padding:0;color:#0f6f7d;background:#ffffffd1;border:1px solid rgba(20,184,166,.28);border-radius:7px;cursor:pointer}.sidebar-collapse-button:hover{color:#fff;background:#14b8a6;border-color:#14b8a6}.sidebar-collapse-button:focus-visible{outline:3px solid rgb(20 184 166 / 24%);outline-offset:2px}.sidebar-collapse-button svg{width:17px;height:17px}.brand-block p,.brand-block strong,.topbar-title span,.eyebrow,.kpi-card span,.kpi-card em,.todo-item em,.nav-item em,.detail-list dt{margin:0}.brand-block p,.nav-item em,.eyebrow,.topbar-title span{font-size:11px;line-height:1.2;letter-spacing:0;text-transform:uppercase}.brand-block p{color:#9aa7b5}.brand-block strong{display:block;margin-top:5px;font-size:17px;line-height:1.25}.nav-list{display:grid;align-content:start;flex:1;gap:7px;min-height:0;margin-top:22px;overflow-y:auto;padding-right:2px;scrollbar-width:thin}.nav-item{display:grid;grid-template-columns:42px 1fr;align-items:center;width:100%;min-height:54px;padding:7px 12px 7px 7px;color:#d6dde5;text-align:left;background:transparent;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:.18s ease}.nav-item:hover,.nav-item.active{color:#fff;background:#ffffff14;border-color:#ffffff1f}.nav-item.active{box-shadow:inset 3px 0 #37d399}.nav-item svg{justify-self:center;width:21px;height:21px}.nav-item span{display:grid;gap:3px;min-width:0;font-size:14px;font-weight:800}.nav-item em{color:#8e9aaa;font-style:normal;font-weight:700}.sidebar-footer{display:grid;gap:14px;margin-top:28px}.side-brief{display:grid;gap:14px;padding:18px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:8px}.side-brief span{display:block;color:#aeb9c6;font-size:12px}.side-brief strong{display:block;margin-top:6px;font-size:18px}.sidebar-account{display:grid;gap:14px;padding:14px;background:#ffffffb8;border:1px solid rgba(20,184,166,.18);border-radius:8px;box-shadow:0 16px 36px #2b718414}.sidebar-account-main{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:center}.sidebar-account-avatar{display:grid;place-items:center;width:42px;height:42px;color:#fff;background:linear-gradient(135deg,#0ea5e9,#19c6a5);border-radius:8px}.sidebar-account-avatar svg{width:21px;height:21px}.sidebar-account-copy{display:grid;gap:3px;min-width:0}.sidebar-account-copy span{color:#2b7fff;font-size:11px;line-height:1.2;font-weight:900}.sidebar-account-copy strong,.sidebar-account-copy em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-account-copy strong{color:#123047;font-size:15px;line-height:1.25;font-weight:900}.sidebar-account-copy em{color:#64748b;font-size:12px;line-height:1.25;font-style:normal;font-weight:800}.sidebar-account-actions{display:grid;gap:8px}.sidebar-account-action,.sidebar-logout{width:100%;min-height:38px;font-weight:900}.sidebar-account-action{color:#1d4ed8;border-color:#2b7fff3d;background:#ffffffc7}.sidebar-logout{color:#0f6f7d;border-color:#14b8a647;background:#ffffffc2}.sidebar-account-actions .el-button+.el-button,.sidebar-logout.el-button+.sidebar-logout.el-button{margin-left:0}@media(min-width:981px){.app-shell.is-sidebar-collapsed{grid-template-columns:88px minmax(0,1fr)}.sidebar.is-collapsed{padding:18px 12px}.sidebar.is-collapsed .brand-block{flex-direction:column;gap:11px;justify-content:center;min-height:116px;padding:0 0 16px}.sidebar.is-collapsed .brand-mark{width:44px;height:44px}.sidebar.is-collapsed .brand-copy,.sidebar.is-collapsed .nav-item span,.sidebar.is-collapsed .sub-nav,.sidebar.is-collapsed .sidebar-account-copy,.sidebar.is-collapsed .sidebar-account-actions .el-button span{display:none}.sidebar.is-collapsed .sidebar-collapse-button{margin-left:0}.sidebar.is-collapsed .nav-list{gap:7px;margin-top:16px;padding-right:0}.sidebar.is-collapsed .nav-item,.sidebar.is-collapsed .nav-item.parent{grid-template-columns:1fr;place-items:center;min-height:48px;padding:8px}.sidebar.is-collapsed .nav-item svg{width:20px;height:20px}.sidebar.is-collapsed .sidebar-footer{margin-top:18px}.sidebar.is-collapsed .sidebar-account{gap:8px;padding:8px}.sidebar.is-collapsed .sidebar-account-main{grid-template-columns:1fr;justify-items:center}.sidebar.is-collapsed .sidebar-account-avatar{width:38px;height:38px}.sidebar.is-collapsed .sidebar-account-actions{justify-items:center}.sidebar.is-collapsed .sidebar-account-action,.sidebar.is-collapsed .sidebar-logout{width:38px;min-width:38px;height:38px;min-height:38px;padding:0}}@media(min-width:981px)and (prefers-reduced-motion:no-preference){.app-shell{transition:grid-template-columns .18s ease}.sidebar-collapse-button{transition:color .16s ease,background-color .16s ease,border-color .16s ease,transform .16s ease}.sidebar-collapse-button:hover{transform:translate(-1px)}}.workspace{min-width:0;padding:24px clamp(18px,3vw,38px) 42px}.topbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}.topbar-title{flex:1 1 320px;min-width:0}.topbar-actions{display:flex;flex:0 0 auto;align-items:center;justify-content:flex-end;min-width:92px}.topbar-back-button{min-height:36px;padding-inline:16px;color:#0f6f7d;border-color:#14b8a652;background:#fffc;font-weight:900}.topbar-title span,.eyebrow{color:#738091;font-weight:900}.topbar-title h1{margin:4px 0 0;font-size:22px;line-height:1.3}.panel-search-input{width:280px;max-width:100%}.project-search-input{width:320px}.hero-strip{position:relative;display:flex;justify-content:space-between;gap:22px;min-height:190px;padding:clamp(24px,4vw,42px);margin-bottom:22px;color:#f8fafc;background:linear-gradient(120deg,rgba(255,255,255,.12),transparent 38%),repeating-linear-gradient(135deg,rgba(255,255,255,.08) 0 1px,transparent 1px 18px),#111827;border-radius:8px;overflow:hidden}.hero-strip:after{content:"";position:absolute;right:-70px;bottom:-55px;width:360px;height:160px;background:#37d399;opacity:.9;transform:rotate(-12deg)}.hero-strip>*{position:relative;z-index:1}.hero-strip .eyebrow{color:#37d399}.hero-strip h2{max-width:780px;margin:10px 0 18px;font-family:STZhongsong,Songti SC,SimSun,serif;font-size:clamp(30px,4vw,54px);line-height:1.1;font-weight:900}.hero-meta{display:flex;flex-wrap:wrap;gap:8px}.hero-meta span{padding:8px 12px;color:#d8ffe8;background:#ffffff1a;border:1px solid rgba(255,255,255,.18);border-radius:999px;font-size:13px;font-weight:800}.hero-signal{align-self:end;display:grid;min-width:172px;padding:18px;color:#111827;background:#fff;border-radius:8px;box-shadow:0 26px 60px #0000003d}.hero-signal strong{font-size:52px;line-height:.9}.hero-signal span{margin-top:10px;color:#506070;font-size:13px;font-weight:900}.page-stack,.page-grid{display:grid;gap:18px}.two-column{grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr)}.kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(150px,1fr));gap:14px}.kpi-card,.panel,.project-card,.kanban-column,.asset-card,.export-tile,.mini-stat{background:#ffffffe0;border:1px solid rgba(22,32,43,.08);border-radius:8px;box-shadow:0 18px 50px #26303a14}.kpi-card{position:relative;display:grid;gap:10px;min-height:178px;padding:18px;overflow:hidden}.kpi-card:after{content:"";position:absolute;right:0;bottom:0;width:80px;height:8px;background:currentColor}.kpi-icon{display:grid;place-items:center;width:42px;height:42px;color:#fff;background:#111827;border-radius:8px}.kpi-icon svg{width:22px;height:22px}.kpi-card span{color:#657386;font-size:13px;font-weight:900}.kpi-card strong{color:#111827;font-size:38px;line-height:1}.kpi-card small{margin-left:4px;color:#657386;font-size:14px}.kpi-card em{color:#7b8794;font-style:normal;font-size:12px;font-weight:800}.tone-green{color:#15b66a}.tone-cyan{color:#0796a8}.tone-amber{color:#d58a00}.tone-red{color:#df4f45}.tone-violet{color:#7a4fd8}.tone-ink{color:#111827}.tone-blue{color:#053ba3}.dashboard-page{gap:18px}.dashboard-redesign{min-width:0}.dashboard-kpi-strip,.dashboard-main-grid,.dashboard-apprentice-grid{display:grid;gap:18px;min-width:0}.dashboard-kpi-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-kpi-card{position:relative;display:grid;min-width:0;min-height:112px;overflow:hidden;padding:20px 18px;color:#053ba3;background:#fffefe;border:1px solid #d6d9e8;border-radius:8px;box-shadow:0 8px 18px #0f172a0f;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.dashboard-kpi-card:hover,.dashboard-weather-row:hover,.dashboard-leaderboard-row:hover,.dashboard-warning-row:hover{border-color:color-mix(in srgb,currentColor 35%,#d6d9e8);box-shadow:0 10px 24px #0f172a17;transform:translateY(-1px)}.dashboard-kpi-card:focus-visible,.dashboard-weather-row:focus-visible,.dashboard-leaderboard-row:focus-visible,.dashboard-warning-row:focus-visible{outline:2px solid color-mix(in srgb,currentColor 55%,#ffffff);outline-offset:2px}.dashboard-kpi-card:after{content:"";position:absolute;top:-28px;right:-22px;width:82px;height:82px;background:color-mix(in srgb,currentColor 8%,#f8f7ff);border-radius:999px}.dashboard-kpi-card>div{display:grid;gap:8px;min-width:0}.dashboard-kpi-card i{position:absolute;top:22px;right:20px;z-index:1;display:grid;place-items:center;width:28px;height:28px;font-style:normal}.dashboard-kpi-card svg{width:20px;height:20px}.dashboard-kpi-card span,.dashboard-kpi-card em,.dashboard-weather-title strong,.dashboard-weather-title span,.dashboard-weather-meta span,.dashboard-approval-copy strong,.dashboard-approval-copy em,.dashboard-approval-copy p,.dashboard-leaderboard-row strong,.dashboard-warning-row strong,.dashboard-warning-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-kpi-card span{max-width:calc(100% - 42px);color:#111827;font-size:14px;font-weight:950}.dashboard-kpi-card strong{display:flex;align-items:baseline;min-width:0;color:#101828;font-size:34px;line-height:1;font-weight:950}.dashboard-kpi-card small{margin-left:6px;color:#111827;font-size:12px;font-weight:900}.dashboard-kpi-card em{max-width:100%;color:currentColor;font-size:12px;font-style:normal;font-weight:900}.dashboard-main-grid{grid-template-columns:minmax(0,2fr) minmax(320px,.96fr);align-items:stretch}.dashboard-weather-panel,.dashboard-approval-panel,.dashboard-apprentice-panel{min-width:0;overflow:hidden;background:#fffefe;border:1px solid #d6d9e8;box-shadow:0 8px 18px #0f172a0f}.dashboard-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;min-width:0;margin:-20px -20px 18px;padding:18px 20px;border-bottom:1px solid #d8dae8}.dashboard-panel-heading.compact{align-items:center;margin-bottom:8px}.dashboard-panel-heading h3,.dashboard-apprentice-block h4{display:flex;align-items:center;gap:8px;min-width:0;margin:0;color:#07112b;font-size:22px;line-height:1.2;font-weight:950}.dashboard-panel-heading h3 svg,.dashboard-apprentice-block h4 svg{flex:0 0 auto;width:22px;height:22px;color:#053ba3}.dashboard-panel-heading p{margin:6px 0 0;color:#697386;font-size:13px;font-weight:800}.dashboard-panel-heading>strong{display:grid;place-items:center;min-width:28px;height:28px;padding:0 9px;color:#fff;background:#d9232e;border-radius:999px;font-size:13px}.dashboard-weather-list{display:grid;gap:26px;max-height:356px;min-width:0;overflow:auto;padding:4px 10px 2px 8px}.dashboard-investment-echarts-wrap{min-width:0}.dashboard-investment-summary{max-width:100%;margin:6px 0 0;color:#64748b;font-size:12px;font-weight:800}.dashboard-investment-echarts{width:100%;min-width:0;height:448px}.dashboard-weather-row{display:grid;gap:10px;min-width:0;padding:10px;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.dashboard-weather-title{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;min-width:0}.dashboard-weather-title>div{display:grid;gap:4px;min-width:0}.dashboard-weather-title strong{min-width:0;overflow:hidden;color:#07112b;font-size:15px;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.dashboard-weather-title span{color:#697386;font-size:12px;font-weight:800}.dashboard-weather-meta{display:grid;grid-template-columns:1fr auto auto;gap:12px;min-width:0;color:#111827;font-size:12px;font-weight:850}.dashboard-weather-meta span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-approval-panel{display:grid;grid-template-rows:auto auto minmax(0,1fr)}.dashboard-approval-tabs{min-width:0}.dashboard-approval-tabs .el-tabs__header{margin-bottom:10px}.dashboard-approval-list{display:grid;gap:10px;max-height:330px;min-width:0;overflow:auto;padding-right:4px}.dashboard-approval-item{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;min-width:0;padding:10px;background:#fffefe;border:1px solid #dbe0ef;border-radius:8px}.dashboard-avatar{display:grid;place-items:center;width:38px;height:38px;color:currentColor;background:color-mix(in srgb,currentColor 15%,#ffffff);border-radius:999px;font-size:14px;font-weight:950}.dashboard-approval-copy{display:grid;gap:5px;min-width:0}.dashboard-approval-copy>div:first-child{display:flex;justify-content:space-between;gap:10px;min-width:0}.dashboard-approval-copy strong{color:#07112b;font-size:14px;font-weight:950}.dashboard-approval-copy span,.dashboard-approval-copy em{color:#45536a;font-size:12px;font-style:normal;font-weight:800}.dashboard-approval-copy p{margin:0;color:#07112b;font-size:13px;line-height:1.45;font-weight:900}.dashboard-approval-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-top:4px}.dashboard-approval-actions .el-button{min-width:0;margin-left:0}.dashboard-apprentice-panel{display:grid;gap:0}.dashboard-apprentice-grid{grid-template-columns:1fr 1fr;margin:-18px -20px 0;gap:0;border-top:1px solid #d8dae8}.dashboard-apprentice-block{display:grid;align-content:start;gap:16px;min-width:0;min-height:360px;padding:20px 28px}.dashboard-apprentice-block+.dashboard-apprentice-block{border-left:1px solid #d8dae8}.dashboard-apprentice-block h4{font-size:16px}.dashboard-leaderboard-list,.dashboard-warning-list{display:grid;gap:10px;min-width:0}.dashboard-leaderboard-row{display:grid;grid-template-columns:24px 38px minmax(0,1fr) minmax(92px,auto);gap:12px;align-items:center;min-width:0;padding:8px;color:#053ba3;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.dashboard-leaderboard-row>span{color:#7a2f00;font-size:18px;font-weight:950;text-align:center}.dashboard-leaderboard-row strong{color:#07112b;font-size:14px;font-weight:950}.dashboard-leaderboard-row>div:last-child{display:grid;justify-items:end;min-width:0}.dashboard-leaderboard-row em{color:#053ba3;font-size:14px;font-style:normal;font-weight:950}.dashboard-leaderboard-row small{color:#07112b;font-size:12px;font-weight:800}.dashboard-warning-list{max-height:332px;overflow:auto;padding-right:4px}.dashboard-warning-row{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px;align-items:center;min-width:0;padding:10px;background:color-mix(in srgb,currentColor 8%,#fffefe);border:1px solid transparent;border-left:2px solid currentColor;border-radius:8px;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.dashboard-warning-row strong{display:block;color:#07112b;font-size:14px;font-weight:950}.dashboard-warning-row span{display:block;margin-top:2px;color:currentColor;font-size:12px;font-weight:900}.dashboard-soft-summary{display:flex;flex-wrap:wrap;gap:8px;padding-top:16px}.dashboard-soft-summary span{padding:7px 10px;color:#45536a;background:#f5f7fb;border:1px solid #e1e5ef;border-radius:999px;font-size:12px;font-weight:850}.panel{min-width:0;padding:20px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.panel-heading h3,.project-card h3,.task-card h3,.asset-card h3,.export-tile h3,.form-preview h3{margin:4px 0 0;color:#111827;font-size:20px;line-height:1.25}.chart{height:280px}.todo-list{display:grid;gap:12px}.todo-item{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:16px;background:#f7f9fb;border:1px solid #edf1f5;border-radius:8px}.todo-item span{color:#566577;font-weight:900}.todo-item strong{grid-row:span 2;align-self:center;color:currentColor;font-size:32px;line-height:1}.todo-item em{color:#8793a1;font-style:normal;font-size:12px;font-weight:800}.table-heading{flex-wrap:wrap}.panel-hint{display:block;margin-top:4px;color:#738091;font-size:12px;font-weight:800}.filters{display:flex;gap:10px}.checkin-filters{flex-wrap:wrap;justify-content:flex-end}.checkin-filters .el-date-editor{width:150px}.student-worklog-filters{margin-bottom:14px}.student-worklog-intern-filter{display:inline-flex;align-items:center;gap:8px;min-height:32px;padding:0 10px;color:#536174;background:#fff;border:1px solid #dfe6ee;border-radius:8px;font-size:12px;font-weight:800}.student-worklog-heading-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:10px}.student-worklog-content{color:#435164;line-height:1.55;white-space:pre-wrap;word-break:break-word}.attendance-monthly-page{min-width:0}.attendance-monthly-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;background:#fff;border:1px solid #e1e7f0;border-radius:14px;box-shadow:0 12px 28px #1837480f}.attendance-monthly-head h2{margin:4px 0 5px;color:#123047;font-size:24px;line-height:1.2}.attendance-monthly-head span{color:#738091;font-size:13px;font-weight:800}.attendance-monthly-filter-panel{display:grid;gap:14px}.attendance-monthly-filter-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.attendance-monthly-student-select{width:260px}.attendance-monthly-intern-filter{display:inline-flex;align-items:center;gap:8px;min-height:32px;padding:0 10px;color:#536174;background:#fff;border:1px solid #dfe6ee;border-radius:8px;font-size:12px;font-weight:800}.attendance-monthly-current-student{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;padding-top:13px;color:#607084;border-top:1px solid #edf1f5;font-size:12px;font-weight:800}.attendance-monthly-current-student strong{color:#123047;font-size:15px}.attendance-monthly-current-student em{margin-left:auto;color:#237d62;font-style:normal;font-weight:900}.attendance-monthly-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.attendance-monthly-stats article{display:grid;gap:8px;min-height:78px;padding:14px;background:#fff;border:1px solid #e5ebf0;border-radius:12px}.attendance-monthly-stats span{color:#607084;font-size:12px;font-weight:900}.attendance-monthly-stats strong{color:#123047;font-size:22px;line-height:1}.attendance-monthly-stats small{margin-left:3px;color:#738091;font-size:12px}.attendance-monthly-stats article:last-child strong{color:#237d62;font-size:18px}.attendance-monthly-list-panel{min-width:0}.attendance-monthly-timeline{display:grid;min-width:0;overflow:hidden;border-top:1px solid #e8edf2}.attendance-monthly-day{display:grid;grid-template-columns:148px minmax(0,1fr) auto;gap:22px;align-items:start;min-width:0;padding:20px 12px;border-bottom:1px solid #e8edf2}.attendance-monthly-day:last-child{border-bottom:0}.attendance-monthly-day-date{display:grid;align-content:start;gap:5px;min-width:0;padding-top:3px}.attendance-monthly-day-date strong{color:#123047;font-size:16px;line-height:1.25;letter-spacing:.02em}.attendance-monthly-day-date span{color:#738091;font-size:12px;font-weight:800}.attendance-monthly-day-main{position:relative;min-width:0;padding-left:30px}.attendance-monthly-day-main:before{position:absolute;top:9px;bottom:9px;left:8px;width:2px;background:#dbe8e6;content:""}.attendance-monthly-day-main:after{position:absolute;top:7px;left:1px;z-index:1;width:16px;height:16px;background:#18c6a5;border:4px solid #ffffff;border-radius:50%;box-shadow:0 0 0 1px #a9ddd1;content:""}.attendance-monthly-day.is-empty .attendance-monthly-day-main:after{background:#cbd5df;box-shadow:0 0 0 1px #dbe2e9}.attendance-monthly-day.is-future .attendance-monthly-day-main:after{background:#8bb8e8;box-shadow:0 0 0 1px #c7ddf5}.attendance-monthly-day-heading,.attendance-monthly-record-meta,.attendance-monthly-empty-record{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.attendance-monthly-day-heading>div{display:grid;gap:4px;min-width:0}.attendance-monthly-day-heading strong{color:#123047;font-size:14px;line-height:1.35}.attendance-monthly-day-heading span{color:#8a97a6;font-size:12px;font-weight:700}.attendance-monthly-record-timeline{position:relative;display:grid;gap:10px;min-width:0;margin-top:14px}.attendance-monthly-record-timeline:before{position:absolute;top:12px;bottom:12px;left:6px;width:2px;background:#dbe8e6;content:""}.attendance-monthly-record-item{position:relative;display:grid;grid-template-columns:16px minmax(0,1fr);gap:12px;min-width:0}.attendance-monthly-record-dot{position:relative;z-index:1;display:block;width:14px;height:14px;margin-top:14px;background:#fff;border:4px solid #18c6a5;border-radius:50%;box-shadow:0 0 0 1px #a9ddd1}.attendance-monthly-record-dot.is-leave{border-color:#e6a23c;box-shadow:0 0 0 1px #f5d7a4}.attendance-monthly-record-card{min-width:0;padding:12px 14px;background:#fbfefd;border:1px solid #e4efec;border-left:3px solid #18c6a5;border-radius:10px}.attendance-monthly-record-card.is-leave{border-left-color:#e6a23c}.attendance-monthly-record-meta{justify-content:flex-start;flex-wrap:wrap}.attendance-monthly-record-meta strong{color:#123047;font-size:14px;line-height:1.35}.attendance-monthly-record-card p{margin:8px 0 0;color:#536477;font-size:13px;font-weight:650;line-height:1.6;overflow-wrap:anywhere;white-space:pre-wrap}.attendance-monthly-empty-record{justify-content:flex-start;margin-top:14px;padding:12px 14px;color:#8a97a6;background:#fbfcfe;border:1px dashed #d9e1e8;border-radius:10px;font-size:13px;font-weight:700}.attendance-monthly-day-status{padding-top:3px}@media(max-width:820px){.attendance-monthly-head{align-items:flex-start;flex-direction:column}.attendance-monthly-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.attendance-monthly-day{grid-template-columns:120px minmax(0,1fr);gap:16px}.attendance-monthly-day-status{grid-column:2;padding-top:0}}@media(max-width:580px){.attendance-monthly-head{padding:16px}.attendance-monthly-head h2{font-size:21px}.attendance-monthly-student-select{width:min(100%,260px)}.attendance-monthly-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-monthly-current-student em{width:100%;margin-left:0}.attendance-monthly-day{grid-template-columns:1fr;gap:10px;padding:16px 4px}.attendance-monthly-day-date{display:flex;align-items:baseline;gap:8px}.attendance-monthly-day-status{grid-column:auto;padding-left:30px}}.student-worklog-monthly{display:grid;gap:16px;margin:18px 0 22px;padding:18px;background:linear-gradient(135deg,#f6fbfa,#f8fbfd);border:1px solid #e1ecea;border-radius:16px}.student-worklog-monthly-heading,.student-worklog-records-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.student-worklog-monthly-heading h4{margin:4px 0 0;color:#123047;font-size:18px;line-height:1.2}.student-worklog-monthly-controls{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.student-worklog-student-select{width:230px}.student-worklog-option{display:grid;gap:2px;line-height:1.25}.student-worklog-option small{color:#738091;font-size:11px}.student-worklog-monthly-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.student-worklog-monthly-stats>div{display:grid;gap:7px;min-height:74px;padding:12px 14px;background:#ffffffd1;border:1px solid rgba(43,102,91,.1);border-radius:12px}.student-worklog-monthly-stats span{color:#607084;font-size:12px;font-weight:900}.student-worklog-monthly-stats strong{color:#123047;font-size:21px;line-height:1}.student-worklog-monthly-stats small{margin-left:3px;color:#738091;font-size:12px}.student-worklog-monthly-duration strong{color:#237d62;font-size:18px}.student-worklog-monthly-scroll{overflow-x:auto}.student-worklog-monthly-grid{display:grid;grid-template-columns:repeat(7,minmax(96px,1fr));gap:8px;min-width:730px}.student-worklog-monthly-weekday{padding:4px 8px;color:#738091;font-size:11px;font-weight:900;letter-spacing:.06em;text-align:center}.student-worklog-monthly-blank{min-height:112px}.student-worklog-monthly-day{display:grid;align-content:start;gap:7px;min-height:112px;padding:11px;background:#ffffffe0;border:1px solid #e6edef;border-radius:12px;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.student-worklog-monthly-day:hover{border-color:#9ac8b8;box-shadow:0 8px 22px #1e4d4414;transform:translateY(-1px)}.student-worklog-monthly-day.is-today{border-color:#39a77b;box-shadow:inset 0 0 0 1px #39a77b40}.student-worklog-monthly-day.is-future:not(.has-record){background:#f8fafcb3}.student-worklog-monthly-day-head{display:flex;align-items:baseline;justify-content:space-between}.student-worklog-monthly-day-head strong{color:#123047;font-size:20px;line-height:1}.student-worklog-monthly-day-head small{color:#8b98a6;font-size:11px;font-weight:900}.student-worklog-monthly-day .el-tag{width:fit-content;max-width:100%}.student-worklog-monthly-times{display:grid;gap:3px;color:#315d55;font-size:12px;font-weight:900}.student-worklog-monthly-times span,.student-worklog-monthly-times em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-worklog-monthly-times em,.student-worklog-monthly-empty{color:#9aa6b2;font-size:11px;font-style:normal;font-weight:800}.student-worklog-monthly-note{overflow:hidden;margin:0;color:#607084;font-size:11px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.student-worklog-records-heading{align-items:center;margin:8px 0 12px;padding-top:14px;border-top:1px solid #edf1f5}.student-worklog-records-heading div{display:grid;gap:3px}.student-worklog-records-heading strong{color:#123047;font-size:14px}.student-worklog-records-heading span{color:#738091;font-size:12px;font-weight:800}@media(max-width:920px){.student-worklog-monthly-heading{display:grid}.student-worklog-monthly-controls{justify-content:flex-start}.student-worklog-monthly-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:620px){.student-worklog-monthly{padding:14px}.student-worklog-student-select{width:min(100%,230px)}.student-worklog-monthly-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.student-worklog-records-heading{align-items:flex-start}}.checkin-kpi-grid{grid-template-columns:repeat(4,minmax(180px,1fr));overflow-x:auto;padding-bottom:4px}.student-checkin-embedded .student-checkin-page{min-height:auto;padding:0;background:transparent}.student-checkin-embedded .student-checkin-phone{width:min(100%,520px);min-height:auto}.student-checkin-embedded .student-checkin-phone.student-task-desktop-workspace{width:min(100%,1180px)}.table-subtext{display:block;margin-top:3px;color:#738091;font-size:12px;font-weight:800}.table-row-actions{display:inline-flex;align-items:center;gap:6px}.table-row-actions span{color:#738091;font-size:12px;font-weight:800}.status-select{width:132px}.data-table{width:100%;--el-table-header-bg-color: #f5f7fa;--el-table-header-text-color: #435164;--el-table-row-hover-bg-color: #eef9f3}.clickable-data-table .el-table__row{cursor:pointer}.checkin-student-dialog .el-dialog__header{padding-bottom:10px;border-bottom:1px solid #edf1f5}.checkin-student-dialog-title span{display:block;color:#738091;font-size:12px;font-weight:900}.checkin-student-dialog-title strong{display:block;margin-top:5px;color:#123047;font-size:20px;line-height:1.25}.checkin-student-detail{display:grid;gap:16px}.checkin-student-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.checkin-student-stat-grid article{display:grid;gap:8px;padding:14px;background:#f8fbfd;border:1px solid rgba(50,89,116,.1);border-radius:12px}.checkin-student-stat-grid span,.checkin-student-calendar-head span,.checkin-student-day-head span{color:#607084;font-size:12px;font-weight:900}.checkin-student-stat-grid strong{color:#123047;font-size:24px;line-height:1;font-weight:950}.checkin-student-stat-grid small{margin-left:3px;font-size:13px}.checkin-student-calendar-panel,.checkin-student-day-panel{display:grid;gap:12px;padding:14px;background:#fff;border:1px solid rgba(50,89,116,.12);border-radius:14px}.checkin-student-calendar-head{display:grid;grid-template-columns:38px minmax(0,1fr) 38px;gap:10px;align-items:center}.checkin-student-calendar-head button{display:grid;place-items:center;width:38px;height:38px;color:#0f8a7c;background:#eefbf6;border:1px solid rgba(15,138,124,.18);border-radius:10px}.checkin-student-calendar-head svg{width:16px;height:16px}.checkin-student-calendar-head div{display:grid;justify-items:center;min-width:0}.checkin-student-calendar-head strong{margin-top:3px;color:#123047;font-size:18px;line-height:1.2}.checkin-student-calendar-head em{margin-top:3px;color:#738091;font-size:12px;font-style:normal;font-weight:800}.checkin-student-weekdays,.checkin-student-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.checkin-student-weekdays span{color:#738091;font-size:12px;font-weight:900;text-align:center}.checkin-student-calendar-day{display:grid;align-content:start;gap:5px;min-height:82px;padding:9px;color:#435164;text-align:left;background:#f8fbfd;border:1px solid rgba(50,89,116,.1);border-radius:12px}.checkin-student-calendar-day.muted{opacity:.45}.checkin-student-calendar-day.today{border-color:#2563eb52}.checkin-student-calendar-day.selected{background:#eefbf6;border-color:#0f8a7c6b;box-shadow:inset 0 0 0 1px #0f8a7c2e}.checkin-student-calendar-day.failed{background:#fff8f6}.checkin-student-calendar-day.success.failed{background:linear-gradient(135deg,#eefbf6,#eefbf6 52%,#fff8f6 52%,#fff8f6)}.checkin-student-calendar-day strong{color:#123047;font-size:15px;line-height:1}.checkin-student-calendar-day span,.checkin-student-calendar-day em{overflow:hidden;font-size:11px;font-style:normal;font-weight:900;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.checkin-student-calendar-day span{color:#0f8a7c}.checkin-student-calendar-day span.danger{color:#b42318}.checkin-student-calendar-day em{color:#607084}.checkin-student-day-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.checkin-student-day-head strong{display:block;margin-top:4px;color:#123047;font-size:17px}.checkin-student-day-head em{color:#607084;font-size:12px;font-style:normal;font-weight:900}.checkin-student-day-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.checkin-student-day-summary span{display:grid;gap:5px;min-width:0;padding:10px;background:#f8fbfd;border:1px solid rgba(50,89,116,.1);border-radius:10px}.checkin-student-day-summary small{overflow:hidden;color:#738091;font-size:11px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.checkin-student-day-summary strong{overflow:hidden;color:#123047;font-size:15px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.checkin-student-record-list{display:grid;gap:8px}.checkin-student-record-list article{display:grid;grid-template-columns:minmax(0,1fr) auto 120px;gap:10px;align-items:center;padding:10px 12px;background:#f8fbfd;border:1px solid rgba(50,89,116,.1);border-radius:10px}.checkin-student-record-list strong{color:#123047;font-size:14px;font-variant-numeric:tabular-nums}.checkin-student-record-list span,.checkin-student-record-list small{display:block;margin-top:3px;overflow:hidden;color:#607084;font-size:12px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.workshop-list{display:grid;gap:10px;max-height:640px;overflow:auto;padding-right:4px}.workshop-row{display:grid;grid-template-columns:86px 1fr auto;align-items:center;gap:14px;width:100%;padding:14px;text-align:left;background:#f8fafc;border:1px solid #edf1f5;border-radius:8px;cursor:pointer}.workshop-row.active{background:#111827;border-color:#111827}.workshop-row.active span,.workshop-row.active strong{color:#fff}.workshop-row span{color:#748193;font-size:12px;font-weight:900}.workshop-row strong{color:#111827;font-size:15px}.studio-page{align-content:start}.studio-directory{padding:22px}.studio-list-grid{display:grid;grid-template-columns:repeat(4,minmax(210px,1fr));gap:12px}.studio-overview-card{display:grid;align-content:start;gap:10px;min-height:218px;padding:14px;background:#ffffffeb;border:1px solid rgba(22,32,43,.08);border-radius:8px;box-shadow:0 18px 50px #26303a14}.studio-overview-card.active{border-color:#14b8a65c;box-shadow:0 24px 56px #14b8a621}.studio-card-topline,.studio-card-title,.studio-card-actions,.secondary-header,.project-detail-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.studio-card-title{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px}.studio-card-title>div{display:flex;flex:0 0 auto;flex-wrap:wrap;gap:5px;justify-content:flex-end}.studio-card-topline span{color:#738091;font-size:12px;font-weight:900}.studio-overview-card h3{margin:0;min-width:0;overflow:hidden;color:#111827;font-size:17px;line-height:1.28;text-overflow:ellipsis;white-space:nowrap}.studio-direction{margin:0;color:#526476;font-size:12px;line-height:1.45}.studio-card-details{display:grid;gap:5px;padding:8px 10px;background:#f8fafc;border:1px solid #edf1f5;border-radius:8px}.studio-card-details span,.project-progress-line span,.secondary-header span,.project-progress-meter span{color:#16202b;font-size:11px;line-height:1.4;font-weight:900}.studio-card-details em{display:inline-block;min-width:42px;margin-right:6px;color:#738091;font-style:normal}.studio-member-line{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:start;column-gap:6px}.studio-member-line em{margin-right:0}.studio-member-names{overflow-wrap:anywhere;white-space:normal}.studio-card-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:0}.studio-card-actions .el-button{height:28px;padding:0 10px;font-size:12px}.secondary-header{min-height:106px;padding:18px 20px;background:linear-gradient(135deg,#fffffff0,#ecfdf5d6),#fff;border:1px solid rgba(20,184,166,.16);border-radius:8px;box-shadow:0 18px 48px #2b718414}.secondary-header h2{margin:4px 0 5px;color:#0f2638;font-size:26px;line-height:1.2}.studio-project-grid{grid-template-columns:repeat(3,minmax(260px,1fr))}.studio-project-heading{align-items:flex-start}.studio-project-heading h3{margin:4px 0 5px;color:#0f2638;font-size:22px;line-height:1.2}.studio-project-heading span{color:#627083;font-size:13px;font-weight:800}.project-route-card{min-height:286px}.project-title-line{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.project-title-line h3{margin:0;min-width:0}.project-title-line>div{display:flex;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end;gap:5px}.project-target{min-height:48px}.project-period{padding:8px 10px;color:#123047;background:#f8fafc;border:1px solid #edf1f5;border-radius:8px;font-size:12px;font-weight:900}.project-progress-line{display:grid;grid-template-columns:1fr auto;gap:8px 12px;align-items:center}.project-progress-line strong{color:#123047;font-size:18px}.project-progress-line .el-progress{grid-column:1 / -1}.project-detail-head{align-items:flex-start;margin-bottom:14px;padding-bottom:16px;border-bottom:1px solid rgba(20,184,166,.16)}.project-detail-title{flex:1;min-width:0}.project-detail-head h3{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:5px 0 0;color:#0f2638;font-size:26px;line-height:1.2}.project-detail-status{display:grid;justify-items:end;gap:10px}.project-detail-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.project-detail-actions .el-button+.el-button{margin-left:0}.edit-info-button{order:1}.project-progress-meter{display:grid;gap:8px;min-width:230px}.project-progress-meter strong{justify-self:end;color:#0f6f7d;font-size:30px;line-height:1}.standalone-project{margin-top:0}.detail-panel{min-height:520px}.studio-workbench{grid-template-columns:minmax(320px,.82fr) minmax(0,1.35fr);align-items:start}.detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:20px;border-bottom:1px solid #edf1f5}.detail-header h3{margin:5px 0 8px;font-size:28px;line-height:1.18}.detail-header span{color:#627083;font-weight:800}.detail-list{display:grid;gap:14px;margin:20px 0 0}.detail-list div{display:grid;grid-template-columns:104px 1fr;gap:18px;padding:14px 0;border-bottom:1px solid #edf1f5}.detail-list dt{color:#7d8998;font-size:13px;font-weight:900}.detail-list dd{margin:0;color:#16202b;font-weight:800}.context-tabs{margin-top:18px}.context-tabs .el-tabs__item{font-weight:900}.context-panel{display:grid;gap:18px;padding-top:10px}.task-table-panel{gap:12px}.task-table-panel .table-pagination{position:sticky;bottom:0;z-index:3;align-self:stretch;padding:10px 0 0;background:#f8fbfd;border-top:1px solid rgba(148,163,184,.18)}.project-task-table{border:1px solid rgba(20,184,166,.12);border-radius:8px;overflow:hidden}.task-evaluation-cell{display:grid;gap:4px}.task-evaluation-cell strong{color:#123047;font-size:13px}.task-evaluation-cell span{color:#64748b;font-size:12px;line-height:1.45}.task-mode-cell{display:grid;gap:4px;align-items:start}.task-mode-cell span{color:#64748b;font-size:12px;line-height:1.3}.table-actions{display:flex;align-items:center;gap:6px}.table-actions .el-button+.el-button{margin-left:0}.table-pagination{display:flex;justify-content:flex-end;padding-top:4px}.panel-heading-actions{display:flex;align-items:center;gap:10px}.deliverable-list-panel{gap:12px}.deliverable-list-table{border:1px solid rgba(20,184,166,.12);border-radius:8px;overflow:hidden}.storage-location-text{color:#475569;font-size:12px;word-break:break-all}.submitted-content-link{border:0;background:transparent;padding:0;color:#2563eb;cursor:pointer;font:inherit;font-size:12px;text-align:left;text-decoration:underline;text-underline-offset:3px;word-break:break-all}.submitted-content-link:disabled{color:#94a3b8;cursor:wait}.deliverable-upload-area,.workshop-import-upload,.member-import-upload,.user-import-upload,.deliverable-upload-area .el-upload,.deliverable-upload-area .el-upload-dragger,.workshop-import-upload .el-upload,.workshop-import-upload .el-upload-dragger,.member-import-upload .el-upload,.member-import-upload .el-upload-dragger,.user-import-upload .el-upload,.user-import-upload .el-upload-dragger{width:100%}.deliverable-upload-area .el-upload-dragger,.workshop-import-upload .el-upload-dragger,.member-import-upload .el-upload-dragger,.user-import-upload .el-upload-dragger{display:grid;place-items:center;gap:6px;min-height:132px;border-color:#14b8a63d;background:linear-gradient(135deg,#f8fcff,#f0fdfa)}.deliverable-upload-area svg,.workshop-import-upload svg,.member-import-upload svg,.user-import-upload svg{width:28px;height:28px;color:#0891b2}.deliverable-upload-area strong,.workshop-import-upload strong,.member-import-upload strong,.user-import-upload strong{color:#123047;font-size:15px}.deliverable-upload-area span,.workshop-import-upload span,.member-import-upload span,.user-import-upload span{color:#64748b;font-size:12px}.form-help-text{margin:6px 0 0;color:#64748b;font-size:12px;line-height:1.45}.inline-heading{margin:8px 0 14px}.compact-projects,.compact-assets{grid-template-columns:repeat(2,minmax(220px,1fr))}.project-button{width:100%;text-align:left;cursor:pointer;transition:.18s ease}.project-button:hover,.project-button.active{transform:translateY(-2px);border-color:#14b8a65c;box-shadow:0 22px 54px #14b8a624}.project-detail-card{margin-top:18px;padding:18px;background:linear-gradient(135deg,#f0fdfae6,#eff6ffdb);border:1px solid rgba(20,184,166,.16);border-radius:8px}.nested-tabs{margin-top:0}.project-info-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:16px}.project-info-column{display:grid;gap:14px;align-content:start}.project-info-block{display:grid;gap:12px;padding:16px;background:#ffffffc7;border:1px solid rgba(20,184,166,.14);border-radius:8px}.project-info-block h4{margin:0;color:#123047;font-size:15px;line-height:1.3}.project-attribute-list{display:grid;gap:10px;margin:0}.project-attribute-list div{display:grid;grid-template-columns:86px minmax(0,1fr);gap:12px;align-items:baseline}.project-attribute-list dt,.project-story-block span{color:#64748b;font-size:12px;font-weight:900}.project-attribute-list dd{margin:0;color:#123047;font-weight:900;line-height:1.55}.project-info-block p{margin:0;color:#123047;line-height:1.55;overflow-wrap:anywhere}.project-story-block div{display:grid;gap:5px}.project-link-text{color:#0f6f7d!important;font-weight:900}.project-config-block{min-height:190px}.nested-kanban{grid-template-columns:repeat(3,minmax(170px,1fr))}.nested-kanban .kanban-column{min-height:260px}.studio-profile-panel{background:linear-gradient(135deg,#ecfdf5eb,#eff6ffe6),#fff}.studio-profile-heading{align-items:flex-start}.studio-profile-heading h3{margin:4px 0 0;color:#0f2638;font-size:26px;line-height:1.2}.profile-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:10px}.studio-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:14px}.studio-profile-item{display:grid;align-content:start;gap:8px;min-height:132px;padding:16px;background:#ffffffc2;border:1px solid rgba(20,184,166,.16);border-radius:8px}.studio-profile-item span{color:#2b7fff;font-size:12px;font-weight:900}.studio-profile-item strong{color:#123047;font-size:15px;line-height:1.55}.mini-stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.mini-stat{padding:18px}.mini-stat span{color:#657386;font-weight:900}.mini-stat strong{display:block;margin-top:12px;font-size:36px;line-height:1}.score-pill{display:inline-grid;place-items:center;min-width:42px;height:28px;color:#fff;background:#111827;border-radius:999px;font-weight:900}.muted{color:#9aa7b5}.project-grid,.asset-grid,.export-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:18px}.export-import-panel{padding:18px 20px}.project-card{display:grid;gap:16px;min-height:235px;padding:20px}.project-topline,.project-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.project-topline span,.project-footer span{color:#738091;font-size:12px;font-weight:900}.project-card p,.asset-card p,.export-tile p,.task-card p,.report-item span{margin:0;color:#657386;line-height:1.6}.project-footer .el-progress{width:48%}.project-footer-actions{justify-content:flex-end}.config-dialog-title{display:grid;gap:6px;margin-bottom:16px;padding:12px 14px;background:#f8fafc;border:1px solid #edf1f5;border-radius:8px}.config-dialog-title span{color:#738091;font-size:12px;font-weight:900}.config-dialog-title strong{color:#123047;font-size:18px;line-height:1.3}.project-config-dialog .el-dialog__header,.password-change-dialog .el-dialog__header{padding-bottom:8px}.password-change-form{position:relative;display:grid;gap:2px}.password-change-username{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.member-add-dialog .el-dialog__header,.member-edit-dialog .el-dialog__header{padding-bottom:8px}.member-add-form,.member-edit-form{display:grid;gap:2px}.member-add-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.member-add-form .el-select,.member-add-form .el-date-editor,.member-edit-form .el-select{width:100%}.member-interview-ppt-editor{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;width:100%;min-height:48px;padding:10px 12px;border:1px solid rgba(50,89,116,.12);border-radius:8px;background:#f8fbfd}.member-interview-ppt-info{display:grid;min-width:0;gap:3px}.member-interview-ppt-info span{color:#607084;font-size:12px;font-weight:800}.member-interview-ppt-info strong{min-width:0;overflow:hidden;color:#102033;font-size:13px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.member-interview-ppt-actions{display:flex;flex:0 0 auto;align-items:center;gap:8px}.member-interview-ppt-actions .el-input{width:220px}.member-interview-ppt-input{display:none}.member-student-material-list{display:grid;grid-column:1 / -1;gap:8px}.member-student-material-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 10px;background:#fff;border:1px solid rgba(50,89,116,.1);border-radius:8px}.member-student-material-meta{display:grid;min-width:0;gap:4px}.member-student-material-meta small{width:fit-content;max-width:100%;padding:2px 7px;overflow:hidden;color:#0f6f62;background:#e9faf5;border-radius:999px;font-size:11px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.member-student-material-meta span{min-width:0;overflow:hidden;color:#24364b;font-size:13px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.member-student-material-item>div:not(.member-student-material-meta){display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.member-add-mode{width:100%;margin:2px 0 14px}.member-add-mode .el-radio-button{width:50%}.member-add-mode .el-radio-button__inner{width:100%}.member-new-user-section{display:grid;gap:2px;padding:12px 14px 2px;border:1px solid #e8eef4;border-radius:8px;background:#fbfdff}.member-add-derived{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;align-items:center;margin-bottom:12px;padding:10px 12px;border:1px solid rgba(20,184,166,.16);border-radius:8px;background:#f0fdfa}.member-add-derived span,.member-add-derived em{color:#64748b;font-size:12px;font-style:normal;font-weight:800}.member-add-derived strong{color:#0f766e;font-size:14px;font-weight:900}.member-add-derived em{grid-column:1 / -1;font-weight:700}.member-user-option{display:grid;gap:2px;padding:4px 0}.member-user-option strong{color:#123047;font-size:13px;line-height:1.2}.member-user-option span{color:#64748b;font-size:12px;line-height:1.25}.workshop-import-guide,.member-import-guide,.user-import-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:14px}.workshop-import-guide span,.member-import-guide span,.user-import-guide span{min-height:42px;padding:10px 12px;border:1px solid #e8eef4;border-radius:8px;background:#fff;color:#475569;font-size:12px;line-height:1.45}.workshop-import-guide .el-button,.member-import-guide .el-button,.user-import-guide .el-button{justify-self:end;align-self:center}.workshop-import-result,.member-import-result,.user-import-result{display:grid;gap:12px;margin-top:14px}.workshop-import-stats,.member-import-stats,.user-import-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.workshop-import-stats span,.member-import-stats span,.user-import-stats span{display:grid;gap:4px;padding:12px;border:1px solid #e5edf4;border-radius:8px;background:#f8fafc;color:#102334;font-size:20px;font-weight:900}.workshop-import-stats em,.member-import-stats em,.user-import-stats em{color:#738091;font-size:12px;font-style:normal;font-weight:800}.import-failure-table{max-height:220px}.workshop-info-form{display:grid;gap:2px}.workshop-info-dialog .el-textarea__inner{line-height:1.6}.workshop-info-dialog .full-width-control{width:100%}.project-basic-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.project-basic-form .el-date-editor,.project-basic-form .el-select{width:100%}.task-form{display:grid;gap:2px}.task-dialog .el-dialog__header{padding:0;border-bottom:1px solid #e6ecf3}.task-dialog-overlay,.task-dialog-overlay .el-overlay-dialog{overflow:hidden}.task-dialog{--el-dialog-margin-top: 3vh;display:flex;flex-direction:column;max-width:calc(100vw - 32px);height:94vh;max-height:94vh;margin-top:3vh!important;margin-bottom:3vh;overflow:hidden}.task-dialog .el-dialog__body{flex:1;min-height:0;max-height:none;padding:12px 16px 14px;overflow:auto;background:#f6f8fb}.task-dialog .el-dialog__footer{flex:0 0 auto;padding:10px 16px;background:#fff;border-top:1px solid #e6ecf3}.task-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px 12px}.task-dialog-header div{min-width:0}.task-dialog-header span{display:block;overflow:hidden;color:#64748b;font-size:12px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.task-dialog-header strong{display:block;margin-top:4px;color:#123047;font-size:20px;font-weight:950;line-height:1.25}.task-dialog-form{gap:12px}.task-dialog-section{display:grid;gap:12px;min-width:0;padding:14px;background:#fff;border:1px solid #e4ebf2;border-radius:8px}.task-section-heading{display:flex;align-items:center;justify-content:space-between;min-width:0}.task-section-heading span{display:inline-flex;align-items:center;gap:7px;color:#123047;font-size:14px;font-weight:950}.task-section-heading svg{width:16px;height:16px;color:#0f8a7c}.task-content-grid{display:grid;gap:12px}.task-description-grid,.task-assignment-grid,.task-plan-grid{display:grid;gap:14px}.task-description-grid{grid-template-columns:minmax(0,1.24fr) minmax(320px,.76fr);align-items:stretch}.task-dialog-two-column{display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);gap:14px}.task-assignment-grid{grid-template-columns:140px minmax(0,1fr)}.task-assignment-grid .task-assignment-wide{grid-column:1 / -1}.task-people-select .el-select__wrapper{align-items:center;min-height:58px;padding-top:6px;padding-bottom:6px}.task-people-select .el-select__selection{align-items:center;flex-wrap:wrap;gap:6px 4px;min-width:0}.task-people-select .el-select__placeholder,.task-people-select .el-select__input-wrapper{align-items:center;min-height:28px;line-height:20px}.task-people-select .el-select__selected-item,.task-people-select .el-tag{max-width:100%}.task-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.task-asset-section{background:linear-gradient(180deg,#fff,#f9fbfd)}.task-dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:14px}.task-dialog-footer>span{color:#64748b;font-size:12px;font-weight:850}.task-dialog-footer>div{display:flex;align-items:center;gap:10px}.task-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.task-form-grid.three-columns{grid-template-columns:.7fr .9fr 1.4fr}.task-form-grid.evaluation-grid{grid-template-columns:160px 1fr}.task-form .el-date-editor,.task-form .el-select,.task-form .el-input,.task-form .el-input-number{width:100%}.task-evaluation-review-panel{display:grid;gap:12px;margin-bottom:16px;padding:16px;background:linear-gradient(180deg,#f8fcff,#fff);border:1px solid rgba(20,184,166,.14);border-radius:8px}.task-evaluation-review-heading,.task-evaluation-deliverable-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.task-evaluation-review-heading div:first-child,.task-evaluation-deliverable-head{min-width:0}.task-evaluation-review-heading span,.task-evaluation-review-text span,.task-evaluation-deliverable-head span,.task-evaluation-info-grid span{display:block;color:#64748b;font-size:12px;font-weight:800}.task-evaluation-review-heading strong{display:block;margin-top:4px;color:#123047;font-size:15px}.task-evaluation-review-tags{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.task-evaluation-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.task-evaluation-info-grid article{min-width:0;padding:10px;background:#ffffffd1;border:1px solid #edf1f5;border-radius:8px}.task-evaluation-info-grid strong{display:block;margin-top:5px;overflow:hidden;color:#0f2742;font-size:13px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.task-evaluation-review-text{display:grid;gap:6px}.task-evaluation-review-text p,.task-evaluation-empty-note{margin:0;color:#334155;font-size:13px;line-height:1.65}.task-evaluation-deliverable-panel{display:grid;gap:10px}.task-evaluation-deliverable-head small{color:#64748b;font-size:12px}.task-evaluation-deliverable-list{display:grid;gap:8px}.task-evaluation-deliverable-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;background:#ffffffdb;border:1px solid #edf1f5;border-radius:8px}.task-evaluation-deliverable-item div{min-width:0}.task-evaluation-deliverable-item strong,.task-evaluation-deliverable-item span,.task-evaluation-deliverable-item em,.task-evaluation-deliverable-item .submitted-content-link{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-evaluation-deliverable-item strong{color:#0f2742;font-size:13px}.task-evaluation-deliverable-item span,.task-evaluation-deliverable-item em,.task-evaluation-deliverable-item .submitted-content-link{margin-top:4px;font-size:12px;font-style:normal}.task-evaluation-deliverable-item span,.task-evaluation-deliverable-item em{color:#64748b}.task-evaluation-deliverable-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;white-space:nowrap}.task-evaluation-deliverable-actions .el-button+.el-button{margin-left:0}.task-student-evaluation-list{display:grid;gap:10px;margin:4px 0 14px;padding:14px;background:#f8fcff;border:1px solid rgba(20,184,166,.16);border-radius:8px}.task-student-evaluation-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.task-student-evaluation-heading span{color:#123047;font-size:14px;font-weight:900}.task-student-evaluation-heading small{color:#64748b;font-size:12px}.task-student-evaluation-row{display:grid;grid-template-columns:150px 130px minmax(0,1fr);gap:10px;align-items:center}.task-student-evaluation-person{min-width:0}.task-student-evaluation-person strong,.task-student-evaluation-person span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-student-evaluation-person strong{color:#0f2742;font-size:14px}.task-student-evaluation-person span{margin-top:3px;color:#64748b;font-size:12px}.task-student-score-input,.task-student-comment-input{width:100%}.deliverable-definition-panel{display:grid;gap:12px;margin-top:4px;padding:14px;background:#f8fcff;border:1px solid rgba(20,184,166,.14);border-radius:8px}.deliverable-definition-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.deliverable-definition-head-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.deliverable-definition-head span{color:#123047;font-size:14px;font-weight:900}.deliverable-definition-head p{margin:4px 0 0;color:#64748b;font-size:12px;line-height:1.5}.deliverable-definition-list{display:grid;gap:10px}.deliverable-definition-row{display:grid;grid-template-columns:34px 140px minmax(180px,1fr) minmax(190px,.8fr) 120px;gap:10px;align-items:end;padding:10px;background:#ffffffd1;border:1px solid #edf1f5;border-radius:8px}.deliverable-definition-row .el-form-item{margin-bottom:0}.deliverable-row-actions{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.deliverable-row-actions .el-button{min-height:22px;margin-left:0;padding:0}.submitter-option{display:flex;gap:8px;align-items:center;justify-content:space-between;min-width:0;width:100%}.submitter-option>span:first-child{min-width:0;overflow:hidden;color:#172033;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.option-meta{flex:0 0 auto;max-width:96px;overflow:hidden;padding:2px 7px;color:#475569;font-size:11px;font-weight:850;line-height:1.4;text-overflow:ellipsis;white-space:nowrap;background:#f1f5f9;border:1px solid #d8e0ea;border-radius:6px}.deliverable-index{display:grid;place-items:center;align-self:center;width:30px;height:30px;color:#0f766e;font-size:12px;font-weight:950;background:#e8f7f3;border:1px solid #cbece4;border-radius:8px}.kanban-board{display:grid;grid-template-columns:repeat(5,minmax(190px,1fr));gap:14px;align-items:start}.kanban-column{display:grid;gap:12px;min-height:560px;padding:14px;background:#ffffffb8}.kanban-column header{display:flex;align-items:center;justify-content:space-between;padding:8px 4px 12px;border-bottom:1px solid #e8edf2}.kanban-column header span,.kanban-column header strong{font-weight:900}.task-card{display:grid;gap:12px;padding:14px;background:#fff;border:1px solid #edf1f5;border-radius:8px}.task-card>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.task-card>div span,.task-card em{color:#738091;font-size:12px;font-style:normal;font-weight:900}.report-list{display:grid;gap:12px}.report-item{display:grid;grid-template-columns:auto 1fr;gap:8px 12px;padding:16px;background:#f8fafc;border:1px solid #edf1f5;border-radius:8px}.report-item strong{color:#111827}.report-item span,.report-item em{grid-column:2}.report-item em{color:#8793a1;font-size:12px;font-style:normal;font-weight:900}.form-preview{background:linear-gradient(145deg,rgba(55,211,153,.12),transparent 45%),#fff}.asset-card,.export-tile{position:relative;min-height:230px;padding:20px;overflow:hidden}.asset-icon,.export-tile>svg{display:grid;place-items:center;width:48px;height:48px;margin-bottom:16px;color:#fff;background:#111827;border-radius:8px}.asset-icon svg{width:23px;height:23px}.asset-card .el-tag{position:absolute;top:20px;right:20px}.asset-card span{display:block;margin-top:18px;color:#111827;font-size:12px;font-weight:900}.weight-list{display:grid;gap:18px}.weight-list>div{display:grid;gap:8px}.weight-list span{color:#435164;font-weight:900}.export-tile{display:grid;align-content:start;gap:12px}.export-tile>svg{padding:12px}.export-tile .el-button{justify-self:start;margin-top:10px}@media(max-width:1360px){.kpi-grid{grid-template-columns:repeat(3,minmax(160px,1fr))}.checkin-kpi-grid{grid-template-columns:repeat(4,minmax(168px,1fr))}.dashboard-grid,.dashboard-action-layout,.dashboard-board-grid,.dashboard-checkin-overview,.project-grid,.studio-project-grid,.asset-grid,.export-grid{grid-template-columns:repeat(2,minmax(240px,1fr))}.dashboard-command-panel,.dashboard-main-grid,.dashboard-apprentice-grid{grid-template-columns:1fr}.dashboard-kpi-strip{grid-template-columns:repeat(2,minmax(220px,1fr))}.dashboard-apprentice-block+.dashboard-apprentice-block{border-top:1px solid #d8dae8;border-left:0}.dashboard-action-grid{grid-template-columns:repeat(4,minmax(138px,1fr));overflow-x:auto;padding-bottom:2px}.kanban-board{grid-template-columns:repeat(3,minmax(210px,1fr))}}@media(max-width:980px){.app-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto;padding:16px;overflow:visible}.sidebar-collapse-button{display:none}.brand-block{min-height:auto;padding:0 2px 14px}.nav-list{display:flex;gap:8px;margin-top:14px;padding-bottom:4px;padding-right:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.sidebar-footer{margin-top:14px}.nav-item{grid-template-columns:32px max-content;min-width:148px;min-height:48px}.side-brief{display:none}.topbar,.hero-strip,.two-column,.dashboard-grid,.dashboard-command-panel,.dashboard-action-layout,.dashboard-board-grid,.dashboard-action-grid,.dashboard-kpi-strip,.dashboard-main-grid,.dashboard-apprentice-grid,.dashboard-checkin-overview,.dashboard-focus-meta{grid-template-columns:1fr}.dashboard-panel-heading,.dashboard-weather-title,.dashboard-approval-copy>div:first-child{align-items:flex-start;flex-direction:column}.dashboard-weather-meta,.dashboard-leaderboard-row,.dashboard-warning-row{grid-template-columns:1fr}.dashboard-investment-echarts{height:420px}.dashboard-leaderboard-row>div:last-child{justify-items:start}.hero-strip{flex-direction:column;align-items:stretch}.mini-stat-row,.studio-profile-grid,.studio-list-grid,.studio-project-grid,.project-grid,.asset-grid,.export-grid,.compact-projects,.compact-assets,.project-info-layout,.member-add-form-grid,.task-form-grid,.task-form-grid.three-columns,.task-form-grid.evaluation-grid,.task-dialog-two-column,.task-content-grid,.task-description-grid,.task-assignment-grid,.task-plan-grid,.task-evaluation-info-grid,.task-student-evaluation-row,.workshop-import-guide,.member-import-guide,.user-import-guide,.workshop-import-stats,.member-import-stats,.user-import-stats,.deliverable-definition-row,.kanban-board,.member-interview-ppt-editor{grid-template-columns:1fr}.member-interview-ppt-actions{flex-wrap:wrap;justify-content:flex-start}.member-interview-ppt-actions .el-input{width:min(100%,280px)}.member-student-material-item{grid-template-columns:1fr}.member-student-material-item>div:not(.member-student-material-meta){justify-content:flex-start}}@media(max-width:680px){.workspace{padding:16px}.nav-list,.kpi-grid{grid-template-columns:1fr}.checkin-kpi-grid{grid-template-columns:repeat(4,minmax(220px,1fr))}.filters{flex-wrap:wrap}.secondary-header,.studio-card-actions,.project-detail-head,.panel-heading-actions{flex-direction:column;align-items:stretch}.project-detail-status{justify-items:start}.hero-strip h2{font-size:30px}.workshop-row,.detail-list div,.project-attribute-list div{grid-template-columns:1fr}}:root{color:#123047;background:#f3fbff}body{background:radial-gradient(circle at 10% 8%,rgba(52,211,153,.2),transparent 28%),radial-gradient(circle at 88% 10%,rgba(96,165,250,.24),transparent 30%),linear-gradient(90deg,rgba(48,97,142,.045) 1px,transparent 1px),linear-gradient(180deg,rgba(48,97,142,.045) 1px,transparent 1px),#f4fbff}.sidebar{color:#123047;background:linear-gradient(180deg,#fffffff5,#ecfdf5f0),#fff;border-right:1px solid rgba(20,184,166,.18);box-shadow:16px 0 46px #2b718414}.brand-block{border-bottom-color:#14b8a62e}.brand-mark{color:#fff;background:linear-gradient(135deg,#00b8d9,#34d399 55%,#facc15);box-shadow:0 18px 35px #14b8a63d}.brand-block p,.nav-item em{color:#3b82f6}.nav-list{gap:9px}.nav-group{display:grid;gap:6px}.nav-item{color:#31506a;background:#ffffffad;border-color:#14b8a61f}.nav-item:hover,.nav-item.active{color:#0f6f7d;background:linear-gradient(135deg,#e0fcf7fa,#eff6fffa);border-color:#14b8a652}.nav-item.active{box-shadow:inset 4px 0 #19c6a5,0 12px 28px #14b8a61f}.nav-item.parent{min-height:58px}.sub-nav{display:grid;gap:6px;margin-left:18px;padding-left:12px;border-left:2px solid rgba(20,184,166,.2)}.sub-nav.third{margin-left:26px}.sub-item{min-height:42px;grid-template-columns:34px 1fr;font-size:13px}.third-item{color:#1d6ca1}.side-brief{background:linear-gradient(135deg,#e0fcf7,#eff6ff);border-color:#14b8a638}.side-brief span{color:#268099}.side-brief strong{color:#123047}.topbar-title span,.eyebrow{color:#2b7fff}.topbar-title h1,.panel-heading h3,.project-card h3,.task-card h3,.asset-card h3,.export-tile h3,.form-preview h3{color:#0f2638}.hero-strip{color:#0f2638;background:linear-gradient(120deg,#ffffffdb,#ecfdf5b8),linear-gradient(135deg,rgba(20,184,166,.28),transparent 46%),#fff;border:1px solid rgba(20,184,166,.18);box-shadow:0 24px 70px #3b82f621}.hero-strip:after{background:linear-gradient(135deg,#22d3ee,#34d399 58%,#facc15);opacity:.92}.hero-strip .eyebrow{color:#0ea5e9}.hero-strip h2{font-family:Microsoft YaHei,PingFang SC,sans-serif;color:#0b2540}.hero-meta span{color:#0f6f7d;background:#ffffffb8;border-color:#14b8a63d}.hero-signal{color:#0b2540;box-shadow:0 20px 54px #14b8a638}.kpi-card,.panel,.project-card,.studio-overview-card,.kanban-column,.asset-card,.export-tile,.mini-stat,.task-action-card{background:#ffffffeb;border-color:#14b8a624;box-shadow:0 18px 48px #2b718417}.kpi-icon,.asset-icon,.export-tile>svg{background:linear-gradient(135deg,#0ea5e9,#19c6a5)}.kpi-card strong,.workshop-row strong,.studio-overview-card h3,.detail-list dd,.asset-card span{color:#123047}.tone-green{color:#18b66d}.tone-cyan{color:#0891b2}.tone-amber{color:#f59e0b}.tone-red{color:#ef6262}.tone-violet{color:#6366f1}.tone-ink{color:#2563eb}.todo-item,.workshop-row,.studio-card-details,.task-card,.report-item{background:#f8fdff;border-color:#14b8a624}.workshop-row.active{background:linear-gradient(135deg,#19c6a5,#38bdf8);border-color:transparent}.score-pill{background:linear-gradient(135deg,#19c6a5,#38bdf8)}.form-preview{background:linear-gradient(145deg,rgba(250,204,21,.15),transparent 44%),linear-gradient(20deg,rgba(34,211,238,.14),transparent 38%),#fff}.hierarchy-panel{background:linear-gradient(120deg,rgba(52,211,153,.16),transparent 48%),linear-gradient(300deg,rgba(96,165,250,.18),transparent 48%),#fff}.hierarchy-flow{display:grid;grid-template-columns:auto 1fr auto 1fr;align-items:center;gap:12px}.hierarchy-flow span{padding:10px 12px;color:#0f6f7d;background:#e0fcf7;border-radius:999px;font-size:13px;font-weight:900}@media(max-width:1080px){.login-shell{grid-template-columns:1fr;grid-template-rows:auto auto auto auto;gap:22px;min-height:auto}.login-hero-copy{grid-row:1}.login-feature-grid{grid-row:3;grid-template-columns:repeat(3,minmax(0,1fr))}.login-guidelines{grid-row:2}.login-guidelines-list{grid-template-columns:1fr}.login-panel{grid-column:1;grid-row:4;place-items:center;align-self:stretch;min-height:auto;padding:0}.login-card{width:min(420px,100%);height:auto}}@media(max-width:720px){.login-page{padding:14px}.login-shell{gap:14px;padding:96px 24px 24px;border-radius:24px}.login-card{padding:28px 24px;border-radius:18px}.login-hero-copy h1{font-size:32px}.login-feature-grid{grid-template-columns:1fr}.login-guidelines{margin:0 -12px;padding:16px 12px 18px}.login-guidelines-list li{grid-template-columns:32px minmax(0,1fr);gap:9px}.login-guidelines-list b{width:30px;height:30px}.login-guidelines-list p strong{margin-right:3px}.login-options{align-items:flex-start;flex-direction:column}}.hierarchy-flow strong{padding:13px 14px;color:#123047;background:#ffffffb8;border:1px solid rgba(20,184,166,.18);border-radius:8px}.task-action-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:16px}.task-action-card{display:grid;gap:12px;min-height:160px;padding:20px;border-radius:8px}.task-action-card svg{width:34px;height:34px}.task-action-card span{color:currentColor;font-weight:900}.task-action-card strong{color:#123047;line-height:1.55}.data-table{--el-table-header-bg-color: #eaf9ff;--el-table-header-text-color: #155e75;--el-table-row-hover-bg-color: #ecfdf5}@media(max-width:1360px){.task-action-grid{grid-template-columns:1fr}}@media(max-width:980px){.sub-nav{display:contents}.nav-group{display:flex;gap:8px}.hierarchy-flow{grid-template-columns:1fr}.checkin-student-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.checkin-student-weekdays,.checkin-student-calendar-grid{gap:5px}.checkin-student-calendar-day{min-height:70px;padding:7px}.checkin-student-record-list article{grid-template-columns:minmax(0,1fr) auto}.checkin-student-day-summary{grid-template-columns:1fr}.checkin-student-record-list small{grid-column:1 / -1}}
