/*! Cyberpunk TCG Simulator - Copyright (c) 2026 Go Solo. All rights reserved. Unauthorized copying, modification or redistribution of this code is prohibited. Card names, texts and images are the property of their respective owners. build 1f20e8c-2026-10-22 */
@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/chakra-petch-thai-400-normal-Bw1Q-fVY.woff2) format("woff2"),url(/assets/chakra-petch-thai-400-normal-KdzBjiWs.woff) format("woff");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/chakra-petch-vietnamese-400-normal-x153cCGL.woff2) format("woff2"),url(/assets/chakra-petch-vietnamese-400-normal-Cn7ya5On.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/chakra-petch-latin-ext-400-normal-C8u6EFkq.woff2) format("woff2"),url(/assets/chakra-petch-latin-ext-400-normal-MNNNbyh_.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/chakra-petch-latin-400-normal-SafcrIr2.woff2) format("woff2"),url(/assets/chakra-petch-latin-400-normal-D7EtbySE.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/chakra-petch-thai-600-normal-C620THcd.woff2) format("woff2"),url(/assets/chakra-petch-thai-600-normal-BiM5MXH8.woff) format("woff");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/chakra-petch-vietnamese-600-normal-YQPWIhHU.woff2) format("woff2"),url(/assets/chakra-petch-vietnamese-600-normal-Pvj4qcw_.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/chakra-petch-latin-ext-600-normal-CdGvbdDU.woff2) format("woff2"),url(/assets/chakra-petch-latin-ext-600-normal-nL80L4xU.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/chakra-petch-latin-600-normal-DVQm9bgb.woff2) format("woff2"),url(/assets/chakra-petch-latin-600-normal-DQKfcdKo.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/chakra-petch-thai-700-normal-B7WL5pBr.woff2) format("woff2"),url(/assets/chakra-petch-thai-700-normal-vZLZ_5L8.woff) format("woff");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/chakra-petch-vietnamese-700-normal-ZDCXY9IA.woff2) format("woff2"),url(/assets/chakra-petch-vietnamese-700-normal-gQuUA8Wu.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/chakra-petch-latin-ext-700-normal-DAkvJhej.woff2) format("woff2"),url(/assets/chakra-petch-latin-ext-700-normal-BeviJPUl.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/chakra-petch-latin-700-normal-CnDBPjkL.woff2) format("woff2"),url(/assets/chakra-petch-latin-700-normal-D1s_c2du.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rajdhani-devanagari-500-normal-B_DH_jja.woff2) format("woff2"),url(/assets/rajdhani-devanagari-500-normal-BPH8g_s8.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rajdhani-latin-ext-500-normal-DiyUS11w.woff2) format("woff2"),url(/assets/rajdhani-latin-ext-500-normal-CyRWJZ5B.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rajdhani-latin-500-normal-ByNUCHrt.woff2) format("woff2"),url(/assets/rajdhani-latin-500-normal-DfvNI-Td.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/rajdhani-devanagari-600-normal-DhS7ScYx.woff2) format("woff2"),url(/assets/rajdhani-devanagari-600-normal-BtY48IV_.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/rajdhani-latin-ext-600-normal-C9ZjJQAt.woff2) format("woff2"),url(/assets/rajdhani-latin-ext-600-normal-BleIgkPp.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/rajdhani-latin-600-normal-CXCVEoA9.woff2) format("woff2"),url(/assets/rajdhani-latin-600-normal-Dx02qI2_.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/rajdhani-devanagari-700-normal-BQQOj9BB.woff2) format("woff2"),url(/assets/rajdhani-devanagari-700-normal-DBRwWuxA.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/rajdhani-latin-ext-700-normal-S6aYESQK.woff2) format("woff2"),url(/assets/rajdhani-latin-ext-700-normal-BPaQ7tlD.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/rajdhani-latin-700-normal-BPDUZo87.woff2) format("woff2"),url(/assets/rajdhani-latin-700-normal-e0Uj8ZlN.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #0b0f14;--bg-2: #101720;--panel: #0e141b;--line: #e8eaed;--line-dim: rgba(232, 230, 223, .26);--line-faint: rgba(232, 230, 223, .12);--edge: rgba(232, 230, 223, .55);--text: #e8e6df;--text-dim: #9aa0a6;--accent-ok: #7ee0cf;--accent-danger: #ff7aa2;--accent-sell: #c4cad4;--accent-quick: #8d9ab5;--card-red: #d2382f;--card-blue: #2f7fd2;--card-green: #3ba55d;--card-yellow: #e2c93a;--back-unit: #f3e600;--back-legend: #0d0d0d;--font-label: "Chakra Petch", "Consolas", ui-monospace, sans-serif;--font-mono: "Consolas", "Roboto Mono", ui-monospace, monospace;--font-text: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display: "Chakra Petch", "Consolas", ui-monospace, sans-serif;--font-body: "Rajdhani", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--cyan: var(--accent-ok);--text-faint: #6f767d;--white: #fff;--black: #000;--overlay: #1d2a38;--bg-deep: #03060a;--bg-rgb: 11, 15, 20;--deep-rgb: 5, 8, 12;--panel-rgb: 14, 20, 27;--overlay-rgb: 29, 42, 56;--text-rgb: 232, 230, 223;--shade-rgb: 0, 0, 0;--white-rgb: 255, 255, 255;--card-red-rgb: 210, 56, 47;--card-blue-rgb: 47, 127, 210;--active: #243653;--active-edge: #5d7096;--on-line: var(--bg);--line-rgb: 232, 234, 237;--sell-rgb: 196, 202, 212;--ok-rgb: 126, 224, 207;--danger-rgb: 255, 122, 162;--fs-1: 11px;--fs-2: 13px;--fs-3: 15px;--fs-4: 18px;--fs-5: 24px;--fs-6: 32px;--radius: 4px;--cut: 8px;--dur-fast: .15s;--dur: .3s;--dur-flash: .8s;--ease: cubic-bezier(.2, .8, .2, 1);--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--sp-7: 48px;--sp-8: 64px;--t-caption: 12px;--t-meta: 14px;--t-body: 17px;--t-lead: 20px;--t-title: 26px;--t-display: clamp(28px, 5vw, 40px);--t-hero: clamp(36px, 7vw, 56px);--lh-tight: 1.05;--lh-ui: 1.3;--lh-text: 1.6;--cut-s: 6px;--cut-m: 10px;--cut-l: 14px;--surface-0: var(--bg);--surface-1: var(--bg-2);--surface-2: #162130;--surface-raised: var(--overlay);--divider: rgba(var(--text-rgb), .07);--scrim: rgba(var(--deep-rgb), .72);--plate-fill: var(--surface-1);--plate-edge: rgba(var(--text-rgb), .1);--texture-board: repeating-linear-gradient(135deg, rgba(var(--text-rgb), .013) 0 1px, transparent 1px 10px);--ok: var(--accent-ok);--ok-bg: rgba(var(--ok-rgb), .1);--danger: var(--accent-danger);--danger-bg: rgba(var(--danger-rgb), .1);--warn: #d9a35b;--warn-rgb: 217, 163, 91;--warn-bg: rgba(var(--warn-rgb), .1);--info: var(--line);--info-bg: rgba(var(--line-rgb), .08);--w-app: 560px;--w-app-desk: 960px;--w-text: 68ch;--w-page: 1200px;--z-sticky: 10;--z-sheet: 40;--z-dialog: 60;--z-toast: 65;--tap: 44px}@media(prefers-reduced-motion:reduce){:root{--dur-fast: 0ms;--dur: 0ms}}:is(.ds-cut,.ds-button,.ds-icon-button,.ds-group,.ds-avatar,.ds-tile,.ds-card-thumb,.ds-stat,.ds-input,.ds-select,.ds-textarea,.ds-search,.ds-checkbox,.ds-radio,.ds-segmented,.ds-notice,.ds-toast,.ds-sheet-panel,.ds-row-icon,.ds-badge,.ds-skeleton,.ds-chip,.ds-row-thumb){--ds-k: var(--cut-m);--ds-edge: transparent;--ds-fill: var(--surface-1);--ds-edge-w: 1px;position:relative;isolation:isolate;background:var(--ds-edge);clip-path:polygon(var(--ds-k) 0,100% 0,100% calc(100% - var(--ds-k)),calc(100% - var(--ds-k)) 100%,0 100%,0 var(--ds-k))}:is(.ds-cut,.ds-button,.ds-icon-button,.ds-group,.ds-avatar,.ds-tile,.ds-card-thumb,.ds-stat,.ds-input,.ds-select,.ds-textarea,.ds-search,.ds-checkbox,.ds-radio,.ds-segmented,.ds-notice,.ds-toast,.ds-sheet-panel,.ds-row-icon,.ds-badge,.ds-skeleton,.ds-chip,.ds-row-thumb):before{content:"";position:absolute;inset:var(--ds-edge-w);z-index:-1;background:var(--ds-fill);clip-path:polygon(calc(var(--ds-k) - .4px) 0,100% 0,100% calc(100% - var(--ds-k) + .4px),calc(100% - var(--ds-k) + .4px) 100%,0 100%,0 calc(var(--ds-k) - .4px))}.ds-button{--ds-k: var(--cut-m);--ds-edge: rgba(var(--text-rgb), .3);--ds-fill: var(--surface-1);display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);min-height:var(--tap);min-width:var(--tap);padding:0 var(--sp-5);border:0;color:var(--text);font-family:var(--font-display);font-size:var(--t-meta);font-weight:600;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;white-space:nowrap;cursor:pointer;transition:filter var(--dur-fast) var(--ease)}.ds-button:hover:not(:disabled):not([aria-disabled=true]){filter:brightness(1.15)}.ds-button:active:not(:disabled):not([aria-disabled=true]){--ds-edge: var(--active-edge);--ds-fill: var(--active)}.ds-button:focus-visible{outline:0;--ds-edge: var(--ok);--ds-edge-w: 2px}.ds-button:disabled,.ds-button[aria-disabled=true]{cursor:not-allowed;color:var(--text-faint);--ds-edge: rgba(var(--text-rgb), .12);filter:none}.ds-button--primary{--ds-edge: var(--line);--ds-fill: var(--line);color:var(--on-line);font-weight:700}.ds-button--primary:active:not(:disabled):not([aria-disabled=true]){--ds-edge: var(--line);--ds-fill: var(--line);filter:brightness(.85)}.ds-button--primary:focus-visible{--ds-edge: var(--ok);--ds-edge-w: 3px}.ds-button--primary:disabled,.ds-button--primary[aria-disabled=true]{--ds-edge: var(--surface-2);--ds-fill: var(--surface-2);color:var(--text-faint)}.ds-button--secondary{--ds-edge: rgba(var(--text-rgb), .3);--ds-fill: var(--surface-0)}.ds-button--ghost{--ds-edge: transparent;--ds-fill: transparent;color:var(--text-dim)}.ds-button--ghost:hover:not(:disabled):not([aria-disabled=true]){color:var(--text)}.ds-button--ghost:focus-visible{--ds-edge: var(--ok);--ds-edge-w: 2px;--ds-fill: var(--surface-0)}.ds-button--ghost:disabled,.ds-button--ghost[aria-disabled=true]{--ds-edge: transparent;--ds-fill: transparent}.ds-button--danger{--ds-edge: var(--danger);--ds-fill: var(--surface-0);color:var(--danger)}.ds-button--l{min-height:calc(var(--tap) + var(--sp-2));padding:0 var(--sp-6);font-size:var(--t-body);letter-spacing:.14em}.ds-button--block{display:flex;width:100%}.ds-button--two-line{flex-direction:column;gap:2px;padding:var(--sp-1) var(--sp-4);white-space:normal;text-wrap:balance;text-align:center;line-height:var(--lh-tight)}.ds-button-sub{font-family:var(--font-body);font-size:var(--t-caption);font-weight:500;letter-spacing:.02em;text-transform:none;line-height:var(--lh-tight);opacity:.8}.ds-button[aria-busy=true]{cursor:progress}.ds-button[aria-busy=true]>:not(.ds-button-spinner){opacity:.4}.ds-button-spinner{width:var(--sp-4);height:var(--sp-4);border:2px solid currentColor;border-right-color:transparent;animation:ds-spin var(--dur-flash) linear infinite}@keyframes ds-spin{to{transform:rotate(360deg)}}.ds-icon-button{--ds-k: var(--cut-s);--ds-fill: var(--surface-1);display:inline-grid;place-items:center;width:var(--tap);height:var(--tap);border:0;color:var(--text-dim);cursor:pointer;font-size:var(--t-lead)}.ds-icon-button:hover:not(:disabled):not([aria-disabled=true]){color:var(--text)}.ds-icon-button:disabled,.ds-icon-button[aria-disabled=true]{color:var(--text-faint);cursor:not-allowed}.ds-icon-button:focus-visible{outline:0;--ds-edge: var(--ok);--ds-edge-w: 2px}.ds-icon-button--s{width:calc(var(--tap) - var(--sp-2));height:calc(var(--tap) - var(--sp-2));font-size:var(--t-body)}.ds-group-label{margin:0 var(--sp-1) var(--sp-2);font-family:var(--font-display);font-size:var(--t-caption);font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim)}.ds-group{--ds-k: var(--cut-l);--ds-fill: var(--surface-1);--ds-edge: rgba(var(--text-rgb), .08);display:flex;flex-direction:column}.ds-group+.ds-group-label,.ds-group+.ds-group{margin-top:var(--sp-5)}@media(min-width:900px){.ds-group--grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--sp-4)}.ds-group--grid>.ds-row+.ds-row{box-shadow:none}.ds-group--grid>.ds-row{box-shadow:inset 0 -1px 0 var(--divider)}.ds-group--grid>.ds-row:last-child,.ds-group--grid>.ds-row:nth-child(odd):nth-last-child(2){box-shadow:none}}.ds-row{display:flex;align-items:center;gap:var(--sp-3);min-height:calc(var(--tap) + var(--sp-2));padding:var(--sp-3) var(--sp-4);width:100%;border:0;background:transparent;color:var(--text);font-family:var(--font-body);font-size:var(--t-body);line-height:var(--lh-ui);text-align:left;text-decoration:none}.ds-row+.ds-row{box-shadow:inset 0 1px 0 var(--divider)}.ds-row--interactive{cursor:pointer}.ds-row--interactive:hover{background:var(--surface-2)}.ds-row--interactive:active:not([aria-disabled=true]){background:var(--active)}.ds-row:focus-visible{outline:0;box-shadow:inset 0 0 0 2px var(--ok)}.ds-row--danger,.ds-row--danger .ds-row-title{color:var(--danger)}.ds-row[aria-disabled=true],.ds-row[aria-disabled=true] .ds-row-title{color:var(--text-faint);cursor:not-allowed}.ds-row[aria-disabled=true]:hover{background:transparent}.ds-row-icon{--ds-k: var(--cut-s);--ds-fill: rgba(var(--line-rgb), .08);flex:none;display:grid;place-items:center;width:calc(var(--sp-6) - var(--sp-1));height:calc(var(--sp-6) - var(--sp-1));color:var(--line);font-size:var(--t-meta)}.ds-row-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.ds-row-title{font-weight:600;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ds-row-desc{font-size:var(--t-meta);font-weight:500;color:var(--text-dim);overflow-wrap:anywhere}.ds-row-end{flex:none;min-width:0;max-width:50%;display:flex;align-items:center;gap:var(--sp-2);margin-left:auto}.ds-row-value{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--text-dim);font-weight:600;font-variant-numeric:tabular-nums}.ds-row-chevron{color:var(--text-faint);font-size:var(--t-lead);line-height:1}.ds-tile{--ds-k: var(--cut-l);--ds-fill: var(--surface-1);--ds-edge: rgba(var(--text-rgb), .08);display:grid;grid-template-columns:calc(var(--sp-8) + var(--sp-2)) 1fr;gap:var(--sp-3);padding:var(--sp-3);color:var(--text);text-decoration:none}a.ds-tile:hover{--ds-edge: rgba(var(--text-rgb), .3)}.ds-tile:focus-visible{outline:0;--ds-edge: var(--ok);--ds-edge-w: 2px}.ds-tile-media{--ds-k: var(--cut-s);overflow:hidden;clip-path:polygon(var(--cut-s) 0,100% 0,100% calc(100% - var(--cut-s)),calc(100% - var(--cut-s)) 100%,0 100%,0 var(--cut-s))}.ds-tile-media img{width:100%;height:100%;object-fit:cover}.ds-tile-body{min-width:0;display:flex;flex-direction:column;gap:var(--sp-1);align-self:center}.ds-tile-kicker{font-family:var(--font-display);font-size:var(--t-caption);font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ok)}.ds-tile-title{margin:0;font-family:var(--font-display);font-size:var(--t-body);font-weight:700;line-height:var(--lh-ui)}.ds-tile-desc{margin:0;font-family:var(--font-body);font-size:var(--t-meta);color:var(--text-dim)}.ds-tile--feature{grid-template-columns:1fr;padding:0;min-height:calc(var(--sp-8) * 4);align-content:end;overflow:hidden}.ds-tile--feature .ds-tile-media{position:absolute;inset:var(--ds-edge-w);z-index:-1;clip-path:none;opacity:.5}.ds-tile--feature .ds-tile-body{padding:var(--sp-5);max-width:60%}.ds-tile--feature:after{content:"";position:absolute;inset:var(--ds-edge-w);z-index:-1;pointer-events:none;background:linear-gradient(to top,rgba(var(--bg-rgb),.92),rgba(var(--bg-rgb),.55) 55%,rgba(var(--bg-rgb),0))}.ds-tile--feature .ds-tile-title{font-size:var(--t-title);line-height:var(--lh-tight)}.ds-tile--feature .ds-tile-desc{font-size:var(--t-body)}.ds-card-thumb{--ds-k: var(--cut-s);display:block;aspect-ratio:63 / 88;overflow:hidden}.ds-card-thumb:focus-visible{outline:0;--ds-edge: var(--ok);--ds-edge-w: 2px}.ds-card-thumb img{position:absolute;inset:var(--ds-edge-w);width:calc(100% - 2 * var(--ds-edge-w));height:calc(100% - 2 * var(--ds-edge-w));object-fit:cover;z-index:-1}.ds-card-thumb-count{position:absolute;right:var(--sp-1);bottom:var(--sp-1);min-width:var(--sp-5);padding:0 var(--sp-1);background:var(--surface-0);color:var(--line);font-family:var(--font-display);font-size:var(--t-meta);font-weight:700;text-align:center}.ds-avatar{--ds-k: var(--cut-m);--ds-edge: transparent;--ds-fill: var(--line);flex:none;display:inline-grid;place-items:center;width:calc(var(--sp-7) - var(--sp-1));height:calc(var(--sp-7) - var(--sp-1));overflow:hidden;color:var(--on-line);font-family:var(--font-display);font-size:var(--t-lead);font-weight:700}.ds-avatar img{position:absolute;inset:var(--ds-edge-w);width:calc(100% - 2 * var(--ds-edge-w));height:calc(100% - 2 * var(--ds-edge-w));object-fit:cover;z-index:-1}.ds-avatar--l{width:var(--sp-8);height:var(--sp-8);font-size:var(--t-title)}.ds-badge{--ds-k: var(--cut-s);--ds-fill: rgba(var(--text-rgb), .08);display:inline-flex;align-items:center;gap:var(--sp-1);padding:2px var(--sp-2);font-family:var(--font-display);font-size:var(--t-caption);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);white-space:nowrap}.ds-badge--ok{--ds-fill: var(--ok-bg);color:var(--ok)}.ds-badge--warn{--ds-fill: var(--warn-bg);color:var(--warn)}.ds-badge--danger{--ds-fill: var(--danger-bg);color:var(--danger)}.ds-badge--info{--ds-fill: var(--info-bg);color:var(--info)}.ds-chips{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.ds-chip{--ds-k: var(--cut-s);--ds-edge: rgba(var(--text-rgb), .26);--ds-fill: var(--surface-1);display:inline-flex;align-items:center;gap:var(--sp-2);min-height:var(--tap);padding:0 var(--sp-3);border:0;cursor:pointer;color:var(--text-dim);font-family:var(--font-display);font-size:var(--t-meta);font-weight:600;white-space:nowrap}.ds-chip:hover:not(:disabled):not([aria-disabled=true]){color:var(--text)}.ds-chip:disabled,.ds-chip[aria-disabled=true]{cursor:not-allowed;color:var(--text-faint);--ds-edge: rgba(var(--text-rgb), .12)}.ds-chip[aria-pressed=true]{--ds-fill: var(--active);--ds-edge: var(--active-edge);color:var(--text)}.ds-chip:focus-visible{outline:0;--ds-edge: var(--ok);--ds-edge-w: 2px}.ds-chip-mark{flex:none;display:inline-block;width:var(--sp-3);height:var(--sp-3);background:var(--ds-chip-mark, var(--text-faint))}.ds-chip-x{color:var(--text-faint)}.ds-stepper{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--sp-1)}.ds-stepper-value{min-width:var(--sp-5);text-align:center;color:var(--text);font-family:var(--font-display);font-weight:700;font-variant-numeric:tabular-nums}.ds-row-thumb{--ds-k: var(--cut-s);flex:none;display:block;width:var(--sp-7);aspect-ratio:63 / 88;overflow:hidden}.ds-row-thumb img{position:absolute;inset:var(--ds-edge-w);width:calc(100% - 2 * var(--ds-edge-w));height:calc(100% - 2 * var(--ds-edge-w));object-fit:cover;z-index:-1}.ds-progress{height:var(--sp-2);min-width:var(--sp-8);background:var(--divider)}.ds-progress-fill{height:100%;background:var(--line)}.ds-progress--danger .ds-progress-fill{background:var(--danger)}.ds-stat{--ds-k: var(--cut-m);--ds-fill: var(--surface-1);display:flex;flex-direction:column;gap:2px;padding:var(--sp-3) var(--sp-4)}.ds-stat-value{font-family:var(--font-display);font-size:var(--t-title);font-weight:700;color:var(--line);line-height:var(--lh-tight);font-variant-numeric:tabular-nums}.ds-stat-label{font-family:var(--font-body);font-size:var(--t-meta);color:var(--text-dim)}.ds-field{display:flex;flex-direction:column;gap:var(--sp-2)}.ds-field-label{font-family:var(--font-display);font-size:var(--t-caption);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim)}.ds-field-hint{font-family:var(--font-body);font-size:var(--t-meta);color:var(--text-dim)}.ds-field-error{font-family:var(--font-body);font-size:var(--t-meta);color:var(--danger)}.ds-input,.ds-textarea,.ds-search,.ds-select{--ds-k: var(--cut-s);--ds-edge: rgba(var(--text-rgb), .26);--ds-fill: var(--surface-1);display:flex;align-items:center;min-height:var(--tap)}.ds-input:hover,.ds-textarea:hover,.ds-search:hover,.ds-select:hover{--ds-edge: var(--edge)}.ds-input:focus-within,.ds-textarea:focus-within,.ds-search:focus-within,.ds-select:focus-within{--ds-edge: var(--line);--ds-edge-w: 2px}.ds-input:focus-visible,.ds-textarea:focus-visible,.ds-search:focus-visible,.ds-select:focus-visible{outline:0}.ds-field--invalid :is(.ds-input,.ds-textarea,.ds-search,.ds-select){--ds-edge: var(--danger)}.ds-input:has(.ds-control:disabled),.ds-textarea:has(.ds-control:disabled),.ds-search:has(.ds-control:disabled),.ds-select:has(.ds-control:disabled){--ds-edge: rgba(var(--text-rgb), .12);cursor:not-allowed}.ds-control{flex:1;min-width:0;min-height:var(--tap);padding:0 var(--sp-3);border:0;outline:0;background:transparent;color:var(--text);font-family:var(--font-body);font-size:var(--t-body);font-weight:500}.ds-control::placeholder{color:var(--text-dim)}.ds-control:disabled,.ds-control[aria-disabled=true]{color:var(--text-faint);cursor:not-allowed}.ds-textarea{align-items:stretch}.ds-textarea .ds-control{min-height:calc(var(--sp-8) * 2);padding:var(--sp-3);resize:vertical;line-height:var(--lh-ui)}.ds-search .ds-search-icon{padding-left:var(--sp-3);color:var(--text-faint)}.ds-select .ds-control{appearance:none;padding-right:var(--sp-7);cursor:pointer}.ds-select .ds-control option{background:var(--surface-1);color:var(--text)}.ds-select-arrow{position:absolute;right:var(--sp-3);pointer-events:none;color:var(--text-dim)}.ds-toggle{--ds-k: var(--cut-s);--ds-fill: var(--surface-2);--ds-edge: rgba(var(--text-rgb), .3);--ds-edge-w: 1px;--ds-pad: calc((var(--tap) - var(--sp-5) - 2px) / 2);position:relative;isolation:isolate;flex:none;width:calc(var(--tap) + var(--sp-1));height:var(--tap);padding:0;border:0;background:transparent;cursor:pointer}.ds-toggle:before,.ds-toggle:after{content:"";position:absolute;z-index:-1;clip-path:polygon(var(--ds-k) 0,100% 0,100% calc(100% - var(--ds-k)),calc(100% - var(--ds-k)) 100%,0 100%,0 var(--ds-k))}.ds-toggle:before{inset:var(--ds-pad) 0;background:var(--ds-edge)}.ds-toggle:after{inset:calc(var(--ds-pad) + var(--ds-edge-w)) var(--ds-edge-w);background:var(--ds-fill)}.ds-toggle-knob{position:absolute;top:calc((var(--tap) - var(--sp-4) - 2px) / 2);left:var(--sp-1);width:calc(var(--sp-4) + 2px);height:calc(var(--sp-4) + 2px);background:var(--text-dim);clip-path:polygon(var(--sp-1) 0,100% 0,100% calc(100% - var(--sp-1)),calc(100% - var(--sp-1)) 100%,0 100%,0 var(--sp-1));transition:transform var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.ds-toggle[aria-checked=true]{--ds-fill: var(--active);--ds-edge: var(--active-edge)}.ds-toggle[aria-checked=true] .ds-toggle-knob{transform:translate(calc(var(--tap) + var(--sp-1) - var(--sp-4) - 2px - var(--sp-2)));background:var(--line)}.ds-toggle:focus-visible{outline:0;--ds-edge: var(--ok);--ds-edge-w: 2px}.ds-toggle:disabled,.ds-toggle[aria-disabled=true]{cursor:not-allowed;opacity:.5}.ds-check{position:relative;display:inline-flex;align-items:center;gap:var(--sp-3);min-height:var(--tap);cursor:pointer;font-family:var(--font-body);font-size:var(--t-body);color:var(--text)}.ds-check-input{position:absolute;opacity:0;width:1px;height:1px}.ds-checkbox,.ds-radio{--ds-k: var(--cut-s);--ds-edge: rgba(var(--text-rgb), .4);--ds-fill: var(--surface-1);flex:none;display:inline-grid;place-items:center;width:calc(var(--sp-5) - 2px);height:calc(var(--sp-5) - 2px);color:var(--on-line);font-size:var(--t-meta);font-weight:700}.ds-radio{--ds-k: calc(var(--cut-s) + 2px)}.ds-check-input:checked+.ds-checkbox,.ds-check-input:checked+.ds-radio{--ds-edge: var(--line);--ds-fill: var(--line)}.ds-check-input:focus-visible+.ds-checkbox,.ds-check-input:focus-visible+.ds-radio{--ds-edge: var(--ok);--ds-edge-w: 2px}.ds-checkbox:focus-visible,.ds-radio:focus-visible{outline:0}.ds-check-input:checked+.ds-checkbox:after{content:"✓"}.ds-check-input:checked+.ds-radio:after{content:"";width:var(--sp-2);height:var(--sp-2);background:var(--on-line)}.ds-check-input:disabled+:is(.ds-checkbox,.ds-radio){opacity:.5}.ds-segmented{--ds-k: var(--cut-m);--ds-fill: var(--surface-1);--ds-edge: rgba(var(--text-rgb), .12);display:flex;gap:2px;padding:2px}.ds-segmented-option{flex:1 1 auto;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;min-height:var(--tap);padding:0 var(--sp-3);border:0;background:transparent;color:var(--text-dim);font-family:var(--font-display);font-size:var(--t-meta);font-weight:600;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;clip-path:polygon(var(--cut-s) 0,100% 0,100% calc(100% - var(--cut-s)),calc(100% - var(--cut-s)) 100%,0 100%,0 var(--cut-s))}.ds-segmented-option:hover:not(:disabled):not([aria-disabled=true]){color:var(--text)}.ds-segmented-option[aria-pressed=true]{background:var(--active);color:var(--text)}.ds-segmented-option:focus-visible{outline:0;box-shadow:inset 0 0 0 2px var(--ok)}.ds-segmented-option:disabled,.ds-segmented-option[aria-disabled=true]{color:var(--text-faint);cursor:not-allowed}.ds-screen-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--sp-2);min-height:calc(var(--tap) + var(--sp-3))}.ds-screen-head-back{grid-column:1}.ds-screen-title{grid-column:2;min-width:0;margin:0;font-family:var(--font-display);font-size:var(--t-title);font-weight:700;letter-spacing:.02em;line-height:var(--lh-tight);color:var(--text);overflow-wrap:anywhere}.ds-screen-head>.ds-screen-title:first-child{grid-column:1 / 3}.ds-screen-head-action{grid-column:3;justify-self:end}.ds-tabs{flex:none;display:flex;gap:var(--sp-1);overflow-x:auto;scrollbar-width:none;box-shadow:inset 0 -1px 0 var(--divider)}.ds-tab{position:relative;flex:none;display:inline-flex;align-items:center;gap:var(--sp-2);min-height:var(--tap);padding:0 var(--sp-3);border:0;background:transparent;color:var(--text-dim);font-family:var(--font-display);font-size:var(--t-meta);font-weight:600;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.ds-tab:hover{color:var(--text)}.ds-tab[aria-selected=true]{color:var(--text);box-shadow:inset 0 -2px 0 var(--line)}.ds-tab:focus-visible{outline:0;box-shadow:inset 0 0 0 2px var(--ok)}.ds-tab[aria-selected=true]:focus-visible{box-shadow:inset 0 -2px 0 var(--line),inset 0 0 0 2px var(--ok)}.ds-tab-count{min-width:var(--sp-5);padding:0 var(--sp-1);background:rgba(var(--text-rgb),.1);color:var(--text-dim);font-size:var(--t-caption);text-align:center}.ds-tab[aria-selected=true] .ds-tab-count{background:var(--line);color:var(--on-line)}.ds-sheet-scrim{position:fixed;inset:0;z-index:var(--z-sheet);background:var(--scrim);animation:ds-fade var(--dur) var(--ease) both}.ds-sheet-panel{--ds-k: var(--cut-l);--ds-fill: var(--surface-raised);--ds-edge: rgba(var(--text-rgb), .12);position:fixed;z-index:var(--z-sheet);left:0;right:0;bottom:0;max-height:88dvh;display:flex;flex-direction:column;animation:ds-rise var(--dur) var(--ease) both}.ds-sheet-panel--center{inset:50% auto auto 50%;z-index:var(--z-dialog);width:min(calc(100vw - var(--sp-6)),var(--w-app));transform:translate(-50%,-50%);animation:ds-fade var(--dur) var(--ease) both}.ds-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-4) var(--sp-4) var(--sp-2)}.ds-sheet-title{margin:0;font-family:var(--font-display);font-size:var(--t-lead);font-weight:700}.ds-sheet-body{overflow-y:auto;padding:var(--sp-2) var(--sp-4) var(--sp-5)}.ds-sheet-panel:not(.ds-sheet-panel--center) .ds-sheet-body{padding-bottom:calc(var(--sp-5) + env(safe-area-inset-bottom,0px))}@keyframes ds-fade{0%{opacity:0}}@keyframes ds-rise{0%{transform:translateY(var(--sp-6));opacity:0}}.ds-notice{--ds-k: var(--cut-m);--ds-fill: var(--info-bg);display:flex;align-items:flex-start;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);color:var(--text);font-family:var(--font-body);font-size:var(--t-meta);line-height:var(--lh-ui)}.ds-notice-icon{flex:none;color:var(--info);font-weight:700}.ds-notice-text{min-width:0;flex:1}.ds-notice-action{flex:none;margin-left:auto;align-self:center}.ds-notice--ok{--ds-fill: var(--ok-bg)}.ds-notice--ok .ds-notice-icon{color:var(--ok)}.ds-notice--warn{--ds-fill: var(--warn-bg)}.ds-notice--warn .ds-notice-icon{color:var(--warn)}.ds-notice--danger{--ds-fill: var(--danger-bg)}.ds-notice--danger .ds-notice-icon{color:var(--danger)}.ds-notice--solid{--ds-edge: rgba(var(--text-rgb), .12);--ds-fill: linear-gradient(var(--info-bg), var(--info-bg)), var(--surface-1)}.ds-notice--solid.ds-notice--ok{--ds-edge: var(--ok);--ds-fill: linear-gradient(var(--ok-bg), var(--ok-bg)), var(--surface-1)}.ds-notice--solid.ds-notice--warn{--ds-edge: var(--warn);--ds-fill: linear-gradient(var(--warn-bg), var(--warn-bg)), var(--surface-1)}.ds-notice--solid.ds-notice--danger{--ds-edge: var(--danger);--ds-fill: linear-gradient(var(--danger-bg), var(--danger-bg)), var(--surface-1)}.ds-toast-region{position:fixed;z-index:var(--z-toast);left:50%;bottom:calc(var(--sp-5) + env(safe-area-inset-bottom,0px));transform:translate(-50%);width:min(calc(100vw - var(--sp-6)),var(--w-app));pointer-events:none;display:flex;justify-content:center}.ds-toast{--ds-k: var(--cut-m);--ds-fill: var(--surface-raised);--ds-edge: rgba(var(--text-rgb), .2);display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);color:var(--text);font-family:var(--font-body);font-size:var(--t-body);font-weight:600;pointer-events:auto;animation:ds-rise var(--dur) var(--ease) both}.ds-toast--ok{--ds-edge: var(--ok)}.ds-toast--danger{--ds-edge: var(--danger)}.ds-empty{display:flex;flex-direction:column;align-items:center;gap:var(--sp-3);padding:var(--sp-7) var(--sp-4);text-align:center;color:var(--text-dim);font-family:var(--font-body);font-size:var(--t-body)}.ds-empty-icon{font-size:var(--t-title);color:var(--text-faint)}.ds-empty-text{margin:0;max-width:36ch}.ds-skeleton{--ds-k: var(--cut-s);--ds-fill: rgba(var(--text-rgb), .07);display:block;animation:ds-pulse var(--dur-flash) var(--ease) infinite alternate}.ds-skeleton--text{height:var(--sp-4);width:60%}.ds-skeleton--block{height:calc(var(--sp-8) + var(--sp-4));width:100%}@keyframes ds-pulse{to{opacity:.5}}@media(prefers-reduced-motion:reduce){.ds-skeleton,.ds-button-spinner{animation:none}}.ds-plate{--ds-k: var(--cut-l);position:relative;isolation:isolate}.ds-plate:before,.ds-plate:after{content:"";position:absolute;z-index:-1;pointer-events:none}.ds-plate:before{inset:0;background:var(--plate-edge);clip-path:polygon(var(--ds-k) 0,100% 0,100% calc(100% - var(--ds-k)),calc(100% - var(--ds-k)) 100%,0 100%,0 var(--ds-k))}.ds-plate:after{inset:1px;background:var(--plate-fill);clip-path:polygon(calc(var(--ds-k) - 1px) 0,100% 0,100% calc(100% - var(--ds-k) + 1px),calc(100% - var(--ds-k) + 1px) 100%,0 100%,0 calc(var(--ds-k) - 1px))}.ds-plate--top:before{clip-path:polygon(var(--ds-k) 0,100% 0,100% 100%,0 100%,0 var(--ds-k))}.ds-plate--top:after{inset:1px 1px 0;clip-path:polygon(calc(var(--ds-k) - 1px) 0,100% 0,100% 100%,0 100%,0 calc(var(--ds-k) - 1px))}.ds-plate--bottom:before{clip-path:polygon(0 0,100% 0,100% calc(100% - var(--ds-k)),calc(100% - var(--ds-k)) 100%,0 100%)}.ds-plate--bottom:after{inset:0 1px 1px;clip-path:polygon(0 0,100% 0,100% calc(100% - var(--ds-k) + 1px),calc(100% - var(--ds-k) + 1px) 100%,0 100%)}.ds-plate--flat:before,.ds-plate--flat:after{content:none}.ds-plate--flat{background:var(--plate-fill);box-shadow:inset 0 -1px 0 var(--plate-edge)}.ds-texture{background:var(--texture-board),var(--surface-0)}.ds-scale{display:inline-flex;gap:2px;vertical-align:middle}.ds-scale-seg{width:var(--sp-4);height:var(--sp-1);background:var(--line-faint)}.ds-scale[data-level="1"] .ds-scale-seg:nth-child(-n+1),.ds-scale[data-level="2"] .ds-scale-seg:nth-child(-n+2),.ds-scale[data-level="3"] .ds-scale-seg:nth-child(-n+3){background:var(--line)}.ds-page{width:100%;max-width:var(--w-page);margin:0 auto;padding:0 var(--sp-4)}@media(min-width:900px){.ds-page{padding:0 var(--sp-6)}}.ds-app-screen{width:100%;max-width:var(--w-app);margin:0 auto;min-height:100dvh;display:flex;flex-direction:column;gap:var(--sp-4);padding:calc(var(--sp-4) + env(safe-area-inset-top,0px)) var(--sp-4) 0;background:var(--surface-0);color:var(--text);font-family:var(--font-body);font-size:var(--t-body)}.ds-app-body{flex:1;display:flex;flex-direction:column;padding-bottom:var(--sp-5)}body:has(.ds-app-footer) .ds-toast-region{bottom:calc(var(--tap) + var(--sp-7) + env(safe-area-inset-bottom,0px))}@media(max-width:899px){body:has(.ds-tabbar) .ds-toast-region{bottom:calc(var(--tap) + var(--sp-3) + var(--sp-5) + env(safe-area-inset-bottom,0px))}body:has(.ds-tabbar):has(.ds-app-footer) .ds-toast-region{bottom:calc(var(--tap) + var(--sp-3) + var(--tap) + var(--sp-7) + env(safe-area-inset-bottom,0px))}}.ds-app-footer{position:sticky;bottom:0;z-index:var(--z-sticky);padding:var(--sp-3) 0 calc(var(--sp-3) + env(safe-area-inset-bottom,0px));background:linear-gradient(to top,var(--surface-0) 70%,transparent)}@media(min-width:900px){.ds-app-screen{max-width:var(--w-app-desk);gap:var(--sp-5);padding:calc(var(--sp-6) + env(safe-area-inset-top,0px)) var(--sp-6) 0}.ds-app-screen .ds-screen-title{font-size:var(--t-display)}.ds-app-footer{position:static;background:none}.ds-app-screen:not(.ds-app-screen--wide) .ds-app-body{flex:none}.ds-app-screen:not(.ds-app-screen--wide) .ds-app-footer{display:flex;justify-content:flex-end;padding-top:var(--sp-5)}.ds-app-screen:not(.ds-app-screen--wide) .ds-app-footer>.ds-button{width:auto;min-width:calc(var(--sp-8) * 5)}.ds-app-screen--wide{max-width:var(--w-page)}.ds-app-screen--wide .ds-app-body{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:var(--sp-5);align-items:start}.ds-app-screen--split .ds-app-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--sp-6);align-items:start}.ds-app-screen--side-tabs{display:grid;grid-template-columns:calc(var(--sp-8) * 3.5) minmax(0,1fr);grid-template-rows:auto 1fr auto;column-gap:var(--sp-6);align-content:start}.ds-app-screen--side-tabs>.ds-screen-head{grid-column:1 / -1}.ds-app-screen--side-tabs>.ds-tabs{grid-column:1;align-self:start;flex-direction:column;overflow:visible;box-shadow:inset -1px 0 0 var(--divider)}.ds-app-screen--side-tabs>.ds-tabs .ds-tab{justify-content:flex-start}.ds-app-screen--side-tabs>.ds-tabs .ds-tab[aria-selected=true]{box-shadow:inset -2px 0 0 var(--line)}.ds-app-screen--side-tabs>.ds-tabs .ds-tab[aria-selected=true]:focus-visible{box-shadow:inset -2px 0 0 var(--line),inset 0 0 0 2px var(--ok)}.ds-app-screen--side-tabs>.ds-app-body,.ds-app-screen--side-tabs>.ds-app-footer{grid-column:2}}.ds-landing{background:var(--surface-0);color:var(--text);font-family:var(--font-body)}.ds-hero{position:relative;isolation:isolate;overflow:hidden;display:grid;gap:var(--sp-6);padding-block:var(--sp-7) var(--sp-6)}.ds-hero-glow{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(60% 80% at 75% 40%,rgba(var(--card-blue-rgb),.22),transparent 70%),radial-gradient(40% 60% at 95% 90%,rgba(var(--card-red-rgb),.18),transparent 70%)}.ds-hero-text{display:flex;flex-direction:column;gap:var(--sp-4)}.ds-hero-kicker{font-family:var(--font-display);font-size:var(--t-caption);font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ok)}.ds-hero-title{margin:0;font-family:var(--font-display);font-size:var(--t-hero);font-weight:700;line-height:var(--lh-tight);letter-spacing:-.01em}.ds-hero-lead{margin:0;max-width:34ch;font-size:var(--t-lead);color:var(--text-dim);line-height:var(--lh-ui)}.ds-hero-actions{display:flex;flex-wrap:wrap;gap:var(--sp-3);margin-top:var(--sp-2)}.ds-hero-fan{position:relative;height:calc(var(--sp-8) * 4)}.ds-hero-fan>*{position:absolute;width:42%;max-width:calc(var(--sp-8) * 3);box-shadow:0 var(--sp-5) var(--sp-7) rgba(var(--shade-rgb),.6)}.ds-hero-fan>:nth-child(1){left:4%;top:14%;transform:rotate(-12deg);opacity:.8}.ds-hero-fan>:nth-child(2){left:29%;top:0;z-index:1;transform:rotate(2deg)}.ds-hero-fan>:nth-child(3){left:54%;top:16%;transform:rotate(13deg);opacity:.8}@media(min-width:900px){.ds-hero{grid-template-columns:1.1fr 1fr;align-items:center;padding-block:var(--sp-8) var(--sp-7)}.ds-hero-fan{height:calc(var(--sp-8) * 6)}}.ds-stat-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(calc(var(--sp-8) * 2.5),1fr));gap:var(--sp-3)}.ds-section{padding:var(--sp-7) 0}.ds-section-title{margin:0 0 var(--sp-5);font-family:var(--font-display);font-size:var(--t-display);font-weight:700;line-height:var(--lh-tight)}.ds-list-page{padding:var(--sp-5) 0 var(--sp-7);display:flex;flex-direction:column;gap:var(--sp-6)}.ds-feature-grid{display:grid;gap:var(--sp-4)}.ds-side-list{display:grid;gap:var(--sp-3);align-content:start}@media(min-width:900px){.ds-feature-grid{grid-template-columns:1.3fr 1fr}}.ds-tile-grid{display:grid;gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(calc(var(--sp-8) * 4.5),1fr))}.ds-card-grid{display:grid;gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(calc(var(--sp-8) * 2),1fr))}.ds-filter-bar{display:flex;flex-wrap:wrap;gap:var(--sp-3);align-items:end}.ds-article{max-width:var(--w-text);margin:0 auto;padding:var(--sp-6) 0 var(--sp-7);font-family:var(--font-body);font-size:var(--t-body);line-height:var(--lh-text);color:var(--text)}.ds-article h1{margin:var(--sp-2) 0 var(--sp-5);font-family:var(--font-display);font-size:var(--t-display);line-height:var(--lh-tight)}.ds-article h2{margin:var(--sp-7) 0 var(--sp-3);font-family:var(--font-display);font-size:var(--t-title);line-height:var(--lh-ui)}.ds-article h3{margin:var(--sp-5) 0 var(--sp-2);font-family:var(--font-display);font-size:var(--t-lead)}.ds-article p{margin:0 0 var(--sp-4)}.ds-article img{margin:var(--sp-5) 0;clip-path:polygon(var(--cut-l) 0,100% 0,100% calc(100% - var(--cut-l)),calc(100% - var(--cut-l)) 100%,0 100%,0 var(--cut-l))}.ds-article a{color:var(--ok);text-underline-offset:3px}:root{--gear-peek: .2;--card-w: 64px;--card-h: 90px;--hand-card-w: 88px;--hand-card-h: 123px;--legend-w: 44px;--legend-h: 62px;--gig: 44px;--preview-w: 280px;--preview-h: 392px;--wave-pick: var(--accent-ok);--wave-target: var(--accent-danger);--bar-rival-bg: color-mix(in srgb, var(--accent-danger) 12%, var(--bg));--z-under: -1;--z-flat: 0;--z-lift-1: 1;--z-lift-2: 2;--z-lift-3: 3;--z-lift-4: 4;--z-lift-5: 5;--z-fight: 20;--z-log: 21;--z-zoom-held: 28;--z-scene: 29;--z-banner: 30;--z-effect: 31;--z-scene-panel: 32;--z-flash: 35;--z-menu-back: 37;--z-confirm: 38;--z-choice-back: 39;--z-mulligan: 39;--z-choice: 40;--z-sheet-back: 40;--z-sheet-panel: 41;--z-zoom-back: 41;--z-preview: 41;--z-zoom: 41;--z-zoom-close: 42;--z-hint-dim: 44;--z-hint: 45;--z-tip: 50;--z-qr: 50;--z-drag: 55;--z-tutor: 56;--z-tutor-caption: 57;--z-flight: 58;--z-fade-back: 59;--z-fade: 60;--z-end: 60;--z-end-zoom: 62;--z-blocker: 70;--z-feedback: 900;--z-offline: 1000;--z-board-dialog: var(--z-sheet)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--bg);color:var(--text);font-family:var(--font-text);font-variant-numeric:tabular-nums}body{overscroll-behavior:none;-webkit-tap-highlight-color:transparent}#app{min-height:100dvh}:root{--vh1: calc(var(--app-h, 100dvh) / 100)}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}img{display:block;max-width:100%}.label{--k: 5px;font-family:var(--font-display);font-size:var(--fs-1);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text);background:var(--line-faint);box-shadow:inset 0 0 0 1px var(--line-dim);padding:2px 9px;clip-path:polygon(var(--k) 0,100% 0,100% calc(100% - var(--k)),calc(100% - var(--k)) 100%,0 100%,0 var(--k))}.cut{clip-path:polygon(var(--cut) 0,100% 0,100% calc(100% - var(--cut)),calc(100% - var(--cut)) 100%,0 100%,0 var(--cut))}.start{min-height:100dvh;display:grid;place-content:center;gap:24px;text-align:center;padding:24px}.start-title{font-family:var(--font-label);font-size:var(--fs-4);letter-spacing:.12em;color:var(--line);text-transform:uppercase}.card{position:relative;aspect-ratio:63 / 88;border:1px solid var(--line-dim);border-radius:4.6%/3.3%;overflow:hidden;background:var(--bg-2);flex:none}.card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.card-ph{position:absolute;inset:0;display:grid;grid-template-rows:auto 1fr auto;padding:4px;font-family:var(--font-label);font-size:var(--fs-1)}.card-ph-name{align-self:center;text-align:center;overflow:hidden}.card-ph-power{text-align:right}.color-red .card-ph{border-top:3px solid var(--card-red)}.color-blue .card-ph{border-top:3px solid var(--card-blue)}.color-green .card-ph{border-top:3px solid var(--card-green)}.color-yellow .card-ph{border-top:3px solid var(--card-yellow)}.card-mini{width:var(--card-w)}.card-hand{width:var(--hand-card-w)}.card-legend{width:var(--legend-w)}.card-preview{width:var(--preview-w)}.card.empty{border-style:dashed;background:transparent}.card-back{background:var(--back-unit) url(/assets/card-back-EPQwgQXC.svg) center / cover no-repeat;border-color:rgba(var(--shade-rgb),.6)}.card-back.card-legend{background:var(--back-legend) url(/assets/legend-back-bMlZuaLo.svg) center / cover no-repeat;border-color:rgba(var(--line-rgb),.45)}.hl-action{--pulse-color: var(--accent-ok);box-shadow:0 0 0 2px var(--pulse-color),0 0 12px var(--pulse-color);animation:pulse 1.4s ease-in-out infinite}.hl-target{--pulse-color: var(--accent-danger);box-shadow:0 0 0 2px var(--pulse-color),0 0 12px var(--pulse-color);animation:pulse 1s ease-in-out infinite}.hl-muted{opacity:.55;filter:saturate(.6);transition:opacity var(--dur-fast),filter var(--dur-fast)}.hl-choice{--pulse-color: var(--text);box-shadow:0 0 0 2px var(--pulse-color),0 0 12px var(--pulse-color);animation:pulse 1.4s ease-in-out infinite}.hand-card.hl-play{--pulse-color: var(--accent-ok)}.hand-card.hl-sell{--pulse-color: var(--accent-sell)}.hand-card.hl-quick{--pulse-color: var(--accent-quick)}.hand-card.hl-play,.hand-card.hl-sell,.hand-card.hl-quick{box-shadow:0 0 0 2px var(--pulse-color),0 0 12px var(--pulse-color);animation:pulse 1.4s ease-in-out infinite}.selected{box-shadow:0 0 0 3px var(--text)}.unit.spent.selected,.legend-slot.spent.selected{box-shadow:none}.unit.spent.selected .card,.legend-slot.spent.selected .card{box-shadow:0 0 0 3px var(--text)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.75}}.hand-card.hl-play:before,.hand-card.hl-sell:before,.hand-card.hl-quick:before{content:"";position:absolute;top:-7px;right:-7px;z-index:var(--z-lift-4);width:24px;height:24px;pointer-events:none;background:var(--bg) center / 16px 16px no-repeat;box-shadow:inset 0 0 0 1px var(--pulse-color)}.hand-card.hl-play:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23e8eaed' stroke-width='1.6' stroke-linecap='square'%3E%3Cpath d='M5 3l8 5-8 5z'/%3E%3C/svg%3E")}.hand-card.hl-sell:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23e8eaed' stroke-width='1.6' stroke-linecap='square'%3E%3Cpath d='M3 4h10M3 8h10M3 12h6'/%3E%3C/svg%3E")}.hand-card.hl-quick:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23e8eaed' stroke-width='1.6' stroke-linecap='square'%3E%3Cpath d='M9 2L4 9h4l-1 5 5-7H8z'/%3E%3C/svg%3E")}@media(prefers-reduced-motion:reduce){.hl-action,.hl-target,.hl-choice,.hand-card.hl-play,.hand-card.hl-sell,.hand-card.hl-quick{animation:none}}.unit{position:relative;flex:none;min-width:44px;transition:transform var(--dur-fast) var(--ease),opacity var(--dur-fast)}.board-root{--spent-deg: 90deg;--spent-scale: .92}.unit.spent{opacity:.75;min-width:0;--spent-dw: calc((var(--spent-scale) * var(--card-w) * 88 / 63 - var(--card-w)) / 2);--spent-dh: calc((var(--spent-scale) * var(--card-w) - var(--card-w) * 88 / 63) / 2);--spent-gear: calc(var(--spent-scale) * var(--ng, 0) * var(--gear-peek) * var(--card-w) * 88 / 63);margin:var(--spent-dh) var(--spent-dw) var(--spent-dh) calc(var(--spent-dw) + var(--spent-gear))}.unit.lag .card{filter:saturate(.6)}.unit,.legend-slot{isolation:isolate;margin-bottom:calc(var(--ng, 0) * var(--gear-peek) * var(--card-w) * 88 / 63)}.legend-slot{margin-bottom:calc(var(--ng, 0) * var(--gear-peek) * var(--legend-w) * 88 / 63)}.gear-under{position:absolute;left:0;top:calc((var(--gi) + 1) * var(--gear-peek) * 100%);pointer-events:none}.gear-under .card{box-shadow:0 1px 3px rgba(var(--shade-rgb),.7);filter:brightness(.85)}.badge{position:absolute;font-family:var(--font-label);font-size:var(--fs-1);line-height:1;padding:2px 4px;background:var(--bg);border:1px solid var(--line-dim)}.badge.power{right:-6%;bottom:-4%;color:var(--text);font-weight:700;font-variant-numeric:tabular-nums;background:var(--surface-raised);border:0;clip-path:polygon(3px 0,100% 0,100% calc(100% - 3px),calc(100% - 3px) 100%,0 100%,0 3px)}.badge.gear{left:-6%;bottom:-4%;color:var(--text)}.badge.lag{left:50%;top:-6%;transform:translate(-50%);color:var(--text-dim);font-size:var(--fs-1)}.badge.known{left:-6%;top:-4%;z-index:var(--z-lift-3);display:grid;place-items:center;padding:2px;color:var(--accent);border-color:var(--accent);background:var(--surface-raised);pointer-events:none}.badge.must{left:50%;top:-8%;transform:translate(-50%);color:var(--accent-danger);border-color:var(--accent-danger);font-size:var(--fs-1);white-space:nowrap}.must-attack .card{outline:2px solid var(--accent-danger);outline-offset:2px}.legend-slot{position:relative;flex:none;transition:transform var(--dur-fast) var(--ease)}.legend-slot.spent{opacity:.75;--spent-dw: calc((var(--spent-scale) * var(--legend-w) * 88 / 63 - var(--legend-w)) / 2);--spent-dh: calc((var(--spent-scale) * var(--legend-w) - var(--legend-w) * 88 / 63) / 2);--spent-gear: calc(var(--spent-scale) * var(--ng, 0) * var(--gear-peek) * var(--legend-w) * 88 / 63);margin:var(--spent-dh) var(--spent-dw) var(--spent-dh) calc(var(--spent-dw) + var(--spent-gear) - var(--pull, 0px))}.slot-box{position:relative;flex:none;aspect-ratio:63 / 88;isolation:isolate}.slot-box.fill{width:100%}.pile-slots{position:relative}.pile-slots>.slot-box+.slot-box{position:absolute;left:0;top:0}.card-el{position:absolute;left:0;top:0;width:100%;height:100%;margin:0;perspective:900px}.card-el-turn{position:absolute;inset:0;transform-style:preserve-3d}.card-el-turn>.card{position:absolute;inset:0;width:100%;height:100%;overflow:visible;backface-visibility:hidden;-webkit-backface-visibility:hidden}.card-el-turn>.card img{border-radius:inherit}.card-el-turn>.card-el-back{transform:rotateY(180deg)}.card-el[data-rest]{perspective:none}.card-el[data-rest]>.card-el-turn{transform-style:flat}.card-el[data-rest][data-face=up]>.card-el-turn>.card-el-back,.card-el[data-rest][data-face=down]>.card-el-turn>.card-el-front{display:none}.card-el[data-rest][data-face=down]>.card-el-turn>.card-el-back{transform:none}.card-flight{position:fixed;inset:0;z-index:var(--z-flight);pointer-events:none}.card-flight>.card-el .card{box-shadow:0 10px 26px rgba(var(--shade-rgb),.6)}.card-stash{display:none}.card-limbo{position:fixed;left:50%;top:50%;z-index:var(--z-lift-5);display:flex;gap:var(--sp-3);transform:translate(-50%,-50%);pointer-events:none}.gig{--gs: var(--gig);position:relative;width:var(--gig);height:var(--gig);display:grid;place-items:center;color:var(--bg);font-family:var(--font-label);flex:none;container-type:inline-size}.gig:before{content:"";position:absolute;inset:0;background:var(--text)}.gig-txt{position:relative;z-index:var(--z-lift-1);display:flex;flex-direction:column;align-items:center;line-height:1}.gig.d4{--k: .86}.gig.d4 .gig-txt{transform:translateY(calc(var(--gs) * .14))}.gig-val{font-size:max(8px,calc(var(--gs) * .46 * var(--k, 1)));font-weight:700;line-height:1}.gig-max{font-size:max(7px,calc(var(--gs) * .22 * var(--k, 1)));font-weight:700;opacity:.8;line-height:1}@container (max-width: 23px){.gig-max{display:none}.gig-val{font-size:calc(var(--gs) * .6 * var(--k, 1))}}.gig-val.landed{animation:diceLand var(--dur) var(--ease)}@keyframes diceLand{0%{transform:scale(1)}40%{transform:scale(1.12)}to{transform:scale(1)}}.gig.d4:before{clip-path:var(--shape-d4)}.gig.d6:before{clip-path:var(--shape-d6)}.gig.d8:before{clip-path:var(--shape-d8)}.gig.d10:before{clip-path:var(--shape-d10)}.gig.d12:before{clip-path:var(--shape-d12)}.gig.d20:before{clip-path:var(--shape-d20)}.die{--sz: 44px;position:relative;z-index:var(--z-flat);width:var(--sz);height:var(--sz);display:grid;place-items:center;padding:0;border:0;background:none;color:var(--text-dim);font-family:var(--font-display);font-size:var(--fs-2);font-weight:700}.die:before{content:"";position:absolute;inset:0;z-index:var(--z-under);background:rgba(var(--text-rgb),.14)}.die.d4:before{clip-path:var(--shape-d4)}.die.d4{padding-top:calc(var(--sz) * .28);font-size:.8em}.die.d6:before{clip-path:var(--shape-d6)}.die.d8:before{clip-path:var(--shape-d8)}.die.d10:before{clip-path:var(--shape-d10)}.die.d12:before{clip-path:var(--shape-d12)}.die.d20:before{clip-path:var(--shape-d20)}.die:disabled,.die[aria-disabled=true]{cursor:default}.die.hl-action{color:var(--bg);filter:drop-shadow(0 0 3px rgba(var(--white-rgb),.85))}.die.hl-action:before{background:var(--white)}.sheet-backdrop,.preview-backdrop{position:fixed;inset:0;background:rgba(var(--shade-rgb),.55);z-index:var(--z-sheet-back)}.sheet{position:fixed;left:0;right:0;bottom:0;max-height:70vh;max-height:70dvh;background:var(--surface-raised);border-top:1px solid var(--line-dim);z-index:var(--z-sheet-panel);display:flex;flex-direction:column;padding-bottom:env(safe-area-inset-bottom);animation:slideUp var(--dur) var(--ease)}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:none}}.sheet-head{display:flex;justify-content:space-between;align-items:center;padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--line-faint)}.sheet-close{min-height:var(--tap);padding:0 var(--sp-3);color:var(--text);font-family:var(--font-label)}.sheet-body{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;padding:var(--sp-3);display:flex;flex-wrap:wrap;align-content:flex-start;gap:var(--sp-2)}.preview{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:min(94vw,420px);max-height:92dvh;overflow:auto;background:var(--surface-raised);border:1px solid var(--line-dim);z-index:var(--z-preview);padding:var(--sp-3);display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);animation:pop var(--dur-fast) var(--ease);touch-action:pan-y}.preview-track{display:flex;gap:var(--gap, 12px);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 11%;touch-action:pan-x pan-y;width:100%}.preview-track::-webkit-scrollbar{display:none}.preview-slide{flex:0 0 100%;display:flex;flex-direction:column;align-items:center;gap:6px;scroll-snap-align:center;transition:transform .25s,opacity .25s;transform:scale(1);opacity:1}.preview-slide:not(.active){transform:scale(.92);opacity:.6}.preview-slide .card-preview{width:100%}.preview-slide-name{font-family:var(--font-display);font-size:var(--t-meta);color:var(--text-dim);text-align:center}.preview-nav{display:flex;align-items:center;justify-content:space-between;width:100%;gap:8px}.preview-count{font-family:var(--font-display);font-size:var(--t-caption);color:var(--text-dim)}.preview-dots{display:flex;align-items:center;gap:6px}.preview-dot{width:6px;height:6px;background:var(--line-dim)}.preview-dot.active{background:var(--line)}@keyframes pop{0%{transform:translate(-50%,-50%) scale(.92);opacity:0}to{transform:translate(-50%,-50%);opacity:1}}.preview-title{font-family:var(--font-display);color:var(--text);display:flex;flex-direction:column;gap:var(--sp-1)}.preview-meta{font-size:var(--t-caption);color:var(--text-dim)}.preview-text p{margin:var(--sp-2) 0;font-size:var(--t-body);line-height:var(--lh-ui)}.kw{position:relative;display:inline-block;margin:0 2px;padding:1px 6px;background:var(--line);color:var(--bg);font-family:var(--font-label);font-size:var(--fs-1);text-transform:uppercase}.kw:after{content:"";position:absolute;left:0;right:0;top:50%;height:38px;transform:translateY(-50%)}.kw.open{background:var(--accent-ok)}.kw-help{color:var(--accent-ok);font-size:var(--fs-2)}.preview-actions{display:flex;gap:var(--sp-2);flex-wrap:wrap;justify-content:center}.btn{--k: 9px;--btn-line: var(--line-dim);--btn-fill: var(--bg-2);position:relative;isolation:isolate;min-height:44px;padding:0 16px;border:0;background:var(--btn-line);color:var(--text);font-family:var(--font-display);font-weight:600;text-transform:uppercase;letter-spacing:.08em;clip-path:polygon(var(--k) 0,100% 0,100% calc(100% - var(--k)),calc(100% - var(--k)) 100%,0 100%,0 var(--k))}.btn:before{content:"";position:absolute;inset:1px;z-index:var(--z-under);background:var(--btn-fill);clip-path:polygon(calc(var(--k) - .4px) 0,100% 0,100% calc(100% - var(--k) + .4px),calc(100% - var(--k) + .4px) 100%,0 100%,0 calc(var(--k) - .4px))}.btn.primary{background:var(--line);color:var(--bg);font-weight:700}.btn.primary:before{display:none}.btn.danger{--btn-line: var(--accent-danger);color:var(--accent-danger)}.btn.outline{--btn-line: rgba(var(--text-rgb), .3)}.fb-btn .fb-icon{color:var(--cyan)}.btn:hover:not(:disabled){filter:brightness(1.15)}.btn:active:not(:disabled){--btn-line: var(--active-edge);--btn-fill: var(--active);transform:translateY(1px)}.btn.primary:active:not(:disabled){background:var(--line);filter:brightness(.86)}.btn:focus-visible{outline:2px solid var(--line);outline-offset:2px}.btn:disabled{opacity:.4;cursor:default}.soon-tag{font-family:var(--font-display);font-size:var(--fs-1);font-weight:600;letter-spacing:.14em;color:var(--bg);background:var(--line);padding:1px 6px;text-transform:uppercase}.banners{position:fixed;left:0;right:0;top:calc(var(--scene-h, 0px) + env(safe-area-inset-top) + 56px);z-index:var(--z-banner);display:flex;flex-direction:column;pointer-events:none}.mobile .banners{top:calc(var(--scene-h, 0px) + env(safe-area-inset-top) + var(--brand-h, 0px) + var(--row-mid, 38px))}.banner{pointer-events:auto;width:100%;max-height:80px;overflow:hidden;text-align:left;animation:bannerIn .28s var(--ease) both;transition:max-height var(--dur) var(--ease),padding var(--dur) var(--ease),opacity var(--dur)}.banner.leaving{max-height:0;padding-top:0;padding-bottom:0;opacity:0}.banner.banner:focus-visible{outline:0;--ds-edge: var(--ok);--ds-edge-w: 2px}@keyframes bannerIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.flash{position:fixed;inset:0;z-index:var(--z-flash);display:grid;place-items:center;background:rgba(var(--bg-rgb),.7);pointer-events:none;animation:flashIn var(--dur-flash) var(--ease) forwards}.flash span{font-family:var(--font-display);font-size:var(--t-display);letter-spacing:.2em;color:var(--line);border:2px solid var(--line);padding:var(--sp-3) var(--sp-5)}@keyframes flashIn{0%{opacity:0}15%{opacity:1}80%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:reduce){.flash{animation:none;opacity:1}}.fight{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:var(--z-fight);display:flex;gap:10px;align-items:center;font-family:var(--font-display);font-size:var(--fs-5);color:var(--text-dim);background:var(--panel);border:1px solid var(--line-dim);padding:6px 14px;animation:pop var(--dur-fast) var(--ease)}.fight .win{color:var(--line);font-weight:700}.fight .vs{font-size:var(--fs-2)}.hint{position:fixed;z-index:var(--z-hint);width:300px;max-width:92vw;transform:translate(-50%);background:var(--surface-raised);border:1px solid var(--edge);padding:var(--sp-2) var(--sp-3);font-size:var(--t-meta);line-height:var(--lh-ui);animation:hintIn var(--dur) var(--ease) both}@keyframes hintIn{0%{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}.hint.above{transform:translate(-50%,-100%)}.hint:before{content:"";position:absolute;left:50%;top:-6px;width:10px;height:10px;background:var(--surface-raised);border-left:1px solid var(--edge);border-top:1px solid var(--edge);transform:translate(-50%) rotate(45deg)}.hint-spot{position:fixed;z-index:var(--z-hint-dim);pointer-events:none;box-shadow:0 0 0 200vmax rgba(var(--deep-rgb),.72),0 0 0 2px var(--edge);animation:fadeIn var(--dur) var(--ease) both}.hint-dim{position:fixed;inset:0;z-index:var(--z-hint-dim);pointer-events:none;background:rgba(var(--deep-rgb),.72);animation:fadeIn var(--dur) var(--ease) both}.hint.above:before{top:auto;bottom:-6px;transform:translate(-50%) rotate(225deg)}.hint p{margin:var(--sp-2) 0}.hint-actions{display:flex;gap:var(--sp-2)}.hint-actions>button{flex:1 1 0;min-width:0;white-space:normal;line-height:1.2}.log{margin:0;padding-left:20px;font-size:var(--fs-2);line-height:1.6;width:100%}.turn-btn{width:100%;min-height:52px;font-size:var(--fs-3);letter-spacing:.1em;white-space:normal}.turn-btn-sub{font-family:var(--font-text);font-size:var(--fs-1)}.settings-row{display:flex;flex-direction:column;gap:6px;width:100%}.mulligan-screen{position:fixed;inset:0;z-index:var(--z-mulligan);display:flex;flex-direction:column;align-items:center;justify-content:safe center;overflow-y:auto;gap:var(--sp-4);padding:var(--sp-4);background:rgba(var(--bg-rgb),.94);text-align:center}.mulligan-title{margin:0;font-family:var(--font-display);font-size:var(--t-lead);font-weight:700;color:var(--text)}.mulligan-screen .mulligan-title{min-height:calc(2.6em + 4px);display:flex;align-items:center;justify-content:center;line-height:1.3}.mulligan-help{margin:0;max-width:min(92vw,480px);font-size:var(--t-meta);color:var(--text-dim)}.mulligan-grid{display:grid;grid-template-columns:repeat(3,var(--hand-card-w));gap:var(--sp-3);justify-content:center}.mulligan-card{display:block;padding:0;border:none;background:none}.mulligan-actions{display:flex;gap:var(--sp-2);flex-wrap:wrap;justify-content:center;align-items:center;min-height:52px}.mulligan-help.off{visibility:hidden}.mulligan-card.leave{animation:mullLeave .45s var(--ease) both}@keyframes mullLeave{to{opacity:0;transform:translateY(60px) scale(.85)}}.mulligan-card.deal{animation:mullDeal .42s var(--ease) both}.mulligan-screen{transition:opacity var(--dur) var(--ease)}body.portal-open .mulligan-screen{opacity:0;transition:none}.mulligan-card:not(.deal):not(.leave){animation:mullIntro .38s var(--ease) both}body.portal-open .mulligan-card{animation-play-state:paused}@keyframes mullIntro{0%{opacity:0;transform:translateY(26px) scale(.94)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.mulligan-card:not(.deal):not(.leave){animation:none}}@keyframes mullDeal{0%{opacity:0;transform:translateY(-40px) rotateY(80deg) scale(.9)}to{opacity:1;transform:none}}.mulligan-screen.phase-ready{cursor:pointer}.mulligan-screen.closing{opacity:0;pointer-events:none;transition:opacity .25s var(--ease)}@media(prefers-reduced-motion:reduce){.mulligan-card.leave,.mulligan-card.deal{animation:none}}.desktop .mulligan-grid{width:100%;max-width:calc(7 * var(--hand-card-w) + 60px);grid-template-columns:repeat(auto-fit,var(--hand-card-w))}.start-form{display:grid;gap:14px;width:min(92vw,420px);text-align:left}.start-note{font-size:var(--fs-2);color:var(--text-dim)}.field,.field label{display:grid;gap:4px}.field select,.field input[type=text],.field textarea{width:100%;min-height:40px;padding:6px 12px;background:var(--panel);color:var(--text);border:1px solid var(--line-dim);border-radius:0;font:inherit;transition:border-color var(--dur-fast) var(--ease)}.field select:hover,.field input[type=text]:hover,.field textarea:hover{border-color:var(--edge)}.field select:focus,.field input[type=text]:focus,.field textarea:focus{outline:0;border-color:var(--line);box-shadow:0 0 0 1px var(--line)}.field textarea{min-height:120px;font-family:var(--font-mono);font-size:var(--fs-2);resize:vertical}.field-note{font-size:var(--fs-2);color:var(--text-dim)}.field-error{color:var(--accent-danger);font-size:var(--fs-2);white-space:pre-line}.field-ok{color:var(--accent-ok);font-size:var(--fs-2)}.radio-row{display:flex;gap:14px;flex-wrap:wrap}.radio-row label{display:flex;gap:6px;align-items:center;min-height:32px}.start-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.hud-dot{flex:0 0 auto;display:inline-block;width:8px;height:8px;background:var(--accent-ok);animation:dotPulse 1.4s ease-in-out infinite}@keyframes dotPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.75)}}@media(prefers-reduced-motion:reduce){.hud-dot{animation:none}}.board-host,.board-root{display:contents}.btn.small{min-height:28px;padding:0 8px;font-size:var(--fs-1)}.error-screen h1{margin:0;font-family:var(--font-display);font-size:var(--t-title);letter-spacing:.08em;color:var(--line)}.error-screen p{margin:0;max-width:min(92vw,480px)}.error-msg{color:var(--accent-danger);font-family:monospace;font-size:var(--t-meta);word-break:break-word}.error-hint{color:var(--text-dim);font-size:var(--t-meta)}.error-report{width:min(92vw,480px);height:120px;padding:var(--sp-2);background:var(--surface-1);color:var(--text);border:1px solid var(--line-dim);font-size:var(--t-caption)}.scene-layer{position:fixed;inset:0;z-index:var(--z-scene);pointer-events:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.band{position:absolute;left:0;right:0;top:50%;display:grid;place-items:center;padding:14px 0;background:linear-gradient(90deg,transparent,rgba(var(--bg-rgb),.94) 12%,rgba(var(--bg-rgb),.94) 88%,transparent);border-top:2px solid var(--line);border-bottom:2px solid var(--line);animation:bandIn var(--dur) var(--ease) forwards}.band span{font-family:var(--font-label);font-size:clamp(18px,4.5vw,32px);letter-spacing:.18em;color:var(--line);white-space:nowrap}.band.rival{border-color:var(--accent-danger)}.band.rival span{color:var(--accent-danger)}@keyframes bandIn{0%{opacity:0;transform:translate(-6%,-50%)}18%{opacity:1;transform:translateY(-50%)}78%{opacity:1;transform:translateY(-50%)}to{opacity:0;transform:translate(6%,-50%)}}.dice-overlay{position:absolute;inset:0;display:grid;place-items:center;background:rgba(var(--bg-rgb),.6);animation:fadeIn var(--dur-fast) var(--ease);transition:background .4s var(--ease)}.dice-overlay.landing{background:rgba(var(--bg-rgb),0)}.gig.big{--big: clamp(96px, 30vw, 128px);--gs: var(--big);width:var(--big);height:var(--big)}.stage-card{position:relative;isolation:isolate;width:var(--stage-w);margin-bottom:calc(var(--ng, 0) * var(--gear-peek) * var(--stage-w) * 88 / 63)}.stage-card>.slot-box,.stage-card .gear-under,.stage-card .gear-under>.slot-box{width:var(--stage-w)}.stage-card .slot-box .badge{display:none}.spotlight{position:absolute;inset:0;display:grid;place-items:center;background:rgba(var(--bg-rgb),.6);animation:fadeIn var(--dur-fast) var(--ease)}.spotlight-card{--stage-w: min(var(--preview-w), 62vw)}.spotlight-card>.stage-main>.card-el .card{box-shadow:0 0 34px rgba(var(--shade-rgb),.7)}@keyframes spotIn{0%{transform:scale(.72);opacity:0}to{transform:none;opacity:1}}.duel-card{--stage-w: var(--hand-card-w)}.duel{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:rgba(var(--bg-rgb),.6);animation:fadeIn var(--dur-fast) var(--ease)}.duel-row{display:flex;align-items:center;gap:clamp(10px,4vw,28px)}.duel-side{position:relative;transition:scale var(--dur-fast) var(--ease),rotate var(--dur-fast) var(--ease),filter var(--dur-fast) var(--ease)}.duel-side.win{scale:1.08}.duel-side.win .stage-main>.card-el .card{box-shadow:0 0 0 2px var(--line),0 0 26px var(--line)}.duel-side.lose{rotate:6deg;scale:.92;filter:grayscale(1) brightness(.65)}.duel-vs{font-family:var(--font-label);font-size:var(--fs-2);letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim)}.duel-tag{position:absolute;left:50%;bottom:-10px;transform:translate(-50%);padding:2px 8px;background:var(--line);color:var(--bg);font-family:var(--font-label);font-size:var(--fs-1);letter-spacing:.08em}.duel-tag.draw{position:static;transform:none;background:var(--text-dim);font-size:var(--fs-2);padding:3px 12px}.duel-powers{display:flex;align-items:baseline;gap:14px;font-family:var(--font-label);color:var(--text-dim)}.duel-powers b{font-size:var(--fs-6);line-height:1;color:var(--text);transition:color var(--dur-fast)}.duel-powers b.win{color:var(--line)}.duel-outcome{max-width:90vw;padding:4px 12px;background:var(--line);color:var(--bg);font-family:var(--font-label);font-size:var(--fs-3);letter-spacing:.04em;text-align:center;animation:fadeIn var(--dur-fast) var(--ease)}.duel-outcome.draw{background:var(--text-dim)}.focus .unit.attacker{opacity:1;filter:none}.focus .unit.attacker .card{box-shadow:0 0 0 2px var(--accent-danger),0 0 14px var(--accent-danger)}.focus-reaction .legend-slot.hl-action,.focus-reaction .hand-card.hl-quick{animation:none}.tap-hint{font-family:var(--font-display);font-size:var(--t-meta);color:var(--text-dim);animation:tapHint 1.1s ease-in-out infinite alternate}@keyframes tapHint{0%{opacity:.45}to{opacity:1}}.tap-hint.off{visibility:hidden;animation:none}@media(prefers-reduced-motion:reduce){.tap-hint{animation:none}}.search-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-3);padding:var(--sp-4);background:rgba(var(--bg-rgb),.72);animation:fadeIn var(--dur-fast) var(--ease)}.search-title{margin:0;font-family:var(--font-display);font-size:var(--t-lead);font-weight:700;text-align:center}.search-cards{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--sp-2);max-width:100%}.reveal-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-3);padding:var(--sp-4);background:rgba(var(--bg-rgb),.6)}.reveal-overlay.entering{animation:fadeIn var(--dur-fast) var(--ease)}.reveal-title{margin:0;font-family:var(--font-display);font-size:var(--t-lead);font-weight:700;text-align:center}.reveal-cards{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--sp-2);max-width:100%}.reveal-place>.card-el .card{box-shadow:0 10px 26px rgba(var(--shade-rgb),.6)}.reveal-none{margin:0;max-width:32ch;font-family:var(--font-display);font-size:var(--t-body);font-weight:600;text-align:center;color:var(--text);animation:fadeIn var(--dur-fast) var(--ease)}@media(prefers-reduced-motion:reduce){.reveal-overlay.entering,.reveal-none{animation:none}}.arrow{position:fixed;inset:0;pointer-events:none;overflow:visible;animation:fadeIn var(--dur-fast) var(--ease)}.arrow-dash{animation:arrowDash .5s linear infinite}@keyframes arrowDash{0%{stroke-dashoffset:17}to{stroke-dashoffset:0}}@media(prefers-reduced-motion:reduce){.arrow-dash{animation:none}}.scene-dim .unit:not(.scene-focus),.scene-dim .legend-slot:not(.scene-focus),.scene-dim .gig:not(.scene-focus),.scene-dim .hand-card:not(.scene-focus){opacity:.6;filter:saturate(.5);transition:opacity var(--dur-fast),filter var(--dur-fast)}.scene-focus{z-index:var(--z-lift-5)}.focus .unit:not(.hl-action):not(.hl-target):not(.hl-choice):not(.selected):not(.attacker),.focus .legend-slot:not(.hl-action):not(.hl-choice),.focus .gig:not(.hl-target):not(.hl-choice):not(.hl-focus),.focus .hand-card:not(.hl-play):not(.hl-sell):not(.hl-quick):not(.hl-choice),.focus .die:not(.hl-action){opacity:.5;filter:saturate(.5);transition:opacity var(--dur-fast),filter var(--dur-fast)}.focus .hl-action,.focus .hl-target,.focus .hl-choice,.focus .hl-play,.focus .hl-sell,.focus .hl-quick{animation:pulseStrong 1s ease-in-out infinite}@keyframes pulseStrong{0%,to{box-shadow:0 0 0 2px var(--pulse-color, var(--accent-ok)),0 0 16px var(--pulse-color, var(--accent-ok))}50%{box-shadow:0 0 0 2px var(--pulse-color, var(--accent-ok)),0 0 4px var(--pulse-color, var(--accent-ok))}}@media(prefers-reduced-motion:reduce){.focus .hl-action,.focus .hl-target,.focus .hl-choice{animation:none}}.focus .dice-tray .die.used{opacity:.2}.dot{width:10px;height:10px;display:inline-block}.dot.color-red{background:var(--card-red)}.dot.color-blue{background:var(--card-blue)}.dot.color-green{background:var(--card-green)}.dot.color-yellow{background:var(--card-yellow)}.dot.empty{background:var(--line-faint)}.segmented{--k: var(--cut);display:flex;gap:3px;padding:3px;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line-dim);clip-path:polygon(var(--k) 0,100% 0,100% calc(100% - var(--k)),calc(100% - var(--k)) 100%,0 100%,0 var(--k))}.seg{position:relative;flex:1;min-height:40px;padding:0 8px;background:none;border:0;color:var(--text-dim);font-family:var(--font-display);font-size:var(--fs-2);font-weight:600;text-transform:uppercase;letter-spacing:.1em;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.seg:hover{color:var(--text);background:var(--line-faint)}.seg.on{color:var(--text);background:var(--active);box-shadow:inset 0 0 0 1px var(--active-edge)}.seg.on:after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:2px;background:var(--line)}.end-screen{position:fixed;inset:0;z-index:var(--z-end);display:flex;flex-direction:column;align-items:stretch;gap:var(--sp-3);padding:calc(var(--sp-4) + env(safe-area-inset-top)) var(--sp-4) calc(var(--sp-3) + env(safe-area-inset-bottom));overflow:hidden;text-align:left;background:rgba(var(--bg-rgb),.97)}.end-screen>*{width:100%;max-width:var(--w-app);margin:0 auto}.end-head{text-align:center}.end-head h1{margin:0;font-family:var(--font-display);font-size:var(--t-display);font-weight:700;line-height:var(--lh-tight);letter-spacing:.08em;color:var(--line)}.end-screen.lose .end-head h1{color:var(--accent-danger)}.end-screen.draw .end-head h1{color:var(--text-dim)}.end-nudge{margin-block:var(--sp-2);text-align:start}.end-nudge-body{display:flex;flex-direction:column;align-items:flex-start;gap:var(--sp-2)}.end-sub{margin:var(--sp-1) 0 0;font-size:var(--t-meta);color:var(--text-dim)}.end-vs{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.end-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-2);margin-top:var(--sp-3);text-align:left}.end-stat-value{order:-1}.end-log{flex:1;min-height:0;display:flex;flex-direction:column;gap:var(--sp-2);border:1px solid var(--line-faint);padding:var(--sp-2)}.end-log .label{align-self:flex-start}.end-log .log{flex:1;overflow-y:auto;font-size:var(--t-meta);line-height:var(--lh-ui)}.log-card{display:inline;padding:0;border:0;background:none;color:var(--accent-ok);font:inherit;text-decoration:underline;text-decoration-color:rgba(var(--ok-rgb),.4);text-underline-offset:2px}.end-actions{display:flex;gap:var(--sp-2);flex-wrap:wrap}.end-actions>button{flex:1 1 30%}.card-zoom{position:fixed;inset:0;z-index:var(--z-end-zoom);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-2);background:rgba(var(--shade-rgb),.82);animation:fadeIn var(--dur-fast) var(--ease)}.card-zoom .card-preview{width:min(var(--preview-w),78vw)}.card-zoom-name{font-family:var(--font-display);font-size:var(--t-meta);color:var(--text)}.end-actions>button{padding:0 var(--sp-2)}.turn-screen{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-5);background:rgba(var(--deep-rgb),.88)}.turn-screen.mine{animation:fadeIn var(--dur-fast) var(--ease) both}.turn-screen.rival{animation:turnScreen 1.1s var(--ease) both}@keyframes turnScreen{0%{opacity:0}15%{opacity:1}82%{opacity:1}to{opacity:0}}.turn-screen-band{width:100%;display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);padding:var(--sp-5) 0;border-top:2px solid var(--line);border-bottom:2px solid var(--line);background:linear-gradient(90deg,transparent,rgba(var(--line-rgb),.1) 15%,rgba(var(--line-rgb),.1) 85%,transparent);animation:turnBandIn .45s var(--ease) both}.turn-screen.rival .turn-screen-band{border-color:var(--accent-danger);background:linear-gradient(90deg,transparent,rgba(var(--danger-rgb),.1) 15%,rgba(var(--danger-rgb),.1) 85%,transparent)}.turn-screen-title{font-family:var(--font-display);font-size:var(--t-hero);letter-spacing:.16em;color:var(--line);white-space:nowrap}.turn-screen.rival .turn-screen-title{color:var(--accent-danger)}.turn-screen-sub{font-family:var(--font-display);font-size:var(--t-meta);letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim)}@keyframes turnBandIn{0%{transform:translate(-18%);opacity:0}to{transform:none;opacity:1}}@media(prefers-reduced-motion:reduce){.turn-screen-band{animation:none}}.log{list-style:none;padding-left:0}.end-log .log{padding-left:0}.log-line,.log-group{display:flex;align-items:baseline;gap:8px;margin:0 0 3px;padding:4px 8px;border-left:3px solid transparent}.log-group{flex-direction:column;align-items:stretch;gap:2px}.log-line.log-me,.log-group.log-me{border-left-color:var(--text);background:rgba(var(--text-rgb),.06)}.log-line.log-rival,.log-group.log-rival{border-left-color:var(--accent-danger);background:rgba(var(--danger-rgb),.07)}.log-text{min-width:0}.log-line.log-danger .log-text,.log-group.log-danger>.log-text,.log-sub.log-danger{color:var(--accent-danger)}.log-subs{list-style:none;margin:0;padding:0 0 0 12px;font-size:var(--t-caption);color:var(--text-dim)}.log-sub{position:relative;padding-left:10px}.log-sub:before{content:"";position:absolute;left:0;top:.6em;width:4px;height:4px;background:currentColor}.log-turn-roll{text-transform:none;letter-spacing:.02em}.log-turn{margin:8px 0 3px;padding:2px 8px;font-family:var(--font-label);font-size:var(--fs-1);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);border-bottom:1px solid var(--line-faint)}body:has(.board-root){--z-dialog: var(--z-board-dialog)}.log.sheet-log{font-size:var(--t-meta);line-height:var(--lh-ui)}.trash-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:var(--sp-2)}.trash-grid .card-mini{width:100%;cursor:pointer}@media(min-width:900px){.trash-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr))}}.reveal{position:absolute;inset:0;display:grid;place-items:center;animation:revealDim var(--reveal-ms) linear both}@keyframes revealDim{0%{background:rgba(var(--deep-rgb),0)}10%,88%{background:rgba(var(--deep-rgb),.78)}to{background:rgba(var(--deep-rgb),0)}}.reveal-slot{width:min(74vw,300px,calc(58dvh * 63 / 88))}.reveal-slot .badge{display:none}.reveal.from-zoom{animation-name:revealDimZoom}@keyframes revealDimZoom{0%{background:rgba(var(--deep-rgb),.82)}10%,88%{background:rgba(var(--deep-rgb),.78)}to{background:rgba(var(--deep-rgb),0)}}.reveal-slot>.card-el .card{box-shadow:0 16px 40px rgba(var(--shade-rgb),.7)}.reveal.rival .reveal-slot>.card-el .card-el-front{box-shadow:0 0 0 2px var(--accent-danger),0 16px 40px rgba(var(--shade-rgb),.7)}.nudge{animation:nudgeShake .65s ease-in-out}@keyframes nudgeShake{0%,to{translate:0 0}12%{translate:-7px 0}28%{translate:6px 0}44%{translate:-5px 0}60%{translate:4px 0}76%{translate:-2px 0}}.mid-strip.nudge{animation:nudgeShake .65s ease-in-out,nudgeFlash .65s ease-in-out}@keyframes nudgeFlash{30%{filter:brightness(1.35)}}@media(prefers-reduced-motion:reduce){.nudge,.mid-strip.nudge{animation:nudgeFlash .65s ease-in-out}}.offline-banner{position:fixed;left:50%;bottom:var(--sp-4);transform:translate(-50%);z-index:var(--z-offline);align-items:center;flex-wrap:wrap;justify-content:center;width:max-content;max-width:calc(100vw - var(--sp-6))}.pvp-slot:empty{display:none}.pvp-slot>div{display:contents}.pvp-status,.pvp-notice{display:flex;flex-direction:column;gap:4px;min-width:0}.pvp-clock{display:flex;align-items:baseline;gap:var(--sp-2);min-width:0;padding:2px var(--sp-2);background:var(--surface-1);box-shadow:inset 2px 0 0 var(--line);font-size:var(--t-meta);line-height:1.25;white-space:nowrap;opacity:.7}.pvp-clock.rival{box-shadow:inset 2px 0 0 var(--accent-danger)}.pvp-clock b{margin-left:auto;font-weight:600;font-variant-numeric:tabular-nums}.pvp-clock-name{min-width:0;overflow:hidden;text-overflow:ellipsis}.pvp-clock.running{opacity:1;outline:1px solid var(--line);outline-offset:-1px}.pvp-away{margin:0;padding:var(--sp-1) var(--sp-2);background:var(--surface-1);border:1px solid var(--accent-danger);font-size:var(--fs-2);line-height:1.2}.pvp-emote{margin:0;padding:var(--sp-1) var(--sp-2);background:var(--surface-raised);font-size:var(--fs-2);line-height:1.2}.pvp-emote.mine{opacity:.8}.pvp-emote-bar{position:relative;display:flex}.pvp-emote-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--sp-2);margin-bottom:var(--sp-3)}@media(min-width:900px){.pvp-emote-grid{grid-template-columns:repeat(3,1fr)}}.pay-mode-row{box-shadow:inset 0 1px 0 var(--divider)}.pay-mode-switch{margin:0 var(--sp-4) var(--sp-3)}.legends{display:flex;gap:6px}.field-row{display:flex;gap:10px;padding:8px 12px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;align-items:center;min-height:calc(var(--card-h) + 16px)}.field-row>*{scroll-snap-align:center}.field-drop{outline:2px dashed var(--accent-ok);outline-offset:-3px}.hand-card{position:absolute;left:50%;bottom:22px;margin-left:calc(var(--hand-card-w) / -2);transform-origin:50% 100%;touch-action:none;transition:transform var(--dur-fast) var(--ease)}.hand-card.dragging{transition:none}.hand-card.hl-play,.hand-card.hl-sell,.hand-card.hl-quick,.hand-card.hl-choice{box-shadow:none;animation:none}.hand-card.hl-play .card,.hand-card.hl-sell .card,.hand-card.hl-quick .card,.hand-card.hl-choice .card{box-shadow:0 0 0 2px var(--pulse-color),0 0 12px var(--pulse-color)}.card-pile{width:var(--pile-w, 28px)}.mobile{--rival-card-w: clamp(44px, min(13.5vw, calc(7 * var(--vh1))), 60px);--rival-card-h: calc(var(--rival-card-w) * 88 / 63);--my-card-w: clamp(56px, min(18vw, calc(9.2 * var(--vh1))), 80px);--my-card-h: calc(var(--my-card-w) * 88 / 63);--hand-card-w: clamp(76px, min(24vw, calc(12.2 * var(--vh1))), 104px);--hand-card-h: calc(var(--hand-card-w) * 88 / 63);--legend-w: clamp(30px, min(9.4vw, calc(5 * var(--vh1))), 38px);--legend-h: calc(var(--legend-w) * 88 / 63);--legend-sm-w: clamp(22px, min(6.6vw, calc(3.2 * var(--vh1))), 28px);--gig-max: clamp(20px, min(6.4vw, calc(3.4 * var(--vh1))), 28px);--gig: var(--gig-max);--die: clamp(24px, 7vw, 30px);--pile-w: clamp(22px, min(6.6vw, calc(3.2 * var(--vh1))), 28px);--arrow-room: 13px;--row-brand: 24px;--row-mid: 38px;--row-hand: calc(var(--hand-card-h) + var(--arrow-room) + 8px);--row-action: 54px;--gig-was: clamp(22px, min(7.2vw, calc(3.8 * var(--vh1))), 32px);--legend-h-was: calc(clamp(34px, min(10.5vw, calc(5.6 * var(--vh1))), 44px) * 88 / 63);--row-rival-was: 54px;--row-piles-was: clamp(50px, calc(7 * var(--vh1)), 60px);--lk: calc(1 + var(--gear-peek) * var(--lg, 0));--air-max-rival: 4px;--air-max-gigs: calc(var(--gig) - var(--gig-was) + 8px);--air-max-zones: calc((var(--legend-h) - var(--legend-h-was)) * var(--lk) + 12px);--air-max-piles: calc(clamp(62px, calc(8 * var(--vh1)), 70px) - var(--row-piles-was));--fields-need: max(calc((var(--rival-card-h) * (1.16 + var(--gear-peek) * var(--gr, 0)) + 12px) * 2.3), calc((var(--my-card-h) * (1.16 + var(--gear-peek) * var(--gm, 0)) + 12px) * 2.3 / 1.3));--slack: calc(100 * var(--vh1) - env(safe-area-inset-top) - env(safe-area-inset-bottom) - var(--row-brand) - var(--row-mid) - var(--row-rival-was) - 2 * var(--gig-was) - 12px - var(--legend-h-was) * var(--lk) - 10px - var(--row-piles-was) - var(--row-hand) - var(--row-action) - var(--fields-need) - 1px);--air-rival: clamp(0px, calc(var(--slack) * .1), var(--air-max-rival));--air-gigs: clamp(0px, calc(var(--slack) * .2), var(--air-max-gigs));--air-zones: clamp(0px, calc(var(--slack) * .25), var(--air-max-zones));--air-piles: clamp(0px, calc(var(--slack) * .25), var(--air-max-piles));--row-rival: calc(var(--row-rival-was) + var(--air-rival));--row-gigs: calc(var(--gig-was) + 6px + var(--air-gigs));--row-zones: calc(var(--legend-h-was) * var(--lk) + 10px + var(--air-zones));--row-piles: calc(var(--row-piles-was) + var(--air-piles));--gap-max: 6px;--pile-room: calc(var(--pile-w) * 88 / 63 + 14px);--gap-gigs: clamp(0px, calc(var(--row-gigs) - var(--gig) - 8px), var(--gap-max));--gap-zones: clamp(0px, calc(var(--row-zones) - var(--legend-h) * var(--lk) - 10px), var(--gap-max));--gap-piles: clamp(0px, calc(var(--row-piles) - var(--pile-room) - 8px), var(--gap-max));--pad-piles: clamp(0px, calc((var(--row-piles) - var(--gap-piles) - var(--pile-room)) / 2), 4px);display:grid;grid-template-rows:minmax(env(safe-area-inset-top),calc(var(--row-brand) + env(safe-area-inset-top))) var(--row-mid) var(--row-rival) minmax(calc(var(--rival-card-h) + 16px),1fr) var(--row-gigs) var(--row-gigs) minmax(calc(var(--my-card-h) + 16px),1.3fr) var(--row-zones) var(--row-piles) var(--row-hand) var(--row-action);height:100dvh;height:var(--app-h, 100dvh);padding-bottom:env(safe-area-inset-bottom);overflow:hidden;touch-action:manipulation;user-select:none;-webkit-user-select:none;background:var(--texture-board),var(--surface-0)}.mobile>*{min-width:0}@media(max-height:620px){.mobile{--rival-card-w: clamp(34px, calc(7.2 * var(--vh1)), 44px);--my-card-w: clamp(42px, calc(9 * var(--vh1)), 56px);--hand-card-w: clamp(54px, calc(11.6 * var(--vh1)), 72px);--legend-w: clamp(24px, calc(4.8 * var(--vh1)), 30px);--legend-sm-w: clamp(20px, calc(4.2 * var(--vh1)), 25px);--gig-max: clamp(16px, calc(3.2 * var(--vh1)), 20px);--gig: var(--gig-max);--die: clamp(20px, calc(4.2 * var(--vh1)), 25px);--pile-w: clamp(18px, calc(3.8 * var(--vh1)), 23px);--arrow-room: 11px;--row-brand: 16px;--row-mid: 34px;--row-action: 50px;--gig-was: clamp(18px, calc(3.6 * var(--vh1)), 22px);--legend-h-was: calc(clamp(26px, calc(5.4 * var(--vh1)), 34px) * 88 / 63);--row-rival-was: 46px;--row-piles-was: 42px;--air-max-rival: 0px;--air-max-gigs: calc(var(--gig) - var(--gig-was) + 5px);--air-max-zones: calc((var(--legend-h) - var(--legend-h-was)) * var(--lk) + 6px);--air-max-piles: 4px;--gap-max: 4px;--pile-room: calc(var(--pile-w) * 88 / 63)}.mobile .gig-totals{line-height:1}.mobile .pile-label{display:none}.mobile .rival-hand{padding-bottom:0}.mobile .mid-text{font-size:var(--fs-1)}.mobile .mid-strip .mid-log{width:32px;height:32px}.mobile .mid-line{font-size:var(--fs-2)}}.rival-bar{display:flex;align-items:center;gap:0;padding:2px 8px;overflow:hidden;--legend-w: var(--legend-sm-w);--legend-h: calc(var(--legend-sm-w) * 88 / 63)}.rb-space{flex:0 1 14px;min-width:10px}.rb-space.edge{flex-basis:6px;min-width:0}.rival-bar .rival-eddies{margin-left:auto}.rival-bar .legends{gap:4px}.rival-bar .legend-slot{--legend-w: calc(var(--legend-sm-w) / (1 + var(--gear-peek) * var(--ng, 0)));align-self:center}.rival-bar .legend-slot+.legend-slot{--pull: var(--rb-pull, 0px)}.rival-bar .legend-slot+.legend-slot:not(.spent){margin-left:calc(0px - var(--pull))}.who{flex:none;display:flex;flex-direction:column;align-items:center;gap:2px;font-family:var(--font-label)}.portrait{--k: var(--cut-s);position:relative;isolation:isolate;flex:none;width:28px;height:28px;display:grid;place-items:center;background:var(--line-dim);color:var(--text);font-family:var(--font-label);font-size:var(--fs-1);clip-path:polygon(var(--k) 0,100% 0,100% calc(100% - var(--k)),calc(100% - var(--k)) 100%,0 100%,0 var(--k))}.portrait:before{content:"";position:absolute;inset:1px;z-index:var(--z-under);background:var(--bg);clip-path:polygon(calc(var(--k) - .4px) 0,100% 0,100% calc(100% - var(--k) + .4px),calc(100% - var(--k) + .4px) 100%,0 100%,0 calc(var(--k) - .4px))}.who-cred{font-size:var(--fs-1);font-weight:700;font-variant-numeric:tabular-nums;line-height:1;color:var(--text)}.who-cred:before{content:"★";color:var(--text-dim);font-size:var(--fs-1)}.gig-band{position:relative;display:flex;align-items:center;justify-content:center;min-height:0;overflow:hidden;margin-inline:8px;padding-inline:10px}.gig-band.rival{margin-top:var(--gap-gigs);padding-top:2px}.gig-band.me{margin-bottom:var(--gap-gigs);padding-bottom:2px}.mobile .gig-band.me:after{box-shadow:inset 0 1px rgba(var(--text-rgb),.06)}.gig-totals{position:absolute;right:8px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:flex-end;font-family:var(--font-label);font-size:var(--fs-1);font-weight:700;font-variant-numeric:tabular-nums;line-height:1.15;color:var(--text)}.gig-totals b{font-size:var(--fs-2);color:var(--text)}.gig-owner{position:absolute;left:8px;top:50%;transform:translateY(-50%)}.gig-band.rival .gig-owner{color:var(--accent-danger)}.gig-band.me .gig-owner{color:var(--line)}.gig-slots{display:flex;gap:6px;align-items:center;padding:2px 4px;flex:none}.gig-band .gig-slots{--gig: min(var(--gig-max), calc((100vw - 144px) / var(--n, 7) - 6px))}.board-root .gig.hl-choice{filter:drop-shadow(0 0 2px var(--line)) drop-shadow(0 0 3px var(--line))}.gig.hl-focus{z-index:var(--z-lift-2);filter:drop-shadow(0 0 3px var(--line)) drop-shadow(0 0 6px var(--line));animation:gigFocus 1.2s ease-in-out infinite}@keyframes gigFocus{0%,to{transform:scale(1.12)}50%{transform:scale(1.22)}}@media(prefers-reduced-motion:reduce){.gig.hl-focus{animation:none;transform:scale(1.15)}}.choice-gig{display:flex;align-items:center;gap:var(--sp-2);font-family:var(--font-display);font-size:var(--t-meta);color:var(--text-dim);--gig: 30px}.choice-gig .gig.hl-focus{animation:none;transform:none}.board-root .gig.hl-target,.board-root .gig-slots.hl-target .gig{filter:drop-shadow(0 0 2px var(--accent-danger)) drop-shadow(0 0 3px var(--accent-danger))}.gig-slot{width:var(--gig);height:var(--gig);display:grid;place-items:center;flex:none}.mobile .gig-slot.empty{border:0;background:var(--texture-board),var(--surface-0);clip-path:polygon(5px 0,100% 0,100% calc(100% - 5px),calc(100% - 5px) 100%,0 100%,0 5px)}.pile{position:relative;flex:none;display:flex;flex-direction:column;align-items:center;gap:1px;padding:0;background:none;border:0;color:var(--text)}.pile.inert{cursor:default}.pile-count{position:absolute;right:-28%;top:2%;white-space:nowrap;z-index:var(--z-lift-1);min-width:16px;padding:0 3px;font-family:var(--font-display);font-size:var(--fs-1);font-weight:700;font-variant-numeric:tabular-nums;line-height:14px;text-align:center;color:var(--text);background:var(--surface-raised);border:0;clip-path:polygon(3px 0,100% 0,100% calc(100% - 3px),calc(100% - 3px) 100%,0 100%,0 3px)}.pile-label,.gig-owner{font-family:var(--font-display);font-weight:600;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim)}.pile-label{letter-spacing:.04em}.rival-hand{position:relative;flex:none;display:flex;align-items:flex-start;padding-bottom:11px}.rival-hand-card{width:var(--pile-w)}.rival-hand-card+.rival-hand-card{margin-left:calc(var(--pile-w) * -.78)}.rival-hand .pile-label{position:absolute;left:0;right:0;bottom:0;text-align:center}.rival-hand .rival-hand-card.over{position:absolute;right:0;top:0;margin:0;visibility:hidden}.field-zone{position:relative;min-height:0;display:flex;align-items:center;overflow:hidden;background:transparent;container-type:size}.field-zone.rival{--zone-card-w: var(--rival-card-w)}.field-zone.me{--zone-card-w: var(--my-card-w)}.field-zone .field-row{--card-w: min(var(--zone-card-w), calc((100cqh - 12px) / (1.16 + var(--gear-peek) * var(--g, 0)) * 63 / 88));--card-h: calc(var(--card-w) * 88 / 63);width:100%;height:100%;justify-content:safe center;min-height:0;padding-top:calc(var(--card-h) * .12);padding-bottom:4px}.field-empty{flex:none;width:var(--card-w);height:var(--card-h);display:grid;place-items:center;border:1px dashed var(--line-faint);font-family:var(--font-label);font-size:var(--fs-1);letter-spacing:.08em;color:var(--text-dim)}.mid-strip{position:relative;z-index:var(--z-lift-2);display:flex;align-items:center;gap:8px;padding:0 4px 0 14px;background:var(--overlay);border-bottom:1px solid rgba(var(--text-rgb),.18);box-shadow:0 2px 8px rgba(var(--shade-rgb),.45);min-width:0}.side-active-rival .mid-strip{background:var(--bar-rival-bg)}.mid-turn{flex:none;font-family:var(--font-display);font-size:var(--fs-1);font-weight:700;letter-spacing:.12em;color:var(--text-dim)}.brand-bar{container-type:size;display:flex;overflow:hidden;align-items:center;justify-content:space-between;padding:env(safe-area-inset-top) 10px 0;background:var(--black);font-family:var(--font-display);font-weight:600;font-size:var(--fs-1);letter-spacing:.14em;color:var(--text);pointer-events:none}@container (max-height: 13px){.brand-bar>*{visibility:hidden}}.brand-tag{padding:0 6px;font-size:var(--fs-1);line-height:1.35;color:var(--text-dim);background:var(--surface-2);clip-path:polygon(4px 0,100% 0,100% calc(100% - 4px),calc(100% - 4px) 100%,0 100%,0 4px)}.mid-text{flex:1;min-width:0;display:flex;align-items:center;gap:6px;color:var(--text);font-size:var(--fs-2)}.mid-text .icon{flex:none;color:var(--text-dim)}.mid-row{display:contents}.mid-line{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-family:var(--font-body);font-weight:600;font-size:15px;line-height:1.2}.mid-line.dim{color:var(--text-dim);-webkit-line-clamp:1}.mobile .mid-text{align-self:stretch;container-type:size}.mobile .mid-text.fit-s .mid-line{font-size:var(--fs-2)}.mobile .mid-text.fit-xs .mid-line{font-size:min(var(--fs-2),calc(100cqh / 3.3));line-height:1.1;-webkit-line-clamp:3}@container (max-width: 240px){.mobile .mid-text.fit-xs .icon{display:none}}.mid-strip.danger .mid-text{color:var(--accent-danger)}.mid-strip .fight{font-size:var(--fs-4);padding:2px 10px}.mid-log,.bar-icon{flex:none}.bar-icon.placeholder{visibility:hidden}.my-zones{display:flex;align-items:center;gap:12px;margin:var(--gap-zones) 8px 0;padding:4px 14px;overflow:hidden}.mobile .my-zones,.mobile .my-piles,.mobile .gig-band{--ds-k: 10px}.eddies-field{position:relative;flex:1;min-width:0;height:var(--legend-h);display:flex;align-items:center;gap:10px;padding:0 10px}.mobile .eddies-field{border:0;background:var(--texture-board),var(--surface-0);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px)}.eddies-field .card-pile{flex:none}.eddies-stack{position:relative;flex:1;min-width:0;height:calc(var(--pile-w) * 88 / 63 * 1.15);container-type:inline-size;--ed: calc((var(--spent-scale, .92) * var(--pile-w) * 88 / 63 - var(--pile-w)) / 2)}.eddies-stack .eddie{position:absolute;--x: calc(var(--lead, 0) * var(--ed) + min(var(--nr, 0) * (var(--pile-w) + 3px) + var(--ns, 0) * max(var(--pile-w) + 3px, var(--spent-scale, .92) * var(--pile-w) * 88 / 63 * .85), var(--i) * (100cqw - var(--pile-w) - (var(--lead, 0) + var(--tail, 0)) * var(--ed)) / var(--m)));left:var(--x);top:7.5%;transition:left var(--dur) var(--ease),filter var(--dur)}.eddies-stack .eddie.spent{left:max(var(--ed),var(--x));filter:brightness(.5)}.eddies-stack .eddie .card{box-shadow:-1px 1px 2px rgba(var(--shade-rgb),.6)}.eddies-stack .eddie.over{left:auto;right:0;visibility:hidden}.eddies-count{flex:none;display:flex;flex-direction:column;align-items:center;font-family:var(--font-label);font-weight:700;font-variant-numeric:tabular-nums;line-height:1.05;color:var(--text)}.eddies-count b{font-size:var(--fs-5);font-weight:700}.eddies-nums{display:flex;align-items:baseline;gap:1px}.eddies-count em{font-style:normal;font-size:var(--fs-2);color:var(--text-dim)}.eddies-count i{font-style:normal;font-size:var(--fs-1);color:var(--text-dim)}.my-piles{display:flex;align-items:center;gap:12px;margin:var(--gap-piles) 8px 0;padding:var(--pad-piles) 14px;overflow:hidden}.dice-tray{display:flex;gap:4px;flex:none}.board-root .dice-tray .die{position:relative;width:var(--die);height:var(--die);display:grid;place-items:center;padding:0;border:0;background:none;font-size:max(9px,calc(var(--die) * .36));font-weight:700;color:var(--bg)}.board-root .dice-tray .die:before{content:"";position:absolute;inset:0;z-index:var(--z-under);background:var(--text)}.board-root .dice-tray .die{z-index:var(--z-flat)}.board-root .dice-tray .d4{padding-top:calc(var(--die) * .28);font-size:max(8px,calc(var(--die) * .29))}.board-root .dice-tray .d4:before{clip-path:var(--shape-d4)}.board-root .dice-tray .d6:before{clip-path:var(--shape-d6)}.board-root .dice-tray .d8:before{clip-path:var(--shape-d8)}.board-root .dice-tray .d10:before{clip-path:var(--shape-d10)}.board-root .dice-tray .d12:before{clip-path:var(--shape-d12)}.board-root .dice-tray .d20:before{clip-path:var(--shape-d20)}.board-root .dice-tray .die.used{color:var(--line-dim);font-weight:400}.board-root .dice-tray .die.used:before{background:rgba(var(--text-rgb),.1)}.board-root .dice-tray .die.hl-action{filter:drop-shadow(0 0 3px rgba(var(--white-rgb),.85))}.board-root .dice-tray .die.hl-action:before{background:var(--white)}.my-piles .dice-tray+*{margin-left:auto}.my-piles .pvp-slot:not(:empty){flex:1 1 0;min-width:0;display:flex}.my-piles .pvp-slot+*{margin-left:auto}.my-piles .pvp-slot:not(:empty)+*{margin-left:0}.mid-strip .pvp-slot{flex:none}.mobile .pvp-status{position:relative;flex:1;align-items:center;justify-content:center}.mobile .pvp-clock{padding:1px 6px 1px 8px;font-size:var(--fs-1)}.mobile .pvp-clock-name{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.my-piles .pvp-emote{position:absolute;inset:0;display:grid;place-items:center;overflow:hidden;padding:1px 3px;font-size:10px;line-height:1.1;text-align:center}.brand-bar:has(>.pvp-slot:not(:empty))>span{display:none}.brand-bar .pvp-slot{min-width:0}.brand-bar .pvp-notice{flex-direction:row;align-items:center;gap:var(--sp-2)}.brand-bar .pvp-away,.brand-bar .pvp-emote{padding:0;border:0;background:none;font-family:var(--font-body);font-size:var(--fs-1);letter-spacing:0;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-bar .pvp-away{color:var(--accent-danger)}.action-bar .pvp-slot{flex:none}.hand-strip{display:flex;gap:8px;align-items:flex-end;overflow-x:auto;overflow-y:hidden;padding:var(--arrow-room) 10px 4px;scroll-snap-type:x proximity;scrollbar-width:none}.hand-strip::-webkit-scrollbar{display:none}.mobile .hand-card.strip{position:relative;left:auto;bottom:auto;margin-left:0;flex:none;touch-action:pan-x;scroll-snap-align:start;transform:none}.board-root .hand-card.just-drawn .card{box-shadow:0 0 0 2px var(--line),0 0 14px rgba(var(--line-rgb),.6)}.board-root .hand-card.just-drawn:after{content:attr(data-new-label);position:absolute;left:50%;bottom:6px;transform:translate(-50%);z-index:var(--z-lift-3);padding:1px 6px;background:var(--line);color:var(--bg);font-family:var(--font-display);font-size:var(--fs-1);letter-spacing:.08em;animation:fadeIn var(--dur-fast) ease both;transition:opacity .4s ease}.board-root .hand-card.just-drawn .card{transition:box-shadow .4s ease}.board-root .hand-card.just-drawn.fading .card{box-shadow:0 0 0 2px transparent,0 0 14px transparent}.board-root .hand-card.just-drawn.fading:after{opacity:0;animation:none}@media(prefers-reduced-motion:reduce){.board-root .hand-card.just-drawn .card,.board-root .hand-card.just-drawn:after{transition:none}}.action-bar{display:flex;align-items:center;gap:6px;padding:4px 6px}.action-bar .turn-btn{flex:1;width:auto;min-height:44px}.board-root .hl-action,.board-root .hl-target,.board-root .hl-choice,.board-root .hand-card.hl-play,.board-root .hand-card.hl-sell,.board-root .hand-card.hl-quick{animation:none;box-shadow:none}.board-root .hand-card.hl-play .card,.board-root .hand-card.hl-sell .card,.board-root .hand-card.hl-quick .card{box-shadow:none}.board-root .hand-card.hl-choice .card,.board-root .legend-slot.hl-choice .card,.board-root .unit.hl-choice .card{box-shadow:0 0 0 2px var(--text)}.board-root .unit.hl-target .card{box-shadow:0 0 0 2px var(--accent-danger)}.board-root .hand-card.hl-play:before,.board-root .hand-card.hl-quick:before,.board-root .hand-card.hl-sell:before{content:"";position:absolute;left:50%;top:calc(var(--arrow-room) * -1 + 2px);z-index:var(--z-lift-2);width:30%;height:9px;margin-left:-15%;background:var(--text);clip-path:polygon(50% 0,100% 100%,0 100%);pointer-events:none;animation:arrowNudge 1.6s ease-in-out infinite}.board-root .hand-card.hl-sell:before{background:var(--text-dim)}@keyframes arrowNudge{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.focus-rollIn .dice-tray{outline:none}@media(prefers-reduced-motion:reduce){.board-root .hand-card:before{animation:none}}.board-root .field-zone.me .unit{touch-action:none}.card-drag{position:fixed;inset:0;z-index:var(--z-drag);pointer-events:none}.card-drag.held{z-index:var(--z-zoom-held)}.card-drag>.drag-card{--stage-w: 0px;position:absolute;left:0;top:0;margin:0;transform-origin:50% calc(var(--stage-w) * 44 / 63);transition:opacity var(--dur-fast)}.card-drag>.drag-card.over{opacity:.5}.card-drag>.drag-card .slot-box>.card-el .card{box-shadow:0 12px 30px rgba(var(--shade-rgb),.7)}.board-root .hand-card.drag-source,.board-root .unit.drag-source,.focus .hand-card.drag-source,.focus .unit.drag-source,.board-root .hand-card.tutor-source,.board-root .unit.tutor-source,.focus .hand-card.tutor-source,.focus .unit.tutor-source{box-shadow:none;animation:none}.board-root .hand-card.drag-source:before,.board-root .hand-card.tutor-source:before{display:none}.drag-source>.slot-box{outline:1px dashed rgba(232,230,223,.35);outline-offset:-1px;background:#e8e6df0f}.drop-ok{--drop-color: 232, 230, 223;position:relative}.drop-ok[data-drop-action=sell]{--drop-color: var(--sell-rgb)}.drop-ok[data-drop-action=attack],.drop-ok[data-drop-action=block]{--drop-color: var(--danger-rgb)}.drop-ok:after{content:attr(data-drop-label);position:absolute;inset:-3px;z-index:var(--z-lift-3);display:grid;place-items:center;padding:2px;border:2px solid rgba(var(--drop-color),.85);border-radius:0;background:rgba(var(--drop-color),.22);color:var(--white);font-family:var(--font-label);font-size:var(--fs-1);font-weight:700;letter-spacing:.04em;line-height:1.15;text-align:center;text-transform:uppercase;text-shadow:0 1px 3px var(--black),0 0 2px var(--black);pointer-events:none;transition:background var(--dur-fast),border-color var(--dur-fast)}.unit.spent.drop-ok:after,.legend-slot.spent.drop-ok:after{inset:calc(-3px - var(--spent-dh)) calc(-3px - var(--spent-dw))}.drop-over:after{border-width:3px;border-color:rgb(var(--drop-color));background:rgba(var(--drop-color),.42);box-shadow:0 0 18px rgba(var(--drop-color),.6);font-size:var(--fs-2)}.unit.drop-over,.legend-slot.drop-over,.gig-slots.drop-over{transform:scale(1.1);z-index:var(--z-lift-4);transition:transform var(--dur-fast) var(--ease)}.eddies-field.drop-over{transform:scale(1.03);transition:transform var(--dur-fast) var(--ease)}.field-zone.drop-ok:after{inset:3px;place-items:end center;padding-bottom:4px;font-size:var(--fs-2)}.field-zone.drop-ok:after{background:rgba(var(--drop-color),.07)}.field-zone.drop-over:after{font-size:var(--fs-3);background:rgba(var(--drop-color),.16);box-shadow:inset 0 0 24px rgba(var(--drop-color),.25)}.field-zone.drop-ok .field-row{position:relative;z-index:var(--z-lift-4)}.eddies-field.drop-ok:after,.gig-slots.drop-ok:after{background:linear-gradient(rgba(var(--drop-color),.24),rgba(var(--drop-color),.24)),var(--bg)}.eddies-field.drop-over:after,.gig-slots.drop-over:after{background:linear-gradient(rgba(var(--drop-color),.45),rgba(var(--drop-color),.45)),var(--bg)}.eddies-field.drop-ok:after{font-size:var(--fs-2)}.mobile .eddies-field.drop-ok:after{inset:0}.eddies-field.drop-over:after{font-size:var(--fs-3)}.drag-active .board-root .unit:not(.drop-ok):not(.drag-source),.drag-active .board-root .legend-slot:not(.drop-ok),.drag-active .board-root .hand-card:not(.drag-source){opacity:.45;transition:opacity .15s}.drag-active .board-root .hand-card:before{display:none}.shake{animation:shake var(--dur-fast)}@keyframes shake{0%,to{translate:0}25%{translate:-3px 0}75%{translate:3px 0}}@media(prefers-reduced-motion:reduce){.shake{animation:none}.unit.drop-over,.legend-slot.drop-over,.eddies-field.drop-over,.gig-slots.drop-over{transform:none}}.board-root .wave{position:relative;--wave: var(--wave-pick)}.board-root .wave.target{--wave: var(--wave-target)}.board-root .wave:before{content:"";position:absolute;inset:0;pointer-events:none;animation:pickWave 2.6s var(--ease) infinite}.board-root .hand-strip.wave:before,.board-root .field-zone.wave:before{content:none}.board-root .hand-strip.wave,.board-root .field-zone.wave{animation:pickWaveIn 2.6s var(--ease) infinite}@keyframes pickWave{0%{box-shadow:0 0 color-mix(in srgb,var(--wave) 55%,transparent),0 0 4px color-mix(in srgb,var(--wave) 50%,transparent)}70%,to{box-shadow:0 0 0 14px transparent,0 0 24px 10px transparent}}@keyframes pickWaveIn{0%{box-shadow:inset 0 0 color-mix(in srgb,var(--wave) 55%,transparent),inset 0 0 4px color-mix(in srgb,var(--wave) 50%,transparent)}70%,to{box-shadow:inset 0 0 0 18px transparent,inset 0 0 30px 12px transparent}}.board-root .gig-slots.wave .gig,.board-root .dice-tray.wave .die{filter:none}.gig-band:has(>.wave),.my-piles:has(>.wave),.my-zones:has(>.wave){position:relative;z-index:var(--z-lift-1)}@media(min-width:360px){.gig-band:has(>.wave),.my-piles:has(>.wave),.my-zones:has(>.wave){overflow:visible}}@media(prefers-reduced-motion:reduce){.board-root .wave:before{animation:none;box-shadow:0 0 10px 2px color-mix(in srgb,var(--wave) 35%,transparent)}.board-root .hand-strip.wave,.board-root .field-zone.wave{animation:none;box-shadow:inset 0 0 14px 2px color-mix(in srgb,var(--wave) 30%,transparent)}}.zoom-backdrop{position:fixed;inset:0;z-index:var(--z-zoom-back);background:rgba(var(--deep-rgb),.82);animation:menuIn var(--dur-fast) var(--ease)}.zoom{position:fixed;left:50%;top:50%;z-index:var(--z-zoom);transform:translate(-50%,-50%);width:min(92vw,380px);max-height:calc(94 * var(--vh1));overflow-y:auto;display:flex;flex-direction:column;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-1) var(--sp-3);animation:zoomIn var(--dur-fast) var(--ease);touch-action:pan-y}@keyframes zoomIn{0%{opacity:0}to{opacity:1}}.zoom-close{position:fixed;top:calc(env(safe-area-inset-top) + 8px);right:8px;z-index:var(--z-zoom-close)}.zoom-card{flex:none}.zoom-stack-wrap{flex:none;display:flex;flex-direction:column;align-items:center;gap:var(--sp-2)}.zoom-stack{--w: min(70vw, 280px, calc(calc(50 * var(--vh1)) * 63 / 88));--step: .1;position:relative;width:var(--w);height:calc(var(--w) * 88 / 63 * (1 + var(--step) * (var(--n) - 1)));touch-action:none;cursor:grab}.zoom-stack-card{position:absolute;left:0;top:0;width:100%;transform:translateY(calc(var(--d) * var(--step) * 100%)) scale(calc(1 - var(--d) * .04));transform-origin:50% 100%;transition:transform .26s var(--ease),filter .26s}.zoom-stack-card:not(.front){filter:brightness(.7)}.zoom-stack-card .card-preview{width:100%;box-shadow:0 12px 30px rgba(var(--shade-rgb),.7)}.zoom-stack-card.leaving{transform:translateY(55%) rotate(-4deg) scale(.92);transition-duration:.17s}.zoom-stack-dots{display:flex;align-items:center;gap:var(--sp-2);font-family:var(--font-display);font-size:var(--t-caption);letter-spacing:.08em;color:var(--text-dim)}.zoom-stack-dots .dot{width:7px;height:7px;background:var(--line-dim)}.zoom-stack-dots .dot.on{background:var(--text)}.zoom-stack-dots small{margin-left:var(--sp-1);font-size:inherit}@media(prefers-reduced-motion:reduce){.zoom-stack-card{transition:none}}.zoom-card .card-preview{width:min(74vw,300px,calc(calc(58 * var(--vh1)) * 63 / 88));box-shadow:0 16px 40px rgba(var(--shade-rgb),.7)}.zoom-card .zoom-slot{width:min(74vw,300px,calc(calc(58 * var(--vh1)) * 63 / 88))}.zoom-slot>.card-el .card{box-shadow:0 16px 40px rgba(var(--shade-rgb),.7)}.zoom-stack-card>.zoom-slot{width:100%}.zoom-stack-card>.zoom-slot>.card-el .card{box-shadow:0 12px 30px rgba(var(--shade-rgb),.7)}.zoom.held{visibility:hidden;pointer-events:none;z-index:var(--z-zoom-held)}.zoom.held .zoom-slot{visibility:visible}.zoom-backdrop.held{z-index:var(--z-zoom-held);pointer-events:none;transition:opacity var(--dur-fast) var(--ease)}.zoom-backdrop.held.paying{opacity:0}.zoom-slot .badge{display:none}.zoom-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--sp-2);width:100%}.zoom-act{flex:1 1 40%;max-width:100%;flex-direction:column;gap:2px;min-height:48px;white-space:normal}.zoom-reason{font-family:var(--font-body);font-size:var(--t-caption);text-transform:none;letter-spacing:0;color:var(--text-dim)}.zoom-tr{width:100%;display:flex;flex-direction:column;align-items:center;gap:var(--sp-2)}.zoom-tr-text{margin:0;width:100%;padding:var(--sp-2) var(--sp-3);background:var(--surface-1);border:1px solid var(--line-faint);font-size:var(--t-body);line-height:var(--lh-ui);color:var(--text)}.tutor-hand-src{display:none}.tutor-layer,.card-tutor{position:fixed;inset:0;z-index:var(--z-tutor);pointer-events:none}.card-tutor>.tutor-card{--stage-w: 0px;position:absolute;left:0;top:0;margin:0;transform-origin:50% calc(var(--stage-w) * 44 / 63)}.card-tutor>.tutor-card .slot-box>.card-el .card{box-shadow:0 10px 26px rgba(var(--shade-rgb),.7)}.tutor-hand{position:fixed;color:var(--white);opacity:0;filter:drop-shadow(0 2px 3px rgba(var(--shade-rgb),.9)) drop-shadow(0 0 1px var(--black))}.tutor-source{outline:2px solid var(--text);outline-offset:2px}.tutor-caption{position:fixed;left:8px;right:8px;top:calc(var(--scene-h, 0px) + env(safe-area-inset-top) + var(--brand-h, 0px) + var(--row-mid, 38px) + 6px);z-index:var(--z-tutor-caption);padding:var(--sp-2) var(--sp-3);background:var(--text);color:var(--bg);font-size:var(--t-meta);font-weight:600;text-align:center;box-shadow:0 6px 18px rgba(var(--shade-rgb),.6);pointer-events:none;animation:menuIn var(--dur-fast) var(--ease)}.effect-strip{position:fixed;left:0;right:0;top:calc(var(--scene-h, 0px) + env(safe-area-inset-top) + var(--brand-h, 0px) + var(--row-mid, 38px));z-index:var(--z-effect);display:flex;align-items:center;gap:10px;padding:5px 10px;background:rgba(var(--overlay-rgb),.97);border-bottom:1px solid var(--line-dim);color:var(--text);text-align:left;font-size:var(--fs-2);box-shadow:0 4px 12px rgba(var(--shade-rgb),.45);animation:effectIn .9s var(--ease) both}@keyframes effectIn{0%{opacity:0;transform:translateY(-8px);background:rgba(var(--overlay-rgb),.97)}15%{opacity:1;transform:none;background:rgba(var(--line-rgb),.55)}35%{background:rgba(var(--overlay-rgb),.97)}55%{background:rgba(var(--line-rgb),.4)}to{background:rgba(var(--overlay-rgb),.97)}}@media(prefers-reduced-motion:reduce){.effect-strip{animation:none}}.effect-strip .card-pile{--pile-w: 26px;flex:none}.effect-strip-text{flex:1;min-width:0;line-height:1.3}.effect-strip-text b{font-family:var(--font-label);font-size:var(--fs-1);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);font-weight:400}.effect-strip-more{flex:none;font-family:var(--font-label);font-size:var(--fs-1);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}.mobile:has(.effect-strip) .banners{top:calc(var(--scene-h, 0px) + env(safe-area-inset-top) + var(--row-mid, 38px) + 46px)}.effect-head{display:flex;align-items:flex-start;gap:var(--sp-3);--pile-w: 44px}.effect-head-thumb{flex:none;display:flex;flex-direction:column;align-items:center;gap:var(--sp-1)}.effect-head-thumb .card-pile{flex:none}.effect-head-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--sp-1)}.effect-head-name{font-family:var(--font-display);font-size:var(--t-body);line-height:var(--lh-ui);color:var(--text);overflow-wrap:anywhere}.effect-head-kind{font-family:var(--font-display);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim)}.effect-head-text{display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden;margin:0;white-space:pre-line;font-family:var(--font-body);font-size:var(--t-caption);line-height:var(--lh-ui);color:var(--text);overflow-wrap:anywhere}.effect-head-text .kw{margin:0 2px 0 0;padding:0 4px}.effect-head-text .kw:after{content:none}.choice-backdrop{position:fixed;inset:0;z-index:var(--z-choice-back);background:rgba(var(--shade-rgb),.55)}.choice{position:fixed;left:50%;top:50%;z-index:var(--z-choice);transform:translate(-50%,-50%);width:min(92vw,420px);max-height:calc(74 * var(--vh1));display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-3);background:var(--surface-raised);border:1px solid var(--line-dim);box-shadow:0 10px 30px rgba(var(--shade-rgb),.6);animation:fadeIn var(--dur-fast) var(--ease)}.choice-body{display:flex;flex-direction:column;gap:var(--sp-3);overflow-y:auto;min-height:0}.choice-body>*{flex:none}.choice-head{display:flex;flex-direction:column;gap:var(--sp-3)}.choice-ask{display:flex;flex-direction:column;gap:var(--sp-1)}.choice-q{display:flex;flex-wrap:wrap;align-items:center;column-gap:var(--sp-3);row-gap:var(--sp-1)}.choice-title{font-size:var(--t-body);line-height:var(--lh-ui);color:var(--text)}.choice-count{font-family:var(--font-display);font-size:var(--t-caption);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}.choice-picked{margin-left:var(--sp-2);color:var(--text)}.choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-2);overflow-y:auto;min-height:0;padding:4px}.choice-grid.cards{grid-template-columns:repeat(auto-fill,var(--hand-card-w));gap:var(--sp-2);justify-content:center}.choice-opt{min-height:48px;padding:var(--sp-1) var(--sp-2);border:1px solid var(--line-dim);background:var(--surface-1);color:var(--text);font-family:var(--font-display);font-size:var(--t-body)}.choice-opt.muted{opacity:.55;filter:saturate(.6);cursor:default}.choice-opt.selected{border-color:var(--text);box-shadow:0 0 0 2px var(--text);color:var(--text);background:rgba(var(--text-rgb),.1)}.choice-opt.card-opt{container-type:inline-size;display:flex;flex-direction:column;align-items:center;gap:var(--sp-1);min-height:0;padding:0;border:0;background:none;font-size:var(--t-caption);line-height:1.2;text-align:center}.choice-opt.card-opt.selected{box-shadow:none;background:none}.card-opt-pick{display:block;padding:0;border:0;background:none;cursor:pointer}.card-opt-pick:disabled,.card-opt-pick[aria-disabled=true]{cursor:default}.card-opt.selected .card-opt-pick{outline:2px solid var(--text);outline-offset:2px}.card-opt-stage{--stage-w: var(--hand-card-w)}.board-root .choice.held{visibility:hidden;pointer-events:none;z-index:var(--z-zoom-held)}.board-root .choice.held .slot-box{visibility:visible}.card-opt-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;width:100%;min-height:2.4em;overflow-wrap:anywhere}.card-opt-view,.effect-head-view{min-height:var(--sp-6);padding-inline:var(--sp-1);gap:var(--sp-1);font-size:10px;letter-spacing:.02em}.card-opt-view{margin-top:auto}@container (max-width: 72px){.card-opt-view-word{display:none}}.choice-actions{display:flex;gap:var(--sp-2);justify-content:flex-end;flex-wrap:wrap}.choice-actions>button{flex:1}.menu-backdrop{position:fixed;inset:0;background:transparent;z-index:var(--z-menu-back)}.confirm{position:fixed;left:8px;right:8px;bottom:calc(var(--row-action, 56px) + env(safe-area-inset-bottom) + 8px);z-index:var(--z-confirm);display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-3);background:var(--surface-raised);border:1px solid var(--line-dim);box-shadow:0 8px 24px rgba(var(--shade-rgb),.6);animation:menuIn var(--dur-fast) var(--ease)}.confirm.danger{border-color:var(--accent-danger)}.confirm p{margin:0;font-size:var(--t-body);line-height:var(--lh-ui)}.board-root .confirm,.board-root .choice,.fade-sheet{position:fixed;left:0;right:0;top:auto;width:auto;transform:none;display:flex;flex-direction:column;gap:var(--sp-3);padding:96px var(--sp-4) var(--sp-3);border:0;box-shadow:none;pointer-events:none;background:linear-gradient(to bottom,rgba(var(--shade-rgb),0) 0,rgba(var(--shade-rgb),.82) 56px,var(--black) 96px)}.board-root .confirm,.fade-sheet{animation:confirmIn var(--dur) var(--ease)}.board-root .choice{animation:fadeIn var(--dur) var(--ease)}.board-root .confirm>*,.board-root .choice>*,.fade-sheet>*{pointer-events:auto}.board-root .confirm:before,.board-root .choice:before,.fade-sheet:before{content:"";flex:none;width:28px;height:3px;margin-bottom:-4px;background:var(--accent-ok)}.board-root .confirm.danger:before{background:var(--accent-danger)}.board-root .confirm p,.board-root .choice-title,.fade-sheet p{margin:0;font-family:var(--font-body);font-weight:600;font-size:var(--t-lead);line-height:var(--lh-ui)}.mobile .confirm,.mobile .choice,.mobile .hint-sheet{bottom:calc(var(--row-action, 56px) + env(safe-area-inset-bottom))}.mobile .choice{max-height:calc(100 * var(--vh1) - var(--row-action, 56px) - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.board-root .hint-sheet,.board-root .hint-sheet>*{pointer-events:none}.board-root .hint-sheet{z-index:var(--z-hint-dim)}.mobile .hint-sheet{padding-bottom:var(--sp-3)}.fade-sheet{bottom:0;z-index:var(--z-fade);padding-bottom:calc(var(--sp-4) + env(safe-area-inset-bottom))}.fade-backdrop{z-index:var(--z-fade-back)}.mobile .choice-backdrop{background:rgba(var(--shade-rgb),.25)}.mobile:has(.confirm,.choice) .action-bar{opacity:.35;transition:opacity var(--dur-fast)}@keyframes confirmIn{0%{opacity:0;transform:translateY(12px)}}.side-active-me .action-bar{box-shadow:inset 0 2px 0 var(--line-dim)}@media(max-width:359px){.rival-bar,.gig-band,.my-zones,.my-piles{overflow-x:auto}}.board-root .duel{background:rgba(var(--bg-rgb),.9)}.rotate-hint{display:none}@media(orientation:landscape)and (max-height:540px){.rotate-hint{display:grid;place-items:center;position:fixed;inset:0;z-index:var(--z-blocker);background:var(--bg);padding:24px;text-align:center}.rotate-hint span{font-family:var(--font-display);font-size:var(--t-body);color:var(--line);border:1px solid var(--line);padding:var(--sp-3) var(--sp-5)}}.eddies-field.pay-open{cursor:pointer}.eddies-stack>.pay-ready{--x: calc(var(--lead, 0) * var(--ed) + min(var(--nr, 0) * (var(--pile-w) + 3px) + var(--ns, 0) * max(var(--pile-w) + 3px, var(--spent-scale, .92) * var(--pile-w) * 88 / 63 * .85), var(--i) * (100cqw - var(--pile-w) - (var(--lead, 0) + var(--tail, 0)) * var(--ed)) / var(--m)))}.board-root .eddies-stack>.pay-ready,.eddies-stack>.pay-ready{position:absolute;left:-3px;top:calc(7.5% - 3px);width:calc(var(--x) + var(--pile-w) + 6px);height:calc(var(--pile-w) * 88 / 63 + 6px);box-shadow:0 0 0 2px var(--text);pointer-events:none}.eddies-stack .eddie:not(.spent),.eddies-stack .eddie.pay-spent{transition:left var(--dur) var(--ease),filter var(--dur),rotate var(--dur) var(--ease),scale var(--dur) var(--ease)}.eddies-stack .eddie.pay-spent{rotate:var(--spent-deg);scale:var(--spent-scale)}.eddies-stack .eddie.spent:not(.pay-spent){transition:left var(--dur) var(--ease),filter var(--dur)}.legend-slot:not(.spent)>.slot-box,.legend-slot.pay-spent>.slot-box{transition:rotate var(--dur) var(--ease),scale var(--dur) var(--ease)}.legend-slot.pay-spent>.slot-box{rotate:var(--spent-deg);scale:var(--spent-scale)}.legend-slot:not(.spent)>.gear-under,.legend-slot.pay-spent>.gear-under{transition:rotate var(--dur) var(--ease),scale var(--dur) var(--ease)}.legend-slot.pay-spent>.gear-under{rotate:var(--spent-deg);scale:var(--spent-scale);transform-origin:50% var(--pay-oy, 50%)}.pay-pop{position:fixed;z-index:var(--z-flash);transform:translate(-50%,-100%);pointer-events:none;padding:var(--sp-1) var(--sp-2);background:var(--surface-raised);border:1px solid var(--wave-pick);color:var(--text);font-family:var(--font-display);font-size:var(--fs-4);font-weight:700;line-height:1;white-space:nowrap;box-shadow:0 4px 12px rgba(var(--shade-rgb),.45);animation:payPop .9s var(--ease) both}.pay-pop.still{animation:none}@keyframes payPop{0%{opacity:0;transform:translate(-50%,-60%)}15%{opacity:1;transform:translate(-50%,-100%)}70%{opacity:1}to{opacity:0;transform:translate(-50%,calc(-100% - 24px))}}@media(prefers-reduced-motion:reduce){.pay-pop{animation:none}}.board-root .to-pay .card{box-shadow:0 0 0 2px var(--wave-pick);filter:none;animation:toPay 1s ease-in-out infinite}@keyframes toPay{50%{box-shadow:0 0 0 4px var(--wave-pick)}}@media(prefers-reduced-motion:reduce){.board-root .to-pay .card{animation:none}}.desktop{--u: calc(var(--app-h, 100dvh) / 100);--unit-h: calc(20 * var(--u));--zone-card-w: calc(var(--unit-h) * 63 / 88);--card-w: var(--zone-card-w);--card-h: var(--unit-h);--hand-card-h: calc(13.5 * var(--u));--hand-card-w: calc(var(--hand-card-h) * 63 / 88);--legend-h: calc(13 * var(--u));--legend-w: calc(var(--legend-h) * 63 / 88);--pile-w: calc(9.8 * var(--u) * 63 / 88);--gig-max: calc(4.6 * var(--u));--gig: var(--gig-max);--die: calc(5.4 * var(--u));--arrow-room: calc(1.6 * var(--u));--gap: calc(1.1 * var(--u));--row-mid: 0px;--brand-h: 0px;--log-handle: 28px;--log-w: var(--log-handle);--log-room: calc(var(--log-w) + var(--gap));position:relative;width:100%;height:var(--app-h, 100dvh);overflow:hidden;user-select:none;-webkit-user-select:none;background:var(--texture-board),var(--surface-0)}.desktop.log-open{--log-w: clamp(220px, calc(34 * var(--u)), 300px)}.dk-grid{position:absolute;inset:0;padding:var(--gap);display:grid;gap:var(--gap);grid-template-columns:calc(15 * var(--u)) minmax(0,1fr) calc(15 * var(--u)) var(--log-w);grid-template-rows:calc(17 * var(--u)) minmax(0,1fr) calc(8 * var(--u)) minmax(0,1fr) calc(17 * var(--u));grid-template-areas:"rpiles rbottom rfixer log" "rpiles rfield rfixer log" "band band band log" "fixer field piles log" "fixer bottom piles log"}.dk-grid>*{min-width:0;min-height:0}.dk-piles-rcol{grid-area:rpiles}.dk-bottom-r{grid-area:rbottom}.dk-field-r{grid-area:rfield}.dk-fixer-r{grid-area:rfixer}.dk-band{grid-area:band}.dk-fixer{grid-area:fixer}.dk-field{grid-area:field}.dk-bottom{grid-area:bottom}.dk-piles{grid-area:piles}.dk-zone{position:relative;display:flex;align-items:center;justify-content:center;gap:calc(1.3 * var(--u))}.desktop .dk-zone{--ds-k: 14px}.dk-pill{position:absolute;left:50%;bottom:0;transform:translate(-50%,50%);z-index:var(--z-lift-2);padding:0 calc(1.8 * var(--u));background:var(--line);color:var(--on-line);font-family:var(--font-display);font-weight:700;font-size:max(9px,calc(1.3 * var(--u)));line-height:1.5;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;pointer-events:none;clip-path:polygon(var(--cut-s) 0,100% 0,100% calc(100% - var(--cut-s)),calc(100% - var(--cut-s)) 100%,0 100%,0 var(--cut-s))}.dk-pill.top{top:0;bottom:auto;transform:translate(-50%,-50%)}.dk-zone.rival>.dk-pill,.dk-field-r>.dk-pill{background:var(--text-dim)}.desktop .dk-zone .wave:not(.dk-wave){animation:none}.desktop .dk-zone .wave:not(.dk-wave):before{content:none}.desktop .dk-zone>.dk-wave{position:absolute;inset:0;z-index:var(--z-under);pointer-events:none}.dk-bottom,.dk-bottom-r{display:grid;gap:var(--gap)}.dk-bottom{grid-template-columns:minmax(max-content,1fr) minmax(0,1.3fr) minmax(0,1fr)}.dk-bottom-r{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) minmax(max-content,1fr)}.dk-bottom>*,.dk-bottom-r>*{min-width:0;min-height:0}.dk-field,.dk-field-r{border:1px solid rgba(var(--text-rgb),.06);border-radius:0;overflow:visible}.desktop .field-zone.me,.desktop .field-zone.rival{--zone-card-w: calc(var(--unit-h) * 63 / 88)}.desktop .field-zone .field-row{--card-w: min(var(--zone-card-w), calc((100cqh - 12px) / (1.16 + var(--gear-peek) * var(--g, 0)) * 63 / 88), calc((100cqw + var(--log-room) - 24px) / var(--n, 1) - 2.6 * var(--u)));gap:calc(2.6 * var(--u));overflow:visible;scroll-snap-type:none}.desktop .field-zone.rival .field-row{align-items:flex-end;padding-top:4px;padding-bottom:calc(var(--card-h) * .12)}.desktop .field-zone.rival .unit{margin-bottom:0;margin-top:calc(var(--ng, 0) * var(--gear-peek) * var(--card-w) * 88 / 63)}.desktop .field-zone.rival .gear-under{top:auto;bottom:calc((var(--gi) + 1) * var(--gear-peek) * 100%)}.desktop .field-zone.rival .unit.spent{margin:var(--spent-dh) calc(var(--spent-dw) + var(--spent-gear)) var(--spent-dh) var(--spent-dw)}.desktop .field-zone .field-row.crowded{overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.desktop .field-zone .field-row.crowded::-webkit-scrollbar{display:none}.desktop .legends{gap:calc(1 * var(--u))}.desktop .legends.rival{align-items:flex-end}.desktop .legends.rival .legend-slot{margin-bottom:0;margin-top:calc(var(--ng, 0) * var(--gear-peek) * var(--legend-w) * 88 / 63)}.desktop .legends.rival .gear-under{top:auto;bottom:calc((var(--gi) + 1) * var(--gear-peek) * 100%)}.desktop .legends.rival .legend-slot.spent{margin:var(--spent-dh) calc(var(--spent-dw) + var(--spent-gear)) var(--spent-dh) var(--spent-dw)}.dk-hand{display:flex;align-items:center;justify-content:center;container-type:inline-size}.desktop .hand-strip{height:100%;width:100%;justify-content:center;align-items:flex-end;gap:0;overflow:visible;padding:var(--arrow-room) 0 calc(.6 * var(--u));scroll-snap-type:none}.desktop .hand-card.strip{position:relative;left:auto;bottom:auto;flex:none;touch-action:none;margin:0 calc((max(.2 * var(--hand-card-w),min(var(--hand-card-w) + .6 * var(--u),(100cqw - var(--hand-card-w) - 2 * var(--hand-card-h) * sin((var(--n, 1) - 1) * 1.25deg)) / max(1,var(--n, 1) - 1))) - var(--hand-card-w)) / 2);transform:rotate(var(--fan-deg, 0deg));transform-origin:50% 100%;transition:translate var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease);cursor:pointer}.desktop .hand-card.strip:hover{translate:0 calc(-.8 * var(--u));z-index:var(--z-lift-5)}.focus .desktop .hand-card.strip:not(.hl-play):not(.hl-sell):not(.hl-quick):not(.hl-choice){transition:translate var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease),opacity var(--dur-fast),filter var(--dur-fast)}.desktop .hand-card.strip .card-el-front{will-change:transform}.desktop .rival-hand.fan{display:flex;align-items:flex-start;justify-content:center;padding:0;height:100%}.desktop .rival-hand.fan .rival-hand-card{width:var(--hand-card-w);margin:0;filter:brightness(.85);transform:rotate(calc((var(--i, 0) - (var(--n, 1) - 1) / 2) * -2.5deg));transform-origin:50% 0}.desktop .rival-hand.fan .rival-hand-card+.rival-hand-card{margin-left:calc(var(--hand-card-w) * -.55)}.desktop .rival-hand.fan .pile-count{right:auto;left:calc(100% + 1.2 * var(--u));top:50%;transform:translateY(-50%);font-size:var(--fs-3);font-family:var(--font-display);font-variant-numeric:tabular-nums;color:var(--line)}.desktop .rival-hand.fan .pile-label{display:none}.desktop .eddies-field{--pile-w: calc(8.4 * var(--u) * 63 / 88)}.desktop .eddies-field{flex:1;height:auto;align-self:stretch;margin:calc(1.6 * var(--u)) 0 calc(1.6 * var(--u)) calc(1.4 * var(--u));border:0;background:none}.desktop .eddies-count{margin-right:calc(1.4 * var(--u));font-family:var(--font-display);font-variant-numeric:tabular-nums}.desktop .eddies-count b{font-size:calc(3.4 * var(--u));color:var(--line)}.desktop .dice-tray{height:100%;flex-direction:column-reverse;justify-content:space-evenly;align-items:center;gap:0;padding:calc(1.6 * var(--u)) 0}.desktop .dice-tray.rival{flex-direction:column}.desktop .dice-tray.rival .die{cursor:default}.dk-piles-r,.dk-piles-me{flex-direction:column;justify-content:space-evenly}.dk-piles-rcol{display:grid;grid-template:"piles" minmax(0,1fr) / minmax(0,1fr)}.dk-piles-rcol:has(>.pvp-slot:not(:empty)){grid-template:"piles" minmax(0,1fr) "clock" auto "notice" auto / minmax(0,1fr);gap:var(--gap)}.dk-piles-rcol>.dk-piles-r{grid-area:piles}.dk-piles-rcol>.pvp-slot-rivalClock{grid-area:clock}.dk-piles-rcol>.pvp-slot-notice{grid-area:notice}.dk-piles:has(>.pvp-slot:not(:empty)){grid-template:"clock" auto "emote" auto "piles" minmax(0,1fr) / minmax(0,1fr);gap:var(--gap)}.dk-piles:has(>.pvp-slot:not(:empty))>.dk-piles-me{grid-area:piles}.dk-piles>.pvp-slot-myClock{grid-area:clock}.dk-piles>.pvp-slot-emote{grid-area:emote}.desktop .pvp-clock{display:grid;container-type:inline-size;gap:0;padding:2px 4px 3px 6px;font-size:max(12px,calc(1.6 * var(--u)));line-height:1.2}.desktop .pvp-clock-name{font-family:var(--font-body);font-size:clamp(10px,12.5cqw,max(13px,calc(1.7 * var(--u))));font-weight:600}.desktop .pvp-clock b{margin-left:0}.desktop .pvp-emote{font-size:max(12px,calc(1.5 * var(--u)))}.desktop .pvp-away{padding:2px var(--sp-1);font-size:max(12px,calc(1.5 * var(--u)));line-height:1.15}.desktop .pvp-emote-bar>button{width:calc(5.4 * var(--u));height:calc(5.4 * var(--u));min-width:32px;min-height:32px}.dk-piles{display:grid}.desktop .pile-count{right:-38%;font-family:var(--font-display);font-variant-numeric:tabular-nums}.dk-band{display:flex;gap:var(--gap)}.dk-gigs{flex:0 1 23%;min-width:0;container-type:inline-size;justify-content:flex-start;padding:0 min(calc(8 * var(--u)),calc(2.8 * var(--u) + 32px)) 0 calc(1.6 * var(--u))}.dk-gigs .gig-slots{--gig: min(var(--gig-max), calc((100cqw - 8px) / (var(--n, 7) * 1.15 - .15)));gap:min(6px,calc(var(--gig) * .15))}.dk-gigs .gig{--gs: 100cqw}.desktop .gig-slot.empty{border:1px dotted var(--line-dim)}.desktop .gig-totals{right:calc(1.4 * var(--u));font-family:var(--font-display);font-variant-numeric:tabular-nums}.desktop .gig-totals b{font-size:max(var(--fs-3),calc(2.6 * var(--u)));color:var(--line)}.desktop .gig-totals span{font-size:max(var(--fs-1),calc(1.7 * var(--u)))}.dk-bar{flex:1 1 44%;min-width:0;container:dkbar / size;display:flex;align-items:center;gap:calc(.6 * var(--u));padding-right:calc(.8 * var(--u));background:var(--plate-fill);clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px)}.side-active-rival .dk-bar{background:var(--bar-rival-bg)}.desktop .mid-strip{flex:1;min-width:0;height:100%;background:none;border:0;box-shadow:none}.desktop .mid-strip .mid-turn,.desktop .mid-strip>.mid-log{display:none}.desktop .dk-bar .mid-text{align-self:stretch;container-type:size;font-size:max(15px,calc(2 * var(--u)))}.desktop .mid-line,.desktop .mid-line.dim{font-size:max(15px,calc(2 * var(--u)));-webkit-line-clamp:2}@container (min-height: 54px){.desktop .mid-line,.desktop .mid-line.dim{-webkit-line-clamp:3}}@container (min-height: 49.5px) and (max-height: 54px){.desktop .mid-line,.desktop .mid-line.dim{line-height:1.1;-webkit-line-clamp:3}}@container (max-width: 21em) or ((max-width: 29.8em) and (max-height: 49.5px)){.desktop .mid-text .icon{display:none}.desktop .mid-line,.desktop .mid-line.dim{font-size:max(12px,min(1em,calc(100cqh / 3.6),5.08cqw));line-height:1.2;-webkit-line-clamp:3}}@container (max-width: 21em) and (min-height: 50.4px){.desktop .mid-line,.desktop .mid-line.dim{font-size:max(12px,min(1em,calc(100cqh / 4.8),6.78cqw));line-height:min(1.2em,25cqh);-webkit-line-clamp:4}}.desktop .mid-text{flex-direction:column;align-items:stretch;justify-content:center;gap:0}.desktop .mid-row{display:flex;align-items:center;gap:6px;min-width:0;flex:none}.dk-tools{flex:none;display:flex;gap:calc(.3 * var(--u))}.dk-tools .dk-tool{width:calc(5.4 * var(--u));height:calc(5.4 * var(--u));min-width:32px;min-height:32px}.dk-tool.placeholder{visibility:hidden}.dk-turn{flex:none;display:flex;align-items:center;padding:0 calc(.6 * var(--u)) 0 calc(1.6 * var(--u));font-family:var(--font-display);font-variant-numeric:tabular-nums;color:var(--text)}.dk-turn b{display:inline-grid;place-items:center;min-width:calc(5.4 * var(--u));height:calc(3.6 * var(--u));padding:0 calc(.8 * var(--u));background:var(--surface-2);font-weight:700;font-size:max(13px,calc(1.7 * var(--u)));letter-spacing:.08em;color:var(--line);clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px)}.dk-bar .turn-btn{flex:none;width:auto;min-width:calc(17 * var(--u));max-width:clamp(calc(17 * var(--u)),calc(100% - 27 * var(--u) - 254px),calc(26 * var(--u)));min-height:calc(5.4 * var(--u));padding:0 calc(1.6 * var(--u));font-size:clamp(11px,calc(1.8 * var(--u)),var(--fs-3));letter-spacing:.05em;line-height:1.15;text-wrap:balance}.dk-bar .turn-btn:has(>.turn-btn-sub){padding-block:2px}@container dkbar (max-height: 57px){.dk-bar .turn-btn:has(>.turn-btn-sub){min-width:max(calc(17 * var(--u)),calc(122px + 3.2 * var(--u)))}}.desktop .duel,.desktop .mulligan-screen{--hand-card-h: calc(30 * var(--u));--hand-card-w: calc(var(--hand-card-h) * 63 / 88)}.desktop .unit,.desktop .legend-slot,.desktop .pile:not(.inert),.desktop .gig,.desktop .mulligan-card{cursor:pointer}.desktop .dice-tray.me .die:not(:disabled):not([aria-disabled=true]){cursor:pointer}.desktop .dice-tray.me .die[aria-disabled=true]{cursor:not-allowed}.desktop .dice-tray.me .die{transition:translate var(--dur-fast) var(--ease),filter var(--dur-fast)}@media(hover:hover){.desktop .dice-tray.me .die.hl-action:hover{translate:0 -3px;filter:brightness(1.15) drop-shadow(0 0 5px rgba(var(--white-rgb),.9))}}.desktop .fb-btn{width:auto;padding-inline:calc(3 * var(--u))}.card-tip{position:fixed;z-index:var(--z-tip);pointer-events:none;aspect-ratio:63 / 88;animation:fadeIn var(--dur-fast) ease both}.card-tip img{width:100%;height:100%;display:block;border-radius:4.6%/3.3%;box-shadow:0 14px 50px rgba(var(--shade-rgb),.85),0 0 0 1px var(--line-dim)}.dk-log{grid-area:log;position:relative;display:flex;flex-direction:column;min-height:0;overflow:hidden;background:var(--plate-fill);border:1px solid var(--line-faint)}.desktop:not(.log-open):not(.log-narrow) .dk-band{grid-column:1 / -1}.desktop:not(.log-open) .dk-log{grid-area:1 / 4 / 3 / 5}.desktop:not(.log-open):not(.log-narrow) .dk-grid{grid-template-areas:"rpiles rbottom rfixer log" "rpiles rfield rfixer log" "band band band band" "fixer field piles piles" "fixer bottom piles piles"}.desktop.log-narrow{--log-w: 0px;--log-room: 0px}.desktop.log-narrow .dk-grid{right:calc(-1 * var(--gap))}.desktop.log-narrow:not(.log-drawer) .dk-log{display:none}.desktop.log-drawer .dk-log{position:absolute;grid-area:auto;top:var(--gap);right:calc(2 * var(--gap));bottom:var(--gap);width:clamp(220px,calc(34 * var(--u)),300px);z-index:var(--z-log);box-shadow:-12px 0 40px rgba(var(--shade-rgb),.7)}.dk-log-head{flex:none;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 4px 4px 12px;border-bottom:1px solid var(--line-faint)}.dk-log-title{font-family:var(--font-display);font-weight:700;font-size:var(--fs-1);letter-spacing:.08em;text-transform:uppercase;color:var(--line)}.dk-log-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:4px 6px 12px;scrollbar-width:thin;user-select:text;-webkit-user-select:text}.dk-log-empty{margin:12px 6px;font-size:var(--t-meta);line-height:var(--lh-ui);color:var(--text-dim)}.dk-log .log-turn-me{color:var(--text)}.dk-log .log-turn-rival{color:var(--accent-danger)}.dk-log .log-card{cursor:pointer}.dk-log-new{position:absolute;left:50%;bottom:10px;transform:translate(-50%);padding:3px 14px;border:0;background:var(--line);color:var(--on-line);cursor:pointer;font-family:var(--font-display);font-weight:700;font-size:var(--fs-1);letter-spacing:.08em;text-transform:uppercase;clip-path:polygon(var(--cut-s) 0,100% 0,100% calc(100% - var(--cut-s)),calc(100% - var(--cut-s)) 100%,0 100%,0 var(--cut-s))}.dk-log-handle{flex:1;display:flex;flex-direction:column;align-items:center;gap:10px;padding:10px 0;border:0;background:none;color:var(--line);cursor:pointer}.dk-log-handle-text{writing-mode:vertical-rl;font-family:var(--font-display);font-weight:700;font-size:var(--fs-1);letter-spacing:.08em;text-transform:uppercase}.dk-log-handle:hover,.dk-log-handle:focus-visible{background:rgba(var(--text-rgb),.06)}.desktop .confirm,.desktop .choice,.desktop .hint-sheet{top:50%;bottom:auto;translate:0 -50%;padding-block:96px;padding-inline:max(14px,calc(50% - 280px));background:linear-gradient(to bottom,rgba(var(--shade-rgb),0) 0,rgba(var(--shade-rgb),.82) 56px,var(--black) 96px,var(--black) calc(100% - 96px),rgba(var(--shade-rgb),.82) calc(100% - 56px),rgba(var(--shade-rgb),0) 100%)}.desktop .choice{max-height:calc(100 * var(--u))}.desktop.log-open .confirm,.desktop.log-open .choice,.desktop.log-open .hint-sheet{right:var(--log-room)}.desktop .choice-backdrop{background:rgba(var(--shade-rgb),.25)}.enlarge-hint{display:none}@media(max-height:559px){.enlarge-hint{display:grid;place-items:center;position:fixed;inset:0;z-index:var(--z-blocker);background:var(--bg);padding:24px;text-align:center}.enlarge-hint span{font-family:var(--font-display);font-size:var(--fs-3);letter-spacing:.04em;color:var(--line);border:1px solid var(--line);padding:14px 20px}}.import-col{display:flex;flex-direction:column;gap:var(--sp-4);min-width:0}.import-file{position:relative;align-self:flex-start;cursor:pointer}.import-file-input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.import-file:has(.import-file-input:focus-visible){--ds-edge: var(--ok);--ds-edge-w: 2px}.import-summary{margin:0;font-size:var(--t-meta);color:var(--text-dim)}.import-raw{overflow-wrap:anywhere}.import-note{display:block;color:var(--text-faint)}.import-select{width:calc(var(--sp-8) * 3);max-width:100%}.import-fix{padding:0 var(--sp-4)}.import-fix+.import-fix{box-shadow:inset 0 1px 0 var(--divider)}.import-check{max-width:100%;padding:var(--sp-2) 0}.import-fix-label{min-width:0;overflow-wrap:anywhere}.import-details summary{cursor:pointer;display:flex;align-items:center;min-height:var(--tap);font-family:var(--font-display);font-size:var(--t-caption);font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim)}.import-details summary:focus-visible{outline:2px solid var(--ok)}.import-list{list-style:none;margin:0;padding:var(--sp-3) var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-2);font-size:var(--t-meta);overflow-wrap:anywhere}.import-ignored{color:var(--text-dim)}.import-counts{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3);font-size:var(--t-meta);color:var(--text-dim)}.import-problems{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-1)}.builder-title{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.builder-status{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-3);font-family:var(--font-display);font-size:var(--t-meta);font-weight:600;color:var(--text-dim)}.builder-status-counts{white-space:nowrap}.builder-status-bad{color:var(--danger)}.builder-status-bar{flex:1 1 var(--sp-8)}.builder-status-history{display:inline-flex;gap:var(--sp-1);margin-left:auto}.builder-sticky{display:flex;flex-direction:column;gap:var(--sp-2)}@media(max-width:899px){.builder-sticky{position:sticky;top:0;z-index:var(--z-sticky);padding-block:var(--sp-2);background:var(--surface-0)}}.builder-col{display:flex;flex-direction:column;gap:var(--sp-3);min-width:0;text-align:left}.builder-side{position:sticky;top:0;max-height:100dvh;overflow-y:auto}.deck-sheet-note{margin:0;font-size:var(--t-body);overflow-wrap:anywhere}.builder-search{display:flex;flex-direction:column;gap:var(--sp-3);min-width:0}.builder-search-line{display:flex;align-items:center;gap:var(--sp-2)}.builder-grow{flex:1;min-width:0}.builder-understood{align-items:center}.builder-chips-label{font-family:var(--font-display);font-size:var(--t-meta);font-weight:600;color:var(--text-dim)}.builder-query-chip{display:inline-flex;align-items:center;gap:var(--sp-2);min-height:var(--sp-6);padding:0 var(--sp-3);border:1px dashed var(--edge);color:var(--text-dim);font-family:var(--font-display);font-size:var(--t-meta);font-weight:600;white-space:nowrap}.builder-tools{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2)}.builder-found{margin-right:auto;font-family:var(--font-display);font-size:var(--t-meta);font-weight:600;color:var(--text-dim)}.builder-grid{display:grid;grid-template-columns:repeat(var(--cols, 3),minmax(0,1fr));gap:var(--sp-2)}.builder-cell{display:flex;flex-direction:column;gap:var(--sp-1);min-width:0}.builder-thumb{width:100%;padding:0;border:0;cursor:pointer}.builder-thumb-in{--ds-edge: var(--line);--ds-edge-w: calc(var(--sp-1) / 2)}.builder-cell-actions{display:flex;justify-content:space-between;gap:var(--sp-1)}.builder-cell-actions>button{flex:none}.builder-cell-add{width:100%}.builder-peek{flex:1;min-width:0;display:flex;align-items:center;gap:var(--sp-3);padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.builder-peek:focus-visible{outline:calc(var(--sp-1) / 2) solid var(--ok);outline-offset:calc(var(--sp-1) / 2)}.builder-desc{display:inline-flex;align-items:center;gap:var(--sp-2)}.deck-mark{flex:none;display:inline-block;width:var(--sp-3);height:var(--sp-3);background:var(--mark, var(--text-faint))}.filter-sheet{display:flex;flex-direction:column;gap:var(--sp-4)}.filter-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-3)}.filter-tags{max-height:calc(var(--sp-8) * 3);overflow-y:auto}.filter-foot{position:sticky;bottom:0;display:flex;justify-content:space-between;gap:var(--sp-2);margin:0 calc(-1 * var(--sp-4));padding:var(--sp-3) var(--sp-4);background:var(--surface-raised);box-shadow:inset 0 1px 0 var(--divider)}.builder-panel{display:flex;flex-direction:column;gap:var(--sp-4);min-width:0}.builder-legends{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-3)}.deck-legend{display:flex;flex-direction:column;gap:var(--sp-1);min-width:0}.deck-legend-thumb{width:100%;padding:0;border:0;cursor:pointer}.deck-legend-unknown{display:grid;place-items:center;padding:var(--sp-2);font-size:var(--t-caption);color:var(--danger);overflow-wrap:anywhere;text-align:center}.deck-legend .deck-legend-pick{width:100%;aspect-ratio:63 / 88;padding:var(--sp-2);white-space:normal;text-align:center}.deck-legend-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-1)}.deck-legend-ram{min-width:0;font-family:var(--font-display);font-size:var(--t-meta);font-weight:600;color:var(--text-dim);white-space:nowrap}.deck-thumb-unknown{--ds-fill: var(--divider)}.stats-block{display:flex;flex-direction:column;gap:var(--sp-2);min-width:0}.stats-status{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-3);font-family:var(--font-display);font-size:var(--t-meta);font-weight:600;color:var(--text-dim)}.stats-block .stats-bad{color:var(--danger)}.stats-problems{margin:0;padding-left:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-1)}.stats-curve{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:var(--sp-2);align-items:end}.stats-curve-col{display:flex;flex-direction:column;align-items:center;gap:var(--sp-1);min-width:0}.stats-curve-bar{width:100%;height:calc(var(--sp-8) * 2);display:flex;flex-direction:column-reverse;background:var(--divider)}.stats-curve-seg{display:block;width:100%}.stats-curve-seg--Unit{background:var(--line)}.stats-curve-seg--Gear{background:var(--accent-quick)}.stats-curve-seg--Program{background:var(--active-edge)}.stats-curve-n{min-height:var(--sp-4);font-family:var(--font-display);font-size:var(--t-caption);font-weight:700;font-variant-numeric:tabular-nums}.stats-curve-x{font-family:var(--font-display);font-size:var(--t-caption);color:var(--text-dim)}.stats-key{margin:0;display:flex;flex-wrap:wrap;gap:var(--sp-1) var(--sp-4);font-size:var(--t-meta);color:var(--text-dim)}.stats-key>span{display:inline-flex;align-items:center;gap:var(--sp-2)}.stats-share{display:flex;height:var(--sp-3);background:var(--divider)}.stats-share-seg{display:block;flex:0 1 0;min-width:2px;background:var(--mark, var(--text-faint))}.stats-ram-bar{flex:1}.deck-peek{display:flex;flex-wrap:wrap;gap:var(--sp-4)}.deck-peek-img{width:min(240px,60vw);max-height:52dvh;object-fit:contain}.deck-peek-info{flex:1 1 220px;display:flex;flex-direction:column;align-items:flex-start;gap:var(--sp-2);min-width:0}.deck-peek-meta{margin:0;display:flex;flex-wrap:wrap;gap:var(--sp-3);font-size:var(--t-meta);color:var(--text-dim)}.deck-peek-text{margin:0;font-size:var(--t-body);line-height:var(--lh-ui);white-space:pre-line}.deck-sheet{display:flex;flex-direction:column;gap:var(--sp-3)}.deck-qr{width:min(260px,70vw);margin:0 auto;padding:var(--sp-2);background:var(--white)}.deck-qr svg{display:block;width:100%;height:auto}.deck-link{display:flex;flex-direction:column;gap:var(--sp-4);min-width:0}.deck-link-name{overflow-wrap:anywhere;margin:0;font-family:var(--font-display);font-size:var(--t-lead);font-weight:700}.deck-link-legends{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-3)}.deck-link-thumb{width:100%}.deck-link-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-4);padding:var(--sp-3) var(--sp-4);font-size:var(--t-meta)}.deck-link-color{display:inline-flex;align-items:center;gap:var(--sp-2)}.deck-link-actions{display:flex;flex-direction:column;gap:var(--sp-2)}.ready-sheet{display:flex;flex-direction:column;gap:var(--sp-4);min-width:0}.ready-badges{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.ready-meta{padding:0}.ready-plan{margin:0;font-size:var(--t-body);line-height:var(--lh-text)}.ready-credit{margin:0}.deck-sheet-text{font-family:var(--font-mono);font-size:var(--t-meta)}.deck-hand{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-2)}@media(min-width:900px){.deck-hand{grid-template-columns:repeat(6,minmax(0,1fr))}}.deck-summary{display:flex;gap:var(--sp-3);align-items:flex-start;min-width:0}.deck-summary-legends{display:flex;flex:none}.deck-summary-thumb+.deck-summary-thumb{margin-left:calc(var(--sp-4) * -1)}.deck-summary--row .deck-summary-thumb{width:var(--sp-6)}.deck-summary--hero{flex-direction:column;gap:var(--sp-3)}.deck-summary--hero .deck-summary-legends{display:grid;grid-template-columns:repeat(3,minmax(0,calc(var(--sp-8) + var(--sp-6) + var(--sp-3))));gap:var(--sp-2);width:100%}.deck-summary--hero .deck-summary-thumb{width:100%}.deck-summary--hero .deck-summary-thumb+.deck-summary-thumb{margin-left:0}.deck-summary--hero .deck-summary-text{gap:var(--sp-2)}.deck-summary-text{display:flex;flex-direction:column;gap:var(--sp-1);min-width:0}.deck-summary-name{font-weight:700;font-size:var(--t-body);line-height:var(--lh-tight);overflow-wrap:anywhere}.deck-summary--hero .deck-summary-name{font-size:var(--t-lead)}.deck-summary-line{display:flex;align-items:center;gap:var(--sp-1);flex-wrap:wrap}.deck-summary-count,.deck-summary-diff{color:var(--text-dim);font-size:var(--t-meta)}.deck-summary-diff{margin-left:var(--sp-1)}.deck-picker-tabs{margin-bottom:var(--sp-4)}.deck-picker-manage{margin-top:var(--sp-4)}.new-deck-back{margin-bottom:var(--sp-3)}.scanlines{background:repeating-linear-gradient(0deg,rgba(var(--white-rgb),.022) 0 1px,transparent 1px 3px),radial-gradient(120% 30% at 50% 0%,var(--overlay) 0%,var(--bg) 70%)}.fb-host{position:fixed;inset:0;z-index:var(--z-feedback);pointer-events:none}.fb-host>*{pointer-events:auto}.fb-host .sheet{border-top:2px solid var(--line);background:var(--bg-2)}.fb-host .sheet-head .label{font-family:var(--font-display);font-size:var(--fs-3);letter-spacing:.14em}.fb-form{display:flex;flex-direction:column;gap:8px;width:100%;font-family:var(--font-body);font-size:var(--fs-3)}.fb-lead{margin:0 0 4px;color:var(--text-dim)}.fb-label{font-family:var(--font-display);font-size:var(--fs-1);letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim);margin-top:6px}.fb-seg{display:flex;gap:6px}.fb-seg .btn{flex:1;min-height:40px;padding:0 4px;font-size:var(--fs-2)}.fb-seg .btn.on{--btn-line: var(--active-edge);--btn-fill: var(--active);color:var(--text)}.fb-seg .btn.on:before{display:none}.fb-ratings{display:flex;flex-direction:column;gap:6px}.fb-rate{display:flex;align-items:center;justify-content:space-between;gap:8px}.fb-rate-name{flex:1 1 auto;min-width:0;font-size:var(--fs-2);color:var(--text)}.fb-rate.main .fb-rate-name{font-family:var(--font-display);letter-spacing:.06em}.fb-stars{display:flex;gap:4px;flex:none}.fb-star{width:36px;height:36px;border:1px solid var(--edge);background:var(--bg);color:var(--text-dim);font:inherit;font-size:var(--fs-2)}.fb-star.on{border-color:var(--active-edge);background:var(--active);color:var(--text)}.fb-hint{margin:0;font-size:var(--fs-2);color:var(--text-dim)}.fb-field{display:flex;flex-direction:column;gap:4px;position:relative}.fb-field textarea,.fb-field input{font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--edge);padding:8px 10px}.fb-field textarea{resize:vertical;min-height:96px}.fb-count{align-self:flex-end;font-size:var(--fs-1);color:var(--text-dim)}.fb-tech{margin:4px 0 0;font-size:var(--fs-2);color:var(--text-dim)}.fb-link{color:var(--cyan);text-decoration:underline;font:inherit}.fb-preview{max-height:30vh;overflow:auto;font-size:var(--fs-1);background:var(--bg);padding:8px;white-space:pre-wrap;word-break:break-all}.fb-send{min-height:50px;font-size:var(--fs-4);letter-spacing:.2em;margin-top:6px}.fb-sent{font-family:var(--font-display);color:var(--cyan);text-align:center;padding:24px 0;width:100%}.fb-icon{font-size:var(--fs-3)}.turn-fb{position:absolute;left:var(--sp-4);right:var(--sp-4);bottom:calc(var(--sp-5) + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:var(--sp-2);align-items:center;pointer-events:auto}.turn-fb-note{font-family:var(--font-body);font-size:var(--t-meta);color:var(--text-dim)}.end-fb{margin-top:var(--sp-3)}html[data-screen=home] body{height:auto}html[data-screen=home] #app{display:contents}.home{--home-bar-h: 46px;--home-pad: max(18px, calc((100% - 520px)/2 + 18px) );display:contents;font-family:var(--font-body);font-size:var(--fs-3);color:var(--text)}.home>*{max-width:520px;margin-inline:auto}.home>.home-bar,.home>.home-hero,.home>.qr-backdrop{max-width:none}.home-bar{position:sticky;z-index:var(--z-lift-5);top:0;height:calc(var(--home-bar-h) + env(safe-area-inset-top));padding:env(safe-area-inset-top) var(--home-pad) 0;display:flex;justify-content:space-between;align-items:center;gap:8px;font-family:var(--font-display);font-weight:600;font-size:var(--fs-1);letter-spacing:.16em;color:var(--text);transition:background-color var(--dur-fast),box-shadow var(--dur-fast)}.home-bar.stuck{background:var(--bg);box-shadow:0 1px 0 var(--line-faint)}.home-brand{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-bar-end{display:flex;flex:0 100 auto;min-width:0;align-items:center;gap:6px}.home-bar-end>*{flex:none}.home-bar-end>.home-account{flex:0 1 auto;min-width:var(--tap)}@media(max-width:420px){.home-bar-end{flex-shrink:0}}.home-account{display:inline-flex;align-items:center;gap:calc(var(--sp-1) * 1.5);min-height:var(--sp-6);max-width:46vw;padding:0 var(--sp-2);border:1px solid rgba(var(--text-rgb),.3);background:transparent;color:var(--text);font-family:var(--font-display);font-size:var(--fs-1);letter-spacing:.04em;cursor:pointer}.home-account-ico{width:calc(var(--sp-3) + var(--sp-1) / 2);height:calc(var(--sp-3) + var(--sp-1) / 2);flex:none}.home-account-nick{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-account-dot{width:var(--sp-2);height:var(--sp-2);flex:none;background:var(--cyan)}@media(max-width:420px){.home-account-nick{display:none}.home-account{justify-content:center}}.lang-switch{display:flex}.lang-btn{min-width:44px;min-height:44px;padding:0 4px;border:0;background:none;color:var(--text-faint);font:inherit;letter-spacing:inherit;cursor:pointer}.lang-btn[aria-pressed=true]{color:var(--text);text-decoration:underline;text-decoration-color:var(--line);text-decoration-thickness:2px;text-underline-offset:5px}.lang-btn:focus-visible{outline:2px solid var(--cyan);outline-offset:-4px}.home-tag{border:1px solid rgba(var(--text-rgb),.4);padding:1px 7px;font-size:var(--fs-1)}.home-lead{display:flex;flex-direction:column;gap:10px}.home-body{display:flex;flex-direction:column;gap:10px;padding:10px 18px calc(24px + env(safe-area-inset-bottom))}.home-beta{margin:2px 0 4px;font-size:var(--fs-2);line-height:1.3;color:var(--text-dim);text-align:center}.home-beta b{color:var(--text);font-weight:600}.home-more{margin-top:12px}.home-acc{border-top:1px solid var(--line-faint)}.home-acc:last-child{border-bottom:1px solid var(--line-faint)}.home-acc summary{list-style:none;display:flex;justify-content:space-between;align-items:center;min-height:48px;padding:0 2px;cursor:pointer;font-family:var(--font-display);font-weight:600;font-size:var(--fs-2);letter-spacing:.14em;text-transform:uppercase;color:var(--text)}.home-acc summary::-webkit-details-marker{display:none}.home-acc summary:after{content:"+";color:var(--text-faint);font-size:var(--fs-3)}.home-acc[open] summary:after{content:"–"}.home-acc ul{margin:0 0 14px;padding-left:18px;color:var(--text-dim);font-size:var(--fs-3);line-height:1.3}.home-acc li{margin-bottom:6px}.home-foot{margin-top:8px;font-size:var(--fs-1);color:var(--text-faint);line-height:1.3}@media(min-width:900px){.home{--home-bar-h: 64px;--home-pad: max(var(--sp-6), calc((100% - var(--w-page)) / 2 + var(--sp-6)))}.home-bar{font-size:var(--t-caption)}.home-bar-end{gap:var(--sp-3)}.home-lead{max-width:var(--w-text);padding:var(--sp-6) 0 0;gap:var(--sp-4)}.home-beta{text-align:left;font-size:var(--t-meta);line-height:var(--lh-ui)}.home>.home-body{width:100%;max-width:var(--w-page);padding:0 var(--sp-6) var(--sp-7)}.home-more{display:grid;grid-template-columns:1fr 1fr;column-gap:var(--sp-6);margin-top:0}.home-acc:last-child{border-bottom:0}.home-acc{border-bottom:1px solid var(--line-faint)}.home-acc summary{font-size:var(--t-caption)}.home-acc ul{font-size:var(--t-body);line-height:var(--lh-ui)}.home-foot{display:flex;flex-wrap:wrap;gap:var(--sp-1) var(--sp-5);align-items:baseline;margin-top:var(--sp-5);font-size:var(--t-caption)}.home-foot p{margin:0}.home-foot p:first-child{flex:1 1 100%;max-width:90ch}}.qr-backdrop{position:fixed;inset:0;z-index:var(--z-qr);display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(var(--shade-rgb),.72);animation:qrIn var(--dur-fast) var(--ease)}@keyframes qrIn{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.qr-backdrop{animation:none}}.qr-dialog{position:relative;max-width:420px;width:100%;background:var(--bg);box-shadow:0 18px 60px rgba(var(--shade-rgb),.7)}.qr-dialog .desk-qr{padding:44px 32px 28px}.qr-close{position:absolute;top:4px;right:4px}.desk-qr{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px;border:1px solid var(--line-dim);text-align:center}.desk-qr h2{margin:0;font-family:var(--font-display);color:var(--line);letter-spacing:.1em;text-transform:uppercase;font-size:var(--fs-3)}.desk-qr-code{width:200px;height:200px;background:var(--white);padding:8px}.desk-qr-code svg{width:100%;height:100%;display:block}.desk-qr-url{font-family:var(--font-display);color:var(--cyan)}.home>.home-hero{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;width:100%;height:100svh;min-height:calc(var(--sp-8) * 9);margin-top:calc(-1 * (var(--home-bar-h) + env(safe-area-inset-top)));background:var(--bg)}.home-wall{--wall-gap: var(--sp-3);position:absolute;inset:0;z-index:var(--z-flat);overflow:hidden;pointer-events:none;perspective:300vw;perspective-origin:40% 0%}.home-wall-floor{position:absolute;left:-150%;width:400%;top:-6%;transform-origin:50% 0;transform:rotateX(58deg) rotate(-25deg);-webkit-mask-image:linear-gradient(180deg,transparent 0,black 6%);mask-image:linear-gradient(180deg,transparent 0,black 6%);opacity:0;transition:opacity var(--dur-flash) var(--ease)}.home-wall.ready .home-wall-floor{opacity:1}.home-wall-belt{display:flex;flex-direction:column;gap:var(--wall-gap);opacity:.6;will-change:transform;animation:home-belt 40s linear infinite}.home-wall-belt.paused{animation-play-state:paused}.home-wall-tile{display:grid;grid-template-columns:repeat(22,1fr);gap:var(--wall-gap)}.home-wall-tile img{display:block;width:100%;height:auto;aspect-ratio:63 / 88;object-fit:cover;background:var(--surface-1)}@keyframes home-belt{0%{transform:translateY(calc(-50% - var(--wall-gap) / 2))}to{transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.home-wall-belt{animation:none}.home-wall-floor{transition:none}}.home-shade{position:absolute;inset:0;z-index:var(--z-lift-1);pointer-events:none;background:linear-gradient(0deg,var(--bg) 18%,rgba(var(--bg-rgb),.82) 38%,rgba(var(--bg-rgb),.2) 70%,rgba(var(--bg-rgb),.05))}.home-hero-text{position:relative;z-index:var(--z-lift-2);display:flex;flex-direction:column;gap:var(--sp-3);padding:0 var(--home-pad) calc(var(--sp-5) + env(safe-area-inset-bottom))}.home-hero-text>p{margin:0}.home-title{font-size:var(--t-display);text-wrap:balance}.home-sub{font-size:var(--t-body)}.home-note{display:flex;flex-direction:column}.home-cta{flex-direction:column;gap:var(--sp-2);margin-top:var(--sp-1)}.home-cta>*{width:100%}.home-facts{display:flex;flex-wrap:wrap;gap:var(--sp-1) var(--sp-4);margin:0;padding:0;list-style:none;font-size:var(--t-caption);color:var(--text-dim)}.home-facts li{display:inline-flex;align-items:center;gap:var(--sp-2)}.home-facts li:before{content:"";width:var(--sp-1);height:var(--sp-1);background:var(--ok)}.home-bar-play{padding:0 var(--sp-3);font-size:var(--t-caption)}@media(max-width:420px){.home-bar--play .home-tag{display:none}}@media(min-width:900px){.home>.home-hero{justify-content:center;align-items:center;height:auto;min-height:max(calc(var(--sp-8) * 9),100svh)}.home-wall{perspective:90vw}.home-wall-floor{left:-90%;width:280%;top:-14%}.home-shade{background:radial-gradient(48% 52% at 50% 52%,rgba(var(--bg-rgb),.88) 30%,rgba(var(--bg-rgb),.35) 75%,rgba(var(--bg-rgb),.1)),linear-gradient(0deg,var(--bg) 0,transparent 16%)}.home-hero-text{align-items:center;text-align:center;gap:var(--sp-4);width:100%;max-width:var(--w-app-desk);padding:calc(var(--home-bar-h) + var(--sp-6)) var(--sp-6) var(--sp-8)}.home-title{font-size:clamp(44px,4.6vw,var(--t-hero));max-width:18ch}.home-sub{max-width:46ch;font-size:var(--t-lead)}.home-cta{flex-direction:row;justify-content:center;gap:var(--sp-3);margin-top:var(--sp-2)}.home-cta>*{width:auto}.home-facts{justify-content:center;font-size:var(--t-meta)}}.account-stack{display:flex;flex-direction:column;gap:var(--sp-4)}.account-stack--loose{gap:var(--sp-5)}.account-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(calc(var(--sp-8) * 2),1fr));gap:var(--sp-3)}.rolloff{position:fixed;inset:0;z-index:70;display:flex;flex-direction:column;gap:12px;overflow:hidden;isolation:isolate;padding:calc(22px + env(safe-area-inset-top)) max(16px,calc((100% - 520px)/2)) calc(20dvh + env(safe-area-inset-bottom));background:var(--bg-deep);color:var(--text);font-family:var(--font-body);text-align:center}.ro-chip{align-self:center;opacity:0;transition:opacity var(--dur)}.rolloff.still .ro-chip{transition:none}.ro-sr{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.ro-stage{--rd: clamp(108px, 32vw, 148px);position:relative;flex:1;min-height:240px}.ro-d3{position:absolute;width:0;height:0;transform:translate(-50%,-50%);opacity:0;will-change:transform,opacity}.ro-d3.on{opacity:1}.ro-d3.rival{left:36%;top:24%}.ro-d3.me{left:64%;top:66%}.ro-d3.lose{opacity:.35!important;transition:opacity var(--dur)}.ro-die{position:absolute;left:calc(var(--rd) / -2);top:calc(var(--rd) / -2);width:var(--rd);height:var(--rd);overflow:visible;will-change:transform}.ro-facet{stroke:rgba(var(--bg-rgb),.4);stroke-width:.9;stroke-linejoin:round}.ro-outline{fill:none;stroke:rgba(var(--bg-rgb),.6);stroke-width:1.3;stroke-linejoin:round}.ro-n{fill:var(--bg);font:700 13px var(--font-display);font-variant-numeric:tabular-nums}.ro-lbl{position:absolute;left:-100px;width:200px;display:flex;justify-content:center;min-width:0;text-align:center;top:calc(var(--rd) / 2 + 6px);font:600 var(--fs-1) var(--font-display);letter-spacing:.2em;text-transform:uppercase;color:var(--text-dim);white-space:nowrap}.ro-name{min-width:0;overflow:hidden;text-overflow:ellipsis}.ro-roll{flex:none}.ro-d3.win .ro-lbl{color:var(--line)}.ro-line{min-height:44px;margin:0;font:600 var(--fs-3)/1.4 var(--font-display);letter-spacing:.06em;color:var(--text-dim)}.ro-line.final{color:var(--line)}.rolloff-actions{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:8px;min-height:102px}.rolloff-actions .tap-hint{align-self:center;margin-top:12px}.rolloff-actions.on{animation:roActionsIn var(--dur) ease-out both}.rolloff-actions .btn.primary{min-height:50px;font-size:var(--fs-3);letter-spacing:.16em}.rolloff-actions .btn.outline{min-height:44px;font-size:var(--fs-2);letter-spacing:.14em}@keyframes roActionsIn{0%{opacity:0}to{opacity:1}}.ro-seam{position:fixed;left:0;right:0;top:calc(50% - 1px);height:2px;background:var(--line);z-index:72;pointer-events:none}.rolloff.still .rolloff-actions.on{animation:none}@media(prefers-reduced-motion:reduce){.rolloff-actions.on{animation:none}.ro-d3.lose{transition:none}}html[data-screen]:not([data-screen=home]) .seo-home{display:none}.seo-home-pl{display:none}html[data-lang=pl] .seo-home-pl{display:block}html[data-lang=pl] .seo-home:not(.seo-home-pl){display:none}.seo-home{--seo-k: var(--cut-l);border-top:1px solid var(--line-faint);background:var(--bg);color:var(--text-dim);font-family:var(--font-body);font-size:var(--t-body);line-height:1.45}.seo-home .seo-wrap{max-width:var(--w-app);margin:0 auto;padding:var(--sp-5) var(--sp-4) var(--sp-2)}.seo-home h1,.seo-home h2,.seo-home h3{font-family:var(--font-display);font-weight:600;color:var(--text);line-height:var(--lh-tight)}.seo-home h2{margin:0 0 var(--sp-3);font-size:var(--t-title);font-weight:700}.seo-home h3{margin:0 0 var(--sp-1);font-size:var(--t-lead)}.seo-home p{margin:0 0 var(--sp-3)}.seo-home a{color:var(--cyan);text-underline-offset:3px}.seo-home a:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.seo-home ul,.seo-home ol{margin:0 0 var(--sp-3);padding:0;list-style:none}.seo-home section,.seo-home .seo-two{margin-top:var(--sp-7)}.seo-home .seo-tile-cap{font-family:var(--font-display);font-size:var(--t-caption);font-weight:600;letter-spacing:.18em;text-transform:uppercase;line-height:var(--lh-tight)}.seo-home h1,.seo-home .seo-title{margin:0 0 var(--sp-2);font-size:var(--t-meta);letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim)}.seo-home .seo-lead{color:var(--text)}.seo-home .seo-bento{content-visibility:auto;contain-intrinsic-size:auto 1000px}.seo-home .seo-tiles{display:grid;grid-template-columns:repeat(2,1fr);grid-auto-rows:minmax(150px,auto);gap:var(--sp-2)}.seo-home .seo-tile{position:relative;overflow:hidden;isolation:isolate;display:flex;align-items:flex-end;min-width:0;background:var(--bg-2);clip-path:polygon(var(--seo-k) 0,100% 0,100% calc(100% - var(--seo-k)),calc(100% - var(--seo-k)) 100%,0 100%,0 var(--seo-k))}.seo-home .seo-tile--rules,.seo-home .seo-tile--decks,.seo-home .seo-tile--browser,.seo-home .seo-tile--builder{grid-column:span 2}.seo-home .seo-tile-art{position:absolute;inset:0;z-index:-2;background-size:0 0;transition:transform .8s var(--ease)}.seo-home .seo-tile-art:before,.seo-home .seo-tile-art:after{content:"";position:absolute;inset:0;background:inherit;background-size:cover;background-position:center 35%}.seo-home .seo-tile-art:before{filter:saturate(.75) brightness(.7) hue-rotate(-8deg)}.seo-home .seo-tile-art:after{filter:brightness(.8);opacity:0;transition:opacity .8s var(--ease)}.seo-home .seo-tile:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(var(--bg-rgb),.22) 0 1px,transparent 1px 3px),linear-gradient(0deg,rgba(var(--bg-rgb),.92) 12%,rgba(var(--bg-rgb),.3) 70%),linear-gradient(90deg,color-mix(in srgb,var(--active) 35%,transparent),transparent)}@media(hover:hover){.seo-home .seo-tile:hover .seo-tile-art{transform:scale(1.05)}.seo-home .seo-tile:hover .seo-tile-art:after{opacity:1}}.seo-home .seo-tile-body{display:flex;flex-direction:column;gap:var(--sp-1);padding:var(--sp-3)}.seo-home .seo-tile-num{font-family:var(--font-display);font-size:var(--t-display);font-weight:700;line-height:.9;color:var(--line)}.seo-home .seo-tile-cap{color:var(--text-dim)}.seo-home .seo-tile h3{margin:0;font-size:var(--t-lead);font-weight:700}.seo-home .seo-tile p{margin:0;font-size:var(--t-meta);line-height:var(--lh-ui);color:var(--text-dim)}.seo-home .seo-tile p+h3{margin-top:var(--sp-2)}.seo-home .seo-rail{display:flex;gap:var(--sp-3);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;margin-inline:calc(-1 * var(--sp-4));padding:var(--sp-1) var(--sp-4) var(--sp-3);scrollbar-width:thin}.seo-home .seo-rail-deck{flex:none;width:280px;display:flex;gap:var(--sp-3);align-items:flex-start;padding:var(--sp-3);scroll-snap-align:start}.seo-home .seo-legends{--w: 44px;position:relative;flex:none;width:calc(var(--w) * 1.9);height:calc(var(--w) * 88 / 63 + 8px)}.seo-home .seo-legend{position:absolute;top:4px;width:var(--w);aspect-ratio:63 / 88;background:var(--bg-2) center / cover no-repeat;box-shadow:0 6px 14px rgba(var(--deep-rgb),.5)}.seo-home .seo-legend:nth-child(1){left:0;transform:rotate(-7deg)}.seo-home .seo-legend:nth-child(2){left:calc(var(--w) * .45)}.seo-home .seo-legend:nth-child(3){left:calc(var(--w) * .9);transform:rotate(7deg)}.seo-home .seo-rail-body{min-width:0}.seo-home .seo-rail-deck h3{font-size:var(--t-body);font-weight:700}.seo-home .seo-rail-deck h3 a{display:inline-flex;align-items:center;min-height:var(--tap);color:var(--text);text-decoration:none}.seo-home .seo-rail-deck h3 a:hover{color:var(--cyan)}.seo-home .seo-rail-deck p{margin:0 0 var(--sp-1);font-size:var(--t-meta);line-height:var(--lh-ui)}.seo-home .seo-rail-style{color:var(--cyan)}.seo-home .seo-two{display:grid;gap:var(--sp-7)}.seo-home .seo-col>:last-child{margin-bottom:0}.seo-home .seo-steps{counter-reset:seo-step;display:grid;gap:var(--sp-3)}.seo-home .seo-steps li{counter-increment:seo-step;position:relative;min-height:var(--tap);padding-left:calc(var(--tap) + var(--sp-3))}.seo-home .seo-steps li:before{content:counter(seo-step,decimal-leading-zero);position:absolute;left:0;top:0;width:var(--tap);height:var(--tap);display:grid;place-items:center;background:var(--plate-fill);box-shadow:inset 0 0 0 1px var(--plate-edge);font-family:var(--font-display);font-weight:700;color:var(--line);font-size:var(--t-lead);clip-path:polygon(var(--cut-s) 0,100% 0,100% calc(100% - var(--cut-s)),calc(100% - var(--cut-s)) 100%,0 100%,0 var(--cut-s))}.seo-home .seo-steps li p{margin:0}.seo-home .seo-faq details{border-bottom:1px solid var(--divider)}.seo-home .seo-faq summary{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);min-height:var(--tap);padding:var(--sp-2) 0;cursor:pointer;list-style:none}.seo-home .seo-faq summary::-webkit-details-marker{display:none}.seo-home .seo-faq summary:after{content:"+";flex:none;font-family:var(--font-display);font-size:var(--t-lead);color:var(--text-dim)}.seo-home .seo-faq details[open] summary:after{content:"-"}.seo-home .seo-faq summary:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.seo-home .seo-faq summary h3{margin:0;font-size:var(--t-body);font-weight:600}.seo-home .seo-faq details p{margin:0 0 var(--sp-3)}.seo-home .seo-faq+p{margin-top:var(--sp-3)}.seo-home .seo-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:var(--sp-3)}.seo-home .seo-cards a{display:flex;flex-direction:column;gap:6px;color:var(--text-dim);text-decoration:none;font-size:var(--t-meta);line-height:1.25}.seo-home .seo-cards a:hover span{color:var(--text)}.seo-home .seo-cards img{width:100%;height:auto;aspect-ratio:400 / 559;background:var(--bg-2)}.seo-home .seo-cta{padding:var(--sp-7) 0 var(--sp-5);border-top:1px solid var(--divider);text-align:center}.seo-home .seo-cta h2{font-size:var(--t-display)}.seo-home .seo-cta p{color:var(--text-dim)}.seo-home .seo-foot{max-width:var(--w-app);margin:var(--sp-5) auto 0;padding:var(--sp-2) var(--sp-4) calc(48px + env(safe-area-inset-bottom));border-top:1px solid var(--line-faint)}.seo-home .seo-links{display:flex;flex-wrap:wrap;gap:0 18px;margin:0 0 12px}.seo-home .seo-links a{display:inline-flex;align-items:center;min-height:var(--tap);font-family:var(--font-display);font-size:var(--fs-2);letter-spacing:.08em;text-transform:uppercase;text-decoration:none}.seo-home .seo-disclaimer{font-size:var(--fs-2);color:var(--text-faint)}@media(min-width:600px){.seo-home .seo-cards{grid-template-columns:repeat(6,1fr)}.seo-home .seo-rail-deck{width:320px}.seo-home .seo-legends{--w: 54px}}@media(min-width:900px){.seo-home .seo-bento{contain-intrinsic-size:auto 560px}.seo-home .seo-wrap,.seo-home .seo-foot{max-width:var(--w-page);padding-inline:var(--sp-6)}.seo-home .seo-wrap{padding-top:var(--sp-7)}.seo-home .seo-lead,.seo-home .seo-sub{max-width:72ch}.seo-home section,.seo-home .seo-two{margin-top:var(--sp-8)}.seo-home .seo-tiles{grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(200px,auto);gap:var(--sp-3)}.seo-home .seo-tile--rules{grid-row:span 2}.seo-home .seo-tile-body{padding:var(--sp-5)}.seo-home .seo-tile--rules h3{font-size:var(--t-title);max-width:18ch}.seo-home .seo-tile--rules p{font-size:var(--t-body);max-width:46ch}.seo-home .seo-rail{margin-inline:calc(-1 * var(--sp-6));padding-inline:var(--sp-6)}.seo-home .seo-two{grid-template-columns:1fr 1fr;gap:var(--sp-8)}.seo-home .seo-cards{grid-template-columns:repeat(6,1fr);gap:var(--sp-4)}}@media(prefers-reduced-motion:reduce){.seo-home .seo-tile-art,.seo-home .seo-tile-art:after{transition:none}.seo-home .seo-tile:hover .seo-tile-art{transform:none}}.consent{position:fixed;left:0;right:0;bottom:0;z-index:900;margin:0 auto;max-width:560px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--panel);border-top:1px solid var(--line-dim);box-shadow:0 -12px 40px rgba(var(--shade-rgb),.6);color:var(--text);font-family:var(--font-body)}@media(min-width:560px){.consent{border:1px solid var(--line-dim);border-bottom:0}}.consent-title{margin:0 0 4px;font-family:var(--font-display);font-size:var(--fs-2);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--line)}.consent-text{margin:0 0 10px;font-size:var(--fs-2);line-height:1.35;color:var(--text-dim)}.consent-text a{color:var(--cyan);display:inline-block;min-height:24px}.consent-text a:focus-visible{outline:2px solid var(--line);outline-offset:2px}.consent-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.consent-btn{min-height:44px;width:100%;font-size:var(--fs-2)}.consent-btn:focus-visible{outline:none;box-shadow:inset 0 0 0 3px var(--cyan)}html[data-consent] body:after{content:"";display:block;height:calc(190px + env(safe-area-inset-bottom))}.consent-link{display:inline-flex;align-items:center;min-height:44px;padding:0;border:0;background:none;color:var(--text-dim);font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.consent-link:focus-visible{outline:2px solid var(--line);outline-offset:2px}html[data-consent] .offline-banner{bottom:calc(var(--consent-h, 200px) + 12px)}.shell{--shell-nav-w: calc(var(--sp-8) * 3.5);--shell-bar-h: calc(var(--tap) + var(--sp-3));min-height:100dvh;background:var(--surface-0)}.shell-main{padding-bottom:calc(var(--shell-bar-h) + env(safe-area-inset-bottom,0px))}.shell-main footer{bottom:calc(var(--shell-bar-h) + env(safe-area-inset-bottom,0px));padding-bottom:var(--sp-3)}.shell-bar{position:fixed;left:0;right:0;bottom:0;z-index:var(--z-sticky);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));min-height:calc(var(--tap) + var(--sp-3) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:var(--surface-0);box-shadow:inset 0 1px 0 var(--divider)}.shell-tab{min-height:var(--tap);display:flex;align-items:center;justify-content:center;padding:0 var(--sp-1);border:0;background:none;color:var(--text-dim);font-family:var(--font-display);font-size:var(--t-caption);font-weight:600;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:color var(--dur-fast) var(--ease)}.shell-tab[aria-current=page]{color:var(--line);box-shadow:inset 0 2px 0 var(--line)}.shell-tab:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--ok)}.shell-nav{display:none}.shell-brand{align-self:stretch;min-height:var(--tap);margin-bottom:var(--sp-4);display:flex;align-items:center;padding:0 var(--sp-4);border:0;background:none;font-family:var(--font-display);font-size:var(--t-meta);font-weight:700;letter-spacing:.2em;color:var(--text);text-align:left;cursor:pointer}.shell-brand:hover{color:var(--line)}.shell-brand:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--ok)}.shell-item{width:100%;min-height:var(--tap);display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);padding:0 var(--sp-4);border:0;background:none;color:var(--text-dim);font-family:var(--font-display);font-size:var(--t-meta);font-weight:600;letter-spacing:.1em;text-align:left;text-transform:uppercase;cursor:pointer;transition:color var(--dur-fast) var(--ease),background-color var(--dur-fast) var(--ease)}.shell-item:hover{color:var(--text);background:rgba(var(--text-rgb),.04)}.shell-item[aria-current=page]{color:var(--text);background:rgba(var(--line-rgb),.06);box-shadow:inset 2px 0 0 var(--line)}.shell-item:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--ok)}.shell-sep{height:1px;margin:var(--sp-2) var(--sp-4);background:var(--divider)}.shell-spacer{flex:1}@media(min-width:900px){.shell-bar{display:none}.shell-nav{position:fixed;top:0;bottom:0;left:0;z-index:var(--z-sticky);width:var(--shell-nav-w);display:flex;flex-direction:column;padding:calc(var(--sp-5) + env(safe-area-inset-top,0px)) 0 var(--sp-5);overflow-y:auto;background:var(--surface-0);box-shadow:inset -1px 0 0 var(--divider)}.shell-main{margin-left:var(--shell-nav-w);padding-bottom:0}.shell-main footer{bottom:0}.shell-main header>button:first-child{display:none}}.lobby{display:flex;flex-direction:column;min-width:0}.lobby-col{min-width:0}.lobby-stack{display:flex;flex-direction:column;gap:var(--sp-4);min-width:0}.lobby-section{display:flex;flex-direction:column;min-width:0;margin-top:var(--sp-2)}.lobby-resume{align-items:center}.lobby-resume:after{content:"";position:absolute;top:0;bottom:0;left:0;width:calc(var(--sp-1) / 2);background:var(--line)}.lobby-resume-title{font-family:var(--font-display);font-size:var(--t-meta);font-weight:700;color:var(--line)}.lobby-mode{flex:1 1 0;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(var(--sp-1) / 2);padding:var(--sp-1);white-space:normal;text-align:center;line-height:var(--lh-tight)}.lobby-cap{font-family:var(--font-display);font-size:var(--t-caption);font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim)}.lobby-row-text{display:flex;flex-direction:column;gap:var(--sp-1);min-width:0}.lobby-value{font-family:var(--font-display);font-size:var(--t-body);font-weight:700}.lobby-change{display:inline-flex;align-items:center;gap:var(--sp-2);color:var(--line);font-family:var(--font-display);font-size:var(--t-meta);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.lobby-deck-extra{display:flex;justify-content:flex-start;margin-top:calc(var(--sp-2) * -1)}.lobby-online{display:flex;flex-direction:column;gap:var(--sp-3);min-width:0;padding:var(--sp-4);background:var(--surface-1);border:1px solid var(--divider)}.lobby-sr{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media(max-width:899px){.lobby-online{scroll-margin-bottom:calc(var(--shell-bar-h) + var(--sp-4))}}.lobby-search-status{display:flex;align-items:center;gap:var(--sp-3);min-height:var(--tap);font-family:var(--font-display);font-size:var(--t-body);font-weight:600;color:var(--line)}.lobby-search-text{flex:1 1 auto;min-width:0;overflow-wrap:anywhere}.lobby-search-time{flex:none;color:var(--text);font-variant-numeric:tabular-nums}.lobby-search-scan{display:inline-flex;flex:none;gap:var(--sp-1)}.lobby-search-scan>span{width:var(--sp-2);height:var(--sp-2);background:var(--line);opacity:.25;animation:lobby-search-scan calc(var(--dur) * 5) var(--ease) infinite}.lobby-search-scan>span:nth-child(2){animation-delay:calc(var(--dur) * 5 / 3)}.lobby-search-scan>span:nth-child(3){animation-delay:calc(var(--dur) * 10 / 3)}@keyframes lobby-search-scan{0%,60%,to{opacity:.25}25%{opacity:1}}.lobby-search-avg{margin:0;font-size:var(--t-meta);color:var(--text-dim)}.lobby-terms{align-self:center;display:inline-flex;align-items:center;min-height:var(--tap);font-size:var(--t-caption);color:var(--text-dim);text-decoration:underline;text-underline-offset:3px}.lobby-terms:hover{color:var(--text)}.lobby-terms:focus-visible{outline:2px solid var(--line);outline-offset:2px}.lobby-found{gap:var(--sp-2);overflow-x:clip}.lobby-found:focus{outline:none}.lobby-found-title{margin:0;font-family:var(--font-display);font-size:var(--t-caption);font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--line)}.lobby-found-side{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:var(--sp-2);min-width:0;animation:lobby-found-me calc(var(--dur) * 2) var(--ease) both}.lobby-found-side--rival{animation-name:lobby-found-rival}.lobby-found-nick{margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-display);font-size:var(--t-body);font-weight:700;line-height:var(--lh-tight);color:var(--text)}.lobby-found-side--me .lobby-found-nick{color:var(--line)}.lobby-found-legends{display:flex;gap:var(--sp-1)}.lobby-found-thumb{width:calc(var(--sp-5) * 1.5)}.lobby-found-vs{align-self:center;white-space:nowrap;font-family:var(--font-display);font-size:var(--t-meta);font-weight:700;line-height:var(--lh-tight);letter-spacing:.14em;color:var(--text-dim);animation:lobby-found-vs calc(var(--dur) * 2) var(--ease) both}@keyframes lobby-found-me{0%{opacity:0;transform:translate(calc(var(--sp-6) * -1))}}@keyframes lobby-found-rival{0%{opacity:0;transform:translate(var(--sp-6))}}@keyframes lobby-found-vs{0%{opacity:0;transform:scale(1.4)}}@media(min-width:600px){.lobby-found-side{grid-template-columns:minmax(0,1fr) auto;gap:var(--sp-3)}}.lobby-room{gap:var(--sp-4)}.lobby-room:focus{outline:none}.lobby-room-status{display:flex;flex-direction:column;gap:var(--sp-1)}.lobby-room-text{font-family:var(--font-display);font-size:var(--t-body);font-weight:600;color:var(--line);overflow-wrap:anywhere}.lobby-room-time{font-size:var(--t-body);color:var(--text);font-variant-numeric:tabular-nums}.lobby-room-note{font-size:var(--t-meta);color:var(--text-dim)}.lobby-room-invite{display:flex;flex-wrap:wrap;gap:var(--sp-4);align-items:flex-start;min-width:0}.lobby-room-main{flex:1 1 calc(var(--sp-8) * 4.5);display:flex;flex-direction:column;gap:var(--sp-3);min-width:0}.lobby-room-code-block{display:flex;flex-direction:column;gap:var(--sp-2)}.lobby-room-code-line{display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-3)}.lobby-room-code{font-family:var(--font-mono);font-size:var(--t-display);font-weight:700;letter-spacing:.2em;line-height:var(--lh-tight);color:var(--text);user-select:all}.lobby-room-actions{display:flex;flex-wrap:wrap;gap:var(--sp-3)}.lobby-room-actions>*{flex:1 1 auto}.lobby-room-qr{display:none;flex:none;width:calc(var(--sp-8) * 2);padding:var(--sp-2);background:var(--white)}.lobby-room-qr svg{display:block;width:100%;height:auto}.lobby-friend-title:focus{outline:none}.lobby-friend-wide{display:none}.lobby-friend-sheet{display:flex;flex-direction:column;gap:var(--sp-4)}.lobby-code{text-transform:uppercase;letter-spacing:.2em}.lobby-level{display:flex;align-items:flex-start;width:100%;padding:var(--sp-3);border-bottom:1px solid var(--divider)}.lobby-level:last-child{border-bottom:0}.lobby-level-text{display:flex;flex-direction:column;gap:var(--sp-1);min-width:0}.lobby-level-name{font-family:var(--font-display);font-size:var(--t-meta);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.lobby-level-help{color:var(--text-dim);font-size:var(--t-meta);line-height:var(--lh-ui)}.lobby-tip{display:block;order:-1;position:relative;flex:none;height:calc(var(--sp-8) * 2);overflow:hidden;background:var(--surface-0)}.lobby-tip-art{position:absolute;inset:0;background-position:center 20%;background-size:cover;background-repeat:no-repeat;filter:saturate(.75) brightness(.7) hue-rotate(-8deg);animation:lobby-art-in var(--dur) var(--ease) both}.lobby-tip-art--legend{background-size:160%;background-position:50% 24%}.lobby-tip-shade{position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(var(--bg-rgb),.22) 0 1px,transparent 1px 3px),linear-gradient(0deg,var(--surface-0) 5%,rgba(var(--bg-rgb),.2) 70%)}.lobby-tip-text{position:absolute;left:var(--sp-4);right:var(--sp-4);bottom:var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-1);animation:lobby-tip-in var(--dur) var(--ease) both}.lobby-tip-label{font-family:var(--font-display);font-size:var(--t-caption);font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--line)}.lobby-tip-title{margin:0;font-family:var(--font-display);font-size:var(--t-body);font-weight:700;line-height:var(--lh-tight);color:var(--text)}.lobby-tip-body{display:none;margin:0;color:var(--text-dim);font-size:var(--t-body);line-height:var(--lh-text)}.lobby-tip-dots{display:none;gap:var(--sp-1);margin-top:var(--sp-2)}.lobby-tip-dot{width:var(--sp-4);height:calc(var(--sp-1) / 2);background:rgba(var(--text-rgb),.25)}.lobby-tip-dot[data-on]{background:var(--line)}@keyframes lobby-art-in{0%{opacity:0}to{opacity:1}}@keyframes lobby-tip-in{0%{opacity:0;transform:translateY(var(--sp-1))}to{opacity:1;transform:none}}@media(min-width:900px){.lobby{display:grid;grid-template-columns:minmax(0,var(--w-app)) minmax(0,1fr);min-height:100dvh}.lobby-tip{display:block;order:0;position:sticky;top:0;height:100dvh}.lobby-tip-art{background-position:center 22%}.lobby-tip-art--legend{background-size:auto 250%;background-position:50% 33%}.lobby-tip-shade{background:repeating-linear-gradient(0deg,rgba(var(--bg-rgb),.22) 0 1px,transparent 1px 3px),linear-gradient(90deg,var(--surface-0) 0%,rgba(var(--bg-rgb),.55) 30%,rgba(var(--bg-rgb),.15) 60%,rgba(var(--bg-rgb),.6) 100%),linear-gradient(0deg,var(--surface-0) 8%,rgba(var(--bg-rgb),.85) 30%,transparent 60%)}.lobby-tip-text{left:8%;right:8%;bottom:7%;gap:var(--sp-2)}.lobby-tip-title{font-size:var(--t-title);max-width:26ch}.lobby-tip-body{display:block;max-width:46ch}.lobby-tip-dots{display:flex}.lobby-row .deck-summary-thumb{width:var(--sp-7)}.lobby-friend-wide{display:block}.lobby-friend-one{display:none}.lobby-room-qr{display:block}}@media(min-width:900px)and (max-width:1199px){.lobby{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}}.lobby-mode-short{display:none}@media(max-width:599px){.lobby-mode-long{display:none}.lobby-mode-short{display:inline}}@media(max-width:899px)and (max-height:700px){.lobby-tip{height:var(--sp-7)}.lobby-tip-label{display:none}.lobby-stack{gap:var(--sp-2)}.lobby-deck-extra{margin-top:0}.lobby-row .deck-summary-line+.deck-summary-line{display:none}}@media(prefers-reduced-motion:reduce){.lobby-tip-text,.lobby-tip-art{animation:none}.lobby-search-scan>span{animation:none;opacity:.6}.lobby-found-side,.lobby-found-vs{animation:none}}html.scene-on{--scene-h: 32px}html.scene-on #app{min-height:0;padding-top:var(--scene-h)}html.scene-on .mobile{--vh1: calc((var(--app-h, 100dvh) - var(--scene-h)) / 100);height:calc(100dvh - var(--scene-h));height:calc(var(--app-h, 100dvh) - var(--scene-h))}html.scene-on .desktop{--u: calc((var(--app-h, 100dvh) - var(--scene-h)) / 100);height:calc(var(--app-h, 100dvh) - var(--scene-h))}@media(max-height:680px),(display-mode:standalone)and (max-height:900px){html.scene-on .mobile{--rival-card-w: clamp(34px, calc(7.2 * var(--vh1)), 44px);--my-card-w: clamp(42px, calc(9 * var(--vh1)), 56px);--hand-card-w: clamp(54px, calc(11.6 * var(--vh1)), 72px);--legend-w: clamp(24px, calc(4.8 * var(--vh1)), 30px);--legend-sm-w: clamp(20px, calc(4.2 * var(--vh1)), 25px);--gig-max: clamp(16px, calc(3.2 * var(--vh1)), 20px);--gig: var(--gig-max);--die: clamp(20px, calc(4.2 * var(--vh1)), 25px);--pile-w: clamp(18px, calc(3.8 * var(--vh1)), 23px);--arrow-room: 11px;--row-brand: 16px;--row-mid: 34px;--row-action: 50px;--gig-was: clamp(18px, calc(3.6 * var(--vh1)), 22px);--legend-h-was: calc(clamp(26px, calc(5.4 * var(--vh1)), 34px) * 88 / 63);--row-rival-was: 46px;--row-piles-was: 42px;--air-max-rival: 0px;--air-max-gigs: calc(var(--gig) - var(--gig-was) + 5px);--air-max-zones: calc((var(--legend-h) - var(--legend-h-was)) * var(--lk) + 6px);--air-max-piles: 4px;--gap-max: 4px;--pile-room: calc(var(--pile-w) * 88 / 63)}html.scene-on .mobile .gig-totals{line-height:1}html.scene-on .mobile .pile-label{display:none}html.scene-on .mobile .rival-hand{padding-bottom:0}html.scene-on .mobile .mid-text{font-size:var(--fs-1)}html.scene-on .mobile .mid-strip .mid-log{width:32px;height:32px}html.scene-on .mobile .mid-line{font-size:var(--fs-2)}}.scene-panel{position:fixed;top:env(safe-area-inset-top,0px);left:0;right:0;z-index:var(--z-scene-panel);background:var(--surface-raised);border-bottom:1px solid var(--line-dim);color:var(--text);font-family:var(--font-body);pointer-events:auto}.scene-panel.open{max-height:40dvh;overflow-y:auto;box-shadow:0 6px 18px rgba(var(--shade-rgb),.6)}.scene-bar{box-sizing:border-box;height:var(--scene-h);display:flex;align-items:center;gap:var(--sp-2);padding:0 var(--sp-2) 0 0;min-width:0}.scene-bar-text{flex:1;min-width:0;height:100%;display:flex;flex-direction:column;justify-content:center;padding:0 var(--sp-2);border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.scene-bar-text:focus-visible{outline:2px solid var(--ok);outline-offset:-2px}.scene-bar-title,.scene-bar-line{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.15}.scene-bar-title{font-family:var(--font-display);font-size:var(--fs-1);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}.scene-bar-line{font-size:var(--fs-2);font-weight:600}.scene-bar-line.dim,.scene-panel-say.dim{color:var(--text-dim)}.scene-bar-line.error,.scene-panel-say.error{color:var(--danger)}.scene-chip{flex:none;height:calc(var(--scene-h) - 6px);padding:0 var(--sp-3);border:1px solid rgba(var(--text-rgb),.3);background:var(--surface-0);color:var(--text);font-family:var(--font-display);font-size:var(--fs-1);font-weight:600;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.scene-chip.primary{border-color:var(--line);background:var(--line);color:var(--on-line);font-weight:700}.scene-chip:focus-visible{outline:2px solid var(--ok);outline-offset:1px}.scene-panel-more{display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3) var(--sp-3);border-top:1px solid var(--line-faint);font-size:var(--t-caption);line-height:1.25}.scene-panel-say{margin:0;font-size:var(--t-meta);font-weight:600}.scene-panel-label{font-family:var(--font-display);font-size:var(--t-caption);letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim)}.scene-panel-checks{list-style:none;margin:0;padding:0}.scene-panel-checks label{display:flex;align-items:flex-start;gap:var(--sp-2);padding:2px 0}.scene-panel-actions{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.scene-menu{min-height:100dvh;display:flex;align-items:flex-start;justify-content:center;padding:var(--sp-6) var(--sp-4);background:var(--surface-0);color:var(--text);font-family:var(--font-body)}.scene-menu.over{position:fixed;inset:0;z-index:var(--z-choice);min-height:0;background:color-mix(in srgb,var(--surface-0) 90%,transparent);overflow-y:auto}.scene-menu-box{width:100%;max-width:520px;display:flex;flex-direction:column;gap:var(--sp-3)}.scene-menu-title{margin:0;font-family:var(--font-display);font-size:var(--t-title);letter-spacing:.08em;text-transform:uppercase}.scene-menu-error{margin:0;color:var(--danger)}.scene-menu-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-2)}.scene-menu-item{box-sizing:border-box;width:100%;min-height:var(--tap);display:flex;align-items:baseline;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border:1px solid rgba(var(--text-rgb),.3);background:var(--surface-1);color:var(--text);font-family:var(--font-body);font-size:var(--t-body);font-weight:600;line-height:var(--lh-ui);text-align:left;white-space:normal;overflow-wrap:anywhere;cursor:pointer}.scene-menu-item.current{border-color:var(--line);background:var(--active)}.scene-menu-item:focus-visible{outline:2px solid var(--ok);outline-offset:1px}.scene-menu-n{flex:none;min-width:3ch;font-family:var(--font-display);color:var(--text-dim)}.scene-menu-title-text{flex:1;min-width:0}
