:root{color-scheme:dark;--bg:#080e1b;--panel:#101b2c;--line:#24364d;--text:#e7edf7;--muted:#8fa5c3;--cyan:#5eead4;--gold:#fbbf24}
/* Scoped specificity deliberately overrides the original single-select layout. */
main .toolbar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
main .toolbar select{min-width:0;width:100%;font-size:14px}
main .stats{grid-template-columns:repeat(5,minmax(0,1fr))}
main .stats div{padding:16px;min-width:0}
main .stats .small{font-size:20px}
main .stats p{font-size:11px;line-height:1.5;color:var(--muted)}
main .reference-panel,main .surface-panel{margin:20px 0;padding:24px}
main .surface-panel canvas{width:100%;max-width:1000px;height:auto;display:block;margin:auto}
main .surface-panel canvas[hidden],main .figures a[hidden]{display:none}
#selection-status{color:var(--gold);font-size:13px}
#diagnostics{padding:0 18px;line-height:2;color:#b7c5d9}
.reference-panel p{overflow-wrap:anywhere}
@media(max-width:900px){main .toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}main .stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){main .toolbar{grid-template-columns:1fr}main .reference-panel{padding:16px}main .stats div{padding:12px}}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 80% 0,#12343855,transparent 42%),var(--bg);color:var(--text);font:15px/1.65 system-ui,-apple-system,sans-serif}a{color:var(--cyan)}header,main{max-width:1440px;margin:auto;padding:0 36px}header{display:flex;justify-content:space-between;padding-top:26px;font-size:11px;letter-spacing:.14em}header a{text-decoration:none;color:var(--text)}header span{color:var(--muted)}.hero{display:flex;justify-content:space-between;align-items:center;padding:68px 0 36px}.eyebrow{color:var(--cyan);font-size:11px;letter-spacing:.23em;font-weight:700}h1{font-size:clamp(68px,9vw,128px);line-height:1;margin:16px 0 28px;letter-spacing:-.07em;font-weight:700}h1 span{color:var(--cyan)}.intro{max-width:520px;color:#b7c5d9;font-size:18px}.hero-aside{text-align:center;width:240px;position:relative}.orbit{display:inline-grid;place-items:center;border:1px solid #44726f;border-radius:50%;width:160px;height:160px;font:italic 84px Georgia;color:var(--cyan);box-shadow:0 0 80px #36cfba18,inset 0 0 40px #36cfba12}.hero-aside p{font-size:10px;letter-spacing:.22em;color:var(--muted);margin-top:26px}.notice{border-left:3px solid var(--gold);padding:12px 18px;background:#fbbf240b;color:#c5bc9d;font-size:13px}.notice strong{color:#fce2a1}.toolbar{display:flex;align-items:end;gap:30px;margin:30px 0 20px}.toolbar label{font-size:10px;letter-spacing:.12em;color:var(--muted)}select,button{border:1px solid var(--line);border-radius:8px;background:#142338;color:var(--text);padding:11px 13px;font:inherit}select{max-width:100%}.toolbar select{display:block;margin-top:7px;min-width:330px;font-size:14px;letter-spacing:0}.toolbar p{color:var(--muted);font-size:12px}.stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:20px}.stats div{padding:18px 24px;background:#101b2cb0;border-right:1px solid var(--line)}.stats div:last-child{border:0}.stats span{display:block;font-size:10px;color:var(--muted);letter-spacing:.08em}.stats strong{font-size:32px;font-weight:500;font-variant-numeric:tabular-nums}.laboratory{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:20px}.panel{background:linear-gradient(140deg,#142136aa,#0d1728cc);border:1px solid var(--line);border-radius:14px;padding:22px;min-width:0}.panel-title{display:flex;justify-content:space-between;align-items:center;gap:14px}.panel h2{font-size:16px;font-weight:500;margin:0}.panel-title span{font-size:10px;color:var(--muted);letter-spacing:.06em}canvas{display:block;width:100%;height:auto}.stage canvas{touch-action:none;cursor:grab}.stage canvas:active{cursor:grabbing}.side{display:flex;flex-direction:column;gap:20px}.side .panel{flex:1}.controls{display:flex;align-items:center;gap:16px}.controls button{background:var(--cyan);color:#082720;min-width:74px;font-weight:700;cursor:pointer}.controls input{flex:1;min-width:60px;accent-color:var(--cyan)}.controls label{font-size:11px;color:var(--muted);white-space:nowrap}.controls select{padding:5px;font-size:12px}.caption{font-size:11px;color:var(--muted);line-height:1.7;margin-bottom:0}.caption i{display:inline-block;width:8px;height:8px;border-radius:50%;margin:0 6px}.cyan{background:var(--cyan)}.gold{background:var(--gold)}.downloads{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:26px 0}.downloads a{text-decoration:none;border:1px solid var(--line);border-radius:8px;padding:11px 16px;font-size:12px;color:var(--text)}.downloads .primary{color:var(--gold);border-color:#6b5527}.gallery{margin:60px 0 50px}.gallery h2,.method h2{font-size:clamp(26px,4vw,42px);letter-spacing:-.04em;margin:10px 0}.gallery>p:not(.eyebrow){color:var(--muted)}.figures{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:28px}.figures a:first-child{grid-column:1/-1}.figures img{display:block;width:100%;border:1px solid var(--line);border-radius:12px}.method{padding:32px}.method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.method h3{font-size:14px;color:#c3d4e9}.method-grid p{font-size:13px;color:var(--muted)}footer{color:var(--muted);font-size:10px;letter-spacing:.1em;padding:36px 0;overflow-wrap:anywhere}button:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:4px}@media(max-width:950px){.laboratory{grid-template-columns:1fr}.side{display:grid;grid-template-columns:1fr 1fr}.stats{grid-template-columns:1fr 1fr}.method-grid{grid-template-columns:1fr}.hero-aside{display:none}.toolbar{display:block}.figures{grid-template-columns:1fr}}@media(max-width:600px){header,main{padding-left:16px;padding-right:16px}header span{display:none}.hero{padding-top:50px}.side{display:flex}.toolbar select{min-width:0;width:100%}.panel{padding:14px}.stats div{padding:14px}.stats strong{font-size:26px}.controls{gap:8px}.controls label{font-size:0}.method{padding:20px}.hero h1{font-size:70px}}