.assessment-group-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:20px 0 10px}.assessment-group-head h3{margin:0;font:800 18px/1.35 system-ui,"PingFang SC","Microsoft YaHei",sans-serif;color:var(--mq-ink,#2c2416)}.assessment-group-head p{margin:0;color:var(--mq-ink-soft,#756451);font:13px/1.6 system-ui,"PingFang SC","Microsoft YaHei",sans-serif}
.assessment-group-tabs{display:flex;gap:8px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;padding:4px 1px 10px;white-space:nowrap}.assessment-group-tabs button{flex:0 0 auto;min-height:44px;padding:9px 14px;border:1px solid rgba(89,73,45,.24);border-radius:3px;background:#fffdf8;color:#3d3425;font:700 13px/1.35 system-ui,"PingFang SC","Microsoft YaHei",sans-serif;box-shadow:none}.assessment-group-tabs button:hover{background:#f2ead8}.assessment-group-tabs button[aria-selected="true"]{background:#275e4b;color:#fff;border-color:#275e4b}.assessment-group-tabs button:focus-visible{outline:3px solid rgba(166,64,48,.35);outline-offset:2px}
.test-stats.test-stats-expanded{grid-template-columns:repeat(6,minmax(0,1fr))}.test-stats strong{font-variant-numeric:tabular-nums}.assessment-report-table th{position:sticky;top:0;z-index:2;background:#f4ecdc}.assessment-report-table .group-cell{font-weight:800;color:#164d68}.assessment-report-table tr.failed td{background:#fff5df}.assessment-report-table tr.failed .remark{color:#9a5a00;font-weight:900}.assessment-report-table tr.passed .remark{color:#275e4b;font-weight:800}.assessment-report-table .status-badge{display:inline-flex;align-items:center;min-height:28px;padding:3px 9px;border-radius:999px;background:#eaf3ed;color:#275e4b;font:800 12px/1 system-ui,"PingFang SC","Microsoft YaHei",sans-serif}.assessment-report-table .absent .status-badge{background:#fff0ed;color:#a64030}.assessment-report-table .failed .status-badge{background:#fff0cf;color:#8b5900}
.assessment-export-note{margin:8px 0 0;text-align:right}.assessment-export-note strong{color:#275e4b}
.base-roster-source-list{display:flex;flex-wrap:wrap;gap:6px;margin-block-start:10px}.base-roster-source{display:inline-flex;align-items:center;min-height:30px;padding:4px 9px;border:1px solid rgba(39,94,75,.22);border-radius:3px;background:#f7f1e4;color:#2c3f37;font:700 12px/1.35 system-ui,"PingFang SC","Microsoft YaHei",sans-serif;overflow-wrap:anywhere}
.base-roster-manager{margin:14px 0 18px;border:1px solid rgba(89,73,45,.24);background:#fffdf8}.base-roster-manager-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:16px 18px;border-bottom:1px solid rgba(89,73,45,.18);background:#f7f1e4}.base-roster-manager-head h3{margin:0 0 4px;color:var(--mq-ink,#2c2416);font:800 17px/1.35 system-ui,"PingFang SC","Microsoft YaHei",sans-serif}.base-roster-manager-head p{max-width:72ch;margin:0;color:var(--mq-ink-soft,#756451);font:13px/1.65 system-ui,"PingFang SC","Microsoft YaHei",sans-serif}.base-roster-manager button{min-height:44px}.base-roster-source-table-wrap{max-height:430px;overflow:auto}.base-roster-source-table{width:100%;min-width:780px;border-collapse:collapse;white-space:normal}.base-roster-source-table th{position:sticky;top:0;z-index:3;background:#eee5d3}.base-roster-source-table th,.base-roster-source-table td{padding:11px 12px;border-bottom:1px solid rgba(89,73,45,.14);text-align:left;vertical-align:middle;font:13px/1.5 system-ui,"PingFang SC","Microsoft YaHei",sans-serif}.base-roster-source-table td:first-child{max-width:250px;overflow-wrap:anywhere}.base-roster-source-table .source-count{font-variant-numeric:tabular-nums;white-space:nowrap}.base-roster-source-table .source-groups{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-actions{display:flex;gap:6px;justify-content:flex-end}.source-actions button,.deleted-roster-row button{padding:8px 12px;border:1px solid rgba(39,94,75,.32);background:#fffdf8;color:#275e4b}.source-actions button:hover,.deleted-roster-row button:hover{background:#eaf3ed}.source-actions .source-update{background:#275e4b;color:#fff;border-color:#275e4b}.source-actions .source-delete{background:#fff5f2;color:#8d3028;border-color:rgba(166,64,48,.4)}.source-actions button:focus-visible,.deleted-roster-row button:focus-visible,.base-roster-manager-head button:focus-visible{outline:3px solid rgba(166,64,48,.35);outline-offset:2px}.deleted-roster-panel{border-top:1px solid rgba(89,73,45,.18);background:#fbf8f0}.deleted-roster-panel summary{min-height:44px;padding:12px 18px;cursor:pointer;color:#5f513d;font:800 13px/1.5 system-ui,"PingFang SC","Microsoft YaHei",sans-serif}.deleted-roster-panel summary span{display:inline-flex;min-width:24px;justify-content:center;margin-inline-start:5px;padding:1px 7px;border-radius:999px;background:#e5dbc4;font-variant-numeric:tabular-nums}.deleted-roster-rows{padding:0 18px 12px}.deleted-roster-rows>p{margin:0;color:#756451}.deleted-roster-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid rgba(89,73,45,.12)}.deleted-roster-row span{min-width:0}.deleted-roster-row strong,.deleted-roster-row small{display:block;overflow-wrap:anywhere}.deleted-roster-row small{margin-top:3px;color:#756451}.base-roster-manager>.upload-note{min-height:22px;margin:0;padding:10px 18px;color:#5f513d}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:900px){.test-stats.test-stats-expanded{grid-template-columns:repeat(3,minmax(0,1fr))}.assessment-group-head{align-items:flex-start;flex-direction:column;gap:4px}}
@media(max-width:640px){.test-stats.test-stats-expanded{grid-template-columns:repeat(2,minmax(0,1fr))}.assessment-group-tabs{margin-inline:-4px}.assessment-report-table .optional-column{display:none}.assessment-group-head h3{font-size:16px}.assessment-export-note{text-align:left}.assessment-group-tabs button{min-height:44px}.base-roster-manager-head{align-items:stretch;flex-direction:column;padding:14px}.base-roster-manager-head button{width:100%}.base-roster-source-table-wrap{max-height:360px}.deleted-roster-rows{padding-inline:14px}.deleted-roster-row{align-items:flex-start}.base-roster-manager>.upload-note{padding-inline:14px}}
.assessment-dashboard{--board-ink:#263a35;--board-accent:#275e4b;margin:24px 0 32px;padding:24px;background:#fbf8f0;color:var(--board-ink);border:1px solid #d5c7ad;border-radius:4px;font:400 15px/1.65 "PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-variant-numeric:tabular-nums}
.assessment-dashboard .dashboard-heading{display:flex;justify-content:space-between;align-items:start;gap:24px;margin-bottom:16px}.assessment-dashboard h3{margin:0;color:var(--board-ink);font:700 22px/1.4 "PingFang SC","Microsoft YaHei",system-ui,sans-serif;letter-spacing:.02em}.assessment-dashboard h3 span{font-size:14px;color:#756044;margin-left:8px}.assessment-dashboard p{margin:6px 0 0;max-width:72ch;color:#655846;font-size:14px}.dashboard-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.assessment-dashboard button,.assessment-dashboard select{min-height:44px;padding:8px 12px;border:1px solid #b5a486;border-radius:3px;background:#fffdf8;color:var(--board-ink);font:inherit;box-shadow:none;white-space:nowrap}.assessment-dashboard button:hover{background:#efe8d9}.assessment-dashboard button:focus-visible,.assessment-dashboard select:focus-visible{outline:3px solid #164d68;outline-offset:3px}.assessment-dashboard button:disabled{opacity:1;color:#275e4b;background:#eaf3ed;cursor:default}
.venue-progress-row{display:grid;grid-template-columns:minmax(120px,1.2fr) minmax(120px,2fr) 110px 132px;align-items:center;gap:20px;padding:16px 0;border-bottom:1px solid #ded4c1}.venue-progress-row>strong{font-weight:600;overflow-wrap:anywhere}.venue-meter{display:flex;align-items:center;gap:12px}.venue-track{height:10px;flex:1;background:#e5dbc4;border-radius:5px;overflow:hidden}.venue-track span{height:100%;display:block;background:var(--board-accent);border-radius:5px}.venue-percent{min-width:58px;text-align:right;font-weight:700}.venue-count{color:#655846;text-align:right}.assessment-dashboard .venue-absent{color:#8b3e2b;border-color:#cfbda0;font-size:14px}
.assessment-dashboard .speed-heading{margin-top:32px}.speed-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px}.speed-list li{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #ded4c1;min-width:0}.speed-rank{width:32px;flex-shrink:0;font-size:20px;color:#756044}.speed-list li:nth-child(-n+3) .speed-rank{color:#a64030;font-weight:800}.speed-person{flex:1;min-width:0}.speed-person strong,.speed-person span{display:block;overflow-wrap:anywhere}.speed-person span{color:#655846;font-size:13px}.speed-score{font-size:13px;color:#275e4b;white-space:nowrap}.speed-time{font-size:15px;white-space:nowrap}.assessment-dashboard .dashboard-empty{padding:20px 0;border-top:1px solid #ded4c1}
body[data-surface="admin"] main{line-height:1.65}body[data-surface="admin"] input,body[data-surface="admin"] td{font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif}body:has(.assessment-dashboard) footer img{object-fit:contain;max-width:min(230px,64vw);height:44px;image-rendering:auto;filter:none!important;mix-blend-mode:normal}
@media(max-width:960px){.assessment-dashboard .dashboard-heading{flex-direction:column;gap:12px}.speed-list{grid-template-columns:1fr}.venue-progress-row{grid-template-columns:minmax(100px,1fr) minmax(130px,2fr);gap:8px 16px}.venue-count{text-align:left}.venue-absent{justify-self:end}}
@media(max-width:600px){.assessment-dashboard{padding:16px;margin:20px 0}.assessment-dashboard h3{font-size:20px}.venue-progress-row{gap:10px}.dashboard-controls{width:100%}.speed-time{font-size:14px}.speed-list li{gap:8px}.speed-score{display:none}}
.assessment-dashboard[data-skin="tomorrow"]{--board-accent:#366f9d;border-color:#cfb88a}.assessment-dashboard[data-skin="pixel"]{--board-accent:#1769a8;border-radius:0}.assessment-dashboard[data-skin="pixel"] .venue-track,.assessment-dashboard[data-skin="pixel"] .venue-track span{border-radius:0}
body[data-surface="admin-module"] input,body[data-surface="admin-module"] td,body[data-surface="admin-module"] h2{font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif}body[data-surface="admin-module"] h2{line-height:1.45}body[data-surface="admin-module"] .toolbar{gap:16px;flex-wrap:wrap}body[data-surface="admin-module"] footer img{object-fit:contain;max-width:min(230px,64vw);height:44px;image-rendering:auto;filter:none!important;mix-blend-mode:normal}
#assessmentDashboard{scroll-margin-top:100px}#assessmentDashboard button,#assessmentDashboard select{background:#fffdf8!important;color:#275e4b!important;border:1px solid #b5a486!important;box-shadow:none!important}#assessmentDashboard button:hover{background:#efe8d9!important}#assessmentDashboard button:disabled{background:#eaf3ed!important;color:#275e4b!important}#assessmentDashboard .venue-absent:not(:disabled){color:#8b3e2b!important}#assessmentDashboard .dashboard-heading h3{color:#263a35!important}body:has(#assessmentDashboard) #assessmentGroupTabs button{background:#fffdf8!important;color:#275e4b!important}body:has(#assessmentDashboard) #assessmentGroupTabs button[aria-selected="true"]{background:#275e4b!important;color:#fff!important}
