:root{--bg:#fff8ef;--surface:#fff;--surface-2:#f6eeff;--ink:#2b2340;--ink-muted:#4e4766;--primary:#6c4df6;--primary-ink:#fff;--accent:#ff7a59;--danger:#e5484d;--success:#2fa866;--correct:#f0b429;--present:#5cc8ee;--absent:#d7d0e6;--tile-border:#dcd3ee;--correct-ink:#2b2340;--present-ink:#0b2233;--absent-ink:#4f4966;--lock:#f0b429;--orbit:#5cc8ee;--dust:#d7d0e6;--key:#e9e1f7;--key-ink:#2b2340;--shadow-1:0 1px 2px #2b234014;--shadow-2:0 8px 22px #2b23401f;--r-tile:10px;--r-card:20px;--r-sheet:28px;--r-btn:999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--font:"Nunito Variable", "Nunito", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--sab:env(safe-area-inset-bottom,0px);--sat:env(safe-area-inset-top,0px);--sal:env(safe-area-inset-left,0px);--sar:env(safe-area-inset-right,0px);--tap:44px;--dial-lock-hi:#ffe9a0;--dial-lock-lo:#d99a0f;--toast-ink:#fff;--toast-success:#9a6200;--toast-success-hi:#b07300;--toast-success-lo:#7a4c00;--toast-danger:#c23a3f;--toast-danger-hi:#cf3f44;--toast-danger-lo:#a82e33;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#15111f;--surface:#211b33;--surface-2:#2b2342;--ink:#f3eeff;--ink-muted:#c9c2e0;--primary:#9b86ff;--primary-ink:#15111f;--accent:#ff8e70;--danger:#ff6b70;--success:#3cc27a;--correct:#f2b93b;--present:#4cc9f0;--absent:#3a3354;--absent-ink:#c5bedd;--present-ink:#04202b;--tile-border:#3a3354;--key:#3a3354;--key-ink:#f3eeff;--correct-ink:#231800;--dial-face-hi:#4a4166;--dial-face-lo:#2a2340;--dial-lock-hi:#ffe9a0;--dial-lock-lo:#d99a0f;--toast-success:#9a6200;--toast-success-hi:#b07300;--toast-success-lo:#7a4c00;--toast-danger:#c23a3f;--toast-danger-hi:#cf3f44;--toast-danger-lo:#a82e33;--shadow-1:none;--shadow-2:0 8px 22px #0006;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root[data-theme=system]{--bg:#15111f;--surface:#211b33;--surface-2:#2b2342;--ink:#f3eeff;--ink-muted:#c9c2e0;--primary:#9b86ff;--primary-ink:#15111f;--accent:#ff8e70;--danger:#ff6b70;--success:#3cc27a;--correct:#f2b93b;--present:#4cc9f0;--absent:#3a3354;--absent-ink:#c5bedd;--present-ink:#04202b;--tile-border:#3a3354;--key:#3a3354;--key-ink:#f3eeff;--correct-ink:#231800;--dial-face-hi:#4a4166;--dial-face-lo:#2a2340;--dial-lock-hi:#ffe9a0;--dial-lock-lo:#d99a0f;--toast-success:#9a6200;--toast-success-hi:#b07300;--toast-success-lo:#7a4c00;--toast-danger:#c23a3f;--toast-danger-hi:#cf3f44;--toast-danger-lo:#a82e33;--shadow-1:none;--shadow-2:0 8px 22px #0006;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-cb="1"]{--correct:#f5793a;--present:#4da3ff;--correct-ink:#1b1030;--present-ink:#0b1b33;--lock:#f5793a;--orbit:#4da3ff;--toast-success:#b04e14;--toast-success-hi:#c25a1c;--toast-success-lo:#8f3f0e}*,:before,:after{box-sizing:border-box}html,body{height:100%;margin:0;padding:0;overflow:hidden}body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;overscroll-behavior:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;font-size:16px;line-height:1.4}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}button:disabled{cursor:not-allowed;opacity:.55}:focus-visible{outline:3px solid var(--primary);outline-offset:2px;border-radius:8px}h1,h2,h3,p{margin:0}.muted{color:var(--ink-muted)}.center{text-align:center}.small{font-size:13px}.app{flex-direction:column;width:100%;max-width:520px;height:100%;max-height:100svh;margin:0 auto;display:flex;position:relative;overflow:hidden}@supports (height:100svh){.app{height:100svh;max-height:100svh}}@media (display-mode:standalone),(display-mode:fullscreen),(display-mode:minimal-ui){.app{height:auto;max-height:none;position:fixed;inset:0}}:root[data-standalone] .app{height:auto;max-height:none;position:fixed;inset:0}.app>div:has(>.game){flex-direction:column;flex:auto;width:100%;min-height:0;display:flex;overflow:hidden}.page,.home{min-height:0;max-height:100%;padding:calc(var(--space-3) + var(--sat)) var(--space-4) calc(var(--tabbar-space) + var(--sab) + var(--space-4));gap:var(--space-3);z-index:1;scrollbar-width:none;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;scroll-padding-bottom:calc(var(--tabbar-space) + var(--sab) + var(--space-3));flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden auto}.page-title{font-size:28px;font-weight:800}.page-title small{color:var(--ink);opacity:.85;margin-left:6px;font-size:14px}.blobs i{filter:blur(60px);opacity:.28;z-index:0;border-radius:50%;animation:14s ease-in-out infinite alternate float;position:absolute}.blobs i:first-child{background:var(--primary);width:260px;height:260px;top:-80px;left:-60px}.blobs i:nth-child(2){background:var(--accent);width:220px;height:220px;animation-delay:-4s;top:40%;right:-90px}.blobs i:nth-child(3){background:var(--present);width:200px;height:200px;animation-delay:-8s;bottom:10%;left:-70px}.app[data-screen=daily] .blobs,.app[data-screen=practice] .blobs,.app[data-screen=duel] .blobs{display:none}@keyframes float{to{transform:translate(24px,30px)scale(1.08)}}.hbar,.gbar{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.logo{letter-spacing:-.5px;font-size:26px;font-weight:800}.hright{align-items:center;gap:8px;display:flex}.streak{background:var(--surface);box-shadow:var(--shadow-1);border-radius:999px;padding:6px 12px;font-weight:800}.icon-btn{width:var(--tap);height:var(--tap);background:var(--surface);box-shadow:var(--shadow-1);border-radius:14px;place-content:center;place-items:center;font-size:20px;transition:transform .1s;display:grid}.icon-btn .ico{place-self:center;margin:0;display:block}.icon-btn:active{transform:scale(.92)}.hero{align-items:center;gap:12px;display:flex}.bubble{background:var(--surface);box-shadow:var(--shadow-1);border-radius:18px 18px 18px 4px;flex:1;padding:12px 16px;font-weight:700}.pip{filter:drop-shadow(0 6px 10px #6c4df64d);transform-origin:50% 90%;animation:3.2s ease-in-out infinite bob}.pip-cheer{animation:1s ease-in-out infinite hop}.pip-oops{animation:none}.pip-sleep{animation-duration:5s}@keyframes bob{50%{transform:translateY(-4px)rotate(-2deg)}}@keyframes hop{40%{transform:translateY(-10px)scale(1.04)}}.daily-card{text-align:left;color:#fff;background:linear-gradient(135deg, var(--primary), #9b6bff 55%, var(--accent));border-radius:26px;flex-direction:column;gap:14px;padding:18px;transition:transform .12s;display:flex;position:relative;overflow:hidden;box-shadow:0 14px 30px #6c4df659}.daily-card:active{transform:scale(.985)}.daily-card:after{content:"";pointer-events:none;background:radial-gradient(circle at 85% 0,#ffffff47,#0000 55%);position:absolute;inset:0}.dc-top{justify-content:space-between;align-items:baseline;display:flex}.dc-top b{font-size:22px;font-weight:800}.dc-top small{opacity:.85;font-weight:700}.dc-tiles{gap:8px;display:flex}.dc-tile{width:46px;height:46px;animation:3s ease-in-out infinite tilt;animation-delay:calc(var(--i) * .12s);background:#ffffff1f;border:2px solid #ffffff8c;border-radius:12px;place-items:center;font-weight:800;display:grid}.dc-tile[data-s=C]{background:var(--correct);border-color:#0000}@keyframes tilt{50%{transform:translateY(-4px)rotate(3deg)}}.dc-cta{color:#4b2fd8;background:#fff;border-radius:999px;align-self:flex-start;padding:10px 18px;font-size:15px;font-weight:800}.dc-cta.done,.dc-cta.off{color:#fff;background:#0000007a}.two{grid-template-columns:1fr 1fr;gap:10px;display:grid}.mode{text-align:left;background:var(--surface);box-shadow:var(--shadow-1);border:2px solid color-mix(in srgb, var(--ink) 6%, transparent);cursor:pointer;font:inherit;color:inherit;box-sizing:border-box;border-radius:18px;flex-direction:row;align-items:center;gap:10px;min-height:56px;padding:10px 12px;transition:transform .12s,box-shadow .12s;display:flex}.mode:active{transform:scale(.97)}.mode-copy{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.mode b{letter-spacing:-.01em;font-size:16px;font-weight:800;line-height:1.15}.mode small{color:var(--ink-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;font-weight:600;line-height:1.25;display:-webkit-box;overflow:hidden}.mode-ic{margin-bottom:0;font-size:20px;line-height:1}.mode.duel{background:linear-gradient(160deg, var(--surface), var(--surface-2))}:root{--tabbar-space:76px}.app>.tabbar,.tabbar{z-index:40;gap:var(--space-1);width:100%;max-width:none;padding:6px max(8px, var(--sal)) calc(6px + var(--sab)) max(8px, var(--sar));background:var(--surface);border-top:1px solid color-mix(in srgb, var(--ink-muted) 18%, transparent);isolation:isolate;box-sizing:border-box;border-radius:0;margin-inline:0;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #2b234014}.tabbar button{color:var(--ink-muted);background:0 0;border-radius:16px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;padding:8px 4px;font-size:12px;font-weight:800;display:flex}.tabbar button span{font-size:12px;line-height:1.1}.tabbar button.on{background:var(--primary);color:var(--primary-ink)}.tabbar button.on .ico{color:var(--primary-ink)}.tabbar button .ico{flex:none;display:block}.game{min-height:0;padding-top:var(--sat);padding-bottom:calc(var(--tabbar-space) + var(--sab));z-index:1;box-sizing:border-box;flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.ranks-bar{justify-content:space-between;align-items:center;gap:8px;display:flex}.ranks-bar .page-title{margin:0}.icon-btn.on{outline:2px solid var(--primary);outline-offset:2px}.gbar{padding:var(--space-2) var(--space-3);flex:none}.gtitle{flex-direction:column;flex:1;align-items:center;line-height:1.1;display:flex}.gtitle b{font-size:18px;font-weight:800}.gtitle small{color:var(--ink-muted);font-size:12px;font-weight:700}.gright{min-width:var(--tap);justify-content:flex-end;align-items:center;gap:var(--space-2);display:flex}.menu-chrome{justify-content:space-between;align-items:center;gap:var(--space-2);min-height:var(--tap);display:flex}.menu-chrome .icon-btn.chrome-gear{flex:none;align-self:center}.menu-chrome .icon-btn.chrome-gear .ico,.gbar .icon-btn.chrome-gear .ico,.hbar .icon-btn.chrome-gear .ico{display:block}.gmain{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;justify-content:flex-start;align-items:center;gap:8px;min-height:0;padding:4px 4px 0;display:flex;position:relative;overflow:hidden auto}.chip{background:var(--surface);box-shadow:var(--shadow-1);border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:800;display:inline-flex}.chip.warn{background:var(--present);color:#2b2340}.chip.bot-half{background:color-mix(in srgb, var(--primary) 16%, var(--surface));color:var(--ink);border:1.5px solid color-mix(in srgb, var(--primary) 40%, transparent)}.banner.warn{background:var(--present);color:#2b2340;text-align:center;border-radius:12px;padding:6px 12px;font-size:13px;font-weight:800}.board{--ts:clamp(30px, min(62px, calc((100dvh - 360px) / 6 - 5px), 15.6vw), 62px);gap:5px;margin:auto 0;display:grid}.row{grid-template-columns:repeat(5, var(--ts));gap:5px;display:grid}.tile{width:var(--ts);height:var(--ts);border:2px solid var(--tile-border);border-radius:var(--r-tile);font-weight:800;font-size:calc(var(--ts) * .5);background:var(--surface);color:var(--ink);text-transform:none;-webkit-user-select:none;user-select:none;backface-visibility:hidden;place-items:center;line-height:1;display:grid;position:relative}.tile .face{pointer-events:none}.tile[data-s=tbd]{border-color:var(--ink-muted)}.tile[data-s=C]{--res:var(--correct);--res-ink:var(--correct-ink)}.tile[data-s=P]{--res:var(--present);--res-ink:var(--present-ink)}.tile[data-s=A]{--res:var(--absent);--res-ink:var(--absent-ink)}.tile[data-s=C],.tile[data-s=P],.tile[data-s=A]{background:var(--res);border-color:var(--res);color:var(--res-ink)}:root[data-cb="1"] .tile[data-s=C]:after,:root[data-cb="1"] .tile[data-s=P]:after,:root[data-cb="1"] .tile[data-s=A]:after{font-size:calc(var(--ts) * .22);font-weight:800;position:absolute;top:2px;right:5px}:root[data-cb="1"] .tile[data-s=C]:after{content:"●"}:root[data-cb="1"] .tile[data-s=P]:after{content:"◐"}:root[data-cb="1"] .tile[data-s=A]:after{content:"✕"}@keyframes pop{50%{transform:scale(1.1)}}@keyframes flip{0%{background:var(--surface);border-color:var(--ink-muted);color:var(--ink);transform:rotateX(0)}49%{background:var(--surface);border-color:var(--ink-muted);color:var(--ink);transform:rotateX(90deg)}50%{background:var(--res);border-color:var(--res);color:var(--res-ink);transform:rotateX(90deg)}to{background:var(--res);border-color:var(--res);color:var(--res-ink);transform:rotateX(0)}}.row.shake{animation:.4s shake}@keyframes shake{20%,60%{transform:translate(-7px)}40%,80%{transform:translate(7px)}}.row.pending .tile{animation:.9s ease-in-out infinite breathe}@keyframes breathe{50%{opacity:.85;transform:scale(.96)}}.row.celebrate .tile{animation:.6s both bounce;animation-delay:calc(var(--i) * .1s)}@keyframes bounce{30%{transform:translateY(-14px)}60%{transform:translateY(2px)}}.row.demo{justify-content:center;gap:5px;margin:8px 0;display:flex}.row.demo .tile{--ts:48px}.keyboard{width:100%;padding:0 2px calc(6px + var(--sab));flex-direction:column;gap:7px;display:flex}.krow{justify-content:center;gap:4px;display:flex}.key{background:var(--key);min-width:0;max-width:46px;height:54px;color:var(--key-ink);-webkit-user-select:none;user-select:none;touch-action:manipulation;border-radius:10px;flex:1 1 0;place-items:center;font-size:17px;font-weight:800;transition:transform 60ms,background .3s;display:grid;box-shadow:0 2px #2b234029}.key:active{box-shadow:none;transform:translateY(2px)scale(.95)}.key.wide{flex:1.6 1 0;max-width:66px;font-size:12px}.key.wide.enter{flex:1.85 1 0;max-width:76px}@media (max-width:360px){.gmain.stage-wrap{padding-left:4px;padding-right:4px}.keyboard{padding-left:0;padding-right:0}.krow{gap:2px}.key{font-size:15px}.key:not(.wide){min-width:24px}.key.wide{flex:1.2 1 0;min-width:36px;max-width:48px;font-size:11px}.key.wide.enter{flex:1.3 1 0;min-width:40px;max-width:52px}}.key[data-s=C]{background:var(--correct);color:var(--correct-ink)}.key[data-s=P]{background:var(--present);color:var(--present-ink)}.key[data-s=A]{background:var(--absent);color:var(--absent-ink)}@media (max-height:640px){.key{height:var(--tap)}.keyboard{gap:5px}.gmain{gap:4px}.gbar{padding:4px 12px}.mini-tile{width:9px;height:9px}.mini{gap:2px;padding:4px}.mini-row{gap:2px}.react{width:var(--tap);height:var(--tap);font-size:18px}.duel-top{padding:0 8px}.ad-game{margin-top:16px}}.adslot{--adh:72px;--ad-plate:#12182b;color:var(--ink-muted);background:color-mix(in srgb, var(--surface) 60%, transparent);height:var(--adh);width:min(100%, calc(var(--adh) * 640 / 90));border:0;border-radius:12px;flex:none;align-self:center;max-width:100%;margin-inline:auto;font-size:12px;font-weight:700;position:relative;overflow:hidden}.adslot.house{background:var(--ad-plate);padding:0;container:adslot/size}.adslot.house.ad-sq{aspect-ratio:1;width:min(100%,320px);height:auto;max-height:320px}.adslot .ad-link{width:100%;height:100%;color:inherit;text-decoration:none;display:block;position:relative}.adslot .ad-link:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.adslot .ad-tag{z-index:3;letter-spacing:.5px;text-transform:uppercase;color:#2b2340;pointer-events:none;background:#ffffffeb;border-radius:0 0 0 8px;padding:0 7px;font-size:8px;font-weight:800;line-height:14px;position:absolute;top:0;right:0}.adslot .ad-creative{box-sizing:border-box;object-fit:contain;object-position:center center;background:var(--ad-plate);image-rendering:auto;-webkit-backface-visibility:hidden;width:100%;height:100%;padding:0;position:absolute;inset:0;transform:translateZ(0)}.adslot .ad-creative-wide{display:block}.adslot .ad-creative-sq{display:none}@container adslot (max-aspect-ratio:2.2){.ad-creative-wide{display:none}.ad-creative-sq{display:block}}.adslot .ad-copy{z-index:2;box-sizing:border-box;pointer-events:none;color:#fff;text-align:left;background:0 0;flex-direction:column;justify-content:center;align-items:flex-start;width:min(52%,300px);padding:0 10px 0 clamp(86px,20%,112px);display:flex;position:absolute;top:0;bottom:0;left:0}.adslot.ad-sq .ad-copy{text-align:center;background:linear-gradient(#0000 58%,#080a1680 100%);justify-content:flex-end;align-items:center;width:100%;padding:0 12px 12px}.adslot .ad-brand{font:800 clamp(12px, 2.8vw, 15px) / 1.2 var(--font,inherit);letter-spacing:.02em;color:#fff;text-shadow:0 1px 3px #0000008c;text-overflow:ellipsis;white-space:nowrap;-webkit-font-smoothing:antialiased;background:#060a14ad;border-radius:8px;max-width:100%;padding:4px 9px;overflow:hidden}.adslot.ad-sq .ad-brand{background:#060a148c}@media (max-height:640px){.adslot .ad-brand{padding:3px 8px;font-size:clamp(11px,2.5vw,13px)}}.ad-tag{background:var(--surface-2);border-radius:6px;padding:1px 6px}@media (min-width:728px){.adslot{--adh:90px}}@media (min-width:728px) and (max-height:880px){.adslot{--adh:60px}}@media (orientation:landscape) and (max-height:520px){.adslot{--adh:48px}}.ad-game{margin:16px 0 calc(6px + var(--sab));width:min(calc(100% - 16px), calc(var(--adh,72px) * 640 / 90));align-self:center}.toasts{top:calc(70px + var(--sat));z-index:60;pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;left:0;right:0}.toast{background:var(--ink);color:var(--bg);box-shadow:var(--shadow-2);text-align:center;letter-spacing:.01em;border-radius:14px;max-width:min(92vw,420px);padding:10px 18px;font-weight:800;line-height:1.35;animation:.2s ease-out toastin}.toast[data-tone=success]{background:linear-gradient(165deg, var(--toast-success-hi), var(--toast-success) 48%, var(--toast-success-lo));color:var(--toast-ink);text-shadow:0 1px 1px #2b234047;box-shadow:0 6px 18px color-mix(in srgb, var(--toast-success) 42%, transparent), var(--shadow-2)}.toast[data-tone=danger]{background:linear-gradient(165deg, var(--toast-danger-hi), var(--toast-danger) 50%, var(--toast-danger-lo));color:var(--toast-ink);text-shadow:0 1px 1px #2b234038;box-shadow:0 6px 18px color-mix(in srgb, var(--toast-danger) 38%, transparent), var(--shadow-2)}.toast[data-tone=neutral]{background:var(--ink);color:var(--bg)}@keyframes toastin{0%{opacity:0;transform:translateY(-8px)}}.confetti{pointer-events:none;z-index:70;width:100%;height:100%;position:fixed;inset:0}.scrim{z-index:50;background:#15111f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@keyframes fadein{0%{opacity:0}}.sheet{background:var(--surface);border-radius:var(--r-sheet) var(--r-sheet) 0 0;width:100%;max-width:520px;max-height:92dvh;padding:22px 20px calc(20px + var(--sab));gap:var(--space-3);box-shadow:var(--shadow-2);text-align:center;flex-direction:column;animation:.32s cubic-bezier(.2,.9,.2,1) sheetup;display:flex;position:relative;overflow-y:auto}@keyframes sheetup{0%{transform:translateY(40px)}}@media (min-width:560px){.scrim{align-items:center}.sheet{border-radius:var(--r-sheet)}}.sheet-x{z-index:2;width:var(--tap);height:var(--tap);background:var(--surface-2);border-radius:12px;font-weight:800;position:absolute;top:12px;right:12px}.sheet-title{box-sizing:border-box;min-width:0;max-width:100%;padding-inline:calc(var(--tap) + 8px);overflow-wrap:anywhere;margin:0;font-size:26px;font-weight:800;line-height:1.25}.result-head{flex-direction:column;align-items:center;gap:4px;display:flex}.lose-word{letter-spacing:3px;color:var(--primary);font-size:30px;font-weight:800}.stat-row{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.stat-row div{text-align:center;background:var(--surface-2);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;padding:10px 4px;display:flex}.stat-row b{font-size:24px;font-weight:800}.stat-row span{color:var(--ink-muted);font-size:11px;font-weight:700}.mini-title{text-align:left;color:var(--ink-muted);font-size:14px;font-weight:800}.dist{flex-direction:column;gap:4px;display:flex}.dist-row{align-items:center;gap:8px;display:flex}.dist-n{width:14px;font-size:13px;font-weight:800}.dist-bar{background:var(--absent);color:var(--absent-ink);text-align:right;border-radius:6px;min-width:24px;padding:2px 8px;font-size:12px;font-weight:800;transition:width .6s cubic-bezier(.2,.9,.2,1)}.dist-bar.zero{min-width:0;color:var(--ink-muted);text-indent:0;background:0 0;padding-inline:0;position:relative;overflow:visible;width:0!important}.dist-bar.zero:after{content:"0";color:var(--ink-muted);opacity:.55;font-size:12px;font-weight:800;position:absolute;top:50%;left:0;transform:translateY(-50%)}.dist-bar.hl{background:var(--correct);color:var(--correct-ink)}.dist-bar.hl.zero{background:color-mix(in srgb, var(--correct) 35%, transparent);min-width:28px;padding-inline:6px;width:28px!important}.dist-bar.hl.zero:after{content:none}.dist-this{color:var(--correct-ink,var(--ink));background:color-mix(in srgb, var(--correct) 22%, transparent);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:800}.dist-row.is-this .dist-n{color:var(--correct)}.dist-hint{color:var(--ink-muted);margin:0 0 8px;font-size:13px;line-height:1.35}.btn{border-radius:var(--r-btn);background:var(--surface-2);cursor:pointer;min-height:48px;color:inherit;font-weight:800;font:inherit;border:0;flex:1;place-items:center;padding:0 20px;transition:transform 80ms,box-shadow 80ms;display:inline-grid}.btn:active{transform:translateY(2px)scale(.98)}.btn.primary{background:var(--primary);color:var(--primary-ink);min-height:52px;box-shadow:0 4px 0 color-mix(in srgb, var(--primary) 60%, #000);font-size:17px}.btn.ghost{background:var(--surface);color:var(--ink);border:2px solid color-mix(in srgb, var(--primary) 32%, var(--tile-border));box-shadow:var(--shadow-1)}.btn.ghost:hover{border-color:color-mix(in srgb, var(--primary) 48%, var(--tile-border));background:color-mix(in srgb, var(--primary) 8%, var(--surface))}.btn.ghost:active:not(:disabled){background:color-mix(in srgb, var(--primary) 14%, var(--surface))}.btn.ghost.push{box-shadow:0 4px 0 color-mix(in srgb, var(--primary) 22%, transparent), var(--shadow-1)}.btn.ghost.push:active:not(:disabled){box-shadow:0 1px 0 color-mix(in srgb, var(--primary) 22%, transparent);transform:translateY(3px)}.btn.slim{min-height:var(--tap);flex:none;padding:0 18px}.btn.push{box-shadow:0 5px 0 color-mix(in srgb, var(--ink) 14%, transparent), 0 8px 18px #2b23401f}.btn.push:active:not(:disabled){box-shadow:0 2px 0 color-mix(in srgb, var(--ink) 14%, transparent);transform:translateY(3px)}.btn.primary.push{box-shadow:0 5px 0 color-mix(in srgb, var(--primary) 55%, #000), 0 10px 22px #6c4df659}.btn.primary.push:active:not(:disabled){box-shadow:0 2px 0 color-mix(in srgb, var(--primary) 55%, #000)}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.btn-row{flex-wrap:wrap;gap:12px;display:flex}.center-box{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:18px;padding:16px;display:flex}.spinner{border:3px solid var(--tile-border);border-top-color:var(--primary);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.offer{background:var(--surface);box-shadow:var(--shadow-1);border-radius:16px;flex-direction:column;gap:12px;padding:14px;display:flex}.menu{flex-direction:column;flex:none;gap:20px;width:100%;max-width:520px;padding:8px 16px 32px;display:flex}.menu-sec{flex-direction:column;gap:14px;padding-top:4px;display:flex}.menu-sec+.menu-sec{border-top:1px solid color-mix(in srgb, var(--ink) 8%, transparent);margin-top:4px;padding-top:20px}.dur-row{flex-wrap:wrap;gap:12px;display:flex}.dur-row button{background:var(--surface-2);border:1.5px solid color-mix(in srgb, var(--ink) 8%, transparent);box-sizing:border-box;border-radius:999px;flex:calc(33.333% - 10px);min-width:4.8rem;min-height:46px;padding:0 14px;font-weight:800}.dur-row button.on{background:var(--primary);color:var(--primary-ink);border-color:#0000}@media (max-width:360px){.dur-row button{padding:0 6px;font-size:14px}}.home-join{gap:var(--space-3);align-items:flex-start;width:100%;display:flex;position:relative}.home-join-field{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.home-join .input{flex:1;min-width:0}.join-hint{color:var(--danger);margin:0;font-size:13px;font-weight:700;line-height:1.3}.home-join .btn{flex:none;min-width:7.5rem;padding-inline:16px}.home-room-actions{gap:var(--space-3);z-index:auto;flex-direction:column;flex:none;width:100%;display:flex;position:relative}.home-room-actions>.card-btn.room{margin-bottom:0}.card-btn.room{text-align:left;color:#fff;background-color:#5b3df0;background-image:radial-gradient(90% 80% at 100% 0,#ffffff47,#0000 55%),linear-gradient(125deg,#5b3df0 0%,#4f3bd6 50%,#a93a84 100%);border:0;border-radius:20px;flex-direction:row;align-items:center;gap:12px;padding:12px 14px;box-shadow:inset 0 1px #ffffff59,0 5px #341d94,0 12px 24px -8px #6c4df680}.card-btn.room .room-ic{color:#fff;background:#ffffff38;border-radius:14px;flex:none;place-items:center;width:40px;height:40px;display:grid;box-shadow:inset 0 1px #fff6,0 3px 10px #2b234029}.card-btn.room .room-copy{background:0 0;border-radius:0;flex-direction:column;flex:1;gap:1px;min-width:0;padding:0;display:flex}.card-btn.room .room-copy b{letter-spacing:-.02em;color:#fff;text-shadow:0 1px #0000002e;font-size:17px;font-weight:800;line-height:1.15}.card-btn.room .room-copy small{color:#ffffffeb;opacity:1;font-size:12px;font-weight:700;line-height:1.25}.card-btn.room .room-go{color:#4b2fd8;background:#fff;border-radius:999px;flex:none;place-items:center;width:32px;height:32px;font-size:16px;font-weight:800;transition:transform .12s;display:grid;box-shadow:0 2px #2b23401f,0 4px 10px #2b234029}.card-btn.room.push:active:not(:disabled){transform:translateY(2px)scale(.99)}.card-btn.room.push:active:not(:disabled) .room-go{transform:translate(2px)}.card-btn.room.push{box-shadow:inset 0 1px #ffffff59,0 5px #341d94,0 12px 24px -8px #6c4df680}.card-btn.room.push:active:not(:disabled){box-shadow:inset 0 1px #ffffff47,0 2px #341d94,0 6px 14px -6px #6c4df666}:root[data-theme=dark] .card-btn.room{background-color:#6a4ff5;background-image:radial-gradient(90% 80% at 100% 0,#ffffff29,#0000 55%),linear-gradient(125deg,#6a4ff5 0%,#5a42e0 50%,#a93a84 100%);box-shadow:inset 0 1px #ffffff29,0 6px #38209f,0 16px 32px -8px #0000008c}:root[data-theme=dark] .card-btn.room .room-copy{background:0 0}:root[data-theme=dark] .card-btn.room .room-go{color:#4b2fd8;background:#fff}@media (prefers-color-scheme:dark){:root[data-theme=system] .card-btn.room{background-color:#7b62ff;background-image:radial-gradient(90% 80% at 100% 0,#ffffff29,#0000 55%),linear-gradient(125deg,#6a4ff5 0%,#5a42e0 50%,#a93a84 100%);box-shadow:inset 0 1px #ffffff29,0 6px #38209f,0 16px 32px -8px #0000008c}:root[data-theme=system] .card-btn.room .room-copy{background:0 0}:root[data-theme=system] .card-btn.room .room-go{color:#4b2fd8;background:#fff}}:root[data-motion=off] .card-btn.room .room-go{transition:none}.rating-card{background:var(--surface);border-radius:var(--r-card);box-shadow:var(--shadow-1);align-items:center;gap:12px;padding:14px;display:flex}.rating-card>div{flex-direction:column;flex:1;gap:2px;display:flex}.rating-card b{font-size:32px;font-weight:800;line-height:1}.rating-card>div>small:first-child{letter-spacing:.02em;color:var(--ink-muted);text-transform:uppercase;font-size:11px;font-weight:800}.league{color:var(--primary);font-size:13px;font-weight:800}.diff-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.diff-row .btn{flex:none;width:100%;min-width:0;padding-inline:8px;font-size:15px}@media (max-width:360px){.diff-row .btn{padding-inline:4px;font-size:14px}}.card-btn{text-align:left;border-radius:var(--r-card);background:var(--surface);box-shadow:var(--shadow-1);border:2px solid color-mix(in srgb, var(--ink) 6%, transparent);cursor:pointer;font:inherit;color:inherit;flex-direction:column;gap:6px;width:100%;padding:16px;transition:transform .1s,box-shadow .1s;display:flex}.card-btn b{font-size:19px;font-weight:800}.card-btn small{color:var(--ink-muted);font-weight:600}.card-btn.primary{background:linear-gradient(135deg, var(--primary), color-mix(in srgb, var(--primary) 85%, #5b3df0));color:var(--primary-ink);border-color:#0000;box-shadow:0 10px 24px #6c4df659}.card-btn.primary small{color:var(--primary-ink);opacity:1}.card-btn:active{transform:scale(.98)}.card-btn.push{box-shadow:0 6px 0 color-mix(in srgb, var(--ink) 12%, transparent), 0 12px 22px #2b23401f}.card-btn.push:active:not(:disabled){box-shadow:0 2px 0 color-mix(in srgb, var(--ink) 12%, transparent);transform:translateY(3px)scale(.99)}.card-btn.primary.push{box-shadow:0 6px 0 color-mix(in srgb, var(--primary) 50%, #000), 0 14px 28px #6c4df661}.mode.push{box-shadow:0 4px 0 color-mix(in srgb, var(--ink) 12%, transparent), 0 8px 16px #2b23401a}.mode.push:active{box-shadow:0 1px 0 color-mix(in srgb, var(--ink) 12%, transparent);transform:translateY(2px)scale(.98)}.lobby-list{text-align:left;flex-direction:column;flex:none;gap:6px;width:100%;max-width:360px;margin:2px 0;padding:0;list-style:none;display:flex}.lobby-list.lobby-seats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-width:420px;display:grid}@media (max-width:359px){.lobby-list.lobby-seats-grid{grid-template-columns:1fr}}.lobby-list li{background:var(--surface);box-shadow:var(--shadow-1);box-sizing:border-box;border-radius:14px;align-items:center;gap:10px;min-height:44px;padding:10px 12px;font-weight:700;display:flex}.lobby-list li.empty{opacity:1;border:2px dashed color-mix(in srgb, var(--primary) 55%, var(--tile-border));box-shadow:none;background:color-mix(in srgb, var(--primary) 7%, transparent);justify-content:center;min-height:48px;padding:0;animation:1.5s ease-in-out infinite lobby-empty-pulse}.lobby-list li.empty .lobby-empty-btn{cursor:pointer;width:100%;min-height:48px;font:inherit;color:inherit;border-radius:inherit;background:0 0;border:0;justify-content:center;align-items:center;margin:0;padding:12px 14px;display:flex}.lobby-list li.empty .lobby-empty-btn:disabled{cursor:default;opacity:.85}.lobby-list li.empty .nm{color:color-mix(in srgb, var(--primary) 65%, var(--ink-muted));flex:none;font-weight:800}.bot-pick-scrim{z-index:80;padding-bottom:calc(var(--tabbar-space) + var(--sab));box-sizing:border-box}.bot-pick-sheet{text-align:center;gap:16px}.bot-pick-row{flex-wrap:wrap;justify-content:center;gap:11px;display:flex}.bot-pick-row .btn{flex:100px;justify-content:center;align-items:center;gap:6px;max-width:140px;display:inline-flex}@keyframes lobby-empty-pulse{0%,to{border-color:color-mix(in srgb, var(--primary) 32%, var(--tile-border));box-shadow:0 0 #0000}50%{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 20%, transparent)}}:root[data-motion=off] .lobby-list li.empty,:root[data-perf=low] .lobby-list li.empty{border-color:var(--primary);animation:none}@media (prefers-reduced-motion:reduce){.lobby-list li.empty{border-color:var(--primary);animation:none}}.lobby-list .nm{flex:1;min-width:0}.lobby-list .dot{background:var(--tile-border);border-radius:50%;flex:none;width:10px;height:10px}.lobby-list .dot.on{background:var(--success)}.center-box.lobby{box-sizing:border-box;justify-content:flex-start;align-items:stretch;gap:0;width:100%;max-width:520px;min-height:0;margin-inline:auto;padding:2px 14px 14px;overflow:hidden}.game:has(.lobby){padding-bottom:calc(var(--tabbar-space) + var(--sab) + 12px)}.lobby-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;text-align:center;scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--primary) 40%, transparent) transparent;flex-direction:column;flex:auto;align-items:center;gap:8px;min-height:0;padding-bottom:6px;display:flex;overflow:hidden auto}.gmain:has(>.lobby){gap:0;padding-top:0}.lobby-body>.lobby-hero-avatar{margin-top:0}.lobby-body::-webkit-scrollbar{width:8px}.lobby-body::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--primary) 38%, transparent);background-clip:padding-box;border:2px solid #0000;border-radius:999px}.lobby .lobby-list .lobby-remove-bot.btn{border-radius:10px;flex:none;place-items:center;width:36px;min-width:36px;max-width:36px;height:36px;min-height:36px;padding:0}.lobby-actions{width:100%;min-height:0;max-height:none;box-shadow:none;z-index:2;background:0 0;flex-direction:column;flex:none;align-items:center;gap:11px;padding-top:11px;padding-bottom:4px;display:flex;position:relative;overflow:visible}.lobby-bots{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--primary) 40%, transparent) transparent;flex-flow:wrap;flex:0 auto;justify-content:center;gap:11px;max-width:420px;min-height:0;max-height:min(28vh,132px);margin-inline:auto;display:flex;overflow:auto hidden}.lobby-bots::-webkit-scrollbar{height:8px}.lobby-bots::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--primary) 38%, transparent);background-clip:padding-box;border:2px solid #0000;border-radius:999px}.lobby-bots .btn{white-space:nowrap;flex:none;align-items:center;gap:6px;padding-inline:12px;font-size:14px;display:inline-flex}.lobby-actions>.lobby-start-row,.lobby-actions>.muted{flex:none}.lobby-start-row{justify-content:center;align-items:center;gap:8px;width:100%;max-width:420px;margin-inline:auto;display:flex;position:relative}.lobby .lobby-start-row .lobby-start.btn{flex:auto;width:auto;min-width:0;max-width:none}.lobby-start{letter-spacing:.02em;--tb:#17804d;--ti:#fff;min-height:52px;font-size:18px;font-weight:900}:root[data-theme=dark] .lobby-start{--tb:#17804d;--ti:#fff}.info-hint{flex:none;align-items:center;display:inline-flex;position:relative}.info-hint-btn{cursor:pointer;background:color-mix(in srgb, var(--ink) 8%, var(--surface));width:40px;min-width:40px;height:40px;min-height:40px;color:var(--ink-muted);box-shadow:var(--shadow-1);border:0;border-radius:999px;place-items:center;padding:0;display:grid}.info-hint-btn:hover,.info-hint-btn[aria-expanded=true]{color:var(--primary);background:color-mix(in srgb, var(--primary) 14%, var(--surface))}.info-hint-pop{z-index:6;background:var(--surface);width:min(260px,72vw);color:var(--ink);text-align:left;box-shadow:var(--shadow-2);border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);pointer-events:none;border-radius:14px;padding:10px 12px;font-size:13px;font-weight:700;line-height:1.35;position:absolute;bottom:calc(100% + 8px);right:0}.center-box.lobby .row-btns{gap:11px;margin:0}.gmain:has(>.lobby){overflow-y:hidden;-webkit-mask-image:none;mask-image:none}.avatar-grid{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px;display:grid}@media (min-width:560px){.avatar-grid{grid-template-columns:repeat(6,1fr)}}.avatar-opt{background:var(--surface);min-height:44px;box-shadow:var(--shadow-1);cursor:pointer;border:2px solid #0000;border-radius:18px;place-items:center;gap:2px;padding:6px 4px;display:grid}.avatar-opt.on{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 28%, transparent)}.room-setup{flex-direction:column;flex:1;gap:12px;min-height:0;display:flex;overflow:hidden}.room-setup-fields{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--primary) 40%, transparent) transparent;flex-direction:column;flex:auto;gap:22px;min-height:0;padding-bottom:10px;display:flex;overflow:hidden auto}.room-setup-fields::-webkit-scrollbar{width:8px}.room-setup-fields::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--primary) 38%, transparent);background-clip:padding-box;border:2px solid #0000;border-radius:999px}.room-setup-actions{box-shadow:none;z-index:2;isolation:isolate;background:0 0;flex-direction:column;flex:none;gap:12px;margin-top:0;padding-top:8px;display:flex;position:relative}.room-setup .setup-field{flex-direction:column;gap:10px;display:flex}.room-setup .setup-field .muted{letter-spacing:.01em;margin:0;font-size:13px;font-weight:700}.room-setup .card-btn{margin-top:0}.menu:has(>.room-setup){box-sizing:border-box;flex:auto;height:100%;min-height:0;max-height:100%;padding-bottom:12px;overflow:hidden}.join-row{align-items:stretch;gap:12px;margin-top:2px;display:flex}.input{border:2px solid var(--tile-border);background:var(--surface);min-height:48px;color:var(--ink);font:inherit;letter-spacing:3px;text-transform:uppercase;border-radius:14px;flex:2;padding:0 14px;font-weight:800}.input:focus{border-color:var(--primary);outline:none}.room-code-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;max-width:100%;display:flex;position:relative}.room-code{cursor:pointer;letter-spacing:8px;color:var(--primary);background:var(--surface);box-shadow:var(--shadow-1);border:0;border-radius:18px;padding:8px 18px;font-family:inherit;font-size:44px;font-weight:800;line-height:1.1}.lobby .room-code-row .btn{flex:none;width:auto;min-width:48px;max-width:none;padding-inline:12px}.lobby .room-code-row .room-code-copy.btn{border-radius:999px;place-items:center;width:48px;min-width:48px;max-width:48px;height:48px;min-height:48px;padding:0}.lobby .room-code-row .room-code-copy.btn[data-copied="1"]{--tb:var(--success);--ti:#fff;background:var(--success);color:#fff;box-shadow:0 6px 16px color-mix(in srgb, var(--success) 40%, transparent)}.room-code-row[data-copied="1"] .room-code{outline:2px solid color-mix(in srgb, var(--success) 55%, transparent)}.timebar{background:var(--tile-border);border-radius:999px;flex:none;height:6px;margin:0 14px;overflow:hidden}.timebar i{background:linear-gradient(90deg, var(--primary), var(--accent));transform-origin:0;border-radius:999px;height:100%;transition:width .25s linear;display:block}.duel-top{justify-content:space-between;align-items:center;width:100%;padding:4px 8px;display:flex}.mini{background:var(--surface);box-shadow:var(--shadow-1);border-radius:10px;gap:3px;padding:6px;display:grid}.mini-row{gap:3px;display:flex}.mini-tile{background:var(--tile-border);border-radius:3px;width:12px;height:12px;transition:background .3s}.mini-tile[data-s=C]{background:var(--correct)}.mini-tile[data-s=P]{background:var(--present)}.mini-tile[data-s=A]{background:var(--absent)}.react-bar{flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:60%;display:flex}.react{width:var(--tap);height:var(--tap);background:var(--surface);box-shadow:var(--shadow-1);border-radius:12px;font-size:20px}.react:active{transform:scale(.85)}.float-react{z-index:55;pointer-events:none;filter:drop-shadow(0 8px 18px #00000038);font-size:clamp(48px,12vw,72px);animation:1.6s ease-out forwards floatup;position:fixed;top:32%;left:50%;transform:translate(-50%)}@keyframes floatup{0%{opacity:0;transform:translate(-50%)translateY(24px)scale(.55)}18%{opacity:1;transform:translate(-50%)translateY(0)scale(1.15)}to{opacity:0;transform:translate(-50%)translateY(-140px)scale(.9)}}.react:disabled{opacity:.45;cursor:not-allowed}.countdown-overlay{z-index:30;background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex;position:absolute;inset:0}.countdown-overlay span{color:var(--primary);font-size:120px;font-weight:800;animation:1s ease-out cd}.countdown-overlay small{color:var(--ink-muted);font-weight:800}@keyframes cd{0%{opacity:0;transform:scale(.4)}30%{opacity:1;transform:scale(1.15)}to{transform:scale(1)}}.rating-delta .up{color:var(--success);font-weight:800}.rating-delta .down{color:var(--danger);font-weight:800}.rating-delta b{font-size:22px}.seg{background:var(--surface-2);border-radius:999px;gap:5px;padding:5px;display:flex}.seg button{color:var(--ink-muted);min-height:var(--tap);border-radius:999px;flex:1;padding:10px 12px;font-weight:800}.seg button.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-1)}.seg.small button{min-height:var(--tap);padding:8px 12px;font-size:13px}.lb{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.lb li{background:var(--surface);box-shadow:var(--shadow-1);border-radius:16px;align-items:center;gap:10px;padding:12px 14px;display:flex}.lb li.you{outline:2px solid var(--primary)}.lb .rk{text-align:center;width:32px;font-weight:800}.lb .nm{flex:1;font-weight:800}.lb em{color:var(--primary);font-size:12px;font-style:normal}.lb .sb{color:var(--ink-muted);font-size:13px;font-weight:700}.prof-head{align-items:center;gap:12px;display:flex}.prof-head>div{flex:1}.prof-head h1{font-size:22px;font-weight:800}.group{background:var(--surface);border-radius:var(--r-card);box-shadow:var(--shadow-1);padding:6px 14px}.group h2{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.5px;padding:10px 0 2px;font-size:13px;font-weight:800}.row-set{border-top:1px solid var(--surface-2);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex;position:relative}.group h2+.row-set{border-top:0}.row-set>span{flex-direction:column;flex:1;display:flex}.row-set small{color:var(--ink-muted);font-size:12px;font-weight:600}.row-set input[type=checkbox]{opacity:0;width:1px;height:1px;position:absolute}.switch{background:var(--tile-border);border-radius:999px;flex:none;width:52px;height:30px;transition:background .2s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:24px;height:24px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0000004d}input:checked+.switch{background:var(--primary)}input:checked+.switch:after{transform:translate(22px)}input:focus-visible+.switch{outline:3px solid var(--primary);outline-offset:2px}input:disabled+.switch{opacity:.5}.legend{text-align:left;flex-direction:column;gap:8px;margin:4px 0;padding:0;font-weight:700;list-style:none;display:flex}.legend li{align-items:center;gap:10px;display:flex}.legend i{background:var(--res);border-radius:6px;width:22px;height:22px;display:inline-block}.legend i[data-s=C]{background:var(--correct)}.legend i[data-s=P]{background:var(--present)}.legend i[data-s=A]{background:var(--absent)}:root[data-motion=off] .row.shake{outline:2px solid var(--danger);outline-offset:3px;border-radius:10px;animation:none}:root[data-motion=off] .row.celebrate .tile,:root[data-motion=off] .tile.pop,:root[data-motion=off] .pip,:root[data-motion=off] .dc-tile,:root[data-motion=off] .blobs i,:root[data-motion=off] .row.pending .tile,:root[data-motion=off] .countdown-overlay span,:root[data-motion=off] .sheet{animation:none}@keyframes fade{0%{opacity:.2}}@media (prefers-reduced-motion:reduce){.blobs i,.dc-tile,.pip{animation:none}}.logo{align-items:center;gap:8px;display:flex}.logo span{color:var(--ink)}.logomark{filter:drop-shadow(0 4px 8px #6c4df659)}.wordmark{align-items:center;gap:5px;display:flex}.wordmark .tile.wm{--ts:inherit;width:var(--ts);height:var(--ts);font-size:calc(var(--ts) * .5);animation:none}.wordmark.anim .tile.wm{animation:.5s ease-in-out both flip;animation-delay:calc(var(--i) * .11s + .15s)}.wm-pip{opacity:1;animation:none}.wordmark.anim .wm-pip{opacity:0;animation:.5s cubic-bezier(.2,1.4,.4,1) both pipin;animation-delay:calc(var(--i) * .11s + .25s)}.wm-pip .pip{animation:none}@keyframes pipin{0%{opacity:0;transform:scale(.2)rotate(-30deg)}to{opacity:1;transform:none}}.splash{z-index:100;background:radial-gradient(circle at 50% 40%, color-mix(in srgb, var(--primary) 22%, var(--bg)), var(--bg) 70%);place-items:center;transition:opacity .3s;display:grid;position:fixed;inset:0}.splash.out{opacity:0;pointer-events:none}@keyframes screenin{0%{transform:translateY(10px)}}.daily-card,.mode,.card-btn,.lb li,.group{animation:.35s cubic-bezier(.2,.9,.2,1) both rise}.mode:nth-child(2){animation-delay:60ms}.lb li:nth-child(n){animation-delay:calc(var(--n,0) * 30ms)}@keyframes rise{0%{transform:translateY(14px)scale(.98)}}.pip .eyes{transform-box:fill-box;transform-origin:50%;animation:4.5s infinite blink}@keyframes blink{0%,94%,to{transform:scaleY(1)}97%{transform:scaleY(.1)}}.pip-think{animation:2s ease-in-out infinite sway}@keyframes sway{50%{transform:rotate(4deg)translateY(-3px)}}.search-tiles{gap:8px;display:flex}.search-tiles i{background:var(--primary);opacity:.35;width:34px;height:34px;animation:1.2s ease-in-out infinite scan;animation-delay:calc(var(--i) * .12s);border-radius:10px}.search-tiles i:nth-child(2n){background:var(--accent)}.search-tiles i:nth-child(3n){background:var(--present)}@keyframes scan{40%{opacity:1;transform:translateY(-14px)rotate(8deg)}}.countdown-overlay:before{content:"";border:4px solid var(--primary);border-radius:50%;width:220px;height:220px;animation:1s ease-out infinite ring;position:absolute}@keyframes ring{0%{opacity:.8;transform:scale(.4)}to{opacity:0;transform:scale(1.6)}}.tile[data-s=tbd].pop{animation:.1s ease-out pop}.btn.primary:not(:disabled){position:relative;overflow:hidden}.btn.primary:not(:disabled):after{content:"";background:linear-gradient(100deg,#0000 30%,#ffffff59 50%,#0000 70%);animation:3.6s ease-in-out 1s infinite shine;position:absolute;inset:0;transform:translate(-120%)}@keyframes shine{40%,to{transform:translate(120%)}}:root[data-perf=low] .blobs,:root[data-perf=low] .confetti{display:none}:root[data-perf=low] .pip,:root[data-perf=low] .pip .eyes,:root[data-perf=low] .dc-tile,:root[data-perf=low] .btn.primary:after,:root[data-perf=low] .search-tiles i,:root[data-perf=low] .countdown-overlay:before,:root[data-motion=off] .page,:root[data-motion=off] .home,:root[data-motion=off] .game,:root[data-motion=off] .menu,:root[data-motion=off] .daily-card,:root[data-motion=off] .mode,:root[data-motion=off] .card-btn,:root[data-motion=off] .lb li,:root[data-motion=off] .group,:root[data-motion=off] .btn.primary:after,:root[data-motion=off] .search-tiles i,:root[data-motion=off] .countdown-overlay:before,:root[data-motion=off] .pip .eyes,:root[data-motion=off] .splash{animation:none}@media (prefers-reduced-motion:reduce){.splash{display:none}}.invite .center-box{gap:14px}.invite-title{font-size:28px;font-weight:800}.invite-form{flex-direction:column;gap:10px;width:100%;max-width:320px;display:flex}.invite-form .input{text-transform:none;letter-spacing:1px;text-align:center}.invite-err{color:var(--danger);text-align:center;font-size:14px;font-weight:800}:root[data-theme=dark] .invite-err,:root[data-theme=system] .invite-err{color:var(--danger)}.game{--mode-a:#3cc9a0;--mode-b:#7b61ff;position:relative;overflow:hidden}.game[data-mode=daily]{--mode-a:#ff9f6b;--mode-b:#e8467f}.game[data-mode=duel]{--mode-a:#7b5cff;--mode-b:#e8467f}.game>.gbar,.game>.gmain,.game>.adslot{z-index:1;position:relative}.scene{z-index:0;pointer-events:none;background:linear-gradient(165deg, color-mix(in srgb, var(--mode-a) 24%, var(--bg)) 0%, color-mix(in srgb, var(--mode-b) 16%, var(--bg)) 62%, var(--bg) 100%);position:absolute;inset:0;overflow:hidden}.glyph{left:var(--x);top:var(--y);font-size:var(--s);color:var(--mode-b);opacity:.1;transform:rotate(var(--r));animation:28s ease-in-out infinite alternate drift;animation-delay:var(--d);will-change:transform;font-weight:800;line-height:1;position:absolute}@keyframes drift{to{transform:translate3d(22px, -34px, 0) rotate(calc(var(--r) * -1))}}.game[data-win="1"] .scene:after{content:"";background:radial-gradient(circle at 50% 38%,#fff9,#0000 62%);animation:1.3s ease-out both flash;position:absolute;inset:0}@keyframes flash{0%{opacity:1}to{opacity:0}}.gtitle small{color:var(--ink);opacity:.78}.dots{gap:5px;margin-top:3px;display:flex}.dots i{background:color-mix(in srgb, var(--ink) 18%, transparent);border-radius:50%;width:8px;height:8px;transition:transform .2s,background .2s}.dots i.used{background:var(--mode-b)}.dots i.now{box-shadow:0 0 0 2px var(--mode-b);background:0 0;animation:1.5s ease-in-out infinite dotpulse}@keyframes dotpulse{50%{transform:scale(1.35)}}.gmain.stage-wrap{justify-content:flex-start;padding:0 8px}.stage{flex-direction:column;flex:1;align-items:center;gap:8px;width:100%;max-width:520px;min-height:0;margin:0 auto;display:flex}.slot-coach,.slot-top{flex-direction:column;align-items:center;gap:6px;width:100%;display:flex}.slot-board{flex:none;justify-content:center;align-items:center;width:100%;min-height:0;display:flex}.slot-kb{flex-direction:column;flex:auto;justify-content:flex-end;width:100%;display:flex}.slot-left,.slot-right{display:none}.gmain:not(.stage-wrap){width:100%;max-width:520px;margin:0 auto}.board-card{background:color-mix(in srgb, var(--surface) 80%, transparent);border:1px solid color-mix(in srgb, var(--mode-b) 22%, transparent);box-shadow:0 18px 38px color-mix(in srgb, var(--mode-b) 20%, transparent), inset 0 1px 0 #ffffff8c;border-radius:28px;padding:14px;position:relative}.board{--ts:clamp(30px, min(62px, calc((100dvh - 440px) / 6 - 5px), 15.4vw), 62px);isolation:isolate;margin:0}.board.compact{--ts:clamp(28px, min(54px, calc((100dvh - 520px) / 6 - 5px), 13.6vw), 54px)}.tile{box-shadow:0 3px 0 color-mix(in srgb, var(--tile-border) 70%, #8c80b8)}.tile[data-s=C],.tile[data-s=P],.tile[data-s=A]{box-shadow:0 3px 0 color-mix(in srgb, var(--res) 60%, #000)}.tile[data-s=tbd]{box-shadow:0 3px 0 color-mix(in srgb, var(--ink-muted) 55%, transparent)}.tile.reveal{animation:.5s ease-in-out both flip2;animation-delay:calc(var(--i) * .25s)}@keyframes flip2{0%{background:var(--surface);border-color:var(--ink-muted);color:var(--ink);box-shadow:0 3px 0 color-mix(in srgb, var(--ink-muted) 55%, transparent);transform:rotateX(0)}49%{background:var(--surface);border-color:var(--ink-muted);color:var(--ink);box-shadow:0 3px 0 color-mix(in srgb, var(--ink-muted) 55%, transparent);transform:rotateX(90deg)}50%{background:var(--res);border-color:var(--res);color:var(--res-ink);box-shadow:0 3px 0 color-mix(in srgb, var(--res) 60%, #000);transform:rotateX(90deg)}to{background:var(--res);border-color:var(--res);color:var(--res-ink);box-shadow:0 3px 0 color-mix(in srgb, var(--res) 60%, #000);transform:rotateX(0)}}.tile.reveal[data-s=C]:before{content:"";pointer-events:none;opacity:0;animation:.7s ease-out both spark;animation-delay:calc(var(--i) * .25s + .3s);background:radial-gradient(circle,#fffffff2 0,#fff0 62%);border-radius:16px;position:absolute;inset:-6px}@keyframes spark{0%{opacity:0;transform:scale(.4)}35%{opacity:.95}to{opacity:0;transform:scale(1.7)}}.tile.cursor{border-color:var(--mode-b)}.tile.cursor:before{content:"";border:3px solid var(--mode-b);opacity:.6;pointer-events:none;border-radius:15px;animation:1.5s ease-out infinite cring;position:absolute;inset:-4px}.tile.cursor:after{content:"";background:var(--mode-b);border-radius:3px;width:3px;height:44%;animation:1s steps(2,start) infinite caret}@keyframes cring{0%{opacity:.75;transform:scale(.94)}to{opacity:0;transform:scale(1.14)}}@keyframes caret{50%{opacity:0}}.row{position:relative}.row.current:before{content:"";background:color-mix(in srgb, var(--mode-b) 12%, transparent);z-index:-1;border-radius:17px;position:absolute;inset:-6px -7px}.coach{align-items:center;gap:8px;width:100%;display:flex}.coach .pip{flex:none}.coach-bubble{background:color-mix(in srgb, var(--surface) 94%, transparent);box-shadow:var(--shadow-1);border-radius:18px 18px 18px 6px;flex:1;margin:0;padding:10px 14px;font-size:15px;font-weight:800;line-height:1.25;transition:background .2s,color .2s;animation:.22s ease-out bubbleIn;position:relative}.coach-bubble:before{content:"";background:inherit;border-radius:3px;width:12px;height:12px;position:absolute;bottom:10px;left:-6px;transform:rotate(45deg)}.coach.ready .coach-bubble{background:var(--primary);color:var(--primary-ink)}@keyframes bubbleIn{0%{opacity:0;transform:translateY(4px)scale(.98)}}.key{box-shadow:0 3px 0 color-mix(in srgb, var(--key) 50%, var(--ink));position:relative}.key.enter{background:var(--primary);color:var(--primary-ink);letter-spacing:.4px;box-shadow:0 3px 0 color-mix(in srgb, var(--primary) 60%, #000);font-size:13px}.key.enter.ready:after{content:"";border:3px solid var(--primary);pointer-events:none;border-radius:14px;animation:1.1s ease-out infinite cring;position:absolute;inset:-4px}.key.enter.ready{animation:.9s ease-in-out infinite readyHop}@keyframes readyHop{50%{transform:translateY(-2px)}}.panel{background:color-mix(in srgb, var(--surface) 84%, transparent);box-shadow:var(--shadow-1);text-align:left;border-radius:22px;flex-direction:column;gap:10px;padding:16px;display:flex}.panel h2{text-transform:uppercase;letter-spacing:.5px;color:var(--ink);opacity:.75;font-size:14px;font-weight:800}.info{flex-direction:column;gap:8px;margin:0;display:flex}.info div{justify-content:space-between;gap:8px;font-weight:700;display:flex}.info dt{color:var(--ink);opacity:.75}.info dd{margin:0;font-weight:800}@media (min-width:1024px){.app[data-screen=daily],.app[data-screen=practice],.app[data-screen=duel]{max-width:none}.game>.gbar{width:100%;max-width:1160px;margin:0 auto}.stage{grid-template-columns:minmax(220px,1fr) minmax(0,520px) minmax(220px,1fr);grid-template-areas:"left coach right""left top right""left board right""left kb right";align-content:start;place-items:start stretch;gap:8px 28px;max-width:1160px;display:grid}.slot-coach{grid-area:coach}.slot-top{grid-area:top}.slot-board{flex:none;grid-area:board;place-items:center;min-height:auto;display:grid}.slot-kb{grid-area:kb}.slot-left{grid-area:left;display:block}.slot-right{grid-area:right;display:block}.slot-left .panel,.slot-right .panel{overscroll-behavior:contain;max-height:calc(100dvh - 120px);margin-top:8px;overflow-y:auto}.board{--ts:clamp(40px, min(72px, calc((100dvh - 450px) / 6 - 5px)), 72px)}.board.compact{--ts:clamp(34px, min(60px, calc((100dvh - 560px) / 6 - 5px)), 60px)}.ad-game{max-width:728px}}.share-card{color:#fff;background:linear-gradient(135deg,#3b1fa8 0%,#4b2fd8 52%,#6b2a78 100%);border-radius:22px;flex-direction:column;align-items:center;gap:10px;padding:16px;display:flex;position:relative;overflow:hidden;box-shadow:0 14px 30px #3b1fa866}.share-card.lose{background:linear-gradient(135deg,#2a1860 0%,#3b1fa8 55%,#4a2048 100%)}.share-card:after{content:"";pointer-events:none;background:radial-gradient(circle at 90% -15%,#ffffff1a,#0000 45%);position:absolute;inset:0}.sc-top{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;width:100%;display:flex}.sc-meta{text-align:left;flex-direction:column;min-width:0;display:flex}.sc-meta small{white-space:nowrap}.sc-meta b{font-size:22px;font-weight:800}.sc-meta small{opacity:.95;font-weight:700}.sc-grid{flex-direction:column;gap:4px;display:flex}.sc-row{justify-content:center;gap:4px;display:flex}.sc-row span{width:24px;height:24px;animation:.4s cubic-bezier(.2,1.4,.4,1) both scpop;animation-delay:calc(var(--i) * 35ms + .12s);background:#ffffff38;border-radius:7px}.sc-row span[data-s=C]{background:var(--correct)}.sc-row span[data-s=P]{background:var(--present)}.sc-row span[data-s=A]{background:#ffffff47}@keyframes scpop{0%{opacity:0;transform:scale(0)}}.share-card .lose-word{color:#fff}.sc-hug{opacity:.95;font-weight:700}.overlay-calm{font-family:var(--font)}.invite.overlay-calm{color:var(--ink)}.push-soft{background:color-mix(in srgb, var(--primary) 10%, var(--surface-2));border:1px solid color-mix(in srgb, var(--primary) 22%, transparent);text-align:left;border-radius:16px;flex-direction:column;gap:8px;padding:14px 12px;display:flex}.push-soft b{font-size:1.05rem}.push-soft .btn-row{justify-content:flex-start}.cmp-bar.overlay-calm{color:var(--ink);background:var(--surface);border-color:color-mix(in srgb, var(--primary) 18%, transparent)}.cmp-bar.overlay-calm b{color:var(--ink);font-weight:800}.cmp-bar.overlay-calm .row-btns{gap:8px}.vs{background:color-mix(in srgb, var(--surface) 82%, transparent);width:100%;box-shadow:var(--shadow-1);border-radius:18px;justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;display:flex}.vs-side{align-items:center;gap:8px;min-width:0;font-weight:800;display:flex}.vs-side b{text-overflow:ellipsis;white-space:nowrap;max-width:96px;overflow:hidden}.vs-side.opp{flex-direction:row;justify-content:flex-end}.avatar{background:var(--primary);width:34px;height:34px;color:var(--primary-ink);border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid}.avatar.me{background:color-mix(in srgb, var(--mode-a) 55%, var(--surface));color:var(--ink)}.vs-mid{flex-direction:column;align-items:center;line-height:1;display:flex}.vs-mid small{letter-spacing:2px;color:var(--ink);opacity:.7;font-size:10px;font-weight:800}.vs-time{font-variant-numeric:tabular-nums;font-size:20px;font-weight:800}.vs-mid.urgent .vs-time{color:var(--danger);animation:.8s ease-in-out infinite dotpulse}.bot-note{z-index:2;pointer-events:none;position:absolute;bottom:6px;left:0;right:0}@media (max-height:700px){.slot-coach .pip{display:none}.coach-bubble{border-radius:14px;padding:6px 12px;font-size:14px}.coach-bubble:before{display:none}.board-card{border-radius:20px;padding:8px}.board{--ts:clamp(30px, min(62px, calc((100dvh - 400px) / 6 - 5px), 15.4vw), 62px)}.vs,.game[data-mode=duel] .slot-coach{display:none}.dots{margin-top:1px}.stage{gap:4px}}:root[data-perf=low] .glyph,:root[data-perf=low] .tile.cursor:before,:root[data-perf=low] .key.enter.ready:after,:root[data-perf=low] .tile.reveal[data-s=C]:before,:root[data-perf=low] .game[data-win="1"] .scene:after{animation:none}:root[data-perf=low] .glyph{display:none}:root[data-motion=off] .glyph,:root[data-motion=off] .tile.cursor:before,:root[data-motion=off] .tile.cursor:after,:root[data-motion=off] .key.enter.ready:after,:root[data-motion=off] .key.enter.ready,:root[data-motion=off] .coach-bubble,:root[data-motion=off] .sc-row span,:root[data-motion=off] .dots i.now,:root[data-motion=off] .vs-mid.urgent .vs-time,:root[data-motion=off] .game[data-win="1"] .scene:after{animation:none}:root[data-motion=off] .tile.reveal{animation:.2s both fade}:root[data-motion=off] .tile.reveal[data-s=C]:before{display:none}@media (prefers-reduced-motion:reduce){.glyph{animation:none}}.coach{margin-top:4px}.nudge{animation:.18s ease-out nudge;display:inline-flex}@keyframes nudge{40%{transform:translateY(-5px)rotate(-4deg)scale(1.06)}}:root[data-motion=off] .nudge,:root[data-perf=low] .nudge{animation:none}.vault{--n:5;--dmin:40px;--ds:clamp(var(--dmin), min(72px, calc((100vw - 86px - 8px * (var(--n) - 1)) / var(--n)), calc((100dvh - 500px) / 2)), 72px);--ls:26px;flex-direction:column;flex:none;align-items:center;gap:8px;width:100%;height:auto;min-height:0;display:flex;position:relative}.vault.compact{--ds:clamp(calc(var(--dmin) - 2px), min(60px, calc((100vw - 86px - 8px * (var(--n) - 1)) / var(--n)), calc((100dvh - 560px) / 2)), 60px);--ls:22px}.trail{scrollbar-width:none;overscroll-behavior:contain;flex-direction:column;flex:1 1 0;align-items:center;gap:4px;width:100%;min-height:0;margin:0;padding:0 2px;list-style:none;display:flex;overflow-y:auto}.trail::-webkit-scrollbar{display:none}.trow{flex:none;gap:5px;animation:.35s cubic-bezier(.2,.9,.2,1) both trailin;display:flex}@keyframes trailin{0%{opacity:0;transform:translateY(14px)scale(.96)}}.trail-empty{color:var(--ink-muted);margin-top:auto;padding:4px 0;font-size:13px;font-weight:700}.tile.mini-letter{--ts:var(--ls);width:var(--ls);height:var(--ls);font-size:calc(var(--ls) * .55);border-width:0;border-radius:8px;animation:none}.cyl{background:linear-gradient(180deg, color-mix(in srgb, var(--lock) 26%, var(--surface)), color-mix(in srgb, var(--lock) 8%, var(--surface)));box-shadow:inset 0 2px 0 #ffffff8c, inset 0 -3px 8px color-mix(in srgb, var(--lock) 35%, transparent), 0 8px 22px color-mix(in srgb, var(--lock) 28%, transparent);isolation:isolate;border-radius:999px;flex:none;gap:8px;padding:10px 12px;display:flex;position:relative}.cyl-glow{background:radial-gradient(closest-side, color-mix(in srgb, var(--lock) 38%, transparent), transparent);z-index:-1;opacity:.55;pointer-events:none;border-radius:999px;position:absolute;inset:-14px}.tile.dial{--ts:var(--ds);width:var(--ds);height:var(--ds);border:3px solid color-mix(in srgb, var(--lock) 55%, var(--ink-muted));font-size:calc(var(--ds) * .5);background:var(--surface);color:var(--ink);cursor:pointer;touch-action:none;box-shadow:inset 0 -4px 0 #00000012, 0 3px 0 color-mix(in srgb, var(--lock) 45%, #000);-webkit-tap-highlight-color:transparent;border-radius:50%;padding:0;font-family:inherit;position:relative}.tile.dial[data-s=empty] .face:before{content:"·";color:var(--ink-muted);font-size:1.3em}.tile.dial.sel{outline:3px solid var(--mode-b,var(--primary));outline-offset:3px;transition:transform .12s ease-out;transform:translateY(-3px)scale(1.06)}.tile.dial.sel[data-s=empty] .face:before{content:"▾";color:var(--mode-b,var(--primary))}.tile.dial.locked{background:var(--lock);color:var(--correct-ink);border-color:color-mix(in srgb, var(--lock) 70%, #000)}.lockmark{opacity:.55;pointer-events:none;background:currentColor;border-radius:50%;width:9px;height:9px;margin-left:-4.5px;position:absolute;bottom:7%;left:50%}.lockmark:after{content:"";background:currentColor;border-radius:2px;width:3px;height:6px;margin-left:-1.5px;position:absolute;top:80%;left:50%}.mini-letter[data-s=C]:after,.mini-letter[data-s=P]:after{opacity:.8;pointer-events:none;font-size:10px;line-height:1;position:absolute;top:4px;right:6px}.mini-letter[data-s=C]:after{content:"◆"}.mini-letter[data-s=P]:after{content:"◐"}.tile.mini-letter[data-s=C]:after,.tile.mini-letter[data-s=P]:after{font-size:7px;top:1px;right:2px}.tile.mini-letter[data-s=A]{border:1px dashed color-mix(in srgb, var(--absent-ink) 45%, transparent)}.cyl.shake{animation:.4s shake}.cyl.pending .tile{animation:.9s ease-in-out infinite breathe}.cyl.celebrate{animation:1.2s cubic-bezier(.2,.9,.2,1) both vaultopen}.cyl.celebrate .tile{animation:.6s both bounce;animation-delay:calc(var(--i) * .1s)}.cyl.celebrate:before{content:"";z-index:-1;pointer-events:none;background:repeating-conic-gradient(from 0deg, color-mix(in srgb, var(--lock) 55%, transparent) 0 6deg, transparent 6deg 18deg);border-radius:50%;width:360px;height:360px;margin:-180px 0 0 -180px;animation:3s linear infinite rays;position:absolute;top:50%;left:50%;-webkit-mask:radial-gradient(circle,#000 20%,#0000 70%);mask:radial-gradient(circle,#000 20%,#0000 70%)}@keyframes rays{to{transform:rotate(360deg)}}@keyframes vaultopen{40%{transform:scale(1.07)}}.orbit{flex-wrap:wrap;flex:none;justify-content:center;align-items:center;gap:6px;width:100%;min-height:46px;padding:2px 4px;display:flex}.orbit-title{letter-spacing:.6px;text-transform:uppercase;color:var(--ink-muted);font-size:12px;font-weight:800}.orbit-empty{color:var(--ink-muted);font-size:13px;font-weight:700}.chip-o{border:2px solid var(--orbit);background:color-mix(in srgb, var(--orbit) 22%, var(--surface));min-width:44px;height:44px;color:var(--ink);font:800 18px var(--font);cursor:pointer;touch-action:none;box-shadow:0 0 0 4px color-mix(in srgb, var(--orbit) 14%, transparent);border-radius:999px;padding:0 12px;animation:.4s cubic-bezier(.2,1.3,.4,1) both orbitin;position:relative}.chip-o.used{box-shadow:none;color:var(--ink-muted);background:0 0;border-style:dashed}.chip-o.blocked{border-color:var(--danger)}.chip-o .xmark{background:color-mix(in srgb, var(--danger) 78%, #000);color:#fff;width:16px;height:16px;font:800 10px/16px var(--font);text-align:center;border-radius:50%;font-style:normal;position:absolute;top:-6px;right:-4px}@keyframes orbitin{0%{opacity:0;transform:scale(.3)translateY(10px)}}.drag-ghost{background:var(--lock);width:48px;height:48px;color:var(--correct-ink);font:800 22px var(--font);z-index:80;pointer-events:none;border-radius:50%;place-items:center;display:grid;position:fixed;top:0;left:0;box-shadow:0 10px 24px #0000004d}.key[data-s=C]:after{content:"◆";opacity:.8;font-size:8px;position:absolute;top:3px;right:5px}.key[data-s=P]:after{content:"◐";opacity:.8;font-size:8px;position:absolute;top:3px;right:5px}.key[data-s=A]{background:var(--absent);background-color:var(--absent);color:var(--absent-ink);border:1.5px dashed color-mix(in srgb, var(--absent-ink) 55%, transparent);box-shadow:none;transform:scale(.96)}.key[data-s=P]{box-shadow:0 0 0 2px var(--orbit)}:root[data-motion=off] .cyl.celebrate,:root[data-motion=off] .cyl.celebrate:before,:root[data-motion=off] .cyl.celebrate .tile,:root[data-motion=off] .trow,:root[data-motion=off] .chip-o{animation:none}:root[data-motion=off] .cyl.shake{outline:2px solid var(--danger);outline-offset:3px;animation:none}:root[data-perf=low] .cyl.celebrate:before,:root[data-perf=low] .cyl-glow{display:none}@media (min-width:1024px){.vault{--ds:clamp(52px, min(84px, calc((100dvh - 480px) / 2)), 84px)}.vault.compact{--ds:clamp(46px, min(70px, calc((100dvh - 560px) / 2)), 70px)}}.slot-board,.stage .slot-board{justify-content:center!important;align-items:center!important;display:flex!important}.board-card{flex:none;width:100%;height:auto;min-height:0;padding:10px 8px;display:flex}.gem-stage{z-index:1;flex-direction:column;flex:none;align-items:center;gap:5px;display:flex;position:relative}.gem-stage.award{min-width:132px;padding:4px 2px 2px}.gem-halo{pointer-events:none;z-index:0;background:radial-gradient(circle,#ffe9a08c 0%,#ffffff1f 42%,#0000 70%);border-radius:50%;width:96px;height:96px;margin:-48px 0 0 -48px;animation:1.4s ease-out both gemhalo;position:absolute;top:28px;left:50%}.gem-stage.fresh .gem-halo{animation:1.4s ease-out both gemhalo,1.8s ease-in-out 1.2s 2 gempulse}.gem{z-index:1;filter:drop-shadow(0 6px 10px #0000004d);position:relative}.gem.rise{animation:.9s cubic-bezier(.2,1.2,.4,1) .25s both gemrise}.gem .spk{transform-box:fill-box;transform-origin:50%;animation:1.8s ease-in-out infinite twinkle;animation-delay:calc(var(--i) * .35s)}@keyframes gemrise{0%{opacity:0;transform:translateY(40px)scale(.3)rotate(-25deg)}}@keyframes twinkle{50%{opacity:.5;transform:scale(1.8)}}@keyframes gemhalo{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes gempulse{50%{opacity:.85;transform:scale(1.08)}}.gem-name{text-align:center;color:var(--ink);letter-spacing:.1px;font-size:12px;font-weight:800;line-height:1.2}.gem-stage .gem-name{color:#fff;text-shadow:0 1px 2px #00000059;margin-top:2px;font-size:14px}.gem-album{letter-spacing:.2px;color:#ffffffeb;background:#ffffff29;border:1px solid #ffffff47;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:800}.rarity{letter-spacing:.5px;text-transform:uppercase;background:#ffffff40;border-radius:999px;padding:2px 7px;font-size:10px;font-weight:800}.rarity[data-r="1"]{color:#2b2340;background:#f2b93b}.rarity[data-r="2"]{color:#2b2340;background:#d9b8ff}.rarity[data-r="3"]{color:#2b2340;background:#9ad7e8}.rarity[data-r="4"]{background:color-mix(in srgb, var(--ink-muted) 28%, transparent);color:var(--ink)}.share-card .rarity[data-r="4"]{color:#fff;background:#ffffff47}.tomorrow{font-weight:700}:root[data-motion=off] .gem.rise,:root[data-motion=off] .gem .spk,:root[data-perf=low] .gem .spk,:root[data-motion=off] .gem-halo,:root[data-perf=low] .gem-halo{animation:none}.album{background:var(--surface);border:2px solid color-mix(in srgb, var(--ink) 8%, transparent);box-shadow:var(--shadow-1);border-radius:20px;flex-direction:column;gap:8px;margin:4px 0 12px;padding:12px;display:flex}.album-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.album-head .mini-title{margin:0}.album-pct{color:var(--ink-muted);font-size:12px;font-weight:800}.album-meter{background:color-mix(in srgb, var(--ink-muted) 22%, transparent);border-radius:999px;height:8px;overflow:hidden}.album-meter>i{border-radius:inherit;background:linear-gradient(90deg, var(--lock), color-mix(in srgb, var(--orbit) 65%, var(--lock)));height:100%;transition:width .55s cubic-bezier(.2,.9,.2,1);display:block}.collection-hint{margin:0;line-height:1.35}.gem-miss-hint{text-align:center;color:#ffffffe6;max-width:16rem;margin:4px 0 0;font-weight:700;line-height:1.3}.gems{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:2px 0 0;padding:0;display:grid}.gems li{background:var(--surface-2);text-align:center;border:1px solid color-mix(in srgb, var(--ink) 6%, transparent);border-radius:14px;place-items:center;gap:3px;min-height:104px;padding:8px 4px 7px;list-style:none;display:grid}.gems li[data-rarity="1"]{box-shadow:inset 0 0 0 1px #f2b93b8c}.gems li[data-rarity="2"]{box-shadow:inset 0 0 0 1px #d9b8ff8c}.gems li.slot{border:2px dashed color-mix(in srgb, var(--ink-muted) 42%, transparent);background:color-mix(in srgb, var(--surface-2) 45%, transparent);color:var(--ink-muted);box-shadow:none}.gems .gem-name{max-width:100%;color:var(--ink);text-shadow:none;font-size:10px}.gems .gem-origin{color:var(--ink-muted);font-size:9px;font-weight:600;line-height:1.2}.gems .rarity{font-size:8px}@media (max-width:360px){.gems{grid-template-columns:repeat(4,minmax(0,1fr))}.gems li{min-height:98px}}.hall{color:#fff;cursor:pointer;width:100%;font:inherit;text-align:center;background:linear-gradient(160deg,#2b2340,#4a3a8c 60%,#6a4bb8);border:0;border-radius:24px;flex-direction:column;align-items:center;gap:6px;padding:12px 12px 10px;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 26px #2b234052}.hall:before{content:"";background:repeating-conic-gradient(#f0b42938 0 7deg, transparent 7deg 20deg);pointer-events:none;border-radius:50%;width:380px;height:380px;margin:-190px 0 0 -190px;animation:40s linear infinite rays;position:absolute;top:42%;left:50%;-webkit-mask:radial-gradient(circle,#000 15%,#0000 68%);mask:radial-gradient(circle,#000 15%,#0000 68%)}.hall .door{background:radial-gradient(circle at 35% 30%,#ffe08a,#f0b429 55%,#b98200);border-radius:50%;place-items:center;width:96px;height:96px;display:grid;position:relative;box-shadow:inset 0 -6px 12px #00000040,0 6px 16px #0000004d}.hall .door:before{content:"";border:4px dashed #2b234073;border-radius:50%;animation:24s linear infinite reverse rays;position:absolute;inset:12px}.hall .door span{filter:drop-shadow(0 2px 2px #0000004d);font-size:44px;position:relative}.hall[data-done="1"] .door{background:radial-gradient(circle at 35% 30%,#fff,#5cc8ee 55%,#2b86a8)}.hall b{font-size:18px;line-height:1.15;position:relative}.hall small{opacity:.9;font-size:12px;font-weight:700;position:relative}.hall .dc-cta{position:relative}.lanterns{justify-content:center;gap:8px;display:flex;position:relative}.lanterns i{background:#ffffff2e;border-radius:7px 7px 9px 9px;width:14px;height:20px}.lanterns i.on{background:#f0b429;box-shadow:0 0 10px #f0b429cc}.lanterns i.today{outline-offset:2px;outline:2px solid #fff}:root[data-motion=off] .hall:before,:root[data-motion=off] .hall .door:before,:root[data-perf=low] .hall:before,:root[data-perf=low] .hall .door:before{animation:none}.home>*,.page>*{flex:none}.hero.greet{align-items:center;gap:8px}.hero.greet .pip{flex:none}.hero.greet .bubble{border-radius:14px 14px 14px 4px;flex:1;align-self:center;padding:8px 12px;font-size:14px;line-height:1.25;position:relative}.ico{flex:none;display:block}.ico.inl{vertical-align:-3px;display:inline-block}.streak{align-items:center;gap:4px;display:inline-flex}.streak .ico{color:#ff7a59;fill:#ff7a5959}.tabbar button .ico{transition:transform .18s cubic-bezier(.2,1.4,.4,1)}.tabbar button.on .ico{transform:translateY(-1px)scale(1.12)}.mode-ic{color:#fff;border-radius:12px;flex:none;place-items:center;width:36px;height:36px;margin-bottom:0;display:inline-grid}.mode.duel .mode-ic{background:linear-gradient(135deg,#6c4df6,#b8408c)}.mode.practice .mode-ic{background:linear-gradient(135deg,#2fb5e0,#4c6ff0)}.hall .door .ico{color:#2b2340;stroke-width:1.8px;filter:drop-shadow(0 2px #ffffff59)}.hall .door>span{display:contents}.gbar .icon-btn,.hbar .icon-btn{place-items:center;display:grid}.avatar.me{place-items:center;display:inline-grid}.hall .dc-cta{align-self:center;margin-top:2px}.rk.r1{color:#e0a010}.rk.r2{color:#8e9bb0}.rk.r3{color:#c0773a}.rk .ico{display:inline-block}.join-row .btn{white-space:nowrap}.gems.ghost li{aspect-ratio:1;border:2px dashed color-mix(in srgb, var(--ink-muted) 40%, transparent);color:var(--ink-muted);background:0 0}.btn .ico.inl,.chip .ico.inl{margin-right:2px}.btn:has(>.ico.inl){grid-auto-flow:column;justify-content:center;column-gap:4px}.vault{justify-content:center;gap:12px}.trail{flex:0 auto;margin-bottom:2px}.trail>:first-child{margin-top:0}.trail-empty{display:none}.lockmark{width:calc(var(--ds) * .13);height:calc(var(--ds) * .13);margin-left:calc(var(--ds) * -.065);bottom:6%}.lockmark:after{height:calc(var(--ds) * .09);width:2px;margin-left:-1px}.btn{flex:none}.btn-row .btn,.join-row .btn,.invite-form .btn{flex:auto}.center-box .btn{align-self:stretch;width:100%;max-width:320px}.scene .glyph{display:none}.scene .rings{width:min(150vmin,1100px);height:min(150vmin,1100px);position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}.scene .ring circle{fill:none;stroke:var(--mode-b,var(--primary));stroke-linecap:round;opacity:.16}.scene .r1 circle{stroke-width:3px;stroke-dasharray:1 11}.scene .r2 circle{stroke-width:2px;stroke-dasharray:26 14;opacity:.12}.scene .r3 circle{stroke-width:6px;stroke-dasharray:2 17;opacity:.14}.scene .r4 circle{stroke-width:1.5px;stroke-dasharray:90 40 8 40;opacity:.1}.scene .ring{transform-origin:400px 400px;animation:90s linear infinite ringspin}.scene .r2{animation-duration:140s;animation-direction:reverse}.scene .r4{animation-duration:200s}@keyframes ringspin{to{transform:rotate(360deg)}}.scene .orb{filter:blur(70px);opacity:.35;border-radius:50%;position:absolute}.scene .o1{background:var(--mode-a,var(--primary));width:340px;height:340px;top:-60px;left:-90px}.scene .o2{background:var(--lock);opacity:.22;width:300px;height:300px;bottom:6%;right:-80px}:root[data-motion=off] .scene .ring,:root[data-perf=low] .scene .ring,:root[data-perf=low] .scene .orb{animation:none}:root[data-perf=low] .scene .orb{display:none}@media (prefers-reduced-motion:reduce){.scene .ring{animation:none}}.btn{background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 92%, #fff), var(--surface-2));border:1px solid color-mix(in srgb, var(--primary) 14%, transparent);box-shadow:0 2px 0 color-mix(in srgb, var(--primary) 16%, transparent), 0 8px 16px -8px color-mix(in srgb, var(--primary) 30%, transparent);color:var(--ink);letter-spacing:.1px}.btn.primary{background:linear-gradient(180deg, color-mix(in srgb, var(--primary) 92%, #fff) 0%, var(--primary) 46%, color-mix(in srgb, var(--primary) 82%, #14004d) 100%);color:var(--primary-ink);box-shadow:inset 0 1px 0 #ffffff73, 0 4px 0 color-mix(in srgb, var(--primary) 55%, #000), 0 12px 22px -8px color-mix(in srgb, var(--primary) 60%, transparent);text-shadow:0 1px #0000002e;border:0}.btn.primary:active,.btn:active{box-shadow:0 1px 0 color-mix(in srgb, var(--primary) 40%, #000);transform:translateY(3px)}.btn:disabled{opacity:.55;box-shadow:none}.icon-btn{background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 95%, #fff), color-mix(in srgb, var(--surface) 82%, var(--primary)));border:1px solid color-mix(in srgb, var(--primary) 14%, transparent);box-shadow:0 6px 14px -6px color-mix(in srgb, var(--primary) 40%, transparent), inset 0 1px 0 #ffffffb3}.key{box-shadow:inset 0 1px 0 #ffffffa6, 0 3px 0 color-mix(in srgb, var(--key) 55%, var(--ink)), 0 8px 12px -8px color-mix(in srgb, var(--ink) 35%, transparent);background-image:none;border:0}.key:active{transform:translateY(3px)scale(.97);box-shadow:inset 0 1px #fff6,0 0 #0000}.key[data-s=C]{box-shadow:inset 0 1px 0 #ffffffb3, 0 3px 0 color-mix(in srgb, var(--lock) 45%, #000);background-image:none}.key[data-s=P]{box-shadow:inset 0 1px 0 #ffffffb3, 0 3px 0 color-mix(in srgb, var(--orbit) 45%, #000);background-image:none}.key.enter{box-shadow:inset 0 1px 0 #ffffff73, 0 3px 0 color-mix(in srgb, var(--primary) 55%, #000);background-image:none}.tile.dial{background:radial-gradient(circle at 36% 26%, #fff 0%, color-mix(in srgb, var(--surface) 88%, var(--lock)) 62%, color-mix(in srgb, var(--surface) 70%, var(--lock)) 100%);border:4px solid color-mix(in srgb, var(--lock) 65%, #fff);box-shadow:inset 0 -5px 8px #7850001f, inset 0 3px 4px #ffffffe6, 0 4px 0 color-mix(in srgb, var(--lock) 55%, #000), 0 10px 14px -6px #5a3c0059}.tile.dial[data-s=empty]{background:radial-gradient(circle at 50% 50%, color-mix(in srgb, var(--lock) 10%, transparent) 0 52%, color-mix(in srgb, var(--lock) 26%, transparent) 54% 56%, transparent 58%), radial-gradient(circle at 36% 26%, #fff, color-mix(in srgb, var(--surface) 80%, var(--lock)));border-style:solid}.tile.dial[data-s=empty] .face:before,.tile.dial.sel[data-s=empty] .face:before{content:"";display:block}.tile.dial.sel{border-color:var(--mode-b,var(--primary));box-shadow:0 0 0 4px color-mix(in srgb, var(--mode-b,var(--primary)) 25%, transparent), 0 14px 20px -8px color-mix(in srgb, var(--mode-b,var(--primary)) 55%, transparent), inset 0 3px 4px #ffffffe6;outline:0;transform:translateY(-4px)scale(1.07)}.tile.dial.sel[data-s=empty] .face:before{background:var(--mode-b,var(--primary));border-radius:3px;width:3px;height:44%;animation:1s steps(2,start) infinite caret}.tile.dial.sel:before{content:"";border:3px solid var(--mode-b,var(--primary));opacity:.5;pointer-events:none;border-radius:50%;animation:1.6s ease-out infinite cring;position:absolute;inset:-8px}.tile.dial.locked.sel:before{border-color:var(--mode-b,var(--primary))}:root[data-motion=off] .tile.dial.sel:before,:root[data-perf=low] .tile.dial.sel:before,:root[data-motion=off] .tile.dial.sel[data-s=empty] .face:before{animation:none}:root[data-theme=dark] .tile.dial{background:radial-gradient(circle at 36% 26%, var(--dial-face-hi), var(--dial-face-lo) 70%);border-color:color-mix(in srgb, var(--lock) 70%, var(--dial-face-lo));box-shadow:inset 0 3px 4px #ffffff1f, 0 4px 0 color-mix(in srgb, var(--lock) 45%, #000), 0 10px 14px -6px #0009}:root[data-theme=dark] .tile.dial[data-s=empty]{background:radial-gradient(circle, color-mix(in srgb, var(--lock) 12%, transparent) 0 52%, color-mix(in srgb, var(--lock) 34%, transparent) 54% 56%, transparent 58%), radial-gradient(circle at 36% 26%, var(--dial-face-hi), var(--dial-face-lo) 70%)}:root[data-theme=dark] .tile.dial.locked,.tile.dial.locked{background:radial-gradient(circle at 36% 26%, var(--dial-lock-hi), var(--lock) 55%, var(--dial-lock-lo));color:var(--correct-ink)}@media (min-width:1024px){.stage{grid-template-columns:minmax(220px,1fr) minmax(0,660px) minmax(220px,1fr)!important;max-width:1280px!important}.vault{--ds:clamp(60px, min(96px, calc((100dvh - 430px) / 2.1)), 96px);--ls:32px}.vault.compact{--ds:clamp(50px, min(76px, calc((100dvh - 520px) / 2.1)), 76px);--ls:26px}.key{border-radius:12px;max-width:60px;height:62px;font-size:20px}.krow{gap:8px}.keyboard{gap:9px;max-width:660px;margin:0 auto}.chip-o{min-width:48px;height:48px;font-size:20px}}.jokers{justify-content:center;gap:8px;width:100%;display:flex}.joker{max-width:200px;min-height:44px;font:800 14px var(--font);color:var(--ink);background:linear-gradient(180deg, color-mix(in srgb, var(--lock) 30%, var(--surface)), color-mix(in srgb, var(--lock) 12%, var(--surface)));border:1.5px solid color-mix(in srgb, var(--lock) 60%, transparent);box-shadow:0 3px 0 color-mix(in srgb, var(--lock) 45%, #6b5200), 0 8px 14px -8px #78500066;cursor:pointer;border-radius:14px;flex:1 1 0;justify-content:center;align-items:center;gap:6px;padding:0 12px;display:inline-flex}.joker small{background:color-mix(in srgb, var(--ink) 10%, transparent);border-radius:999px;padding:1px 6px;font-size:12px;font-weight:800}.joker:active:not(:disabled){box-shadow:0 1px 0 color-mix(in srgb, var(--lock) 45%, #6b5200);transform:translateY(2px)}.joker:disabled,button.joker:disabled{cursor:default;opacity:1;box-shadow:none;background:var(--surface-2);border-color:color-mix(in srgb, var(--ink-muted) 35%, transparent);color:var(--ink-muted)}.joker.used{border-style:dashed}@media (max-width:380px){.joker .jn{display:none}.joker{padding:0 8px}}.key{background-color:var(--key)}.key[data-s=C]{background-color:var(--correct)}.key[data-s=P]{background-color:var(--present)}.key[data-s=A]{background-color:var(--absent)}.key.enter{background-color:var(--primary)}.btn{background-color:var(--surface-2)}.btn.primary{background-color:var(--primary)}:root{--primary:#7a45ff;--accent:#ff4f8b;--lock:#ffc21a;--orbit:#1cc8ff;--pink:#ff4f8b;--lime:#5ce08a}:root[data-theme=dark]{--primary:#a98bff;--accent:#ff7aa8;--lock:#ffcb3d;--orbit:#3fd3ff}.app:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(40% 35% at 20% 25%, color-mix(in srgb, var(--primary) 38%, transparent), transparent 70%), radial-gradient(35% 30% at 80% 20%, color-mix(in srgb, var(--accent) 34%, transparent), transparent 70%), radial-gradient(40% 35% at 70% 85%, color-mix(in srgb, var(--orbit) 30%, transparent), transparent 70%), radial-gradient(35% 30% at 15% 80%, color-mix(in srgb, var(--lock) 30%, transparent), transparent 70%);animation:24s ease-in-out infinite alternate aurora;position:fixed;inset:-20%}@keyframes aurora{0%{transform:translate(-3%,-2%)rotate(0)scale(1)}50%{transform:translate(3%,2%)rotate(6deg)scale(1.08)}to{transform:translate(-2%,3%)rotate(-5deg)scale(1.04)}}.app>:not(.tabbar):not(.cmp-bar):not(.splash):not(.levelup-banner){position:relative}.app:before{z-index:0}.page,.home,.menu{animation:.42s cubic-bezier(.2,1.15,.3,1) both screenin2}@keyframes screenin2{0%{transform:translateY(22px)}}.gmain>:not(.stage),.stage>:not(.slot-kb){animation:.5s cubic-bezier(.2,1.2,.3,1) both partin}.stage>:nth-child(2){animation-delay:50ms}.stage>:nth-child(3){animation-delay:.1s}.stage>:nth-child(4){animation-delay:.15s}@keyframes partin{0%{transform:translateY(8px)}}.streak .ico{transform-origin:50% 90%;animation:1.3s ease-in-out infinite flicker}@keyframes flicker{0%,to{transform:scale(1)rotate(-3deg)}30%{transform:scale(1.14)rotate(3deg)}60%{transform:scale(.96)rotate(-2deg)}}.hall .door .ico{transform-origin:50% 70%;animation:3.6s ease-in-out infinite wiggle}@keyframes wiggle{0%,82%,to{transform:rotate(0)}86%{transform:rotate(-12deg)}90%{transform:rotate(10deg)}94%{transform:rotate(-6deg)}97%{transform:rotate(3deg)}}.hall .door{animation:4s ease-in-out infinite breath}@keyframes breath{50%{transform:scale(1.045)}}.mode.duel .mode-ic .ico{animation:2.8s ease-in-out infinite clash}.mode.practice .mode-ic .ico{animation:8s linear infinite spinslow}@keyframes clash{0%,70%,to{transform:rotate(0)scale(1)}80%{transform:rotate(-14deg)scale(1.12)}90%{transform:rotate(10deg)scale(1.06)}}@keyframes spinslow{to{transform:rotate(360deg)}}.tabbar button.on .ico{animation:.5s cubic-bezier(.2,1.6,.4,1) tabpop}@keyframes tabpop{0%{transform:scale(.4)rotate(-30deg)}}.hall{overflow:hidden}.hall:after{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(115deg,#0000 35%,#ffffff47 50%,#0000 65%);animation:5s ease-in-out infinite sweep;position:absolute;inset:0;transform:translate(-120%)}@keyframes sweep{55%,to{transform:translate(120%)}}.lanterns i.on{animation:2.2s ease-in-out infinite lamp;animation-delay:calc(var(--n,0) * .14s)}.lanterns i:nth-child(2){--n:1}.lanterns i:nth-child(3){--n:2}.lanterns i:nth-child(4){--n:3}.lanterns i:nth-child(5){--n:4}.lanterns i:nth-child(6){--n:5}.lanterns i:nth-child(7){--n:6}@keyframes lamp{50%{opacity:.85;transform:translateY(-2px)scale(1.12)}}.tile.pop{animation:.32s cubic-bezier(.2,1.5,.4,1) dialpop}@keyframes dialpop{0%{opacity:.4;transform:perspective(300px)rotateX(-80deg)scale(.7)}65%{transform:perspective(300px)rotateX(12deg)scale(1.12)}to{opacity:1;transform:none}}.tile.reveal[data-s=P]:before{content:"";border-radius:inherit;border:3px solid var(--orbit);pointer-events:none;animation:.6s ease-out both ping;animation-delay:calc(var(--i) * .25s + .25s);position:absolute;inset:-4px}@keyframes ping{0%{opacity:.9;transform:scale(.8)}to{opacity:0;transform:scale(1.5)}}.tile.reveal[data-s=A]:before{content:"";pointer-events:none;animation:.5s ease-out both puff;animation-delay:calc(var(--i) * .25s + .25s);background:#786e9680;border-radius:50%;position:absolute;inset:20%}@keyframes puff{0%{opacity:.7;transform:scale(.4)}to{opacity:0;transform:scale(1.8)}}.cyl.celebrate:after{content:"";border:6px solid var(--lock);pointer-events:none;border-radius:50%;width:120px;height:120px;margin:-60px 0 0 -60px;animation:1s ease-out .2s both shock;position:absolute;top:50%;left:50%}@keyframes shock{0%{opacity:.9;transform:scale(.3)}to{opacity:0;transform:scale(5)}}.key{overflow:hidden}.key:active:before{content:"";pointer-events:none;background:radial-gradient(circle,#ffffffb3,#0000 65%);animation:.35s ease-out ripple;position:absolute;inset:0}@keyframes ripple{0%{opacity:1;transform:scale(.2)}to{opacity:0;transform:scale(1.6)}}.vdoor{perspective:600px;place-items:center;width:120px;height:120px;display:grid;position:relative}.vd-glow{opacity:0;background:radial-gradient(closest-side,#ffd65acc,#0000 70%);border-radius:50%;animation:2.6s ease-out .9s forwards vdglow;position:absolute;inset:-18px}.vd-back{place-items:center;display:grid;position:absolute;inset:0}.vd-door{transform-origin:0%;filter:drop-shadow(0 8px 12px #00000059);width:100%;height:100%;position:absolute;inset:0}.vdoor.open .vd-door{animation:1s cubic-bezier(.5,0,.2,1) .95s forwards vdswing}.vdoor.open .vd-wheel{transform-origin:60px 60px;animation:.95s cubic-bezier(.4,0,.2,1) both vdspin}.vdoor.open .vd-bolts{transform-origin:60px 60px;animation:.95s cubic-bezier(.4,0,.2,1) reverse both vdspin}.vdoor.shut .vd-wheel{transform-origin:60px 60px;animation:1.4s ease-in-out .3s both vdjiggle}@keyframes vdspin{to{transform:rotate(540deg)}}@keyframes vdswing{to{opacity:0;transform:rotateY(-115deg)}}@keyframes vdglow{0%{opacity:0;transform:scale(.6)}40%{opacity:1}to{opacity:.55;transform:scale(1)}}@keyframes vdjiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-24deg)}50%{transform:rotate(18deg)}75%{transform:rotate(-8deg)}}.gem-stage .vdoor{margin-bottom:2px}.vdoor.open .gem.rise{animation-delay:1.35s}:root[data-motion=off] .vdoor .vd-door{opacity:0;animation:none}:root[data-motion=off] .vdoor .vd-wheel,:root[data-motion=off] .vdoor .vd-bolts,:root[data-motion=off] .vd-glow{animation:none}:root[data-motion=off] .vd-glow{opacity:.5}:root[data-perf=low] .app:before,:root[data-motion=off] .app:before,:root[data-perf=low] .hall:after,:root[data-motion=off] .hall:after,:root[data-motion=off] .streak .ico,:root[data-motion=off] .hall .door .ico,:root[data-motion=off] .hall .door,:root[data-motion=off] .mode-ic .ico,:root[data-motion=off] .lanterns i.on,:root[data-motion=off] .gmain>*,:root[data-motion=off] .stage>*,:root[data-motion=off] .cyl.celebrate:after,:root[data-motion=off] .tile.reveal:before,:root[data-motion=off] .tabbar button.on .ico,:root[data-perf=low] .streak .ico,:root[data-perf=low] .hall .door .ico,:root[data-perf=low] .mode-ic .ico,:root[data-motion=off] .page,:root[data-motion=off] .home,:root[data-motion=off] .game,:root[data-motion=off] .menu{animation:none}@media (prefers-reduced-motion:reduce){.app:before,.hall:after,.streak .ico,.hall .door .ico,.hall .door,.mode-ic .ico,.lanterns i.on,.vdoor .vd-door,.vdoor .vd-wheel{animation:none}}.center-box .btn{align-self:center}.invite-form .btn,.invite .btn{align-self:center;width:100%;max-width:320px}.invite .center-box,.invite-form{align-items:center}.panel{background:color-mix(in srgb, var(--surface) 94%, transparent);border:1px solid color-mix(in srgb, var(--primary) 14%, transparent);box-shadow:0 10px 24px -14px color-mix(in srgb, var(--primary) 50%, transparent);gap:12px;padding:18px}.panel h2{opacity:1;letter-spacing:.9px;color:var(--primary);align-items:center;gap:8px;font-size:13px;display:flex}.panel h2:before{content:"";background:linear-gradient(180deg, var(--accent), var(--primary));border-radius:3px;width:4px;height:16px}.legend2{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.legend2 li{grid-template-columns:40px 1fr;align-items:center;gap:12px;display:grid}.legend2 .lg{width:40px;height:40px;font:800 17px var(--font);border-radius:50%;place-items:center;display:grid;position:relative;box-shadow:0 3px #00000024}.legend2 .lg[data-s=C]{background:radial-gradient(circle at 35% 28%, #ffe9a0, var(--lock) 55%, #d99a0f);color:#2b2340}.legend2 .lg[data-s=P]{background:radial-gradient(circle at 35% 28%, #a6ebff, var(--orbit) 55%, #1597c4);color:#05222d}.legend2 .lg[data-s=A]{background:var(--absent);color:var(--absent-ink);border:2px dashed color-mix(in srgb, var(--absent-ink) 50%, transparent);box-shadow:none}.legend2 .lg[data-s=C]:after,.legend2 .lg[data-s=P]:after{font-size:10px;position:absolute;top:3px;right:6px}.legend2 .lg[data-s=C]:after{content:"◆"}.legend2 .lg[data-s=P]:after{content:"◐"}.legend2 strong{color:var(--ink);font-size:15.5px;font-weight:800;line-height:1.2;display:block}.legend2 small{color:var(--ink-muted);margin-top:2px;font-size:14px;font-weight:600;line-height:1.3;display:block}.tips{border-top:1px dashed color-mix(in srgb, var(--ink-muted) 35%, transparent);flex-direction:column;gap:10px;margin:2px 0 0;padding:12px 0 0;list-style:none;display:flex}.tips li{color:var(--ink);grid-template-columns:20px 1fr;gap:10px;font-size:14px;font-weight:600;line-height:1.4;display:grid}.tips .ico{color:var(--accent);margin-top:1px}.tips .tip-wallet span{color:var(--ink-muted);font-weight:600}.info{gap:0}.info div{border-bottom:1px solid color-mix(in srgb, var(--ink-muted) 22%, transparent);padding:10px 0;font-size:15px}.info div:last-child{border-bottom:0}.info dt{opacity:1;color:var(--ink-muted);font-weight:700}.info dd{color:var(--ink);font-weight:800}.invite .center-box{align-items:center}.invite-form{align-self:center;width:min(100%,320px);max-width:none}.invite-form .input,.invite-form .btn,.invite .center-box>.btn{box-sizing:border-box;flex:none;width:min(100%,320px);max-width:320px}.invite-form .input{min-height:52px}.dreamscene{flex:none;place-items:center;width:64px;height:64px;display:grid;position:relative}.dreamscene .cloud{background:radial-gradient(circle at 30% 30%, #fff, color-mix(in srgb, var(--surface) 70%, var(--orbit)));box-shadow:0 6px 14px -4px color-mix(in srgb, var(--primary) 45%, transparent), inset 0 -4px 8px color-mix(in srgb, var(--orbit) 30%, transparent);border-radius:28px;position:absolute;inset:6px 0 4px}.dreamscene .cloud:before,.dreamscene .cloud:after{content:"";background:#fff;border-radius:50%;position:absolute;box-shadow:0 2px 4px #0000001a}.dreamscene .cloud:before{width:9px;height:9px;bottom:-3px;left:-6px}.dreamscene .cloud:after{width:5px;height:5px;bottom:-8px;left:-12px}.dreamscene .obj{filter:drop-shadow(0 3px 2px #0003);will-change:transform;font-size:34px;line-height:1;position:relative}.dreamscene .dz{font:800 13px var(--font);color:var(--primary);opacity:0;font-style:normal;animation:2.4s ease-out infinite dzfloat;position:absolute;top:-4px;right:2px}.dreamscene .dz2{font-size:10px;animation-delay:1.1s;top:-12px;right:-6px}@keyframes dzfloat{0%{opacity:0;transform:translateY(6px)scale(.6)}30%{opacity:1}to{opacity:0;transform:translate(6px,-10px)scale(1.2)}}.bh0 .obj{animation:1.1s ease-in-out infinite d0}@keyframes d0{0%,to{transform:translateY(0)scale(1)}40%{transform:translateY(-14px)scale(.95,1.1)}60%{transform:translateY(0)scale(1.18,.82)}75%{transform:scale(.96,1.05)}}.bh1 .obj{animation:2.2s ease-in-out infinite d1}@keyframes d1{0%,25%{opacity:0;transform:translateY(75%)rotate(-10deg)}40%,78%{opacity:1;transform:translateY(0)rotate(0)}90%,to{opacity:0;transform:translateY(75%)rotate(8deg)}}.bh2 .obj{animation:2.4s linear infinite d2}@keyframes d2{0%{transform:translate(15px)}25%{transform:translateY(-12px)}50%{transform:translate(-15px)}75%{transform:translateY(12px)}to{transform:translate(15px)}}.bh3 .obj{transform-origin:50% 90%;animation:1.3s ease-in-out infinite d3}@keyframes d3{0%,to{transform:rotate(-16deg)}50%{transform:rotate(16deg)}}.bh4 .obj{animation:1.8s cubic-bezier(.5,0,.3,1) infinite d4}@keyframes d4{0%,20%{transform:rotate(0)scale(1)}60%{transform:rotate(360deg)scale(1.3)}80%,to{transform:rotate(360deg)scale(1)}}.bh5 .obj{animation:2.6s ease-in-out infinite d5}@keyframes d5{0%,to{transform:translateY(-6px)scale(1)}50%{transform:translateY(6px)scale(1.08)}}.bh6 .obj{animation:.5s steps(2,jump-none) infinite d6}@keyframes d6{0%{transform:translate(-2px,1px)rotate(-3deg)}50%{transform:translate(2px,-1px)rotate(3deg)}to{transform:translate(-1px,-2px)rotate(-2deg)}}.bh7 .obj{animation:1.9s ease-in-out infinite alternate d7}@keyframes d7{0%{transform:translate(-24px)rotate(-10deg)scaleX(1)}49%{transform:translate(24px)rotate(10deg)scaleX(1)}51%{transform:translate(24px)rotate(10deg)scaleX(-1)}to{transform:translate(-24px)rotate(-10deg)scaleX(-1)}}.bh8 .obj{animation:1.2s ease-in-out infinite d8}@keyframes d8{0%,40%,to{transform:scale(1)}15%{transform:scale(1.3)}30%{transform:scale(1.05)}55%{transform:scale(1.22)}}.bh9 .obj{animation:2.4s ease-in-out infinite d9}@keyframes d9{0%,8%{opacity:1;transform:translate(-16px)scale(1)}25%{opacity:0;transform:translate(-16px)scale(.3)}26%{transform:translate(16px,-6px)scale(.3)}45%,70%{opacity:1;transform:translate(16px,-6px)scale(1.1)}88%{opacity:0;transform:translate(16px,-6px)scale(.3)}89%{transform:translate(-16px)scale(.3)}to{opacity:1;transform:translate(-16px)scale(1)}}.coach .dreamscene{margin-right:2px}.coach:has(.dreamscene) .coach-bubble{background:color-mix(in srgb, var(--orbit) 22%, var(--surface))}:root[data-motion=off] .dreamscene .obj,:root[data-motion=off] .dreamscene .dz,:root[data-perf=low] .dreamscene .dz{animation:none}:root[data-motion=off] .dreamscene .dz{opacity:0}@media (prefers-reduced-motion:reduce){.dreamscene .obj,.dreamscene .dz{animation:none}}.slot-coach:has(.dreamscene){flex-direction:column;align-items:center;gap:4px;display:flex!important}@media (max-height:700px){.slot-coach:has(.dreamscene) .dreamscene{width:48px;height:48px}.slot-coach:has(.dreamscene) .dreamscene .obj{font-size:26px}.slot-coach:has(.dreamscene) .coach-bubble{padding:4px 10px;font-size:13px}}@media (max-width:380px){.joker{gap:4px;padding:0 6px}}.prof-head h1{overflow-wrap:anywhere}.name-edit{flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;display:flex}.name-edit.open{flex-direction:column;align-items:stretch}.name-input{text-transform:none;letter-spacing:0;box-sizing:border-box;width:100%;min-height:44px;font-weight:700}.name-edit .err,.recovery .err{color:color-mix(in srgb, var(--danger) 62%, var(--ink));font-weight:700}.name-edit .ok,.recovery .ok{color:color-mix(in srgb, var(--success) 55%, var(--ink));font-weight:700}.row-btns{flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0;display:flex}.sheet>.row-btns{justify-content:center}.sheet>.row-btns .btn{flex:auto}.leave-actions{justify-content:center;align-items:center;gap:10px;width:100%;max-width:420px;margin:4px auto 0;display:flex}.leave-actions .btn{flex:1;min-width:0}.btn.leave-go{background:color-mix(in srgb, var(--danger) 16%, var(--surface));color:color-mix(in srgb, var(--danger) 78%, var(--ink));border:2px solid color-mix(in srgb, var(--danger) 42%, transparent);box-shadow:none}.recovery{margin:16px 0 8px}.restore-input{text-transform:none;letter-spacing:0;flex:180px;min-width:0;font-weight:700}.keybox{background:var(--surface);border:2px dashed var(--tile-border);letter-spacing:1px;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;border-radius:12px;padding:12px;font-family:ui-monospace,monospace;font-size:15px;font-weight:800;display:block}.jokers-wrap{flex-direction:column;align-items:center;gap:8px;width:100%;display:flex}.wallet{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;width:100%;display:flex}.tokens{min-height:var(--tap);background:color-mix(in srgb, var(--lock,#f5b83d) 28%, var(--surface));border:2px solid color-mix(in srgb, var(--lock,#f5b83d) 70%, transparent);color:var(--ink);border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-weight:900;display:inline-flex}.adbtn{min-height:var(--tap);border:2px dashed color-mix(in srgb, var(--primary) 60%, transparent);background:color-mix(in srgb, var(--primary) 12%, var(--surface));color:var(--ink);font:800 14px var(--font,inherit);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:0 14px;display:inline-flex}.adbtn .play{background:var(--primary);width:22px;height:22px;color:var(--primary-ink);border-radius:50%;place-items:center;font-size:10px;display:inline-grid}.adbtn small{background:color-mix(in srgb, var(--ink) 10%, transparent);border-radius:999px;padding:1px 7px;font-weight:900}.adbtn:disabled{opacity:.55;cursor:default}.wallet.stuck .adbtn:not(:disabled){background:var(--primary);color:var(--primary-ink);border-style:solid;animation:1.8s ease-in-out infinite adpulse}.wallet.stuck .adbtn:not(:disabled) .play{background:var(--primary-ink);color:var(--primary)}@keyframes adpulse{0%,to{opacity:1}50%{opacity:.78}}[data-perf=low] .wallet.stuck .adbtn,:root[data-motion=off] .wallet.stuck .adbtn{animation:none}@media (prefers-reduced-motion:reduce){.wallet.stuck .adbtn{animation:none}}.rad-back{z-index:90;background:#0f0a239e;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.rad{background:var(--surface);width:min(100%,360px);color:var(--ink);border-radius:22px;flex-direction:column;align-items:stretch;gap:12px;padding:16px;display:flex;box-shadow:0 20px 60px #00000059}.rad .ad-tag{align-self:flex-start}.rad-creative{color:#fff;background:linear-gradient(135deg,#6c4df6,#ff7a59 55%,#f5b83d);border-radius:16px;place-items:center;height:170px;display:grid;position:relative;overflow:hidden}.rad-creative.house{aspect-ratio:1;background:var(--ad-plate,#0c1220);width:100%;height:auto;max-height:min(320px,52vh);padding:0}.rad-creative.house .rad-house-img{object-fit:contain;object-position:center center;image-rendering:auto;-webkit-backface-visibility:hidden;width:100%;height:100%;position:absolute;inset:0;transform:translateZ(0)}.rad-creative.house .rad-brand{z-index:2;letter-spacing:.02em;color:#fff;text-shadow:0 1px 4px #000000a6;pointer-events:none;-webkit-font-smoothing:antialiased;background:linear-gradient(#0000,#060a14b8);padding:20px 12px 8px;font-size:15px;font-weight:800;line-height:1.25;position:absolute;bottom:10px;left:0;right:0}.rad-creative b{text-shadow:0 2px 8px #00000059;text-align:center;padding:0 12px;font-size:20px;font-weight:900;position:relative}a.rad-creative{color:inherit;text-decoration:none}a.rad-creative:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.rad-bar{background:color-mix(in srgb, var(--ink) 12%, transparent);border-radius:999px;height:8px;overflow:hidden}.rad-bar span{transform-origin:0;background:var(--primary);will-change:transform;width:100%;height:100%;animation:linear forwards rad-fill;display:block;transform:scaleX(0)}@keyframes rad-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.rad-reward{text-align:center;margin:0;font-weight:800}.rad .btn{width:100%}.revive{border:2px dashed color-mix(in srgb, var(--primary) 55%, transparent);background:color-mix(in srgb, var(--primary) 8%, var(--surface));border-radius:16px;margin:8px 0;padding:12px}.revive p{margin:0 0 8px}.legend2 .lg:after{content:none!important}:root:not([data-cb="1"]) .mini-letter[data-s=C]:after,:root:not([data-cb="1"]) .key[data-s=C]:after,:root:not([data-cb="1"]) .mini-letter[data-s=P]:after,:root:not([data-cb="1"]) .key[data-s=P]:after{box-sizing:border-box;opacity:1;border-radius:50%;width:5px;height:5px;font-size:0;position:absolute;top:3px;right:3px;content:""!important}:root:not([data-cb="1"]) .mini-letter[data-s=C]:after,:root:not([data-cb="1"]) .key[data-s=C]:after{background:#ffffffeb;box-shadow:0 0 0 1.5px #78500073}:root:not([data-cb="1"]) .mini-letter[data-s=P]:after,:root:not([data-cb="1"]) .key[data-s=P]:after{background:0 0;border:1.5px solid #fffffff2;box-shadow:0 0 0 1px #00466459}.dial[data-s=C]:after,.dial[data-s=P]:after,.dial.locked:after{content:none!important;display:none!important}.lockmark{display:none!important}.tokens em{color:var(--ink);font-size:13px;font-style:normal;font-weight:800}.wallet-hint{text-align:center;color:var(--ink-muted);max-width:340px;margin:0;font-size:12px;line-height:1.35}@media (min-width:1024px){.wallet-hint--narrow{display:none!important}}@media (max-height:640px){.wallet-hint--narrow{display:none}}@media (prefers-color-scheme:dark){:root[data-theme=system] .tile.dial{background:radial-gradient(circle at 36% 26%, var(--dial-face-hi), var(--dial-face-lo) 70%);border-color:color-mix(in srgb, var(--lock) 70%, var(--dial-face-lo));box-shadow:inset 0 3px 4px #ffffff1f, 0 4px 0 color-mix(in srgb, var(--lock) 45%, #000), 0 10px 14px -6px #0009}:root[data-theme=system] .tile.dial[data-s=empty]{background:radial-gradient(circle, color-mix(in srgb, var(--lock) 12%, transparent) 0 52%, color-mix(in srgb, var(--lock) 34%, transparent) 54% 56%, transparent 58%), radial-gradient(circle at 36% 26%, var(--dial-face-hi), var(--dial-face-lo) 70%)}:root[data-theme=system] .tile.dial.locked{background:radial-gradient(circle at 36% 26%, var(--dial-lock-hi), var(--lock) 55%, var(--dial-lock-lo));color:var(--correct-ink)}:root[data-theme=system]{--primary:#a98bff;--accent:#ff7aa8;--lock:#ffcb3d;--orbit:#3fd3ff}}.conn-note{border:2px dashed color-mix(in srgb, var(--danger) 60%, transparent);background:color-mix(in srgb, var(--danger) 10%, var(--surface));border-radius:16px;flex-direction:column;align-items:stretch;gap:8px;padding:12px;display:flex}.conn-note p{margin:0;font-weight:700}.trail-wrap{flex-direction:column;flex:none;align-items:center;gap:4px;width:100%;display:flex;position:relative}.trail{align-items:center;min-height:0;flex:none!important;margin:0 0 2px!important;overflow:visible!important}.trail .trow{animation-duration:.3s}.hist-btn{min-height:var(--tap);min-width:var(--tap);font:800 12px var(--font,inherit);color:var(--ink);cursor:pointer;background:color-mix(in srgb, var(--primary) 12%, var(--surface));border:1.5px solid color-mix(in srgb, var(--primary) 45%, transparent);border-radius:999px;align-self:center;align-items:center;gap:6px;padding:0 14px;display:inline-flex}.hist-btn i{opacity:.75;font-style:normal}.hist-btn b{text-align:center;background:var(--primary);min-width:20px;color:var(--primary-ink);border-radius:999px;padding:1px 6px}.hist{flex-direction:column;align-items:center;gap:8px;margin:8px 0 12px;padding:0;list-style:none;display:flex}.hist-row{align-items:center;gap:6px;display:flex}.hist-row em{width:22px;color:var(--ink-muted);text-align:center;font-style:normal;font-weight:900}.hist-row .tile{--ts:44px}.know{background:color-mix(in srgb, var(--ink) 5%, var(--surface));border-radius:16px;flex-direction:column;gap:10px;margin:0;padding:12px;display:flex}.know>div{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.know dt{text-transform:uppercase;letter-spacing:.06em;color:color-mix(in srgb, var(--ink) 68%, var(--ink-muted));flex:0 0 100%;font-size:12px;font-weight:800}.know dd{flex-wrap:wrap;gap:6px;margin:0;display:flex}.sheet .muted,.sheet .hist-row em{color:color-mix(in srgb, var(--ink) 62%, var(--ink-muted))}.kc{border:2px dashed color-mix(in srgb, var(--ink-muted) 50%, transparent);min-width:30px;height:30px;color:var(--ink-muted);border-radius:9px;place-items:center;padding:0 6px;font-weight:900;display:inline-grid}.kc.on{background:var(--correct);color:var(--correct-ink);border:2px solid #0000}.kc.orb{background:var(--present);color:var(--present-ink);border:2px solid #0000}.kc.gone{background:0 0;text-decoration:line-through}@media (max-height:800px){.wallet-hint--narrow{display:none}.joker,.tokens,.adbtn{min-height:var(--tap)}}.update-bar{left:12px;right:12px;bottom:calc(var(--tabbar-space) + var(--sab,0px) + 8px);z-index:95;background:var(--surface);color:var(--ink);border:2px solid var(--primary);border-radius:16px;justify-content:space-between;align-items:center;gap:12px;max-width:460px;margin:0 auto;padding:10px 14px;font-weight:800;display:flex;position:fixed;box-shadow:0 10px 30px #00000040}:root[data-perf=low] .blobs i,:root[data-perf=low] .glyph{filter:none!important;animation:none!important}:root[data-perf=low] .blobs{display:none}:root[data-perf=low] .tabbar,:root[data-perf=low] .countdown-overlay{-webkit-backdrop-filter:none;backdrop-filter:none}.row-btn{cursor:pointer;width:100%;color:inherit;font:inherit;text-align:left;background:0 0;border:0;min-height:48px}.row-btn.danger b{color:color-mix(in srgb, var(--danger) 62%, var(--ink))}.btn.danger{background:color-mix(in srgb, var(--danger) 72%, #000);color:#fff;border-color:#0000}.legal section{margin:0 0 12px}.legal h3{margin:0 0 4px;font-size:15px}.legal p{color:color-mix(in srgb, var(--ink) 55%, var(--ink-muted));margin:0;line-height:1.45}.freeze{background:color-mix(in srgb, var(--present) 22%, var(--surface));min-height:28px;color:var(--ink);border:2px solid color-mix(in srgb, var(--present) 60%, transparent);border-radius:999px;align-items:center;gap:4px;margin-left:6px;padding:0 10px;font-size:13px;font-weight:900;display:inline-flex}.freeze.risk{border-style:dashed}.badges{grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:8px;margin:0 0 12px;padding:0;list-style:none;display:grid}.badges li{text-align:center;background:var(--surface);border:2px solid var(--tile-border);border-radius:16px;flex-direction:column;align-items:center;gap:2px;min-height:118px;padding:10px 6px 8px;display:flex}.badges li b{font-size:12px;line-height:1.2}.badges li small{color:var(--ink-muted);font-size:11px;font-weight:800}.badges li .badge-desc{color:var(--ink-muted);margin-top:2px;font-size:10px;font-weight:600;line-height:1.25}.badges li .bico{background:color-mix(in srgb, var(--ink) 8%, transparent);width:40px;height:40px;color:var(--ink-muted);border-radius:50%;place-items:center;display:grid}.badges li.on{border-color:color-mix(in srgb, var(--lock,#f5b83d) 80%, transparent);background:color-mix(in srgb, var(--lock,#f5b83d) 14%, var(--surface))}.badges li.on .bico{background:radial-gradient(circle at 36% 26%, #ffe9a0, var(--lock,#f5b83d) 60%, #d99a0f);color:#3b2a00}.badges li.on .badge-desc{color:color-mix(in srgb, var(--ink) 72%, transparent)}.badges li.off .bico{opacity:.7}.badges li.off{filter:none}.badges li.off b,.badges li.off small{color:var(--ink-muted)}.stat-row.sub{grid-template-columns:repeat(var(--cols,2), minmax(0, 1fr));margin-top:-4px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.tut-list{flex-direction:column;gap:8px;margin:0 0 12px;padding:0;list-style:none;display:flex}.tut-list li{align-items:flex-start;gap:10px;font-size:14px;line-height:1.4;display:flex}.tut-list li svg{flex:none;margin-top:2px}.tut-body{text-align:left;color:var(--ink);flex-direction:column;gap:10px;display:flex}.tut-body .result-head{text-align:center}.tut-body .tut-lead{color:var(--ink);text-align:center;font-size:16px;font-weight:800}.tut-body .muted{color:var(--ink-muted);font-weight:700}.tut-body .mini-title{color:var(--primary);letter-spacing:.02em}.tut-body .row.demo{justify-content:center;margin:4px 0}.tut-body .legend{color:var(--ink);font-weight:700}.tut-body .tut-list li{background:var(--surface-2);border:1px solid color-mix(in srgb, var(--primary) 16%, transparent);color:var(--ink);border-radius:14px;padding:10px 12px}.tut-body .tut-list b{color:var(--primary);font-weight:800}.tut-foot .btn.primary{width:100%}.sheet:has(>.tut-body){overflow:hidden}.sheet>.tut-body{overscroll-behavior:contain;flex:auto;min-height:0;margin-inline:-4px;padding-inline:4px;overflow-y:auto}.sheet>.tut-foot{border-top:1px solid color-mix(in srgb, var(--ink-muted) 16%, transparent);padding-top:10px}.install{background:color-mix(in srgb, var(--primary) 10%, var(--surface));border:2px dashed color-mix(in srgb, var(--primary) 50%, transparent);border-radius:16px;align-items:center;gap:10px;margin:8px 0;padding:10px 12px;display:flex}.install>div{flex-direction:column;flex:1;min-width:0;display:flex}.install small{color:var(--ink-muted);font-size:12px}.duel-jokers{justify-content:center;align-items:center;gap:6px;width:100%;margin-top:6px;display:flex}.duel-jokers .joker{min-width:var(--tap);max-width:120px;min-height:var(--tap);flex:0 auto;padding:0 10px}.duel-jokers .dj-credits{min-height:var(--tap);background:color-mix(in srgb, var(--lock,#f5b83d) 28%, var(--surface));border:2px solid color-mix(in srgb, var(--lock,#f5b83d) 70%, transparent);border-radius:999px;align-items:center;gap:4px;padding:0 10px;font-weight:900;display:inline-flex}@media (max-width:420px){.duel-jokers .joker .jn{display:none}.duel-jokers .joker{padding:0 8px}}.duel-ad{text-align:center;color:var(--ink);background:var(--surface);border:2px dashed color-mix(in srgb, var(--primary) 55%, var(--tile-border));box-shadow:var(--shadow-1);border-radius:16px;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-size:13px;line-height:1.35;display:flex}.duel-ad.ready{background:color-mix(in srgb, var(--success,#2fa866) 16%, var(--surface));border-style:solid;border-color:color-mix(in srgb, var(--success,#2fa866) 65%, transparent)}.adbtn.compact{min-width:var(--tap);min-height:var(--tap);gap:4px;padding:0 10px}.adbtn.compact .play{width:20px;height:20px}.duel-ad .adbtn,.duel-jokers .adbtn{min-height:var(--tap)}.kb-bar{justify-content:flex-start;gap:6px;padding:0 4px 4px;display:flex}.kb-bar .kb-map,.kb-bubble-toggle{min-height:var(--tap);font:800 12px var(--font,inherit);color:var(--ink);background:var(--surface-2);border:1px solid color-mix(in srgb, var(--ink-muted) 25%, transparent);border-radius:999px;padding:0 12px}.kb-dock{align-items:center;min-width:0;display:inline-flex}.gbar .kb-map.icon-btn.chrome-kb{width:var(--tap);height:var(--tap);border-radius:14px;padding:0}.gbar .icon-btn.chrome-kb .ico{display:block}.kb-focus .key{max-width:64px}.kb-focus .krow{flex-wrap:nowrap}.kb-vowel .vrow .key{background-image:none;max-width:60px;height:58px}.kb-vowel .vrow .key:not([data-s=A]):not([data-s=C]):not([data-s=P]){box-shadow:inset 0 1px 0 #ffffffa6, 0 3px 0 color-mix(in srgb, var(--primary) 45%, #000), 0 8px 12px -8px color-mix(in srgb, var(--ink) 35%, transparent)}.key.ikey{font-size:24px;line-height:1}.kb-icons .key.ikey[data-s=A]{opacity:.55}.kb-list{text-align:left;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.kb-card{background:var(--surface-2);width:100%;min-height:56px;color:var(--ink);text-align:left;border:2px solid #0000;border-radius:16px;align-items:center;gap:12px;padding:10px 12px;display:flex}.kb-card.on{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 10%, var(--surface))}.kb-prev{min-width:84px;font:800 12px var(--font,inherit);letter-spacing:1px;color:var(--ink-muted);flex:none}.kb-txt{flex-direction:column;flex:1;display:flex}.kb-txt small{color:var(--ink-muted);font-size:12px;font-weight:600}.kb-tick{color:var(--ink);font-weight:900}.level-card{background:var(--surface);box-shadow:var(--shadow-1);text-align:left;isolation:isolate;border-radius:18px;align-items:center;gap:12px;padding:10px 14px;display:flex}.lv-badge{width:44px;height:44px;font:900 20px var(--font,inherit);color:var(--primary-ink);background:var(--primary);border-radius:50%;flex:none;place-items:center;display:grid}.lv-main{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.lv-main small{color:color-mix(in srgb, var(--ink) 45%, var(--ink-muted));font-size:12px;font-weight:700}.lv-bar{background:var(--surface-2);border-radius:999px;height:8px;overflow:hidden}.lv-bar i{background:var(--primary);transform-origin:0;border-radius:999px;height:100%;display:block}.kb-bar{gap:6px}.kb-bubble{align-items:center}.bubble-wrap{touch-action:pan-y;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:100%;display:flex}.bubble-row{justify-content:center;align-items:center;gap:8px;width:100%;display:flex}.bubble-wrap .bubble{aspect-ratio:1;width:min(208px,100%);height:auto;color:var(--primary);cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none;background:radial-gradient(circle at 32% 28%,#ffffffc7,#ffffff29 38%,#a0c8ff3d 70%,#78aaff61);border:2px solid #ffffffbf;border-radius:50%;flex:none;position:relative;box-shadow:inset 0 0 26px #ffffff8c,0 8px 22px #281e5a33}.bubble-wrap .bubble.swiping{box-shadow:inset 0 0 26px #ffffff8c, 0 0 0 3px color-mix(in srgb, var(--primary) 45%, transparent), 0 8px 22px #281e5a38}.bubble-lines{pointer-events:none;position:absolute;inset:0}.bdisc{font:900 clamp(14px, 4.2vmin, 20px) var(--font,inherit);color:#1c1736;will-change:transform;cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;background:#fff;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;box-shadow:0 3px #2b234038}.bdisc:active{filter:brightness(.94)}.bdisc.onpath{outline:2px solid color-mix(in srgb, var(--primary) 70%, transparent);outline-offset:1px}.bdisc[data-s=C]{background:var(--correct);color:var(--correct-ink)}.bdisc[data-s=P]{background:var(--present);color:var(--present-ink)}.bdisc[data-s=A]{opacity:.5}.bopen{min-width:104px;min-height:48px;font:900 16px/1 var(--font,inherit);letter-spacing:.4px;background:var(--primary);color:var(--primary-ink);box-shadow:0 4px 0 color-mix(in srgb, var(--primary) 55%, #000), 0 8px 18px color-mix(in srgb, var(--primary) 28%, transparent);cursor:pointer;border:0;border-radius:999px;flex:none;place-items:center;padding:0 22px;display:inline-grid}.bopen.ready{animation:.9s ease-in-out infinite readyHop}:root[data-motion=off] .bopen.ready,:root[data-perf=low] .bopen.ready{animation:none}.bubble-btn{width:48px;height:48px;font:900 20px var(--font,inherit);background:var(--key);color:var(--key-ink);cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;display:grid;box-shadow:0 3px #2b234029}.bubble-hint{text-align:center;max-width:18rem;margin:0;line-height:1.3}@media (max-height:720px){.bubble-hint{display:none}}.joker.ring .ric{font-size:18px;line-height:1}.joker[data-state=locked]{opacity:.55}.joker{min-width:0}.jokers.has-ring .joker{gap:4px;padding:0 6px}.jokers.has-ring .joker small{display:none}@media (max-width:400px){.jokers.has-ring .joker .jn{display:none}.jokers.has-ring .joker small{display:inline}}.vault[data-n="6"]{--dmin:32px}.vault[data-n="7"]{--dmin:27px}.vault[data-n="6"] .cyl,.vault[data-n="7"] .cyl{gap:5px;padding:8px 10px}.diff-pick,.len-pick{flex-direction:column;align-items:stretch;gap:6px;width:100%;margin-bottom:4px;display:flex}.pick-lbl,.len-lbl{letter-spacing:.45px;text-transform:uppercase;width:100%;color:var(--primary);margin:0;font-size:12px;font-weight:800;line-height:1.2;display:block}.diff-opts{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;display:grid}.len-opts{flex-wrap:wrap;align-items:center;gap:6px;width:100%;display:flex}.side-stack{flex-direction:column;gap:12px;display:flex}.len-dock--side{margin-top:0}.len-dock--side .diff-pick,.len-dock--side .len-pick{margin-bottom:0}.len-dock--side .pick-lbl{font-size:13px}.len-opt{min-width:var(--tap);min-height:var(--tap);font:900 15px var(--font,inherit);background:var(--surface-2);color:var(--ink);border:2px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:5px;padding:0 10px;display:inline-flex}.len-opt .opt-lbl{line-height:1}.len-opt.on{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 12%, var(--surface))}.len-opt.locked{opacity:1;cursor:not-allowed;color:var(--ink-muted);background:color-mix(in srgb, var(--ink-muted) 10%, var(--surface));border:2px dashed color-mix(in srgb, var(--ink-muted) 42%, transparent);font-size:14px;font-weight:800}.len-opt.locked .opt-lbl{color:var(--ink-muted);opacity:1}.len-opt .lock-ic{color:#c9971a;opacity:1;filter:none;flex:none;width:14px;height:14px;display:block}:root[data-theme=dark] .len-opt.locked{background:color-mix(in srgb, var(--ink-muted) 16%, var(--surface));border-color:color-mix(in srgb, var(--ink-muted) 50%, transparent);color:color-mix(in srgb, var(--ink) 72%, var(--ink-muted))}:root[data-theme=dark] .len-opt.locked .opt-lbl{color:color-mix(in srgb, var(--ink) 78%, var(--ink-muted))}:root[data-theme=dark] .len-opt .lock-ic{color:#f5c451}@media (prefers-color-scheme:dark){:root[data-theme=system] .len-opt.locked{background:color-mix(in srgb, var(--ink-muted) 16%, var(--surface));border-color:color-mix(in srgb, var(--ink-muted) 50%, transparent)}:root[data-theme=system] .len-opt .lock-ic{color:#f5c451}}.len-opt.suggest:not(.on){animation:1.6s ease-in-out infinite lenPulse}@keyframes lenPulse{50%{transform:scale(1.06)}}:root[data-motion=off] .len-opt.suggest,:root[data-perf=low] .len-opt.suggest{animation:none}.len-suggest{min-height:var(--tap);font:800 12px var(--font,inherit);background:color-mix(in srgb, var(--success,#2fa866) 16%, var(--surface));border:1px solid color-mix(in srgb, var(--success,#2fa866) 55%, transparent);color:var(--ink);border-radius:999px;padding:0 12px}.quest-card{background:var(--surface);width:100%;box-shadow:var(--shadow-1);text-align:left;border-radius:18px;padding:10px 14px}.quest-card header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.q-count{color:var(--primary);font-weight:900}.quest-card ul{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.quest-card li{align-items:center;gap:10px;min-height:32px;display:flex}.quest-card li[data-state=done]{opacity:.7}.quest-card li[data-state=done] .q-txt{text-decoration:line-through;text-decoration-thickness:1px}.q-ic{background:var(--surface-2);border-radius:50%;flex:0 0 22px;place-items:center;width:22px;height:22px;font-size:13px;font-weight:900;display:grid}li[data-state=done] .q-ic{background:var(--primary);color:var(--primary-ink)}.q-txt{flex-direction:column;flex:1;font-size:14px;font-weight:700;line-height:1.2;display:flex}.q-txt small{color:var(--ink-muted);font-size:11px;font-weight:700}.q-xp{background:color-mix(in srgb, var(--lock,#f5b83d) 28%, var(--surface));border-radius:999px;padding:2px 8px;font-size:12px;font-weight:900}.q-chest{color:var(--ink-muted);margin:8px 0 0;font-size:12px;font-weight:700}.q-chest[data-open="1"]{color:var(--primary)}.levelup-banner{z-index:80;top:calc(var(--sat,0px) + 6px);pointer-events:none;justify-content:center;padding:0 12px;display:flex;position:fixed;left:0;right:0}.lu-card{pointer-events:none;background:var(--surface);width:100%;max-width:440px;box-shadow:var(--shadow-2);border:2px solid var(--primary);border-radius:18px;align-items:center;gap:10px;padding:8px 10px;animation:.35s cubic-bezier(.2,.9,.2,1) both luIn;display:flex}.lu-card button{pointer-events:auto}.lu-txt{text-align:left;flex-direction:column;flex:1;min-width:0;font-size:14px;display:flex}.lu-txt small{color:var(--ink-muted);font-size:12px;font-weight:700}.lu-x{width:var(--tap);height:var(--tap);color:var(--ink-muted);border-radius:50%;flex:none;font-weight:900}@keyframes luIn{0%{opacity:0;transform:translateY(-14px)}}:root[data-motion=off] .lu-card{animation:none}@media (max-width:430px){.lu-card{flex-wrap:wrap;row-gap:8px}.lu-x{order:2}.lu-card .btn{flex:100%;order:3}}.stage>*{flex-shrink:0}.slot-board,.stage .slot-board{min-height:0;flex:1 0 auto!important}.board-card{flex:none;min-height:min-content}.vault,.vault.compact{flex:none;min-height:0;height:auto!important}.keyboard,.jokers-wrap,.wallet,.orbit,.trail-wrap{flex-shrink:0}.kb-stage,.jokers-stage{min-width:0;max-width:100%}@media (max-height:760px){.wallet-hint--narrow,.slot-top .pick-lbl,.slot-top .len-lbl{display:none}.slot-top .diff-pick,.slot-top .len-pick{margin-bottom:0}}@media (max-height:600px){.trail .trow:nth-last-child(n+2){display:none}}@media (max-height:660px){.slot-coach{display:none}.gmain.stage-wrap{gap:2px}.kb-bar{display:none}}.stage{min-height:100%;flex:1 0 auto!important}.slot-kb{z-index:4;background:color-mix(in srgb, var(--bg) 92%, transparent);padding-top:4px;position:sticky;bottom:0}@media (max-height:640px){.key{height:var(--tap)}.keyboard{gap:4px}.krow{gap:3px}.orbit{min-height:30px}.orbit-title{display:none}.vault{gap:4px}.board-card{padding:4px 6px}.wallet{gap:6px}.wallet .tokens,.wallet .adbtn,.jokers .joker{min-height:var(--tap)}}.len-chip{min-height:var(--tap);cursor:pointer;align-items:center;display:inline-flex}@media (max-height:700px){.slot-coach,.kb-bar .kb-map{display:none}.wallet{flex-wrap:nowrap}.wallet .adbtn{flex:auto;min-width:0}.wallet .adbtn>span:not(.play){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.trail-wrap{flex-direction:row;justify-content:center;align-items:center;gap:8px}.trail{flex:auto!important}.hist-btn{min-height:var(--tap);padding:0 10px}.orbit{min-height:34px}.orbit-title{display:none}.vault{gap:6px}}.hist-btn{gap:6px}.hist-btn b{flex:none}@media (min-width:728px){.slot-kb{position:static}}@media (min-width:728px) and (max-height:880px){.slot-coach{display:none}}@media (min-width:728px) and (max-height:760px){.key{height:50px}.keyboard{gap:6px}}@media (orientation:landscape) and (max-height:520px){.stage,.stage-wrap .stage{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:4px 12px;grid-template-areas:"top kb""board kb"!important;max-width:100%!important;display:grid!important}.slot-coach,.slot-left,.slot-right{display:none!important}.slot-top{grid-area:top!important}.slot-board{grid-area:board!important}.slot-kb{align-self:center;position:static;grid-area:kb!important}.gmain.stage-wrap{padding:0 10px;max-width:none!important}.vault{--ds:clamp(28px, min(52px, calc((50vw - 74px - 8px * (var(--n) - 1)) / var(--n))), 52px)}.vault.compact{--ds:clamp(26px, min(46px, calc((50vw - 74px - 8px * (var(--n) - 1)) / var(--n))), 46px)}.key{height:var(--tap)}.keyboard{gap:4px}.krow{gap:3px}.jokers .joker{min-height:var(--tap)}.gbar{padding:2px 12px}.board-card{padding:4px}.orbit{min-height:30px}.stage:has(.dreamscene){grid-template-areas:"coach kb""board kb"!important}.stage-wrap .stage:has(.dreamscene){grid-template-areas:"coach kb""board kb"!important}.stage:has(.dreamscene) .slot-top{display:none!important}.stage:has(.dreamscene) .slot-coach{grid-area:coach!important}.bubble-wrap{gap:4px}.bubble-wrap .bubble{width:min(148px,36vmin);max-width:148px;max-height:148px}.bopen{min-height:var(--tap);min-width:88px;padding:0 14px;font-size:14px}.bubble-btn{width:var(--tap);height:var(--tap)}.app[data-screen=daily],.app[data-screen=practice],.app[data-screen=duel]{max-width:100%}:root{--tabbar-space:56px}.app>.tabbar,.tabbar{padding-top:4px;padding-bottom:calc(4px + var(--sab))}.tabbar button{flex-direction:row;gap:6px;min-height:44px;padding:4px}.ad-game{margin:4px 0 calc(4px + var(--sab))}.slot-top .jokers-wrap{flex-flow:wrap;justify-content:center;align-items:center;gap:6px}.slot-top .jokers-wrap>.jokers{flex:1 1 0;gap:6px;width:auto;min-width:152px}.slot-top .jokers-wrap>.jokers.has-ring{min-width:206px}.slot-top .jokers-wrap>.jokers .joker{min-width:48px;padding:0 8px}.slot-top .joker .jn,.slot-top .tokens em{display:none}.slot-top .jokers-wrap>.wallet{flex-wrap:nowrap;flex:none;gap:6px;width:auto}.slot-top .adbtn{gap:6px;padding:0 10px}.slot-top .adbtn small{white-space:nowrap}.app:not([data-screen=duel]) .slot-top{padding-left:0}.slot-top .adbtn>span:not(.play){clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (orientation:landscape) and (max-height:380px){.vault,.vault.compact{--ds:38px}.adslot{--adh:44px}.ad-game{margin-block:2px calc(2px + var(--sab))}.stage,.stage-wrap .stage{row-gap:2px}}.app{padding-left:var(--sal);padding-right:var(--sar);box-sizing:border-box}.pstrip{gap:var(--space-3);flex-direction:column;width:100%;display:flex}.pstrip .level-card{padding:8px 10px}.pstrip .lv-badge{width:36px;height:36px;font-size:17px}.q-toggle{background:var(--surface-2);min-width:56px;min-height:44px;color:var(--ink);border-radius:14px;flex:none;justify-content:center;align-items:center;gap:4px;padding:0 10px;font-weight:900;display:inline-flex}.q-toggle b{font-size:14px}.q-chev{color:var(--ink-muted);font-size:12px}.q-next{color:var(--ink-muted);text-align:left;margin:0;padding:0 8px;font-size:12px;font-weight:700}.home .q-next{display:none}.pstrip .quest-card{box-shadow:none;background:var(--surface)}.avatar-face{flex:none;place-items:center;line-height:1;display:inline-grid;overflow:hidden;box-shadow:inset 0 -3px #0000001f}.avatar-emoji{line-height:1;display:block;transform:translateY(1px)}.avatar-name{max-width:100%;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;font-weight:700;display:block;overflow:hidden}.vs.room{gap:8px}.vs.room .react-bar{flex-wrap:nowrap;gap:4px;max-width:none}.vs.room .react{width:var(--tap,44px);height:var(--tap,44px);font-size:18px}.vs.room{flex-wrap:wrap;justify-content:center}.vs.room .vs-side b{max-width:64px}.race{flex-shrink:0;gap:6px;width:100%;min-width:0;padding:0 8px;display:grid}.race-feed{min-height:22px;color:var(--ink);text-align:center;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:13px;font-weight:800;line-height:22px;overflow:hidden}.race-feed.on{animation:.45s cubic-bezier(.2,.9,.3,1.2) both race-feed-in}@keyframes race-feed-in{0%{opacity:0;transform:translateY(8px)scale(.96)}to{opacity:1;transform:none}}.race-list{overscroll-behavior:contain;grid-template-columns:1fr;gap:6px;max-height:34vh;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.race-list[data-cols="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.race-card{background:var(--surface);min-width:0;box-shadow:var(--shadow-1);border:2px solid #0000;border-radius:14px;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"ava body""ava status";align-items:center;column-gap:8px;padding:5px 8px;display:grid;position:relative}.race-ava{grid-area:ava;display:inline-grid;position:relative}.race-mood{filter:drop-shadow(0 1px 1px #00000059);font-size:14px;font-style:normal;line-height:1;position:absolute;bottom:-6px;right:-6px}.race-body{grid-area:body;gap:3px;min-width:0;display:grid}.race-name{text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.1;overflow:hidden}.race-bars{gap:3px;display:flex}.race-bars i{background:var(--tile-border);border-radius:3px;width:100%;max-width:14px;height:7px}.race-bars i[data-heat=miss]{background:var(--absent)}.race-bars i[data-heat=some]{background:var(--present)}.race-bars i[data-heat=close]{background:color-mix(in srgb, var(--correct) 70%, var(--present))}.race-bars i[data-heat=solved]{background:var(--correct)}.race-status{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;grid-area:status;font-size:11px;font-weight:700;line-height:1.2;overflow:hidden}.round-answers{text-align:left;width:min(100%,320px);margin:4px 0 8px}.round-answers h3{margin:0 0 6px;font-size:15px;font-weight:800}.round-answers ul{gap:4px;margin:0;padding:0;list-style:none;display:grid}.round-answers li{background:var(--surface);border:1px solid color-mix(in srgb, var(--primary) 22%, transparent);border-radius:10px;justify-content:space-between;gap:10px;padding:6px 10px;font-size:14px;display:flex}.round-answers li b{letter-spacing:.06em}.countdown-overlay.round-reveal{background:color-mix(in srgb, var(--ink) 55%, transparent);gap:10px}.countdown-overlay.round-reveal strong{color:var(--ink);font-size:clamp(22px,5vw,32px);font-weight:900}.countdown-overlay.round-reveal.win strong{color:var(--ok,#1a9d6e)}.countdown-overlay.round-reveal.loss strong{color:var(--danger,#c23b4a)}.countdown-overlay.round-reveal small{opacity:.9;margin-bottom:0;font-size:14px;font-weight:700;display:block}.countdown-overlay.round-reveal span{letter-spacing:.12em;font-size:clamp(28px,8vw,44px);font-weight:900}.race-acts{flex-wrap:wrap;gap:6px;min-width:0;margin-top:2px;display:flex}.race-acts .btn{letter-spacing:.01em;flex:auto;gap:6px;min-width:0;padding:0 12px;font-weight:800}.race-acts .btn .ico{flex:none}.race-acts.ghost{visibility:hidden;pointer-events:none}.race-gift{--tb:#e8a317;--ti:#2b1a00}.race-nudge{--tb:#c72a63;--ti:#fff}:root[data-theme=dark] .race-gift{--tb:#f5c451;--ti:#2b1a00}:root[data-theme=dark] .race-nudge{--tb:#ff86ae;--ti:#3a0820}.race-card[data-mood=solved]{border-color:var(--correct)}.race-card[data-mood=hot]{border-color:var(--present)}.race-card[data-mood=out] .race-ava,.race-card[data-mood=left] .race-ava{opacity:.6}.race-card[data-mood=left]{opacity:.8}.race-card[data-mood=playing] .race-ava,.race-card[data-mood=idle] .race-ava{animation:2.4s ease-in-out infinite race-bob}.race-card[data-mood=hot] .race-ava{animation:.7s ease-in-out infinite race-hot}.race-card[data-mood=solved] .race-ava{animation:1s ease-in-out infinite race-dance}.race-card[data-mood=out] .race-ava{animation:1.8s ease-in-out infinite race-slump}@keyframes race-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes race-hot{0%,to{transform:scale(1)}50%{transform:scale(1.1)rotate(-4deg)}}@keyframes race-dance{0%,to{transform:rotate(-9deg)translateY(0)}50%{transform:rotate(9deg)translateY(-3px)}}@keyframes race-slump{0%,to{transform:rotate(0)}50%{transform:rotate(-6deg)translateY(1px)}}:root[data-motion=off] .race-card .race-ava,:root[data-motion=off] .race-feed.on{animation:none}@media (prefers-reduced-motion:reduce){.race-card .race-ava,.race-feed.on{animation:none}}@media (max-height:640px){.race-list{max-height:24vh}.race-card{padding:3px 6px}.race-status{display:none}}@media (orientation:landscape) and (max-height:520px){.race-list{max-height:30vh}}.kb-card.locked,.kb-card.locked:disabled{opacity:1;border:2px dashed var(--tile-border);cursor:not-allowed;background:0 0}.sheet>*{flex-shrink:0}body:has(.levelup-banner) .sheet{max-height:calc(100dvh - var(--lvbanner-h,190px))}@media (min-width:560px){body:has(.levelup-banner) .scrim{padding-top:var(--lvbanner-h,190px);box-sizing:border-box}}body:has(.levelup-banner) .scrim{padding-top:var(--lvbanner-h,190px);box-sizing:border-box}body:has(.levelup-banner) .scrim .sheet{max-height:100%}@media (max-width:727px) and (max-height:900px){.stage,.gmain.stage-wrap,.jokers-wrap{gap:4px}.board-card{border-radius:20px;padding:6px}.vault,.vault.compact{gap:4px;min-height:0}.vault{--ds:clamp(var(--dmin), min(58px, calc((100vw - 86px - 8px * (var(--n) - 1)) / var(--n)), calc((100dvh - 580px) / 2)), 58px)}.vault.compact{--ds:clamp(calc(var(--dmin) - 2px), min(50px, calc((100vw - 86px - 8px * (var(--n) - 1)) / var(--n)), calc((100dvh - 620px) / 2)), 50px)}.orbit{min-height:30px}.orbit-title{display:none}.cyl{gap:6px;padding:6px 8px}.key{height:var(--tap)}.keyboard{padding-bottom:calc(4px + var(--sab));gap:4px}.krow{gap:3px}.slot-kb{padding-top:2px}.dots{margin-top:1px}}@media (max-width:360px){.gmain.stage-wrap{padding-left:4px;padding-right:4px}.krow{gap:2px}.key:not(.wide){min-width:24px}.key.wide{flex:1.2 1 0;min-width:36px;max-width:48px;font-size:11px}.key.wide.enter{flex:1.3 1 0;min-width:40px;max-width:52px}}.lb-meta{justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.lb-meta .live{color:var(--ink-muted);align-items:center;gap:6px;min-width:0;font-size:12px;font-weight:700;display:inline-flex}.lb-meta .live i{background:var(--success);border-radius:50%;flex:none;width:8px;height:8px}.lb-meta .live.off{color:var(--danger-ink,var(--ink))}.lb-meta .live.off i{background:var(--danger)}.lb-meta .refresh{min-height:var(--tap,44px);min-width:var(--tap,44px);background:var(--primary);color:var(--primary-ink);box-shadow:0 3px 0 color-mix(in srgb, var(--primary) 55%, #000);border:0;padding:0 16px}.lb-meta .refresh:disabled{opacity:.55;box-shadow:none}.lb-meta .refresh .spin{animation:.8s linear infinite spin360;display:inline-block}@keyframes spin360{to{transform:rotate(360deg)}}:root[data-motion=off] .lb-meta .refresh .spin{animation:none}.lb li .nm{flex-direction:column;min-width:0;display:flex}.lb-extra{color:var(--ink-muted);font-size:11px;font-weight:600}.lb li{gap:8px}.lb-gap-row{box-shadow:none;background:0 0;justify-content:center;padding:4px 14px}.lb-gap{letter-spacing:.35em;color:var(--ink-muted);opacity:.85;font-weight:900}.ranks-nearby{margin:0 0 4px;font-weight:700}.ranks-bar .page-title small{letter-spacing:.04em;text-transform:uppercase;color:var(--primary);opacity:.85;font-size:12px;font-weight:800}.tone-go{--tb:#17804d;--ti:#fff}.tone-duel{--tb:#c72a63;--ti:#fff}.tone-share{--tb:#1565b8;--ti:#fff}.tone-gold{--tb:#f0b429;--ti:#2b1a00}.tone-danger{--tb:#b42318;--ti:#fff}:root[data-theme=dark] .tone-go{--tb:#4ade80;--ti:#052e16}:root[data-theme=dark] .tone-duel{--tb:#ff86ae;--ti:#3a0820}:root[data-theme=dark] .tone-share{--tb:#6dbbff;--ti:#04233f}:root[data-theme=dark] .tone-gold{--tb:#f5c451;--ti:#2b1a00}:root[data-theme=dark] .tone-danger{--tb:#ff8a80;--ti:#3a0508}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) .tone-go{--tb:#4ade80;--ti:#052e16}:root:not([data-theme=light]):not([data-theme=dark]) .tone-duel{--tb:#ff86ae;--ti:#3a0820}:root:not([data-theme=light]):not([data-theme=dark]) .tone-share{--tb:#6dbbff;--ti:#04233f}:root:not([data-theme=light]):not([data-theme=dark]) .tone-gold{--tb:#f5c451;--ti:#2b1a00}:root:not([data-theme=light]):not([data-theme=dark]) .tone-danger{--tb:#ff8a80;--ti:#3a0508}}.btn[class*=tone-]{background:var(--tb);color:var(--ti);min-height:52px;box-shadow:0 4px 0 color-mix(in srgb, var(--tb) 58%, #000), 0 8px 18px color-mix(in srgb, var(--tb) 30%, transparent);border:0;font-size:16px}.btn[class*=tone-]:active:not(:disabled){box-shadow:0 1px 0 color-mix(in srgb, var(--tb) 58%, #000);transform:translateY(3px)}.btn[class*=tone-].soft{background:color-mix(in srgb, var(--tb) 16%, var(--surface));color:var(--ink);border:2px solid color-mix(in srgb, var(--tb) 70%, transparent);min-height:48px;box-shadow:none}.btn[class*=tone-].soft:active:not(:disabled){background:color-mix(in srgb, var(--tb) 28%, var(--surface))}.btn[class*=tone-].slim{min-height:var(--tap,44px);font-size:14px}.btn[class*=tone-]:after{display:none}@media (min-width:1024px){.app>.tabbar,.tabbar{width:min(520px,100%);max-width:520px;padding:6px 8px calc(6px + var(--sab));border-radius:20px 20px 0 0;margin-inline:auto;bottom:0;box-shadow:0 -6px 22px #2b234024}}.gmain,.race-list,.sheet,.panel{scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--primary) 40%, transparent) transparent}.gmain::-webkit-scrollbar{width:8px;height:8px}.race-list::-webkit-scrollbar{width:8px;height:8px}.sheet::-webkit-scrollbar{width:8px;height:8px}.panel::-webkit-scrollbar{width:8px;height:8px}.gmain::-webkit-scrollbar-track{background:0 0}.race-list::-webkit-scrollbar-track{background:0 0}.sheet::-webkit-scrollbar-track{background:0 0}.panel::-webkit-scrollbar-track{background:0 0}.gmain::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--primary) 38%, transparent);background-clip:padding-box;border:2px solid #0000;border-radius:999px}.race-list::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--primary) 38%, transparent);background-clip:padding-box;border:2px solid #0000;border-radius:999px}.sheet::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--primary) 38%, transparent);background-clip:padding-box;border:2px solid #0000;border-radius:999px}.panel::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--primary) 38%, transparent);background-clip:padding-box;border:2px solid #0000;border-radius:999px}.gmain::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--primary) 60%, transparent);background-clip:padding-box}@media (min-width:728px) and (min-height:521px){:root{--kh:clamp(38px, calc((100dvh - 470px) / 6.2), 54px);--adw:clamp(300px, calc(100dvh * .62), 640px)}.key{height:var(--kh)}.keyboard{gap:clamp(4px,2.5dvh - 15px,9px)}}@media (min-width:1024px) and (min-height:521px){.vault{--ds:clamp(46px, min(84px, calc((100dvh - 520px) / 2.4)), 84px)}.vault.compact{--ds:clamp(42px, min(70px, calc((100dvh - 580px) / 2.4)), 70px)}}.lb-meta .refresh{min-height:var(--tap,44px);background:var(--surface-2);color:var(--ink);border:2px solid color-mix(in srgb, var(--primary) 35%, transparent);box-shadow:none;flex:none;justify-content:center;align-items:center;gap:6px;padding:0 16px;font-size:14px;display:inline-flex}.lb-meta .refresh:hover:not(:disabled){background:color-mix(in srgb, var(--primary) 14%, var(--surface-2))}.gmain:has(>.menu){padding-bottom:14px;-webkit-mask-image:linear-gradient(#000 calc(100% - 26px),#0000);mask-image:linear-gradient(#000 calc(100% - 26px),#0000)}.lobby .btn,.lobby .btn-row{width:100%;max-width:420px}.lobby .lobby-bots .btn,.lobby .lobby-list .btn{width:auto;max-width:none}.lobby .btn-row{flex-direction:column;align-items:stretch;margin-inline:auto}.lobby .row-btns{flex-direction:column;gap:10px;width:100%;max-width:420px;margin-inline:auto;display:flex}.gmain:has(>.menu .room-setup){overflow-y:hidden;-webkit-mask-image:none;mask-image:none}.duel-calm,.lobby-calm,.room-setup-calm{font-family:var(--font);color:var(--ink)}.room-setup [data-testid=create-room].card-btn.primary.push{z-index:auto;isolation:isolate;background:linear-gradient(135deg, var(--primary), color-mix(in srgb, var(--primary) 85%, #5b3df0));box-shadow:0 10px 28px color-mix(in srgb, var(--primary) 38%, transparent);border:0;position:static;overflow:hidden}.room-setup [data-testid=create-room].card-btn.primary.push:active:not(:disabled){box-shadow:0 6px 18px color-mix(in srgb, var(--primary) 30%, transparent);transform:translateY(1px)scale(.99)}.adslot .ad-tag{color:#2b2340;letter-spacing:.5px;background:#ffffffeb;border-radius:0 0 0 8px;padding:0 7px;font-size:8px;line-height:11px;top:0;left:auto;right:0}.page,.home{-webkit-mask-image:none;mask-image:none}.home{padding-bottom:calc(var(--tabbar-space) + var(--sab) + var(--space-4))}.home .adslot.ad-home{flex:none;margin:0}.avatar-opt{padding:6px 2px}.avatar-name{letter-spacing:-.01em;font-size:.65rem}@media (max-width:479px) and (orientation:portrait){.jokers-wrap{flex-flow:wrap;justify-content:center;align-items:center;gap:6px}.jokers-wrap>.jokers{flex:1 1 0;gap:6px;width:auto;min-width:152px}.jokers-wrap>.jokers.has-ring{min-width:206px}.jokers-wrap>.jokers .joker{min-width:48px;padding:0 8px}.joker .jn{display:none}.jokers-wrap>.wallet{flex-wrap:nowrap;flex:none;gap:6px;width:auto}.wallet .adbtn>span:not(.play){display:none}.wallet .adbtn{gap:6px;padding:0 10px}.wallet .tokens em{display:none}.wallet-hint{flex:1 0 100%}}@media (max-width:340px) and (orientation:portrait){.jokers-wrap>.jokers{gap:4px;min-width:132px}.jokers-wrap>.jokers .joker{min-width:44px;padding:0 4px}.jokers-wrap>.jokers.has-ring{min-width:180px}.jokers-wrap{gap:4px}.wallet .tokens,.wallet .adbtn{padding:0 8px}}@media (max-height:600px) and (orientation:portrait){.stage{gap:2px}.slot-kb{padding-top:0}.gbar{padding-top:0;padding-bottom:0}.board-card{padding:2px 6px}}.stage[data-flow="1"] .slot-kb{position:static}.prof-head{flex-wrap:wrap}.prof-head>div{flex:140px;min-width:0}.name-edit{flex-wrap:wrap}@media (orientation:landscape) and (max-height:520px){.slot-top{box-sizing:border-box;padding-left:52px}}.app>.cmp-bar,.cmp-bar{left:12px;right:12px;bottom:calc(var(--tabbar-space) + var(--sab) + 6px);z-index:45;background:var(--surface);width:min(496px,100% - 24px);box-shadow:var(--shadow-2);border:1px solid var(--line,#00000014);box-sizing:border-box;border-radius:18px;margin-inline:auto;padding:12px 14px;position:fixed}.cmp-bar b{font-size:14px;display:block}.cmp-bar p{color:var(--ink-muted);margin:4px 0 8px;font-size:12.5px;line-height:1.4}.cmp-bar .row-btns{justify-content:flex-end;margin:0}.cmp-bar .btn{flex:1;min-height:44px}@media (min-width:1024px){.app>.cmp-bar,.cmp-bar{max-width:520px;transform:none}}.scrim.end{padding-bottom:calc(var(--tabbar-space) + var(--sab));box-sizing:border-box}.scrim.end .sheet{max-height:calc(100dvh - var(--tabbar-space) - var(--sab) - 8px);border-radius:28px;padding-top:28px}.scrim.end .lose-word{letter-spacing:2px}.scrim.end .btn-row{flex-wrap:wrap;row-gap:10px}body:has(.levelup-banner) .scrim.end .sheet{max-height:calc(100dvh - var(--lvbanner-h,190px) - var(--tabbar-space) - var(--sab))}@media (min-width:560px){.scrim.end .sheet{border-radius:28px}}.seo{background:var(--bg);min-height:100dvh;color:var(--ink);flex-direction:column;display:flex}.seo-bar{padding:calc(12px + var(--sat)) 16px 12px;border-bottom:1px solid color-mix(in srgb, var(--ink) 8%, transparent);justify-content:space-between;align-items:center;gap:12px;display:flex}.seo-brand{font:800 22px/1 var(--font);color:var(--ink);letter-spacing:-.3px;text-decoration:none}.seo-brand:after{content:"";color:var(--primary)}.seo-nav{flex-wrap:wrap;justify-content:flex-end;gap:10px 14px;display:flex}.seo-nav a{font:700 13px/1.2 var(--font);color:var(--ink-muted);text-decoration:none}.seo-nav a:hover,.seo-nav a:focus-visible{color:var(--primary)}.seo-main{flex-direction:column;flex:1;gap:14px;width:min(640px,100%);margin:0 auto;padding:28px 16px 40px;display:flex}.seo-main h1{font:800 clamp(28px, 6vw, 40px)/1.15 var(--font);letter-spacing:-.4px;margin:0}.seo-lead{font:700 17px/1.4 var(--font);color:var(--ink);margin:0}.seo-p{font:600 15px/1.5 var(--font);color:var(--ink-muted);margin:0}.seo-faq{background:var(--surface);box-shadow:var(--shadow-1);border-radius:18px;margin-top:12px;padding:16px}.seo-faq h2{font:800 18px/1.2 var(--font);margin:0 0 12px}.seo-faq dl{flex-direction:column;gap:12px;margin:0;display:flex}.seo-faq-item dt{font:800 14px/1.3 var(--font)}.seo-faq-item dd{font:600 14px/1.45 var(--font);color:var(--ink-muted);margin:4px 0 0}.seo-cta{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.seo-cta .btn{min-height:var(--tap);justify-content:center;align-items:center;padding:0 18px;text-decoration:none;display:inline-flex}.seo-foot{text-align:center;font:600 12px/1.4 var(--font);color:var(--ink-muted);border-top:1px solid color-mix(in srgb, var(--ink) 8%, transparent);padding:16px}.seo-foot a{color:var(--primary);font-weight:700;text-decoration:none}.dist-this,.dist-row .dist-n,.dist-row.is-this .dist-n{color:var(--ink)}.icon-btn,.kb-map{min-width:var(--tap);flex:none}@media (max-height:860px) and (max-width:520px){.home{gap:10px}}.gbar .gright{flex:none}.gbar .gtitle{min-width:0;overflow:hidden}.gbar .gtitle b,.gbar .gtitle small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.home-join{box-sizing:border-box;max-width:100%}.home-join .input{min-width:0}.push-hint{-webkit-user-select:text;user-select:text;overflow-wrap:anywhere}.push-box{flex-direction:column;gap:10px;min-width:0;padding:4px 0 12px;display:flex}.push-box .push-hint{text-align:left;margin:0;font-size:13px;line-height:1.45}.push-cta{flex:none;width:100%}@media (min-width:560px){.push-cta{align-self:flex-start;width:auto;min-width:220px}}.push-links{flex-wrap:wrap;gap:4px 16px;display:flex}.push-link{min-height:var(--tap);color:var(--primary);font:inherit;text-underline-offset:3px;cursor:pointer;text-align:left;background:0 0;border:0;padding:0 4px;font-size:14px;font-weight:800;text-decoration:underline}.push-link:disabled{opacity:.5;cursor:not-allowed}.push-link:focus-visible,.pg-sheet .btn:focus-visible{outline:3px solid var(--primary);outline-offset:2px}.sheet:has(.pg-sheet){text-align:left;padding-top:20px}.sheet:has(.pg-sheet) .sheet-title{padding-left:0;padding-right:calc(var(--tap) + 8px);overflow-wrap:anywhere;text-align:left;margin:0;font-size:20px;line-height:1.25}.pg-sheet{text-align:left;flex-direction:column;gap:14px;min-width:0;display:flex}.pg-badge{max-width:100%;color:var(--ink);background:color-mix(in srgb, var(--primary) 16%, var(--surface-2));border:1px solid color-mix(in srgb, var(--primary) 28%, transparent);overflow-wrap:anywhere;border-radius:999px;align-self:flex-start;padding:5px 12px;font-size:13px;font-weight:800}.pg-frame{aspect-ratio:16/9;background:var(--surface-2);border:1px solid var(--tile-border);border-radius:16px;width:100%;max-width:560px;margin-inline:auto;position:relative;overflow:hidden}.pg-media{object-fit:contain;width:100%;height:100%;display:block;position:absolute;inset:0}.pg-steps{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.pg-steps li{grid-template-columns:36px minmax(0,1fr);align-items:start;gap:12px;display:grid}.pg-num{background:var(--primary);width:36px;height:36px;color:var(--primary-ink);border-radius:50%;place-items:center;font-size:16px;font-weight:800;display:grid}.pg-step{flex-direction:column;gap:10px;min-width:0;display:flex}.pg-step p{overflow-wrap:anywhere;margin:0;padding-top:6px;line-height:1.5}.pg-act{white-space:normal;text-align:center;align-self:flex-start;max-width:100%;padding-block:8px}.pg-step .btn.primary.pg-act{align-self:stretch}.pg-note{overflow-wrap:anywhere;margin:0;font-size:13px}.pg-alt{background:var(--surface-2);border:1px dashed var(--tile-border);border-radius:16px;flex-direction:column;gap:8px;padding:14px;display:flex}.pg-alt h3{margin:0;font-size:15px;font-weight:800}.pg-alt p{overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.45}.pg-bar{bottom:calc(-20px - var(--sab));z-index:1;margin:2px -20px calc(-20px - var(--sab));padding:12px 20px calc(12px + var(--sab));background:var(--surface);border-top:1px solid var(--tile-border);display:flex;position:sticky}.pg-bar .btn{width:100%}@media (min-width:560px){.pg-bar .btn{max-width:280px;margin-inline:auto}}@media (prefers-reduced-motion:reduce){.pg-sheet *{transition:none!important;animation:none!important}}.ranks-bar .page-title small{color:color-mix(in srgb, var(--primary) 62%, var(--ink));opacity:1}.slot-race{flex:none;width:100%}.game[data-below="1"] .slot-kb{flex:none;position:static}.slot-race .race{gap:4px;padding:0 2px 8px}.slot-race .race-feed{min-height:18px;font-size:12px;line-height:18px}.slot-race .race-list{gap:4px;max-height:none;overflow:visible}.slot-race .race-card{box-shadow:none;background:color-mix(in srgb, var(--surface) 88%, transparent);border-width:1.5px;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"ava body acts";column-gap:6px;padding:4px 6px}.slot-race .race-body{gap:2px}.slot-race .race-name{font-size:12px}.slot-race .race-bars{gap:2px}.slot-race .race-bars i{height:5px}.slot-race .race-status{display:none}.slot-race .race-acts{flex-wrap:nowrap;grid-area:acts;gap:4px;margin:0;display:flex}.race-act.btn{width:46px;min-width:46px;height:46px;min-height:46px;box-shadow:var(--shadow-1);border-radius:999px;flex:none;place-items:center;gap:0;padding:0;display:inline-grid}.slot-race .race-acts .btn{flex:none;padding:0}@media (min-width:728px){.slot-race{grid-area:race}.stage{grid-template-areas:"left coach right""left top right""left board right""left kb right""left race right"}}@media (orientation:landscape) and (max-height:520px){.slot-race{grid-area:race!important}.stage,.stage-wrap .stage{grid-template-areas:"top kb""board kb""race race"!important}}@keyframes nudge-shake{0%,to{transform:translate(0)rotate(0)}10%{transform:translate(-9px,3px)rotate(-1.6deg)}20%{transform:translate(8px,-4px)rotate(1.4deg)}30%{transform:translate(-7px,4px)rotate(-1.2deg)}40%{transform:translate(7px,-3px)rotate(1.2deg)}50%{transform:translate(-5px,2px)rotate(-.8deg)}60%{transform:translate(5px,-2px)rotate(.8deg)}75%{transform:translate(-3px,1px)rotate(-.4deg)}90%{transform:translate(2px)rotate(.2deg)}}.game[data-nudged="1"]{transform-origin:50% 40%;animation:1s cubic-bezier(.36,.07,.19,.97) both nudge-shake}@keyframes nudge-pop{0%{opacity:0;transform:translate(-50%,12px)scale(.5)rotate(-12deg)}18%{opacity:1;transform:translate(-50%)scale(1.15)rotate(6deg)}80%{opacity:1;transform:translate(-50%)scale(1)rotate(-3deg)}to{opacity:0;transform:translate(-50%,-14px)scale(.9)}}.nudge-fx{z-index:60;background:var(--surface);box-shadow:var(--shadow-1);pointer-events:none;border-radius:18px;justify-items:center;gap:2px;padding:10px 16px;animation:1s ease-out both nudge-pop;display:grid;position:fixed;top:22%;left:50%}.nudge-fx span{font-size:40px;line-height:1}.nudge-fx b{color:var(--ink);font-size:14px;font-weight:900}:root[data-motion=off] .game[data-nudged="1"],:root[data-motion=off] .nudge-fx{animation:none}@media (prefers-reduced-motion:reduce){.game[data-nudged="1"]{animation:none}}.cat-row{flex-wrap:wrap}.cat-row button{white-space:nowrap;text-overflow:ellipsis;flex:calc(33% - 8px);justify-content:center;align-items:center;gap:4px;min-width:0;padding-inline:6px;font-size:14px;display:inline-flex;overflow:hidden}.cat-row button>span[aria-hidden]{flex:none}@media (max-width:1023px) and (orientation:portrait) and (min-height:700px){.game[data-mode=duel] .slot-coach{display:none}.vs.room{flex-wrap:nowrap;justify-content:space-between;gap:8px;padding:0 4px}.vs.room .react-bar{gap:6px}.vs.room .react:nth-child(2),.vs.room .react:nth-child(3),.vs.room .react:nth-child(6){display:none}.duel-jokers{gap:8px;margin-top:2px}.duel-jokers .joker .jn{display:none}.duel-jokers .joker{min-width:var(--tap);padding:0 12px}.duel-jokers .dj-credits{min-height:32px;padding:0 8px}.board-card{padding:8px 6px}.vault{--ds:clamp(46px, min(calc((min(100vw, 520px) - 52px - 8px * (var(--n) - 1)) / var(--n)), calc((100dvh - 500px) / 2), 88px), 88px)}.vault.compact{--ds:clamp(42px, min(calc((min(100vw, 520px) - 60px - 8px * (var(--n) - 1)) / var(--n)), calc((100dvh - 560px) / 2), 74px), 74px)}.key{height:clamp(var(--tap), 8.2dvh, 76px);max-width:64px;font-size:clamp(17px,2.8dvh,24px)}.keyboard{gap:clamp(5px,1dvh,10px)}}.kb-swap{width:100%;min-height:var(--tap);font:800 14px var(--font,inherit);color:var(--ink);background:color-mix(in srgb, var(--primary) 12%, var(--surface));border:1.5px dashed color-mix(in srgb, var(--primary) 55%, transparent);cursor:pointer;text-align:center;border-radius:14px;justify-content:center;align-items:center;gap:6px;margin:0 0 6px;padding:0 12px;display:flex}.kb-swap small{background:color-mix(in srgb, var(--ink) 10%, transparent);border-radius:999px;padding:1px 8px;font-size:12px;font-weight:800}.kb-swap:disabled{opacity:.55;cursor:not-allowed}p.kb-swap{cursor:default;font-size:13px;line-height:1.3}p.kb-swap.on{border-style:solid;border-color:var(--correct);background:color-mix(in srgb, var(--correct) 16%, var(--surface))}p.kb-swap.spent{opacity:.8;border-style:solid;border-color:color-mix(in srgb, var(--ink-muted) 40%, transparent);background:var(--surface-2)}.rating-card .rc-label{align-items:center;gap:4px;display:inline-flex}.rating-card .rc-label .ico{color:var(--lock,#f5b83d)}.rc-record{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:6px;display:grid}.rc-record>span{background:color-mix(in srgb, var(--ink) 6%, transparent);border-radius:10px;flex-direction:column;align-items:center;gap:1px;min-width:0;padding:4px 4px 3px;display:flex}.rc-record b{align-items:center;gap:3px;font-size:15px;font-weight:800;line-height:1.1;display:inline-flex}.rc-record small{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:10.5px;font-weight:700;line-height:1.1;overflow:hidden}.rc-record .w .ico{color:#1a9d6e}.rc-record .l .ico{color:#d0455a}.rc-record .d .ico{color:var(--ink-muted)}.rating-card .rc-record b{font-size:15px}.rc-prog{text-align:center;flex-direction:column;align-items:stretch;gap:4px;margin-top:8px;display:flex}.rc-bar{background:color-mix(in srgb, var(--ink) 10%, transparent);border-radius:99px;height:8px;overflow:hidden}.rc-bar>span{background:var(--primary);border-radius:99px;height:100%;transition:width .4s;display:block}.rc-prog small{color:var(--ink);opacity:.85;font-size:12px;font-weight:700}.lb li.blur{pointer-events:none;-webkit-user-select:none;user-select:none}.lb li.blur .nm,.lb li.blur .sb,.lb li.blur .avatar-face{filter:blur(5px);opacity:.75}@media (orientation:landscape) and (max-height:520px){.duel-jokers{gap:3px;min-width:0}.duel-jokers .joker{padding:0 6px}.duel-jokers .joker .jn{display:none}.duel-jokers .dj-credits{padding:0 6px}}.dur-row.jk-row{gap:8px}.dur-row.jk-row button{flex:calc(50% - 4px);min-width:0;padding:0 8px}@media (min-width:560px){.dur-row.jk-row button{flex-basis:calc(25% - 6px)}}.lobby-rules{text-align:center;margin:2px 0 0;font-weight:700}.dur-row button.blocked,.dur-row button:disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.4)}.lb.podium{gap:10px;width:100%}.lb.podium li.pod{border:2px solid #0000;gap:10px;position:relative}.pod .pod-medal{flex:none;place-items:center;min-width:34px;display:grid}.pod .pod-av{flex:none;display:inline-flex;position:relative}.pod .rank-crown,.dp .rank-crown{filter:drop-shadow(0 2px #0003);z-index:1;position:absolute;top:-17px;left:50%;transform:translate(-50%)rotate(-7deg)}.pod.pn{background:var(--surface)}.pod.pn .nm{font-size:15px;font-weight:700}.pod.p1{background:linear-gradient(135deg, color-mix(in srgb, #ffd54a 34%, var(--surface)), color-mix(in srgb, #f2b21a 22%, var(--surface)));border-color:#e3a512;border-radius:22px;margin-top:18px;padding:16px 14px;box-shadow:0 10px 26px #e3a51257}.pod.p1 .nm{overflow-wrap:anywhere;font-size:22px;font-weight:900;line-height:1.15}.pod.p1 .sb{color:var(--ink);font-size:20px;font-weight:900}.pod.p2{background:linear-gradient(135deg, color-mix(in srgb, #e7ecf4 40%, var(--surface)), color-mix(in srgb, #b9c3d2 24%, var(--surface)));border-color:#a9b4c4;border-radius:20px;padding:13px;box-shadow:0 6px 16px #78889e47}.pod.p2 .nm{overflow-wrap:anywhere;font-size:19px;font-weight:800}.pod.p2 .sb{color:var(--ink);font-size:17px;font-weight:800}.pod.p3{background:linear-gradient(135deg, color-mix(in srgb, #f2c7a0 38%, var(--surface)), color-mix(in srgb, #c98b55 20%, var(--surface)));border-color:#c98b55;border-radius:18px;padding:11px 12px;box-shadow:0 4px 12px #b8733342}.pod.p3 .nm{overflow-wrap:anywhere;font-size:17px;font-weight:800}.pod.p3 .sb{color:var(--ink);font-size:15px;font-weight:800}.lb.podium li.pod.you{outline:3px solid var(--primary);outline-offset:1px}@media (prefers-reduced-motion:no-preference){.pod.p1 .rank-crown{animation:2.4s ease-in-out infinite crown-bob}}@keyframes crown-bob{0%,to{transform:translate(-50%)rotate(-7deg)translateY(0)}50%{transform:translate(-50%)rotate(-3deg)translateY(-2px)}}.duel-podium{justify-content:center;align-items:flex-end;gap:12px;width:100%;margin:6px 0 2px;padding-top:14px;display:flex}.dp{text-align:center;border:2px solid #0000;border-radius:20px;flex-direction:column;flex:1 1 0;align-items:center;gap:6px;min-width:0;max-width:190px;padding:12px 8px 10px;display:flex;position:relative}.dp .dp-av{margin-top:4px;display:inline-flex;position:relative}.dp .dp-bot{background:var(--surface-2);border-radius:14px;place-items:center;width:48px;height:48px;display:grid}.dp .dp-name{overflow-wrap:anywhere;max-width:100%;line-height:1.15}.dp.p1{background:linear-gradient(160deg, color-mix(in srgb, #ffd54a 34%, var(--surface)), color-mix(in srgb, #f2b21a 22%, var(--surface)));border-color:#e3a512;padding-top:18px;padding-bottom:14px;box-shadow:0 10px 26px #e3a51257}.dp.p1 .dp-name{font-size:20px;font-weight:900}.dp.p2{background:linear-gradient(160deg, color-mix(in srgb, #e7ecf4 40%, var(--surface)), color-mix(in srgb, #b9c3d2 24%, var(--surface)));border-color:#a9b4c4}.dp.p2 .dp-name{font-size:16px;font-weight:800}.dp.you{outline:3px solid var(--primary);outline-offset:1px}@media (max-width:360px){.dp.p1 .dp-name{font-size:18px}.dp.p2 .dp-name{font-size:15px}.pod.p1 .nm{font-size:20px}.pod.p2 .nm{font-size:17px}.pod.p3 .nm{font-size:16px}.pod.pn .nm{font-size:14px}}.lb.podium .pod .nm{text-align:left;align-items:flex-start}.lb.podium .pod .nm em{margin-top:1px}html{-moz-text-size-adjust:100%;text-size-adjust:100%}button,.key,.bdisc,.tabbar,.mode,.card-btn,.hall,.dial,.icon-btn{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}input,textarea{accent-color:var(--primary)}@media (hover:hover) and (pointer:fine){.btn,.mode,.card-btn,.hall,.icon-btn,.tabbar button,.key,.bdisc,.bubble-btn,.bopen,.lb li{transition-property:transform,box-shadow,background-color,filter;transition-duration:.14s}.mode.push:hover,.card-btn.push:hover,.hall:hover{filter:brightness(1.03);transform:translateY(-2px)}.btn.primary:hover:not(:disabled),.bopen:hover:not(:disabled){filter:brightness(1.07);transform:translateY(-1px)}.btn.push:hover:not(:disabled){transform:translateY(-1px)}.icon-btn:hover,.bubble-btn:hover{background:color-mix(in srgb, var(--primary) 10%, var(--surface))}.tabbar button:not(.on):hover{background:color-mix(in srgb, var(--primary) 10%, transparent);color:var(--ink)}.key:hover:not(:disabled):not([data-s]){background:color-mix(in srgb, var(--primary) 14%, var(--key))}.key:hover:not(:disabled){filter:brightness(1.05)}.bdisc:hover:not(:disabled){filter:brightness(1.06)}.lb li:hover{background:color-mix(in srgb, var(--primary) 6%, var(--surface))}.mode.push:active,.card-btn.push:active,.hall:active,.btn.push:active:not(:disabled),.btn:active{filter:none;transform:translateY(2px)scale(.98)}.key:active{filter:none;transform:translateY(2px)scale(.95)}}:root[data-motion=off] .mode:hover,:root[data-motion=off] .card-btn:hover,:root[data-motion=off] .hall:hover,:root[data-motion=off] .btn:hover{transform:none}@media (prefers-reduced-motion:reduce){.mode:hover,.card-btn:hover,.hall:hover,.btn:hover{transform:none!important}}@media (prefers-contrast:more){:root{--tile-border:#6f6590;--ink-muted:#2f2945}:focus-visible{outline-width:4px}.mode,.card-btn,.btn.ghost,.lb li{border:2px solid var(--ink)}}@media (forced-colors:active){:focus-visible{outline:3px solid highlight}.tabbar button.on,.btn.primary,.bopen{forced-color-adjust:none;color:highlighttext;background:highlight}.key,.bdisc,.mode,.card-btn{border:1px solid buttontext}}.app[data-screen=daily],.app[data-screen=practice],.app[data-screen=duel],.app[data-screen=roomEntry],.app[data-screen=roomCreate],.app[data-screen=duelResult],.app[data-screen=roomResult]{font-weight:500}.app[data-screen=daily] .muted,.app[data-screen=practice] .muted,.app[data-screen=duel] .muted,.app[data-screen=roomEntry] .muted,.app[data-screen=roomCreate] .muted{font-weight:600}.btn{font-weight:700}.btn.primary,.btn.tone-go,.btn.tone-duel,.btn.tone-share,.btn.tone-gold,.btn.tone-danger{font-weight:800}.prompt-box{gap:14px;padding:4px 8px 8px}.prompt-box p{max-width:34ch;font-weight:700;line-height:1.4}.prompt-hint{max-width:34ch;font-weight:600;line-height:1.35}.prompt-grace{color:var(--ink);background:color-mix(in srgb, var(--primary) 10%, var(--surface));border-radius:12px;max-width:34ch;padding:8px 12px;font-size:14px;font-weight:800}.result-react{flex-wrap:wrap;justify-content:center;gap:6px;width:100%;margin:2px 0;display:flex;position:relative}.result-react .react:disabled{opacity:.6}.float-react-result{z-index:90;flex-direction:column;align-items:center;gap:2px;display:flex;top:30%}.float-react-result small{color:#fff;text-overflow:ellipsis;white-space:nowrap;background:#2b2340d1;border-radius:999px;max-width:70vw;padding:2px 10px;font-size:14px;font-weight:800;overflow:hidden}@keyframes reactHold{0%,85%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.float-react-result{animation:1.8s linear forwards reactHold;transform:translate(-50%)}}.hist-row.rej{flex-wrap:wrap;justify-content:center}.hist-row.rej em{color:var(--danger)}.hist-row.rej .tile{border:2px dashed var(--tile-border);color:var(--ink-muted);box-shadow:none;background:0 0}.hist-row.rej small{text-align:center;color:var(--ink-muted);flex-basis:100%;margin-top:-2px;font-size:12px;font-weight:700}.lobby-social{text-align:left;flex-direction:column;flex:none;gap:10px;width:100%;max-width:420px;margin-top:6px;display:flex}.lobby-invite{min-height:var(--tap);align-self:center;padding:0 16px}.lobby-chat{background:var(--surface);box-shadow:var(--shadow-1);border-radius:14px;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.lobby-chat .mini-title{margin:0}.chat-log{flex-direction:column;gap:2px;max-height:216px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.chat-log li{align-items:center;gap:8px;min-height:40px;font-size:14px;line-height:1.3;display:flex}.chat-log li b{white-space:nowrap;text-overflow:ellipsis;max-width:40%;font-weight:800;overflow:hidden}.chat-log li[data-you="1"] b{color:var(--primary)}.chat-log li span{flex:1;min-width:0}.chat-log .chat-empty{color:var(--ink-muted)}.chat-mute{width:var(--tap,44px);height:var(--tap,44px);border:1.5px solid color-mix(in srgb, var(--ink) 10%, transparent);background:var(--surface-2);cursor:pointer;border-radius:12px;flex:none;font-size:14px;line-height:1}.chat-muted{flex-wrap:wrap;gap:6px;display:flex}.chat-muted .chip{cursor:pointer;color:var(--ink);min-height:var(--tap,44px);border:0;padding:0 12px;font-size:13px}.chat-chips{flex-wrap:wrap;gap:6px;display:flex}.chat-chip{min-height:var(--tap,44px);min-width:var(--tap,44px);color:var(--ink);background:var(--surface-2);border:1.5px solid color-mix(in srgb, var(--ink) 8%, transparent);cursor:pointer;border-radius:999px;padding:0 12px;font-size:13px;font-weight:800}.chat-chip:disabled{opacity:.55;cursor:default}.invite-list{text-align:left;flex-direction:column;gap:8px;width:100%;margin:0;padding:0;list-style:none;display:flex}.invite-list li{background:var(--surface-2);border-radius:14px;align-items:center;gap:10px;padding:8px 10px;display:flex}.invite-list .nm{flex-direction:column;flex:1;min-width:0;display:flex}.invite-list .nm b{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.invite-list .nm small{color:var(--ink-muted);font-size:12px;font-weight:700}.watch-view{box-sizing:border-box;flex-direction:column;flex:1;gap:12px;width:100%;max-width:520px;margin:0 auto;padding:12px 14px 16px;display:flex;overflow-y:auto}.watch-view .timebar{margin:0}.watch-note{text-align:center;margin:0}.watch-clock{justify-content:center;align-items:baseline;gap:10px;display:flex}.watch-clock b{font-variant-numeric:tabular-nums;font-size:32px;font-weight:800}.watch-clock b.urgent{color:var(--danger)}.watch-clock small{color:var(--ink-muted);font-weight:800}.watch-reveal{background:var(--surface);box-shadow:var(--shadow-1);border-radius:16px;flex-direction:column;align-items:center;gap:4px;padding:12px;display:flex}.watch-reveal b{letter-spacing:.12em;font-size:26px;font-weight:800}.watch-view .btn{align-self:center}@media (orientation:landscape) and (max-height:430px){:root{--rail-w:72px;--tabbar-space:0px}:root.kf{--sal:max(env(safe-area-inset-left,0px), 46px)}.app>.tabbar,.tabbar{width:calc(var(--rail-w) + var(--sal));max-width:none;padding:calc(6px + var(--sat)) 6px calc(6px + var(--sab)) max(6px, var(--sal));border-top:0;border-right:1px solid color-mix(in srgb, var(--ink-muted) 18%, transparent);border-radius:0;flex-direction:column;justify-content:center;gap:6px;margin:0;inset:0 auto 0 0;box-shadow:4px 0 16px #2b234014}.tabbar button{flex-direction:column;flex:none;gap:2px;width:100%;min-height:52px;padding:4px 2px}.tabbar button span{font-size:11px}.app{padding-left:calc(var(--rail-w) + var(--sal));max-width:calc(520px + var(--rail-w) + var(--sal))}.app>.cmp-bar,.cmp-bar{left:calc(var(--rail-w) + var(--sal) + 12px);width:min(496px, calc(100% - var(--rail-w) - var(--sal) - 24px))}.update-bar{left:calc(var(--rail-w) + var(--sal) + 12px)}.stage:not(:has(.dreamscene)){grid-template-columns:minmax(0,1fr) minmax(316px,1fr);align-items:center;gap:0 10px;grid-template-areas:"tb tb""diff len""jk wal""board kb""race race"!important}.stage-wrap .stage:not(:has(.dreamscene)){grid-template-columns:minmax(0,1fr) minmax(316px,1fr);align-items:center;gap:0 10px;grid-template-areas:"tb tb""diff len""jk wal""board kb""race race"!important}.stage:not(:has(.dreamscene)) .slot-top{display:contents}.stage:not(:has(.dreamscene)) .slot-top .jokers-wrap{display:contents}.slot-top .timebar{grid-area:tb;margin-bottom:4px}.slot-top .banner{grid-area:tb}.slot-top .diff-pick,.slot-top .duel-jokers{grid-area:diff;min-width:0;margin:0 0 4px}.slot-top .len-pick,.slot-top .duel-top{grid-area:len;min-width:0;margin:0 0 4px}.slot-top .jokers-wrap>.jokers{grid-area:jk;justify-content:center;width:100%;min-width:0;margin-bottom:4px}.slot-top .duel-jokers{flex-wrap:wrap;justify-content:center;gap:4px 6px}.slot-kb .key.wide{letter-spacing:0;padding-inline:1px;font-size:10px}.slot-top .jokers-wrap>.wallet{grid-area:wal;justify-self:center;margin-bottom:4px}.stage:not(:has(.dreamscene)) .slot-board{grid-area:board!important}.stage:not(:has(.dreamscene)) .vault{--ds:44px}.stage:not(:has(.dreamscene)) .vault.compact{--ds:44px}.stage:not(:has(.dreamscene)) .slot-kb{align-self:center;grid-area:kb!important}.stage:has(.dreamscene){grid-template-columns:minmax(0,1fr) minmax(316px,1fr);align-items:center;gap:0 10px;grid-template-areas:"tb tb""diff len""jk wal""coach kb""board kb""race race"!important}.stage-wrap .stage:has(.dreamscene){grid-template-columns:minmax(0,1fr) minmax(316px,1fr);align-items:center;gap:0 10px;grid-template-areas:"tb tb""diff len""jk wal""coach kb""board kb""race race"!important}.stage:has(.dreamscene) .slot-top{display:contents!important}.stage:has(.dreamscene) .slot-top .jokers-wrap{display:contents}.stage:has(.dreamscene) .slot-coach{align-self:end;min-width:0;margin-bottom:4px;grid-area:coach!important}.stage:has(.dreamscene) .slot-coach .dreamscene{width:40px;height:40px}.stage:has(.dreamscene) .slot-coach .dreamscene .obj{font-size:22px}.stage:has(.dreamscene) .slot-coach .coach-bubble{padding:3px 10px;font-size:12px;line-height:1.25}.stage:has(.dreamscene) .slot-board{align-self:start;grid-area:board!important}.stage:has(.dreamscene) .vault{--ds:44px}.stage:has(.dreamscene) .vault.compact{--ds:44px}.stage:has(.dreamscene) .slot-kb{align-self:center;grid-area:kb!important}.stage .board-card{padding:3px}.stage .cyl,.stage .vault[data-n] .cyl{box-sizing:border-box;border-radius:26px;flex-wrap:wrap;justify-content:center;gap:4px;max-width:100%;padding:4px}.slot-kb .krow{gap:2px}.gmain.stage-wrap{padding:0 8px}.game>.ad-game{bottom:calc(var(--sab) + 2px);right:calc(8px + (max(316px, (100vw - var(--rail-w) - var(--sal) - var(--sar) - 26px) / 2) - 313px) / 2);--adh:44px;margin:0;position:absolute}.game:has(>.ad-game) .slot-kb{margin-bottom:50px}}@media (orientation:landscape) and (max-height:430px) and (min-width:800px){.stage:has(.vault[data-n="4"]){grid-template-columns:minmax(0,1fr) minmax(316px,1.5fr)!important}.stage:has(.vault[data-n="5"]){grid-template-columns:minmax(0,1fr) minmax(316px,1.5fr)!important}.stage-wrap .stage:has(.vault[data-n="4"]){grid-template-columns:minmax(0,1fr) minmax(316px,1.5fr)!important}.stage-wrap .stage:has(.vault[data-n="5"]){grid-template-columns:minmax(0,1fr) minmax(316px,1.5fr)!important}}@media (orientation:landscape) and (max-height:430px) and (max-width:600px){:root{--rail-w:53px}.app>.tabbar,.tabbar{padding-left:max(4px, var(--sal));padding-right:4px}.tabbar button{min-height:48px;padding:2px}.tabbar button span{font-size:10px}.game>.gbar{min-height:44px;padding:0 6px}.gmain.stage-wrap{padding:0 2px}.stage,.stage-wrap .stage{grid-template-columns:minmax(0,1fr) 316px!important;column-gap:4px!important}.stage:not(:has(.dreamscene)):not(:has(.diff-pick)){grid-template-areas:"tb tb""jk wal""board kb""race race"!important}.stage-wrap .stage:not(:has(.dreamscene)):not(:has(.diff-pick)){grid-template-areas:"tb tb""jk wal""board kb""race race"!important}.stage:has(.dreamscene):not(:has(.diff-pick)){grid-template-areas:"tb tb""jk wal""coach kb""board kb""race race"!important}.stage-wrap .stage:has(.dreamscene):not(:has(.diff-pick)){grid-template-areas:"tb tb""jk wal""coach kb""board kb""race race"!important}.stage:not(:has(.dreamscene)):has(.diff-pick):not(:has(.len-pick)){grid-template-areas:"tb tb""jk diff""wal kb""board kb""race race"!important}.stage-wrap .stage:not(:has(.dreamscene)):has(.diff-pick):not(:has(.len-pick)){grid-template-areas:"tb tb""jk diff""wal kb""board kb""race race"!important}.stage:has(.dreamscene):has(.diff-pick):not(:has(.len-pick)){grid-template-areas:"tb tb""jk diff""wal kb""coach kb""board kb""race race"!important}.stage-wrap .stage:has(.dreamscene):has(.diff-pick):not(:has(.len-pick)){grid-template-areas:"tb tb""jk diff""wal kb""coach kb""board kb""race race"!important}.stage:not(:has(.dreamscene)):has(.len-pick){grid-template-areas:"tb tb""jk diff""wal len""board kb""race race"!important}.stage-wrap .stage:not(:has(.dreamscene)):has(.len-pick){grid-template-areas:"tb tb""jk diff""wal len""board kb""race race"!important}.stage:has(.dreamscene):has(.len-pick){grid-template-areas:"tb tb""jk diff""wal len""coach kb""board kb""race race"!important}.stage-wrap .stage:has(.dreamscene):has(.len-pick){grid-template-areas:"tb tb""jk diff""wal len""coach kb""board kb""race race"!important}.stage .cyl,.stage .vault[data-n] .cyl{padding-block:3px}.stage .vault[data-n="7"] .cyl{gap:2px;padding:3px 2px}.stage .board-card:has(.vault[data-n="7"]){padding:1px}.slot-top .jokers-wrap>.jokers,.slot-top .jokers-wrap>.jokers.has-ring{flex-wrap:wrap;justify-content:center;gap:2px;min-width:0;margin-bottom:2px}.slot-top .jokers-wrap>.jokers .joker{flex-direction:column;flex:none;gap:0;min-width:44px;padding:0 4px}.slot-top .jokers-wrap>.jokers .joker small{padding:0 4px;font-size:10px;line-height:12px}.slot-top .jokers-wrap>.wallet{justify-self:center;margin-bottom:2px}.stage .slot-top .diff-pick{margin-bottom:0}.slot-top .len-pick{grid-area:len;margin:2px 0 0}.slot-kb{padding-top:0}.slot-kb .keyboard{gap:3px;padding-bottom:0}.game:has(>.ad-game) .slot-kb{margin-bottom:47px}.game>.ad-game{right:3px;bottom:calc(var(--sab) + 1px)}.stage .orbit:not(:has(button)){display:none}:is(.stage .slot-coach .coach-bubble,.stage:has(.dreamscene) .slot-coach .coach-bubble){clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.stage .slot-coach{justify-self:center}.stage:has(.dreamscene) .slot-coach{margin-bottom:2px}.game .gmain.stage-wrap .stage:has(.duel-top){grid-template-columns:auto minmax(0,1fr) 316px!important;grid-template-areas:"tb tb tb""mini coach dj""mini coach react""board board kb""race race race"!important}.stage:has(.duel-top) .slot-top .duel-top{display:contents}.slot-top .duel-top>.mini{grid-area:mini;align-self:center;gap:1px;padding:3px}.slot-top .duel-top>.react-bar{flex-wrap:nowrap;grid-area:react;justify-content:center;gap:4px;max-width:none;margin-bottom:4px}.slot-top .duel-top>.react-bar .react{flex:none}.slot-top .duel-jokers{flex-wrap:nowrap;grid-area:dj;gap:3px;margin:0 0 4px}.slot-top .duel-jokers .joker,.slot-top .duel-jokers .dj-credits{padding:0 6px}.stage:has(.duel-top) .slot-coach{align-self:center}}
