:root{--brand: #fbb117;--accent: var(--brand);--ink: #f4f4f2;--ui-bg: rgba(12, 12, 12, .72);--ui-line: rgba(255, 255, 255, .12);--ui-font: "Inter", "Segoe UI", system-ui, -apple-system, sans-serif}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:#050505;color:var(--ink);font-family:var(--ui-font)}#stage{position:fixed;inset:0;width:100%;height:100%;display:block;touch-action:none;outline:none}.brand{position:fixed;left:24px;top:22px;display:flex;gap:12px;align-items:center;color:inherit;text-decoration:none;transition:opacity .3s}.brand:focus-visible{outline:2px solid var(--accent);outline-offset:6px}.brand .tile{width:42px;height:42px;border-radius:9px;background:#0d0d0d url(/favicon-48.png) center / cover no-repeat;border:1px solid var(--ui-line)}.brand h1{margin:0;font-size:13px;font-weight:800;letter-spacing:.32em}.brand p{margin:3px 0 0;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:#ffffff8c}#views{position:fixed;left:50%;bottom:22px;transform:translate(-50%);display:flex;gap:4px;padding:5px;background:var(--ui-bg);border:1px solid var(--ui-line);border-radius:999px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}#views button{appearance:none;border:0;background:transparent;color:#ffffffb8;font:650 11.5px/1 var(--ui-font);letter-spacing:.09em;text-transform:uppercase;padding:10px 15px;border-radius:999px;cursor:pointer;display:flex;gap:8px;align-items:center;white-space:nowrap;transition:background .15s,color .15s,box-shadow .2s}#views button:hover{color:#fff;background:#ffffff12}#views button.active{background:var(--accent);color:#111}#views kbd{font:600 9.5px/1 ui-monospace,Consolas,monospace;opacity:.55;border:1px solid currentColor;border-radius:4px;padding:2px 4px}#views .sep{width:1px;margin:5px 3px;background:var(--ui-line)}#hint{position:fixed;left:24px;bottom:82px;font-size:11px;letter-spacing:.03em;color:#ffffff6b;pointer-events:none}#toast{position:fixed;left:50%;top:20px;transform:translate(-50%,-10px);opacity:0;pointer-events:none;padding:9px 14px;border-radius:999px;background:var(--ui-bg);border:1px solid var(--ui-line);font-size:12px;letter-spacing:.04em;backdrop-filter:blur(12px);transition:opacity .25s,transform .25s}#toast.show{opacity:1;transform:translate(-50%)}#drop{position:fixed;inset:16px;display:grid;place-items:center;border:2px dashed var(--accent);border-radius:18px;background:#0000008c;font-weight:800;letter-spacing:.24em;text-transform:uppercase;opacity:0;pointer-events:none;transition:opacity .15s}body.dragging #drop{opacity:1}#fallback{min-height:100svh;padding:92px 24px 32px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px}#fallback[hidden]{display:none}#fallback img{display:block;width:min(100%,560px);height:auto;max-height:calc(100svh - 230px);min-height:100px;object-fit:contain}#fallback-status{margin:0;max-width:32ch;color:#ffffffb3;font-size:14px;line-height:1.5;text-align:center}#fallback-status:empty{display:none}#launch3d{min-height:44px;padding:12px 24px;border:1px solid var(--ui-line);border-radius:6px;background:var(--brand);color:#111;font:650 14px/1.4 var(--ui-font);cursor:pointer}#launch3d:disabled{opacity:.6;cursor:wait}#launch3d:focus-visible{outline:2px solid var(--ink);outline-offset:4px}body.fallback{overflow-y:auto}body.fallback #stage,body.fallback #views,body.fallback #hint,body.fallback #toast,body.fallback #drop,body.fallback .lil-gui{display:none}body.crt{--ui-font: "Consolas", "Lucida Console", "Courier New", monospace;--ui-bg: rgba(0, 10, 3, .78);--ui-line: color-mix(in srgb, var(--accent) 35%, transparent)}body.crt .brand{color:var(--accent)}body.crt #views button{color:color-mix(in srgb,var(--accent) 70%,transparent)}body.crt #views button.active{color:#021;background:var(--accent);box-shadow:0 0 18px color-mix(in srgb,var(--accent) 60%,transparent)}body.crt #hint{color:color-mix(in srgb,var(--accent) 55%,transparent)}.lil-gui.root{--background-color: rgba(14,14,14,.88);--title-background-color: #151515;--widget-color: #262626;--hover-color: #333;--focus-color: #3a3a3a;--number-color: var(--accent);--string-color: var(--accent);--font-family: var(--ui-font);top:14px!important;right:14px!important;border:1px solid var(--ui-line);border-radius:10px;max-height:calc(100dvh - 112px);overflow-y:auto;backdrop-filter:blur(12px)}body.clean .brand,body.clean #views,body.clean #hint,body.clean .lil-gui{opacity:0!important;pointer-events:none!important}@media(max-width:760px){#hint{display:none}.lil-gui.root{top:80px!important;max-height:calc(100dvh - 160px)}#toast{top:auto;bottom:78px;width:max-content;max-width:calc(100vw - 32px);text-align:center;line-height:1.5}#views{bottom:12px;max-width:calc(100vw - 16px);overflow-x:auto}#views button{padding:9px 11px}#views kbd{display:none}}
