*{margin:0;padding:0;box-sizing:border-box}body{overflow:hidden;background:#000}canvas{display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:0;pointer-events:none}#start-overlay,#ui,#debug{z-index:2}#ui{position:fixed;bottom:20px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:14px;background:#00000073;backdrop-filter:blur(6px);padding:8px 16px;border-radius:6px;font:12px/1 system-ui,sans-serif;color:#ffffffb3;user-select:none}#ui label{display:flex;align-items:center;gap:8px}#ui input[type=range]{width:100px;accent-color:rgba(255,255,255,.6);cursor:pointer}#pause,#toggle-debug,#fullscreen{background:none;border:1px solid rgba(255,255,255,.35);color:#ffffffb3;padding:3px 10px;border-radius:4px;cursor:pointer;font:inherit}#pause:hover,#toggle-debug:hover,#fullscreen:hover{background:#ffffff1a}#toggle-debug{opacity:.6}#ui{transition:opacity .25s}body:not(.ui-reveal):not(:has(#debug.visible)) #ui{opacity:0;pointer-events:none}:root.idle,:root.idle *{cursor:none!important}#debug{position:fixed;top:16px;left:16px;width:240px;max-height:calc(100vh - 80px);overflow-y:scroll;background:#0000008c;backdrop-filter:blur(8px);border-radius:6px;padding:10px 12px;font:11px/1.4 Courier New,monospace;color:#ffffffd9;pointer-events:none;z-index:5;display:none}#debug.visible{display:block;pointer-events:auto}#debug::-webkit-scrollbar{width:4px}#debug::-webkit-scrollbar-track{background:transparent}#debug::-webkit-scrollbar-thumb{background:#ffffff40;border-radius:2px}.dbg-tabs{display:flex;flex-wrap:wrap;gap:3px;margin-bottom:10px;pointer-events:all}.dbg-tab-btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:#ffffff80;font:600 9px/1 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.04em;padding:4px 6px;border-radius:3px;cursor:pointer}.dbg-tab-btn:hover{background:#ffffff1f}.dbg-tab-btn.active{background:#6eb5ff;border-color:#6eb5ff;color:#06141f}.dbg-tab{display:none}.dbg-tab.active{display:block}.sys-active{opacity:.35;pointer-events:none}.sys-active input,.sys-active select{cursor:not-allowed}.sys-scaled{position:relative}.sys-scaled:after{content:"×";position:absolute;right:-2px;top:-2px;font-size:8px;color:#ffcf6ecc}.dbg-note{font-size:9px;line-height:1.5;color:#fff6;margin-bottom:10px}#debug h3{font:600 10px/1 system-ui,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#fff6;margin-bottom:10px}.dbg-row{display:grid;grid-template-columns:80px 1fr 36px;align-items:center;gap:5px;margin-bottom:5px}.dbg-label{color:#ffffff73;font-size:10px}.dbg-bar-track{height:4px;background:#ffffff1f;border-radius:2px;overflow:hidden}.dbg-bar-fill{height:100%;border-radius:2px;transition:width .05s linear}.dbg-val{text-align:right;font-size:10px;color:#fff9}#bar-momentum .dbg-bar-fill{background:#6eb5ff}#bar-restlessness .dbg-bar-fill{background:#7fffb0}#bar-noisespeed .dbg-bar-fill{background:#ffcf6e}#bar-restlessness.low .dbg-bar-fill{background:#ff6e6e}.dbg-divider{border:none;border-top:1px solid rgba(255,255,255,.08);margin:8px 0}.dbg-sub{font:600 9px/1 system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#ffffff4d;margin:10px 0 5px;padding-bottom:3px;border-bottom:1px solid rgba(255,255,255,.06)}.dbg-sub:first-of-type{margin-top:4px}.dbg-scalar{display:flex;justify-content:space-between;font-size:10px;margin-bottom:5px;color:#ffffff80}.dbg-scalar span:last-child{color:#ffffffbf}.dbg-graph{display:block;width:100%;height:60px;background:#00000040;border-radius:2px;margin-bottom:6px}.dbg-toggle{display:flex;align-items:center;gap:7px;font-size:10px;color:#ffffff8c;margin-bottom:5px;cursor:pointer;pointer-events:all}.dbg-toggle input{accent-color:#6eb5ff;cursor:pointer}.dbg-slider-row{display:grid;grid-template-columns:46px 1fr 38px;align-items:center;gap:5px;margin-bottom:4px;pointer-events:all;font-size:10px;color:#ffffff73}.dbg-slider-row input[type=range]{width:100%;accent-color:#ffcf6e;cursor:pointer;height:12px}.dbg-slider-row span:last-child{color:#ffffffb3;text-align:right;font-size:9px}[data-param-group]:not(.dbg-colors){display:contents}.dbg-colors{display:grid;grid-template-columns:1fr 1fr;gap:3px 8px;pointer-events:all}.dbg-color{display:flex;align-items:center;gap:6px;font-size:10px;color:#ffffff80}.dbg-color input[type=color]{width:22px;height:16px;padding:0;border:1px solid rgba(255,255,255,.2);border-radius:3px;background:none;cursor:pointer;flex:none}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:block;src:url(/assets/CormorantGaramond-SemiBold-BTJF-F_Y.woff2) format("woff2")}#start-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse 46% 52% at 50% 50%,#2c24149e,#2c241400),radial-gradient(ellipse at center,#84775aa8,#84775a80 80%);backdrop-filter:blur(1.5px) saturate(.8);cursor:pointer;z-index:10;color:#f4eedc;transition:opacity .9s ease}#start-overlay:before{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(40,30,14,.08) 0 1px,transparent 1px 3px),repeating-linear-gradient(90deg,rgba(40,30,14,.08) 0 1px,transparent 1px 3px);mix-blend-mode:multiply}#start-overlay.leaving{opacity:0;pointer-events:none}.start-card{position:relative;max-width:92vw;margin:0 24px;text-align:center;font-family:Iowan Old Style,Palatino Linotype,Palatino,Georgia,serif;text-shadow:0 1px 14px rgba(36,28,12,.55);transition:transform .9s ease}#start-overlay.leaving .start-card{transform:scale(1.03)}.start-card h1{font:600 calc(clamp(2.8rem,7.5vw,5.6rem)*1.2) /1 "Cormorant Garamond","Iowan Old Style",Georgia,serif;letter-spacing:.05em;text-transform:lowercase;margin:0 -.05em 2.2rem 0}.start-card h1 .start-dash{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.start-card h1 .start-subtitle{display:block;margin-top:.9rem;font-size:.3em;letter-spacing:.22em;margin-right:-.22em}.start-lead{max-width:34rem;margin-left:auto;margin-right:auto;font-size:1.3rem;font-style:italic;line-height:1.55;margin-bottom:1.6rem}.start-lead span{display:block}.start-note{font:500 .8rem/1.7 Avenir Next,Gill Sans,system-ui,sans-serif;letter-spacing:.04em;margin:0 auto 2.4rem;max-width:25rem;color:#f4eedce0}.start-actions{display:flex;flex-direction:column;align-items:center;gap:1.2rem}.start-begin,.start-begin-fs{cursor:pointer;background:none;border:0;color:inherit;text-shadow:inherit}.start-begin{padding:.2rem .4rem;font:600 1.5rem/1 Avenir Next,Gill Sans,system-ui,sans-serif;letter-spacing:.3em;text-transform:lowercase;margin-right:-.3em;animation:start-breathe 3.6s ease-in-out infinite}.start-begin-fs{font:500 .82rem/1 Avenir Next,Gill Sans,system-ui,sans-serif;letter-spacing:.18em;color:#f4eedce0;padding:.3rem .5rem}.start-begin:hover,.start-begin:focus-visible,.start-begin-fs:focus-visible{outline:none;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.45em}@keyframes start-breathe{50%{opacity:.72}}@media (prefers-reduced-motion: reduce){.start-begin{animation:none}#start-overlay,.start-card{transition-duration:.01s}}#ui{transition:opacity .8s ease}body:has(#start-overlay:not(.leaving)) #ui{opacity:0;pointer-events:none}.fs-hint{position:fixed;bottom:28px;left:50%;transform:translate(-50%);z-index:3;padding:.6rem 1.2rem;background:#2c2414b3;color:#f4eedc;font:500 .82rem/1 Avenir Next,Gill Sans,system-ui,sans-serif;letter-spacing:.14em;pointer-events:none}
