:root{--bg:#15191e;--panel:#1d2228;--panel-2:#252b33;--border:#313841;--text:#e6e9eb;--muted:#8f9aa5;--accent:#5ec8ff;--accent-ink:#062233;--warn:#ffc94a;color:var(--text);background:var(--bg);font-family:Barlow Semi Condensed,system-ui,sans-serif;font-size:15px}*{box-sizing:border-box}body{flex-direction:column;height:100vh;margin:0;display:flex;overflow:hidden}button,input,select{font:inherit}[hidden]{display:none!important}button{border:1px solid var(--border);background:var(--panel-2);color:var(--text);cursor:pointer;white-space:nowrap;border-radius:7px;padding:6px 11px;transition:background .12s,border-color .12s}button:hover{background:#2f3740;border-color:#4a5560}button:disabled{opacity:.4;cursor:default}button.active{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}button.quiet{color:var(--muted);background:0 0;border-color:#0000}button.quiet:hover{color:var(--text);background:var(--panel-2)}.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:700}.primary:hover{background:#82d5ff;border-color:#82d5ff}input,select{color:var(--text);background:#12161a;border:1px solid #3b444e;border-radius:6px;min-width:0;max-width:100%;padding:5px 7px}input:focus,select:focus,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}label{color:#b8c0c7;flex-direction:column;gap:4px;font-size:13px;display:flex}label.inline{white-space:nowrap;flex-direction:row;align-items:center;gap:5px}input[type=checkbox]{accent-color:var(--accent)}h2{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;font-size:12px;font-weight:700}kbd{font:inherit;opacity:.6;border:1px solid;border-radius:4px;margin-left:auto;padding:0 5px;font-size:11px}.app-header{background:var(--panel);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:12px;height:56px;padding:8px 16px;display:flex}.brand{-webkit-text-stroke:5px #0d1013;paint-order:stroke fill;font-family:Lilita One,sans-serif;font-size:26px;line-height:1;text-decoration:none;display:flex}.brand b{font-weight:400}.brand b:first-child{color:#5ec8ff;rotate:-6deg}.brand b:nth-child(2){color:#ffc94a;rotate:4deg}.brand b:nth-child(3){color:#5ff2a6;rotate:-3deg}.brand:hover{filter:brightness(1.15)}#title{background:0 0;border-color:#0000;width:min(320px,30vw);padding:3px 6px;font-size:19px;font-weight:700}#title:hover{border-color:var(--border)}#template{background:var(--panel-2);border-color:var(--border);cursor:pointer;width:210px;padding:6px 8px}.header-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.header-actions button{padding:7px 13px}.toolbar{border-bottom:1px solid var(--border);background:var(--panel);justify-content:space-between;align-items:center;gap:12px;min-height:40px;padding:5px 16px;font-size:13px;display:flex}.toolbar>div{align-items:center;gap:10px;display:flex}.toolbar button{padding:3px 9px;font-size:13px}#undo,#redo{padding:0 9px;font-size:16px}.toolbar select{padding:2px 4px;font-size:12px}.separator{border-left:1px solid var(--border);height:20px}#play-controls{border-left:1px solid var(--border);align-items:center;gap:9px;padding-left:10px;display:flex}.workspace{flex:1;grid-template-columns:224px minmax(400px,1fr) 256px;min-height:0;display:grid}.library,.inspector{background:var(--panel);padding:14px;overflow:auto}.library{border-right:1px solid var(--border)}.inspector{border-left:1px solid var(--border)}.library section{margin:0 0 18px}.tool-grid{grid-template-columns:1fr 1fr;gap:5px;display:grid}.library-tool{text-align:left;white-space:normal;align-items:center;gap:2px;padding:7px 6px;font-size:12.5px;line-height:1.1;display:flex}.library-tool.active .tool-icon{color:var(--accent-ink)}.tool-icon{width:18px;color:var(--accent);flex:none;font-size:13px}.select-tool{width:100%;margin-bottom:16px;padding:8px 10px;font-size:14px;font-weight:700}.decor>summary{cursor:pointer;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:8px;font-size:12px;font-weight:700;list-style:none}.decor>summary::-webkit-details-marker{display:none}.decor>summary:before{content:"▸ "}.decor[open]>summary:before{content:"▾ "}.center{background:var(--bg);flex-direction:column;min-width:0;min-height:0;display:flex}.viewport{flex:1;justify-content:center;align-items:center;min-height:0;padding:18px 22px;display:flex;overflow:hidden}.scene-frame{aspect-ratio:16/9;background:#888;border-radius:6px;width:100%;max-height:100%;position:relative;overflow:hidden;box-shadow:0 0 0 1px #000,0 12px 40px #0008}#preview{position:absolute;inset:0}#preview canvas{display:block}#overlay{touch-action:none;width:100%;height:100%;position:absolute;inset:0}#overlay.playing{pointer-events:none}#reference-image{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}#loading{color:#eee;pointer-events:none;background:#222;place-items:center;font-size:18px;display:grid;position:absolute;inset:0}#mode-banner{color:#fff;white-space:nowrap;pointer-events:none;background:#12161add;border-radius:20px;padding:5px 12px;font-size:13px;position:absolute;top:10px;left:50%;translate:-50%}#preview-hud{color:#c7d2d3;pointer-events:none;background:#12161add;border-radius:8px;padding:9px 12px;font-size:13px;position:absolute;bottom:12px;left:12px;right:12px}.inspector .item-heading{margin:0 0 12px;font-size:18px;font-weight:700}.field-grid{grid-template-columns:1fr 1fr;gap:9px;margin-bottom:14px;display:grid}.field-grid input{width:100%}.field-grid label:has(select){grid-column:span 2}label.check{flex-direction:row;grid-column:span 2;align-items:center;gap:7px}label.check input{width:auto}.item-actions{gap:6px;margin:4px 0 18px;display:flex}.item-actions button{padding:5px 11px;font-size:13px}button.danger:hover{background:#4a2326;border-color:#8a3a3f}p.note{color:var(--warn);margin:-4px 0 14px;font-size:12px;line-height:1.4}#issues{color:var(--warn);font-size:12px;line-height:1.4}.wiring{border-top:1px solid var(--border);gap:6px;margin-bottom:14px;padding-top:12px;display:grid}.wiring h4{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0;font-size:12px;font-weight:700}.rule{border:1px solid var(--border);background:#191d22;border-radius:8px;gap:5px;padding:8px;display:grid}.rule-options{gap:6px;margin-top:2px;display:grid}.chip{background:var(--panel-2);border:1px solid #3b4550;border-radius:7px;align-items:center;font-size:13px;display:flex}.chip-label{text-align:left;white-space:normal;background:0 0;border:0;border-radius:7px;flex:1;padding:4px 8px}span.chip-label{color:var(--muted)}.chip-x{color:var(--muted);background:0 0;border:0;padding:2px 8px;font-size:15px}.chip-x:hover{color:#ff8a7a;background:0 0}.connect{color:var(--accent);border-style:dashed;justify-self:start;font-size:13px}footer{background:var(--panel);border-top:1px solid var(--border);flex-shrink:0;align-items:center;height:26px;padding:0 16px;font-size:12px;display:flex}#status{color:#b3c2c7;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}dialog{background:var(--panel);color:var(--text);border:1px solid #45505b;border-radius:12px;padding:16px;box-shadow:0 25px 100px #000a}dialog::backdrop{background:#0b0d10c0}dialog>header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}dialog img{aspect-ratio:16/9;width:min(800px,85vw);display:block}body.playing .library,body.playing .inspector{opacity:.5;pointer-events:none}body.playing #play{background:var(--warn);border-color:var(--warn);color:#302315}@media (max-width:1100px){.workspace{grid-template-columns:190px minmax(350px,1fr) 220px}.header-actions button{padding:6px 9px;font-size:13px}#template{width:160px}.viewport{padding:10px}.toolbar{flex-wrap:wrap}.library-tool{padding:6px 4px;font-size:11px}}@media (max-width:820px){body{min-width:780px;overflow:auto}.workspace{min-height:500px}}
