:root{--ink: #f2e7d5;--ink-dim: rgba(242, 231, 213, .62);--accent: #d9a05b;--bg: #100b08;--hud-bg: rgba(16, 11, 8, .55);--serif: "Cormorant Garamond", Georgia, serif}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;background:var(--bg);overflow:hidden;font-family:var(--serif);-webkit-font-smoothing:antialiased}#app,#app canvas{position:fixed;inset:0;width:100%;height:100%;height:100dvh;display:block;touch-action:none}.landing{position:fixed;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;text-align:center;background:radial-gradient(120% 90% at 50% 110%,rgba(217,160,91,.16),transparent 55%),radial-gradient(100% 100% at 50% 0%,rgba(58,44,30,.35),transparent 60%),var(--bg);transition:opacity 1.4s ease}.landing--fade{opacity:0;pointer-events:none}.landing__inner{padding:2rem;max-width:34rem;animation:rise 1.6s ease both}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.landing__title{font-weight:300;letter-spacing:.34em;color:var(--ink);font-size:clamp(1.7rem,5.5vw,3rem);margin-bottom:1.1rem;text-indent:.34em}.landing__subtitle{font-style:italic;font-weight:300;color:var(--ink-dim);font-size:clamp(1.05rem,3.4vw,1.45rem);line-height:1.5;margin-bottom:2.4rem}.landing__btn{font-family:var(--serif);font-size:clamp(.95rem,2.8vw,1.12rem);letter-spacing:.22em;text-indent:.22em;color:var(--ink);background:transparent;border:1px solid rgba(217,160,91,.55);border-radius:999px;padding:.95em 2.4em;cursor:pointer;transition:background .35s ease,border-color .35s ease,transform .2s ease;-webkit-tap-highlight-color:transparent}.landing__btn:hover:not([disabled]){background:#d9a05b24;border-color:var(--accent)}.landing__btn:active:not([disabled]){transform:scale(.985)}.landing__btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.landing__btn[disabled]{opacity:.4;cursor:default}.landing__hint{margin-top:1.6rem;font-size:.86rem;letter-spacing:.08em;color:#f2e7d566}.landing__error{margin-top:1.4rem;color:#e8a08a;font-size:.95rem;line-height:1.5}.landing__install{display:block;margin:1.2rem auto 0;font-family:var(--serif);font-size:.92rem;letter-spacing:.12em;color:var(--ink-dim);background:none;border:none;border-bottom:1px solid rgba(242,231,213,.25);padding:.3em .1em;cursor:pointer}.landing__install[hidden]{display:none}.landing__install:hover{color:var(--ink);border-color:var(--accent)}.landing__install:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.hud{position:fixed;z-index:15;right:max(1rem,env(safe-area-inset-right));top:max(1rem,env(safe-area-inset-top));display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;opacity:0;transition:opacity 1.2s ease 1.2s}.hud--show{opacity:1}.hud__toggle{width:40px;height:40px;border-radius:50%;border:1px solid rgba(242,231,213,.18);background:#100b0859;color:#f2e7d5b3;display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:color .3s ease,background .3s ease,opacity .3s ease;opacity:.55;-webkit-tap-highlight-color:transparent}.hud__toggle:hover,.hud__toggle:focus-visible,.hud__toggle[aria-expanded=true]{opacity:1;color:var(--ink)}.hud__icon{width:20px;height:20px}.hud__cross{display:none}.hud--muted .hud__cross{display:inline}.hud--muted .hud__waves{display:none}.hud__panel{min-width:13rem;padding:.85rem 1rem;border-radius:14px;background:#100b089e;border:1px solid rgba(242,231,213,.14);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--ink);display:grid;gap:.7rem}.hud__panel[hidden]{display:none}.hud__row{display:flex;align-items:center;gap:.75rem}.hud__label{font-size:.95rem;letter-spacing:.06em;color:var(--ink-dim);min-width:3.6rem}.hud__buttons{justify-content:space-between}.hud__btn{flex:1;font-family:var(--serif);font-size:.95rem;letter-spacing:.08em;color:var(--ink);background:transparent;border:1px solid rgba(242,231,213,.25);border-radius:999px;padding:.4em .9em;cursor:pointer}.hud__btn:hover{background:#f2e7d51a}.hud__btn[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.hud__volume{-webkit-appearance:none;appearance:none;flex:1;height:22px;background:transparent;cursor:pointer}.hud__volume::-webkit-slider-runnable-track{height:3px;background:#f2e7d54d;border-radius:2px}.hud__volume::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;margin-top:-5.5px;border-radius:50%;background:var(--accent);border:none}.hud__volume::-moz-range-track{height:3px;background:#f2e7d54d;border-radius:2px}.hud__volume::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--accent);border:none}.hud__toggle:focus-visible,.hud__btn:focus-visible,.hud__volume:focus-visible{outline:2px solid var(--accent);outline-offset:3px}body.is-paused #app{filter:saturate(.6) brightness(.7);transition:filter .6s ease}#app{transition:filter .6s ease}@media(max-width:640px){.landing__btn{padding:1.05em 2.1em}}@media(pointer:coarse){.hud__volume::-webkit-slider-thumb{width:20px;height:20px;margin-top:-8.5px}.hud__volume::-moz-range-thumb{width:20px;height:20px}.hud__toggle{width:46px;height:46px;opacity:.7}}@media(prefers-reduced-motion:reduce){.landing__inner{animation:none}.landing,.hud{transition-duration:.4s}}.hud__feedback{display:flex;flex-direction:column;gap:.5rem}.hud__text{width:100%;resize:none;box-sizing:border-box;padding:.5rem .6rem;background:#f2e7d50f;color:var(--ink);font:inherit;font-size:.95rem;border:1px solid rgba(242,231,213,.3);border-radius:6px}.hud__text:focus-visible{outline:2px solid var(--accent)}
