:root{--bg:#0b1020;--bg-2:#161c36;--glow:#5b3fd9;--surface:#171e3b;--surface-2:#1d2547;--edge:#2e3866;--primary:#7c5cff;--accent:#2ee6c5;--gold:#ffc24b;--danger:#ff4d6d;--success:#3df08f;--text:#fff;--muted:#9aa3c7;--radius:18px;--gap:clamp(12px, 2.6vh, 24px);--safe-top:max(env(safe-area-inset-top,0px), var(--safe-area-inset-top,0px));--safe-bottom:max(env(safe-area-inset-bottom,0px), var(--safe-area-inset-bottom,0px));--safe-left:max(env(safe-area-inset-left,0px), var(--safe-area-inset-left,0px));--safe-right:max(env(safe-area-inset-right,0px), var(--safe-area-inset-right,0px));--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html.native{--safe-bottom:0px;--safe-left:0px;--safe-right:0px}*{box-sizing:border-box}html,body{height:100%;margin:0;overflow:hidden}body{background:radial-gradient(ellipse 80% 55% at 50% 42%, #5b3fd957, transparent 70%), linear-gradient(180deg, var(--bg) 0%, var(--bg-2) 100%);background-color:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}#app{max-width:720px;height:100dvh;padding:calc(var(--safe-top) + 12px) calc(var(--safe-right) + 16px) calc(var(--safe-bottom) + 14px) calc(var(--safe-left) + 16px);margin:0 auto}.screen{align-items:center;gap:var(--gap);flex-direction:column;height:100%;animation:.28s ease-out enter;display:flex}@keyframes enter{0%{opacity:0;transform:translateY(8px)}}.topbar{justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:48px;display:flex}.topbar-title{text-transform:uppercase;letter-spacing:.04em;text-align:center;flex:1;margin:0;font-size:clamp(18px,4.6vw,24px);font-weight:800}.profile{align-items:center;gap:10px;min-width:0;display:flex}.nickname{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.avatar{letter-spacing:.5px;width:42px;height:42px;color:var(--bg);background:linear-gradient(145deg,#2ee6c5,#1b9e8a);border-radius:50%;flex:none;place-items:center;font-size:15px;font-weight:800;display:grid;box-shadow:0 0 0 3px #2ee6c540}.avatar.picture{background:0 0;overflow:hidden}.avatar.picture:not(.framed){box-shadow:none}.avatar.picture>img:not(.avatar-medal){-webkit-user-drag:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.avatar.rival{color:#fff;background:linear-gradient(145deg,#ff4d6d,#b5304b);box-shadow:0 0 0 3px #ff4d6d40}.coins{font-variant-numeric:tabular-nums;align-items:center;gap:6px;font-weight:800;display:inline-flex}.coin-icon{flex:none;width:1.25em;height:1.25em}.balance-chip.with-add:after{content:"+";background:var(--success);color:#03301a;border-radius:50%;flex:none;place-items:center;width:18px;height:18px;margin-left:2px;font-size:15px;font-weight:900;line-height:1;display:grid}.balance-chip{border:1px solid var(--edge);background:#171e3be6;border-radius:999px;padding:8px 14px 8px 10px;font-size:16px}.back-button{background:var(--surface);border:1px solid var(--edge);border-radius:14px;place-items:center;width:48px;height:48px;padding:0;font-size:28px;display:grid}.primary-button,.secondary-button,.pill-button,.small-button{text-transform:capitalize}.primary-button,.secondary-button{letter-spacing:.3px;border-radius:16px;justify-content:center;align-items:center;gap:12px;width:min(100%,420px);min-height:56px;padding:0 28px;font-size:19px;font-weight:800;transition:transform .12s,filter .12s;display:inline-flex}.primary-button{background:linear-gradient(#8f74ff,#6a48f0);box-shadow:0 6px #4528b8,0 12px 30px #7c5cff73}.primary-button .coins{background:#0b102059;border-radius:999px;padding:4px 10px;font-size:16px}.primary-button:active{transform:translateY(4px);box-shadow:0 2px #4528b8,0 6px 18px #7c5cff66}.primary-button:disabled{filter:grayscale()brightness(.6);cursor:default;transform:none}.secondary-button{background:linear-gradient(#2b3568,#1c2449);border:1px solid #8f74ff66;box-shadow:0 5px #0e1330,0 10px 22px #00000059}.secondary-button:active{transform:translateY(3px);box-shadow:0 2px #0e1330,0 6px 14px #0000004d}.secondary-button:disabled{filter:brightness(.6);cursor:default;box-shadow:none;transform:none}.fineprint{color:var(--muted);text-align:center;margin:0;font-size:13px}.toast{left:50%;top:calc(var(--safe-top) + 72px);border:1px solid var(--edge);text-align:center;z-index:20;background:#232c55;border-radius:14px;max-width:min(90vw,480px);padding:12px 18px;font-weight:600;transition:opacity .5s,transform .5s;animation:.25s ease-out enter;position:fixed;transform:translate(-50%);box-shadow:0 10px 30px #00000073}.toast.out{opacity:0;transform:translate(-50%,-10px)}.offline-banner{padding:10px 16px calc(var(--safe-bottom) + 10px);color:#ffd1da;text-align:center;z-index:15;background:#3a1d2b;font-weight:700;display:none;position:fixed;bottom:0;left:0;right:0}body.offline .offline-banner{display:block}.loading{color:var(--muted);justify-content:center}.spinner{border:4px solid var(--edge);border-top-color:var(--accent);border-radius:50%;width:44px;height:44px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.splash-backdrop{z-index:-1;padding-bottom:calc(var(--safe-bottom) + 190px);background:linear-gradient(180deg, #27204f 0%, #1c1931 58%, var(--bg) 100%);justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.splash-backdrop img{object-fit:contain;-webkit-mask-composite:source-in;transform-origin:50% 30%;width:min(100vw,720px);height:auto;max-height:100%;animation:9s ease-in-out infinite alternate breathe;-webkit-mask-image:linear-gradient(#0000 0%,#000 9% 72%,#0000 100%),linear-gradient(90deg,#0000 0%,#000 16% 84%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 9% 72%,#0000 100%),linear-gradient(90deg,#0000 0%,#000 16% 84%,#0000 100%);-webkit-mask-composite:source-in;mask-composite:intersect}@keyframes breathe{0%{transform:scale(1)}to{transform:scale(1.045)}}.splash{justify-content:flex-end}.screen.splash{animation:none}.splash-bottom{flex-direction:column;align-items:center;gap:10px;width:100%;display:flex}.splash-loader{flex-direction:column;align-items:center;gap:10px;width:100%;animation:.4s ease-out enter;display:flex}.splash-loader[hidden],.splash-offline[hidden]{display:none}.splash-status{letter-spacing:.04em;justify-content:space-between;align-items:baseline;width:min(100%,360px);margin:0;font-weight:800;display:flex}.splash-percent{color:var(--gold);font-variant-numeric:tabular-nums;font-size:18px}.splash-bar{background:#ffffff14;border:1px solid #ffffff24;border-radius:999px;width:min(100%,360px);height:16px;position:relative;overflow:hidden;box-shadow:inset 0 2px 6px #00000080}.splash-fill{background:linear-gradient(90deg,#2ee6c5,#4fc3ff 55%,#ffc24b);border-radius:999px;width:0;height:100%;box-shadow:0 0 14px #2ee6c599,inset 0 2px #ffffff59}.splash-shine{background:linear-gradient(100deg,#0000 30%,#ffffff47 45%,#0000 60%) 0 0/200% 100%;animation:1.6s linear infinite splash-shine;position:absolute;inset:0}@keyframes splash-shine{0%{background-position:150% 0}to{background-position:-50% 0}}.splash-tip{max-width:320px;min-height:2.8em;color:var(--muted);text-align:center;margin:0;font-size:13px;line-height:1.4}.splash-version{color:#ffffff52;letter-spacing:.08em;margin:0;font-size:11px}.splash-offline{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);text-align:center;background:#0b1020d6;border:1px solid #ffffff14;border-radius:22px;flex-direction:column;align-items:center;gap:8px;width:min(100%,380px);padding:20px;animation:.3s ease-out enter;display:flex}.splash-offline-icon{color:var(--muted)}.splash-offline h2{margin:0;font-size:20px}.splash-offline-text{color:var(--muted);margin:0 0 6px;font-size:14px;line-height:1.4}.splash-retry{width:100%}.login{--title-zone:calc(19vh - var(--safe-top) - 12px);--tile:clamp(84px, 11vh, 124px);--band-zone:calc(var(--tile) + 36px);grid-template-rows:minmax(var(--title-zone), 1fr) auto minmax(var(--band-zone), 1fr);grid-template-columns:minmax(0,1fr);justify-items:center;gap:0;display:grid}.login>.login-sheet{grid-row:2}body:has(.screen.login){background:url(/cards/login_backdrop.webp) 50% 0 / cover no-repeat fixed, var(--bg)}@media (aspect-ratio>=9/16){.login{--title-zone:calc(100vw * 16 / 9 * .19 - var(--safe-top) - 12px)}}@media (aspect-ratio>=3/4){body:has(.screen.login){background:url(/cards/login_backdrop.webp) 50% 0 / auto 100% no-repeat fixed, radial-gradient(70% 90% at 50% 35%, #2e2275 0%, #120f35 60%, var(--bg) 100%) fixed, var(--bg)}.login{--title-zone:calc(19vh - var(--safe-top) - 12px)}}.login-band{pointer-events:none;grid-row:3;place-self:center start;width:100vw;margin-left:calc(50% - 50vw);padding:18px 0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000);mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000)}.login-band-track{width:max-content;animation:48s linear infinite band-drift;display:flex}.login-band-tile{width:var(--tile);height:var(--tile);object-fit:cover;border:2px solid #a68cff;border-radius:18px;margin-right:16px;box-shadow:0 0 10px #7c5cffd9,0 0 26px #7c5cff66,0 8px 18px #00000073}@keyframes band-drift{to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.login-band-track{animation:none}}@media (height<=700px){.login{--band-zone:0px}.login-band{display:none}.login-sheet{gap:7px;padding:14px 16px 12px}.login-provider{min-height:44px}.login-title{font-size:22px}.login-note{font-size:11px}}.login-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.login-language .segment{min-height:32px;padding:0 12px;font-size:13px}.login-sheet{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1416369e;border:1px solid #ffffff24;border-radius:26px;flex-direction:column;gap:10px;width:min(100%,440px);padding:22px 20px 18px;animation:.5s cubic-bezier(.2,.9,.3,1) sheet-up;display:flex;box-shadow:0 16px 48px #0006}@keyframes sheet-up{0%{opacity:0;transform:translateY(40px)}}.login-title{margin:0;font-size:26px;font-weight:900}.login-subtitle{color:var(--muted);margin:0 0 6px;font-size:14px;line-height:1.4}.login-provider{border-radius:14px;align-items:center;gap:12px;width:100%;min-height:52px;padding:0 14px;font-size:16px;font-weight:800;display:flex;position:relative}.login-provider.google{color:#1f1f1f;background:#fff;border:1px solid #dadce0}.login-provider:disabled{opacity:.5;filter:grayscale(.2);cursor:not-allowed}.profile-google{flex-direction:column;align-items:center;gap:8px;margin:0;padding-top:4px;display:flex}.profile-google-why{color:var(--muted);text-align:center;margin:0;font-size:13px}.profile-google.linked{color:var(--success);flex-flow:wrap;justify-content:center;gap:6px;font-size:14px;font-weight:800}.profile-google.linked small{color:var(--muted);font-weight:600}.login-back{background:var(--surface-2,#222b52);border:1px solid var(--edge);min-height:44px;color:var(--text);border-radius:999px;margin-left:auto;padding:0 16px;font-weight:800}.login-logo{display:flex}.login-label{text-align:center;flex:1;padding-right:22px}.login-divider{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:10px;margin:6px 0 2px;font-size:12px;font-weight:800;display:flex}.login-divider:before,.login-divider:after{content:"";background:#ffffff1f;flex:1;height:1px}.login-guest-form{flex-direction:column;gap:8px;display:flex}.login-field-label{color:var(--muted);font-size:12px;font-weight:800}.login-name-row{gap:8px;display:flex}.login-name{flex:1;min-width:0}.login-dice{background:var(--surface-2);border:1px solid var(--edge);border-radius:14px;flex:none;width:52px;min-height:48px;font-size:22px}.login-dice:active{transform:rotate(-20deg)scale(.94)}.login-problem:empty{display:none}.login-guest{margin-top:4px}.login-note{color:var(--muted);text-align:center;margin:2px 0 0;font-size:12px;line-height:1.4}.home{gap:clamp(8px,1.6vh,16px)}.wordmark{letter-spacing:-.5px;text-shadow:0 3px #2a1f7a;align-items:baseline;gap:8px;margin:0;font-size:clamp(22px,6vw,30px);font-weight:900;display:flex}.logo-war{background:linear-gradient(#ffe08a,#ffc24b 45%,#ff7a45);color:#0000;text-shadow:none;filter:drop-shadow(0 3px #6b3510);-webkit-background-clip:text;background-clip:text}.wordmark-sub{letter-spacing:.4em;color:var(--accent);font-size:.45em;font-weight:800}.home-grid{flex:1;grid-template-rows:1.15fr 1.4fr 1.4fr .95fr;grid-template-columns:1fr 1fr;gap:clamp(8px,1.6vh,12px);width:100%;max-width:620px;min-height:0;max-height:980px;display:grid}.home-tile{border:2px solid color-mix(in srgb, var(--card-accent) 55%, var(--edge));background:var(--surface);min-height:0;box-shadow:0 10px 26px #0006, 0 0 22px color-mix(in srgb, var(--card-accent) 22%, transparent);cursor:pointer;border-radius:18px;padding:0;transition:transform .12s;position:relative;overflow:hidden}.home-tile.wide{grid-column:1/-1}.home-tile:active{transform:scale(.975)}.home-tile .count-badge{top:6px;right:6px}.home-pills{justify-content:center;gap:8px;width:100%;display:flex}.home-pills .pill-button{white-space:nowrap;flex:0 auto;gap:5px;min-width:0;padding:0 14px 0 10px;font-size:clamp(13px,3.6vw,16px);overflow:hidden}.pill-label{text-overflow:ellipsis;overflow:hidden}.pill-value{color:var(--gold);font-weight:900}.home-pills:not(:has(:not([hidden]))){display:none}.picker{gap:clamp(10px,2vh,20px)}.carousel{scroll-snap-type:x mandatory;scrollbar-width:none;touch-action:pan-y;flex:1;gap:16px;width:calc(100% + 32px);min-height:0;margin:0 -16px;padding:8px 0;display:flex;overflow-x:auto;container-type:size}.carousel.swiping{scroll-snap-type:none}.carousel::-webkit-scrollbar{display:none}.carousel-spacer{flex:none}.mode-card{--ratio:.7038;width:min(74cqw, calc((100cqh - 16px) * var(--ratio)));aspect-ratio:var(--ratio);scroll-snap-align:center;scroll-snap-stop:always;background:var(--surface);border:2px solid var(--edge);opacity:.65;will-change:transform, opacity;border-radius:24px;flex:none;align-self:center;transition:transform .25s,border-color .25s,opacity .25s;position:relative;overflow:hidden;transform:scale(.93);box-shadow:0 16px 40px #00000073;container-type:inline-size}.mode-card[aria-selected=true]{opacity:1;border-color:var(--primary);transform:none;box-shadow:0 16px 40px #00000073,0 0 34px #7c5cff66}.mode-image{object-fit:cover;object-position:center top;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.picker-list{overscroll-behavior:contain;scrollbar-width:none;flex-direction:column;flex:1;gap:14px;width:calc(100% + 32px);min-height:0;margin:0 -16px;padding:8px 16px 18px;display:flex;overflow-y:auto;-webkit-mask-image:linear-gradient(#0000 0,#000 10px calc(100% - 18px),#0000 100%);mask-image:linear-gradient(#0000 0,#000 10px calc(100% - 18px),#0000 100%)}.picker-list::-webkit-scrollbar{display:none}.mode-row{--thumb:clamp(110px, 34vw, 200px);--thumb-h:clamp(96px, 29vw, 170px);grid-template-columns:var(--thumb) minmax(0, 1fr);background:linear-gradient(115deg, var(--ground) 0%, #151a33f0 80%);cursor:pointer;border:2px solid #ffffff12;border-radius:22px;flex:none;grid-template-areas:"thumb info""stakes stakes";gap:12px 14px;padding:12px;transition:border-color .2s,box-shadow .2s,transform .12s;display:grid;position:relative;box-shadow:0 10px 26px #00000061}.mode-row:active{transform:scale(.985)}.mode-row[aria-selected=true]{border-color:var(--light);box-shadow:0 10px 26px #00000061, 0 0 24px var(--glow)}.mode-row:focus-visible{outline:2px solid var(--light);outline-offset:2px}.mode-row.soon{cursor:default;opacity:.6}.mode-row.soon .mode-board{filter:grayscale(.6)brightness(.75)}.mode-board{width:var(--thumb);height:var(--thumb-h);grid-area:thumb;place-items:center;display:grid}.mode-board-pic{line-height:0;display:block;position:relative}.mode-board-pic img{width:auto;height:auto;max-width:var(--thumb);max-height:var(--thumb-h);display:block}.mode-board .card-level{inset:auto -6px -2px auto}.mode-info{flex-direction:column;grid-area:info;align-self:center;gap:6px;min-width:0;padding-right:36px;display:flex}.mode-name{letter-spacing:.01em;text-transform:uppercase;color:#fff;text-shadow:0 2px #00000059;margin:0;font-size:clamp(19px,5.6vw,30px);font-weight:900;line-height:1.05}.mode-desc{color:#e5e9ffcc;margin:0;font-size:clamp(13px,3.7vw,18px);line-height:1.3}.mode-stakes{grid-area:stakes;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.mode-stakes>div{background:#0b10208c;border:1px solid #ffffff14;border-radius:14px;flex-direction:column;align-items:center;gap:2px;min-width:0;padding:8px 6px;font-size:clamp(15px,4.4vw,20px);display:flex}.stake-label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:10.5px;font-weight:800}.stake-value{white-space:nowrap;max-width:100%;font-weight:800}.mode-stakes>div>*{white-space:nowrap;max-width:100%}.stake-value.word{font-size:.82em}.coins.prize{color:var(--gold)}.mode-row .soon-tag{grid-area:stakes;justify-self:start;position:static;transform:none}.soon-tag{white-space:nowrap;border:1px solid var(--edge);color:var(--muted);text-transform:uppercase;letter-spacing:.08em;background:#0b1020cc;border-radius:999px;padding:10px 18px;font-size:13px;font-weight:800;position:absolute;bottom:6%;left:50%;transform:translate(-50%)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.dots{gap:4px;display:flex}.dot{place-items:center;width:28px;height:28px;display:grid}.dot:after{content:"";background:var(--edge);border-radius:50%;width:9px;height:9px;transition:width .2s,background .2s}.dot.active:after{background:var(--primary);border-radius:5px;width:24px}.picker-footer{flex-direction:column;align-items:center;gap:10px;width:100%;display:flex}.searching{text-align:center;justify-content:center}.radar{aspect-ratio:1;background:radial-gradient(circle,#2ee6c51a,#0000 70%);border-radius:50%;place-items:center;width:min(62vw,260px);display:grid;position:relative}.radar .avatar{z-index:1;width:64px;height:64px;font-size:22px}.radar-ring{opacity:0;border:2px solid #2ee6c58c;border-radius:50%;animation:2.4s ease-out infinite ping;position:absolute;inset:0}.radar-ring.r2{animation-delay:.8s}.radar-ring.r3{animation-delay:1.6s}@keyframes ping{0%{opacity:1;transform:scale(.25)}to{opacity:0;transform:scale(1)}}.radar-sweep{background:conic-gradient(#2ee6c559,#0000 25%);border-radius:50%;animation:2.2s linear infinite spin;position:absolute;inset:0}.search-title{margin:8px 0 0;font-size:clamp(24px,6.4vw,32px);font-weight:900}.search-mode{color:var(--muted);font-variant-numeric:tabular-nums;margin:0;font-weight:700}.search-note{color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin:0 0 12px;display:inline-flex}.found{text-align:center;justify-content:center}.found-title{color:var(--accent);letter-spacing:.2em;text-transform:uppercase;margin:0;font-weight:800}.found-meta{color:var(--muted);margin:0}.versus{justify-content:center;align-items:center;gap:clamp(10px,4vw,28px);width:100%;display:flex}.player-card{border-radius:var(--radius);background:var(--surface);border:1px solid var(--edge);flex-direction:column;flex:1;align-items:center;gap:10px;min-width:0;max-width:220px;padding:20px 10px;display:flex}.player-card .avatar{width:64px;height:64px;font-size:22px}.player-card .nickname{max-width:100%;font-size:15px}.found .player-card.you{animation:.45s ease-out slide-l}.found .player-card.rival{animation:.45s ease-out slide-r}@keyframes slide-l{0%{opacity:0;transform:translate(-40px)}}@keyframes slide-r{0%{opacity:0;transform:translate(40px)}}.vs{color:var(--gold);text-shadow:0 4px #6b3510,0 0 24px #ffa03c80;font-size:clamp(32px,9vw,48px);font-style:italic;font-weight:900}.countdown{place-items:center;height:120px;display:grid}.countdown-number{text-shadow:0 0 40px #7c5cffcc;font-size:104px;font-weight:900;line-height:1;animation:.9s ease-out pop}@keyframes pop{0%{opacity:0;transform:scale(.88)}}.match{gap:clamp(8px,1.4vh,14px)}.match-top{align-items:center;gap:8px;width:100%;display:flex}.match-top .match-header{flex:1;min-width:0}.match-menu{border-radius:12px;gap:4px;width:40px;height:40px}.match-menu span{width:17px}.match-menu-dialog{position:relative}.match-menu-dialog .popup-close{top:12px;right:12px}.match-header{grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;width:100%;display:grid}.side{align-items:center;gap:8px;min-width:0;display:flex}.side.rival{text-align:right;justify-content:flex-end}.side .avatar{width:38px;height:38px;font-size:13px}.side-text{flex-direction:column;min-width:0;display:flex}.side .nickname{color:var(--muted);font-size:13px}.score{font-variant-numeric:tabular-nums;font-size:26px;font-weight:900;line-height:1.05}.avatar-wrap{flex:none;position:relative}.answered-flag{background:var(--gold);width:22px;height:22px;color:var(--bg);border:2px solid var(--bg);opacity:0;border-radius:50%;place-items:center;font-size:12px;font-weight:900;transition:opacity .2s,transform .25s cubic-bezier(.3,1.6,.5,1);display:grid;position:absolute;bottom:-5px;right:-5px;transform:scale(.4)}.answered-flag.on{opacity:1;transform:none}.progress{gap:6px;display:flex}.pip{background:var(--edge);border-radius:50%;width:12px;height:12px;transition:background .2s,transform .2s}.pip.current{background:var(--text);transform:scale(1.25)}.progress.long{grid-template-columns:repeat(5,10px);gap:5px 6px;display:grid}.progress.long .pip{width:10px;height:10px}.pip.right{background:var(--success)}.pip.wrong{background:var(--danger)}.timer{align-items:center;gap:10px;width:100%;display:flex}.timer-seconds{text-align:right;font-variant-numeric:tabular-nums;min-width:2.2ch;color:var(--accent);flex:none;font-size:17px;font-weight:900}.timer-seconds.low{color:var(--danger)}.timer-track{background:#2e386699;border-radius:5px;flex:1;height:10px;overflow:hidden}.timer-fill{background:linear-gradient(90deg, var(--accent), #6ff2dc);transform-origin:0;height:100%;transform:scaleX(0)}.timer-fill.low{background:linear-gradient(90deg, var(--danger), #ff8fa3)}.maze-area{flex:1;width:calc(100% + 24px);min-height:0;margin:0 -12px;position:relative}.maze-canvas{touch-action:none;width:100%;height:100%;position:absolute;inset:0}.status{border:1px solid var(--edge);text-align:center;background:#171e3bd9;border-radius:14px;justify-content:center;align-items:center;width:100%;min-height:48px;margin:0;padding:0 18px;font-weight:700;display:flex}.status.locked{border-color:#ffffff80}.status.good{border-color:var(--success);color:#bfffd9}.status.bad{border-color:var(--danger);color:#ffc2cd}.result{text-align:center;justify-content:flex-start}.result-title{letter-spacing:1px;margin:clamp(0px,3vh,40px) 0 0;font-size:clamp(52px,15vw,88px);font-weight:900;line-height:1}.result.win .result-title{color:var(--gold);text-shadow:0 6px #6b3510,0 0 40px #ffc24b8c}.result.loss .result-title{color:#c4cbe6;text-shadow:0 6px #232a4f}.result.draw .result-title{color:var(--accent);text-shadow:0 6px #0f5e52,0 0 30px #2ee6c566}.result-reason{color:var(--muted);margin:0;font-weight:600}.result-board{background:var(--surface);border:1px solid var(--edge);border-radius:22px;flex-direction:column;gap:10px;width:min(100%,460px);padding:16px;display:flex}.result-players{gap:12px;display:flex}.result-players .player-card{background:#0b102073;padding:12px 8px}.result-players .avatar{width:48px;height:48px;font-size:17px}.stat-row{border-top:1px solid #2e386699;grid-template-columns:1fr auto 1fr;align-items:center;padding:10px 6px;display:grid}.stat-mine,.stat-theirs{font-variant-numeric:tabular-nums;font-size:20px;font-weight:900}.stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:800}.result-coins{font-size:clamp(30px,8vw,40px)}.result-coins .gain{color:var(--gold)}.result-coins .loss{color:var(--danger)}.result-actions{flex-direction:column;align-items:center;gap:18px;width:100%;margin-top:auto;display:flex}.result-actions>.primary-button,.result-actions>.rematch-button{color:#04261f;background:linear-gradient(#4bebcb,#17b596);box-shadow:0 6px #0b7a64,0 12px 30px #2ee6c559}.result-actions>.primary-button:active,.result-actions>.rematch-button:active{box-shadow:0 2px #0b7a64,0 6px 18px #2ee6c54d}.result-actions>.rematch-button .spinner.mini{border-color:#04261f #04261f4d #04261f4d}@media (height<=700px){.wordmark{display:none}.pill-button{min-height:44px}.result-title{margin-top:0}.result{gap:10px}.result-board{gap:4px;padding:10px 12px}.result-players .player-card{flex-direction:row;justify-content:center;padding:8px}.result-players .avatar{width:34px;height:34px;font-size:13px}.stat-row{padding:6px}.result-coins{font-size:28px}.result-actions{gap:12px}.primary-button,.secondary-button{min-height:52px}}.rotate-notice{z-index:50;background:var(--bg);flex-direction:column;justify-content:center;align-items:center;gap:20px;font-size:20px;font-weight:700;display:none;position:fixed;inset:0}.rotate-phone{border:4px solid var(--accent);border-radius:12px;width:54px;height:92px;animation:1.8s ease-in-out infinite turn}@keyframes turn{0%,30%{transform:rotate(-90deg)}60%,to{transform:rotate(0)}}@media (orientation:landscape) and (pointer:coarse){.rotate-notice{display:flex}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}button.profile{text-align:left;border-radius:999px;min-height:48px;padding:4px 10px 4px 4px}button.profile:active{background:#ffffff0d}.profile-text{flex-direction:column;gap:2px;min-width:0;display:flex}.home-footer{flex-direction:column;align-items:center;gap:12px;width:100%;display:flex}.pill-button{background:linear-gradient(#ffc24b38,#ff8a3d24);border:1px solid #ffc24b8c;border-radius:999px;align-items:center;gap:10px;min-height:50px;padding:0 16px;font-weight:800;animation:2.4s ease-in-out infinite nudge;display:inline-flex;box-shadow:0 0 24px #ffc24b33}.pill-button[hidden]{display:none}.pill-icon{flex:none;font-size:18px}.pill-button>*{flex:none}.pill-button>.pill-label{flex:0 auto;min-width:0}.pill-button .coins{color:var(--gold)}.lucky-button{background:linear-gradient(#ff4d6d38,#7c5cff29);border-color:#ff78a099;box-shadow:0 0 24px #ff4d6d40}@keyframes nudge{0%,80%,to{transform:none}85%{transform:rotate(-2deg)}90%{transform:rotate(2deg)}}.text-button{min-height:48px;color:var(--accent);text-underline-offset:4px;padding:0 16px;font-weight:800;text-decoration:underline}.text-button:disabled{opacity:.4;cursor:default}.player-rating{color:var(--gold);font-size:14px;font-weight:800}.player-rating.practice{color:var(--accent)}.result-practice{color:var(--accent);margin:0;font-weight:700}.result-rewards{flex-wrap:wrap;justify-content:center;align-items:center;gap:24px;display:flex}.result-rating{color:var(--gold);font-size:clamp(22px,6vw,30px);font-weight:900}.result-rating span{font-size:.75em}.result-rating.up span{color:var(--success)}.result-rating.down span{color:var(--danger)}.overlay{z-index:30;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#050812b8;place-items:center;padding:16px;animation:.2s ease-out enter;display:grid;position:fixed;inset:0}.dialog{background:var(--surface);border:1px solid var(--edge);width:min(100%,400px);max-height:calc(100dvh - 32px - var(--safe-top) - var(--safe-bottom));overscroll-behavior:contain;border-radius:22px;flex-direction:column;gap:12px;padding:22px;display:flex;overflow-y:auto;box-shadow:0 20px 50px #00000080}.dialog h2{margin:0;font-size:22px}.dialog.with-list{overflow:hidden}.dialog-list{overscroll-behavior:contain;flex-direction:column;gap:10px;min-height:0;margin:0 -6px;padding:0 6px 4px;display:flex;overflow-y:auto}.dialog-list .mode-choice{flex:none}.dialog-title-room{overflow-wrap:anywhere;padding-right:48px}.dialog:has(>.popup-close)>h2{align-items:center;min-height:44px;padding-right:52px;display:flex}.mode-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:max-content;align-content:start;gap:10px;display:grid}.mode-grid .mode-choice{border-radius:16px;align-items:stretch;gap:0;min-height:0;padding:0;overflow:hidden}.mode-choice-art{background:var(--surface-2,#222b52);flex:none;display:block;overflow:hidden}.mode-choice-art img{aspect-ratio:1;object-fit:contain;box-sizing:border-box;width:100%;height:auto;padding:6px 6px 0;display:block}.mode-grid .mode-choice-name{text-align:center;color:var(--text);-webkit-line-clamp:2;-webkit-box-orient:vertical;padding:4px 8px 0;font-size:13px;font-weight:800;line-height:1.15;display:-webkit-box;overflow:hidden}.mode-grid .mode-choice-stakes{color:var(--text);flex-wrap:nowrap;justify-content:center;gap:4px;padding:7px 6px 8px;font-size:13px;font-weight:800}.mode-grid .mode-choice-stakes .coins{gap:3px}.mode-choice-arrow{color:var(--muted);font-weight:700}.mode-legend{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:-4px 0 0;font-size:12px;font-weight:700}.dialog-hint{color:var(--muted);margin:0;font-size:14px}.dialog-problem{color:#ff9bb0;min-height:1.2em;margin:0;font-size:14px;font-weight:600}.dialog-actions{gap:10px;display:flex}.dialog-actions>*{flex:1;min-height:50px;padding:0 12px;font-size:17px}.text-input{border:2px solid var(--edge);background:var(--bg);width:100%;min-height:52px;color:var(--text);font:inherit;-webkit-user-select:text;user-select:text;border-radius:14px;padding:0 16px;font-size:18px;font-weight:700}.text-input:focus{border-color:var(--primary);outline:none}.stake-value.free,.free-chip{color:var(--success);font-weight:900}.free-chip{background:#0b102059;border-radius:999px;padding:4px 12px}.vs-computer .play-button{color:#0b1020;background:linear-gradient(#7dffb8,#2fcf7c);box-shadow:0 6px #17804a}.vs-note{color:var(--success)}.lucky-overlay{z-index:40}.lucky-overlay.leaving{opacity:0;transition:opacity .18s}.lucky-popup{background:var(--surface);border:2px solid #ffc24ba6;border-radius:26px;width:min(100%,420px);max-height:calc(100% - 8px);animation:.32s cubic-bezier(.3,1.4,.5,1) pop;position:relative;overflow-y:auto;box-shadow:0 24px 60px #0009,0 0 50px #ffc24b40}.popup-close{z-index:2;background:#0b1020b3;border:1px solid #ffffff40;border-radius:50%;place-items:center;width:44px;height:44px;font-size:28px;line-height:1;display:grid;position:absolute;top:10px;right:10px}.lucky-art{position:relative}.lucky-art img{aspect-ratio:720/863;object-fit:cover;object-position:center top;width:100%;max-height:46vh;display:block}.lucky-badge{color:var(--gold);letter-spacing:.06em;text-transform:uppercase;background:#0b1020bf;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:800;position:absolute;bottom:10px;left:12px}.lucky-body{text-align:center;flex-direction:column;gap:10px;padding:14px 20px 20px;display:flex}.lucky-body h2{margin:0;font-size:clamp(20px,5.4vw,24px)}.lucky-body p{color:var(--muted);margin:0;line-height:1.45}.lucky-body strong{color:var(--text)}.lucky-body .coins{vertical-align:middle;display:inline-flex}.lucky-play{color:#0b1020;background:linear-gradient(#ffe08a,#ffb547);margin-top:4px;box-shadow:0 6px #a8701c}.lucky{gap:clamp(6px,1.4vh,14px)}.lucky-prize-chip{background:var(--surface);border:1px solid var(--edge);border-radius:999px;padding:6px 12px}.lucky-status{text-align:center;place-items:center;min-height:2.6em;margin:0;font-weight:700;display:grid}.arena-area{flex:1;width:calc(100% + 24px);min-height:0;margin:0 -12px;position:relative}.arena-canvas{touch-action:manipulation;width:100%;height:100%;position:absolute;inset:0}.ball-row{flex-wrap:wrap;justify-content:center;gap:clamp(6px,2vw,12px);display:flex}.ball-row[hidden]{display:none}.ball-choice{aspect-ratio:1;background:radial-gradient(circle at 32% 30%, #fff 0, var(--ball) 14%, color-mix(in srgb, var(--ball) 45%, black) 72%) no-repeat;border:0;border-radius:50%;width:clamp(44px,12vw,54px);padding:0;transition:transform .15s,box-shadow .15s;box-shadow:0 4px 10px #00000073}.ball-choice[aria-checked=true]{box-shadow:0 0 0 3px var(--bg), 0 0 0 6px #fff, 0 0 22px var(--ball);transform:scale(1.12)}.lucky-actions{flex-direction:column;align-items:center;gap:8px;width:100%;display:flex}.lucky-actions>button{width:100%}.lucky-actions>button[hidden]{display:none}.lucky-result{flex-direction:column;align-items:center;gap:4px;animation:.3s ease-out enter;display:flex}.lucky-result[hidden]{display:none}.lucky-result p{margin:0}.lucky-result-title{color:var(--gold);font-size:clamp(26px,7vw,36px);font-weight:900}.lucky-reward{font-size:clamp(28px,8vw,40px);font-weight:900}.lucky-reward.won{text-shadow:0 0 24px #ffc24bb3}.menu-button{background:var(--surface);border:1px solid var(--edge);border-radius:14px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:5px;width:48px;height:48px;display:flex}.menu-button span{background:var(--text);border-radius:2px;width:20px;height:2.5px}.home .topbar{gap:10px}.home .profile{flex:1}.settings-dialog{gap:4px;position:relative}.settings-dialog h2{align-items:center;min-height:44px;margin:0 0 8px;padding-right:52px;display:flex}.settings-dialog .popup-close{top:12px;right:12px}.setting-row{border-top:1px solid var(--edge);justify-content:space-between;align-items:center;gap:12px;min-height:56px;display:flex}.setting-row.disabled{opacity:.45}.setting-label{flex-direction:column;min-width:0;font-weight:700;display:flex}.setting-label small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.switch{flex:none;width:52px;height:32px;position:relative}.switch input{opacity:0;cursor:pointer;z-index:1;margin:0;position:absolute;inset:0}.switch-track{background:var(--edge);border-radius:999px;transition:background .2s;position:absolute;inset:0}.switch-track:after{content:"";background:#fff;border-radius:50%;width:24px;height:24px;transition:transform .2s;position:absolute;top:4px;left:4px}.switch input:checked+.switch-track{background:var(--success)}.switch input:checked+.switch-track:after{transform:translate(20px)}.switch input:focus-visible+.switch-track{outline:3px solid var(--accent);outline-offset:2px}.segmented{background:var(--bg);border:1px solid var(--edge);border-radius:999px;padding:3px;display:flex}.segment{min-height:40px;color:var(--muted);border-radius:999px;padding:0 14px;font-weight:700}.segment[aria-checked=true]{background:var(--primary);color:#fff}.small-button{background:var(--surface-2,#222b52);border:1px solid var(--edge);border-radius:12px;min-height:44px;padding:0 16px;font-weight:700}.settings-foot{text-align:center;color:var(--muted);margin:10px 0 0;font-size:13px}.level-star{filter:drop-shadow(0 1px 3px #0000008c);flex:none;display:inline-flex}.level-star svg{display:block}.level-star.locked{filter:grayscale(.75)brightness(.7)drop-shadow(0 1px 2px #00000080)}.level-line{color:var(--gold);white-space:nowrap;align-items:center;gap:5px;font-weight:800;display:inline-flex}.profile-text .level-line{font-size:13px}.rating-with-badge{align-items:center;gap:4px;display:inline-flex}.name-row{justify-content:center;align-items:center;gap:5px;min-width:0;max-width:100%;display:flex}.name-row .nickname{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.friend-text .name-row{justify-content:flex-start}.flag{flex:none;font-family:Twemoji Country Flags,Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,sans-serif;font-size:1.05em;line-height:1}.level-progress{flex-direction:column;gap:4px;width:100%;display:flex}.level-track-row{align-items:center;gap:8px;display:flex}.level-track{background:#ffffff14;border-radius:999px;flex:1;height:14px;position:relative;overflow:hidden;box-shadow:inset 0 1px 3px #00000080}.level-ghost,.level-fill{border-radius:999px;position:absolute;inset:0 auto 0 0}.level-ghost{background:#ffc24b4d}.level-fill{background:linear-gradient(90deg, #ffe08a, var(--gold));transition:width 1.1s cubic-bezier(.3,.8,.3,1) .3s;box-shadow:0 0 12px #ffc24bb3}.level-track-labels{color:var(--muted);justify-content:space-between;align-items:baseline;gap:8px;font-size:12px;font-weight:800;display:flex}.level-numbers{color:var(--text);font-variant-numeric:tabular-nums}.level-left{color:var(--gold);white-space:nowrap;margin:0;font-size:13px;font-weight:800}.xp-card{background:linear-gradient(180deg, #ffc24b1f, var(--surface));border:1px solid #ffc24b66;border-radius:18px;flex-direction:column;gap:8px;width:min(100%,420px);padding:12px 14px;display:flex}.xp-card.level-up{border-color:var(--gold);animation:1.4s ease-in-out 3 glow-pulse}.xp-card-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.xp-card-title{min-width:0;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;text-align:left;align-items:baseline;gap:8px;font-size:13px;font-weight:900;display:flex}.xp-mode{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.xp-up{color:var(--gold);white-space:nowrap;flex:none;font-size:16px}.xp-gain{white-space:nowrap;background:var(--gold);color:#2a1a00;border-radius:999px;flex:none;padding:3px 10px;font-weight:900}.xp-gain.none{color:var(--muted);background:0 0;padding:0;font-size:13px;font-weight:700}@keyframes glow-pulse{50%{box-shadow:0 0 26px #ffc24b8c}}.result-rewards{flex-direction:column;align-items:center;gap:10px;width:100%}.profile-dialog{gap:12px;max-height:calc(100dvh - 32px);overflow-y:auto}.profile-head{align-items:center;gap:12px;padding-right:36px;display:flex}.profile-avatar{cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;padding:0;position:relative}.profile-avatar-edit{background:var(--surface-2,#222b52);border:1px solid var(--edge);width:26px;height:26px;color:var(--gold);border-radius:50%;place-items:center;font-size:13px;display:grid;position:absolute;bottom:-6px;left:-6px}.profile-avatar .avatar{width:64px;height:64px;font-size:22px}.profile-avatar-star{position:absolute;bottom:-8px;right:-8px}.profile-name{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.profile-title-row{align-items:center;gap:6px;min-width:0;display:flex}.profile-name h2{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;font-size:20px;overflow:hidden}.rename-button{background:var(--surface-2,#222b52);border:1px solid var(--edge);width:40px;height:40px;color:var(--gold);border-radius:50%;flex:none;place-items:center;font-size:18px;display:grid}.profile-sub{color:var(--muted);font-size:13px;font-weight:700}.profile-country{white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:5px;display:flex;overflow:hidden}.settings-foot.credits{opacity:.7;margin-top:0;font-size:11px}.profile-stats{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.profile-stat{background:var(--surface-2,#222b52);border-radius:12px;flex-direction:column;align-items:center;padding:8px;display:flex}.profile-stat strong{font-size:18px}.profile-stat span{color:var(--muted);font-size:12px;font-weight:700}.leaderboard{gap:8px}.rank-head,.rank-row{grid-template-columns:34px 40px minmax(0,1fr) 46px 68px;align-items:center;gap:8px;display:grid}.rank-head{width:100%;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;padding:0 11px;font-size:10px;font-weight:800;line-height:1.15}.rank-head span{min-width:0}.rank-head span:nth-child(2){grid-column:2/4}.rank-head span:nth-child(3),.rank-head span:nth-child(4){text-align:center}.rank-body{flex-direction:column;flex:1;gap:10px;width:100%;min-height:0;padding-bottom:8px;display:flex;overflow-y:auto}.rank-body>.spinner{align-self:center;margin-top:30px}.rank-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.rank-row{background:var(--surface);border:1px solid var(--edge);border-radius:16px;min-height:60px;padding:8px 10px}.rank-row .avatar{width:40px;height:40px;font-size:14px}.rank-number{text-align:center;color:var(--muted);font-variant-numeric:tabular-nums;font-size:16px;font-weight:900}.rank-row.medal-1 .rank-number{color:#ffd54a;font-size:20px}.rank-row.medal-2 .rank-number{color:#d6deee;font-size:19px}.rank-row.medal-3 .rank-number{color:#e39b5b;font-size:18px}.rank-who{flex-direction:column;min-width:0;display:flex}.rank-name{align-items:center;gap:5px;min-width:0;font-weight:800;display:flex}.rank-name .nickname{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rank-who small{color:var(--muted);font-size:12px;font-weight:600}.rank-level{justify-content:center;display:flex}.rank-rate{flex-direction:column;align-items:center;line-height:1.1;display:flex}.rank-rate strong{font-size:16px}.rank-rate small{color:var(--muted);font-size:11px}.rank-row.mine{border:2px solid var(--accent);background:color-mix(in srgb, var(--accent) 14%, var(--surface));box-shadow:0 0 0 3px #2ee6c52e,0 0 18px #2ee6c540}.rank-pinned{background:linear-gradient(180deg, transparent, var(--bg) 30%);padding-top:6px;position:sticky;bottom:0}.rank-pinned p{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;text-align:center;margin:0 0 6px;font-size:12px;font-weight:800}.rank-note{text-align:center;color:var(--muted);margin:30px 10px;line-height:1.5}.count-badge{z-index:2;background:var(--danger);color:#fff;border:3px solid var(--bg);border-radius:999px;place-items:center;min-width:30px;height:30px;padding:0 8px;font-size:16px;font-weight:900;animation:2.4s ease-in-out infinite nudge;display:grid;position:absolute;top:10px;right:10px;box-shadow:0 0 14px #ff4d6db3}.count-badge[hidden]{display:none}.friends{gap:12px}.add-friend{flex:none}.friends-body{flex-direction:column;flex:1;gap:16px;width:100%;min-height:0;padding-bottom:8px;display:flex;overflow-y:auto}.friends-body>.spinner{align-self:center;margin-top:30px}.friends-section{flex-direction:column;gap:8px;display:flex}.friends-section h2{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:4px 2px;font-size:13px}.friends-empty{text-align:center;color:var(--muted);margin:30px 10px;line-height:1.5}.friend-row{background:var(--surface);border:1px solid var(--edge);border-radius:16px;align-items:center;gap:10px;min-height:64px;padding:8px 10px;display:flex}.friend-row.request{background:color-mix(in srgb, var(--danger) 10%, var(--surface));border-color:#ff4d6d99}.friend-who{text-align:left;flex:1;align-items:center;gap:10px;min-width:0;min-height:48px;display:flex}.friend-text{flex-direction:column;flex:1;min-width:0;display:flex}.friend-text small{color:var(--muted);white-space:nowrap;align-items:center;gap:3px;font-weight:600;display:inline-flex;overflow:hidden}.friend-actions{gap:6px;display:flex}.small-button.accept,.small-button.invite{background:var(--primary);border-color:var(--primary);color:#fff}.small-button:disabled{opacity:.4;cursor:default}.friend-text small.friend-status{gap:6px}.presence{border-radius:50%;flex:none;width:9px;height:9px}.presence.online{background:var(--success);box-shadow:0 0 6px #3df08fbf}.presence.playing{background:var(--gold);box-shadow:0 0 6px #ffc24b99}.presence.offline{background:#6b7396}.mode-choice{background:var(--bg);border:1px solid var(--edge);text-align:left;border-radius:14px;flex-direction:column;align-items:flex-start;gap:4px;min-height:60px;padding:10px 14px;display:flex}.mode-choice:disabled{opacity:.45}.mode-choice-name{font-size:17px;font-weight:800}.mode-choice-stakes{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px;font-size:14px;display:inline-flex}.dialog .popup-close{top:12px;right:12px}.dialog{position:relative}.primary-button.danger{background:linear-gradient(180deg, #ff7a93, var(--danger));box-shadow:0 6px #a3203c}.invite-overlay{z-index:45}.invite-dialog{border-color:#4fc3ff99;animation:.3s cubic-bezier(.3,1.4,.5,1) pop;box-shadow:0 20px 50px #00000080,0 0 40px #4fc3ff40}.invite-from{align-items:center;gap:12px;display:flex}.invite-from h2{font-size:20px}.invite-stakes{flex-wrap:wrap;align-items:center;gap:5px;margin:0;font-weight:700;display:inline-flex}.invite-bar{background:var(--bg);border-radius:999px;place-items:center;height:22px;display:grid;position:relative;overflow:hidden}.invite-bar-fill{background:linear-gradient(90deg, #4fc3ff, var(--primary));transform-origin:0;opacity:.55;position:absolute;inset:0}.invite-left{font-size:13px;font-weight:900;position:relative}.dot{position:relative}.dot-badge{background:var(--danger);border:2px solid var(--bg);border-radius:50%;width:10px;height:10px;position:absolute;top:4px;right:2px;box-shadow:0 0 8px #ff4d6dcc}.dot-badge[hidden]{display:none}.maze-area.signs-mode .maze-canvas{visibility:hidden}.signs-board{flex-direction:column;justify-content:center;align-items:center;gap:clamp(14px,3vh,28px);padding:12px 16px;display:flex;position:absolute;inset:0}.signs-board[hidden]{display:none}.signs-equation{background:linear-gradient(180deg, #1b2350, var(--surface));border:2px solid var(--edge);border-radius:24px;flex-direction:column;align-items:center;gap:10px;width:100%;padding:clamp(16px,3vh,28px) 10px;display:flex;box-shadow:0 16px 40px #00000073}.signs-terms{flex-wrap:nowrap;justify-content:center;align-items:center;gap:clamp(4px,1.6vw,10px);display:flex}.signs-number{text-align:center;min-width:1ch;font-size:clamp(26px,8vw,52px);font-weight:900}.signs-result{color:var(--gold);font-size:clamp(26px,8vw,52px);font-weight:900}.signs-slot{width:clamp(40px,12vw,70px);height:clamp(44px,12vw,70px);color:var(--accent);background:#2ee6c512;border:3px dashed #2ee6c599;border-radius:16px;place-items:center;font-size:clamp(28px,8vw,44px);font-weight:900;transition:transform .12s,background .12s,border-color .12s;display:grid}.signs-slot.filled{color:#fff;background:#2ee6c529;border-style:solid}.signs-slot.over{border-color:var(--gold);background:#ffc24b33;transform:scale(1.12)}.signs-slot.revealed{border-style:solid;border-color:var(--success);color:var(--text);background:#3df08f2e}.signs-hint{color:var(--muted);text-align:center;margin:0;font-size:14px;font-weight:600}.signs-tray{justify-content:center;gap:clamp(10px,3vw,18px);display:flex}.signs-tile{color:#fff;touch-action:none;-webkit-user-select:none;user-select:none;background:linear-gradient(#8f74ff,#5b3fd9);border-radius:18px;width:clamp(58px,16vw,78px);height:clamp(58px,16vw,78px);font-size:clamp(32px,9vw,46px);font-weight:900;box-shadow:0 6px #3a249c,0 10px 20px #00000059}.signs-tile:active{transform:translateY(4px);box-shadow:0 2px #3a249c}.signs-tile:disabled{opacity:.45}.signs-tile.socket{background:0 0;border:0;display:inline-block;box-shadow:inset 0 0 0 3px #8f74ff59}.signs-slot.fixed{border-style:solid;border-color:var(--gold);color:var(--gold);opacity:1;background:#ffc24b2e}.signs-slot.lifting{opacity:.35}.signs-actions{align-items:stretch;gap:10px;width:min(100%,360px);display:flex}.signs-lock{flex:1}.signs-joker{min-height:48px;color:var(--text);background:#ffc24b1a;border:2px solid #ffc24b8c;border-radius:16px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:2px;padding:6px 12px;font-size:13px;font-weight:800;line-height:1.1;display:flex}.signs-joker .joker-icon{font-size:18px}.signs-joker .joker-free{color:var(--success);font-weight:900}.signs-joker:disabled{opacity:.45}.signs-ghost{z-index:60;background:var(--gold);color:#0b1020;pointer-events:none;border-radius:18px;place-items:center;width:64px;height:64px;margin:-32px 0 0 -32px;font-size:40px;font-weight:900;display:grid;position:fixed;box-shadow:0 10px 24px #00000080}.signs-reveal{flex-direction:column;gap:6px;width:min(100%,360px);display:flex}.signs-reveal[hidden]{display:none}.signs-answer{background:var(--surface);border-radius:12px;align-items:center;gap:10px;padding:8px 12px;font-weight:800;display:flex}.signs-answer.rival{color:#ffb3c1}.signs-answer-label{min-width:64px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:13px}.signs-answer-value{letter-spacing:.1em;flex:1;font-size:22px}.maze-area.cubes-mode .maze-canvas{visibility:hidden}.cubes-board{flex-direction:column;gap:14px;padding:8px 12px 12px;display:flex;position:absolute;inset:0}.cubes-board[hidden]{display:none}.cubes-stage{flex:1;min-height:0;position:relative}.cubes-canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.cubes-chip{border:1px solid var(--edge);white-space:nowrap;background:#0b1020cc;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-weight:800;display:flex;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.cubes-chip[hidden]{display:none}.cubes-swatch{background:var(--swatch);border-radius:7px;width:26px;height:26px;box-shadow:inset 0 -6px #00000040}.cube-options{grid-template-columns:repeat(3,1fr);align-self:center;gap:12px;width:min(100%,460px);display:grid}.cube-options.waiting{visibility:hidden}.cube-options:not(.waiting) .cube-option{animation:.28s cubic-bezier(.2,1.4,.4,1) both option-in}.cube-options:not(.waiting) .cube-option:nth-child(2){animation-delay:50ms}.cube-options:not(.waiting) .cube-option:nth-child(3){animation-delay:.1s}@keyframes option-in{0%{opacity:0;transform:translateY(14px)scale(.9)}}.cube-option{border:2px solid var(--edge);color:#fff;font-variant-numeric:tabular-nums;background:linear-gradient(#2a3570,#1a2148);border-radius:20px;min-height:clamp(64px,11vh,92px);font-size:clamp(30px,9vw,44px);font-weight:900;position:relative;box-shadow:0 6px #0e1330}.cube-option:disabled{opacity:.45}.cube-option.picked{opacity:1;border-color:var(--gold);background:linear-gradient(#5a4a1a,#3a2e0e)}.cube-option.right{opacity:1;border-color:var(--success);background:linear-gradient(#1f7a4d,#0f4a2d)}.cube-option.wrong{opacity:1;border-color:var(--danger);background:linear-gradient(#7a1f33,#4a0f1e)}.cube-option.rival-pick:after{content:"";background:#ff6f91;border-radius:50%;width:14px;height:14px;position:absolute;top:8px;right:8px;box-shadow:0 0 8px #ff6f91e6}.maze-area.sticks-mode .maze-canvas{visibility:hidden}.sticks-board{flex-direction:column;justify-content:center;align-items:center;gap:clamp(12px,2.6vh,24px);padding:12px;display:flex;position:absolute;inset:0}.sticks-board[hidden]{display:none}.sticks-card{background:radial-gradient(120% 90% at 50% 0,#3a2a1c,#1e1610 70%);border:2px solid #5a4029;border-radius:24px;width:100%;padding:clamp(18px,4vh,34px) clamp(8px,2vw,18px);box-shadow:0 16px 40px #00000073,inset 0 1px #ffffff0f}.sticks-svg{touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:auto;max-height:34vh;display:block}.match-wood{fill:#e9c891;stroke:#96683a;stroke-width:2px}.match-head{fill:#a8442f;stroke:#5c2418;stroke-width:2px}.match.fixed .match-wood{fill:#c9ab78}.match.fixed .match-head{fill:#7d3a2c}.match{transition:transform .15s}.match.selected .match-wood{fill:#ffe7a8;stroke:var(--gold);stroke-width:4px}.match.selected{filter:drop-shadow(0 0 8px #ffc24be6)}.match.solution .match-wood{fill:#b9ffd3;stroke:var(--success);stroke-width:4px}.match.solution{filter:drop-shadow(0 0 10px #3df08fe6)}.place{fill:#ffffff06;stroke:#ffffff21;stroke-width:2px;stroke-dasharray:6 6}.place.open{stroke:#ffc24b8c;fill:#ffc24b14}.place.over{stroke:var(--gold);fill:#ffc24b4d;stroke-dasharray:none}.place-hit{fill:#0000;cursor:pointer}.hint-frame{fill:none;stroke:#4fc3ff;stroke-width:5px;filter:drop-shadow(0 0 6px #4fc3ffe6)}.solution-from{fill:none;stroke:#3df08fb3;stroke-width:3px;stroke-dasharray:5 5}.sticks-hint{min-height:1.3em;color:var(--muted);text-align:center;margin:0;font-size:14px;font-weight:700}.sticks-hint.warn{color:var(--danger)}.sticks-reset{flex:none;width:52px;min-height:48px;padding:0;font-size:22px}.match-ghost{z-index:60;pointer-events:none;background:linear-gradient(90deg,#ffe7a8 80%,#a8442f 80%);border-radius:5px;width:64px;height:10px;margin:-5px 0 0 -32px;position:fixed;box-shadow:0 0 14px #ffc24be6}.match-ghost[hidden]{display:none}.ready{flex-direction:column;align-items:center;gap:10px;animation:.3s ease-out enter;display:flex}.ready[hidden]{display:none}.ready-title{letter-spacing:.04em;text-transform:uppercase;color:var(--gold);margin:0;font-size:clamp(20px,5.4vw,26px);font-weight:900}.ready-dial{aspect-ratio:1;place-items:center;width:clamp(74px,20vw,96px);display:grid;position:relative}.ready-ring{position:absolute;inset:0;overflow:visible;transform:rotate(-90deg)}.ready-track{fill:#0b102099;stroke:#ffffff1a;stroke-width:8px}.ready-progress{fill:none;stroke:var(--accent);stroke-width:8px;stroke-linecap:round;filter:drop-shadow(0 0 6px #2ee6c5b3)}.ready-number{font-size:clamp(30px,8vw,40px);font-weight:900;position:relative}.ready-number.pop{animation:.35s cubic-bezier(.3,1.6,.5,1) pop}.result-coins{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex}.result-coins.lost{color:var(--muted);font-size:clamp(18px,4.8vw,22px);font-weight:800}.result-coins-note{color:var(--muted);font-size:14px;font-weight:700}.avatar-dialog{gap:12px}.avatar-head{flex-direction:column;align-items:center;gap:6px;display:flex}.avatar-preview .avatar{width:96px;height:96px;font-size:32px}.avatar-caption{margin:0;font-size:16px;font-weight:800}.avatar-grid{grid-template-columns:repeat(4,1fr);gap:10px;padding:4px;display:grid}.avatar-tile{aspect-ratio:1;background:var(--surface-2,#222b52);cursor:pointer;border:2px solid #0000;border-radius:16px;place-items:center;min-height:48px;padding:6px;display:grid}.avatar-tile .avatar{width:100%;max-width:64px;height:100%;max-height:64px;box-shadow:none;font-size:18px}.avatar-tile[aria-pressed=true]{border-color:var(--gold);box-shadow:0 0 14px #ffc24b73}.signs-board.revealing .signs-tray,.signs-board.revealing .signs-actions,.signs-board.revealing .signs-hint,.sticks-board.revealing .signs-actions,.sticks-board.revealing .sticks-hint{display:none}.signs-equation.right,.sticks-card.right{border-color:var(--success);box-shadow:0 0 0 1px var(--success), 0 16px 40px #00000073}.signs-equation.wrong,.sticks-card.wrong{border-color:var(--danger);box-shadow:0 0 0 1px var(--danger), 0 16px 40px #00000073}.signs-equation,.sticks-card{transition:border-color .25s,box-shadow .25s}.signs-slot.gliding{z-index:3;pointer-events:none;margin:0;position:absolute}.signs-slot.settled{border-style:solid}.match.flying{filter:drop-shadow(0 6px 8px #00000080)}.friend-text .formerly{color:var(--muted);font-size:12px;font-style:italic}.maze-area.shapes-mode .maze-canvas{visibility:hidden}.shapes-board{flex-direction:column;justify-content:center;align-items:center;gap:clamp(10px,2vh,18px);padding:8px 14px;display:flex;position:absolute;inset:0}.shapes-board[hidden]{display:none}.shapes-card{background:linear-gradient(180deg, #1b2350, var(--surface));border:2px solid var(--edge);border-radius:24px;flex-direction:column;align-items:center;gap:clamp(6px,1.4vh,12px);width:100%;padding:clamp(12px,2.4vh,22px) 12px;transition:border-color .25s,box-shadow .25s;display:flex;box-shadow:0 16px 40px #00000073}.shapes-card.right{border-color:var(--success);box-shadow:0 0 0 1px var(--success), 0 16px 40px #00000073}.shapes-card.wrong{border-color:var(--danger);box-shadow:0 0 0 1px var(--danger), 0 16px 40px #00000073}.shape-line{flex-wrap:nowrap;justify-content:center;align-items:center;gap:clamp(4px,1.4vw,10px);display:flex}.shape-term{display:inline-flex}.shape-icon{width:calc(clamp(30px, 8.6vw, 46px) * var(--scale,1));height:calc(clamp(30px, 8.6vw, 46px) * var(--scale,1));filter:drop-shadow(0 3px 4px #00000059);flex:none}.shape-op{color:var(--text);text-align:center;min-width:.6em;font-size:clamp(22px,6.4vw,34px);font-weight:900}.shape-op.equals{color:var(--muted)}.shape-result{color:var(--gold);font-variant-numeric:tabular-nums;min-width:1.4em;font-size:clamp(24px,7vw,38px);font-weight:900}.shape-result.ask{color:#ffeb5c;text-shadow:0 0 14px #ffeb5c99}.shape-rule{background:var(--edge);border-radius:2px;width:70%;height:2px;margin:2px 0}.shapes-tools{align-items:center;gap:10px;width:100%;min-height:48px;display:flex}.shapes-tools .shapes-joker[hidden]{display:none}.shape-values{flex-wrap:wrap;flex:1;justify-content:center;gap:8px;display:flex}.shape-value{background:#4fc3ff24;border:1px solid #4fc3ff80;border-radius:999px;align-items:center;gap:4px;padding:4px 12px 4px 8px;font-size:18px;font-weight:900;animation:.3s ease-out both line-in;display:inline-flex}.shape-value.revealed{background:#3df08f1f;border-color:#3df08f73}.shape-options{grid-template-columns:repeat(2,1fr);width:min(100%,420px)}.shape-options .cube-option{min-height:clamp(52px,8.5vh,76px);font-size:clamp(26px,7.4vw,38px)}.avatar.framed{position:relative}.avatar.frame-bronze{box-shadow:0 0 0 3px #d9904a,0 0 0 6px #6e3e14}.avatar.frame-silver{box-shadow:0 0 0 3px #e8edf7,0 0 0 6px #7c879e,0 0 10px #dce3f08c}.avatar.frame-gold{box-shadow:0 0 0 3px #ffd45c,0 0 0 6px #9c6a10,0 0 16px #ffc24bbf}.avatar.frame-neon{animation:2.4s ease-in-out infinite frame-neon;box-shadow:0 0 0 3px #2ee6ff,0 0 0 6px #ff4dd8,0 0 18px #2ee6ffd9}.avatar.frame-fire{animation:1.2s ease-in-out infinite frame-fire;box-shadow:0 0 0 3px #ffc24b,0 0 0 6px #ff4d2e,0 0 18px #ff5a28e6}.avatar.frame-diamond{animation:3s ease-in-out infinite frame-diamond;box-shadow:0 0 0 3px #f2fcff,0 0 0 6px #6fd3ff,0 0 20px #6fd3fff2}@keyframes frame-neon{50%{box-shadow:0 0 0 3px #ff4dd8,0 0 0 6px #2ee6ff,0 0 22px #ff4dd8d9}}@keyframes frame-fire{50%{box-shadow:0 0 0 3px #ffe07a,0 0 0 6px #ff7a2e,0 0 26px #ff7828}}@keyframes frame-diamond{50%{box-shadow:0 0 0 3px #fff,0 0 0 6px #b8ecff,0 0 28px #b8ecff}}@media (prefers-reduced-motion:reduce){.avatar.framed{animation:none}}.screen.store{gap:12px}.store-tabs{align-self:center}.store-body{flex-direction:column;flex:1;gap:12px;width:100%;min-height:0;padding:8px 2px 16px;display:flex;overflow-y:auto}.store-body>.spinner{align-self:center;margin-top:30px}.store-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.store-grid.coins{grid-template-columns:repeat(2,minmax(0,1fr))}.store-item{border:1px solid var(--edge);color:var(--text);background:linear-gradient(#232c5e,#171d42);border-radius:18px;flex-direction:column;align-items:center;gap:8px;min-width:0;padding:16px 8px 12px;display:flex;position:relative;box-shadow:0 6px #0e1330}.store-item .avatar{width:clamp(56px,16vw,76px);height:clamp(56px,16vw,76px);font-size:22px}.store-item.owned{background:linear-gradient(#1e3a44,#13263a)}.store-name{text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:14px;font-weight:800;overflow:hidden}.store-price{color:var(--gold);background:#ffc24b24;border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:14px;font-weight:900;display:inline-flex}.store-price.owned{color:#8fd8ff;background:#4fc3ff24}.store-price.using{color:var(--success);background:#3df08f29}.store-price.money{background:var(--primary);color:#fff;padding:8px 16px;font-size:16px}.store-item.pack{padding-top:22px}.store-item.pack.best{border-color:var(--gold);box-shadow:0 6px #0e1330,0 0 18px #ffc24b59}.store-amount{color:var(--gold);font-variant-numeric:tabular-nums;font-size:clamp(24px,7vw,32px);font-weight:900}.store-bonus{color:var(--success);min-height:1.2em;font-size:13px;font-weight:800}.store-ribbon{background:var(--gold);color:#2a1a00;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:900;position:absolute;top:-10px;left:50%;transform:translate(-50%)}.store-note{text-align:center;color:var(--muted);margin:4px 0 0;font-size:12px}.coin-pile{width:92px;height:60px;display:block;position:relative}.pile-coin{left:calc(14px + var(--k) * 11px);bottom:calc(var(--k) * 5px);filter:drop-shadow(0 3px 2px #0006);width:34px;height:34px;position:absolute}.pile-coin:nth-child(2n){bottom:calc(var(--k) * 5px + 12px)}.pile-coin svg{width:100%;height:100%}.store-sheet{text-align:center;align-items:stretch;gap:10px}.store-preview{place-items:center;padding:12px 0 4px;display:grid}.store-preview .avatar{width:112px;height:112px;font-size:36px}.store-preview.coins .coin-pile{height:80px;transform:scale(1.5)}.store-title{margin:0}.store-buy{justify-content:center;align-items:center;gap:6px;display:inline-flex}.store-fine{color:var(--muted);margin:0;font-size:12px}.store-notice{color:#ffd27a}.store-overlay{align-items:flex-end}@media (height>=700px){.store-overlay{align-items:center}}.coins-dialog{text-align:center;align-items:stretch}.coins-dialog-icon{place-items:center;display:grid}.coins-dialog-icon .coins svg{width:56px;height:56px}.avatar-tile.more{color:var(--gold);flex-direction:column;gap:2px;display:flex}.avatar-more{font-size:30px;font-weight:900;line-height:1}.avatar-tile.more small{font-size:11px;font-weight:800}.secondary-button.danger-text{color:#ff9bb0;border-color:#ff4d6d73}.legal-row{gap:8px}.legal-link{color:var(--muted);text-underline-offset:3px;align-items:center;min-height:44px;font-size:14px;font-weight:700;text-decoration:underline;display:inline-flex}.settings-foot.player-id{-webkit-user-select:text;user-select:text;font-variant-numeric:tabular-nums;margin-top:4px;font-size:12px}.setting-row.delete-row{justify-content:flex-start;min-height:52px}.legal-row{justify-content:space-between;min-height:48px}.danger-link{color:#ff8aa3;background:0 0;border:0;min-height:44px;padding:0;font-size:15px;font-weight:800}.delete-dialog .dialog-hint strong{color:var(--text);overflow-wrap:anywhere;font-size:18px;display:block}.delete-dialog .dialog-actions>.primary-button{flex:1.6;font-size:16px}.login-legal{text-align:center;color:var(--muted);margin:0;font-size:12px}.login-legal .legal-link{min-height:32px;font-size:12px}.feedback-dialog{flex-direction:column;gap:12px;display:flex}.feedback-dialog .segmented{width:100%}.feedback-dialog .segment{flex:1;padding:0 6px}.feedback-text{border:2px solid var(--edge);background:var(--bg);width:100%;min-height:130px;max-height:34vh;color:var(--text);font:inherit;resize:none;-webkit-user-select:text;user-select:text;border-radius:14px;padding:12px 14px;font-size:16px}.feedback-text:focus{border-color:var(--primary);outline:none}.feedback-count{text-align:right;color:var(--muted);margin:-6px 0 0;font-size:12px;font-weight:700}@media (height<=700px){.feedback-text{min-height:90px}}.howto-overlay{z-index:40}.howto-dialog{gap:8px;width:min(100%,440px);padding:14px 18px 16px}.howto-title{text-align:center;letter-spacing:.12em;text-transform:uppercase;margin:0;padding:0 40px;font-size:17px!important}.howto-game{text-align:center;color:var(--accent);margin:0;font-size:20px;font-weight:900}.howto-stage{border:1px solid var(--edge);pointer-events:none;background:#0508128c;border-radius:16px;flex:none;width:100%;height:clamp(190px,34dvh,330px);margin:0;overflow:hidden}.howto-stage .signs-joker,.howto-stage .signs-reveal,.howto-stage .signs-hint,.howto-stage .sticks-hint,.howto-stage .shapes-joker{display:none}.howto-stage .signs-board,.howto-stage .sticks-board,.howto-stage .shapes-board,.howto-stage .cubes-board{gap:10px;padding:8px 10px}.howto-stage .signs-equation,.howto-stage .sticks-card{padding:12px 8px}.howto-stage .sticks-svg{max-height:20vh}.howto-stage .signs-tile{width:52px;height:52px;font-size:30px;box-shadow:0 4px #3a249c}.howto-stage .cube-option,.howto-stage .shape-options .cube-option{min-height:48px;font-size:26px}.howto-fallback{object-fit:contain;width:100%;height:100%}.howto-steps{flex-direction:column;gap:5px;margin:2px 0 0;padding-left:22px;font-size:14px;line-height:1.3;display:flex}.howto-steps li::marker{color:var(--accent);font-weight:900}.howto-winner{text-align:center;color:var(--muted);margin:0;font-size:13px;font-weight:700}.howto-go{min-height:52px;margin-top:2px}.howto-lead{text-align:center;margin:0}.howto-rows{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.howto-row{background:var(--surface-2);border:1px solid var(--edge);border-radius:14px;align-items:center;gap:10px;padding:6px 4px 6px 6px;display:flex}.howto-row img{object-fit:cover;border-radius:10px;flex:none;width:56px;height:56px}.howto-row-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.howto-row-text strong{font-size:15px}.howto-row-text span{color:var(--muted);font-size:12.5px;line-height:1.25}.howto-badge{z-index:3;color:#fff;background:0 0;border:0;place-items:center;width:48px;height:48px;padding:0;display:grid;position:absolute;top:4px;right:4px}.howto-badge>span{background:#0b1020c7;border:2px solid #ffffffbf;border-radius:50%;place-items:center;width:30px;height:30px;font-size:17px;font-weight:900;line-height:1;display:grid}.howto-badge.small{flex:none;position:static}.howto-badge .ui-icon{font-size:18px}.demo-finger{z-index:5;opacity:0;pointer-events:none;background:radial-gradient(circle,#ffffff8c,#ffffff40 70%);border:2px solid #fffc;border-radius:50%;width:46px;height:46px;margin:-23px 0 0 -23px;transition:opacity .25s,scale .12s;position:absolute;top:0;left:0;box-shadow:0 6px 16px #00000073}.demo-finger.on{opacity:1}.demo-finger.down{scale:.78}.demo-ripple{z-index:4;pointer-events:none;border:3px solid #fff;border-radius:50%;width:24px;height:24px;margin:-12px 0 0 -12px;animation:.65s ease-out forwards demo-ripple;position:absolute}@keyframes demo-ripple{0%{opacity:.95;transform:scale(.4)}to{opacity:0;transform:scale(3.4)}}.howto-stage .signs-board{gap:8px}.howto-stage .signs-equation{gap:4px;padding:8px 6px}.howto-stage .signs-number,.howto-stage .signs-result{font-size:32px}.howto-stage .signs-slot{width:44px;height:46px;font-size:28px}.howto-stage .signs-tile{border-radius:14px;width:46px;height:46px;font-size:28px}.howto-stage .signs-lock,.howto-stage .sticks-board .signs-lock{min-height:40px;padding:0 12px;font-size:16px}.howto-stage .sticks-reset{min-height:40px}.howto-stage .sticks-board{gap:8px}.howto-stage .shapes-board{gap:6px}.howto-stage .shapes-card{gap:2px;padding:8px 10px}.howto-stage .shapes-tools{min-height:0}.howto-stage .shape-value{padding:2px 10px 2px 6px;font-size:14px}.howto-stage .signs-board{gap:6px;padding:6px 10px}.howto-stage .signs-tile{width:42px;height:42px;font-size:26px}.howto-stage .shape-icon{width:calc(24px * var(--scale,1));height:calc(24px * var(--scale,1))}.howto-stage .shape-op{font-size:20px}.howto-stage .shape-result{font-size:22px}.howto-stage .shape-options{grid-template-columns:repeat(4,1fr);gap:8px}.howto-stage .shape-options .cube-option{min-height:44px;font-size:22px}.howto-dialog.mixed{overflow:hidden}.howto-dialog.mixed .howto-rows{overscroll-behavior:contain;flex:auto;min-height:0;overflow-y:auto}.howto-dialog.mixed .howto-row img{width:46px;height:46px}.howto-dialog.mixed .howto-row-text span{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.howto-dialog.mixed .howto-lead{font-size:13px}.legal-sheet{width:min(100%,720px);height:100%;max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 32px);background:var(--surface);border:1px solid var(--edge);border-radius:22px;flex-direction:column;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 60px #00000080}.legal-head{border-bottom:1px solid var(--edge);align-items:center;min-height:60px;padding:8px 64px 8px 18px;display:flex}.legal-head h2{margin:0;font-size:18px;font-weight:900}.legal-head .popup-close{top:8px;right:8px}.legal-frame{background:#0b1020;border:0;flex:1;width:100%}.ui-icon{flex:none;place-items:center;width:1em;height:1em;line-height:0;display:inline-grid}.ui-icon svg{width:100%;height:100%;display:block;overflow:visible}.signs-tile:not(.socket){place-items:center;padding:0;display:grid}.signs-slot{padding:0}.signs-ghost .ui-icon{font-size:40px}.popup-close{padding:0}.rename-button{padding:0;font-size:20px}.profile-avatar-edit{font-size:16px}.sticks-reset{place-items:center;font-size:26px;display:inline-grid}.small-button .ui-icon{font-size:18px}.small-button:has(>.ui-icon){place-items:center;display:inline-grid}.settings-dialog{gap:0}.settings-dialog h2{margin:0 0 6px;padding-right:48px}.settings-dialog .setting-row{min-height:60px;padding:6px 0}.settings-dialog .setting-label{flex:1 1 0;min-width:0;line-height:1.25}.settings-dialog .setting-label small{max-width:100%;margin-top:1px;font-size:13px;display:block}.settings-dialog .small-button{white-space:nowrap;text-overflow:ellipsis;flex:none;min-width:96px;max-width:55%;padding:0 14px;overflow:hidden}.settings-dialog .segmented{flex:none}.settings-dialog .segment{white-space:nowrap}.settings-dialog .legal-row{flex-wrap:wrap;gap:6px 12px}.settings-dialog .legal-link{white-space:nowrap}.avatar{position:relative}.avatar.picture{overflow:visible}.avatar.picture>img:not(.avatar-medal){border-radius:50%}.avatar img.avatar-medal{aspect-ratio:1;pointer-events:none;filter:drop-shadow(0 1px 2px #0000008c);-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:max(16px,44%);height:auto;display:block;position:absolute;bottom:-6%;right:-6%}.profile-avatar-star{top:-8px;bottom:auto;right:-8px}.rank-row,.side,.found .player-card{cursor:pointer;-webkit-tap-highlight-color:transparent}.rank-row:focus-visible,.side:focus-visible,.found .player-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.medal-strip{scroll-snap-type:x proximity;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex-wrap:nowrap;gap:8px;margin:0 -2px;padding:4px 2px 8px;display:flex;overflow:auto hidden}.medal-chip{text-align:center;width:96px;min-height:48px;color:inherit;font:inherit;background:var(--surface-2);scroll-snap-align:start;border:2px solid #0000;border-radius:14px;flex-direction:column;flex:none;align-items:center;gap:2px;padding:8px 4px;display:flex}button.medal-chip{cursor:pointer;-webkit-tap-highlight-color:transparent}.medal-chip.shown{border-color:var(--gold);box-shadow:0 0 12px #ffc24b66}.medal-chip .medal-img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:56px;height:56px;display:block}.medal-chip.locked .medal-img{filter:grayscale()brightness(.6);opacity:.5}.medal-mode{overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;width:100%;min-height:2.4em;font-size:11px;font-weight:800;line-height:1.2;display:-webkit-box;overflow:hidden}.medal-tier{width:100%;color:var(--gold);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:900;overflow:hidden}.medal-chip.locked .medal-tier{color:var(--muted);font-weight:700}.medal-left{width:100%;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:10.5px;font-weight:700;overflow:hidden}.profile-medals{flex-direction:column;gap:4px;min-width:0;display:flex}.pcard-medals-title{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin:4px 0 0;font-size:13px;font-weight:800}.profile-medals-hint{color:var(--muted);margin:0;font-size:12px}.pcard-dialog{gap:12px}.pcard-head{align-items:center;gap:14px;padding-right:36px;display:flex}.pcard-head .avatar{width:72px;height:72px;margin:6px;font-size:24px}.pcard-head .profile-name h2{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:20px;overflow:hidden}.medal-dialog{text-align:center;align-items:center;gap:10px}.medal-dialog h2{font-size:20px}.medal-kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin:0;font-size:14px;font-weight:900}.medal-hero{place-items:center;width:170px;height:170px;display:grid;position:relative}.medal-hero:before{content:"";background:radial-gradient(circle,#ffd24a8c,#ffd24a00 68%);border-radius:50%;animation:2.4s ease-in-out infinite medal-glow;position:absolute;inset:-8px}.medal-shine{border-radius:50%;width:150px;height:150px;animation:.8s cubic-bezier(.2,1.3,.4,1) both medal-in;position:relative;overflow:hidden}.medal-shine .medal-img{width:150px;height:150px}.medal-shine:after{content:"";background:linear-gradient(115deg,#0000 38%,#ffffffd9 50%,#0000 62%);border-radius:50%;animation:1.1s ease-in-out .6s 2 medal-sweep;position:absolute;inset:0;transform:translate(-120%)}.medal-spark{clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);background:#fff;width:14px;height:14px;animation:1.6s ease-in-out infinite medal-twinkle;position:absolute}.medal-spark.s1{top:20px;left:6px}.medal-spark.s2{width:18px;height:18px;animation-delay:.5s;top:40px;right:4px}.medal-spark.s3{width:11px;height:11px;animation-delay:1s;bottom:6px;right:22px}.medal-dialog .primary-button{align-self:stretch;margin-top:4px}@keyframes medal-in{0%{opacity:0;transform:scale(.2)rotate(-25deg)}70%{opacity:1}}@keyframes medal-sweep{to{transform:translate(120%)}}@keyframes medal-glow{0%,to{opacity:.55;transform:scale(.94)}50%{opacity:1;transform:scale(1.04)}}@keyframes medal-twinkle{0%,to{opacity:0;transform:scale(.4)rotate(0)}50%{opacity:1;transform:scale(1)rotate(30deg)}}@media (prefers-reduced-motion:reduce){.medal-shine,.medal-shine:after,.medal-hero:before,.medal-spark{animation:none}.medal-spark{opacity:0}}.screen.match{position:relative}.emoji-control{right:calc(-1 * (var(--safe-right) + 16px));z-index:20;width:50px;height:54px;margin-top:-27px;position:absolute;top:45%}.emoji-tab{-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:#171e3b80;border:1px solid #ffffff3d;border-right:0;border-radius:18px 0 0 18px;place-items:center;padding:0 8px 0 0;display:grid;position:absolute;inset:0;box-shadow:0 4px 14px #00000040}.emoji-tab img{opacity:.92;pointer-events:none;width:32px;height:32px}.emoji-tab{touch-action:none}.emoji-control.dragging .emoji-tab{background:#171e3be6;transform:scale(1.06);box-shadow:0 6px 18px #00000073}.emoji-control.open .emoji-tab{background:#171e3bd9}.emoji-backdrop{z-index:-1;touch-action:none;background:0 0;position:fixed;inset:0}.emoji-backdrop[hidden]{display:none}.emoji-fan{width:0;height:0;position:absolute;top:27px;left:25px}.emoji-bubble{opacity:0;pointer-events:none;touch-action:manipulation;width:50px;height:50px;transition:transform .22s cubic-bezier(.3, 1.5, .5, 1) calc(var(--n) * 30ms), opacity .15s calc(var(--n) * 30ms);background:#171e3beb;border:2px solid #ffffff8c;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:-25px;left:-25px;transform:translate(0)scale(.2);box-shadow:0 6px 16px #0006}.emoji-bubble img{pointer-events:none;width:32px;height:32px}.emoji-control.open .emoji-bubble{opacity:1;transform:translate(var(--x), var(--y));pointer-events:auto}.emoji-pop{z-index:15;pointer-events:none;background:#171e3bf0;border:2px solid #fff6;border-radius:50%;place-items:center;width:52px;height:52px;margin-left:-26px;transition:opacity .3s;display:grid;position:absolute;top:calc(100% + 2px);left:50%;box-shadow:0 6px 16px #00000073}.emoji-pop[hidden]{display:none}.emoji-pop img{width:36px;height:36px}.emoji-pop.pop{animation:.32s cubic-bezier(.3,1.6,.5,1) emoji-pop}.emoji-pop.out{opacity:0}@keyframes emoji-pop{0%{opacity:0;transform:scale(.2)translateY(-10px)}70%{opacity:1}to{transform:none}}.medal-lv{flex:none;line-height:0;display:inline-block;position:relative}.medal-lv>.medal-img{width:100%;height:100%;display:block}.medal-lv-star{line-height:0;position:absolute;bottom:-8%;right:-10%}.medal-chip.shown .medal-lv>.medal-img{filter:drop-shadow(0 0 6px #ffc24bb3)}.rank-modes{scrollbar-width:none;flex-wrap:nowrap;gap:8px;width:100%;padding:2px 2px 6px;display:flex;overflow:auto hidden}.rank-modes::-webkit-scrollbar{display:none}.rank-mode{min-height:48px;color:var(--text);white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#ffffff0f;border:2px solid #ffffff1f;border-radius:999px;flex:none;align-items:center;gap:6px;padding:6px 12px 6px 8px;font-size:13px;font-weight:800;display:inline-flex}.rank-mode .medal-img{width:30px;height:30px;display:block}.rank-mode[aria-pressed=true]{border-color:var(--gold);background:#ffc24b29;box-shadow:0 0 12px #ffc24b59}.card-level{z-index:3;pointer-events:none;filter:drop-shadow(0 2px 4px #00000080);position:absolute;top:8px;left:8px}body:has(.screen.match){background:radial-gradient(ellipse 80% 55% at 50% 42%, color-mix(in srgb, var(--tint,#5b3fd9) 34%, transparent), transparent 70%), linear-gradient(180deg, var(--bg) 0%, var(--tint-deep,var(--bg-2)) 100%)}body:has(.screen.match[data-game=find_the_exit]){--tint:#5b3fd9;--tint-deep:#161c36}body:has(.screen.match[data-game=line_follow]){--tint:#1d63d8;--tint-deep:#0c2036}body:has(.screen.match[data-game=laser_maze]){--tint:#9b2fc2;--tint-deep:#22103a}body:has(.screen.match[data-game=cup_shuffle]){--tint:#ff3fa4;--tint-deep:#2e0a26}body:has(.screen.match[data-game=quick_math]){--tint:#0e8c86;--tint-deep:#08292b}body:has(.screen.match[data-game=matchstick]){--tint:#c2601c;--tint-deep:#2a160a}body:has(.screen.match[data-game=cube_count]){--tint:#12d6ff;--tint-deep:#052a33}body:has(.screen.match[data-game=shape_math]){--tint:#ffeb5c;--tint-deep:#2b2205}:is(body:has(.screen.home),body:has(.screen.picker)){background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='260' height='260' viewBox='0 0 260 260' fill='none' stroke='white' stroke-opacity='.07' stroke-width='2.2' stroke-linejoin='round'><path d='M38 30h40v-9a9 9 0 0 1 18 0v9h40v40h-9a9 9 0 0 0 0 18h9v40h-40v-9a9 9 0 0 0-18 0v9h-40v-40h9a9 9 0 0 1 0-18h-9z' transform='rotate(-12 87 79)'/><path d='M190 36l7 15 16 2-12 11 3 16-14-8-14 8 3-16-12-11 16-2z'/><path d='M206 170l24 14v28l-24 14-24-14v-28z'/><path d='M60 176h34l-5 40h-24z M54 170h46'/><path d='M126 118l22-12 22 12v26l-22 12-22-12z M126 118l22 12 22-12 M148 130v26'/></svg>") 0 0 / 260px 260px, radial-gradient(ellipse 80% 55% at 50% 42%, #5b3fd957, transparent 70%), radial-gradient(ellipse 90% 40% at 50% 100%, #7c5cff38, transparent 70%), linear-gradient(180deg, var(--bg) 0%, var(--bg-2) 100%)}.store-grid.packs{grid-template-columns:repeat(2,minmax(0,1fr))}.avatar-pack .pack-covers{justify-content:center;margin-bottom:6px;display:flex}.avatar-pack .pack-covers .avatar{width:54px;height:54px;margin:0 -10px;box-shadow:0 4px 10px #00000073}.avatar-pack .pack-covers .avatar:nth-child(2){z-index:1;transform:translateY(-6px)scale(1.12)}.pack-mythology{border-color:#ffc24ba6;box-shadow:0 0 18px #ffc24b38}.pack-material{border-color:#b284ff99;box-shadow:0 0 16px #b284ff33}.pack-back{align-self:flex-start;width:auto;min-height:44px;margin-bottom:10px;padding:0 16px}.avatar.picture>img:not(.avatar-medal){object-fit:cover;border-radius:50%;width:100%;height:100%}.store-body.slide-left{animation:.22s ease-out store-in-left}.store-body.slide-right{animation:.22s ease-out store-in-right}@keyframes store-in-left{0%{opacity:.3;transform:translate(40px)}}@keyframes store-in-right{0%{opacity:.3;transform:translate(-40px)}}.avatar.framed{isolation:isolate;position:relative;overflow:visible}.avatar.frame-glow_cyan{--glow:#2ee6ff}.avatar.frame-glow_pink{--glow:#ff4dd8}.avatar.frame-glow_lime{--glow:#7dff4d}.avatar.frame-glow_violet{--glow:#a98bff}.avatar.frame-glow_sunset{--glow:#ff8a3d}.avatar[class*=frame-glow_]{box-shadow:0 0 0 3px var(--glow), 0 0 12px var(--glow), 0 0 22px var(--glow);animation:2.2s ease-in-out infinite frame-glow}.avatar.frame-glow_sunset{box-shadow:0 0 0 3px #ff8a3d,0 0 0 5px #ff4d6d,0 0 18px #ff6e3ccc}@keyframes frame-glow{50%{box-shadow:0 0 0 3px var(--glow), 0 0 18px var(--glow), 0 0 30px var(--glow)}}.avatar[class*=frame-spin_]:before,.avatar[class*=frame-legend_]:before,.avatar[class*=frame-snake_]:before{content:"";z-index:-1;pointer-events:none;background:var(--ring);border-radius:50%;animation:3s linear infinite frame-spin;position:absolute;inset:-5px;-webkit-mask:radial-gradient(closest-side,#0000 calc(100% - 5px),#000 calc(100% - 4.5px));mask:radial-gradient(closest-side,#0000 calc(100% - 5px),#000 calc(100% - 4.5px))}.avatar[class*=frame-spin_]{box-shadow:0 0 14px #ffffff2e}.avatar.frame-spin_rainbow{--ring:conic-gradient(#ff4d6d, #ffc24b, #7dff4d, #2ee6ff, #a98bff, #ff4d6d)}.avatar.frame-spin_aurora{--ring:conic-gradient(#2ee6c5, #7c5cff, #ff4dd8, #2ee6c5)}.avatar.frame-spin_ocean{--ring:conic-gradient(#0e5bff, #2ee6ff, #e8fbff, #0e5bff)}.avatar.frame-spin_lava{--ring:conic-gradient(#ff2e2e, #ff8a3d, #ffe07a, #ff2e2e)}.avatar.frame-spin_gold{--ring:conic-gradient(#8a5a0c, #ffd45c, #fff6d0, #ffd45c, #8a5a0c)}@keyframes frame-spin{to{transform:rotate(360deg)}}.avatar[class*=frame-gem_]{box-shadow:0 0 0 2px #ffffffbf, 0 0 0 5px var(--gem), 0 0 0 7px var(--gem-dark), 0 0 8px var(--gem-glow);animation:5.5s ease-in-out infinite frame-gem}.avatar.frame-gem_ruby{--gem:#ff2e5f;--gem-dark:#7a0a25;--gem-glow:#ff2e5f8c;--gem-glow-strong:#ff2e5fcc}.avatar.frame-gem_emerald{--gem:#22d47f;--gem-dark:#0a5a33;--gem-glow:#22d47f8c;--gem-glow-strong:#22d47fcc}.avatar.frame-gem_sapphire{--gem:#2e7bff;--gem-dark:#0a2d7a;--gem-glow:#2e7bff8c;--gem-glow-strong:#2e7bffcc}.avatar.frame-gem_amethyst{--gem:#b266ff;--gem-dark:#4a1a7a;--gem-glow:#b266ff8c;--gem-glow-strong:#b266ffcc}.avatar.frame-gem_topaz{--gem:#ffb52e;--gem-dark:#7a4a0a;--gem-glow:#ffb52e8c;--gem-glow-strong:#ffb52ecc}@keyframes frame-gem{50%{box-shadow:0 0 0 2px #ffffffe6, 0 0 0 5px var(--gem), 0 0 0 7px var(--gem-dark), 0 0 14px var(--gem-glow-strong)}}.avatar.frame-legend_fire{--ring:conic-gradient(#ffe07a, #ff4d2e, #ffc24b, #ff2e2e, #ffe07a);animation:1s ease-in-out infinite frame-legend-fire}.avatar.frame-legend_ice{--ring:conic-gradient(#fff, #8fe3ff, #2e9bff, #e8fbff, #fff);box-shadow:0 0 20px #8fe3ffe6}.avatar.frame-legend_storm{--ring:conic-gradient(#fff7a8, #7c5cff, #fff7a8, #2e2e8a, #fff7a8);animation:1.6s step-end infinite frame-legend-storm}.avatar.frame-legend_galaxy{--ring:conic-gradient(#ff4dd8, #2e1a6e, #7c5cff, #0b1020, #2ee6ff, #ff4dd8);box-shadow:0 0 22px #7c5cffe6}.avatar.frame-legend_royal{--ring:conic-gradient(#fff6d0, #ffd45c, #b8860b, #ffd45c, #fff6d0);box-shadow:0 0 0 7px #6e1ea0d9,0 0 22px #ffd45ce6}@keyframes frame-legend-fire{50%{box-shadow:0 0 26px #ff5a28,0 -6px 18px #ffc24be6}}@keyframes frame-legend-storm{0%,70%,to{box-shadow:0 0 12px #7c5cffb3}75%,85%{box-shadow:0 0 30px #fff7a8}}.pack-legend{border-color:#ff783c99;box-shadow:0 0 18px #ff783c38}.pack-gem{border-color:#2e7bff8c;box-shadow:0 0 16px #2e7bff33}@media (prefers-reduced-motion:reduce){.avatar.framed,.avatar.framed:before{animation:none!important}}.avatar[class*=frame-snake_]{box-shadow:0 0 0 4px #ffffff12}.avatar[class*=frame-snake_]:before{filter:drop-shadow(0 0 4px var(--snake));animation-duration:1.8s}.avatar.frame-snake_venom{--snake:#7dff4d;--ring:conic-gradient(transparent 0 45%, #7dff4d26 55%, #7dff4d 96%, #f2ffe8 100%)}.avatar.frame-snake_cobra{--snake:#ffc24b;--ring:conic-gradient(transparent 0 45%, #ffc24b26 55%, #ffc24b 96%, #fff6d0 100%)}.avatar.frame-snake_neon{--snake:#ff4dd8;--ring:conic-gradient(transparent 0 45%, #2ee6ff33 55%, #ff4dd8 96%, #fff 100%)}.avatar.frame-snake_ember{--snake:#ff5a2e;--ring:conic-gradient(transparent 0 45%, #ff5a2e26 55%, #ff5a2e 96%, #ffe07a 100%)}.avatar.frame-snake_frost{--snake:#8fe3ff;--ring:conic-gradient(transparent 0 45%, #8fe3ff26 55%, #8fe3ff 96%, #fff 100%)}.pack-snake{border-color:#7dff4d80;box-shadow:0 0 16px #7dff4d2e}.avatar[class*=frame-gem_]:before{content:"";z-index:1;pointer-events:none;background:conic-gradient(transparent 0 78%, #ffffff26 84%, #ffffffd9 90%, #ffffff26 95%, transparent 100%);border-radius:50%;animation:4.5s linear infinite frame-spin;position:absolute;inset:-7px;-webkit-mask:radial-gradient(closest-side,#0000 calc(100% - 7px),#000 calc(100% - 6.5px));mask:radial-gradient(closest-side,#0000 calc(100% - 7px),#000 calc(100% - 6.5px))}.screen.lucky .ball-row{margin-bottom:clamp(10px,2.4vh,22px)}.lucky-actions>.primary-button.ball-colored{background:linear-gradient(180deg, color-mix(in srgb, var(--ball) 72%, white), var(--ball));box-shadow:0 6px 0 color-mix(in srgb, var(--ball) 55%, black), 0 0 26px color-mix(in srgb, var(--ball) 45%, transparent);color:#0b1020}.lucky-actions>.primary-button.ball-colored:active{box-shadow:0 2px 0 color-mix(in srgb, var(--ball) 55%, black)}.daily-art{background:radial-gradient(70% 80% at 50% 45%,#ffc24b47,#0000 70%);flex-direction:column;align-items:center;gap:6px;padding:26px 0 8px;display:flex}.daily-coins{display:flex}.daily-coins svg{filter:drop-shadow(0 6px 10px #00000073);width:64px;height:64px}.daily-coins svg:first-child{transform:translate(14px)rotate(-14deg)}.daily-coins svg:nth-child(2){z-index:1;position:relative;transform:translateY(-10px)scale(1.18)}.daily-coins svg:nth-child(3){transform:translate(-14px)rotate(14deg)}.daily-amount{color:var(--gold);text-shadow:0 0 18px #ffc24b99;font-size:34px;font-weight:900}.daily-collect{color:#2a1a05;background:linear-gradient(#ffe08a,#ffb547);box-shadow:0 6px #a8741c,0 0 24px #ffc24b73}.maze-area.shades-mode .maze-canvas{visibility:hidden}.shades-board{--lab:11px;--nw:17px;--colh:17px;--between:8px;--foot:30px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:4px 6px;display:flex;position:absolute;inset:0}.shades-board[hidden]{display:none}.shades-stack{gap:var(--between);align-items:flex-start;display:flex}.shades-stack.stack{flex-direction:column}.shades-stack.side{flex-direction:row}.shades-unit{padding-left:var(--nw);flex-direction:column;display:flex;position:relative}.shades-stack.stack .shades-unit.bottom .shades-cols{display:none}.shades-cols{box-sizing:border-box;width:var(--cw);height:var(--colh);padding:0 var(--pad);grid-template-columns:repeat(var(--tn), 1fr);column-gap:var(--tgap);text-align:center;font-size:var(--lab);color:#d5daee;opacity:.85;align-items:center;font-weight:800;line-height:1;display:grid}.shades-card{width:var(--cw);height:var(--ch);border-radius:var(--cr);touch-action:manipulation;cursor:pointer;background:#14161d;position:relative;box-shadow:inset 0 0 0 1.5px #2a2e3c,0 10px 28px #00000073}.shades-nums{right:100%;top:var(--pad);bottom:var(--pad);width:var(--nw);grid-template-rows:repeat(var(--tn), 1fr);row-gap:var(--tgap);pointer-events:none;font-size:var(--lab);color:#d5daee;opacity:.85;margin-right:1px;font-weight:800;line-height:1;display:grid;position:absolute}.shades-nums span{place-items:center;display:grid}.shades-tiles{inset:var(--pad);grid-template-columns:repeat(var(--tn), 1fr);grid-template-rows:repeat(var(--tn), 1fr);gap:var(--tgap);display:grid;position:absolute}.shade-tile{border-radius:var(--tr);min-width:0;min-height:0;transition:transform .28s cubic-bezier(.2,1.4,.4,1),box-shadow .22s,opacity .3s;position:relative}.shade-tile.picked{z-index:2;transform:scale(1.1);box-shadow:0 0 0 2px #0b1020,0 0 0 5px #fff}.shade-tile.twin{z-index:1;box-shadow:0 0 0 2px #fff9}.shades-board.revealing .shade-tile{opacity:.2}.shades-board.revealing .shade-tile.odd,.shades-board.revealing .shade-tile.wrong,.shades-board.revealing .shade-tile.rival{opacity:1}.shades-board.revealing .shade-tile.odd{z-index:3;box-shadow:0 0 0 2px #0b1020, 0 0 0 5px var(--success), 0 0 18px 4px #3df08fbf;transform:scale(1.16)}.shades-board.revealing .shade-tile.wrong{z-index:2;box-shadow:0 0 0 2px #0b1020, 0 0 0 5px var(--danger), 0 0 14px 2px #ff4d6db3;transform:scale(1.08)}.shade-tile.rival:after{content:"";aspect-ratio:1;background:#ff6f91;border-radius:50%;width:clamp(8px,30%,16px);position:absolute;top:-4px;right:-4px;box-shadow:0 0 0 2px #0b1020,0 0 8px #ff6f91e6}.shades-foot{box-sizing:border-box;width:100%;padding-left:var(--nw);height:var(--foot);justify-content:center;align-items:center;gap:8px;display:flex}.shade-pill{white-space:nowrap;border-radius:999px;align-items:center;height:30px;padding:0 14px;font-size:15px;font-weight:900;animation:.28s cubic-bezier(.2,1.4,.4,1) both option-in;display:inline-flex}.shade-pill.answer{background:var(--success);color:#03301a}.shade-pill.rival{color:#ffb3c1;background:#ff6f9129;border:1px solid #ff6f918c}@media (prefers-reduced-motion:reduce){.shade-tile,.shade-pill{transition:none;animation:none}}.howto-stage .shade-pill.rival{display:none}body:has(.screen.match[data-game=shade_spot]){--tint:#9bff3d;--tint-deep:#142a06}.result-actions-row{gap:10px;width:min(100%,420px);display:flex}.result-actions-row>.secondary-button{flex:1 1 0;width:auto;min-width:0;padding:0 10px}.rematch-button{gap:10px;padding:0 18px}.rematch-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.spinner.mini{border-width:3px;border-color:#fff #ffffff4d #ffffff4d;flex:none;width:20px;height:20px}.spinner.mini[hidden]{display:none}.rematch-button.rematch-ask{animation:1.5s ease-in-out infinite rematch-glow}.rematch-button.rematch-ask:active{animation:none}@keyframes rematch-glow{0%,to{box-shadow:0 6px #0b7a64,0 12px 30px #2ee6c559}50%{box-shadow:0 6px #0b7a64,0 0 0 3px #ffffff73,0 0 34px 6px #4bebcb99}}.rival-avatar{flex:none;display:block;position:relative}.rematch-bubble{z-index:4;color:#0b1020;text-align:center;pointer-events:none;transform-origin:calc(100% - 27px) calc(100% + 7px);background:#fff;border-radius:16px;width:max-content;max-width:min(260px,100vw - 48px);padding:9px 14px;font-size:15px;font-weight:800;line-height:1.25;animation:.26s ease-out both rematch-pop;position:absolute;bottom:calc(100% + 7px);right:calc(50% - 27px);box-shadow:0 8px 24px #00000073}.rematch-bubble[hidden]{display:none}.rematch-bubble:after{content:"";background:#fff;border-radius:3px;width:14px;height:14px;position:absolute;bottom:-4px;right:20px;transform:rotate(45deg)}@keyframes rematch-pop{0%{opacity:0;transform:scale(.6)}60%{opacity:1;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}.result.friendly .result-board{margin-top:4px}@media (height<=700px){.result.friendly .result-board{margin-top:24px}}@media (prefers-reduced-motion:reduce){.rematch-bubble,.rematch-button.rematch-ask{animation:none}}.daily-popup .lucky-body{gap:8px}.daily-popup .daily-art{padding-top:22px}.streak-strip{gap:4px;margin:2px -6px 4px;display:flex}.streak-day{border:1px solid var(--edge);min-width:0;color:var(--muted);background:#ffffff0a;border-radius:10px;flex-direction:column;flex:1 1 0;align-items:center;gap:2px;padding:6px 0 5px;display:flex;position:relative}.streak-day-name{white-space:nowrap;font-size:10px;font-weight:700;line-height:1.2}.streak-day-amount{font-variant-numeric:tabular-nums;font-size:12px;font-weight:900;line-height:1.2}.streak-day.past{color:#bfe9d2;background:#3df08f14;border-color:#3df08f73}.streak-day.past:after{content:"✓";background:var(--success);color:#07210f;text-align:center;border-radius:50%;width:15px;height:15px;font-size:10px;font-weight:900;line-height:15px;position:absolute;top:-6px;right:-3px}.streak-day.today{color:#2a1a05;background:linear-gradient(#ffe08a,#ffb547);border-color:#ffe08a;box-shadow:0 0 16px #ffc24b99}.streak-day.later{opacity:.75}.home-pills{flex-wrap:wrap}.quests-popup{border-color:#78beffa6;box-shadow:0 24px 60px #0009,0 0 50px #4fc3ff38}.quests-body{flex-direction:column;gap:10px;padding:20px 14px 16px;display:flex}.quests-body h2{text-align:center;margin:0;padding:0 44px;font-size:clamp(20px,5.4vw,24px)}.quests-clock{text-align:center;color:var(--muted);margin:0;font-size:13px;font-weight:600}.quest-list{flex-direction:column;gap:8px;min-height:30px;display:flex}.quest-row{background:var(--surface-2);border:1px solid var(--edge);border-radius:16px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.quest-row.done{border-color:#3df08f99}.quest-row.claimed{opacity:.72}.quest-badge{border:2px solid var(--edge);background:#ffffff12;border-radius:50%;place-items:center;width:40px;height:40px;font-size:20px;display:grid}.tier-0 .quest-badge{border-color:#6fcf97}.tier-1 .quest-badge{border-color:#4fc3ff}.tier-2 .quest-badge{border-color:#ff8a3d}.quest-main{flex-direction:column;gap:6px;min-width:0;display:flex}.quest-text{overflow-wrap:anywhere;margin:0;font-size:14px;font-weight:800;line-height:1.25}.quest-progress{align-items:center;gap:8px;display:flex}.quest-bar{background:var(--bg);border-radius:999px;flex:1;height:8px;position:relative;overflow:hidden}.quest-fill{background:linear-gradient(90deg, #4fc3ff, var(--accent));border-radius:999px;height:100%;transition:width .3s;display:block}.quest-row.done .quest-fill{background:linear-gradient(90deg,#3df08f,#b4ffd3)}.quest-count{color:var(--muted);font-variant-numeric:tabular-nums;text-align:right;min-width:2.4em;font-size:12px;font-weight:800}.quest-side{flex-direction:column;align-items:flex-end;gap:6px;min-width:64px;display:flex}.quest-side .coins{font-size:14px}.quest-side .coin-icon{width:16px;height:16px}.quest-collect{color:#2a1a05;background:linear-gradient(#ffe08a,#ffb547);border-radius:999px;min-height:32px;padding:0 12px;font-size:13px;font-weight:900;box-shadow:0 3px #a8741c,0 0 16px #ffc24b66}.quest-collect:active{transform:translateY(2px);box-shadow:0 1px #a8741c}.quest-collect:disabled{opacity:.6}.quest-tick{background:var(--success);color:#07210f;border-radius:50%;place-items:center;width:28px;height:28px;font-size:16px;font-weight:900;line-height:1;display:grid}.quest-bonus{background:#ffc24b14;border:1px dashed #ffc24b99;border-radius:14px;justify-content:center;align-items:center;gap:10px;padding:10px;font-size:14px;font-weight:800;display:flex}.quest-bonus .coins{vertical-align:middle;margin:0 2px;display:inline-flex}.quest-bonus.paid{border-style:solid;border-color:var(--success);background:#3df08f14}.quest-bonus .quest-tick{width:24px;height:24px;font-size:14px}.quests-body .fineprint{font-size:12px}@media (height<=700px){.quests-body{gap:7px;padding-top:16px}.quest-row{padding:8px}.quests-body .fineprint{display:none}}.result.rematch .result-board{margin-top:4px}@media (height<=700px){.result.rematch .result-board{margin-top:24px}}.rival-add{z-index:3;aspect-ratio:1;background:var(--primary);color:#fff;cursor:pointer;border:2px solid #ffffffe6;border-radius:50%;place-items:center;width:max(26px,52%);height:max(26px,52%);min-height:0;padding:0;transition:transform .15s,background-color .2s;display:grid;position:absolute;bottom:-8%;right:-8%;box-shadow:0 3px 10px #00000073}.rival-add:before{content:"";border-radius:50%;position:absolute;inset:-8px}.rival-add:active{transform:scale(.92)}.rival-add .ui-icon{width:60%;height:60%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.rival-add .ui-icon svg{width:100%;height:100%;display:block}.rival-add.done{background:var(--success);color:#03301a;cursor:default;border-color:#ffffffb3}.rival-add:disabled{opacity:1}@media (height<=700px){.result.rematch .result-rewards{gap:6px}.result.rematch .xp-card{gap:4px;padding:8px 12px}}@media (prefers-reduced-motion:reduce){.rival-add{transition:none}}.result-mood{margin:0;font-size:clamp(16px,4.6vw,20px);font-weight:900;animation:.4s ease-out .15s both enter}.result-mood.win{color:var(--gold)}.result-mood.loss{color:#c4cbe6}.result-mood.draw{color:var(--accent)}.result-record{color:var(--muted);overflow-wrap:anywhere;margin:-4px 0 -2px;font-size:12px;font-weight:700;line-height:1.2}@media (height<=700px){.result-record{margin:-2px 0 0;font-size:11px}}.result-title{z-index:2;position:relative}.result-title.flawless{animation:1.4s ease-out .1s flawless-glow}@keyframes flawless-glow{40%{text-shadow:0 6px #6b3510,0 0 36px #ffe08a,0 0 90px #ffc24be6;transform:scale(1.06)}}.confetti{pointer-events:none;width:0;height:0;position:absolute;top:40%;left:50%}.confetti-piece{opacity:0;width:8px;height:11px;animation:confetti-burst 1.2s cubic-bezier(.25, .6, .45, 1) var(--d) forwards;border-radius:2px;position:absolute;top:-5px;left:-4px}.confetti-piece.round{border-radius:50%;width:8px;height:8px}@keyframes confetti-burst{0%{opacity:1;transform:translate(0)scale(.5)rotate(0)}30%{transform:translate(calc(var(--x) * .7), var(--up)) scale(1) rotate(calc(var(--r) * .3));opacity:1}80%{opacity:1}to{transform:translate(var(--x), var(--y)) scale(.9) rotate(var(--r));opacity:0}}@media (prefers-reduced-motion:reduce){.confetti{display:none}.result-title.flawless,.result-mood{animation:none}}@media (height<=900px){.result.rematch{gap:8px}.result.rematch .result-title{margin-top:0;font-size:clamp(44px,12.5vw,72px)}.result.rematch .result-board{margin-top:20px}.result.rematch .result-rewards{gap:6px}.result.rematch .xp-card{gap:4px;padding:8px 12px}.result.rematch .result-coins{font-size:clamp(26px,7vw,34px)}.result.rematch .result-actions{gap:12px}}@media (height<=700px){.result.rematch{gap:6px}}.login-invite{background:linear-gradient(135deg,#ffc24b33,#7c5cff33);border:1px solid #ffc24b8c;border-radius:16px;align-items:center;gap:12px;padding:10px 12px;animation:.28s ease-out enter;display:flex;box-shadow:0 0 18px #ffc24b2e}.login-invite[hidden]{display:none}.login-invite .avatar{width:44px;height:44px}.login-invite-text{flex-direction:column;gap:2px;min-width:0;display:flex}.login-invite-text strong{text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:800;overflow:hidden}.login-invite-text small{color:var(--gold);font-size:13px;font-weight:700}@media (width<=380px){.login-invite-text strong{font-size:14px}.login-invite-text small{font-size:12px}}@media (height<=700px){.login-invite{border-radius:14px;gap:10px;padding:6px 10px}.login-invite .avatar{width:34px;height:34px;font-size:13px}.login-sheet:has(.login-invite:not([hidden])) .login-note{display:none}}.invite-card{border-radius:var(--radius);background:linear-gradient(135deg, #ffc24b29, #7c5cff33), var(--surface);border:1px solid #ffc24b73;flex-direction:column;flex:none;gap:10px;width:100%;padding:12px 14px;display:flex}.invite-card-head{align-items:center;gap:12px;display:flex}.invite-card-icon{flex:none;font-size:30px;line-height:1}.invite-card-text{min-width:0}.invite-card-text h2{margin:0;font-size:17px;font-weight:800}.invite-card-text p{color:var(--muted);margin:2px 0 0;font-size:13px;line-height:1.35}.invite-card-row{align-items:center;gap:8px;display:flex}.invite-code{min-width:0;min-height:44px;color:var(--gold);letter-spacing:.14em;font-variant-numeric:tabular-nums;-webkit-user-select:text;user-select:text;white-space:nowrap;background:#0b1020a6;border:1px dashed #ffc24b99;border-radius:12px;flex:auto;place-items:center;padding:0 10px;font-size:18px;font-weight:900;display:grid;overflow:hidden}.invite-card-row .small-button{white-space:nowrap;flex:none;align-items:center;gap:6px;padding:0 14px;display:inline-flex}.invite-card .small-button .ui-icon{font-size:18px}.invite-card .small-button.invite-share{flex-direction:row;justify-content:center;align-items:center;gap:8px;width:100%;font-size:16px;display:flex}.invite-card-count{color:var(--gold);margin:0;font-size:13px;font-weight:700}@media (width<=380px){.invite-card{gap:8px;padding:10px 12px}.invite-code{letter-spacing:.1em;padding:0 6px;font-size:17px}}@media (height<=700px){.invite-card-text p{font-size:12px}.invite-card-icon{font-size:24px}}.icon-button{background:var(--surface);border:1px solid var(--edge);width:48px;height:48px;color:var(--text);cursor:pointer;border-radius:14px;flex:none;place-items:center;font-size:24px;display:grid}.icon-button:disabled{opacity:.5}.share-result{color:var(--gold);border-color:#ffc24b73}.topbar-left{align-items:center;gap:10px;display:flex}.login-code{flex-direction:column;align-items:center;gap:6px;display:flex}.login-code[hidden],.invite-code-form[hidden],.login-code-link[hidden]{display:none}.login-code-link{min-height:32px;color:var(--gold);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0 10px;font-size:13px;font-weight:800;text-decoration:underline}.invite-code-form{flex-direction:column;gap:6px;width:100%;display:flex}.invite-code-row{gap:8px;width:100%;display:flex}.invite-code-row .small-button{flex:none;padding:0 16px}.text-input.invite-code-input{text-align:center;letter-spacing:.14em;text-transform:uppercase;font-variant-numeric:tabular-nums;flex:1;min-width:0;min-height:44px;font-size:17px;font-weight:900}.text-input.invite-code-input::placeholder{color:#ffffff40;letter-spacing:.14em}.invite-code-problem{text-align:center;color:#ff9bb0;margin:0;font-size:14px;font-weight:600}.invite-code-problem:empty{display:none}.invite-redeem{border-top:1px dashed #ffc24b59;flex-direction:column;gap:6px;padding-top:10px;display:flex}.invite-redeem-label{color:var(--muted);margin:0;font-size:13px;font-weight:800}@media (height<=700px){.login-sheet:has(.invite-code-form:not([hidden])) .login-note{display:none}.invite-redeem{padding-top:8px}}.rank-tabs{background:var(--surface);border:1px solid var(--edge);border-radius:999px;gap:4px;width:100%;padding:4px;display:flex}.rank-tab{min-height:44px;color:var(--muted);border-radius:999px;flex:1 1 0;font-weight:800}.rank-tab[aria-selected=true]{background:var(--primary);color:#fff;box-shadow:0 3px #4a34b0}.rank-pane{flex-direction:column;flex:1;align-items:center;gap:8px;width:100%;min-height:0;display:flex}.rank-pane[hidden]{display:none}.league-tab{flex-direction:column;flex:1;gap:8px;width:100%;min-height:0;padding-bottom:8px;display:flex;overflow-y:auto}.league-tab>.spinner{align-self:center;margin-top:30px}.league-head{background:var(--surface);border:1px solid var(--edge);border-radius:18px;align-items:center;gap:14px;padding:12px 14px;display:flex}.league-head-text{flex-direction:column;gap:2px;min-width:0;display:flex}.league-head-text h2{margin:0;font-size:clamp(18px,5vw,22px)}.league-clock{color:var(--muted);margin:0;font-size:13px;font-weight:700}.league-place{color:var(--gold);margin:0;font-size:14px;font-weight:800}.league-badge{filter:drop-shadow(0 3px 6px #00000073);flex:none;display:inline-block}.league-badge svg{width:100%;height:100%;display:block}.league-badge.dim{opacity:.38;filter:grayscale(.7)}.rank-head.league-head-row,.league-row{grid-template-columns:34px 40px minmax(0,1fr) 50px 54px}.rank-head.league-head-row span:nth-child(3),.rank-head.league-head-row span:nth-child(4){text-align:center}.league-row{min-height:54px;position:relative;overflow:hidden}.league-row.zone-up:before,.league-row.zone-down:before{content:"";width:5px;position:absolute;top:0;bottom:0;left:0}.league-row.zone-up:before{background:var(--success)}.league-row.zone-down:before{background:var(--danger)}.league-matches{text-align:center;color:var(--muted);font-variant-numeric:tabular-nums;font-weight:700}.league-points{text-align:center;font-variant-numeric:tabular-nums;font-size:18px}.league-prize{margin-top:1px;font-size:12px;line-height:1.1;display:inline-flex}.league-prize .coins{gap:3px}.league-prize .coins svg{width:13px;height:13px}.league-prize.unearned{opacity:.45}.league-prize-note{color:var(--gold);text-align:center;justify-content:center;align-items:center;gap:6px;margin:0 0 6px;font-size:13px;font-weight:800;display:flex}.league-prize-note .coins svg{width:16px;height:16px}.league-divider{text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:8px;font-size:11px;font-weight:800;display:flex}.league-divider:before,.league-divider:after{content:"";opacity:.5;background:currentColor;flex:1;height:1px}.league-divider.up{color:var(--success)}.league-divider.down{color:var(--danger)}.league-join{margin:18px 10px 6px}.league-ladder{flex-wrap:nowrap;justify-content:center;align-items:flex-start;gap:4px;display:flex}.league-ladder-step{flex-direction:column;align-items:center;gap:4px;min-width:0;display:flex}.league-ladder-step small{color:var(--muted);font-size:11px;font-weight:700}.league-ladder-step.current small{color:var(--text);font-weight:900}.league-ladder-arrow{color:var(--muted);padding-top:14px}.league-popup{border-color:#ffc24ba6}.league-popup.up{border-color:#3df08fb3;box-shadow:0 24px 60px #0009,0 0 50px #3df08f40}.league-popup.down{border-color:#ff4d6d99;box-shadow:0 24px 60px #0009,0 0 40px #ff4d6d33}.league-popup-body{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:22px 20px 20px;display:flex}.league-popup-kicker{color:var(--muted);text-transform:uppercase;letter-spacing:.14em;margin:0;font-size:12px;font-weight:900}.league-popup-body h2{margin:0;padding:0 40px;font-size:clamp(20px,5.4vw,24px)}.league-popup-badges{align-items:center;gap:12px;display:flex}.league-popup-arrow{color:var(--muted);font-size:24px;font-weight:900}.league-popup.down .league-popup-arrow{color:var(--danger)}.league-popup.up .league-popup-arrow{color:var(--success)}.league-popup-rank{margin:0;font-size:17px;font-weight:800}.league-popup-move{margin:0;font-size:16px;font-weight:900}.league-popup-move.up{color:var(--success)}.league-popup-move.down{color:var(--danger)}.league-popup-move.same{color:var(--muted)}.league-popup-reward{flex-direction:column;align-items:center;gap:2px;font-size:clamp(28px,8vw,36px);font-weight:900;display:flex}.league-popup-reward-label{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:900}.league-popup-next{color:var(--text);margin:-4px 0 0;font-size:14px;font-weight:700}.league-popup-reward .gain{color:var(--gold)}.league-popup-none{color:var(--muted);margin:0;font-weight:700}.league-collect{margin-top:4px}.result-league{border-top:1px solid #ffffff1a;justify-content:center;align-items:center;gap:6px;margin:0;padding-top:6px;font-size:13px;font-weight:800;line-height:1.2;display:flex}.result-league .league-badge{filter:none}@media (height<=700px){.result.rematch .xp-card:has(.result-league){gap:3px;padding:6px 12px}.result-league{padding-top:3px;font-size:11.5px;line-height:1.1}}.home-tile-art{object-fit:cover;object-position:center;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.login-language{background:var(--bg);border:1px solid var(--edge);min-height:40px;color:var(--text);letter-spacing:.04em;border-radius:999px;flex:none;align-items:center;gap:6px;padding:0 14px 0 11px;font-size:14px;font-weight:800;display:inline-flex}.login-language .ui-icon{color:var(--muted);font-size:18px}.settings-dialog .language-open{min-width:112px}.language-dialog{gap:10px;width:min(100%,340px)}.language-dialog h2{padding-right:48px}.language-list{overscroll-behavior:contain;flex-direction:column;gap:6px;max-height:min(62dvh,560px);padding:2px;display:flex;overflow-y:auto}.language-option{background:var(--bg);border:1px solid var(--edge);min-height:52px;color:var(--text);text-align:left;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:0 16px;font-size:17px;font-weight:700;display:flex}.language-option[aria-checked=true]{border-color:var(--primary);background:#7c5cff2e}.language-tick{width:22px;color:var(--accent);place-items:center;font-size:22px;display:inline-grid}.store-grid.emoji-packs{grid-template-columns:minmax(0,1fr);gap:14px}.store-item.emoji-pack{text-align:left;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 12px;padding:14px 16px;display:grid}.store-item.emoji-pack .emoji-pack-row{grid-column:1/-1}.store-item.emoji-pack .store-name{text-align:left;font-size:16px}.store-item.emoji-pack.using{border-color:var(--success);box-shadow:0 6px #0e1330,0 0 14px #3df08f40}.emoji-pack-row{justify-content:space-between;gap:6px;width:100%;display:flex}.emoji-pack-row img{filter:drop-shadow(0 3px 3px #0006);width:clamp(38px,12vw,54px);height:clamp(38px,12vw,54px)}.store-preview.emojis{padding:16px 4px 6px}.store-preview.emojis .emoji-pack-row{justify-content:center;gap:10px}.store-preview.emojis .emoji-pack-row img{width:clamp(44px,13vw,60px);height:clamp(44px,13vw,60px)}.timer{position:relative}.timer.showing-next .timer-track,.timer.showing-next .timer-seconds{visibility:hidden}.next-game{box-sizing:border-box;border:2px solid var(--game-color,var(--accent));max-width:100%;height:44px;box-shadow:0 0 14px color-mix(in srgb, var(--game-color,#fff) 35%, transparent);color:var(--game-color,var(--accent));white-space:nowrap;pointer-events:none;background:#0a0c1ee0;border-radius:999px;align-items:center;gap:8px;padding:0 16px 0 5px;font-size:15px;font-weight:900;animation:.25s ease-out next-game-in;display:inline-flex}.timer .next-game{z-index:6;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.next-game[hidden]{display:none}.next-game-pic{border-radius:8px;flex:none;width:32px;height:32px;display:block;overflow:hidden}.next-game-pic img{object-fit:contain;width:32px;max-width:none;height:32px;display:block}.next-game-text{text-overflow:ellipsis;min-width:0;overflow:hidden}.found-first{justify-content:center;margin-top:6px;display:flex}@keyframes next-game-in{0%{opacity:0;transform:translate(-50%,-50%)scale(.85)}}.timer .next-game{animation:.25s ease-out next-game-in-timer}@keyframes next-game-in-timer{0%{opacity:0;transform:translate(-50%,-50%)scale(.85)}}@media (prefers-reduced-motion:reduce){.next-game,.timer .next-game{animation:none}}.next-game img{object-fit:contain;filter:drop-shadow(0 2px 3px #00000080);flex:none;width:34px;height:34px}.next-game span{text-overflow:ellipsis;min-width:0;overflow:hidden}.game-flash{z-index:12;border:2px solid color-mix(in srgb, var(--game-color,#fff) 55%, transparent);max-width:calc(100% - 48px);color:var(--game-color,#fff);text-align:center;text-wrap:balance;text-shadow:0 0 18px color-mix(in srgb, var(--game-color,#fff) 60%, transparent);pointer-events:none;opacity:0;background:#080a18c7;border-radius:18px;padding:10px 22px;font-size:clamp(28px,8.5vw,50px);font-weight:900;line-height:1.1;position:absolute;top:12%;left:50%;transform:translate(-50%)}.game-flash[hidden]{display:none}.game-flash.on{animation:1.2s linear forwards game-flash}@keyframes game-flash{0%{opacity:0}12.5%{opacity:1}75%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.game-flash.on{opacity:1;animation:none}.next-game{animation:none}}.friend-row.offline{opacity:1}.friend-row.offline .friend-who{opacity:.7}.invited-chip{color:#8fd9ff;white-space:nowrap;background:#4fc3ff1f;border:1px solid #4fc3ff99;border-radius:12px;flex:none;align-items:center;gap:4px;min-height:44px;padding:0 2px 0 12px;font-size:14px;font-weight:800;display:inline-flex}.invited-cancel{width:40px;height:40px;color:var(--muted);border-radius:10px;place-items:center;padding:0;display:inline-grid}.invited-cancel .ui-icon{font-size:15px}.invite-offline-note{color:#8fd9ff;font-weight:700}.ad-offer{flex-direction:column;align-items:center;gap:4px;width:100%;display:flex}.ad-button{background:linear-gradient(180deg, #ffc24b29, var(--surface));border-color:#ffc24b8c;gap:10px;padding:0 18px;font-size:17px}.ad-button:disabled{opacity:.55;cursor:default;transform:none}.ad-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ad-icon{background:var(--gold);color:#2a1a05;border-radius:50%;flex:none;place-items:center;width:24px;height:24px;font-size:14px;display:grid}.ad-icon .ui-icon,.ad-icon svg{width:1em;height:1em;display:block}.ad-left{color:var(--muted);font-size:12px;font-weight:700}.ad-left[hidden]{display:none}.ad-problem{color:#ff9bb0;text-align:center;margin:0;font-size:13px;font-weight:600}.ad-problem:empty{display:none}.result-actions .ad-offer{gap:2px;width:min(100%,420px)}.entry-back,.store-ad{color:#2a1a05;background:linear-gradient(#ffd97a,#f4a826);border-color:#0000;gap:10px;width:100%;min-height:52px;padding:0 16px;font-size:16px;box-shadow:0 5px #a86a0c,0 10px 26px #ffc24b59}.entry-back:disabled,.store-ad:disabled{box-shadow:none}.entry-back .ad-icon,.store-ad .ad-icon{color:var(--gold);background:#2a1a05}.store-ad-label{align-items:center;gap:6px;min-width:0;display:inline-flex}.store-ad .coins{background:#2a1a0529;border-radius:999px;padding:3px 10px;font-size:15px}.store-sheet .ad-offer{gap:2px}@media (height<=700px){.result .result-coins.lost.ad-offered,.result .entry-back~.ad-left{display:none}.entry-back{min-height:46px}}.daily-ad{margin-top:8px}.maze-area.chess-mode .maze-canvas{visibility:hidden}.chess-board-wrap{--board:280px;--coord:10px;--sq-light:#eeeed2;--sq-dark:#769656;grid-template-columns:minmax(0,1fr);grid-template-areas:"side""board""foot""actions";align-content:center;justify-items:center;row-gap:8px;padding:6px;display:grid;position:absolute;inset:0}.chess-board-wrap[hidden]{display:none}.chess-board-wrap.side{grid-template-columns:var(--board) minmax(0, 1fr);grid-template-areas:"board side""board foot""board actions";justify-content:center;align-items:center;gap:6px 8px}.chess-board-wrap.tiny .chess-coord{display:none}.chess-side{white-space:nowrap;border-radius:999px;grid-area:side;align-items:center;gap:7px;min-height:28px;margin:0;padding:0 14px 0 6px;font-size:15px;font-weight:900;line-height:1.1;display:inline-flex}.chess-side[data-side=white]{color:#14161d;background:#f4f1e6;box-shadow:0 4px 12px #00000059}.chess-side[data-side=black]{color:#f4f1e6;background:#14161d;box-shadow:inset 0 0 0 1.5px #fff6,0 4px 12px #00000059}.chess-side-king{flex:none;width:22px;height:22px}.chess-side[data-side=black] .chess-side-king{filter:drop-shadow(0 0 .6px #fff)drop-shadow(0 0 .6px #fff)drop-shadow(0 0 .4px #fff)}.chess-frame{width:var(--board);height:var(--board);touch-action:manipulation;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:6px;grid-area:board;transition:box-shadow .25s;position:relative;box-shadow:0 0 0 3px #1c2b21,0 0 0 4px #3ddc8459,0 14px 34px #00000080}.chess-frame.right{box-shadow:0 0 0 3px var(--success), 0 0 24px 2px #3df08f99, 0 14px 34px #00000080}.chess-frame.wrong{box-shadow:0 0 0 3px var(--danger), 0 0 24px 2px #ff4d6d8c, 0 14px 34px #00000080}.chess-grid{border-radius:inherit;grid-template-rows:repeat(8,1fr);grid-template-columns:repeat(8,1fr);display:grid;position:absolute;inset:0;overflow:hidden}.chess-sq{min-width:0;min-height:0;position:relative}.chess-sq.light{background-color:var(--sq-light)}.chess-sq.dark{background-color:var(--sq-dark)}.chess-coord{font-size:var(--coord);pointer-events:none;font-weight:800;line-height:1;position:absolute}.chess-coord.rank{top:4%;left:5%}.chess-coord.file{bottom:4%;right:6%}.chess-sq.light .chess-coord{color:var(--sq-dark)}.chess-sq.dark .chess-coord{color:var(--sq-light)}.chess-sq.selected{background-image:linear-gradient(#ffc24bb3,#ffc24bb3)}.chess-sq.target:after{content:"";background:#e848559e;border-radius:50%;position:absolute;inset:35%;box-shadow:0 0 6px #e8485573}.chess-sq.capture:after{content:"";box-shadow:inset 0 0 0 max(3px, calc(var(--board) / 90)) #e84855d9;border-radius:0;position:absolute;inset:0}.chess-sq.hinted{box-shadow:inset 0 0 0 max(3px, calc(var(--board) / 110)) #4fc3ff;background-image:linear-gradient(#4fc3ff73,#4fc3ff73);animation:1.6s ease-in-out infinite chess-hint}@keyframes chess-hint{50%{box-shadow:inset 0 0 0 max(3px, calc(var(--board) / 110)) #b8e8ff}}.chess-sq.solution{background-image:linear-gradient(#3df08f80,#3df08f80)}.chess-sq.mated{background-image:radial-gradient(circle,#ff2846f2 0%,#ff2846b3 42%,#ff28461a 74%);animation:.9s ease-out both chess-mated}@keyframes chess-mated{0%{filter:brightness(1.8)}}.chess-pieces{pointer-events:none;position:absolute;inset:0}.chess-piece{z-index:1;filter:drop-shadow(0 2px 2px #0000004d);width:12.5%;height:12.5%;transition:transform .22s cubic-bezier(.25,.8,.3,1),opacity .25s,scale .25s;position:absolute;top:0;left:0}.chess-piece.taken{opacity:0;scale:.6}.chess-piece.appear{animation:.3s ease-out both chess-appear}@keyframes chess-appear{0%{opacity:0;scale:.6}}.chess-promo{z-index:3;border-radius:inherit;cursor:default;background:#080a1899;place-content:center;justify-items:center;gap:8px;display:grid;position:absolute;inset:0}.chess-promo[hidden]{display:none}.chess-promo-title{color:#fff;text-shadow:0 2px 6px #0009;margin:0;font-size:15px;font-weight:900}.chess-promo-row{border:2px solid var(--gold);background:#1b2240;border-radius:14px;gap:6px;padding:6px;display:flex;box-shadow:0 10px 26px #0000008c}.chess-promo-piece{width:clamp(48px, calc(var(--board) / 5.5), 88px);aspect-ratio:1;cursor:pointer;background:#eeeed2;border:0;border-radius:10px;padding:3px}.chess-promo-piece:nth-child(2n){background:#769656}.chess-promo-piece img{pointer-events:none;width:100%;height:100%;display:block}.chess-actions{grid-area:actions}.chess-board-wrap.revealing .chess-actions{visibility:hidden}.chess-foot{grid-area:foot;justify-content:center;align-items:center;width:100%;min-height:30px;display:flex}.chess-hint{color:var(--muted);text-align:center;margin:0;font-size:14px;font-weight:700;line-height:1.2}.chess-hint.warn{color:var(--danger)}.chess-hint[hidden],.chess-rival[hidden]{display:none}.chess-rival{color:#ffb3c1;white-space:nowrap;background:#ff6f9129;border:1px solid #ff6f918c;border-radius:999px;align-items:center;gap:6px;height:30px;margin:0;padding:0 14px;font-size:15px;font-weight:900;animation:.28s cubic-bezier(.2,1.4,.4,1) both option-in;display:inline-flex}.chess-rival-move{color:#fff}.chess-board-wrap.side .chess-side{white-space:normal;padding:4px 10px 4px 5px;font-size:13px}.chess-board-wrap.side .chess-actions{width:100%}.chess-board-wrap.side .chess-foot{justify-content:flex-start}.chess-board-wrap.side .chess-hint{text-align:left;font-size:12.5px}.howto-stage .chess-joker,.howto-stage .chess-rival{display:none}.howto-stage .chess-lock{min-height:40px;padding:0 10px;font-size:15px}.howto-stage .chess-reset{width:44px;min-height:40px}@media (prefers-reduced-motion:reduce){.chess-piece{transition:none!important}.chess-piece.appear,.chess-sq.mated,.chess-sq.hinted,.chess-rival{animation:none}}body:has(.screen.match[data-game=chess]){--tint:#1e9e5a;--tint-deep:#0a2616}.maze-area.fit-mode .maze-canvas{visibility:hidden}.fit-board{position:absolute;inset:0}.fit-board[hidden]{display:none}.fit-canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.fit-frame{pointer-events:none;border-radius:16px;position:absolute}.fit-piece{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:10px;margin:0;padding:0;position:absolute}.fit-piece:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.fit-board.revealing .fit-piece{cursor:default}.fit-foot{pointer-events:none;justify-content:center;align-items:center;gap:8px;display:flex;position:absolute}.howto-stage .fit-rival{display:none}body:has(.screen.match[data-game=puzzle_fit]){--tint:#ffb23d;--tint-deep:#2d1f05}img.img-missing,.maze-area.rps-mode .maze-canvas{visibility:hidden}.rps-board{flex-direction:column;justify-content:space-evenly;gap:8px;width:min(100%,680px);height:min(100%,1040px);margin:auto;padding:4px 12px 2px;display:flex;position:absolute;inset:0;container-type:inline-size}.rps-board[hidden]{display:none}.rps-arena{flex:1 1 0;grid-template-columns:1fr 1fr;gap:10px;min-height:0;max-height:calc(75cqw - 7px);display:grid;position:relative}.rps-slot{background:linear-gradient(#401820f0,#1c1028f0);border:2px solid #ffffff42;border-radius:22px;flex-direction:column;min-width:0;min-height:0;padding:8px 8px 6px;transition:border-color .2s,box-shadow .25s,opacity .3s,filter .3s;display:flex;position:relative;box-shadow:0 8px 22px #0006,inset 0 0 28px #ff5a5a14}.rps-slot.you{border-color:#2ee6c59e}.rps-slot.rival{border-color:#ff6f919e}.rps-slot.you.locked{box-shadow:0 0 0 2px #2ee6c573,0 0 26px #2ee6c54d,0 8px 22px #0006}.rps-slot.rival.ready{box-shadow:0 0 0 2px #ff6f9173,0 0 26px #ff6f914d,0 8px 22px #0006}.rps-head{justify-content:space-between;align-items:center;gap:6px;min-height:22px;display:flex}.rps-slot.rival .rps-head{flex-direction:row-reverse}.rps-who{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:clamp(12px,3.4vw,16px);font-weight:900}.rps-slot.you .rps-who{color:#8cf5e2}.rps-slot.rival .rps-who{color:#ffa3b8}.rps-pips{gap:5px;display:flex}.rps-pip{background:#ffffff1a;border:1.5px solid #ffffff57;border-radius:50%;width:13px;height:13px}.rps-slot.you .rps-pip.on{background:var(--success);border-color:#c4ffe0;box-shadow:0 0 10px #3df08fcc}.rps-slot.rival .rps-pip.on{background:#ff6f91;border-color:#ffd0da;box-shadow:0 0 10px #ff6f91cc}.rps-pip.fresh{animation:.55s cubic-bezier(.3,1.7,.5,1) both rps-pip-pop}@keyframes rps-pip-pop{0%{opacity:.3;transform:scale(2.4)}}.rps-hand{flex:1 1 0;place-items:center;min-height:0;display:grid;position:relative}.rps-q{color:#ffb4b4;text-shadow:0 0 16px #ff5a5a,0 0 42px #ff5a5ab3;font-size:clamp(52px,16vw,150px);font-weight:900;line-height:1;animation:1.7s ease-in-out infinite rps-glow}.rps-slot.rival.ready .rps-q{color:#fff;animation-duration:.9s}@keyframes rps-glow{50%{opacity:.62;transform:scale(.93)}}.rps-ready{background:var(--success);color:#03301a;opacity:0;border-radius:50%;place-items:center;width:28px;height:28px;font-size:16px;font-weight:900;line-height:1;transition:opacity .2s,transform .3s cubic-bezier(.3,1.6,.5,1);display:grid;position:absolute;top:2px;right:2px;transform:scale(.4);box-shadow:0 0 14px #3df08fb3}.rps-ready:before{content:"✓"}.rps-ready.on{opacity:1;transform:none}.rps-pick{object-fit:contain;pointer-events:none;filter:drop-shadow(0 6px 10px #00000073);width:100%;height:100%;padding:4%}.rps-pick.reveal{animation:.4s cubic-bezier(.2,1.6,.4,1) both rps-throw}@keyframes rps-throw{0%{opacity:0;transform:scale(.4)rotate(-14deg)}}.rps-none{aspect-ratio:1;color:#ffffff80;border:3px dashed #ffffff57;border-radius:50%;place-items:center;width:46%;max-width:90px;font-size:30px;font-weight:900;line-height:1;display:grid}.rps-tag{min-height:22px;color:var(--muted);justify-content:center;align-items:center;font-size:14px;font-weight:900;display:flex}.rps-slot.bob .rps-hand{animation:.3s ease-in-out 3 rps-bob}@keyframes rps-bob{50%{transform:translateY(-16%)rotate(-4deg)}}.rps-slot.win{border-color:var(--success);box-shadow:0 0 0 2px var(--success), 0 0 34px #3df08f99, 0 8px 22px #0006}.rps-slot.win .rps-tag{color:var(--success);font-size:20px}.rps-slot.lose{opacity:.55;filter:saturate(.5)}.rps-slot.tie{border-color:#ffffff80}.rps-vs{z-index:2;color:#2a0c0c;letter-spacing:.02em;pointer-events:none;background:#ff5a5a;border-radius:50%;place-items:center;width:44px;height:44px;margin:-22px 0 0 -22px;font-size:15px;font-weight:900;display:grid;position:absolute;top:50%;left:50%;box-shadow:0 0 0 4px #0b1020eb,0 0 22px #ff5a5aa6}.rps-band{flex-direction:column;flex:none;justify-content:center;align-items:center;gap:2px;min-height:72px;display:flex}.rps-round{letter-spacing:.05em;text-transform:uppercase;font-size:clamp(20px,5.4vw,28px);font-weight:900}.rps-goal{color:var(--muted);font-size:13px;font-weight:700}.rps-picks{flex:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-bottom:8px;display:grid}.rps-btn{cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:linear-gradient(#46222d,#281229);border:2px solid #ff5a5a8c;border-radius:22px;flex-direction:column;justify-content:center;align-items:center;gap:4px;height:clamp(104px,min(19dvh,40cqw),230px);padding:8px 4px 7px;transition:transform 80ms,box-shadow 80ms,opacity .25s,filter .25s,border-color .2s;display:flex;position:relative;box-shadow:0 6px #12060f,0 0 20px #ff5a5a38}.rps-btn img{object-fit:contain;pointer-events:none;filter:drop-shadow(0 4px 6px #0006);flex:1 1 0;width:80%;min-height:0}.rps-btn-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:clamp(13px,3.6vw,18px);font-weight:900;overflow:hidden}.rps-btn:active:not(:disabled){transform:translateY(4px)scale(.97);box-shadow:0 2px #12060f,0 0 12px #ff5a5a4d}.rps-btn:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.rps-btn:disabled{cursor:default}.rps-board.locked .rps-btn:not(.chosen),.rps-board.revealing .rps-btn:not(.chosen){opacity:.38;filter:saturate(.5)}.rps-btn.chosen{border-color:var(--success);box-shadow:0 6px #0b3a22,0 0 24px #3df08f80}.howto-stage .rps-board{justify-content:flex-start;gap:6px;height:100%;padding:6px 8px 4px}.howto-stage .rps-arena{max-height:none}.howto-stage .rps-band{display:none}.howto-stage .rps-picks{flex:0 0 34%;gap:8px;padding-bottom:0}.howto-stage .rps-btn{border-radius:16px;gap:0;height:100%;padding:4px 2px 3px}.howto-stage .rps-btn-name{font-size:11px}.howto-stage .rps-slot{border-radius:16px;padding:5px 6px 3px}.howto-stage .rps-head{min-height:16px}.howto-stage .rps-who{font-size:10px}.howto-stage .rps-pip{width:9px;height:9px}.howto-stage .rps-q{font-size:44px}.howto-stage .rps-tag{min-height:16px;font-size:12px}.howto-stage .rps-vs{width:32px;height:32px;margin:-16px 0 0 -16px;font-size:11px}@media (prefers-reduced-motion:reduce){.rps-q,.rps-slot.bob .rps-hand,.rps-pick.reveal,.rps-pip.fresh{animation:none}.rps-btn,.rps-slot,.rps-ready{transition:none}}body:has(.screen.match[data-game=rps]){--tint:#ff5a5a;--tint-deep:#2a0c0c}.maze-area.penalty-mode .maze-canvas{visibility:hidden}.pen-board{isolation:isolate;color:#fff;--gw:300px;--gh:107px;--gtop:6px;--goal-top:120px;--feet:113px;--kh:83px;--bs:50px;--by:280px;--zone-c:#ff7a3d;--zone-rgb:255, 122, 61;--zone-soft:#ff7a3d8c;position:absolute;inset:0;overflow:hidden}.pen-board[hidden]{display:none}.pen-board[data-role=keep]{--zone-c:#2ee6e6;--zone-rgb:46, 230, 230;--zone-soft:#2ee6e680}.pen-content{z-index:2;flex-direction:column;gap:3px;width:min(100%,760px);height:100%;margin:0 auto;padding:4px 0 0;display:flex;position:relative}.pen-scene{z-index:0;pointer-events:none;background:#05080f;position:absolute;inset:0;overflow:hidden}.pen-stands{height:calc(var(--goal-top) + var(--gh) * .58);position:absolute;top:0;left:0;right:0;overflow:hidden}.pen-stands:after{content:"";background:linear-gradient(#03060cdb 0%,#03060c4d 52%,#03060c8c 100%);position:absolute;inset:0}.pen-crowd{width:100%;height:100%;display:block}.pen-twinkle{z-index:1;background:#fff6d5;border-radius:50%;width:3px;height:3px;animation:2.6s ease-in-out infinite pen-twinkle;position:absolute;box-shadow:0 0 6px 1px #fff6d5cc}@keyframes pen-twinkle{0%,to{opacity:.05}50%{opacity:.95}}.pen-flood{width:80%;height:80%;position:absolute;top:-10%}.pen-flood.left{background:radial-gradient(at 46% 22%,#fff9def2,#fff7d66b 16%,#fff7d624 38%,#0000 66%);left:-20%}.pen-flood.right{background:radial-gradient(at 54% 22%,#fff9def2,#fff7d66b 16%,#fff7d624 38%,#0000 66%);right:-20%}.pen-beam{opacity:.9;background:linear-gradient(176deg,#fff7d642,#fff7d614 55%,#0000 88%);width:66%;height:86%;position:absolute;top:0}.pen-beam.left{clip-path:polygon(0 0,22% 0,100% 100%,46% 100%);left:0}.pen-beam.right{clip-path:polygon(78% 0,100% 0,54% 100%,0 100%);right:0}.pen-boards{left:0;right:0;top:calc(var(--goal-top) + var(--gh) * .58);height:calc(var(--gh) * .28);background:linear-gradient(#0f2e60,#081c42 58%,#061330);border-top:2px solid #43d8ff;border-bottom:2px solid #43d8ff73;align-items:center;display:flex;position:absolute;overflow:hidden;box-shadow:0 0 18px #43d8ff59}.pen-boards-track{white-space:nowrap;opacity:.62;flex:none;animation:30s linear infinite pen-marquee;display:flex}.pen-boards-track span{font-size:calc(var(--gh) * .13);letter-spacing:.3em;color:#c6f1ff;text-shadow:0 0 10px #43d8ffd9;flex:none;font-style:italic;font-weight:900}@keyframes pen-marquee{to{transform:translate(-50%)}}.pen-grass-back{left:0;right:0;top:calc(var(--goal-top) + var(--gh) * .86);height:calc(var(--gh) * .14);background:linear-gradient(#0b3419,#0f4421);position:absolute}.pen-grass{left:0;right:0;top:calc(var(--goal-top) + var(--gh));background:radial-gradient(85% 60% at 50% 0,#c4ffce57,#0000 72%),linear-gradient(#1d8239 0 8%,#17702f 8% 20%,#1d8239 20% 36%,#17702f 36% 58%,#1d8239 58% 100%);border-top:3px solid #fffffff0;position:absolute;bottom:0;box-shadow:0 -2px 12px #ffffff52}.pen-lines{filter:drop-shadow(0 0 5px #ffffff59);width:100%;height:100%;display:block;position:absolute;inset:0}.pen-line-side{fill:#ffffffd1}.pen-line-six{fill:none;stroke:#ffffffc7;stroke-width:3px}.pen-vignette{background:radial-gradient(125% 92% at 50% 42%,#0000 52%,#0000009e 100%);position:absolute;inset:0}.pen-score{--slot:clamp(22px, min(3.6dvh, 5.6vw), 44px);background:#050a12d6;border:1px solid #ffffff29;border-radius:16px;flex:none;align-self:center;gap:4px;width:min(100% - 8px,560px);padding:5px 10px;display:grid;box-shadow:0 6px 18px #0000006b}.pen-row{min-height:calc(var(--slot) + 2px);align-items:center;gap:10px;display:flex;position:relative}.pen-who{letter-spacing:.1em;text-transform:uppercase;width:clamp(52px,8vw,78px);color:var(--muted);flex:none;font-size:clamp(12px,1.7vw,18px);font-weight:900}.pen-row.you .pen-who{color:#8cf5e2}.pen-row.rival .pen-who{color:#ffa3b8}.pen-slots{grid-auto-flow:column;grid-auto-columns:minmax(0, var(--slot));flex:1 1 0;justify-content:start;gap:clamp(6px,1vw,10px);min-width:0;display:grid}.pen-slot{aspect-ratio:1;box-sizing:border-box;background:#ffffff12;border:2px solid #ffffff4d;border-radius:50%;place-items:center;width:100%;display:grid}.pen-slot.sd{border-color:#ffd36a8c}.pen-slot svg{width:66%;height:66%;display:block}.pen-slot[data-state=goal]{background:radial-gradient(circle at 34% 28%,#8dffb8,#1fbf63 70%);border-color:#c4ffe0;box-shadow:0 0 10px #3df08fb3}.pen-slot[data-state=miss]{background:radial-gradient(circle at 34% 28%,#ff9d9d,#d12b3a 70%);border-color:#ffc9c9;box-shadow:0 0 9px #ff5a648c}.pen-slot[data-current]{background:#ffd36a2e;border-color:#ffd36a;animation:1s ease-in-out infinite pen-current}.pen-slot.fresh{animation:.5s cubic-bezier(.3,1.7,.5,1) both pen-slot-pop}@keyframes pen-current{50%{box-shadow:0 0 0 4px #ffd36a38,0 0 14px #ffd36acc}}@keyframes pen-slot-pop{0%{opacity:.3;transform:scale(2.3)}}.pen-total{text-align:right;font-variant-numeric:tabular-nums;flex:none;min-width:24px;font-size:clamp(22px,3vw,34px);font-weight:900;line-height:1}.pen-mark{flex:none;place-items:center;width:22px;height:22px;margin-left:-6px;display:grid}.pen-ready{color:#fff;opacity:0;background:#ff6f91;border-radius:50%;place-items:center;width:22px;height:22px;font-size:13px;font-weight:900;transition:opacity .2s,transform .25s cubic-bezier(.3,1.6,.5,1);display:grid;transform:scale(.5)}.pen-ready:before{content:"✓"}.pen-ready.on{opacity:1;transform:none}.pen-row.rival.is-ready .pen-who{color:#fff}.pen-banner{text-align:center;text-shadow:0 2px 8px #000c;flex:none;justify-items:center;gap:0;min-height:40px;margin:0 4px;display:grid}.pen-role-line{max-width:100%}.pen-role{text-overflow:ellipsis;white-space:nowrap;vertical-align:top;letter-spacing:.07em;text-transform:uppercase;max-width:100%;color:var(--zone-c);text-shadow:0 0 16px var(--zone-soft), 0 2px 6px #000c;font-size:clamp(16px,5.4vw,30px);font-weight:900;line-height:1.25;display:inline-block;overflow:hidden}.pen-role:before{content:"";vertical-align:-.28em;filter:drop-shadow(0 2px 3px #0009);background:url(/penalty/ball.svg) 50%/contain no-repeat;width:1.25em;height:1.25em;margin-right:.4em;display:inline-block}.pen-board[data-role=keep] .pen-role:before{background-image:url(/penalty/gloves.svg)}.pen-cue-line{color:#d8e0f0;flex-wrap:wrap;justify-content:center;align-items:center;gap:0 6px;font-size:clamp(12.5px,1.7vw,18px);font-weight:800;line-height:1.3;display:flex}.pen-round{text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.pen-dot-sep{color:var(--muted)}.pen-sudden{color:#ffd36a;letter-spacing:.1em;text-transform:uppercase;background:#ffd36a2e;border:1px solid #ffd36ab3;border-radius:99px;margin-left:4px;padding:0 8px;font-size:11px;font-weight:900;line-height:1.7}.pen-sudden[hidden]{display:none}.pen-field{flex:1 1 0;min-height:0;position:relative}.pen-goal{top:var(--gtop);width:var(--gw);height:var(--gh);margin-left:calc(var(--gw) / -2);position:absolute;left:50%}.pen-net,.pen-frame{pointer-events:none;width:100%;height:100%;display:block;position:absolute;top:0;left:0;overflow:visible}.pen-net{z-index:0}.pen-frame{z-index:2;filter:drop-shadow(0 0 5px #ffffff80)drop-shadow(0 2px 2px #0000008c)}.pen-keeper{z-index:3;width:calc(var(--kh) * .75);height:calc(var(--kh) * .94);left:calc(50% - var(--kh) * .375);pointer-events:none;will-change:transform;transform-origin:50% 100%;position:absolute;bottom:0}.pen-keeper img{object-fit:contain;filter:drop-shadow(0 4px 4px #00000080);width:100%;height:106.383%;display:block;position:absolute;top:0;left:0}.pen-dive{z-index:4;opacity:0;pointer-events:none;will-change:transform;width:0;height:0;position:absolute;top:0;left:0}.pen-dive img{object-fit:contain;filter:drop-shadow(0 4px 4px #00000080);width:100%;height:100%;display:block}.pen-dive.mirror img{transform:scaleX(-1)}.pen-board.diving .pen-keeper{opacity:0}.pen-board.diving .pen-dive{opacity:1}.pen-flash{z-index:2;opacity:0;pointer-events:none;position:absolute;inset:0}.pen-fx{z-index:4;pointer-events:none;position:absolute;inset:0}.pen-spark{width:calc(var(--gw) * .028);height:calc(var(--gw) * .028);border-radius:50%;position:absolute;box-shadow:0 0 8px}.pen-chip{white-space:nowrap;letter-spacing:.1em;text-transform:uppercase;background:#050a12d1;border:1px solid;border-radius:99px;margin-top:-2px;padding:0 7px;font-size:clamp(10px,1.4vw,15px);font-weight:900;line-height:1.6;transition:opacity .2s;position:absolute;top:100%;left:50%;transform:translate(-50%)}.pen-keeper[data-who=you] .pen-chip,.pen-ball[data-who=you] .pen-chip{color:#8cf5e2}.pen-keeper[data-who=rival] .pen-chip,.pen-ball[data-who=rival] .pen-chip{color:#ffa3b8}.pen-keeper .pen-chip{margin-top:calc(var(--kh) * .06 + 2px);top:100%}.pen-board.revealing .pen-chip{opacity:0}.pen-ball{z-index:4;width:var(--bs);height:var(--bs);left:calc(50% - var(--bs) / 2);top:calc(var(--by) - var(--bs) / 2);pointer-events:none;will-change:transform;position:absolute}.pen-ball img{width:100%;height:100%;display:block}.pen-board[data-role=shoot]:not(.locked) .pen-ball img{filter:drop-shadow(0 0 10px var(--zone-soft));animation:1.5s ease-in-out infinite pen-ball-ready}@keyframes pen-ball-ready{50%{transform:translateY(-7%)scale(1.04)}}.pen-spot{left:calc(50% - var(--bs) * .26);top:calc(var(--by) + var(--bs) * .33);width:calc(var(--bs) * .52);height:calc(var(--bs) * .14);background:#ffffffe6;border-radius:50%;position:absolute;box-shadow:0 0 14px #fff9}.pen-call{z-index:5;left:50%;top:calc(var(--feet) + (100% - var(--feet)) * .46);text-align:center;max-width:100%;font-size:calc(var(--gw) * .125);letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;pointer-events:none;paint-order:stroke fill;-webkit-text-stroke:3px #00000080;font-style:italic;font-weight:900;line-height:1;position:absolute;translate:-50% -50%}.pen-call:empty{display:none}.pen-call.goal{color:#d4ffe3;text-shadow:0 4px #00280e99,0 0 28px #3bf08a,0 0 60px #3bf08a99}.pen-call.save{color:#dceeff;text-shadow:0 4px #00143299,0 0 28px #5aaaff,0 0 60px #5aaaff99}.pen-call.miss{color:#ffdacf;text-shadow:0 4px #320a0099,0 0 28px #ff7a5a,0 0 60px #ff7a5a8c}.pen-zone{box-sizing:border-box;color:var(--zone-c);border:2px solid rgba(var(--zone-rgb), .55);background:rgba(var(--zone-rgb), .1);box-shadow:inset 0 0 22px rgba(var(--zone-rgb), .16);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:10px;padding:0;transition:opacity .25s,filter .25s,background-color .18s,border-color .18s;position:absolute}@media (hover:hover) and (pointer:fine){.pen-zone:not(:disabled):hover{background:rgba(var(--zone-rgb), .18)}}.pen-zone:not(:disabled):active{background:rgba(var(--zone-rgb), .26)}.pen-zone:focus-visible{outline-offset:1px;outline:3px solid #fff}.pen-zone:disabled{cursor:default}.pen-zone.chosen{background:rgba(var(--zone-rgb), .32);box-shadow:inset 0 0 26px rgba(var(--zone-rgb), .3), 0 0 14px rgba(var(--zone-rgb), .5);border:3px solid #fff}.pen-num{box-sizing:border-box;border:1px solid rgba(var(--zone-rgb), .8);color:#fff;background:#050a12d1;border-radius:50%;place-items:center;width:clamp(19px,2.6vw,28px);height:clamp(19px,2.6vw,28px);font-size:clamp(11px,1.5vw,16px);font-weight:900;line-height:1;transition:opacity .2s;display:grid;position:absolute;top:5px;left:5px}.pen-icon{z-index:5;height:min(64%, calc(var(--gh) * .32));aspect-ratio:1;object-fit:contain;opacity:0;pointer-events:none;filter:drop-shadow(0 3px 4px #0000008c);width:auto;transition:opacity .2s,transform .28s cubic-bezier(.3,1.6,.5,1);position:absolute;top:50%;left:50%;transform:scale(.4)}@media (hover:hover) and (pointer:fine){.pen-board[data-role=shoot] .pen-zone:not(:disabled):hover .pen-icon.ball,.pen-board[data-role=keep] .pen-zone:not(:disabled):hover .pen-icon.gloves{opacity:.9;transform:scale(.9)}}.pen-board[data-role=shoot] .pen-zone:focus-visible .pen-icon.ball,.pen-board[data-role=keep] .pen-zone:focus-visible .pen-icon.gloves{opacity:.9;transform:scale(.9)}.pen-zone[data-mark~=shot] .pen-icon.ball,.pen-zone[data-mark~=dive] .pen-icon.gloves{opacity:1;transform:scale(1)}.pen-zone[data-mark=shot\ dive] .pen-icon.ball{transform:translate(-26%,-18%)scale(.8)}.pen-zone[data-mark=shot\ dive] .pen-icon.gloves{transform:translate(26%,14%)scale(.8)}.pen-board.revealing .pen-zone .pen-icon.ball,.pen-board.revealing .pen-zone .pen-icon.gloves{opacity:0}.pen-board.locked .pen-zone:not([data-mark]),.pen-board.revealing .pen-zone:not([data-mark]){opacity:.3;filter:saturate(.4)}.pen-board.revealing .pen-num{opacity:0}.pen-zone[data-mark~=shot]{--zone-c:#ff7a3d;--zone-rgb:255, 122, 61}.pen-zone[data-mark~=dive]{--zone-c:#2ee6e6;--zone-rgb:46, 230, 230}.pen-zone[data-mark=shot\ dive]{--zone-c:#ffd36a;--zone-rgb:255, 211, 106}.pen-board.revealing .pen-zone[data-mark]{background:rgba(var(--zone-rgb), .3);border-color:rgba(var(--zone-rgb), .95);box-shadow:inset 0 0 26px rgba(var(--zone-rgb), .3), 0 0 12px rgba(var(--zone-rgb), .4)}.pen-tags{z-index:6;pointer-events:none;gap:3px;display:flex;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.pen-tag{letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;background:#050a12e0;border:1px solid;border-radius:99px;padding:0 6px;font-size:clamp(10px,1.4vw,15px);font-weight:900;line-height:1.6}.pen-tag.shot{color:#ff9c6b}.pen-tag.dive{color:#5cf2f2}.pen-zone[data-mark=shot\ dive] .pen-tags,.pen-board.compact .pen-score,.pen-board.compact .pen-banner{display:none}.pen-board.compact .pen-content{gap:0;padding:0}.pen-board.compact .pen-num{width:14px;height:14px;font-size:9px;top:3px;left:3px}.pen-board.compact .pen-chip,.pen-board.compact .pen-tag{padding:0 4px;font-size:8px}@media (prefers-reduced-motion:reduce){.pen-twinkle,.pen-boards-track,.pen-ball img,.pen-slot[data-current],.pen-slot.fresh{animation:none}.pen-icon,.pen-zone,.pen-ready,.pen-chip{transition:none}}body:has(.screen.match[data-game=penalty]){--tint:#3bd65a;--tint-deep:#06160b}.maze-area.code-mode .maze-canvas{visibility:hidden}.code-board{color:#fff;justify-content:center;padding:2px 56px 4px;display:flex;position:absolute;inset:0;container-type:size}.code-board[hidden]{display:none}.code-inner{--ice:#7fe3ff;--ice-deep:#1e8fbf;--green:#3df08a;--yellow:#ffd24a;--key-h:clamp(48px, 8.4cqh, 86px);--tile-h:clamp(32px, 5.4cqh, 78px);flex-direction:column;gap:clamp(5px,1.1cqh,11px);width:100%;max-width:520px;height:100%;display:flex}.code-score{background:#041020b8;border:1px solid #7fe3ff38;border-radius:12px;flex:none;grid-template-columns:1fr auto 1fr;align-items:center;gap:6px;min-height:30px;padding:3px 8px;display:grid;box-shadow:inset 0 1px #ffffff0f}.code-side{align-items:center;gap:5px;min-width:0;display:flex;position:relative}.code-side.rival{justify-content:flex-end}.code-who{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:900}.code-side.you .code-who{color:#8fe9ff}.code-side.rival .code-who{color:#ffa3b8}.code-pips{gap:4px;display:flex}.code-pip{background:#ffffff14;border:1.5px solid #ffffff52;border-radius:50%;width:11px;height:11px}.code-side.you .code-pip.on{background:var(--ice);border-color:#e1f9ff;box-shadow:0 0 10px #7fe3ffd9}.code-side.rival .code-pip.on{background:#ff6f91;border-color:#ffd0da;box-shadow:0 0 10px #ff6f91cc}.code-pip.fresh{animation:.55s cubic-bezier(.3,1.7,.5,1) both code-pip-pop}@keyframes code-pip-pop{0%{opacity:.3;transform:scale(2.4)}}.code-set{white-space:nowrap;justify-items:center;line-height:1.05;display:grid}.code-set-n{letter-spacing:.05em;text-transform:uppercase;font-size:13px;font-weight:900}.code-set-goal{color:var(--muted);font-size:10px;font-weight:700}.code-body{flex-direction:column;flex:1 1 0;gap:clamp(5px,1.1cqh,11px);min-height:0;display:flex;position:relative}.code-head{text-align:center;flex:none;gap:2px;display:grid}.code-title{letter-spacing:.01em;text-shadow:0 0 16px #7fe3ff66;margin:0;font-size:clamp(15px,3.1cqh,24px);font-weight:900;line-height:1.15}.code-board.is-cracked .code-title{color:#d4ffe3;text-shadow:0 0 18px #3df08acc}.code-hint{color:#a9bdd0;min-height:1.3em;margin:0;font-size:clamp(11px,2cqh,14px);font-weight:700;line-height:1.3}.code-info{flex-wrap:wrap;flex:none;justify-content:space-between;align-items:baseline;gap:1px 10px;padding:0 2px;font-size:12px;font-weight:800;display:flex}.code-info[hidden]{display:none}.code-own-label{color:var(--muted);margin-right:6px}.code-own-digits{color:var(--ice);letter-spacing:.24em;text-shadow:0 0 9px #7fe3ffb3;font-variant-numeric:tabular-nums;font-size:15px}.code-left{color:#cfe3f2}.code-left.low{color:#ff8fa3}.code-stage{background:linear-gradient(#0208129e,#0510205c);border:1px solid #7fe3ff24;border-radius:14px;flex:1 1 0;min-height:0;position:relative;overflow:hidden;box-shadow:inset 0 2px 12px #00000080}.code-grid{overscroll-behavior:contain;scrollbar-width:none;touch-action:pan-y;flex-direction:column;gap:6px;padding:8px 22px;display:flex;position:absolute;inset:0;overflow-y:auto}.code-grid::-webkit-scrollbar{display:none}.code-ghosts{display:contents}.code-row{width:min(100%, calc(var(--tile-h) * 5.6 + 18px));flex:none;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0 auto;display:grid;position:relative}.code-rownum{color:#a0bed78c;place-items:center;width:16px;font-size:10px;font-weight:800;display:grid;position:absolute;top:0;bottom:0;left:-19px}.code-row.ghost{opacity:.3}.code-row.ghost .code-tile{box-shadow:none;background:0 0;border-style:dashed}.code-row.current .code-rownum{color:var(--ice)}.code-tile{box-sizing:border-box;height:var(--tile-h);background:linear-gradient(#040a14 0%,#0a1626 100%);border:1px solid #14324d;border-radius:10px;place-items:center;min-width:0;font-family:ui-monospace,SF Mono,Cascadia Mono,Menlo,Consolas,monospace;display:grid;position:relative;box-shadow:inset 0 3px 8px #000000d9,inset 0 -1px #7fe3ff1a,0 1px #ffffff0f}.code-tile b{font-size:calc(var(--tile-h) * .58);color:#0000;font-variant-numeric:tabular-nums;font-weight:800;line-height:1}.code-tile.fill b{color:var(--ice);text-shadow:0 0 10px #7fe3ffbf,0 0 2px #fffc}.code-tile.next{border-color:#7fe3ff8c;box-shadow:inset 0 3px 8px #000000d9,0 0 12px #7fe3ff38}.code-tile.next:after{content:"";background:var(--ice);height:3px;box-shadow:0 0 8px var(--ice);border-radius:2px;animation:1s steps(2,jump-none) infinite code-caret;position:absolute;bottom:17%;left:24%;right:24%}@keyframes code-caret{50%{opacity:0}}.code-row.current.sending .code-tile.fill b{opacity:.55}.code-row.shake{animation:.38s code-shake}@keyframes code-shake{20%{transform:translate(-6px)}40%{transform:translate(5px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}.code-cue{box-sizing:border-box;pointer-events:none;border-radius:50%;width:7px;height:7px;position:absolute;top:5px;right:5px}.code-tile.mark-g{background:linear-gradient(#5af6a0 0%,#27c46c 55%,#169350 100%);border-color:#c0ffdb;box-shadow:inset 0 2px #ffffff73,inset 0 -3px 6px #003c1973,0 0 14px #3df08a80}.code-tile.mark-g b{color:#04210f;text-shadow:0 1px #ffffff59}.code-tile.mark-g .code-cue{background:#04210f}.code-tile.mark-y{background:linear-gradient(#ffe681 0%,#f2bc2a 55%,#c48f0c 100%);border-color:#fff1bd;box-shadow:inset 0 2px #ffffff73,inset 0 -3px 6px #50320073,0 0 14px #ffd24a73}.code-tile.mark-y b{color:#2b1d00;text-shadow:0 1px #ffffff59}.code-tile.mark-y .code-cue{border:2.5px solid #2b1d00;width:10px;height:10px}.code-tile.mark-n{background:linear-gradient(#16263c,#0d1a2b);border-color:#243f5b;box-shadow:inset 0 2px #ffffff0f,inset 0 -2px 4px #0006}.code-tile.mark-n b{color:#86a2ba}.code-tile.mark-n .code-cue{display:none}.code-tile.flip{animation:.56s cubic-bezier(.4,0,.2,1) both code-flip;animation-delay:calc(var(--i) * .11s)}.code-tile.flip b{animation:.56s linear both code-flip-ink;animation-delay:calc(var(--i) * .11s)}@keyframes code-flip{0%{background:linear-gradient(#040a14 0%,#0a1626 100%);border-color:#14324d;transform:perspective(320px)rotateX(0)}50%{transform:perspective(320px)rotateX(90deg)}to{transform:perspective(320px)rotateX(0)}}@keyframes code-flip-ink{0%{color:var(--ice);text-shadow:0 0 10px #7fe3ffbf}}.code-row.cracked .code-tile{animation:1s ease-out .45s both code-crack}@keyframes code-crack{35%{filter:brightness(1.25);transform:translateY(-4px)scale(1.06)}}.code-burst{z-index:3;pointer-events:none;width:0;height:0;position:absolute;top:50%;left:50%}.code-spark{background:var(--c);width:7px;height:7px;box-shadow:0 0 8px var(--c);border-radius:50%;margin:-3.5px 0 0 -3.5px;animation:.9s ease-out .5s both code-spark;position:absolute}@keyframes code-spark{0%{transform:rotate(var(--a)) translateX(0) scale(1);opacity:1}to{transform:rotate(var(--a)) translateX(var(--d)) scale(.2);opacity:0}}.code-board[data-phase=entry] .code-grid{justify-content:center;padding-bottom:38px;overflow:hidden}.code-board[data-phase=entry] .code-row{--tile-h:clamp(54px, 11cqh, 104px);width:min(100%, calc(var(--tile-h) * 3.4 + 24px));gap:8px}.code-board[data-phase=entry] .code-rownum{display:none}.code-row.current.locked .code-tile{border-color:#7fe3ffb3;box-shadow:inset 0 3px 8px #000000d9,0 0 16px #7fe3ff4d}.code-row.current.revealed .code-tile{animation:.8s ease-out both code-reveal-pulse}@keyframes code-reveal-pulse{40%{filter:brightness(1.35);transform:scale(1.05)}}.code-padlock{color:var(--ice);background:#7fe3ff1f;border:1px solid #7fe3ff80;border-radius:99px;align-items:center;padding:5px 16px;display:flex;position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%);box-shadow:0 0 14px #7fe3ff33}.code-padlock svg{width:22px;height:22px;display:block}.code-overlay{z-index:4;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#030b18e0;border-radius:14px;place-items:center;padding:8px;display:grid;position:absolute;inset:0}.code-overlay[hidden]{display:none}.code-count{text-align:center;justify-items:center;gap:6px;display:grid}.code-count-n{color:var(--ice);font-variant-numeric:tabular-nums;text-shadow:0 0 24px #7fe3ffd9,0 0 64px #7fe3ff66;font-size:clamp(72px,22cqh,170px);font-weight:900;line-height:1;animation:.9s ease-out both code-count}@keyframes code-count{0%{opacity:0;transform:scale(1.7)}25%{opacity:1;transform:scale(1)}85%{opacity:1}to{opacity:.5;transform:scale(.92)}}.code-count-text{color:#cfe3f2;max-width:100%;margin:0;font-size:clamp(13px,2.4cqh,18px);font-weight:800}.code-reveal{text-align:center;justify-items:center;gap:clamp(8px,1.8cqh,16px);width:100%;display:grid}.code-reveal-title{margin:0;font-size:clamp(20px,4.2cqh,32px);font-weight:900;line-height:1.15;animation:.45s cubic-bezier(.2,1.5,.4,1) both code-throw}@keyframes code-throw{0%{opacity:0;transform:scale(.6)}}.code-overlay.win .code-reveal-title{color:#d4ffe3;text-shadow:0 0 22px #3df08ad9}.code-overlay.lose .code-reveal-title{color:#ffc2cd;text-shadow:0 0 22px #ff4d6db3}.code-overlay.none .code-reveal-title{color:#dfeaf3}.code-secret{justify-items:center;gap:4px;display:grid}.code-secret-label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:900}.code-secret-tiles{gap:6px;display:flex}.code-secret-tiles .code-tile{--tile-h:clamp(32px, 6.4cqh, 54px);width:calc(var(--tile-h) * .92)}.code-secret.rival .code-tile.fill b{color:#ffb4c4;text-shadow:0 0 10px #ff6f91b3}.code-overlay.win .code-secret.rival .code-tile{border-color:#3df08acc;box-shadow:inset 0 3px 8px #000000d9,0 0 14px #3df08a66}.code-overlay.lose .code-secret.you .code-tile{border-color:#ff6f91cc;box-shadow:inset 0 3px 8px #000000d9,0 0 14px #ff6f9159}.code-pad{flex:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 8px;padding-bottom:5px;display:grid}.code-key{box-sizing:border-box;height:var(--key-h);color:var(--ice);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:repeating-linear-gradient(90deg,#ffffff0b 0 1px,#0000 1px 3px),linear-gradient(#52667d 0%,#2d3d52 16%,#202c3d 60%,#182231 100%);border:1px solid #bedef852;border-radius:14px;place-items:center;padding:0;transition:transform 60ms,box-shadow 60ms,filter .15s,opacity .15s;display:grid;position:relative;box-shadow:inset 0 1px #ffffff5c,inset 0 -2px 5px #00000080,0 4px #09101a,0 7px 12px #00000080}.code-key-d{font-family:ui-monospace,SF Mono,Cascadia Mono,Menlo,Consolas,monospace;font-size:calc(var(--key-h) * .5);color:var(--ice);text-shadow:0 0 9px #7fe3ffb3,0 0 2px #ffffff8c;font-weight:800;line-height:1;transition:color 60ms,text-shadow 60ms}.code-key:active:not(:disabled){background:repeating-linear-gradient(90deg,#ffffff0b 0 1px,#0000 1px 3px),linear-gradient(#3b4d62 0%,#263547 60%,#1b2636 100%);transform:translateY(3px);box-shadow:inset 0 1px #fff3,inset 0 -1px 3px #00000080,0 1px #09101a,0 2px 5px #00000080}.code-key:active:not(:disabled) .code-key-d{color:#fff;text-shadow:0 0 14px #7fe3ff,0 0 30px #7fe3fff2}.code-key:focus-visible{outline:3px solid var(--ice);outline-offset:2px}.code-key:disabled{opacity:.36;filter:saturate(.35);cursor:default}.code-key:disabled .code-key-d{color:#7690a6;text-shadow:none}.code-key-icon{font-size:calc(var(--key-h) * .44);color:#c4e2f5;place-items:center;display:grid}.code-key-icon svg{width:1em;height:1em;display:block}.code-key.enter{background:repeating-linear-gradient(90deg,#ffffff0d 0 1px,#0000 1px 3px),linear-gradient(#46b6dc 0%,#2287b0 40%,#165d80 100%);border-color:#c8eeff99;flex-direction:column;justify-content:center;align-items:center;gap:0;display:flex;box-shadow:inset 0 1px #ffffff80,inset 0 -2px 5px #00284680,0 4px #0a3046,0 7px 12px #00000080,0 0 16px #7fe3ff40}.code-key.enter .code-key-icon{color:#fff;font-size:calc(var(--key-h) * .4);filter:drop-shadow(0 0 5px #fff9)}.code-key-cap{letter-spacing:.08em;text-transform:uppercase;color:#e8f8ff;font-size:10px;font-weight:900;line-height:1}.code-key.enter:disabled{background:repeating-linear-gradient(90deg,#ffffff0b 0 1px,#0000 1px 3px),linear-gradient(#52667d 0%,#2d3d52 16%,#202c3d 60%,#182231 100%);border-color:#bedef852;box-shadow:inset 0 1px #ffffff5c,inset 0 -2px 5px #00000080,0 4px #09101a,0 7px 12px #00000080}.code-key.enter:active:not(:disabled){box-shadow:inset 0 1px #ffffff4d,inset 0 -1px 3px #00284680,0 1px #0a3046,0 2px 5px #00000080,0 0 22px #7fe3ff80}.code-rival-greens{gap:2px;display:inline-flex}.avatar-wrap>.code-rival-greens{position:absolute;top:calc(100% + 4px);left:50%;translate:-50%}.code-rg{background:#ffffff29;border-radius:2px;width:9px;height:6px;transition:background .25s,box-shadow .25s;display:block}.code-rg.on{background:var(--success);box-shadow:0 0 6px #3df08fd9}.screen.match.code-match .match-top{padding-bottom:10px}.code-board.compact .code-rival-greens{margin-left:2px}.code-board.compact .code-rg{width:11px;height:8px}.code-board.compact{padding:4px 8px}.code-board.compact .code-inner{--key-h:40px;--tile-h:31px;gap:5px;max-width:none}.code-board.compact .code-score{grid-template-columns:1fr 1fr;min-height:24px;padding:2px 8px}.code-board.compact .code-set{display:none}.code-board.compact .code-cue{width:6px;height:6px;top:3px;right:3px}.code-board.compact .code-tile.mark-y .code-cue{border-width:2px;width:8px;height:8px}.code-board.compact .code-tile.mark-g b,.code-board.compact .code-tile.mark-y b{transform:translate(-2px)}.code-board.compact .code-head,.code-board.compact .code-info{display:none}.code-board.compact .code-body{flex-direction:row;gap:8px}.code-board.compact .code-stage{flex:1 1 0}.code-board.compact .code-grid{gap:5px;padding:6px 6px 6px 22px}.code-board.compact .code-pad{flex:0 0 46%;grid-template-rows:repeat(4,minmax(0,1fr));gap:4px;padding-bottom:0}.code-board.compact .code-key{border-radius:10px;height:auto;box-shadow:inset 0 1px #ffffff5c,inset 0 -2px 4px #00000080,0 2px #09101a}.code-board.compact .code-key-cap{display:none}.code-board.compact .code-key.enter .code-key-icon{font-size:20px}.code-board.compact .code-count-n{font-size:56px}.code-board.compact .code-reveal-title{font-size:18px}.code-board.compact .code-secret-tiles .code-tile{--tile-h:28px}.code-board.compact .code-overlay{inset:0}@container (height<=440px){.code-hint{display:none}}@media (prefers-reduced-motion:reduce){.code-tile.flip,.code-tile.flip b,.code-row.cracked .code-tile,.code-spark,.code-count-n,.code-reveal-title,.code-pip.fresh,.code-tile.next:after,.code-row.shake,.code-row.current.revealed .code-tile{animation:none}.code-key,.code-key-d,.code-rg{transition:none}}body:has(.screen.match[data-game=code]){--tint:#1e9bd8;--tint-deep:#041528}.maze-area.four-mode .maze-canvas{visibility:hidden}.screen.match.four-match .timer{display:none}.four-board{--you:#2ee6c5;--rival:#ff5a5a;--cell:44px;--pad:7px;color:#fff;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:0;display:flex;position:absolute;inset:0}.four-board[hidden]{display:none}.four-head{gap:7px;width:100%;max-width:640px;padding:0 56px;display:grid;container-type:inline-size}.four-series{background:#060c28bd;border:1px solid #7896ff42;border-radius:12px;grid-template-columns:1fr auto 1fr;align-items:center;gap:6px;min-height:28px;padding:3px 9px;display:grid;box-shadow:inset 0 1px #ffffff0f}.four-side{align-items:center;gap:5px;min-width:0;display:flex}.four-side.rival{flex-direction:row-reverse}.four-who{text-overflow:ellipsis;white-space:nowrap;letter-spacing:.06em;text-transform:uppercase;min-width:0;color:var(--muted);font-size:10px;font-weight:900;display:none;overflow:hidden}@container (width>=330px){.four-who{display:inline}}.four-side.you .four-who{color:#8cf5e2}.four-side.rival .four-who{color:#ffa3b8}.four-swatch{border-radius:50%;flex:none;width:11px;height:11px;box-shadow:0 1px 2px #00000080}.four-swatch.you{background:radial-gradient(circle at 36% 30%,#d2fff6,#2ee6c5 45%,#0a8070)}.four-swatch.rival{background:radial-gradient(circle at 36% 30%,#ffd6cf,#ff5a5a 45%,#9c1b2e)}.four-pips{gap:4px;display:flex}.four-pip{background:#ffffff14;border:1.5px solid #ffffff52;border-radius:50%;width:11px;height:11px}.four-pip.you.on{background:var(--you);border-color:#d8fff7;box-shadow:0 0 10px #2ee6c5d9}.four-pip.rival.on{background:var(--rival);border-color:#ffd0da;box-shadow:0 0 10px #ff5a5acc}.four-pip.fresh{animation:.55s cubic-bezier(.3,1.7,.5,1) both four-pip-pop}@keyframes four-pip-pop{0%{opacity:.3;transform:scale(2.4)}}.four-round{letter-spacing:.03em;white-space:nowrap;font-size:12px;font-weight:900}.four-turn{--who:#9fb2ff;border:2px solid var(--who);background:#060c28d6;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-height:50px;padding:4px 18px 4px 8px;transition:border-color .2s,box-shadow .2s,background .2s;display:flex}.four-turn[data-turn=you]{--who:var(--you);box-shadow:0 0 0 1px #2ee6c538,0 0 22px #2ee6c552}.four-turn[data-turn=rival]{--who:var(--rival);box-shadow:0 0 0 1px #ff5a5a38,0 0 22px #ff5a5a4d}.four-turn.low[data-turn]{--who:#ffd24a;box-shadow:0 0 0 1px #ffd24a4d,0 0 22px #ffd24a66}.four-turn-label{text-overflow:ellipsis;white-space:nowrap;letter-spacing:.01em;min-width:0;font-size:clamp(15px,4.2vw,19px);font-weight:900;overflow:hidden}.four-clock{flex:none;place-items:center;width:38px;height:38px;display:grid;position:relative}.four-clock svg{width:100%;height:100%;position:absolute;inset:0}.four-clock-track{fill:none;stroke:#ffffff24;stroke-width:4px}.four-clock-arc{fill:none;stroke:var(--who);stroke-width:4px;stroke-linecap:round;transition:stroke-dashoffset 90ms linear,stroke .2s}.four-clock-n{font-variant-numeric:tabular-nums;font-size:16px;font-weight:900;line-height:1;position:relative}.four-turn.low .four-clock-n{color:#ffd24a;animation:.5s ease-in-out infinite alternate four-low}@keyframes four-low{to{transform:scale(1.18)}}.four-turn.idle .four-clock,.four-turn.result .four-clock{display:none}.four-turn.result{padding:4px 22px;animation:.4s cubic-bezier(.2,1.4,.4,1) both four-result-in;box-shadow:0 0 26px #ffffff1f}.four-turn.result .four-turn-label{font-size:clamp(17px,4.8vw,22px)}.four-turn.result.won{--who:#3df08a;background:#062e1ceb;box-shadow:0 0 26px #3df08a80}.four-turn.result.lost{--who:#ff6f91;background:#360c1ceb;box-shadow:0 0 22px #ff6f9159}.four-turn.result.drawn{--who:#dfe6ff}@keyframes four-result-in{0%{opacity:0;transform:scale(.7)}}.four-stage{flex:none;position:relative}.four-frame{width:calc(7 * var(--cell) + 2 * var(--pad));height:calc(6 * var(--cell) + 2 * var(--pad));border-radius:calc(var(--cell) * .36);position:relative;overflow:hidden;box-shadow:0 12px 28px #0000008c,0 0 0 1px #0a145acc}.four-frame.shake{animation:.4s four-shake}@keyframes four-shake{20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}.four-back{background:radial-gradient(120% 90% at 50% 15%,#0d1850,#040a26);position:absolute;inset:0}.four-discs,.four-rings{left:var(--pad);top:var(--pad);width:calc(7 * var(--cell));height:calc(6 * var(--cell));position:absolute}.four-rings{pointer-events:none}.four-plate{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.four-disc{--base:#2ee6c5;--hi:#cbfff4;--lo:#067a69;left:calc(var(--c) * var(--cell));top:calc(var(--r) * var(--cell));width:var(--cell);height:var(--cell);pointer-events:none;transition:opacity .3s,filter .3s;position:absolute}.four-disc.rival{--base:#ff5a5a;--hi:#ffd9d2;--lo:#962033}.four-disc[hidden]{display:none}.four-disc:before{content:"";background:radial-gradient(circle at 36% 30%, var(--hi) 0, var(--base) 36%, var(--lo) 100%);box-shadow:inset 0 calc(var(--cell) * -.05) calc(var(--cell) * .08) #0000004d, inset 0 calc(var(--cell) * .03) calc(var(--cell) * .05) #ffffff6b, 0 calc(var(--cell) * .02) calc(var(--cell) * .05) #00000080;border-radius:50%;position:absolute;inset:4%}.four-core{border:calc(var(--cell) * .05) solid #ffffff5c;box-shadow:inset 0 calc(var(--cell) * .03) calc(var(--cell) * .05) #00000047;border-radius:50%;position:absolute;inset:25%}.four-disc.rival .four-core{background:radial-gradient(circle at 40% 34%,#ffffff80,#ffffff29 75%);border:0;inset:34%}.four-disc.ghost{opacity:.4}.four-disc.last .four-core{box-shadow:0 0 calc(var(--cell) * .16) #ffffffe6;border-color:#fff;animation:1.3s ease-in-out infinite four-last}.four-disc.rival.last .four-core{background:#fff}@keyframes four-last{50%{opacity:.55}}.four-board.won .four-disc:not(.win),.four-board.lost .four-disc:not(.win){opacity:.32;filter:saturate(.55)}.four-disc.win{filter:brightness(1.2)}.four-ring{left:calc(var(--c) * var(--cell));top:calc(var(--r) * var(--cell));width:var(--cell);height:var(--cell);--glow:#2ee6c5f2;position:absolute}.four-ring.rival{--glow:#ff5a5af2}.four-ring:before{content:"";border:calc(var(--cell) * .07) solid #fff;box-shadow:0 0 calc(var(--cell) * .3) var(--glow), inset 0 0 calc(var(--cell) * .2) var(--glow);border-radius:50%;animation:.8s ease-in-out infinite alternate four-ring;position:absolute;inset:3%}@keyframes four-ring{0%{opacity:.75;transform:scale(.95)}to{opacity:1;transform:scale(1.06)}}.four-cols{grid-template-columns:repeat(7, var(--cell));padding:0 var(--pad);display:grid;position:absolute;inset:0}.four-col{color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:0 0;border:0;padding:0;position:relative}.four-col:first-child{margin-left:calc(-1 * var(--pad))}.four-col:last-child{margin-right:calc(-1 * var(--pad))}.four-col:before{content:"";top:var(--pad);bottom:var(--pad);border-radius:calc(var(--cell) * .3);opacity:0;pointer-events:none;background:linear-gradient(#2ee6c505,#2ee6c54d);transition:opacity .12s;position:absolute;left:0;right:0}.four-col:first-child:before{left:var(--pad)}.four-col:last-child:before{right:var(--pad)}.four-board[data-can="1"] .four-col.press:before{opacity:1}@media (hover:hover){.four-board[data-can="1"] .four-col:hover:not(:disabled):before{opacity:1}}.four-col:disabled{cursor:default}.four-col:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.four-toss{--who:var(--you);z-index:3;left:50%;top:calc(var(--pad) + var(--cell) * 1.15);border:2px solid var(--who);white-space:nowrap;pointer-events:none;background:#040922ed;border-radius:16px;align-items:center;gap:10px;max-width:94%;padding:10px 18px;font-size:clamp(18px,5vw,24px);font-weight:900;transition:opacity .28s;animation:.3s cubic-bezier(.2,1.4,.4,1) both four-toss-in;display:flex;position:absolute;translate:-50%;box-shadow:0 8px 22px #00000080}.four-toss span:last-child{text-overflow:ellipsis;min-width:0;overflow:hidden}.four-toss.rival{--who:var(--rival)}.four-toss.out{opacity:0}.four-toss[hidden]{display:none}@keyframes four-toss-in{0%{opacity:0;transform:scale(.6)}}.four-toss .four-swatch{width:18px;height:18px}.four-board.compact{gap:6px;padding:6px 8px}.four-board.compact .four-head{gap:0;width:auto;max-width:none;padding:0;container-type:normal}.four-board.compact .four-series{display:none}.four-board.compact .four-turn{border-width:1.5px;gap:7px;min-height:32px;padding:2px 14px 2px 5px}.four-board.compact .four-clock{width:26px;height:26px}.four-board.compact .four-clock-n{font-size:12px}.four-board.compact .four-turn-label,.four-board.compact .four-turn.result .four-turn-label{font-size:14px}.four-board.compact .four-toss{top:calc(var(--pad) + var(--cell) * .6);gap:6px;padding:6px 12px;font-size:14px}.four-board.compact .four-frame{box-shadow:0 6px 14px #00000080,0 0 0 1px #0a145acc}body:has(.screen.match[data-game=four]){--tint:#3f6bf0;--tint-deep:#060e2e}@media (prefers-reduced-motion:reduce){.four-ring:before,.four-disc.last .four-core,.four-turn.low .four-clock-n,.four-pip.fresh,.four-toss,.four-turn.result,.four-frame.shake{animation:none}.four-clock-arc,.four-col:before,.four-disc{transition:none}}.maze-area.checkers-mode .maze-canvas{visibility:hidden}.screen.match.checkers-match .timer{display:none}.checkers-board{--you:#2ee6c5;--rival:#ff5a5a;--cell:42px;--pad:6px;color:#fff;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:0;display:flex;position:absolute;inset:0}.checkers-board[hidden]{display:none}.checkers-head{gap:5px;width:100%;max-width:640px;padding:0 56px;display:grid;container-type:inline-size}.checkers-turn{--who:#e8c98f;border:2px solid var(--who);background:#1a0f06db;border-radius:999px;justify-content:center;align-items:center;min-height:34px;padding:3px 16px;transition:border-color .2s,box-shadow .2s,background .2s;display:flex}.checkers-turn[data-turn=you]{--who:var(--you);box-shadow:0 0 0 1px #2ee6c538,0 0 20px #2ee6c54d}.checkers-turn[data-turn=rival]{--who:var(--rival);box-shadow:0 0 0 1px #ff5a5a38,0 0 20px #ff5a5a47}.checkers-turn-label{text-overflow:ellipsis;white-space:nowrap;letter-spacing:.01em;min-width:0;font-size:clamp(14px,3.9vw,18px);font-weight:900;overflow:hidden}.checkers-turn.result{padding:3px 22px;animation:.4s cubic-bezier(.2,1.4,.4,1) both checkers-result-in;box-shadow:0 0 26px #ffffff1f}.checkers-turn.result.won{--who:#3df08a;background:#062e1ceb;box-shadow:0 0 26px #3df08a80}.checkers-turn.result.lost{--who:#ff6f91;background:#360c1ceb;box-shadow:0 0 22px #ff6f9159}.checkers-turn.result.drawn{--who:#f2ddb4}@keyframes checkers-result-in{0%{opacity:0;transform:scale(.7)}}.checkers-clocks{grid-template-columns:1fr 1fr;gap:6px;display:grid}.checkers-clock{--who:#e8c98f;background:#1a0f06b8;border:1.5px solid #ffffff29;border-radius:12px;align-items:center;gap:6px;min-width:0;min-height:32px;padding:3px 9px;transition:border-color .2s,box-shadow .2s,background .2s;display:flex}.checkers-clock.you{--who:var(--you)}.checkers-clock.rival{--who:var(--rival)}.checkers-clock.active{border-color:var(--who);box-shadow:0 0 14px color-mix(in srgb, var(--who) 40%, transparent);background:#281809eb}.checkers-who{text-overflow:ellipsis;white-space:nowrap;letter-spacing:.07em;text-transform:uppercase;opacity:.85;flex:auto;min-width:0;font-size:10px;font-weight:900;overflow:hidden}.checkers-time{font-variant-numeric:tabular-nums;flex:none;font-size:17px;font-weight:900;line-height:1}.checkers-clock.low .checkers-time{color:#ffd24a}.checkers-clock.critical .checkers-time{color:#ff6a7e}.checkers-clock.critical.active{border-color:#ff5a6e;animation:.6s ease-in-out infinite alternate checkers-critical}@keyframes checkers-critical{to{box-shadow:0 0 18px #ff5a6ed9}}.checkers-swatch{border-radius:50%;flex:none;width:14px;height:14px;box-shadow:0 1px 2px #00000080}.checkers-swatch.dark{background:radial-gradient(circle at 36% 30%,#75757f,#2a2a2e 55%,#0f0f13);border:1.5px solid #8a8a96}.checkers-swatch.light{background:radial-gradient(circle at 36% 30%,#fff,#f3ead8 55%,#cdb78c);border:1.5px solid #b9996a}.checkers-note{justify-content:center;align-items:center;min-height:20px;display:flex}.checkers-note-chip{text-align:center;border-radius:999px;max-width:100%;padding:2px 11px;font-size:12px;font-weight:800;line-height:1.2}.checkers-note.must .checkers-note-chip{color:#2a1a05;background:#ffc24b;box-shadow:0 0 14px #ffc24b80}.checkers-note.quiet .checkers-note-chip{color:#eadfc9;background:#ffffff1a}.checkers-note.reason .checkers-note-chip{color:#fff;background:#ffffff21}.checkers-note.flash .checkers-note-chip{animation:.5s checkers-flash}@keyframes checkers-flash{30%{transform:scale(1.14)}60%{transform:scale(.96)}}.checkers-stage{flex:none;position:relative}.checkers-frame{padding:var(--pad);border-radius:calc(var(--cell) * .2);background:linear-gradient(150deg,#7c5230 0%,#4c2e16 45%,#2f1b0b 100%);position:relative;box-shadow:0 12px 24px #0000008c,0 0 0 1px #000000a6,inset 0 1px #ffd69659,inset 0 -2px #00000073}.checkers-frame.shake{animation:.4s checkers-shake}@keyframes checkers-shake{20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}.checkers-field{width:calc(8 * var(--cell));height:calc(8 * var(--cell));border-radius:calc(var(--cell) * .05);position:relative}.checkers-field:after{content:"";z-index:0;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 calc(var(--cell) * .2) #0009, 0 0 0 1px #0000008c;position:absolute;inset:0}.checkers-wood{border-radius:inherit;width:100%;height:100%;position:absolute;inset:0}.checkers-tints,.checkers-pieces,.checkers-marks,.checkers-squares{position:absolute;inset:0}.checkers-tints,.checkers-pieces,.checkers-marks{pointer-events:none}.checkers-sq,.checkers-piece,.checkers-dot,.checkers-tint{width:var(--cell);height:var(--cell);translate:calc(var(--x) * var(--cell)) calc(var(--y) * var(--cell));position:absolute;top:0;left:0}.checkers-sq{color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:0 0;border:0;padding:0}.checkers-sq:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.checkers-tint{box-shadow:inset 0 0 0 calc(var(--cell) * .03) #ffd66699;background:#ffd6664d}.checkers-piece{z-index:2}.checkers-disc{--hi:#5e5e69;--mid:#2a2a2e;--lo:#0f0f13;--rim:#7a7a86;--ring:0 0 0 0 transparent;background:radial-gradient(circle at 34% 28%, var(--hi) 0%, var(--mid) 46%, var(--lo) 100%);box-shadow:0 calc(var(--cell) * .055) calc(var(--cell) * .09) #0000009e, 0 calc(var(--cell) * .018) 0 #000000b3, inset 0 0 0 calc(var(--cell) * .03) var(--rim), inset 0 calc(var(--cell) * -.05) calc(var(--cell) * .07) #00000073, var(--ring);border-radius:50%;position:absolute;inset:9%}.checkers-piece.light .checkers-disc{--hi:#fffef8;--mid:#f3ead8;--lo:#cbb488;--rim:#c9a56e}.checkers-disc:before{content:"";border:calc(var(--cell) * .024) solid #ffffff29;box-shadow:inset 0 calc(var(--cell) * .02) calc(var(--cell) * .03) #00000059;border-radius:50%;position:absolute;inset:20%}.checkers-piece.light .checkers-disc:before{box-shadow:inset 0 calc(var(--cell) * .02) calc(var(--cell) * .03) #78583040;border-color:#7858304d}.checkers-disc:after{content:"";width:34%;height:19%;filter:blur(calc(var(--cell) * .02));background:#ffffff42;border-radius:50%;position:absolute;top:11%;left:20%;transform:rotate(-28deg)}.checkers-piece.light .checkers-disc:after{background:#fffc}.checkers-crown{width:64%;height:64%;filter:drop-shadow(0 calc(var(--cell) * .02) calc(var(--cell) * .03) #0000008c);position:absolute;top:50%;left:50%;translate:-50% -52%}.checkers-piece.king .checkers-disc{--ring:0 0 0 calc(var(--cell) * .02) #ffc93c99}.checkers-piece.shine .checkers-disc:after{animation:.8s ease-out checkers-shine}@keyframes checkers-shine{0%{opacity:1;width:60%;left:-30%}to{opacity:0;left:90%}}.checkers-piece.movable:before{content:"";pointer-events:none;box-shadow:0 0 calc(var(--cell) * .3) calc(var(--cell) * .07) #ffd666;border-radius:50%;animation:1.5s ease-in-out infinite alternate checkers-glow;position:absolute;inset:9%}@keyframes checkers-glow{0%{opacity:.55}to{opacity:1}}.checkers-piece.selected{filter:drop-shadow(0 0 calc(var(--cell) * .14) #ffd24af2)}.checkers-piece.selected .checkers-disc{--ring:0 0 0 calc(var(--cell) * .055) #ffd24a}.checkers-piece.target .checkers-disc{--ring:0 0 0 calc(var(--cell) * .045) #ff5a6ecc}.checkers-piece.taken{opacity:.5}.checkers-piece.taken:after{content:"";z-index:3;background:linear-gradient(45deg,#0000 43%,#ff4d6d 43% 57%,#0000 57%),linear-gradient(-45deg,#0000 43%,#ff4d6d 43% 57%,#0000 57%);position:absolute;inset:26%}.checkers-dot{z-index:3;place-items:center;display:grid}.checkers-dot:before{content:"";box-sizing:border-box;width:30%;height:30%;box-shadow:0 0 calc(var(--cell) * .2) #ffd24ae6;background:#ffd24a;border-radius:50%;animation:.9s ease-in-out infinite alternate checkers-dot}.checkers-dot.jump:before{border:calc(var(--cell) * .065) solid #ffd24a;background:#ffd24a29;width:58%;height:58%}@keyframes checkers-dot{to{transform:scale(1.18)}}.checkers-board[data-can="0"] .checkers-sq{cursor:default}.checkers-toss{--who:var(--you);z-index:5;border:2px solid var(--who);text-align:center;pointer-events:none;background:#1a0f06f0;border-radius:16px;align-items:center;gap:10px;max-width:92%;padding:10px 18px;font-size:clamp(16px,4.6vw,22px);font-weight:900;transition:opacity .28s;animation:.3s cubic-bezier(.2,1.4,.4,1) both checkers-toss-in;display:flex;position:absolute;top:50%;left:50%;translate:-50% -50%;box-shadow:0 8px 22px #0000008c}.checkers-toss.rival{--who:var(--rival)}.checkers-toss.out{opacity:0}.checkers-toss[hidden]{display:none}.checkers-toss .checkers-swatch{width:22px;height:22px}@keyframes checkers-toss-in{0%{opacity:0;transform:scale(.6)}}.checkers-board.compact{gap:6px;padding:6px 8px}.checkers-board.compact .checkers-head{gap:0;width:auto;max-width:none;padding:0;container-type:normal}.checkers-board.compact .checkers-clocks,.checkers-board.compact .checkers-note{display:none}.checkers-board.compact .checkers-turn{border-width:1.5px;min-height:28px;padding:2px 14px}.checkers-board.compact .checkers-turn-label{font-size:14px}.checkers-board.compact .checkers-toss{gap:6px;padding:6px 12px;font-size:14px}.checkers-board.compact .checkers-toss .checkers-swatch{width:16px;height:16px}.checkers-board.compact .checkers-frame{box-shadow:0 6px 14px #00000080,0 0 0 1px #0009}body:has(.screen.match[data-game=checkers]){--tint:#b8782e;--tint-deep:#22130a}@media (prefers-reduced-motion:reduce){.checkers-piece.movable:before,.checkers-dot:before,.checkers-piece.shine .checkers-disc:after,.checkers-clock.critical.active,.checkers-note.flash .checkers-note-chip,.checkers-turn.result,.checkers-toss,.checkers-frame.shake{animation:none}.checkers-clock,.checkers-turn{transition:none}}
