:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#16110e;--bg-raised:#1e1814;--surface:#241d18;--surface-2:#2e251f;--surface-3:#3a2f27;--line:#3d3129;--line-strong:#56463a;--text:#f6ede3;--text-2:#cdbcab;--muted:#b4a290;--accent:#ff8a4c;--accent-strong:#ff9d66;--accent-ink:#2a1205;--accent-soft:#ff8a4c24;--accent-line:#ff8a4c73;--good:#6fd3a5;--good-soft:#6fd3a529;--danger:#ff7a6b;--danger-soft:#ff7a6b24;--info:#8ab4ff;--board-light:#f1dfc4;--board-dark:#c58f66;--board-frame:#3a2a20;--mark-move:#2a180c52;--mark-capture:#2a180c61;--mark-absorb:#1fa57a;--mark-hit:#e2443a;--mark-last:#ffc45c6b;--mark-select:#ff8a4c8c;--mark-check:#eb4034bf;--mark-target:#ffdc7899;--rare-common:#9aa0a6;--rare-rare:#4f9dff;--rare-epic:#b07cff;--rare-legendary:#f5c542;--radius-s:8px;--radius:14px;--radius-l:22px;--shadow:0 10px 30px #00000059;--shadow-s:0 2px 8px #0000004d;--font:ui-rounded, "SF Pro Rounded", "Nunito", "Segoe UI Variable Display", "Segoe UI", system-ui, -apple-system, Roboto, sans-serif;--font-mono:ui-monospace, "SF Mono", "Cascadia Mono", Menlo, monospace;--step--1:.8125rem;--step-0:.9375rem;--step-1:1.0625rem;--step-2:1.3125rem;--step-3:1.75rem;--step-4:2.375rem;--gutter:16px;--ease:cubic-bezier(.22, .8, .3, 1);--t-fast:.14s;--t-move:.22s}*,:before,:after{box-sizing:border-box}html,body{margin:0}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:var(--step-0);-webkit-font-smoothing:antialiased;min-height:100dvh;line-height:1.45}h1,h2,h3{text-wrap:balance;letter-spacing:-.01em;margin:0;line-height:1.15}h1{font-size:var(--step-3);font-weight:800}h2{font-size:var(--step-2);font-weight:750}h3{font-size:var(--step-1);font-weight:700}p{text-wrap:pretty;margin:0}a{color:var(--accent-strong);text-underline-offset:2px}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:6px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.noscript{text-align:center;padding:24px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.btn{min-height:44px;font-weight:700;font-size:var(--step-0);cursor:pointer;white-space:nowrap;transition:background var(--t-fast), border-color var(--t-fast), transform var(--t-fast), color var(--t-fast);-webkit-tap-highlight-color:transparent;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 18px;text-decoration:none;display:inline-flex}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.45;cursor:default}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:hover:not(:disabled){background:var(--accent-strong)}.btn-secondary{background:var(--surface-2);color:var(--text);border-color:var(--line-strong)}.btn-secondary:hover:not(:disabled){background:var(--surface-3)}.btn-ghost{color:var(--text-2);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.btn-danger{background:var(--danger-soft);color:var(--danger);border-color:#ff7a6b66}.btn-danger:hover:not(:disabled){background:#ff7a6b38}.btn-s{min-height:34px;font-size:var(--step--1);gap:6px;padding:0 12px}.btn-l{min-height:54px;font-size:var(--step-1);padding:0 24px}.btn:has(>svg:only-child){width:44px;padding:0}.btn-s:has(>svg:only-child){width:34px}.btn-row{flex-wrap:wrap;gap:10px;display:flex}.btn-row>.btn{flex:auto}.field{gap:6px;display:grid}.field-label{font-weight:700;font-size:var(--step--1);color:var(--text-2);letter-spacing:.02em;padding:0}.field-hint{font-size:var(--step--1);color:var(--muted)}.field-hint.is-error{color:var(--danger)}.input{border-radius:var(--radius);background:var(--bg-raised);border:1.5px solid var(--line-strong);width:100%;min-height:50px;color:var(--text);font-size:var(--step-1);padding:0 16px}.input::placeholder{color:#8d7d6e}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.input-wrap{position:relative}.input-wrap .input-status{display:flex;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.seg{border:0;gap:8px;min-width:0;margin:0;padding:0;display:grid}.seg-row{gap:8px;display:flex}.seg-opt{text-align:center;border-radius:var(--radius);cursor:pointer;background:var(--surface);border:1.5px solid var(--line-strong);min-height:50px;transition:border-color var(--t-fast), background var(--t-fast);flex:1 1 0;place-content:center;gap:2px;padding:8px 10px;display:grid;position:relative}.seg-opt input{opacity:0;pointer-events:none;position:absolute}.seg-opt:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:2px}.seg-opt.is-on{border-color:var(--accent);background:var(--accent-soft)}.seg-label{font-weight:750}.seg-hint{font-size:var(--step--1);color:var(--muted)}.sheet{background:var(--bg-raised);width:100%;max-width:560px;max-height:92dvh;color:var(--text);border-radius:var(--radius-l) var(--radius-l) 0 0;box-shadow:var(--shadow);border:0;border-top:1px solid var(--line-strong);margin:auto auto 0;padding:0}.sheet[open]{animation:sheet-up .26s var(--ease)}.sheet::backdrop{background:#0805039e}.sheet-body{padding:20px var(--gutter) calc(20px + env(safe-area-inset-bottom));gap:16px;display:grid}.sheet-head{align-items:center;gap:12px;display:flex}.sheet-head h2{flex:1}.sheet-close{margin-right:-8px}@media (min-width:720px){.sheet{border-radius:var(--radius-l);border:1px solid var(--line-strong);margin:auto}.sheet-body{padding:24px}}@keyframes sheet-up{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}.badge{letter-spacing:.02em;white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:.75rem;font-weight:800;display:inline-flex}.badge-computer{color:#b9cbff;background:#2b3550;border:1px solid #4a5a85}.badge-count{background:var(--accent);color:var(--accent-ink);justify-content:center;min-width:20px;padding:1px 6px}.badge-soft{background:var(--surface-3);color:var(--text-2)}.badge-good{background:var(--good-soft);color:var(--good)}.avatar{border-radius:50%;flex:none;place-items:center;font-weight:850;display:inline-grid;position:relative}.avatar .presence{border:2px solid var(--surface);background:#6b5d51;border-radius:50%;width:30%;min-width:10px;height:30%;min-height:10px;position:absolute;bottom:-1px;right:-1px}.avatar .presence.is-online{background:var(--good)}.empty{text-align:center;color:var(--text-2);justify-items:center;gap:8px;padding:28px 16px;display:grid}.empty-icon{background:var(--surface-2);width:52px;height:52px;color:var(--accent);border-radius:50%;place-items:center;display:grid}.empty-body{color:var(--muted);justify-items:center;gap:12px;max-width:34ch;display:grid}.spinner{border:3px solid var(--surface-3);border-top-color:var(--accent);border-radius:50%;width:22px;height:22px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.notice{border-radius:var(--radius);font-size:var(--step--1);border:1px solid var(--line-strong);background:var(--surface);padding:12px 14px}.notice-error{background:var(--danger-soft);color:#ffc2ba;border-color:#ff7a6b73}.notice-good{background:var(--good-soft);color:#c4f1dc;border-color:#6fd3a566}.muted{color:var(--muted)}.small{font-size:var(--step--1)}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-l);gap:14px;padding:18px;display:grid}.panel-tight{gap:0;padding:6px}.list{margin:0;padding:0;list-style:none;display:grid}.row{border-radius:var(--radius);color:inherit;align-items:center;gap:12px;min-height:60px;padding:10px 12px;text-decoration:none;display:flex}a.row:hover,button.row:hover{background:var(--surface-2)}button.row{text-align:left;cursor:pointer;background:0 0;border:0;width:100%}.row-main{flex:1;gap:1px;min-width:0;display:grid}.row-title{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:8px;font-weight:750;display:flex;overflow:hidden}.row-sub{font-size:var(--step--1);color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.row-end{flex:none;align-items:center;gap:8px;display:flex}.list>li+li{border-top:1px solid var(--line)}.section{gap:12px;display:grid}.section-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.section-head h2{font-size:var(--step-1)}.shell{flex-direction:column;min-height:100dvh;display:flex}.topbar{z-index:20;padding:calc(8px + env(safe-area-inset-top)) max(var(--gutter), calc((100% - 1180px) / 2 + var(--gutter))) 8px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);background:#16110ee0;align-items:center;gap:12px;display:flex;position:sticky;top:0}.brand{color:var(--text);letter-spacing:-.01em;align-items:center;gap:10px;font-size:1.125rem;font-weight:850;text-decoration:none;display:inline-flex}.brand-mark{background:var(--accent);border-radius:10px;place-items:center;width:32px;height:32px;display:grid}.brand-mark svg{width:26px;height:26px}.topnav{gap:4px;margin-left:16px;display:none}.topnav a{color:var(--text-2);border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-weight:700;text-decoration:none;display:inline-flex}.topnav a:hover{background:var(--surface-2);color:var(--text)}.topnav a[aria-current=page]{color:var(--text);background:var(--surface-2)}.topbar-end{align-items:center;gap:6px;margin-left:auto;display:flex}.icon-link{width:44px;height:44px;color:var(--text-2);border-radius:50%;place-items:center;text-decoration:none;display:inline-grid;position:relative}.icon-link:hover{background:var(--surface-2);color:var(--text)}.icon-link .badge-count{font-size:.6875rem;position:absolute;top:2px;right:0}.main{width:100%;max-width:1180px;padding:20px var(--gutter) 28px;flex:1;align-content:start;gap:24px;margin:0 auto;display:grid}.main-narrow{max-width:640px}.tabbar{z-index:20;padding:6px 8px calc(6px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);background:#16110ef0;grid-template-columns:repeat(4,1fr);display:grid;position:sticky;bottom:0}.tabbar a{color:var(--muted);border-radius:12px;justify-items:center;gap:2px;padding:6px 0;font-size:.75rem;font-weight:750;text-decoration:none;display:grid;position:relative}.tabbar a[aria-current=page]{color:var(--accent-strong)}.tabbar a .badge-count{font-size:.6875rem;position:absolute;top:0;left:calc(50% + 6px)}.footer{border-top:1px solid var(--line);padding:18px var(--gutter) calc(22px + env(safe-area-inset-bottom));color:var(--muted);font-size:var(--step--1)}.footer-in{flex-wrap:wrap;align-items:center;gap:8px 18px;max-width:1148px;margin:0 auto;display:flex}.footer a{color:var(--text-2);text-decoration:none}.footer a:hover{color:var(--text);text-decoration:underline}.footer .made{margin-left:auto}.wide-only{display:none}@media (min-width:860px){.wide-only{display:inline-grid}.topnav{display:flex}.tabbar{display:none}.topbar{padding-top:12px;padding-bottom:12px}}.page-head{align-items:center;gap:8px;min-height:44px;display:flex}.page-head h1{flex:1;min-width:0}.page-head-extra{gap:8px;display:flex}.back-link{width:40px;height:40px;color:var(--text-2);border-radius:50%;place-items:center;margin-left:-10px;display:inline-grid}.back-link:hover{background:var(--surface-2);color:var(--text)}.sheet:focus{outline:none}.center{text-align:center;justify-items:center}.center-row{justify-content:center}.pad{padding:28px}.center-fill{flex:1;place-items:center;min-height:50vh;display:grid}.stack{gap:16px;display:grid}.stack-tight{gap:6px;display:grid}.lede{color:var(--text-2);font-size:var(--step-1);max-width:62ch}.big-icon{background:var(--accent-soft);width:60px;height:60px;color:var(--accent);border-radius:50%;justify-self:center;place-items:center;display:grid}.error-text{color:var(--danger)}.warn-text{color:#ffd27a}.email-chip{overflow-wrap:anywhere;display:inline-block}.section-title{font-size:var(--step-1)}.color-chip{border:1.5px solid var(--line-strong);vertical-align:-1px;border-radius:50%;width:12px;height:12px;margin-right:6px;display:inline-block}.color-chip.color-w{background:#fbf1e1}.color-chip.color-b{background:#1a1310;border-color:#8a7464}.signin{max-width:460px;padding-top:32px}.signin-card{gap:20px;padding:28px 22px}.signin-mark{justify-self:start}.signin-mark .brand-mark{border-radius:14px;width:48px;height:48px}.signin-mark .brand-mark svg{width:40px;height:40px}.ok-mark{color:var(--good)}.hero{align-items:center;gap:28px;padding-top:8px;display:grid}.eyebrow{color:var(--accent-strong);letter-spacing:.08em;text-transform:uppercase;font-weight:800;font-size:var(--step--1)}.hero-title{letter-spacing:-.03em;margin:6px 0 12px;font-size:clamp(2.25rem,8vw,3.75rem);font-weight:900}.hero-sub{font-size:var(--step-1);color:var(--text-2);max-width:44ch}.hero-ctas{margin-top:22px}.hero-board{justify-self:center;width:100%;max-width:440px;transform:rotate(-2deg)}.hero-board .mini-board figcaption{transform:rotate(2deg)}@media (min-width:900px){.hero{grid-template-columns:1.1fr 1fr;gap:48px;padding:32px 0 12px}.hero-ctas{flex-wrap:nowrap}.hero-ctas .btn{flex:none}}.features{gap:14px;display:grid}@media (min-width:760px){.features{grid-template-columns:repeat(3,1fr)}}.feature{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-l);align-content:start;gap:8px;padding:20px;display:grid}.feature h2{font-size:var(--step-1)}.feature p{color:var(--text-2)}.feature-icon{border-radius:14px;place-items:center;width:46px;height:46px;display:grid}.feature-icon.absorb{color:#6fe0b4;background:#1fa57a2e}.feature-icon.hit{color:#ff8f86;background:#e2443a2e}.feature-icon.cards{color:#cfb0ff;background:#b07cff2e}.lobby-head{gap:2px;display:grid}.action-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (min-width:900px){.action-grid{grid-template-columns:repeat(4,1fr)}}.action{border-radius:var(--radius-l);background:var(--surface);border:1px solid var(--line);min-height:132px;color:var(--text);transition:transform var(--t-fast), border-color var(--t-fast), background var(--t-fast);align-content:start;gap:4px;padding:16px;text-decoration:none;display:grid}.action:hover{border-color:var(--accent-line);background:var(--surface-2);transform:translateY(-2px)}.action:first-child{color:var(--accent-ink);background:linear-gradient(160deg,#ff9a5c,#f2743a);border-color:#0000}.action:first-child .action-sub{color:#4a210c}.action:first-child .action-icon{color:var(--accent-ink);background:#ffffff4d}.action-icon{background:var(--accent-soft);width:44px;height:44px;color:var(--accent-strong);border-radius:13px;place-items:center;margin-bottom:8px;display:grid}.action-title{font-weight:800;font-size:var(--step-1);line-height:1.2}.action-sub{font-size:var(--step--1);color:var(--muted)}.inbox-banner{border-radius:var(--radius);background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--text);align-items:center;gap:12px;padding:14px 16px;font-weight:700;text-decoration:none;display:flex}.inbox-banner svg{color:var(--accent);flex:none}.inbox-banner span:nth-child(2){flex:1}.banner-go{color:var(--accent-strong)}.persona-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin:0;padding:0;list-style:none;display:grid}@media (min-width:640px){.persona-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:900px){.persona-grid{grid-template-columns:repeat(4,1fr)}}@media (min-width:1140px){.persona-grid{grid-template-columns:repeat(6,1fr)}}.persona-random{border-radius:var(--radius-l);background:var(--surface);border:1px dashed var(--accent-line);width:100%;color:var(--text);text-align:left;cursor:pointer;font:inherit;align-items:center;gap:14px;padding:14px 18px;display:flex}.persona-random:hover{background:var(--surface-2)}.persona{text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-l);cursor:pointer;width:100%;height:100%;color:var(--text);transition:transform var(--t-fast), border-color var(--t-fast);flex-direction:column;align-items:center;gap:6px;padding:18px 12px 14px;display:flex}.persona:hover{border-color:var(--accent-line);transform:translateY(-2px)}.persona-name{overflow-wrap:anywhere;font-weight:800}.persona-sub{font-size:var(--step--1);color:var(--muted)}.rating{color:var(--text);font-weight:800}.persona-avatar.random{background:var(--surface-3);width:52px;height:52px;color:var(--accent);border-radius:50%;place-items:center;display:grid}.level{gap:2px;margin-top:auto;padding-top:4px;display:flex}.level span{background:var(--surface-3);border-radius:2px;width:8px;height:4px}.level span.on{background:var(--accent)}.sheet-persona{align-items:center;gap:12px;display:flex}.finder{text-align:center;justify-items:center;gap:20px;padding:32px 20px}.radar{width:110px;height:110px;color:var(--accent);place-items:center;display:grid;position:relative}.radar span{border:2px solid var(--accent);opacity:0;animation:ping 2.2s var(--ease) infinite;border-radius:50%;position:absolute;inset:0}.radar span:nth-child(2){animation-delay:1.1s}@keyframes ping{0%{opacity:.8;transform:scale(.4)}to{opacity:0;transform:scale(1.1)}}.offer-computer{border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--line-strong);gap:10px;width:100%;padding:16px;display:grid}.search-row{gap:8px;display:flex}.search-row .btn{flex:none;width:50px;height:50px}.profile-card{align-items:center;gap:14px;padding:4px 0;display:flex}.profile-main{flex:1;gap:2px;min-width:0;display:grid}.profile-name{font-weight:850;font-size:var(--step-2)}.friend-pick{gap:8px;display:grid}.friend-opt{border-radius:var(--radius);border:1.5px solid var(--line-strong);background:var(--surface);cursor:pointer;align-items:center;gap:10px;min-height:52px;padding:8px 12px;display:flex}.friend-opt.is-on{border-color:var(--accent);background:var(--accent-soft)}.friend-opt input{opacity:0;pointer-events:none;position:absolute}.friend-opt:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:2px}.friend-name{flex:1;font-weight:750}.online-word{color:var(--good)}.row-wrap{flex-wrap:wrap}@media (max-width:480px){.row-wrap .row-end{justify-content:flex-end;width:100%}}.link-box{background:var(--bg-raised);border:1.5px dashed var(--line-strong);border-radius:var(--radius);padding:14px}.link-text{font-family:var(--font-mono);font-size:var(--step--1);word-break:break-all;color:var(--text)}.facts{gap:10px;margin:0;display:grid}.facts div{gap:2px;display:grid}.facts dt{font-size:var(--step--1);color:var(--muted);font-weight:700}.facts dd{margin:0;font-weight:650}.danger-zone{border-color:#ff7a6b4d}.danger-zone .btn{justify-self:start}.rules{max-width:980px}.rule{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-l);align-items:center;gap:18px;padding:20px;display:grid}.rule-text{gap:10px;display:grid}.rule-text p{color:var(--text-2)}@media (min-width:820px){.rule{grid-template-columns:1fr 300px;padding:24px 28px}}.mini-board{justify-self:center;gap:8px;width:100%;max-width:340px;margin:0;display:grid}.mini-board figcaption{font-size:var(--step--1);color:var(--muted);text-align:center}.names-grid{grid-template-columns:repeat(auto-fill,minmax(158px,1fr));gap:10px;display:grid}.name-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);align-items:center;gap:12px;padding:12px;display:flex}.name-icon{background:var(--accent-soft);width:40px;height:40px;color:var(--accent-strong);border-radius:12px;flex:none;place-items:center;display:grid}.name-main{display:grid}.rule-list{color:var(--text-2);gap:8px;max-width:70ch;margin:0;padding-left:20px;display:grid}.section h3{flex-wrap:wrap;align-items:baseline;gap:10px;margin-top:8px;display:flex}.card-table{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.card-line{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--rc);gap:12px;padding:12px;display:flex}.card-line-icon{width:40px;height:40px;color:var(--rc);background:color-mix(in srgb, var(--rc) 16%, transparent);border-radius:10px;flex:none;place-items:center;display:grid}.card-line-main{color:var(--text-2);gap:4px;display:grid}.card-line-head{color:var(--text);align-items:baseline;gap:8px;display:flex}.rarity-tag{text-transform:uppercase;letter-spacing:.06em;color:var(--rc);font-size:.6875rem;font-weight:800}.rarity-common{--rc:var(--rare-common)}.rarity-rare{--rc:var(--rare-rare)}.rarity-epic{--rc:var(--rare-epic)}.rarity-legendary{--rc:var(--rare-legendary)}.credit-pieces{gap:6px;display:flex}.credit-pieces svg{width:44px;height:44px}.plain-list{gap:0}.credit-row{justify-content:space-between;padding:10px 0;display:flex}.persona-bio{font-size:var(--step--1);color:var(--text-2);line-height:1.35}.board-frame{background:var(--board-frame);box-shadow:var(--shadow), inset 0 0 0 1px #ffffff0f;border-radius:16px;padding:6px}.board-frame.is-static{border-radius:12px;padding:4px}.board{aspect-ratio:1;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:10px;grid-template-rows:repeat(8,1fr);grid-template-columns:repeat(8,1fr);width:100%;display:grid;position:relative;overflow:hidden}.is-static .board{border-radius:8px}.sq{cursor:pointer;-webkit-tap-highlight-color:transparent;background:var(--board-light);outline-offset:-3px;border:0;margin:0;padding:0;position:relative}.sq.dark{background:var(--board-dark)}.sq.static{cursor:default}.sq:focus-visible{z-index:2;border-radius:0;outline:3px solid #3b82f6}.sq.last:before,.sq.sel:before,.sq.check:before,.sq.inspected:before{content:"";pointer-events:none;position:absolute;inset:0}.sq.last:before{background:var(--mark-last)}.sq.sel:before{background:var(--mark-select)}.sq.inspected:before{box-shadow:inset 0 0 0 3px #ffc45ce6}.sq.check:before{background:radial-gradient(circle, var(--mark-check) 0%, #eb403459 55%, transparent 75%)}.coord{z-index:5;pointer-events:none;opacity:.85;font-size:clamp(8px,1.6vw,11px);font-weight:800;line-height:1;position:absolute}.coord.rank{top:2px;left:3px}.coord.file{bottom:2px;right:3px}.sq.light .coord{color:var(--board-dark)}.sq.dark .coord{color:var(--board-light)}.dot{background:var(--mark-move);z-index:3;pointer-events:none;border-radius:50%;position:absolute;inset:37%}.ring{border:5px solid var(--mark-capture);z-index:3;pointer-events:none;border-radius:50%;position:absolute;inset:4%}.absorb-mark,.hit-mark{z-index:3;pointer-events:none;display:grid;position:absolute;inset:0}.absorb-mark svg,.hit-mark svg{fill:none;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%}.absorb-mark{background:radial-gradient(circle,#0000 52%,#1fa57a47 53%)}.absorb-mark svg{stroke:var(--mark-absorb);stroke-width:2.4px;animation:3s linear infinite swirl}.hit-mark{background:radial-gradient(circle,#0000 50%,#e2443a4d 51%)}.hit-mark svg{stroke:var(--mark-hit);stroke-width:2.6px}@keyframes swirl{to{transform:rotate(360deg)}}.sq.tgt:after{content:"";z-index:6;pointer-events:none;border:3px solid #ffb84d;border-radius:10px;animation:1.4s ease-in-out infinite pulse;position:absolute;inset:6%;box-shadow:0 0 0 2px #2a120580,inset 0 0 12px #ffb84d80}.sq.chosen:after{content:"";z-index:1;pointer-events:none;background:#ff8a4c8c;position:absolute;inset:0}.board.targeting .sq:not(.tgt){cursor:default}.board.targeting .sq:not(.tgt):not(.chosen) .coord{opacity:.4}@keyframes pulse{50%{opacity:.55}}.sq-trap{z-index:2;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.pieces{pointer-events:none;z-index:4;position:absolute;inset:0}.pc,.fx{width:12.5%;height:12.5%;transform:translate(var(--bx), var(--by));transition:transform var(--t-move) var(--ease);position:absolute;top:0;left:0}.pc-art{filter:drop-shadow(0 2px 1.5px #1e0f0559);width:94%;height:94%;position:absolute;inset:3%}.pc.dragging .pc-art{filter:drop-shadow(0 8px 8px #0006);transform:scale(1.18)}.combo-badge{color:#3a1d03;z-index:2;background:#ffb547;border-radius:50%;place-items:center;width:40%;min-width:16px;height:40%;min-height:16px;display:grid;position:absolute;top:1%;right:1%;box-shadow:0 0 0 2px #3a1d03,0 1px 3px #0006}.pc-b .combo-badge{color:#fff;background:#7d5cff;box-shadow:0 0 0 2px #1a0f3d,0 1px 3px #0006}.combo-badge svg{width:72%;height:72%}.lives{z-index:2;gap:1px;display:flex;position:absolute;bottom:3%;left:4%}.pip{fill:#ff5a6a;stroke:#3a0d12;stroke-width:1.4px;width:clamp(8px,1.9vw,13px);height:auto}.set-mark,.spied-mark{z-index:2;color:#f0e4ff;background:repeating-linear-gradient(45deg,#5b3a8a 0 3px,#4a2d74 3px 6px);border:1.5px solid #e9dcff;border-radius:3px;place-items:center;width:30%;min-width:14px;height:38%;min-height:18px;display:grid;position:absolute;bottom:3%;right:2%;box-shadow:0 1px 2px #00000080}.set-mark svg,.spied-mark svg{width:80%;height:auto}.spied-mark{color:#ffb547;background:#2b1b0b;border-color:#ffb547}.sq .set-mark,.sq .spied-mark{width:36%;height:44%;position:absolute;bottom:auto;right:auto}.frozen .pc-art{filter:drop-shadow(0 0 4px #9fdcff)saturate(.4)brightness(1.05)}.frost{background:radial-gradient(circle,#aae1ff00 40%,#aae1ff8c 100%);border:2px solid #c8f0ffd9;border-radius:30%;position:absolute;inset:6%}.pc.lunge{animation:lunge .42s var(--ease)}@keyframes lunge{0%,to{transform:translate(var(--bx), var(--by))}45%{transform:translate(calc(var(--bx) + var(--lx,0%)), calc(var(--by) + var(--ly,0%)))}}.fx{z-index:5;transition:none}.fx-fold .pc-art{animation:fold .38s var(--ease) forwards}@keyframes fold{to{opacity:0;transform:scale(.1)rotate(-160deg)}}.fx-fade .pc-art{animation:.32s ease-out forwards fade}@keyframes fade{to{opacity:0;transform:scale(.6)translateY(-10%)}}.fx-drop .pc-art{animation:.6s ease-in forwards drop}@keyframes drop{30%{transform:scale(1.05)}to{opacity:0;filter:brightness(.2);transform:scale(.05)translateY(20%)}}.fx-chip .combo-badge{animation:chip .7s var(--ease) forwards}@keyframes chip{0%{transform:none}40%{opacity:1;transform:translate(60%,-80%)rotate(40deg)}to{opacity:0;transform:translate(120%,40%)rotate(110deg)}}.boom{background:radial-gradient(circle,#fff6c4 0%,#ffb547 30%,#ff5a2a 55%,#ff3c1400 72%);border-radius:50%;animation:.7s ease-out forwards boom;position:absolute;inset:-40%}@keyframes boom{0%{opacity:1;transform:scale(.2)}60%{opacity:1}to{opacity:0;transform:scale(1.4)}}.net{animation:net .7s var(--ease) forwards;background:repeating-linear-gradient(45deg,#0000 0 6px,#ffe6b4e6 6px 8px),repeating-linear-gradient(-45deg,#0000 0 6px,#ffe6b4e6 6px 8px);position:absolute;inset:0}@keyframes net{0%{opacity:0;transform:scale(1.6)}50%{opacity:1;transform:scale(1)}to{opacity:0}}.block,.rise{place-items:center;display:grid;position:absolute;inset:0}.block{color:#8ab4ff;animation:block .7s var(--ease) forwards}@keyframes block{0%{opacity:0;transform:scale(.4)}30%{opacity:1;transform:scale(1.2)}to{opacity:0;transform:scale(1)}}.rise{color:#ffb547;animation:rise .8s var(--ease) forwards}@keyframes rise{0%{opacity:0;transform:translateY(40%)}50%{opacity:1}to{opacity:0;transform:translateY(-40%)}}.promo{z-index:20;background:var(--bg-raised);width:12.5%;box-shadow:var(--shadow);border:2px solid var(--accent);border-radius:10px;display:grid;position:absolute;overflow:hidden}.promo-opt{aspect-ratio:1;cursor:pointer;background:0 0;border:0;padding:6%}.promo-opt:hover,.promo-opt:focus-visible{background:var(--accent-soft)}.promo-opt svg{width:100%;height:100%}.card{--rc:var(--rare-common);text-align:center;color:var(--text);font:inherit;cursor:default;background:linear-gradient(180deg, color-mix(in srgb, var(--rc) 22%, #2a211b), #241c17 70%);border:2px solid var(--rc);border-radius:12px;flex-direction:column;align-items:center;gap:2px;padding:6px 6px 8px;display:flex;position:relative;box-shadow:inset 0 0 0 2px #00000040,0 3px 8px #00000059}button.card{cursor:pointer;transition:transform var(--t-fast), box-shadow var(--t-fast), opacity var(--t-fast)}button.card:hover:not(:disabled){transform:translateY(-4px)}button.card:disabled{opacity:.72;cursor:default}.card.is-selected{box-shadow:0 0 0 3px var(--accent), 0 8px 18px #00000073;transform:translateY(-6px)}.card-s{width:74px;min-height:100px}.card-m{width:96px;min-height:128px}.card-l{gap:6px;width:100%;min-height:200px;padding:10px 10px 12px}.card-top{justify-content:flex-start;width:100%;display:flex}.card-kind{text-transform:uppercase;letter-spacing:.06em;color:var(--rc);font-size:.625rem;font-weight:850}.card-art{aspect-ratio:1;width:64%;color:var(--rc);background:radial-gradient(circle, color-mix(in srgb, var(--rc) 22%, transparent), transparent 70%);border-radius:50%;place-items:center;margin:2px 0;display:grid}.card-l .card-art{width:76px}.card-name{font-size:.8125rem;font-weight:850;line-height:1.15}.card-l .card-name{font-size:var(--step-0)}.card-text{color:var(--text-2);text-wrap:pretty;font-size:.75rem;line-height:1.35}.card-rarity{text-transform:uppercase;letter-spacing:.08em;color:var(--rc);margin-top:auto;padding-top:4px;font-size:.625rem;font-weight:800}.card.rarity-common{--rc:var(--rare-common)}.card.rarity-rare{--rc:var(--rare-rare)}.card.rarity-epic{--rc:var(--rare-epic)}.card.rarity-legendary{--rc:var(--rare-legendary);box-shadow:inset 0 0 0 2px #00000040,0 0 14px #f5c54259}.card-back{background:#3a2a20;border:2px solid #d9c4a8;width:26px;min-height:36px;padding:0}.back-pattern{opacity:.6;background:repeating-linear-gradient(45deg,#ff8a4c 0 2px,#0000 2px 5px);border-radius:4px;position:absolute;inset:3px}.opp-cards{flex:none;align-items:center;gap:10px;margin-left:auto;display:flex}.backs{display:flex}.backs .card-back+.card-back{margin-left:-10px}.set-count{font-size:var(--step--1);color:var(--text-2);align-items:center;gap:6px;font-weight:750;display:inline-flex}.mini-back{background:repeating-linear-gradient(45deg,#5b3a8a 0 2px,#4a2d74 2px 4px);border:1.5px solid #e9dcff;border-radius:3px;width:13px;height:18px}.offer-row{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.offer-sheet .card-l{min-height:220px}@media (max-width:420px){.offer-sheet .card-text{font-size:.6875rem}.offer-sheet .card-l{padding:8px 6px 10px}}.hand-row{flex-wrap:wrap;gap:10px;display:flex}.hand{gap:8px;display:grid}.hand-empty{padding:10px 2px}.hand-note{margin:0}.target-panel{border-radius:var(--radius);background:var(--surface);border:1.5px solid var(--rc);gap:10px;padding:12px;display:grid}.target-head{align-items:flex-start;gap:12px;display:flex}.target-words{gap:4px;min-width:0;display:grid}.target-name{flex-wrap:wrap;align-items:center;gap:8px;font-weight:850;display:flex}.target-step{color:#ffcf8a;font-weight:750}.promo-row{gap:8px;display:flex}.promo-chip{border:2px solid var(--line-strong);background:var(--board-light);cursor:pointer;border-radius:10px;width:48px;height:48px;padding:4px}.promo-chip.is-on{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}.promo-chip svg{width:100%;height:100%}.main-game{max-width:1240px;padding-top:12px}.game{align-items:start;gap:14px;display:grid}.game-board-col{gap:10px;min-width:0;display:grid}.board-wrap{position:relative}.player-bar{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);align-items:center;gap:10px;min-height:48px;padding:6px 10px;display:flex}.player-bar.is-active{border-color:var(--accent-line);box-shadow:inset 3px 0 0 var(--accent)}.player-main{flex:1;min-width:0;display:grid}.player-name{align-items:center;gap:6px;min-width:0;font-weight:800;display:flex}.name-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.player-sub{font-size:var(--step--1);color:var(--muted);align-items:center;display:flex}.to-move{color:var(--accent-strong);white-space:pre;font-weight:750}.game-status{border-radius:var(--radius);background:var(--surface-2);font-size:var(--step-0);padding:10px 12px}.piece-info{border-radius:var(--radius);background:#2c2238;border:1px solid #5a4a78;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.piece-info-text{font-size:var(--step--1);color:#e6dcf5;flex:1;gap:2px;display:grid}.piece-info-text strong{font-size:var(--step-0);color:#fff}.reveal-toast{z-index:30;border:2px solid var(--accent);box-shadow:var(--shadow);white-space:nowrap;text-overflow:ellipsis;background:#16110ef0;border-radius:999px;max-width:92%;padding:12px 18px;font-weight:850;animation:3.2s forwards toast;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}@keyframes toast{0%{opacity:0;transform:translate(-50%,-40%)scale(.9)}8%,85%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0}}.game-side{align-content:start;gap:12px;display:grid}.game-controls{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.confirm{gap:4px;display:inline-flex}.opponent-card{padding:4px 2px}.move-list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);max-height:240px;padding:8px 4px;overflow:auto}.moves{font-variant-numeric:tabular-nums;margin:0;padding:0;list-style:none;display:grid}.moves li{font-size:var(--step--1);border-radius:6px;grid-template-columns:34px 1fr 1fr;gap:6px;padding:3px 8px;display:grid}.moves li:nth-child(odd){background:#ffffff08}.mv-n{color:var(--muted)}.mv{overflow-wrap:anywhere;font-weight:700}.move-empty{padding:6px 10px}.shell-game .main{padding-bottom:16px}@media (min-width:980px){.game{grid-template-columns:minmax(0,min(100dvh - 210px,720px)) minmax(300px,1fr);gap:24px}.game-side{position:sticky;top:84px}.move-list{min-height:200px;max-height:calc(100dvh - 330px)}}@media (max-width:979px){.main-game{padding-left:8px;padding-right:8px}.board-frame{border-radius:12px;padding:4px}.board{border-radius:8px}}@media (prefers-reduced-motion:reduce){.pc{transition:none}.absorb-mark svg,.sq.tgt:after{animation:none}}.cards-wide{display:none}@media (min-width:980px){.cards-wide{display:block}.cards-narrow{display:none}}.card.is-dim{opacity:.6}
