:root{color-scheme:dark;font-family:Arial Narrow,Roboto Condensed,Helvetica Neue,sans-serif;background:#07060b;color:#ede8dd;font-synthesis:none}*{box-sizing:border-box}html,body,#stage{width:100%;height:100%;margin:0;overflow:hidden}body{background:#07060b}#stage,#scene{position:fixed;inset:0}#scene{display:block;width:100%;height:100%;touch-action:none;cursor:crosshair}#scene.is-dragging{cursor:grabbing}.title-card{position:fixed;z-index:3;top:clamp(22px,4.4vw,64px);left:clamp(22px,4.6vw,72px);width:min(290px,44vw);pointer-events:none;text-transform:uppercase;text-shadow:0 2px 24px rgba(7,6,11,.8)}.eyebrow,.edition{margin:0;color:#e36d4acc;font-family:ui-monospace,Cascadia Mono,SFMono-Regular,monospace;font-size:9px;line-height:1.5;letter-spacing:.2em}.title-card h1{margin:11px 0 15px;font-size:clamp(30px,4.1vw,66px);font-weight:500;line-height:.84;letter-spacing:-.055em}.edition{max-width:270px;color:#ede8dd70;letter-spacing:.12em}.gesture-note{position:fixed;z-index:3;right:clamp(18px,3vw,42px);bottom:clamp(18px,2.6vw,34px);color:#ede8dd61;font:9px/1 ui-monospace,Cascadia Mono,monospace;letter-spacing:.17em;pointer-events:none}.vignette,.grain{position:fixed;z-index:2;inset:0;pointer-events:none}.vignette{background:linear-gradient(90deg,rgba(7,6,11,.52),transparent 22%,transparent 78%,rgba(7,6,11,.2)),radial-gradient(circle at 52% 47%,transparent 42%,rgba(7,6,11,.28) 78%,rgba(7,6,11,.78) 120%)}.grain{opacity:.055;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.92'/%3E%3C/svg%3E");animation:grain-shift .38s steps(2) infinite}#controls{position:fixed;z-index:8;top:18px;right:18px}@keyframes grain-shift{0%{transform:translate3d(-1.5%,-1%,0) scale(1.04)}50%{transform:translate3d(1%,1.5%,0) scale(1.05)}to{transform:translate3d(-.5%,1%,0) scale(1.04)}}@media(max-width:720px){.title-card{top:20px;left:18px;width:43vw}.title-card h1{margin-top:8px;font-size:clamp(25px,9vw,44px)}.edition{display:none}.gesture-note{right:auto;left:18px;bottom:18px;max-width:180px;line-height:1.5}#controls{top:10px;right:10px}}@media(max-width:420px){.eyebrow{letter-spacing:.12em}.title-card h1{font-size:30px}}@media(prefers-reduced-motion:reduce){.grain{animation:none}}:root{--sh-bg: rgba(8, 8, 8, .94);--sh-border: rgba(255, 255, 255, .06);--sh-text: rgba(255, 255, 255, .88);--sh-text-dim: rgba(255, 255, 255, .38);--sh-text-mid: rgba(255, 255, 255, .55);--sh-surface: rgba(255, 255, 255, .06);--sh-surface-hover: rgba(255, 255, 255, .1);--sh-accent: rgba(255, 255, 255, .7);--sh-radius: 4px;--sh-width: 320px;--sh-font: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}.sh-panel{position:fixed;top:0;right:0;width:var(--sh-width);max-width:50vw;height:100%;box-sizing:border-box;background:var(--sh-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-left:1px solid var(--sh-border);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;z-index:100;transition:width .28s cubic-bezier(.4,0,.2,1),opacity .2s ease,min-width .28s cubic-bezier(.4,0,.2,1);font-family:var(--sh-font);color:var(--sh-text);font-size:12px;line-height:1.4;-webkit-user-select:none;user-select:none}.sh-panel input:not([type=range]):not([type=color]):not([type=checkbox]):not([type=radio]),.sh-panel textarea,.sh-panel [contenteditable=true]{-webkit-user-select:text;user-select:text}.sh-panel.collapsed{width:0;min-width:0;opacity:0;pointer-events:none;overflow:hidden;border-left-width:0}.sh-panel-body{padding:16px 14px 32px;display:flex;flex-direction:column;gap:2px}.sh-panel-hint{position:fixed;right:14px;bottom:14px;padding:5px 10px;font-family:var(--sh-font);font-size:10px;text-transform:uppercase;letter-spacing:2px;color:var(--sh-text-dim);background:#ffffff0a;border:1px solid var(--sh-border);border-radius:999px;pointer-events:none;z-index:101;transition:opacity .6s ease}.sh-panel-hint.hidden{opacity:0}.sh-folder{margin-bottom:2px}.sh-folder-head{display:flex;align-items:center;gap:6px;padding:8px 2px;cursor:pointer;user-select:none;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:1.8px;color:var(--sh-text-mid);transition:color .15s ease}.sh-folder-head:hover{color:var(--sh-text)}.sh-arrow{font-size:10px;transition:transform .2s ease;display:inline-block}.sh-folder.collapsed .sh-arrow{transform:rotate(-90deg)}.sh-folder-body{display:flex;flex-direction:column;gap:2px;padding-left:4px;overflow:hidden;max-height:4000px;transition:max-height .3s ease,opacity .2s ease}.sh-folder.collapsed>.sh-folder-body{max-height:0;opacity:0;pointer-events:none}.sh-ctrl{padding:6px 4px;display:flex;flex-direction:column;gap:6px}.sh-ctrl-head{display:flex;justify-content:space-between;align-items:baseline}.sh-label{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:1.4px;color:var(--sh-text-dim)}.sh-value{font-size:11px;font-variant-numeric:tabular-nums;color:var(--sh-text-mid);min-width:36px;text-align:right}.sh-slider input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:3px;background:var(--sh-surface);border-radius:2px;cursor:pointer;outline:none}.sh-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:10px;height:10px;background:#fff;border-radius:50%;box-shadow:0 0 6px #ffffff40;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}.sh-slider input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.25);box-shadow:0 0 10px #fff6}.sh-slider input[type=range]::-moz-range-thumb{width:10px;height:10px;background:#fff;border:none;border-radius:50%;box-shadow:0 0 6px #ffffff40;cursor:pointer}.sh-slider input[type=range]::-moz-range-track{height:3px;background:var(--sh-surface);border-radius:2px}.sh-color{flex-direction:row;align-items:center;justify-content:space-between}.sh-color input[type=color]{-webkit-appearance:none;appearance:none;width:36px;height:20px;padding:0;border:1px solid var(--sh-border);border-radius:var(--sh-radius);background:transparent;cursor:pointer}.sh-color input[type=color]::-webkit-color-swatch-wrapper{padding:1px}.sh-color input[type=color]::-webkit-color-swatch{border:none;border-radius:2px}.sh-toggle{flex-direction:row;align-items:center;justify-content:space-between}.sh-switch{position:relative;display:inline-block;width:32px;height:16px;cursor:pointer}.sh-switch input{opacity:0;width:0;height:0;position:absolute}.sh-knob{position:absolute;inset:0;background:var(--sh-surface);border-radius:999px;transition:background .2s ease}.sh-knob:after{content:"";position:absolute;left:2px;top:2px;width:12px;height:12px;background:#ffffff59;border-radius:50%;transition:transform .2s ease,background .2s ease}.sh-switch input:checked+.sh-knob{background:#ffffff26}.sh-switch input:checked+.sh-knob:after{transform:translate(16px);background:#fff}.sh-btn{display:block;width:100%;padding:7px 12px;margin:2px 0;font-family:var(--sh-font);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:1.6px;color:var(--sh-text);background:var(--sh-surface);border:1px solid var(--sh-border);border-radius:var(--sh-radius);cursor:pointer;transition:background .15s ease,border-color .15s ease}.sh-btn:hover{background:var(--sh-surface-hover);border-color:#ffffff1f}.sh-btn:active{background:#ffffff24}.sh-select{flex-direction:row;align-items:center;justify-content:space-between}.sh-select select{padding:4px 8px;font-family:var(--sh-font);font-size:11px;color:var(--sh-text);background:var(--sh-surface);border:1px solid var(--sh-border);border-radius:var(--sh-radius);outline:none;cursor:pointer;min-width:90px;transition:border-color .15s ease}.sh-select select:hover{border-color:#ffffff26}.sh-select select option{background:#111;color:var(--sh-text)}.sh-file{padding:4px}.sh-panel::-webkit-scrollbar{width:5px}.sh-panel::-webkit-scrollbar-track{background:transparent}.sh-panel::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.sh-panel::-webkit-scrollbar-thumb:hover{background:#fff3}
