:root{--bg:#0f1115;--panel:#16181d;--line:#262a33;--text:#e6e6e6;--muted:#8b919c;--gold:#e8b04a;--green:#7fb069;--danger:#e06c5a;color-scheme:dark;font:13px/1.4 system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);margin:0}button,input,select{font:inherit;color:inherit;border:1px solid var(--line);background:#1f232b;border-radius:4px;padding:3px 8px}button{cursor:pointer}button:hover:not(:disabled){border-color:var(--gold)}button:disabled,input:disabled,select:disabled{opacity:.5;cursor:default}button.quiet{background:0 0}button.danger{border-color:var(--danger);color:var(--danger);background:0 0;margin-top:12px}h2{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 8px;font-size:11px}h3{color:var(--muted);margin:14px 0 6px;font-size:12px}ul{margin:0;padding:0;list-style:none}ul ul{padding-left:12px}.muted{color:var(--muted)}.error{color:var(--danger);margin:0 0 6px}.boot{color:var(--muted);padding:24px}.wb{grid-template:"bar bar bar""tree view insp"1fr"tree log insp"140px/220px 1fr 280px;height:100vh;display:grid}.toolbar{background:var(--panel);border-bottom:1px solid var(--line);grid-area:bar;align-items:center;gap:8px;padding:6px 10px;display:flex}.toolbar .brand{color:var(--gold);margin-right:6px;font-weight:600}.toolbar .spacer{flex:1}.panel{background:var(--panel);padding:10px;overflow:auto}.hierarchy{border-right:1px solid var(--line);grid-area:tree}.hierarchy .row{flex-wrap:wrap;gap:4px;margin-bottom:8px;display:flex}.node{text-align:left;background:0 0;border:0;width:100%;padding:2px 6px}.node.on{color:var(--gold);background:#2a2f3a}.viewport{grid-area:view;min-height:0;position:relative}.viewport canvas{width:100%;height:100%;display:block}.viewport canvas.overlay{touch-action:none;position:absolute;inset:0}.hint{color:var(--muted);pointer-events:none;font-size:11px;position:absolute;top:8px;left:8px;right:8px}.toolbar .sep{background:var(--line);align-self:stretch;width:1px}.toolbar button.on,.modes button.on{border-color:var(--gold);color:var(--gold)}.modes{gap:2px;display:flex}.tag{color:var(--green);margin-left:6px;font-size:10px}h2.section{margin-top:16px}.prefabs li{justify-content:space-between;align-items:center;gap:4px;padding:2px 0;display:flex}.multi{gap:8px;margin-bottom:8px;display:grid}.row{flex-wrap:wrap;gap:4px;display:flex}.actions{margin-top:12px}.stats{color:var(--muted);background:#00000073;border-radius:3px;padding:2px 6px;font:11px ui-monospace,monospace;position:absolute;bottom:8px;left:8px}.inspector{border-left:1px solid var(--line);grid-area:insp}.field,.vec{gap:4px;margin-bottom:8px;display:grid}.vec{grid-template-columns:64px repeat(3,1fr);align-items:center}.vec input{width:100%;min-width:0}.field{grid-template-columns:64px 1fr;align-items:center}.field.body-fields{grid-template-columns:64px 1fr auto}.body-fields label{align-items:center;gap:4px;display:flex}.components li{justify-content:space-between;align-items:center;padding:2px 0;display:flex}.log{border-top:1px solid var(--line);grid-area:log}.log li{padding:1px 0}.log .claude{color:var(--gold);font-weight:600}.log .you{color:var(--green);font-weight:600}.log .script{color:var(--muted);font-weight:600}.log .error{color:var(--danger);margin:0;font-weight:600}.viewport iframe.player{background:#111318;border:0;width:100%;height:100%;position:absolute;inset:0}@media (width<=800px){.wb{grid-template:"bar""view"50vh"insp""tree""log"/1fr;height:auto}}.signin{gap:14px;max-width:380px;margin:10vh auto;padding:0 16px;display:grid}.signin h1{color:var(--gold);margin:0;font-size:18px}.signin form{gap:10px;display:grid}.signin .field{grid-template-columns:1fr}.signin a{color:var(--green)}.providers{gap:8px;display:grid}a.button{text-align:center;color:var(--text);border:1px solid var(--line);background:#1f232b;border-radius:4px;padding:6px 8px;text-decoration:none;display:block}a.button:hover{border-color:var(--gold)}.swatch{vertical-align:-1px;border:1px solid var(--line);border-radius:2px;width:10px;height:10px;margin-right:6px;display:inline-block}.materials{margin-bottom:6px}input[type=color]{height:26px;padding:0 2px}textarea.code{width:100%;min-height:320px;color:var(--text);border:1px solid var(--line);resize:vertical;tab-size:2;background:#12141a;border-radius:4px;padding:8px;font:12px/1.45 ui-monospace,monospace}.script-ref{gap:6px}.script-ref input{flex:1;min-width:0;font:11px ui-monospace,monospace}
