:root{--paper:#F5F8FC;--surface:#FFFFFF;--ink:#0E1B33;--muted:#5B6B86;--line:#DCE4F0;--brand:#006CD6;--brand-deep:#0033A0;--brand-tint:#E6F2FF;--on-brand:#FFFFFF;--signal:#B34A00;--signal-tint:#FFF0E6;--good:#1F7A45;--good-tint:#E5F5EC;--bad:#B42318;--bad-tint:#FDECEA;--shadow:0 1px 3px rgba(14,27,51,.07);--shadow-lg:0 14px 40px rgba(14,27,51,.1);color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--paper:#0A1020;--surface:#121B30;--ink:#E3EAF6;--muted:#93A3BE;--line:#243150;--brand:#4DAEFF;--brand-deep:#8FCBFF;--brand-tint:#132A47;--on-brand:#08111F;--signal:#FF9A55;--signal-tint:#3A2214;--good:#5FD08F;--good-tint:#12301F;--bad:#FF7A70;--bad-tint:#3A1616;--shadow:0 1px 3px rgba(0,0,0,.45);--shadow-lg:0 14px 40px rgba(0,0,0,.5);color-scheme:dark}}:root[data-theme=dark]{--paper:#0A1020;--surface:#121B30;--ink:#E3EAF6;--muted:#93A3BE;--line:#243150;--brand:#4DAEFF;--brand-deep:#8FCBFF;--brand-tint:#132A47;--on-brand:#08111F;--signal:#FF9A55;--signal-tint:#3A2214;--good:#5FD08F;--good-tint:#12301F;--bad:#FF7A70;--bad-tint:#3A1616;--shadow:0 1px 3px rgba(0,0,0,.45);--shadow-lg:0 14px 40px rgba(0,0,0,.5);color-scheme:dark}:root,:root[data-theme]{--bg: var(--paper);--bg2: color-mix(in srgb, var(--paper) 55%, var(--line));--panel: var(--surface);--line2: color-mix(in srgb, var(--line) 72%, var(--muted));--text: var(--ink);--dim: var(--muted);--faint: color-mix(in srgb, var(--muted) 72%, var(--paper));--accent: var(--brand);--accent-ink: var(--on-brand);--warn: var(--signal);--danger: var(--bad);--blue: var(--brand);--r1:#0033A0;--r2:#0085FF;--r3:#00D2FF;--r4:#FFD000;--r5:#FF6A00;--r6:#FF007F;--r7:#7928CA;--ramp: linear-gradient(90deg, var(--r1), var(--r2), var(--r3), var(--r4), var(--r5), var(--r6), var(--r7));--night: radial-gradient(120% 90% at 50% 0%, #0B2A63 0%, #081733 45%, #050C1C 100%);--night-ink: #EAF1FF;--night-muted: #AFC2E0;--night-line: #1E3566;--mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--sans: "Public Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--display: "Archivo", "Public Sans", system-ui, sans-serif}*{box-sizing:border-box}[hidden]{display:none!important}html,body{margin:0;background:var(--bg);color:var(--text);font:15px/1.6 var(--sans)}h1,h2,h3,.brand{font-family:var(--display)}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{line-height:1.2;margin:0 0 .5em}h1{font-size:clamp(26px,3.4vw,38px);font-weight:800;letter-spacing:-.02em}h2{font-size:19px;font-weight:700;color:var(--brand-deep)}h3{font-size:15px}p{margin:0 0 .8em}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.muted{color:var(--dim)}.lead{color:var(--dim);font-size:16px;max-width:70ch}.eyebrow{font:700 12px var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--signal);margin-bottom:6px}button{font:inherit;color:inherit}select,input[type=search],input[type=number]{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:7px 10px}#app{min-height:100vh;display:flex;flex-direction:column}.appbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:16px;padding:10px 20px;background:var(--surface);border-bottom:1px solid var(--line);box-shadow:var(--shadow);flex-wrap:wrap}.brand{display:flex;align-items:center;gap:8px;font-weight:800;font-size:19px;letter-spacing:-.01em;color:var(--ink)}.brand:hover{text-decoration:none}.brand-word{background:var(--ramp);-webkit-background-clip:text;background-clip:text;color:transparent}.brand-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:linear-gradient(135deg,#0033a0,#006cd6);color:#fff}.brand-mark svg{width:20px;height:20px}.topnav{display:flex;gap:2px;flex-wrap:wrap}.navlink{padding:6px 11px;border-radius:8px;color:var(--muted);font-size:14px;font-weight:600}.navlink:hover{color:var(--ink);background:var(--bg2);text-decoration:none}.navlink[aria-current=page]{color:var(--brand-deep);background:var(--brand-tint)}.soon{margin-left:6px;font:600 9px var(--mono);color:var(--signal);border:1px solid color-mix(in srgb,var(--signal) 40%,transparent);border-radius:4px;padding:0 4px;vertical-align:2px}.edu{margin-left:auto;font:700 11px var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--signal);background:var(--signal-tint);padding:4px 10px;border-radius:999px}.theme-toggle{display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden}.theme-toggle button{font:600 12px var(--sans);border:0;padding:6px 10px;cursor:pointer;background:var(--surface);color:var(--muted)}.theme-toggle button[aria-pressed=true]{background:var(--brand);color:var(--on-brand)}.page{flex:1;width:100%;max-width:1320px;margin:0 auto;padding:24px 20px 60px;outline:none}.appfoot{color:var(--faint);font-size:12px;text-align:center;padding:18px 20px 26px;border-top:1px solid var(--line)}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--line);border-radius:10px;color:var(--brand-deep);background:var(--surface);cursor:pointer;font:700 14px var(--display)}.btn:hover{border-color:var(--brand);text-decoration:none}.btn.primary,button.primary{background:var(--brand);color:var(--on-brand);border-color:var(--brand);font:700 14px var(--display)}button.primary{padding:10px 18px;border:0;border-radius:10px;cursor:pointer}button.primary:disabled{opacity:.45;cursor:not-allowed}.btn.grad{background:linear-gradient(90deg,#0033a0,#006cd6);color:#fff;border-color:transparent}.chip-btn{padding:4px 10px;border:1px solid var(--line);border-radius:999px;font-size:13px;color:var(--muted);background:var(--surface);cursor:pointer}.chip-btn[aria-pressed=true]{color:var(--on-brand);background:var(--brand);border-color:var(--brand)}.pill{display:inline-flex;align-items:center;font:700 11px var(--display);letter-spacing:.06em;text-transform:uppercase;padding:3px 9px;border-radius:999px;background:var(--brand-tint);color:var(--brand-deep)}.pill.signal{background:var(--signal-tint);color:var(--signal)}.pill.good{background:var(--good-tint);color:var(--good)}.cid{display:inline-block;font:600 11px var(--mono);color:var(--brand-deep);background:var(--brand-tint);border-radius:6px;padding:1px 6px;margin-right:8px}.gate{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:16px;background:color-mix(in srgb,#050C1C 70%,transparent);backdrop-filter:blur(4px)}.gate-card{width:min(560px,100%);background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:28px;box-shadow:var(--shadow-lg)}.disclaimer{border:1px solid color-mix(in srgb,var(--signal) 40%,transparent);background:var(--signal-tint);border-radius:10px;padding:12px 14px;margin:14px 0}.disclaimer strong{display:block;color:var(--signal);font:700 12px var(--display);letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px}.disclaimer p{margin:0}.ack{display:flex;gap:10px;align-items:flex-start;margin:10px 0 18px;cursor:pointer}.ack input{margin-top:5px;width:18px;height:18px;accent-color:var(--brand)}.page-head{margin-bottom:18px}.card-sec{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:16px 18px;box-shadow:var(--shadow)}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;margin-top:18px}.tile{display:block;padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:16px;color:var(--ink);box-shadow:var(--shadow)}.tile:hover{border-color:var(--brand);text-decoration:none}.tile h2{margin-bottom:6px}.tile p{color:var(--dim);margin:0;font-size:14px}.tile.disabled{opacity:.6}.hero{display:grid;grid-template-columns:1fr 1.1fr;gap:28px;align-items:center}.hero-cta{display:flex;gap:10px;flex-wrap:wrap}.hero-side{background:var(--night);border-radius:16px;padding:10px;box-shadow:var(--shadow-lg)}.hero-side .viewport{height:420px}.viewer-layout{display:grid;grid-template-columns:250px minmax(0,1fr) 300px;gap:14px;align-items:start}.case-list{display:flex;flex-direction:column;gap:4px;max-height:76vh;overflow-y:auto}.case-list .group{font:700 11px var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--dim);margin:10px 0 4px}.case-item{display:block;padding:7px 10px;border-radius:10px;color:var(--ink);font-size:14px;border:1px solid transparent}.case-item:hover{background:var(--bg2);text-decoration:none}.case-item[aria-current=true]{background:var(--brand-tint);color:var(--brand-deep);border-color:color-mix(in srgb,var(--brand) 35%,transparent);font-weight:600}.stage{display:flex;flex-direction:column;gap:8px;min-width:0}.viewport{position:relative;width:100%;height:min(74vh,780px);background:#050c1c;border-radius:14px;overflow:hidden;touch-action:none;user-select:none;outline:none;cursor:grab}.viewport:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 60%,transparent)}.viewport[data-mode=wl]{cursor:ns-resize}.viewport[data-dragging=pan]{cursor:grabbing}.viewport[data-dragging=wl]{cursor:move}.vp-canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.vp-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}.hud{position:absolute;font:500 12px/1.45 var(--mono);color:#eaf1ff;text-shadow:0 1px 2px #000,0 0 4px #000;pointer-events:none;white-space:pre}.hud.tl{top:8px;left:10px}.hud.tr{top:8px;right:10px;text-align:right}.hud.bl{bottom:8px;left:10px}.hud.br{bottom:8px;right:10px;text-align:right}.attrib{font-size:12px;color:var(--dim)}.attrib a{color:var(--dim);text-decoration:underline}.side{display:flex;flex-direction:column;gap:12px}.tools{display:flex;flex-direction:column;gap:10px}.tool-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.tool-label{font:700 10px var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--dim);width:100%}.slider{display:grid;grid-template-columns:22px 1fr 58px;gap:8px;align-items:center;font:600 12px var(--mono);color:var(--dim)}.slider input[type=range]{width:100%;accent-color:var(--brand)}.slider input[type=number]{width:58px;padding:3px 6px;font-size:12px}.histo-wrap{display:flex;flex-direction:column;gap:4px}.histo{width:100%;height:96px;background:#050c1c;border-radius:10px;cursor:ew-resize;touch-action:none}.h-bars{fill:#4d7bb8;opacity:.8}.h-band{fill:#4daeff2e;stroke:#4daeff;stroke-width:1}.h-curve{fill:none;stroke:#ffd000;stroke-width:1.6;vector-effect:non-scaling-stroke}.h-band{vector-effect:non-scaling-stroke}.histo-axis{display:flex;justify-content:space-between;font-size:11px;color:var(--dim)}.h-lab{fill:#afc2e0;font:10px var(--mono)}.histo-cap{font-size:11px;color:var(--dim)}.kbd-help{font-size:12px;color:var(--dim);line-height:1.7}kbd{font:600 11px var(--mono);border:1px solid var(--line);border-bottom-width:2px;border-radius:5px;padding:0 5px;background:var(--surface);color:var(--ink)}.case-info h3{margin-top:10px}.case-info ul{padding-left:18px;margin:4px 0}.ov{fill:none;stroke:#ffd000;stroke-width:2.2px;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.ov.sign{stroke:#00d2ff}.ov.step{stroke:#ff9a3d}.ov.roi{stroke:#ff007f;stroke-dasharray:6 4}.ov.finding{stroke:#ffd000}.ov.draw{stroke-dasharray:1;stroke-dashoffset:1;animation:draw-on .9s ease-out forwards}.ov.roi.draw{animation:none;stroke-dasharray:6 4;stroke-dashoffset:0}@keyframes draw-on{to{stroke-dashoffset:0}}.ov-label{fill:#fff;font-family:var(--mono);font-weight:600;paint-order:stroke;stroke:#050c1c;stroke-width:calc(3px * var(--px, 1))}.layer.sign .ov-label{fill:#9be9ff}.layer.step .ov-label{fill:#ffd2a8}.layer.finding .ov-label{fill:#ffe680}@media (prefers-reduced-motion: reduce){.ov.draw{animation:none;stroke-dasharray:none;stroke-dashoffset:0}}.lab-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:14px;align-items:start}.lab-grid .viewport{height:460px}.formula{font:500 14px var(--mono);background:var(--bg2);border-radius:10px;padding:10px 12px;overflow-x:auto;white-space:pre}.challenge{display:flex;flex-direction:column;gap:6px}.challenge li{margin:2px 0}.found{color:var(--good);font-weight:700}.credits td,.credits th{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:top;font-size:14px}.credits th{font:700 11px var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--dim);background:var(--paper)}@media (max-width: 1100px){.viewer-layout{grid-template-columns:1fr}.case-list{max-height:none;flex-direction:row;flex-wrap:wrap}.case-list .group{width:100%}}@media (max-width: 900px){.hero,.lab-grid{grid-template-columns:1fr}.edu{display:none}.viewport{height:62vh}}.crumbs{font-size:13px;color:var(--dim);margin-bottom:6px}.row-between{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.fw-grid{display:grid;grid-template-columns:230px minmax(0,1fr) 360px;gap:14px;align-items:start}.fw-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.fw-step{width:100%;display:flex;gap:8px;align-items:center;text-align:left;padding:7px 9px;border-radius:10px;border:1px solid transparent;background:transparent;cursor:pointer;font-size:14px;color:var(--ink)}.fw-step:hover{background:var(--bg2)}.fw-step[aria-current=true]{background:var(--brand-tint);color:var(--brand-deep);border-color:color-mix(in srgb,var(--brand) 35%,transparent);font-weight:600}.fw-n{flex:none;display:grid;place-items:center;width:22px;height:22px;border-radius:999px;font:600 11px var(--mono);background:var(--bg2);color:var(--muted)}.fw-step[data-done=true] .fw-n{background:var(--good-tint);color:var(--good)}.fw-panel ul{padding-left:18px;margin:4px 0 10px}.fw-panel h3{margin:12px 0 4px}.fw-normal{border-left:3px solid var(--good);background:var(--good-tint);border-radius:0 10px 10px 0;padding:4px 12px;margin:8px 0}.fw-patterns li{margin:4px 0}.fw-patterns .cid{margin-left:8px}.fw-nav{display:flex;justify-content:space-between;gap:8px;margin-top:12px}.fw-done{color:var(--good);font-weight:700;margin-top:10px}.fw-vp{height:min(72vh,760px)}.case-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.case-card{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden;color:var(--ink);box-shadow:var(--shadow)}.case-card:hover{border-color:var(--brand);text-decoration:none}.case-card img{width:100%;aspect-ratio:1;object-fit:cover;background:#050c1c;display:block}.cc-body{display:flex;flex-direction:column;gap:4px;padding:10px 12px 12px;font-size:14px}.cc-body .pill{align-self:flex-start}.lib-bar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}.seg-tabs{display:flex;gap:6px;flex-wrap:wrap}.lib-bar input[type=search]{min-width:260px}.case-title{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap}.case-grid2{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:14px;align-items:start}.tools-box summary{cursor:pointer;font-weight:600}.tools-box[open] summary{margin-bottom:10px}.find-list,.sign-list{display:flex;flex-direction:column;gap:6px;margin-top:8px}.find-btn{display:flex;gap:10px;align-items:flex-start;text-align:left;padding:9px 11px;border:1px dashed var(--line);border-radius:10px;background:var(--paper);cursor:pointer;font-size:14px;color:var(--muted)}.find-btn[aria-pressed=true]{border-style:solid;border-color:#e0b800;background:color-mix(in srgb,#FFD000 12%,var(--surface));color:var(--ink)}.fi-n{flex:none;display:grid;place-items:center;width:22px;height:22px;border-radius:999px;font:600 11px var(--mono);background:var(--bg2)}.sign-btn{display:flex;flex-direction:column;gap:2px;text-align:left;padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:var(--surface);cursor:pointer;font-size:13px;color:var(--muted)}.sign-btn b{color:var(--ink);font-size:14px}.sign-btn[aria-pressed=true]{border-color:#00a8cc;background:color-mix(in srgb,#00D2FF 12%,var(--surface))}.case-text ul{padding-left:18px;margin:4px 0 10px}.sign-sec{margin-bottom:22px}.sec-h{margin:22px 0 10px}.mimic{margin-bottom:12px}.mimic ul{padding-left:18px}.mimic-vp{height:440px;margin-top:10px}.mimic-view .tool-row{margin-top:8px}@media (max-width: 1150px){.fw-grid,.case-grid2{grid-template-columns:1fr}.fw-steps{flex-direction:row;flex-wrap:wrap}.fw-steps li{flex:1 1 180px}}.dicom-bar{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:6px;background:#0b1a38;border-radius:12px}.tb-group{display:flex;gap:2px;padding-right:6px;border-right:1px solid #1E3566}.tb-group:last-of-type{border-right:0}.tb{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:44px;padding:4px 5px;border:1px solid transparent;border-radius:8px;background:transparent;color:#afc2e0;cursor:pointer;font:600 10px var(--sans)}.tb svg{width:20px;height:20px}.tb:hover{background:#132a57;color:#eaf1ff}.tb[aria-pressed=true]{background:#4daeff;color:#08111f}.bar-hint{flex:1 1 200px;color:#afc2e0;font-size:12px;padding:0 6px}.viewport[data-tool=length],.viewport[data-tool=angle],.viewport[data-tool=cobb],.viewport[data-tool=ctr],.viewport[data-tool=ratio],.viewport[data-tool=box],.viewport[data-tool=arrow]{cursor:crosshair}.mt{fill:none;stroke:#7cffb2;stroke-width:2px;vector-effect:non-scaling-stroke}.mt.second{stroke:#ffd000}.mt.perp{stroke-dasharray:5 4;opacity:.8}.mt.box{stroke:#ff7ac6}.mt.arrow{stroke:#ff9a3d}.mt.sel{stroke-width:3px}.mt.pending{stroke-dasharray:6 4}.handle{fill:#fff;stroke:#050c1c;stroke-width:1.5px;vector-effect:non-scaling-stroke;pointer-events:auto;cursor:move}.handle.pending{pointer-events:none}.mt-label{fill:#fff;font-family:var(--mono);font-weight:600;paint-order:stroke;stroke:#050c1c;pointer-events:auto;cursor:pointer}.mt-label.sel{fill:#7cffb2}.measure-list{display:flex;flex-direction:column;gap:4px}.ml-row{display:grid;grid-template-columns:2em 1fr auto auto;gap:8px;align-items:center;font-size:13px;padding:3px 6px;border-radius:8px}.ml-row[data-sel=true]{background:var(--brand-tint)}.ml-row b{color:var(--brand-deep)}.setup .seg-tabs{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-bottom:12px}.setup .seg-tabs .tool-label{width:100%}.arena-head{position:sticky;top:62px;z-index:5;display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:8px 12px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);margin-bottom:12px;font-size:14px;color:var(--dim)}.arena-head b{color:var(--ink)}.a-case{color:var(--brand-deep);font:700 15px var(--display)}.tbar{flex:1;min-width:120px;height:6px;background:var(--bg2);border-radius:3px;overflow:hidden}.tbar-fill{height:100%;width:100%;background:var(--brand);transition:width .1s linear}.tbar-fill[data-low=true]{background:var(--bad)}.t-text{min-width:38px;text-align:right;color:var(--ink)}.sp-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:14px;align-items:start}.options{display:flex;flex-direction:column;gap:8px;margin:8px 0}.option{text-align:left;padding:10px 12px;background:var(--surface);border:1px solid var(--line);border-radius:12px;color:var(--ink);cursor:pointer;font-size:14px;display:flex;gap:10px;align-items:center}.option:hover:not(:disabled){border-color:var(--brand);background:var(--brand-tint)}.option[aria-pressed=true]{border-color:var(--brand);background:var(--brand-tint);font-weight:600}.option kbd{flex:none}.option[data-state=right]{border-color:var(--good);background:var(--good-tint)}.option[data-state=wrong]{border-color:var(--bad);background:var(--bad-tint)}.option[data-state=other]{opacity:.55}.option:disabled{cursor:default}.box-note{font-size:13px}.feedback{border:1px solid var(--line);border-radius:16px;padding:14px 16px;background:var(--surface);box-shadow:var(--shadow)}.feedback[data-ok=true]{border-color:var(--good);background:var(--good-tint)}.feedback[data-ok=false]{border-color:var(--bad)}.fb-head{display:flex;justify-content:space-between;gap:10px;font:700 16px var(--display);margin-bottom:6px}.feedback[data-ok=true] .fb-head{color:var(--good)}.feedback[data-ok=false] .fb-head{color:var(--bad)}.loc.ok{color:var(--good);font-weight:600}.loc.bad{color:var(--bad);font-weight:600}.criteria{padding-left:18px;margin:6px 0;font-size:14px}.pearl{font-size:14px;border-left:3px solid var(--signal);background:var(--signal-tint);padding:6px 10px;border-radius:0 8px 8px 0}.fb-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}.sum-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-bottom:16px}.ro{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:8px 12px}.review-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.review-list li[data-ok=false] a{color:var(--bad)}@media (max-width: 1100px){.sp-layout{grid-template-columns:1fr}}.q-text{font-size:17px;margin:10px 0 4px}.hint-drawer{border:1px solid var(--line);border-radius:16px;padding:10px 14px;background:var(--surface);margin-bottom:12px}.hint-drawer summary{cursor:pointer;font-weight:600;display:flex;justify-content:space-between;align-items:center}.hint-drawer .potential{font-size:12px;color:var(--muted);font-weight:400}.hint{font-size:14px;border-left:3px solid var(--brand);background:var(--brand-tint);padding:6px 10px;border-radius:0 8px 8px 0;margin:8px 0}.explain{color:var(--muted)}.why{padding-left:18px;margin:8px 0;font-size:14px;display:flex;flex-direction:column;gap:4px}.why li[data-picked=true]{color:var(--bad)}.pool-count{margin:4px 0 12px}.type-bars{display:flex;flex-direction:column;gap:6px}.type-bar{display:grid;grid-template-columns:160px 1fr 50px;gap:10px;align-items:center;font-size:14px}.type-bar .bar{height:8px;background:var(--line);border-radius:99px;overflow:hidden}.type-bar .fill{display:block;height:100%;background:var(--brand)}.review-qs{display:flex;flex-direction:column;gap:6px}.review-q{border:1px solid var(--line);border-radius:12px;padding:8px 12px}.review-q summary{cursor:pointer}.review-q[data-ok=false] summary{color:var(--bad)}.review-q[open]{background:var(--surface)}.chip{padding:2px 10px;border-radius:999px;font-size:12px;background:var(--brand-tint);color:var(--brand-deep);border:1px solid var(--line)}.analytics .card-sec{margin-bottom:14px}.analytics h3{font-size:15px;margin:14px 0 6px}.table-wrap{overflow-x:auto}table.stats{width:100%;border-collapse:collapse;font-size:14px}table.stats th,table.stats td{text-align:left;padding:7px 10px;border-bottom:1px solid var(--line);vertical-align:middle}table.stats thead th{font:600 11px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}table.stats tr[data-due=true] th a{color:var(--signal);font-weight:700}.abar{display:flex;align-items:center;gap:8px;min-width:150px}.abar-track{flex:1;height:8px;background:var(--line);border-radius:99px;overflow:hidden}.abar-fill{display:block;height:100%;border-radius:99px;background:var(--brand)}.abar-fill[data-level=good]{background:var(--good)}.abar-fill[data-level=low]{background:var(--bad)}.abar-label{font-size:12px;color:var(--muted);min-width:64px}.two-col{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px}.trend{width:100%;height:auto}.trend .grid{stroke:var(--line)}.trend .axis{font:11px var(--mono);fill:var(--muted)}.trend .line{fill:none;stroke:var(--brand);stroke-width:2.5;stroke-linejoin:round}.type-bar .abar{min-width:0}table.cmatrix{border-collapse:collapse;font-size:13px}table.cmatrix th,table.cmatrix td{border:1px solid var(--line);padding:6px 8px;text-align:center}table.cmatrix tbody th{text-align:left;white-space:nowrap;font-weight:600}table.cmatrix th.col{vertical-align:bottom;height:130px}table.cmatrix th.col span{writing-mode:vertical-rl;transform:rotate(180deg);white-space:nowrap;font-weight:600}table.cmatrix td{min-width:34px;font-family:var(--mono)}table.cmatrix td.diag{background:var(--good-tint);color:var(--good);font-weight:700}table.cmatrix td.err{background:color-mix(in srgb,var(--bad) calc(var(--heat) * 70%),transparent);color:var(--ink);font-weight:700}.mixups,.weak{padding-left:20px;font-size:14px}.reset-box{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:14px;margin-top:8px}.chip-btn.danger{color:#fff;background:var(--bad);border-color:var(--bad)}.review-banner{font-size:14px;border-left:3px solid var(--signal);background:var(--signal-tint);padding:8px 12px;border-radius:0 8px 8px 0}.ro .rl{font:600 11px var(--mono);letter-spacing:.08em;color:var(--muted)}.ro .rv{font-size:22px;font-weight:700;color:var(--ink)}.ro .ru{font-size:12px;color:var(--muted)}
