@font-face{font-family:ABC Areal Mono;src:url(/fonts/ABCArealMonoVariable.woff2) format("woff2");font-weight:400 700;font-display:swap}:root{--label: 400 12px/1.4 system-ui, sans-serif;--label-ink: #33485c;--edge: max(24px, env(safe-area-inset-bottom));--drawer: min(30vh, 210px);--term-bg: #13191f;--term-fg: #d8e1e8;--term-dim: #7d8b96;--term-line: rgba(255, 255, 255, .08);--term-err: #ff9a9a;--mono: "ABC Areal Mono", ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace}*{box-sizing:border-box}html{background:#b7d2e5}body{margin:0}.sky{position:fixed;inset:0;background:linear-gradient(#94b9d5,#c8dce8 70%,#e2e8e7);transition:bottom .22s ease}.term-open .sky{bottom:var(--drawer)}canvas{display:block;width:100%;height:100%}.fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.renderer-ready .fallback{display:none}.unavailable canvas{display:none}.unavailable .fallback{display:block}main{position:relative;pointer-events:none}main{height:100svh}footer{position:fixed;inset:auto 0 0;display:flex;justify-content:space-between;padding:24px clamp(20px,3vw,44px);padding-bottom:var(--edge);color:var(--label-ink);font:var(--label);letter-spacing:.015em;pointer-events:none;transition:transform .25s ease,opacity .25s ease}#availability{opacity:.7;pointer-events:auto;cursor:pointer;font:inherit;letter-spacing:inherit;color:inherit;background:none;border:0;padding:0;margin:0;transition:opacity .2s ease}#availability:hover,#availability:focus-visible,.install-open #availability{opacity:1}#availability:focus-visible{outline:1px solid currentColor;outline-offset:4px}:root:has(body.install-open){overflow:hidden}.install{--install-side: 340px;position:fixed;left:50%;top:50%;z-index:5;width:var(--install-side);height:var(--install-side);transform:translate(-50%,-50%);display:flex;flex-direction:column;justify-content:center;gap:4px;padding:calc(var(--install-side) * .08);margin:0;color:var(--label-ink);font:var(--label);letter-spacing:.015em;opacity:0;visibility:hidden;transition:opacity .18s ease,visibility 0s linear .18s}.install-ready .install{opacity:1;visibility:visible;transition:opacity .5s ease}.install p{margin:0}.install-title{font-weight:600;font-size:13px;margin-bottom:8px!important}.install-step{opacity:.7;margin-top:8px!important}.install-cmd{display:block;width:100%;text-align:left;cursor:copy;font:11px/1.45 var(--mono);color:inherit;overflow-wrap:anywhere;background:#ffffff59;border:0;border-radius:4px;padding:4px 7px;margin:0;transition:background .15s ease}.install-cmd:hover,.install-cmd:focus-visible{background:#ffffffb3;outline:none}.install-hint{opacity:.55;font-size:11px;margin-top:10px!important;min-height:1.4em;overflow-wrap:anywhere}.term-open footer{opacity:0}.term{position:fixed;inset:auto 0 0;z-index:10;font:12px/1.5 var(--mono);color:var(--term-fg)}.term-strip{position:absolute;left:50%;bottom:calc(var(--edge) - 12px);translate:-50% 0;display:grid;place-items:center;padding:12px 24px;border:0;background:none;cursor:pointer;color:var(--label-ink);font:var(--label);letter-spacing:.015em}.term-strip>*{grid-area:1 / 1;transition:opacity .18s ease}.term-grip{width:34px;height:4px;border-radius:2px;background:currentColor;opacity:.35}.term-hint{opacity:0;white-space:nowrap}.term-strip:hover .term-grip,.term-strip:focus-visible .term-grip{opacity:0}.term-strip:hover .term-hint,.term-strip:focus-visible .term-hint{opacity:1}.term-strip:focus-visible{outline:none}.term.open .term-strip{opacity:0;pointer-events:none}.term-drawer{position:absolute;inset:auto 0 0;height:var(--drawer);display:flex;flex-direction:column;background:var(--term-bg);border-top:1px solid var(--term-line);translate:0 100%;visibility:hidden;transition:translate .22s ease,visibility 0s .22s;padding-bottom:env(safe-area-inset-bottom)}.term.open .term-drawer{translate:0 0;visibility:visible;transition:translate .22s ease}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}.term-head{position:relative;display:flex;align-items:center;gap:16px;padding:8px 16px 4px}.term-tabs{display:flex;gap:16px;overflow-x:auto}.term-tab,.term-pick-btn,.term-close{color:var(--term-dim)}.term-tab.active,.term-tab:hover,.term-pick-btn:hover,.term-pick-btn[aria-expanded=true],.term-close:hover{color:var(--term-fg)}.term-pick{flex:1}.term-pick[hidden]{display:block;visibility:hidden}.term-close{font-size:16px;line-height:1}.term-status{color:var(--term-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.term-menu,.term-slash{background:var(--term-bg);border:1px solid var(--term-line);border-radius:4px;padding:6px 0}.term-menu[hidden],.term-slash[hidden]{display:none}.term-menu{position:absolute;left:12px;bottom:calc(100% + 6px);width:min(460px,calc(100vw - 24px));max-height:min(60vh,420px);overflow-y:auto;overscroll-behavior:contain}.term-menu-quick{display:flex;gap:16px;padding:2px 12px 8px}.term-menu-quick button{color:var(--term-dim)}.term-menu-quick button:hover{color:var(--term-fg)}.term-menu-item{display:grid;grid-template-columns:auto 13ch minmax(0,1fr);gap:8px;align-items:center;padding:2px 12px;cursor:pointer;white-space:nowrap}.term-menu-item:hover{background:var(--term-line)}.term-menu-item input{accent-color:var(--term-dim);margin:0}.term-menu-about{color:var(--term-dim);overflow:hidden;text-overflow:ellipsis}.term-group,.term-menu-group{color:var(--term-dim);padding:8px 16px 2px}.term-group:first-child{padding-top:0}.term-menu-group{padding:6px 12px 2px}.term-empty{color:var(--term-dim);padding:4px 16px}.term-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}.term-vars{overflow-y:auto;overscroll-behavior:contain;padding:4px 0}.term-row{display:grid;grid-template-columns:14ch minmax(0,24ch) 6ch;gap:12px;align-items:center;padding:1px 16px;white-space:nowrap}.term-key{color:var(--term-dim);cursor:default;user-select:none}.term-row.changed .term-key,.term-row:hover .term-key{color:var(--term-fg)}.term-about{display:none}.term-bar{position:relative;height:14px;cursor:ew-resize;user-select:none;touch-action:none;outline:none}.term-bar:before{content:"";position:absolute;inset:6px 0;background:var(--term-line)}.term-fill{position:absolute;left:0;top:6px;bottom:6px;background:var(--term-fg)}.term-bar:focus-visible:before{background:var(--term-dim)}.term-toggle{justify-self:start;color:var(--term-fg)}.term-toggle.off{color:var(--term-dim)}.term-toggle:focus-visible{outline:1px solid var(--term-dim);outline-offset:2px}.term-value{text-align:right;font-variant-numeric:tabular-nums}.term-console{position:relative;display:flex;flex-direction:column;min-height:0}.term-slash{position:absolute;left:8px;right:8px;z-index:2}.term-slash-item{display:grid;grid-template-columns:7ch 13ch minmax(0,1fr);gap:10px;padding:2px 10px;cursor:pointer;white-space:nowrap}.term-slash-item.active{background:var(--term-line)}.term-slash-usage,.term-slash-about{color:var(--term-dim)}.term-slash-about{overflow:hidden;text-overflow:ellipsis}.term-log{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:4px 16px;color:var(--term-dim)}.term-line{white-space:pre-wrap;word-break:break-word}.term-line.cmd{color:var(--term-fg)}.term-line.err{color:var(--term-err)}.term-prompt{display:flex;gap:8px;padding:6px 16px 10px;color:var(--term-dim)}.term-prompt input{flex:1;min-width:0;font:inherit;color:var(--term-fg);background:none;border:0;outline:none;caret-color:var(--term-fg)}@media(max-width:760px){:root{--drawer: min(44vh, 320px)}.term-body{grid-template-columns:1fr;grid-template-rows:minmax(0,1.2fr) minmax(0,1fr);gap:4px}.term-menu-about{display:none}.term-menu-item{grid-template-columns:auto 1fr;padding:6px 12px}.term-row{grid-template-columns:14ch minmax(0,1fr) 5ch;gap:8px;padding:3px 16px}.term-status{display:none}.term-head{gap:12px}.term-tabs{flex:0 1 auto;min-width:0;gap:12px}.term-pick-btn{white-space:nowrap}.term-prompt input{font-size:16px}}
