@font-face{font-family:Bangers Modified;src:url(/fonts/BangersModified.woff2) format("woff2"),url(/fonts/BangersModified.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{--bg:#0f1013;--panel:#080202aa;--panel-2:#22252d;--nav-height:52px;--line:#2e323c;--text:#e8e9ec;--muted:#9a9fa7;--accent:#f2b544;--danger:#d84a4a;--ok:#4caf50;--card-base:clamp(64px,min(17vmin,10vw,13vh),150px);--card-scale:1;--card-w:calc(var(--card-base) * var(--card-scale));--card-sm:calc(var(--card-w) * 0.64);--card-lg:calc(var(--card-w) * 1.33);--card-unit:calc(0.7px + var(--card-w) * 0.3 / 64);--hand-w:var(--card-w);--sidebar-w:220px}:root[data-card-size=tiny]{--card-scale:0.65}:root[data-card-size=smaller]{--card-scale:0.8}:root[data-card-size=bigger]{--card-scale:1.23}:root[data-card-size=biggest]{--card-scale:1.5}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:hsla(0,0%,100%,.18) transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.18);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.32)}::-webkit-scrollbar-corner{background:transparent}body{margin:0;background:var(--bg);color:var(--text);font-family:Segoe UI,system-ui,sans-serif;font-size:14px;-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.share code,code,input,textarea{-moz-user-select:text;user-select:text;-webkit-user-select:text}img{-webkit-user-drag:none;-webkit-touch-callout:none;-moz-user-select:none;user-select:none;-webkit-user-select:none}a img,body:before,button img,img{pointer-events:none}body:before{content:"";position:fixed;inset:0;z-index:-1;background-image:linear-gradient(180deg,#000e 0,transparent 45%),url(/images/wood_bg.jpg);background-position:50%;background-size:cover;background-repeat:no-repeat;opacity:.8}body:has(main.game):before{opacity:.16;filter:saturate(.85)}a{color:var(--accent)}button{font:inherit;cursor:pointer;border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:6px;padding:8px 12px}button:disabled{opacity:.5;cursor:default}button.active,button.primary{background:var(--accent);color:#111;border-color:var(--accent)}.lobby{box-sizing:border-box;max-width:608px;margin:60px auto;display:flex;flex-direction:column;gap:16px;padding:24px;background-color:rgba(0,0,0,.45);border-radius:10px;box-shadow:0 4px 10px rgba(0,0,0,.2)}.lobby .lobby-field,.lobby label{display:flex;flex-direction:column;gap:6px;color:var(--muted)}.lobby input{font:inherit;padding:8px 10px;border-radius:6px;border:1px solid var(--line);background:var(--panel);color:var(--text)}.hero-picker{display:flex;flex-wrap:wrap;gap:8px}.recent{display:flex;flex-direction:column;gap:6px}.game{height:100vh;height:100dvh}body:has(.game){overflow:hidden;height:100vh;height:100dvh;overscroll-behavior:none}.board-wrap{position:relative}.game.log-open .board-wrap{padding-right:calc(var(--sidebar-w) + 14px)}.topbar-actions{margin-left:auto;display:flex;gap:8px;align-items:center}.log-toggle{padding:0 6px;font-size:26px;line-height:1;font-weight:300;border:0;background:transparent;color:#fff;cursor:pointer}.log-toggle:hover{color:var(--accent)}.settings{position:relative}.settings-toggle{padding:4px 6px;font-size:18px;line-height:1;background:none;border:0;color:#fff}.settings-toggle:hover{color:var(--accent)}.settings-popover{position:absolute;right:0;top:calc(100% + 6px);z-index:250;background:#0e0a0a;border:1px solid var(--line);border-radius:10px;padding:12px;min-width:220px;gap:12px;box-shadow:0 12px 30px rgba(0,0,0,.6)}.setting,.settings-popover{display:flex;flex-direction:column}.setting{gap:6px;font-size:13px}.setting-row{flex-direction:row;justify-content:space-between;align-items:center}.setting input[type=range]{width:100%}.table{height:100vh;height:100dvh;overflow:auto;padding:12px 16px 160px}.hand-bar{position:fixed;left:0;right:0;bottom:0;z-index:50;padding:4px 16px 12px;background:none;pointer-events:none}.hand-bar .hand-label,.hand-bar .hand-slot{pointer-events:auto}.hand-bar{transition:transform .25s ease}.hand-bar.collapsed{transform:translateY(calc(100% - 84px))}.hand-bar.collapsed.holding{transform:none}.hand-bar.collapsed.holding .fan{display:none}.hand-label{display:flex;align-items:center;gap:8px;margin-bottom:10px;text-shadow:0 0 4px #000,0 0 8px #000,0 1px 2px #000}.hand-toggle{padding:2px 8px;font-size:11px;line-height:1;border-radius:999px}.hand-bar .zone{align-items:center;width:100%}.hand-bar .fan{width:100%;box-sizing:border-box;justify-content:center;overflow:visible;padding:4px 24px;--hand-overlap:0px}.hand-bar .card{width:var(--hand-w)}.hand-bar .hand-slot+.hand-slot{margin-left:calc(var(--hand-overlap) * -1)}.hand-bar .hand-slot-shifted{transform:translateX(34px)}.row{overflow-x:auto;overflow-y:hidden}.city,.fan,.hq,.row,.side-piles{flex-wrap:nowrap}.topbar{position:relative;gap:12px;margin-bottom:10px}.game-clock,.topbar{display:flex;align-items:center}.game-clock{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);gap:10px;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.game-clock,.game-clock-turn{white-space:nowrap}.game-clock-time{font-weight:700;font-size:14px}.game-clock-turn{font-size:12px;color:var(--muted)}@media (max-width:900px){.game-clock{position:static;transform:none;margin-left:auto;gap:6px;white-space:nowrap}.game-clock-time{font-size:12px}.game-clock-turn{font-size:11px}.game-clock .game-action{padding:1px 6px;font-size:10px}.game-clock .game-action:first-of-type{margin-left:2px}}.topbar a{font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-weight:400;font-size:22px;letter-spacing:.05em;line-height:1;text-decoration:none;text-shadow:2px 2px 0 #111}.status{font-size:12px;color:var(--muted)}.status.off:before,.status.on:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:0;background:var(--ok)}.status{display:inline-flex;margin-right:-4px}.status.off:before{background:var(--danger)}.error{color:var(--danger)}.sidebar{position:absolute;top:0;right:0;bottom:0;width:var(--sidebar-w);border:1px solid var(--line);border-radius:10px;background:var(--panel);overflow:visible;display:flex;flex-direction:column}.sidebar>.sidebar-tabs{flex:none}.sidebar>.chat,.sidebar>.debug-log,.sidebar>.log-wrap{flex:1 1;min-height:0;height:auto}.sidebar .debug-steps,.sidebar .log{border-radius:0 0 10px 10px}.sidebar-tabs{display:flex;gap:2px;padding:4px 4px 0;border-bottom:1px solid var(--line)}.sidebar-tab{position:relative;flex:1 1;padding:5px 8px;border:0;border-radius:8px 8px 0 0;background:none;color:#9a9a9a;font-size:11px;font-weight:600;letter-spacing:.02em;cursor:pointer}.sidebar-tab.active{color:#fff;background:hsla(0,0%,100%,.07)}.unread-dot{position:absolute;top:3px;right:3px;width:7px;height:7px;border-radius:50%;background:var(--accent,#e8c97a);box-shadow:0 0 0 2px var(--panel)}.log-button{position:relative}.log-button .unread-dot{top:2px;right:0}.chat{flex-direction:column;height:100%}.chat,.chat-lines{display:flex;min-height:0}.chat-lines{flex:1 1;overflow:auto;flex-direction:column-reverse;justify-content:flex-start;gap:5px;padding:8px;font-size:11px}.chat-empty{margin:0;color:#7c7c7c;font-style:italic}.chat-line{display:flex;flex-direction:column;gap:1px}.chat-head{display:flex;align-items:baseline;gap:6px}.chat-who{color:var(--accent,#e8c97a);font-weight:700;white-space:nowrap}.chat-who.chat-spectator{color:#8fb3d9;font-weight:600}.chat-mine .chat-who{color:#9ad79f}.chat-text{color:#e6e6e6;overflow-wrap:anywhere;line-height:1.35}.chat-at{color:#6f6f6f;font-size:9px;white-space:nowrap}.chat-line{position:relative}.chat-react-button{position:absolute;right:0;top:-2px;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:none;border-radius:4px;background:none;color:var(--muted);cursor:pointer;opacity:0}@media (hover:hover){.chat-line:hover .chat-react-button{opacity:1}}.chat-line.chat-picking .chat-react-button,.chat-react-button:focus-visible{opacity:1}@media (hover:hover){.chat-react-button:hover{color:var(--text)}}@media (pointer:coarse){.chat-react-button{width:22px;height:22px;top:-4px}}.chat-reactions{display:flex;flex-wrap:wrap;gap:3px;margin-top:3px}.chat-reaction{display:inline-flex;align-items:center;gap:3px;padding:0 5px 0 4px;border:1px solid var(--line);border-radius:999px;background:rgba(0,0,0,.35);color:var(--muted);font-size:9px;line-height:15px;cursor:pointer}@media (hover:hover){.chat-reaction:hover{border-color:var(--muted);color:var(--text)}}.chat-reaction-mine{border-color:rgba(242,181,68,.75);background:rgba(242,181,68,.12);color:var(--accent)}.chat-reaction-emoji{font-size:10px;line-height:15px}.chat-line.chat-pressing{background:rgba(242,181,68,0);animation:chat-press .45s ease-in forwards}.chat-line.chat-picking{background:rgba(242,181,68,.14);border-radius:4px;box-shadow:0 0 0 4px rgba(242,181,68,.14)}@keyframes chat-press{to{background:rgba(242,181,68,.14);box-shadow:0 0 0 4px rgba(242,181,68,.14);border-radius:4px}}.chat-picker{position:fixed;z-index:40;display:flex;gap:0;padding:2px;border:1px solid var(--line);border-radius:999px;background:rgba(8,2,2,.96);box-shadow:0 3px 10px rgba(0,0,0,.5);animation:chat-tray-pop .14s ease-out}@keyframes chat-tray-pop{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.chat-picker-emoji{width:22px;height:22px;padding:0;border:none;border-radius:50%;background:none;font-size:12px;line-height:1;cursor:pointer}@media (hover:hover){.chat-picker-emoji:hover{background:rgba(242,181,68,.18)}}.chat-compose{display:flex;gap:4px;padding:6px;border-top:1px solid var(--line)}.chat-compose input{flex:1 1;min-width:0;padding:5px 8px;border:1px solid var(--line);border-radius:999px;background:rgba(0,0,0,.35);color:#fff;font-size:11px}.chat-compose input:focus{outline:none;border-color:hsla(0,0%,100%,.4)}.chat-send{padding:4px 10px;border:1px solid var(--line);border-radius:999px;background:none;color:#cfcfcf;font-size:11px;cursor:pointer}.chat-send:disabled{opacity:.4;cursor:default}.player-row.your-turn{border-color:var(--ok);box-shadow:0 0 0 1px var(--ok),0 0 24px rgba(76,175,80,.25)}.prompt{position:relative;z-index:60;display:flex;flex-wrap:wrap;align-items:center;gap:10px;min-height:36px}.prompt:not(.waiting):not(.outcome){flex-direction:column;align-items:flex-start;gap:6px}.prompt:not(.waiting):not(.outcome) .prompt-options{align-items:center}.player-zones>.prompt:not(.waiting):not(.outcome){padding:10px 14px;border-radius:12px;background:rgba(22,20,26,.92);box-shadow:0 10px 28px rgba(0,0,0,.65),0 0 0 1px hsla(0,0%,100%,.06)}.confirm-backdrop{align-items:center}.confirm-modal{width:min(92vw,320px);gap:10px;background:#12141a;text-align:center}.confirm-modal .prompt{width:100%;align-items:center}.confirm-detail{margin:0;font-size:13px;opacity:.82}.confirm-body{display:flex;justify-content:center;padding:4px 0}.confirm-modal .prompt-options{width:100%;flex-direction:column;align-items:stretch}.confirm-action{justify-content:center}.confirm-action:disabled{opacity:.4;cursor:not-allowed}.prompt-options .hint{margin-right:4px}.prompt h2{margin:0;font-size:15px}.prompt-options{display:flex;flex-wrap:wrap;gap:6px}.prompt .confirm{margin:0;width:auto}.board{display:flex;flex-direction:column;--board-gap:14px;gap:var(--board-gap)}.board-empty{color:var(--muted);padding:40px}.row{display:flex;gap:16px;align-items:flex-start;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:10px 12px}.city,.hq{display:flex;gap:10px;flex:1 1}.zone-block{flex:1 1;align-items:flex-start}.zone-block,.zone-group{display:flex;flex-direction:column}.zone-group{align-items:center}.zone-group>.city,.zone-group>.hq{flex:none}.zone-title{font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-size:18px;letter-spacing:.08em;line-height:1;color:#ffd23f;text-shadow:2px 2px 0 #111;-webkit-text-stroke:.5px #111;order:1;margin-top:2px;pointer-events:none}.board:not(.board-mini) .hq-row .zone-title{margin-top:10px}.city-space{gap:4px}.city-location,.city-space{display:flex;flex-direction:column;align-items:center}.city-location{gap:2px;padding-bottom:2px;border-bottom:1px dashed var(--line)}.alias-tag,.location-tag{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.alias-tag{text-transform:none;letter-spacing:0;font-style:italic}.city-name{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.city-empty{width:var(--card-w);aspect-ratio:5/7;border:1px dashed var(--line);border-radius:8px;background:rgba(0,0,0,.35)}.mastermind{display:flex;flex-direction:column;align-items:center;gap:4px}@media (max-width:700px){.row.enemy-row{flex-wrap:wrap;justify-content:center;align-items:flex-start;row-gap:10px}.row.enemy-row>.zone-block{order:1;flex-basis:100%;align-items:center}}.side-piles{display:flex;gap:8px}.pile-column{gap:10px}.pile,.pile-column{display:flex;flex-direction:column}.pile{align-items:center;gap:4px}.pile-label{font-size:11px;color:var(--muted);white-space:nowrap}.captured{--captured-w:60px;display:flex;gap:4px;margin-top:-30px;padding-left:20px;position:relative;z-index:0}.city-space>.card,.mastermind-row{position:relative;z-index:1}.mastermind-stack{gap:18px}.mastermind-notes,.mastermind-stack{display:flex;flex-direction:column;align-items:center}.mastermind-notes{gap:3px}.card-badge.mastermind-note{position:static;white-space:nowrap;font-size:clamp(8px,calc(var(--card-w) * .09),15px);padding:calc(var(--card-w) * .012) calc(var(--card-w) * .05)}.card-badge.mastermind-note.mastermind-note-leads{font-size:clamp(6px,calc(var(--card-w) * .06),10px);font-weight:400;letter-spacing:.01em;color:#b3b3b3;background:rgba(0,0,0,.55);padding:calc(var(--card-w) * .008) calc(var(--card-w) * .04)}.mastermind-row .blocker,.scheme-guards .blocker{padding-bottom:32px}.captured .card{width:var(--captured-w)}.captured-fan{align-items:flex-end;gap:0;padding-left:12px;position:relative}.captured-fan .stack-fan{width:84px;height:58px}.captured-fan .stack-fan img{width:34px}.stack-fan-badge{position:absolute;left:50%;bottom:0;width:40px;aspect-ratio:5/7;transform-origin:50% 120%;display:flex;align-items:center;justify-content:center;z-index:20;pointer-events:none}.captured-fan .stack-fan-badge{width:34px}.captured-count{min-width:15px;height:15px;padding:0 4px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:rgba(0,0,0,.45);color:hsla(0,0%,100%,.85);font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-size:10px;letter-spacing:.04em;pointer-events:none}.card{width:var(--card-w);aspect-ratio:5/7;border-radius:8px;border:2px solid var(--line);background:var(--panel-2);box-shadow:0 2px 6px rgba(0,0,0,.7);overflow:hidden;position:relative;transition:transform .15s,box-shadow .15s,opacity .2s;flex-shrink:0}.card img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.05)}.card-sm{width:var(--card-sm);--card-unit:calc(0.7px + var(--card-sm) * 0.3 / 64)}.card-lg{width:var(--card-lg);--card-unit:calc(0.7px + var(--card-lg) * 0.3 / 64)}.card.card-landscape{width:calc(var(--card-w) * 7 / 5);aspect-ratio:7/5}.card-half-left img{object-position:left center}.card-half-right img{object-position:right center}.card-mini.card-half-left .mini-art img,.card-mini.card-half-right .mini-art img{top:0;width:260%;height:130%;aspect-ratio:auto;object-position:center top}.card-mini.card-half-left .mini-art img{left:-15%}.card-mini.card-half-right .mini-art img{left:-145%}.card-modal .card-preview-frame.card-half-left img,.card-modal .card-preview-frame.card-half-right img{aspect-ratio:5/7;object-fit:cover}.card-modal .card-preview-frame.card-half-left img{object-position:left center}.card-modal .card-preview-frame.card-half-right img{object-position:right center}.card-sm.card-landscape{width:calc(var(--card-sm) * 7 / 5)}.card-lg.card-landscape{width:calc(var(--card-lg) * 7 / 5)}.card-back{background:#1c1e26}.card-empty{background:repeating-linear-gradient(45deg,#232631,#232631 6px,#1c1e26 0,#1c1e26 12px);border-style:dashed}.mastermind-empty{display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.card-clickable{cursor:pointer}.card-highlight{box-shadow:0 0 0 2px var(--accent),0 0 14px rgba(242,181,68,.45)}.card-preview{position:fixed;z-index:350;pointer-events:none}.card-preview .card{box-shadow:0 16px 40px rgba(0,0,0,.75)}.card-preview-frame{position:relative}.card-preview-title{position:absolute;top:8px;left:0;right:0;padding:6px 12px;background:linear-gradient(90deg,transparent,rgba(0,0,0,.8) 18%,rgba(0,0,0,.8) 82%,transparent);text-align:center;font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-size:22px;letter-spacing:.05em;line-height:1;color:#ffd23f;text-shadow:2px 2px 0 #111,0 0 8px #000;-webkit-text-stroke:.5px #111;pointer-events:none}.card-preview-text{position:absolute;left:6%;right:6%;bottom:6%;display:block;padding:8px 10px;border-radius:8px;background:rgba(0,0,0,.78);color:#fff;font-size:12px;line-height:1.35;text-shadow:0 1px 2px #000;pointer-events:none}.card-preview-text .card-section b{font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-weight:400;font-size:15px;letter-spacing:.05em;color:#ffd23f}.card-modal{position:fixed;inset:0;z-index:400;justify-content:center;background:rgba(0,0,0,.75);padding:24px;touch-action:none}.card-modal,.card-modal-body{display:flex;align-items:center}.card-modal-body{flex-direction:column;gap:8px;max-width:min(86vw,420px);max-height:100%}.card-modal img{width:min(86vw,62vh * 5/7,420px);border-radius:14px;box-shadow:0 24px 60px rgba(0,0,0,.8)}body.dragging-card .card-preview{display:none}.card-selected{box-shadow:0 0 0 3px var(--ok),0 0 18px rgba(76,175,80,.6)}.focus-row{flex-direction:column;gap:6px;border-color:var(--accent)}.hint{color:var(--muted);font-size:12px}.card-dimmed{opacity:.45}.card-badge{position:absolute;top:4px;right:4px;background:rgba(0,0,0,.75);color:#fff;font-size:11px;padding:2px 6px;border-radius:10px}.badge-duel{display:inline-flex;align-items:center;padding:0 .4em;border-radius:999px;font-size:.7em;font-weight:700;letter-spacing:.04em;color:#e8d9a8;background:rgba(60,30,10,.85);border:1px solid hsla(46,58%,78%,.5)}.badge-duel.badge-duel-ready{color:#1b1206;background:#e8c97a}.badge-astral{display:inline-flex;align-items:center;padding:0 .4em;border-radius:999px;font-size:.7em;font-weight:700;letter-spacing:.04em;color:#e6dcff;background:rgba(58,32,110,.85);border:1px solid rgba(190,160,255,.55)}.astral-plane{padding:4px;border:1px dashed rgba(190,160,255,.45);border-radius:10px;background:radial-gradient(circle at 50% 35%,rgba(120,80,200,.22),transparent 70%)}.astral-plane .city-empty.astral-empty{width:var(--card-sm);border-color:rgba(190,160,255,.35)}.badge-shards{display:inline-flex;align-items:center;gap:3px;font-weight:700}.badge-shards .badge-icon{width:14px;height:14px;object-fit:contain}.card-placeholder{height:100%;padding:6px;display:flex;flex-direction:column;gap:4px;font-size:9px;line-height:1.2}.card-name{font-weight:700;font-size:10px}.card-sub{color:hsla(0,0%,100%,.75)}.card-text{flex:1 1;overflow:hidden}.card-stats{display:flex;gap:6px;font-weight:600}.card-sm .card-placeholder{font-size:7px}.card-sm .card-text{display:none}.pools{gap:8px;min-width:120px}.pool,.pools{display:flex;flex-direction:column}.pool{background:var(--panel-2);border-radius:8px;padding:6px 10px}.pool-value{font-size:26px;font-weight:700}.pool-label,.pool-note{font-size:11px;color:var(--muted)}.play-all{padding:2px 8px;font-size:11px;line-height:1.4;border-color:var(--ok);color:var(--ok);font-weight:600;border-radius:999px}.play-all.play-greys{border-color:hsla(0,0%,100%,.35);color:#cfcfcf}.hand-label .play-all{margin-right:4px}.end-turn{align-self:center;background:var(--accent);color:#111;font-weight:700;padding:3px 9px;font-size:11px}.prompt .undo,.prompt-options .play-all{align-self:center;padding:3px 9px;font-size:11px;border-radius:6px}.prompt .undo{margin:0;font-weight:700;border:1px solid var(--line);background:transparent;color:var(--text)}.prompt .undo:disabled{opacity:.4;cursor:not-allowed}.prompt.waiting .undo{margin-left:auto}.player-zones{flex:1 1;display:flex;flex-direction:column;gap:8px}.zone.artifacts,.zone[data-drop=play]{min-height:140px;--played-w:var(--card-w)}html[data-compact-played=on] .zone.artifacts,html[data-compact-played=on] .zone[data-drop=play]{--played-w:calc(var(--card-w) * 0.75)}.zone.artifacts .fan,.zone[data-drop=play] .fan{--card-w:var(--played-w);flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;padding-bottom:6px}.player-row{overflow:visible;display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"pools top piles" "pools played piles";align-items:start}.player-top{grid-area:top;display:flex;gap:16px;align-items:flex-start;min-width:0}.player-row>.pools{grid-area:pools;flex-direction:column;flex:none;gap:6px;min-width:0;align-self:start}.player-row>.pools .pool{width:64px;flex:none;background:none;padding:0;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px}.player-row.player-row-stacked{display:flex;flex-direction:column;gap:10px;padding:10px;border-radius:10px;border:1px solid var(--line);background:rgba(0,0,0,.3)}.player-row.player-row-stacked>.pools{flex-direction:row;flex-wrap:wrap;align-items:flex-end;gap:10px;min-width:0}.player-row.player-row-stacked>.pools .pool{width:auto;min-width:54px;flex:none;background:none;padding:0;display:flex;flex-direction:column;align-items:center;gap:4px}.player-row.player-row-stacked>.player-top{display:flex;flex-direction:column;gap:8px}.pool-badge{position:relative;width:48px;height:48px;flex:none}.pool-badge>.gem-chip{width:44px;height:44px;font-size:16px}.pool-badge>.gem-chip.gem-empty{opacity:.6}.pool-value.pool-fraction{font-size:.62em;letter-spacing:-.02em}.pool-badge .pool-icon{position:absolute;inset:-30%;width:160%;height:160%;opacity:.8}.pool-badge-attack{width:40px;height:40px}.pool-badge-attack .pool-icon{inset:0;width:100%;height:100%}.player-row>.pools,.player-row>.pools .pool,.player-top{overflow:visible}.pool-icon-attack{fill:none;stroke:var(--danger);stroke-width:3.5;stroke-linecap:round}.pool-badge .pool-value{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;color:#fff;text-shadow:0 0 12px #000,0 0 12px #000,0 0 12px #000}.pool .pool-note{flex-basis:100%;text-align:center}.pool-badge .pool-value.pool-zero{color:#aeadad}.pool-caption{flex-basis:100%;margin-top:-4px;text-align:center;font-size:9px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.player-row .side-piles{grid-area:piles}.played-row{grid-area:played;min-width:0;display:flex;flex-direction:column;gap:8px}.played-row .artifacts,.played-row .zone[data-drop=play]{min-width:0}.played-row .artifacts .fan{overflow-x:auto;overflow-y:hidden;padding-bottom:6px}.player-zones{min-width:0}.zone{display:flex;flex-direction:column;gap:4px}.zone-label{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.fan{display:flex;gap:8px;min-height:40px}.choice{display:flex;align-items:center;gap:10px;text-align:left}.choice.end{background:var(--accent);color:#111}.choice.fight{border-color:var(--danger)}.choice.recruit{border-color:var(--accent)}.choice.use{background:#0af;border-color:#0af;color:#111;font-weight:700;padding:3px 9px;font-size:11px;box-shadow:0 0 6px rgba(0,170,255,.55),0 0 14px rgba(0,170,255,.3)}.choice.use[data-option=lightshow]{background:linear-gradient(110deg,#8b3dff,#ff4fb6 55%,#ffd23f);border-color:#ff4fb6;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.9),0 0 4px rgba(0,0,0,.6);animation:lightshow-glow 1.8s ease-in-out infinite}@keyframes lightshow-glow{0%,to{box-shadow:0 0 6px rgba(139,61,255,.6),0 0 14px rgba(255,79,182,.35)}50%{box-shadow:0 0 10px rgba(255,210,63,.75),0 0 22px rgba(255,79,182,.55)}}.choice.active{outline:2px solid var(--accent)}.confirm{margin-top:10px;width:100%;background:var(--accent);color:#111;font-weight:700}.waiting{color:var(--muted);display:flex;flex-direction:row;flex-wrap:nowrap;gap:10px;align-items:flex-start}.waiting>.spinner{flex:none;margin-top:4px}.waiting>span:not(.spinner){min-width:0}.spinner{width:14px;height:14px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.outcome h2{color:var(--accent)}.log-wrap{position:relative;height:100%}.log{overflow:auto;height:100%;padding:8px;font-size:11px;display:flex;flex-direction:column-reverse;gap:3px}.log-divider{display:flex;align-items:center;gap:8px;margin:8px 0 4px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.log-divider:after,.log-divider:before{content:"";flex:1 1;border-top:1px solid var(--line)}.log-line{color:var(--muted);padding:2px 6px;border-left:2px solid transparent}.log-latest{color:var(--text);border-left-color:var(--accent);background:rgba(242,181,68,.08);animation:pop .3s ease-out}@keyframes pop{0%{transform:translateX(6px);opacity:.3}}.muted{color:var(--muted);font-size:12px}.lobby-view{max-width:640px;margin:40px auto;display:flex;flex-direction:column;gap:14px;padding:0 16px;box-sizing:border-box}.seats{flex-wrap:wrap}.seat,.seats{display:flex;gap:8px}.seat{padding:10px 14px;border-radius:8px;border:1px dashed var(--line);color:var(--muted);min-width:140px;align-items:center}.seat.filled{border-style:solid;color:var(--text);background:var(--panel-2)}.seat.me{border-color:var(--ok)}.tag{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--accent)}.join-form{display:flex;gap:8px}.join-form input{font:inherit;padding:8px 10px;border-radius:6px;border:1px solid var(--line);background:var(--panel);color:var(--text);flex:1 1}.share{display:flex;gap:8px;align-items:center}.share code{background:var(--panel-2);padding:6px 8px;border-radius:6px;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1}.players-strip{display:flex;gap:4px;align-items:flex-end;padding:0;margin-bottom:calc(-1 * var(--board-gap, 14px));flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;position:relative;z-index:1}.players-strip::-webkit-scrollbar{display:none}.player-chip{display:flex;flex-direction:column;flex:none;padding:5px 10px 6px;border-radius:8px 8px 0 0;border:1px solid var(--line);border-bottom:none;background:rgba(0,0,0,.35);min-width:120px}.player-chip.active{box-shadow:inset 3px 0 0 var(--ok);background:rgba(76,175,80,.16);border-color:rgba(76,175,80,.35)}.player-chip-info{margin-left:auto}.players-strip .player-chip[role=button]{cursor:pointer}.players-strip .player-chip:not(.viewing){opacity:.45}.players-strip .player-chip.deciding{opacity:1;border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent),0 0 10px rgba(242,181,68,.35)}.players-strip .player-chip.deciding .player-name{color:var(--accent)}.players-strip .player-chip:not(.viewing):hover{opacity:.7}.players-strip+.player-row,.players-strip+.row{border-top-left-radius:0}.player-name{font-weight:600}.player-stats{font-size:11px;color:var(--muted)}.hand-slot{touch-action:pan-y;-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;transition:transform .18s ease}.hand-slot-shifted{transform:translateX(34px) rotate(1.5deg)}body[data-drag-target=discard] [data-drop=discard],body[data-drag-target=play] [data-drop=play]{outline:2px dashed var(--line);outline-offset:6px;border-radius:10px;background:rgba(0,0,0,.35)}body[data-drag-target=discard][data-drag-over=discard] [data-drop=discard],body[data-drag-target=play][data-drag-over=play] [data-drop=play]{outline-color:var(--accent);background:rgba(242,181,68,.12)}.card-dragging{opacity:.3}.drag-clone{position:fixed;z-index:200;pointer-events:none;transform:translate(-50%,-50%) scale(1.05) rotate(-2deg);filter:drop-shadow(0 16px 30px rgba(0,0,0,.7))}.drag-clone.drag-over{transform:translate(-50%,-50%) scale(.9)}.insert-marker{width:4px;border-radius:2px;background:var(--accent);align-self:stretch;margin:0 -6px}[data-drop]{transition:box-shadow .15s}.stack{position:relative;flex-shrink:0}.stack-card{position:absolute}.announcer{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:300;overflow:hidden}.announcement{position:relative;font-size:clamp(16px,2.2vw,22px);font-weight:800;letter-spacing:.02em;color:#fff;text-align:center;padding:18px 40px 44px;border-radius:14px;background:rgba(15,16,19,.88);border:2px solid var(--danger);box-shadow:0 20px 60px rgba(0,0,0,.7);max-width:80vw;pointer-events:auto;cursor:pointer;animation:announce-in .35s ease-out}.announcement-player{border-color:var(--ok);color:#d9f5dc}.announcement-paused{box-shadow:0 20px 60px rgba(0,0,0,.7),0 0 0 3px hsla(0,0%,100%,.15)}.announcement-continue{position:absolute;right:10px;bottom:8px;overflow:hidden;padding:4px 12px;font-size:12px;font-weight:700;letter-spacing:.04em;border-radius:8px;border:1px solid var(--line);background:hsla(0,0%,100%,.08);color:#fff;cursor:pointer}.announcement-progress{position:absolute;inset:0;transform-origin:left center;background:hsla(0,0%,100%,.18);pointer-events:none}.announcement-player .announcement-progress{background:rgba(76,175,80,.35)}.announcement-continue-label{position:relative}@keyframes announce-in{0%{transform:translateY(24px) scale(.96);opacity:0}to{transform:none;opacity:1}}.status-text{display:inline}.log-backdrop{display:none}@media (max-width:900px){:root{--hand-w:92px}.game,.game.log-closed{grid-template-columns:1fr}.table{padding:8px 0 160px}.topbar{padding:0 8px}.row{border-left:0;border-right:0;border-radius:0}.sidebar{position:static;width:auto;height:45vh;margin:10px 8px 104px}.log-backdrop{display:none}.game.log-open .board-wrap{padding-right:0}.topbar{gap:8px;margin-bottom:8px;flex-wrap:nowrap}.topbar a{font-size:19px;white-space:nowrap}.topbar-actions{gap:4px}.settings-toggle{padding:3px 5px}.log-toggle{font-size:24px;padding:0 2px}.status-text,.topbar .muted{display:none}.row{gap:8px;padding:8px;border-radius:8px}.board{--board-gap:8px;gap:var(--board-gap)}.city,.hq{gap:6px}.city-name{letter-spacing:.03em}.card-badge,.city-name,.pile-label,.zone-label{font-size:9px}.card-badge{padding:1px 4px;top:2px;right:2px}.captured{margin-top:-18px;padding-left:10px;--captured-w:30px}.pool-note{font-size:10px;line-height:1.2}.prompt h2{font-size:14px}.prompt-options button{padding:8px 10px;font-size:13px}.prompt .undo,.prompt-options .end-turn,.prompt-options .play-all{padding:4px 9px;font-size:11px}.player-row{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"pools top" "pools played" "piles piles"}.zone[data-drop=play]{min-height:100px}.hand-bar{padding:6px 8px 8px}.hand-bar .fan{padding:4px 8px}.hand-bar .hand-slot:focus-within{z-index:5}.hand-slot-shifted{transform:translateX(22px)}.hand-bar.collapsed{transform:translateY(calc(100% - 78px))}.players-strip{gap:3px;padding:0}.player-chip{min-width:0;padding:4px 8px 5px}.lobby{margin:24px auto;padding:16px;max-width:min(608px,calc(100% - 16px))}.settings-popover{min-width:200px}}@media (max-width:900px) and (orientation:landscape){.table{padding-bottom:0}}.inspect{margin-left:2px;padding:0 2px;font-size:12px;line-height:1;border:none;background:none;vertical-align:middle;opacity:.8}.inspect:hover{opacity:1}.deck-empty{padding:24px;margin:0}.reason{display:block;width:100%;font-size:12px;color:var(--accent)}.prompt .reason{margin-top:-4px}.waiting .reason{display:block;margin-top:2px}.deck-modal-backdrop{position:fixed;inset:0;z-index:350;background:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;padding:16px}.deck-modal{background:#15161a;border:1px solid var(--line);border-radius:12px;width:min(1100px,100%);max-height:90vh;max-height:90dvh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.8)}.deck-modal header{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line)}.deck-modal h2{margin:0;font-size:16px}.deck-modal header button{margin-left:auto;padding:4px 10px}.deck-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(calc(var(--card-w) + 12px),1fr));grid-gap:14px 10px;gap:14px 10px;padding:16px;overflow:auto;min-height:0}.deck-entry{display:flex;flex-direction:column;align-items:center;gap:4px}.deck-entry-name{font-size:11px;color:var(--muted);text-align:center}@media (max-width:900px){.deck-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.deck-grid .card{width:92px}}.ghost-card{opacity:.35;filter:grayscale(.6);pointer-events:none}.lobby-title{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 16px}.lobby-title h1{margin:0;color:var(--accent);font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-weight:400;font-size:44px;letter-spacing:.05em;line-height:1;text-shadow:3px 3px 0 #111}.lobby-links{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:14px}.lobby-links a{color:var(--accent);text-decoration:none}.lobby-links a:hover{text-decoration:underline}.setup-popover{min-width:300px;max-width:min(92vw,420px);max-height:70vh;overflow-y:auto}.setup-popover select{font:inherit;padding:6px 8px;border-radius:6px;border:1px solid var(--line);background:var(--panel-2);color:var(--text)}.setting-check{align-items:center;cursor:pointer}.hero-picker.compact button{padding:4px 8px;font-size:12px}.hero-picker button.led{opacity:.8;border-style:dashed}.hero-picker button.led-option{border-style:dashed}.setup-section .setup-note{margin:0;padding-bottom:6px;font-size:12px;color:var(--muted)}.setup-note button{background:none;border:none;padding:0;color:var(--accent);font-size:inherit;text-decoration:underline;cursor:pointer}.mastermind-row{display:flex;align-items:flex-start;gap:8px}.guard-fan{position:relative;justify-content:flex-end;min-height:calc(var(--card-sm) * 1.4 + 32px + var(--card-sm) * .2)}.guard-fan .stack-fan{position:absolute;left:50%;bottom:32px;width:0;height:calc(var(--card-sm) * 1.4);z-index:0;pointer-events:none}.guard-fan .stack-fan img{width:var(--card-sm);border-radius:6px;transform-origin:50% 110%;opacity:.9}.guard-fan-top{position:relative;z-index:1}.guard-fan-count{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);min-width:26px;height:26px;padding:0 6px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:rgba(0,0,0,.72);border:2px solid hsla(0,0%,100%,.35);color:#fff;font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-size:16px;letter-spacing:.04em;pointer-events:none}.blocker{display:flex;flex-direction:column;align-items:center;gap:4px}.zone.artifacts{border-top:1px solid var(--line);padding-top:8px}.zone.artifacts .fan{margin:-6px;padding:6px 6px 12px}.announcement-with-card{display:flex;align-items:center;gap:24px;text-align:left}.announcement-card-strip{display:flex;gap:10px;flex:none}.announcement-card-strip .card{width:clamp(90px,13vw,150px);cursor:zoom-in}.announcement-card-strip .card-badge,.announcement-mini-strip .card-badge,.log-card-strip .card-badge{font-size:calc(7.5 * var(--card-unit));padding:calc(1 * var(--card-unit)) calc(4 * var(--card-unit))}.announcement-with-card .announcement-mini-strip{display:none}.announcement-card-strip[data-count="3"] .card,.announcement-card-strip[data-count="4"] .card{width:clamp(70px,9vw,110px)}.log-has-cards{cursor:pointer;border-left-color:var(--line)}.log-peeked{color:var(--text)}.log-cards{position:fixed;transform:translate(calc(-100% - 10px),-50%);padding:8px;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 30px rgba(0,0,0,.6);z-index:260;pointer-events:none}.log-card-strip{display:flex;gap:6px}.log-card-strip .card{width:min(260px,40vw)}.log-card-strip .card.card-landscape{width:min(360px,60vw)}@media (max-width:900px){.log-cards{transform:translateY(10px);left:12px!important;max-width:calc(100vw - 24px)}.log-card-strip{overflow-x:auto}.log-card-strip .card{flex:none;width:48vw}}.lobby .setting-row{flex-direction:row;align-items:center;justify-content:space-between}.lobby .setup-popover .setting{text-align:left}.mastermind-pick{display:flex;gap:12px;align-items:flex-start}.pick-row{display:flex;align-items:center;gap:10px}.pick-row .card-select{flex:1 1;min-width:0}.pick-row .epic-toggle{flex:none;white-space:nowrap}.pick-detail{display:flex;align-items:flex-start;gap:12px;margin-top:10px}.pick-main{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:8px}.pick-main select{flex:none;width:100%}.card-select{position:relative;width:100%}.card-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;font:inherit;padding:8px 10px;border-radius:6px;border:1px solid var(--line);background:var(--panel);color:var(--text);cursor:pointer;text-align:left}.card-select-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-select-caret{flex:none;color:#fff;font-size:12px}.card-select-popover{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:60;max-height:60vh;display:flex;flex-direction:column;overflow:hidden;background:#15161a;border:1px solid var(--line);border-radius:8px;box-shadow:0 12px 30px rgba(0,0,0,.6)}.card-select-above{top:auto;bottom:calc(100% + 4px)}.card-select-backdrop{position:fixed;inset:0;z-index:59;background:rgba(0,0,0,.5)}.card-select-scroll{flex:1 1;min-height:0;overflow-y:auto}.card-select-fixed.card-select-sheet{height:70vh}.card-select-sheet{position:fixed;top:auto;left:0;right:0;bottom:0;max-height:70vh;border-radius:12px 12px 0 0;padding-bottom:env(safe-area-inset-bottom)}.card-select-group{position:-webkit-sticky;position:sticky;top:0;z-index:20;padding:6px 10px 4px;font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-size:14px;letter-spacing:.06em;color:var(--accent);background:#15161a;border-bottom:1px solid var(--line)}.card-select-option{display:flex;gap:10px;align-items:flex-start;width:100%;padding:8px 10px;border:0;border-bottom:1px solid hsla(0,0%,100%,.06);background:none;color:var(--text);font:inherit;text-align:left;cursor:pointer}.card-select-option:last-child{border-bottom:0}.card-select-option:hover{background:hsla(0,0%,100%,.06)}.card-select-popover button.card-select-option.active{background:rgba(242,181,68,.22);color:var(--text);box-shadow:inset 3px 0 0 var(--accent)}.card-select-popover button.card-select-option.active .card-select-name{color:var(--accent)}.card-select-blank,.card-select-option img{flex:none;width:48px;border-radius:4px}.card-select-body{display:flex;flex-direction:column;gap:3px;min-width:0}.card-select-name{font-size:14px;font-weight:600}.card-select-name em{margin-left:6px;font-style:normal;font-weight:400;font-size:11px;color:var(--muted)}.card-select-text{display:block;font-size:11px;line-height:1.35;color:var(--muted)}.card-select-text .card-section+.card-section{margin-top:2px}.card-select-text .card-section b{color:var(--text);font-weight:600}.stack-option{align-items:center}.stack-fan-wrap{flex:none;z-index:0}.stack-fan,.stack-fan-wrap{display:block;position:relative}.stack-fan{width:96px;height:66px;overflow:visible}.stack-fan img{position:absolute;left:50%;bottom:0;width:40px;border-radius:3px;transform-origin:50% 120%;box-shadow:0 2px 6px rgba(0,0,0,.7)}.card-stack-preview{position:fixed;z-index:350;display:flex;gap:8px;pointer-events:none}.card-stack-preview img{border-radius:10px;box-shadow:0 16px 40px rgba(0,0,0,.75)}.card-modal-strip{display:flex;gap:10px;overflow-x:auto;max-width:96vw;padding:8px;scroll-snap-type:x mandatory}.card-modal-strip img{flex:none;width:min(62vw,260px);border-radius:10px;scroll-snap-align:center;box-shadow:0 16px 40px rgba(0,0,0,.75)}.picked-stacks{display:flex;flex-direction:column;gap:12px;margin-top:4px}.picked-stack-head{display:flex;align-items:center;gap:10px;margin-bottom:6px}.picked-stack-cards{display:flex;gap:6px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.picked-stack-cards .card{flex:none}.hero-classes{display:flex;gap:4px;align-items:center}.hero-classes img{width:18px;height:18px}.hero-icon{display:inline-flex;align-items:center;gap:2px}.hero-icon i{font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-style:normal;font-size:11px;letter-spacing:.04em;color:var(--muted);opacity:.8}.picked-stacks-totals .deck-summary{padding:4px 0 8px;gap:10px}.picked-stacks-totals .deck-tally img{width:22px;height:22px}.stack-check{flex:none;margin-left:auto;font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-size:20px;color:var(--accent)}.card-select-option:disabled{opacity:.4;cursor:default}.stack-option.active:disabled{opacity:.85}.stack-option.led-option{box-shadow:inset 0 0 0 1px rgba(242,181,68,.5)}.stack-hint{font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-size:12px;letter-spacing:.05em;color:var(--accent);opacity:.85}.stack-meta{font-size:11px;color:var(--muted)}.pick-text{margin:0;font-size:12px;line-height:1.4;color:var(--muted)}.card-section,.pick-text{display:block}.card-section+.card-section{margin-top:4px}.pick-text .card-section b{color:var(--text);font-weight:600}.pick-card{flex:none}.pick-card .card,.pick-card .city-empty{width:var(--card-w)}.lobby label>select,.mastermind-pick select{font:inherit;padding:8px 10px;border-radius:6px;border:1px solid var(--line);background:var(--panel);color:var(--text)}.mastermind-pick select{flex:1 1}.lobby .epic-toggle{flex-direction:row;align-items:center;gap:6px;padding:0 12px;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--text);cursor:pointer;white-space:nowrap}.darkness{position:relative}.darkness>.card,.darkness>.city-empty{position:relative;z-index:1}.darkness:after,.darkness:before{z-index:2;content:"";position:absolute;left:-16%;right:-16%;top:-22%;bottom:0;pointer-events:none;background-repeat:repeat-y;filter:blur(6px);-webkit-mask-image:linear-gradient(0deg,rgba(0,0,0,.6) 0,#000 20%,#000 60%,transparent);mask-image:linear-gradient(0deg,rgba(0,0,0,.6) 0,#000 20%,#000 60%,transparent)}.darkness:before{background-image:radial-gradient(45% 38% at 30% 28%,rgba(0,0,0,.95),transparent 70%),radial-gradient(40% 34% at 72% 62%,rgba(118,50,185,.75),transparent 70%),radial-gradient(34% 30% at 48% 90%,rgba(0,0,0,.9),transparent 70%);background-size:100% 140px;animation:smoke-scroll-a 3.2s linear infinite}.darkness:after{background-image:radial-gradient(42% 36% at 66% 20%,rgba(0,0,0,.85),transparent 70%),radial-gradient(36% 32% at 26% 55%,rgba(160,95,230,.55),transparent 70%),radial-gradient(40% 34% at 58% 84%,rgba(0,0,0,.9),transparent 70%);background-size:100% 190px;animation:smoke-scroll-b 4.6s linear infinite}@keyframes smoke-scroll-a{0%{background-position:0 0}to{background-position:0 -140px}}@keyframes smoke-scroll-b{0%{background-position:0 0}to{background-position:0 -190px}}.hq-slot{display:flex;flex-direction:column;align-items:center;gap:4px}.card-alias{position:absolute;top:calc(3 * var(--card-unit) / 1.3);left:0;right:0;padding:calc(1.5 * var(--card-unit)) calc(3 * var(--card-unit));background:linear-gradient(90deg,transparent,rgba(0,0,0,.8) 18%,rgba(0,0,0,.8) 82%,transparent);color:#ffd23f;font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-size:calc(10.5 * var(--card-unit));font-weight:400;letter-spacing:.03em;text-shadow:2px 2px 0 #111,0 0 8px #000;-webkit-text-stroke:.5px #111;white-space:normal;overflow-wrap:break-word;line-height:1.1;text-align:center;z-index:2;pointer-events:none}.space-highlight{cursor:pointer}.space-highlight .city-empty,.space-highlight>.card,.space-highlight>.card-wrap>.card{border-color:var(--accent);border-radius:8px;animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{0%,to{box-shadow:0 0 0 3px var(--accent),0 0 18px rgba(242,181,68,.6)}50%{box-shadow:0 0 0 3px var(--accent),0 0 6px rgba(242,181,68,.3)}}.card-flight{position:fixed;z-index:280;pointer-events:none;border-radius:8px;overflow:hidden;transform-origin:top left;box-shadow:0 14px 30px rgba(0,0,0,.6);background:var(--panel-2)}.card-flight img{display:block;width:100%;height:100%;object-fit:cover}.card-flight.card-flight-clone{background:none}.card-flight.card-flight-clone>*{width:100%;height:100%;box-sizing:border-box}.enemy-stat{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted);max-width:var(--card-w)}.enemy-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attack-icon{position:relative;width:22px;height:22px;flex:none}.attack-icon svg{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:var(--danger);stroke-width:3.5;stroke-linecap:round}.attack-value{position:absolute;inset:0;display:flex;align-items:center;font-weight:500;font-size:12px;color:#fff;text-shadow:0 0 3px #000,0 0 3px #000,0 1px 2px #000}.attack-value,.mastermind .enemy-stat{justify-content:center}.announcement-lines{display:flex;flex-direction:column;gap:6px;align-items:flex-start;text-align:left}.announcement:not(.announcement-with-card):not(.announcement-with-minis) .announcement-lines{align-items:center;text-align:center}.announcement-with-minis{text-align:left}.announcement-with-minis .announcement-line{width:100%}.announcement-line{display:flex;align-items:flex-start;gap:8px;font-size:clamp(12px,1.5vw,15px);font-weight:600;letter-spacing:0;color:#d7d9de}.announcement-line-player{color:#bfe8c3}.announcement-block{display:flex;align-items:flex-start;gap:8px}.announcement-block-lines{display:flex;flex-direction:column;gap:6px;min-width:0}.announcement-mini-strip{display:flex;gap:3px;flex:none;margin-top:.15em}.announcement-mini-strip .card{width:34px;border-width:1px;border-radius:3px;cursor:zoom-in}.announcement-mini-strip .card-alias{display:none}.announcement-mini-empty{width:34px;flex:none}.announcement-detail{display:block;font-size:clamp(11px,1.3vw,13px);font-weight:500;letter-spacing:0;color:var(--muted);max-width:52ch;line-height:1.35}.announcement-line.announcement-text{font-size:inherit;font-weight:inherit;color:inherit}.announcement-text+.announcement-detail{margin-top:-2px}.game-action{padding:2px 8px;font-size:11px;line-height:1.4;border-radius:6px;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer;color:#0af;border-color:rgba(0,170,255,.55);background:rgba(0,170,255,.1)}.game-action:hover{color:#fff;border-color:#0af;background:rgba(0,170,255,.3)}.game-action-end{color:#ff6b6b;border-color:rgba(220,60,60,.55);background:rgba(220,60,60,.1)}.game-action-end:hover{color:#fff;border-color:var(--danger);background:rgba(220,60,60,.35)}.reset-settings{width:100%;margin-top:4px}.zone-note{margin-left:10px;font-size:12px;color:#d9c7a0;opacity:.9}.game-clock .game-action:first-of-type{margin-left:6px}.deck-entry-hero{display:block;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.announcement-hint{position:absolute;left:18px;right:120px;bottom:13px;font-size:11px;font-weight:500;letter-spacing:.02em;color:hsla(0,0%,100%,.4);text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.announcement-no-expiry .announcement-hint{right:18px}.setting-disabled{opacity:.45}.setting-divider{width:60%;margin:0 auto;border:0;border-top:1px solid var(--line)}.log-jump{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);padding:5px 12px;font-size:12px;font-weight:600;border-radius:999px;border:1px solid var(--accent);background:rgba(15,16,19,.92);color:var(--accent);box-shadow:0 8px 20px rgba(0,0,0,.5);cursor:pointer;animation:pop .25s ease-out}.log-count{color:var(--muted);opacity:.8}.log-divider{color:var(--accent)}.log-button{padding:4px 6px;line-height:1;background:none;border:0;color:#fff;cursor:pointer}.log-button svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.log-button:hover{color:var(--accent)}.log-button.active,.log-button.active:hover{color:var(--ok);background:none;border:0}.card-modal-closing{opacity:0}.hero-stat{gap:6px;width:var(--card-w);font-size:12px;color:var(--muted)}.hero-stat,.hero-stat-left{display:flex;align-items:center}.hero-stat-left{gap:2px;flex:none}.hero-name{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}.stat-icon{position:relative;width:32px;height:32px;flex:none}.stat-icon img{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.stat-value{inset:0;align-items:center;justify-content:center;font-weight:500;font-size:15px;color:#fff;text-shadow:0 0 3px #000,0 0 3px #000,0 1px 2px #000}.card-icons,.stat-value{position:absolute;display:flex}.card-icons{top:4%;left:3%;flex-direction:column;gap:2px;width:17%;z-index:2;pointer-events:none}.card-icons img{width:100%;height:auto;aspect-ratio:1;transform:none;filter:drop-shadow(0 1px 2px rgba(0,0,0,.8))}.card-sm .card-icons{display:none}@media (max-width:900px){.announcement-card-strip{display:none}.announcement-with-card .announcement-mini-strip{display:flex}.announcement-with-card{text-align:center}.announcement-with-card .announcement-lines{align-items:stretch;text-align:left;width:100%}.announcement{min-width:min(92vw,380px);max-width:92vw;padding:16px 18px 44px}.announcement-mini-strip .card{width:40px;cursor:default}}.debug-log{display:flex;flex-direction:column;height:100%;font-size:11px}.debug-toolbar{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:8px;border-bottom:1px solid var(--line)}.debug-toolbar button{padding:3px 8px;font-size:11px}.debug-search{flex:1 1;min-width:120px;font:inherit;font-size:11px;padding:3px 8px;border-radius:6px;border:1px solid var(--line);background:var(--panel);color:var(--text)}.debug-turn{display:flex;flex-direction:column;gap:2px}.debug-divider{cursor:pointer;margin:10px 0 4px}.debug-divider:hover span{color:var(--text)}.debug-steps{overflow:auto;flex:1 1;padding:6px 8px;display:flex;flex-direction:column;gap:2px}.debug-step{cursor:pointer;display:flex;gap:8px}.debug-step:hover{color:var(--text)}.debug-seq{flex:none;min-width:32px;text-align:right;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.debug-choice{color:var(--accent)}.debug-current{color:var(--text);border-left-color:var(--ok);background:hsla(0,0%,100%,.05)}.table.rewound .board{outline:2px dashed var(--ok);outline-offset:-2px}.attack-breakdown{margin-top:6px;padding:8px 10px;border-radius:8px;background:rgba(0,0,0,.92);color:#d6d8de;font-size:12px;line-height:1.4;box-shadow:0 12px 30px rgba(0,0,0,.7)}.attack-breakdown-total{font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-size:16px;letter-spacing:.05em;color:var(--accent);margin-bottom:4px}.attack-part{display:flex;justify-content:space-between;gap:12px}.attack-part b{color:#fff;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.keyword-notes{margin-top:6px;padding:8px 10px;border-radius:8px;background:rgba(0,0,0,.92);color:#d6d8de;font-size:12px;line-height:1.35;box-shadow:0 12px 30px rgba(0,0,0,.7)}.keyword-notes p{margin:0}.keyword-notes p+p{margin-top:6px}.keyword-notes b{color:var(--accent)}.inline-icon{height:1.3em;width:1.3em;vertical-align:-.35em;margin:0 1px;fill:none;stroke:var(--danger);stroke-width:3.5;stroke-linecap:round}.inline-icon.inline-recruit{width:2em;height:2em;margin:-.5em -.45em;vertical-align:-.55em}.card-modal .keyword-notes{overflow:auto;max-height:30vh}.card-preview .keyword-notes{position:absolute;margin:0;width:250px}.card-preview.side-right .keyword-notes{left:100%;top:0;margin-left:8px}.card-preview.side-left .keyword-notes{right:100%;top:0;margin-right:8px}.card-preview.side-bottom .keyword-notes,.card-preview.side-top .keyword-notes{left:0;width:100%}.card-preview.side-bottom .keyword-notes{top:100%;margin-top:6px}.card-preview.side-top .keyword-notes{bottom:100%;margin-bottom:6px}.focus-backdrop{position:fixed;inset:0;z-index:300;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(0,0,0,.62)}.focus-modal{display:flex;flex-direction:column;gap:14px;width:min(92vw,900px);max-height:90dvh;overflow:auto;padding:16px 18px;border:1px solid var(--accent);border-radius:12px;background:var(--panel);box-shadow:0 24px 60px rgba(0,0,0,.7)}.focus-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.focus-head .prompt{flex:1 1}.focus-head .prompt h2{color:var(--accent)}.focus-head .minimize{flex:none;padding:6px 12px;font-size:12px}.focus-modal .fan{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.focus-modal.focus-single{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;align-items:start;grid-column-gap:22px;column-gap:22px;width:min(92vw,760px)}.focus-modal.focus-single .fan{grid-column:1;grid-row:1/span 2;align-self:center}.focus-modal.focus-single .focus-head{grid-column:2;grid-row:1}.focus-modal.focus-single .zone-label{grid-column:2;grid-row:2}@media (max-width:900px){.focus-modal.focus-single{display:flex}}.show-options-row{display:flex;justify-content:center;padding-bottom:8px}.show-options{pointer-events:auto;padding:10px 24px;font-size:15px;font-weight:700;color:#14120c;background:var(--accent);border:none;border-radius:999px;box-shadow:0 0 12px 3px rgba(255,138,61,.55),0 0 30px 10px rgba(0,0,0,.6);animation:show-options-glow 3.6s ease-in-out infinite}@keyframes show-options-glow{0%,to{box-shadow:0 0 10px 2px rgba(255,138,61,.45),0 0 30px 10px rgba(0,0,0,.6)}50%{box-shadow:0 0 24px 9px rgba(255,138,61,.95),0 0 30px 10px rgba(0,0,0,.6)}}.debug-add{display:flex;gap:4px;width:100%}.debug-add input{flex:1 1;min-width:0;font-size:11px;padding:3px 6px}@media (max-width:900px){.focus-backdrop{padding:8px;align-items:flex-end}.focus-modal{width:100%;max-height:85dvh}}.debug-players{display:flex;flex-direction:column;gap:4px;width:100%;padding-top:6px;border-top:1px solid var(--line)}.debug-player{display:flex;align-items:center;gap:6px;min-width:0}.debug-player-name{flex:none;color:var(--text)}.debug-player-id{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;color:var(--muted)}.pile-choice>.card{cursor:pointer}.debug-toolbar .debug-rewind{color:#fff;background:var(--danger);border-color:var(--danger)}.debug-toolbar .debug-rewind:disabled{opacity:.4}.deck-summary{display:flex;flex-wrap:wrap;align-items:center;gap:14px;padding:8px 16px;border-bottom:1px solid var(--line);font-size:15px;font-weight:600}.deck-tally{display:inline-flex;align-items:center;gap:4px}.deck-tally img{width:30px;height:30px}.deck-tally-gap{width:1px;height:18px;background:var(--line)}.attack-icon-art{width:30px;height:30px}.attack-icon-art img{position:absolute;inset:-30%;width:160%;height:160%;pointer-events:none}.attack-icon-art .attack-value{font-size:14px}.card.card-mini{width:calc(var(--card-w) * 1.25);aspect-ratio:1;overflow:visible;border-width:2px 2px 5px;border-bottom-color:#1a1b20;background:#101114;box-shadow:0 4px 6px rgba(0,0,0,.45),0 1px 0 hsla(0,0%,100%,.08)}.card.card-mini.card-highlight{border-color:var(--accent);box-shadow:0 0 0 2px rgba(242,181,68,.55),0 4px 12px rgba(242,181,68,.4),0 4px 6px rgba(0,0,0,.45)}.card.card-mini.card-highlight:after{content:"";position:absolute;inset:-4px;z-index:0;border-radius:10px;pointer-events:none;background:linear-gradient(0deg,rgba(242,181,68,.75),rgba(242,181,68,.25) 55%,rgba(242,181,68,0));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;padding:4px}.card-mini .mini-art{border-radius:6px 6px 4px 4px}.card-mini .card-badge{top:-8px;right:-8px;bottom:auto}.card-mini .mini-art{position:absolute;inset:0;overflow:hidden;border-radius:6px}.card-mini .mini-art img{position:absolute;left:-15%;top:0;width:130%;height:130%;object-fit:cover;object-position:50% 12%;transform:none}.card-mini .mini-top{position:absolute;top:0;left:0;right:0;z-index:2;padding:11px 3px 6px;border-radius:6px 6px 0 0;background:linear-gradient(180deg,rgba(0,0,0,.85),transparent);pointer-events:none}.card-mini .mini-icons{position:absolute;top:-12px;left:50%;transform:translateX(-50%);z-index:3;display:flex;gap:2px;pointer-events:none}.card-mini .mini-icons img{width:24px;height:24px;flex:none;filter:drop-shadow(0 1px 2px rgba(0,0,0,.9))}.card-mini .mini-name{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.15;font-size:calc(var(--card-unit) * 7.5);font-weight:700;color:#fff;text-shadow:0 0 3px #000,0 0 3px #000;letter-spacing:.02em;text-transform:uppercase}.card .mini-stats{left:50%;bottom:calc(-18px * var(--card-scale));transform:translateX(-50%);gap:2px}.card .mini-stats,.card-mini .mini-powers{position:absolute;z-index:3;display:flex;pointer-events:none}.card-mini .mini-powers{left:-3px;bottom:-5px;gap:1px}.card-mini .mini-powers img{width:16px;height:16px;flex:none;padding:1px;border-radius:50%;background:rgba(0,0,0,.3);filter:drop-shadow(0 1px 1px rgba(0,0,0,.5))}.card-mini .mini-cost{position:absolute;right:-7px;bottom:-9px;z-index:3;width:26px;height:26px;pointer-events:none}.card-mini .mini-cost img{position:absolute;inset:0;width:100%;height:100%;filter:drop-shadow(0 1px 2px rgba(0,0,0,.9))}.card-mini .mini-cost span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;text-shadow:0 0 3px #000,0 0 3px #000,0 0 6px #000}.card .mini-stat{position:relative;width:calc(34px * var(--card-scale));height:calc(34px * var(--card-scale));flex:none}.card .mini-stat img,.card .mini-stat svg{position:absolute;inset:-20%;width:140%;height:140%}.card .mini-stat svg{inset:0;width:100%;height:100%;filter:drop-shadow(0 1px 2px rgba(0,0,0,.9))}.card-mini .mini-cost svg{position:absolute;inset:0;width:100%;height:100%}.card .mini-stats-compact{gap:0;left:2px;right:2px;transform:none;justify-content:space-evenly;bottom:calc(-11 * var(--card-unit))}.card .mini-stats-compact .mini-stat{width:calc(20 * var(--card-unit));height:calc(20 * var(--card-unit));margin:0}.card .mini-stats-compact .mini-stat span{font-size:calc(11 * var(--card-unit))}.card-mini .mini-cost.mini-cost-compact{width:calc(20 * var(--card-unit));height:calc(20 * var(--card-unit));right:calc(-5 * var(--card-unit));bottom:calc(-6 * var(--card-unit))}.card-mini .mini-cost.mini-cost-compact span{font-size:calc(10 * var(--card-unit))}@font-face{font-family:ChampionsIcons;src:url(/fonts/ChampionsIcons.ttf) format("truetype");font-weight:400;font-style:normal}.champ-glyph{font-family:ChampionsIcons,sans-serif;font-style:normal;line-height:1}.card-mini .mini-cost .champ-glyph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:20px;color:#f2f2f2;text-shadow:0 1px 2px rgba(0,0,0,.9)}.action-sheet-backdrop{position:fixed;inset:0;z-index:60;background:rgba(0,0,0,.55);display:flex;align-items:flex-end;justify-content:center}.action-sheet{width:min(520px,100%);max-height:80vh;overflow-y:auto;background:#1c1e26;border:1px solid #3a3d4a;border-bottom:none;border-radius:14px 14px 0 0;padding:14px 14px calc(14px + env(safe-area-inset-bottom));box-shadow:0 -8px 30px rgba(0,0,0,.6)}.action-sheet-head{display:flex;gap:12px;align-items:flex-start;margin-bottom:12px}.action-sheet-head .card{flex:none}.action-sheet-head p{margin:4px 0 0;font-size:12px;line-height:1.35}.action-sheet-options{display:flex;flex-direction:column;gap:8px}.action-sheet-options button{width:100%;padding:12px 14px;border-radius:10px;border:1px solid #3a3d4a;background:#262935;color:#f2f2f2;font-size:15px;text-align:left;cursor:pointer}.action-sheet-options button.action-attack{border-color:#d9483b}.action-sheet-options button.action-thwart{border-color:#3d9be9}.action-sheet-options button.action-flip,.action-sheet-options button.action-recover{border-color:#e6a23c}.action-sheet-options button.action-cancel{background:transparent;color:#aaa;text-align:center}.card.card-mini.card-landscape{width:calc(var(--card-w) * 1.25 * 1.4);aspect-ratio:7/5}.card-mini.card-landscape .mini-art img{left:0;top:0;width:100%;height:100%}.champ-character{position:relative;padding-top:9px;flex:none}.champ-health{position:absolute;top:0;left:50%;transform:translateX(-50%);z-index:4;white-space:nowrap;pointer-events:none;font-size:11px;padding:2px 6px;border-radius:10px;color:#fff;border:1px solid hsla(0,0%,100%,.25);background:rgba(0,0,0,.85)}@media (max-width:900px) and (hover:hover){.hand-bar .hand-slot:hover{z-index:5}}.hand-bar .hand-slot{position:relative;z-index:0}.debug-actions{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}.setup-section{border:1px solid hsla(0,0%,100%,.12);border-radius:8px;background:rgba(0,0,0,.18)}.setup-section>summary{cursor:pointer;list-style:none;padding:10px 12px;color:var(--muted);font-size:14px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.setup-section>summary::-webkit-details-marker{display:none}.setup-section>summary:before{content:"▸";display:inline-block;width:1.1em;transition:transform .15s}.setup-section[open]>summary:before{transform:rotate(90deg)}.setup-section[open]>summary{color:var(--text,#f2f2f2)}.setup-section>:not(summary){padding:0 12px 12px}.setup-section .hero-picker button{opacity:.9}.setup-section .hero-picker button.active{opacity:1}.setup-section .epic-toggle{border:none;background:none;padding:0 4px}.setup-section select{color-scheme:dark}.setup-sets{gap:12px}.setup-sets p{margin:0}.filter-bar{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border:1px solid hsla(0,0%,100%,.12);border-radius:8px;background:rgba(0,0,0,.18)}.filter-bar-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}.filter-facet.card-select{width:auto}.filter-bar .card-select-trigger.filter-chip{width:auto;height:32px;gap:6px;padding:.25rem .75rem;border-radius:16px;font-size:.8rem;white-space:nowrap}.filter-bar .card-select-trigger.filter-chip-include{border-color:var(--accent)}.filter-active-count{min-width:18px;padding:0 5px;border-radius:9px;background:var(--accent);color:#15161a;font-size:11px;font-weight:700;text-align:center}.filter-popover:not(.card-select-sheet){min-width:280px;right:auto}.filter-popover-header{flex-wrap:wrap}.filter-popover .filter-popover-header input{flex-basis:100%}.filter-popover-title{flex:1 1;font-size:12px;color:var(--muted)}.filter-hint{margin:0;padding:6px 10px;font-size:11px;color:var(--muted)}.card-select-popover button.card-select-option.filter-option{align-items:center;padding:6px 10px}.card-select-popover button.card-select-option.filter-option:has(.filter-option-text){align-items:flex-start}.filter-option:has(.filter-option-text) .filter-mark{margin-top:2px}.card-select-popover button.card-select-option.filter-option-exclude{background:rgba(216,74,74,.16)}.filter-option-exclude .filter-option-label{text-decoration:line-through}.filter-mark{flex:none;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:4px;border:1px solid var(--line);font-size:11px;line-height:1}.filter-mark-include{border-color:var(--accent);background:var(--accent);color:#15161a}.filter-mark-exclude{border-color:var(--danger);background:var(--danger);color:#fff}.card-select-option img.filter-icon,.filter-icon{flex:none;width:18px;height:18px;border-radius:0}.filter-swatch{flex:none;width:10px;height:10px;border-radius:50%}.filter-option-body{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.filter-option-text{font-size:11px;line-height:1.35;color:var(--muted)}.filter-option-exclude .filter-option-text{text-decoration:none}.filter-count{flex:none;margin-left:auto;font-size:11px;color:var(--muted)}.filter-link{background:none;border:none;padding:2px 4px;color:var(--accent);font:inherit;cursor:pointer;text-decoration:underline}.filter-link,.filter-summary{font-size:12px}.filter-bar-footer .filter-link{padding:0}.filter-bar.filter-bar-plain{padding:0;border:none;background:none}.setup-section .filter-bar.filter-bar-plain{padding:0 12px 8px}.metrics{max-width:1280px;margin:24px auto 60px;padding:0 16px;display:flex;flex-direction:column;gap:20px}.metrics-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px}.metrics-head h1{margin:0 0 4px}.metrics-head p{margin:0}.metrics-home{align-self:center;color:var(--muted);font-size:13px;margin-left:8px}.metrics-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));grid-gap:10px;gap:10px}.metrics-stat{background:rgba(0,0,0,.25);border:1px solid hsla(0,0%,100%,.1);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:4px}.metrics-stat-value{font-size:22px;font-weight:700;color:var(--accent)}.metrics-stat-title{font-size:11px;letter-spacing:.06em}.metrics-group h2,.metrics-stat-title{text-transform:uppercase;color:var(--muted)}.metrics-group h2{font-size:14px;letter-spacing:.08em;margin:0 0 10px}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:12px;gap:12px}.metrics-card{background:rgba(0,0,0,.25);border:1px solid hsla(0,0%,100%,.1);border-radius:10px;padding:10px 12px 8px;min-width:0}.metrics-card h3{margin:0 0 6px;font-size:13px;font-weight:600;color:#d7d9de}.metrics-canvas{position:relative;height:180px}.metrics-empty{color:var(--muted);padding:40px 0;text-align:center}.attack-ghost{position:fixed;z-index:400;margin:0;pointer-events:none;box-shadow:0 12px 28px rgba(0,0,0,.7),0 0 0 2px rgba(242,181,68,.6);transform-origin:center}.attack-hidden{visibility:hidden}.attack-impact{position:fixed;z-index:399;width:90px;height:90px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(255,240,200,.95) 0,rgba(242,181,68,.6) 35%,rgba(242,181,68,0) 70%)}.end-turn.end-game{background:var(--ok);border-color:var(--ok);color:#0d1a0e}.win-note{flex-basis:100%;color:var(--ok);font-size:13px;font-weight:600}.report-button{padding:6px 12px;font-size:13px;border-color:var(--accent);color:var(--accent);background:transparent}.report-modal{width:min(900px,100%)}.report-modal header{position:relative}.report-close{margin-left:auto;padding:4px 10px;font-size:13px}.report-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));grid-gap:8px;gap:8px;padding:12px 16px 4px}.report-tile{background:rgba(0,0,0,.3);border:1px solid hsla(0,0%,100%,.1);border-radius:8px;padding:8px 10px;display:flex;flex-direction:column;gap:2px}.report-value{font-size:20px;font-weight:700;color:var(--accent)}.report-label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.report-table-wrap{overflow:auto;padding:8px 16px 16px}.report-table{width:100%;border-collapse:collapse;font-size:13px}.report-table td,.report-table th{text-align:right;padding:6px 10px;border-bottom:1px solid hsla(0,0%,100%,.08);white-space:nowrap}.report-table td:first-child,.report-table th:first-child{text-align:left;color:var(--muted)}.report-table th{color:var(--accent);font-weight:600}.help-layer{position:fixed;inset:0;z-index:500}.help-spot{position:fixed;border-radius:12px;box-shadow:0 0 0 9999px rgba(0,0,0,.62),0 0 0 4px #ffd23f,0 0 24px rgba(255,210,63,.6);pointer-events:none;transition:left .25s ease,top .25s ease,width .25s ease,height .25s ease}.help-spot-none{inset:0;border-radius:0;box-shadow:none;background:rgba(0,0,0,.62)}.help-bubble{position:fixed;background:#fffdf5;color:#111;border:4px solid #111;border-radius:16px;padding:14px 16px 12px;box-shadow:8px 8px 0 #111;font-family:Segoe UI,Helvetica,Arial,sans-serif;transition:left .25s ease,top .25s ease}.help-bubble:after,.help-bubble:before{content:"";position:absolute;left:var(--tail-x);width:0;height:0;border-left:16px solid transparent;border-right:16px solid transparent;transform:translateX(-50%)}.help-tail-top:before{top:-24px;border-bottom:24px solid #111}.help-tail-top:after{top:-17px;border-bottom:20px solid #fffdf5}.help-tail-bottom:before{bottom:-24px;border-top:24px solid #111}.help-tail-bottom:after{bottom:-17px;border-top:20px solid #fffdf5}.help-counter-wrap{position:absolute;top:-14px;right:14px}.help-counter{display:inline-flex;align-items:center;gap:4px;background:#ffd23f;color:#111;border:3px solid #111;border-radius:999px;padding:2px 8px 2px 10px;font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-size:15px;letter-spacing:.06em;cursor:pointer}.help-caret{font-size:12px;line-height:1}.help-jump-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:1;min-width:200px;max-height:50vh;overflow-y:auto;background:#fffdf5;border:3px solid #111;border-radius:10px;box-shadow:6px 6px 0 #111;padding:4px}.help-counter-left .help-jump-menu{right:auto;left:0}.help-jump-menu button{display:flex;align-items:center;gap:8px;width:100%;padding:5px 8px;border:0;border-radius:6px;background:none;color:#111;font:inherit;font-size:13px;text-align:left;cursor:pointer}.help-jump-menu button:hover{background:rgba(0,0,0,.06)}.help-jump-menu button.active{background:#ffd23f}.help-jump-number{font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-size:13px;letter-spacing:.06em;min-width:18px;text-align:right;color:#555}.help-counter-left{right:auto;left:14px}.help-bubble h3{margin:0 0 6px;font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-size:30px;letter-spacing:.04em;line-height:1;color:#d21f2b;text-shadow:2px 2px 0 #111;-webkit-text-stroke:.5px #111}.help-body{display:flex;gap:12px;align-items:flex-start;margin:0 0 12px}.help-chip{flex:0 0 auto;display:block;width:72px;margin:2px 6px 4px 2px;transform:rotate(-4deg)}.help-chip .card{width:72px}.help-image{flex:0 0 auto;width:72px;border:3px solid #111;border-radius:6px;box-shadow:3px 3px 0 #111;transform:rotate(-4deg);margin:2px 6px 4px 2px}.help-bubble p{margin:0;font-size:15px;line-height:1.4;white-space:pre-line}.help-bubble p b{font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-weight:400;font-size:17px;letter-spacing:.05em;color:#111}.help-actions{display:flex;gap:8px;justify-content:flex-end}.help-actions button{font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-size:17px;letter-spacing:.06em;padding:6px 14px;border:3px solid #111;border-radius:10px;box-shadow:3px 3px 0 #111;color:#111;background:#fff;cursor:pointer}.help-actions button:active{transform:translate(2px,2px);box-shadow:1px 1px 0 #111}.help-actions .help-next{background:#ffd23f}.help-actions .help-skip{margin-right:auto;background:#eee}.card-back.card-back-plain{background:radial-gradient(circle at 50% 40%,#3b2a5a 0,#1c1e26 70%)}.card .mini-stat span.mini-boosted{color:var(--accent)}.card .mini-stat span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:calc(16px * var(--card-scale));font-weight:700;color:#fff;text-shadow:0 0 3px #000,0 0 3px #000,0 0 6px #000}.card-mini .card-alias,.card-mini .card-badge{z-index:3}.board-mini .city-empty{width:calc(var(--card-w) * 1.25);aspect-ratio:1}.board-mini .city,.board-mini .fan,.board-mini .hq{padding-top:12px;padding-bottom:16px;transform:perspective(900px) rotateX(22deg);transform-origin:50% 100%}.card-mini .card-alias{top:6px}.card-mini.card-aliased .mini-name{visibility:hidden}.strike-icon{position:fixed;z-index:340;pointer-events:none;filter:drop-shadow(0 2px 6px rgba(0,0,0,.8))}.card.card-badged{overflow:visible}.card-badged .card-art{position:absolute;inset:0;overflow:hidden;border-radius:6px}.card-badged .mini-stats{bottom:calc(-18px * var(--card-scale))}.board:not(.board-mini) .city,.board:not(.board-mini) .mastermind-row{padding-bottom:16px}.card-stats-inplace .mini-stats{inset:0;transform:none;display:block}.card-stats-inplace .mini-stat{position:absolute;height:auto;aspect-ratio:1}.card-stats-inplace .mini-stat-recruit{left:-3.5%;top:62.8%;width:27%}.card-stats-inplace .mini-stat-attack{left:-3%;top:78.3%;width:25%}.card-stats-inplace .mini-stat span{font-size:15px}.card-stats-inplace .mini-stat:not(:has(.mini-boosted)){display:none}.card-stats-inplace .mini-stat img{filter:drop-shadow(0 0 3px rgba(0,0,0,.9)) drop-shadow(0 0 6px rgba(0,0,0,.7))}@media (max-width:900px){.row{border-radius:0}}.pile-short .card{height:calc(var(--card-w) * .38);aspect-ratio:auto}.pile-short .card img{object-position:50% 12%}.optional-rules{display:flex;flex-direction:column;gap:12px}.houserule-tag{margin-right:6px;font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-weight:400;letter-spacing:.04em;color:var(--accent)}.optional-rule-text{display:block;margin-top:2px;font-size:12px;line-height:1.35}.hero-deck-column{align-items:center;gap:6px}.hq-reroll{white-space:nowrap}.hq-reroll:disabled{opacity:.45;cursor:default}.pile-note{font-size:clamp(8px,calc(var(--card-w) * .09),15px);line-height:1.2;margin-top:-2px;color:var(--muted);text-align:center;max-width:calc(var(--card-w) + 12px)}.card .mini-stat span,.card-badge,.card-mini .mini-cost span,.champ-health,.pool-badge .pool-value,.pool-value,.stat-value{font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-weight:400;letter-spacing:.04em}.card-badge{font-size:calc(9 * var(--card-unit));font-weight:300;padding:calc(1 * var(--card-unit)) calc(5 * var(--card-unit));border-radius:calc(10 * var(--card-unit))}.card-mini .mini-cost span{font-size:13px}.card-mini .mini-cost.mini-cost-compact span{font-size:calc(12 * var(--card-unit))}.champ-health{font-size:13px}.setup-seat-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.setup-seat-row .card-select{flex:1 1 14rem;min-width:12rem}.setup-seat+.setup-seat{margin-top:.25rem}.hand-slot{position:relative}.resource-pips{position:absolute;top:4px;left:4px;display:flex;flex-direction:column;gap:3px;z-index:6;pointer-events:none}.resource-pip{min-width:26px;height:26px;padding:0 5px 0 6px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:2px;background:rgba(0,0,0,.82);border:1px solid hsla(0,0%,100%,.25);box-shadow:0 1px 4px rgba(0,0,0,.6)}.resource-pip b{font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-weight:400;font-size:15px;line-height:1;color:#fff;letter-spacing:.02em}.resource-pip .resource-glyph{font-size:15px}.resource-glyph-energy{color:#f5c542}.resource-glyph-mental{color:#4aa3ff}.resource-glyph-physical{color:#e8503a}.resource-glyph-wild{color:#5ccf6a}.resource-pip b.resource-doubled{color:var(--accent,#f0a020)}.card .mini-stats.mini-health{left:auto;right:calc(-5 * var(--card-unit));bottom:auto;top:calc(-6 * var(--card-unit));justify-content:flex-end}.card .mini-stats-compact.mini-health .mini-stat{width:calc(24 * var(--card-unit));height:calc(24 * var(--card-unit))}.card .mini-stat-health span{padding-bottom:calc(2 * var(--card-unit))}.champ-status{position:absolute;top:calc(22 * var(--card-unit));right:calc(-4 * var(--card-unit));z-index:4;white-space:nowrap;pointer-events:none;font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-weight:400;letter-spacing:.04em;text-transform:uppercase;font-size:calc(10 * var(--card-unit));line-height:1;padding:calc(2 * var(--card-unit)) calc(5 * var(--card-unit));border-radius:calc(8 * var(--card-unit));background:rgba(0,0,0,.75);color:#fff}.card .mini-stat .stat-glyph{font-family:ChampionsIcons,sans-serif;position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:calc(36px * var(--card-scale));text-shadow:0 0 2px #000,0 1px 3px rgba(0,0,0,.9)}.card .mini-stats-compact .mini-stat .stat-glyph{font-size:calc(23 * var(--card-unit))}.card .mini-stat .stat-glyph-attack{color:#d9483b}.card .mini-stat .stat-glyph-scheme,.card .mini-stat .stat-glyph-thwart{color:#3d9be9}.champ-character.exhausted .card{opacity:.72}.champ-character.exhausted:after{content:"✕";top:50%;transform:translate(-50%,-50%);z-index:5;font-size:calc(44 * var(--card-unit));color:#e5352b;text-shadow:0 0 3px #000,0 2px 4px rgba(0,0,0,.8)}.card .mini-stat .mini-stat-label,.champ-character.exhausted:after{position:absolute;left:50%;pointer-events:none;font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;line-height:1}.card .mini-stat .mini-stat-label{top:100%;transform:translateX(-50%);margin-top:calc(-1 * var(--card-unit));font-style:normal;font-weight:400;font-size:calc(7 * var(--card-unit));letter-spacing:.06em;color:#fff;text-shadow:0 0 2px #000,0 1px 2px #000;white-space:nowrap}.card .mini-stats.mini-health .mini-stat-label{display:none}.dark-mark{position:relative;display:inline-block;margin-left:5px;font-size:11px;line-height:1;vertical-align:-1px;white-space:nowrap}.dark-mark:before{content:"";position:absolute;inset:-55% -50%;border-radius:50%;background:radial-gradient(circle,rgba(165,90,240,.9),rgba(95,35,170,.5) 50%,transparent 74%);filter:blur(3px)}.dark-mark>span{position:relative;display:inline-block;filter:sepia(1) saturate(4) hue-rotate(225deg) brightness(1.15) drop-shadow(0 0 3px rgba(185,120,255,.95))}.family-deck{display:inline-flex;align-items:center;justify-content:center;min-width:1.4em;height:1.4em;padding:0 .35em;margin-left:.4em;border-radius:999px;font-size:.72em;font-weight:700;color:#fff;background:rgba(120,20,30,.85);border:1px solid hsla(0,0%,100%,.35);vertical-align:middle}.incursion-mark:before{background:radial-gradient(circle,rgba(255,200,80,.9),rgba(200,120,20,.5) 50%,transparent 74%)}.dimensions{display:flex;flex-wrap:wrap;gap:3px;max-width:96px;justify-content:center}.dimension{display:inline-flex;align-items:center;justify-content:center;min-width:1.5em;height:1.5em;padding:0 .3em;border-radius:999px;font-size:.68em;font-weight:700;color:#fff;background:rgba(40,60,120,.85);border:1px solid hsla(0,0%,100%,.35)}.dimension-active{background:rgba(212,160,23,.9);color:#111}.dimension-destroyed{background:rgba(60,60,60,.8);color:#ddd}.tornado-mark{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:9px;font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#e8f4ff;background:linear-gradient(135deg,#3b6d8f,#1e3a52);border:1px solid rgba(160,210,255,.7);box-shadow:0 0 8px rgba(120,190,255,.55);vertical-align:1px;white-space:nowrap}.pool-note span{display:block}.card-mini .mini-cost span.mini-boosted{color:var(--accent)}.card-mini .mini-cost-dark:before{content:"";position:absolute;inset:22%;border-radius:50%;background:radial-gradient(circle,rgba(165,90,240,.9),rgba(95,35,170,.5) 50%,transparent 74%);filter:blur(2px)}.card-mini .mini-cost-moon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-style:normal;font-size:12px;line-height:1;filter:sepia(1) saturate(4) hue-rotate(225deg) brightness(1.15) drop-shadow(0 0 2px rgba(185,120,255,.9))}.announcement-detail .card-section+.card-section{margin-top:3px}.announcement-detail .card-section b{font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-weight:400;font-size:1.15em;letter-spacing:.05em;color:#ffd23f}.card-select-thumb{display:block;flex:none}.card-select-thumb img{display:block}.fan-bleed{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;padding-bottom:6px;scrollbar-width:none}.fan-bleed::-webkit-scrollbar{display:none}@media (min-width:701px){.fan.fan-play{flex-wrap:wrap;overflow:visible;row-gap:12px}}@media (max-width:700px){.fan-bleed{margin-left:-16px;margin-right:-8px;padding-left:16px;padding-right:8px;scroll-padding-left:16px}}.champ-character .champ-attachments.captured-fan{margin-top:-26px;padding-left:10px;justify-content:center}.card-mini+.champ-attachments.captured-fan{margin-top:-14px}.champ-character>.card{position:relative;z-index:1}.champ-character>.champ-attachments.captured-fan{z-index:0}.hand-held{display:flex;flex-direction:column;align-items:center;gap:4px;margin-bottom:6px}.hand-bar .hand-held .card{pointer-events:auto}.hand-held .card{box-shadow:0 0 0 2px var(--accent),0 12px 30px rgba(0,0,0,.7);animation:hand-held-float 2.4s ease-in-out infinite}@keyframes hand-held-float{0%,to{transform:translateY(0) rotate(-1deg);box-shadow:0 0 0 2px var(--accent),0 12px 30px rgba(0,0,0,.7)}50%{transform:translateY(-8px) rotate(1deg);box-shadow:0 0 0 2px var(--accent),0 22px 36px rgba(0,0,0,.75)}}@media (prefers-reduced-motion:reduce){.hand-held .card{animation:none}}.custom-deck-list{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.custom-deck-list li{display:flex;align-items:stretch;gap:6px}.custom-deck-pick{flex:1 1;display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);cursor:pointer}.custom-deck-list li.active .custom-deck-pick{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}.custom-deck-name{font-weight:700}.custom-deck-meta{font-size:12px;color:var(--muted)}.custom-deck-view{padding:0 14px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);cursor:pointer}.champ-status-overlay{position:absolute;top:0;left:50%;width:var(--card-w);aspect-ratio:5/7;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:4%;z-index:4;pointer-events:none}.champ-status-overlay.overlay-sm{width:var(--card-sm)}.champ-status-overlay.overlay-lg{width:var(--card-lg)}.champ-status-icon{position:relative;width:44%;opacity:.78;filter:drop-shadow(0 2px 4px rgba(0,0,0,.8))}.overlay-count-2 .champ-status-icon{width:36%}.overlay-count-3 .champ-status-icon{width:28%}.champ-status-icon svg{display:block;width:100%;height:auto}.champ-status-icon b{position:absolute;right:-6%;bottom:-6%;min-width:1.4em;padding:0 .3em;border-radius:999px;background:#111;color:#fff;font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-weight:400;font-size:calc(11 * var(--card-unit));text-align:center;line-height:1.4}.pool-value.pool-boosted{color:var(--accent)}.pool.level{padding-top:4px}.pool-badge-level{width:48px;height:48px}.pool-badge-level .pool-icon{inset:0;width:100%;height:100%;opacity:.9}.pool.shield-level .pool-icon{inset:-25%;width:150%;height:150%}.pool-level-prefix{font-size:10px;font-weight:700;color:var(--accent);margin-right:2px;letter-spacing:0}.pool.level .pool-caption{font-size:8px;letter-spacing:.08em;margin-top:-2px}.pool.shield-level .pool-value{color:#9ec5ff}.pool.hydra-level .pool-value{color:#ff8a8a}.stack-options{display:flex;flex-direction:column;gap:8px;padding:6px 0}.stack-options .setting-row{max-width:640px}.stack-options .setting-sub{margin-left:28px;padding-left:12px;border-left:2px solid hsla(0,0%,100%,.15)}.setting-disabled{opacity:.5}.blocker.double-agent{outline:2px dashed rgba(255,90,90,.6);border-radius:8px}.admin-cards{display:grid;grid-template-columns:minmax(280px,380px) 1fr;grid-gap:16px;gap:16px;height:calc(100dvh - var(--nav-height));padding:12px;box-sizing:border-box;background:var(--bg,#0f1013);color:var(--text)}.admin-cards-list{display:flex;flex-direction:column;min-height:0;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.admin-cards-controls{display:flex;flex-direction:column;gap:8px;padding:10px;border-bottom:1px solid var(--line)}.admin-cards-search{font:inherit;padding:8px 10px;border-radius:8px;border:1px solid var(--line);background:var(--panel-2);color:var(--text)}.admin-cards-rows{overflow-y:auto;min-height:0;flex:1 1}.admin-card-row{display:flex;align-items:center;gap:10px;width:100%;padding:6px 10px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);text-align:left;font:inherit;cursor:pointer}.admin-card-row:hover{background:var(--panel-2)}.admin-card-row.active{background:rgba(242,181,68,.12);box-shadow:inset 3px 0 0 var(--accent)}.admin-card-row.active .card-select-name{color:var(--accent)}.admin-card-subgroup{position:-webkit-sticky;position:sticky;top:26px;z-index:19;padding:4px 10px 3px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:#15161a;border-bottom:1px solid var(--line)}.admin-card-row .card-select-thumb .card{width:44px}.admin-card-id{font-size:11px;color:var(--muted)}.admin-cards-detail{min-height:0;overflow-y:auto;border:1px solid var(--line);border-radius:12px;background:var(--panel);padding:16px}.admin-cards-head{display:flex;gap:16px;align-items:flex-start;margin-bottom:16px}.admin-cards-head h1{margin:0 0 4px;font-size:22px}.admin-cards-preview .card{width:180px}.admin-cards-text{max-width:640px;line-height:1.4}.admin-cards-pane{min-width:0;border:1px solid var(--line);border-radius:10px;background:var(--panel-2);padding:12px}.admin-cards-pane+.admin-cards-pane{margin-top:16px}.admin-pane-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}.admin-cards-pane h2{margin:0;font-size:14px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.admin-seg{display:flex;flex-wrap:wrap;gap:4px}.admin-seg a,.admin-seg button{font:inherit;font-size:12px;padding:4px 10px;border-radius:999px;border:1px solid var(--line);background:var(--panel);color:var(--muted);text-decoration:none;cursor:pointer}.admin-seg a:hover,.admin-seg button:hover{color:var(--text)}.admin-seg a.active,.admin-seg button.active{color:var(--accent);border-color:var(--accent);background:rgba(242,181,68,.12)}.admin-graph-viewport{position:relative;overflow:hidden;height:55vh;border-radius:8px;background:var(--panel);cursor:-webkit-grab;cursor:grab;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;overscroll-behavior:contain}.admin-graph-viewport.dragging{cursor:-webkit-grabbing;cursor:grabbing}.admin-graph{display:block;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;transform-origin:0 0;will-change:transform}.admin-graph-zoom{position:absolute;top:8px;right:8px;z-index:1;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:default}.admin-graph-zoom button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border-radius:50%;border:1px solid var(--line);background:var(--panel-2);color:var(--text);cursor:pointer}.admin-graph-zoom button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.admin-graph-zoom button:hover{border-color:var(--accent);color:var(--accent)}.admin-graph-zoom span{font-size:11px;text-align:center;color:var(--muted);text-shadow:0 1px 2px rgba(0,0,0,.8)}.admin-graph-edge path{fill:none;stroke:var(--line);stroke-width:1.5}.admin-graph-edge text{font-size:10px;fill:var(--muted)}.admin-graph-node rect{fill:var(--panel-2);stroke:var(--line);stroke-width:1.5;cursor:pointer}.admin-graph-node.kind-effect rect{stroke:#3fa7d6}.admin-graph-node.kind-condition rect{stroke:#a06ee1}.admin-graph-node.kind-listener rect{stroke:#d84a4a}.admin-graph-node.kind-predicate rect{stroke:#4caf50;fill:rgba(76,175,80,.12)}.admin-graph-node.kind-selector rect{stroke:#2bb5a0;fill:rgba(43,181,160,.12)}.admin-graph-label{font-size:12px;font-weight:700;fill:var(--text)}.admin-graph-node.kind-effect .admin-graph-label{fill:#8fd3f4}.admin-graph-node.kind-condition .admin-graph-label{fill:#d3b8ff}.admin-graph-node.kind-listener .admin-graph-label{fill:#ffb3b3}.admin-graph-node.kind-predicate .admin-graph-label{fill:#b9f0bb}.admin-graph-node.kind-selector .admin-graph-label{fill:#9fe8dc}.admin-graph-detail{font-size:10px;fill:var(--muted)}.admin-graph-node.focused rect{stroke-width:3;filter:drop-shadow(0 0 6px rgba(242,181,68,.5))}.admin-graph-popover{position:absolute;z-index:2;transform:translateX(-50%);min-width:220px;max-width:min(420px,calc(100% - 24px));padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel-2);box-shadow:0 10px 30px rgba(0,0,0,.5);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.45;cursor:default;-webkit-user-select:text;-moz-user-select:text;user-select:text}.admin-graph-popover.kind-effect{border-color:#3fa7d6}.admin-graph-popover.kind-condition{border-color:#a06ee1}.admin-graph-popover.kind-listener{border-color:#d84a4a}.admin-graph-popover.kind-predicate{border-color:#4caf50}.admin-graph-popover.kind-selector{border-color:#2bb5a0}.admin-graph-popover-head{display:flex;flex-direction:column;gap:2px;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--line)}.admin-graph-popover-label{font-weight:700;font-size:13px}.admin-graph-popover.kind-effect .admin-graph-popover-label{color:#8fd3f4}.admin-graph-popover.kind-condition .admin-graph-popover-label{color:#d3b8ff}.admin-graph-popover.kind-listener .admin-graph-popover-label{color:#ffb3b3}.admin-graph-popover.kind-predicate .admin-graph-popover-label{color:#b9f0bb}.admin-graph-popover.kind-selector .admin-graph-popover-label{color:#9fe8dc}.admin-graph-popover dl{display:flex;flex-direction:column;gap:6px;margin:0}.admin-graph-popover dt{margin:0}.admin-graph-popover dd{margin:0;white-space:pre-wrap;word-break:break-word;color:var(--text)}.admin-graph-popover p{margin:0}.admin-cards-json{margin:0;font-size:12px;line-height:1.45;white-space:pre-wrap;word-break:break-word}.admin-cards-empty{padding:40px;text-align:center}.tree{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.5}.tree-node>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px;padding:2px 4px;border-radius:6px}.tree-node>summary:before{content:"▸";color:var(--muted);width:10px}.tree-node[open]>summary:before{content:"▾"}.tree-node>summary:hover{background:hsla(0,0%,100%,.04)}.tree-children{margin-left:14px;padding-left:10px;border-left:1px solid var(--line)}.tree-row{display:flex;gap:8px;padding:1px 4px 1px 18px}.tree-key{color:#9ec5ff}.tree-string{color:#c6e48b}.tree-number{color:#f2b544}.tree-boolean{color:#ed93b1}.tree-muted,.tree-null{color:var(--muted)}.tree-badge{padding:0 8px;border-radius:999px;font-size:11px;font-weight:700;line-height:1.6}.tree-effect{background:rgba(63,167,214,.25);color:#8fd3f4}.tree-type{background:rgba(160,110,225,.25);color:#d3b8ff}.tree-listener{background:rgba(216,74,74,.25);color:#ffb3b3}.tree-label{background:rgba(76,175,80,.2);color:#b9f0bb}@media (max-width:900px){.admin-cards{grid-template-columns:1fr;height:auto}.admin-cards-rows{max-height:50vh}}.docs{max-width:860px;margin:0 auto;padding:24px 20px 80px;color:var(--text);line-height:1.6}.docs-nav{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:24px;font-size:13px}.docs-nav a{color:var(--accent);text-decoration:none}.docs-crumb{color:var(--muted)}.docs-others{margin-left:auto;display:flex;gap:12px}.docs-body h1{font-size:30px;margin:0 0 16px}.docs-body h2{font-size:20px;margin:36px 0 10px;padding-bottom:6px;border-bottom:1px solid var(--line)}.docs-body h3{font-size:16px;margin:24px 0 8px}.docs-body li,.docs-body p{font-size:15px}.docs-body a{color:var(--accent)}.docs-body code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;padding:1px 5px;border-radius:4px;background:var(--panel-2)}.docs-body pre{overflow-x:auto;padding:12px 14px;border-radius:8px;border:1px solid var(--line);background:var(--panel-2)}.docs-body pre code{padding:0;background:none}.docs-body table{border-collapse:collapse;margin:12px 0;font-size:14px}.docs-body td,.docs-body th{text-align:left;padding:6px 10px;border:1px solid var(--line);vertical-align:top}.docs-body th{background:var(--panel-2)}.docs-body ol,.docs-body ul{padding-left:22px}.docs-body li+li{margin-top:4px}.docs-body input[type=checkbox]{margin-right:6px}.split-choice{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem}.split-choice.split-buttons{flex-direction:row;align-items:center;flex-wrap:wrap}.split-choice input[type=range]{width:min(260px,60vw);accent-color:#f5a623}.split-slider{display:flex;flex-direction:column;gap:.35rem}.split-label{font-weight:600}.hq-slot{position:relative}.hq-slot.destroyed .flames>.card,.hq-slot.destroyed .flames>.city-empty,.hq-slot.destroyed .flames>.darkness{opacity:.45;filter:grayscale(.8)}.hq-explosions{pointer-events:none;background:rgba(190,40,20,.9)}.hq-deck,.hq-explosions{margin-top:2px;padding:.1rem .4rem;border-radius:999px;color:#fff;font-size:.7rem;font-weight:600;white-space:nowrap}.hq-deck{background:rgba(30,110,180,.9);cursor:help}.hq-deck-gone{background:rgba(90,90,90,.85);text-decoration:line-through}.city-thralls{border-bottom-style:dotted}.hq-disks{margin-top:2px;pointer-events:none;padding:.1rem .4rem;border-radius:999px;background:rgba(120,60,200,.9);color:#fff;font-size:.7rem;font-weight:600;white-space:nowrap}.generate-fields{gap:12px;padding:12px}.generate-field,.generate-fields{display:flex;flex-direction:column}.generate-field{gap:4px}.generate-field>span{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.generate-field em{color:var(--accent);font-style:normal}.generate-field input,.generate-field select,.generate-field textarea{font:inherit;padding:8px 10px;border-radius:8px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);resize:vertical}.generate-field small{font-size:12px;line-height:1.3}.generate-preview{gap:12px}.generate-preview,.generate-preview figure{display:flex;flex-direction:column;align-items:center}.generate-preview figure{margin:0;gap:10px;transition:opacity .2s}.generate-preview figure.busy{opacity:.6}.generate-preview img{max-width:100%;max-height:calc(100dvh - 110px);border-radius:14px;box-shadow:0 12px 40px rgba(0,0,0,.5)}.generate-preview figcaption{display:flex;gap:12px;align-items:center}.generate-download{padding:8px 14px;border-radius:8px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);text-decoration:none;font:inherit;cursor:pointer}.generate-download:disabled{opacity:.6;cursor:progress}.generate-download:hover{border-color:var(--accent);color:var(--accent)}.generate-error{color:#e5484d}.generate-preview img{-webkit-user-drag:auto;-webkit-touch-callout:default;-moz-user-select:auto;user-select:auto;-webkit-user-select:auto;pointer-events:auto}.generate-actions{padding:10px;border-top:1px solid var(--line)}.generate-button{width:100%;padding:10px 14px;border-radius:8px;border:1px solid var(--accent);background:var(--accent);color:#1a1206;font:inherit;font-weight:700;cursor:pointer}.generate-button:disabled{opacity:.5;cursor:default}.generate-item{display:flex;flex-direction:column;gap:10px;margin:0;padding:10px 12px 12px;border:1px solid var(--line);border-radius:10px;background:hsla(0,0%,100%,.02)}.generate-item legend{display:flex;align-items:center;gap:8px;padding:0 6px;font-size:12px;font-weight:700;color:var(--text)}.generate-item-actions{display:inline-flex;gap:4px}.generate-add,.generate-item-actions button{font:inherit;color:var(--text);background:var(--panel-2);border:1px solid var(--line);border-radius:999px;cursor:pointer}.generate-item-actions button{width:24px;height:24px;padding:0;font-size:12px;line-height:1}.generate-item-actions button:disabled{opacity:.35;cursor:default}.generate-add{align-self:flex-start;padding:6px 14px;font-size:13px}.generate-add:hover,.generate-item-actions button:hover:not(:disabled){border-color:var(--accent)}.picklist-select .card-select-option img{width:64px;max-height:64px;object-fit:cover}.picklist-selected{display:inline-flex;align-items:center;gap:8px;min-width:0}.picklist-selected img{width:28px;height:28px;object-fit:cover;border-radius:4px;flex:none}.generate-check{display:grid;grid-template-columns:auto 1fr;grid-column-gap:8px;column-gap:8px;align-items:center}.generate-check input{width:16px;height:16px;margin:0;accent-color:var(--accent)}.generate-check>span{text-transform:none;letter-spacing:0;font-size:13px;font-weight:600;color:var(--text)}.generate-check small{grid-column:2}.admin-cards.generate{background:transparent}.generate .admin-cards-controls,.generate .generate-actions{background:rgba(0,0,0,.28)}.generate .admin-cards-controls{border-radius:12px 12px 0 0}.generate .generate-actions{border-radius:0 0 12px 12px}.generate .generate-fields{background:hsla(0,0%,100%,.035)}.site-nav{flex-wrap:wrap;justify-content:flex-start;gap:8px 16px;min-height:var(--nav-height);box-sizing:border-box;padding:6px 12px}.site-nav,.site-nav-logo{display:flex;align-items:center}.site-nav-logo img{height:34px;width:auto;pointer-events:auto}.site-nav-links{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px}.nav-button{display:inline-flex;align-items:center;gap:8px;height:30px;padding:0 14px;border-radius:4px;background:rgba(0,0,0,.6);color:#fff;font-family:Lato,Segoe UI,system-ui,sans-serif;font-size:13px;font-weight:700;line-height:1;text-decoration:none;transition:background .15s ease}.nav-button:hover{background:rgba(0,0,0,.8)}.nav-button.active{background:#fd7e14}.nav-button.active:hover{background:#e8590c}.nav-menu{position:relative}.nav-menu-items{position:absolute;top:100%;left:0;z-index:2000;display:flex;flex-direction:column;min-width:160px;margin-top:4px;padding:4px;border:1px solid var(--line);border-radius:6px;background:#121317f2;box-shadow:0 8px 24px rgba(0,0,0,.5)}.nav-menu-items:before{content:"";position:absolute;left:0;right:0;top:-6px;height:6px}.nav-menu-items a{padding:8px 10px;border-radius:4px;color:var(--text);font-family:Lato,Segoe UI,system-ui,sans-serif;font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}.nav-menu-items a:focus-visible,.nav-menu-items a:hover{background:hsla(0,0%,100%,.08)}.nav-menu-items a.active{color:#fd7e14}.site-nav-social{display:flex;align-items:center;margin-left:auto;color:var(--muted);transition:color .15s ease}.site-nav-social:hover{color:#fff}@media (max-width:560px){.nav-button{height:26px;padding:0 10px;font-size:12px}.site-nav-logo img{height:30px}}.generate-slider{display:flex;align-items:center;gap:10px}.generate-slider input[type=range]{flex:1 1;padding:0;border:0;background:transparent;accent-color:var(--accent)}.generate-slider output{min-width:3ch;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--muted)}.debug-place{display:flex;align-items:center;gap:6px;width:100%}.debug-place .card-select{flex:1 1;min-width:0}.debug-place .card-select-trigger{padding:4px 8px;font-size:11px}.debug-menu{position:relative}.debug-menu-list{position:absolute;right:0;top:calc(100% + 4px);z-index:30;display:flex;flex-direction:column;min-width:220px;padding:4px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2);box-shadow:0 8px 24px rgba(0,0,0,.5)}.debug-menu-list button{text-align:left;border:0;background:transparent;padding:6px 8px;border-radius:6px}.debug-menu-list button:hover{background:hsla(0,0%,100%,.08)}.card-select-search{flex:none;display:flex;align-items:center;gap:8px;padding:6px;background:#15161a;border-bottom:1px solid var(--line)}.card-select-search input{flex:1 1;min-width:0;font:inherit;padding:6px 8px;border-radius:6px;border:1px solid var(--line);background:var(--panel-2);color:var(--text)}.card-select-search .muted{flex:none;font-size:11px}.pool.piercing .pool-value{color:#ff8a3d}.card .mini-stat-piercing span{color:#ff6a1a}.scheme-guards-row{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;padding-top:8px}.scheme-guards{display:flex;align-items:flex-start;gap:8px}.human-shields{position:relative;display:inline-flex;margin-top:4px;align-self:center}.human-shields .card{width:60px}.shield-price{position:absolute;left:50%;bottom:-9px;transform:translateX(-50%);z-index:21;width:26px;height:26px;pointer-events:none}.shield-price img{position:absolute;inset:0;width:100%;height:100%;filter:drop-shadow(0 1px 2px rgba(0,0,0,.9))}.shield-price span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-size:13px;font-weight:400;letter-spacing:.04em;color:#fff;text-shadow:0 0 3px #000,0 0 3px #000,0 0 6px #000}.human-shields .human-shields-label{top:50%;transform:translateY(-50%);z-index:20}.city-space.destroyed{opacity:.45;filter:grayscale(1)}.ascended-mastermind{display:flex;flex-direction:column;align-items:center}.setting-stack{gap:10px}.setting-stack .stack-fan-wrap{margin-right:2px}.setting-stack .stack-fan{width:72px;height:50px}.setting-stack .stack-fan img{width:30px}.setting-stack>span:not(.stack-fan-wrap){flex:1 1;text-align:left}.stack-options .setting-stack~.setting-sub{margin-left:84px}.announcement-turn-card{position:relative}.announcement-turn-number{position:absolute;top:7%;left:0;right:0;text-align:center;font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-size:clamp(16px,2.2vw,26px);letter-spacing:.05em;line-height:1.2;color:#ffd23f;text-shadow:2px 2px 0 #111;background:linear-gradient(90deg,transparent,rgba(0,0,0,.75) 25%,rgba(0,0,0,.75) 75%,transparent);pointer-events:none}.announcement-mini-strip.announcement-turn-card{width:-moz-fit-content;width:fit-content}.announcement-mini-strip.announcement-turn-card .card{cursor:default}.announcement-mini-strip.announcement-turn-card .announcement-turn-number{top:4%;font-size:8px;letter-spacing:.03em;text-shadow:1px 1px 0 #111}.card-focused{box-shadow:0 0 0 3px #fff,0 0 18px hsla(0,0%,100%,.55);transform:translateY(-8px);z-index:3}.card-focused.card-highlight{box-shadow:0 0 0 3px #fff,0 0 0 5px var(--accent),0 0 18px rgba(242,181,68,.55)}.card-focused.card-selected{box-shadow:0 0 0 3px #fff,0 0 0 5px var(--ok),0 0 18px rgba(76,175,80,.6)}.fx-layer{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:0}.fx-lightshow-dim{position:absolute;inset:0;background:rgba(6,4,16,.5);animation:fx-fade 4.2s ease both}.fx-beam{position:absolute;bottom:-25vh;width:16vw;height:190vh;opacity:0;transform-origin:50% 100%;filter:blur(8px);mix-blend-mode:screen;background:linear-gradient(to top,var(--beam) 0,var(--beam) 60%,transparent 96%)}.fx-beam-left{left:-4vw;animation:fx-swing-left 3.8s ease-in-out both}.fx-beam-right{right:-4vw;animation:fx-swing-right 3.8s ease-in-out both}.fx-beam-0{--beam:rgba(167,139,250,.5)}.fx-beam-1{--beam:rgba(96,165,250,.46);animation-delay:.22s}.fx-beam-2{--beam:rgba(253,224,71,.4);animation-delay:.44s}@keyframes fx-swing-left{0%{transform:rotate(-30deg);opacity:0}12%{opacity:1}55%{transform:rotate(58deg)}86%{opacity:1}to{transform:rotate(-10deg);opacity:0}}@keyframes fx-swing-right{0%{transform:rotate(30deg);opacity:0}12%{opacity:1}55%{transform:rotate(-58deg)}86%{opacity:1}to{transform:rotate(10deg);opacity:0}}.fx-confetti span{position:absolute;top:-5vh;border-radius:2px;opacity:0;animation-name:fx-confetti-fall;animation-timing-function:linear;animation-fill-mode:both}@keyframes fx-confetti-fall{0%{transform:translateY(0) rotate(0deg);opacity:0}8%{opacity:.95}to{transform:translateY(112vh) rotate(2turn);opacity:.15}}.fx-lightshow-title{position:absolute;left:0;right:0;top:20%;text-align:center;font-size:clamp(44px,9vw,124px);font-weight:900;letter-spacing:.14em;color:#fff;text-shadow:0 0 10px rgba(253,224,71,.9),0 0 24px rgba(167,139,250,.9),0 0 48px rgba(96,165,250,.8);animation:fx-title 4.2s ease both}@keyframes fx-title{0%{transform:scale(.4);opacity:0}16%{transform:scale(1.1);opacity:1}28%{transform:scale(1)}82%{opacity:1;transform:scale(1.02)}to{opacity:0;transform:scale(1.06)}}@keyframes fx-fade{0%{opacity:0}14%{opacity:1}84%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.fx-beam,.fx-confetti{display:none}.fx-lightshow-title{animation:fx-fade 4.2s ease both}}.fx-boom{position:absolute;width:var(--boom);height:var(--boom);transform:translate(-50%,-50%);pointer-events:none}.fx-boom-flash{inset:0;background:radial-gradient(circle,rgba(255,250,220,.95) 0,rgba(255,200,80,.7) 35%,transparent 70%);animation:fx-boom-flash .5s ease-out both}.fx-boom-fire,.fx-boom-flash{position:absolute;border-radius:50%}.fx-boom-fire{inset:12%;background:radial-gradient(circle,#ffeca0 0,rgba(255,140,40,.95) 30%,rgba(200,40,20,.85) 60%,rgba(40,10,5,0) 75%);filter:blur(2px);animation:fx-boom-fire 1.3s ease-out both}.fx-boom-ring{position:absolute;inset:20%;border-radius:50%;border:3px solid rgba(255,220,140,.9);box-shadow:0 0 18px rgba(255,160,60,.8);animation:fx-boom-ring 1s ease-out both}.fx-boom-spark{width:6px;height:18px;margin:-9px 0 0 -3px;border-radius:3px;background:linear-gradient(0deg,rgba(255,120,30,0),#ffd166 60%,#fff);transform-origin:50% 50%;animation:fx-boom-spark 1.1s ease-out both}.fx-boom-label,.fx-boom-spark{position:absolute;left:50%;top:50%}.fx-boom-label{transform:translate(-50%,-50%);font-size:clamp(18px,2.6vw,34px);font-weight:900;letter-spacing:.12em;color:#fff;text-shadow:0 0 10px #ff9a3c,0 0 22px #ff3d1f;animation:fx-boom-label 1.5s ease both}@keyframes fx-boom-flash{0%{transform:scale(.2);opacity:1}to{transform:scale(1.4);opacity:0}}@keyframes fx-boom-fire{0%{transform:scale(.15);opacity:.2}18%{transform:scale(1);opacity:1}to{transform:scale(1.15) translateY(-12%);opacity:0}}@keyframes fx-boom-ring{0%{transform:scale(.2);opacity:1}to{transform:scale(1.9);opacity:0}}@keyframes fx-boom-spark{0%{transform:rotate(var(--angle)) translateY(0) scaleY(.4);opacity:1}to{transform:rotate(var(--angle)) translateY(calc(var(--boom) * -.55)) scaleY(1.2);opacity:0}}@keyframes fx-boom-label{0%{transform:translate(-50%,-50%) scale(.5);opacity:0}25%{transform:translate(-50%,-50%) scale(1.1);opacity:1}80%{opacity:1}to{transform:translate(-50%,-60%) scale(1);opacity:0}}.flames{position:relative}.flames>.card,.flames>.city-empty,.flames>.darkness{position:relative;z-index:1}.flames:after,.flames:before{content:"";position:absolute;left:-14%;right:-14%;top:-30%;bottom:-4%;z-index:2;pointer-events:none;background-repeat:repeat-y;filter:blur(4px);mix-blend-mode:screen;-webkit-mask-image:linear-gradient(0deg,#000 0,#000 45%,transparent);mask-image:linear-gradient(0deg,#000 0,#000 45%,transparent)}.flames:before{background-image:radial-gradient(38% 34% at 28% 80%,rgba(255,170,40,.95),transparent 70%),radial-gradient(30% 30% at 68% 62%,rgba(255,70,20,.85),transparent 70%),radial-gradient(26% 26% at 50% 96%,rgba(255,230,120,.9),transparent 70%);background-size:100% 120px;animation:fire-scroll-a 1.4s linear infinite}.flames:after{background-image:radial-gradient(34% 30% at 72% 84%,rgba(255,120,30,.9),transparent 70%),radial-gradient(28% 28% at 20% 58%,rgba(230,40,10,.8),transparent 70%),radial-gradient(24% 24% at 46% 90%,rgba(255,210,90,.85),transparent 70%);background-size:100% 160px;animation:fire-scroll-b 2.1s linear infinite}@keyframes fire-scroll-a{0%{background-position:0 0}to{background-position:0 -120px}}@keyframes fire-scroll-b{0%{background-position:0 0}to{background-position:0 -160px}}@media (prefers-reduced-motion:reduce){.flames:after,.flames:before{animation:none}}.pool.shards .pool-icon{inset:-10%;width:120%;height:120%}.lobby-top{display:flex;gap:14px;align-items:stretch}.lobby-top-fields{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:16px}.scenario-thumb{flex:none;align-self:flex-start;width:clamp(90px,24%,150px);padding:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff;cursor:zoom-in}.scenario-thumb img{display:block;width:100%;height:auto}.scenario-thumb:hover{border-color:var(--accent)}.scenario-preview-backdrop{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(0,0,0,.75)}.scenario-preview{position:relative;border-radius:10px;overflow:hidden;background:#fff}.scenario-preview img{display:block;max-height:90vh;max-width:calc(100vw - 32px);width:auto;height:auto}.scenario-preview-close{position:absolute;top:8px;right:8px}.scenario-note{margin:4px 0 0;font-size:12px}.setup-scope{display:contents}.setup-locked>*{opacity:.7}.start-row{display:flex;gap:10px;align-items:stretch}.start-row .primary{flex:1 1}.solo-rules{margin:8px 0 0;font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-weight:400;letter-spacing:.04em;font-size:13px;color:var(--accent);text-shadow:1px 1px 0 #111}.solo-rules-title{color:#ff5a5a;font-size:14px}.solo-rules ul{margin:2px 0 0;padding-left:18px}.solo-rules li{margin:1px 0;line-height:1.3}.tutorial-button{flex:none;background:#2f7bf5;border-color:#2f7bf5;color:#fff;padding-left:14px;padding-right:14px}.tutorial-button:hover:not(:disabled){background:#4a8ef7;border-color:#4a8ef7}.help-kicker{background:#2f7bf5;color:#fff;margin-right:6px}.help-banger{font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-weight:400;font-size:1.15em;letter-spacing:.04em;color:#ff5a5a;text-shadow:1px 1px 0 #111}.debug-place .card-select-popover{left:auto;right:0;width:min(400px,calc(100vw - 24px))}.debug-menu-list{min-width:min(300px,calc(100vw - 24px))}body.fx-shaking .board-wrap{animation:fx-shake .6s cubic-bezier(.36,.07,.19,.97) both}@keyframes fx-shake{10%,90%{transform:translate3d(-2px,1px,0)}20%,80%{transform:translate3d(4px,-2px,0)}30%,50%,70%{transform:translate3d(-8px,3px,0)}40%,60%{transform:translate3d(8px,-3px,0)}}.fx-smash{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.fx-smash-flash{position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,hsla(0,0%,100%,.85) 0,rgba(120,220,120,.35) 30%,transparent 65%);animation:fx-boom-flash .5s ease-out both;animation-delay:.32s}.fx-smash-cracks{position:absolute;left:50%;top:50%;width:0;height:0}.fx-smash-crack{position:absolute;left:0;top:0;width:var(--length);height:3px;margin-top:-1.5px;transform-origin:0 50%;transform:rotate(var(--angle)) scaleX(0);background:linear-gradient(90deg,hsla(0,0%,100%,.95),hsla(0,0%,100%,.6) 60%,transparent);box-shadow:0 0 6px hsla(0,0%,100%,.8),0 0 2px #000;animation:fx-crack .9s cubic-bezier(.2,.9,.3,1) both;animation-delay:.34s}@keyframes fx-crack{0%{transform:rotate(var(--angle)) scaleX(0);opacity:0}15%{opacity:1}40%{transform:rotate(var(--angle)) scaleX(1)}to{transform:rotate(var(--angle)) scaleX(1);opacity:0}}.fx-smash-ring{position:absolute;left:0;top:0;width:40vmin;height:40vmin;margin:-20vmin 0 0 -20vmin;border-radius:50%;border:3px solid hsla(0,0%,100%,.85);box-shadow:0 0 12px rgba(120,255,120,.7);animation:fx-boom-ring .8s ease-out both;animation-delay:.34s}.fx-smash-ring-2{animation-delay:.46s;border-style:dashed}.fx-smash-card{position:absolute;width:clamp(120px,20vmin,220px);aspect-ratio:5/7;border-radius:10px;box-shadow:0 12px 30px rgba(0,0,0,.8);animation:fx-smash-card 1.5s cubic-bezier(.5,0,.2,1) both}@keyframes fx-smash-card{0%{transform:translate(-60vw,-40vh) rotate(-40deg) scale(2.6);opacity:0}10%{opacity:1}32%{transform:translate(0) rotate(-8deg) scale(.95)}40%{transform:translate(0) rotate(-6deg) scale(1.08)}50%{transform:translate(0) rotate(-6deg) scale(1)}82%{transform:translate(0) rotate(-6deg) scale(1);opacity:1}to{transform:translateY(-12vh) rotate(-6deg) scale(.9);opacity:0}}.fx-smash-title{position:absolute;left:0;right:0;top:18%;text-align:center;font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-size:clamp(56px,12vw,150px);letter-spacing:.06em;color:#6ee85a;-webkit-text-stroke:3px #0b2a08;text-shadow:6px 6px 0 #0b2a08,0 0 28px rgba(110,232,90,.8);animation:fx-smash-title 1.5s cubic-bezier(.5,0,.2,1) both}@keyframes fx-smash-title{0%,30%{transform:scale(3) rotate(-10deg);opacity:0}38%{transform:scale(.92) rotate(-4deg);opacity:1}46%{transform:scale(1.06) rotate(-4deg)}54%{transform:scale(1) rotate(-4deg)}84%{opacity:1;transform:scale(1) rotate(-4deg)}to{opacity:0;transform:scale(1.1) rotate(-4deg)}}.fx-gamma{display:flex;align-items:center;justify-content:center}.fx-gamma,.fx-gamma-wash{position:absolute;inset:0}.fx-gamma-wash{background:radial-gradient(circle at 50% 55%,rgba(120,255,90,.75) 0,rgba(40,160,40,.55) 40%,rgba(6,30,8,.7) 100%);mix-blend-mode:screen;animation:fx-gamma-wash 2.6s ease both}@keyframes fx-gamma-wash{0%{opacity:0;transform:scale(.2)}25%{opacity:1;transform:scale(1)}80%{opacity:.9}to{opacity:0;transform:scale(1.15)}}.fx-gamma-pulse{position:absolute;width:30vmin;height:30vmin;border-radius:50%;border:4px solid rgba(160,255,120,.9);box-shadow:0 0 24px rgba(120,255,90,.9);animation:fx-gamma-pulse 1.1s ease-out infinite both;animation-delay:.4s}.fx-gamma-pulse-2{animation-delay:.95s}@keyframes fx-gamma-pulse{0%{transform:scale(.3);opacity:.9}to{transform:scale(3.2);opacity:0}}.fx-gamma-cards{position:absolute;width:clamp(140px,24vmin,260px);aspect-ratio:5/7}.fx-gamma-after,.fx-gamma-before{position:absolute;inset:0;width:100%;height:100%;border-radius:10px;box-shadow:0 12px 40px rgba(0,0,0,.8)}.fx-gamma-before{animation:fx-gamma-before 2.6s ease both}@keyframes fx-gamma-before{0%{transform:scale(.6);opacity:0;filter:none}15%{transform:scale(1);opacity:1}30%{transform:scale(1.04) rotate(-2deg);filter:brightness(1.1) saturate(1.3)}40%{transform:scale(.98) rotate(2deg)}50%{transform:scale(1.08) rotate(-3deg);filter:brightness(1.5) saturate(1.8) hue-rotate(40deg)}58%{transform:scale(.97) rotate(3deg)}66%{transform:scale(1.3);opacity:0;filter:brightness(3) blur(6px)}to{opacity:0}}.fx-gamma-after{animation:fx-gamma-after 2.6s cubic-bezier(.2,.9,.3,1) both}@keyframes fx-gamma-after{0%,60%{transform:scale(.2);opacity:0;filter:brightness(3)}70%{transform:scale(1.25);opacity:1;filter:brightness(1.4)}78%{transform:scale(1);filter:none}90%{transform:scale(1);opacity:1}to{transform:scale(.9) translateY(10vh);opacity:0}}.fx-gamma-title{position:absolute;left:0;right:0;top:12%;text-align:center;font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-size:clamp(44px,9vw,120px);letter-spacing:.1em;color:#c8ff9a;-webkit-text-stroke:2px #0b2a08;text-shadow:5px 5px 0 #0b2a08,0 0 30px rgba(120,255,90,.9);animation:fx-gamma-title 2.6s ease both}@keyframes fx-gamma-title{0%{opacity:0;transform:scale(.6);letter-spacing:.4em}20%{opacity:1;transform:scale(1);letter-spacing:.1em}85%{opacity:1}to{opacity:0}}.fx-gamma-name{position:absolute;left:0;right:0;bottom:14%;text-align:center;font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;font-size:clamp(28px,5vw,64px);letter-spacing:.08em;color:#fff;text-shadow:3px 3px 0 #0b2a08,0 0 20px rgba(120,255,90,.9);animation:fx-gamma-name 2.6s ease both}@keyframes fx-gamma-name{0%,64%{opacity:0;transform:translateY(20px)}76%{opacity:1;transform:translateY(0)}90%{opacity:1}to{opacity:0}}.fx-gamma.fx-red .fx-gamma-wash{background:radial-gradient(circle at 50% 55%,rgba(255,80,60,.8) 0,rgba(170,20,20,.6) 40%,rgba(30,4,4,.75) 100%);animation-duration:2.4s}.fx-gamma.fx-red .fx-gamma-pulse{border-color:hsla(9,100%,74%,.9);box-shadow:0 0 24px rgba(255,80,60,.9)}.fx-gamma.fx-red .fx-gamma-name,.fx-gamma.fx-red .fx-gamma-title{color:#ffd0c0;-webkit-text-stroke:2px #3a0606;text-shadow:5px 5px 0 #3a0606,0 0 30px rgba(255,80,60,.9);animation-duration:2.4s}.fx-gamma.fx-red .fx-gamma-name{color:#fff}.fx-flip{perspective:1400px}.fx-flip-after,.fx-flip-before{position:absolute;inset:0;width:100%;height:100%;border-radius:10px;box-shadow:0 12px 40px rgba(0,0,0,.8);-webkit-backface-visibility:hidden;backface-visibility:hidden}.fx-flip-before{animation:fx-flip-before 2.4s ease-in-out both}@keyframes fx-flip-before{0%{transform:scale(.6) rotateY(0deg);opacity:0}15%{transform:scale(1) rotateY(0deg);opacity:1}40%{transform:scale(1.06) rotateY(0deg);filter:brightness(1.2) saturate(1.4)}55%{transform:scale(1.08) rotateY(90deg);filter:brightness(2);opacity:1}56%,to{transform:scale(1.08) rotateY(90deg);opacity:0}}.fx-flip-after{animation:fx-flip-after 2.4s ease-in-out both}@keyframes fx-flip-after{0%,55%{transform:scale(1.08) rotateY(-90deg);opacity:0}56%{opacity:1;filter:brightness(2)}72%{transform:scale(1.12) rotateY(0deg);filter:brightness(1.2)}80%{transform:scale(1) rotateY(0deg);filter:none}90%{opacity:1}to{transform:scale(.9) translateY(10vh);opacity:0}}.hand-bar .drag-clone .card.card-landscape,.hand-bar .hand-held .card.card-landscape,.hand-bar .hand-slot .card.card-landscape{width:var(--hand-w);aspect-ratio:5/7}.hand-bar .drag-clone .card.card-landscape>img,.hand-bar .hand-held .card.card-landscape>img,.hand-bar .hand-slot .card.card-landscape>img{object-fit:cover;object-position:center center}.divided-sides{display:none;position:absolute;inset:0;z-index:3;pointer-events:none}.hand-bar .card-landscape .divided-sides{display:block}.divided-side{position:absolute;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;gap:2px;filter:drop-shadow(0 0 2px #000) drop-shadow(0 0 3px #000) drop-shadow(0 0 6px #000) drop-shadow(0 0 12px #000) drop-shadow(0 0 18px #000)}.divided-side-left{left:6px}.divided-side-right{right:6px}.divided-sides .mini-icons{display:flex;flex-direction:column;gap:2px}.divided-sides .mini-icons img{width:28px;height:28px;flex:none;filter:drop-shadow(0 1px 2px rgba(0,0,0,.9))}.card .divided-sides .mini-stats{position:static;transform:none;flex-direction:column;gap:0}.fx-barrier,.fx-clobber,.fx-flame,.fx-nullifier{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.fx-flame-glow{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 110%,rgba(255,120,20,.85) 0,rgba(255,60,0,.45) 35%,transparent 70%);animation:fx-flame-glow 2s ease-out both}@keyframes fx-flame-glow{0%{opacity:0}20%{opacity:1}80%{opacity:1}to{opacity:0}}.fx-flame-wall{position:absolute;left:0;right:0;bottom:0;height:60vh}.fx-flame-tongue{position:absolute;bottom:-6vh;left:var(--x);width:14vw;height:var(--h);margin-left:-7vw;border-radius:50% 50% 20% 20%/70% 70% 20% 20%;background:linear-gradient(0deg,rgba(255,240,150,.95) 0,rgba(255,140,20,.9) 35%,rgba(255,40,0,.7) 70%,transparent);filter:blur(6px);transform-origin:50% 100%;animation:fx-flame-tongue 2s ease-in-out both;animation-delay:var(--d);mix-blend-mode:screen}@keyframes fx-flame-tongue{0%{transform:scaleY(0) scaleX(.6);opacity:0}20%{transform:scaleY(1) scaleX(1);opacity:1}35%{transform:scaleY(.85) scaleX(1.1)}50%{transform:scaleY(1.05) scaleX(.95)}65%{transform:scaleY(.9) scaleX(1.05)}85%{transform:scaleY(1) scaleX(1);opacity:1}to{transform:scaleY(.2) scaleX(.8);opacity:0}}.fx-flame-embers{position:absolute;inset:0}.fx-flame-ember{position:absolute;bottom:10vh;left:var(--x);width:var(--s);height:var(--s);border-radius:50%;background:#ffd36b;box-shadow:0 0 8px 2px rgba(255,150,40,.9);animation:fx-flame-ember 1.8s ease-out both;animation-delay:var(--d)}@keyframes fx-flame-ember{0%{transform:translateY(0) scale(1);opacity:0}15%{opacity:1}to{transform:translateY(-80vh) translateX(6vw) scale(.2);opacity:0}}.fx-flame-card{position:absolute;width:clamp(120px,20vmin,220px);aspect-ratio:5/7;border-radius:10px;box-shadow:0 0 40px 12px rgba(255,120,20,.9),0 12px 30px rgba(0,0,0,.8);animation:fx-flame-card 2s cubic-bezier(.3,.6,.2,1) both}@keyframes fx-flame-card{0%{transform:translateY(70vh) scale(.6);opacity:0}30%{transform:translateY(0) scale(1.08);opacity:1}40%{transform:translateY(0) scale(1)}85%{transform:translateY(0) scale(1);opacity:1}to{transform:translateY(-10vh) scale(.9);opacity:0}}.fx-barrier-title,.fx-clobber-title,.fx-flame-title,.fx-nullifier-title{position:absolute;left:0;right:0;top:16%;text-align:center;font-family:Bangers Modified,Bangers,Impact,Arial Black,sans-serif;letter-spacing:.06em;line-height:.95}.fx-flame-title{font-size:clamp(56px,12vw,150px);color:#ffb02e;-webkit-text-stroke:3px #4a1200;text-shadow:6px 6px 0 #4a1200,0 0 30px rgba(255,120,0,.9);animation:fx-smash-title 2s cubic-bezier(.5,0,.2,1) both}.fx-clobber-flash{position:absolute;inset:0;background:radial-gradient(circle at 50% 55%,rgba(255,230,190,.9) 0,rgba(230,120,40,.4) 30%,transparent 65%);animation:fx-boom-flash .5s ease-out both;animation-delay:.34s}.fx-clobber-impact{position:absolute;left:50%;top:52%;width:0;height:0}.fx-clobber-ring{position:absolute;left:0;top:0;width:40vmin;height:40vmin;margin:-20vmin 0 0 -20vmin;border-radius:50%;border:4px solid rgba(255,190,120,.9);box-shadow:0 0 14px rgba(255,140,40,.8);animation:fx-boom-ring .8s ease-out both;animation-delay:.34s}.fx-clobber-ring-2{animation-delay:.5s;border-style:dashed}.fx-clobber-rock{position:absolute;left:0;top:0;width:var(--size);height:var(--size);margin:calc(var(--size) / -2) 0 0 calc(var(--size) / -2);background:linear-gradient(135deg,#d9843a,#7a3d12);border:1px solid #2b1305;border-radius:20% 40% 25% 35%;transform:rotate(var(--angle)) translateX(0) rotate(0deg);animation:fx-clobber-rock 1.1s cubic-bezier(.2,.8,.4,1) both;animation-delay:.34s}@keyframes fx-clobber-rock{0%{transform:rotate(var(--angle)) translateX(0) rotate(0deg);opacity:0}10%{opacity:1}to{transform:rotate(var(--angle)) translateX(var(--dist)) rotate(var(--spin));opacity:0}}.fx-clobber-card{position:absolute;width:clamp(120px,20vmin,220px);aspect-ratio:5/7;border-radius:10px;box-shadow:0 12px 30px rgba(0,0,0,.8);animation:fx-clobber-card 2s cubic-bezier(.5,0,.2,1) both}@keyframes fx-clobber-card{0%{transform:translateY(-70vh) rotate(12deg) scale(2.4);opacity:0}12%{opacity:1}32%{transform:translateY(0) rotate(4deg) scale(.92)}40%{transform:translateY(0) rotate(4deg) scale(1.06)}50%{transform:translateY(0) rotate(4deg) scale(1)}85%{transform:translateY(0) rotate(4deg) scale(1);opacity:1}to{transform:translateY(-10vh) rotate(4deg) scale(.9);opacity:0}}.fx-clobber-title{font-size:clamp(40px,8vw,110px);color:#ff9a3c;-webkit-text-stroke:3px #3a1a05;text-shadow:6px 6px 0 #3a1a05,0 0 24px rgba(255,140,40,.8);animation:fx-smash-title 2s cubic-bezier(.5,0,.2,1) both}.fx-barrier-wash{position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(120,200,255,.55) 0,rgba(40,110,220,.35) 40%,transparent 75%);animation:fx-flame-glow 2.1s ease-out both}.fx-barrier-ring{position:absolute;left:50%;top:50%;width:30vmin;height:30vmin;margin:-15vmin 0 0 -15vmin;border-radius:50%;border:3px solid rgba(190,235,255,.95);box-shadow:0 0 18px rgba(120,200,255,.9),inset 0 0 30px rgba(120,200,255,.5);animation:fx-barrier-ring 1.6s ease-out both;animation-delay:.2s}.fx-barrier-ring-2{animation-delay:.55s}.fx-barrier-ring-3{animation-delay:.9s}@keyframes fx-barrier-ring{0%{transform:scale(.3);opacity:0}15%{opacity:1}to{transform:scale(4.2);opacity:0}}.fx-barrier-hex{position:absolute;inset:0;background-image:repeating-linear-gradient(60deg,rgba(180,230,255,.18) 0 2px,transparent 2px 28px),repeating-linear-gradient(-60deg,rgba(180,230,255,.18) 0 2px,transparent 2px 28px),repeating-linear-gradient(0deg,rgba(180,230,255,.12) 0 2px,transparent 2px 28px);mask-image:radial-gradient(circle at 50% 50%,#000 0,transparent 60%);-webkit-mask-image:radial-gradient(circle at 50% 50%,#000 0,transparent 60%);animation:fx-flame-glow 2.1s ease-out both}.fx-barrier-card{position:absolute;width:clamp(120px,20vmin,220px);aspect-ratio:5/7;border-radius:10px;box-shadow:0 0 40px 10px rgba(120,200,255,.8),0 12px 30px rgba(0,0,0,.8);animation:fx-barrier-card 2.1s ease-in-out both}@keyframes fx-barrier-card{0%{transform:scale(.7);opacity:0;filter:blur(6px)}18%{transform:scale(1.05);opacity:1;filter:blur(0)}30%{opacity:.15;filter:blur(3px)}42%{opacity:1;filter:blur(0)}54%{opacity:.2;filter:blur(3px)}66%{opacity:1;filter:blur(0)}86%{transform:scale(1);opacity:1}to{transform:scale(.9);opacity:0;filter:blur(8px)}}.fx-barrier-title{font-size:clamp(40px,8vw,110px);color:#bfe9ff;-webkit-text-stroke:3px #0b2c4a;text-shadow:6px 6px 0 #0b2c4a,0 0 28px rgba(120,200,255,.9);animation:fx-smash-title 2.1s cubic-bezier(.5,0,.2,1) both}.fx-nullifier-dark{position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(0,0,0,.2) 0,rgba(0,0,0,.85) 70%);animation:fx-flame-glow 2.2s ease-out both}.fx-nullifier-rays{position:absolute;left:50%;top:50%;width:0;height:0;animation:fx-nullifier-spin 2.2s linear both}@keyframes fx-nullifier-spin{0%{transform:rotate(0deg)}to{transform:rotate(40deg)}}.fx-nullifier-ray{position:absolute;left:0;top:0;width:120vmax;height:5px;margin-top:-2.5px;transform-origin:0 50%;transform:rotate(var(--angle)) scaleX(0);background:linear-gradient(90deg,#fff,rgba(160,240,255,.7) 40%,transparent);box-shadow:0 0 10px rgba(180,240,255,.9);animation:fx-nullifier-ray 1.8s cubic-bezier(.2,.9,.3,1) both;animation-delay:calc(.35s + var(--d))}@keyframes fx-nullifier-ray{0%{transform:rotate(var(--angle)) scaleX(0);opacity:0}20%{transform:rotate(var(--angle)) scaleX(1);opacity:1}80%{opacity:1}to{transform:rotate(var(--angle)) scaleX(1);opacity:0}}.fx-nullifier-core{position:absolute;left:50%;top:50%;width:60vmin;height:60vmin;margin:-30vmin 0 0 -30vmin;border-radius:50%;background:radial-gradient(circle,#fff 0,rgba(170,240,255,.8) 25%,transparent 65%);animation:fx-boom-flash .9s ease-out both;animation-delay:.35s}.fx-nullifier-card{position:absolute;width:clamp(120px,20vmin,220px);aspect-ratio:5/7;border-radius:10px;box-shadow:0 0 50px 14px rgba(200,245,255,.9),0 12px 30px rgba(0,0,0,.8);animation:fx-nullifier-card 2.2s cubic-bezier(.3,.6,.2,1) both}@keyframes fx-nullifier-card{0%{transform:scale(.2) rotate(-20deg);opacity:0;filter:brightness(3)}25%{transform:scale(1.1) rotate(0deg);opacity:1;filter:brightness(1.6)}35%{transform:scale(1);filter:brightness(1)}86%{transform:scale(1);opacity:1}to{transform:scale(.9);opacity:0}}.fx-nullifier-title{font-size:clamp(40px,8vw,110px);color:#eafcff;-webkit-text-stroke:3px #0a2a33;text-shadow:6px 6px 0 #0a2a33,0 0 30px rgba(200,245,255,.95);animation:fx-smash-title 2.2s cubic-bezier(.5,0,.2,1) both}.stats-filters{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.stats-min{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}.stats-min select{background:hsla(0,0%,100%,.06);color:inherit;border:1px solid hsla(0,0%,100%,.15);border-radius:6px;padding:4px 6px}.stats-name{font-size:15px}.stats-section h2{margin:8px 0 2px;font-size:18px}.stats-section>p{margin:0 0 8px;font-size:13px}.stats-scroll{overflow-x:auto;border-radius:10px}.admin-actions{display:flex;gap:8px;align-items:center}.admin-filters{flex-wrap:wrap;margin-bottom:12px}.admin-table-wrap{overflow-x:auto}.admin-table td{white-space:nowrap}.admin-outcome,.admin-status{display:inline-block;padding:1px 8px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid var(--line)}.admin-status-waiting{color:#0af;border-color:rgba(0,170,255,.55)}.admin-status-in_progress{color:#4caf50;border-color:rgba(76,175,80,.55)}.admin-status-active{color:#ffca28;border-color:rgba(255,202,40,.55)}.admin-fixed{margin:0 0 12px}.admin-status-finished{color:var(--muted)}.admin-status-inactive{color:#ff8a65;border-color:rgba(255,138,101,.55)}.admin-outcome{margin-left:6px;text-transform:capitalize}.admin-archived{color:var(--muted);font-style:italic}.admin-outcome-win{color:#4caf50}.admin-outcome-loss{color:#ef5350}.stats-table{width:100%;border-collapse:collapse;font-size:14px;background:hsla(0,0%,100%,.03);border-radius:10px;overflow:hidden}.stats-table td,.stats-table th{padding:6px 10px;text-align:left;border-bottom:1px solid hsla(0,0%,100%,.06);vertical-align:middle}.stats-table th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:hsla(0,0%,100%,.04)}.stats-table tbody tr:last-child td{border-bottom:none}.stats-table tbody tr:first-child .stats-rank,.stats-table tbody tr:nth-child(2) .stats-rank,.stats-table tbody tr:nth-child(3) .stats-rank{color:#f1c40f;font-weight:700}.stats-num,.stats-rank{white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stats-table td.stats-num,.stats-table th.stats-num{text-align:right}.stats-rate{min-width:180px;white-space:nowrap}.stats-rate>span:last-child{display:inline-block;min-width:56px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600}.stats-bar{display:inline-flex;width:100px;height:10px;margin-right:8px;border-radius:5px;background:rgba(231,76,60,.35);overflow:hidden;vertical-align:middle}.stats-bar-wins{height:100%;background:linear-gradient(90deg,#27ae60,#2ecc71)}.stats-bar-ties{height:100%;background:hsla(0,0%,100%,.35)}.stats-more{margin-top:8px;background:none;border:1px solid hsla(0,0%,100%,.15);color:var(--muted);border-radius:6px;padding:4px 10px;font-size:13px;cursor:pointer}.stats-more:hover{color:inherit;border-color:hsla(0,0%,100%,.35)}@media (max-width:640px){.stats-table{font-size:12px}.stats-table td,.stats-table th{padding:5px 6px}.stats-bar{width:56px}.stats-rate{min-width:0}}.badge-threat{display:inline-flex;align-items:center;gap:2px;margin-left:4px;padding-left:4px;border-left:1px solid hsla(0,0%,100%,.25)}.badge-wounds{display:inline-flex;align-items:center;padding:0 5px;border-radius:8px;color:#ffd9d9;background:rgba(140,20,30,.85);border:1px solid hsla(0,100%,74%,.6)}.badge-wounds,.city-pawns{font-size:9px;font-weight:700;white-space:nowrap}.city-pawns{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:9px;color:#fff3d6;background:rgba(242,181,68,.22);border:1px solid rgba(242,181,68,.6);vertical-align:1px}.player-tags{display:flex;gap:4px;margin-top:2px;flex-wrap:wrap}.player-tag{padding:0 5px;border-radius:7px;font-size:9px;font-weight:700;letter-spacing:.04em;color:var(--muted);border:1px solid var(--line);background:rgba(0,0,0,.3);white-space:nowrap}.player-tag-throne{color:#ffe8a3;border-color:rgba(242,181,68,.7);background:rgba(242,181,68,.18)}.badge-shards+.badge-threat{margin-left:6px}.badge-threat:first-child{margin-left:0;padding-left:0;border-left:none}.badge-threat .badge-icon{width:14px;height:14px;object-fit:contain}.badge-threat .badge-icon:first-child{width:16px;height:16px;animation:threat-pulse 1.6s ease-in-out infinite}@keyframes threat-pulse{0%,to{transform:scale(1);filter:drop-shadow(0 0 0 rgba(255,190,120,0))}50%{transform:scale(1.15);filter:drop-shadow(0 0 4px rgba(255,190,120,.9))}}.stats-section-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:8px 16px}.stats-search{background:hsla(0,0%,100%,.06);color:inherit;border:1px solid hsla(0,0%,100%,.15);border-radius:8px;padding:6px 10px;font-size:13px;min-width:220px;margin-bottom:8px}.stats-search:focus{outline:none;border-color:hsla(0,0%,100%,.4)}.stats-table th button{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:4px;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit}.stats-table th button:hover{color:#fff}.stats-table th.sorted{color:#f1c40f}.stats-sort-arrow{display:inline-block;width:10px;font-size:9px}.stats-table th.stats-num button{justify-content:flex-end}.setting-divider{height:1px;margin:8px 0 4px;background:hsla(0,0%,100%,.18)}.hope-row{align-items:center;justify-content:center;gap:12px;padding:6px 12px 24px;background:none;border:none;overflow:visible}.hope-end{position:relative;display:flex;align-items:center}.hope-title{position:absolute;top:100%;left:50%;transform:translateX(-50%);margin:3px 0 0;font-family:Bangers Modified,Bangers,Impact,sans-serif;font-size:17px;letter-spacing:.1em;text-transform:uppercase;line-height:1;text-shadow:0 1px 0 #000,0 0 6px rgba(0,0,0,.6)}.hope-title.fear{color:#f87171}.hope-title.hope{color:#60a5fa}.hope-track{display:flex;gap:6px}.hope-space{position:relative;width:44px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid hsla(0,0%,100%,.18);background:hsla(0,0%,100%,.04);font-family:Bangers Modified,Bangers,Impact,sans-serif;font-size:18px;letter-spacing:.05em;color:hsla(0,0%,100%,.55)}.hope-space.fear{background:linear-gradient(180deg,rgba(153,27,27,.5),rgba(107,15,15,.6));border-color:hsla(0,91%,71%,.45)}.hope-space.hope{background:linear-gradient(180deg,rgba(30,64,175,.5),rgba(23,37,110,.6));border-color:rgba(96,165,250,.45)}.hope-space.current{color:#fff;box-shadow:0 0 0 2px #fff,0 0 14px hsla(0,0%,100%,.6)}.hope-token{position:absolute;inset:-6px auto auto -6px;width:16px;height:16px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff8d6,#f5b400 60%,#8a5a00);border:2px solid #111;box-shadow:0 2px 4px rgba(0,0,0,.6)}.hope-crime{background:hsla(0,0%,100%,.06);color:inherit;border:1px solid hsla(0,0%,100%,.2);border-radius:8px;padding:6px 10px;font-size:12px;cursor:pointer;white-space:nowrap}.hope-crime:disabled{opacity:.35;cursor:default}.hope-crime:not(:disabled):hover{border-color:#ffd23f;color:#ffd23f}.hq-slot.frozen .card{filter:saturate(.5) brightness(.85);box-shadow:0 0 0 2px rgba(147,210,255,.85),0 0 16px rgba(147,210,255,.55)}.badge-frozen{font-weight:700;font-size:11px;letter-spacing:.04em;color:#cfefff}@media (max-width:640px){.hope-row{flex-wrap:nowrap;gap:5px;padding:6px 4px 20px}.hope-title{font-size:13px}.hope-track{gap:3px}.hope-space{width:30px;height:26px;font-size:14px}.hope-crime{font-size:11px;padding:4px 5px}}.splendor-board .zone-label{min-width:68px}.gem-chip{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border-radius:50%;border:1px solid rgba(0,0,0,.45);box-shadow:inset 0 1px 2px hsla(0,0%,100%,.45),0 1px 2px rgba(0,0,0,.5);font-weight:700;font-size:13px;color:#10131a;text-shadow:0 1px 0 hsla(0,0%,100%,.4)}.gem-sm{width:20px;height:20px;font-size:11px;border-color:rgba(0,0,0,.3);box-shadow:inset 0 1px 1px hsla(0,0%,100%,.35)}.gem-empty{opacity:.3}button.gem-pick{cursor:pointer;transition:transform .1s ease,box-shadow .1s ease}.gem-on{transform:translateY(-3px) scale(1.1);box-shadow:inset 0 1px 2px hsla(0,0%,100%,.5),0 0 0 3px #d4a017,0 4px 8px rgba(0,0,0,.65)}.splendor-bank,.splendor-nobles,.splendor-reserved,.splendor-row,.splendor-tableau{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.splendor-card{position:relative;width:82px;border:2px solid #555;border-radius:8px;background:linear-gradient(160deg,rgba(30,32,40,.95),rgba(16,18,24,.95));overflow:hidden;transition:transform .1s ease,box-shadow .1s ease,opacity .15s ease}.splendor-card,.splendor-face{display:flex;flex-direction:column}.splendor-face{gap:3px;padding:4px;min-height:96px;background:none;border:0;color:inherit;text-align:left;width:100%}button.splendor-face{cursor:pointer}.splendor-card.can-buy{box-shadow:0 0 0 2px #4ade80,0 0 14px rgba(74,222,128,.45)}.splendor-card.can-reserve{box-shadow:0 0 0 2px rgba(212,160,23,.85)}.splendor-back{align-items:center;justify-content:center;border-style:dashed;min-height:96px}.splendor-back-mark{font-size:28px;opacity:.5}.splendor-head{display:flex;align-items:center;justify-content:space-between;border-radius:5px;padding:2px 5px;min-height:24px}.splendor-points{font-weight:800;font-size:17px;color:#10131a;text-shadow:0 1px 0 hsla(0,0%,100%,.45)}.splendor-gem{width:14px;height:14px;border-radius:50%;border:1px solid rgba(0,0,0,.5)}.splendor-cost{display:flex;flex-wrap:wrap;gap:2px;padding:2px}.splendor-noble{width:64px;height:64px;box-sizing:border-box;border:2px solid #8a6d3b;border-radius:8px;background:linear-gradient(160deg,rgba(60,50,30,.95),rgba(24,20,12,.95));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:3px}button.splendor-noble{cursor:pointer}.splendor-noble .splendor-points{color:#f0d79a;text-shadow:none}.splendor-noble .splendor-cost{flex-wrap:nowrap}.splendor-noble .gem-chip{width:15px;height:15px;font-size:9px;flex:0 0 auto}.splendor-deck{width:60px;min-height:96px;border:2px dashed #4a4f5c;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:12px}.splendor-tier{letter-spacing:2px;color:#d4a017}.splendor-deck-count{opacity:.75}.splendor-blind,.splendor-clear,.splendor-confirm{border-radius:5px;border:1px solid rgba(212,160,23,.75);background:rgba(212,160,23,.18);color:#f3e7c8;cursor:pointer}.splendor-blind{font-size:9px;padding:2px 4px}.splendor-confirm{font-size:13px;font-weight:700;padding:8px 14px;margin-left:6px;background:rgba(74,222,128,.22);border-color:#4ade80;color:#bbf7d0}.splendor-clear{font-size:12px;padding:7px 12px}.gem-chip{position:relative}.confirm-gems{display:flex;gap:8px;justify-content:center}.splendor-sub{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.splendor-stacks{align-items:flex-start}.splendor-stack{display:flex;flex-direction:column}.splendor-stack .splendor-card{box-shadow:0 3px 5px rgba(0,0,0,.55)}.splendor-stack .splendor-card+.splendor-card{margin-top:-6px}.splendor-card.is-stacked{height:40px}.splendor-count{font-size:12px;opacity:.85;white-space:nowrap}.splendor-count.over{color:var(--danger,#e05252);opacity:1;font-weight:700}.splendor-hint{font-size:13px;opacity:.8;flex-basis:100%}.splendor-prestige{font-weight:800;font-size:16px;color:#d4a017}.splendor-holdings{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.splendor-holding{position:relative;display:inline-flex}.splendor-bonus{position:absolute;right:-5px;bottom:-4px;min-width:13px;height:13px;border-radius:3px;border:1px solid;background:rgba(10,12,16,.92);color:#fff;font-size:9px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;pointer-events:none}.splendor-board .players-strip .player-chip:not(.viewing),.splendor-board .players-strip .player-chip:not(.viewing):hover{opacity:1}.splendor-board .players-strip .player-chip.viewing{border-color:var(--accent);background:rgba(242,181,68,.12)}.splendor-board .player-row-viewing{border-color:var(--accent)}.splendor-fallback{margin-top:6px;opacity:.55;font-size:12px}.splendor-fallback summary{cursor:pointer}@media (max-width:720px){.splendor-card{width:72px}.gem-chip{width:40px;height:40px;font-size:15px}.gem-sm{width:20px;height:20px;font-size:11px}}