:root{color:#fff;font-synthesis:none;--ink:#fff;--muted:#deedfa;--line:#ffffff70;--panel:#095897;--focus:#d8ffe9;background:#176fbc;font-family:Arial,Helvetica,sans-serif;font-weight:400}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,select,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus);outline-offset:5px}button,a{color:inherit}button{transition:background .18s,border-color .18s}button:hover:not(:disabled){border-color:#fff}button.primary,button.secondary,.ghost{background:0 0;border:1.5px solid #ffffffc7;border-radius:99px;min-height:48px;padding:12px 25px;font-size:16px;font-weight:600;line-height:1.3}button.primary:hover:not(:disabled),button.secondary:hover:not(:disabled),.ghost:hover{background:#ffffff18}.text-button{text-underline-offset:5px;background:0 0;border:0;padding:8px 0;font-size:14px;text-decoration:underline}.eyebrow{letter-spacing:.16em;color:#c9e8ff;font-size:11px;font-weight:600}.hint{color:var(--muted);font-size:12px;line-height:1.6}[hidden]{display:none!important}kbd{font:inherit;opacity:.65;font-size:10px}p{line-height:1.55}button span[aria-hidden]{margin-left:12px}.notice{background:#093968bb;border-left:2px solid #ffd7e7;padding:14px 18px;font-size:14px;line-height:1.5}.row{flex-wrap:wrap;gap:16px;display:flex}.good{color:#b9f7d9}.wait{color:#ffe0a2}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}html,body,#root,.app{width:100%;min-height:100%}body{background:radial-gradient(at 69% 60%,#91c2ee 0,#468ecb 45%,#00559e 100%)}.welcome{min-height:100svh;position:relative;overflow:hidden}.hero-scene{pointer-events:none;position:absolute;inset:0 0 0 32%}.hero-scene canvas{width:100%;height:100%;display:block}.landing-content{z-index:1;background:linear-gradient(90deg,#075ca74a,#0000);flex-direction:column;align-items:flex-start;width:45%;min-height:100svh;padding:42px 0 40px 5vw;display:flex;position:relative}.brand{letter-spacing:-.7px;white-space:nowrap;background:0 0;border:0;align-items:center;gap:10px;padding:0;font-size:23px;font-weight:700;text-decoration:none;display:inline-flex}.brand-mark{font-size:36px;font-weight:400;line-height:1}.hero-copy{margin-top:42px}.hero-copy h1{letter-spacing:-.045em;margin:0 0 28px;font-size:clamp(64px,6.25vw,100px);font-weight:700;line-height:.98}.hero-copy p{max-width:355px;margin:0 0 35px;font-size:16px;line-height:1.48}.hero-copy strong{font-weight:600}.journey-button{min-height:51px!important;padding:12px 26px!important;font-size:18px!important}.landing-footer{color:#e1eef9;flex-wrap:wrap;align-items:center;gap:8px 20px;margin-top:auto;padding-top:70px;font-size:11px;display:flex}.landing-footer button{color:inherit;background:0 0;border:0;padding:0;font-size:11px}.landing-footer kbd{margin-left:3px}.setup-dialog{color:#fff;background:#095b9cef;border:1px solid #b6dcf5;border-radius:4px;width:min(440px,100vw - 36px);max-height:calc(100dvh - 40px);padding:42px;overflow:auto;box-shadow:0 28px 100px #00376960}.setup-dialog::backdrop{-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#0331588a}.setup-dialog h2{letter-spacing:-.035em;margin:16px 0 8px;font-size:36px;font-weight:500}.setup-dialog p{color:#e2f1ff;margin:0 0 28px;font-size:14px}.close-button{background:0 0;border:0;padding:2px 8px;font-size:29px;font-weight:300;position:absolute;top:10px;right:14px}.level-choose{border-top:1px solid #ffffff42;border-bottom:1px solid #ffffff42;justify-content:space-between;align-items:center;gap:16px;padding:17px 0;font-size:14px;display:flex}.level-choose select{color:#fff;background:#064779;border:0;border-radius:3px;padding:9px 30px 9px 14px}.record{color:#cce4fa;justify-content:space-between;gap:12px;margin:14px 0 28px;font-size:11px;display:flex}.setup-actions{flex-direction:column;gap:12px;display:flex}.setup-dialog .hint{text-align:center;margin:20px 0 0;font-size:11px}.migration-notice{border-left:2px solid #9ce9c6;margin:18px 0;padding-left:14px}.migration-notice p{margin:0;font-size:12px}.migration-notice button{font-size:12px}.site-header{justify-content:space-between;align-items:center;padding:30px 5vw;display:flex}.lobby{max-width:1080px;margin:auto;padding:35px 32px 60px}.section-heading h1{letter-spacing:-.04em;margin:16px 0;font-size:clamp(42px,5vw,64px);font-weight:500;line-height:1.05}.section-heading p{color:#e3f1ff;max-width:600px;font-size:16px}.lobby-grid{grid-template-columns:1fr 1fr;gap:48px;margin:40px 0;display:grid}.panel{border-top:1px solid #ffffff75;padding-top:20px}.panel-title{letter-spacing:.1em;justify-content:space-between;gap:15px;font-size:11px;display:flex}.qr{border:10px solid #fff;border-radius:3px;width:240px;max-width:100%;margin:28px auto 24px;display:block}.qr-panel>p{font-size:12px}.controller-link{overflow-wrap:anywhere;color:#e2f2ff;margin-bottom:18px;font-size:12px;display:block}.qr-panel .secondary{min-height:38px;padding:8px 16px;font-size:13px}.steps{flex-direction:column;display:flex}.lobby-status,.approval{flex-direction:column;justify-content:center;align-items:flex-start;min-height:270px;display:flex}.lobby-status h2,.approval h2{letter-spacing:-.03em;margin:12px 0;font-size:30px;font-weight:500}.lobby-status p,.approval p{color:#dfedfa;font-size:14px}.status-gem{color:#9af1c9;font-size:24px}.divider{border-top:1px solid #ffffff40;margin-bottom:24px}.steps>.row{margin-top:15px}.steps .primary{align-self:flex-start}.immersive-play{background:radial-gradient(at 65% 35%,#a3c9e8,#619ed2 65%,#227cbd);position:fixed;inset:0;overflow:hidden}.game-wrap,.stage{width:100%;height:100%;position:absolute;inset:0}.stage>canvas:first-child{image-rendering:auto;width:100%;height:100%;display:block}.maze-map{pointer-events:none;background:#06457dc9;border:1px solid #fff6;border-radius:4px;width:240px;height:120px;display:none;position:absolute;top:85px;right:24px}.show-map .maze-map{display:block}.game-hud{padding:max(23px,env(safe-area-inset-top)) max(28px,env(safe-area-inset-right)) 40px max(28px,env(safe-area-inset-left));pointer-events:none;background:linear-gradient(#07447e40,#0000);justify-content:space-between;gap:12px;display:flex;position:absolute;inset:0 0 auto}.hud-stats,.hud-actions{pointer-events:auto;align-items:center;gap:23px;display:flex}.hud-stats{letter-spacing:.09em;font-size:11px}.hud-time{font-variant-numeric:tabular-nums;letter-spacing:0;font-size:20px}.hud-falls{opacity:.8}.hud-button{letter-spacing:.07em;text-transform:uppercase;background:0 0;border:0;border-bottom:1px solid #0000;padding:9px 0;font-size:11px}.hud-button:hover,.hud-button[aria-pressed=true]{border-bottom-color:#fff}.hud-button kbd{margin-left:7px}.overlay{z-index:4;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#063661a8;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.overlay-card{background:#07528dd9;border:1px solid #ffffff70;border-radius:4px;width:min(100%,480px);max-height:calc(100dvh - 48px);padding:40px;overflow:auto;box-shadow:0 20px 80px #00366c33}.overlay-card h2{letter-spacing:-.04em;margin:18px 0;font-size:36px;font-weight:500;line-height:1.15}.overlay-card p{color:#dceefa;font-size:14px}.result-best{letter-spacing:.05em;border-top:1px solid #ffffff40;border-bottom:1px solid #ffffff40;margin-top:25px;padding:18px 0;font-size:11px}.overlay-actions{flex-wrap:wrap;gap:10px;margin-top:27px;display:flex}.overlay-actions button{min-height:42px;padding:10px 17px;font-size:13px}.loading-overlay{background:#1c6cabd9}.loading-overlay .overlay-card{box-shadow:none;text-align:center;background:0 0;border:0}.loading-track{background:#ffffff30;height:2px;margin-top:30px;overflow:hidden}.loading-track span{background:#d9fff0;width:35%;height:100%;animation:1.4s ease-in-out infinite alternate loading;display:block}@keyframes loading{to{transform:translate(190%)}}.diagnostics{z-index:20;color:#e5f3fc;background:#032f54ed;border:1px solid #a1c9e7;max-width:calc(100vw - 28px);padding:16px;font:11px/1.7 monospace;position:fixed;bottom:14px;right:14px}.diagnostics strong{letter-spacing:.15em;margin-bottom:8px;font-size:10px;display:block}@media (width>=1500px){.landing-content{padding-top:6vh;padding-bottom:6vh}.hero-copy{margin-top:6vh}.hero-copy p{max-width:400px;font-size:18px}.hero-scene{inset:0 -5% 0 30%}}@media (width<=850px){.landing-content{width:48%;padding-left:5vw}.hero-copy h1{font-size:68px}.hero-copy p{max-width:300px;font-size:15px}.hero-scene{inset:0 -15% 0 31%}.hud-stats,.hud-actions{gap:13px}}@media (width<=600px){.welcome{flex-direction:column;min-height:100svh;display:flex}.landing-content{background:linear-gradient(#07599c00 55%,#0d5e9c44);width:100%;min-height:100svh;padding:25px 26px 20px}.brand{font-size:20px}.brand-mark{font-size:30px}.hero-copy{margin-top:30px}.hero-copy h1{margin-bottom:18px;font-size:64px}.hero-copy p{max-width:300px;margin-bottom:23px;font-size:14px}.journey-button{min-height:45px!important;font-size:15px!important}.hero-scene{opacity:.95;inset:43% -27% -7% 4%}.landing-footer{padding-top:270px;font-size:10px}.landing-footer button{font-size:10px}.setup-dialog{padding:35px 26px}.lobby{padding:20px 25px 40px}.site-header{padding:24px}.lobby-grid{grid-template-columns:1fr;gap:35px;margin-top:30px}.lobby-status,.approval{min-height:170px}.game-hud{gap:10px;padding:16px 16px 30px}.hud-stats,.hud-actions{gap:12px}.hud-stats{flex-wrap:wrap;max-width:140px;font-size:9px}.hud-time{font-size:17px}.hud-button{font-size:9px}.hud-button kbd{display:none}.maze-map{width:190px;height:95px;top:76px;right:16px}.overlay-card{padding:27px}.overlay-card h2{font-size:30px}}@media (height<=550px) and (width>=601px){.landing-content{padding-top:20px;padding-bottom:18px}.hero-copy{margin-top:20px}.hero-copy h1{margin-bottom:15px;font-size:54px}.hero-copy p{margin-bottom:18px;font-size:13px}.landing-footer{padding-top:25px}.brand{font-size:18px}.brand-mark{font-size:28px}.journey-button{min-height:40px!important;font-size:14px!important}.hero-scene{inset:-10% -5% -10% 32%}.game-hud{padding-top:12px}.overlay-card{padding:24px}}
