@font-face{font-family:Lilita One;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/3b0bcebad1fd47d9-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Lilita One;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/043945717efb3a31-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Lilita One Fallback;src:local("Arial");ascent-override:96.14%;descent-override:22.91%;line-gap-override:0.00%;size-adjust:96.01%}.__className_03de8d{font-family:Lilita One,Lilita One Fallback;font-weight:400;font-style:normal}.__variable_03de8d{--font-display:"Lilita One","Lilita One Fallback"}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/abfec168c8990f67-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/3131c862d4942660-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/6a9c36ea9dc9b36b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/e1694c6cb47c173f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Nunito Fallback;src:local("Arial");ascent-override:99.71%;descent-override:34.82%;line-gap-override:0.00%;size-adjust:101.39%}.__className_7776a5{font-family:Nunito,Nunito Fallback;font-style:normal}.__variable_7776a5{--font-sans:"Nunito","Nunito Fallback"}:root{color-scheme:light;--font-sans-stack:var(--font-sans),"Nunito","Segoe UI",system-ui,-apple-system,sans-serif;--font-display-stack:var(--font-display),"Lilita One","Arial Rounded MT Bold","Segoe UI Black",sans-serif;--bg:#f3eeff;--bg-glow:#dccbff;--bg-glow-2:#ffe2f1;--surface:#ffffff;--surface-2:#f8f4ff;--ink:#1c0f45;--muted:#655a8c;--line:#e4daff;--line-strong:#cbb9f7;--edge:#bfaaf0;--primary:#6a35ff;--primary-hover:#5a25ee;--primary-ink:#fff;--primary-edge:#4317c2;--primary-glow:#6a35ff40;--accent:#a86a00;--gold:#ffc23a;--gold-deep:#e39a00;--gold-edge:#b87400;--gold-soft:#fff0c8;--em:#6a35ff;--pink:#ff4fa0;--cyan:#22b8e6;--danger:#d3204f;--danger-bg:#ffe8ef;--ok:#139c62;--radius:18px;--radius-sm:12px;--panel-soft:#ece4ff;--well:#f4efff;--reward-surface:#fff3d1;--shadow-sm:0 1px 2px #2a145a14,0 2px 8px #2a145a0f;--shadow:0 2px 6px #2a145a12,0 14px 34px #2a145a1f;--shadow-lg:0 6px 14px #2a145a1a,0 30px 70px #2a145a33;--region-0:#7db4ff;--region-1:#b58cff;--region-2:#ff8cc0;--region-3:#ffa95e;--region-4:#ffe066;--region-5:#86dd8f;--region-6:#5edccb;--region-7:#9aa4ff;--region-8:#ee9cff;--region-9:#ff8577;--region-10:#c3ea6c;--region-11:#c2c6d8;--board-ink:#1c0f45;--board-line:#1c0f4540;--ease:cubic-bezier(.2,.8,.2,1);--bounce:cubic-bezier(.34,1.56,.64,1)}:root[data-color-mode=night]{color-scheme:dark;--bg:#130a2c;--bg-glow:#4b1f96;--bg-glow-2:#7a1d6b;--surface:#211349;--surface-2:#2a185a;--ink:#fbf7ff;--muted:#b6a6e2;--line:#35226a;--line-strong:#4f3797;--edge:#0d0622;--primary:#9d7bff;--primary-hover:#b49aff;--primary-ink:#140932;--primary-edge:#5b36d6;--primary-glow:#8f5bff59;--accent:#ffc93c;--gold:#ffc93c;--gold-deep:#f0a400;--gold-edge:#b06f00;--gold-soft:#47320c;--em:#ffc93c;--pink:#ff5aa8;--cyan:#4fe0ff;--danger:#ff7c9d;--danger-bg:#46142e;--ok:#5ff0a9;--panel-soft:#32206b;--well:#190e3d;--reward-surface:#3d2b0d;--region-0:#6fa6f5;--region-1:#a77cf2;--region-2:#f27bb2;--region-3:#f39a52;--region-4:#f2d25a;--region-5:#74cf80;--region-6:#4fcdbd;--region-7:#8b95f2;--region-8:#df8cf2;--region-9:#f2776a;--region-10:#b3dc5e;--region-11:#b0b4c8;--shadow-sm:0 1px 2px #0007,0 2px 8px #0004;--shadow:0 4px 10px #0006,0 16px 40px #0007;--shadow-lg:0 10px 24px #0008,0 34px 80px #000a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:var(--bg);color:var(--ink);font-family:var(--font-sans-stack);font-weight:600;font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;position:relative;overflow-x:clip}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(800px 520px at 88% -10%,var(--bg-glow),transparent 62%),radial-gradient(700px 520px at -12% 18%,var(--bg-glow-2),transparent 60%),radial-gradient(circle,color-mix(in srgb,var(--ink) 22%,transparent) 1px,transparent 1.6px) 0 0/34px 34px,radial-gradient(circle,color-mix(in srgb,var(--ink) 12%,transparent) 1px,transparent 1.4px) 17px 17px/34px 34px;-webkit-mask-image:linear-gradient(180deg,#000,#000a 45%,#0000 95%);mask-image:linear-gradient(180deg,#000,#000a 45%,#0000 95%);opacity:.75}h1,h2,h3{margin:0;font-family:var(--font-display-stack);font-weight:400;line-height:1.06;letter-spacing:.005em;text-wrap:balance}h1{font-size:clamp(34px,4.6vw,52px)}h2{font-size:28px}h3{font-size:21px}h1 em,h2 em{font-style:normal;color:var(--em)}p{text-wrap:pretty}a{color:inherit;text-decoration:none;transition:color .15s}a:hover{color:var(--primary)}button,input,select,textarea{font:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled{cursor:default;opacity:.42}a svg,button svg{flex-shrink:0}input,select,textarea{min-width:0;accent-color:var(--primary)}select{cursor:pointer}::selection{background:var(--gold-soft);color:var(--ink)}:focus-visible{outline:2.5px solid var(--primary);outline-offset:3px;border-radius:6px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:16px;top:-80px;z-index:100;padding:10px 16px;border-radius:10px;background:var(--primary);color:var(--primary-ink)}.skip-link:focus{top:10px}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:40;background:transparent;border-bottom:1px solid transparent;transition:background .25s,border-color .25s,box-shadow .25s}.site-header.header-scrolled,.site-header:has(.nav-mobile-open){background:color-mix(in srgb,var(--bg) 96%,transparent);backdrop-filter:saturate(1.4) blur(16px);-webkit-backdrop-filter:saturate(1.4) blur(16px);border-bottom-color:color-mix(in srgb,var(--line) 80%,transparent);box-shadow:0 8px 24px #120d240f}.header-inner{max-width:1240px;margin:auto;height:72px;padding:0 32px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;grid-gap:24px;gap:24px}.header-inner>.site-brand{justify-self:start}.header-actions{justify-self:end;gap:8px}.header-actions,.site-brand{display:flex;align-items:center}.site-brand{white-space:nowrap;font-family:var(--font-display-stack);font-size:27px;font-weight:400;letter-spacing:.01em}.brand-light{color:var(--gold)}.brand-symbol{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;margin-right:10px;color:#ffd457;background:linear-gradient(160deg,#8b5cff,#4b1fc4);box-shadow:inset 0 2px 0 #ffffff40,0 4px 0 #2d0f8a,0 8px 18px #6a35ff55;transition:transform .3s var(--bounce)}.site-brand:hover .brand-symbol{transform:rotate(-10deg) scale(1.08)}.header-actions .icon-button.nav-mobile-toggle{display:none}.site-nav{display:flex;gap:4px;align-items:center;font-size:14px;padding:4px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--surface) 80%,transparent);box-shadow:var(--shadow-sm)}.nav-trigger,.site-nav>a{display:flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:8px 18px;border:0;border-radius:999px;background:none;color:var(--muted);font-weight:600;transition:background .15s,color .15s}.nav-trigger:hover,.site-nav>a:hover{color:var(--ink);background:var(--well)}.nav-trigger.nav-active,.site-nav>a[aria-current=page]{background:var(--primary);color:#fff;box-shadow:0 3px 0 var(--primary-edge)}.nav-group{position:relative}.nav-chevron{display:inline-grid;place-items:center;opacity:.7;transition:transform .2s var(--ease)}.nav-trigger[aria-expanded=true] .nav-chevron{transform:rotate(180deg)}.nav-popover{position:absolute;top:calc(100% + 14px);left:50%;transform:translateX(-50%);width:280px;padding:8px;border:1px solid var(--line);background:var(--surface);border-radius:18px;box-shadow:var(--shadow-lg);animation:pop-in .18s var(--ease)}.nav-popover a{display:flex;flex-direction:column;padding:11px 14px;border-radius:12px;min-height:58px}.nav-popover a:hover,.nav-popover a[aria-current=page]{background:var(--well);color:var(--ink)}.nav-popover b{font-size:14px;font-weight:650}.nav-popover span{font-size:12.5px;color:var(--muted)}.nav-badge{margin-left:7px;padding:1px 7px;border-radius:999px;background:var(--reward-surface);color:var(--accent);font-size:11px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:18px}.nav-badge-done{background:var(--gold);color:#2a1d05}.site-nav>a[aria-current=page] .nav-badge{background:color-mix(in srgb,var(--bg) 18%,transparent);color:inherit}.account-button{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 16px 0 12px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:13.5px;font-weight:650;box-shadow:var(--shadow-sm);transition:border-color .15s,background .15s,opacity .15s}.account-button:hover{color:var(--ink);border-color:var(--line-strong)}.account-button:not(.account-signed-in){background:var(--primary);color:#fff;border-color:var(--primary-edge);box-shadow:0 3px 0 var(--primary-edge)}.account-button:not(.account-signed-in):hover{color:#fff;background:var(--primary-hover)}.account-button[aria-current=page]{box-shadow:0 0 0 2px var(--primary-glow)}.account-signed-in{padding-left:5px}.account-avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:linear-gradient(145deg,#f2c862,#d39b2c);color:#2a1d05;font-size:14px;font-weight:800}.account-label{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appearance-toggle,.icon-button.nav-mobile-toggle{display:inline-grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);box-shadow:var(--shadow-sm);transition:color .15s,border-color .15s,transform .3s var(--ease)}.appearance-toggle:hover,.icon-button.nav-mobile-toggle:hover:not(:disabled){color:var(--ink);background:var(--surface);border-color:var(--line-strong)}.appearance-toggle:hover svg{transform:rotate(-18deg)}.appearance-toggle svg{transition:transform .3s var(--ease)}.site-main{max-width:1180px;margin:auto;padding:36px 32px 56px;min-height:65vh}.site-main>.prose>h1,.site-main>div:not(.home-page)>h1{margin-bottom:14px}.site-footer{margin-top:40px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface) 70%,transparent);color:var(--muted);font-size:13px}.footer-inner{max-width:1180px;margin:auto;padding:48px 32px 28px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,2fr);grid-gap:48px;gap:48px}.footer-brand .site-brand{color:var(--ink);margin-bottom:14px}.footer-brand p{max-width:320px;margin:0;line-height:1.7}.footer-cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:24px;gap:24px}.footer-cols>div:last-child{display:grid;grid-template-columns:1fr 1fr;align-content:start;grid-column-gap:12px;column-gap:12px}.footer-cols>div:last-child h2{grid-column:1/-1}.footer-cols h2{font-family:var(--font-sans-stack);font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);margin:0 0 10px}.footer-cols a{display:flex;align-items:center;min-height:34px}.footer-legal{max-width:1180px;margin:0 auto;padding:18px 32px 30px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;border-top:1px solid var(--line);font-size:12px}.footer-legal>span:last-child{display:flex;gap:18px;align-items:center}.site-footer a:hover{color:var(--primary)}.footer-preferences{padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer;min-height:34px}.footer-preferences:hover{color:var(--primary)}.eyebrow{font-family:var(--font-sans-stack);font-size:12px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 8px;display:flex;align-items:center;gap:7px}.home-play{min-width:0;position:relative}.game-room{width:100%}.room-menu{justify-content:space-between;margin-bottom:12px}.room-menu,.room-picker{display:flex;align-items:center;gap:8px}.room-picker select{min-height:44px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);padding:8px 12px}.room-modes button{display:flex;align-items:center;gap:7px;min-height:44px;border:0;background:none;color:var(--primary);font-weight:650}.room-instruction{margin:0 0 12px;font-size:14px;color:var(--muted)}.board-size-list{display:flex;flex-wrap:nowrap;gap:3px;margin:0 0 14px;padding:4px;overflow-x:auto;scrollbar-width:none;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-sm)}.board-size-list::-webkit-scrollbar{display:none}.board-size-list button{flex:1 0 46px;min-width:46px;min-height:40px;padding:7px 4px;border:0;border-radius:10px;background:none;color:var(--muted);font-size:12.5px;font-weight:650;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;transition:background .15s,color .15s}.board-size-list button:hover{color:var(--ink);background:var(--well)}.board-size-list button[aria-pressed=true]{background:var(--primary);color:#fff;box-shadow:0 3px 0 var(--primary-edge)}.daily-strip{display:flex;align-items:center;gap:14px;margin:16px 0 0;padding:12px 12px 12px 14px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-sm);transition:border-color .2s,box-shadow .2s,transform .2s var(--ease)}.daily-strip:hover{color:var(--ink);border-color:var(--line-strong);box-shadow:var(--shadow);transform:translateY(-2px)}.daily-strip .daily-strip-art{width:44px;height:39px}.daily-strip-body{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:5px}.daily-strip-body b{font-family:var(--font-display-stack);font-size:18px;font-weight:600;line-height:1.1;white-space:nowrap}.daily-strip-meta{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted);white-space:nowrap}.daily-dots{display:flex;gap:4px}.daily-dots span{width:10px;height:10px;border-radius:50%;border:1.5px solid var(--line-strong)}.daily-dots .done{background:var(--gold);border-color:var(--gold-deep)}.daily-strip-cta{flex-shrink:0;display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:0 16px;border-radius:12px;background:linear-gradient(180deg,#ffd75e,var(--gold));color:#2b1600;font-size:13.5px;font-weight:900;box-shadow:0 3px 0 var(--gold-edge)}.daily-strip-cta svg{transition:transform .2s var(--ease)}.daily-strip:hover .daily-strip-cta svg{transform:translateX(3px)}.mode-art{width:62px;height:56px;flex-shrink:0;--surface:#fffdf8;--ink:#1d1a33;filter:drop-shadow(0 4px 8px #1d1a3322)}.star-chip{display:inline-flex;gap:6px;align-items:center;background:var(--reward-surface);border-radius:999px;padding:6px 14px;font-weight:700;color:var(--accent)}.star-chip small{color:var(--muted);font-weight:400}.home-page{display:flex;flex-direction:column}.home-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:64px 0 0;border:1px solid var(--line);border-radius:24px;background:var(--surface);box-shadow:var(--shadow);overflow:hidden}.home-stats>div{padding:26px 24px;border-right:1px solid var(--line)}.home-stats>div:last-child{border-right:0}.home-stats b{display:block;font-family:var(--font-display-stack);font-size:clamp(30px,3.4vw,42px);font-weight:600;line-height:1;letter-spacing:-.02em;font-feature-settings:lining-nums tabular-nums;font-variant-numeric:lining-nums tabular-nums}.home-stats b span{color:var(--gold-deep)}.home-stats small{display:block;margin-top:8px;color:var(--muted);font-size:13px}.home-section{margin-top:96px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:32px}.section-head h2{font-size:clamp(30px,3.6vw,44px);max-width:620px}.section-head p{max-width:380px;margin:0;color:var(--muted)}.rule-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:20px;gap:20px}.rule-card{position:relative;padding:26px;border:1px solid var(--line);border-radius:24px;background:var(--surface);box-shadow:var(--shadow-sm);transition:transform .25s var(--ease),box-shadow .25s}.rule-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.rule-card .rule-index{position:absolute;top:18px;right:24px;font-family:var(--font-display-stack);font-size:44px;line-height:1;color:var(--line-strong)}.rule-card h3{margin:22px 0 8px;font-size:23px}.rule-card p{margin:0;color:var(--muted);font-size:14.5px}.mini-board{--n:4;display:grid;grid-template-columns:repeat(var(--n),1fr);grid-template-rows:repeat(var(--n),1fr);width:132px;aspect-ratio:1;border:2.5px solid var(--board-ink);border-radius:10px;overflow:hidden;background:var(--board-ink);grid-gap:1px;gap:1px}.mini-board i{display:grid;place-items:center;background:var(--region-0);color:var(--board-ink);font-style:normal;font-size:14px;font-weight:600}.mini-board i.a{background:var(--region-3)}.mini-board i.b{background:var(--region-5)}.mini-board i.c{background:var(--region-1)}.mini-board i.d{background:var(--region-6)}.mini-board i.hl{box-shadow:inset 0 0 0 2.5px var(--primary)}.mini-board i.no{color:#9e3515}.mini-board svg{width:68%;height:68%}.mini-board svg path{fill:#ffc93c;stroke:var(--board-ink);stroke-width:1.4;stroke-linejoin:round}.mode-cards{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:20px;gap:20px}.mode-card{grid-column:span 2;display:flex;flex-direction:column;gap:6px;padding:26px;border:1px solid var(--line);border-radius:24px;background:var(--surface);box-shadow:var(--shadow-sm);transition:transform .25s var(--ease),box-shadow .25s,border-color .25s;position:relative;overflow:hidden}.mode-card:nth-child(-n+2){grid-column:span 3}.mode-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--line-strong);color:var(--ink)}.mode-card .mode-art{width:84px;height:74px;margin-bottom:10px}.mode-card h3{font-size:24px}.mode-card p{margin:0;color:var(--muted);font-size:14px;flex:1 1}.mode-card .card-cta{display:inline-flex;align-items:center;gap:8px;margin-top:14px;color:var(--primary);font-weight:700;font-size:14px}.mode-card:hover .card-cta svg{transform:translateX(4px)}.mode-card .card-cta svg{transition:transform .2s var(--ease)}.mode-card.featured{color:#f6f1e7;background:radial-gradient(500px 260px at 100% 0,#ff4fa055,transparent 70%),linear-gradient(160deg,#6a35ff,#3a0f9e);border-color:transparent}.mode-card.featured .mode-art{--surface:#fffdf8;--ink:#1d1a33;--primary:#7d6bff}.mode-card.featured h3{color:#fff}.mode-card.featured p{color:#e6dcff}.mode-card.featured .card-cta{color:var(--gold)}.mode-card .card-tag{position:absolute;top:22px;right:22px;padding:4px 10px;border-radius:999px;background:var(--reward-surface);color:var(--accent);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.mode-card.featured .card-tag{background:#ffffff1a;color:var(--gold)}.hint-showcase{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:56px;gap:56px;align-items:center;padding:48px;border-radius:32px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}.hint-showcase h2{font-size:clamp(30px,3.4vw,42px);margin-bottom:16px}.hint-showcase>div>p{color:var(--muted);font-size:15.5px;margin:0 0 22px}.check-list{list-style:none;margin:0 0 26px;padding:0;display:grid;grid-gap:10px;gap:10px}.check-list li{display:flex;gap:10px;align-items:flex-start;font-size:14.5px}.check-list li svg{color:var(--ok);margin-top:3px}.hint-demo{position:relative;padding:24px;border-radius:24px;background:var(--well);border:1px solid var(--line)}.hint-demo .panel{box-shadow:var(--shadow-lg)}.hint-demo .mini-board{--n:5;width:100%;max-width:260px;margin:0 auto 18px}.home-faq{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.7fr);grid-gap:56px;gap:56px;align-items:start}.home-faq .section-head{flex-direction:column;align-items:flex-start;gap:16px;margin:0;position:-webkit-sticky;position:sticky;top:100px}.home-faq .section-head a{color:var(--primary);text-decoration:underline;text-underline-offset:3px}.faq-list{display:grid;grid-gap:10px;gap:10px}.faq-item{border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-sm);transition:border-color .2s}.faq-item[open]{border-color:var(--line-strong)}.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;min-height:60px;cursor:pointer;list-style:none;font-size:16px;font-weight:650}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary svg{color:var(--muted);transition:transform .25s var(--ease)}.faq-item[open] summary svg{transform:rotate(180deg);color:var(--primary)}.faq-item summary:hover{color:var(--primary)}.faq-item p{margin:0;padding:0 22px 20px;color:var(--muted);font-size:14.5px;line-height:1.7}.home-cta{margin-top:96px;text-align:center;padding:64px 32px;border-radius:32px;color:#f6f1e7;background:radial-gradient(600px 300px at 50% 0,#ff4fa066,transparent 70%),linear-gradient(160deg,#6a35ff,#2c0b80);position:relative;overflow:hidden;isolation:isolate}.home-cta:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(#ffffff10 1px,transparent 0) 0 0/40px 40px,linear-gradient(90deg,#ffffff10 1px,transparent 0) 0 0/40px 40px;-webkit-mask-image:radial-gradient(circle at 50% 0,#000,transparent 70%);mask-image:radial-gradient(circle at 50% 0,#000,transparent 70%)}.home-cta h2{font-size:clamp(34px,4.4vw,54px);color:#fff}.home-cta h2 em{color:var(--gold)}.home-cta p{color:#e6dcff;max-width:520px;margin:16px auto 28px;font-size:16px}.home-cta .cta-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.btn.btn-gold{background:linear-gradient(180deg,#ffd75e,#ffc23a);color:#2b1600;border-color:#b87400;box-shadow:0 4px 0 #b87400,0 12px 28px #ffb80055}.btn.btn-gold:hover:not(:disabled){background:linear-gradient(180deg,#ffe07e,#ffc93c);color:#2b1600}.btn.btn-ghost{background:#ffffff14;color:#fff;border-color:#ffffff40;box-shadow:0 4px 0 #ffffff26}.btn.btn-ghost:hover:not(:disabled){background:#ffffff22;color:#fff}.game{position:relative;display:flex;flex-direction:column;align-items:center;gap:14px}.game-board-col,.game-side-col{width:100%;max-width:580px;min-width:0}.game-side-col{display:flex;flex-direction:column;gap:12px}.board-status{justify-content:space-between;margin:0 0 12px;min-height:44px;font-size:13px}.board-status,.status-label{display:flex;align-items:center;gap:8px}.status-label{color:var(--muted);font-weight:600}.status-label svg{color:var(--gold-deep)}.status-solved,.status-solved svg{color:var(--accent)}.game-time{display:flex;align-items:center;gap:4px;padding:0 4px 0 14px;border:1px solid var(--line);border-radius:999px;background:var(--surface);font-size:16px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;box-shadow:var(--shadow-sm)}.game-time>svg{color:var(--muted);margin-right:3px}.game-time .icon-button{width:38px;height:38px;border-radius:999px}.icon-button{display:inline-grid;place-items:center;width:44px;height:44px;padding:8px;border:0;border-radius:12px;background:none;color:var(--muted);transition:background .15s,color .15s}.icon-button:hover:not(:disabled){background:var(--panel-soft);color:var(--primary)}.board-zoom-tools{display:none;align-items:center;justify-content:space-between;gap:12px;margin:0 0 8px;font-size:12px;color:var(--muted)}.board-zoom-tools .btn{font-size:12px;padding:8px 12px}.board-zoomed .board-stage{overflow:auto;max-height:65svh;scrollbar-width:thin}.board-zoomed .board{min-width:calc(var(--n) * 44px + 6px);touch-action:pan-x pan-y}.board-zoomed .board.mark-mode{touch-action:none}.board-zoomed .region-letter{font-size:11px;top:4px;left:5px}.game-focus .game-board-col{position:fixed;inset:0;z-index:70;background:var(--bg);max-width:none;padding:16px;overflow-y:auto;display:flex;flex-direction:column;align-items:center}.game-focus .game-board-col>*{width:100%;max-width:580px;flex-shrink:0}.game-focus .board-zoom-tools{display:flex}.game-focus .game-side-col{position:static}.game.game-focus .game-side-col .hint-panel{position:fixed;left:50%;right:auto;transform:translateX(-50%);bottom:16px;z-index:75;width:560px;max-width:calc(100vw - 24px);max-height:60vh;overflow:auto}.board-stage{position:relative;width:100%;margin:0 auto;padding:12px;border-radius:24px;background:linear-gradient(180deg,#2c1868,#1a0c42);border:1px solid #ffffff14;box-shadow:0 0 0 1px #00000040,0 18px 50px #12063a66,0 0 60px var(--primary-glow)}.board-stage:before{content:"";position:absolute;inset:5px;border-radius:20px;border:1.5px solid #ffc93c66;box-shadow:inset 0 1px 0 #ffffff1f;pointer-events:none}.board{position:relative;display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));width:100%;aspect-ratio:1;border:4px solid var(--board-ink);border-radius:14px;overflow:hidden;background:var(--board-ink);touch-action:manipulation;-webkit-user-select:none;-moz-user-select:none;user-select:none;box-shadow:0 3px 0 #0d0622}.board.mark-mode{touch-action:none}.board-won .board{animation:won-glow 1.6s var(--ease)}.board-won .cell .crown{animation:crown-cheer .7s var(--ease) both}.cell{position:relative;aspect-ratio:1;padding:0;border:0;border-right:1px solid var(--board-line);border-bottom:1px solid var(--board-line);min-width:0;display:flex;align-items:center;justify-content:center;color:var(--board-ink);line-height:1;transition:filter .12s}.cell:after{content:"";position:absolute;inset:0;box-shadow:inset 0 2px 0 #ffffff59,inset 0 -3px 0 #1c0f451a;pointer-events:none}.cell.edge-r{border-right:4px solid var(--board-ink)}.cell.edge-b{border-bottom:4px solid var(--board-ink)}.cell:disabled{opacity:1}.cell:hover:not(:disabled){filter:brightness(1.08) saturate(1.06)}.cell:hover:not(:disabled):after{box-shadow:inset 0 0 0 3px #ffffffb3,inset 0 2px 0 #ffffff59}.cell:focus-visible{outline:3px solid var(--board-ink);outline-offset:-5px;z-index:2;border-radius:0}.cell.r0{background-color:var(--region-0)}.cell.r1{background-color:var(--region-1)}.cell.r2{background-color:var(--region-2)}.cell.r3{background-color:var(--region-3)}.cell.r4{background-color:var(--region-4)}.cell.r5{background-color:var(--region-5)}.cell.r6{background-color:var(--region-6)}.cell.r7{background-color:var(--region-7)}.cell.r8{background-color:var(--region-8)}.cell.r9{background-color:var(--region-9)}.cell.r10{background-color:var(--region-10)}.cell.r11{background-color:var(--region-11)}[data-palette=calm]{--region-0:#c2d8f7;--region-1:#d5c2ec;--region-2:#efd0df;--region-3:#f7d9ba;--region-4:#eee8b4;--region-5:#cbdcc0;--region-6:#bfdfda;--region-7:#cdd1eb;--region-8:#e4d0e8;--region-9:#ebc3b8;--region-10:#dce4c7;--region-11:#d9dbe0}[data-palette=contrast]{--region-0:#80b6ff;--region-1:#b59bdd;--region-2:#f3a2d2;--region-3:#ffc383;--region-4:#f3ec72;--region-5:#9cce91;--region-6:#6fcfc1;--region-7:#a8b2e5;--region-8:#d8a7df;--region-9:#f68e75;--region-10:#c3d781;--region-11:#aeb8c6}[data-palette=contrast] .cell{border-right-color:var(--board-ink);border-bottom-color:var(--board-ink)}[data-palette=contrast] .cell.edge-r{border-right-width:4px}[data-palette=contrast] .cell.edge-b{border-bottom-width:4px}.region-letter{position:absolute;top:4px;left:5px;font-size:10px;font-weight:700;color:var(--board-ink);opacity:.7;pointer-events:none;z-index:1}.cell .crown{position:relative;z-index:1;width:64%;height:64%;animation:crown-pop .35s var(--bounce);filter:drop-shadow(0 2px 0 #1c0f4566) drop-shadow(0 0 6px #ffc93c99)}.cell .crown path{fill:#ffc93c;stroke:var(--board-ink);stroke-width:1.4}.cell .crown rect{fill:var(--board-ink);stroke:var(--board-ink)}.auto-x,.mark-x{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:46%;height:46%;font-size:clamp(13px,2.6vw,26px);font-weight:900;color:var(--board-ink)}.mark-x{opacity:.72;animation:crown-pop .2s var(--ease)}.auto-x{font-size:0}.auto-x:before{content:"";width:max(5px,14%);aspect-ratio:1;border-radius:50%;background:var(--board-ink);opacity:.28}.cell.hint-focus,.cell.target{box-shadow:inset 0 0 0 4px #4b33b8;z-index:1}.cell.hint-eliminate{box-shadow:inset 0 0 0 4px #9e3515;background-image:repeating-linear-gradient(45deg,transparent,transparent 5px,#9e35151f 0,#9e35151f 9px)}.cell.hint-place{box-shadow:inset 0 0 0 4px #0b6b4a;animation:hint-pulse 1.4s ease-in-out infinite}.cell.conflict{box-shadow:inset 0 0 0 3px #ae153d;background-image:repeating-linear-gradient(45deg,transparent,transparent 5px,#ae153d29 0,#ae153d29 10px)}.pause-cover{position:absolute;inset:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:12px;background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:center;z-index:5;animation:pop-in .2s var(--ease)}.pause-symbol{display:grid;place-items:center;width:64px;height:64px;border-radius:20px;background:var(--panel-soft);color:var(--primary);margin-bottom:16px}.pause-cover h3{font-size:30px}.pause-cover p{color:var(--muted);margin:8px 0 22px;font-size:14px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 18px;border:2px solid var(--line-strong);border-radius:14px;background:var(--surface);color:var(--ink);font-size:14.5px;font-weight:800;line-height:1.3;box-shadow:0 4px 0 var(--line-strong);transform:translateY(0);transition:background .15s,border-color .15s,transform .12s var(--ease),box-shadow .12s var(--ease)}.btn:hover:not(:disabled){background:var(--surface-2)}.btn:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px 0 var(--line-strong)}.btn-active,.btn-primary{background:var(--primary);color:#fff;border-color:var(--primary-edge);box-shadow:0 4px 0 var(--primary-edge),0 10px 24px var(--primary-glow)}.btn-active:hover,.btn-primary:hover:not(:disabled){background:var(--primary-hover);color:#fff;border-color:var(--primary-edge)}.btn-primary:active:not(:disabled){box-shadow:0 1px 0 var(--primary-edge)}.btn-danger{color:var(--danger)}.game-controls{margin-top:18px}.toolbar{display:flex;align-items:center;gap:8px;justify-content:space-between}.tool-toggle{display:flex;gap:3px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:4px;box-shadow:var(--shadow-sm)}.tool-toggle button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:8px 16px;border:0;border-radius:10px;color:var(--muted);background:none;font-size:13.5px;font-weight:650;transition:background .15s,color .15s}.tool-toggle button:hover:not(:disabled){color:var(--ink)}.tool-toggle button[aria-pressed=true]{background:var(--primary);color:#fff;box-shadow:0 3px 0 var(--primary-edge)}.history-tools{display:flex;margin-left:auto}.btn-hint{background:linear-gradient(180deg,#ffd75e,var(--gold));box-shadow:0 4px 0 var(--gold-edge),0 10px 22px #ffb80040;padding:10px 20px}.btn-hint,.btn-hint:hover:not(:disabled){color:#2b1600;border-color:var(--gold-edge)}.btn-hint:hover:not(:disabled){background:linear-gradient(180deg,#ffe07e,#ffc93c)}.btn-hint:active:not(:disabled){box-shadow:0 1px 0 var(--gold-edge)}.board-preferences{margin-top:10px;font-size:13px}.board-preferences>summary{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 0;cursor:pointer;color:var(--muted);min-height:44px;list-style:none;font-weight:600}.board-preferences>summary::-webkit-details-marker{display:none}.board-preferences>summary:after{content:"";width:7px;height:7px;border-right:1.6px solid;border-bottom:1.6px solid;transform:translateY(-2px) rotate(45deg);transition:transform .2s var(--ease)}.board-preferences[open]>summary:after{transform:translateY(2px) rotate(225deg)}.board-preferences>summary:hover{color:var(--primary)}.secondary-tools{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.preference-fields{display:grid;grid-gap:12px;gap:12px;padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-sm)}.preference-fields>label{display:flex;align-items:center;justify-content:space-between;gap:10px}.preference-fields select{padding:9px 12px;min-height:44px;max-width:75%;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:var(--well);font-size:13px}.board-settings{display:flex;flex-wrap:wrap;gap:10px 18px;font-size:13px;color:var(--muted)}.board-settings label{display:flex;gap:8px;align-items:center;min-height:44px}.board-settings input{width:17px;height:17px;margin:0}.preference-note{margin:0;font-size:12px;color:var(--muted)}.control-caption{text-align:center;font-size:12.5px;color:var(--muted);margin:10px 0 0;line-height:1.6}.control-caption span{display:block;font-size:11.5px;opacity:.8}.restart-confirm{display:flex;flex-wrap:wrap;gap:8px;padding:16px;margin-top:12px;background:var(--reward-surface);border:1px solid var(--line);border-radius:16px;font-size:14px}.restart-confirm>span{flex:1 1 100%;font-weight:600}.compact-rules{font-size:13px;color:var(--muted);text-align:center}.compact-rules summary{cursor:pointer;padding:10px 0;min-height:44px;font-weight:600}.compact-rules summary:hover{color:var(--primary)}.compact-rules p{margin:4px 0 10px}.compact-rules a{display:inline-flex;align-items:center;gap:8px;color:var(--primary);min-height:44px;font-weight:600}.panel{padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-sm)}.panel h2{font-size:23px;margin:0 0 12px}.panel p{color:var(--muted);font-size:14px}.hint-panel{box-shadow:var(--shadow-lg);border-top:3px solid var(--gold);animation:pop-in .22s var(--ease)}.hint-panel h2{font-size:21px}.hint-premises{margin:0 0 16px;padding:12px 14px 12px 32px;border-radius:12px;background:var(--well);font-size:13px;color:var(--muted)}.hint-actions{display:flex;gap:8px;flex-wrap:wrap}.conflict-panel,.note-warning{color:var(--danger);background:var(--danger-bg)}.note-warning{padding:10px 12px;border-radius:10px}.conflict-panel{border-color:color-mix(in srgb,var(--danger) 30%,transparent)}.conflict-panel p{color:var(--danger);margin:0}.conflict-panel h2{font-size:19px}.rules-panel{padding:24px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:var(--shadow-sm)}.rules-panel h2{font-size:26px}.royal-rules{list-style:none;padding:0;margin:18px 0 0;display:flex;flex-direction:column;gap:16px}.royal-rules li{display:flex;gap:14px}.rule-number{display:grid;place-items:center;width:30px;height:30px;flex-shrink:0;background:var(--primary);color:var(--primary-ink);border-radius:50%;font-family:var(--font-display-stack);font-size:16px}.royal-rules b{font-size:14.5px}.royal-rules p{font-size:13.5px;color:var(--muted);margin:4px 0}.hint-teaser,.rule-mini{display:none}.rules-link{display:flex;justify-content:space-between;align-items:center;color:var(--primary);padding-top:14px;margin-top:14px;border-top:1px solid var(--line);font-size:13.5px;font-weight:600;min-height:44px}.result-panel{position:relative;width:100%;margin-top:18px;padding:28px 24px 22px;border:1px solid var(--line);background:radial-gradient(420px 180px at 50% 0,var(--reward-surface),transparent 70%),var(--surface);border-radius:24px;text-align:center;box-shadow:var(--shadow-lg);overflow:hidden;animation:rise-in .45s var(--ease)}.result-panel:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}.result-crown{display:grid;place-items:center;width:56px;height:56px;flex-shrink:0;background:linear-gradient(160deg,#8b5cff,#4b1fc4);color:var(--gold);border-radius:18px;box-shadow:0 8px 24px #2a1f4a40;animation:crown-cheer .7s var(--ease)}.result-heading,.result-panel .eyebrow{justify-content:center}.result-heading{display:flex;align-items:center;gap:14px;text-align:left}.result-heading p{margin:4px 0 0;font-size:13.5px;color:var(--muted)}.result-panel h2{font-size:30px;margin-bottom:2px}.result-panel>p:not(.eyebrow){font-size:14px;margin:4px 0}.result-stats{display:flex;justify-content:center;gap:0;margin:20px auto;max-width:340px;border:1px solid var(--line);border-radius:16px;background:var(--surface);overflow:hidden}.stat{display:flex;flex-direction:column;flex:1 1;padding:12px}.stat+.stat{border-left:1px solid var(--line)}.stat b{font-family:var(--font-display-stack);font-size:32px;font-weight:600;font-feature-settings:lining-nums tabular-nums;font-variant-numeric:lining-nums tabular-nums;line-height:1.1}.stat span{font-size:12px;color:var(--muted)}.result-badge{display:flex;justify-content:center;align-items:center;gap:6px;font-size:13px;font-weight:700;margin-bottom:16px;color:var(--accent)}.result-personal-best{display:block;font-size:12.5px;color:var(--muted);margin:0 0 16px}.next-puzzle{width:100%;max-width:320px;min-height:50px;font-size:15px}.result-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:12px}.result-actions .btn{font-size:13px}.share-text{width:100%;margin-top:10px;padding:10px;font-size:12px;background:var(--well);color:var(--ink);border:1px solid var(--line);border-radius:10px}.load-state{min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;font-size:14px;color:var(--muted);border:1px solid var(--line);border-radius:22px;background:linear-gradient(110deg,var(--surface) 30%,var(--surface-2) 50%,var(--surface) 70%) 0 0/250% 100%;animation:shimmer 1.6s linear infinite;aspect-ratio:1}.load-state svg{color:var(--gold-deep);animation:float 2s ease-in-out infinite}.daily-card{background:none;border:0;padding:0}.daily-card h2{font-size:21px;margin-bottom:8px}.daily-card>p{font-size:13.5px;color:var(--muted)}.daily-archive{padding:0;list-style:none;max-width:680px}.daily-archive li{flex-wrap:wrap;display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding:12px 0}.daily-archive a{min-height:44px;display:inline-flex;align-items:center;font-weight:600}.daily-archive-meta{font-size:13px;color:var(--muted)}.puzzle-picker{justify-content:center;gap:16px;margin:14px 0;flex-wrap:wrap}.puzzle-picker,.size-picker{display:flex;align-items:center}.size-picker{gap:10px}.picker-label{color:var(--muted);font-size:12px;font-weight:600}.size-picker [role=group]{display:flex;gap:5px;flex-wrap:wrap}.size-picker button{min-width:46px;min-height:44px;padding:8px 10px;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:12px;font-size:13px;font-weight:650;transition:all .15s}.size-picker button:hover{border-color:var(--line-strong);color:var(--ink)}.size-picker button[aria-pressed=true]{color:#fff;border-color:var(--primary-edge);background:var(--primary)}.card-row{display:flex;gap:14px;flex-wrap:wrap;margin:22px 0}.card{border:1px solid var(--line);border-radius:20px;padding:24px;background:var(--surface);min-width:170px;box-shadow:var(--shadow-sm)}.card h3{font-size:23px;margin-bottom:8px}.card p{font-size:14px;color:var(--muted)}.game-mode-page{max-width:780px;margin:0 auto}.game-mode-page>h1,.game-mode-page>p{text-align:center}.challenge-intro,.game-mode-page>p{font-size:14.5px;color:var(--muted)}.challenge-intro{text-align:center}.challenge-sizes{border:0;margin:28px 0 20px;padding:0;display:flex;justify-content:center;flex-wrap:wrap;gap:10px}.challenge-sizes legend{width:100%;text-align:center;margin-bottom:12px;font-size:13px;color:var(--muted)}.challenge-sizes button{width:64px;height:64px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--muted);font-weight:700;font-size:17px;box-shadow:var(--shadow-sm);transition:all .15s}.challenge-sizes button:hover{border-color:var(--line-strong);color:var(--ink);transform:translateY(-2px)}.challenge-sizes button[aria-pressed=true]{border-color:var(--primary-edge);color:#fff;background:var(--primary);box-shadow:0 4px 0 var(--primary-edge)}.challenge-launch{display:flex;flex-direction:column;align-items:center;padding:20px 0 30px}.challenge-launch>svg{color:var(--gold-deep)}.challenge-launch>strong{font-family:var(--font-display-stack);font-size:60px;font-weight:600;font-feature-settings:lining-nums tabular-nums;font-variant-numeric:lining-nums tabular-nums;letter-spacing:-2px;line-height:1.3}.challenge-launch>small,.challenge-launch>span{color:var(--muted);font-size:13px}.challenge-launch .btn{min-width:190px;margin:20px 0 12px}.challenge-countdown{text-align:center;font-size:17px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.challenge-countdown strong{color:var(--primary)}.challenge-replay{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.prose{max-width:760px;margin:auto}.prose>h1{margin-bottom:22px}.prose h2{margin:40px 0 14px;font-size:30px}.prose h3{margin:28px 0 10px;font-size:22px}.prose li,.prose p{color:var(--muted);font-size:15.5px;line-height:1.75}.prose li::marker{color:var(--gold-deep)}.prose a{color:var(--primary);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb,var(--primary) 35%,transparent);text-decoration-color:color-mix(in srgb,var(--primary) 35%,transparent);text-underline-offset:3px}.prose a:hover{-webkit-text-decoration-color:var(--primary);text-decoration-color:var(--primary)}.prose a.btn{color:var(--ink);text-decoration:none}.prose a.btn-primary{color:var(--primary-ink)}.not-found-page{padding:60px 0;text-align:center}.not-found-page>.mode-art{display:block;width:130px;height:116px;margin:0 auto 24px}.overlay-backdrop{position:fixed;inset:0;background:#120d24a6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:20px;display:flex;align-items:center;justify-content:center;z-index:50;animation:fade-in .2s ease}.overlay-card{max-width:480px;max-height:90vh;overflow:auto;width:100%;padding:32px;border:1px solid var(--line);border-radius:28px;background:var(--surface);box-shadow:var(--shadow-lg);animation:rise-in .3s var(--ease)}.overlay-card h2{font-size:30px}.overlay-card p{color:var(--muted);font-size:15px}.overlay-card .steps{color:var(--accent);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.ad-slot{display:none}.cookie-banner{position:fixed;bottom:18px;left:18px;z-index:60;max-width:430px;background:var(--surface);color:var(--ink);padding:20px;border:1px solid var(--line);border-radius:20px;font-size:14px;box-shadow:var(--shadow-lg);animation:rise-in .35s var(--ease)}.cookie-actions{display:flex;flex-wrap:wrap;gap:8px}.cookie-banner p{margin:0 0 14px}.cookie-banner a{text-decoration:underline}.library{margin-top:24px}.library-summary{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted)}.library-status-line{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:12px 0}.library-intro{color:var(--muted);font-size:14.5px}.library-heading,.library-top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px}.library-heading{margin-top:28px}.library-heading h2{font-size:30px}.library-heading p{color:var(--muted);font-size:13.5px;margin:8px 0 15px}.library-filters{display:flex;flex-wrap:wrap;gap:6px}.library-filters button{min-height:42px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);padding:8px 16px;font-size:13px;font-weight:600;transition:all .15s}.library-filters button:hover{color:var(--ink);border-color:var(--line-strong)}.library-filters button[aria-pressed=true]{border-color:var(--primary-edge);color:#fff;background:var(--primary)}.library-progress{background:var(--line);height:6px;border-radius:6px;overflow:hidden;margin:12px 0 22px}.library-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--primary),var(--gold));border-radius:6px}.puzzle-library-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:14px;gap:14px}.puzzle-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:18px 8px;border:1px solid var(--line);border-radius:18px;background:var(--surface);min-width:0;box-shadow:var(--shadow-sm);transition:transform .2s var(--ease),box-shadow .2s,border-color .2s}.puzzle-tile:hover{border-color:var(--line-strong);color:var(--ink);transform:translateY(-3px);box-shadow:var(--shadow)}.tile-number{font-family:var(--font-display-stack);font-size:24px;font-weight:600}.puzzle-tile>span:last-child{font-size:12px;color:var(--muted)}.tile-solved{border-color:color-mix(in srgb,var(--gold) 60%,transparent);background:radial-gradient(160px 80px at 50% 0,var(--reward-surface),transparent),var(--surface)}.tile-solved svg{color:var(--gold-deep)}.board-preview{display:block;width:72px;height:72px;border:2px solid var(--board-ink);border-radius:8px;overflow:hidden}.resume-card{display:flex;align-items:center;gap:12px;padding:16px 18px;margin-bottom:20px;background:var(--panel-soft);border-radius:16px;font-size:14px}.resume-card span{flex:1 1}.resume-card b{margin-left:6px}.library-empty{padding:28px 0;text-align:center;color:var(--muted)}.library-difficulty{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:12px;margin:0 0 20px;color:var(--muted);font-size:13px}.library-difficulty label{display:flex;align-items:center;gap:8px}.library-difficulty input,.library-difficulty select{min-height:44px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:12px;padding:8px 12px;max-width:180px}.library-more{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:15px;margin:28px 0}.library-more span,.library-rating-note{color:var(--muted);font-size:12px}.difficulty-badge{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);background:var(--well);border:1px solid var(--line);border-radius:999px;padding:3px 9px}.difficulty-badge[data-level=easy],.tile-difficulty[data-level=easy]{color:var(--ok)}.difficulty-badge[data-level=hard],.tile-difficulty[data-level=hard]{color:var(--danger)}.level-dialog{width:min(780px,calc(100vw - 32px));max-height:90dvh;padding:28px;color:var(--ink);border:1px solid var(--line);border-radius:28px;background:var(--surface);overflow:hidden;box-shadow:var(--shadow-lg)}.level-dialog[open]{display:flex;flex-direction:column;animation:rise-in .3s var(--ease)}.level-dialog::-webkit-backdrop{background:#120d24a6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.level-dialog::backdrop{background:#120d24a6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.level-dialog-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.level-dialog-header h2{font-size:28px}.level-scroll{overflow-y:auto;min-height:0;padding:3px;margin:-3px}.level-dialog-header,.level-dialog>.library-difficulty,.level-dialog>.library-more{flex-shrink:0}.level-dialog>.library-more{margin:16px 0 0;justify-content:space-between;gap:8px}.level-dialog>.library-more span{text-align:center}.level-dialog>.library-more small{display:block}.library-difficulty input[type=checkbox]{width:20px;height:20px;min-height:20px;padding:0}.library-difficulty label{min-height:44px}.level-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:8px;gap:8px}.level-grid button{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;min-height:64px;border:1px solid var(--line);padding:10px 12px;border-radius:14px;background:var(--well);color:var(--ink);font-weight:650;transition:all .15s}.level-grid button:hover{border-color:var(--line-strong);background:var(--surface)}.level-grid .level-solved{background:var(--surface);border-color:color-mix(in srgb,var(--gold) 60%,transparent)}.level-grid .level-solved>svg{color:var(--gold-deep)}.level-grid button[aria-current=true]{border-color:var(--primary);background:var(--panel-soft);box-shadow:inset 0 0 0 1px var(--primary)}.level-grid small{flex:1 1 100%;text-align:left;font-size:11px;font-weight:500;color:var(--muted)}.offline-note{background:var(--reward-surface);color:var(--accent);font-size:13px;padding:10px 16px;text-align:center}.page-intro{max-width:780px;margin:0 auto 28px;text-align:center}.page-intro p{color:var(--muted);font-size:15px;margin:14px auto;max-width:600px}.page-art{width:92px;height:82px;margin:0 auto 10px;display:block}.daily-race-link a{display:inline-flex;align-items:center;min-height:44px;color:var(--primary);font-weight:600}.daily-page>div:last-child,.daily-page>h2{max-width:780px;margin:28px auto}.daily-archive select{min-height:44px;padding:8px 12px;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:12px}.player-page{display:grid;grid-template-columns:minmax(0,1fr) 380px;grid-gap:40px;gap:40px;align-items:start}.player-progress-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:26px}.player-progress-heading>svg{color:var(--gold-deep)}.player-progress p{color:var(--muted);font-size:14px}.player-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px;margin:0 0 32px}.player-facts>div{padding:18px 20px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-sm)}.player-facts dt{color:var(--muted);font-size:13px}.player-facts dd{font-family:var(--font-display-stack);font-size:36px;font-weight:600;margin:4px 0 0;font-feature-settings:lining-nums tabular-nums;font-variant-numeric:lining-nums tabular-nums}.player-facts small{font-family:var(--font-sans-stack);font-size:13px;font-weight:400;color:var(--muted)}.player-progress h2{font-size:26px}.player-empty{padding:28px;text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:20px;margin:18px 0}.player-empty>svg{color:var(--gold-deep)}.player-recent{padding:0;margin:16px 0;list-style:none}.player-recent li{border-bottom:1px solid var(--line)}.player-recent a{display:flex;align-items:center;gap:12px;padding:14px 0}.player-recent a>svg{color:var(--gold-deep)}.player-recent span{flex:1 1;min-width:0}.player-recent b{font-size:14px}.player-recent small{display:block;color:var(--muted);font-size:12px}.player-recent strong{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.prose>ol{padding-left:24px}.guide-list{padding:0;list-style:none;display:grid;grid-gap:12px;gap:12px}.guide-list>li{padding:22px 24px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:var(--shadow-sm);transition:transform .2s var(--ease),box-shadow .2s}.guide-list>li:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.guide-list>li a{font-family:var(--font-display-stack);font-size:22px;font-weight:600;color:var(--ink);text-decoration:none}.guide-list>li a:hover{color:var(--primary)}@keyframes crown-pop{0%{transform:scale(.4) rotate(-12deg);opacity:0}65%{transform:scale(1.12) rotate(3deg)}to{transform:scale(1) rotate(0);opacity:1}}@keyframes crown-cheer{0%,to{transform:translateY(0) scale(1)}40%{transform:translateY(-14%) scale(1.14)}}@keyframes won-glow{0%{box-shadow:0 0 0 0 #e3b34c00}40%{box-shadow:0 0 0 6px #e3b34caa,0 0 60px #e3b34c88}to{box-shadow:0 0 0 0 #e3b34c00}}@keyframes hint-pulse{0%,to{box-shadow:inset 0 0 0 4px #0b6b4a}50%{box-shadow:inset 0 0 0 7px #0b6b4a}}@keyframes pop-in{0%{opacity:0;transform:translateY(6px) scale(.98)}}.nav-popover{animation-name:pop-in-center}@keyframes pop-in-center{0%{opacity:0;transform:translate(-50%,6px) scale(.98)}}@keyframes rise-in{0%{opacity:0;transform:translateY(14px)}}@keyframes fade-in{0%{opacity:0}}@keyframes shimmer{to{background-position:-250% 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.reveal{animation:rise-in .7s var(--ease) backwards}@media(min-width:1000px){.game-side-col:has(.hint-panel) .hint-panel{position:fixed;right:24px;bottom:24px;z-index:45;width:340px;max-height:60vh;overflow:auto}}@media(max-width:999px){.player-page{grid-template-columns:1fr;gap:28px}.game-side-col:has(.hint-panel) .hint-panel{position:fixed;left:50%;transform:translateX(-50%);bottom:16px;z-index:45;width:560px;max-width:calc(100vw - 24px);max-height:60vh;overflow:auto}.home-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.home-stats>div:nth-child(2){border-right:0}.home-stats>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.home-faq,.rule-cards{grid-template-columns:1fr}.home-faq{gap:28px}.home-faq .section-head{position:static}.rule-card{display:grid;grid-template-columns:132px 1fr;grid-gap:0 24px;gap:0 24px;align-items:center}.rule-card h3{margin-top:0}.mode-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.mode-card,.mode-card:nth-child(-n+2){grid-column:span 1}.mode-card.featured{grid-column:1/-1}.hint-showcase{grid-template-columns:1fr;padding:32px;gap:32px}.section-head{flex-direction:column;align-items:flex-start}.footer-inner{grid-template-columns:1fr;gap:32px}}@media(max-width:700px){.header-inner{height:64px;padding:0 16px;grid-template-columns:1fr auto;gap:8px}.header-actions .icon-button.nav-mobile-toggle{display:inline-grid}.account-label{display:none}.account-button{width:42px;padding:0;justify-content:center}.account-signed-in{padding:0}.site-brand{font-size:22px}.site-brand .brand-symbol{width:36px;height:36px;margin-right:9px}.site-nav{display:none;position:absolute;left:16px;right:16px;top:calc(100% + 8px);padding:10px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:var(--shadow-lg)}.site-nav.nav-mobile-open{display:flex;flex-direction:column;align-items:stretch;gap:4px;animation:pop-in .18s var(--ease)}.site-nav .nav-trigger,.site-nav>a{width:100%;justify-content:space-between;border-radius:12px}.site-nav .nav-popover{position:static;transform:none;width:auto;margin:4px 0;border:0;box-shadow:none;padding-left:12px;animation:none}.site-nav .nav-popover a{min-height:54px}.nav-trigger,.site-nav>a{font-size:14px;padding:10px 14px}.site-main{padding:20px 16px 40px}.board-size-list{gap:2px}.daily-strip{gap:10px}.board-size-list button{flex:1 0 42px;min-width:42px;padding:7px 3px;font-size:12px}.board-stage{padding:6px;border-radius:18px}.board-stage:before{inset:2px;border-radius:16px}.pause-cover{inset:6px}.board-status{font-size:12px;margin-bottom:8px}.status-label{flex-wrap:wrap}.board-zoom-tools{display:flex}.board-zoom-tools>span{max-width:190px}.game-time>svg{display:none}.game-time{font-size:15px;gap:2px;padding-left:12px}.status-label{gap:5px}.tool-toggle button{padding:8px 11px;font-size:12.5px}.btn-hint{padding:10px 14px}.toolbar{gap:4px}.control-caption span{display:none}.footer-inner{padding:36px 16px 20px}.footer-cols{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-legal{padding:16px 16px 28px;display:grid}.result-panel{padding:22px 16px 18px}.result-panel h2{font-size:26px}.result-stats{margin:14px auto}.stat b{font-size:26px}.result-panel .eyebrow,.result-panel>p:not(.eyebrow){display:none}.result-badge{margin-bottom:10px;font-size:12px}.result-actions{margin-top:8px}.result-actions .btn{padding:9px 12px}.puzzle-library-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.puzzle-tile{padding:12px 4px}.library-top{align-items:flex-start}.size-picker{flex-wrap:wrap}.level-dialog{padding:18px;border-radius:22px}.level-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cookie-banner{left:12px;right:12px;max-width:none;bottom:12px}.game[data-size="10"] .region-letter,.game[data-size="11"] .region-letter,.game[data-size="12"] .region-letter{font-size:8px;top:2px;left:3px}.home-stats{margin-top:56px}.home-stats>div{padding:20px 18px}.home-cta,.home-section{margin-top:64px}.rule-card{grid-template-columns:96px 1fr;padding:20px;gap:0 18px}.rule-card .mini-board{width:96px}.rule-card .rule-index{font-size:32px;top:14px;right:18px}.mode-cards{grid-template-columns:1fr}.mode-card.featured{grid-column:auto}.hint-showcase{padding:22px;border-radius:24px}.home-cta{padding:48px 20px;border-radius:24px}.player-facts dd{font-size:28px}}@media(max-width:480px){.board-size-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.board-size-list button{min-width:0}.home-stats b{font-size:28px}.home-stats>div{padding:16px}.home-stats small{font-size:12px}}@media(max-width:380px){.header-inner{padding-left:12px;padding-right:12px}.site-brand{font-size:20px}.site-main{padding-left:12px;padding-right:12px}.room-menu{gap:4px}.room-picker .btn{font-size:12px;padding:8px 10px}.board-status .difficulty-badge{font-size:10px;padding:2px 6px}.status-label{font-size:11px}.game-time{font-size:14px}.toolbar{flex-wrap:wrap}.tool-toggle{flex:1 1}.tool-toggle button{flex:1 1;padding:8px}.history-tools{margin-left:0}.toolbar .btn-hint{flex:1 1 100%}.result-crown svg{width:30px}.result-panel h2{font-size:24px}.stat b{font-size:22px}.result-badge{margin-bottom:8px}.result-personal-best{margin-bottom:8px;font-size:11px}.level-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.board-preview{width:58px;height:58px}.rule-card{grid-template-columns:1fr}.rule-card h3{margin-top:16px}}.board-sizer{display:flex;flex-direction:column;gap:6px}.board-sizer-label{display:flex;justify-content:space-between;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.board-sizer-label b{color:var(--ink);letter-spacing:0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.board-sizer-row{display:flex;align-items:center;gap:4px}.board-sizer-row .icon-button{width:34px;height:34px;border-radius:10px;flex-shrink:0}.board-sizer-row input[type=range]{flex:1 1;min-width:0;height:4px;accent-color:var(--gold-deep);cursor:pointer}.board-sizer-fit{flex-shrink:0;height:30px;padding:0 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:12px;font-weight:700}.board-sizer-fit:hover:not(:disabled){color:var(--ink);border-color:var(--line-strong)}.game:not(.game-stage) .game-board-col{max-width:calc(580px * var(--board-scale,1))}.game:not(.game-stage) .board-sizer{flex-direction:row;align-items:center;justify-content:center;gap:12px;margin-top:12px}.game:not(.game-stage) .board-sizer-row{width:260px}.dock-title h1{font-size:34px}.dock-title .eyebrow{margin-bottom:6px}.dock-label{display:block;margin-bottom:8px;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.dock-note{margin:0;color:var(--muted);font-size:14px}.dock-link{display:inline-flex;align-items:center;gap:8px;min-height:40px;text-align:left;padding:0;border:0;background:none;color:var(--primary);font-size:13px;font-weight:600}.dock-link:hover{text-decoration:underline;text-underline-offset:4px}.board-picker-trigger{justify-content:space-between}.stage-center{position:relative;min-width:0}.result-overlay{position:absolute;inset:0;z-index:6;display:grid;place-items:center;padding:16px;border-radius:22px;background:color-mix(in srgb,var(--bg) 55%,transparent);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);animation:fade-in .3s ease}.result-overlay .result-panel{margin:0;max-width:400px}.home-play .compact-rules{display:none}@media(min-width:1000px){.game.game-stage{display:grid;grid-template-columns:var(--dock,220px) var(--board,520px) var(--dock,220px);grid-gap:20px var(--stage-gap,36px);gap:20px var(--stage-gap,36px);justify-content:center;align-items:start}.game.game-stage.stage-wide{grid-template-columns:var(--board) var(--dock)}.game.game-stage.stage-wide>.stage-center{grid-column:1;grid-row:1/span 2}.game.game-stage.stage-wide>.dock-right{grid-column:2;grid-row:1}.game.game-stage.stage-wide>.dock-left{grid-column:2;grid-row:2;position:static}.game.game-stage.stage-wide>.dock-left .dock-title{display:none}.game.game-stage>.dock{position:-webkit-sticky;position:sticky;top:92px;display:flex;flex-direction:column;gap:16px;min-width:0;padding-top:4px}.game.game-stage>.dock-left{grid-column:1;grid-row:1}.game.game-stage>.stage-center{grid-column:2;grid-row:1;width:var(--board)}.game.game-stage>.dock-right{grid-column:3;grid-row:1}.game.game-stage .board-zoom-tools{display:none}.game.game-stage.game-focus{position:fixed;inset:0;z-index:70;padding:20px;overflow-y:auto;background:var(--bg)}.game.game-stage.game-focus>.dock{top:20px}.dock-title h1:after{content:"";display:block;width:44px;height:3px;margin-top:12px;border-radius:3px;background:linear-gradient(90deg,var(--gold),var(--gold-deep))}.dock .board-picker-trigger{width:100%}.dock .board-size-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0}.dock .board-size-list button{min-width:0;padding:7px 0;font-size:12px}.dock .daily-strip{display:grid;grid-template-columns:auto 1fr;grid-gap:10px 12px;gap:10px 12px;margin:0;padding:14px}.dock .daily-strip-cta{grid-column:1/-1;justify-content:center}.dock-right .board-status{flex-direction:column-reverse;align-items:stretch;gap:10px;min-height:0;margin:0}.dock-right .game-time{justify-content:space-between;padding:4px 4px 4px 16px;font-size:22px;border-radius:16px}.dock-right .game-time>svg{display:none}.dock-right .status-label{justify-content:flex-start;padding:0 4px}.dock-right .status-label .difficulty-badge{margin-left:auto}.dock-right .game-controls{margin:0}.dock-right .toolbar{flex-wrap:wrap;gap:8px}.dock-right .tool-toggle{flex:1 1 100%}.dock-right .tool-toggle button{flex:1 1;padding:8px 10px}.dock-right .history-tools{margin:0}.dock-right .history-tools .icon-button{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm)}.dock-right .btn-hint{flex:1 1}.dock-right .board-preferences{position:relative;margin-top:2px}.dock-right .board-preferences>summary{justify-content:flex-start;padding:6px 0;min-height:36px}.dock-right .preference-fields{position:absolute;right:0;top:100%;z-index:20;width:320px;box-shadow:var(--shadow-lg)}.dock-right .control-caption{margin:0;text-align:left;font-size:12px}.dock-right .control-caption span{margin-top:4px}.dock-right .game-side-col{gap:10px}.game.game-stage .game-side-col:has(.hint-panel) .hint-panel{position:static;width:auto;max-height:none;transform:none}.dock-right .panel{padding:16px;border-radius:16px}.dock-right .panel h2{font-size:17px;margin-bottom:8px}.dock-right .panel p{font-size:13px}.dock-right .hint-panel .eyebrow{font-size:10px}.dock-right .hint-panel .btn{padding:8px 12px;font-size:13px}}@media(max-width:999px){.game.game-stage{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:12px;gap:12px;max-width:600px;margin:0 auto;align-items:center}.game.game-stage>.dock{display:contents}.game.game-stage>.dock>*,.game.game-stage>.stage-center{grid-column:1/-1;min-width:0}.game.game-stage .dock-title{order:1;grid-column:1}.game.game-stage .dock-left>.board-picker-trigger{order:1;grid-column:2}.game.game-stage .dock-left>.btn:not(.board-picker-trigger){order:2;justify-self:start}.game.game-stage .dock-group,.game.game-stage .dock-note{order:2}.game.game-stage .board-status{order:3;margin:4px 0 0}.game.game-stage .board-zoom-tools{order:3}.game.game-stage>.stage-center{order:4}.game.game-stage .game-controls{order:5;margin:2px 0 0}.game.game-stage .control-caption{order:6;margin:0}.game.game-stage .game-side-col{order:7}.game.game-stage .daily-strip{order:8;margin:8px 0 0}.game.game-stage .dock-link{order:9;justify-self:center}.dock-label,.game.game-stage .board-sizer,.game:not(.game-stage) .board-sizer{display:none}.game.game-stage.game-focus{position:fixed;inset:0;z-index:70;max-width:none;margin:0;padding:16px;overflow-y:auto;background:var(--bg);align-content:start}}.article-meta{margin:-8px 0 20px!important;font-size:13px!important;color:var(--muted)}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 18px;padding:0;list-style:none;font-size:13px;color:var(--muted)}.breadcrumbs li:not(:last-child):after{content:"›";margin-left:6px;opacity:.6}.prose .breadcrumbs a{color:var(--muted);text-decoration:none}.prose .breadcrumbs a:hover{color:var(--primary)}.seo-faq{margin-top:48px}.seo-faq h2{margin-bottom:16px}.seo-section{max-width:760px;margin:56px auto 0;padding-top:32px;border-top:1px solid var(--line)}.seo-section h2{margin-top:0;font-size:26px}.level-nav{display:flex;flex-wrap:wrap;gap:8px 20px}.puzzle-hub{max-width:900px}.hub-lead{font-size:17px;color:var(--ink)!important}.hub-actions{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 8px}.prose .hub-actions a.btn{color:var(--ink)}.prose .hub-actions a.btn-primary{color:#fff}.hub-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px;margin:0}.hub-stats>div{padding:16px 18px;border:2px solid var(--line);border-radius:16px;background:var(--surface)}.hub-stats dt{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.hub-stats dd{margin:6px 0 0;font-family:var(--font-display-stack);font-size:26px;color:var(--ink)}.hub-techniques{list-style:none;padding:0;display:grid;grid-gap:10px;gap:10px}.hub-techniques li{display:grid;grid-template-columns:minmax(0,260px) 1fr 48px;align-items:center;grid-gap:14px;gap:14px}.hub-bar{height:10px;border-radius:6px;background:var(--well);border:1px solid var(--line);overflow:hidden}.hub-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--primary),var(--gold))}.hub-techniques b{text-align:right;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.level-links{list-style:none;padding:0;margin:16px 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(52px,1fr));grid-gap:6px;gap:6px}.level-links li::marker{content:none}.prose .level-links a{position:relative;display:grid;place-items:center;height:40px;border:2px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font-size:13px;font-weight:800;text-decoration:none;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.prose .level-links a:hover{border-color:var(--primary);color:var(--primary)}.level-links a:after,.lvl-key:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--muted)}.level-links a:after{position:absolute;top:4px;right:4px}.lvl-key{display:inline-flex;align-items:center;gap:6px;margin-right:12px}.level-links a.lvl-easy:after,.lvl-key.easy:before,.size-split .easy{background:#3ccf7e}.level-links a.lvl-medium:after,.lvl-key.medium:before,.size-split .medium{background:var(--gold)}.level-links a.lvl-hard:after,.lvl-key.hard:before,.size-split .hard{background:var(--pink)}.size-cards{list-style:none;padding:0;margin:24px 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.prose .size-cards a{display:flex;flex-direction:column;gap:4px;padding:18px;border:2px solid var(--line);border-radius:18px;background:var(--surface);color:var(--ink);text-decoration:none;box-shadow:0 4px 0 var(--line);transition:transform .15s var(--ease),border-color .15s}.prose .size-cards a:hover{transform:translateY(-3px);border-color:var(--primary)}.size-cards b{font-family:var(--font-display-stack);font-size:30px;font-weight:400;line-height:1}.size-tier{font-size:12px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:var(--primary)}.size-meta{font-size:13px;color:var(--muted)}.size-split{display:flex;height:6px;margin-top:8px;border-radius:4px;overflow:hidden;gap:2px}.hub-neighbors{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}.prose .hub-neighbors a.btn{color:var(--ink)}@media(max-width:700px){.hub-stats,.size-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-techniques li{grid-template-columns:1fr 44px}.hub-techniques .hub-bar{grid-column:1/-1;grid-row:2}}.technique-table{width:100%;border-collapse:separate;border-spacing:0;margin:16px 0;border:2px solid var(--line);border-radius:16px;overflow:hidden;font-size:14.5px}.technique-table td,.technique-table th{padding:12px 16px;text-align:left;border-bottom:1px solid var(--line)}.technique-table th{background:var(--surface-2);font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.technique-table tr:last-child td{border-bottom:0}.technique-table td:first-child{color:var(--ink)}.hint-ctas{justify-content:flex-start}.popular-links h2{font-size:clamp(24px,2.6vw,32px);margin-bottom:16px}.popular-links ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:10px}.popular-links a{display:inline-flex;align-items:center;min-height:42px;padding:0 18px;border:2px solid var(--line-strong);border-radius:999px;background:var(--surface);font-weight:800;font-size:14px;box-shadow:0 3px 0 var(--line-strong);transition:transform .12s var(--ease),border-color .15s}.popular-links a:hover{color:var(--ink);border-color:var(--primary);transform:translateY(-2px)}.solver-page{max-width:1180px;margin:0 auto}.solver-intro{margin-bottom:28px}.solver{display:grid;grid-template-columns:240px minmax(0,560px) 300px;grid-gap:28px;gap:28px;justify-content:center;align-items:start}.solver-controls,.solver-result{display:flex;flex-direction:column;gap:16px}.solver-controls .dock-label{display:block;margin-bottom:8px;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.solver-controls .board-size-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0}.solver-controls .board-size-list button{min-width:0;padding:7px 0;font-size:12px}.solver-palette{display:grid;grid-template-columns:repeat(6,1fr);grid-gap:6px;gap:6px}.swatch{aspect-ratio:1;border:2px solid #ffffff55;border-radius:10px;cursor:pointer;box-shadow:0 3px 0 #00000033;transition:transform .12s var(--bounce)}.swatch.r0{background:var(--region-0)}.swatch.r1{background:var(--region-1)}.swatch.r2{background:var(--region-2)}.swatch.r3{background:var(--region-3)}.swatch.r4{background:var(--region-4)}.swatch.r5{background:var(--region-5)}.swatch.r6{background:var(--region-6)}.swatch.r7{background:var(--region-7)}.swatch.r8{background:var(--region-8)}.swatch.r9{background:var(--region-9)}.swatch.r10{background:var(--region-10)}.swatch.r11{background:var(--region-11)}.swatch[aria-checked=true]{transform:scale(1.12);border-color:var(--ink);box-shadow:0 0 0 3px var(--primary-glow),0 3px 0 #00000033}.solver-actions{display:flex;flex-wrap:wrap;gap:8px}.solver-actions .btn{flex:1 1;padding:8px 10px;font-size:13px}.solver-solve{width:100%;min-height:50px;font-size:15px}.solver-note{margin:0;padding:10px 12px;border-radius:12px;background:var(--reward-surface);color:var(--accent);font-size:13px}.solver-board{position:relative;padding:12px;border-radius:24px;background:linear-gradient(180deg,#2c1868,#1a0c42);box-shadow:0 18px 50px #12063a66,0 0 60px var(--primary-glow)}.solver-grid{touch-action:none;cursor:crosshair}.solver-grid .cell{cursor:inherit}.cell.unpainted{background:repeating-linear-gradient(45deg,var(--well),var(--well) 6px,var(--surface) 6px,var(--surface) 12px)}.solver-result .panel h2{font-size:19px}.solver-result ol{padding-left:20px;color:var(--muted);font-size:14px}.solver-result .hint-actions .btn{padding:8px 12px;font-size:13px}@media(max-width:1099px){.solver{grid-template-columns:minmax(0,560px)}.solver-controls{order:1}.solver-board{order:2}.solver-result{order:3}}.today-hints{margin:24px 0 8px}.today-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.today-head .board-size-list,.today-head .eyebrow{margin:0}.today-body{display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-gap:24px;gap:24px;align-items:start}.today-panel{display:flex;flex-direction:column;gap:12px}.today-panel h2{font-size:20px;margin:0}.today-panel p{margin:0}.today-answer{width:100%}.today-load{aspect-ratio:auto;min-height:320px}.prose .today-panel a.dock-link{text-decoration:none}@media(max-width:820px){.today-body{grid-template-columns:1fr}}.stats-page{max-width:980px}.stats-page .technique-table{font-size:13.5px}.stats-page .technique-table td,.stats-page .technique-table th{padding:10px 12px}.key-findings{padding-left:22px}.key-findings li{margin:10px 0;color:var(--ink)!important;font-size:16px}.key-findings li::marker{color:var(--gold-deep);font-family:var(--font-display-stack)}.cite-box{padding:16px 18px;border:2px dashed var(--line-strong);border-radius:14px;background:var(--surface);font-size:14px!important}@media(max-width:700px){.stats-page .technique-table{display:block;overflow-x:auto;white-space:nowrap}}.table-scroll{overflow-x:auto;margin:16px 0}.table-scroll .technique-table{margin:0;min-width:760px;font-size:13.5px}.table-note{font-size:12.5px!important;color:var(--muted)}.alt-entry h3{margin:20px 0 4px;font-size:19px}.alt-entry p{margin:0}.worked-example{margin-top:40px}.board.mini-trace{width:200px;border-width:3px;border-radius:10px;flex-shrink:0}.mini-trace .cell.edge-r{border-right-width:3px}.mini-trace .cell.edge-b{border-bottom-width:3px}.mini-trace .region-letter{font-size:9px;top:2px;left:3px}.mini-trace .cell .crown{width:70%;height:70%;animation:none}.mini-trace .auto-x:before{width:5px}.worked-start{display:flex;align-items:center;gap:18px;margin:16px 0}.worked-start figcaption{color:var(--muted);font-size:14px}.prose .worked-steps{list-style:none;padding:0;display:grid;grid-gap:14px;gap:14px}.worked-steps li{display:flex;gap:18px;align-items:flex-start;padding:14px;border:2px solid var(--line);border-radius:18px;background:var(--surface)}.worked-steps h3{margin:2px 0 6px;font-size:18px}.worked-steps p{margin:0}@media(max-width:600px){.worked-start,.worked-steps li{flex-direction:column}.board.mini-trace{width:100%;max-width:260px}}.glossary{display:grid;grid-template-columns:minmax(140px,200px) 1fr;grid-gap:10px 20px;gap:10px 20px;margin:16px 0}.glossary dt{font-weight:900;color:var(--ink)}.glossary dd{margin:0;color:var(--muted)}@media(max-width:600px){.glossary{grid-template-columns:1fr}.glossary dd{margin-bottom:8px}}body:has(.embed-root) .cookie-banner,body:has(.embed-root) .site-footer,body:has(.embed-root) .site-header,body:has(.embed-root) .skip-link{display:none!important}body:has(.embed-root) .site-main{padding:12px;min-height:0}body:has(.embed-root):before{display:none}.embed-credit{text-align:center;margin:12px 0 0;font-size:13px;font-weight:800}.embed-credit a{color:var(--primary)}.embed-code{width:100%;min-height:120px;padding:12px;border:2px solid var(--line-strong);border-radius:12px;background:var(--well);color:var(--ink);font:13px/1.5 ui-monospace,Consolas,monospace}.embed-preview{width:100%;height:820px;border:2px solid var(--line);border-radius:18px;background:var(--surface)}.localized-page{max-width:860px}.localized-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:20px;gap:20px}.localized-cards ul{padding-left:18px}.localized-cards p,.localized-cards ul{color:var(--muted);font-size:14.5px}.localized-cards h3{margin:0 0 10px}.localized-foot{max-width:760px;margin:40px auto 0}@media(max-width:999px){.localized-cards{grid-template-columns:1fr}}.language-links{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;margin-top:28px;font-size:14px}.language-links span{color:var(--muted)}.footer-languages{display:flex;flex-wrap:wrap;gap:4px 14px}.technique-example-row{display:flex;gap:20px;align-items:flex-start;padding:16px;border:2px solid var(--line);border-radius:18px;background:var(--surface)}.technique-example-row h3{margin:0 0 6px;font-size:18px}@media(max-width:600px){.technique-example-row{flex-direction:column}}.lang-switch{position:relative}.lang-button{display:inline-flex;align-items:center;gap:6px;height:42px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:12.5px;font-weight:900;letter-spacing:.04em;box-shadow:var(--shadow-sm);transition:color .15s,border-color .15s}.lang-button:hover,.lang-button[aria-expanded=true]{color:var(--ink);border-color:var(--line-strong)}.nav-popover.lang-popover{left:auto;right:0;transform:none;width:200px;animation-name:pop-in}.lang-popover a{min-height:48px;justify-content:center}.lang-popover a[aria-current=true]{background:var(--panel-soft)}.lang-popover a[aria-current=true] b:after{content:" ✓";color:var(--primary)}@media(max-width:1100px){.account-label{display:none}.account-button{width:42px;padding:0;justify-content:center}.account-signed-in{padding:0}.header-inner{gap:12px;padding:0 20px}.nav-trigger,.site-nav>a{padding:8px 12px}.site-brand{font-size:24px}.site-brand .brand-symbol{width:38px;height:38px}}@media(max-width:700px){.lang-button span{display:none}.lang-button{width:42px;padding:0;justify-content:center}}@media(hover:hover){.board:has(.cell[data-c="0"]:hover:not(:disabled)) .cell[data-c="0"]:after,.board:has(.cell[data-r="0"]:hover:not(:disabled)) .cell[data-r="0"]:after{background:#ffffff2e}.board:has(.cell[data-c="1"]:hover:not(:disabled)) .cell[data-c="1"]:after,.board:has(.cell[data-r="1"]:hover:not(:disabled)) .cell[data-r="1"]:after{background:#ffffff2e}.board:has(.cell[data-c="2"]:hover:not(:disabled)) .cell[data-c="2"]:after,.board:has(.cell[data-r="2"]:hover:not(:disabled)) .cell[data-r="2"]:after{background:#ffffff2e}.board:has(.cell[data-c="3"]:hover:not(:disabled)) .cell[data-c="3"]:after,.board:has(.cell[data-r="3"]:hover:not(:disabled)) .cell[data-r="3"]:after{background:#ffffff2e}.board:has(.cell[data-c="4"]:hover:not(:disabled)) .cell[data-c="4"]:after,.board:has(.cell[data-r="4"]:hover:not(:disabled)) .cell[data-r="4"]:after{background:#ffffff2e}.board:has(.cell[data-c="5"]:hover:not(:disabled)) .cell[data-c="5"]:after,.board:has(.cell[data-r="5"]:hover:not(:disabled)) .cell[data-r="5"]:after{background:#ffffff2e}.board:has(.cell[data-c="6"]:hover:not(:disabled)) .cell[data-c="6"]:after,.board:has(.cell[data-r="6"]:hover:not(:disabled)) .cell[data-r="6"]:after{background:#ffffff2e}.board:has(.cell[data-c="7"]:hover:not(:disabled)) .cell[data-c="7"]:after,.board:has(.cell[data-r="7"]:hover:not(:disabled)) .cell[data-r="7"]:after{background:#ffffff2e}.board:has(.cell[data-c="8"]:hover:not(:disabled)) .cell[data-c="8"]:after,.board:has(.cell[data-r="8"]:hover:not(:disabled)) .cell[data-r="8"]:after{background:#ffffff2e}.board:has(.cell[data-c="9"]:hover:not(:disabled)) .cell[data-c="9"]:after,.board:has(.cell[data-r="9"]:hover:not(:disabled)) .cell[data-r="9"]:after{background:#ffffff2e}.board:has(.cell[data-c="10"]:hover:not(:disabled)) .cell[data-c="10"]:after,.board:has(.cell[data-r="10"]:hover:not(:disabled)) .cell[data-r="10"]:after{background:#ffffff2e}.board:has(.cell[data-c="11"]:hover:not(:disabled)) .cell[data-c="11"]:after,.board:has(.cell[data-r="11"]:hover:not(:disabled)) .cell[data-r="11"]:after{background:#ffffff2e}}@media(prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important;scroll-behavior:auto!important}}