:root{
  --ink:#111719;--night:#10191c;--paper:#ece8dc;--white:#fffdf7;--muted:#657170;
  --line:#c9c3b7;--cyan:#58d3d9;--lime:#d8ef58;--orange:#f26c3e;--blue:#2459c6;
  --green:#237d60;--red:#c84835;--shadow:0 24px 65px rgba(17,23,25,.14);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:76px}
body{margin:0;color:var(--ink);background:var(--paper);font-family:"Microsoft YaHei","Noto Sans SC",sans-serif;line-height:1.68;background-image:linear-gradient(rgba(17,23,25,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(17,23,25,.035) 1px,transparent 1px);background-size:30px 30px}
button,input,textarea,select{font:inherit}button{color:inherit}a{color:inherit}canvas{max-width:100%}
.skip-link{position:fixed;z-index:999;left:12px;top:-80px;padding:10px 14px;background:var(--lime);font-weight:900}.skip-link:focus{top:12px}
.topbar{position:sticky;z-index:80;top:0;color:white;background:rgba(16,25,28,.94);border-bottom:1px solid rgba(255,255,255,.14);backdrop-filter:blur(15px)}
.topbar-inner{max-width:1440px;min-height:64px;margin:auto;padding:9px 24px;display:flex;align-items:center;gap:13px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:900}.brand-mark{width:35px;height:35px;display:grid;place-items:center;border-radius:50%;background:var(--lime);color:var(--ink);font:900 .78rem Georgia}.project-chip{padding:5px 9px;border:1px solid #ffffff42;border-radius:99px;color:var(--cyan);font:900 .67rem/1.2 Consolas,monospace;letter-spacing:.12em}.save-state{margin-left:auto;color:#bdc9c8;font-size:.75rem}.top-action{min-height:36px;padding:7px 11px;border:1px solid #ffffff30;border-radius:9px;color:white;background:#ffffff0c;cursor:pointer}.file-action{display:inline-flex;align-items:center;cursor:pointer}.file-action input{position:absolute;inline-size:1px;block-size:1px;opacity:0}.top-action:hover,.top-action:focus-within{border-color:var(--cyan);color:var(--cyan)}
.hero{position:relative;overflow:hidden;min-height:690px;padding:90px 24px 74px;color:white;background:var(--night)}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 12% 22%,rgba(88,211,217,.18),transparent 28%),radial-gradient(circle at 82% 68%,rgba(242,108,62,.14),transparent 30%)}.hero-grid{position:relative;z-index:2;max-width:1380px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(430px,.9fr);gap:60px;align-items:center}.eyebrow{color:var(--lime);font:900 .74rem/1.3 Consolas,monospace;letter-spacing:.16em}.hero h1{margin:22px 0;font-family:"Noto Serif SC","Songti SC",serif;font-size:clamp(4rem,8vw,7.3rem);line-height:.88;letter-spacing:-.075em}.hero h1 span{display:block;margin-top:15px;color:var(--cyan);font-size:.51em;letter-spacing:-.04em}.hero-deck{max-width:740px;color:#d9e0df;font-size:1.13rem}.hero-deck strong{color:white}.hero-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:45px;padding:10px 16px;border:2px solid var(--ink);border-radius:11px;font-weight:900;text-decoration:none;cursor:pointer;transition:.18s}.button:hover,.button:focus-visible{transform:translateY(-2px);outline:3px solid var(--cyan);outline-offset:2px}.button.primary{background:var(--lime)}.button.secondary{background:var(--white)}.button.subtle{background:#e2ded3}.hero .button.secondary{color:white;background:#ffffff0a;border-color:#ffffff46}.hero-facts{display:flex;flex-wrap:wrap;gap:9px;margin-top:30px}.hero-facts span{padding:8px 11px;border:1px solid #ffffff28;border-radius:99px;color:#cbd5d4;font-size:.76rem}.hero-facts b{color:var(--orange)}
.hero-visual{position:relative;min-height:460px;border:1px solid #4b5d60;background:#142326;box-shadow:15px 15px 0 var(--cyan);overflow:hidden}.radar-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(88,211,217,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(88,211,217,.1) 1px,transparent 1px);background-size:32px 32px}.flight-strip{position:absolute;inset:42px 35px 120px;overflow:hidden}.bird-token{position:absolute;left:14%;top:47%;width:44px;height:32px;border-radius:52% 48% 48% 52%;display:grid;place-items:center;color:var(--ink);background:var(--orange);box-shadow:-13px -7px 0 -4px var(--orange)}.bird-token i{position:absolute;right:-12px;border-left:15px solid var(--lime);border-block:7px solid transparent}.pipe{position:absolute;width:70px;top:0;bottom:0;background:linear-gradient(var(--lime) 0 31%,transparent 31% 58%,var(--lime) 58%)}.pipe:before,.pipe:after{content:"";position:absolute;left:-7px;width:84px;height:14px;background:var(--lime)}.pipe:before{top:calc(31% - 14px)}.pipe:after{top:58%}.pipe-a{left:62%}.pipe-b{left:92%;transform:translateY(-14px)}.sensor-line{position:absolute;left:19%;top:50%;height:1px;background:var(--cyan);transform-origin:left}.sensor-line.one{width:45%;transform:rotate(-10deg)}.sensor-line.two{width:44%;transform:rotate(11deg)}.pipeline-card{position:absolute;left:28px;right:28px;bottom:25px;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:9px;background:rgba(8,14,16,.85);border-left:4px solid var(--lime)}.pipeline-card small{color:var(--cyan);font:800 .65rem Consolas,monospace}.pipeline-card b{font-family:"Noto Serif SC","Songti SC",serif}.pipeline-card i{color:var(--orange);font-style:normal}
.workspace{max-width:1440px;margin:auto;padding:80px 24px 120px;display:grid;grid-template-columns:245px minmax(0,1fr);gap:45px}.project-nav{align-self:start;position:sticky;top:90px}.nav-progress{padding:18px;border:2px solid var(--ink);background:var(--white);box-shadow:6px 6px 0 var(--ink)}.nav-progress span{font-size:.74rem;color:var(--muted)}.nav-progress b{float:right}.nav-progress>div{clear:both;height:7px;margin-top:12px;background:#d6d1c5}.nav-progress i{display:block;width:0;height:100%;background:var(--lime);transition:.3s}.project-nav ol{list-style:none;margin:20px 0;padding:0}.project-nav li{margin:5px 0}.project-nav button{width:100%;display:grid;grid-template-columns:38px 1fr;gap:1px 10px;padding:10px;border:0;border-left:4px solid transparent;text-align:left;background:transparent;cursor:pointer}.project-nav button span{grid-row:1/3;font:900 1.1rem Georgia;color:#84908e}.project-nav button b{font-size:.86rem}.project-nav button small{color:var(--muted);font:700 .6rem Consolas,monospace;letter-spacing:.09em}.project-nav button:hover,.project-nav button.active{border-left-color:var(--orange);background:var(--white)}.project-nav button.complete span{color:var(--green)}.project-nav button.locked{opacity:.48;cursor:not-allowed}.back-course{display:block;padding:10px;border-top:1px solid var(--line);font-size:.78rem;font-weight:800;text-decoration:none}.back-course:hover{color:var(--blue)}
.project-main{min-width:0}.stage-panel{animation:enter .35s ease}.stage-panel[hidden]{display:none}@keyframes enter{from{opacity:0;transform:translateY(8px)}}.stage-heading{display:grid;grid-template-columns:1fr auto;gap:22px;align-items:start;margin-bottom:28px}.stage-heading span{color:var(--orange);font:900 .7rem Consolas,monospace;letter-spacing:.14em}.stage-heading h2{max-width:870px;margin:8px 0 10px;font-family:"Noto Serif SC","Songti SC",serif;font-size:clamp(2.15rem,4.7vw,4.25rem);line-height:1.07;letter-spacing:-.055em}.stage-heading p{max-width:780px;margin:0;color:var(--muted)}.stage-stamp{font:900 6.5rem/.85 Georgia;color:var(--cyan);opacity:.25}.stage-footer{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:28px;padding:17px 19px;border-top:4px solid var(--ink);background:var(--white)}.stage-footer>span{font-size:.83rem;color:var(--muted)}
.paper-card,.definition-card,.data-table-card,.clean-actions,.model-card,.train-chart-card,.training-console,.version-list,.test-game,.evaluation-panel,.report-sheet,.report-fields,.presentation-checks{background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow)}.brief-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}.paper-card{padding:26px}.paper-card label,.clean-actions>label,.report-fields label{display:block;margin:15px 0 6px;font-weight:900}.paper-card input,.paper-card textarea,.clean-actions textarea,.failure-box textarea,.report-fields textarea{width:100%;border:1px solid var(--line);border-radius:9px;background:#f5f1e7;padding:11px;resize:vertical}.paper-card textarea{min-height:84px}.definition-card{display:grid}.definition-card>div{padding:24px;border-bottom:1px solid var(--line)}.definition-card>div:last-child{border-bottom:0}.definition-card small{color:var(--blue);font:800 .65rem Consolas,monospace}.definition-card b{display:block;margin:6px 0;font-family:"Noto Serif SC",serif;font-size:1.35rem}.definition-card p{margin:0;color:var(--muted);font-size:.87rem}
.collection-layout{display:grid;grid-template-columns:minmax(0,1fr) 205px;gap:17px}.game-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px}.game-toolbar span{margin-left:auto;color:var(--muted);font-size:.76rem}.game-frame{position:relative;overflow:hidden;border:3px solid var(--ink);background:#a6e5e4;box-shadow:8px 8px 0 var(--ink)}.game-frame canvas,.test-game canvas{display:block;width:100%;height:auto;cursor:pointer}.game-overlay{position:absolute;inset:0;display:grid;place-content:center;padding:30px;text-align:center;color:white;background:rgba(12,21,23,.65);cursor:pointer}.game-overlay b{font-family:"Noto Serif SC",serif;font-size:1.8rem}.game-overlay span{font-size:.86rem}.game-overlay.hidden{display:none}.live-decision{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin-top:12px;padding:14px 17px;background:var(--night);color:white}.live-decision small{display:block;color:#9eb1b0}.live-decision i{color:var(--orange);font-style:normal}.live-decision div:last-child b{color:var(--lime)}.metric-stack{display:grid;gap:10px}.metric{padding:16px;border-left:5px solid var(--cyan);background:var(--white);box-shadow:4px 4px 0 var(--ink)}.metric small,.metric span{display:block;color:var(--muted);font-size:.68rem}.metric b{display:block;margin:2px 0;font:900 1.85rem Georgia}
.data-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:17px}.summary-card{padding:15px;border-top:5px solid var(--cyan);background:var(--white)}.summary-card small{display:block;color:var(--muted)}.summary-card b{font:900 1.5rem Georgia}.clean-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:17px}.data-table-card{min-width:0;overflow:hidden}.table-head{display:flex;justify-content:space-between;padding:16px;border-bottom:1px solid var(--line)}.text-button{border:0;color:var(--blue);background:none;font-weight:900;cursor:pointer}.table-scroll{max-height:420px;overflow:auto}table{width:100%;border-collapse:collapse;font-size:.76rem}th,td{padding:9px 10px;border-bottom:1px solid #ded9ce;text-align:right;white-space:nowrap}th:first-child,td:first-child{text-align:left}thead{position:sticky;top:0;background:#e9f6f5}.clean-actions{padding:21px}.clean-actions h3{margin-top:0}.clean-actions>label:has(input[type=checkbox]){padding:9px;border:1px solid var(--line);border-radius:8px;font-size:.81rem}.clean-actions input[type=checkbox]{accent-color:var(--blue)}.clean-result{margin-top:14px;padding:12px;background:#ebf6c7;font-size:.8rem}.split-panel{display:grid;grid-template-columns:repeat(3,1fr);margin-top:17px;border:2px solid var(--ink)}.split-panel>div{padding:18px;border-right:1px solid var(--ink);background:var(--white)}.split-panel>div:last-child{border-right:0}.split-panel small,.split-panel span{display:block;color:var(--muted)}.split-panel b{font:900 1.7rem Georgia;color:var(--blue)}
.model-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.model-card{padding:24px}.model-card.selected{border:3px solid var(--blue)}.model-card small{color:var(--orange);font:800 .68rem Consolas,monospace}.model-card h3{margin:9px 0;font-family:"Noto Serif SC",serif;font-size:1.6rem}.model-card p{color:var(--muted)}.rule-line,.model-formula{padding:15px;background:var(--night);color:var(--cyan);font:800 .85rem Consolas,monospace}.rule-line b{color:var(--lime)}.model-card input[type=range]{width:100%;accent-color:var(--orange)}.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:16px 0}.feature-list label{padding:10px;background:#edf4f1}.feature-list input{accent-color:var(--blue)}.parameter-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:17px;padding:17px;background:var(--white);border:1px solid var(--line)}.parameter-row label,.test-controls label{display:flex;align-items:center;gap:8px;font-weight:900}.parameter-row select,.test-controls select{padding:7px;border:1px solid var(--line);background:white}
.train-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:17px}.train-chart-card{padding:18px}.train-chart-card canvas{display:block;width:100%;height:auto}.chart-legend{display:flex;gap:16px;font-size:.75rem}.chart-legend span{display:flex;align-items:center;gap:6px}.chart-legend i{width:20px;height:3px}.train-line{background:var(--cyan)}.val-line{background:var(--orange)}.training-console{padding:22px}.epoch-readout small,.loss-readout small{display:block;color:var(--muted)}.epoch-readout b{font:900 2.2rem Georgia}.loss-readout{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:15px 0}.loss-readout>div{padding:10px;background:#f0ede5}.training-bar{height:9px;margin:16px 0;background:#d8d3c8}.training-bar i{display:block;width:0;height:100%;background:var(--lime)}.training-console .button{width:100%;margin:5px 0}.training-console p{font-size:.78rem;color:var(--muted)}.version-list{margin-top:17px;padding:20px}.version-list h3{margin-top:0}.version-item{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}.version-item b:first-child{color:var(--blue)}
.training-source{display:grid;grid-template-columns:190px 210px 1fr;gap:0;margin-bottom:17px;border:2px solid var(--ink);background:var(--white);box-shadow:7px 7px 0 var(--cyan)}.training-source>div{padding:17px 19px;border-right:1px solid var(--line)}.training-source>div:last-child{border-right:0}.training-source small,.training-source span{display:block;color:var(--muted);font-size:.68rem}.training-source b{display:block;margin:4px 0;font:900 1.45rem Georgia}.training-source-note{background:#eff5e2}.training-source-note strong{color:var(--blue)}.training-source-note p{margin:5px 0 0;color:var(--muted);font-size:.78rem}
.model-test-picker{display:grid;grid-template-columns:minmax(260px,.55fr) 1fr;gap:0;margin-bottom:14px;border:2px solid var(--ink);background:var(--white)}.model-test-picker label{padding:13px 16px;background:#eaf5f3}.model-test-picker small{display:block;margin-bottom:5px;color:var(--blue);font:900 .65rem Consolas,monospace}.model-test-picker select{width:100%;padding:9px;border:2px solid var(--ink);background:#fff;font-weight:900}.model-test-picker>div{display:flex;align-items:center;padding:13px 17px;color:var(--muted);font-size:.78rem}.test-controls{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:15px}.test-controls label{margin-left:auto}.test-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:17px}.test-game{position:relative;overflow:hidden;border:3px solid var(--ink);box-shadow:8px 8px 0 var(--ink)}.test-badge{position:absolute;left:12px;top:12px;padding:7px 10px;border-radius:99px;color:white;background:rgba(12,21,23,.78)}.evaluation-panel{padding:17px}.eval-metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px}.eval-metrics>div{padding:11px;background:#f0ede5}.eval-metrics small{display:block;color:var(--muted)}.eval-metrics b{font:900 1.15rem Georgia}.failure-box{margin-top:15px;padding-top:15px;border-top:3px solid var(--orange)}.failure-box>small{color:var(--orange);font:800 .65rem Consolas,monospace}.failure-box h3{margin:5px 0}.failure-box p{color:var(--muted);font-size:.82rem}.auto-diagnosis{margin:13px 0;padding:13px;border-left:5px solid var(--orange);background:#fff0d9}.auto-diagnosis strong{font-family:"Noto Serif SC",serif}.auto-diagnosis ol{margin:8px 0 0;padding-left:20px}.auto-diagnosis li{margin:6px 0;color:#4d4a43;font-size:.78rem}.diagnosis-status{display:inline-block;margin-left:7px;padding:3px 7px;border-radius:99px;color:white;background:var(--orange);font:800 .65rem Consolas,monospace}.failure-box label{display:block;font-weight:900}.failure-box textarea{width:100%;min-height:90px;margin-top:5px;background:#f5f1e7}
.report-sheet{padding:27px}.report-sheet h3{font-family:"Noto Serif SC",serif;font-size:1.8rem}.report-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.report-stat{padding:13px;border-top:4px solid var(--cyan);background:#f0ede5}.report-stat small{display:block;color:var(--muted)}.report-stat b{font:900 1.35rem Georgia}.report-section{margin-top:22px;padding-top:17px;border-top:1px solid var(--line)}.report-section h4{margin:0 0 6px}.report-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:17px;padding:20px}.report-fields textarea{min-height:120px}.presentation-checks{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:17px;padding:20px}.presentation-checks h3{grid-column:1/-1;margin:0}.presentation-checks label{padding:10px;background:#f0ede5}.presentation-checks input{accent-color:var(--green)}
.report-failure{padding:17px;border:2px solid #d98b72!important;background:#fff0e9}.report-failure h4{color:#9d2f1e}.report-failure li{margin:8px 0;color:#4d4541}
footer{display:flex;justify-content:space-between;gap:20px;padding:35px max(24px,calc((100% - 1380px)/2));color:#bec9c7;background:var(--night)}footer p{margin:0}footer a{color:var(--lime)}
@media(max-width:1050px){.hero-grid{grid-template-columns:1fr}.hero-visual{max-width:780px;width:100%}.workspace{grid-template-columns:1fr}.project-nav{position:relative;top:auto}.project-nav ol{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.collection-layout,.clean-layout,.train-layout,.test-grid{grid-template-columns:1fr}.training-source{grid-template-columns:1fr 1fr}.training-source-note{grid-column:1/-1;border-top:1px solid var(--line)}.metric-stack{grid-template-columns:repeat(4,1fr)}.test-controls label{margin-left:0}}
@media(max-width:760px){.topbar-inner{padding-inline:14px}.project-chip,.save-state{display:none}.hero{padding:72px 15px}.hero h1{font-size:clamp(3.7rem,17vw,5.4rem)}.hero-visual{min-height:370px;box-shadow:8px 8px 0 var(--cyan)}.pipeline-card{align-items:flex-start;flex-direction:column}.pipeline-card i{transform:rotate(90deg)}.workspace{padding:55px 15px 80px}.project-nav ol{grid-template-columns:repeat(2,1fr)}.stage-heading{grid-template-columns:1fr}.stage-stamp{display:none}.brief-grid,.model-grid,.report-fields{grid-template-columns:1fr}.data-summary,.metric-stack,.training-source{grid-template-columns:1fr}.training-source-note{grid-column:auto}.training-source>div{border-right:0;border-bottom:1px solid var(--line)}.feature-list{grid-template-columns:1fr}.stage-footer{align-items:stretch;flex-direction:column}.stage-footer .button{width:100%}.report-grid{grid-template-columns:1fr 1fr}.presentation-checks{grid-template-columns:1fr}.presentation-checks h3{grid-column:1}.game-toolbar span{width:100%;margin:0}.top-action{padding-inline:8px}}
@media(max-width:480px){.brand span:last-child{display:none}.hero-actions .button{width:100%}.hero-facts{display:grid}.hero-visual{min-height:310px}.project-nav ol{grid-template-columns:1fr}.data-summary,.metric-stack,.report-grid{grid-template-columns:1fr}.split-panel{grid-template-columns:1fr}.split-panel>div{border-right:0;border-bottom:1px solid var(--ink)}.split-panel>div:last-child{border-bottom:0}.live-decision{grid-template-columns:1fr}.live-decision i{transform:rotate(90deg)}.eval-metrics{grid-template-columns:1fr}footer{flex-direction:column}}
.button:disabled{opacity:.45;cursor:not-allowed;transform:none}.action-chip{display:inline-block;padding:3px 7px;border-radius:99px;font-weight:900}.action-1{color:#122516;background:var(--lime)}.action-0{color:#35403f;background:#dce2df}.empty-cell{text-align:center!important;color:var(--muted);padding:30px}.model-version{display:grid;grid-template-columns:1fr auto;align-items:stretch;border-top:1px solid var(--line)}.model-select{width:100%;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 10px;border:0;border-left:5px solid transparent;background:transparent;text-align:left;cursor:pointer}.model-select:hover,.model-version.is-current .model-select{border-left-color:var(--lime);background:#edf4f1}.model-version span,.model-version small{display:block}.model-version small{margin-top:3px;color:var(--muted)}.model-select>b{font:900 1.15rem Georgia}.model-delete{align-self:center;margin:8px;padding:8px 10px;border:1px solid #d7b4ad;color:#a52d1f;background:#fff6f4;font-weight:900;cursor:pointer}.model-delete:hover{color:#fff;background:#b83b2b}.empty-version{color:var(--muted)}.toast{position:fixed;z-index:1000;right:24px;bottom:24px;max-width:min(420px,calc(100vw - 32px));padding:14px 17px;border:2px solid var(--ink);border-left:7px solid var(--cyan);background:var(--white);box-shadow:7px 7px 0 var(--ink);font-weight:800;opacity:0;transform:translateY(12px);transition:.22s}.toast.show{opacity:1;transform:none}.toast-warn{border-left-color:var(--orange)}.toast-success{border-left-color:var(--lime)}
.controller-explain{display:grid;grid-template-columns:1fr 58px 1fr;align-items:stretch;margin-bottom:18px}.controller-card{padding:19px;border:2px solid var(--ink);background:var(--white)}.controller-card small{font:900 .65rem Consolas,monospace;letter-spacing:.1em}.controller-card h3{margin:7px 0;font-family:"Noto Serif SC",serif}.controller-card p{margin:0 0 12px;color:var(--muted);font-size:.82rem}.controller-card code{display:block;padding:9px;background:var(--night);color:var(--lime);font-weight:900}.rule-controller{border-top:7px solid var(--orange)}.rule-controller small{color:var(--orange)}.learned-controller{border-top:7px solid var(--cyan)}.learned-controller small{color:var(--blue)}.versus{display:grid;place-items:center;margin-block:25px;color:white;background:var(--ink);font:900 1.1rem Georgia}.active-controller{display:flex;align-items:center;gap:14px;margin:14px 0;padding:12px 16px;border-left:7px solid var(--orange);background:var(--night);color:white}.active-controller span{padding:4px 8px;border-radius:99px;color:var(--ink);background:var(--orange);font-size:.72rem;font-weight:900}.active-controller.is-model{border-left-color:var(--cyan)}.active-controller.is-model span{background:var(--cyan)}.decision-monitor{display:grid;grid-template-columns:1fr auto 1.25fr auto .65fr;align-items:center;gap:10px;margin-top:11px;padding:13px 15px;color:white;background:var(--night);border-left:6px solid var(--cyan)}.decision-monitor small{display:block;color:#93aaa7;font-size:.65rem}.decision-monitor b{font-size:.78rem}.decision-monitor i{color:var(--lime);font-style:normal}.decision-monitor>div:last-child b{color:var(--lime);font-size:1rem}.comparison-board{margin-top:18px;border:3px solid var(--ink);background:var(--white);box-shadow:8px 8px 0 var(--lime)}.comparison-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 19px;border-bottom:2px solid var(--ink)}.comparison-head small{color:var(--blue);font:900 .65rem Consolas,monospace}.comparison-head h3{margin:3px 0;font-family:"Noto Serif SC",serif}.comparison-grid{display:grid;grid-template-columns:1fr 1fr 1.35fr}.comparison-grid article{padding:17px 19px;border-right:1px solid var(--line)}.comparison-grid article:last-child{border:0}.comparison-grid small,.comparison-grid span{display:block;color:var(--muted);font-size:.7rem}.comparison-grid b{display:block;margin:6px 0;font:900 1.35rem Georgia}.compare-result{background:#eff5e2}
@media(max-width:760px){.controller-explain{grid-template-columns:1fr}.versus{height:42px;margin:0}.decision-monitor,.comparison-grid{grid-template-columns:1fr}.decision-monitor i{transform:rotate(90deg)}.comparison-grid article{border-right:0;border-bottom:1px solid var(--line)}.comparison-head{align-items:stretch;flex-direction:column}.active-controller{align-items:flex-start;flex-direction:column}}
.single-model{grid-template-columns:1fr}.student-model-explain{margin-bottom:17px;padding:19px 22px;border:3px solid var(--ink);border-top:8px solid var(--cyan);background:var(--white);box-shadow:7px 7px 0 var(--cyan)}.student-model-explain small{color:var(--blue);font:900 .65rem Consolas,monospace;letter-spacing:.1em}.student-model-explain h3{margin:5px 0;font-family:"Noto Serif SC",serif}.student-model-explain p{margin:0 0 10px;color:var(--muted)}.student-model-explain code{display:block;padding:10px;background:var(--night);color:var(--lime);font-weight:900}.data-gap-bars{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:12px}.data-gap-bars>div{padding:8px 10px;border:1px solid var(--line);background:#fff}.data-gap-bars span,.data-gap-bars b{display:block}.data-gap-bars span{color:var(--muted);font-size:.65rem}.data-gap-bars b{margin-top:2px;font-size:.78rem}.data-gap-bars b.is-ready{color:var(--green)}.data-gap-bars b.is-short{color:#b33924}.collect-more-link{display:inline-block;margin-top:10px;color:var(--blue);font-weight:900}.training-source.is-blocked{box-shadow:7px 7px 0 var(--orange)}.training-source.is-blocked .training-source-note{background:#fff0e4}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
.button.danger{border-color:#9d2f1e;color:#9d2f1e;background:#fff3ef}.button.danger:hover,.button.danger:focus-visible{color:white;background:#9d2f1e;outline-color:#f5a087}.data-quality{margin-bottom:14px;padding:14px 17px;border-left:7px solid var(--cyan);background:var(--white);box-shadow:4px 4px 0 var(--ink)}.data-quality strong{font-family:"Noto Serif SC",serif}.data-quality p{margin:3px 0 0;color:var(--muted);font-size:.8rem}.data-quality.is-warn{border-left-color:var(--orange);background:#fff0e4}.data-quality.is-ready{border-left-color:var(--green);background:#eef6df}.data-summary{grid-template-columns:repeat(5,1fr)}.clean-layout{grid-template-columns:minmax(0,1fr) 330px}.loss-readout{grid-template-columns:1fr 1fr}.loss-readout>div:nth-child(n+3){border-top:3px solid var(--cyan)}
.reset-data-link{display:block;margin-top:8px;padding:0;border:0;border-bottom:1px solid currentColor;color:#9d2f1e;background:transparent;font-size:.75rem;font-weight:900;cursor:pointer}
@media(max-width:1050px){.data-summary{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.data-summary{grid-template-columns:1fr}}
@media print{.topbar,.hero,.project-nav,.stage-panel:not([data-panel=report]),footer,.stage-footer,.report-fields,.presentation-checks{display:none!important}.workspace{display:block;padding:0}.stage-panel[data-panel=report]{display:block!important}.report-sheet{box-shadow:none;border:0}}
