:root{color-scheme:dark;--ink: #ededed;--muted: #a1a1a1;--surface: #171717;--control: #272727;--control-hover: #343434;--line: rgba(255, 255, 255, .1);--select: #dedede;--select-ink: #171717;--focus: #bdbdbd;--side-w: 340px;--tool-size: 44px;--tool-rail-w: 52px}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;background:#101010;color:var(--ink);font:14px/1.5 ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;overscroll-behavior:none}canvas{display:block;touch-action:none}.enter-label{font:600 13px/1 ui-monospace,SF Mono,Menlo,Consolas,monospace;letter-spacing:.22em;color:#2f2f2f;user-select:none;pointer-events:none;white-space:nowrap}.panel{position:fixed;display:flex;gap:0;align-items:stretch;pointer-events:none}.panel>*{pointer-events:auto}.panel[data-edge=side]{top:0;bottom:0;left:0;flex-direction:row-reverse}.panel[data-edge=sheet]{left:0;right:0;bottom:0;flex-direction:column}.tool-rail{display:flex;flex-direction:column;align-items:flex-start;align-self:center;gap:4px;width:var(--tool-rail-w);padding:6px 4px;background:var(--surface);border:1px solid var(--line);border-left:0;border-radius:0 14px 14px 0}.tool-btn{display:flex;align-items:center;flex:none;height:var(--tool-size);padding:0;border:0;border-radius:10px;background:transparent;color:var(--muted);font:inherit;cursor:pointer;transition:background-color .12s ease,color .12s ease,padding-right .16s cubic-bezier(.22,.61,.36,1)}.tool-icon{display:grid;place-items:center;flex:none;width:var(--tool-size);height:var(--tool-size)}.tool-label{display:block;max-width:0;overflow:hidden;transition:max-width .18s cubic-bezier(.22,.61,.36,1)}.tool-label>span{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.tool-btn:hover,.tool-btn:focus-visible{padding-right:14px;background:var(--control);color:var(--ink)}.tool-btn:hover .tool-label,.tool-btn:focus-visible .tool-label{max-width:14ch}.tool-btn[data-on]{background:var(--select);color:var(--select-ink)}.tool-chevron{transition:transform .2s ease;transform:rotate(90deg)}.tool-btn[data-on] .tool-chevron{transform:rotate(-90deg)}.tool-count>.hud-of{margin-left:0}.tool-count{flex:none;width:var(--tool-size);text-align:center;color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}.tool-sep{flex:none;width:var(--tool-size);height:1px;margin:4px 0;background:var(--line)}.panel-toggle{display:flex;align-items:center;gap:8px;flex:none;align-self:flex-start;margin-left:calc(14px + env(safe-area-inset-left,0px));padding:9px 14px;border:1px solid var(--line);border-bottom:0;border-radius:12px 12px 0 0;background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;transition:background-color .12s ease}.panel-toggle:hover{background:var(--control)}.panel-count{color:var(--muted);font-variant-numeric:tabular-nums}.panel-chevron{transition:transform .2s ease}.panel[data-open] .panel-chevron{transform:rotate(180deg)}.panel-collapse{display:grid;min-height:0;min-width:0;transition:grid-template-rows .26s cubic-bezier(.22,.61,.36,1),grid-template-columns .26s cubic-bezier(.22,.61,.36,1),visibility 0s .26s;visibility:hidden}.panel[data-open] .panel-collapse{visibility:visible;transition:grid-template-rows .26s cubic-bezier(.22,.61,.36,1),grid-template-columns .26s cubic-bezier(.22,.61,.36,1),visibility 0s}.panel[data-edge=sheet] .panel-collapse{grid-template-rows:0fr}.panel[data-edge=sheet][data-open] .panel-collapse{grid-template-rows:1fr}.panel[data-edge=side] .panel-collapse{grid-template-columns:0fr}.panel[data-edge=side][data-open] .panel-collapse{grid-template-columns:1fr}.panel-clip{overflow:hidden;min-height:0;min-width:0}.panel-surface{display:flex;flex-direction:column;gap:16px;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;background:var(--surface)}.panel[data-edge=side] .panel-surface{width:var(--side-w);height:100%;padding:14px 16px calc(20px + env(safe-area-inset-bottom,0px)) calc(16px + env(safe-area-inset-left,0px));padding-top:calc(14px + env(safe-area-inset-top,0px));border-right:1px solid var(--line)}.panel[data-edge=sheet] .panel-surface{width:100%;max-height:min(38dvh,380px);padding:14px calc(16px + env(safe-area-inset-right,0px)) calc(16px + env(safe-area-inset-bottom,0px)) calc(16px + env(safe-area-inset-left,0px));border-top:1px solid var(--line);border-radius:16px 16px 0 0}.panel-rows{display:flex;flex-direction:column}.panel-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;padding-top:16px;border-top:1px solid var(--line)}.hud-group{display:flex;flex-direction:column}.hud-group+.hud-group{border-top:1px solid var(--line)}.hud-group-head{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:12px 0 8px;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.hud-group-chevron{flex:none;color:var(--muted);transition:transform .2s ease;transform:rotate(180deg)}.hud-group[data-open] .hud-group-chevron{transform:none}.hud-group-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .2s cubic-bezier(.22,.61,.36,1),visibility 0s .2s;visibility:hidden}.hud-group[data-open] .hud-group-body{grid-template-rows:1fr;visibility:visible;transition:grid-template-rows .2s cubic-bezier(.22,.61,.36,1),visibility 0s}.hud-group-clip{overflow:hidden;min-height:0}.hud-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(126px,1fr));gap:6px;padding-bottom:12px}.hud-row{display:flex;align-items:center;gap:8px}.hud-sliders{display:flex;flex-direction:column;gap:4px}.hud-label{color:var(--muted);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.09em}.hud-row>.hud-label{width:62px;flex:none}.hud-value{font-variant-numeric:tabular-nums;min-width:24px;text-align:right}.hud-hint{margin:0;color:var(--muted);font-size:12px}.hud-group+.hud-hint{padding-top:14px;border-top:1px solid var(--line)}.hud-hint+.hud-hint{padding-top:8px}.hud-of{color:var(--muted);font-size:12px;margin-left:3px}.chip{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 12px;border:0;border-radius:8px;background:var(--control);color:var(--ink);font:inherit;line-height:1.2;cursor:pointer;transition:background-color .12s ease,color .12s ease}.chip:hover{background:var(--control-hover)}.chip-on,.chip-on:hover{background:var(--select);color:var(--select-ink)}.chip-action{justify-content:flex-start;gap:8px}.chip-swatch{display:inline-flex;flex-direction:column;flex:none;width:11px;height:11px;margin-right:7px;border-radius:3px;overflow:hidden;box-shadow:0 0 0 1px #00000059}.chip-swatch>span{flex:1}.chip-swatch-solid{display:inline-block}.hud-range{-webkit-appearance:none;appearance:none;flex:1;min-width:0;height:20px;background:transparent;cursor:pointer}.hud-range::-webkit-slider-runnable-track{height:4px;border-radius:999px;background:var(--control)}.hud-range::-moz-range-track{height:4px;border-radius:999px;background:var(--control)}.hud-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;margin-top:-5px;border-radius:50%;background:var(--ink);border:none}.hud-range::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--ink);border:none}.hud-range:focus-visible,.chip:focus-visible,.panel-toggle:focus-visible,.hud-group-head:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.tool-btn:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}@media (pointer: coarse){.chip,.panel-toggle{min-height:44px}.hud-range{height:44px}}@media (prefers-reduced-motion: reduce){.panel-collapse,.panel-chevron,.panel-toggle,.hud-group-body,.hud-group-chevron,.tool-btn,.tool-label,.tool-chevron,.chip{transition:none}}
