:root{color-scheme:dark;font-family:Inter,system-ui,sans-serif;--color-bg-base: #111827;--color-bg-raised: #1f2937;--color-bg-sunken: #0f172a;--color-bg-overlay: rgba(15, 23, 42, .72);--color-border: #374151;--color-border-subtle: rgba(148, 163, 184, .18);--color-border-strong: #4b5563;--color-text-primary: #f3f4f6;--color-text-secondary: #d1d5db;--color-text-muted: #9ca3af;--color-text-faint: #94a3b8;--color-text-bright: #f8fafc;--color-accent: #3b82f6;--color-accent-light: #60a5fa;--color-accent-lighter: #93c5fd;--color-accent-soft: #bfdbfe;--color-accent-pale: #dbeafe;--color-accent-wash: #e0f2fe;--color-accent-dark: #1d4ed8;--color-accent-darker: #1e40af;--color-accent-deepest: #1e3a8a;--gradient-accent: linear-gradient(180deg, var(--color-accent-dark) 0%, var(--color-accent-darker) 100%);--gradient-accent-hover: linear-gradient(180deg, #2563eb 0%, var(--color-accent-dark) 100%);--color-success: #22c55e;--color-success-light: #86efac;--color-success-pale: #dcfce7;--color-success-dark: #14532d;--color-success-darker: #166534;--color-warning: #f59e0b;--color-warning-light: #fcd34d;--color-warning-pale: #fef3c7;--color-warning-dark: #92400e;--color-warning-darker: #b45309;--color-danger: #dc2626;--color-danger-light: #f87171;--color-danger-pale: #fecaca;--color-danger-dark: #7f1d1d;--color-danger-darker: #b91c1c;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--shadow-card: 0 22px 44px rgba(0, 0, 0, .4);--shadow-card-inset: inset 0 1px 0 rgba(255, 255, 255, .06);--shadow-button: 0 8px 18px rgba(29, 78, 216, .32);background:var(--color-bg-base);color:var(--color-text-primary)}*{box-sizing:border-box}body{margin:0}.app{padding:16px;display:grid;gap:16px}.layout-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.panel{background:radial-gradient(ellipse at 10% 15%,rgba(59,130,246,.08),transparent 50%),linear-gradient(135deg,#1e293b 0%,var(--color-bg-base) 100%);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);padding:12px;box-shadow:var(--shadow-card-inset)}.button-row{display:flex;gap:8px;flex-wrap:wrap}button{cursor:pointer;border:1px solid rgba(148,163,184,.35);background:linear-gradient(180deg,#334155,#283548);color:var(--color-text-primary);padding:8px 14px;border-radius:var(--radius-md);font-family:inherit;font-size:13px;font-weight:500;transition:background .14s ease,border-color .14s ease,transform .1s ease,box-shadow .14s ease;box-shadow:0 1px 3px #0000004d}button:hover:not(:disabled){background:linear-gradient(180deg,#3e4f63,#334155);border-color:#94a3b88c;box-shadow:0 3px 8px #00000059}button:active:not(:disabled){background:linear-gradient(180deg,#283548,#1e293b);transform:translateY(1px);box-shadow:none}button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}a{color:var(--color-accent-lighter)}label{display:grid;gap:6px;margin-bottom:8px}input,select{border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-md);padding:6px 10px;background:#0f172ab3;color:var(--color-text-primary);font-family:inherit;transition:border-color .14s ease,box-shadow .14s ease}input:focus,select:focus{border-color:var(--color-accent-light);box-shadow:0 0 0 3px #60a5fa26;outline:none}.status-legal{background:var(--color-success-dark);border-color:var(--color-success);color:var(--color-success-pale)}.status-not-legal{background:var(--color-danger-dark);border-color:#ef4444;color:#fee2e2}.card-db-gate-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;min-height:0;color:var(--color-text-faint);font-size:14px}.card-db-gate-loading p{margin:0}.hidden-file-input{display:none}.error{border-color:var(--color-danger)}.ok{color:var(--color-success)}.replay-progress{align-self:center;font-size:14px;color:#fffc}.selected-card-block{display:grid;gap:8px;flex:1;height:100%;overflow-y:auto;align-content:start;padding-right:6px;min-height:0}.selected-card-frame{width:min(100%,220px);aspect-ratio:3 / 4;border:none;border-radius:0;overflow:hidden;line-height:0;isolation:isolate;justify-self:center}.selected-card-art-container{position:relative;width:100%;height:100%;box-sizing:border-box;padding-bottom:8px}.selected-card-art-badge{position:absolute;bottom:6px;right:6px;padding:4px;font-size:10px;font-weight:600;line-height:1.2;color:#fff;background:#0000008c;border-radius:3px;pointer-events:none}.selected-card-image-wrap{display:block;width:100%;height:100%;padding:0;border:none;background:none;cursor:pointer}.selected-card-image{width:100%;height:100%;display:block;object-fit:contain;object-position:center}.selected-card-text{color:#d8e4ff;line-height:1.5;font-size:13px;margin:0}.card-image-placeholder{display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#314b6f,#243955);border:1px dashed #8fa9cf;border-radius:4px;color:#eaf1ff;font-weight:800;font-size:24px;width:100%;height:100%;line-height:1}.selected-card-image.card-image-placeholder{border:none;border-radius:0}.info-badges{display:flex;flex-wrap:wrap;gap:6px}.info-setcode-row{display:flex}.info-badge{display:inline-flex;align-items:center;font-size:11px;font-weight:600;line-height:1;border-radius:999px;border:1px solid #7f99bf;padding:2px 8px;text-transform:uppercase;letter-spacing:.01em;white-space:nowrap}.info-badge-set{background:#253955;color:#d4e4ff}.info-badge-type{background:#314b6f;color:#e7f0ff}.info-badge-limited{background:#7c2d12;border-color:#fb923c;color:#ffedd5}.info-badge-restricted{background:#854d0e;border-color:#facc15;color:#fef9c3}.info-badge-color.color-white{background:var(--color-text-primary);color:var(--color-bg-base);border-color:#e5e7eb}.info-badge-color.color-green{background:var(--color-success-dark);color:var(--color-success-pale);border-color:var(--color-success)}.info-badge-color.color-red{background:var(--color-danger-dark);color:#fee2e2;border-color:#ef4444}.info-badge-color.color-blue{background:var(--color-accent-deepest);color:var(--color-accent-pale);border-color:var(--color-accent-light)}.info-badge-color.color-purple{background:#581c87;color:#f3e8ff;border-color:#c084fc}.info-badge-color.color-yellow{background:#713f12;color:#fef9c3;border-color:#facc15}.info-badge-color.color-other{background:var(--color-bg-raised);color:#e5e7eb;border-color:var(--color-text-muted)}.card-number-text{font-size:12px;color:#c8d7ee;margin:0}.stat-line{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin:0;padding:4px 8px;border:1px solid #4f678d;border-radius:var(--radius-sm);background:#12213859}.stat-line span{color:#bed0ef;font-weight:600;font-size:12px}.stat-line strong{color:#f8fbff;font-size:14px}.tag-badges{display:flex;flex-wrap:wrap;gap:6px}.tag-row{display:grid;gap:4px}.tags-label{margin:0;color:#cfe0ff;font-weight:700;font-size:13px}.tag-badge{background:var(--color-text-bright);color:#0f172a;border:1px solid #e2e8f0;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}.arts-block{display:grid;gap:6px;margin-top:2px}.arts-title{margin:0;font-weight:700;color:#cfe0ff;font-size:13px}.art-row{border:1px solid #4f678d;border-radius:var(--radius-sm);padding:10px;background:#12213873;display:grid;gap:8px}.art-row p{margin:0;font-size:13px;color:#e6efff}.art-name-line{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.art-name-line strong{font-size:14px}.art-damage{font-size:14px;font-weight:700}.art-cost-row{display:flex;align-items:center;gap:6px;font-size:13px;color:#e6efff}.art-label{min-width:56px;font-weight:700;color:#cfe0ff}.art-empty{color:#9fb5d8}.art-cost-icons{display:flex;flex-wrap:wrap;gap:6px}.art-cost-icon-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:999px;border:1px solid #7590b6;background:#14243cb3}.art-cost-icon{width:16px;height:16px}.art-cost-icon-chip small{font-size:12px;color:#dce8ff;font-weight:700}.art-fallback-text{margin:0;color:#d5e4ff;font-size:13px}.description-section{display:grid;gap:6px;padding-top:4px}.section-title{margin:0;color:#cfe0ff;font-weight:700;font-size:13px}.effect-list{display:grid;gap:8px}.effect-row{border:1px solid #4f678d;border-radius:var(--radius-sm);padding:8px;background:#12213873;display:grid;gap:6px}.effect-row p{margin:0;font-size:13px;color:#e5efff;line-height:1.4}.effect-row-title{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.effect-row-title strong{font-size:14px}.baton-pass-line{width:100%}.baton-pass-cost-chip{margin-left:auto}.effect-type-chip{font-size:10px;font-weight:700;border:1px solid #8aa8d6;border-radius:999px;background:#2d466ccc;color:#dbe9ff;padding:1px 7px}.effect-type-chip-bloom{background:var(--color-accent-dark);border-color:var(--color-accent-light);color:var(--color-accent-pale)}.effect-type-chip-collab{background:var(--color-danger-darker);border-color:var(--color-danger-light);color:#fee2e2}.effect-type-chip-gift{background:var(--color-success-darker);border-color:#4ade80;color:var(--color-success-pale)}.effect-type-chip-oshi{background:#be185d;border-color:#f472b6;color:#fce7f3}.effect-type-chip-sp-oshi{background:#6d28d9;border-color:#c084fc;color:#f3e8ff}.effect-type-chip-stage-oshi{background:#c2410c;border-color:#fb923c;color:#ffedd5}.deck-builder{display:block;--deck-builder-card-width: 112px;--deck-builder-oshi-card-width: 112px;--deck-main-zone-height: 550px}.deck-builder-layout{display:grid;gap:12px;grid-template-columns:280px minmax(0,1.4fr) minmax(280px,.75fr);min-height:calc(100vh - 32px);overflow-y:auto}.deck-left-pane,.deck-center-pane,.deck-right-pane,.board-right-pane{background:radial-gradient(ellipse at 15% 10%,rgba(59,130,246,.08),transparent 50%),linear-gradient(180deg,#1a2744,#1e2d4a);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);padding:10px;box-shadow:var(--shadow-card-inset)}.deck-left-pane{display:flex;flex-direction:column;min-height:0}.deck-left-pane .board-card-info{flex:1;min-height:0}.deck-left-pane .board-card-info-content{overflow-y:visible}.deck-left-pane .game-board-actions{flex-shrink:0}.board-left-panel-actions-wrap{padding-top:14px;flex-shrink:0}.board-right-pane{display:flex;flex-direction:column;min-height:0}.board-right-pane .gameplay-log-panel{flex:1;min-height:0;max-height:none;background:transparent;border:none;border-radius:0;box-shadow:none}.board-right-panel-actions-wrap{padding-top:14px;flex-shrink:0}.deck-right-pane{display:flex;flex-direction:column;min-height:0}.deck-center-pane{display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:10px;align-content:stretch;min-height:0}.deck-left-pane h2,.deck-center-pane h2,.deck-right-pane h2{margin-top:0}.card-type-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-bottom:8px}.card-type-tabs button,.life-filters button{height:32px;padding:0 10px;font-size:13px;line-height:1}.card-type-tabs button.active,.life-filters button.active{background:var(--gradient-accent);border-color:var(--color-accent);color:var(--color-accent-wash);font-weight:700;box-shadow:var(--shadow-button)}.card-type-tabs button.active:hover,.life-filters button.active:hover{background:var(--gradient-accent-hover);border-color:var(--color-accent-light)}.deck-zone{background:#0f172a73;border:1px solid rgba(148,163,184,.15);border-radius:var(--radius-lg)}.deck-row-secondary{display:grid;grid-template-columns:calc(var(--deck-builder-oshi-card-width) + 24px) minmax(0,1fr);gap:10px;margin-top:10px;height:auto;align-items:stretch}.deck-row-secondary .deck-zone{height:100%}.deck-zone-oshi{padding:8px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:6px;min-height:154px}.deck-zone-oshi .deck-zone-header{width:100%;margin-bottom:0}.deck-zone-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;gap:8px}.deck-zone-header h3{margin:0;font-size:14px;font-weight:700;color:var(--color-accent-wash)}.deck-zone-header strong{font-size:13px;color:#102441;background:var(--color-accent-pale);border:1px solid var(--color-accent-soft);border-radius:999px;padding:2px 8px;line-height:1.1}.deck-zone-main{position:relative;display:flex;flex-direction:column;height:var(--deck-main-zone-height);min-height:var(--deck-main-zone-height);max-height:var(--deck-main-zone-height);flex-shrink:0;box-sizing:border-box}.card-tile-grid{display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(var(--deck-builder-card-width),1fr));max-height:230px;overflow:auto;padding-right:4px;align-content:start;grid-auto-rows:max-content}.card-tile-grid-horizontal{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(var(--deck-builder-card-width),var(--deck-builder-card-width));grid-template-columns:none;gap:8px;max-height:none;flex:none;height:auto;overflow-x:auto;overflow-y:hidden;align-content:start;justify-content:start;padding-bottom:2px}.card-tile-grid-main{flex:1;min-height:0;max-height:none;overflow-y:auto}.card-tile{display:grid;grid-template-rows:auto;gap:0;text-align:left;position:relative;padding:4px;background:#0f172a8c;border:1px solid rgba(148,163,184,.12);border-radius:var(--radius-md);overflow:hidden;isolation:isolate;align-self:start;transition:border-color .14s ease,box-shadow .14s ease}.card-tile:hover{border-color:#60a5fa59}.card-tile-art-frame{position:relative;overflow:hidden;border-radius:4px;line-height:0;isolation:isolate;background:#1b2b43;aspect-ratio:3 / 4;width:100%}.card-tile-oshi{max-width:var(--deck-builder-oshi-card-width)}.card-tile-oshi-slot{margin:0 auto;align-self:center}.oshi-empty-slot{width:var(--deck-builder-oshi-card-width);aspect-ratio:3 / 4;margin:0 auto;border:1px dashed #9fb8dc;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:#d5e3fb;font-weight:700}.deck-zone-cheer{position:relative;display:flex;flex-direction:column;padding:8px;gap:6px;min-height:154px}.deck-zone-cheer .deck-zone-header{margin-bottom:0}.card-tile-art-frame :is(img,.card-image-placeholder){width:100%;height:100%;aspect-ratio:3 / 4;display:block;object-fit:contain;object-position:center;border-radius:4px}.card-tile-art-frame .card-image-placeholder{display:grid;place-items:center}.card-tile-count{position:absolute;top:4px;right:6px;background:#0f172ae6;color:#e2e8f0;border:1px solid var(--color-accent-lighter);border-radius:999px;padding:2px 7px;font-size:10px;font-weight:800;line-height:1;z-index:3}.deck-bottom-row{display:grid;grid-template-columns:minmax(300px,420px) minmax(300px,1fr);gap:10px;align-items:start}.deck-controls{background:#0f172a8c;border:1px solid rgba(148,163,184,.15);border-radius:var(--radius-lg);color:var(--color-text-primary);width:100%;margin-top:0;padding:12px}.deck-controls-valid{border-color:var(--color-success-darker)}.deck-controls-invalid{border-color:var(--color-danger-darker);box-shadow:inset 0 0 0 1px #dc262640}.deck-controls input,.deck-controls select{background:#0f172ab3;color:var(--color-text-primary);border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-md);transition:border-color .14s ease,box-shadow .14s ease}.deck-controls input:focus,.deck-controls select:focus{border-color:var(--color-accent-light);box-shadow:0 0 0 3px #60a5fa26;outline:none}.deck-controls button{font-size:12px}.deck-selected-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.deck-selected-row label{margin-bottom:0}.deck-selected-row select{min-height:36px}.button-row.deck-controls-actions{margin-top:12px;margin-bottom:8px;gap:12px 8px}.deck-controls-actions button{transition:transform .08s ease,filter .08s ease,box-shadow .08s ease}.deck-controls-actions button:active:not(:disabled){transform:translateY(1px);filter:brightness(.9);box-shadow:inset 0 2px 4px #02061773}.deck-import-input{display:none}.deck-controls label{color:#e5e7eb;font-size:13px;font-weight:600}.deck-controls>p.ok,.deck-controls>p.error{margin:0 0 3px;font-size:11px;line-height:1.1;font-weight:600}.deck-controls>p.error{color:var(--color-danger-pale);border:1px solid var(--color-danger);background:#7f1d1d73;border-radius:var(--radius-sm);padding:3px 6px}.deck-controls>p.error:before{content:"Invalid deck: ";color:#fee2e2;font-weight:700}.deck-controls>p.error.deck-controls-load-error:before{content:none}.deck-controls>p.deck-controls-validation-ok{margin:0 0 3px;font-size:11px;line-height:1.1;font-weight:600;color:var(--color-success-pale);border:1px solid var(--color-success);background:#16653473;border-radius:var(--radius-sm);padding:3px 6px}.validation-list{display:grid;gap:1px;font-size:10px;line-height:1.12;margin:0}.validation-list p{margin:0}.deck-controls-invalid .validation-list{border-left:2px solid #ef4444;background:#7f1d1d38;border-radius:4px;padding:4px 6px}.deck-controls-invalid .validation-list p{color:#fee2e2}.deck-modal-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:200;padding:16px}.deck-confirm-modal{width:min(420px,100%);display:grid;gap:14px;padding:28px;border:1px solid rgba(220,38,38,.3);border-radius:var(--radius-xl);background:radial-gradient(ellipse at 30% 20%,rgba(220,38,38,.08),transparent 50%),linear-gradient(135deg,#1e293b 0%,var(--color-bg-base) 100%);box-shadow:var(--shadow-card)}.deck-confirm-modal h3{margin:0;font-size:20px;font-weight:700;color:var(--color-text-bright)}.deck-confirm-modal p{margin:0;color:var(--color-text-faint);line-height:1.5}.deck-url-modal{width:min(520px,100%);display:grid;gap:14px;padding:28px;border:1px solid rgba(67,56,202,.3);border-radius:var(--radius-xl);background:radial-gradient(ellipse at 30% 20%,rgba(59,130,246,.1),transparent 50%),linear-gradient(135deg,#1e293b 0%,var(--color-bg-base) 100%);box-shadow:var(--shadow-card)}.deck-url-modal h3{margin:0;font-size:20px;font-weight:700;color:var(--color-text-bright)}.deck-url-modal p{margin:0;color:var(--color-text-faint);line-height:1.5}.deck-url-input{width:100%}.deck-url-modal-help{font-size:12px;color:var(--color-text-secondary)}.card-filter-panel{background:#0f172a73;border:1px solid rgba(148,163,184,.12);border-radius:var(--radius-lg);padding:10px;--filter-control-height: 32px;--filter-control-padding-x: 8px}.card-filter-panel label{min-width:0;font-size:12px}.card-filter-panel input,.card-filter-panel select,.card-filter-panel button{width:100%;min-width:0;height:var(--filter-control-height);min-height:var(--filter-control-height);padding:0 var(--filter-control-padding-x);font-size:13px;line-height:1}.filter-row-search{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:end}.filter-row-search label{margin-bottom:0}.filter-row-base{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:8px;align-items:end;margin-top:8px;margin-bottom:8px}.filter-row-base label{margin-bottom:0}.filter-row-base input,.filter-row-base select,.filter-tab-select select,.filter-tab-select input{min-height:var(--filter-control-height);height:var(--filter-control-height);padding:0 var(--filter-control-padding-x);font-size:13px}.filter-row-tab-specific{display:flex;align-items:end;justify-content:space-between;gap:8px;margin-bottom:8px}.filter-row-tab-specific-holomem-stat{justify-content:flex-start}.filter-tab-select{margin-bottom:0;width:170px}.filter-clear-control{display:flex;align-items:end;width:100%;min-width:0}.filter-clear-button{width:100%;height:var(--filter-control-height);min-height:var(--filter-control-height);padding:0 var(--filter-control-padding-x);font-size:12px;line-height:1}.toggle-label{display:flex;align-items:center;gap:8px}.toggle-label-inline{margin:0;align-self:end;height:36px;padding:0 10px;border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-md);background:#0f172ab3}.toggle-label-compact{height:30px;padding:0 8px;font-size:12px;white-space:nowrap}.toggle-label-inline input[type=checkbox]{width:12px;height:12px;margin:0;accent-color:#9dc8f0}.life-filters{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-bottom:8px}.pool-grid{display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(var(--deck-builder-card-width),1fr));grid-auto-rows:max-content;align-content:start;flex:1;min-height:0;max-height:none;overflow:auto}.card-tile-status-row{position:absolute;bottom:30px;right:6px;display:inline-flex;align-items:center;justify-content:flex-end;pointer-events:none;z-index:3}.card-tile-legal{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;min-width:26px;height:16px;font-size:10px;font-weight:700;line-height:1;border-radius:999px;padding:0 6px;border:1px solid transparent;white-space:nowrap}.card-tile-restricted{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;height:16px;font-size:10px;font-weight:700;line-height:1;border-radius:999px;padding:0 6px;border:1px solid #facc15;background:#854d0e;color:#fef9c3;white-space:nowrap;pointer-events:none;z-index:3}.card-tile-name-overlay{position:absolute;left:0;right:0;bottom:0;padding:3px 5px;background:#0f172ac7;color:#f8fbff;line-height:1.1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;pointer-events:none;min-height:0;max-height:none;z-index:2}.analytics-panel{min-height:0;background:#0f172a73;border:1px solid rgba(148,163,184,.15);border-radius:var(--radius-lg);color:var(--color-text-secondary);padding:10px}.analytics-section-title{margin:0 0 8px;font-size:14px;color:var(--color-accent-pale)}.analytics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.analytics-column{border:1px solid rgba(148,163,184,.15);border-radius:var(--radius-lg);padding:8px;background:#0f172a8c;min-width:0;display:flex;flex-direction:column}.analytics-column-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.analytics-column-header h4{margin:0;color:#d9e7ff;font-size:13px;letter-spacing:.03em}.analytics-total{display:inline-flex;align-items:center;justify-content:center;min-width:36px;padding:2px 8px;border-radius:999px;background:var(--color-accent-pale);color:#102441;border:1px solid var(--color-accent-soft);font-size:13px;font-weight:700}.analytics-list{display:grid;gap:6px;flex:1;align-content:start}.analytics-item{display:grid;gap:4px}.analytics-item-line{margin:0;display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:12px}.analytics-item-label{color:var(--color-accent-pale);font-weight:600}.analytics-item-value{color:#f8fbff;font-weight:700;white-space:nowrap}.analytics-item-value small{color:#9fb5d8;font-size:11px;font-weight:600}.analytics-bar-track{height:6px;border-radius:999px;background:#94a3b84d;overflow:hidden}.analytics-bar-fill{height:100%;min-width:0;border-radius:999px;transition:width .2s ease-out;background:var(--analytics-fill-color, #6b7280)}.analytics-bar-holomem{background:linear-gradient(90deg,#34d399,#14b8a6)}.analytics-bar-support{background:linear-gradient(90deg,#f59e0b,#fb7185)}.analytics-color-white{--analytics-fill-color: #f8fafc;color:#f8fafc}.analytics-color-green{--analytics-fill-color: #22c55e;color:#4ade80}.analytics-color-red{--analytics-fill-color: #ef4444;color:#f87171}.analytics-color-blue{--analytics-fill-color: #3b82f6;color:#60a5fa}.analytics-color-purple{--analytics-fill-color: #a855f7;color:#c084fc}.analytics-color-yellow{--analytics-fill-color: #eab308;color:#facc15}.analytics-empty{margin:0;color:#9fb5d8;font-size:12px}.analytics-column-footer{margin:8px 0 0;padding-top:8px;border-top:1px solid rgba(147,197,253,.35);color:var(--color-accent-pale);font-size:12px;font-weight:700}.card-grid{display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.card{display:grid;grid-template-columns:88px minmax(0,1fr);gap:8px;text-align:left;width:100%;align-items:start}.card :is(img,.card-image-placeholder){width:88px;height:124px;object-fit:cover;border-radius:4px}.card-meta{display:grid;gap:4px;min-width:0}.card-name{margin:0;line-height:1.1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;min-height:2.2em;max-height:2.2em}.card-name-regular{font-size:11px}.card-name-small{font-size:10px}.card-name-xsmall{font-size:9px}.card-name-title{font-size:14px;line-height:1.1;min-height:2.2em;max-height:2.2em}.main-menu-page{display:grid;grid-template-columns:2fr 3fr;gap:0;max-width:1080px;width:min(100%,1080px);margin:0 auto;border-radius:var(--radius-xl);overflow:hidden;background:radial-gradient(ellipse at 10% 20%,rgba(59,130,246,.18),transparent 50%),radial-gradient(ellipse at 90% 80%,rgba(14,165,233,.12),transparent 50%),linear-gradient(135deg,#1e293b 0%,var(--color-bg-base) 100%);border:1px solid var(--color-border-subtle);box-shadow:var(--shadow-card),var(--shadow-card-inset)}.main-menu-left{display:flex;flex-direction:column;justify-content:center;padding:48px 40px;border-right:1px solid rgba(148,163,184,.12)}.main-menu-title{margin:0;font-size:48px;font-weight:800;line-height:1;letter-spacing:-.01em;color:var(--color-text-bright);text-shadow:0 4px 20px rgba(59,130,246,.3)}.main-menu-subtitle{margin:16px 0 0;font-size:16px;line-height:1.55;color:var(--color-text-faint);max-width:28ch}.main-menu-nav{display:flex;flex-direction:column;gap:10px;padding:28px 32px;justify-content:center}.main-menu-card{display:flex;flex-direction:column;gap:6px;padding:18px 20px;border:1px solid rgba(148,163,184,.15);border-radius:var(--radius-lg);background:#0f172a8c;text-align:left;cursor:pointer;transition:background .14s ease,border-color .14s ease,transform .14s ease,box-shadow .14s ease}.main-menu-card:hover{background:#1e40af38;border-color:#60a5fa80;transform:translateY(-2px);box-shadow:0 8px 20px #1e40af40}.main-menu-card:active{transform:translateY(0);box-shadow:none}.main-menu-card-name{font-size:20px;font-weight:700;color:var(--color-accent-wash)}.main-menu-card-desc{font-size:14px;line-height:1.45;color:var(--color-text-faint)}.main-menu-card:hover .main-menu-card-desc{color:var(--color-text-secondary)}@media(max-width:720px){.main-menu-page{grid-template-columns:1fr}.main-menu-left{padding:32px 24px 20px;border-right:none;border-bottom:1px solid rgba(148,163,184,.12);text-align:center;align-items:center}.main-menu-title{font-size:38px}.main-menu-subtitle{max-width:none}.main-menu-nav{padding:20px 20px 24px}}.multiplayer-entry-panel,.multiplayer-lobby-panel,.multiplayer-rps-panel{border-radius:var(--radius-xl);overflow:hidden;background:radial-gradient(ellipse at 10% 20%,rgba(59,130,246,.14),transparent 50%),radial-gradient(ellipse at 90% 80%,rgba(14,165,233,.1),transparent 50%),linear-gradient(135deg,#1e293b 0%,var(--color-bg-base) 100%);border:1px solid var(--color-border-subtle);box-shadow:var(--shadow-card),var(--shadow-card-inset)}.multiplayer-panel-header{margin:0 0 20px;padding:0 0 16px;border-bottom:1px solid var(--color-border-subtle)}.multiplayer-you-are{margin:0;font-size:14px;font-weight:600;color:var(--color-accent-lighter)}.multiplayer-connection-status{margin:4px 0 0;font-size:12px;color:var(--color-text-muted)}.multiplayer-panel-footer{margin-top:24px;padding-top:16px;border-top:1px solid var(--color-border-subtle)}.multiplayer-panel-footer button{padding:10px 18px;font-size:14px;border-radius:var(--radius-md);transition:background .14s ease,border-color .14s ease}.multiplayer-entry-panel{max-width:900px;margin:0 auto;padding:32px 36px}.multiplayer-entry-header{margin:0 0 24px;padding-bottom:20px;border-bottom:1px solid var(--color-border-subtle)}.multiplayer-entry-title{margin:0;font-size:32px;font-weight:800;letter-spacing:-.01em;color:var(--color-text-bright);text-shadow:0 4px 20px rgba(59,130,246,.3)}.multiplayer-entry-subtitle{margin:10px 0 0;font-size:15px;color:var(--color-text-faint);line-height:1.5}.multiplayer-entry-sections{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;margin-top:0}@media(max-width:720px){.multiplayer-entry-sections{grid-template-columns:1fr}}.multiplayer-entry-section{padding:22px;background:#0f172a8c;border:1px solid rgba(148,163,184,.15);border-radius:var(--radius-lg);display:flex;flex-direction:column;align-items:stretch;transition:border-color .2s ease,box-shadow .2s ease}.multiplayer-entry-section:hover{border-color:#94a3b847}.multiplayer-entry-profile .multiplayer-join-input{text-transform:none;letter-spacing:normal}.multiplayer-entry-section-title{margin:0 0 8px;font-size:18px;font-weight:700;color:var(--color-accent-wash)}.multiplayer-entry-section-desc{margin:0 0 16px;font-size:13px;color:var(--color-text-faint);line-height:1.5}.multiplayer-entry-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:auto}.multiplayer-entry-create-btn,.multiplayer-entry-join-btn{padding:10px 20px;font-size:14px;font-weight:600;border-radius:var(--radius-md);transition:background .14s ease,border-color .14s ease,transform .14s ease,box-shadow .14s ease}.multiplayer-entry-create-btn,.multiplayer-entry-join-btn:not(:disabled){background:var(--gradient-accent);border-color:var(--color-accent);color:var(--color-accent-wash)}.multiplayer-entry-create-btn:hover,.multiplayer-entry-join-btn:hover:not(:disabled){background:var(--gradient-accent-hover);border-color:var(--color-accent-light);transform:translateY(-1px);box-shadow:var(--shadow-button)}.multiplayer-entry-create-btn:active,.multiplayer-entry-join-btn:active:not(:disabled){transform:translateY(0);box-shadow:none}.multiplayer-entry-join-btn:disabled{opacity:.5;cursor:not-allowed}.multiplayer-join-error{margin:0 0 12px;padding:10px 14px;font-size:13px;color:var(--color-danger-pale);background:#b91c1c33;border:1px solid var(--color-danger);border-radius:var(--radius-md)}.multiplayer-entry-join-section .multiplayer-deck-label{margin-bottom:6px}.multiplayer-entry-join-section .multiplayer-join-input{margin-bottom:14px}.multiplayer-entry-profile .multiplayer-deck-label{margin-bottom:6px}.multiplayer-entry-profile .multiplayer-reconnect-block{margin-top:16px}.multiplayer-join-input{display:block;width:100%;max-width:280px;padding:10px 14px;font-size:16px;letter-spacing:.1em;font-family:ui-monospace,monospace;text-transform:uppercase;background:#0f172ab3;border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-md);color:var(--color-text-primary);transition:border-color .14s ease,box-shadow .14s ease}.multiplayer-join-input:focus{outline:none;border-color:var(--color-accent-light);box-shadow:0 0 0 3px #60a5fa33}.multiplayer-deck-label{display:block;margin:0 0 6px;font-size:13px;color:var(--color-text-faint);font-weight:500}.multiplayer-lobby-panel{max-width:900px;margin:0 auto;padding:32px 36px}.multiplayer-lobby-sections{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;margin-top:0}@media(max-width:720px){.multiplayer-lobby-sections{grid-template-columns:1fr}}.multiplayer-lobby-section{padding:22px;background:#0f172a8c;border:1px solid rgba(148,163,184,.15);border-radius:var(--radius-lg);display:flex;flex-direction:column;align-items:stretch;transition:border-color .2s ease}.multiplayer-lobby-section:hover{border-color:#94a3b847}.multiplayer-lobby-section-title{margin:0 0 12px;font-size:18px;font-weight:700;color:var(--color-accent-wash)}.multiplayer-lobby-section .multiplayer-room-code-block{margin:0}.multiplayer-room-code-block{margin:0 0 16px;padding:16px 18px;background:#0f172a8c;border:1px solid rgba(59,130,246,.35);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:8px}.multiplayer-room-code-label{font-size:12px;color:var(--color-accent-lighter);font-weight:500;text-transform:uppercase;letter-spacing:.04em}.multiplayer-room-code-value{font-size:24px;font-weight:700;letter-spacing:.14em;font-family:ui-monospace,monospace;color:var(--color-accent-wash)}.multiplayer-status-line{margin:0 0 12px;padding:10px 14px;font-size:13px;border-radius:var(--radius-md);border-left:3px solid transparent}.multiplayer-status-waiting{color:var(--color-text-muted);background:#3741514d;border-left-color:#6b7280}.multiplayer-status-proceeding{color:var(--color-success-light);background:#16653426;border-left-color:var(--color-success)}.multiplayer-lobby-deck-section{margin-top:4px}.multiplayer-lobby-title{margin:0 0 14px;font-size:20px;font-weight:600;color:var(--color-text-primary)}.multiplayer-lobby-empty{margin:0 0 16px;font-size:14px;color:var(--color-text-faint)}.multiplayer-deck-select-wrap{margin-bottom:16px}.multiplayer-deck-select{display:block;width:100%;max-width:320px;margin-bottom:0;padding:10px 14px;font-size:14px;background:#0f172ab3;border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-md);color:var(--color-text-primary);transition:border-color .14s ease,box-shadow .14s ease}.multiplayer-deck-select:focus{outline:none;border-color:var(--color-accent-light);box-shadow:0 0 0 3px #60a5fa33}.multiplayer-lobby-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}.multiplayer-lobby-actions button{padding:10px 18px;font-size:14px;border-radius:var(--radius-md);transition:background .14s ease,border-color .14s ease,transform .14s ease,box-shadow .14s ease}.multiplayer-lobby-confirm-btn{background:var(--gradient-accent);border-color:var(--color-accent);color:var(--color-accent-wash);font-weight:600}.multiplayer-lobby-confirm-btn:hover:not(:disabled){background:var(--gradient-accent-hover);border-color:var(--color-accent-light);transform:translateY(-1px);box-shadow:var(--shadow-button)}.multiplayer-lobby-confirm-btn:active:not(:disabled){transform:translateY(0);box-shadow:none}.multiplayer-lobby-confirm-btn:disabled{opacity:.5}.multiplayer-waiting,.multiplayer-proceeding{margin:12px 0 0;font-size:13px;color:var(--color-text-muted)}.multiplayer-reconnecting-banner{padding:12px 18px;text-align:center;font-size:14px;color:var(--color-warning-pale);background:#92400e80;border:1px solid rgba(180,83,9,.5);border-radius:var(--radius-lg);margin:0 0 20px}.multiplayer-header-status-slot{min-height:38px;margin-top:10px}.multiplayer-header-opponent-left{margin:0;padding:10px 14px;background:#451a0399;border:1px solid rgba(154,52,18,.5);border-radius:var(--radius-md);font-size:13px;color:#fdba74}.multiplayer-phase-bar-status-slot{display:inline-block;min-width:11rem;min-height:34px;padding:6px 12px;box-sizing:border-box;font-size:13px;line-height:1.3;color:transparent;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);vertical-align:middle}.multiplayer-phase-bar-status-slot-visible{color:#fdba74;background:#451a0399;border-color:#9a341280}.multiplayer-phase-bar-status-slot.multiplayer-phase-bar-game-over{color:var(--color-success-light);background:#14532d80;border-color:#22c55e66}.multiplayer-reconnect-block{margin:0 0 20px;padding:16px 18px;background:#0f172a8c;border:1px solid rgba(59,130,246,.35);border-radius:var(--radius-lg);display:grid;gap:12px}.multiplayer-reconnect-block p{margin:0}.multiplayer-reconnect-message{font-size:13px;color:var(--color-accent-wash)}.multiplayer-reconnect-block strong{letter-spacing:.08em;font-family:ui-monospace,monospace;color:var(--color-accent-lighter)}.multiplayer-reconnect-actions{display:flex;gap:10px;flex-wrap:wrap}.multiplayer-reconnect-primary{background:var(--gradient-accent);border-color:var(--color-accent);color:var(--color-accent-wash);font-weight:600;border-radius:var(--radius-md);padding:10px 18px;transition:background .14s ease,border-color .14s ease,transform .14s ease,box-shadow .14s ease}.multiplayer-reconnect-primary:hover{background:var(--gradient-accent-hover);border-color:var(--color-accent-light);transform:translateY(-1px);box-shadow:var(--shadow-button)}.multiplayer-reconnect-primary:active{transform:translateY(0);box-shadow:none}.multiplayer-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:300;padding:16px}.multiplayer-opponent-left-modal{background:radial-gradient(ellipse at 30% 20%,rgba(59,130,246,.1),transparent 50%),linear-gradient(135deg,#1e293b 0%,var(--color-bg-base) 100%);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);padding:32px;max-width:380px;display:grid;gap:20px;box-shadow:var(--shadow-card)}.multiplayer-opponent-left-modal-title{margin:0;font-size:20px;font-weight:700;color:var(--color-text-bright);text-align:center}.multiplayer-leave-confirm-message{margin:0;font-size:14px;color:var(--color-text-faint);text-align:center;line-height:1.5}.multiplayer-opponent-left-modal-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.multiplayer-opponent-left-modal-actions button{padding:10px 20px;font-size:14px;border-radius:var(--radius-md);font-weight:600;transition:background .14s ease,border-color .14s ease,transform .14s ease,box-shadow .14s ease}.multiplayer-opponent-left-modal-actions button:first-child{background:#0f172a8c;border-color:#94a3b840;color:var(--color-text-secondary)}.multiplayer-opponent-left-modal-actions button:first-child:hover{background:#1e40af26;border-color:#94a3b866}.multiplayer-opponent-left-modal-actions button:last-child{background:var(--gradient-accent);border-color:var(--color-accent);color:var(--color-accent-wash)}.multiplayer-opponent-left-modal-actions button:last-child:hover{background:var(--gradient-accent-hover);border-color:var(--color-accent-light);transform:translateY(-1px);box-shadow:var(--shadow-button)}.multiplayer-opponent-left-modal-actions button:last-child:active{transform:translateY(0);box-shadow:none}.multiplayer-opponent-left-modal-actions button.multiplayer-modal-danger-btn{background:linear-gradient(180deg,var(--color-danger-darker) 0%,#991b1b 100%);border-color:var(--color-danger);color:#fef2f2}.multiplayer-opponent-left-modal-actions button.multiplayer-modal-danger-btn:hover{background:linear-gradient(180deg,var(--color-danger) 0%,var(--color-danger-darker) 100%);border-color:var(--color-danger-light);transform:translateY(-1px);box-shadow:0 8px 18px #dc26264d}.multiplayer-you-win{margin:0 0 16px;font-size:18px;font-weight:700;color:var(--color-success-light)}.multiplayer-room-code{margin:0 0 12px;font-size:14px}.multiplayer-room-code strong{letter-spacing:.08em;font-family:ui-monospace,monospace}.multiplayer-rps-panel{width:620px;max-width:100%;margin:0 auto;padding:32px 36px;box-sizing:border-box}.multiplayer-rps-content{margin-top:8px}.multiplayer-rps-title{margin:0 0 28px;font-size:26px;font-weight:800;color:var(--color-text-bright);text-align:center;letter-spacing:-.01em;text-shadow:0 4px 20px rgba(59,130,246,.3)}.multiplayer-rps-choices{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-bottom:20px}.multiplayer-rps-choice{min-width:120px;padding:16px 24px;font-size:15px;font-weight:700;border-radius:var(--radius-lg);border:1px solid rgba(148,163,184,.2);background:#0f172a8c;color:var(--color-text-primary);transition:background .14s ease,border-color .14s ease,transform .14s ease,box-shadow .14s ease}.multiplayer-rps-choice:hover:not(:disabled){border-color:#60a5fa80;background:#1e40af38;transform:translateY(-2px);box-shadow:0 8px 20px #1e40af40}.multiplayer-rps-choice:active:not(:disabled){transform:translateY(0);box-shadow:none}.multiplayer-rps-choice:disabled{opacity:.5;cursor:not-allowed}.multiplayer-rps-choice-selected{border-color:#22c55e80;background:#1665344d;box-shadow:0 0 0 2px #22c55e4d}.multiplayer-rps-choice-selected:hover:not(:disabled){border-color:#4ade8099;background:#16653466;box-shadow:0 0 0 2px #22c55e66}.multiplayer-rps-status-slot{width:100%;height:64px;min-height:64px;display:flex;align-items:center;justify-content:center;margin-bottom:8px;box-sizing:border-box}.multiplayer-rps-status-slot .multiplayer-rps-status{margin:0;min-width:0;max-width:100%}.multiplayer-rps-status{margin:0 0 8px;font-size:13px;color:var(--color-text-faint);text-align:center}.multiplayer-rps-status-tie{margin:0;padding:12px 16px;font-size:14px;font-weight:600;color:var(--color-warning-light);background:#b4530933;border:1px solid rgba(245,158,11,.4);border-radius:var(--radius-lg);text-align:center}.multiplayer-rps-won-block{padding:24px;background:#16653426;border:1px solid rgba(34,197,94,.35);border-radius:var(--radius-lg);text-align:center}.multiplayer-rps-won-message{margin:0 0 20px;font-size:16px;font-weight:700;color:var(--color-success-light)}.multiplayer-rps-order-buttons{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.multiplayer-rps-order-btn{min-width:130px;padding:14px 24px;font-size:14px;font-weight:700;border-radius:var(--radius-lg);border:1px solid rgba(148,163,184,.2);background:#0f172a8c;color:var(--color-text-primary);transition:background .14s ease,border-color .14s ease,transform .14s ease,box-shadow .14s ease}.multiplayer-rps-order-btn:first-of-type{background:linear-gradient(180deg,#16a34a,#15803d);border-color:#22c55e80;color:var(--color-success-pale)}.multiplayer-rps-order-btn:first-of-type:hover{background:linear-gradient(180deg,var(--color-success) 0%,#16a34a 100%);border-color:#4ade8099;transform:translateY(-1px);box-shadow:0 8px 18px #22c55e4d}.multiplayer-rps-order-btn:hover{border-color:#60a5fa80;background:#1e40af38;transform:translateY(-1px)}.multiplayer-rps-order-btn:active{transform:translateY(0);box-shadow:none}.board{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.game-board-root{display:grid;gap:12px}.game-board-root:has(.game-board-layout){height:100%;min-height:0;overflow:hidden;grid-template-rows:1fr}.game-board-root.game-board-root-reconnecting{grid-template-rows:auto 1fr}.game-board-root:has(.game-board-layout) .game-board-layout{min-height:0}.game-board-root.goldfish-board .game-board-layout .game-board-area{align-self:stretch}.goldfish-controls h2{margin:0 0 8px}.goldfish-replay-controls{margin-top:8px;padding-top:8px;border-top:1px solid var(--color-border);display:grid;gap:8px}.goldfish-replay-step-readout{display:grid;gap:6px}.goldfish-replay-step-readout p{margin:0}.goldfish-replay-event-list{display:grid;gap:6px;max-height:220px;overflow:auto;padding-right:4px}.goldfish-replay-event-list button{text-align:left;white-space:normal}.goldfish-replay-event-active{border-color:var(--color-accent-light);background:var(--color-accent-deepest)}.game-board-layout{display:grid;gap:12px;grid-template-columns:minmax(240px,1fr) auto minmax(280px,1fr);align-items:stretch}.game-board-left-column{display:flex;flex-direction:column;gap:12px;min-height:0}.game-board-left-column .deck-left-pane,.game-board-left-column .board-card-info{flex:1;min-height:0}.game-board-left-column .game-board-actions{flex-shrink:0}.game-board-right-column{display:flex;flex-direction:column;gap:12px;min-height:0}.game-board-right-column .board-right-pane{flex:1;min-height:0}.game-board-replay-actions{display:flex;flex-direction:column;gap:6px}.game-board-replay-actions .board-actions-panel-header{flex-shrink:0;padding:8px 10px 0;margin:0;border:none;background:transparent}.game-board-replay-actions .board-actions-panel-title{margin:0;font-size:13px;font-weight:600;color:var(--color-accent-wash)}.game-board-replay-actions .button-row{margin:0;gap:6px}.game-board-replay-actions .button-row button{padding:4px 8px;font-size:12px}.game-board-replay-actions .replay-progress{font-size:12px;align-self:center}.game-board-panel-placeholder{display:flex;align-items:center;justify-content:center;padding:24px}.game-board-panel-placeholder p{margin:0;font-size:14px;color:var(--color-text-muted)}.game-board-actions{flex-shrink:0}.game-board-actions .button-row{margin:0}.gameplay-log-panel{display:flex;flex-direction:column;gap:0;max-height:80vh;min-height:0;background:linear-gradient(180deg,#0f1c34f2,#0c162afa);border:1px solid rgba(56,189,248,.2);border-radius:var(--radius-lg);padding:0;box-shadow:0 4px 24px #00000059,inset 0 1px #ffffff0a}.gameplay-log-header{display:flex;align-items:center;gap:10px;flex-shrink:0;padding:12px 14px;border-bottom:1px solid rgba(56,189,248,.15);background:#07102080;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.gameplay-log-header-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;font-size:14px;color:#38bdf8e6;background:#38bdf81f;border-radius:var(--radius-md)}.gameplay-log-title{margin:0;font-size:14px;font-weight:600;letter-spacing:.02em;color:var(--color-accent-wash)}.gameplay-log-count{margin-left:auto;padding:4px 10px;font-size:12px;font-weight:500;color:#e0f2fecc;background:#38bdf826;border-radius:999px}.gameplay-log-content{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:10px 12px 14px;font-size:13px;line-height:1.5;scrollbar-width:thin;scrollbar-color:rgba(56,189,248,.35) transparent}.gameplay-log-content::-webkit-scrollbar{width:6px}.gameplay-log-content::-webkit-scrollbar-track{background:transparent}.gameplay-log-content::-webkit-scrollbar-thumb{background:#38bdf859;border-radius:3px}.gameplay-log-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:120px;padding:20px;text-align:center}.gameplay-log-empty-icon{font-size:24px;letter-spacing:.2em;color:#38bdf859}.gameplay-log-empty p{margin:0;color:#ffffff80;font-size:13px}.gameplay-log-empty-hint{font-size:12px;color:#ffffff59}.gameplay-log-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:2px}.gameplay-log-entry{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border-radius:var(--radius-md);transition:background .15s ease}.gameplay-log-entry:hover{background:#38bdf80f}.gameplay-log-entry-marker{flex-shrink:0;width:6px;height:6px;margin-top:6px;border-radius:50%;background:#38bdf899;box-shadow:0 0 8px #38bdf84d}.gameplay-log-entry-chat .gameplay-log-entry-marker{background:#a855f799;box-shadow:0 0 8px #a855f74d}.gameplay-log-entry-chat{background:#a855f714}.gameplay-log-entry-chat:hover{background:#a855f71f}.gameplay-log-entry-turn{font-weight:600;font-style:italic;background:#fbbf2414;justify-content:flex-start}.gameplay-log-entry-turn:hover{background:#fbbf241f}.gameplay-log-entry-turn .gameplay-log-entry-marker{background:#fbbf2499;box-shadow:0 0 8px #fbbf244d}.gameplay-log-entry-turn .gameplay-log-entry-text{color:#fbbf24e6}.gameplay-log-entry-system{font-style:italic;background:#fbbf2414}.gameplay-log-entry-system:hover{background:#fbbf241f}.gameplay-log-entry-system .gameplay-log-entry-marker{background:#fbbf2499;box-shadow:0 0 8px #fbbf244d}.gameplay-log-entry-system .gameplay-log-entry-text{color:#fbbf24e6}.gameplay-log-entry-text{flex:1;min-width:0;color:#e0f2feeb;word-break:break-word}.gameplay-log-chat-form{display:flex;gap:8px;padding:10px 12px;border-top:1px solid rgba(56,189,248,.15);flex-shrink:0}.gameplay-log-chat-input{flex:1;min-width:0;padding:8px 10px;font-size:13px;color:#e0f2fef2;background:#0f172a99;border:1px solid rgba(56,189,248,.25);border-radius:var(--radius-md);outline:none}.gameplay-log-chat-input::placeholder{color:#e0f2fe66}.gameplay-log-chat-input:focus{border-color:#38bdf880}.gameplay-log-chat-input:disabled{opacity:.5;cursor:not-allowed}.gameplay-log-chat-submit{flex-shrink:0;padding:8px 14px;font-size:13px;font-weight:500;color:#0f172af2;background:#38bdf8e6;border:none;border-radius:var(--radius-md);cursor:pointer}.gameplay-log-chat-submit:hover:not(:disabled){background:#38bdf8}.gameplay-log-chat-submit:disabled{opacity:.5;cursor:not-allowed}.board-stack-counter-controls{display:flex;gap:4px;margin-top:4px}.board-stack-counter-controls button{padding:2px 6px;font-size:12px}.board-card-info{display:flex;flex-direction:column;gap:10px;min-height:0}.board-card-info h3{margin:0;flex-shrink:0}.board-card-info-content{flex:1;min-height:0;overflow-y:auto}.board-card-info .selected-card-block{height:auto}.board-card-info .selected-card-frame{overflow:visible}.board-card-info-type{margin:0;font-size:12px;color:var(--color-accent-pale);text-transform:uppercase}.game-board-area{width:max-content;max-width:100%;margin:0 auto;box-sizing:border-box;display:flex;flex-direction:column;min-height:0;flex:1;background:radial-gradient(circle at 20% 20%,rgba(147,197,253,.16),transparent 35%),radial-gradient(circle at 80% 75%,rgba(167,139,250,.18),transparent 38%),linear-gradient(180deg,#13233d,#1a2f53 47%,#1d3a63)}.phase-bar{position:relative;z-index:0;width:100%;box-sizing:border-box;display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:10px 12px;border-bottom:1px solid rgba(168,196,235,.25);background:#07102066}.phase-bar-messages{flex:1;min-width:0;display:flex;align-items:center;gap:12px}.phase-bar-messages .multiplayer-connection-status{margin-left:12px;font-size:12px;color:var(--color-text-muted)}.phase-bar-turn-label{flex-shrink:0;width:9.5rem;min-width:9.5rem;padding:6px 10px;font-size:14px;font-weight:600;display:inline-block;text-align:center;border-radius:var(--radius-md);border:1px solid transparent}.phase-bar-turn-label-yours{color:#052e16;background:linear-gradient(180deg,var(--color-success-light) 0%,#4ade80 100%);border-color:#22c55e80;box-shadow:0 0 10px #22c55e40}.phase-bar-turn-label-opponent{color:#e0f2fef2;background:#47556980;border-color:#94a3b859}.phase-bar-claim-victory-btn{flex-shrink:0;padding:6px 14px;font-size:13px;font-weight:600;color:#052e16;background:linear-gradient(180deg,#fbbf24,#f59e0b);border:1px solid rgba(245,158,11,.6);border-radius:var(--radius-md);cursor:pointer;box-shadow:0 0 12px #f59e0b4d;animation:phase-bar-claim-pulse 2s ease-in-out infinite}.phase-bar-claim-victory-btn:hover{background:linear-gradient(180deg,#fcd34d,#fbbf24);box-shadow:0 0 16px #f59e0b80}@keyframes phase-bar-claim-pulse{0%,to{box-shadow:0 0 12px #f59e0b4d}50%{box-shadow:0 0 20px #f59e0b80}}.phase-bar-messages .board-target-hint{margin:0}.phase-bar-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.phase-bar-utilities{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:4px 10px;border-radius:var(--radius-md);background:#00000040;border:1px solid rgba(255,255,255,.08)}.phase-bar-utilities button{padding:5px 10px;border-radius:var(--radius-sm);font-size:12px;font-weight:500;color:#e0f2fed9;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);cursor:pointer;font-family:inherit}.phase-bar-utilities button:hover:not(:disabled){background:#ffffff1f;border-color:#fff3;color:#e0f2fefa}.phase-bar-utilities button:disabled{opacity:.5;cursor:not-allowed}.phase-bar-utilities-sep{width:1px;align-self:stretch;min-height:28px;background:linear-gradient(180deg,transparent,rgba(255,255,255,.15),transparent);border-radius:1px}.phase-bar-controls .phase-bar-next-btn{margin-left:auto}.phase-bar-pill{padding:6px 12px;border-radius:999px;font-size:13px;font-weight:500;color:#ffffffa6;background:#ffffff14;border:1px solid rgba(255,255,255,.12)}button.phase-bar-pill{cursor:pointer;font-family:inherit}button.phase-bar-pill:hover{color:#ffffffe6;background:#ffffff24;border-color:#fff3}.phase-bar-pill-current{color:var(--color-accent-wash);background:#38bdf838;border-color:#38bdf880;box-shadow:0 0 12px #38bdf826}.phase-bar-next-btn{margin-left:auto;min-width:7.5rem;padding:8px 18px;border-radius:var(--radius-md);font-size:14px;font-weight:600;color:#052e16;background:linear-gradient(180deg,var(--color-success-light) 0%,#4ade80 100%);border:1px solid rgba(34,197,94,.6);box-shadow:0 1px 3px #0003;cursor:pointer}.phase-bar-next-btn:hover:not(:disabled){background:linear-gradient(180deg,#bbf7d0 0%,var(--color-success-light) 100%);border-color:#22c55ecc;box-shadow:0 0 14px #4ade8059}.phase-bar-next-btn:disabled{opacity:.5;cursor:not-allowed}.inspection-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000}.stage-attached-cards-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;align-items:center;justify-content:center}.inspection-modal{background:radial-gradient(ellipse at 20% 15%,rgba(59,130,246,.08),transparent 50%),linear-gradient(135deg,#1e293b 0%,var(--color-bg-base) 100%);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);padding:24px;max-width:90%;max-height:85%;display:flex;flex-direction:column;gap:16px;box-shadow:var(--shadow-card)}.deck-view-modal.inspection-modal{max-width:min(90%,1064px)}.inspection-modal-title{margin:0;font-size:18px;color:var(--color-text-primary)}.inspection-modal-cards{display:flex;flex-wrap:wrap;gap:12px;overflow:auto;min-height:0}.inspection-modal-card{flex-shrink:0;display:flex;flex-direction:column;gap:6px}.inspection-modal-card img{width:120px;height:auto;border-radius:var(--radius-sm);display:block}.inspection-modal-card-actions{display:flex;flex-wrap:wrap;gap:4px}.inspection-modal-card-actions button{padding:4px 6px;font-size:10px}.inspection-modal-header{display:flex;flex-direction:column;gap:4px}.inspection-modal-title-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px}.deck-view-right-click-hint{font-size:12px;color:var(--color-text-muted);font-weight:400}.deck-view-multi-select-hint{margin:0;font-size:13px;color:var(--color-accent-lighter);font-weight:500}.inspection-modal-footer{display:flex;flex-wrap:wrap;align-items:center;gap:8px;align-self:flex-end}.inspection-modal-clear-selection{padding:6px 12px;font-size:12px;background:var(--color-border);color:#e5e7eb;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);cursor:pointer}.inspection-modal-clear-selection:hover{background:var(--color-border-strong)}.inspection-modal-close{align-self:flex-end}.deck-view-card,.deck-view-card .board-card-interactive{position:relative}.deck-view-card-art-wrap{position:relative;display:block}.board-card-highlight{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-sm);pointer-events:none}.board-card-highlight--selected{background:#86efac73}.board-card-highlight--targetable{box-shadow:0 0 0 2px #38bdf8e6,0 0 12px #38bdf8a6}.deck-view-card:hover{z-index:2147482000}.deck-view-modal .inspection-modal-cards.deck-view-list{overflow:visible;min-height:unset}.game-board-playmat{position:relative;display:grid;gap:14px;width:max-content;flex:1;min-height:0}.game-board-area>.game-board-playmat:nth-child(1){z-index:0}.game-board-area>.game-board-playmat:nth-child(1):has(.board-stack-layer-top:hover),.game-board-area>.game-board-playmat:nth-child(1):has(.board-stack-top-menu:hover),.game-board-area>.game-board-playmat:nth-child(1):has(.board-hover-menu:hover),.game-board-area>.game-board-playmat:nth-child(1):has(.inspection-modal-overlay),.game-board-area>.game-board-playmat:nth-child(1):has(.board-prompts-open){z-index:3}.game-board-area>.game-board-playmat:nth-child(3){z-index:2}.game-board-area:has(.game-board-playmat:nth-child(1) .board-stack-top-menu:hover)>.game-board-playmat:nth-child(3) .board-stack-top-menu,.game-board-area:has(.game-board-playmat:nth-child(1) .board-stack-top-menu:hover)>.game-board-playmat:nth-child(3) .board-hover-menu,.game-board-area:has(.game-board-playmat:nth-child(1) .board-stack-layer-top:hover)>.game-board-playmat:nth-child(3) .board-stack-top-menu,.game-board-area:has(.game-board-playmat:nth-child(1) .board-stack-layer-top:hover)>.game-board-playmat:nth-child(3) .board-hover-menu{display:none!important}.game-board-playmat>div{display:flex;flex-direction:column;min-height:0;min-width:0;width:max-content}.board-field{aspect-ratio:16 / 9;box-sizing:border-box;border:1px solid rgba(168,196,235,.45);border-radius:10px;background:#07102099;padding:10px 10px 20px;display:grid;grid-template-rows:1fr auto;gap:10px;min-height:0;flex:1;overflow:visible}.board-field h3{margin:0;font-size:24px;letter-spacing:.02em}.board-sections-wrap{display:flex;flex-direction:column;gap:10px;flex:1;min-height:0}.board-sections-wrap>.board-sections{flex:1;min-height:0}.board-sections-wrap-opponent{flex-direction:column-reverse}.board-sections-wrap-opponent .board-sections{grid-template-columns:180px 1fr 180px}.board-sections-wrap-opponent .board-sections .board-section-cell:nth-child(1){grid-row:2;grid-column:3}.board-sections-wrap-opponent .board-sections .board-section-cell:nth-child(2){grid-row:2;grid-column:2}.board-sections-wrap-opponent .board-sections .board-section-cell:nth-child(3){grid-row:2;grid-column:1}.board-sections-wrap-opponent .board-sections .board-section-cell:nth-child(4){grid-row:1;grid-column:3}.board-sections-wrap-opponent .board-sections .board-section-cell:nth-child(5){grid-row:1;grid-column:2}.board-sections-wrap-opponent .board-sections .board-section-cell:nth-child(6){grid-row:1;grid-column:1}.board-sections-wrap-opponent .board-stage-row-1{direction:rtl}.board-sections-wrap-opponent .board-stage-row-1>*{direction:ltr}.board-sections-wrap-opponent .board-stage-row-2{direction:rtl}.board-sections-wrap-opponent .board-stage-row-2>*{direction:ltr}.board-field-opponent .board-hand-row,.board-field-opponent .board-hand-lane{flex-direction:row-reverse}.board-field-opponent .board-card-opponent-back,.board-field-opponent .board-slot-image img.board-back-art{transform:rotate(180deg)}.board-field-opponent .board-slot-image img:not(.board-back-art),.board-field-opponent .board-slot-image .card-image-placeholder,.board-field-opponent .board-card-image img,.board-field-opponent .board-card-image .card-image-placeholder,.board-field-opponent .board-stack-frame img:not(.board-back-art),.board-field-opponent .board-stack-frame .card-image-placeholder{transform:rotate(180deg)}.board-hand-header{display:flex;flex-direction:row;align-items:center;gap:8px;flex-shrink:0}.board-hand-header h3{margin:0;font-size:12px;color:#eaf2ff;font-weight:600}.board-hand-header .deck-controls-actions{flex-direction:row;margin-top:0;margin-bottom:0;gap:6px}.board-hand-header .deck-controls-actions button{padding:4px 8px;font-size:11px}.board-hand-header .deck-controls-actions button:hover,.board-hand-header .deck-controls-actions button:focus-visible{background:#60a5fa40;outline:1px solid rgba(96,165,250,.6);outline-offset:-1px}.board-hand-actions{display:flex;flex-direction:column;justify-content:center;gap:6px;flex-shrink:0;padding:6px 0;min-width:7.5rem}.board-hand-actions button{padding:4px 10px;font-size:11px;white-space:nowrap}.board-hand-actions button:hover,.board-hand-actions button:focus-visible{background:#60a5fa40;outline:1px solid rgba(96,165,250,.6);outline-offset:-1px}.board-hand-clear-selection{padding:4px 10px;font-size:11px;white-space:nowrap}.board-hand-section{border:1px solid rgba(173,200,240,.35);border-radius:var(--radius-md);background:#0a182eb8;padding:8px;display:flex;flex-direction:row;align-items:stretch;gap:8px;min-height:124px;flex:1;min-width:0}.board-hand-lane{display:flex;flex-direction:row;flex-wrap:nowrap;gap:8px;min-height:120px;overflow:visible;align-items:stretch;position:relative;z-index:1;width:max-content;min-width:0}.board-hand-section .board-hand-lane{display:flex;flex-direction:row;flex-wrap:nowrap;flex:1;min-width:0;width:100%;align-self:stretch}.board-hand-row .board-hand-section .board-hand-lane{display:flex;flex-wrap:nowrap}.board-hand-row .board-hand-section .board-hand-lane>.board-hand-card{flex:0 0 90px;width:90px;min-width:90px;flex-shrink:0}.board-hand-card{border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;position:relative;z-index:0;overflow:visible;flex:0 0 90px;width:90px;min-width:90px;box-sizing:border-box}.board-hand-lane>.board-hand-card{flex:0 0 90px;width:90px;min-width:90px}.board-hand-card-art-wrap{position:relative;display:block;width:100%;min-width:0;box-sizing:border-box}.board-hand-card .board-hand-card-art-wrap{width:90px;max-width:100%}.board-sections{display:grid;grid-template-columns:180px 1fr 180px;grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:stretch}.board-section-cell{position:relative;display:flex;flex-direction:column;min-height:0;z-index:0}.board-section-cell:has(.board-slot-card:hover):not(:has(.board-slot-card:hover .board-stack-visual)),.board-section-cell:has(.board-slot-card:focus-within):not(:has(.board-slot-card:focus-within .board-stack-visual)),.board-section-cell:has(.board-mini-card:hover),.board-section-cell:has(.board-mini-card:focus-within),.board-section-cell:has(.board-zone-interactive:hover),.board-section-cell:has(.board-stack-layer-top:hover),.board-section-cell:has(.board-stack-top-menu:hover){z-index:2147483647}.board-section-cell:nth-child(1){grid-row:1;grid-column:1}.board-section-cell:nth-child(2){grid-row:1;grid-column:2}.board-section-cell:nth-child(3){grid-row:1;grid-column:3}.board-section-cell:nth-child(4){grid-row:2;grid-column:1}.board-section-cell:nth-child(5){grid-row:2;grid-column:2}.board-section-cell:nth-child(6){grid-row:2;grid-column:3}.board-section-cell>.board-side-slot.board-slot-row,.board-section-cell>.board-slot-card.board-slot-row,.board-section-cell>.board-side-slot:only-child{flex:1;min-height:0;display:flex;flex-direction:column}.board-section-cell>.board-stage-row-1,.board-section-cell>.board-stage-row-2{flex:1;min-height:0}.board-section-cell>.board-side-slot .board-zone-interactive,.board-section-cell>.board-slot-card .board-zone-interactive{flex:1;min-height:0;display:flex;flex-direction:column}.board-section-cell>.board-side-slot .board-slot-image,.board-section-cell>.board-slot-card .board-slot-image{flex:1;min-height:0}.board-slot-wide{width:100%;min-width:0;box-sizing:border-box}.board-slot-image-wide{width:100%;overflow:hidden}.board-stack-slot-square{width:120px;height:120px;min-width:120px;overflow:hidden}.board-stage-row-1{display:grid;grid-template-columns:minmax(128px,1fr) minmax(128px,1fr) minmax(100px,.8fr) 136px;gap:8px;align-items:stretch}.board-stage-row-1 .board-slot-card,.board-stage-row-2 .board-slot-card{width:100%;min-width:0}.board-stage-row-1 .board-slot-card .board-card-interactive,.board-stage-row-2 .board-slot-card .board-card-interactive{height:100%;align-items:center}.board-stage-row-2{display:grid;grid-template-columns:repeat(6,minmax(110px,1fr));gap:8px;align-items:stretch;justify-content:center}.board-stage-slot.board-slot-card{min-height:0}.board-hand-row{position:relative;display:flex;flex-direction:row;align-items:stretch;min-height:124px;z-index:0;gap:8px}.board-archive-in-hand-row{flex:0 0 120px;width:120px;min-width:120px;box-sizing:border-box;display:flex;flex-direction:column;min-height:0}.board-archive-in-hand-row .board-zone-interactive{flex:1;min-height:0}.board-hand-row:has(.board-hand-card:hover),.board-hand-row:has(.board-hand-card:focus-within){z-index:2147483647}.board-side-slot{border:1px solid #42628e;border-radius:var(--radius-md);padding:8px;background:#081222e6;display:grid;gap:6px;width:128px;box-sizing:border-box}.board-side-slot.board-slot-wide,.board-slot-card.board-slot-wide{width:100%}.board-zone-interactive{position:relative;display:grid;gap:6px;overflow:visible}.board-zone-interactive .board-hover-menu{right:0;left:auto;transform:none;bottom:calc(100% + 2px)}.board-zone-interactive:hover .board-hover-menu{display:flex}.board-zone-interactive:before{content:"";position:absolute;left:0;right:0;top:-6px;height:6px}.board-zone-interactive:hover{z-index:40}.board-zone-interactive p,.board-side-slot p{margin:0;color:var(--color-accent-pale);font-size:12px;text-transform:uppercase}.board-zone-with-badge{position:relative}.board-zone-badge{position:absolute;top:6px;left:50%;transform:translate(-50%);z-index:10;padding:2px 8px;font-size:11px;font-weight:600;color:#e0f2fef2;background:#0f1c34e6;border:1px solid rgba(56,189,248,.35);border-radius:999px;white-space:nowrap;pointer-events:none}.board-zone-title{display:flex;align-items:baseline;gap:4px;white-space:nowrap}.board-zone-title strong{font-size:inherit;font-weight:800}.board-zone-view-btn{margin-left:6px;padding:2px 6px;font-size:11px}.board-slot-revealed{position:relative}.board-zone-view-btn-overlay{position:absolute;top:6px;right:6px;z-index:2;margin:0}.board-zone-interactive strong,.board-side-slot strong{font-size:20px}.board-zone-interactive .board-zone-title strong{font-size:inherit}.board-zone-interactive button,.board-side-slot button{padding:4px 6px;font-size:11px}.board-tight-buttons{gap:4px}.board-tight-buttons button{padding:3px 5px;font-size:10px}.board-mini-lane{display:grid;grid-template-columns:1fr;gap:6px}.board-mini-card{display:flex;justify-content:center;position:relative;z-index:0;overflow:visible}.board-stage-field{border:1px solid #4f729f;border-radius:10px;padding:8px;background:#09162ab3;display:flex;flex-direction:column;justify-content:center;width:100%;box-sizing:border-box}.board-stage-back-row{display:grid;grid-template-columns:repeat(6,minmax(128px,128px));gap:8px;justify-content:center}.board-slot-card{border:1px solid #4d6e97;border-radius:var(--radius-md);background:#08101ef0;padding:8px;display:grid;gap:6px;width:128px;box-sizing:border-box;position:relative;z-index:0;overflow:visible}.board-slot-label{margin:0;font-size:12px;text-transform:uppercase;color:var(--color-accent-soft);font-weight:700}.board-card-image{width:90px;height:120px;padding:4px 0;box-sizing:border-box;border-radius:var(--radius-sm);overflow:hidden;position:relative;flex-shrink:0}.board-card-image :is(img,.card-image-placeholder){width:100%;height:100%;object-fit:contain;object-position:center;display:block;border-radius:var(--radius-sm)}.board-slot-image{width:90px;height:120px;padding:4px 0;box-sizing:border-box;margin:0 auto;border-radius:var(--radius-sm);overflow:visible;position:relative;container-type:size;display:flex;align-items:center;justify-content:center}.board-zone-count-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:5}.board-zone-count-overlay span{pointer-events:none;font-size:25cqh;font-weight:700;color:#ffffffbf;text-shadow:0 0 4px rgba(0,0,0,.9),0 1px 2px rgba(0,0,0,.9);line-height:1}.board-stack-art-wrap{position:relative;width:100%;height:100%}.board-stack-target-bounds{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:10}.board-stack-frame-targetable{cursor:pointer;overflow:visible}.board-stack-frame-empty{flex:none;width:90px;height:120px}.board-source-active{box-shadow:0 0 0 2px #eab308e6,0 0 12px #eab30899}.board-slot-image :is(img,.card-image-placeholder,.board-slot-empty),.board-stack-frame :is(img,.card-image-placeholder,.board-slot-empty),.board-card-image :is(img,.card-image-placeholder,.board-slot-empty){width:100%;height:100%}.board-back-art-wrap{width:90px;height:120px;padding:4px 0;box-sizing:border-box;border-radius:var(--radius-sm);overflow:hidden;position:relative;flex-shrink:0;margin:0 auto}.board-back-art-wrap .board-back-art{object-fit:contain}.board-back-art{width:100%;height:100%;object-fit:contain;object-position:center;border-radius:var(--radius-sm);display:block}.board-stack-frame-resting{overflow:visible;padding:0}.board-stack-visual-resting .board-stack-layer-top{pointer-events:none}.board-stack-visual-resting .board-stack-layer-top .board-stack-resting-wrap{pointer-events:auto}.board-stack-resting-wrap{position:absolute;left:15px;top:8px;width:90px;height:120px;transform:rotate(90deg);transform-origin:center center;pointer-events:auto}.board-stack-resting-wrap>.board-stack-art-wrap,.board-stack-resting-wrap>.board-slot-card-art-wrap{width:100%;height:100%}.board-slot-empty{display:grid;place-items:center;color:#8fa9cf;font-size:12px;font-weight:600}.board-slot-card-art-wrap{position:relative;width:100%;height:100%}.board-slot-card-art-wrap-clickable{cursor:pointer}.stage-card-detail-modal-overlay{z-index:260}.stage-card-detail-modal{width:min(520px,100%);border-color:var(--color-border-strong);background:var(--color-bg-base);display:grid;gap:10px}.stage-card-detail-modal-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.stage-card-detail-modal-title{margin:0;font-size:18px;color:var(--color-text-primary)}.stage-card-detail-modal-nav{display:inline-flex;align-items:center;gap:6px}.stage-card-detail-modal-nav button{padding:4px 8px;font-size:12px}.stage-card-detail-modal-index{min-width:3.5rem;text-align:center;font-size:12px;color:var(--color-text-secondary)}.stage-card-detail-modal-card-area{display:grid;gap:8px;justify-items:center}.stage-card-detail-card-wrap{width:180px;height:240px}.stage-card-detail-card-wrap .board-card-image{width:180px;height:240px;padding:0}.stage-card-detail-card-wrap .board-slot-support-icon-row{padding:2px 3px;gap:3px}.stage-card-detail-card-wrap .board-slot-support-count{font-size:10px}.stage-card-detail-modal-card-name{margin:0;font-size:13px;color:var(--color-accent-pale)}.stage-card-detail-modal-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--color-text-muted);font-size:12px}.board-slot-cheer-icons{position:absolute;left:0;bottom:-4px;display:flex;flex-direction:row;flex-wrap:wrap;gap:2px;padding:2px;max-width:100%;z-index:2}.board-slot-support-icons{position:absolute;right:-4px;bottom:10px;display:flex;flex-direction:column;gap:2px;padding:2px;z-index:2}.board-slot-support-icon-row{border:none;margin:0;padding:1px 2px;background:#0f172ab3;border-radius:3px;display:inline-flex;align-items:center;gap:2px;cursor:pointer}.board-slot-support-icon-row:hover{background:#1e293be6}.board-slot-support-emoji{font-size:10px;line-height:1}.board-slot-support-crop{border-radius:2px}.board-slot-support-crop-fallback{display:inline-flex;align-items:center;justify-content:center;font-size:9px;color:#e5e7eb;background:#020617bf}.board-slot-support-count{font-size:9px;font-weight:700;line-height:1;color:var(--color-text-bright);text-shadow:0 0 1px #000}.board-slot-cheer-icon{padding:0;margin:0;border:none;background:transparent;cursor:pointer;border-radius:2px;display:flex;align-items:center;justify-content:center}.board-slot-cheer-icon:hover{background:#fff3}.board-slot-cheer-icon-with-count{position:relative}.board-slot-cheer-icon-count{position:absolute;top:-2px;right:-2px;min-width:10px;height:10px;padding:0 2px;font-size:8px;font-weight:700;line-height:10px;text-align:center;background:transparent;color:#fff;text-shadow:0 0 1px #000,0 0 1px #000,1px 0 #000,0 1px #000,-1px 0 #000,0 -1px #000;border:none;border-radius:999px}.board-slot-cheer-icon .board-slot-cheer-icon-img{width:12px;height:12px;min-width:12px;min-height:12px;max-width:12px;max-height:12px;display:block;object-fit:contain}.board-slot-badges{position:absolute;left:0;right:0;top:0;display:flex;flex-wrap:wrap;gap:4px;padding:4px;pointer-events:none}.board-slot-badge{font-size:10px;font-weight:700;padding:2px 6px;border-radius:4px;background:#000000bf;color:var(--color-warning-pale)}.board-slot-badge-dmg{color:#fca5a5}.board-slot-badge-counter{color:var(--color-success-light)}.board-slot-meta{margin:0;font-size:11px;color:var(--color-accent-pale)}.board-damage-request-strip{position:absolute;left:0;right:0;bottom:0;height:30px;display:flex;align-items:center;justify-content:center;gap:4px;background:#000000d1;border-radius:0 0 var(--radius-sm) var(--radius-sm);pointer-events:auto;z-index:10}.board-dmg-req-amount{font-size:12px;font-weight:700;color:#fca5a5;min-width:24px;text-align:center}.board-dmg-req-btn{width:24px;height:24px;padding:0;border:1px solid #475569;border-radius:var(--radius-sm);background:#1e293be6;color:#e2e8f0;font-size:14px;font-weight:700;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.board-dmg-req-btn:hover{background:#334155e6}.board-dmg-req-accept{color:#86efac;border-color:#22c55e}.board-dmg-req-accept:hover{background:#16653499}.board-dmg-req-reject{color:#fca5a5;border-color:#ef4444}.board-dmg-req-reject:hover{background:#7f1d1d99}.board-damage-request-strip-requester{background:#000000b3}.board-damage-request-strip-requester .board-dmg-req-amount{color:#93c5fd;font-size:11px}.board-stack-layer-top:has(.board-damage-request-strip:hover) .board-stack-top-menu{display:none!important}.board-targeting-arts-damage .board-hover-menu{display:none!important}.board-card-interactive{position:relative;display:flex;justify-content:center;overflow:visible}.board-hover-menu,.board-stack-menu{position:absolute;right:0;left:auto;bottom:100%;transform:none;border:1px solid #5b7eab;border-radius:var(--radius-md);background:#060e1cf7;padding:6px;display:none;flex-direction:column-reverse;gap:4px;z-index:2147483647;margin-bottom:2px}.board-hover-menu,.board-stack-menu{min-width:90px;width:max-content;max-width:180px}.board-hover-menu:after,.board-stack-menu:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:8px}.board-card-interactive:hover>.board-hover-menu{display:flex}.board-hand-card .board-card-interactive:hover .board-hover-menu{display:flex}.board-stage-slot.board-slot-card .board-card-interactive{width:fit-content;justify-self:center}.board-oshi-art-wrap{position:relative;overflow:visible;z-index:1}.board-stage-row-1>.board-slot-card:nth-child(3){position:relative;z-index:2}.board-oshi-sp-used-badges{justify-content:flex-end;align-items:flex-start;z-index:5}.board-slot-badge.board-oshi-sp-used-badge{background:#ec4899;color:#fff;border:none;font-size:9px;font-weight:600}.board-stack-centering{width:100%;justify-content:center}.board-targeting-placement .board-hover-menu,.board-targeting-placement .board-stack-menu,.board-targeting-move-to-back .board-hover-menu,.board-targeting-move-to-back .board-stack-menu,.board-prompts-open .board-field .board-hover-menu,.board-prompts-open .board-field .board-stack-menu{display:none!important}.board-prompts-open .board-section-cell{z-index:0!important}.board-slot-card:hover:not(:has(.board-stack-visual)),.board-slot-card:focus-within:not(:has(.board-stack-visual)),.board-mini-card:hover,.board-mini-card:focus-within{z-index:2147483500}.board-hand-card{transition:transform .12s ease}.board-hand-card:hover,.board-hand-card:focus-within{transform:translateY(-12px)}.board-field-opponent .board-hand-card:hover,.board-field-opponent .board-hand-card:focus-within{transform:translateY(12px)}.board-hover-menu button,.board-stack-menu button{padding:4px 6px;font-size:10px;text-align:left}.board-hover-menu button:hover,.board-hover-menu button:focus-visible,.board-stack-menu button:hover,.board-stack-menu button:focus-visible{background:#60a5fa40;outline:1px solid rgba(96,165,250,.6);outline-offset:-1px}.board-inline-actions{display:grid;gap:4px}.board-target-hint{margin:0;font-size:12px;color:var(--color-accent-soft)}.board-stack-visual{position:relative;width:124px;height:120px}.board-stack-visual-stage{width:120px;height:120px}.board-stack-visual-resting{height:120px;min-height:120px}.board-stack-layer{position:absolute;left:0;top:0;width:90px;height:120px;overflow:visible}.board-stack-frame{position:relative;width:90px;height:120px;padding:4px 0;box-sizing:border-box;border-radius:var(--radius-sm);overflow:hidden}.board-stack-layer-top .board-stack-frame{overflow:visible}.board-stack-slice-hitbox{position:absolute;right:0;top:0;width:10px;height:100%;z-index:2}.board-stack-layer-top .board-stack-top-menu{display:none}.board-stack-layer-top:hover .board-stack-top-menu{display:flex}.board-stack-visual-resting .board-stack-layer-top:has(.board-stack-resting-wrap:hover) .board-stack-top-menu,.board-stack-visual-resting .board-stack-layer-top:has(.board-stack-top-menu:hover) .board-stack-top-menu{display:flex}.board-stack-visual-resting .board-stack-layer-top .board-stack-top-menu{pointer-events:auto;bottom:calc(100% - 23px)}.board-stack-visual-resting .board-stack-layer-top .board-stack-top-menu:after{height:140px;bottom:-140px}.board-stack-frame{transition:transform .12s ease}.board-stack-layer-top:hover .board-stack-frame{transform:none}.board-stack-layer:not(.board-stack-layer-top) .board-stack-slice-menu{display:none}.board-stack-layer:not(.board-stack-layer-top):has(.board-stack-slice-hitbox:hover) .board-stack-frame,.board-stack-layer:not(.board-stack-layer-top):has(.board-stack-slice-menu:hover) .board-stack-frame{transform:none}.board-field-opponent .board-stack-layer-top:hover .board-stack-frame{transform:none}.board-field-opponent .board-stack-layer:not(.board-stack-layer-top):has(.board-stack-slice-hitbox:hover) .board-stack-frame,.board-field-opponent .board-stack-layer:not(.board-stack-layer-top):has(.board-stack-slice-menu:hover) .board-stack-frame{transform:none}.board-stack-layer:not(.board-stack-layer-top):has(.board-stack-slice-hitbox:hover) .board-stack-slice-menu,.board-stack-layer:not(.board-stack-layer-top):has(.board-stack-slice-menu:hover) .board-stack-slice-menu{display:flex}.board-stack-visual-resting .board-stack-layer:not(.board-stack-layer-top):hover .board-stack-slice-menu{display:flex}.board-stack-visual:has(.board-stack-slice-hitbox:hover) .board-stack-layer-top .board-stack-top-menu,.board-stack-visual:has(.board-stack-slice-menu:hover) .board-stack-layer-top .board-stack-top-menu{display:none}.board-stack-visual-resting:has(.board-stack-layer:not(.board-stack-layer-top):hover) .board-stack-layer-top .board-stack-top-menu{display:none}.board-stack-locked .board-stack-layer-top:hover .board-stack-frame,.board-field-opponent .board-stack-locked .board-stack-layer-top:hover .board-stack-frame{transform:none}.board-overflow-note{margin:0;font-size:12px;color:var(--color-warning-light)}.board-utility-dock{display:grid;gap:12px}.board-utility-dock h3{margin:0}.board-utility-section{border:1px solid #475569;border-radius:var(--radius-md);padding:10px;background:var(--color-bg-sunken);display:grid;gap:8px}.board-utility-section h4{margin:0}.board-list{margin:0;padding-left:16px;display:grid;gap:4px}.board-damage-grid{display:grid;gap:8px}.board-damage-card{border:1px solid #334155;border-radius:var(--radius-sm);background:var(--color-bg-base);padding:8px;display:grid;gap:6px}.board-damage-card p{margin:0}.board-custom-damage{display:grid;gap:6px;grid-template-columns:minmax(0,1fr) auto}.board-damage-warning{border-color:var(--color-danger)}.board-warning-text{color:#fca5a5;font-weight:600}.app:has(.viewport-16-9){padding:0;min-height:100vh;display:flex;align-items:center;justify-content:center;background:#000}.viewport-16-9{aspect-ratio:16 / 9;width:min(100vw,177.78vh);height:min(100vh,56.25vw);min-width:0;min-height:0;margin:0 auto;overflow:hidden;background:var(--color-bg-base);flex-shrink:0}.viewport-16-9-inner{transform-origin:0 0;display:flex;flex-direction:column;min-height:0}.viewport-16-9-inner .game-board-root{flex:1;min-height:0;display:flex;flex-direction:column}.viewport-16-9-inner .game-board-layout{flex:1;min-height:0}.viewport-16-9-inner .deck-builder{flex:1;min-height:0;height:100%}.viewport-16-9-inner:has(.main-menu-page){display:flex;align-items:center;justify-content:center;padding:40px 24px}.viewport-16-9-inner .multiplayer-page-layout{flex:1;min-height:0;display:flex;flex-direction:column}.multiplayer-page-layout>*{flex:1;min-height:0}.multiplayer-page-layout .multiplayer-centered-wrap{display:flex;align-items:center;justify-content:center}.multiplayer-game-wrap{display:flex;flex-direction:column;min-height:0}.multiplayer-game-wrap>*:last-child{flex:1;min-height:0}.multiplayer-page-layout>section.panel{align-self:center;max-width:560px;width:100%;display:flex;flex-direction:column;align-items:stretch;justify-content:center}.multiplayer-page-layout>section.multiplayer-entry-panel,.multiplayer-page-layout>section.multiplayer-lobby-panel{max-width:900px}
