@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(./barlow-condensed-latin-500-normal-BgYH2mbd.woff2)format("woff2"),url(./barlow-condensed-latin-500-normal-HIEiP5Ov.woff)format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(./barlow-condensed-latin-600-normal-DepVgxBB.woff2)format("woff2"),url(./barlow-condensed-latin-600-normal-BFJEwTuo.woff)format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(./barlow-condensed-latin-700-normal-v1xN8_Wq.woff2)format("woff2"),url(./barlow-condensed-latin-700-normal-Dmwat-ge.woff)format("woff")}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:400;src:url(./barlow-latin-400-normal-qiz4-Cze.woff2)format("woff2"),url(./barlow-latin-400-normal-fsAxiSwU.woff)format("woff")}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:500;src:url(./barlow-latin-500-normal-BPAOfeC8.woff2)format("woff2"),url(./barlow-latin-500-normal-C1h8hMer.woff)format("woff")}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:600;src:url(./barlow-latin-600-normal-DILqtrty.woff2)format("woff2"),url(./barlow-latin-600-normal-CNwfPWQD.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(./ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(./ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(./ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2)format("woff2"),url(./ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff)format("woff")}:root{--ink:#1b1d21;--ink-soft:#45484d;--paper:#f4f5f3;--card:#fff;--line:#d8dad5;--line-soft:#e7e8e4;--zone:#e8650c;--zone-dark:#c24f03;--steel:#29566f;--steel-dark:#1d4054;--pass:#2e7d4f;--fail:#b3402a;--amber:#b8860b;--shadow:0 1px 2px #1b1d210f, 0 6px 20px #1b1d210f;--shadow-lg:0 2px 6px #1b1d2114, 0 18px 44px #1b1d211f;--display:"Barlow Condensed", "Arial Narrow", sans-serif;--body:"Barlow", system-ui, sans-serif;--mono:"IBM Plex Mono", ui-monospace, monospace}*{box-sizing:border-box}html,body{background:var(--paper);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;margin:0;padding:0;font-size:16px;line-height:1.55}#root{min-height:100vh}button{cursor:pointer;font-family:inherit}a{color:var(--steel)}.hazard{background:repeating-linear-gradient(-45deg, var(--zone) 0 16px, var(--ink) 16px 32px);height:8px}.hazard-thin{height:5px}.shell{max-width:1000px;margin:0 auto;padding:0 20px 80px}.topbar{z-index:20;background:var(--ink);color:var(--paper);position:sticky;top:0}.topbar-inner{align-items:center;gap:14px;max-width:1000px;margin:0 auto;padding:14px 20px;display:flex}.badge{background:var(--zone);width:40px;height:40px;font-family:var(--display);color:var(--ink);letter-spacing:.5px;border-radius:6px;flex:0 0 40px;place-items:center;font-size:20px;font-weight:700;display:grid}.brand{font-family:var(--display);letter-spacing:1.5px;text-transform:uppercase;font-size:22px;font-weight:700;line-height:1}.brand small{font-family:var(--mono);letter-spacing:2px;color:#b7bcc2;margin-top:3px;font-size:10.5px;font-weight:400;display:block}.topnav{gap:6px;margin-left:auto;display:flex}.topnav button{color:#cfd3d8;font-family:var(--display);letter-spacing:1px;text-transform:uppercase;background:0 0;border:1px solid #0000;border-radius:5px;padding:7px 14px;font-size:15px;font-weight:600}.topnav button:hover{color:#fff;background:#ffffff14}.topnav button.active{color:var(--ink);background:var(--zone)}h1,h2,h3{font-family:var(--display);letter-spacing:.5px;margin:0;font-weight:700}.eyebrow{font-family:var(--mono);letter-spacing:3px;text-transform:uppercase;color:var(--zone-dark);font-size:11px;font-weight:500}.section-title{text-transform:uppercase;margin-top:4px;font-size:30px;line-height:1.05}.card{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:10px}.pad{padding:22px}.hero{grid-template-columns:1.35fr 1fr;gap:22px;margin-top:30px;display:grid}.hero-main{padding:30px}.hero-main h1{text-transform:uppercase;margin-top:8px;font-size:46px;line-height:.98}.hero-main p{color:var(--ink-soft);max-width:46ch}.stat-strip{border-top:1px solid var(--line-soft);gap:26px;margin-top:18px;padding-top:18px;display:flex}.stat .n{font-family:var(--display);color:var(--steel);font-size:30px;font-weight:700;line-height:1}.stat .l{font-family:var(--mono);letter-spacing:1.5px;text-transform:uppercase;color:var(--ink-soft);font-size:10.5px}.config h2{text-transform:uppercase;font-size:22px}.field{margin-top:16px}.field-label{font-family:var(--mono);letter-spacing:1.5px;text-transform:uppercase;color:var(--ink-soft);margin-bottom:8px;font-size:11px}.seg{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.seg button{border:1px solid var(--line);background:var(--paper);font-family:var(--display);color:var(--ink);border-radius:7px;padding:12px 0;font-size:20px;font-weight:600}.seg button small{font-family:var(--mono);letter-spacing:1px;color:var(--ink-soft);font-size:9.5px;font-weight:400;display:block}.seg button.on{background:var(--steel);color:#fff;border-color:var(--steel)}.seg button.on small{color:#cfe0ea}.toggle-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.switch{background:var(--line);border:none;border-radius:20px;flex:0 0 46px;width:46px;height:26px;transition:background .15s;position:relative}.switch.on{background:var(--zone)}.switch:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .15s;position:absolute;top:3px;left:3px}.switch.on:after{transform:translate(20px)}.btn{font-family:var(--display);letter-spacing:1px;text-transform:uppercase;background:var(--zone);color:var(--ink);border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:14px 22px;font-size:19px;font-weight:700;transition:background .15s,transform 50ms;display:inline-flex}.btn:hover{background:var(--zone-dark);color:#fff}.btn:active{transform:translateY(1px)}.btn.block{width:100%}.btn.ghost{border:1px solid var(--line);color:var(--ink);background:0 0}.btn.ghost:hover{background:var(--paper);color:var(--ink)}.btn.steel{background:var(--steel);color:#fff}.btn.steel:hover{background:var(--steel-dark)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.sm{padding:9px 14px;font-size:15px}.history-mini{margin-top:22px}.history-mini .row{border-bottom:1px solid var(--line-soft);align-items:center;gap:14px;padding:11px 0;font-size:14px;display:flex}.history-mini .row:last-child{border-bottom:none}.mono{font-family:var(--mono)}.pill{font-family:var(--mono);letter-spacing:.5px;border-radius:20px;padding:3px 9px;font-size:11px;font-weight:500}.ready-high{color:var(--pass);background:#e2f0e8}.ready-ok{color:var(--steel);background:#e5eef3}.ready-borderline{color:var(--amber);background:#f6ecd6}.ready-low{color:var(--fail);background:#f6e2dc}.exam-head{background:var(--zone);color:var(--ink);border-radius:10px 10px 0 0;align-items:center;gap:16px;padding:16px 22px;display:flex}.station{font-family:var(--mono);letter-spacing:1px;font-size:20px;font-weight:600}.station small{letter-spacing:2px;opacity:.75;font-size:11px;display:block}.timer{font-family:var(--mono);background:var(--ink);color:var(--paper);border-radius:6px;margin-left:auto;padding:6px 14px;font-size:22px;font-weight:600}.timer.low{background:var(--fail);animation:1s infinite pulse}@keyframes pulse{50%{opacity:.55}}.progress-track{background:#1b1d212e;border-radius:4px;height:6px;overflow:hidden}.progress-fill{background:var(--ink);border-radius:4px;height:100%;transition:width .25s}.q-body{padding:26px 24px 8px}.q-topic{font-family:var(--mono);letter-spacing:1.5px;text-transform:uppercase;color:var(--steel);font-size:11px}.q-diff{font-family:var(--mono);letter-spacing:1px;text-transform:uppercase;border-radius:4px;margin-left:8px;padding:2px 7px;font-size:10px}.d-easy{color:var(--pass);background:#e2f0e8}.d-medium{color:var(--amber);background:#f6ecd6}.d-hard{color:var(--fail);background:#f6e2dc}.q-text{margin:12px 0 20px;font-size:21px;font-weight:500;line-height:1.4}.choices{gap:10px;display:grid}.choice{text-align:left;border:1.5px solid var(--line);background:var(--card);color:var(--ink);border-radius:9px;align-items:flex-start;gap:13px;padding:14px 16px;font-size:16px;transition:border-color .12s,background .12s;display:flex}.choice:hover{border-color:var(--steel)}.choice.sel{border-color:var(--zone);background:#fdf1e8}.choice .key{border:1.5px solid var(--line);width:26px;height:26px;font-family:var(--display);color:var(--ink-soft);border-radius:50%;flex:0 0 26px;place-items:center;font-size:15px;font-weight:700;display:grid}.choice.sel .key{background:var(--zone);border-color:var(--zone);color:#fff}.exam-foot{align-items:center;gap:12px;padding:18px 24px 24px;display:flex}.flag-btn{border:1.5px solid var(--line);background:var(--card);font-family:var(--display);letter-spacing:.5px;text-transform:uppercase;color:var(--ink-soft);border-radius:8px;padding:11px 15px;font-size:15px;font-weight:600}.flag-btn.on{border-color:var(--zone);color:var(--zone-dark);background:#fdf1e8}.spacer{margin-left:auto}.qmap{flex-wrap:wrap;gap:7px;display:flex}.qmap button{border:1.5px solid var(--line);background:var(--card);width:38px;height:38px;font-family:var(--mono);color:var(--ink-soft);border-radius:6px;font-size:13px;position:relative}.qmap button.answered{background:var(--steel);color:#fff;border-color:var(--steel)}.qmap button.current{outline:3px solid var(--zone);outline-offset:1px}.qmap button.flagged:after{content:"";background:var(--zone);border:2px solid var(--card);border-radius:50%;width:10px;height:10px;position:absolute;top:-3px;right:-3px}.result-hero{grid-template-columns:220px 1fr;align-items:center;gap:30px;padding:30px;display:grid}.dial-wrap{place-items:center;display:grid}.dial-label{text-align:center;margin-top:-10px}.dial-pct{font-family:var(--display);font-size:44px;font-weight:700;line-height:1}.tallies{flex-wrap:wrap;gap:26px;margin:16px 0;display:flex}.tally .n{font-family:var(--display);font-size:32px;font-weight:700;line-height:1}.tally.c .n{color:var(--pass)}.tally.w .n{color:var(--fail)}.tally.u .n{color:var(--ink-soft)}.tally .l{font-family:var(--mono);letter-spacing:1.5px;text-transform:uppercase;color:var(--ink-soft);font-size:10.5px}.bar-row{margin:12px 0}.bar-row .top{justify-content:space-between;align-items:baseline;margin-bottom:5px;font-size:14px;display:flex}.bar-row .top .t{font-weight:600}.bar-track{background:var(--line-soft);border-radius:5px;height:9px;overflow:hidden}.bar-val{border-radius:5px;height:100%}.rev-q{padding:22px}.rev-q+.rev-q{margin-top:16px}.rev-choice{border:1.5px solid var(--line-soft);border-radius:8px;align-items:flex-start;gap:11px;margin-top:7px;padding:10px 13px;font-size:15px;display:flex}.rev-choice.correct{border-color:var(--pass);background:#eef6f0}.rev-choice.wrong{border-color:var(--fail);background:#f9ece8}.rev-tag{font-family:var(--mono);letter-spacing:1px;text-transform:uppercase;white-space:nowrap;border-radius:4px;margin-left:auto;padding:2px 7px;font-size:10px}.rev-tag.correct{background:var(--pass);color:#fff}.rev-tag.wrong{background:var(--fail);color:#fff}.explain{background:var(--paper);border-left:3px solid var(--steel);border-radius:0 8px 8px 0;margin-top:14px;padding:14px 16px;font-size:14.5px}.explain p{margin:0 0 8px}.explain p:last-child{margin-bottom:0}.explain .lbl{font-family:var(--mono);letter-spacing:1px;text-transform:uppercase;color:var(--steel);font-size:10.5px}.ref{font-family:var(--mono);letter-spacing:.5px;color:var(--zone-dark);background:#fdf1e8;border-radius:4px;margin-top:4px;padding:2px 8px;font-size:11px;display:inline-block}.rec{border-bottom:1px solid var(--line-soft);gap:14px;padding:14px 0;display:flex}.rec:last-child{border-bottom:none}.rec .prio{font-family:var(--display);letter-spacing:1px;text-transform:uppercase;flex:0 0 74px;padding-top:2px;font-size:14px;font-weight:700}.prio.High{color:var(--fail)}.prio.Medium{color:var(--amber)}.prio.Low{color:var(--pass)}.rec .t{font-weight:600}.rec .note{color:var(--ink-soft);font-size:14px}.chart-wrap{overflow-x:auto}.chart-svg{display:block}.chart-svg .grid-line{stroke:var(--line-soft);stroke-width:1px}.chart-svg .axis-label{fill:var(--ink-soft);font-family:IBM Plex Mono,monospace;font-size:10px}.chart-svg .trend-line{fill:none;stroke:var(--zone);stroke-width:2.5px}.chart-svg .band{stroke-dasharray:3 4;stroke-width:1px}.grid-2{grid-template-columns:1fr 1fr;gap:20px;display:grid}.mt{margin-top:24px}.mt-sm{margin-top:14px}.center{text-align:center}.muted{color:var(--ink-soft)}.empty{text-align:center;color:var(--ink-soft);padding:50px 20px}.empty .big{font-family:var(--display);text-transform:uppercase;color:var(--ink);font-size:26px;font-weight:700}.chip-row{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.chip{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:5px 11px;font-size:13px}.chip.pass{border-color:var(--pass);color:var(--pass)}.chip.fail{border-color:var(--fail);color:var(--fail)}.chip.up{border-color:var(--pass);color:var(--pass)}.warn-box{border:1px solid var(--zone);background:#fdf1e8;border-radius:9px;margin-top:16px;padding:16px 18px}.disclaimer{color:var(--ink-soft);text-align:center;margin-top:40px;font-size:12.5px;line-height:1.5}@media (width<=800px){.hero,.grid-2,.result-hero{grid-template-columns:1fr}.result-hero{text-align:center}.dial-wrap{justify-self:center}.hero-main h1{font-size:36px}.section-title{font-size:24px}.brand{font-size:18px}.topnav button{padding:6px 9px;font-size:13px}.shell{padding:0 14px 60px}}@media (width<=460px){.stat-strip{flex-wrap:wrap;gap:16px}.exam-head{flex-wrap:wrap;gap:10px}.timer{margin-left:0}.q-text{font-size:19px}.topnav .lbl-full{display:none}}@media print{.topbar,.topnav,.no-print,.btn,.hazard{display:none!important}body{background:#fff;font-size:12px}.shell{max-width:100%;padding:0}.card{box-shadow:none;break-inside:avoid;border:1px solid #bbb}.rev-q{break-inside:avoid}.print-header{display:block!important}.explain{background:#f3f3f3}a{color:#000;text-decoration:none}}.print-header{display:none}.q-type{font-family:var(--mono);letter-spacing:.03em;text-transform:uppercase;color:var(--steel-dark);background:#29566f1a;border:1px solid #29566f40;border-radius:999px;margin-left:8px;padding:2px 9px;font-size:11px;display:inline-block}.select-hint{font-family:var(--mono);color:var(--ink-soft);background:#b8860b1a;border:1px solid #b8860b4d;border-radius:8px;margin-bottom:12px;padding:7px 12px;font-size:13px}.select-hint strong{color:var(--zone-dark)}.choice.multi .box{border:2px solid var(--line);color:#fff;background:0 0;border-radius:6px;flex:0 0 22px;justify-content:center;align-items:center;height:22px;font-weight:700;transition:all .12s;display:inline-flex}.choice.multi .box.on{background:var(--steel);border-color:var(--steel)}.choice.multi.sel{border-color:var(--steel);background:#29566f0f}.exhibit-btn{border:1px dashed var(--steel);color:var(--steel-dark);font-family:var(--mono);cursor:pointer;background:#29566f0d;border-radius:9px;align-items:center;gap:8px;margin:4px 0 16px;padding:9px 15px;font-size:13px;transition:background .12s;display:inline-flex}.exhibit-btn:hover{background:#29566f1f}.exhibit-overlay{z-index:60;background:#14161a8c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.exhibit-modal{background:var(--card);box-shadow:var(--shadow-lg);border-radius:14px;width:min(560px,96vw);overflow:hidden}.exhibit-modal-head{background:var(--ink);color:#fff;font-family:var(--display);letter-spacing:.02em;text-transform:uppercase;justify-content:space-between;align-items:center;padding:12px 16px;font-size:18px;display:flex}.exhibit-body{padding:16px}.exhibit-body svg{border-radius:8px;width:100%;height:auto}.exhibit-cap{padding:0 16px 16px}.exhibit-inline{border:1px solid var(--line);border-radius:10px;margin:6px 0 14px;overflow:hidden}.exhibit-inline svg{width:100%;height:auto;display:block}.hotspot-wrap{margin-top:8px;position:relative}.hotspot-img{border:1px solid var(--line);border-radius:10px;overflow:hidden}.hotspot-img svg{width:100%;height:auto;display:block}.hotspot-overlay{width:100%;height:100%;position:absolute;inset:0}.hot-rect{fill:#29566f00;stroke:#0000;stroke-width:2px;cursor:pointer;transition:fill .1s,stroke .1s}.hotspot-overlay:not(.static) .hot-rect:hover{fill:#29566f2e;stroke:var(--steel)}.hot-rect.sel{fill:#29566f47;stroke:var(--steel-dark);stroke-width:3px}.hotspot-overlay.static{pointer-events:none}.hot-rect.correct{fill:#2e7d4f47;stroke:var(--pass);stroke-width:3px}.hot-rect.wrong{fill:#b3402a42;stroke:var(--fail);stroke-width:3px}.calc-toggle{border:1px solid var(--line);background:var(--card);font-family:var(--mono);color:var(--ink-soft);cursor:pointer;border-radius:8px;padding:6px 11px;font-size:13px}.calc-toggle.on{background:var(--steel);color:#fff;border-color:var(--steel)}.calc{background:var(--card);width:250px;box-shadow:var(--shadow-lg);border:1px solid var(--line);z-index:55;border-radius:14px;padding:12px;position:fixed;bottom:18px;right:18px}.calc-head{font-family:var(--display);text-transform:uppercase;letter-spacing:.03em;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:15px;display:flex}.calc-close{cursor:pointer;color:var(--ink-soft);background:0 0;border:none;font-size:15px;line-height:1}.calc-display{color:#eafaf0;text-align:right;background:#10161a;border-radius:9px;min-height:26px;margin-bottom:10px;padding:12px 14px;font-size:24px;overflow:hidden}.calc-grid{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.calc-key{border:1px solid var(--line);background:var(--paper);font-size:16px;font-family:var(--mono);cursor:pointer;border-radius:9px;padding:12px 0;transition:filter .1s}.calc-key:hover{filter:brightness(.96)}.calc-key.op{background:var(--steel);color:#fff;border-color:var(--steel)}.calc-key.fn{background:#e9ebe7}.calc-key.eq{background:var(--zone);color:#fff;border-color:var(--zone)}.calc-key.wide{grid-column:span 2}.calc-key.wide3{grid-column:span 3}@media (width<=520px){.calc{width:auto;left:12px;right:12px}}.q-focus{font-family:var(--mono);letter-spacing:.03em;text-transform:uppercase;color:var(--zone-dark);background:#e8650c1f;border:1px solid #e8650c59;border-radius:999px;margin-left:8px;padding:2px 9px;font-size:11px;display:inline-block}
