:root{--navy-900: #050a18;--navy-800: #0b1633;--navy-700: #14244f;--navy-600: #1d3470;--gold: #e8c46a;--gold-hi: #fff1b0;--gold-dark: #b8872a;--ink: #f4f1e8;--muted: #a9b3cf;--felt: #0f7a4a;--danger: #e0564a;--good: #46c37b;--radius: 14px;--shadow: 0 10px 30px rgba(0, 0, 0, .45);--serif: Georgia, "Times New Roman", serif;--sans: system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans", sans-serif;color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;margin:0}body{background:var(--navy-900);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.4;overflow:hidden;overscroll-behavior:none;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--serif);letter-spacing:.02em;margin:0 0 .4em}button{font:inherit;color:inherit}img{-webkit-user-drag:none;user-select:none}:focus-visible{outline:3px solid var(--gold-hi);outline-offset:2px}.reduced-motion *,.reduced-motion *:before,.reduced-motion *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}}.screen{position:fixed;inset:0;display:flex;flex-direction:column;background:var(--navy-900) var(--bg, none) center / cover no-repeat;overflow:hidden}.screen-body{flex:1;overflow-y:auto;overflow-x:hidden;padding:12px 16px calc(24px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch}.container{width:100%;max-width:980px;margin:0 auto}.container.narrow{max-width:640px}.topbar{display:flex;align-items:center;gap:10px;padding:calc(10px + env(safe-area-inset-top)) 14px 10px;background:linear-gradient(180deg,#050a18eb,#050a1899);border-bottom:1px solid rgba(232,196,106,.25);z-index:5}.topbar h1{margin:0;font-size:1.25rem;flex:1;color:var(--gold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chips{display:flex;gap:8px;align-items:center}.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:#ffffff14;border:1px solid rgba(232,196,106,.35);font-weight:600;font-size:.9rem;white-space:nowrap}.chip svg{width:18px;height:18px;color:var(--gold)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 20px;border-radius:12px;border:2px solid var(--gold-dark);background:linear-gradient(180deg,var(--navy-600),var(--navy-700));color:var(--ink);font-weight:700;letter-spacing:.02em;cursor:pointer;transition:transform .12s,filter .12s,box-shadow .12s;box-shadow:0 4px #00000059;text-decoration:none;user-select:none}.btn:hover:not(:disabled){filter:brightness(1.15)}.btn:active:not(:disabled){transform:translateY(2px);box-shadow:0 2px #00000059}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:linear-gradient(180deg,var(--gold-hi),var(--gold) 45%,var(--gold-dark));color:#2a1a02;border-color:#7a5410;text-shadow:0 1px 0 rgba(255,255,255,.4)}.btn.danger{background:linear-gradient(180deg,#c8493f,#8e2a24);border-color:#5c1612}.btn.ghost{background:transparent;box-shadow:none;border-color:#e8c46a66}.btn.big{min-height:56px;font-size:1.15rem;padding:12px 28px}.btn.small{min-height:36px;padding:6px 12px;font-size:.9rem}.btn svg,.icon{width:22px;height:22px;flex:none}.icon-btn{width:44px;height:44px;padding:0;border-radius:12px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.row.center{justify-content:center}.row.between{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:12px}.grow{flex:1}.muted{color:var(--muted)}.gold{color:var(--gold)}.small{font-size:.85rem}.panel{background:linear-gradient(180deg,#1d3470d9,#0b1633eb);border:1.5px solid rgba(232,196,106,.45);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}.panel h2{color:var(--gold);font-size:1.2rem}.panel+.panel{margin-top:14px}.grid{display:grid;gap:12px}.grid.cols-2{grid-template-columns:repeat(2,1fr)}.grid.cols-3{grid-template-columns:repeat(3,1fr)}.grid.auto{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}@media(max-width:560px){.grid.cols-3{grid-template-columns:repeat(2,1fr)}.grid.auto{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}.progress{height:12px;border-radius:999px;background:#ffffff1f;overflow:hidden;border:1px solid rgba(0,0,0,.3)}.progress>i{display:block;height:100%;background:linear-gradient(90deg,var(--gold-dark),var(--gold),var(--gold-hi));border-radius:999px;transition:width .5s ease}.progress.green>i{background:linear-gradient(90deg,#1b8a52,var(--good))}.center-stage{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;padding:24px;text-align:center}.logo{width:min(86vw,520px);height:auto;filter:drop-shadow(0 8px 20px rgba(0,0,0,.5))}.logo.float{animation:float 4s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.load-bar{width:min(80vw,420px)}.fade-in{animation:fadeIn .35s ease both}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.home-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:8px}@media(max-width:860px){.home-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:560px){.home-grid{grid-template-columns:repeat(2,1fr)}}.tile{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:104px;padding:14px 8px;border-radius:16px;border:1.5px solid rgba(232,196,106,.4);background:linear-gradient(160deg,#1d3470e6,#0b1633f2);cursor:pointer;font-weight:700;text-align:center;transition:transform .15s,border-color .15s,box-shadow .15s}.tile:hover{transform:translateY(-3px);border-color:var(--gold);box-shadow:0 10px 24px #00000080}.tile svg{width:34px;height:34px;color:var(--gold)}.tile.hero{grid-column:span 2;background:linear-gradient(160deg,#1b8a52,#0b5a36);border-color:var(--gold);min-height:120px;font-size:1.3rem}.tile.hero svg{color:var(--gold-hi);width:44px;height:44px}.badge{position:absolute;top:8px;right:8px;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--danger);font-size:.75rem;display:grid;place-items:center;font-weight:800}.player-card{display:flex;align-items:center;gap:12px}.avatar{border-radius:50%;object-fit:cover;flex:none}.banner-slot{margin:14px auto 0;width:100%;max-width:728px;min-height:52px;border:1px solid rgba(232,196,106,.35);border-radius:12px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(135deg,#0e1b3ed9,#081026f2);box-shadow:0 4px 16px #0006}.backdrop{position:fixed;inset:0;background:#02050eb8;display:grid;place-items:center;z-index:50;padding:16px;backdrop-filter:blur(3px);animation:fadeIn .2s ease both}.modal{width:min(520px,100%);max-height:90dvh;overflow-y:auto}.toast-stack{position:fixed;left:50%;transform:translate(-50%);top:calc(10px + env(safe-area-inset-top));display:flex;flex-direction:column;gap:8px;z-index:80;width:min(440px,92vw);pointer-events:none}.toast{padding:10px 14px;border-radius:12px;background:var(--navy-700);border:1.5px solid var(--gold);box-shadow:var(--shadow);animation:fadeIn .25s ease both;font-weight:600}.toast.good{border-color:var(--good)}.toast.bad{border-color:var(--danger)}.loading-overlay{position:fixed;inset:0;background:#02050ecc;display:grid;place-items:center;z-index:90}.spinner{width:54px;height:54px;border-radius:50%;border:5px solid rgba(232,196,106,.25);border-top-color:var(--gold);animation:spin .9s linear infinite;margin:0 auto 12px}@keyframes spin{to{transform:rotate(360deg)}}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.field label,.field .label{font-weight:700;color:var(--gold-hi)}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.08)}input[type=range]{width:100%;accent-color:var(--gold);height:28px}input[type=text],select{width:100%;min-height:44px;border-radius:10px;border:1.5px solid rgba(232,196,106,.5);background:var(--navy-800);color:var(--ink);padding:8px 12px;font:inherit}.toggle{width:54px;height:30px;border-radius:15px;border:2px solid var(--gold-dark);background:var(--navy-800);position:relative;cursor:pointer;flex:none;transition:background .2s;padding:0}.toggle:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:var(--muted);transition:transform .2s,background .2s}.toggle[aria-checked=true]{background:#1b8a52}.toggle[aria-checked=true]:after{transform:translate(24px);background:var(--gold-hi)}.segmented{display:inline-flex;border:1.5px solid var(--gold-dark);border-radius:12px;overflow:hidden}.segmented button{padding:8px 14px;border:0;background:var(--navy-800);cursor:pointer;font-weight:600;min-height:40px}.segmented button[aria-pressed=true]{background:var(--gold);color:#2a1a02}.item-card{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:14px;border:1.5px solid rgba(232,196,106,.35);background:#0b1633cc;position:relative}.item-card.equipped{border-color:var(--good);box-shadow:0 0 0 2px #46c37b59}.item-card.locked .preview{filter:grayscale(.85) brightness(.6)}.item-card .preview{display:grid;place-items:center;min-height:70px}.cue-preview{width:100%;height:26px}.table-preview{width:100%;height:auto;border-radius:8px}.lock-pill{position:absolute;top:8px;right:8px;padding:2px 8px;border-radius:10px;background:#000000a6;font-size:.72rem;display:flex;align-items:center;gap:4px}.lock-pill svg{width:13px;height:13px}.level-path{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}.level-node{position:relative;border-radius:16px;padding:12px;border:2px solid rgba(232,196,106,.35);background:linear-gradient(160deg,#1d3470e6,#0b1633f2);cursor:pointer;text-align:left;min-height:118px}.level-node.done{border-color:var(--good)}.level-node.locked{opacity:.55;cursor:not-allowed}.level-node .num{font-family:var(--serif);font-size:1.6rem;color:var(--gold);line-height:1}.stars{color:var(--gold);letter-spacing:2px;font-size:.85rem}.result-banner{text-align:center;padding:18px 8px 8px}.result-banner h1{font-size:clamp(2rem,8vw,3.4rem);color:var(--gold);text-shadow:0 4px 18px rgba(232,196,106,.5);animation:pop .6s cubic-bezier(.2,1.4,.4,1) both}.result-banner.lose h1{color:#c9d3f0;text-shadow:none}@keyframes pop{0%{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px}.stat{background:#ffffff0f;border-radius:10px;padding:10px;text-align:center}.stat b{display:block;font-size:1.4rem;color:var(--gold-hi);font-family:var(--serif)}.grant{display:flex;justify-content:space-between;gap:10px;padding:8px 10px;border-radius:10px;background:#ffffff0f;animation:fadeIn .4s ease both}.confetti{position:fixed;top:-20px;width:10px;height:16px;z-index:60;pointer-events:none;animation:fall linear forwards}@keyframes fall{to{transform:translateY(110vh) rotate(720deg)}}.unlock-card{display:flex;align-items:center;gap:12px;padding:12px;border-radius:12px;border:2px solid var(--gold);background:linear-gradient(135deg,#e8c46a33,#e8c46a0d);animation:pop .6s cubic-bezier(.2,1.4,.4,1) both}.game{position:fixed;inset:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:104px minmax(0,1fr) 180px;grid-template-areas:"top top top" "left stage right" "bottom-banner bottom-banner bottom-banner";overflow:hidden;background:var(--navy-900)}.game-top{grid-area:top;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:calc(6px + env(safe-area-inset-top)) 14px 6px;background:linear-gradient(180deg,#101c3efa,#091127f0);border-bottom:1.5px solid rgba(232,196,106,.38);box-shadow:0 4px 20px #0000008c;z-index:10}.game-stage{grid-area:stage;position:relative;min-width:0;min-height:0;touch-action:none}.game-stage canvas{display:block;touch-action:none}.game-left{grid-area:left;display:flex;align-items:center;justify-content:center;padding:6px;z-index:3}.game-right{grid-area:right;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:8px;padding:6px 10px;z-index:3;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.game-right-controls{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%}.game-right-ad{width:100%;margin-top:2px}.top-left-section{display:flex;align-items:center;gap:10px;min-width:0}.top-center-section{display:flex;align-items:center;justify-content:center;gap:10px}.top-right-section{display:flex;align-items:center;gap:8px}.top-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:linear-gradient(180deg,#1e346ccc,#0d1836e6);border:1.5px solid rgba(232,196,106,.45);color:var(--gold-hi);cursor:pointer;transition:transform .12s,filter .12s,border-color .12s;flex:none}.top-btn:hover{filter:brightness(1.2);border-color:var(--gold);transform:translateY(-1px)}.top-btn:active{transform:translateY(1px)}.top-btn svg{width:20px;height:20px}.top-player-pill{display:flex;align-items:center;gap:8px;padding:4px 10px 4px 6px;border-radius:999px;background:#ffffff12;border:1.5px solid rgba(232,196,106,.35);min-width:0;box-shadow:inset 0 1px 3px #ffffff1a}.top-player-pill.active{border-color:var(--gold);background:linear-gradient(135deg,#e8c46a38,#0b1633d9);box-shadow:0 0 12px #e8c46a73}.top-player-name{font-weight:700;font-size:.9rem;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-player-sub{font-size:.72rem;color:var(--gold-hi);display:flex;align-items:center;gap:4px}.top-mode-badge{display:flex;align-items:center;gap:6px;padding:5px 14px;border-radius:999px;background:linear-gradient(180deg,#1d3470d9,#0b1633eb);border:1.5px solid var(--gold);box-shadow:0 2px 10px #0006}.top-mode-title{font-size:.82rem;font-weight:800;color:var(--gold);letter-spacing:.05em;text-transform:uppercase}.top-stat-chip{font-size:.8rem;font-weight:700;color:#fff;padding:2px 8px;border-radius:999px;background:#00000059}.table-switch-btn{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:#ffffff14;border:1.5px solid rgba(232,196,106,.4);font-size:.78rem;font-weight:700;color:var(--gold-hi);cursor:pointer;transition:background .15s,border-color .15s}.table-switch-btn:hover{background:#e8c46a2e;border-color:var(--gold)}.table-dot{width:11px;height:11px;border-radius:50%;border:1.5px solid #fff;flex:none;box-shadow:0 1px 4px #00000080}.native-ad-card{display:flex;flex-direction:column;gap:6px;padding:10px;border-radius:12px;border:1.5px solid rgba(232,196,106,.35);box-shadow:0 6px 16px #0006;text-align:left}.native-ad-header{display:flex;justify-content:space-between;align-items:center;font-size:.65rem;font-weight:800;letter-spacing:.05em}.native-ad-tag{padding:1px 6px;border-radius:4px;background:#0006;font-size:.62rem}.native-ad-timer{width:38px;height:4px;background:#ffffff26;border-radius:2px;overflow:hidden;position:relative}.native-ad-timer-bar{display:block;height:100%;width:100%;background:var(--gold);animation:adCountdown 10s linear forwards}@keyframes adCountdown{0%{width:100%}to{width:0%}}.native-ad-content{display:flex;align-items:center;gap:8px}.native-ad-glyph{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;font-size:1.2rem;border:1px solid;flex:none}.native-ad-info{min-width:0;flex:1}.native-ad-brand{font-size:.65rem;color:var(--muted);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.native-ad-title{font-size:.8rem;font-weight:700;color:#fff;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.native-ad-desc{font-size:.7rem;color:#d8deee;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.native-ad-footer{display:flex;justify-content:space-between;align-items:center;gap:6px;margin-top:2px}.native-ad-rating{font-size:.65rem;color:var(--gold-hi);font-weight:600}.native-ad-cta{padding:4px 10px;border-radius:8px;border:none;font-size:.7rem;font-weight:800;color:#101a35;cursor:pointer;transition:transform .1s,filter .1s}.native-ad-cta:hover{filter:brightness(1.15);transform:scale(1.03)}.game-bottom-banner{grid-area:bottom-banner;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#0c1632fa,#060c1cfc);border-top:1.5px solid rgba(232,196,106,.35);box-shadow:0 -4px 18px #00000080;padding:5px 14px;z-index:10;min-height:44px}.banner-ad-pill{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;max-width:820px;background:#ffffff0d;border:1px solid rgba(232,196,106,.25);border-radius:999px;padding:4px 14px 4px 10px}.banner-ad-badge{font-size:.65rem;font-weight:800;padding:2px 6px;border-radius:4px;background:var(--gold);color:#1c1404;letter-spacing:.04em;flex:none}.banner-ad-icon{font-size:1.1rem;flex:none}.banner-ad-text{flex:1;min-width:0;font-size:.78rem;color:#e5ebf8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.banner-ad-highlight{color:var(--muted);font-weight:500}.banner-ad-btn{padding:4px 14px;border-radius:999px;background:linear-gradient(135deg,var(--gold-hi),var(--gold));border:1px solid #7a5410;color:#261603;font-weight:800;font-size:.72rem;cursor:pointer;flex:none;transition:transform .12s,filter .12s}.banner-ad-btn:hover{filter:brightness(1.15);transform:scale(1.04)}.banner-ad-close{background:transparent;border:none;color:var(--muted);font-size:1.15rem;cursor:pointer;padding:0 4px;line-height:1}.banner-ad-close:hover{color:#fff}.pcard{flex:1;min-width:0;display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:12px;border:2px solid transparent;background:#ffffff0f}.pcard.active{border-color:var(--gold);background:#e8c46a24;box-shadow:0 0 14px #e8c46a59}.pcard .name{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.95rem}.tray{display:flex;flex-wrap:wrap;gap:3px;margin-top:3px}.tray img{width:20px;height:20px}.tray img.out{opacity:.22;filter:grayscale(1)}.game-center{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:96px;text-align:center;font-size:.85rem}.game-center b{font-size:1.15rem;color:var(--gold-hi);font-variant-numeric:tabular-nums}.hud-msg{position:absolute;left:50%;top:10px;transform:translate(-50%);max-width:92%;padding:8px 16px;border-radius:999px;background:#050a18e0;border:1.5px solid var(--gold);font-weight:700;text-align:center;z-index:3;pointer-events:none;animation:fadeIn .25s ease both}.hud-msg.foul{border-color:var(--danger);color:#ffb3aa}.hud-msg.good,.hud-msg.win{border-color:var(--good);color:#bff0d3}.hud-badge{position:absolute;left:50%;bottom:10px;transform:translate(-50%);padding:6px 14px;border-radius:999px;background:#e8c46aeb;color:#2a1a02;font-weight:800;z-index:3;pointer-events:none}.power{position:relative;width:62px;height:min(62vh,360px);border-radius:31px;border:3px solid var(--gold-dark);background:linear-gradient(180deg,#e0602a,#e8c46a 45%,#3ab36e);touch-action:none;cursor:pointer;overflow:hidden;box-shadow:var(--shadow)}.power .mask{position:absolute;left:0;right:0;top:0;background:#050a18d1}.power .knob{position:absolute;left:-2px;right:-2px;height:6px;background:#fff;box-shadow:0 0 8px #fff}.power .lbl{position:absolute;left:0;right:0;bottom:8px;text-align:center;font-size:.7rem;font-weight:800;color:#04210f;letter-spacing:.08em;pointer-events:none}.spinpad{position:relative;width:100px;height:100px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#e7e2d4 55%,#b9b3a2);border:3px solid var(--gold-dark);touch-action:none;cursor:crosshair;box-shadow:var(--shadow)}.spinpad:before,.spinpad:after{content:"";position:absolute;background:#0000002e}.spinpad:before{left:50%;top:8%;bottom:8%;width:1px}.spinpad:after{top:50%;left:8%;right:8%;height:1px}.spinpad .dot{position:absolute;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;background:#d42a2a;border:2px solid #fff;box-shadow:0 2px 6px #00000080;pointer-events:none}.spinpad .t{position:absolute;font-size:.6rem;font-weight:800;color:#3a3a3a;pointer-events:none}.spin-caption{font-size:.7rem;text-align:center;color:var(--muted);margin-top:2px}.pause-overlay{position:absolute;inset:0;z-index:20}.obj-bar{position:absolute;left:10px;top:10px;z-index:3;padding:8px 12px;border-radius:12px;background:#050a18d9;border:1.5px solid rgba(232,196,106,.5);max-width:min(340px,60%);font-size:.85rem;pointer-events:none}.obj-bar b{color:var(--gold);display:block}.fps{position:absolute;right:8px;bottom:6px;font-size:.7rem;color:var(--muted);z-index:3;pointer-events:none}@media(orientation:portrait)and (pointer:fine){.game{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto auto;grid-template-areas:"top" "stage" "bottom" "bottom-banner"}.game-top{gap:6px;padding-left:6px;padding-right:6px}.game-top .btn.icon-btn{flex:0 0 auto;width:40px;padding:0}.game-bottom .spinpad{width:92px;height:92px;flex:0 0 auto}.game-bottom .spin-caption{display:none}.pcard{padding:4px 6px;gap:6px}.pcard .name{font-size:.82rem}.game-center{min-width:52px}.game-left,.game-right{grid-area:bottom}.game-bottom{grid-area:bottom;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px calc(10px + env(safe-area-inset-bottom));background:linear-gradient(0deg,#050a18f2,#050a188c);z-index:3}.power{width:min(100%,360px);height:54px}.pcard .tray img{width:15px;height:15px}.pcard .avatar{width:30px;height:30px}.game-center{min-width:70px}}.game-left,.game-right{display:flex}.game-bottom{display:none}@media(orientation:portrait)and (pointer:fine){.game-left,.game-right{display:none}.game-bottom{display:flex}}@media(orientation:landscape)and (max-height:520px),(orientation:portrait)and (pointer:coarse){.game{grid-template-columns:92px 1fr 128px}.power{height:min(58vh,250px);width:54px}.spinpad{width:96px;height:96px}.tray img{width:16px;height:16px}.game-top{padding-top:calc(3px + env(safe-area-inset-top));padding-bottom:3px}}.ball-chip{width:22px;height:22px;vertical-align:middle}.help-img{width:100%;border-radius:12px;border:2px solid var(--gold-dark)}.kbd{display:inline-block;padding:1px 8px;border-radius:6px;border:1px solid var(--gold-dark);background:var(--navy-800);font-family:ui-monospace,monospace;font-size:.85rem}table.data{width:100%;border-collapse:collapse}table.data th,table.data td{text-align:left;padding:8px 6px;border-bottom:1px solid rgba(255,255,255,.08)}table.data th{color:var(--gold-hi);font-size:.85rem}.ad-overlay{position:fixed;inset:0;z-index:95;background:#101522;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center;padding:24px}.ad-overlay .label{padding:4px 12px;border-radius:6px;background:#b8872a;color:#2a1a02;font-weight:800}.home-layout{display:flex;justify-content:center;align-items:flex-start;gap:24px;width:100%;max-width:1560px;margin:0 auto;position:relative}.home-sidebar-slot{flex:none;width:228px;position:sticky;top:12px;z-index:2}.home-main-content{flex:1;min-width:0;max-width:980px}.home-skyscraper-card{display:flex;flex-direction:column;gap:10px;padding:16px 14px;border-radius:18px;border:1.5px solid rgba(232,196,106,.4);box-shadow:0 10px 32px #0000008c,inset 0 1px #ffffff1f;backdrop-filter:blur(12px);text-align:center;transition:opacity .22s ease,transform .22s ease,box-shadow .22s ease}.home-skyscraper-card:hover{transform:translateY(-3px);box-shadow:0 14px 40px #000000b3,inset 0 1px #ffffff2e}.home-ad-top{display:flex;justify-content:space-between;align-items:center}.home-ad-tag{font-size:.65rem;font-weight:800;letter-spacing:.06em;padding:2px 7px;border-radius:6px;background:#00000080}.home-ad-badge{font-size:.65rem;font-weight:800;padding:2px 8px;border-radius:999px;border:1px solid;letter-spacing:.03em}.home-ad-timer{width:100%;height:3px;background:#ffffff26;border-radius:2px;overflow:hidden}.home-ad-timer-bar{display:block;height:100%;width:100%;animation:adCountdown 10s linear forwards}.home-ad-hero{display:flex;flex-direction:column;align-items:center;gap:3px;margin-top:2px}.home-ad-glyph-box{width:56px;height:56px;border-radius:16px;display:grid;place-items:center;border:1.5px solid;margin-bottom:6px;transition:transform .2s ease}.home-skyscraper-card:hover .home-ad-glyph-box{transform:scale(1.08) rotate(2deg)}.home-ad-glyph{font-size:1.95rem;line-height:1}.home-ad-brand{font-size:.68rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.home-ad-title{font-size:1.05rem;font-weight:800;color:#fff;line-height:1.2}.home-ad-subtitle{font-size:.76rem;color:var(--gold-hi);font-weight:600}.home-ad-features{display:flex;flex-direction:column;gap:6px;padding:10px;border-radius:10px;background:#00000052;border:1px solid rgba(255,255,255,.06);text-align:left;margin:4px 0}.home-ad-feat-item{display:flex;align-items:center;gap:6px;font-size:.72rem;color:#e2e8f6;font-weight:500}.home-ad-check{font-weight:800;font-size:.75rem;flex:none}.home-ad-bottom{display:flex;flex-direction:column;gap:6px;align-items:center;margin-top:4px}.home-ad-rating{font-size:.75rem;font-weight:700;color:var(--gold-hi)}.home-ad-cta{width:100%;padding:8px 14px;border-radius:10px;border:none;font-size:.8rem;font-weight:800;color:#121c38;cursor:pointer;letter-spacing:.03em;transition:transform .12s ease,filter .12s ease}.home-ad-cta:hover{filter:brightness(1.15);transform:translateY(-1px)}.home-ad-cta:active{transform:translateY(1px)}.home-ad-micro{font-size:.62rem;color:var(--muted)}@media(max-width:1360px){.home-sidebar-slot{width:185px}.home-layout{gap:14px}.home-ad-title{font-size:.95rem}.home-ad-glyph-box{width:46px;height:46px}.home-ad-glyph{font-size:1.6rem}}@media(max-width:1120px){.home-sidebar-slot{display:none}}.google-ad-wrap{display:block;width:100%;margin:0 auto}.google-ad-wrap ins.adsbygoogle{margin:0 auto}.google-ad-wrap ins.adsbygoogle[data-ad-status=unfilled]{display:none!important}.banner-slot-fallback{display:flex;align-items:center;gap:12px;width:100%;padding:8px 16px;background:linear-gradient(90deg,#e8c46a26,#0b1633e6);font-size:.82rem;color:#f4ecd0}.banner-slot-text{flex:1;text-align:left}.banner-slot-text b{color:var(--gold-hi)}.banner-slot-btn{padding:5px 12px;border-radius:8px;background:linear-gradient(135deg,var(--gold-hi),var(--gold));color:#0b1633;font-weight:800;font-size:.72rem;letter-spacing:.04em;white-space:nowrap;box-shadow:0 2px 8px #e8c46a66}.results-square-ad-card{width:100%;padding:16px;border-radius:16px;background:linear-gradient(135deg,#e8c46a2e,#0b1633f5);border:1.5px solid rgba(232,196,106,.45);box-shadow:0 8px 24px #0000008c,inset 0 1px #ffffff1a;display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px}.results-ad-tag{font-size:.65rem;font-weight:800;letter-spacing:.08em;color:var(--gold-hi);padding:2px 8px;border-radius:6px;background:#0006;border:1px solid rgba(232,196,106,.3)}.results-ad-icon{font-size:2.2rem;line-height:1;margin:2px 0}.results-ad-title{font-size:1.1rem;font-weight:800;color:#fff}.results-ad-desc{font-size:.78rem;color:#d8e2f8;max-width:280px;line-height:1.35}.results-ad-btn{margin-top:4px;width:100%;max-width:240px;padding:8px 16px;border-radius:10px;border:none;background:linear-gradient(135deg,#ffd35a,#e8a838);color:#0b1633;font-weight:800;font-size:.8rem;letter-spacing:.04em;cursor:pointer;box-shadow:0 3px 12px #ffd35a73;transition:transform .12s ease,filter .12s ease}.results-ad-btn:hover{transform:translateY(-1px);filter:brightness(1.1)}.results-ad-btn:active{transform:translateY(1px)}.rbp-adblock-immune{display:flex!important;visibility:visible!important;opacity:1!important;max-height:none!important;max-width:none!important;pointer-events:auto!important}.adblock-banner-ribbon{position:fixed;top:0;left:0;right:0;z-index:9999;background:linear-gradient(90deg,#1b264f,#271a44);border-bottom:1.5px solid var(--gold);color:#fdfaf0;display:flex;align-items:center;justify-content:center;gap:12px;padding:8px 16px;font-size:.82rem;box-shadow:0 4px 18px #0009;animation:fadeIn .3s ease forwards}.adblock-ribbon-badge{font-weight:800;color:var(--gold-hi);display:flex;align-items:center;gap:4px}.adblock-ribbon-text{flex:1;max-width:650px;text-align:center}.adblock-ribbon-btn{padding:5px 12px;border-radius:8px;background:linear-gradient(135deg,var(--gold-hi),var(--gold));color:#0b1633;font-weight:800;font-size:.75rem;border:none;cursor:pointer;white-space:nowrap;box-shadow:0 2px 8px #e8c46a66;transition:transform .12s ease}.adblock-ribbon-btn:hover{transform:scale(1.04)}.adblock-ribbon-close{background:transparent;border:none;color:#fff;font-size:1.2rem;cursor:pointer;padding:0 6px;line-height:1}.adblock-modal{text-align:left}.adblock-steps{display:flex;flex-direction:column;gap:10px;margin:14px 0;padding:12px;background:#00000059;border:1px solid rgba(232,196,106,.2);border-radius:10px;font-size:.85rem}.adblock-step b{color:var(--gold-hi)}html.rot #root{position:fixed;top:0;left:0;width:var(--vh);height:var(--vw);transform-origin:top left;transform:translate(var(--vw)) rotate(90deg);overflow:hidden}html.rot .adblock-banner-ribbon{position:absolute}html.short .topbar{padding:calc(4px + env(safe-area-inset-top)) 12px 4px}html.short .topbar h1{font-size:1.05rem}html.short .topbar img{width:26px;height:26px}html.short .screen-body{padding:6px 12px calc(8px + env(safe-area-inset-bottom))}html.short .home-sidebar-slot,html.short .home-main-content .logo{display:none}html.short .home-main-content .container>.row:first-child{display:none}html.short .home-main-content .panel{padding:6px 12px;margin:0}html.short .home-main-content .player-card{gap:10px}html.short .home-main-content .player-card .btn.icon-btn{width:44px!important;height:44px!important;border-radius:22px!important}html.short .home-main-content .player-card img{width:38px;height:38px}html.short .home-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-top:6px}html.short .tile{min-height:0;height:calc((var(--eh, 100vh) - 170px) / 2);max-height:96px;min-height:64px;padding:4px;gap:2px;font-size:.72rem;border-radius:12px;line-height:1.1}html.short .tile-icon,html.short .tile.hero .tile-icon{width:34px;height:34px}html.short .home-main-content .banner-slot,html.short .home-main-content .banner-slot-fallback{padding:2px 8px;font-size:.7rem}html.short .home-main-content .banner-slot{margin-top:6px}html.short .home-main-content .container>.row.center{margin-top:4px!important}html.short .home-main-content .container>.row.center .btn{min-height:28px;padding:2px 10px;font-size:.75rem}html.short .btn.big{min-height:44px}html.short .panel{padding:10px 12px}html.short .center-stage{gap:6px;padding:6px 16px;overflow-y:auto;justify-content:safe center}html.short .center-stage .logo{width:auto;max-width:60vw;height:calc(var(--eh, 100vh) * .26)}html.short .center-stage h2{margin:0;font-size:1.05rem}html.short .center-stage p{margin:0}html.short .center-stage .panel{padding:8px 14px}html.short .center-stage .stack,html.short .center-stage .field{gap:4px}html.short .center-stage .logo{height:calc(var(--eh, 100vh) * .2)}html.short .name-card .avatar{display:none}html.short .name-card .btn.big{min-height:40px;padding:6px 24px}:root{--glass: rgba(14, 26, 60, .62);--glass-edge: rgba(255, 226, 150, .38);--glow: 0 0 22px rgba(232, 196, 106, .35)}.screen>:not(.fx-backdrop):not(.confetti){position:relative}.fx-backdrop{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;contain:layout paint}.fx-backdrop>*{position:absolute;display:block;will-change:transform,opacity}.fx-orb{border-radius:50%;opacity:.4}.fx-orb.o1{width:46vmax;height:46vmax;left:-14vmax;top:-16vmax;background:radial-gradient(circle,#2a6bff,transparent 68%);animation:orb1 22s ease-in-out infinite alternate}.fx-orb.o2{width:40vmax;height:40vmax;right:-12vmax;top:18vh;background:radial-gradient(circle,#1fbf7a,transparent 68%);animation:orb2 27s ease-in-out infinite alternate;opacity:.32}.fx-orb.o3{width:34vmax;height:34vmax;left:28vw;bottom:-20vmax;background:radial-gradient(circle,#e8c46a,transparent 68%);animation:orb3 31s ease-in-out infinite alternate;opacity:.3}@keyframes orb1{to{transform:translate(14vw,12vh) scale(1.2)}}@keyframes orb2{to{transform:translate(-16vw,-10vh) scale(.85)}}@keyframes orb3{to{transform:translate(-18vw,-8vh) scale(1.25)}}.fx-beam{top:-6vh;width:34vmin;height:92vh;background:linear-gradient(180deg,rgba(255,238,180,.2),rgba(255,238,180,.05) 55%,transparent);clip-path:polygon(42% 0,58% 0,100% 100%,0 100%);transform-origin:50% 0;opacity:.8}.fx-beam.b1{left:24%;animation:sway 9s ease-in-out infinite alternate,flicker 7s linear infinite}.fx-beam.b2{left:62%;animation:sway 11s ease-in-out -4s infinite alternate-reverse,flicker 9s linear -3s infinite}@keyframes sway{0%{transform:rotate(-2.6deg)}to{transform:rotate(2.6deg)}}@keyframes flicker{0%,to{opacity:.8}47%{opacity:.8}49%{opacity:.55}51%{opacity:.85}78%{opacity:.72}}.fx-ball{bottom:-90px;opacity:0;filter:drop-shadow(0 8px 14px rgba(0,0,0,.5));animation-name:rise;animation-timing-function:linear;animation-iteration-count:infinite}@keyframes rise{0%{transform:translateY(0) rotate(0);opacity:0}8%{opacity:.5}50%{transform:translateY(-62vh) translate(22px) rotate(200deg)}92%{opacity:.4}to{transform:translateY(-122vh) translate(-18px) rotate(400deg);opacity:0}}.fx-dust{border-radius:50%;background:#fff6cf;box-shadow:0 0 8px 2px #feac;opacity:0;animation-name:twinkle;animation-iteration-count:infinite;animation-timing-function:ease-in-out}@keyframes twinkle{0%,to{opacity:0;transform:scale(.4)}50%{opacity:.85;transform:scale(1.15)}}.fx-sheen{inset:-20% -50%;background:linear-gradient(105deg,transparent 42%,rgba(255,244,200,.07) 50%,transparent 58%);animation:sheen 11s ease-in-out infinite}@keyframes sheen{0%{transform:translate(-60%)}55%,to{transform:translate(60%)}}.fx-results .fx-orb.o1{background:radial-gradient(circle,#9b6bff,transparent 68%)}.fx-results .fx-beam{background:linear-gradient(180deg,rgba(255,220,130,.28),transparent)}.fx-game .fx-ball,html[data-graphics=low] .fx-ball,html[data-graphics=low] .fx-dust,html[data-graphics=low] .fx-sheen,html[data-graphics=low] .fx-orb{display:none}.topbar{background:linear-gradient(180deg,#050a18e6,#050a188c);border-bottom:1px solid var(--glass-edge);box-shadow:0 6px 24px #00000059}.topbar h1{background:linear-gradient(180deg,var(--gold-hi),var(--gold) 55%,var(--gold-dark));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:none;filter:drop-shadow(0 2px 6px rgba(0,0,0,.5))}.panel{position:relative;background:linear-gradient(165deg,#223c7ce6,#0a1430ed);border:1.5px solid var(--glass-edge);box-shadow:var(--shadow),inset 0 1px #ffffff1f;animation:riseIn .5s cubic-bezier(.2,.9,.3,1) backwards}.panel:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.1),transparent 38%)}.panel.modal{animation-name:popIn}@keyframes riseIn{0%{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}@keyframes popIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:none}}.logo{filter:drop-shadow(0 8px 20px rgba(0,0,0,.55)) drop-shadow(0 0 26px rgba(232,196,106,.35));animation:logoGlow 4.5s ease-in-out infinite alternate}.logo.float{animation:float 4s ease-in-out infinite,logoGlow 4.5s ease-in-out infinite alternate}@keyframes logoGlow{0%{filter:drop-shadow(0 8px 20px rgba(0,0,0,.55)) drop-shadow(0 0 14px rgba(232,196,106,.2))}to{filter:drop-shadow(0 8px 20px rgba(0,0,0,.55)) drop-shadow(0 0 34px rgba(255,220,130,.55))}}.btn{position:relative;overflow:hidden}.btn:after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);transform:skew(-20deg);opacity:0;pointer-events:none}.btn:hover:not(:disabled):after{opacity:1;animation:shine .7s ease}.btn.primary:not(:disabled):after{opacity:1;animation:shine 3.6s ease-in-out infinite}.btn.primary:not(:disabled){box-shadow:0 4px #00000059,0 0 18px #e8c46a59}@keyframes shine{0%{left:-60%}40%,to{left:130%}}.btn.icon-btn:after{display:none}.tile{overflow:hidden;background:linear-gradient(160deg,#244084eb,#09122cf2);animation:tileIn .55s cubic-bezier(.2,.9,.3,1) backwards;animation-delay:calc(var(--i, 0) * 45ms)}.tile:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 0,rgba(255,238,170,.22),transparent 60%);opacity:0;transition:opacity .25s}.tile:hover:before,.tile:focus-visible:before{opacity:1}.tile svg{transition:transform .25s cubic-bezier(.3,1.6,.5,1),filter .25s;filter:drop-shadow(0 0 0 rgba(232,196,106,0))}.tile:hover svg{transform:translateY(-3px) scale(1.15) rotate(-4deg);filter:drop-shadow(0 4px 10px rgba(232,196,106,.6))}.tile:active{transform:translateY(0) scale(.97)}.tile.hero{background:linear-gradient(135deg,#1fa866,#0b5a36,#1fa866);background-size:200% 200%;animation:tileIn .55s cubic-bezier(.2,.9,.3,1) backwards,heroFlow 7s ease-in-out infinite;box-shadow:0 0 #46c37b80}.tile.hero:after{content:"";position:absolute;inset:-2px;border-radius:inherit;border:2px solid rgba(255,238,170,.7);opacity:0;animation:ping 2.8s ease-out infinite;pointer-events:none}.home-grid>:nth-child(1){--i: 0}.home-grid>:nth-child(2){--i: 1}.home-grid>:nth-child(3){--i: 2}.home-grid>:nth-child(4){--i: 3}.home-grid>:nth-child(5){--i: 4}.home-grid>:nth-child(6){--i: 5}.home-grid>:nth-child(7){--i: 6}.home-grid>:nth-child(8){--i: 7}.home-grid>:nth-child(9){--i: 8}.home-grid>:nth-child(10){--i: 9}.home-grid>:nth-child(11){--i: 10}.home-grid>:nth-child(12){--i: 11}.home-grid>:nth-child(13){--i: 12}@keyframes tileIn{0%{opacity:0;transform:translateY(22px) scale(.92)}to{opacity:1;transform:none}}@keyframes heroFlow{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes ping{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.06,1.12)}}.badge{animation:badgePulse 1.8s ease-in-out infinite}@keyframes badgePulse{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}.player-card .avatar{box-shadow:0 0 0 3px var(--gold-dark),0 0 18px #e8c46a73}.progress>i{position:relative;overflow:hidden}.progress>i:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);transform:translate(-100%);animation:barShine 2.6s ease-in-out infinite}@keyframes barShine{to{transform:translate(100%)}}.field-error{color:#ffb3aa;font-weight:600;font-size:.9rem}.center-text{text-align:center}input[type=text]{transition:border-color .2s,box-shadow .2s}input[type=text]:focus{outline:none;border-color:var(--gold-hi);box-shadow:0 0 0 3px #e8c46a4d}input[aria-invalid=true]{border-color:var(--danger)}.name-card{width:min(420px,100%);display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}.name-card .field{width:100%;text-align:left;margin-bottom:4px}.name-card .avatar{box-shadow:0 0 0 3px var(--gold-dark),0 0 22px #e8c46a80;animation:float 3.5s ease-in-out infinite}.code-input{text-align:center;font-family:ui-monospace,SF Mono,Consolas,monospace;font-size:1.9rem;font-weight:800;letter-spacing:.4em;padding-left:.4em;text-transform:uppercase}.room-code{display:flex;justify-content:center;gap:8px;margin:4px 0 14px}.room-code span{width:clamp(38px,12vw,46px);height:clamp(52px,16vw,62px);display:grid;place-items:center;border-radius:12px;font-family:ui-monospace,Consolas,monospace;font-size:2rem;font-weight:800;color:#2a1a02;background:linear-gradient(180deg,var(--gold-hi),var(--gold) 55%,var(--gold-dark));border:2px solid #7a5410;box-shadow:0 4px #0006,0 0 18px #e8c46a66;animation:pop .5s cubic-bezier(.2,1.4,.4,1) both}.slots{display:flex;align-items:center;justify-content:center;gap:14px;margin:8px 0 14px}.slot{flex:1;max-width:180px;display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 8px;border-radius:14px;border:1.5px dashed rgba(232,196,106,.4);background:#ffffff0a;min-width:0}.slot b{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slot.filled{border-style:solid;background:#e8c46a1a;animation:pop .5s cubic-bezier(.2,1.4,.4,1) both}.slot.filled .avatar{box-shadow:0 0 0 3px var(--gold-dark),0 0 16px #e8c46a73}.slot-wait{width:56px;height:56px;border-radius:50%;border:4px solid rgba(232,196,106,.25);border-top-color:var(--gold);animation:spin 1s linear infinite}.vs{font-family:var(--serif);font-weight:800;font-size:1.3rem;color:var(--gold);text-shadow:0 0 12px rgba(232,196,106,.6);animation:badgePulse 2s ease-in-out infinite}.scoreboard{display:flex;justify-content:center;gap:18px;margin-bottom:8px}.score-side{flex:1;max-width:190px;text-align:center;padding:10px;border-radius:14px;background:#ffffff0f;border:1.5px solid transparent;min-width:0}.score-side b{display:block;font-family:var(--serif);font-size:2.8rem;color:var(--gold-hi);line-height:1.1}.score-side.champ{border-color:var(--gold);background:#e8c46a29;box-shadow:var(--glow);animation:pop .6s cubic-bezier(.2,1.4,.4,1) both}.series-badge{font-family:var(--serif);font-weight:800;letter-spacing:.08em;color:var(--gold-hi);padding:1px 10px;border-radius:999px;background:#e8c46a29;border:1px solid rgba(232,196,106,.5);margin-bottom:2px}.game:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 60% 55% at 50% 52%,rgba(40,190,120,.18),transparent 70%),radial-gradient(ellipse 40% 70% at 20% 0,rgba(255,238,170,.12),transparent 70%),radial-gradient(ellipse 40% 70% at 80% 0,rgba(255,238,170,.1),transparent 70%);animation:ambient 9s ease-in-out infinite alternate}@keyframes ambient{0%{opacity:.7}to{opacity:1}}.game-top{border-bottom:1px solid var(--glass-edge)}.pcard{transition:border-color .3s,background .3s,box-shadow .3s,transform .3s}.pcard.active{animation:turnPulse 2s ease-in-out infinite;transform:translateY(-1px)}@keyframes turnPulse{0%,to{box-shadow:0 0 10px #e8c46a4d}50%{box-shadow:0 0 24px #e8c46ab3}}.hud-badge{animation:badgeBob 2.4s ease-in-out infinite;box-shadow:0 6px 18px #0006,0 0 16px #e8c46a80}@keyframes badgeBob{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-4px)}}.hud-msg{box-shadow:0 8px 24px #00000073;animation:msgIn .35s cubic-bezier(.2,1.3,.4,1) both}@keyframes msgIn{0%{opacity:0;transform:translate(-50%) translateY(-14px) scale(.9)}to{opacity:1;transform:translate(-50%)}}.hud-msg.foul{box-shadow:0 8px 24px #00000073,0 0 22px #e0564a8c}.power .knob{transition:top .04s linear}.stat{transition:transform .2s;animation:riseIn .5s backwards}.stat:hover{transform:translateY(-3px)}.stat-grid>:nth-child(2){animation-delay:.08s}.stat-grid>:nth-child(3){animation-delay:.16s}.stat-grid>:nth-child(4){animation-delay:.24s}.stat-grid>:nth-child(5){animation-delay:.32s}.note-pill{display:block;width:fit-content;max-width:100%;margin:12px auto 0;padding:8px 14px;border-radius:12px;background:#050a18c7;border:1px solid rgba(232,196,106,.25)}.screen-body{scrollbar-width:thin;scrollbar-color:rgba(232,196,106,.5) transparent}.screen{background:var(--navy-900)}.fx-backdrop{--px: 0;--py: 0}.fx-photo{inset:-1%;background:url(../assets/backgrounds/lounge.webp) 32% 38% / cover no-repeat;transform:translate3d(calc(var(--px) * -10px),calc(var(--py) * -6px),0);transition:transform .35s ease-out;image-rendering:-webkit-optimize-contrast}.fx-shade{inset:0;background:linear-gradient(180deg,#050a1880 0,#050a1800 16% 70%,#050a1873)}.fx-results .fx-photo{filter:saturate(1.15) hue-rotate(-12deg)}.fx-results .fx-shade{background:radial-gradient(ellipse at 50% 0,rgba(255,214,120,.3),transparent 60%),linear-gradient(180deg,#2814508c,#050a18d1)}.fx-home .fx-beam,.fx-game .fx-beam{display:none}.fx-orb{opacity:.14}.fx-ball{filter:blur(var(--blur, 0px)) drop-shadow(0 10px 14px rgba(0,0,0,.55));margin-left:calc(var(--px) * 22px * var(--depth, 1));transition:margin-left .4s ease-out}.game{background:linear-gradient(180deg,#050a18c7,#050a18e0),url(../assets/backgrounds/lounge.webp) 50% 30% / cover no-repeat,var(--navy-900)}.tile,.item-card,.level-node{transform:perspective(760px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg));transform-style:preserve-3d;transition:transform .16s ease-out,border-color .15s,box-shadow .25s;will-change:transform}.tile:hover,.item-card:hover,.level-node:hover:not(.locked){transform:perspective(760px) translateY(-5px) translateZ(14px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg));box-shadow:0 18px 34px #0000008c,0 0 22px #e8c46a38}.tile.tilting{transition:transform .05s linear,border-color .15s,box-shadow .25s}.tile>svg,.tile>.icon{transform:translateZ(34px)}.tile:before{background:radial-gradient(circle at var(--mx, 50%) var(--my, 0),rgba(255,244,190,.34),transparent 58%)}.tile:active{transform:perspective(760px) translateY(0) scale(.97)}.btn{box-shadow:inset 0 2px #ffffff38,inset 0 -3px #00000047,0 5px #0000006b,0 10px 18px #00000052}.btn.primary:not(:disabled){box-shadow:inset 0 2px #ffffff80,inset 0 -4px #78500a73,0 5px #5a3a08cc,0 10px 22px #0006,0 0 20px #e8c46a66}.btn:active:not(:disabled){transform:translateY(4px);box-shadow:inset 0 2px #ffffff2e,inset 0 -2px #00000047,0 1px #0000006b}.btn.ghost,.btn.icon-btn{box-shadow:inset 0 1px #ffffff29,0 3px #00000059}.chip{box-shadow:inset 0 1px #ffffff26,0 3px 8px #00000059}.panel,.room-code span,.score-side{transform-style:preserve-3d}.avatar{box-shadow:0 6px 14px #00000073}@media(hover:none){.tile:hover{transform:none;box-shadow:none}.tile{will-change:auto}}@media(max-width:480px){.topbar h1{font-size:1rem}.topbar{gap:6px;padding-left:10px;padding-right:10px}.chip{padding:3px 8px;font-size:.8rem}}@media(orientation:landscape)and (max-height:430px){.game{grid-template-columns:76px minmax(0,1fr) 118px}.game-right{gap:4px;padding:4px}.spinpad{width:78px;height:78px}.spin-caption{display:none}.game-right .btn.small{min-height:30px;padding:4px 8px;font-size:.75rem}.game-right .shoot-ctl{width:104px!important}.game-top{padding-top:calc(2px + env(safe-area-inset-top));padding-bottom:2px}.game-top .btn.icon-btn{width:36px;height:36px;min-height:36px}.pcard .avatar{width:28px;height:28px}.hud-msg{top:4px;padding:4px 12px;font-size:.85rem}.hud-badge{bottom:4px;padding:3px 10px;font-size:.8rem}.topbar{padding-top:calc(4px + env(safe-area-inset-top));padding-bottom:4px}.screen-body{padding-top:6px}}.fx-shade{background:linear-gradient(180deg,#050a188c 0,#050a1833 18%,#050a183d 70%,#050a188c)}.tile{background:linear-gradient(180deg,#1b2f66,#12234f);border:1px solid rgba(232,196,106,.36);border-radius:18px;min-height:118px;gap:8px;letter-spacing:.02em;text-shadow:0 1px 2px rgba(0,0,0,.7);box-shadow:inset 0 1px #ffffff17,0 2px #00000059,0 10px 22px #00000061}.tile:before{background:radial-gradient(circle at var(--mx, 50%) var(--my, 0),rgba(255,236,170,.1),transparent 60%);opacity:0;transition:opacity .25s}.tile:hover:before{opacity:1}.tile:hover{border-color:#ffe28ccc;box-shadow:inset 0 1px #ffffff1f,0 2px #00000059,0 16px 30px #00000073,0 0 22px #e8c46a2e}.tile:active{transform:perspective(760px) translateY(1px) scale(.98);box-shadow:inset 0 1px #ffffff14,0 6px 12px #0006}.tile-icon{width:64px;height:64px;filter:drop-shadow(0 6px 8px rgba(0,0,0,.45));transform:translateZ(36px);transition:transform .25s cubic-bezier(.3,1.5,.5,1);pointer-events:none}.tile:hover .tile-icon{transform:translateZ(50px) scale(1.08)}.tile.hero{background:linear-gradient(180deg,#1e7f56,#125a3b);border-color:#e8c46a99;box-shadow:inset 0 1px #ffffff24,0 2px #00000059,0 12px 26px #0000006b,0 0 24px #28aa6e2e}.tile.hero .tile-icon{width:84px;height:84px}.badge{z-index:2;border:1.5px solid #fff;box-shadow:0 2px 4px #00000080}.panel{background:linear-gradient(180deg,#172a5c,#0f1d46);border:1px solid rgba(232,196,106,.4);border-radius:18px;box-shadow:inset 0 1px #ffffff14,0 12px 28px #0000006b}.panel:before{display:none}.player-card .avatar{box-shadow:0 0 0 2px #e8c46acc,0 8px 16px #00000073}.progress{height:12px;background:#081028;border:1px solid rgba(232,196,106,.4);box-shadow:inset 0 2px 4px #0000008c}.chip{background:#14275a;border:1px solid rgba(232,196,106,.5);box-shadow:inset 0 1px #ffffff1a,0 2px #00000059}.item-card,.level-node,.stat,.score-side,.slot,.pcard{background:linear-gradient(180deg,#1b2f66,#12234f);border:1px solid rgba(232,196,106,.32);border-radius:14px;box-shadow:inset 0 1px #ffffff14,0 2px #0000004d,0 8px 18px #00000059}.item-card.equipped,.level-node.done{border-color:#46c37bcc;box-shadow:inset 0 1px #ffffff14,0 8px 18px #00000059,0 0 14px #46c37b40}.pcard.active{background:linear-gradient(180deg,#3a3418,#26200d);border-color:#e8c46ae6}.segmented{border-radius:12px;box-shadow:0 2px #00000059}input[type=text],select{background:#091330;box-shadow:inset 0 2px 5px #00000080}.topbar{background:linear-gradient(180deg,#060c1ef2,#060c1ecc);border-bottom:1px solid rgba(232,196,106,.55);box-shadow:0 8px 18px #0006}.btn{border-radius:12px;box-shadow:inset 0 1px #ffffff29,0 3px #0006,0 8px 14px #00000047}.btn:active:not(:disabled){transform:translateY(2px);box-shadow:inset 0 1px #ffffff1f,0 1px #0006}.btn.primary:not(:disabled){box-shadow:inset 0 1px #ffffff73,inset 0 -3px #78500a59,0 3px #5a3a08d9,0 8px 16px #00000059}.btn.primary:not(:disabled):after{opacity:0;animation:none}.btn.primary:hover:not(:disabled):after{opacity:1;animation:shine .7s ease}.btn.ghost{box-shadow:none}.btn.icon-btn{box-shadow:inset 0 1px #ffffff24,0 3px #00000059}.badge{animation:none}.screen-body .container>p,.screen-body .container>.muted,.screen-body .container>.row>.muted{text-shadow:0 1px 2px #000,0 0 8px rgba(0,0,0,.9);color:#dfe6ff}@media(max-width:480px){.tile{min-height:108px}.tile-icon{width:58px;height:58px}.tile.hero .tile-icon{width:72px;height:72px}}@media(hover:none){.tile:hover{box-shadow:inset 0 1px #ffffff17,0 2px #00000059,0 10px 22px #00000061;border-color:#e8c46a5c}.tile:hover .tile-icon{transform:translateZ(36px)}}.seo-page-wrapper{min-height:100vh;background-color:#0b1633;color:#f4ecd0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;display:flex;flex-direction:column}.seo-topbar{background:#0b1633f2;border-bottom:1px solid rgba(232,196,106,.25);backdrop-filter:blur(10px);position:sticky;top:0;z-index:100;padding:12px 20px}.seo-topbar-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.seo-brand-link{display:flex;align-items:center;gap:10px;text-decoration:none;color:#f4ecd0}.seo-brand-title{font-family:Georgia,Times New Roman,serif;font-size:1.35rem;font-weight:700;background:linear-gradient(135deg,#fff3c4,#e8c46a);-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:.5px}.seo-nav-links{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.seo-nav-link{color:#f4ecd0d9;text-decoration:none;font-size:.92rem;font-weight:500;transition:color .15s ease;padding:4px 6px}.seo-nav-link:hover,.seo-nav-link:focus-visible{color:#e8c46a;outline:none}.seo-actions{display:flex;align-items:center;gap:10px}.seo-share-btn{background:#e8c46a26;border:1px solid rgba(232,196,106,.4);color:#e8c46a;padding:7px 14px;border-radius:8px;font-size:.88rem;font-weight:600;cursor:pointer;transition:all .2s ease}.seo-share-btn:hover{background:#e8c46a40;border-color:#e8c46a}.seo-play-cta-btn{background:linear-gradient(135deg,#e8c46a,#c89b3c);color:#0b1633;border:none;padding:8px 18px;border-radius:8px;font-size:.92rem;font-weight:700;cursor:pointer;box-shadow:0 4px 14px #e8c46a59;transition:transform .15s ease,box-shadow .15s ease}.seo-play-cta-btn:hover{transform:translateY(-1px);box-shadow:0 6px 18px #e8c46a80}.seo-main-container{max-width:900px;margin:0 auto;padding:24px 20px 60px;flex:1}.seo-breadcrumbs{margin-bottom:24px}.seo-breadcrumbs ol{display:flex;list-style:none;padding:0;margin:0;gap:8px;font-size:.85rem;color:#f4ecd099}.seo-breadcrumbs a{color:#e8c46a;text-decoration:none}.seo-breadcrumbs a:hover{text-decoration:underline}.seo-breadcrumbs .sep{opacity:.4}.seo-article-body{background:#14204499;border:1px solid rgba(232,196,106,.2);border-radius:16px;padding:32px 28px;box-shadow:0 8px 32px #0006}.seo-h1{font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,4vw,2.5rem);line-height:1.25;margin-top:0;margin-bottom:16px;color:#fff3c4}.seo-lead{font-size:1.12rem;line-height:1.6;color:#f4ecd0e6;margin-bottom:28px}.seo-quick-play-banner{background:linear-gradient(135deg,#e8c46a26,#0b1633cc);border:1px solid rgba(232,196,106,.35);border-radius:12px;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:36px;flex-wrap:wrap}.quick-play-content h3{margin:0 0 6px;color:#e8c46a;font-size:1.2rem}.quick-play-content p{margin:0;font-size:.92rem;color:#f4ecd0cc}.quick-play-btn{background:linear-gradient(135deg,#e8c46a,#c89b3c);color:#0b1633;border:none;padding:10px 22px;border-radius:8px;font-size:.95rem;font-weight:700;cursor:pointer;box-shadow:0 4px 12px #e8c46a4d;transition:transform .15s ease}.quick-play-btn:hover{transform:translateY(-2px)}.seo-section{margin-bottom:32px}.seo-h2{font-family:Georgia,Times New Roman,serif;font-size:1.45rem;color:#e8c46a;border-bottom:1px solid rgba(232,196,106,.2);padding-bottom:8px;margin-top:32px;margin-bottom:14px}.seo-paragraph{font-size:1rem;line-height:1.65;color:#f4ecd0e0;margin-bottom:14px}.seo-bullet-list{padding-left:20px;margin:12px 0 20px}.seo-bullet-item{margin-bottom:8px;color:#f4ecd0d9;font-size:.96rem}.seo-faqs-section{margin-top:40px;padding-top:20px;border-top:1px solid rgba(232,196,106,.25)}.seo-faq-grid{display:grid;grid-template-columns:1fr;gap:16px;margin-top:18px}.seo-faq-item{background:#0b163380;border:1px solid rgba(232,196,106,.2);border-radius:10px;padding:16px 20px}.seo-faq-q{color:#fff3c4;margin:0 0 8px;font-size:1.05rem}.seo-faq-a{color:#f4ecd0cc;margin:0;font-size:.94rem;line-height:1.5}.seo-related-section{margin-top:40px;padding-top:20px;border-top:1px solid rgba(232,196,106,.25)}.seo-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin-top:18px}.seo-guide-card{background:#0b1633b3;border:1px solid rgba(232,196,106,.25);border-radius:10px;padding:16px;text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:transform .2s ease,border-color .2s ease}.seo-guide-card:hover{transform:translateY(-3px);border-color:#e8c46a}.seo-card-title{color:#e8c46a;margin:0 0 8px;font-size:1.08rem}.seo-card-snippet{font-size:.88rem;color:#f4ecd0bf;margin:0 0 12px;flex:1}.seo-card-more{color:#fff3c4;font-weight:600;font-size:.85rem}.seo-footer{background:#070d20;border-top:1px solid rgba(232,196,106,.2);padding:40px 20px 24px;margin-top:40px}.seo-footer-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:32px}.seo-footer-heading{color:#e8c46a;font-family:Georgia,serif;font-size:1.15rem;margin-top:0;margin-bottom:14px}.seo-footer-desc,.seo-footer-sub{font-size:.88rem;color:#f4ecd0b3;line-height:1.5}.seo-footer-sub a,.seo-footer-links a{color:#e8c46a;text-decoration:none;transition:color .15s ease}.seo-footer-links{list-style:none;padding:0;margin:0}.seo-footer-links li{margin-bottom:8px}.seo-footer-links a{font-size:.9rem;color:#f4ecd0cc}.seo-footer-links a:hover{color:#fff3c4;text-decoration:underline}.seo-footer-bottom{max-width:1200px;margin:28px auto 0;padding-top:20px;border-top:1px solid rgba(255,255,255,.08);text-align:center;font-size:.82rem;color:#f4ecd080}.landing-seo-content{background:#09122b;border-top:2px solid rgba(232,196,106,.25);color:#f4ecd0;padding:48px 20px 40px;margin-top:10px}.landing-seo-container{max-width:1100px;margin:0 auto}.landing-seo-hero{text-align:center;max-width:800px;margin:0 auto 40px}.landing-seo-h2{font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,3.5vw,2.4rem);color:#fff3c4;margin-bottom:12px}.landing-seo-lead{font-size:1.08rem;color:#f4ecd0e0;line-height:1.6}.landing-seo-badges{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:18px}.badge-item{background:#e8c46a1f;border:1px solid rgba(232,196,106,.3);color:#e8c46a;padding:6px 12px;border-radius:20px;font-size:.84rem;font-weight:600}.landing-section-title{font-family:Georgia,serif;font-size:1.5rem;color:#e8c46a;margin-bottom:20px;text-align:center}.landing-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:48px}.landing-feature-card{background:#121d40b3;border:1px solid rgba(232,196,106,.2);border-radius:12px;padding:20px;transition:transform .2s ease,border-color .2s ease}.landing-feature-card:hover{transform:translateY(-2px);border-color:#e8c46a}.feature-icon{font-size:2rem;margin-bottom:10px}.landing-feature-card h4{color:#fff3c4;margin:0 0 8px;font-size:1.15rem}.landing-feature-card p{color:#f4ecd0c7;margin:0;font-size:.92rem;line-height:1.5}.landing-content-block{margin-bottom:32px}.landing-block-title{font-family:Georgia,serif;font-size:1.35rem;color:#e8c46a;margin-bottom:10px}.landing-block-text{font-size:.98rem;line-height:1.6;color:#f4ecd0d9;margin-bottom:10px}.landing-bullets{padding-left:20px;margin:10px 0 20px}.landing-bullets li{margin-bottom:6px;color:#f4ecd0d9;font-size:.94rem}.landing-faqs-section{margin:48px 0}.landing-faqs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}.landing-faq-card{background:#121d4080;border:1px solid rgba(232,196,106,.2);border-radius:10px;padding:16px 20px}.landing-faq-q{color:#fff3c4;margin:0 0 6px;font-size:1rem}.landing-faq-a{color:#f4ecd0c7;margin:0;font-size:.9rem;line-height:1.5}.landing-guides-section{margin:48px 0}.landing-guides-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.landing-guide-link{background:#121d4099;border:1px solid rgba(232,196,106,.25);border-radius:10px;padding:18px;text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:transform .2s ease,border-color .2s ease}.landing-guide-link:hover{transform:translateY(-3px);border-color:#e8c46a}.landing-guide-link h4{color:#e8c46a;margin:0 0 8px;font-size:1.08rem}.landing-guide-link p{color:#f4ecd0bf;font-size:.88rem;margin:0 0 12px;flex:1}.link-arrow{color:#fff3c4;font-weight:600;font-size:.85rem}.landing-cta-banner{background:linear-gradient(135deg,#e8c46a33,#0b1633f2);border:1px solid rgba(232,196,106,.4);border-radius:16px;padding:32px 24px;text-align:center;margin:48px 0}.cta-banner-inner h3{font-family:Georgia,serif;font-size:1.6rem;color:#fff3c4;margin:0 0 8px}.cta-banner-inner p{color:#f4ecd0d9;margin:0 0 20px}.cta-play-btn{background:linear-gradient(135deg,#e8c46a,#c89b3c);color:#0b1633;border:none;padding:12px 28px;border-radius:8px;font-size:1.05rem;font-weight:700;cursor:pointer;box-shadow:0 6px 18px #e8c46a59;transition:transform .15s ease}.cta-play-btn:hover{transform:translateY(-2px)}.landing-seo-footer{border-top:1px solid rgba(232,196,106,.2);padding-top:36px;margin-top:36px}.landing-footer-inner{display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px}@media(max-width:768px){.landing-footer-inner{grid-template-columns:1fr}}.footer-meta h4{color:#e8c46a;font-family:Georgia,serif;font-size:1.2rem;margin:0 0 10px}.footer-meta p{font-size:.88rem;color:#f4ecd0b3;margin:0 0 8px}.footer-meta a{color:#e8c46a}.footer-links-group h5{color:#fff3c4;margin:0 0 12px;font-size:.95rem;text-transform:uppercase;letter-spacing:.5px}.footer-links-group a{display:block;color:#f4ecd0bf;text-decoration:none;margin-bottom:8px;font-size:.9rem}.footer-links-group a:hover{color:#e8c46a;text-decoration:underline}.footer-copyright{margin-top:28px;padding-top:18px;border-top:1px solid rgba(255,255,255,.08);text-align:center;font-size:.82rem;color:#f4ecd080}
