.dg-top,.dg-invite,.dg-tools,.dg-turn{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.dg-top{gap:8px}.dg-top>a{margin-right:4px}.game-page.dg-page{padding-top:12px;padding-bottom:12px}.game-page.dg-page .dg-heading{padding:8px 12px}.game-page .dg-heading h1{margin-bottom:2px;font-size:1.25rem}.dg-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.game-page .dg-title p{color:var(--muted);margin:0}.dg-invitation summary,.dg-custom-words summary{cursor:pointer;color:var(--accent);padding:8px 0}.dg-invite{gap:8px;min-width:0;padding-bottom:8px}.dg-invitation{width:100%;min-width:0}.game-page .dg-invite label{flex-wrap:wrap;align-items:center;gap:8px;width:100%;min-width:0;display:flex}.dg-invite input{width:30ch;max-width:100%}.dg-layout{grid-template-columns:180px minmax(0,1fr) 260px;align-items:start;gap:12px;display:grid}.dg-center{min-width:0}.dg-player{border:2px solid var(--line);overflow-wrap:anywhere;border-radius:8px;gap:3px;margin-bottom:8px;padding:8px;display:grid}.dg-player.drawer{border-color:var(--accent)}.dg-player.guessed{background:#269c6015;border-color:#269c60}.dg-player.offline{opacity:.6}.dg-player b{color:var(--accent);margin-left:6px}.game-page.dg-page .dg-turn{justify-content:space-between;gap:8px;min-height:36px;margin-bottom:8px;padding:6px 10px}.dg-word{overflow-wrap:anywhere;font-size:1rem}.dg-urgent{color:#c43d3d;font-weight:700}.dg-canvas{aspect-ratio:10/7;border:2px solid var(--line);background:#fff;border-radius:12px;position:relative;overflow:hidden}.dg-canvas canvas{width:100%;height:100%;position:absolute;inset:0}.dg-canvas canvas.enabled{touch-action:none;cursor:crosshair}.dg-interlude{z-index:1;background:var(--panel);text-align:center;overflow-wrap:anywhere;align-items:safe center;padding:12px 16px;display:grid;position:absolute;inset:0;overflow:auto}.dg-score-interlude{animation:.25s ease-in forwards dg-scores-out}.dg-picking-interlude{animation:.25s ease-out both dg-picker-in}.game-page .dg-interlude h2{margin:0 0 8px;font-size:1.125rem}.game-page .dg-interlude p{margin:0 0 10px}.dg-round-scores table{border-collapse:collapse;text-align:left;width:100%}.dg-round-scores caption{margin-bottom:8px;font-weight:700}.dg-round-scores th,.dg-round-scores td{border-bottom:1px solid var(--line);padding:5px 8px}.dg-round-scores th:first-child{overflow-wrap:anywhere}.dg-round-scores th:last-child,.dg-round-scores td{text-align:right;white-space:nowrap}.dg-round-winner{background:#269c6015}.dg-picker{font-size:1.125rem}@keyframes dg-scores-out{to{opacity:0}}@keyframes dg-picker-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.dg-score-interlude,.dg-picking-interlude{animation:none}}.game-page.dg-page .dg-tools{gap:8px;margin-top:8px;padding:8px}.game-page .dg-tools>button{margin-left:0}.dg-tools label{margin:0}.dg-palette{flex-wrap:wrap;gap:6px;width:100%;display:flex}.game-page .dg-palette button{border:2px solid #999;width:30px;height:30px;min-height:30px;padding:0}.dg-palette button[aria-pressed=true]{outline:3px solid var(--accent);outline-offset:1px}.dg-messages{overflow-wrap:anywhere;height:clamp(160px,100dvh - 340px,420px);overflow:auto}.dg-lobby .dg-messages{height:clamp(120px,22dvh,220px)}.dg-messages p{border-bottom:1px solid var(--line);margin:0;padding:7px 0}.dg-messages .system{color:var(--accent);font-weight:600}.dg-messages .dg-close{color:#704600;background:#fff0bd;border-left:3px solid #b87900;padding-inline:8px}.dg-chat input{width:100%;min-width:0}.dg-chat form{align-items:end;gap:6px;margin-top:10px;display:flex}.dg-chat label{flex:1;min-width:0}.dg-chat form button{margin-bottom:0}.dg-notice{border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:12px}.dg-settings .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.dg-custom-words{margin:8px 0}.game-page .dg-custom-words label{margin-top:12px}.dg-settings input,.dg-settings textarea{width:100%;min-width:0}.dg-settings input[type=checkbox]{width:auto}.dg-settings textarea{font:inherit;background:var(--panel);color:inherit;border:1px solid var(--line);border-radius:9px;padding:7px 10px}.dg-choices{margin-bottom:12px}.dg-choices button{margin:4px}.dg-guide{margin-top:24px}.dg-guide .row{flex-wrap:wrap;gap:20px}.dg-results{text-align:center}.dg-page button:disabled{opacity:.45;cursor:not-allowed}@media (width<=1100px){.dg-layout{grid-template-columns:170px minmax(0,1fr)}.dg-chat{grid-column:1/-1}.dg-chat .dg-messages{height:200px}}@media (width<=650px){main.game-page.dg-page{padding:16px 10px}.dg-layout{grid-template-columns:1fr}.dg-center{grid-row:1}.dg-players{flex-wrap:wrap;gap:8px;display:flex}.dg-players h2{width:100%}.dg-player{flex:1;min-width:135px;margin:0}.dg-chat{grid-column:auto}.dg-tools{gap:8px}.dg-tools label{max-width:100%}.dg-invite input{width:100%}}@media (width>=651px){.dg-canvas{width:min(100%,max(240px,142.857dvh - 528.572px));margin-inline:auto}.game-page .dg-tools label{align-items:center;gap:6px;display:flex}}@media (width<=650px){.dg-chat{grid-row:2}.dg-players{grid-row:3}}@media (width<=650px),(pointer:coarse){.game-page .dg-palette button{width:44px;height:44px;min-height:44px}.dg-invitation summary,.dg-custom-words summary,.game-page .dg-custom-words .compact{min-height:44px}}:root{color:#17211c;--panel:#fff;--line:#cbd8cf;--accent:#146b47;--felt:#176747;--muted:#65736b;background:#eef3ef;font-family:Inter,system-ui,sans-serif}html[data-theme=dark]{color:#edf5ef;--panel:#19231d;--line:#34443a;--accent:#69d7a1;--felt:#104c35;--muted:#a7b5ac;background:#101713}@media (prefers-color-scheme:dark){html[data-theme=system]{color:#edf5ef;--panel:#19231d;--line:#34443a;--accent:#69d7a1;--felt:#104c35;--muted:#a7b5ac;background:#101713}}*{box-sizing:border-box}body{min-height:100vh;margin:0}a{color:var(--accent)}header{border-bottom:1px solid var(--line);background:var(--panel);justify-content:space-between;align-items:center;height:66px;padding:0 max(20px,50% - 550px);display:flex}nav,.actions,.gamebar{align-items:center;gap:12px;display:flex}.brand{font-size:1.15rem;font-weight:800;text-decoration:none}main{max-width:1100px;min-height:calc(100vh - 130px);margin:0 auto;padding:28px 20px}.center{place-items:center;display:grid}.hero{padding:34px 0}.panel{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:0 8px 30px #0001}.center .panel{width:min(460px,100%)}.grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;display:grid}.row{border-bottom:1px solid var(--line);color:inherit;justify-content:space-between;padding:13px 0;text-decoration:none;display:flex}label{gap:7px;margin:15px 0;display:grid}.compact{align-items:center;margin:0;display:flex}input,select,button{font:inherit;border:1px solid var(--line);background:var(--panel);color:inherit;border-radius:9px;padding:10px 13px}button{cursor:pointer;background:var(--accent);color:#fff;font-weight:700}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #e2a72d}button.link{color:var(--accent);background:0 0;border:0}.danger{background:#9b2c2c;margin-top:20px}.muted,small{color:var(--muted)}.error{color:#d54141;font-weight:700}.game{background:var(--felt);border-radius:18px;min-height:670px;padding:16px;overflow:auto}.gamebar{color:#fff;margin-bottom:14px;position:sticky;left:0}.toprow,.tableau{grid-template-columns:repeat(9,minmax(54px,1fr));gap:8px;min-width:630px;display:grid}.tableau{grid-template-columns:repeat(8,minmax(62px,1fr));margin-top:18px}.slot,.column{aspect-ratio:5/7;background:#0002;border:2px dashed #fff6;border-radius:8px;position:relative}.slot{color:#fff;padding:0}.spacer{width:10px}.column{aspect-ratio:auto;min-height:520px}.column>div{width:100%;position:absolute;left:0}.card{aspect-ratio:5/7;color:#111;background:#fff;border:0;width:100%;padding:0;display:block;position:relative;overflow:hidden}.card img{object-fit:fill;width:100%;height:100%}.card span{font-size:.8rem;position:absolute;inset:5px auto auto 5px}.card.selected{z-index:3;outline:4px solid #ffd54a;transform:translateY(-5px)}.complete{margin-top:24px}.auto-complete{color:#17211c;background:#f4b400;box-shadow:0 0 0 3px #fff8}.hint{color:#17211c;background:#fff;border-radius:10px;padding:12px 16px;font-weight:700}.result-banner{text-align:center;color:#fff;z-index:20;border:5px solid #fff;border-radius:20px;width:min(620px,100vw - 72px);margin:28px auto 0;padding:28px;position:sticky;bottom:16px;left:16px;box-shadow:0 14px 45px #0008}.result-banner h2{margin:0 0 12px;font-size:2.4rem}.result-banner.victory{background:#0b7a3e}.result-banner.defeat{background:#a52828}.result-stats{justify-content:center;gap:48px;margin:20px;display:flex}.result-stats>strong{font-size:2.3rem}.result-stats small{color:inherit;text-transform:uppercase;font-size:.85rem;display:block}.player-roster{background:var(--panel);border:1px solid var(--line);border-radius:16px;margin:0 0 20px;padding:18px}.player-roster h2{margin-top:0}.player-roster>div{flex-wrap:wrap;gap:10px;display:flex}.player{border:2px solid var(--line);border-radius:12px;gap:3px;padding:10px 14px;display:grid}.player.ready{background:#1b9b5918;border-color:#1b9b59}.player.waiting{border-color:#d49b24}.player small{font-weight:700}.race-heading{padding-bottom:12px}.button-link{background:var(--accent);color:#fff;border-radius:9px;padding:12px 16px;font-weight:700;text-decoration:none;display:inline-block}.room-closed{text-align:center}@media (width<=700px){header{align-items:flex-start;height:auto;padding:12px}nav{flex-wrap:wrap;justify-content:flex-end}.compact{font-size:.8rem}.game{border-radius:0;margin:0 -20px}.actions{flex-wrap:wrap}}@keyframes hint-pulse{0%,to{outline-color:#ffe45c;box-shadow:0 0 0 2px #ffe45c,0 0 18px 6px #ffe45caa}50%{outline-color:#ff7a00;box-shadow:0 0 0 5px #ff7a00,0 0 28px 10px #ff7a00cc}}.card.hinted{outline-offset:1px;z-index:8;outline:4px solid #ffe45c;animation:.75s ease-in-out infinite hint-pulse}.card.hinted.selected{transform:translateY(-5px)}@media (prefers-reduced-motion:reduce){.card.hinted{animation:none;box-shadow:0 0 0 4px #ffe45c}*{scroll-behavior:auto!important;transition:none!important}}footer{text-align:center;border-top:1px solid var(--line);padding:20px}:root{color:#17192f;--panel:#fffdf9;--line:#ddd8ce;--accent:#6757e5;--felt:#13715a;--muted:#6d6c78;--ink:#17192f;--warm:#ffb547;background:#f4f1eb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif}html[data-theme=dark]{color:#f4f2ff;--panel:#171a31;--line:#30344f;--accent:#9d91ff;--felt:#0d5948;--muted:#aaaac0;--ink:#f4f2ff;background:#0d1022}@media (prefers-color-scheme:dark){html[data-theme=system]{color:#f4f2ff;--panel:#171a31;--line:#30344f;--accent:#9d91ff;--felt:#0d5948;--muted:#aaaac0;--ink:#f4f2ff;background:#0d1022}}header{background:color-mix(in srgb, var(--panel) 92%, transparent);border-bottom-color:color-mix(in srgb, var(--line) 75%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:50;height:76px;position:relative;box-shadow:0 8px 30px #0d102208}.brand{color:var(--ink);letter-spacing:-.025em;align-items:center;gap:10px;display:flex}.brand b{color:var(--accent)}.brand-mark{color:#fff;background:linear-gradient(145deg,#7666f0,#4c3bc0);border-radius:11px;place-items:center;width:36px;height:36px;display:grid;transform:rotate(-5deg);box-shadow:0 7px 18px #6757e547}nav>a{color:var(--ink);font-weight:700;text-decoration:none}button,.button-link,.account-menu summary{background:linear-gradient(135deg,#7565ed,#5746cf);border:0;border-radius:12px;transition:transform .18s,box-shadow .18s,filter .18s;box-shadow:0 7px 18px #5746cf2e}button:hover,.button-link:hover{filter:brightness(1.06);transform:translateY(-2px);box-shadow:0 10px 24px #5746cf3d}button.secondary{color:var(--ink);border:1px solid var(--line);box-shadow:none;background:0 0}.panel{box-shadow:0 16px 50px #15162b0d}.arcade-home{max-width:none;padding:0 0 64px}.arcade-hero{color:#fff;background:radial-gradient(circle at 75% 30%,#7d6ef0 0,#0000 27%),linear-gradient(125deg,#11152b 20%,#24214c 70%,#352b75);justify-content:space-between;align-items:center;min-height:330px;padding:60px max(20px,50% - 550px);display:flex;position:relative;overflow:hidden}.arcade-hero:before{content:"";opacity:.16;background-image:linear-gradient(#fff 1px,#0000 1px),linear-gradient(90deg,#fff 1px,#0000 1px);background-size:46px 46px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000,#000);mask-image:linear-gradient(90deg,#0000,#000)}.arcade-hero>div{z-index:1;position:relative}.eyebrow{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;margin:0 0 10px;font-size:.75rem;font-weight:900}.arcade-hero .eyebrow{color:#c6bfff}.arcade-hero h1{letter-spacing:-.065em;max-width:700px;margin:0;font-size:clamp(2.8rem,7vw,5.4rem);line-height:.92}.arcade-hero h1 span{color:var(--warm)}.hero-copy{color:#d4d5e7;max-width:560px;margin:24px 0 0;font-size:1.08rem;line-height:1.65}.hero-suits{flex:none;width:310px;height:210px;position:relative!important}.hero-suits span{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(145deg,#ffffff24,#ffffff08);border:2px solid #ffffff35;border-radius:18px;place-items:center;width:105px;height:145px;font-size:3rem;display:grid;position:absolute;box-shadow:0 24px 50px #08091755}.hero-suits span:first-child{top:38px;left:8px;transform:rotate(-18deg)}.hero-suits span:nth-child(2){color:#ff7781;top:8px;left:70px;transform:rotate(-6deg)}.hero-suits span:nth-child(3){top:5px;left:135px;transform:rotate(7deg)}.hero-suits span:nth-child(4){color:#ff7781;top:35px;left:195px;transform:rotate(18deg)}.game-library,.home-lower{max-width:1100px;margin:0 auto;padding:54px 20px 0}.section-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px;display:flex}.section-heading h2{letter-spacing:-.04em;margin:0;font-size:clamp(1.65rem,3vw,2.3rem)}.game-count{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:7px 12px;font-size:.82rem;font-weight:800}.game-tile{border:1px solid var(--line);background:var(--panel);border-radius:24px;grid-template-columns:minmax(300px,1.15fr) minmax(290px,.85fr);min-height:390px;display:grid;overflow:hidden;box-shadow:0 24px 65px #15162b16}.game-art{min-height:390px;box-shadow:none;background:radial-gradient(circle at 50% 42%,#31ad8b,#11634f 60%,#0b4034);border:0;border-radius:0;padding:0;position:relative;overflow:hidden}.game-art:before{content:"";opacity:.18;background-image:radial-gradient(#fff 1px,#0000 1px);background-size:18px 18px;position:absolute;inset:0}.art-glow{filter:blur(55px);background:#d8ff6970;border-radius:50%;width:280px;height:280px;position:absolute;top:48%;left:50%;transform:translate(-50%,-50%)}.card-fan{width:270px;height:245px;position:absolute;top:50%;left:50%;transform:translate(-50%,-48%)}.card-fan img{border-radius:10px;width:135px;position:absolute;top:20px;left:70px;box-shadow:0 22px 32px #062b2366}.card-fan img:first-child{transform:rotate(-20deg)translate(-42px,12px)}.card-fan img:nth-child(2){transform:rotate(2deg)translateY(-12px)}.card-fan img:nth-child(3){transform:rotate(21deg)translate(45px,14px)}.play-badge{color:#16182c;text-indent:3px;background:#fff;border-radius:50%;place-items:center;width:56px;height:56px;display:grid;position:absolute;bottom:22px;right:22px;box-shadow:0 12px 30px #062b2377}.game-details{flex-direction:column;justify-content:center;padding:clamp(28px,5vw,52px);display:flex}.game-title-row{justify-content:space-between;align-items:start;gap:15px;display:flex}.game-title-row h3{letter-spacing:-.04em;margin:0 0 4px;font-size:2.3rem}.game-title-row p,.game-description{color:var(--muted)}.game-title-row p{text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:.86rem;font-weight:800}.live-pill{white-space:nowrap;color:#16755a;background:#27b58618;border-radius:99px;padding:7px 10px;font-size:.72rem;font-weight:800}.live-pill i{background:#24b27e;border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.game-description{margin:30px 0;line-height:1.7}.game-actions{flex-wrap:wrap;gap:10px;display:flex}.game-actions button{padding:13px 18px}.game-actions button:first-child{flex:1}.home-lower{grid-template-columns:minmax(260px,.65fr) minmax(300px,1.35fr);gap:20px;display:grid}.seedform{grid-template-columns:1fr auto;align-self:start;align-items:end;gap:10px;display:grid}.seedform label{margin:0}.activity-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.activity-grid .panel h2{margin-top:0;font-size:1.15rem}.arcade-home .row{border:0;flex-wrap:wrap;gap:12px}.game{box-shadow:0 22px 55px #0a241c38}footer{color:var(--muted);background:var(--panel)}@media (width<=760px){.arcade-hero{min-height:300px;padding-top:48px;padding-bottom:48px}.hero-suits{display:none}.game-tile{grid-template-columns:1fr}.game-art{min-height:285px}.card-fan{transform:translate(-50%,-48%)scale(.8)}.game-details{padding:28px}.home-lower{grid-template-columns:1fr}}@media (width<=520px){header{height:auto}.brand{font-size:1rem}.brand-mark{width:32px;height:32px}.nav-games{display:none}.arcade-hero h1{font-size:3rem}.section-heading{align-items:start}.game-title-row{display:block}.live-pill{margin-top:14px;display:inline-block}.seedform{grid-template-columns:1fr}}:root{color:#17212b;--panel:#fff;--line:#dce3e7;--accent:#1677a8;--muted:#687680;--ink:#17212b;--warm:#f2a23a;background:#f5f7f8}html[data-theme=dark]{color:#eef5f7;--panel:#182126;--line:#314047;--accent:#67b9dc;--muted:#a6b4bb;--ink:#eef5f7;background:#10171b}@media (prefers-color-scheme:dark){html[data-theme=system]{color:#eef5f7;--panel:#182126;--line:#314047;--accent:#67b9dc;--muted:#a6b4bb;--ink:#eef5f7;background:#10171b}}header{background:var(--panel);height:68px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom:1px solid var(--line)}.brand{color:var(--ink);letter-spacing:-.015em;gap:11px;font-size:1.05rem;text-decoration:none}.brand:hover{text-decoration:none}.brand-home{color:#fff;background:#1677a8;border-radius:9px;place-items:center;width:34px;height:34px;display:grid}.brand-home svg{fill:currentColor;width:20px;height:20px}header nav{gap:20px}header nav>a{color:var(--muted);font-size:.9rem}header .account-menu summary{color:var(--ink);border:1px solid var(--line);box-shadow:none;background:0 0;border-radius:10px;align-items:center;gap:8px;padding:6px 9px 6px 6px;display:flex}.account-avatar{color:#fff;background:#258c7c;border-radius:7px;place-items:center;width:28px;height:28px;font-size:.78rem;font-weight:900;display:grid}.account-menu>div{border-radius:12px;box-shadow:0 14px 36px #10202c24}button,.button-link{box-shadow:none;background:#1677a8}button:hover,.button-link:hover{box-shadow:none;filter:brightness(1.07)}.eyebrow{color:#1677a8}.catalogue-home{max-width:1280px;padding:24px 24px 40px;font-size:15px}.catalogue-intro{max-width:650px;margin-bottom:20px}.catalogue-intro .eyebrow{margin-bottom:8px}.catalogue-intro h1{letter-spacing:-.055em;margin:0 0 10px;font-size:clamp(1.5rem,3vw,2rem);line-height:1}.catalogue-intro>p:last-child{color:var(--muted);margin:0;font-size:.9375rem}.catalogue-heading{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.catalogue-heading h2{margin:0;font-size:1.2rem}.catalogue-heading span{color:var(--muted);font-size:.85rem}.catalogue-home .catalogue-heading{flex-wrap:wrap;gap:8px;margin-bottom:12px}.catalogue-home .catalogue-filters{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.catalogue-home .catalogue-filters button{border:1px solid var(--line);background:var(--panel);min-height:36px;color:var(--ink);border-radius:8px;padding:7px 14px}.catalogue-home .catalogue-filters button[aria-pressed=true]{background:var(--accent);color:#fff;border-color:var(--accent)}.catalogue-home .catalogue-latest{margin-bottom:20px}.catalogue-home .catalogue-latest h2{margin:0 0 12px;font-size:18px}.catalogue-home .latest-toggle{width:100%;min-height:36px;color:var(--ink);text-align:left;font:inherit;background:0 0;border:0;border-radius:4px;align-items:center;gap:8px;padding:6px 0;font-weight:700;display:flex}.catalogue-home .latest-toggle small{color:var(--muted);margin-left:auto;font-size:13px;font-weight:400}.catalogue-home .catalogue-filters button:focus-visible,.catalogue-home .latest-toggle:focus-visible{outline-offset:3px;outline:3px solid #f2a23a}.catalogue-home #latest-games[hidden]{display:none}@media (width<=680px),(pointer:coarse){.catalogue-home .catalogue-filters button,.catalogue-home .latest-toggle{min-height:44px}}.game-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.catalogue-card{border:1px solid var(--line);background:var(--panel);min-width:0;color:var(--ink);border-radius:12px;grid-template-columns:56px minmax(0,1fr);align-content:start;gap:0 12px;padding:14px;text-decoration:none;display:grid;position:relative;overflow:hidden;box-shadow:0 5px 18px #162c3708}.catalogue-card.available{transition:transform .16s,border-color .16s,box-shadow .16s}.catalogue-card.available:hover{border-color:#46a2c8;transform:translateY(-3px);box-shadow:0 13px 28px #163d5018}.catalogue-card.available:focus-visible{outline-offset:3px;outline:3px solid #f2a23a}.catalogue-icon{color:#fff;background:#238275;border-radius:10px;grid-row:1/span 2;place-items:center;width:56px;height:56px;font-family:Georgia,serif;font-size:2rem;font-weight:700;display:grid}.icon-0{background:linear-gradient(135deg,#17795f,#22a07f)}.icon-1{background:linear-gradient(135deg,#2c718e,#4aa0bb)}.icon-2{color:#ffe45e;background:linear-gradient(135deg,#cc594b,#e8834e)}.icon-3{background:linear-gradient(135deg,#4578b7,#69a4d2)}.icon-4{background:linear-gradient(135deg,#bb7739,#d9a152)}.icon-5{background:linear-gradient(135deg,#515968,#737d8d)}.icon-6{background:linear-gradient(135deg,#548a5e,#76ad71)}.icon-7{background:linear-gradient(135deg,#36748c,#579ab0)}.icon-8{background:linear-gradient(135deg,#a95b50,#ce7864)}.icon-9{background:linear-gradient(135deg,#8a6b45,#b78e56)}.icon-10{background:linear-gradient(135deg,#536790,#768ab3)}.icon-11{background:linear-gradient(135deg,#4f837e,#72aaa2)}.catalogue-copy{gap:4px;min-width:0;padding:0;display:grid}.catalogue-copy strong{font-size:1rem}.catalogue-copy small{color:var(--muted);line-height:1.4}.available-label,.soon-label{letter-spacing:.06em;text-transform:uppercase;border-radius:6px;grid-column:2;place-self:end start;margin:10px 0 0;padding:3px 7px;font-size:.68rem;font-weight:900}.available-label{color:#126b56;background:#dff5ed}.soon-label{color:var(--muted);background:color-mix(in srgb,var(--line) 45%,transparent)}.coming-soon{opacity:.76}.coming-soon .catalogue-icon{filter:saturate(.65)}.freecell-hub{max-width:900px;padding-top:38px;padding-bottom:70px}.back-link{color:var(--muted);margin-bottom:30px;font-weight:700;text-decoration:none;display:inline-block}.back-link:hover{color:var(--accent)}.freecell-title{align-items:center;gap:24px;margin-bottom:34px;display:flex}.freecell-title-icon{color:#fff;background:linear-gradient(135deg,#17795f,#22a07f);border-radius:22px;flex:0 0 112px;place-items:center;width:112px;height:112px;font-family:Georgia,serif;font-size:4.7rem;display:grid;box-shadow:0 12px 28px #17795f2b}.freecell-title h1{letter-spacing:-.05em;margin:0 0 8px;font-size:3rem}.freecell-title p:last-child{max-width:620px;color:var(--muted);margin:0;line-height:1.6}.play-options{grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:24px;display:grid}.play-option{border:1px solid var(--line);min-height:96px;color:var(--ink);background:var(--panel);box-shadow:none;text-align:left;border-radius:14px;align-items:center;gap:15px;padding:18px;text-decoration:none;display:flex}.play-option:hover{border-color:#78aec5;transform:translateY(-2px);box-shadow:0 9px 22px #163d5010}.play-option.primary-option{color:#fff;background:#1677a8;border-color:#1677a8}.play-option>span:last-child{gap:4px;display:grid}.play-option strong{font-size:1.05rem}.play-option small{color:inherit;opacity:.72}.option-icon{color:#1677a8;background:#e1f1f7;border-radius:10px;flex:0 0 42px;place-items:center;width:42px;height:42px;font-size:1.15rem;display:grid}.primary-option .option-icon{color:#fff;background:#ffffff26}.seed-picker{grid-template-columns:1fr 180px auto;align-items:center;gap:14px;margin-bottom:24px;display:grid}.seed-picker p{margin:4px 0 0}.seed-picker input{width:100%}@media (width<=900px){.game-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=680px){.game-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.catalogue-home{padding:16px 12px 28px}.catalogue-intro{margin-bottom:16px}.play-options,.seed-picker{grid-template-columns:1fr}}@media (width<=430px){header nav>a,header .account-menu summary>span:nth-child(2){display:none}.brand{font-size:.94rem}.game-grid{gap:10px}.catalogue-copy{padding:0}.available-label,.soon-label{margin:8px 0 0}.catalogue-card{grid-template-columns:40px minmax(0,1fr);gap:0 8px;padding:10px}.catalogue-icon{width:40px;height:40px;font-size:1.6rem}.freecell-title{align-items:flex-start;gap:16px}.freecell-title-icon{border-radius:16px;flex-basis:76px;width:76px;height:76px;font-size:3.2rem}.freecell-title h1{font-size:2.35rem}}:root{--page-bg:#e8edf0;--panel:#f8fafb;--header-bg:#f3f6f7;--line:#cbd5da;--muted:#586872}html[data-theme=light]{color:#17212b;--page-bg:#e8edf0;--panel:#f8fafb;--header-bg:#f3f6f7;--line:#cbd5da;--muted:#586872;--ink:#17212b;background:#e8edf0}html[data-theme=dark]{color:#eef5f7;--page-bg:#0e1519;--panel:#182329;--header-bg:#131d22;--line:#35454d;--muted:#a9b8bf;--ink:#eef5f7;background:#0e1519}@media (prefers-color-scheme:dark){html[data-theme=system]{color:#eef5f7;--page-bg:#0e1519;--panel:#182329;--header-bg:#131d22;--line:#35454d;--muted:#a9b8bf;--ink:#eef5f7;background:#0e1519}}@media (prefers-color-scheme:light){html[data-theme=system]{color:#17212b;--page-bg:#e8edf0;--panel:#f8fafb;--header-bg:#f3f6f7;--line:#cbd5da;--muted:#586872;--ink:#17212b;background:#e8edf0}}body{background:var(--page-bg)}header{background:var(--header-bg);width:100%;min-width:0;padding-left:max(20px,50% - 550px);padding-right:max(20px,50% - 550px)}header .brand{flex:none;width:auto;max-width:max-content}header nav{flex-wrap:nowrap;flex:none;justify-content:flex-end;align-items:center;width:auto;max-width:max-content;display:flex}header nav>*,header .account-menu,header .account-menu summary{flex:none;width:auto;max-width:max-content}.theme-control{width:auto;max-width:max-content;color:var(--muted);align-items:center;gap:7px;margin:0;font-size:.8rem;font-weight:700;display:flex}.theme-control select{border-color:var(--line);background:var(--panel);width:auto;min-width:82px;color:var(--ink);text-transform:capitalize;border-radius:9px;padding:7px 26px 7px 9px}.catalogue-intro{border:1px solid var(--line);background:color-mix(in srgb,var(--panel) 78%,transparent);border-radius:12px;padding:16px 18px}.catalogue-intro h1{color:var(--ink)}.catalogue-card{box-shadow:0 4px 12px #162c3712}.catalogue-heading h2{color:var(--ink)}.panel{background:var(--panel)}footer{background:var(--header-bg)}@media (width<=720px){header{gap:12px}header nav{gap:8px}header nav>a,.theme-control>span{display:none}}@media (width<=500px){header{padding:10px 12px}.brand>span:last-child{display:none}.theme-control select{min-width:76px;padding-left:7px}}.catalogue{max-width:1232px;margin-inline:auto}.catalogue-intro{max-width:1232px;margin-left:auto;margin-right:auto}.game-grid{grid-template-columns:repeat(4,minmax(0,1fr));justify-content:center}header{grid-template-columns:max-content minmax(0,1fr);align-items:center;column-gap:24px;height:68px;min-height:68px;display:grid}header .brand{white-space:nowrap;grid-column:1;align-self:center}header nav{white-space:nowrap;flex-direction:row;grid-column:2;justify-content:flex-end;place-self:center end;align-items:center;gap:14px;min-width:0;display:flex}header .account-menu{z-index:150;position:relative}header .account-menu summary{white-space:nowrap;min-width:0;min-height:40px;display:inline-flex;position:relative;inset:auto}header .account-menu>div{z-index:300;min-width:190px;top:calc(100% + 9px);left:auto;right:0}header .theme-control{white-space:nowrap;flex-direction:row;gap:6px;display:flex}header .theme-control select{width:78px;min-width:78px;padding-right:20px}.settings-page{max-width:760px;padding-top:36px;padding-bottom:70px}.settings-heading{padding:0 0 22px}.settings-heading h1{letter-spacing:-.04em;margin:0 0 8px;font-size:2.35rem}.settings-heading p{color:var(--muted);margin:0}.settings-panel{padding:30px}.settings-panel>h2{margin:0 0 26px;font-size:1.25rem}.settings-panel>.theme-control{width:100%;max-width:none;color:var(--ink);grid-template-columns:150px minmax(180px,260px);justify-content:start;align-items:center;gap:24px;margin:0;padding:0 0 24px;font-size:.95rem;display:grid}.settings-panel>.theme-control>span{font-weight:800}.settings-panel>.theme-control select{background:var(--page-bg);width:100%;min-width:0;padding:11px 36px 11px 12px;font-size:.95rem}.settings-panel>form{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:18px;margin:0;padding:24px 0;display:grid}.settings-panel>form label{grid-template-columns:150px minmax(180px,1fr);align-items:center;gap:24px;margin:0;font-weight:800;display:grid}.settings-panel>form input{background:var(--page-bg);width:100%;min-height:44px;padding:11px 12px}.settings-panel>form button{white-space:nowrap;justify-self:start;min-width:170px;min-height:44px;margin-left:174px;padding:11px 20px}.settings-panel>form p{margin:0 0 0 174px}.settings-panel>label:not(.theme-control){border-bottom:1px solid var(--line);grid-template-columns:150px minmax(180px,260px);justify-content:start;align-items:center;gap:24px;margin:0;padding:24px 0;font-weight:800;display:grid}.settings-panel>label:not(.theme-control) select{background:var(--page-bg);width:100%;padding:11px 36px 11px 12px}.settings-panel>.danger{background:#a23a3a;min-width:150px;min-height:44px;margin:24px 0 0;padding:11px 20px}@media (width<=900px){.game-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=720px){header{grid-template-columns:max-content minmax(0,1fr);height:62px;min-height:62px}header nav{flex-wrap:nowrap;gap:7px}header .theme-control{display:flex}header .theme-control select{width:76px;min-width:76px}.game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){header{column-gap:8px}header .brand>span:last-child,header .account-menu summary>span:nth-child(2){display:none}.settings-page{padding-top:24px}.settings-panel{padding:22px 18px}.settings-panel>.theme-control,.settings-panel>form label,.settings-panel>label:not(.theme-control){grid-template-columns:1fr;gap:9px}.settings-panel>form button{width:100%;margin-left:0}.settings-panel>form p{margin-left:0}}@media (width<=360px){header .theme-control{display:none}.game-grid{grid-template-columns:minmax(0,1fr)}}header.site-header{background:var(--header-bg);width:100%;height:56px;min-height:56px;padding:0 24px;display:block}.header-inner{justify-content:space-between;align-items:center;gap:32px;width:100%;max-width:1280px;height:100%;margin:0 auto;display:flex}.header-inner .brand{white-space:nowrap;flex:none;align-items:center;width:auto;max-width:none;height:44px;display:flex}.header-inner nav{white-space:nowrap;flex-direction:row;flex:none;justify-content:flex-end;align-items:center;gap:10px;width:auto;min-width:max-content;max-width:none;height:48px;display:flex;position:relative}.header-inner .header-control,.header-inner .theme-control{box-sizing:border-box;width:auto;min-width:0;height:44px;min-height:44px;color:var(--ink);box-shadow:none;background:0 0;border:0;border-radius:10px;flex:none;justify-content:center;align-items:center;margin:0;padding:0 13px;font-size:14px;font-weight:700;line-height:1.2;text-decoration:none;display:inline-flex}.header-inner .header-control:hover,.header-inner .theme-control:hover{background:color-mix(in srgb,var(--line) 45%,transparent)}.header-inner .theme-control{gap:7px;padding-right:7px}.header-inner .theme-control>span{font:inherit;display:inline}.header-inner .theme-control select{width:82px;min-width:82px;height:32px;min-height:32px;color:var(--ink);border:1px solid var(--line);background:var(--panel);border-radius:7px;margin:0;padding:4px 18px 4px 7px;font-size:13px;font-weight:600;line-height:1.2}.header-inner .account-menu{z-index:200;flex:none;width:auto;max-width:none;position:relative}.header-inner .account-menu summary.header-control{width:auto;max-width:none;height:44px;min-height:44px;box-shadow:none;background:0 0;border:0;padding:0 9px 0 7px;display:inline-flex}.header-inner .account-menu summary.header-control:hover{background:color-mix(in srgb,var(--line) 45%,transparent)}.header-inner .account-avatar{width:30px;height:30px;margin-right:1px}.header-inner .menu-caret{color:var(--muted);margin-left:1px;font-size:13px}.header-inner .account-menu>div{z-index:400;width:210px;min-width:210px;position:absolute;top:calc(100% + 8px);left:auto;right:0}button,.button-link{min-height:44px;padding:11px 18px;line-height:1.25}.settings-panel button,.play-option,.seed-picker button{min-height:48px;padding-top:13px;padding-bottom:13px}button.link{min-height:40px;padding:10px 12px}@media (width<=760px){header.site-header{height:56px;min-height:56px;padding:0 12px}.header-inner{gap:10px}.header-inner nav{gap:3px}.header-inner .brand>span:last-child,.header-inner .theme-control>span{display:none}.header-inner .header-control,.header-inner .theme-control{padding-left:8px;padding-right:8px}}@media (width<=480px){.header-inner nav>a.header-control,.header-inner .account-menu summary>span:nth-child(2){display:none}.header-inner .theme-control{display:inline-flex}}@media (width>=761px){.header-inner .brand>span:last-child,.header-inner .theme-control>span,.header-inner .account-menu summary>span:nth-child(2){display:inline}}.actions,.gamebar,.game-actions{gap:12px}.actions>*,.gamebar>*,.game-actions>*{margin:0}form>button+button,.panel>button+button{margin-left:10px}.gamebar button{min-height:40px;margin-block:2px;padding:9px 14px;line-height:1.25}.game .toprow{grid-template-columns:repeat(4,minmax(54px,1fr)) minmax(10px,18px) repeat(4,minmax(54px,1fr));gap:8px;min-width:630px;display:grid}.game .tableau{grid-template-columns:repeat(8,minmax(62px,1fr));gap:8px;min-width:630px;margin-top:18px;display:grid}.game .slot{width:100%;min-width:0;min-height:0;box-shadow:none;background:#0002;border:2px dashed #fff6;border-radius:8px;padding:0;transform:none}.game .foundation{aspect-ratio:5/7;display:block}.game .column{background:#0002;border:0;border-radius:8px;min-width:0;min-height:520px;position:relative}.game .column>div{width:100%;position:absolute;left:0}.game .card{aspect-ratio:5/7;color:#111;background:#fff;border:0;border-radius:8px;width:100%;min-width:0;min-height:0;padding:0;display:block;position:relative;overflow:hidden;transform:none;box-shadow:0 2px 5px #08271d40}.game .card:hover{transform:none;box-shadow:0 3px 7px #08271d55}.game .card img,.game .foundation-card{object-fit:fill;width:100%;height:100%;display:block}@media (width<=700px){.actions,.gamebar{gap:10px}}.access-anchor{width:min(460px,100%);min-width:0}.access-page .access-panel{min-width:0;padding:20px}.access-tabs{border-bottom:1px solid var(--line);grid-template-columns:1fr 2fr;gap:4px;margin-bottom:20px;display:grid}.access-tabs [role=tab]{min-height:44px;color:var(--muted);background:0 0;border:0;border-bottom:3px solid #0000;border-radius:6px 6px 0 0;padding:10px 8px}.access-tabs [role=tab][aria-selected=true]{color:var(--accent);border-bottom-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--panel))}.access-page h1{margin:0 0 16px;font-size:24px}.access-page .actions{flex-wrap:wrap;gap:8px}.access-page input{width:100%;min-width:0}.access-page [role=tabpanel]{overflow-wrap:anywhere}@media (width<=480px){.access-page{padding:20px 12px}.access-page .access-panel{padding:16px}.access-tabs [role=tab]{font-size:14px}.access-page input,.access-page button{min-height:44px}}main.game-page{max-width:1240px;padding:12px 20px;font-size:.9375rem;line-height:1.4}.game-page .panel{border-radius:10px;padding:14px}.game-page h1{margin:0 0 6px;font-size:1.5rem;line-height:1.2}.game-page h2{margin:0 0 12px;font-size:1.125rem;line-height:1.3}.game-page p{margin:10px 0}.game-page label{gap:4px;margin:0}.game-page input,.game-page select,.game-page textarea{min-width:0;font:inherit;padding:7px 10px}.game-page button:where(:not(.card):not(.slot):not(.empty-card):not([role=gridcell])),.game-page .button-link{border-radius:8px;min-height:36px;padding:7px 12px;line-height:1.3}.game-page .grid{gap:12px}.game-page.freecell-hub .grid{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))}.game-page.freecell-hub .panel label{margin-bottom:8px}.game-page .back-link{margin-bottom:12px;font-size:.875rem}.game-page .hero{padding:0 0 12px}.game-page .actions{flex-wrap:wrap;gap:8px}.game-page .danger{margin-top:0}.game-page .player{overflow-wrap:anywhere;min-width:0;max-width:100%}.game-page .race-heading input{width:min(100%,36ch);margin:0 8px 12px 0}.game-page .race-heading{margin-bottom:12px}.game-page summary{cursor:pointer}.game-page summary:focus-visible,.game-page canvas:focus-visible{outline-offset:3px;outline:3px solid #e2a72d}.game-page .panel>button+button{margin-left:0}main.game-page.freecell-hub{max-width:1040px}.game-page .freecell-title{align-items:center;gap:14px;margin-bottom:18px}.game-page .freecell-title-icon{width:64px;height:64px;box-shadow:none;border-radius:12px;flex-basis:64px;font-size:2.6rem}.game-page .freecell-title p:last-child{line-height:1.4}.game-page .play-options{gap:12px;margin-bottom:12px}.game-page .play-option{border-radius:10px;gap:12px;min-height:76px;padding:14px}.game-page .seed-picker{gap:12px;margin-bottom:12px}.game-page .seed-picker p{margin:4px 0 0}.game-page .dg-guide{margin-top:12px}.game-page .freecell-title .eyebrow{margin:0 0 4px}.game-page .gamebar{gap:8px;margin-bottom:10px}.game-page .gamebar button{margin-block:0}.game-page .game-guide>summary{border-radius:8px;padding:7px 10px}@media (width>=800px){.freecell-page .game-heading{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 16px;display:grid}.freecell-page .game-heading h1,.freecell-page .game-heading>p{grid-column:1;margin:0}.freecell-page .game-heading .actions{grid-area:1/2/span 2;justify-content:end;max-width:560px;margin:0}}.game-page .game{border-radius:12px;margin-inline:0}.game-page .freecell-board{--freecell-card-height:max(100px, calc((100cqw - 56px) / 8 * 1.4));max-width:980px;min-height:0;margin-inline:auto;padding:12px}.game-page .freecell-board .tableau{margin-top:12px;container-type:inline-size}.game-page .freecell-board .column{min-height:0}.game-page.race-page{position:relative}.game-page.race-page>.game-page{min-height:0;padding:0}@media (width<=650px){main.game-page{padding:12px}.game-page .freecell-title{align-items:flex-start}.game-page .freecell-title-icon{flex-basis:48px;width:48px;height:48px;font-size:2rem}.game-page .seed-picker{grid-template-columns:1fr}}@media (width<=650px),(pointer:coarse){.game-page button:where(:not(.card):not(.slot):not(.empty-card):not([role=gridcell])),.game-page .button-link,.game-page input:not([type=checkbox]):not([type=radio]),.game-page select{min-height:44px}.game-page input,.game-page select,.game-page textarea{font-size:1rem}}.update-backdrop{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#07120dcc;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.update-dialog{background:var(--panel);border:1px solid var(--line);border-radius:18px;width:min(600px,100%);max-height:calc(100vh - 40px);padding:28px;overflow:auto;box-shadow:0 24px 80px #0008}.update-dialog>h2{margin:3px 0 20px;font-size:1.8rem}.update-kicker{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:800}.update-list{gap:20px;display:grid}.update-list article{border-left:4px solid var(--accent);padding-left:16px}.update-list article+article{border-top:1px solid var(--line);padding-top:20px}.update-list time{color:var(--muted);font-size:.85rem;font-weight:700}.update-list h3{margin:5px 0 7px}.update-list p{margin:0;line-height:1.55}.update-dialog>button{width:100%;margin-top:24px}.update-dialog>button:disabled{cursor:wait;opacity:.7}.card[draggable=true]{cursor:grab}.card[draggable=true]:active{cursor:grabbing}.card{touch-action:none}.touch-drag-preview{z-index:1100;pointer-events:none;opacity:.88;position:fixed;box-shadow:0 10px 28px #0008}.touch-drop-target{outline-offset:2px;outline:4px solid #ffe45c!important}.foundation-card{object-fit:fill;width:100%;height:100%;display:block}.auto-complete-card{z-index:1200;pointer-events:none;object-fit:fill;animation:auto-foundation-move var(--auto-move-duration,.15s) linear forwards;position:fixed;box-shadow:0 8px 20px #0007}@keyframes auto-foundation-move{to{transform:translate(var(--auto-move-x), var(--auto-move-y)) scale(.94)}}.card-drag-preview{pointer-events:none;position:fixed;top:0;left:-10000px}.card-drag-preview .card{position:absolute;left:0}.card-drag-preview.solid{z-index:1000}.gamebar{flex-wrap:wrap}.gamebar .drag-setting{color:#fff;margin:0}.gamebar .drag-setting input{width:20px;height:20px;margin:0}.game.paused .toprow,.game.paused .tableau{visibility:hidden}.game.auto-completing .toprow,.game.auto-completing .tableau,.game.auto-completing .gamebar button,.game.auto-completing .gamebar input{pointer-events:none}@media (prefers-reduced-motion:reduce){.auto-complete-card{animation:none}}.animation-speed{max-width:560px}.animation-speed input{width:100%}.account-menu{position:relative}.account-menu summary{cursor:pointer;background:var(--accent);color:#fff;border-radius:9px;padding:10px 13px;font-weight:700;list-style:none}.account-menu summary::-webkit-details-marker{display:none}.account-menu>div{z-index:100;background:var(--panel);border:1px solid var(--line);border-radius:10px;gap:4px;min-width:180px;padding:12px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 10px 30px #0003}.account-menu>div>*{text-align:left;padding:8px}.account-menu .link{width:100%}.column{border:0}.no-moves{color:#fff;text-align:center;background:#8f2d24;border:3px solid #fff;border-radius:12px;width:min(620px,100vw - 72px);margin:24px auto 0;padding:16px;font-weight:800;position:sticky;left:16px;box-shadow:0 8px 24px #0006}.game{position:relative}.result-overlay{z-index:20;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#071b1299;justify-content:center;align-items:flex-start;padding:clamp(110px,18vh,180px) 16px 32px;display:flex;position:absolute;inset:0}.result-overlay .result-banner{width:min(620px,100vw - 72px);margin:0;position:static;bottom:auto;left:auto}.game-page{padding-top:12px}.game-heading{padding:0 0 12px}.game-heading h1{margin:0 0 4px}.game-heading p{margin:0 0 8px}.game-heading .actions{margin-top:6px}.game-page .player-roster{margin-bottom:12px;padding:12px 16px}.game-page .player-roster h2{margin:0 0 8px;font-size:1.1rem}.game-page .player-roster>div{gap:8px}.game-page .player{gap:2px;padding:7px 11px}.game-heading .danger{margin-top:4px}@media (width<=700px){.result-overlay{padding-top:90px}.result-overlay .result-banner{width:min(620px,100vw - 32px);padding:20px}.result-overlay .result-banner h2{font-size:2rem}}.multi-board .klondike-top>.card,.multi-board .klondike-top>.shared-card,.multi-board .klondike-top>[data-klondike-waste],.multi-board [data-klondike-waste]>.card{flex:0 0 82px;width:82px;min-width:82px;max-width:82px;height:115px}.multi-board .klondike-top>[data-klondike-waste]{display:block}.multi-board .klondike-top>.card{aspect-ratio:5/7}.multi-board .pyramid-stock>.card{aspect-ratio:5/7;flex:0 0 82px;width:82px;min-width:82px;max-width:82px;height:115px}.multi-board .pyramid-redeal{color:#fff;cursor:pointer;background:#0000002e;flex:0 0 82px;place-content:center;gap:.25rem;display:grid}.multi-board .pyramid-redeal span{font-size:1.5rem}.multi-board .pyramid-redeal small{color:inherit;font-size:.68rem}.multi-board .pyramid-stock-empty{flex:0 0 82px}@media (width<=760px){.multi-board .klondike-top>.card,.multi-board .klondike-top>.shared-card,.multi-board .klondike-top>[data-klondike-waste],.multi-board [data-klondike-waste]>.card,.multi-board .pyramid-stock>.card{flex-basis:64px;width:64px;min-width:64px;max-width:64px;height:90px}.multi-board .pyramid-redeal,.multi-board .pyramid-stock-empty{flex-basis:64px}}.square-grid button{width:100%;height:100%;overflow:hidden}.square-grid button:hover{filter:none;transform:none}.battle-layout .square-grid{container-type:inline-size}.battle-layout .square-grid button{place-items:center;font-size:0;line-height:1;display:grid}.battle-layout .square-grid .ship:before{content:"";aspect-ratio:1;background:currentColor;width:58%}.battle-layout .square-grid .hit:before,.battle-layout .square-grid .sunk:before{content:"×";font-family:Arial,sans-serif;font-size:7cqi;font-weight:700;line-height:1}.battle-layout .square-grid .miss:before{content:"";aspect-ratio:1;border:max(2px,.5cqi) solid;border-radius:50%;width:60%}.fleet-controls>button:first-of-type{min-width:13.5rem}.square-grid[aria-label=Tic-Tac-Toe\ board]{grid-template-rows:repeat(3,minmax(0,1fr));container-type:inline-size}.square-grid[aria-label=Tic-Tac-Toe\ board] button{background:#1677a8;width:100%;height:100%;font-size:23.333cqi;line-height:1;transition:background-color .18s;overflow:hidden}.square-grid[aria-label=Tic-Tac-Toe\ board] button:hover{filter:none;box-shadow:none;transform:none}.square-grid[aria-label=Tic-Tac-Toe\ board] button:not(:disabled):hover{background-color:#258fba}.game-guide{color:#fff;position:relative}.game-guide>summary{cursor:pointer;border:1px solid #fff8;border-radius:10px;padding:10px 13px;font-weight:800;list-style-position:inside}.game-guide[open]:before{content:"";z-index:2000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#06120de6;position:fixed;inset:0}.game-guide[open] .game-guide-content{z-index:2001;color:#fff;background:#092b22;border:2px solid #ffffff80;border-radius:18px;margin:0;padding:clamp(20px,4vw,34px);position:fixed;inset:clamp(18px,6vh,70px) max(18px,50vw - 380px);overflow:auto;box-shadow:0 24px 80px #000b}.game-guide-heading{border-bottom:1px solid #ffffff38;justify-content:space-between;align-items:center;gap:20px;padding-bottom:14px;display:flex}.game-guide-heading h2{margin:0!important;font-size:1.45rem!important}.game-guide-content h2{margin:18px 0 6px;font-size:1rem}.game-guide-content p,.game-guide-content li{line-height:1.55}.game-guide-content ul{margin:6px 0;padding-left:22px}@media (width<=520px){.game-guide[open] .game-guide-content{padding:18px;inset:10px}.game-guide-heading{align-items:flex-start}.game-guide-heading button{padding:9px 11px}}.card-game-page{max-width:1280px}.multi-board{color:#fff;max-width:1000px;min-height:0;margin-inline:auto;position:relative}.shared-gamebar{flex-wrap:wrap;position:relative}.shared-gamebar details{max-width:560px}.shared-gamebar summary{cursor:pointer;font-weight:800}.shared-gamebar p{line-height:1.5}.multi-board .shared-card,.card-back{flex:none;width:82px;height:115px}.shared-card img,.foundation-mini img{width:100%;height:100%}.multi-board .card.face-down,.multi-board .card.card-back{color:#fff;background:repeating-linear-gradient(45deg,#173a75,#173a75 8px,#f0f4ff 8px 11px);border:5px solid #fff}.card-back-mark,.card-back>span{text-shadow:0 1px 3px #000;place-items:center;width:100%;height:100%;font-weight:900;display:grid}.empty-card{color:#fff;background:#0002;border:2px dashed #fff6;border-radius:8px;width:82px;height:115px}.klondike-top{align-items:start;gap:12px;display:flex}.foundation-row{gap:10px;margin-left:auto;display:flex}.foundation-mini{padding:0;overflow:hidden}.klondike-tableau{grid-template-columns:repeat(7,82px);justify-content:space-between;gap:10px;min-width:634px;margin-top:14px;display:grid}.klondike-column{border-top:2px dashed #fff5;min-height:115px;position:relative}.klondike-column>div{width:82px;position:absolute}.pyramid-stock{gap:12px;display:flex;position:absolute;top:70px;left:16px}.pyramid-board{--pyramid-card-width:min(82px,calc((100cqw - 24px)/7));--pyramid-step:calc(var(--pyramid-card-width) + 4px);--pyramid-rise:calc(var(--pyramid-card-width) * 67 / 82)}.pyramid-layout{aspect-ratio:598/517;width:min(100%,598px);margin:12px auto;position:relative;container-type:inline-size}.pyramid-layout .shared-card{width:var(--pyramid-card-width);aspect-ratio:5/7;height:auto}.pyramid-card{left:calc(50% + (var(--col) - var(--row)/2)*var(--pyramid-step) - var(--pyramid-card-width)/2);top:calc(var(--row)*var(--pyramid-rise));position:absolute}.dungeon-stats{flex-wrap:wrap;gap:12px;display:flex}.dungeon-stats strong{background:#0003;border-radius:12px;gap:4px;padding:10px;display:grid}.dungeon-stats span{font-size:1.4rem}.scoundrel-room{flex-wrap:wrap;gap:12px;margin:14px 0;display:flex}.game-result{z-index:20;text-align:center;background:#12653e;border:4px solid #fff;border-radius:18px;padding:28px;position:absolute;inset:100px 20px auto}.game-result.lost{background:#8d2929}@media (width<=760px){.multi-board .shared-card,.card-back,.empty-card{width:64px;height:90px}.klondike-tableau{grid-template-columns:repeat(7,64px);gap:10px;min-width:508px}.foundation-row{gap:4px}.klondike-column>div{width:64px}.pyramid-layout .shared-card{width:var(--pyramid-card-width);height:auto}.pyramid-stock{position:relative;top:auto;left:auto}.multi-board{min-height:0}}.game-result-actions{flex-wrap:wrap;justify-content:center;gap:.65rem;display:flex}.game-page .scoundrel-board{max-width:760px}.multi-board .card-back>span{height:calc(100% - 18px);position:static;inset:auto}.multi-board .card-back>small{color:#fff;height:18px;font-size:12px;display:block}.board-game-page{max-width:1100px;margin:auto;padding:1rem}.board-game-page .match-heading{flex-wrap:wrap;align-items:center;gap:8px 16px;width:100%;margin-bottom:12px;display:flex}.board-game-page .match-heading h1,.board-game-page .match-heading p{margin:0}.board-game-page .match-heading input{width:min(100%,36ch)}.board-game-page .difficulty-control select{max-width:180px}.board-game-page .difficulty-control{align-items:center;gap:8px;display:flex}.board-game-page .player-roster{flex-wrap:wrap;gap:8px;display:flex}.board-game-page .battle-layout h3{text-align:center;margin:0;font-size:1rem}.turn-banner{text-align:center;font-size:1.15rem;font-weight:800}.square-grid{aspect-ratio:1;border:3px solid var(--border,#445);background:#163b38;width:min(100%,max(280px,100dvh - 310px),30rem);margin:8px auto;display:grid}.board-game-page .square-grid button{touch-action:manipulation;border:1px solid #ffffff40;border-radius:0;min-width:0;min-height:0;padding:0;font-size:clamp(1rem,6vw,3rem)}.square-grid button:focus-visible{outline-offset:-5px;z-index:2;outline:4px solid #fff}.square-grid .light{background:#e7cf9d}.square-grid .dark{background:#654532}.square-grid .legal{box-shadow:inset 0 0 0 5px #52e081}.square-grid .selected{box-shadow:inset 0 0 0 5px #ffd54a}.checker{aspect-ratio:1;border:3px solid #fff;border-radius:50%;place-items:center;width:72%;margin:auto;font-size:.65em;display:grid}.checker.p0{color:#fff;background:#ad2430}.checker.p1{color:#fff;background:#17171c}.connect-cell{background:#164ea1}.connect-cell span{aspect-ratio:1;border-radius:50%;place-items:center;width:75%;margin:auto;display:grid}.connect-cell .empty{background:#e9edf3}.connect-cell .red{color:#fff;background:#c52c35}.connect-cell .yellow{color:#222;background:#ffd83d}.battle-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;display:grid}.battle-layout .square-grid{width:min(100%,max(300px,100dvh - 340px),27.5rem)}.square-grid .ship{background:#7a8790}.square-grid .hit,.square-grid .sunk{color:#fff;background:#b42931}.square-grid .miss{background:#7bbddd}.fleet-controls{flex-wrap:wrap;grid-column:1/-1;justify-content:center;align-items:center;gap:.5rem;display:flex}.fleet-controls label{align-items:center;gap:8px;display:flex}.match-actions{text-align:center}.game-rules{margin-top:1rem}@media (width<=720px){.battle-layout{grid-template-columns:1fr}.battle-layout .square-grid{width:min(100%,30rem)}.board-game-page .square-grid button{font-size:clamp(.7rem,5vw,2rem)}}@media (prefers-reduced-motion:no-preference){.connect-cell .red,.connect-cell .yellow{animation:.22s ease-out drop}@keyframes drop{0%{transform:translateY(-60%)}to{transform:none}}}@media (width>=900px){main.game-page.board-game-page{grid-template-columns:240px minmax(0,1fr);align-content:start;align-items:start;gap:10px 24px;display:grid}.board-game-page>.back-link,.board-game-page>.match-heading{grid-column:1/-1;margin:0}.board-game-page>.difficulty-control,.board-game-page>.player-roster{grid-area:3/1;margin:0}.board-game-page>.turn-banner{grid-area:3/2;margin:0}.board-game-page>.square-grid,.board-game-page>.battle-layout{grid-area:4/2/span 4}.board-game-page>.square-grid{width:min(100%,max(320px,100dvh - 280px),440px)}.board-game-page>.match-actions{text-align:left;grid-area:4/1}.board-game-page>.game-rules{grid-area:5/1;margin:0}.board-game-page>button{grid-column:1}}@media (width<=650px),(pointer:coarse){.board-game-page .square-grid{width:min(100%,440px)}.board-game-page .square-grid button{min-height:0;padding:0}}.game-page.arcade-page{max-width:1060px;margin:0 auto;padding:16px 20px}.arcade-page h1{margin:0 0 6px;font-size:1.5rem}.arcade-page>.eyebrow{margin:0}.arcade-cabinet{color:#eff4ff;background:#10182f;border:1px solid #354566;border-radius:12px;max-width:594px;margin:12px auto;padding:8px;box-shadow:0 16px 45px #080c2026}.arcade-stats{text-transform:uppercase;color:#acbbd7;justify-content:space-around;gap:8px;padding:4px 0 8px;font-size:.8rem;display:flex}.arcade-stats b{color:#fff;font-variant-numeric:tabular-nums;font-size:1.1rem;display:block}.arcade-screen{position:relative}.arcade-screen canvas{border-radius:8px;width:100%;height:auto;display:block}.arcade-overlay{text-align:center;background:#080c20db;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.arcade-overlay h2{margin:0;font-size:1.25rem}.arcade-overlay button{min-width:150px;margin-top:12px}.arcade-actions{align-items:center;gap:8px;padding:8px 0 0;display:flex}.arcade-actions span{color:#acbbd7;margin-left:auto;font-size:.85rem}.arcade-touch{justify-content:center;gap:10px;display:flex}.arcade-touch button{touch-action:none;-webkit-user-select:none;user-select:none;min-width:54px;min-height:54px;font-size:1.3rem}.arcade-help{max-width:590px;color:var(--muted);margin:12px auto;line-height:1.6}@media (width<=400px){.arcade-page{padding:18px 10px}.arcade-cabinet{padding:6px}.arcade-touch{gap:6px}.arcade-touch button{min-width:48px}.arcade-actions{gap:8px}}.arcade-actions{flex-wrap:wrap}.arcade-actions button{padding:10px 12px}.arcade-actions span{white-space:nowrap}@media (width>=800px){main.game-page.arcade-page{grid-template-columns:240px minmax(0,1fr);align-content:start;align-items:start;gap:10px 28px;display:grid}.arcade-page>:not(.arcade-cabinet){grid-column:1;margin:0}.arcade-page>.arcade-cabinet{grid-area:1/2/span 9;width:min(100%,105.556dvh - 224.778px,594px);margin:0 auto}.arcade-page .arcade-help{font-size:.875rem;line-height:1.5}.arcade-page .missile-batteries{flex-wrap:wrap;justify-content:start}}@media (width>=800px) and (pointer:fine){.arcade-page .arcade-touch{display:none}}.arcade-page .arcade-score-screen{justify-content:flex-start;gap:8px;padding:12px}.arcade-page .arcade-score-screen>h2{flex-shrink:0;font-size:18px}.arcade-page .arcade-score-screen>p{margin:0;font-size:13px}.arcade-page .arcade-score-screen>button{flex-shrink:0;margin:0}.arcade-page .arcade-high-scores{color:#eff4ff;flex:1;width:100%;max-width:390px;min-height:0;padding:8px 12px;font-family:ui-monospace,Consolas,monospace;overflow-y:auto}.arcade-page .arcade-high-scores h2{color:#ffe077;letter-spacing:.12em;text-transform:uppercase;margin:0 0 4px;font-size:20px}.arcade-page .arcade-high-scores p{color:#b9c9e8;margin:6px 0;font-size:12px}.arcade-page .arcade-high-scores ol{text-align:left;margin:12px 0;padding-left:30px}.arcade-page .arcade-high-scores li{color:#91f3df;padding:5px 0;font-size:14px}.arcade-page .arcade-high-scores li:first-child{color:#ffe077}.arcade-page .arcade-high-scores li::marker{color:#c5b3ff}.arcade-page .arcade-high-scores li span{vertical-align:top;overflow-wrap:anywhere;width:calc(100% - 85px);display:inline-block}.arcade-page .arcade-high-scores li small{color:#b9c9e8;font-size:10px}.arcade-page .arcade-high-scores li b{text-align:right;font-variant-numeric:tabular-nums;width:85px;display:inline-block}.arcade-page .arcade-high-scores button{width:100%;min-width:0;margin:6px 0}.arcade-page .arcade-high-scores:focus-visible{outline-offset:-2px;outline:2px solid #ffe077}@media (width<=430px){.arcade-page .arcade-score-screen{gap:4px;padding:8px}.arcade-page .arcade-high-scores{padding:4px 8px}.arcade-page .arcade-high-scores h2{font-size:18px}.arcade-page .arcade-high-scores li{padding:3px 0;font-size:12px}}.missile-canvas{touch-action:none;cursor:crosshair}.missile-batteries{justify-content:center;gap:10px;display:flex}.missile-batteries button{min-width:95px;padding:12px}.missile-batteries small{margin-top:4px;font-size:.75rem;display:block}.missile-batteries button[aria-pressed=true]{outline:3px solid var(--accent);outline-offset:3px}@media (width<=400px){.missile-batteries{gap:8px}.missile-batteries button{min-width:88px;padding:10px}}
