:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#14171c;--panel:#1d222a;--fg:#e6e9ef;--muted:#8a93a3;--ok:#3ddc84;--warn:#f5b942;--bad:#ff5c5c;font:14px/1.4 system-ui,sans-serif}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--fg);margin:0}#app{grid-template-columns:320px 1fr;height:100%;display:grid}#panel{background:var(--panel);flex-direction:column;gap:12px;padding:12px;display:flex;overflow-y:auto}#stage{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;position:relative;overflow:hidden}#gpu{touch-action:none;width:100%;height:100%;display:block}#hud{pointer-events:none;flex-direction:column;gap:4px;display:flex;position:absolute;top:12px;left:12px}#fatal{z-index:3;-webkit-user-select:text;user-select:text;-webkit-touch-callout:default;background:var(--bg);text-align:center;place-items:center;padding:24px;display:grid;position:absolute;inset:0}#fatal[hidden]{display:none}fieldset{border:1px solid #2c333e;border-radius:6px;padding:8px 10px}legend{color:var(--muted);padding:0 4px}.language{grid-template-columns:1fr 120px;align-items:center;gap:8px;display:grid}label.param{grid-template-columns:1fr 80px;align-items:center;gap:8px;margin:4px 0;display:grid}input[type=number],select{color:var(--fg);background:#10131a;border:1px solid #2c333e;border-radius:4px;width:100%;padding:3px 6px}button{color:var(--fg);cursor:pointer;background:#2a3140;border:1px solid #3a4354;border-radius:4px;padding:6px 10px}button:active{background:#3a4354}.readout{justify-content:space-between;gap:8px;display:flex}.readout .value{font-variant-numeric:tabular-nums}.band-ok{color:var(--ok)}.band-warn{color:var(--warn)}.band-bad{color:var(--bad);font-weight:600}.pad{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.pad.two{grid-template-columns:repeat(2,1fr)}.pad button{padding:10px 0}.unverified{color:var(--warn);white-space:nowrap;font-size:11px}.source{color:var(--muted);font-size:11px}.cited summary{cursor:pointer;list-style:none}.cited summary::-webkit-details-marker{display:none}.cited .value{white-space:nowrap}.cited .value:after{content:"▸";content:"▸" / "";color:var(--muted);margin-left:4px}.cited[open] .value:after{content:"▾";content:"▾" / ""}.cited .note{color:var(--muted);margin:2px 0;font-size:12px}#overlay{display:none}@media (max-width:899px),(pointer:coarse){html,body{overscroll-behavior:none}#app{display:block}#stage{position:fixed;inset:0}#hud{left:calc(12px + env(safe-area-inset-left));top:calc(12px + env(safe-area-inset-top));right:calc(64px + env(safe-area-inset-right));overflow-wrap:anywhere}#panel{z-index:2;width:min(360px,100vw - 64px);padding:calc(12px + env(safe-area-inset-top)) 12px calc(12px + env(safe-area-inset-bottom)) calc(12px + env(safe-area-inset-left));visibility:hidden;transition:transform .18s ease-out,visibility 0s linear .18s;position:fixed;inset:0 auto 0 0;transform:translate(-100%);box-shadow:0 0 24px #00000080}.sheet-open #panel{visibility:visible;transition:transform .18s ease-out;transform:none}.wide-only{display:none}.sheet-open #overlay .thumb{visibility:hidden}#panel:focus{outline:none}input[type=number],select{padding:8px;font-size:16px}#panel button{min-height:48px}.cited summary{padding-block:4px}#overlay{pointer-events:none;z-index:1;display:block;position:absolute;inset:0}#overlay button{pointer-events:auto;touch-action:none;-webkit-tap-highlight-color:transparent;background:#2a3140c7;border-radius:12px;width:64px;height:64px;padding:0;font-size:22px}#overlay button:active{background:#4a5874e6}#overlay button.small{width:48px;height:48px;font-size:18px}#overlay .menu{top:calc(8px + env(safe-area-inset-top));right:calc(8px + env(safe-area-inset-right));width:48px;height:48px;position:absolute}#overlay .thumb{bottom:calc(16px + env(safe-area-inset-bottom));flex-direction:column;gap:10px;display:flex;position:absolute}#overlay .thumb.left{left:calc(16px + env(safe-area-inset-left));align-items:flex-start}#overlay .thumb.right{right:calc(16px + env(safe-area-inset-right));align-items:flex-end}#overlay .row,#overlay .column{gap:10px;display:flex}#overlay .column{flex-direction:column}}@media (pointer:coarse){.keys-hint{display:none}}.maneuver-panel p{margin:8px 0}.maneuver-panel p:empty{display:none}.maneuver-buttons{flex-wrap:wrap;gap:6px;display:flex}button:disabled,button[aria-disabled=true]{opacity:.45;cursor:default}.maneuver-bar{z-index:1;bottom:calc(12px + env(safe-area-inset-bottom));background:#1d222af5;border:1px solid #7d559d;border-radius:8px;max-width:720px;margin:auto;padding:10px 12px;position:absolute;left:12px;right:12px}.maneuver-bar[hidden]{display:none}.maneuver-bar p{margin:4px 0 8px}.maneuver-bar .source{margin-bottom:0}.maneuver-outcome strong,.maneuver-outcome .source{display:block}.maneuver-outcome strong{font-size:16px}.maneuver-approach{font-size:11px;display:none}.maneuver-active #overlay .thumb,.maneuver-active .pad.wide-only{display:none}@media (max-width:899px),(pointer:coarse){.maneuver-bar button{flex:auto;min-height:44px}.maneuver-approach{display:block}.maneuver-bar{left:calc(8px + env(safe-area-inset-left));right:calc(8px + env(safe-area-inset-right))}}@media (max-width:480px){.maneuver-bar .maneuver-buttons{grid-template-columns:1fr 1fr;display:grid}.maneuver-bar button:first-child{grid-column:1/-1}}
