:root{color-scheme:dark;--bg:#101e27;--panel:#182e38;--line:#536771;--ink:#eff3ed;--muted:#bccbd0;--mint:#a5e7d7;--amber:#8bdded}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:radial-gradient(ellipse at 90% 0,#253d4a,transparent 65%),var(--bg);color:var(--ink);font:1rem/1.5 system-ui,-apple-system,'Segoe UI',sans-serif}button,input{font:inherit}button{min-height:44px;padding:8px 13px;background:#263c48;color:var(--ink);border:1px solid #809098;border-radius:8px;cursor:pointer}button:hover:not(:disabled){background:#3c5260}button:disabled{opacity:.5;cursor:default}button[aria-pressed=true]{background:#274c5c;border-color:var(--amber);box-shadow:inset 0 0 0 1px var(--amber)}.primary{background:var(--amber);border-color:var(--amber);color:#102d3b;font-weight:700}.primary:hover:not(:disabled){background:#b8edfa}a{color:var(--mint);text-underline-offset:4px}button:focus-visible,a:focus-visible{outline:3px solid var(--amber);outline-offset:4px}.skip{position:absolute;top:-100px;z-index:20;background:var(--mint);color:var(--bg);padding:10px}.skip:focus{top:0}.top{min-height:56px;padding:8px max(18px,calc((100vw - 1270px)/2));border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--ink);font-size:1.18rem;font-weight:750}.top nav{display:flex;gap:20px;align-items:center;font-size:.875rem}.top button{min-height:36px;padding:5px 10px;font-size:.875rem;background:transparent}main{max-width:1310px;margin:auto;padding:16px 20px 24px}.heading{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px}.eyebrow{color:var(--mint);font-size:.75rem;letter-spacing:.07em;font-weight:650;margin:0 0 5px}h1{font-size:2.25rem;line-height:1.1;letter-spacing:-.025em;margin:0}h1 em{font-family:Georgia,serif;color:var(--amber);font-weight:400}.heading button{font-size:.875rem}.cases{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}.cases button{text-align:left;display:flex;gap:9px;align-items:center;font-size:.875rem}.cases b{color:var(--amber)}.cases button[aria-current]{background:#244552;border-color:var(--amber)}.cases .done{margin-left:auto;color:var(--mint);font-size:.75rem}#game{background:#112731;border:1px solid var(--line);border-radius:14px;overflow:hidden}.case-heading{display:flex;justify-content:space-between;align-items:start;gap:12px;padding:12px 17px;border-bottom:1px solid var(--line)}.case-heading h2{font-size:1.3rem;line-height:1.2;margin:0 0 5px}.case-heading p{font-size:.9375rem;margin:0;color:var(--muted)}.badge{white-space:nowrap;color:#c5e0ed;font-size:.75rem;border:1px solid #577788;border-radius:5px;padding:3px 7px}.working{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.85fr)}.view-panel{min-width:0;padding:14px 17px;border-right:1px solid var(--line)}.images{display:grid;grid-template-columns:1fr 1fr;gap:12px}.images>div{min-width:0}.view-top{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:9px}.view-top h3{font-size:1rem;margin:0}.view-top span{font-size:.8125rem;color:var(--amber)}.images canvas{display:block;width:100%;height:clamp(160px,calc(100svh - 540px),320px);background:#0b1821;border:1px solid #5d7780;border-radius:9px}.beam-row{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:.875rem;margin:12px 0}#beam.active{color:var(--amber)}.scan-buttons{display:flex;gap:8px}.scan-buttons button{flex:1;font-size:.875rem}.sub-buttons{display:flex;gap:10px;margin-top:10px}.sub-buttons button{font-size:.875rem;min-height:38px;background:transparent}.view-note{font-size:.75rem;color:var(--muted);margin:12px 0 0}#status{font-size:.9375rem;color:#c9e2ec;margin:12px 0 0}#description{font-size:.9375rem;border-left:3px solid var(--amber);background:#213b46;padding:10px}.evidence{padding:16px;min-width:0}.small{font-size:.875rem;color:var(--muted);margin:8px 0 12px}.saved{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.empty{grid-column:1/-1;border:1px dashed var(--line);border-radius:9px;padding:22px 12px;font-size:.875rem;color:var(--muted);text-align:center}.saved-item{min-width:0;position:relative}.saved-image{padding:0;width:100%;text-align:left;overflow:hidden}.saved-image canvas{display:block;width:100%;height:75px}.saved-image span{display:block;font-size:.75rem;padding:5px 7px;line-height:1.4}.remove{font-size:.75rem;padding:0 4px;min-height:44px;margin-top:4px;width:100%;background:transparent;border-color:#465c68}.answer-box{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.answer-box h3{font-size:1rem;margin:0}.answers{display:flex;gap:8px;margin-bottom:10px}.answers button{flex:1}#check{width:100%;font-size:.9375rem}#feedback{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}#feedback h3{font-size:1.2rem;color:var(--amber);line-height:1.3;margin:0 0 8px}#feedback p{font-size:.9375rem;margin:0 0 10px}#feedback .small{font-size:.8125rem}#reveal{border:1px solid #798677;border-radius:9px;background:#1c372f;padding:12px;margin-bottom:12px}#reveal-text{font-size:1.1rem!important;font-weight:650}.bottom{display:flex;gap:12px 24px;flex-wrap:wrap;align-items:center;padding-top:16px;font-size:.875rem}.bottom button{font-size:.875rem;background:none;border:0;padding-left:0;text-decoration:underline;text-underline-offset:4px}#finish{margin-top:15px;padding:20px;border:1px solid var(--mint);border-radius:12px;background:#16372f}#finish h2{font-size:1.4rem;margin:0}#finish p{color:var(--muted)}dialog{max-width:620px;width:calc(100% - 24px);max-height:85svh;overflow:auto;border:1px solid #9b8c75;border-radius:14px;background:#22333e;color:var(--ink);padding:24px}dialog::backdrop{background:#051018e3}dialog h2{line-height:1.2;margin-top:5px}dialog p,dialog li{color:var(--muted)}dialog li{margin-block:10px}.close{float:right;width:44px;padding:0;font-size:1.5rem}.dialog-actions{display:flex;gap:10px;flex-wrap:wrap}h1,h2,h3,p,button,a{overflow-wrap:break-word}
@media(max-width:950px){.working{grid-template-columns:minmax(0,1fr) 300px}.badge{white-space:normal}.view-panel,.evidence{padding:12px}.scan-buttons{flex-wrap:wrap}.scan-buttons #keep{flex-basis:100%}.images{gap:8px}.images .view-top{min-height:50px;align-content:start}.images canvas{height:210px}.saved{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){main{padding:12px 10px}.top{padding:8px 12px}.working{grid-template-columns:1fr}.view-panel{border-right:0;border-bottom:1px solid var(--line)}.heading h1{font-size:1.9rem}.heading button{font-size:.875rem;max-width:115px}.top nav{gap:10px}.brand{font-size:1rem}.case-heading{flex-wrap:wrap;gap:7px;padding:12px}.case-heading h2{font-size:1.2rem}.case-heading p{font-size:.875rem}.cases button{padding:8px;font-size:.8125rem}.cases .done{display:none}.images canvas{height:clamp(135px,40vw,230px)}.images .view-top{min-height:45px;gap:4px}.images h3{font-size:.875rem}.images .view-top span{font-size:.75rem}.scan-buttons #keep{flex-basis:100%}.saved{grid-template-columns:repeat(3,minmax(0,1fr))}.beam-row{font-size:.8125rem}.sub-buttons button{font-size:.875rem;padding-inline:8px}.eyebrow{letter-spacing:.04em}}
@media(max-width:360px){.top nav{gap:7px}.top nav a,.top nav button{font-size:.75rem}.top nav button{padding-inline:7px}.brand{font-size:.9375rem;gap:6px}.brand img{width:25px;height:25px}.heading h1{font-size:1.7rem}.cases{gap:5px}.cases button{font-size:.75rem;padding:7px 6px;gap:5px}.saved{grid-template-columns:repeat(2,minmax(0,1fr))}.sub-buttons{flex-wrap:wrap}.view-panel{padding:10px}}
.large-text .working{grid-template-columns:1fr}.large-text .heading,.large-text .case-heading,.large-text .beam-row{flex-wrap:wrap}.large-text .cases{grid-template-columns:1fr}.large-text .images{grid-template-columns:1fr}.large-text .images canvas{height:300px}.large-text .scan-buttons,.large-text .sub-buttons{flex-wrap:wrap}.large-text .scan-buttons button{flex-basis:100%}.large-text .saved{grid-template-columns:1fr}.large-text .saved-image{display:flex;align-items:center}.large-text .saved-image canvas{width:35%;height:100px}.large-text .view-panel{border-right:0}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
.tests{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px}.tests button{text-align:left;font-size:.875rem;display:flex;align-items:center;justify-content:space-between;gap:7px}.tests span{font-size:.75rem;color:var(--mint)}.test-note{min-height:42px;margin-bottom:0}.observations,.causes{display:grid;gap:8px;margin:10px 0}.observations button,.causes button{text-align:left;font-size:.875rem}.cause-box{border-top:1px solid var(--line);padding-top:14px;margin-top:16px}.cause-box h3{font-size:1rem;margin:0}#review{width:100%;font-size:.9375rem}#notebook{margin-top:14px;font-size:.875rem;color:var(--muted)}#notebook summary{cursor:pointer;min-height:44px;padding-block:9px}#notes{padding-left:19px;margin-top:0}#notes li{margin-bottom:8px}#truth{display:block;width:100%;height:190px}#large-dialog{max-width:1060px;width:calc(100% - 24px)}.large-images{display:grid;grid-template-columns:1fr 1fr;gap:14px}.large-images>div{min-width:0}.large-images h3{font-size:1rem;margin:10px 0}.large-images canvas{display:block;width:100%;height:min(50vw,400px);border:1px solid var(--line);border-radius:9px}.case-heading .badge{white-space:nowrap}.images{gap:12px}.images .view-top{min-height:48px;align-content:start}.images canvas{height:clamp(175px,calc(100svh - 500px),350px)}#description{color:var(--ink)}
@media(max-width:950px){.images canvas{height:195px}.working{grid-template-columns:minmax(0,1fr) 310px}.tests button{padding:8px}.images .view-top h3{font-size:.875rem}}
@media(max-width:720px){.working{grid-template-columns:1fr}.images canvas{height:clamp(132px,40vw,220px)}.test-note{min-height:0}.tests button{font-size:.875rem}.heading h1{font-size:1.8rem}.large-images{grid-template-columns:1fr}.large-images canvas{height:75vw;max-height:350px}.images .view-top h3{font-size:.875rem}}
.large-text .tests,.large-text .cases,.large-text .images,.large-text .large-images{grid-template-columns:1fr}.large-text .heading{flex-wrap:wrap}.large-text .images canvas{height:300px}.tests .test-label{font-size:.875rem;color:var(--ink)}.causes strong,.causes span{display:block}.causes strong{font-size:.875rem;font-weight:650}.causes span{font-size:.8125rem;color:var(--muted);margin-top:2px}.note-link{min-height:44px;padding:4px 0;background:none;border:0;text-decoration:underline;text-underline-offset:3px;color:var(--mint);font-size:.875rem;text-align:left}.images .view-top span{white-space:nowrap}.large-text .case-heading .badge{white-space:normal}
@media(max-width:720px){.tests{margin-top:0;margin-bottom:14px}#observation-block{margin-top:14px}.observations button{min-height:44px}.test-note{margin-top:8px}}
