:root{--stage:#f6f6f2;--paper:#fff;--paper-strong:#fff;--ink:#222;--ink-soft:#6b6b64;--lit:#222;--text:#222;--text-55:#6b6b64;--text-42:#7d7d75;--text-38:#86867d;--text-34:#8e8e85;--line:#c8c8c0;--link:#1a4fa0;--button-bg:#fff;--button-hover:#f0f0ea;--button-selected:#e8e8e0;--band-base:#fff;--band-mix:28%;--font-heading:system-ui, -apple-system, "Hiragino Sans", "Yu Gothic", sans-serif;--font-body:system-ui, -apple-system, "Hiragino Sans", "Yu Gothic", sans-serif;--font-number:"Helvetica Neue", Arial, sans-serif;font-family:var(--font-body);color:var(--text);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:15px;line-height:1.6}:root[data-theme=dark]{--stage:#1c1c1a;--paper:#262624;--paper-strong:#262624;--ink:#e4e2da;--ink-soft:#a8a69e;--lit:#e4e2da;--text:#e4e2da;--text-55:#a8a69e;--text-42:#a8a69e;--text-38:#a8a69e;--text-34:#a8a69e;--line:#4a4a44;--link:#8ab4f8;--button-bg:#2a2a28;--button-hover:#343430;--button-selected:#3a3a36;--band-base:#2a2a28;--band-mix:36%;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:var(--stage);min-height:100svh;margin:0}#root{flex-direction:column;min-height:100svh;display:flex}a{color:var(--link)}button{font-family:inherit}:focus-visible{outline:2px solid var(--ink);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.wordmark{font-family:var(--font-heading);letter-spacing:.04em;color:var(--ink);margin:0;font-weight:700;line-height:1.1}.wordmark--hero{font-size:clamp(2.1rem,6vw,3.4rem)}.wordmark--small{font-size:1.1rem}.app-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:12px 20px;display:flex}.app-header__brand{color:var(--ink);white-space:nowrap;flex-direction:column;gap:2px;text-decoration:none;display:flex}.app-header__brand-title{font-family:var(--font-heading);letter-spacing:.02em;font-size:1rem;font-weight:700}.app-header__brand-sub{color:var(--text-55);font-size:.7rem}.app-header__nav{flex-wrap:wrap;gap:16px;margin-left:auto;display:flex}.app-header__theme-toggle.secondary-button{justify-content:center;align-items:center;width:34px;height:34px;padding:0;font-size:1.05rem;line-height:1;display:inline-flex}.app-header__theme-toggle>span{line-height:1;display:block}.app-header__link{font-family:var(--font-heading);letter-spacing:.03em;color:var(--text-55);font-size:.9rem;font-weight:600;text-decoration:none}.app-header__link:hover{color:var(--ink)}.app-header__link--active{color:var(--ink);text-decoration:underline}.section-heading{font-family:var(--font-heading);letter-spacing:.05em;color:var(--text-55);align-items:center;gap:10px;margin:0 0 10px;font-size:1rem;font-weight:600;display:flex}.section-heading:after{content:"";background:var(--line);flex:1;height:1px}.primary-button{font-family:var(--font-body);letter-spacing:.02em;border:1px solid var(--ink);color:var(--ink);background:var(--button-bg);cursor:pointer;border-radius:3px;padding:12px 32px;font-size:.95rem;font-weight:700}.primary-button:hover:not(:disabled){background:var(--button-hover)}.primary-button:active:not(:disabled){background:var(--button-selected)}.primary-button:disabled{opacity:.4;cursor:not-allowed}.secondary-button{font-family:var(--font-body);border:1px solid var(--ink);background:var(--button-bg);color:var(--text);cursor:pointer;border-radius:3px;padding:10px 22px;font-weight:500}.secondary-button:hover:not(:disabled){background:var(--button-hover)}.start-screen{text-align:left;box-sizing:border-box;flex-direction:column;justify-content:center;gap:28px;width:100%;max-width:880px;min-height:100svh;margin:0 auto;padding:32px 24px;display:flex;overflow-y:auto}.start-screen__hero{text-align:center;padding:0}.start-screen__hero-sub{font-family:var(--font-body);letter-spacing:.12em;color:var(--text-42);margin-top:14px;font-size:.82rem;font-weight:500}.start-screen__lead{color:var(--text-55);margin:18px 0 0;font-size:.95rem}.start-screen__section{margin:0}.start-screen__error{color:#8a1f22;background:#fbe4e4;border:1px solid #e5484d;border-radius:3px;margin:-12px 0 0;padding:10px 14px;font-size:.86rem}.start-screen__actions{align-self:center;align-items:center;gap:14px;display:flex}.start-screen__decks{flex-wrap:wrap;gap:16px;display:flex}.deck-choice{cursor:pointer;background:var(--paper);color:var(--ink);border:1px solid #0000;border-radius:3px;flex:320px;gap:10px;padding:16px;transition:transform .14s,border-color .14s;display:flex;position:relative}.deck-choice:hover{transform:translateY(-2px)}.deck-choice--selected{border-color:#f2c53d}.deck-choice--selected:after{content:"✓";width:20px;height:20px;font-family:var(--font-body);color:var(--ink);background:#f2c53d;border-radius:3px;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:flex;position:absolute;top:-10px;right:12px}.deck-choice input[type=radio]{accent-color:var(--ink);margin-top:4px}.deck-choice__name{font-family:var(--font-heading);color:var(--ink);font-size:1.08em;font-weight:600}.deck-choice__desc{color:var(--ink-soft);margin:4px 0 8px;font-size:.86em}.deck-choice__oshi,.deck-choice__support{color:var(--ink);font-size:.82em}.start-screen__opponent-ai-label{color:var(--text-55);margin-top:16px;margin-bottom:6px;font-size:.82rem;display:block}.start-screen__opponent-select{box-sizing:border-box;border:1px solid var(--line);background:var(--paper);width:100%;max-width:420px;color:var(--ink);font-family:var(--font-body);cursor:pointer;border-radius:3px;padding:10px 12px;font-size:.92rem}.start-screen__opponent-summary{border:1px solid var(--line);background:#e8e2d40a;border-radius:3px;max-width:420px;margin-top:10px;padding:10px 14px}.start-screen__opponent-summary .deck-choice__desc,.start-screen__opponent-summary .deck-choice__oshi,.start-screen__opponent-summary .deck-choice__support{color:var(--text)}.battle-screen{box-sizing:border-box;text-align:left;flex-direction:column;gap:16px;width:100%;max-width:1200px;height:100svh;max-height:100svh;margin:0 auto;padding:8px 16px 10px;display:flex;position:relative;overflow:hidden}.battle-screen__header{border-bottom:1px solid var(--line);flex:none;grid-template-columns:1fr auto 1fr;align-items:flex-end;gap:12px;padding:4px 4px 12px;display:grid}.battle-screen__brand{justify-self:start}.battle-screen__meta{font-family:var(--font-number);letter-spacing:.06em;color:var(--text-55);flex-direction:column;justify-self:end;align-items:flex-end;gap:3px;font-size:.76rem;display:flex}.meta-chip{white-space:nowrap}.opponent-ai-badge{letter-spacing:.04em;color:var(--text-55);text-align:center;margin-bottom:2px;font-size:.68rem}.scoreboard{justify-self:center;align-items:baseline;gap:18px;display:flex}.scoreboard__side{flex-direction:column;gap:2px;display:flex}.scoreboard__side--self{align-items:flex-end}.scoreboard__side--opponent{align-items:flex-start}.scoreboard__label{letter-spacing:.2em;color:var(--text-55);font-size:.68rem}.scoreboard__number{font-family:var(--font-number);color:var(--text-55);font-size:2.1rem;font-weight:600;line-height:.85}.scoreboard__side--self .scoreboard__number{color:var(--lit)}@keyframes score-pop{0%{transform:scale(1)}40%{transform:scale(1.22)}to{transform:scale(1)}}.scoreboard__number--pop{animation:.5s score-pop}.scoreboard__vs{font-family:var(--font-number);color:var(--text-34);padding-bottom:4px;font-size:1rem;font-weight:300}.pips{align-items:center;gap:4px;display:inline-flex}.pips__dot{box-sizing:border-box;background:0 0;border:1.5px solid #e8e2d42e;border-radius:50%;width:8px;height:8px}.pips--self .pips__dot--on{background:var(--lit);border-color:var(--lit)}.pips--opponent .pips__dot--on{background:var(--text-55);border-color:var(--text-55)}.board{flex:auto;grid-template-rows:auto auto;grid-template-columns:minmax(56px,90px) 1fr minmax(56px,90px);align-content:center;align-items:center;gap:10px 14px;width:100%;max-width:900px;min-height:0;margin:0 auto;padding:6px 8px;display:grid;position:relative}.board:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(62% 74% at 50% 38%,#fff0d72b,#0000 72%),linear-gradient(#0000 50%,#04060c57 100%);position:absolute;inset:0}.board>*{z-index:1;position:relative}.board__cell--left-top{grid-area:1/1}.board__cell--left-bottom{grid-area:2/1}.board__cell--center{grid-area:1/2/span 2}.board__cell--right-top{grid-area:1/3}.board__cell--right-bottom{grid-area:2/3}.board__cell--rotated{opacity:.82}.side-stack{flex-direction:column;align-items:center;gap:12px;display:flex}.side-stack__item{flex-direction:column;align-items:center;gap:3px;display:flex}.side-stack__label{font-family:var(--font-body);letter-spacing:.22em;color:var(--text-38);font-size:.64em;font-weight:500}.deck-stack,.pile-stack{flex-direction:column;align-items:center;gap:3px;display:flex}.deck-stack__pile .card-view,.pile-stack .card-view--back{width:clamp(56px,9vw,84px)}.pile-stack .card-view:not(.card-view--back){width:clamp(56px,8vw,84px)}.pile-stack__empty-mark{background:var(--line);width:20px;height:1px}.deck-stack__count,.pile-stack__count{font-family:var(--font-number);color:var(--text-55);font-size:.78em}.field-grid{grid-template-rows:auto auto auto;grid-template-columns:repeat(3,minmax(70px,188px));justify-content:center;justify-items:center;gap:72px 16px;display:grid}.field-grid__row{display:contents}.field-slot{flex-direction:column;align-items:center;gap:4px;display:flex}.field-grid__row--opponent .field-slot{flex-direction:column-reverse}.field-slot--resolve .card-view{width:clamp(92px,15.5vw,188px)}.field-slot__label{font-family:var(--font-body);letter-spacing:.24em;text-indent:.24em;color:var(--text-34);font-size:.66em;font-weight:500}.field-grid__row--opponent .card-view,.field-grid__row--opponent .field-slot__label{opacity:.82}.field-slot__empty{aspect-ratio:94/53;border:1px solid var(--line);width:clamp(70px,12vw,138px);color:var(--text-38);text-align:center;box-sizing:border-box;border-radius:3px;justify-content:center;align-items:center;font-size:.72em;display:flex}.field-slot__empty--clickable{cursor:pointer;color:var(--text-42);background:#fff6e406;border-color:#fff6e438}.field-slot__empty--clickable:hover{border-color:#fff6e473}.result-label{flex-direction:column;justify-content:center;align-self:center;align-items:center;gap:2px;min-height:1.7em;display:flex}.result-label__stack{flex-direction:column;align-items:center;gap:3px;line-height:1;display:flex}.result-label__value{font-family:var(--font-number)}.result-label__value--loser{color:#e8e2d473;font-size:18px}.result-label__value--winner{color:var(--lit);font-size:22px;font-weight:600}.result-label__triangle{border-left:6px solid #0000;border-right:6px solid #0000;width:0;height:0}.result-label__triangle--self{border-top:8px solid #f2c53d}.result-label__triangle--opponent{border-bottom:8px solid #e8e2d48c}.result-label--draw{font-family:var(--font-number);letter-spacing:.2em;color:#e8e2d466;font-size:15px}.result-label__note{letter-spacing:.02em;color:var(--text-38);font-size:10px}.support-toast-stack{z-index:20;pointer-events:none;flex-direction:column;align-items:center;gap:6px;display:flex;position:fixed;top:14px;left:50%;transform:translate(-50%)}@keyframes support-toast-in{0%{opacity:0;transform:translateY(-10px)}12%,85%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-6px)}}.support-toast{font-family:var(--font-body);color:var(--ink);background:var(--paper);white-space:nowrap;border-radius:3px;padding:8px 20px;font-size:.88rem;font-weight:500;animation:2.6s forwards support-toast-in}.support-toast__who{font-weight:700}.support-indicator{z-index:5;font-family:var(--font-body);letter-spacing:.02em;color:var(--ink);background:var(--paper);white-space:nowrap;border-radius:3px;padding:3px 10px;font-size:.68rem;position:absolute}.support-indicator--opponent{top:6px;left:8px}.support-indicator--self{bottom:6px;right:8px}.field-slot--swapped{position:relative}.field-slot--swapped:before{content:"⇄";color:#2fd0c6;font-size:.8em;position:absolute;top:-2px;left:50%;transform:translate(-50%,-100%)}.field-grid__row--opponent .field-slot--swapped:before{top:auto;bottom:-2px;transform:translate(-50%,100%)}.field-slot--swapped .card-view{outline-offset:2px;border-radius:3px;outline:1.5px solid #2fd0c6}.card-view{aspect-ratio:63/88;box-sizing:border-box;background:var(--paper);width:clamp(70px,12vw,138px);color:var(--ink);cursor:default;border-radius:3px;flex-direction:column;padding:3px;transition:transform .14s;display:flex;position:relative;overflow:visible}.card-view--clickable{cursor:pointer}.card-view--clickable:hover{transform:translateY(-4px)}.card-view--compact{width:clamp(56px,9vw,104px)}.card-view--front{aspect-ratio:auto;min-height:0;container-type:inline-size}.card-view--selected{outline-offset:1px;outline:2px solid #f2c53d;transform:translateY(-4px)}.card-view__exp-badge{z-index:1;background:var(--ink);min-width:16px;height:16px;color:var(--lit);font-family:var(--font-number);letter-spacing:.02em;border-radius:3px;justify-content:center;align-items:center;padding:0 3px;font-size:.62rem;font-weight:600;display:inline-flex;position:absolute;top:-6px;left:-6px}.card-view__face{flex-direction:column;display:flex}.card-view--away .card-view__face{flex-direction:column-reverse}.card-view__banner{white-space:nowrap;text-overflow:ellipsis;border-radius:3px 3px 0 0;align-items:center;gap:3px;margin-bottom:2px;padding:3px 4px;font-size:.62em;font-weight:700;display:flex;overflow:hidden}.card-view--away .card-view__banner{border-radius:0 0 3px 3px;margin-top:2px;margin-bottom:0}.card-view__cost{width:1.55em;height:1.55em;color:var(--ink);font-family:var(--font-number);background:#fffffff0;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:.95em;font-weight:600;display:inline-flex}.card-view__name{text-overflow:ellipsis;font-family:var(--font-body);overflow:hidden}.card-view__stats{background:#171a211f;border-radius:0 0 3px 3px;gap:1px;padding:1px;display:flex}.card-view--away .card-view__stats{border-radius:3px 3px 0 0}.card-view__stat{background:var(--paper);color:var(--ink);flex-direction:column;flex:1 1 0;align-items:center;padding:3px 0 4px;display:flex}.card-view__stat-label{color:var(--ink-soft);letter-spacing:.04em;font-size:7cqw}.card-view__stat-value{font-size:13cqw;font-family:var(--font-number);white-space:nowrap;font-weight:600;line-height:1.1}.card-view__stat--highlight{background:var(--paper-strong)}.card-view__stat--highlight .card-view__stat-label{color:var(--ink)}.card-view__stat--highlight .card-view__stat-value{color:var(--ink);border-bottom:2px solid var(--ink);padding-bottom:1px}.card-view__stat--highlight-swapped{background:var(--paper-strong)}.card-view__stat--highlight-swapped .card-view__stat-label{color:#146b64}.card-view__stat--highlight-swapped .card-view__stat-value{color:#146b64;border-bottom-color:#146b64}.card-view__affinity{color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;margin-top:3px;padding:2px 4px;font-size:.52em;overflow:hidden}.card-view__oshi{color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;padding:1px 6px 4px;font-size:.7em;overflow:hidden}.card-view--away .card-view__oshi{padding:4px 6px 1px}.card-view__affinity--placeholder{visibility:hidden}.card-view--back{aspect-ratio:94/53;background:#1f2740;border:1px solid #e8e2d429;justify-content:center;align-items:center;padding:0;overflow:hidden}.card-back__mark{aspect-ratio:1;border:1.5px solid #e8e2d473;border-radius:50%;width:22%}.placement-panel{border-top:1px solid var(--line);flex:none;padding:8px 4px 0}.placement-panel__row{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.placement-panel__hand-block{flex-direction:column;gap:4px;min-width:0;display:flex}.placement-panel__hand-heading{align-items:baseline;gap:10px;display:flex}.placement-panel__hint{color:var(--text-42);white-space:nowrap;text-overflow:ellipsis;font-size:.74em;overflow:hidden}.placement-panel__hand{flex-wrap:nowrap;justify-content:flex-start;align-items:flex-end;gap:10px;padding:4px 0;display:flex}.placement-panel__hand .card-view{flex:0 auto;width:clamp(48px,16vw,96px)}.placement-panel__hand .card-view:first-child{transform:rotate(-4deg)translateY(5px)}.placement-panel__hand .card-view:nth-child(2){transform:rotate(-2deg)translateY(1px)}.placement-panel__hand .card-view:nth-child(4){transform:rotate(2deg)translateY(1px)}.placement-panel__hand .card-view:nth-child(5){transform:rotate(4deg)translateY(5px)}.placement-panel__hand .card-view:hover,.placement-panel__hand .card-view--selected{z-index:1;transform:translateY(-8px)}.placement-panel__hand-empty{color:var(--text-38);align-self:center;padding:20px 0;font-size:.9em}.placement-panel__controls{flex:none;align-items:center;gap:22px;padding-bottom:4px;display:flex}.placement-panel__cost{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.placement-panel__cost-label{letter-spacing:.2em;color:var(--text-38);font-size:.64em}.placement-panel__cost-value{font-family:var(--font-number);color:var(--lit);font-size:1.9rem;font-weight:600;line-height:1}.placement-panel__cost-value--over{color:#e5484d}.placement-panel__cost-max{color:var(--text-42);font-size:.55em;font-weight:300}.placement-panel__status{font-family:var(--font-number);color:var(--text-55);letter-spacing:.02em;font-size:.78em}.placement-panel__divider{background:var(--line);width:1px;height:34px}.placement-panel__support{color:var(--text);white-space:nowrap;align-items:center;gap:8px;font-size:.82em;display:flex}.placement-panel__support input[type=checkbox]{accent-color:#f2c53d}.battle-screen__advance{flex:none;justify-content:center;display:flex}.game-end-panel{border-top:1px solid var(--line);text-align:center;flex-direction:column;flex:none;align-items:center;gap:8px;padding:14px 20px;display:flex}.game-end-panel p{color:var(--text-55);margin:0}.game-end-panel__result{font-family:var(--font-heading);letter-spacing:.02em;color:var(--lit);margin:0;font-size:2.1em;font-weight:700;line-height:1.2}.event-log{border-top:1px solid var(--line);flex:none}.event-log--open{max-height:160px;padding-bottom:8px;overflow-y:auto}.event-log__toggle{width:100%;font-family:var(--font-body);letter-spacing:.1em;color:var(--text-38);cursor:pointer;box-sizing:border-box;background:0 0;border:none;justify-content:space-between;align-items:center;gap:8px;padding:6px 4px;font-size:.72rem;font-weight:500;display:flex}.event-log__toggle-icon{font-size:.8em}.event-log ul{color:var(--text-42);flex-direction:column;gap:3px;margin:0;padding:0 4px;font-size:.78em;list-style:none;display:flex}.event-log li{border-left:1px solid var(--line);padding-left:8px}@media (width<=720px){.battle-screen__header{grid-template-columns:1fr;justify-items:center;gap:8px}.battle-screen__brand,.battle-screen__meta,.scoreboard{justify-self:center}.board{grid-template-columns:minmax(64px,90px) 1fr minmax(64px,90px);gap:8px;padding:12px 4px}.card-view{font-size:10.5px}}@media (height<=680px){.board{gap:4px 16px;padding:8px 6px}.side-stack{gap:4px}.side-stack__item{gap:1px}.deck-stack__pile .card-view,.pile-stack .card-view--back{width:clamp(30px,5vw,40px)}.pile-stack .card-view:not(.card-view--back){width:clamp(36px,5.5vw,54px)}.card-view--compact{width:clamp(48px,7.5vw,72px)}.card-view--compact .card-view__banner{font-size:.56em}.field-slot__empty{width:clamp(50px,9vw,76px)}}.deck-builder-screen{box-sizing:border-box;text-align:left;width:100%;max-width:1200px;margin:0 auto;padding:20px 20px 40px}.deck-builder__header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;display:flex}.deck-builder__body{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:24px;display:grid}.deck-builder__pool{--cl-bg:var(--stage);--cl-card:var(--button-bg);--cl-panel:var(--button-hover);--cl-line:var(--line);--cl-text:var(--ink);--cl-text-muted:var(--text-55);--cl-font-dot:var(--font-number);background:var(--cl-bg);border-radius:3px;padding:16px}.deck-builder__owned-limit-toggle{color:var(--cl-text-muted);align-items:center;gap:6px;margin:8px 0 14px;font-size:.82rem;display:flex}.deck-builder__card-footer{flex-direction:column;align-items:stretch;gap:6px;width:100%;display:flex}.deck-builder__unavailable-note{color:var(--cl-text-muted);font-size:.7rem}.card-list__card--disabled{opacity:.45}.card-list__card--clickable{cursor:pointer}.deck-builder__card-controls{align-items:center;gap:6px;display:flex}.deck-builder__card-count{font-family:var(--font-number);letter-spacing:.04em;color:var(--text-55);font-size:.85rem}.deck-builder__step-button{font-family:var(--font-number);border:1px solid var(--line);width:20px;height:20px;color:var(--text);cursor:pointer;background:0 0;border-radius:3px;flex:none;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;line-height:1;display:inline-flex}.deck-builder__step-button:hover:not(:disabled){border-color:var(--text-55)}.deck-builder__step-button:disabled{opacity:.35;cursor:not-allowed}.deck-builder__oshi-button{font-family:var(--font-body);border:1px solid var(--line);color:var(--text-55);cursor:pointer;background:0 0;border-radius:3px;padding:4px 10px;font-size:.72rem;font-weight:500}.deck-builder__oshi-button--selected{border-color:var(--ink);background:var(--button-selected);color:var(--ink)}.deck-builder__sidebar{flex-direction:column;gap:20px;display:flex;position:sticky;top:20px}.deck-builder__panel{background:var(--button-bg);border:1px solid var(--line);border-radius:3px;padding:16px}.deck-builder__editing-note{color:#6b5410;background:#fbf0d2;border:1px solid #d9b84a;border-radius:3px;margin-bottom:14px;padding:6px 10px;font-size:.78rem;line-height:1.5}.deck-builder__count{font-family:var(--font-number);letter-spacing:.04em;color:var(--text-55);margin-bottom:8px;font-size:1.1rem}.deck-builder__count--ok{color:var(--lit)}.deck-builder__oshi-summary{color:var(--text);margin-bottom:14px;font-size:.9rem}.deck-builder__subheading{font-family:var(--font-heading);color:var(--text-55);margin:0 0 8px;font-size:.86rem;font-weight:600}.deck-builder__cost-summary{color:var(--text-42);margin-bottom:8px;font-size:.78rem}.deck-builder__adopted-list{flex-direction:column;gap:4px;max-height:220px;margin:0 0 16px;padding:0;list-style:none;display:flex;overflow-y:auto}.deck-builder__adopted-item{color:var(--text);align-items:center;gap:6px;padding:3px 0;font-size:.82rem;display:flex}.deck-builder__adopted-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.deck-builder__adopted-exp{color:var(--text-42);font-size:.86em}.deck-builder__adopted-count{font-family:var(--font-number);color:var(--text-55);flex:none}.deck-builder__support-choices{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.deck-builder__support-choice{color:var(--text);cursor:pointer;align-items:center;gap:8px;font-size:.85rem;display:flex}.deck-builder__name-input{box-sizing:border-box;border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);font-family:var(--font-body);border-radius:3px;margin-bottom:16px;padding:8px 10px;font-size:.9rem}.deck-builder__guide{color:var(--text-55);margin:0 0 14px;padding-left:18px;font-size:.8rem;line-height:1.5}.deck-builder__errors{color:#e5484d;margin:0 0 14px;padding-left:18px;font-size:.8rem;line-height:1.5}.deck-builder__actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.deck-builder__save-button:disabled{opacity:.5}.deck-builder__save-button--ready{border:1px solid var(--ink);background:var(--button-selected)}.deck-builder__save-toast{color:var(--lit);font-size:.82rem;font-weight:600;animation:2.2s forwards deck-builder-save-toast-fade}@keyframes deck-builder-save-toast-fade{0%{opacity:0;transform:translateY(2px)}10%{opacity:1;transform:translateY(0)}80%{opacity:1}to{opacity:0}}.deck-builder__empty{color:var(--text-42);font-size:.85rem}.deck-builder__saved-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.deck-builder__saved-item{border:1px solid var(--line);border-radius:3px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.deck-builder__saved-name{color:var(--text);font-size:.88rem}.deck-builder__saved-actions{gap:6px;display:flex}.deck-builder__saved-actions .secondary-button{padding:4px 12px;font-size:.78rem}@media (width<=900px){.deck-builder__body{grid-template-columns:minmax(0,1fr)}.deck-builder__sidebar{position:static}}.card-list-screen{box-sizing:border-box;text-align:left;background:var(--cl-bg);width:100%;max-width:1200px;color:var(--cl-text);--cl-bg:var(--stage);--cl-card:var(--button-bg);--cl-panel:var(--button-hover);--cl-line:var(--line);--cl-text:var(--ink);--cl-text-muted:var(--text-55);--cl-font-dot:var(--font-number);margin:0 auto;padding:20px 20px 40px}.card-list__header{border-bottom:1px solid var(--cl-line);justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;display:flex}.card-list__filters{flex-direction:column;gap:10px;margin-bottom:12px;display:flex}.card-list__filter-row{flex-wrap:wrap;align-items:flex-end;gap:16px;display:flex}.card-list__filter-group{flex-direction:column;gap:4px;display:flex}.card-list__filter-label{color:var(--cl-text-muted);letter-spacing:.03em;font-size:.68rem}.card-list__sort-group{flex-direction:row;align-items:center;gap:8px}.card-list__sort-group .card-list__filter-label{margin-right:2px}.card-list__select{border:1px solid var(--cl-line);background:var(--cl-panel);color:var(--cl-text);font-family:var(--font-body);border-radius:3px;padding:8px 10px;font-size:.9rem}.card-list__sort-dir-button{font-family:var(--font-body);border:1px solid var(--cl-line);color:var(--cl-text);cursor:pointer;white-space:nowrap;background:0 0;border-radius:3px;padding:7px 12px;font-size:.82rem}.card-list__sort-dir-button:hover{border-color:var(--cl-text-muted)}.card-list__name-filter{border:1px solid var(--cl-line);background:var(--cl-panel);color:var(--cl-text);font-family:var(--font-body);box-sizing:border-box;border-radius:3px;min-width:220px;padding:8px 10px;font-size:.9rem}.card-list__name-filter::placeholder{color:var(--cl-text-muted)}.card-list__cost-filters,.card-list__color-filters,.card-list__position-filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.card-list__cost-button{font-family:var(--font-body);border:1px solid var(--cl-line);color:var(--cl-text);cursor:pointer;background:0 0;border-radius:3px;padding:6px 14px;font-size:.85rem}.card-list__cost-button--selected{border-color:var(--ink);background:var(--button-selected);color:var(--ink)}.card-list__color-button{align-items:center;gap:6px;padding-left:10px;display:inline-flex}.card-list__color-button.card-list__cost-button--selected{border-color:var(--chip-color)}.card-list__cost-badge{width:30px;height:30px;font-family:var(--cl-font-dot), monospace;background:var(--button-bg);border:1px solid var(--ink);color:var(--ink);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;line-height:1;display:inline-flex}.card-list__cost-badge--button{cursor:pointer;padding:0}.card-list__cost-badge--button:hover{background:var(--button-hover)}.card-list__cost-badge--selected{background:var(--button-selected)}.card-list__count{color:var(--cl-text-muted);margin:0 0 16px;font-size:.82rem}.card-list__owned-summary{margin-left:8px}.card-list__export{background:var(--cl-panel);border:1px solid var(--cl-line);border-radius:3px;flex-direction:column;gap:8px;margin:0 0 16px;padding:12px;display:flex}.card-list__export-description{color:var(--cl-text-muted);margin:0;font-size:.78rem}.card-list__export-option{color:var(--cl-text);cursor:pointer;align-items:center;gap:6px;font-size:.82rem;display:inline-flex}.card-list__export-unknown{color:#6b5410;background:#fbf0d2;border:1px solid #d9b84a;border-radius:3px;margin:0;padding:8px 10px;font-size:.78rem;line-height:1.5}.card-list__export-text{resize:vertical;border:1px solid var(--cl-line);background:var(--cl-bg);width:100%;color:var(--cl-text);font-family:var(--cl-font-dot), monospace;border-radius:3px;padding:8px;font-size:.78rem;line-height:1.5}.card-list__export-actions{gap:8px;display:flex}.card-list__actions{flex-direction:column;gap:8px;display:flex}.card-list__reset-button{color:#a12020;border-color:#a12020}.card-list__reset-button:disabled{color:var(--cl-text-muted);border-color:var(--cl-line);cursor:not-allowed}.card-list__warnings{color:#6b5410;background:#fbf0d2;border:1px solid #d9b84a;border-radius:3px;margin:0 0 12px;padding:8px 10px;font-size:.78rem;line-height:1.5;list-style:none}.card-list__empty{color:var(--cl-text-muted);flex-direction:column;align-items:flex-start;gap:10px;font-size:.9rem;display:flex}.card-list__variants{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.card-list__support-section{border-top:1px solid var(--cl-line);margin-top:24px;padding-top:16px}.card-list__support-heading{font-family:var(--font-heading);color:var(--cl-text);margin:0 0 12px;font-size:1rem;font-weight:600}.card-list__card--support{min-height:0}.card-list__variants>li{display:flex}.card-list__card{border:1px solid var(--cl-line);background:var(--cl-card);width:100%;color:var(--cl-text);border-radius:3px;flex-direction:column;display:flex;overflow:hidden}@media (prefers-reduced-motion:no-preference){.card-list__card{transition:transform .15s,box-shadow .15s,border-color .15s}}.card-list__card:hover,.card-list__card:focus-within{border-color:var(--card-accent,var(--cl-text-muted));transform:translateY(-2px)}.card-list__card-header{background:linear-gradient(90deg, color-mix(in srgb, var(--card-accent,var(--cl-panel)) var(--band-mix), var(--band-base)) 0 50%, color-mix(in srgb, var(--card-accent2,var(--card-accent,var(--cl-panel))) var(--band-mix), var(--band-base)) 50% 100%);color:var(--cl-text);border-bottom:1px solid var(--cl-text);align-items:center;gap:8px;padding:8px 10px;display:flex}.card-list__card-name{min-width:0;font-family:var(--font-heading);color:inherit;text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:.88rem;font-weight:600;overflow:hidden}.card-list__card-no{font-family:var(--cl-font-dot), monospace;color:inherit;opacity:.75;white-space:nowrap;flex:none;font-size:.68rem}.card-list__header-colors{color:inherit;opacity:.85;white-space:nowrap;flex:none;align-items:center;gap:8px;font-size:.7rem;display:inline-flex}.card-list__color-item{align-items:center;gap:4px;display:inline-flex}.card-list__color-chip{background:var(--chip-color,var(--cl-text-muted));border-radius:50%;flex-shrink:0;width:10px;height:10px}.card-list__color-chip--outlined{border:1px solid #14161d80}.card-list__stats{gap:6px;padding:10px;display:flex}.card-list__stat{background:var(--cl-panel);border-radius:3px;flex-direction:column;flex:1;align-items:center;gap:2px;padding:6px 0;display:flex}.card-list__stat-label{color:var(--cl-text-muted);font-size:.62rem}.card-list__stat-value{font-family:var(--cl-font-dot), monospace;color:var(--cl-text);font-size:1.15rem}.card-list__effect{color:var(--cl-text);box-sizing:border-box;flex:auto;min-height:calc(2.24rem + 8px);padding:0 10px 8px;font-size:.8rem;line-height:1.4}.card-list__effect--unknown{color:var(--cl-text-muted)}.card-list__effect-note{color:var(--cl-text-muted);margin:-4px 10px 8px;font-size:.68rem}.card-list__oshi{background:var(--cl-panel);border-radius:3px;align-items:baseline;gap:8px;margin:0 10px 10px;padding:6px 8px;display:flex}.card-list__oshi-label{letter-spacing:.04em;color:#f1f2f4;background:#0b0c10;border-radius:2px;flex-shrink:0;padding:1px 6px;font-size:.66rem;font-weight:700}.card-list__oshi-body{color:var(--cl-text-muted);font-size:.78rem}.card-list__footer{border-top:1px solid var(--cl-line);flex-wrap:wrap;align-items:center;gap:6px;margin-top:auto;padding:8px 10px;display:flex}.card-list__owned{border:1px solid var(--cl-line);background:var(--cl-panel);border-radius:3px;align-items:center;gap:6px;margin-left:auto;padding:2px 4px;display:inline-flex}.card-list__owned--held{background:#dcefdc;border-color:#7fb87f}.card-list__owned-button{border:1px solid var(--cl-line);width:20px;height:20px;color:var(--cl-text);cursor:pointer;background:0 0;border-radius:3px;justify-content:center;align-items:center;padding:0;font-size:.8rem;line-height:1;display:inline-flex}.card-list__owned-button:disabled{opacity:.35;cursor:not-allowed}.card-list__owned-count{text-align:center;min-width:1.2em;font-family:var(--cl-font-dot), monospace;color:var(--cl-text-muted);font-size:.85rem}.card-list__owned--held .card-list__owned-count{color:#205020;font-weight:700}.card-list__badge{letter-spacing:.02em;white-space:nowrap;border:1px solid #0000;border-radius:3px;padding:2px 7px;font-size:.62rem}.card-list__badge--effect-未確認{background:var(--button-hover);border-color:var(--line);color:var(--ink-soft)}.card-list__badge--effect-下書き,.card-list__badge--meta-stats下書き{color:#6b5410;background:#fbf0d2;border-color:#d9b84a}.card-list__badge--effect-検証済,.card-list__badge--meta-stats確定{color:#205020;background:#dcefdc;border-color:#7fb87f}.card-list__badge--archetype{border-color:var(--line);color:var(--ink-soft);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.card-list__report{align-items:center;gap:6px;display:inline-flex}.card-list__report-button{border:1px solid var(--cl-line);background:var(--cl-panel);color:var(--cl-text);cursor:pointer;white-space:nowrap;border-radius:3px;padding:2px 7px;font-size:.62rem;line-height:normal;text-decoration:none}.card-list__report-button:hover{background:var(--cl-line)}.card-list__report-status{color:var(--cl-text-muted);font-size:.62rem}@media (width<=480px){.card-list__variants{grid-template-columns:minmax(0,1fr)}.card-list__filter-row{flex-direction:column;align-items:stretch;gap:10px}.card-list__name-filter,.card-list__select{width:100%;min-width:0}.card-list__sort-group{flex-wrap:wrap}}.site-footer{box-sizing:border-box;border-top:1px solid var(--line);width:100%;max-width:1200px;color:var(--text-55);flex-wrap:wrap;align-items:center;gap:12px;margin:0 auto;padding:20px;font-size:.8rem;display:flex}.site-footer__notice{flex:auto;min-width:240px;margin:0}.site-footer__detail-button{flex:none;padding:6px 16px;font-size:.8rem}.site-footer__dialog{border:1px solid var(--ink);background:var(--button-bg);width:calc(100% - 40px);max-width:560px;color:var(--text);border-radius:3px;margin:auto;padding:0}.site-footer__dialog::backdrop{background:#22222259}.site-footer__dialog-body{max-height:80svh;padding:20px 24px 24px;overflow-y:auto}.site-footer__dialog-body h3{font-family:var(--font-heading);margin:20px 0 6px;font-size:.95rem}.site-footer__dialog-body p{margin:0 0 4px;font-size:.88rem;line-height:1.7}.site-footer__dialog-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.site-footer__dialog-title{font-family:var(--font-heading);margin:0;font-size:1.05rem}.site-footer__dialog-close{flex:none;padding:4px 14px;font-size:.8rem}
