:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#030511;color:#edfaff;--cyan: #64f6e4;--violet: #9e7cff;--coral: #ff8a79;--wave-core: #64f6e4;--wave-accent: #9e7cff}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden;background:#030511}body{overscroll-behavior:none;touch-action:none;user-select:none}#app{position:fixed;inset:0;min-height:100dvh;isolation:isolate}#field{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:crosshair}.hud{position:absolute;z-index:3;inset:max(13px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) auto max(16px,env(safe-area-inset-left));height:40px;display:grid;grid-template-columns:1fr auto 1fr;align-items:start;pointer-events:none;text-shadow:0 2px 9px #000}.score{font:700 13px/1.1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.16em;color:#e4f9ffdb}.score i{display:block;min-height:13px;color:var(--wave-core);font:800 8px/13px ui-monospace,monospace;font-style:normal;letter-spacing:.11em;transition:color .35s}.wave{display:grid;place-items:center;gap:5px}.wave b{font:600 12px/1 ui-monospace,monospace;letter-spacing:.34em;color:#f0f8ffbd;transform:translate(.17em)}.wave span{width:58px;height:2px;background:#ffffff21;overflow:hidden;position:relative}.wave span:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--wave-accent),var(--wave-core));transform-origin:left;transform:scaleX(var(--wave, 0));box-shadow:0 0 10px var(--wave-core);transition:background .35s}.life{justify-self:end;display:flex;gap:6px;padding-top:1px}.life i{width:7px;height:7px;border:1px solid var(--wave-core);transform:rotate(45deg);box-shadow:0 0 8px color-mix(in srgb,var(--wave-core) 55%,transparent);transition:border-color .35s}.life i.off{border-color:#ffffff1f;box-shadow:none}button{color:inherit;font:inherit;cursor:pointer}button:focus-visible{outline:2px solid #fff;outline-offset:3px}.tools{position:absolute;z-index:5;right:max(14px,env(safe-area-inset-right));top:max(49px,calc(env(safe-area-inset-top) + 44px));display:flex;gap:7px}.tool{width:44px;height:44px;padding:0;border-radius:50%;border:1px solid rgba(255,255,255,.12);color:#e6f6ff9e;background:#03051157;backdrop-filter:blur(10px);box-shadow:inset 0 0 18px #829bff0a}.sound{font-size:16px}.tilt-tool{font-size:20px;line-height:1}.sound[aria-pressed=false]{color:#ffffff40}.pause span,.pause span:after{display:inline-block;width:3px;height:13px;background:currentColor;border-radius:3px;content:""}.pause span:after{transform:translate(5px);vertical-align:top}.tool:active{transform:scale(.92)}.pulse{--charge: 0;position:absolute;z-index:5;right:max(18px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));width:74px;height:74px;padding:0;border-radius:50%;border:1px solid color-mix(in srgb,var(--wave-accent) 56%,transparent);background:conic-gradient(from -90deg,var(--wave-core) calc(var(--charge) * 1turn),rgba(255,255,255,.09) 0);box-shadow:0 0 0 8px #0305118f,0 0 38px color-mix(in srgb,var(--wave-core) calc(var(--charge) * 34%),transparent);transition:transform .12s ease,opacity .2s,background .35s}.pulse:before{content:"";position:absolute;inset:5px;border-radius:inherit;background:radial-gradient(circle at 38% 32%,#1a2945fa,#040713fa 70%)}.pulse span,.pulse span:before,.pulse span:after{position:absolute;inset:50% auto auto 50%;width:17px;height:17px;border:1px solid rgba(230,252,255,.8);transform:translate(-50%,-50%) rotate(45deg);content:""}.pulse span:before{width:8px;height:8px}.pulse span:after{width:2px;height:2px;background:var(--wave-core);border:0;box-shadow:0 0 9px 3px color-mix(in srgb,var(--wave-core) 65%,transparent)}.pulse:active{transform:scale(.9)}.pulse[aria-disabled=true]{opacity:.55}.curtain{position:absolute;z-index:8;inset:0;display:grid;place-content:center;justify-items:center;text-align:center;gap:19px;padding:24px;background:radial-gradient(circle at 50% 55%,#1e154f85,#030511ed 52%,#030511);transition:opacity .42s ease,visibility .42s}.curtain.hidden{opacity:0;visibility:hidden;pointer-events:none}.mark{width:68px;height:68px;position:relative;display:grid;place-items:center;animation:breathe 2.6s ease-in-out infinite}.mark[hidden]{display:none}.mark i{position:absolute;width:38px;height:38px;border:1px solid var(--wave-core);transform:rotate(45deg);box-shadow:0 0 18px color-mix(in srgb,var(--wave-core) 24%,transparent)}.mark i:nth-child(2){width:56px;height:56px;border-color:color-mix(in srgb,var(--wave-accent) 50%,transparent);animation:turn 10s linear infinite}.mark i:nth-child(3){width:9px;height:9px;background:#fff;border:0;box-shadow:0 0 14px 4px var(--wave-core)}.wordmark{max-width:min(90vw,600px);font:300 clamp(34px,9vw,58px)/.9 ui-sans-serif,sans-serif;letter-spacing:-.06em;overflow-wrap:anywhere}.wordmark span{color:var(--wave-core);font-weight:760}.curtain p{max-width:min(90vw,560px);margin:0;color:#e2f4ff8a;font-size:9px;line-height:1.6;letter-spacing:.18em;font-weight:700}.curtain button{min-width:196px;min-height:50px;border:1px solid color-mix(in srgb,var(--wave-core) 58%,transparent);border-radius:99px;background:#09141fd1;font-size:10px;font-weight:800;letter-spacing:.2em;box-shadow:0 0 28px color-mix(in srgb,var(--wave-core) 11%,transparent)}.curtain .fresh{min-height:40px;margin-top:-8px;border-color:#ffffff21;background:transparent;color:#ebf9ff80}.curtain .fresh[hidden]{display:none}.tilt-recovery{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;width:min(420px,90vw)}.tilt-recovery[hidden]{display:none}.tilt-recovery button{min-width:180px;min-height:44px}.tilt-recovery button:last-child{border-color:#ffffff47;color:#ebf9ffc7}.tilt-panel{width:min(290px,82vw);display:grid;gap:8px;margin-top:-6px;color:#e2f4ff99}.tilt-panel[hidden]{display:none}.tilt-panel span{display:flex;justify-content:space-between;font:800 8px/1 ui-monospace,monospace;letter-spacing:.15em}.tilt-panel output{color:var(--wave-core)}.tilt-panel input{width:100%;min-height:44px;margin:-11px 0;accent-color:var(--wave-core);cursor:pointer}.tilt-status{position:absolute;z-index:4;left:max(16px,env(safe-area-inset-left));bottom:max(24px,env(safe-area-inset-bottom));max-width:min(62vw,320px);padding:7px 10px;border:1px solid rgba(100,246,228,.2);border-radius:99px;background:#030511a3;color:#e7fbffa6;backdrop-filter:blur(8px);font:800 8px/1.25 ui-monospace,monospace;letter-spacing:.12em;pointer-events:none}.tilt-status[hidden]{display:none}.tilt-guide{--guide-x: 0px;--guide-y: 0px;--guide-phone-angle: 0deg;--guide-vector-angle: 0deg;--guide-reach: 0;--guide-progress: 0;position:absolute;z-index:9;left:max(14px,env(safe-area-inset-left));top:max(70px,calc(env(safe-area-inset-top) + 58px));width:min(228px,calc(100vw - 28px));min-height:166px;padding:12px;display:grid;grid-template-columns:132px 1fr;gap:10px;align-items:center;border:1px solid color-mix(in srgb,var(--wave-core) 46%,transparent);border-radius:22px;background:#030713d1;color:#eefdffe6;backdrop-filter:blur(12px);box-shadow:0 0 34px #0000005c,inset 0 0 26px color-mix(in srgb,var(--wave-core) 7%,transparent);pointer-events:none;transform-origin:top left;transition:width .3s ease,min-height .3s ease,padding .3s ease,opacity .3s ease,background .3s ease}.tilt-guide[hidden]{display:none}.tilt-guide__dial{position:relative;width:132px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle,rgba(100,246,228,.08) 0 30%,transparent 31%),conic-gradient(var(--wave-core) calc(var(--guide-progress) * 1turn),rgba(255,255,255,.1) 0);box-shadow:inset 0 0 0 5px #030713f5,0 0 22px color-mix(in srgb,var(--wave-core) 13%,transparent)}.tilt-guide__dial:before{content:"";position:absolute;inset:8px;border:1px solid rgba(255,255,255,.11);border-radius:50%}.tilt-guide__axis{position:absolute;background:#dcfaff21}.tilt-guide__axis--x{width:100%;height:1px}.tilt-guide__axis--y{width:1px;height:100%}.tilt-guide__deadzone{position:absolute;width:42px;height:42px;border:1px dashed color-mix(in srgb,var(--wave-core) 62%,transparent);border-radius:50%;background:#040d1680}.tilt-guide__vector{position:absolute;left:50%;top:50%;width:calc(42px * var(--guide-reach));height:2px;transform-origin:left center;transform:rotate(var(--guide-vector-angle));background:var(--wave-core);box-shadow:0 0 10px var(--wave-core);opacity:calc(.2 + var(--guide-reach) * .8)}.tilt-guide__phone{position:absolute;width:36px;height:59px;overflow:visible;transform:translate(var(--guide-x),var(--guide-y)) rotate(var(--guide-phone-angle));transform-origin:50% 68%;transition:transform .08s linear;filter:drop-shadow(0 0 9px color-mix(in srgb,var(--wave-core) 55%,transparent))}.tilt-guide__phone rect,.tilt-guide__phone circle,.tilt-guide__phone path{fill:#050d18f0;stroke:#ecfdffe6;stroke-width:2;vector-effect:non-scaling-stroke}.tilt-guide__phone rect:nth-child(2){fill:color-mix(in srgb,var(--wave-core) 12%,rgba(5,13,24,.96));stroke:color-mix(in srgb,var(--wave-core) 64%,white)}.tilt-guide__cursor{position:absolute;width:7px;height:7px;border:1px solid #fff;border-radius:50%;transform:translate(var(--guide-x),var(--guide-y));box-shadow:0 0 10px var(--wave-core)}.tilt-guide__copy{min-width:0;display:grid;gap:8px;align-content:center}.tilt-guide__copy strong{font:850 9px/1.4 ui-monospace,monospace;letter-spacing:.12em;color:#f4ffff}.tilt-guide__copy span{font:750 7px/1.5 ui-monospace,monospace;letter-spacing:.1em;color:#e0f9ff94}.tilt-guide__copy output{font:800 14px/1 ui-monospace,monospace;letter-spacing:.08em;color:var(--wave-core)}.tilt-guide__hold{height:3px;overflow:hidden;border-radius:3px;background:#ffffff1c}.tilt-guide__hold b{display:block;width:100%;height:100%;transform-origin:left;transform:scaleX(var(--guide-progress));background:var(--wave-core);box-shadow:0 0 8px var(--wave-core)}.tilt-guide.compact{width:54px;min-height:54px;padding:5px;border-radius:50%;opacity:.62;background:#03071394}.tilt-guide.compact .tilt-guide__dial{width:42px}.tilt-guide.compact .tilt-guide__phone{width:14px;height:23px}.tilt-guide.compact .tilt-guide__deadzone{width:17px;height:17px}.tilt-guide.compact .tilt-guide__copy{display:none}.tilt-guide[data-phase=denied],.tilt-guide[data-phase=unavailable]{--wave-core: #ffb078}.tilt-guide[data-phase=stale]{--wave-core: #ffd07b}.message{position:absolute;z-index:4;left:50%;top:18%;transform:translate(-50%,-50%);color:#effcffdb;font:700 10px/1 ui-monospace,monospace;letter-spacing:.24em;text-align:center;text-shadow:0 0 14px #000,0 0 20px var(--wave-core);opacity:0;transition:opacity .3s,transform .4s;pointer-events:none;white-space:nowrap}.message.show{opacity:1;transform:translate(-50%,-60%)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes breathe{50%{transform:scale(1.08);filter:brightness(1.4)}}@keyframes turn{to{transform:rotate(405deg)}}@media(orientation:landscape){.pulse{width:68px;height:68px}.tools{top:max(12px,env(safe-area-inset-top));right:max(88px,calc(env(safe-area-inset-right) + 82px))}.hud{inset-left:max(20px,env(safe-area-inset-left));inset-right:max(20px,env(safe-area-inset-right))}.message{top:21%}.curtain{gap:14px}.mark{width:52px;height:52px;transform:scale(.78)}.wordmark{font-size:clamp(32px,7vh,50px)}.curtain button{min-height:45px}.tilt-status{bottom:max(13px,env(safe-area-inset-bottom));max-width:48vw}.tilt-guide{top:max(58px,calc(env(safe-area-inset-top) + 48px));width:min(218px,31vw);min-height:124px;grid-template-columns:98px 1fr;padding:9px}.tilt-guide__dial{width:98px}.tilt-guide.compact{width:50px;min-height:50px;grid-template-columns:1fr}.tilt-guide.compact .tilt-guide__dial{width:38px}}@media(max-height:430px)and (orientation:landscape){.mark{display:none}.curtain{grid-auto-flow:row;padding-block:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-bottom))}.tools{gap:5px}.tool{width:44px;height:44px}.tilt-panel{width:250px}}@media(pointer:coarse){#field{cursor:default}}@media(prefers-reduced-motion:reduce){.mark,.mark i,.pulse,.curtain,.message,.tilt-guide,.tilt-guide__phone{animation:none!important;transition-duration:.01ms!important}}@media(forced-colors:active){.tool,.pulse,.curtain button,.tilt-guide{forced-color-adjust:none;border-color:CanvasText;color:CanvasText;background:Canvas}.life i{border-color:CanvasText}.tilt-guide__phone rect,.tilt-guide__phone circle,.tilt-guide__phone path,.tilt-guide__deadzone{stroke:CanvasText}}
