:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#d5c5a6;background:#141615;font-family:Georgia,serif}*{box-sizing:border-box}body{overscroll-behavior:none;margin:0;overflow:hidden}button{font:inherit;-webkit-tap-highlight-color:transparent}#app{background:radial-gradient(at 50% 35%,#242826 0,#161817 58%,#101211 100%);place-items:center;min-height:100svh;padding:32px;display:grid}.plate{aspect-ratio:1;isolation:isolate;background:radial-gradient(at 40% 25%,#242a28,#1a1f1d 65%,#171c1a);border-radius:5px;width:min(88vw,86svh,940px);position:relative;box-shadow:0 0 0 1px #ffffff09,inset 0 2px 1px #ffffff0a,inset 0 -2px 1px #0009,0 28px 70px #0007,0 3px 8px #0008}.plate:before{content:"";pointer-events:none;z-index:-1;border:1px solid #d2b98b0a;border-radius:2px;position:absolute;inset:7px}.plate-glow{pointer-events:none;z-index:-1;opacity:0;will-change:opacity;border:1px solid #d2b98b30;border-radius:2px;position:absolute;inset:7px;box-shadow:inset 0 0 35px #d2b98b06}.plate[data-gesture=bow] canvas{cursor:ew-resize}.plate[data-glow=off] .plate-glow{will-change:auto;display:none}.plate[data-texture-blend=off]:after{mix-blend-mode:normal}.plate[data-gesture=stir] canvas{cursor:grabbing}.tools button[hidden]{display:none}.plate:after{content:"";pointer-events:none;opacity:.17;border-radius:inherit;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='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' opacity='.22' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E");position:absolute;inset:0}canvas{touch-action:none;border-radius:inherit;cursor:crosshair;width:100%;height:100%;display:block;position:relative}canvas:focus-visible{outline-offset:6px;outline:1px solid #d2b98b88}.tools{z-index:2;gap:9px;display:flex;position:absolute;bottom:17px;left:50%;transform:translate(-50%)}.tools button{color:#b9aa8d;opacity:.46;cursor:pointer;touch-action:none;background:0 0;border:1px solid #0000;border-radius:50%;place-items:center;width:42px;height:42px;transition:opacity .25s,background .25s;display:grid}.tools button:hover,.tools button:focus-visible{opacity:1;background:#d2b98b09;border-color:#d2b98b55;outline:none}.tools button[aria-pressed=true]{opacity:.95;background:#d2b98b12}.tools svg{stroke:currentColor;fill:none;stroke-width:1.25px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.status{z-index:3;text-align:center;color:#d3c3a4;pointer-events:none;margin:0;font-size:13px;line-height:1.5;position:absolute;bottom:74px;left:12%;right:12%}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.debug{z-index:10;top:max(12px, env(safe-area-inset-top));left:max(12px, env(safe-area-inset-left));color:#d5c5a6;background:#111816f2;border:1px solid #d2b98b33;border-radius:7px;width:min(320px,100vw - 24px);max-height:calc(100svh - 24px);padding:14px;font:11px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;position:fixed;overflow:auto;box-shadow:0 8px 32px #0006}.debug[hidden]{display:none}.debug header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.debug button{width:28px;height:28px;color:inherit;cursor:pointer;background:0 0;border:1px solid #d2b98b33;border-radius:3px}.debug label{justify-content:space-between;align-items:center;display:flex}.debug select{color:inherit;font:inherit;background:#1c2722;border:1px solid #d2b98b33;padding:3px}.debug dl{grid-template-columns:1fr auto;gap:2px 12px;margin:12px 0;display:grid}.debug dt{color:#a4af9f}.debug dd{text-align:right;font-variant-numeric:tabular-nums;margin:0}.debug svg{background:#ffffff04;width:100%;height:60px;display:block}.debug polyline{fill:none;stroke:#d2b98b;stroke-width:1px}.debug .budget-line{fill:none;stroke:#829e89;stroke-width:1px;stroke-dasharray:3 3}.debug-note,.debug footer{color:#8e9d8c;font-size:10px;line-height:1.5}.debug footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.debug .copy-json,.debug .show-json,.debug .show-hitch,.debug .copy-hitch,.debug .clear-hitches{width:auto;min-width:76px;font:inherit;color:#d5c5a6;padding:4px 9px}.debug button:disabled{opacity:.5}.debug .latency-test{width:auto;font:inherit;padding:4px 9px}.latency-flash{vertical-align:middle;background:#ffffff10;width:18px;height:18px;margin-left:10px;display:inline-block}.debug .copy-status{margin:6px 0 0;font-size:10px}.debug .copy-status:empty{display:none}.debug .capture-json{width:100%;height:110px;color:inherit;background:#101713;border:1px solid #d2b98b33;margin-top:8px;font:10px/1.4 ui-monospace,monospace}@media (width<=600px){#app{padding:12px}.plate{width:min(100vw - 24px,88svh)}.tools{gap:6px;bottom:10px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}
