:root{--bg:#0b0912;--bg-glow:#7c3aed2e;--surface:#14111d;--surface-2:#1d1929;--surface-3:#282338;--border:#2c2640;--border-strong:#3d3556;--text:#a8a2bc;--text-h:#f4f1fb;--accent:#8b5cf6;--accent-2:#22d3ee;--accent-soft:#8b5cf629;--accent-grad:linear-gradient(135deg, #8b5cf6, #22d3ee);--foil:#38bdf8;--foil-soft:#38bdf829;--metal:#cbd5e1;--metal-soft:#cbd5e129;--owned:#22c55e;--danger:#f87171;--warn:#f5b041;--shadow:0 10px 30px #00000073;--radius:14px;--radius-sm:9px;--sans:"Inter", system-ui, "Segoe UI", Roboto, sans-serif;--display:"Space Grotesk", "Inter", system-ui, sans-serif;--d-fury:#ff5d63;--d-calm:#3ecf8e;--d-mind:#5aa2ff;--d-body:#ff9b4a;--d-chaos:#b37bff;--d-order:#f2cc4d;--d-colorless:#a09aae;--r-common:#9aa3b2;--r-uncommon:#3ecf8e;--r-rare:#5aa2ff;--r-epic:#b37bff;--r-showcase:#f2cc4d;--r-promo:#ff7ac6;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font:15px/1.5 var(--sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}@media (prefers-color-scheme:light){:root{--bg:#f5f3fa;--bg-glow:#7c3aed1a;--surface:#fff;--surface-2:#f0edf7;--surface-3:#e6e1f1;--border:#e0daec;--border-strong:#c9c0dc;--text:#5b5470;--text-h:#15111f;--accent:#7c3aed;--accent-2:#0891b2;--accent-soft:#7c3aed1a;--accent-grad:linear-gradient(135deg, #7c3aed, #0891b2);--foil:#0284c7;--foil-soft:#0284c71a;--metal:#475569;--metal-soft:#4755691f;--owned:#16a34a;--danger:#dc2626;--warn:#b7791f;--shadow:0 10px 30px #28145024;--d-fury:#d92d35;--d-calm:#128a55;--d-mind:#1f6fe0;--d-body:#d0650f;--d-chaos:#8040d9;--d-order:#9a7400;--d-colorless:#6b6580;--r-common:#7a8394;--r-showcase:#b88a00;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}*{box-sizing:border-box}body{background:radial-gradient(900px 500px at 85% -10%, var(--bg-glow), transparent 70%), radial-gradient(700px 420px at -10% 10%, #22d3ee12, transparent 70%), var(--bg);background-attachment:fixed;min-height:100vh;margin:0}h1,h2,h3{font-family:var(--display);color:var(--text-h);letter-spacing:-.02em;margin:0}h1{font-size:clamp(1.7rem,3.5vw,2.4rem);line-height:1.1}h2{font-size:1.25rem}h3{font-size:1rem}p{margin:0}a{color:inherit;text-decoration:none}img{display:block}button,input,select,textarea{font:inherit;color:inherit}button,.button{cursor:pointer;border:1px solid var(--border);background:var(--surface-2);border-radius:var(--radius-sm);color:var(--text-h);justify-content:center;align-items:center;gap:6px;padding:7px 13px;font-weight:500;transition:border-color .15s,background .15s,transform .1s;display:inline-flex}button:hover,.button:hover{border-color:var(--accent)}button:active,.button:active{transform:translateY(1px)}button:disabled{opacity:.5;cursor:default;transform:none}button.primary,.button.primary{background:var(--accent-grad);color:#fff;border-color:#0000;font-weight:600;box-shadow:0 6px 18px #8b5cf64d}button.primary:hover,.button.primary:hover{filter:brightness(1.08)}button.ghost{background:0 0}button.active{border-color:var(--accent);background:var(--accent-soft)}button.danger:hover,.icon-btn.danger:hover{border-color:var(--danger);color:var(--danger)}.icon-btn{flex:none;width:34px;height:34px;padding:0}.link-btn{color:var(--accent);background:0 0;border:0;align-items:center;gap:4px;padding:0;font-size:.9rem;font-weight:500;display:inline-flex}.link-btn:hover{text-decoration:underline}input[type=text],input[type=email],input[type=password],input[type=search],select,textarea{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text-h);padding:9px 12px}select{width:auto;padding:7px 10px}textarea{resize:vertical;font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:.85rem}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}kbd{font:600 .75rem var(--sans);background:var(--surface-3);border:1px solid var(--border);color:var(--text-h);border-radius:5px;padding:1px 6px}.muted{color:var(--text)}.small{font-size:.82rem}.center{text-align:center;padding:32px 0}.error{color:var(--danger)}.error.banner{border:1px solid var(--danger);border-radius:var(--radius-sm);margin-bottom:14px;padding:10px 14px}.info,.ok-text{color:var(--owned)}.accent-text{background:var(--accent-grad);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:6px;font-size:.75rem;font-weight:600}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.pill{background:var(--surface-3);color:var(--text-h);border-radius:999px;align-items:center;padding:2px 9px;font-size:.75rem;font-weight:600;display:inline-flex}.pill.paper{color:var(--owned);background:#22c55e2e}.pill.sim{background:var(--foil-soft);color:var(--foil)}.skeleton{background:linear-gradient(100deg, var(--surface) 30%, var(--surface-2) 50%, var(--surface) 70%);background-size:300% 100%;border-color:#0000;animation:1.4s linear infinite shimmer}@keyframes shimmer{to{background-position:-150% 0}}.progress{background:var(--surface-3);border-radius:999px;flex:1;min-width:60px;height:6px;overflow:hidden}.progress div{border-radius:inherit;background:var(--accent-grad);height:100%;transition:width .3s}.progress.big{height:9px}.empty{text-align:center;color:var(--text);justify-items:center;gap:10px;padding:48px 16px;display:grid}.row-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.brand{font-family:var(--display);letter-spacing:-.03em;color:var(--text-h);align-items:center;gap:10px;font-weight:700;display:inline-flex}.brand-word span{background:var(--accent-grad);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.brand.small{font-size:1.2rem}.topbar{z-index:20;background:color-mix(in srgb, var(--bg) 78%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--border);align-items:center;gap:20px;padding:10px clamp(16px,3vw,32px);display:flex;position:sticky;top:0}.topbar nav{gap:4px;display:flex}.topbar nav a{border-radius:var(--radius-sm);color:var(--text);align-items:center;gap:7px;padding:7px 12px;font-weight:500;display:inline-flex}.topbar nav a:hover{color:var(--text-h);background:var(--surface-2)}.topbar nav a.active{color:var(--text-h);background:var(--accent-soft)}.topbar nav a.active svg{color:var(--accent)}.account{align-items:center;gap:8px;margin-left:auto;display:flex}.avatar{background:var(--accent-grad);color:#fff;border-radius:50%;place-items:center;width:32px;height:32px;font-size:.9rem;font-weight:700;display:grid}@media (width<=640px){.topbar{gap:10px}.topbar .brand-word,.topbar nav a span{display:none}.topbar nav a{padding:8px 10px}}.store-error{border:1px solid var(--danger);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--danger) 10%, var(--surface));max-width:1320px;color:var(--danger);align-items:center;gap:10px;margin:12px auto 0;padding:8px 8px 8px 14px;display:flex}.store-error span{flex:1}.page{max-width:1320px;margin:0 auto;padding:24px clamp(16px,3vw,32px) 64px}.page-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.card-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;overflow:hidden}.domain-icons{vertical-align:middle;gap:3px;display:inline-flex}.domain-icon{flex:none;display:block}.energy{min-width:24px;height:24px;font:700 .8rem var(--display);color:#fff;background:radial-gradient(circle at 35% 30%, color-mix(in srgb, var(--accent-d,var(--accent)) 85%, #fff), var(--accent-d,var(--accent)) 70%);text-shadow:0 1px 2px #00000080;border-radius:50%;flex:none;place-items:center;padding:0 4px;display:inline-grid;box-shadow:0 0 0 2px #00000059,0 2px 6px #0006}.thumb{aspect-ratio:744/1039;background:var(--surface-2);border-radius:10px;display:block;position:relative;overflow:hidden}.thumb img{object-fit:cover;width:100%;height:100%;transition:filter .2s,transform .25s}.thumb.dim img{filter:grayscale(.85)brightness(.55)}.thumb-missing{text-align:center;place-items:center;height:100%;padding:8px;font-size:.8rem;display:grid}.thumb.mini{border-radius:5px;flex:none;width:34px}.qty-badge{color:#fff;font:700 .8rem var(--display);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a0812d1;border-radius:999px;padding:1px 8px;position:absolute;top:6px;right:6px}.gem{background:var(--r-common);border-radius:2px;flex:none;width:9px;height:9px;display:inline-block;transform:rotate(45deg)}.gem.uncommon{background:var(--r-uncommon)}.gem.rare{background:var(--r-rare)}.gem.epic{background:var(--r-epic)}.gem.showcase{background:linear-gradient(135deg, var(--r-showcase), #ff7ac6, #5aa2ff)}.gem.promo{background:var(--r-promo)}.card-preview{z-index:100;pointer-events:none;border-radius:16px;width:300px;animation:.12s ease-out preview-in;position:fixed;top:0;left:0;overflow:hidden;box-shadow:0 24px 60px #0009,0 0 0 1px #ffffff14}.card-preview img{width:100%;height:auto}@keyframes preview-in{0%{opacity:0;scale:.96}}@media (hover:none),(pointer:coarse){.card-preview{display:none}}.login{text-align:center;align-content:center;justify-items:center;gap:14px;min-height:100vh;padding:24px 16px;display:grid;position:relative;overflow:hidden}.login .brand{font-size:2.4rem}.login>*{z-index:1;position:relative}.login>.login-fan{z-index:0;opacity:.5;height:420px;position:absolute;inset:auto 0 -90px;-webkit-mask-image:linear-gradient(#000 40%,#0000);mask-image:linear-gradient(#000 40%,#0000)}.login-form{text-align:left;width:min(380px,100%);box-shadow:var(--shadow);gap:14px;padding:22px;display:grid}.login-form label{color:var(--text-h);gap:6px;font-size:.88rem;font-weight:500;display:grid}.tabs{background:var(--surface-2);border-radius:var(--radius-sm);grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.tabs button{color:var(--text);background:0 0;border:0}.tabs button.active{background:var(--surface);color:var(--text-h);box-shadow:0 1px 4px #00000040}.hero{background:radial-gradient(600px 300px at 80% 50%, #8b5cf647, transparent 70%), linear-gradient(135deg, var(--surface), var(--surface-2));border:1px solid var(--border);border-radius:22px;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:24px;min-height:340px;margin-bottom:20px;padding:clamp(20px,4vw,44px);display:grid;position:relative;overflow:hidden}.hero-text{z-index:1;gap:12px;display:grid;position:relative}.hero-sub{max-width:46ch}.hero-actions{flex-wrap:wrap;gap:10px;margin-top:6px;display:flex}.hero-actions .button{padding:10px 16px}.hero-fan{height:300px;position:relative}.hero-fan img{aspect-ratio:744/1039;object-fit:cover;transform-origin:50% 120%;width:150px;transform:translateX(-50%) rotate(calc(var(--i) * 11deg)) translateY(calc(var(--i) * var(--i) * 6px));border-radius:10px;transition:transform .3s;position:absolute;bottom:0;left:50%;box-shadow:0 16px 36px #0000008c}.hero:hover .hero-fan img{transform:translateX(-50%) rotate(calc(var(--i) * 15deg)) translateY(calc(var(--i) * var(--i) * 8px - 8px))}@media (width<=760px){.hero{grid-template-columns:1fr}.hero-fan{height:200px}.hero-fan img{width:100px}}.stat-row{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-bottom:32px;display:grid}.stat{align-items:center;gap:14px;padding:16px;display:flex}.stat-icon{background:var(--accent-soft);width:42px;height:42px;color:var(--accent);border-radius:12px;flex:none;place-items:center;display:grid}.stat-text{display:grid}.stat-text strong{font:700 1.5rem/1.1 var(--display);color:var(--text-h)}.home-section{margin-bottom:36px}.section-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.strip{scrollbar-width:thin;grid-auto-columns:128px;grid-auto-flow:column;gap:12px;padding-bottom:8px;display:grid;overflow-x:auto}.strip-card{grid-template-columns:minmax(0,1fr);gap:6px;min-width:0;display:grid}.strip-card:hover .thumb img,.visual-card:hover .thumb img,.tile:hover .thumb img{transform:scale(1.04)}.finish-tag{text-transform:capitalize;color:#fff;background:linear-gradient(135deg,#38bdf8,#a78bfa,#f472b6);border-radius:999px;padding:1px 7px;font-size:.7rem;font-weight:700;position:absolute;bottom:6px;left:6px}.finish-tag.metal{color:#111;background:linear-gradient(135deg,#94a3b8,#e2e8f0,#64748b)}.empty-cta{border-style:dashed;align-items:center;gap:14px;padding:20px;display:flex}.empty-cta>span{display:grid}.empty-cta svg{color:var(--accent)}.empty-cta:hover{border-color:var(--accent)}.set-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;display:grid}.set-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);transition:border-color .15s,transform .15s;display:grid;overflow:hidden}.set-card:hover{border-color:var(--accent);transform:translateY(-2px)}.set-card-art{background:radial-gradient(circle at 50% 120%, #8b5cf659, transparent 70%), var(--surface-2);height:130px;position:relative;overflow:hidden}.set-card-art img{aspect-ratio:744/1039;object-fit:cover;width:84px;transform:translateX(calc(-50% + var(--i) * 58px)) rotate(calc(var(--i) * 9deg));border-radius:7px;transition:transform .25s;position:absolute;top:22px;left:50%;box-shadow:0 10px 22px #00000080}.set-card:hover .set-card-art img{transform:translateX(calc(-50% + var(--i) * 64px)) rotate(calc(var(--i) * 12deg)) translateY(-4px)}.set-card-body{gap:6px;padding:12px 14px 14px;display:grid}.set-card-body strong{color:var(--text-h);font-family:var(--display)}.set-code{background:var(--surface-3);font:700 .7rem var(--display);letter-spacing:.06em;color:var(--text-h);border-radius:6px;justify-self:start;align-items:center;gap:4px;padding:1px 7px;display:inline-flex}.deck-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.deck-tile{--deck-accent:var(--accent);border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);grid-template-rows:auto 1fr;transition:transform .15s,border-color .15s,box-shadow .15s;display:grid;overflow:hidden}.deck-tile.skeleton{height:250px}.deck-tile:hover{border-color:var(--deck-accent);transform:translateY(-3px);box-shadow:0 14px 32px #00000059}.deck-tile-art{height:150px;position:relative;overflow:hidden}.deck-tile-art img{object-fit:cover;object-position:center 22%;width:100%;height:100%;transition:transform .4s}.deck-tile:hover .deck-tile-art img{transform:scale(1.05)}.deck-tile-art:after{content:"";background:linear-gradient(180deg, transparent 45%, var(--surface));position:absolute;inset:0}.deck-tile-blank{background:radial-gradient(circle at 50% 100%, color-mix(in srgb, var(--deck-accent) 40%, transparent), transparent 70%), var(--surface-2);height:100%}.deck-tile-art .pill{z-index:1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);position:absolute;top:10px;right:10px}.deck-tile-body{align-content:start;gap:4px;padding:2px 16px 16px;display:grid}.deck-tile-title{justify-content:space-between;align-items:center;gap:8px;display:flex}.deck-name{font:600 1.1rem var(--display);color:var(--text-h);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.deck-tile-progress{align-items:center;gap:10px;margin-top:8px;display:flex}.deck-tile-progress .progress div{background:var(--deck-accent)}.new-deck{gap:14px;margin-bottom:24px;padding:20px;display:grid}.new-deck .row{flex-wrap:wrap;gap:10px;display:flex}.new-deck .row input{flex:1;min-width:200px}.stack{gap:6px;display:grid}.import-preview{gap:10px;display:grid}.import-preview p{flex-wrap:wrap;gap:6px;display:flex}.warn{border:1px solid var(--warn);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--warn) 10%, transparent);padding:12px 14px;font-size:.88rem}.warn ul{margin:6px 0 0;padding-left:18px}.set-picker{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.set-chip{border:1px solid var(--border);background:var(--surface);color:var(--text);white-space:nowrap;border-radius:999px;flex:none;align-items:center;gap:8px;padding:6px 12px 6px 6px;font-weight:500;display:inline-flex}.set-chip:hover{border-color:var(--border-strong);color:var(--text-h)}.set-chip.active{border-color:var(--accent);background:var(--accent-soft);color:var(--text-h)}.set-chip.active .set-code{background:var(--accent);color:#fff}.set-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.set-progress{align-items:center;gap:14px;display:flex}.ring{--pct:0;background:radial-gradient(closest-side, var(--bg) 76%, transparent 78%), conic-gradient(var(--accent) calc(var(--pct) * 1%), var(--accent-2) calc(var(--pct) * 1%), var(--surface-3) 0);width:62px;height:62px;font:700 .9rem var(--display);color:var(--text-h);border-radius:50%;place-items:center;display:grid}.set-progress-text{line-height:1.3;display:grid}.set-progress-text strong{font:700 1.2rem var(--display);color:var(--text-h)}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;display:flex}.search{flex:280px;align-items:center;display:flex;position:relative}.search svg{color:var(--text);pointer-events:none;position:absolute;left:11px}.search input{padding-left:36px}.segmented{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);gap:2px;padding:3px;display:inline-flex}.segmented button{color:var(--text);background:0 0;border:0;border-radius:6px;padding:5px 11px}.segmented button.active{background:var(--surface);color:var(--text-h);box-shadow:0 1px 4px #0000004d}.select{align-items:center;gap:6px;display:inline-flex}.filter-btn{position:relative}.count-dot{background:var(--accent);color:#fff;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.7rem;font-weight:700;display:inline-grid}.filter-strip{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.domain-chip{background:var(--surface);color:var(--text);border-radius:999px;padding:5px 11px 5px 7px}.domain-chip.active{color:var(--text-h);background:var(--surface-3);border-color:var(--text-h)}.filters{gap:12px;margin-bottom:12px;padding:16px;animation:.15s ease-out drop-in;display:grid}@keyframes drop-in{0%{opacity:0;transform:translateY(-4px)}}.filter-group{grid-template-columns:72px 1fr;align-items:start;gap:10px;display:grid}.filter-label{text-transform:uppercase;letter-spacing:.08em;padding-top:5px;font-size:.78rem;font-weight:600}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{background:var(--surface-2);color:var(--text);border-radius:999px;padding:4px 11px;font-size:.85rem}.chip.active{color:var(--text-h)}.energy-chip{min-width:38px;font-family:var(--display);font-weight:700}.result-line{margin-bottom:12px}@media (width<=640px){.result-line .hint{display:none}}.grid{grid-template-columns:repeat(auto-fill,minmax(176px,1fr));gap:16px;display:grid}@media (width<=480px){.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}.tile{border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);grid-template-rows:auto auto 1fr;grid-template-columns:minmax(0,1fr);gap:8px;padding:8px;transition:border-color .15s,box-shadow .15s;display:grid}.tile.skeleton{aspect-ratio:.62}.tile.owned{border-color:color-mix(in srgb, var(--owned) 45%, var(--border))}.tile:hover{box-shadow:0 10px 26px #0000004d}.tile .thumb .energy{position:absolute;top:6px;left:6px}.badge{color:#fff;background:linear-gradient(135deg,#8b5cf6,#ec4899);border-radius:999px;padding:2px 8px;font-size:.68rem;font-weight:700;position:absolute;bottom:6px;left:6px}.owned-count{background:var(--owned);color:#04120a;font:700 .78rem var(--display);border-radius:999px;padding:1px 8px;position:absolute;top:6px;right:6px}.tile-info{gap:2px;min-width:0;padding:0 2px;display:grid}.tile-meta{color:var(--text);align-items:center;gap:6px;font-size:.75rem;display:inline-flex}.finishes{flex-direction:column;align-self:end;gap:5px;display:flex}.finish{gap:4px;display:flex}.finish-add{color:var(--text);border-radius:7px;flex:1;justify-content:space-between;padding:5px 9px;font-size:.8rem}.finish-add strong{font-family:var(--display);color:var(--text-h)}.finish.has .finish-add{border-color:var(--owned);background:color-mix(in srgb, var(--owned) 14%, transparent);color:var(--text-h)}.finish.foil .finish-add span{background:linear-gradient(90deg,#38bdf8,#a78bfa,#f472b6);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-weight:600}.finish.foil.has .finish-add{border-color:var(--foil);background:var(--foil-soft)}.finish.metal.has .finish-add{border-color:var(--metal);background:var(--metal-soft)}.finish-remove{border-radius:7px;flex:none;width:32px;padding:0;font-weight:700}.more{justify-content:center;margin-top:24px;display:flex}.quick-add{position:relative}.quick-add-panel{z-index:30;width:min(420px,100vw - 32px);box-shadow:var(--shadow);gap:8px;padding:14px;animation:.15s ease-out drop-in;display:grid;position:absolute;top:calc(100% + 8px);right:0}.quick-add-panel input{font:600 1.05rem var(--display)}.quick-log{gap:6px;max-height:300px;margin:4px 0 0;padding:0;list-style:none;display:grid;overflow-y:auto}.quick-log li{border-radius:var(--radius-sm);background:var(--surface-2);align-items:center;gap:10px;padding:6px;animation:.2s ease-out drop-in;display:flex}.quick-log-text{flex:1;min-width:0;display:grid}.quick-log .icon-btn{width:28px;height:28px}@media (width<=640px){.quick-add-panel{width:auto;position:fixed;top:70px;left:16px;right:16px}}.deck-hero{--deck-accent:var(--accent);border:1px solid var(--border);background:var(--surface);border-radius:22px;min-height:220px;margin-bottom:16px;position:relative;overflow:hidden}.deck-hero-bg{object-fit:cover;object-position:center 25%;filter:blur(18px)saturate(1.3);opacity:.55;width:100%;height:100%;position:absolute;inset:0;transform:scale(1.2)}.deck-hero:after{content:"";background:linear-gradient(90deg, color-mix(in srgb, var(--surface) 92%, transparent) 25%, color-mix(in srgb, var(--surface) 55%, transparent)), radial-gradient(500px 220px at 0% 100%, color-mix(in srgb, var(--deck-accent) 30%, transparent), transparent 70%);position:absolute;inset:0}.deck-hero-inner{z-index:1;align-items:center;gap:clamp(16px,3vw,32px);padding:clamp(16px,3vw,28px);display:flex;position:relative}.deck-hero-cards{flex:none;display:flex}.hero-card{outline:2px solid color-mix(in srgb, var(--deck-accent) 70%, transparent);outline-offset:-1px;border-radius:12px;width:128px;box-shadow:0 16px 34px #0000008c}.hero-card.champion{width:104px;margin-top:36px;margin-left:-28px;transform:rotate(6deg)}.deck-hero-text{flex:1;gap:8px;min-width:0;display:grid}.back-link{color:var(--text)}.back-link:hover{color:var(--text-h)}.deck-title{border-radius:var(--radius-sm);width:100%;font:700 clamp(1.5rem, 3vw, 2.2rem) var(--display);letter-spacing:-.02em;color:var(--text-h);background:0 0;border:1px solid #0000;margin-left:-7px;padding:2px 6px}.deck-title:hover{border-color:var(--border)}.deck-title:focus{border-color:var(--accent);background:var(--surface-2);outline:none}.deck-hero-meta{color:var(--text-h);align-items:center;gap:8px;font-weight:500;display:flex}.deck-hero-progress{flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:6px;display:flex}.deck-hero-progress .progress{flex:180px;max-width:320px}.deck-hero-progress strong{color:var(--text-h)}.deck-hero-progress .ok-text{color:var(--owned)}@media (width<=640px){.deck-hero-inner{flex-direction:column;align-items:flex-start}.hero-card{width:96px}.hero-card.champion{width:80px}}.deck-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px;display:flex}.push-right{margin-left:auto}.hint-line{margin-bottom:12px}.deck-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:20px;display:grid}@media (width<=900px){.deck-layout{grid-template-columns:1fr}}.deck-cards{gap:22px;min-width:0;display:grid}.deck-section h3{border-bottom:1px solid var(--border);align-items:baseline;gap:8px;margin-bottom:10px;padding-bottom:6px;display:flex}.deck-visual{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:14px 12px;display:grid}.visual-card{grid-template-columns:minmax(0,1fr);gap:5px;min-width:0;display:grid}.visual-card .card-name{padding:0 2px}.check-btn{min-width:44px;font:700 .8rem var(--display);color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a0812d1;border-color:#fff3;border-radius:999px;padding:3px 10px;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.check-btn:active{transform:translate(-50%)translateY(1px)}.check-btn.on{background:var(--owned);border-color:var(--owned);color:#04120a}.visual-steppers{gap:6px;display:flex;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.visual-steppers button{color:#fff;background:#0a0812d1;border-color:#fff3;border-radius:50%;width:30px;height:30px;padding:0}.deck-list-rows{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin:0;padding:0;list-style:none;overflow:hidden}.deck-row{border-top:1px solid var(--border);align-items:center;gap:10px;padding:7px 12px;display:flex}.deck-row:first-child{border-top:0}.deck-row:hover{background:var(--surface-2)}.deck-row input[type=checkbox]{width:18px;height:18px;accent-color:var(--owned);flex:none}.deck-row .qty{min-width:24px;font:700 .9rem var(--display);color:var(--text-h);text-align:center}.card-label{flex:1;min-width:0;display:grid}.card-label-top{align-items:center;gap:8px;min-width:0;display:flex}.card-label .energy{min-width:20px;height:20px;font-size:.72rem}.own{font:600 .85rem var(--display);color:var(--warn)}.own.ok{color:var(--owned)}.steppers{align-items:center;gap:4px;display:inline-flex}.steppers button{width:28px;height:28px;padding:0}.add-card{position:relative}.add-card-results{z-index:15;box-shadow:var(--shadow);max-height:420px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.add-card-results.dragging{opacity:0;pointer-events:none}.add-card-results>li>button{text-align:left;background:0 0;border:0;justify-content:flex-start;gap:10px;width:100%;padding:6px 8px}.add-card-results>li>button:hover{background:var(--surface-2)}.deck-side{gap:14px;min-width:0;max-height:calc(100vh - 88px);display:grid;position:sticky;top:72px;overflow-y:auto}.deck-stats{gap:14px;padding:18px;display:grid}@media (width<=900px){.deck-side{max-height:none;position:static;overflow:visible}}.counts{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.count{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);text-align:center;justify-items:center;padding:10px 6px;display:grid}.count strong{font:700 1.4rem var(--display);color:var(--warn)}.count.ok strong{color:var(--owned)}.count.ok{border-color:color-mix(in srgb, var(--owned) 40%, var(--border))}.curve{grid-template-columns:repeat(8,1fr);align-items:end;gap:4px;height:120px;display:grid}.curve-col{grid-template-rows:auto 1fr auto;place-items:end center;gap:3px;height:100%;display:grid}.curve-bar{background:var(--accent-grad);border-radius:5px 5px 2px 2px;width:100%;min-height:2px;display:block}.curve-value{font:600 .72rem var(--display);color:var(--text-h)}.curve-cost{font:700 .75rem var(--display)}.bars{gap:6px;margin:0;padding:0;list-style:none;display:grid}.bars li{grid-template-columns:110px 1fr 28px;align-items:center;gap:8px;font-size:.85rem;display:grid}.bar-label{white-space:nowrap;align-items:center;gap:6px;display:inline-flex;overflow:hidden}.bar-track{background:var(--surface-3);border-radius:999px;height:8px;overflow:hidden}.bar-fill{border-radius:inherit;background:var(--accent);height:100%;display:block}.bar-value{text-align:right;font:600 .82rem var(--display);color:var(--text-h)}.problems{gap:6px;margin:0;padding:0;font-size:.85rem;list-style:none;display:grid}.problems li{color:var(--warn);align-items:flex-start;gap:6px;display:flex}.problems svg{flex:none;margin-top:3px}.legal{align-items:center;gap:6px;font-weight:600;display:inline-flex}.harness-h{margin:32px 0 12px}.arts-badge{z-index:1;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a0812d1;border-color:#ffffff40;border-radius:999px;gap:4px;padding:2px 8px;font-size:.7rem;font-weight:700;position:absolute;top:6px;left:6px}.arts-badge.owns-other{background:linear-gradient(135deg,#8b5cf6,#22d3ee);border-color:#0000;box-shadow:0 0 0 2px #22d3ee59}.arts-badge.inline{color:var(--text-h);background:var(--surface-2);border-color:var(--border);flex:none;position:static}.arts-badge.inline.owns-other{color:#fff;background:linear-gradient(135deg,#8b5cf6,#22d3ee)}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#05030aa6;place-items:center;padding:16px;animation:.12s ease-out drop-in;display:grid;position:fixed;inset:0}.modal{width:min(720px,100%);max-height:calc(100vh - 32px);box-shadow:var(--shadow);gap:12px;padding:18px;display:grid;overflow-y:auto}.modal-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.modal-head .card-name{font:700 1.2rem var(--display)}.art-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:14px;display:grid}.art-option{border-radius:var(--radius);background:var(--surface-2);text-align:left;justify-content:stretch;gap:6px;padding:6px;display:grid}.art-option.selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.art-label{font-size:.82rem;display:grid}.selected-mark{background:var(--accent);color:#fff;border-radius:50%;place-items:center;width:24px;height:24px;display:grid;position:absolute;top:6px;left:6px}.conflict-chip{max-width:100%;color:var(--warn);background:color-mix(in srgb, var(--warn) 14%, transparent);border-radius:10px;justify-self:start;padding:2px 8px;font-size:.72rem;font-weight:600;line-height:1.3;display:block}@media (width<=1020px){.topbar nav a span{display:none}.topbar nav a{padding:8px 10px}}.card-link:hover{text-decoration:underline}.import-panel,.export-panel{gap:12px;margin-bottom:18px;padding:20px;display:grid}.export-panel{grid-template-columns:1fr auto;align-items:center}.import-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.import-head .button{flex:none}.import-summary{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.import-summary .primary{margin-left:auto}.pill.ok{background:color-mix(in srgb, var(--owned) 18%, transparent);color:var(--owned)}.pill.warn-pill{background:color-mix(in srgb, var(--warn) 18%, transparent);color:var(--warn)}.pill.bad{background:color-mix(in srgb, var(--danger) 18%, transparent);color:var(--danger)}.warn-text{color:var(--warn)}.import-rows{border:1px solid var(--border);border-radius:var(--radius);max-height:480px;margin:0;padding:0;list-style:none;overflow-y:auto}.import-row{border-top:1px solid var(--border);align-items:center;gap:10px;padding:6px 12px;display:flex}.import-row:first-child{border-top:0}.import-row.unmatched{background:color-mix(in srgb, var(--danger) 6%, transparent)}.import-row.fixed{background:color-mix(in srgb, var(--warn) 6%, transparent)}.import-row-main{flex:1;min-width:0;display:grid}.import-qty{font:700 .9rem var(--display);color:var(--text-h)}.empty-thumb{aspect-ratio:744/1039;background:var(--surface-3)}.card-hero{grid-template-columns:minmax(220px,340px) 1fr;align-items:start;gap:clamp(20px,4vw,44px);margin-bottom:32px;display:grid}@media (width<=720px){.card-hero{grid-template-columns:1fr}.card-hero-art{max-width:300px}}.card-hero-art img{border-radius:18px;width:100%;box-shadow:0 24px 50px #00000080}.card-hero-info{gap:14px;display:grid}.card-hero-info h1 .card-name{white-space:normal}.card-facts{color:var(--text-h);flex-wrap:wrap;align-items:center;gap:8px 16px;font-weight:500;display:flex}.fact{align-items:center;gap:6px;display:inline-flex}.rules-text{border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);color:var(--text-h);padding:14px 16px;line-height:1.6}.rules-text .domain-icon{vertical-align:-2px;display:inline-block}.rt-energy{background:var(--surface-3);min-width:18px;height:18px;font:700 .72rem var(--display);vertical-align:1px;border-radius:50%;place-items:center;padding:0 4px;display:inline-grid}.rt-might,.rt-word{color:var(--accent);font-weight:600}.card-owned{align-items:baseline;gap:8px;display:flex}.card-owned strong{font:700 1.8rem var(--display);color:var(--text-h)}.card-decks ul{gap:4px;margin:6px 0 0;padding:0;list-style:none;display:grid}.card-decks li{align-items:center;gap:8px;display:flex}.card-decks a{color:var(--text-h);align-items:center;gap:6px;font-weight:500;display:inline-flex}.qty-badge.spare{background:var(--owned);color:#04120a}.binder-grid .thumb .energy{position:absolute;top:6px;left:6px}.log-match{gap:14px;margin-bottom:20px;padding:18px;display:grid}.log-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.log-grid select{width:100%}.log-legend{align-items:center;gap:6px;display:inline-flex}.picked-legend{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);align-items:center;gap:10px;padding:4px 6px;display:flex}.picked-legend .card-name{flex:1}.log-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.result-btn{min-width:110px;padding:10px 16px;font-weight:700}.result-btn.win{background:color-mix(in srgb, var(--owned) 22%, var(--surface-2));border-color:var(--owned)}.result-btn.loss{background:color-mix(in srgb, var(--danger) 18%, var(--surface-2));border-color:var(--danger)}.match-columns{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;margin-bottom:32px;display:grid}.match-table{padding:16px}.match-table h3{margin-bottom:10px}.match-table ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.record-row{grid-template-columns:minmax(0,1fr) 90px 54px 44px;align-items:center;gap:10px;font-size:.9rem;display:grid}.record-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-h);overflow:hidden}.record-bar{background:var(--surface-3);border-radius:999px;height:8px;display:flex;overflow:hidden}.record-bar .win{background:var(--owned)}.record-bar .draw{background:var(--text)}.record-bar .loss{background:var(--danger)}.record-num{font:600 .82rem var(--display);text-align:right}.record-pct{font-family:var(--display);color:var(--text-h);text-align:right}.match-history{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin:0;padding:0;list-style:none;overflow:hidden}.history-row{border-top:1px solid var(--border);align-items:center;gap:12px;padding:10px 14px;display:flex}.history-row:first-child{border-top:0}.history-row a{color:var(--text-h);font-weight:500}.history-main{flex:1;min-width:0;display:grid}.history-main>span:first-child{flex-wrap:wrap;align-items:baseline;gap:0 4px;display:flex}.result-tag{width:30px;height:30px;font:700 .9rem var(--display);background:var(--surface-3);color:var(--text-h);border-radius:8px;flex:none;place-items:center;display:grid}.result-tag.win{background:var(--owned);color:#04120a}.result-tag.loss{background:var(--danger);color:#fff}.log-grid>*{min-width:0}.tool-row{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin:-16px 0 32px;display:grid}.tool-tile{align-items:flex-start;gap:12px;padding:14px 16px;transition:border-color .15s,transform .15s;display:flex}.tool-tile:hover{border-color:var(--accent);transform:translateY(-2px)}.tool-tile strong{color:var(--text-h);font-family:var(--display)}.thumb.landscape{aspect-ratio:1039/744}.thumb.landscape.mini{width:48px}.card-preview.landscape{width:430px}.deck-visual.landscape,.art-grid.landscape{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.pstack-card.landscape img{object-fit:contain;background:linear-gradient(160deg,#2b2346,#17122a)}.count-pill{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a0812db;border:1px solid #ffffff38;border-radius:999px;align-items:stretch;max-width:calc(100% - 10px);display:inline-flex;position:absolute;bottom:7px;left:50%;overflow:hidden;transform:translate(-50%)}.count-pill button{color:#fff;background:0 0;border:0;border-radius:0;min-width:28px;height:28px;padding:0}.count-pill button:hover:not(:disabled){background:#ffffff29}.count-pill button:disabled{opacity:.35}.count-pill .count-main{min-width:42px;font:700 .8rem var(--display);padding:0 6px}.count-pill.on{background:var(--owned);border-color:var(--owned)}.count-pill.on button{color:#04120a}.arrange-bar{flex-wrap:wrap;gap:10px 14px;margin:4px 0 14px;display:flex}.arrange-bar .field{gap:4px;min-width:150px;display:grid}.arrange-bar select{width:100%}.deck-group+.deck-group{margin-top:16px}.group-head{font:600 .82rem var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--text);align-items:baseline;gap:8px;margin:0 0 8px;display:flex}.toast-region{z-index:60;pointer-events:none;justify-content:center;padding:0 12px;display:flex;position:fixed;bottom:22px;left:0;right:0}.toast{pointer-events:auto;border-radius:var(--radius);background:var(--surface-3);border:1px solid var(--border-strong);max-width:100%;box-shadow:var(--shadow);color:var(--text-h);align-items:center;gap:10px;padding:10px 10px 10px 16px;animation:.18s ease-out toast-in;display:flex}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}.confirm-inline{color:var(--text-h);align-items:center;gap:8px;font-weight:500;display:inline-flex}.copy-missing{box-shadow:0 6px 18px #8b5cf673}.add-result{border-radius:var(--radius-sm);cursor:grab;align-items:center;gap:10px;padding:6px 8px;display:flex}.add-result:hover{background:var(--surface-2)}.add-chips{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;margin-left:auto;display:flex}.section-chip{background:var(--accent-soft);color:var(--text-h);border-color:#0000;border-radius:999px;padding:3px 11px;font-size:.78rem;font-weight:600}.section-chip:hover:not(:disabled){background:var(--accent);color:#fff}.section-chip:disabled{opacity:.35}[draggable=true]{cursor:grab}.deck-section.can-drop{outline:2px dashed color-mix(in srgb, var(--accent) 55%, transparent);outline-offset:8px;border-radius:var(--radius)}.deck-section.drop-over{outline-color:var(--accent);background:var(--accent-soft)}.drop-hint{border:1px dashed var(--border);border-radius:var(--radius-sm);text-align:center;padding:16px}.stage{background:radial-gradient(520px 340px at 50% 45%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 70%), var(--surface);place-items:center;min-height:560px;margin-bottom:20px;padding:28px 16px 24px;display:grid;position:relative;overflow:hidden}.opener{justify-items:center;gap:14px;width:100%;display:grid}.opener-hint{color:var(--text);font-size:.9rem}.pack-art{cursor:pointer;filter:drop-shadow(0 22px 34px #0000008c);background:0 0;border:0;width:min(280px,64vw);padding:0;transition:transform .2s;display:block}.pack-art:hover:not(:disabled){transform:translateY(-4px)rotate(-1deg)}.pack-art:disabled{opacity:1;cursor:default}.pack-art svg{width:100%;height:auto;display:block;overflow:visible}.pack-art.sealed{animation:3.2s ease-in-out infinite pack-float}.pack-title{font:700 25px var(--display);fill:#fff;letter-spacing:.04em;paint-order:stroke;stroke:#00000059;stroke-width:3px}.pack-sub{font:600 13px var(--display);fill:#fff;fill-opacity:.85;letter-spacing:.22em}.pack-sub.small{letter-spacing:.16em;font-size:10px}.pack-sheen{animation:3.6s ease-in-out infinite pack-sheen}.pack-top,.pack-body{transform-box:fill-box}.pack-art.tearing .pack-body{animation:.35s ease-in-out pack-shake,.55s ease-in .4s forwards pack-drop}.pack-art.tearing .pack-top{transform-origin:0 100%;animation:.35s ease-in-out pack-shake,.6s cubic-bezier(.3,.1,.6,1) .35s forwards pack-tear}@keyframes pack-float{50%{transform:translateY(-8px)}}@keyframes pack-sheen{0%,35%{transform:translate(0)skew(-14deg)}to{transform:translate(560px)skew(-14deg)}}@keyframes pack-shake{0%,to{transform:translate(0)rotate(0)}20%{transform:translate(-5px)rotate(-1.5deg)}40%{transform:translate(5px)rotate(1.5deg)}60%{transform:translate(-4px)rotate(-1deg)}80%{transform:translate(3px)rotate(.5deg)}}@keyframes pack-tear{to{opacity:0;transform:translate(70px,-150px)rotate(24deg)}}@keyframes pack-drop{to{opacity:0;transform:translateY(120px)scale(.92)}}.opener.cards{gap:18px}.card-stack-wrap{perspective:1100px;width:min(300px,70vw);position:relative}.card-stack{--mx:50%;--my:50%;--rx:0deg;--ry:0deg;aspect-ratio:744/1039;cursor:pointer;background:0 0;border:0;border-radius:18px;width:100%;padding:0;animation:.55s cubic-bezier(.2,.8,.2,1) stack-in;display:block;position:relative}.card-stack:active{transform:none}.pstack-card{background:var(--surface-2);border-radius:18px;display:block;position:absolute;inset:0;overflow:hidden;box-shadow:0 18px 40px #00000080}.pstack-card img{object-fit:cover;-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:100%;display:block}.pstack-card.edge{background:linear-gradient(160deg,#2b2346,#17122a);border:1px solid #ffffff14;box-shadow:0 6px 16px #0006}.pstack-card.edge.e1{transform:translateY(7px)scale(.975)}.pstack-card.edge.e2{transform:translateY(14px)scale(.95)}.pstack-card.behind{z-index:1}.pstack-card.top{z-index:2;transform:perspective(1100px) rotateX(var(--rx)) rotateY(var(--ry));transition:transform .12s ease-out;animation:.35s ease-out card-arrive}.card-stack.leaving .pstack-card.top{animation:.48s cubic-bezier(.45,0,.75,.35) forwards slide-up}@keyframes stack-in{0%{opacity:0;transform:translateY(160px)scale(.85)}}@keyframes card-arrive{0%{filter:brightness(1.5)}}@keyframes slide-up{to{opacity:.2;transform:translateY(-120%)rotate(-6deg)}}.glare{pointer-events:none;background:radial-gradient(circle at var(--mx) var(--my), #ffffff38, transparent 45%);position:absolute;inset:0}.holo{pointer-events:none;mix-blend-mode:color-dodge;opacity:.55;background:linear-gradient(115deg,#0000 15%,#ff5ac88c 32%,#5adcff8c 46%,#fff56e8c 60%,#966eff73 72%,#0000 86%) 0 0/260% 100%;background-position:calc(var(--mx) * 1.4) 0;animation:2.4s ease-out holo-sweep;position:absolute;inset:0}@keyframes holo-sweep{0%{opacity:.9;background-position:140% 0}}.pstack-card.top.tier-rare{box-shadow:0 0 0 2px #5aa2ff,0 0 34px 6px #5aa2ff8c}.pstack-card.top.tier-epic{animation:.35s ease-out card-arrive,1.6s ease-in-out infinite glow-pulse;box-shadow:0 0 0 2px #b37bff,0 0 46px 10px #b37bffa6}.pstack-card.top.tier-special{animation:.35s ease-out card-arrive,1.2s ease-in-out infinite glow-pulse;box-shadow:0 0 0 3px #f2cc4d,0 0 60px 16px #f2cc4db3}@keyframes glow-pulse{50%{filter:brightness(1.12)}}.fx{z-index:3;pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.fx .fx-ring{aspect-ratio:1;border:3px solid var(--fx,#fff);opacity:0;border-radius:50%;width:60%;animation:.8s ease-out ring-out;position:absolute}.fx.tier-rare{--fx:#5aa2ff}.fx.tier-epic{--fx:#c49bff}.fx.tier-special{--fx:#ffd84d}.fx .rays{aspect-ratio:1;background:repeating-conic-gradient(from 0deg, #ffd84d8c 0 6deg, transparent 6deg 18deg);opacity:0;border-radius:50%;width:190%;animation:2.2s ease-out rays-spin;position:absolute;-webkit-mask-image:radial-gradient(circle,#000 15%,#0000 62%);mask-image:radial-gradient(circle,#000 15%,#0000 62%)}.spark{clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);background:var(--fx,#fff);width:12px;height:12px;filter:drop-shadow(0 0 5px var(--fx,#fff));opacity:0;animation:spark-out .95s var(--d) cubic-bezier(.1, .7, .3, 1) forwards;position:absolute}.fx.tier-special .spark:nth-child(3n){background:#fff}.fx.tier-special .spark:nth-child(3n+1){background:#ff7ac6}@keyframes ring-out{0%{opacity:.9;transform:scale(.4)}to{opacity:0;transform:scale(2.4)}}@keyframes rays-spin{0%{opacity:.95;transform:rotate(0)scale(.6)}to{opacity:0;transform:rotate(40deg)scale(1.15)}}@keyframes spark-out{0%{opacity:1;transform:translate(0)scale(0)}60%{opacity:1}to{transform:translate(var(--x), var(--y)) scale(var(--s)) rotate(120deg);opacity:0}}.flash{z-index:4;pointer-events:none;opacity:0;background:radial-gradient(circle,#fff4c8f2,#ffd84d66 40%,#0000 70%);animation:.7s ease-out flash;position:absolute;inset:-90px}@keyframes flash{0%{opacity:.95}to{opacity:0}}.opener-meta{justify-items:center;gap:8px;min-height:92px;display:grid}.reveal-name{font:700 1.1rem var(--display);color:var(--text-h);text-align:center;animation:.4s ease-out card-arrive}.reveal-name.tier-rare{color:#7db6ff}.reveal-name.tier-epic{color:#c49bff}.reveal-name.tier-special{background:linear-gradient(90deg,#ffd84d,#ff7ac6,#7db6ff);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.pips{gap:5px;display:flex}.pip{background:var(--surface-3);border-radius:50%;width:8px;height:8px}.pip.done{background:var(--accent)}.pip.now{background:var(--text-h);transform:scale(1.35)}.pack-summary-view{gap:22px;width:100%;max-width:980px;animation:.4s ease-out stack-in;display:grid}.summary-best{align-items:center;gap:clamp(18px,4vw,40px);display:flex}.summary-card{border-radius:14px;flex:none;width:min(220px,40vw)}.summary-card .thumb{border-radius:14px}.summary-text{gap:8px;min-width:0;display:grid}.summary-text h2{font-size:clamp(1.3rem,3vw,1.9rem)}.score{color:var(--text-h);align-items:center;gap:8px;display:inline-flex}.score strong{font:700 1.5rem var(--display)}.tier-chip.rare{color:#7db6ff}.tier-chip.epic{color:#c49bff}.tier-chip.special{color:#ffd84d}.tier-chip.foil{color:var(--text-h);background:linear-gradient(90deg,#38bdf840,#f472b640)}.summary-card.tier-rare,.summary-mini.tier-rare{box-shadow:0 0 0 2px #5aa2ff}.summary-card.tier-epic,.summary-mini.tier-epic{box-shadow:0 0 0 2px #b37bff}.summary-card.tier-special,.summary-mini.tier-special{box-shadow:0 0 0 2px #f2cc4d,0 0 26px #f2cc4d80}.summary-cards{grid-template-columns:repeat(auto-fill,minmax(86px,1fr));gap:10px;display:grid}.summary-mini,.summary-mini .thumb{border-radius:8px}.summary-actions{flex-wrap:wrap;gap:10px;display:flex}.tier-text.rare{color:#7db6ff}.tier-text.epic{color:#c49bff}.tier-text.special{color:#ffd84d}.pack-stats{gap:12px;padding:16px 18px;display:grid}.stat-row.compact{margin-bottom:0}@media (width<=640px){.summary-best{flex-direction:column;align-items:flex-start}.stage{min-height:520px}}@media (prefers-reduced-motion:reduce){.pack-art.sealed,.pack-sheen,.card-stack,.pstack-card.top,.holo{animation:none}.fx .rays,.fx .fx-ring,.flash{display:none}.pstack-card.top.tier-epic,.pstack-card.top.tier-special,.pack-art.tearing .pack-body,.pack-art.tearing .pack-top,.pack-summary-view,.reveal-name{animation:none}.pstack-card.top{transform:none}.spark,.card-stack.leaving .pstack-card.top{animation-duration:.01ms}}.dg{border:1px solid var(--border);border-radius:var(--radius);background:radial-gradient(700px 420px at 50% 40%, color-mix(in srgb, var(--accent) 10%, transparent), transparent 70%), var(--surface);position:relative;overflow:hidden}.dg-svg{aspect-ratio:1000/640;touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;width:100%;height:auto;min-height:380px;max-height:72vh;display:block}.dg-svg:active{cursor:grabbing}.dg-halo circle{fill:hsl(var(--h) 70% 55% / .07);stroke:hsl(var(--h) 70% 60% / .4);stroke-dasharray:5 6}.dg-halo text{fill:hsl(var(--h) 75% 70%);font-weight:600;font-family:var(--display);pointer-events:none}.dg-edge line{stroke:var(--text);stroke-opacity:.55;stroke-width:2px}.dg-edge.similar line{stroke-dasharray:3 6;stroke-width:1.5px;stroke-opacity:.4}.dg-edge.on line{stroke:var(--accent-2);stroke-opacity:1}.dg-arrow{fill:var(--text)}.dg-edge-label{fill:var(--text-h);font-weight:700;font-family:var(--display);paint-order:stroke;stroke:var(--surface);stroke-width:4px}.dg-node{cursor:pointer;outline:none;transition:opacity .15s}.dg-disc{fill:var(--surface-3)}.dg-ring{fill:none;stroke-width:3px}.dg-node:hover .dg-ring,.dg-node:focus-visible .dg-ring{stroke-width:5px}.dg-focus-ring{fill:none;stroke:var(--accent-2);stroke-width:2px;stroke-dasharray:4 4}.dg-kind{stroke:var(--surface);stroke-width:2px}.dg-kind.paper{fill:var(--owned)}.dg-kind.sim{fill:var(--foil)}.dg-count{fill:var(--accent);stroke:var(--surface);stroke-width:2px}.dg-node text{fill:#fff;font-weight:700;font-family:var(--display);pointer-events:none}.dg-node .dg-name{fill:var(--text-h);paint-order:stroke;stroke:var(--surface);stroke-width:4px;font-weight:600}.dg-dim{opacity:.18}.dg-controls{gap:6px;display:grid;position:absolute;top:12px;right:12px}.dg-legend{color:var(--text);pointer-events:none;flex-wrap:wrap;align-items:center;gap:6px 18px;font-size:.78rem;display:flex;position:absolute;bottom:10px;left:12px;right:12px}.dg-legend>*{pointer-events:auto}.dg-key{vertical-align:middle;border-top:2px solid var(--text);width:22px;height:0;margin-right:6px;display:inline-block}.dg-key.similar{border-top-style:dotted}.dg-toggle{cursor:pointer;align-items:center;gap:6px;display:inline-flex}.dg-hint{border-radius:var(--radius-sm);background:color-mix(in srgb, var(--surface-2) 90%, transparent);border:1px solid var(--border);max-width:min(340px,60%);color:var(--text);padding:8px 12px;font-size:.82rem;position:absolute;top:14px;left:14px}.folder-section{border-radius:var(--radius);border:1px dashed #0000;margin-bottom:26px;padding:10px 12px 14px;transition:border-color .15s,background .15s}.folder-section.over{border-color:var(--accent);background:var(--accent-soft)}.folder-head{align-items:center;gap:8px;margin-bottom:12px;display:flex}.folder-head h2{font-size:1.05rem}.folder-head .icon-btn{width:28px;height:28px}.folder-head .push-right{margin-left:auto}.folder-drag{cursor:grab}.folder-empty{border:1px dashed var(--border);border-radius:var(--radius-sm);text-align:center;padding:14px}.folder-new{gap:8px;max-width:420px;margin-bottom:16px;display:flex}.deck-fork-note{margin-top:2px;display:block}.folder-select{align-items:center;gap:6px;display:inline-flex}.deck-versions{gap:12px;padding:16px 18px;display:grid}.versions-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.version-block{gap:6px;display:grid}.version-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text);font-size:.72rem;font-weight:700}.version-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.version-link{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);color:var(--text-h);justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;font-weight:500;display:flex}.version-link:hover{border-color:var(--accent)}.version-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.diff-badge{font:700 .78rem var(--display);flex:none;gap:6px;display:inline-flex}.diff-badge.same{color:var(--text);font-weight:600}.diff-plus{color:var(--owned);font-weight:700}.diff-minus{color:var(--danger);font-weight:700}.version-changes summary{cursor:pointer;color:var(--accent);font-size:.85rem}.version-changes ul{color:var(--text-h);gap:3px;margin:6px 0 0;padding:0;font-size:.85rem;list-style:none;display:grid}
