:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#030a14;color:#f5fbff;font-synthesis:none}*{box-sizing:border-box}html,body{width:100%;min-width:320px;min-height:100%;margin:0;overflow:hidden;background:#030a14;touch-action:none}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}.game-app{position:relative;isolation:isolate;width:100vw;height:100svh;min-height:540px;overflow:hidden;background:radial-gradient(circle at 17% 15%,rgba(25,207,255,.13),transparent 28%),radial-gradient(circle at 88% 70%,rgba(154,92,255,.15),transparent 32%),linear-gradient(145deg,#020914,#07162b 48%,#09091d)}.game-app:before,.game-app:after{position:absolute;z-index:-1;width:38vw;height:120vh;border-radius:50%;filter:blur(70px);opacity:.12;content:"";transform:rotate(21deg)}.game-app:before{top:-45vh;left:16vw;background:#29ddff}.game-app:after{right:0;bottom:-66vh;background:#9a5cff}.ambient-canvas{position:absolute;z-index:-1;inset:0;width:100%;height:100%;pointer-events:none}.game-header{position:relative;z-index:4;display:flex;align-items:center;justify-content:space-between;height:66px;padding:0 clamp(16px,2.5vw,36px);border-bottom:1px solid rgba(181,234,255,.11);background:#020812b8;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.brand{color:#fff;font-size:clamp(1.08rem,2vw,1.4rem);font-weight:950;letter-spacing:-.065em;text-decoration:none}.brand span,.brand small{color:#7deeff}.brand small{margin-left:2px;font-size:.57em}.header-actions{display:flex;align-items:center;gap:9px}.icon-button,.menu-button{min-height:38px;border:1px solid rgba(181,234,255,.17);background:#ffffff0b;color:#d8f8ff;cursor:pointer;font-weight:850}.icon-button{width:38px;border-radius:50%}.icon-button.is-muted{color:#556777}.menu-button{padding:0 16px;border-radius:999px;font-size:.67rem;letter-spacing:.1em;text-transform:uppercase}.icon-button:hover,.icon-button:focus-visible,.menu-button:hover,.menu-button:focus-visible{border-color:#7deeff;outline:0;box-shadow:0 0 24px #3ddcff29}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,340px);gap:clamp(14px,2.2vw,32px);width:min(1320px,calc(100% - 32px));height:calc(100svh - 66px);min-height:474px;margin:0 auto;padding:clamp(13px,2.2vh,24px) 0}.play-column{display:grid;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0}.hud{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px}.hud>div{min-width:0;padding:9px 13px 10px;border:1px solid rgba(160,229,255,.12);border-radius:13px;background:linear-gradient(145deg,#fff1,#ffffff06);box-shadow:inset 0 1px #ffffff0a}.hud span{display:block;margin-bottom:3px;color:#7393a5;font-size:.54rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.hud strong{display:block;overflow:hidden;color:#eefcff;font-size:clamp(.94rem,2vw,1.25rem);font-variant-numeric:tabular-nums;text-overflow:ellipsis}.hud-direction strong{color:#7deeff;text-shadow:0 0 16px rgba(125,238,255,.7)}.board-wrap{position:relative;min-height:0;overflow:hidden;border:1px solid rgba(125,238,255,.25);border-radius:clamp(18px,2vw,28px);background:linear-gradient(135deg,rgba(125,238,255,.06),transparent 40%),#010916cc;box-shadow:0 30px 90px #00000085,inset 0 1px #ffffff14,0 0 60px #1dbeff0f}.board-wrap:before{position:absolute;inset:0;border-radius:inherit;background:linear-gradient(115deg,rgba(255,255,255,.08),transparent 18%,transparent 72%,rgba(151,93,255,.06));pointer-events:none;content:""}.board-canvas{position:relative;display:block;width:100%;height:100%;cursor:crosshair;touch-action:none}.score-burst,.game-toast{position:absolute;z-index:5;left:50%;pointer-events:none;opacity:0;text-align:center;transform:translate(-50%,14px) scale(.86)}.score-burst{top:42%;color:#fff;font-size:clamp(2.2rem,7vw,5rem);font-weight:950;letter-spacing:-.07em;text-shadow:0 0 26px #1bdfff,0 0 60px rgba(155,77,255,.8)}.score-burst.is-visible{animation:score-pop .9s cubic-bezier(.16,1,.3,1)}.game-toast{top:18px;padding:8px 14px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:#020a18c7;color:#bff7ff;font-size:.68rem;font-weight:900;letter-spacing:.08em;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.game-toast.is-visible{animation:toast-in 1.8s ease}@keyframes score-pop{0%{opacity:0;transform:translate(-50%,24px) scale(.72)}22%{opacity:1;transform:translate(-50%) scale(1.06)}70%{opacity:1;transform:translate(-50%,-8px) scale(1)}to{opacity:0;transform:translate(-50%,-34px) scale(.9)}}@keyframes toast-in{0%,to{opacity:0;transform:translate(-50%,-8px)}12%,78%{opacity:1;transform:translate(-50%)}}.side-panel{display:flex;min-height:0;flex-direction:column;justify-content:center;gap:clamp(15px,2vh,24px);padding:clamp(8px,2vh,18px) 0}.title-kicker{display:block;margin-bottom:12px;color:#7deeff;font-size:.61rem;font-weight:950;letter-spacing:.19em}.title-lockup h1{margin:0;color:#fff;font-family:Impact,Haettenschweiler,Arial Narrow Bold,sans-serif;font-size:clamp(3.2rem,7.4vh,5.8rem);font-weight:400;letter-spacing:-.045em;line-height:.77;text-transform:uppercase}.title-lockup h1 em{color:transparent;font-style:normal;background:linear-gradient(90deg,#64eaff,#9f73ff 58%,#f25fce);background-clip:text;-webkit-background-clip:text;filter:drop-shadow(0 0 18px rgba(73,219,255,.16))}.title-lockup p{max-width:330px;margin:clamp(17px,2.6vh,27px) 0 0;color:#88a4b5;font-size:clamp(.73rem,1.5vh,.88rem);line-height:1.65}.power-card{padding:16px;border:1px solid rgba(125,238,255,.13);border-radius:17px;background:#ffffff09;box-shadow:inset 0 1px #ffffff09}.power-copy{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px;color:#7b98aa;font-size:.57rem;font-weight:950;letter-spacing:.15em}.power-copy strong{color:#bdf9ff;font-size:.67rem}.power-track{height:7px;overflow:hidden;border-radius:999px;background:#071627}.power-track i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1ad4ff,#9e61ff,#ff5bc8);box-shadow:0 0 16px #37d8ffb8;transition:width .3s cubic-bezier(.16,1,.3,1)}.power-button{width:100%;min-height:42px;margin-top:13px;border:0;border-radius:11px;background:linear-gradient(90deg,#23cffa,#8f62ff);color:#03101c;cursor:pointer;font-size:.67rem;font-weight:950;letter-spacing:.1em;text-transform:uppercase;box-shadow:0 8px 26px #24ccfa2b}.power-button:disabled{background:#102235;color:#496275;cursor:default;box-shadow:none}.quick-rules{display:grid;gap:8px;margin:0;padding:0;list-style:none}.quick-rules li{display:grid;grid-template-columns:30px 1fr;align-items:center;gap:10px;color:#718d9f;font-size:clamp(.66rem,1.35vh,.78rem)}.quick-rules b{display:grid;width:30px;height:30px;place-items:center;border:1px solid rgba(125,238,255,.15);border-radius:9px;background:#7deeff0e;color:#9ef2ff;font-size:.73rem}.modal{position:absolute;z-index:20;inset:0;display:grid;place-items:center;padding:20px;background:#00050ec4;opacity:0;pointer-events:none;transition:opacity .22s ease;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.modal--open{opacity:1;pointer-events:auto}.modal-card{width:min(720px,100%);padding:clamp(28px,5vw,52px);border:1px solid rgba(128,231,255,.23);border-radius:28px;background:radial-gradient(circle at 85% 10%,rgba(155,90,255,.16),transparent 36%),linear-gradient(145deg,#0a2137f7,#040d1dfa);box-shadow:0 42px 130px #0000009e,inset 0 1px #ffffff14;transform:translateY(18px) scale(.97);transition:transform .26s cubic-bezier(.16,1,.3,1)}.modal--open .modal-card{transform:translateY(0) scale(1)}.modal-kicker{margin:0 0 9px;color:#7deeff;font-size:.62rem;font-weight:950;letter-spacing:.18em}.modal-card h2{margin:0 0 28px;font-size:clamp(2rem,5vw,3.6rem);letter-spacing:-.065em;line-height:.95}.mode-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.mode-grid button{display:flex;min-height:168px;padding:17px;border:1px solid rgba(125,238,255,.12);border-radius:16px;background:#ffffff09;color:#e9fbff;cursor:pointer;flex-direction:column;text-align:left;transition:transform .17s ease,border-color .17s ease,background .17s ease}.mode-grid button:hover,.mode-grid button:focus-visible{border-color:#6feaff;outline:0;background:#4dd7ff17;transform:translateY(-4px)}.mode-grid span{color:#657f90;font-size:.6rem;font-weight:900}.mode-grid strong{margin:auto 0 8px;font-size:1.2rem}.mode-grid small{color:#7894a5;font-size:.7rem;line-height:1.45}.modal-foot{margin:22px 0 0;color:#5e7989;font-size:.64rem;font-weight:800;text-align:center}.modal-card--result{max-width:500px;text-align:center}.modal-card--result h2{margin-bottom:10px}.result-score{display:block;color:#7deeff;font-size:clamp(3.2rem,12vw,6rem);letter-spacing:-.08em;line-height:1;text-shadow:0 0 28px rgba(68,221,255,.42)}.modal-card--result>p:not(.modal-kicker){color:#7f9aaa}.result-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}.primary-action,.secondary-action{min-height:48px;border-radius:12px;cursor:pointer;font-size:.72rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.primary-action{border:0;background:linear-gradient(90deg,#27d7ff,#9c69ff);color:#03111e}.secondary-action{border:1px solid rgba(125,238,255,.16);background:#ffffff09;color:#d9f8ff}@media(max-width:900px){.game-layout{grid-template-columns:minmax(0,1fr) 230px;gap:14px}.title-lockup h1{font-size:clamp(2.7rem,6.5vh,4.5rem)}.quick-rules li{font-size:.64rem}}@media(max-width:700px){.game-app{min-height:620px}.game-header{height:58px}.game-layout{grid-template-columns:1fr;height:calc(100svh - 58px);min-height:562px;padding:10px 0 12px}.play-column{min-height:0}.side-panel{display:none}.hud>div{padding:7px 9px 8px}.hud span{font-size:.46rem}.hud strong{font-size:.88rem}.board-wrap{border-radius:18px}.mode-grid{grid-template-columns:1fr}.mode-grid button{display:grid;grid-template-columns:28px 1fr;min-height:82px;align-content:center;gap:4px 8px}.mode-grid strong{margin:0}.mode-grid small{grid-column:2}.modal-card{max-height:calc(100svh - 24px);overflow-y:auto;padding:24px;border-radius:20px}.modal-card h2{margin-bottom:20px}}@media(max-height:650px)and (min-width:701px){.game-header{height:56px}.game-layout{height:calc(100svh - 56px);padding:8px 0}.hud>div{padding:6px 10px}.side-panel{gap:10px}.title-lockup h1{font-size:3rem}.title-lockup p{margin-top:12px}.quick-rules{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:1ms!important;transition-duration:1ms!important}}
