:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--radius-sm:6px;--radius:10px;--radius-lg:14px;--radius-pill:999px;--control-height:40px;--page-width:1120px;--page-gutter:var(--space-5);--font:"Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, monospace;--text-xs:12px;--text-sm:13px;--text-md:15px;--text-lg:18px;--text-xl:24px;--bg:#f4f5f8;--surface:#fff;--surface-2:#f0f1f5;--text:#171923;--muted:#646a7e;--border:#e1e3ea;--border-strong:#cdd0da;--accent:#3657d6;--accent-hover:#2b48b8;--accent-soft:#e7ecfc;--on-accent:#fff;--success:#16794a;--success-soft:#e3f4ea;--warning:#9a6200;--warning-soft:#fbf0d9;--danger:#c0352b;--danger-soft:#fbe6e4;--focus:0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent);--shadow:0 1px 2px #10121b0f, 0 4px 16px #10121b0f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1117;--surface:#181b25;--surface-2:#1f2330;--text:#e9eaf1;--muted:#9195a8;--border:#272b3a;--border-strong:#353a4d;--accent:#7c97ff;--accent-hover:#95acff;--accent-soft:#232c4d;--on-accent:#0f1117;--success:#5fd39a;--success-soft:#16301f;--warning:#f2c063;--warning-soft:#33290f;--danger:#ff8b7f;--danger-soft:#3a1c1a;--shadow:0 1px 2px #0000004d, 0 8px 24px #00000040;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0f1117;--surface:#181b25;--surface-2:#1f2330;--text:#e9eaf1;--muted:#9195a8;--border:#272b3a;--border-strong:#353a4d;--accent:#7c97ff;--accent-hover:#95acff;--accent-soft:#232c4d;--on-accent:#0f1117;--success:#5fd39a;--success-soft:#16301f;--warning:#f2c063;--warning-soft:#33290f;--danger:#ff8b7f;--danger-soft:#3a1c1a;--shadow:0 1px 2px #0000004d, 0 8px 24px #00000040;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (width<=640px){:root{--page-gutter:var(--space-4)}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font:var(--text-md) / 1.5 var(--font);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,p{margin:0}h1{font-size:var(--text-xl);letter-spacing:-.01em;font-weight:700;line-height:1.25}h2{font-size:var(--text-lg);font-weight:650;line-height:1.3}h3{font-size:var(--text-md);font-weight:650}a{color:var(--accent)}code,.mono{font-family:var(--font-mono);font-size:.92em}.muted{color:var(--muted)}h1+p,h2+p,h3+p{margin-top:var(--space-1)}.error{color:var(--danger)}:focus-visible{box-shadow:var(--focus);outline:none}.app{flex-direction:column;min-height:100vh;display:flex}.page{width:100%;max-width:var(--page-width);padding:var(--space-6) var(--page-gutter) var(--space-7);flex:1;margin:0 auto}.page>section{gap:var(--space-5);display:grid}:where(.page>section>*,.panel,.panel>*,.columns>*){min-width:0}.page-head{justify-content:space-between;align-items:flex-end;gap:var(--space-4);flex-wrap:wrap;display:flex}.page-head .subtitle{color:var(--muted);margin-top:var(--space-1)}.page-head .actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.stack{gap:var(--space-4);display:grid}.stack-sm{gap:var(--space-2);display:grid}.cluster{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.columns{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:start;display:grid}.topbar{z-index:10;background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);position:sticky;top:0}.topbar-inner{max-width:var(--page-width);padding:0 var(--page-gutter);align-items:center;gap:var(--space-5);height:60px;margin:0 auto;display:flex}.brand{align-items:center;gap:var(--space-2);letter-spacing:-.01em;color:var(--text);white-space:nowrap;font-weight:750;text-decoration:none;display:inline-flex}.brand-mark{flex:none;width:26px;height:26px}.brand small{color:var(--muted);font-weight:600;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em}.nav{gap:var(--space-1);scrollbar-width:none;flex:1;display:flex;overflow-x:auto}.nav a{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--muted);white-space:nowrap;font-weight:550;text-decoration:none}.nav a:hover{color:var(--text);background:var(--surface-2)}.nav a.active{color:var(--text);background:var(--accent-soft)}@media (width<=640px){.topbar-inner{height:auto;padding-top:var(--space-3);padding-bottom:var(--space-2);row-gap:var(--space-2);flex-wrap:wrap}.topbar-inner .logout{margin-left:auto}.nav{margin:0 calc(-1 * var(--space-3));flex-basis:100%;order:3}}button,.button{justify-content:center;align-items:center;gap:var(--space-2);height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-sm);background:var(--accent);color:var(--on-accent);font:600 var(--text-md) / 1 var(--font);white-space:nowrap;cursor:pointer;border:1px solid #0000;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:inline-flex}button:hover:not(:disabled),.button:hover{background:var(--accent-hover)}button:disabled{opacity:.45;cursor:not-allowed}button.secondary,.button.secondary{background:var(--surface);color:var(--text);border-color:var(--border-strong)}button.secondary:hover:not(:disabled),.button.secondary:hover{background:var(--surface-2)}button.ghost{color:var(--muted);background:0 0}button.ghost:hover:not(:disabled){background:var(--surface-2);color:var(--text)}button.danger{background:var(--danger);color:#fff}button.danger:hover:not(:disabled){background:color-mix(in srgb, var(--danger) 85%, #000)}button.danger-ghost{color:var(--danger);background:0 0}button.danger-ghost:hover:not(:disabled){background:var(--danger-soft)}button.small,.button.small{height:32px;padding:0 var(--space-3);font-size:var(--text-sm)}button.icon{width:32px;height:32px;padding:0}button.link{height:auto;color:var(--accent);background:0 0;padding:0;font-weight:550}button.link:hover:not(:disabled){background:0 0;text-decoration:underline}button.block{width:100%}input,select,textarea{font:var(--text-md) / 1.4 var(--font);color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;min-width:0;transition:border-color .15s,box-shadow .15s}input,select{height:var(--control-height);padding:0 var(--space-3)}textarea{padding:var(--space-3);font-family:var(--font-mono);font-size:var(--text-sm);resize:vertical;line-height:1.6}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.8}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:var(--focus);outline:none}input[type=number]{width:80px}.field{gap:var(--space-2);font-size:var(--text-sm);font-weight:600;display:grid}.field .hint{color:var(--muted);font-weight:400}.check{align-items:center;gap:var(--space-2);font-size:var(--text-sm);cursor:pointer;font-weight:600;display:inline-flex}.check input[type=checkbox]{width:auto;height:auto;accent-color:var(--accent);box-shadow:none;margin:0}.check .hint{color:var(--muted);font-weight:400}.form-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));align-items:end;display:grid}.inline-form{gap:var(--space-3);flex-wrap:wrap;display:flex}.inline-form>input,.inline-form>select{flex:200px;width:auto}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:var(--space-5);gap:var(--space-4);align-content:start;display:grid}.panel.flush{gap:0;padding:0;overflow:hidden}.panel-head{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.panel.flush>.panel-head{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border)}.panel-head p{color:var(--muted);font-size:var(--text-sm);margin-top:var(--space-1)}@media (width<=640px){.panel{padding:var(--space-4)}.panel.flush>.panel-head{padding:var(--space-3) var(--space-4)}}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:var(--text-md)}th{text-align:left;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:var(--surface-2);font-weight:650}th,td{padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--border);vertical-align:middle}tbody tr:last-child td{border-bottom:0}tbody tr:hover td{background:color-mix(in srgb, var(--surface-2) 55%, transparent)}td.num,th.num{text-align:right}td .secondary-text{overflow-wrap:anywhere;color:var(--muted);font-size:var(--text-sm);display:block}@media (width<=640px){th,td{padding:var(--space-3) var(--space-4)}}.badge{align-items:center;gap:var(--space-1);height:24px;padding:0 var(--space-2);border-radius:var(--radius-pill);font-size:var(--text-xs);white-space:nowrap;background:var(--surface-2);color:var(--muted);font-weight:650;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.badge.success,.badge.ok{background:var(--success-soft);color:var(--success)}.badge.warning{background:var(--warning-soft);color:var(--warning)}.badge.danger{background:var(--danger-soft);color:var(--danger)}.badge.accent{background:var(--accent-soft);color:var(--accent)}.chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.chip{height:32px;padding:0 var(--space-3);border-radius:var(--radius-pill);background:var(--surface);color:var(--text);border:1px solid var(--border-strong);font-size:var(--text-sm);font-weight:550}.chip:hover:not(:disabled){background:var(--surface-2)}.chip.active,.chip.active:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent);color:var(--text)}.notice{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-2);flex-wrap:wrap;display:flex}.notice>p{flex:240px}.notice.info{background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 30%, transparent)}.notice.success{background:var(--success-soft);border-color:color-mix(in srgb, var(--success) 30%, transparent)}.notice.warning{background:var(--warning-soft);border-color:color-mix(in srgb, var(--warning) 30%, transparent)}.notice.error{color:var(--text);background:var(--danger-soft);border-color:color-mix(in srgb, var(--danger) 35%, transparent)}.copy-field{gap:var(--space-2);width:100%;display:flex}.copy-field input{font-family:var(--font-mono);font-size:var(--text-sm)}.empty-state{justify-items:center;gap:var(--space-3);text-align:center;padding:var(--space-7) var(--space-5);color:var(--muted);border:1px dashed var(--border-strong);border-radius:var(--radius-lg);display:grid}.empty-state h2{color:var(--text)}.issues{padding-left:var(--space-5);gap:var(--space-1);color:var(--danger);margin:0;display:grid}.list{margin:0;padding:0;list-style:none;display:grid}.list li{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:52px;padding:var(--space-2) 0;border-bottom:1px solid var(--border);display:flex}.list li:last-child{border-bottom:0}.panel.flush .list li{padding:var(--space-2) var(--space-5)}.list a{font-weight:600;text-decoration:none}.list a:hover{text-decoration:underline}.stats{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);gap:var(--space-1);display:grid}.stat .label{font-size:var(--text-sm);color:var(--muted)}.stat .value{letter-spacing:-.02em;font-size:28px;font-weight:750}.legal{max-width:var(--page-width);padding:var(--space-5) var(--page-gutter);font-size:var(--text-xs);color:var(--muted);border-top:1px solid var(--border);margin:0 auto}.auth{align-content:center;place-items:center;gap:var(--space-5);min-height:100vh;padding:var(--space-6) var(--page-gutter);display:grid}.auth-card{gap:var(--space-5);width:min(400px,100%);padding:var(--space-6);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);display:grid}.auth-card header{justify-items:center;gap:var(--space-2);text-align:center;display:grid}.auth-card header .brand-mark{width:44px;height:44px}.auth-card header p{color:var(--muted)}.auth-card form{gap:var(--space-4);display:grid}.auth .legal{text-align:center;border-top:0;max-width:560px;padding:0}.panel-pad{padding:var(--space-4) var(--space-5)}select.compact{width:auto;height:32px;font-size:var(--text-sm)}.stepper{align-items:center;gap:var(--space-2);display:inline-flex}.stepper .count{text-align:center;font-variant-numeric:tabular-nums;min-width:24px;font-weight:650}.facts{gap:var(--space-2) var(--space-4);grid-template-columns:auto 1fr;margin:0;display:grid}.facts dt{color:var(--muted)}.facts dd{margin:0}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}label.button{position:relative}label.button.disabled{opacity:.45;pointer-events:none}@media (width<=640px){.hide-sm{display:none}}.scan-layout{gap:var(--space-5);grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;display:grid}@media (width<=860px){.scan-layout{grid-template-columns:1fr}}.scan-qr{gap:var(--space-5);flex-wrap:wrap;align-items:center;display:flex}.scan-qr svg{border-radius:var(--radius);background:#fff;flex:none}.scan-qr .stack-sm{flex:220px;min-width:0}.scan-qr .mono{overflow-wrap:anywhere}.scanner{--scrim:#0000008c;z-index:100;color:#fff;background:#000;position:fixed;inset:0;overflow:hidden}.scanner>video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.scanner button.round,.scanner label.round{border-radius:var(--radius-pill);background:var(--scrim);color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:0;place-items:center;width:48px;height:48px;padding:0;display:grid}.scanner .pill{height:48px;padding:0 var(--space-4);border-radius:var(--radius-pill);background:var(--scrim);color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:0;font-weight:700}.scanner-top{inset:calc(env(safe-area-inset-top) + var(--space-4)) var(--space-4) auto;z-index:1;justify-content:space-between;align-items:flex-start;display:flex;position:absolute}.scanner-tools{justify-items:end;gap:var(--space-3);grid-template-columns:auto auto;display:grid}.scanner-tools>:not(.pill){grid-column:2}.scanner-tools>.pill+*{grid-row:1}.scan-frame{--frame:var(--accent);aspect-ratio:63/88;width:min(88vw,44.3864vh);position:absolute;top:54%;left:50%;translate:-50% -50%}.scan-frame.found{--frame:var(--success)}.scan-frame .corner{border:4px solid var(--frame);width:32%;height:22%;transition:border-color .2s;position:absolute}.corner.tl{border-top-left-radius:var(--radius-lg);border-width:4px 0 0 4px;top:0;left:0}.corner.tr{border-top-right-radius:var(--radius-lg);border-width:4px 4px 0 0;top:0;right:0}.corner.bl{border-bottom-left-radius:var(--radius-lg);border-width:0 0 4px 4px;bottom:0;left:0}.corner.br{border-bottom-right-radius:var(--radius-lg);border-width:0 4px 4px 0;bottom:0;right:0}.scan-status{max-width:100%;padding:var(--space-2) var(--space-4);border-radius:var(--radius-pill);background:var(--accent);color:var(--on-accent);text-align:center;white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.scan-messages{inset:auto 0 calc(100% + var(--space-3));justify-items:center;gap:var(--space-2);display:grid;position:absolute}.scan-preview{border-radius:var(--radius-sm);max-width:100%;height:36px}.scan-preview[hidden]{display:none}.scan-status.found{background:var(--success)}.code-band{inset:auto var(--space-1) 3%;border-radius:var(--radius-sm);border:1px dashed #ffffffb3;height:9%;position:absolute}.scan-read{max-width:100%;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--scrim);font-size:var(--text-sm);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.scanner-retry{inset:auto var(--space-4) 30%;display:grid;position:absolute}.scanner-bottom{inset:auto var(--space-4) calc(env(safe-area-inset-bottom) + var(--space-4));gap:var(--space-2);display:grid;position:absolute}.last-card{align-items:center;gap:var(--space-3);width:100%;height:auto;min-height:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--surface-2);color:var(--text);font:inherit;text-align:left;border:0;display:flex}.scanner-bottom .last-card{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.last-card-text{gap:var(--space-1);flex:1;min-width:0;display:grid}.last-card-text strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.last-card-text .badge{margin-left:var(--space-2)}.qty{border-radius:var(--radius);background:var(--accent-soft);place-items:center;min-width:40px;height:40px;font-weight:700;display:grid}.thumb{aspect-ratio:63/88;border-radius:var(--radius-sm);object-fit:cover;background:var(--surface-2);flex:none;width:44px}.thumb.large{width:80px}.thumb.blank{font-size:var(--text-xs);color:var(--muted);place-items:center;display:grid}.scanned>li{border:0;padding:0}.sheet-backdrop{z-index:2;flex-direction:column;justify-content:flex-end;display:flex;position:absolute;inset:0}.sheet-dismiss{background:var(--scrim);border:0;border-radius:0;flex:1}.sheet{gap:var(--space-3);max-height:75vh;padding:var(--space-4) var(--space-4) calc(env(safe-area-inset-bottom) + var(--space-4));border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--surface);color:var(--text);display:grid;overflow-y:auto}.sheet-head{justify-content:space-between;align-items:center;display:flex}.choice-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(96px,1fr));display:grid}.choice{justify-items:center;gap:var(--space-2);padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);color:var(--text);display:grid}.choice .thumb{width:100%}.edit-sheet{z-index:3;background:var(--bg);color:var(--text);flex-direction:column;display:flex;position:absolute;inset:0}.edit-head{align-items:center;gap:var(--space-3);padding:calc(env(safe-area-inset-top) + var(--space-4)) var(--space-4) var(--space-3);display:flex}.edit-head h1{font-size:var(--text-xl);text-transform:uppercase;margin:0;font-style:italic}.scanner .edit-head button.round.light{background:var(--surface-2);color:var(--text);-webkit-backdrop-filter:none;backdrop-filter:none}.edit-body{align-content:start;gap:var(--space-4);padding:0 var(--space-4) var(--space-4);flex:1;display:grid;overflow-y:auto}.edit-card{align-items:flex-start;gap:var(--space-3);display:flex}.edit-card strong{white-space:normal}.stepper{border-radius:var(--radius-sm);background:var(--surface-2);justify-content:space-between;align-items:center;display:flex}.stepper button{padding:var(--space-3) var(--space-4);color:var(--text)}.edit-foot{gap:var(--space-3);padding:var(--space-4) var(--space-4) calc(env(safe-area-inset-bottom) + var(--space-4));border-top:1px solid var(--border);grid-template-columns:1fr 1fr;display:grid}.edit-foot button{text-transform:uppercase;height:52px}.filters{gap:var(--space-3);display:grid}.filters input[type=search]{max-width:400px}.chip[class*=domain-]:before{content:"";background:var(--d1);width:8px;height:8px;margin-right:var(--space-2);border-radius:50%;display:inline-block}.domain-neutral{--d1:#8a8fa3}.domain-fury{--d1:#d9483b}.domain-calm{--d1:#3f9e6e}.domain-mind{--d1:#3b7fd9}.domain-body{--d1:#e08a2e}.domain-chaos{--d1:#8b4fd1}.domain-order{--d1:#d4b13a}.second-fury{--d2:#d9483b}.second-calm{--d2:#3f9e6e}.second-mind{--d2:#3b7fd9}.second-body{--d2:#e08a2e}.second-chaos{--d2:#8b4fd1}.second-order{--d2:#d4b13a}.card-text{font-style:italic}.card-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(160px,1fr));display:grid}@media (width<=640px){.card-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}}.card-tile{aspect-ratio:63/88;border-radius:var(--radius);background:linear-gradient(160deg, var(--d1), var(--d2,var(--d1)));width:100%;box-shadow:var(--shadow);align-self:start;margin:0;transition:transform .15s,box-shadow .15s;position:relative;overflow:hidden}.card-tile:hover{transform:translateY(-3px);box-shadow:0 10px 24px #0000004d}.card-tile img{object-fit:cover;width:100%;height:100%;display:block}.card-face{color:#f1f1f5;padding:var(--space-2);background:#171922;border-radius:7px;grid-template-rows:auto minmax(0,1.4fr) auto auto minmax(0,1fr) auto;gap:2px;font-size:11px;line-height:1.3;display:grid;position:absolute;inset:5px}.card-top{gap:var(--space-1);min-height:22px;display:flex}.card-top .cost,.card-top .power,.card-bottom .might{border-radius:50%;place-items:center;min-width:22px;height:22px;font-size:12px;font-weight:700;display:grid}.card-top .cost,.card-bottom .might{color:#171922;background:#f1f1f5}.card-top .power{background:var(--d1);color:#fff}.card-art{margin:var(--space-1) 0;background:linear-gradient(160deg, color-mix(in srgb, var(--d1) 55%, #000), color-mix(in srgb, var(--d2,var(--d1)) 35%, #000));color:#ffffff40;border-radius:5px;place-items:center;font-size:34px;font-weight:800;display:grid}.card-name{font-size:12px;font-weight:700}.card-type{color:#a9acbd;font-size:10px}.card-face .card-text{color:#d8d9e2;margin:0;overflow:hidden}.card-bottom{color:#8f92a5;justify-content:space-between;align-items:center;font-size:10px;display:flex}.card-tile .quantity{top:var(--space-2);right:var(--space-2);color:#fff;border-radius:var(--radius-pill);padding:1px var(--space-2);background:#000000bf;font-size:12px;font-weight:700;position:absolute}.card-tile .foil-badge{top:34px;right:var(--space-2);color:#171922;border-radius:var(--radius-pill);background:linear-gradient(90deg,#ffd86b,#ff8ad8,#7ad7ff);padding:0 7px;font-size:10px;font-weight:700;position:absolute}.card-tile .example-badge{top:calc(var(--space-6) + 2px);right:var(--space-2);background:var(--accent);color:var(--on-accent);border-radius:var(--radius-pill);padding:0 var(--space-2);font-size:var(--text-xs);font-weight:700;position:absolute}.card-tile.example{outline:2px dashed var(--accent);outline-offset:2px}.card-tile.foil:after{content:"";pointer-events:none;mix-blend-mode:screen;background:linear-gradient(115deg,#0000 30%,#ffffff38 45%,#0000 60%);position:absolute;inset:0}.game-table{gap:var(--space-4);display:grid}.game-table>button{justify-self:start}.scoreboard{align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);grid-template-columns:1fr auto 1fr;display:grid}.scoreboard>span:last-child{text-align:right}.scoreboard strong{margin-left:var(--space-2);vertical-align:middle;font-size:28px}.chain,.showdown{padding:var(--space-3) var(--space-4);border-radius:var(--radius);gap:var(--space-2);display:grid}.chain{border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);background:var(--accent-soft)}.chain ol{padding-left:var(--space-5);margin:0}.showdown{border:1px solid color-mix(in srgb, var(--danger) 45%, transparent);background:var(--danger-soft)}.zone{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);gap:var(--space-3);display:grid}.zone h2{font-size:var(--text-md)}.zone.opponent{background:var(--surface-2)}.battlefields{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.battlefield{border:2px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4);gap:var(--space-2);background:var(--surface);align-content:start;min-height:140px;display:grid}.battlefield.mine{border-color:var(--accent)}.battlefield.theirs{border-color:var(--danger)}.battlefield ul{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.battlefield li{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--surface-2);display:flex}.battlefield li.enemy{color:var(--danger)}.unit.exhausted,.rune.exhausted{opacity:.5}.damage{color:var(--danger);font-weight:650}.rune{gap:var(--space-2);height:40px;padding:0 var(--space-2) 0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);text-transform:capitalize;align-items:center;font-weight:550;display:inline-flex}.rune button.small{height:28px;padding:0 var(--space-2)}.hand{gap:var(--space-3);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}button.hand-card{align-content:start;justify-items:start;gap:var(--space-1);width:132px;height:184px;padding:var(--space-3);text-align:left;white-space:normal;background:var(--surface-2);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius);grid-template-rows:auto auto 1fr;font-weight:400;line-height:1.3;display:grid;position:relative}button.hand-card:hover:not(:disabled){background:var(--surface-2);border-color:var(--accent);transform:translateY(-3px)}button.hand-card:not(:disabled){border-color:color-mix(in srgb, var(--accent) 60%, var(--border-strong));box-shadow:0 0 0 1px color-mix(in srgb, var(--accent) 30%, transparent)}button.hand-card:disabled{opacity:.7}button.hand-card.picked{outline:2px solid var(--danger);outline-offset:2px}.hand-cost{min-width:26px;height:26px;padding:0 var(--space-1);border-radius:var(--radius-pill);background:var(--text);color:var(--surface);font-weight:700;font-size:var(--text-sm);place-items:center;display:inline-grid}.hand-cost em{margin-left:2px;font-size:10px;font-style:normal}.hand-name{font-weight:700;font-size:var(--text-sm)}.hand-card .card-text{font-size:var(--text-xs);color:var(--muted);overflow:hidden}.hand-might{right:var(--space-2);bottom:var(--space-2);background:var(--accent);width:26px;height:26px;color:var(--on-accent);font-weight:700;font-size:var(--text-sm);border-radius:50%;place-items:center;display:grid;position:absolute}.game-actions{gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);flex-wrap:wrap;justify-content:flex-end;display:flex}.game-actions:empty{display:none}.demo-banner{margin-bottom:var(--space-5)}
