:root{--bg: #161009;--panel: #211910;--panel-2: #2b2115;--line: #382c1d;--line-hi: #f4dea80f;--text: #f1e7d3;--muted: #a89073;--faint: #7a6749;--accent: #dcbc7e;--accent-2: #f2dca4;--accent-ink: #2e2109;--ok: #9ec49e;--oak: #a67e52;--bad: #e07168;--warn: #e2a552;--stage: #0a0907;--font-ui: "Geist", Inter, ui-sans-serif, system-ui, -apple-system, sans-serif;--font-mono: "Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--font-display: var(--font-ui);--r-sm: 8px;--r: 12px;--r-lg: 16px;--r-xl: 20px;--shadow-sm: 0 1px 2px #0000006b;--shadow: 0 16px 40px -16px #000000cc;--shadow-lg: 0 30px 64px -20px #000000e6;--ease: cubic-bezier(.2, .8, .2, 1);--dur: .14s;font-family:var(--font-ui);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-ui);letter-spacing:-.005em}.tnum,.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em}::selection{background:#ffb22433}button,input,a{font-family:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:5px}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}.shell{display:flex;flex-direction:column;min-height:100dvh}.topbar{display:flex;align-items:center;gap:1.5rem;padding:0 1.1rem;height:54px;background:color-mix(in srgb,var(--panel) 82%,transparent);-webkit-backdrop-filter:blur(12px) saturate(1.3);backdrop-filter:blur(12px) saturate(1.3);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:.5rem}.acorn{display:block}.acorn-cap{fill:var(--accent)}.acorn-body{fill:var(--oak)}.wordmark{display:block}.wordmark path{fill:var(--accent);stroke:var(--accent);stroke-width:8;stroke-linejoin:round}.tabs{display:flex;gap:.2rem}.tabs button,.tabs a{text-decoration:none;display:inline-flex;align-items:center;gap:.4rem;background:transparent;border:none;color:var(--muted);font-size:.88rem;font-weight:500;padding:.42rem .85rem;border-radius:999px;cursor:pointer;transition:background var(--dur) var(--ease),color var(--dur) var(--ease)}.tabs button:hover,.tabs a:hover{background:var(--panel-2);color:var(--text)}.tabs a.active{background:var(--panel-2);color:var(--text);font-weight:600}.tabs a.active svg{color:var(--accent)}.shell.has-tabbar{padding-bottom:calc(58px + env(safe-area-inset-bottom))}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;height:calc(58px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:color-mix(in srgb,var(--panel) 86%,transparent);-webkit-backdrop-filter:blur(16px) saturate(1.4);backdrop-filter:blur(16px) saturate(1.4);border-top:1px solid var(--line)}.tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--faint);text-decoration:none;font-size:.66rem;font-weight:500;letter-spacing:.01em;transition:color var(--dur) var(--ease);-webkit-tap-highlight-color:transparent}.tabbar a svg{transition:transform var(--dur) var(--ease)}.tabbar a.active{color:var(--accent)}.tabbar a.active svg{transform:translateY(-1px)}.tabbar a:active svg{transform:scale(.9)}.binder{padding:1.5rem}.binder-head{max-width:1320px;margin:0 auto 1.5rem;display:flex;flex-direction:column;gap:.9rem}.binder-top{display:flex;align-items:center;justify-content:space-between;gap:1rem}.set-switch{position:relative;display:inline-flex;align-items:center;flex:0 1 auto;min-width:0}.set-switch select{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:100%;min-width:0;background:transparent;color:var(--text);border:0;font-family:var(--font-display);font-size:1.6rem;font-weight:700;letter-spacing:-.02em;padding:.1rem 1.6rem .1rem 0;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.set-switch svg{position:absolute;right:0;color:var(--muted);pointer-events:none}.view-menu{flex:none}.set-switch:hover svg{color:var(--text)}.view-menu{position:relative}.view-btn{display:inline-flex;align-items:center;gap:.4rem;background:var(--panel);color:var(--muted);border:1px solid var(--line);border-radius:var(--r-sm);font:500 .85rem var(--font-ui);padding:.45rem .8rem;cursor:pointer;transition:color var(--dur) var(--ease),background var(--dur) var(--ease)}.view-btn:hover,.view-btn.on{color:var(--text);background:var(--panel-2)}.menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40}.menu-pop{position:absolute;right:0;top:calc(100% + 6px);z-index:41;width:200px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:.6rem;display:flex;flex-direction:column;gap:.3rem}.menu-label{font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:.1rem .15rem .25rem}.seg-mini{display:flex;gap:3px;padding:3px;background:#00000038;border-radius:var(--r-sm);margin-bottom:.35rem}.seg-mini button{flex:1;border:0;background:transparent;color:var(--muted);cursor:pointer;font:500 .78rem var(--font-mono);padding:.35rem 0;border-radius:6px}.seg-mini button.on{background:var(--panel-2);color:var(--text);font-weight:600;box-shadow:inset 0 0 0 1px var(--line)}.menu-check{display:flex;align-items:center;gap:.55rem;width:100%;text-align:left;background:transparent;border:0;color:var(--text);font:500 .86rem var(--font-ui);padding:.4rem .15rem;cursor:pointer;border-radius:6px}.menu-check:hover{background:var(--panel-2)}.menu-check .check{flex:none;width:17px;height:17px;border-radius:5px;border:1.5px solid var(--line);display:grid;place-items:center;color:var(--accent-ink)}.menu-check .check.on{background:var(--accent);border-color:var(--accent)}.binder-progress{display:flex;flex-direction:column;gap:.5rem}.prog-track{height:8px;border-radius:999px;background:var(--panel-2);overflow:hidden;box-shadow:inset 0 1px 2px #0006}.prog-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--ok),#58d99a);transition:width .5s var(--ease);box-shadow:0 0 12px -2px var(--ok)}.prog-stats{display:flex;align-items:baseline;gap:.6rem}.prog-stats b{font-family:var(--font-mono);font-size:1.5rem;font-weight:600;letter-spacing:-.02em}.prog-stats .of{color:var(--muted);font-weight:500}.prog-word{color:var(--muted);font-size:.86rem}.prog-pct{color:var(--ok);font-size:.86rem;margin-left:auto}.prog-miss{color:var(--muted);font-size:.86rem}.binder-actions{display:flex;align-items:center;gap:.7rem}.buy-btn{display:inline-flex;align-items:center;gap:.4rem;white-space:nowrap;flex:none;background:var(--accent);color:var(--accent-ink);font-weight:600;font-size:.88rem;text-decoration:none;padding:.55rem .95rem;border-radius:var(--r-sm);box-shadow:inset 0 1px #fff3;transition:filter var(--dur) var(--ease),transform var(--dur) var(--ease)}.buy-btn:hover{filter:brightness(1.05)}.buy-btn:active{transform:translateY(1px)}.buy-cost{font-weight:500;opacity:.8}.binder-actions .buy-btn{margin-left:auto}.filter-seg{display:inline-flex;gap:3px;padding:3px;border-radius:999px;background:#00000038;border:1px solid var(--line);box-shadow:inset 0 1px 2px #0006}.filter-seg button{border:0;background:transparent;color:var(--muted);cursor:pointer;font:500 .84rem var(--font-ui);padding:.42rem .95rem;border-radius:999px;transition:color var(--dur) var(--ease),background var(--dur) var(--ease)}.filter-seg button:hover:not(.on){color:var(--text)}.filter-seg button.on{background:var(--panel-2);color:var(--text);font-weight:600;box-shadow:inset 0 0 0 1px var(--line)}.binder-bar{display:flex;align-items:center;gap:.5rem}.binder-bar .set-switch{flex:1 1 auto}.binder-back{flex:none;display:grid;place-items:center;width:34px;height:34px;background:transparent;border:0;color:var(--muted);cursor:pointer;border-radius:var(--r-sm)}.binder-back:hover{color:var(--text);background:var(--panel)}.lens-toggle{flex:none;display:inline-flex;gap:2px;padding:2px;border-radius:var(--r-sm);background:#00000038;border:1px solid var(--line)}.lens-toggle button{display:grid;place-items:center;width:34px;height:30px;border:0;background:transparent;color:var(--muted);cursor:pointer;border-radius:6px}.lens-toggle button:hover:not(.on){color:var(--text)}.lens-toggle button.on{background:var(--panel-2);color:var(--accent);box-shadow:inset 0 0 0 1px var(--line)}.binder-hero{flex:none;font:600 1.15rem var(--font-mono);letter-spacing:-.01em;color:var(--text)}.binder-hero.ok{color:var(--ok)}.view-btn.on,.view-btn{line-height:1}.prog-hairline{height:3px;border-radius:999px;background:var(--panel-2);overflow:hidden;margin-top:.1rem}.prog-hairline-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--ok),#58d99a);transition:width .5s var(--ease)}.binder-controls{display:flex;align-items:center;gap:.7rem}.binder-controls .buy-btn,.binder-controls .sort-seg{margin-left:auto}.sort-seg{display:inline-flex;align-items:center;gap:3px;padding:3px 3px 3px 0;border-radius:999px;background:#00000038;border:1px solid var(--line)}.sort-lbl{font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:var(--faint);padding:0 .4rem 0 .6rem}.sort-seg button{border:0;background:transparent;color:var(--muted);cursor:pointer;font:500 .8rem var(--font-ui);padding:.35rem .7rem;border-radius:999px}.sort-seg button:hover:not(.on){color:var(--text)}.sort-seg button.on{background:var(--panel-2);color:var(--text);font-weight:600;box-shadow:inset 0 0 0 1px var(--line)}.menu-action{display:flex;align-items:center;gap:.5rem;width:100%;text-align:left;background:var(--panel-2);border:1px solid var(--line);color:var(--text);font:600 .86rem var(--font-ui);padding:.5rem .6rem;border-radius:var(--r-sm);cursor:pointer;text-decoration:none;margin-top:.2rem}.menu-action:hover{border-color:var(--line-hi)}.menu-action.buy{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.menu-sep{height:1px;background:var(--line);margin:.5rem 0 .4rem}.lview{max-width:900px;margin:0 auto;display:flex;flex-direction:column}.lrow{display:grid;grid-template-columns:2.4rem 34px 1fr auto 4.6rem;align-items:center;gap:.6rem;width:100%;padding:.45rem .4rem;border-bottom:1px solid var(--line);background:transparent;color:var(--text);text-align:left;cursor:pointer}.lrow:hover{background:var(--panel)}.lrow:not(.have){opacity:.66}.lrow-num{color:var(--muted);font-size:.78rem}.lrow-thumb{width:34px;height:47px;object-fit:cover;border-radius:4px;background:var(--panel-2)}.lrow-name{display:flex;flex-direction:column;min-width:0;line-height:1.25}.lrow-name b{font-weight:600;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lrow-name em{font-style:normal;font-size:.72rem;color:var(--muted)}.lrow-qty{display:inline-flex;align-items:center;gap:.2rem}.lrow-qty button{width:27px;height:27px;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:6px;cursor:pointer;font-size:1.05rem;line-height:1;display:grid;place-items:center}.lrow-qty button:hover:not(:disabled){border-color:var(--line-hi)}.lrow-qty button:disabled{opacity:.35;cursor:default}.lrow-qty>span{min-width:1.3ch;text-align:center;font-size:.9rem}.lrow-val{font-size:.9rem;text-align:right}.lrow-val.own{color:var(--ok)}.lrow-val.cost{color:var(--muted)}@media(max-width:899px){.binder{padding:.75rem}.binder-head{position:sticky;top:0;z-index:20;gap:.45rem;margin:-.75rem -.75rem .7rem;padding:env(safe-area-inset-top,0) .75rem .5rem;background:var(--bg);border-bottom:1px solid var(--line);max-width:none}.binder-bar .set-switch select{font-size:1.15rem;padding-right:1.3rem}.binder-hero{font-size:1rem}.lrow{grid-template-columns:1.9rem 30px 1fr auto 4.1rem;gap:.45rem}.lrow-thumb{width:30px;height:41px}}.spread{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap;width:100%;margin:0 auto 1.75rem;max-width:1320px}.page{display:grid;gap:.55rem;padding:.85rem;border-radius:12px;background:#0000002e;border:1px solid var(--line);box-shadow:inset 0 0 0 1px #ffffff08;flex:1 1 380px;max-width:640px}.page.ghost{background:transparent;border-style:dashed;opacity:.25}.pocket{border:none;padding:0;width:100%;cursor:pointer;font:inherit;background:transparent;display:flex;flex-direction:column;gap:4px}.pocket:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:8px}.pocket-img{position:relative;aspect-ratio:63 / 88;border-radius:6px;overflow:hidden;background:#0005;box-shadow:inset 0 0 0 1px #ffffff10;transition:transform .12s ease}.pocket-img img{width:100%;height:100%;object-fit:cover;display:block}.pocket:hover .pocket-img{transform:scale(1.05);box-shadow:0 6px 18px #000a}.binder.dim-missing .pocket.missing .pocket-img img{filter:grayscale(.9) brightness(.42)}.binder.dim-missing .pocket.missing:hover .pocket-img img{filter:grayscale(.4) brightness(.7)}.pocket.missing .cap-price{color:var(--muted);font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-transform:none;letter-spacing:-.02em}.pocket-cap{display:flex;align-items:center;justify-content:space-between;padding:0 3px;font-size:.72rem;min-height:1rem}.cap-num{color:var(--muted);font-variant-numeric:tabular-nums}.cap-status{font-weight:700;font-size:.68rem}.pocket.owned .cap-status{color:var(--ok)}.pocket.missing .cap-status{color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.cap-status.special{color:var(--ok);font-weight:800}.pocket.pad{pointer-events:none}.pocket.pad .pocket-img{background:#ffffff06;box-shadow:none}.scan{padding:1.5rem;max-width:780px}.scan-head{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:.75rem}.scan-head h1{margin:0;font-size:1.4rem}.scan-head .buy-btn{cursor:pointer}.scan-list{display:flex;flex-direction:column;gap:.5rem;margin-top:1rem}.scan-row{display:flex;align-items:center;gap:.9rem;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:.6rem .8rem}.scan-row.nomatch{opacity:.7}.scan-row img{width:44px;height:61px;object-fit:cover;border-radius:5px}.scan-noimg{width:44px;height:61px;border-radius:5px;background:#00000040;border:1px dashed var(--line);display:grid;place-items:center;color:var(--muted)}.scan-info{flex:1;min-width:0}.scan-name{font-weight:600}.decks-layout{display:grid;grid-template-columns:260px 1fr;flex:1;min-height:0}.sidebar{background:var(--panel);border-right:1px solid var(--line);padding:1rem .75rem;overflow-y:auto}.fmt-group{margin-bottom:1rem}.fmt-label{text-transform:uppercase;font-size:.7rem;letter-spacing:.08em;color:var(--muted);margin-bottom:.35rem}.deck-item{display:block;width:100%;text-align:left;background:transparent;color:var(--text);border:none;padding:.4rem .5rem;border-radius:6px;cursor:pointer;font-size:.9rem}.deck-item:hover{background:#ffffff10}.deck-item.active{background:var(--panel-2);color:var(--text);font-weight:600;box-shadow:inset 2px 0 0 var(--accent)}.main{padding:2rem;overflow-y:auto}.empty{color:var(--muted);display:grid;place-items:center;min-height:50vh;text-align:center}.deckview{max-width:900px}.deck-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;min-height:60vh;text-align:center;color:var(--muted);padding:2rem}.deck-empty svg{color:var(--faint);margin-bottom:.3rem}.deck-empty h2{margin:0;padding:0;border:0;font-size:1.15rem;font-weight:600;color:var(--text);text-transform:none;letter-spacing:-.01em}.deck-empty p{margin:0;max-width:30rem;font-size:.9rem;line-height:1.5}.deck-head{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin-bottom:1.5rem}.deck-head h1{margin:0;font-size:1.6rem}.counts{color:var(--muted);font-size:.85rem;font-variant-numeric:tabular-nums;margin-left:auto}.badge{font-size:.72rem;padding:.15rem .55rem;border-radius:999px;font-weight:600}.badge.ok{background:#6dbd6d25;color:var(--ok)}.badge.bad{background:#e06c6c25;color:var(--bad)}.badge.warn{background:#e0b24c25;color:var(--warn)}.badge.muted{background:var(--panel-2);color:var(--muted)}section{margin-bottom:2rem}section h2{font-size:.9rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:.4rem}.checks{list-style:none;padding:0;margin:.5rem 0}.checks li{padding:.2rem 0;font-size:.9rem}.checks li.ok span{color:var(--ok)}.checks li.bad span{color:var(--bad)}.checks em{color:var(--muted);font-style:normal}.err{color:var(--bad);font-size:.85rem;margin:.3rem 0}.warnmsg{color:var(--warn);font-size:.8rem;margin:.2rem 0}.ok-msg{color:var(--ok);font-size:.9rem}.muted{color:var(--muted)}.shortfall{border-collapse:collapse;width:100%;font-size:.88rem}.shortfall th{text-align:left;color:var(--muted);font-weight:500;border-bottom:1px solid var(--line);padding:.3rem .5rem}.shortfall td{padding:.3rem .5rem;border-bottom:1px solid #ffffff08}.shortfall .num{text-align:right;font-variant-numeric:tabular-nums}.source{background:#00000040;border:1px solid var(--line);border-radius:8px;padding:1rem;font-size:.82rem;line-height:1.5;overflow-x:auto;white-space:pre-wrap;font-family:ui-monospace,SF Mono,Menlo,monospace}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d0;z-index:100;display:flex;align-items:center;justify-content:center;padding:2rem}.modal{display:flex;gap:1.5rem;position:relative;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:1.5rem;max-width:720px;width:100%;max-height:90vh}.modal-close{position:absolute;top:8px;right:8px;z-index:3;width:38px;height:38px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:999px;color:var(--muted);font-size:1.3rem;cursor:pointer;line-height:1;-webkit-tap-highlight-color:transparent}.modal-close:hover{color:var(--text);background:var(--panel-2)}.modal-close:active{background:var(--line)}.modal-img{width:46%;max-width:300px;border-radius:10px;align-self:flex-start;height:auto}.modal-info{flex:1;min-width:0;display:flex;flex-direction:column}.modal-info h2{margin:0 0 .15rem;font-size:1.4rem}.modal-sub{font-size:.85rem;margin-bottom:.9rem}.modal-status{margin-bottom:.8rem}.edition-select{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--muted);margin-bottom:1rem}.edition-select select{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:7px;padding:.3rem .5rem;font-size:.85rem;cursor:pointer}.price-block{background:#00000040;border:1px solid var(--line);border-radius:10px;padding:.9rem 1rem;margin-bottom:1.1rem}.price-main{display:flex;justify-content:space-between;align-items:baseline}.price-label{color:var(--muted);font-size:.8rem}.price-val{font-size:1.7rem;font-weight:700;color:var(--ok);font-variant-numeric:tabular-nums}.price-row{display:flex;justify-content:space-between;font-size:.82rem;color:var(--muted);padding:.15rem 0 0}.price-note{font-size:.72rem;color:var(--accent);margin-top:.5rem;line-height:1.35}.variant-rows{display:flex;flex-direction:column;gap:.4rem;margin:.3rem 0 1rem}.variant-row{display:grid;grid-template-columns:1fr auto auto 1rem;align-items:center;gap:.7rem;padding:.55rem .65rem;border:1px solid var(--line);border-radius:var(--r-sm);background:#00000030;cursor:pointer;transition:border-color var(--dur) var(--ease),background var(--dur) var(--ease)}.variant-row:hover{border-color:var(--faint);background:var(--panel-2)}.variant-row.have{border-color:var(--ok);background:#37d18f16}.variant-row.have:hover{border-color:var(--ok)}.v-label{font-size:.85rem;font-weight:600}.v-price{font-size:.85rem;color:var(--ok);font-variant-numeric:tabular-nums;min-width:4.5rem;text-align:right}.v-qty{display:flex;align-items:center;gap:.4rem}.v-qty button{width:24px;height:24px;border-radius:6px;border:1px solid var(--line);background:var(--panel);color:var(--text);cursor:pointer;font-size:1rem;line-height:1;padding:0}.v-qty button:disabled{opacity:.35;cursor:default}.v-count{min-width:1.2rem;text-align:center;font-variant-numeric:tabular-nums}.v-link{color:var(--muted);text-decoration:none;text-align:center;transition:color var(--dur) var(--ease)}.v-link:hover{color:var(--accent)}.v-link.placeholder{visibility:hidden}.modal-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:auto}.toggle-btn{border:none;border-radius:8px;padding:.55rem .9rem;font-weight:600;cursor:pointer;font-size:.85rem}.toggle-btn.add{background:var(--ok);color:#10240f}.toggle-btn.remove{background:#3a322d;color:var(--text)}@media(max-width:680px){.binder{padding:.75rem}.binder-head{gap:.5rem .6rem}.spread{gap:.75rem}.buy-word{display:none}.binder-actions{gap:.5rem}.filter-seg button{padding:.4rem .7rem}.buy-btn{padding:.5rem .75rem}.modal-backdrop{padding:0}.modal{flex-direction:column;align-items:center;text-align:center;width:100%;max-width:100%;height:100dvh;max-height:100dvh;border-radius:0;overflow-y:auto}.modal-img{width:66%;max-width:300px;align-self:center}.modal-info{width:100%}.price-main,.price-row{text-align:left}.modal-actions{justify-content:center}.modal-close{position:fixed;top:10px;right:10px;width:44px;height:44px;background:#00000073;color:#fff;font-size:1.5rem;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal-close:active{background:#000000b0}}.scan-uploads{margin-top:1.5rem}.scan-uploads h2{font-size:.95rem;margin:0 0 .6rem}.upload-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.6rem}.upload-thumb{border:1px solid var(--line, #2a2e33);border-radius:8px;background:none;padding:0;cursor:pointer;overflow:hidden;display:flex;flex-direction:column}.upload-thumb img{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block}.upload-thumb span{font-size:.7rem;color:var(--muted, #8a929c);padding:.25rem .4rem;text-align:left}.upload-full{max-width:92vw;max-height:92vh;border-radius:10px}.inspect{display:flex;flex-direction:column;height:calc(100vh - 52px)}.inspect-bar{display:flex;align-items:center;gap:.7rem;padding:.5rem .9rem;border-bottom:1px solid #26292e;flex:none}.inspect-title{font:600 .85rem ui-monospace,Menlo,monospace;color:#9aa3ad}.inspect-actions{margin-left:auto;display:flex;gap:.45rem}.inspect-stage{flex:1;position:relative;overflow:hidden;background:#000;cursor:grab;touch-action:none;min-height:0}.inspect-stage.anno{cursor:crosshair}.inspect-world{position:absolute;transform-origin:0 0}.inspect-world img{display:block;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.inspect-zoom{position:absolute;right:12px;bottom:12px;display:flex;flex-direction:column;gap:6px}.inspect-zoom button{width:40px;height:40px;border-radius:10px;border:1px solid #3a3f46;background:#1b1e22cc;color:#d6dbe1;font-size:1.1rem;cursor:pointer}.inspect-foot{padding:.5rem .9rem;border-top:1px solid #26292e;flex:none;display:flex;gap:1rem;align-items:center;min-height:2.2rem}.inspect-foot b{color:#3ddc84}.linkish{background:none;border:0;color:#7aa7ff;cursor:pointer;padding:0;font-size:inherit}.det-box{fill:none;stroke:#23f57c;cursor:pointer}.det-box.sel{stroke:#fff}.det-tag{fill:#fff;font-weight:700;font-family:system-ui;text-anchor:middle;paint-order:stroke;stroke:#000c}.gt-box{fill:#7aa7ff1a;stroke:#8db4ff}.gt-tag{fill:#8db4ff;font-weight:700;font-family:system-ui;paint-order:stroke;stroke:#000c}.gt-handle{fill:#8db4ff24;stroke:#2b4a86;stroke-width:2;cursor:move;vector-effect:non-scaling-stroke}.gt-hit{fill:transparent;stroke:none;cursor:move}.detected-flag{color:#3ddc84;font-style:normal}.gt-box.sel{stroke:#d3e1ff;fill:#7aa7ff2e}.inspect-foot{flex-wrap:wrap;row-gap:.4rem}.inspect-foot .toggle-btn:disabled{opacity:.4;cursor:default}.gt-dot{fill:none;stroke:#2b4a86;stroke-width:1;pointer-events:none;vector-effect:non-scaling-stroke}.layer-toggles{display:flex;gap:.45rem;align-items:center}.line-legend{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem}.line-legend i{display:inline-block;width:14px;height:3px;border-radius:2px;margin-left:.5rem}.det-box.sus{stroke:#ffb454}.inspect-detail{position:absolute;left:12px;bottom:12px;width:236px;background:#16181bd9;border:1px solid #34383e;border-radius:10px;padding:.6rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.inspect-detail-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:.4rem}.inspect-detail img{width:100%;border-radius:6px}.inspect-compare{display:flex;gap:6px}.inspect-compare figure{flex:1;min-width:0;margin:0}.inspect-compare figcaption{text-align:center;font-size:.6rem;color:#5d646d;margin-top:2px;text-transform:uppercase;letter-spacing:.04em}.inspect-detail table{width:100%;font-size:.72rem;margin-top:.4rem;border-collapse:collapse}.inspect-detail td{padding:1px 0;color:#8a929c}.inspect-detail td:last-child{text-align:right;color:#d6dbe1}.id-match{margin-top:.45rem;padding:.4rem .5rem;border-radius:8px;background:#22262b;display:flex;flex-direction:column;gap:1px}.id-match b{font-size:.82rem}.id-match span{font-size:.72rem;color:#8a929c}.id-match em{font-size:.66rem;font-style:normal}.id-match.sure em{color:#3ddc84}.id-match.guess em{color:#ffb454}.id-match.unsure em{color:#ff7a7a}.id-alts{margin-top:3px;padding-top:3px;border-top:1px solid #2e343b;display:flex;flex-direction:column;gap:1px}.id-alts span{font-size:.66rem;color:#8a929c}.id-alts i{font-style:normal;color:#5d646d}.inspect-cards{position:absolute;right:12px;top:12px;bottom:12px;width:258px;display:flex;flex-direction:column;background:#16181bd9;border:1px solid #34383e;border-radius:10px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);touch-action:pan-y}.inspect-cards-head{display:flex;align-items:center;gap:.55rem;padding:.55rem .65rem;border-bottom:1px solid #2a2e34;flex:none}.inspect-cards-head b{font-size:.8rem;margin-right:auto}.inspect-cards-head span{font-size:.68rem;color:#8a929c}.inspect-cards-list{overflow-y:auto;padding:.35rem;min-height:0}.scan-card-row{display:flex;align-items:center;gap:.55rem;padding:.35rem .4rem;border-radius:8px;cursor:pointer}.scan-card-row:hover{background:#1e2226}.scan-card-row.sel{background:#232a31;outline:1px solid #3c4550}.scan-card-row img{width:38px;height:53px;object-fit:cover;border-radius:4px;flex:none}.scan-card-info{min-width:0;flex:1;display:flex;flex-direction:column;gap:1px}.scan-card-info b{font-size:.74rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scan-card-info span{font-size:.66rem;color:#8a929c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scan-card-info em{font-size:.62rem;font-style:normal}.scan-card-info em.sure{color:#3ddc84}.scan-card-info em.guess{color:#ffb454}.scan-card-info em.unsure{color:#ff7a7a}.scan-card-row .toggle-btn{flex:none;padding:.25rem .55rem;font-size:.7rem}.scan-card-added{flex:none;color:#3ddc84;font-size:.74rem;font-weight:600}.inspect-cards~.inspect-zoom{right:282px}.scan-card-price{font-style:normal;color:#3ddc84;margin-right:.35rem}.scan-result{border:1px solid #2a2e34;border-radius:12px;background:#16181b;padding:.7rem .85rem;margin-bottom:.9rem}.scan-result-head{display:flex;align-items:baseline;gap:.7rem;margin-bottom:.55rem}.scan-result-head b{font-size:1.25rem;color:#3ddc84}.scan-result-head span{font-size:.78rem;color:#8a929c;margin-right:auto}.scan-result-cards{display:flex;gap:.55rem;overflow-x:auto;padding-bottom:.25rem}.scan-result-card{background:none;border:0;padding:0;cursor:pointer;flex:none;width:86px;display:flex;flex-direction:column;gap:2px;text-align:left;color:inherit}.scan-result-card img{width:86px;height:120px;object-fit:cover;border-radius:6px}.scan-result-card b{font-size:.74rem;color:#3ddc84}.scan-result-card b.unsure{color:#ffb454}.scan-result-card span{font-size:.66rem;color:#8a929c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:640px){.inspect-cards{width:min(76vw,258px);bottom:64px}.inspect-cards~.inspect-zoom{right:12px}}.spin{width:1em;height:1em;border-radius:50%;display:inline-block;border:2px solid #ffffff40;border-top-color:var(--accent);animation:spin .7s linear infinite;vertical-align:-.15em}@keyframes spin{to{transform:rotate(360deg)}}.seg{display:flex;gap:3px;padding:3px;border-radius:999px;background:#00000038;border:1px solid var(--line);box-shadow:inset 0 1px 2px #0006}.seg button{flex:1;border:0;background:transparent;color:var(--muted);font:600 .82rem/1 var(--font-ui);padding:.5rem .6rem;border-radius:999px;cursor:pointer;white-space:nowrap;letter-spacing:-.005em;transition:color var(--dur) var(--ease),background var(--dur) var(--ease)}.seg button:hover:not(.on){color:var(--text)}.seg button.on{background:var(--accent);color:var(--accent-ink);font-weight:700;box-shadow:inset 0 1px #fff3}.seg-lg button{font-size:.95rem;padding:.72rem}.scan{width:100%;max-width:560px;margin:0 auto;padding:1rem;display:flex;flex-direction:column;gap:.9rem}.scan-tag{margin:0;color:var(--muted);font-size:.85rem;line-height:1.35}.shoot{display:flex;align-items:center;justify-content:center;gap:.5rem;background:var(--accent);color:#201a12;font:700 1.05rem inherit;padding:1rem;border-radius:12px;cursor:pointer;-webkit-user-select:none;user-select:none}.shoot.busy{background:var(--panel);color:var(--muted);cursor:default}.scan-recent h2{font-size:.8rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin:.5rem 0}.recent-row{display:flex;align-items:center;gap:.7rem;width:100%;text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:.55rem;margin-bottom:.5rem;cursor:pointer;color:inherit}.recent-row img{width:44px;height:44px;object-fit:cover;border-radius:7px;flex:none}.recent-main{flex:1;min-width:0;display:flex;flex-direction:column}.recent-main b{font-size:.9rem}.recent-main span{font-size:.72rem;color:var(--muted)}.recent-total{color:var(--ok);font-size:1.1rem}.scan-tile-prog{flex:none;display:flex;flex-direction:column;align-items:flex-end;line-height:1.05;font-family:var(--font-mono);font-weight:600;font-size:1.2rem;letter-spacing:-.01em;font-variant-numeric:tabular-nums;color:var(--muted)}.scan-tile-prog.done{color:var(--ok)}.scan-tile-prog em{font-family:var(--font-ui);font-style:normal;font-weight:500;font-size:.6rem;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.sr{width:100%;max-width:560px;margin:0 auto;min-height:100dvh;display:flex;flex-direction:column;padding-bottom:5rem}.sr-bar{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:.6rem;padding:.55rem .7rem;background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.sr-bar .seg{flex:1}.sr-icon{flex:none;width:40px;height:40px;border-radius:9px;border:1px solid var(--line);background:var(--panel);color:var(--text);font-size:1.1rem;cursor:pointer}.sr-hero{position:relative;display:block;width:100%;border:0;padding:0;cursor:pointer;background:var(--stage)}.sr-hero img{width:100%;max-height:42vh;object-fit:contain;display:block}.sr-hero-hint{position:absolute;bottom:8px;right:8px;font-size:.68rem;color:#fff;background:#000000a0;padding:3px 8px;border-radius:20px}.sr-load{display:flex;align-items:center;gap:.5rem;justify-content:center;padding:2rem 1rem;color:var(--muted)}.sr-summary{padding:1.1rem 1.1rem .5rem;display:flex;flex-direction:column}.sr-summary b{font-family:var(--font-mono);font-size:2.5rem;line-height:.98;font-weight:600;letter-spacing:-.015em;font-variant-numeric:tabular-nums}.sr-summary.appraise b{color:var(--ok)}.sr-summary span{color:var(--muted);font-size:.82rem;margin-top:6px}.sr-summary em{font-style:normal;color:var(--warn);font-size:.82rem;margin-top:5px}.sr-list{list-style:none;margin:.3rem 0 0;padding:0}.sr-item{display:flex;align-items:center;gap:.7rem;padding:.55rem 1rem;border-top:1px solid var(--line);cursor:pointer;min-height:62px}.sr-item:active{background:#ffffff08}.sr-item>img{width:46px;height:64px;object-fit:cover;border-radius:5px;flex:none;background:#0006}.sr-item-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.sr-item-main b{font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sr-item-main span{font-size:.74rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sr-item-main em.warn{font-style:normal;color:var(--warn);font-size:.7rem}.sr-name{display:flex;align-items:baseline;gap:6px;min-width:0}.sr-name .sr-nm{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-game{flex:none;font-size:.6rem;font-weight:700;letter-spacing:.04em;color:var(--oak);border:1px solid var(--oak);border-radius:4px;padding:0 3px}.sr-item-right{flex:none;display:flex;align-items:center}.sr-item-right .price{font-size:1.05rem;color:var(--ok);font-variant-numeric:tabular-nums}.sr-item-right .price.dim{color:var(--muted)}.sr-item-right .owned{color:var(--ok);font-weight:600;font-size:.9rem}.sr-item-right .add{background:var(--accent);color:#201a12;border:0;border-radius:8px;font:700 .82rem inherit;padding:.5rem .9rem;cursor:pointer}.sr-item-right .add:disabled{opacity:.5}.sr-actions{position:fixed;left:0;right:0;bottom:0;z-index:6;max-width:560px;margin:0 auto;padding:.7rem 1rem calc(.7rem + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--line)}.sr-total{display:flex;align-items:baseline;gap:.6rem}.sr-total b{font-size:1.6rem;color:var(--ok);font-variant-numeric:tabular-nums}.sr-total span{color:var(--muted);font-size:.8rem}.sr-actions .primary{width:100%;background:var(--accent);color:#201a12;border:0;border-radius:11px;font:700 1rem inherit;padding:.9rem;cursor:pointer}.sr-actions .primary:disabled{background:var(--panel);color:var(--muted)}.sheet-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:#000000a0;display:flex;align-items:flex-end;justify-content:center}.sheet{width:100%;max-width:560px;background:var(--panel);border-radius:18px 18px 0 0;padding:.5rem 1.1rem calc(1.1rem + env(safe-area-inset-bottom));max-height:88dvh;overflow-y:auto;animation:sheet-up .2s ease}@keyframes sheet-up{0%{transform:translateY(100%)}}.sheet-grab{width:38px;height:4px;border-radius:3px;background:var(--line);margin:4px auto 12px}.sheet-imgs{display:flex;gap:.6rem}.sheet-imgs figure{flex:1;margin:0;min-width:0}.sheet-imgs img{width:100%;border-radius:8px;display:block}.sheet-imgs figcaption{text-align:center;font-size:.62rem;color:var(--muted);margin-top:3px;text-transform:uppercase;letter-spacing:.04em}.sheet h3{margin:.8rem 0 .15rem;font-size:1.15rem}.sheet-sub{margin:0;color:var(--muted);font-size:.85rem}.sheet-sub .price{color:var(--ok)}.sheet-tier{margin:.6rem 0 0;font-size:.82rem}.sheet-tier.sure{color:var(--ok)}.sheet-tier.guess{color:var(--warn)}.sheet-tier.unsure{color:var(--bad)}.sheet-alts{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-top:.5rem;font-size:.75rem;color:var(--muted)}.chip{background:#00000030;border:1px solid var(--line);color:var(--text);border-radius:20px;padding:.35rem .7rem;font-size:.78rem;cursor:pointer}.sheet-add{margin-top:.9rem;display:flex;flex-direction:column;gap:.5rem}.sheet-add .owned{color:var(--ok);font-size:.85rem}.ed-row{display:flex;flex-wrap:wrap;gap:6px}.sheet-close{width:100%;margin-top:1rem;background:transparent;color:var(--muted);border:1px solid var(--line);border-radius:11px;padding:.75rem;font:600 .95rem inherit;cursor:pointer}.sr-desk{max-width:none;margin:0;height:calc(100dvh - 53px);display:flex;flex-direction:column;padding:0}.sr-desk .sr-bar{padding:.5rem .9rem}.sr-desk .sr-bar .seg{flex:0 1 320px;margin:0 auto}.sr-work{flex:1;min-height:0;display:flex}.sr-stage{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;background:#000;padding:1rem;overflow:hidden}.sr-photo{position:relative;max-width:100%;max-height:100%}.sr-photo img{display:block;max-width:100%;max-height:calc(100dvh - 53px - 2rem);object-fit:contain}.sr-photo svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible}.sr-box polygon{fill:transparent;stroke-width:2.5;vector-effect:non-scaling-stroke;cursor:pointer;transition:stroke .1s}.sr-box text{fill:#fff;font-weight:800;text-anchor:middle;dominant-baseline:central;paint-order:stroke;stroke:#000a;stroke-width:6px;pointer-events:none}.sr-box.ok polygon{stroke:var(--ok)}.sr-box.warn polygon{stroke:var(--warn)}.sr-box.new polygon{stroke:var(--accent)}.sr-box.sel polygon{stroke:#fff;stroke-width:4}.sr-box:hover polygon{stroke:#fff}.sr-rail{flex:none;width:340px;border-left:1px solid var(--line);background:var(--panel);display:flex;flex-direction:column;min-height:0}.sr-rail .sr-summary{padding:.9rem 1rem .4rem;border-bottom:1px solid var(--line)}.sr-rail .sr-list{flex:1;overflow-y:auto;margin:0}.sr-rail .sr-item:first-child{border-top:0}.sr-rail-foot{padding:.7rem .9rem;border-top:1px solid var(--line)}.sr-rail-foot .primary{width:100%;background:var(--accent);color:#201a12;border:0;border-radius:10px;font:700 .95rem inherit;padding:.75rem;cursor:pointer}.sr-rail-foot .primary:disabled{background:#00000030;color:var(--muted)}.sr-detail{flex:none;width:340px;border-left:1px solid var(--line);background:var(--bg);display:flex;flex-direction:column;min-height:0}.sr-detail-head{display:flex;align-items:center;justify-content:space-between;padding:.7rem .9rem;border-bottom:1px solid var(--line)}.sr-detail-head b{font-size:.9rem}.sr-icon.sm{width:30px;height:30px;font-size:.9rem}.sr-detail-body{overflow-y:auto;padding:.9rem}.sr-detail-body .sheet-close{display:none}.sr-desk .sr-item{border-top:1px solid var(--line)}.sr-desk .sr-item.sel{background:#ffffff10}.sr-desk .sr-item:hover{background:#ffffff0a}.sr-total-link{display:flex;flex-direction:column;text-decoration:none;color:inherit}.sr-total-link b{color:var(--ok)}.cart-cta{font-style:normal;color:var(--accent);font-size:.82rem;margin-top:5px;font-weight:600}.sr-total-link:active .cart-cta,.sr-total-link:hover .cart-cta{text-decoration:underline}.sr-actions .primary.cart{display:block;text-align:center;text-decoration:none;line-height:1.3}.tcg-link{display:inline-block;margin-top:.5rem;color:var(--accent);font-size:.82rem;font-weight:600;text-decoration:none}.tcg-link:hover{text-decoration:underline}.sr-item.unsure>img{box-shadow:0 0 0 2px var(--warn)}.sheet-note{margin:.5rem 0 0;font-size:.82rem;color:var(--warn)}.sheet-add .primary{width:100%;background:var(--accent);color:#201a12;border:0;border-radius:10px;font:700 .95rem inherit;padding:.75rem;cursor:pointer}.sheet-add .primary:disabled{opacity:.5}.inspect-id{margin-top:.5rem;display:flex;flex-direction:column;gap:2px}.inspect-id>b{font-size:.9rem}.inspect-id>span{font-size:.74rem;color:var(--muted)}.inspect-id em.warn{font-style:normal;color:var(--warn);font-size:.72rem;margin-top:2px}.inspect-id-add{margin-top:.4rem}.inspect-id-add .add{background:var(--accent);color:#201a12;border:0;border-radius:8px;font:700 .8rem inherit;padding:.4rem .9rem;cursor:pointer}.inspect-id-add .owned{color:var(--ok);font-size:.82rem;font-weight:600}.dropzone{display:flex;align-items:center;justify-content:center;gap:.5rem;text-align:center;background:var(--accent);color:var(--accent-ink);font:700 1.05rem var(--font-ui);letter-spacing:-.01em;padding:1.05rem;border-radius:var(--r);cursor:pointer;-webkit-user-select:none;user-select:none;box-shadow:inset 0 1px #ffffff2e;transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease),filter var(--dur) var(--ease)}.dropzone:hover{filter:brightness(1.05)}.dropzone:active{transform:translateY(1px)}.dropzone .dropzone-icon{font-size:1.2rem}.dropzone .dropzone-hint{display:none}.dropzone.busy{background:var(--panel);color:var(--muted);cursor:default;box-shadow:var(--shadow-sm)}.scan-desk{width:100%;max-width:1120px;margin:0 auto;padding:2rem 1.5rem;display:flex;flex-direction:column;gap:2rem}.scan-start-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.1rem}.scan-start-head h1{margin:0;font-size:1.5rem}.scan-start-head .seg{flex:0 1 300px}.scan-desk .dropzone{flex-direction:column;gap:.55rem;min-height:200px;padding:2.5rem;background:var(--panel);border:2px dashed var(--line);color:var(--text);border-radius:16px;transition:border-color .12s,background .12s}.scan-desk .dropzone .dropzone-icon{font-size:2.1rem}.scan-desk .dropzone b{font-size:1.05rem}.scan-desk .dropzone .dropzone-hint{display:block;color:var(--muted);font-size:.85rem;font-weight:400}.scan-desk .dropzone.over{border-color:var(--accent);background:#2e2620}.scan-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:1rem}.scan-tile{background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden;padding:0;text-align:left;color:inherit;cursor:pointer;transition:transform .1s ease,border-color .1s,box-shadow .1s}.scan-tile:hover{transform:translateY(-2px);border-color:var(--accent);box-shadow:0 10px 28px #0007}.scan-tile-img{aspect-ratio:4 / 3;background:var(--stage)}.scan-tile-img img{width:100%;height:100%;object-fit:cover;display:block}.scan-tile-meta{display:flex;align-items:center;justify-content:space-between;padding:.55rem .75rem;gap:.5rem}.scan-tile-meta b{font-size:.9rem}.scan-tile-meta span{display:block;font-size:.72rem;color:var(--muted);font-weight:400}.scan-tile-total{color:var(--ok);font-size:1.2rem;font-variant-numeric:tabular-nums}.sr-desk .sr-work{max-width:1600px;margin:0 auto;width:100%}.sr-stage{background:var(--stage);padding:1.75rem}.sr-photo img{border-radius:6px;box-shadow:0 14px 44px #000a}.sr-actions .primary,.sr-rail-foot .primary,.sheet-add .primary,.sr-item-right .add,.inspect-id-add .add{background:var(--accent);color:var(--accent-ink);border:0;letter-spacing:-.005em;box-shadow:inset 0 1px #ffffff2e;transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease),filter var(--dur) var(--ease)}.sr-actions .primary:hover,.sr-rail-foot .primary:hover,.sheet-add .primary:hover,.sr-item-right .add:hover,.inspect-id-add .add:hover{filter:brightness(1.05)}.sr-actions .primary:active,.sr-rail-foot .primary:active,.sheet-add .primary:active,.sr-item-right .add:active,.inspect-id-add .add:active{transform:translateY(1px);box-shadow:0 3px 10px -5px #eaa63f99,inset 0 1px #fff5}.sr-actions .primary:disabled,.sr-rail-foot .primary:disabled,.sheet-add .primary:disabled{background:var(--panel-2);color:var(--faint);box-shadow:none;filter:none;cursor:default}.sr-total-link b{font-family:var(--font-mono);font-weight:600;font-size:2.5rem;line-height:.98;letter-spacing:-.02em}.sr-total b{font-family:var(--font-mono);font-weight:600;letter-spacing:-.02em}.scan-tile-total,.recent-total{font-family:var(--font-mono);font-weight:600;letter-spacing:-.01em}.scan-start-head h1,.scan-recent h2+*,.sr-detail-head b{letter-spacing:-.01em}h1{font-family:var(--font-display);font-weight:600;letter-spacing:-.01em}.sr-item>img,.sheet-imgs img,.scan-result-card img,.recent-row img{box-shadow:0 2px 8px -2px #000000a6,inset 0 0 0 1px #ffffff14}.sr-item.unsure>img{box-shadow:0 2px 8px -2px #000000a6,0 0 0 2px var(--warn)}.sr-item{border-top-color:#ffffff0a;transition:background var(--dur) var(--ease)}.sr-list{padding-bottom:.5rem}.recent-row{transition:transform var(--dur) var(--ease),border-color var(--dur) var(--ease)}.recent-row:hover{transform:translateY(-1px);border-color:#4a4038}.recent-row img{border-radius:9px}.scan-tile-img{position:relative}.scan-tile-img:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;box-shadow:inset 0 0 0 1px #ffffff10,inset 0 -40px 40px -30px #0009}.sr-bar{background:color-mix(in srgb,var(--bg) 80%,transparent)}.sr-photo img{box-shadow:0 30px 70px -20px #000000d9,0 0 0 1px #ffffff0f}.scan-desk .dropzone{box-shadow:inset 0 0 40px -20px #0008}.scan-desk .dropzone.over{box-shadow:0 0 0 1px var(--accent),0 10px 30px -10px #eaa63f4d}.dropzone-icon{filter:drop-shadow(0 2px 6px #0007)}.sr-load{position:relative}.spin{border-top-color:var(--accent)}.seg button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem}.seg button.on{box-shadow:none}.seg button svg{flex:none}.sr-item-right .price,.sheet-sub .price,.sr-item-main span,.recent-total,.scan-tile-total,.sr-summary span,.inspect-id>span{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.sr-item-main span,.inspect-id>span{font-size:.72rem}.cart-cta{display:inline-flex;align-items:center;gap:.35rem}.sr-actions .primary.cart{display:inline-flex;align-items:center;justify-content:center;gap:.5rem}svg.spin{width:auto;height:auto;border:0;animation:spin .8s linear infinite;color:currentColor}.sr-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--text);background:var(--panel);border:1px solid var(--line);transition:background var(--dur) var(--ease)}.sr-icon:hover{background:var(--panel-2)}.sr-icon:active{transform:scale(.94)}.sr-actions .primary,.sr-rail-foot .primary,.sheet-add .primary,.sr-item-right .add,.inspect-id-add .add,.scan .dropzone:not(.busy){background:var(--accent);color:var(--accent-ink);box-shadow:inset 0 1px #fff3;filter:none}.scan .dropzone:not(.busy):hover{background:var(--accent-2);filter:none}.tabs a svg,.tabbar a svg,.seg svg,.dropzone svg,.sr-icon svg,.cart-cta svg{vector-effect:non-scaling-stroke}.collection{width:100%;padding:1.5rem;max-width:1100px;margin:0 auto}.col-hero{padding:.5rem 0 1.6rem}.col-eyebrow{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.col-value{font-family:var(--font-mono);font-weight:600;font-size:3rem;line-height:1;letter-spacing:-.025em;color:var(--ok);margin-top:.35rem}.col-sub{color:var(--muted);font-size:.9rem;margin-top:.55rem}.col-unpriced{color:var(--faint)}.col-section{margin-bottom:2rem}.col-sets{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.7rem}.col-set{display:flex;flex-direction:column;gap:.5rem;text-align:left;cursor:pointer;width:100%;background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:.85rem .95rem;color:inherit;transition:transform var(--dur) var(--ease),border-color var(--dur) var(--ease)}.col-set:hover{transform:translateY(-2px);border-color:var(--faint)}.col-set-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.col-set-head b{font-size:.95rem}.col-set-val{color:var(--ok);font-family:var(--font-mono);font-size:1.05rem;letter-spacing:-.01em}.col-set-bar{height:5px;border-radius:999px;background:var(--panel-2);overflow:hidden}.col-set-bar div{height:100%;background:var(--ok);border-radius:999px}.col-set-meta{font-size:.75rem;color:var(--muted)}.col-top{display:flex;flex-direction:column;gap:.4rem}.col-top-row{display:flex;align-items:center;gap:.8rem;text-align:left;cursor:pointer;color:inherit;width:100%;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:.5rem .7rem;transition:border-color var(--dur) var(--ease)}.col-top-row:hover{border-color:var(--faint)}.col-top-row img{width:40px;height:56px;object-fit:cover;border-radius:5px;flex:none;box-shadow:inset 0 0 0 1px #ffffff14}.col-top-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.col-top-main b{font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.col-top-main span{font-size:.72rem;color:var(--muted)}.col-top-val{color:var(--ok);font-family:var(--font-mono);font-size:1rem;flex:none;letter-spacing:-.01em}.binder-crumb{display:flex;align-items:center;gap:.5rem;min-width:0}.binder-back{flex:none;display:inline-grid;place-items:center;width:34px;height:34px;border-radius:9px;background:var(--panel);border:1px solid var(--line);color:var(--muted);cursor:pointer;transition:color var(--dur) var(--ease),background var(--dur) var(--ease)}.binder-back:hover{color:var(--text);background:var(--panel-2)}@media(max-width:680px){.collection{padding:1rem}.col-value{font-size:2.4rem}.col-sets{grid-template-columns:1fr 1fr;gap:.5rem}}.market{padding:1.4rem 1.4rem 3rem;max-width:1100px;margin:0 auto;width:100%}.market-head h1{font-size:1.5rem;letter-spacing:-.02em;margin:0 0 .3rem}.market-head p{margin:0;max-width:66ch}.market .faint{color:var(--faint)}.market-stats{display:flex;gap:1.4rem;margin-top:.8rem;color:var(--muted);font-size:.85rem}.market-stats b{color:var(--text);font-weight:600}.market-filters{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;position:sticky;top:54px;z-index:5;background:var(--bg);padding:.8rem 0;border-bottom:1px solid var(--line);margin-top:.9rem}.market-filters input,.market-filters select{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:var(--r-sm);padding:.4rem .6rem;font:inherit;font-size:.88rem}.market-filters input{width:170px}.market-filters .count{margin-left:auto;font-size:.8rem}.market-table-wrap{overflow-x:auto}.market-table{width:100%;border-collapse:collapse}.market-table th{text-align:left;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:var(--faint);font-weight:500;padding:.8rem .5rem .5rem;border-bottom:1px solid var(--line);white-space:nowrap}.market-table th.r,.market-table td.r{text-align:right}.market-table .band-key{color:var(--accent);text-transform:none;letter-spacing:0}.card-row{cursor:pointer}.card-row td{padding:.65rem .5rem;border-bottom:1px solid var(--line);vertical-align:middle}.card-row:hover td{background:var(--panel)}.card-row.open td{background:var(--panel);border-bottom:none}.card-row .cname{font-weight:600;font-size:.94rem}.card-row .cmeta{font-size:.78rem}.crow-chips{display:flex;gap:.3rem;margin-top:.25rem;flex-wrap:wrap}.band-cell{font-size:.82rem;color:var(--muted);max-width:200px}.vs{font-weight:600;white-space:nowrap}.vs.up{color:var(--ok)}.vs.down{color:var(--bad)}.ladder .band{fill:var(--accent);opacity:.12}.ladder .grid,.detail-chart .grid{stroke:var(--line);stroke-width:1}.ladder .lab,.detail-chart .lab{font-size:8.5px;fill:var(--faint)}.detail-chart .lab{font-size:10px}.ladder .cliff-ring{fill:none;stroke:var(--accent);stroke-width:1.5}.detail-row td{padding:.2rem .5rem 1.2rem;background:var(--panel);border-bottom:1px solid var(--line)}.detail-flex{display:flex;gap:1.6rem;flex-wrap:wrap;align-items:flex-start}.detail-chart{position:relative;flex:1 1 560px;min-width:0;overflow-x:auto}.detail-chart .legend{display:flex;gap:.9rem;font-size:.78rem;color:var(--muted);margin:.2rem 0 .4rem;flex-wrap:wrap}.detail-chart .legend i,.chart-tip i{display:inline-block;width:12px;height:3px;border-radius:2px;vertical-align:middle;margin-right:4px}.detail-chart .xhair{stroke:var(--faint);stroke-width:1;opacity:.6}.chart-tip{position:absolute;top:2.2rem;right:0;pointer-events:none;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-sm);padding:.4rem .6rem;font-size:.76rem;box-shadow:var(--shadow-sm);line-height:1.5}.ladder-list td{padding:.15rem 0;font-size:.85rem}.ladder-list td:first-child{padding-right:1.1rem;font-weight:600}.ladder-list .in-band{color:var(--accent);font-weight:600}.market-foot{font-size:.78rem;max-width:74ch;margin-top:1.6rem}@media(max-width:760px){.market{padding:1rem .8rem 3rem}.market-filters{top:0}.market-table .hide-m,.market-table th:nth-child(3),.market-table th:nth-child(5){display:none}}.graded{margin-top:1rem;border-top:1px solid var(--line);padding-top:.85rem}.graded-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:.5rem}.graded-head span{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.graded-head b{color:var(--ok);font-family:var(--font-mono);font-size:.95rem}.graded-row{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:.6rem;padding:.5rem .6rem;border:1px solid var(--line);border-radius:var(--r-sm);background:#00000030;margin-bottom:.35rem;text-align:left}.graded-row>b{font-size:.85rem;font-weight:600}.graded-print{font-size:.78rem;color:var(--muted)}.graded-val{color:var(--ok);font-size:.85rem;text-align:right;font-variant-numeric:tabular-nums}.graded-add{display:flex;gap:.4rem;align-items:center;margin-top:.5rem}.graded-add select,.graded-add input{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:7px;padding:.42rem .5rem;font:500 .82rem var(--font-ui)}.graded-grade{width:3.4rem;text-align:center}.graded-add select{cursor:pointer}.graded-add-btn{margin-left:auto;background:var(--panel-2);color:var(--text);border:1px solid var(--line);border-radius:8px;padding:.44rem .75rem;font:600 .82rem var(--font-ui);cursor:pointer;white-space:nowrap}.graded-add-btn:hover:not(:disabled){background:var(--line)}.graded-add-btn:disabled{opacity:.5;cursor:default}.ladder{margin-bottom:.55rem;font-size:.78rem}.ladder-strip{display:flex;gap:0;overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-sm);background:#00000030}.ladder-step{flex:1 0 auto;display:flex;flex-direction:column;align-items:center;gap:1px;padding:.4rem .55rem;border-right:1px solid var(--line)}.ladder-step:last-child{border-right:none}.ladder-grade{font-size:.62rem;font-weight:700;letter-spacing:.03em;color:var(--muted);white-space:nowrap}.ladder-price{font-family:var(--font-mono);font-size:.74rem;color:var(--text);white-space:nowrap}.ladder-src{margin-top:.3rem;font-size:.68rem}.ladder-src a{color:var(--muted)}.col-grade-badge{flex:none;font-size:.62rem;font-weight:700;letter-spacing:.02em;color:var(--accent-ink);background:var(--ok);border-radius:5px;padding:1px 5px;margin-left:.4rem}.battle-lobby{display:flex;flex-direction:column;align-items:center;gap:.9rem;padding:3rem 1.2rem;text-align:center;color:var(--text)}.battle-lobby h2{margin:0}.battle-lobby p{color:var(--muted, #9a9aa2);max-width:26rem;margin:0}.lobby-pickers{display:flex;align-items:end;gap:.9rem;flex-wrap:wrap;justify-content:center}.lobby-pickers .vs{font-weight:700;color:var(--accent);padding-bottom:.55rem}.deck-picker{display:flex;flex-direction:column;gap:.3rem;font-size:.8rem;text-align:left}.deck-picker select{background:var(--panel, #17171b);color:var(--text);border:1px solid #ffffff22;border-radius:8px;padding:.5rem .65rem;font-size:.92rem;text-transform:capitalize}.btn-primary{background:var(--accent);color:var(--accent-ink);border:none;border-radius:9px;padding:.6rem 1.2rem;font-weight:700;font-size:.95rem;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem}.btn-primary:disabled{opacity:.45;cursor:default}.btn-ghost{background:transparent;color:var(--text);border:1px solid #ffffff2a;border-radius:9px;padding:.45rem .8rem;font-size:.85rem;cursor:pointer;display:inline-flex;align-items:center;gap:.35rem}.btn-ghost:disabled{opacity:.4;cursor:default}.battle-shell{display:flex;flex-direction:column;padding:.35rem .6rem .5rem;width:100%;max-width:900px;margin:0 auto;gap:.25rem;position:relative;overflow-x:clip;box-sizing:border-box}.battle-shell>*{min-width:0}.hand{max-width:100%}.opp-bar,.my-bar{display:flex;align-items:center;gap:.3rem .45rem;font-size:.82rem;color:var(--text);flex-wrap:wrap}.opp-bar .deckname{font-weight:700;text-transform:capitalize;margin-right:.3rem}.pill{background:var(--panel, #17171b);border:1px solid #ffffff1c;border-radius:999px;padding:.16rem .55rem;font-size:.78rem;color:var(--text)}.pill.link{cursor:pointer}.grow{flex:1}.prizes{display:inline-flex;gap:3px;margin-left:.2rem}.prize{width:11px;height:15px;border-radius:2.5px;background:#2c2c33;border:1px solid #ffffff2e}.prize.taken{background:var(--accent);border-color:var(--accent)}.board{display:flex;flex-direction:column;gap:.3rem}.opp-board{flex-direction:column}.my-board{flex-direction:column-reverse}.bench{display:flex;gap:.35rem;justify-content:center;min-height:1.2rem;flex-wrap:wrap}.active-row{display:flex;justify-content:center}.active-cluster{display:flex;gap:.6rem;align-items:flex-start;position:relative}.bench-slot{position:relative}.empty-active{border:1.5px dashed #ffffff2a;border-radius:10px;width:80px;height:110px;display:grid;place-items:center;color:#9a9aa2;font-size:.72rem}.benchnote{font-size:.75rem;align-self:center}.pokecard{position:relative;width:92px;cursor:pointer}.pokecard.small{width:64px}.pokecard img{width:100%;border-radius:6px;display:block;box-shadow:0 2px 8px #0008}.pokecard.hl img{outline:2.5px solid var(--accent);border-radius:6px}.pokecard .dmg{position:absolute;top:4px;right:4px;background:#d32f2f;color:#fff;font-size:.72rem;font-weight:800;border-radius:6px;padding:.05rem .3rem}.pokecard .status{position:absolute;top:4px;left:4px;font-size:.85rem;text-shadow:0 1px 2px #000}.pokecard .status.tool{top:1.4rem}.pokecard .status.confused{top:1.4rem;left:auto;right:4px}.hpbar{height:5px;border-radius:3px;background:#fff2;margin-top:3px;overflow:hidden}.hpfill{height:100%;border-radius:3px}.under{display:flex;align-items:center;justify-content:space-between;margin-top:2px}.hptext{font-size:.68rem;color:var(--text);display:inline-flex;align-items:center;gap:2px}.pips{display:inline-flex;gap:2.5px;flex-wrap:wrap}.pip{width:9px;height:9px;border-radius:50%;border:1px solid #0006;display:inline-block}.pip.special{background:linear-gradient(135deg,#ab47bc 50%,#455a64 50%)}.center-strip{display:flex;align-items:center;gap:.35rem .7rem;justify-content:space-between;flex-wrap:wrap;background:var(--panel, #17171b);border:1px solid #ffffff14;border-radius:10px;padding:.35rem .6rem;font-size:.84rem;color:var(--text)}.stadium-chip{background:none;border:none;color:var(--accent-2);cursor:pointer;font-size:.8rem}.turnbanner .yours{color:var(--accent)}.center-buttons{display:flex;gap:.35rem}.center-buttons .btn-ghost{padding:.3rem .55rem;font-size:.78rem}.hintbox{background:#2a2413;border:1px solid var(--accent);color:var(--text);border-radius:10px;padding:.5rem .7rem;font-size:.85rem;display:flex;align-items:center;gap:.4rem}.hintbox .x,.log-head .x{margin-left:auto;background:none;border:none;color:var(--text);cursor:pointer;display:grid;place-items:center}.battle-err{margin:0}.hand{display:flex;gap:.3rem;overflow-x:auto;padding:.35rem .2rem .45rem;min-height:5.6rem;align-items:flex-start}.hand-slot{position:relative;flex:0 0 auto}.hand-card{width:72px;border-radius:5px;display:block;cursor:pointer;transition:transform .08s}.hand-card:hover,.hand-card.sel{transform:translateY(-6px);outline:2.5px solid var(--accent)}.action-menu{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:#202027;border:1px solid #ffffff26;border-radius:10px;padding:.3rem;display:flex;flex-direction:column;gap:2px;min-width:13rem;z-index:40;box-shadow:0 6px 22px #000a}.action-menu button{background:none;border:none;color:var(--text);text-align:left;font-size:.83rem;padding:.42rem .55rem;border-radius:7px;cursor:pointer}.action-menu button:hover{background:var(--accent);color:var(--accent-ink)}.action-menu button.ghost{color:#9a9aa2}.action-menu .note{font-size:.75rem;padding:.3rem .55rem}.attack-panel{display:flex;flex-direction:column;gap:.3rem;min-width:15rem;max-width:19rem}.attack{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;background:var(--panel, #17171b);border:1px solid #ffffff1e;border-radius:9px;color:var(--text);padding:.45rem .6rem;font-size:.84rem;cursor:default;text-align:left}.attack.usable{border-color:var(--accent);cursor:pointer}.attack.usable:hover{background:var(--accent);color:var(--accent-ink)}.attack.usable:hover .atk-reason{color:var(--accent-ink)}.atk-name{font-weight:700}.atk-dmg{margin-left:auto;font-weight:800}.atk-reason{flex-basis:100%;font-size:.7rem;color:#9a9aa2}.atk-foot{font-size:.72rem;color:#9a9aa2;display:flex;align-items:center;gap:.25rem}.endturn{padding:.5rem 1rem}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000a;display:grid;place-items:center;z-index:60;padding:1rem}.choice-panel{background:#1b1b20;border:1px solid #ffffff22;border-radius:14px;padding:1rem;max-width:42rem;width:100%;max-height:82dvh;display:flex;flex-direction:column;gap:.8rem;color:var(--text)}.choice-panel h3{margin:0;font-size:1rem}.choice-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(6.4rem,1fr));gap:.5rem;overflow-y:auto}.choice{background:#232329;border:1.5px solid #ffffff1e;border-radius:10px;padding:.4rem;color:var(--text);font-size:.72rem;cursor:pointer;display:flex;flex-direction:column;gap:.3rem;align-items:center}.choice img{width:100%;border-radius:5px}.choice.on{border-color:var(--accent);background:#2a2413}.choice-actions{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap}.gameover{background:#1b1b20;border:1px solid var(--accent);border-radius:16px;padding:1.6rem 2rem;text-align:center;color:var(--text);display:flex;flex-direction:column;gap:.8rem}.gameover h2{margin:0}.gameover p{margin:0;color:#9a9aa2}.inspect{background:#1b1b20;border:1px solid #ffffff22;border-radius:14px;padding:1rem;display:flex;gap:1rem;max-width:40rem;max-height:86dvh;overflow-y:auto;color:var(--text)}.inspect img{width:240px;border-radius:10px;align-self:flex-start}.inspect-text{font-size:.85rem;display:flex;flex-direction:column;gap:.4rem}.inspect-text h3{margin:0}.inspect-text p{margin:0;color:#c8c8cf}.log-drawer{position:fixed;top:0;right:0;bottom:0;width:min(22rem,88vw);background:#16161a;border-left:1px solid #ffffff22;z-index:70;display:flex;flex-direction:column;padding:.8rem}.log-head{display:flex;align-items:center;color:var(--text);margin-bottom:.5rem}.log-lines{overflow-y:auto;display:flex;flex-direction:column;gap:.28rem;font-size:.8rem}.log-line{color:#c8c8cf}.log-line.who-game{color:var(--accent-2)}.log-line.who-p2{color:#9a9aa2}@media(max-width:640px){.battle-shell{padding:.3rem .45rem .4rem}.pokecard{width:82px}.pokecard.small{width:56px}.empty-active{width:68px;height:94px}.active-cluster{flex-direction:column;align-items:center;gap:.35rem}.attack-panel{min-width:0;width:100%;max-width:22rem}.attack{padding:.5rem .6rem}.hand-card{width:62px}.hand{min-height:4.9rem;padding-bottom:.55rem}.center-strip{padding:.3rem .5rem;font-size:.8rem}.center-buttons{width:100%;justify-content:space-between}.center-buttons .btn-ghost{flex:1;justify-content:center;padding:.42rem .3rem}.prize{width:9px;height:13px}.action-menu{position:fixed;left:.6rem;right:.6rem;bottom:.6rem;top:auto;transform:none;min-width:0;z-index:90;padding:.45rem;box-shadow:0 -6px 30px #000c;border-color:#ffffff3a}.action-menu button{padding:.65rem .7rem;font-size:.92rem}.choice-panel{padding:.7rem;max-height:88dvh}.choice-grid{grid-template-columns:repeat(auto-fill,minmax(5.2rem,1fr))}.inspect{flex-direction:column}.inspect img{width:170px;align-self:center}.gameover{padding:1.2rem 1.3rem}.endturn{padding:.5rem .85rem;font-size:.88rem}}.sr:not(.sr-desk) .sr-list{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem .4rem;margin:.4rem 0 0;padding:0 .75rem}.sr-tile{display:flex;flex-direction:column;gap:3px;cursor:pointer;list-style:none}.sr-tile-img{position:relative;aspect-ratio:4 / 3;border-radius:8px;overflow:hidden;background:var(--stage)}.sr-tile-img>img{width:100%;height:100%;object-fit:cover;object-position:top;display:block}.sr-tile-idx{position:absolute;top:4px;left:4px;font-size:.6rem;font-weight:700;color:#fff;background:#000000a6;border-radius:5px;padding:0 4px;line-height:1.45}.sr-tile-price{text-align:center;padding:0 2px;line-height:1.1;font-family:var(--font-mono);font-weight:600;font-size:.86rem;letter-spacing:-.01em;color:var(--ok)}.sr-tile-price.dim{color:var(--faint)}.sr-tile.unsure .sr-tile-img{box-shadow:inset 0 0 0 2px var(--warn)}.modal-imgs{width:46%;max-width:320px;align-self:flex-start;display:flex;gap:.5rem}.modal-imgs figure{flex:1;min-width:0;margin:0}.modal-imgs img{width:100%;border-radius:8px;display:block;box-shadow:inset 0 0 0 1px #ffffff14}.modal-imgs figcaption{text-align:center;font-size:.62rem;color:var(--muted);margin-top:3px;text-transform:uppercase;letter-spacing:.04em}@media(max-width:680px){.modal-imgs{width:100%;max-width:360px;align-self:center}}.sr-bar-title{flex:1;text-align:center;font-size:.9rem;font-weight:600;color:var(--muted)}.sr-tile-owned{position:absolute;top:4px;right:4px;width:16px;height:16px;border-radius:50%;background:var(--ok);color:#06281a;font-size:.62rem;font-weight:800;display:grid;place-items:center}.sr-item-right .owned.sm{font-size:.85rem;color:var(--ok);margin-right:.15rem}.sr-err{color:var(--bad);font-size:.82rem;padding:.3rem 1rem}.sr-foot2{display:flex;gap:.5rem;align-items:stretch}.sr-foot2 .primary{flex:1;width:auto}.sr-cart{flex:none;display:inline-flex;align-items:center;gap:.4rem;white-space:nowrap;padding:0 .95rem;border-radius:11px;text-decoration:none;background:var(--panel-2);color:var(--text);border:1px solid var(--line);font:700 .95rem var(--font-ui);font-variant-numeric:tabular-nums;transition:background var(--dur) var(--ease)}.sr-cart:hover{background:var(--line)}.sr-rail-foot .sr-cart{padding:.5rem .8rem}.pgroup{display:flex;flex-direction:column;gap:4px}.slab-row{margin-left:1.15rem;background:#00000024;cursor:default}.slab-row:hover{border-color:var(--line);background:#00000024}.slab-branch{color:var(--faint);margin-right:.4rem;font-family:var(--font-mono)}.slab-row .v-label{display:inline-flex;align-items:baseline;font-size:.82rem}.v-price-btn{background:transparent;border:0;padding:0;cursor:pointer;font-family:inherit;color:var(--ok);text-align:right}.v-price-btn:hover{text-decoration:underline dotted;text-underline-offset:2px}.v-est{font-size:.58em;color:var(--faint);margin-left:2px;text-transform:uppercase;letter-spacing:.03em;font-weight:500}.v-price-edit{display:inline-flex;align-items:baseline;justify-content:flex-end;gap:0}.gv-cur{color:var(--ok);font:600 .85rem var(--font-mono)}.gv-input{width:3.2rem;text-align:right;background:var(--panel-2);border:0;outline:1px solid var(--line);color:var(--text);font:600 .85rem var(--font-mono);font-variant-numeric:tabular-nums;padding:1px 2px;border-radius:5px}.add-slab-toggle{align-self:flex-start;margin-top:.6rem;background:transparent;border:0;color:var(--faint);font:500 .76rem var(--font-ui);cursor:pointer;padding:3px 4px;border-radius:5px}.add-slab-toggle:hover{color:var(--text)}.rare-toggle{align-self:flex-start;margin-top:.5rem;background:transparent;border:0;color:var(--faint);font:500 .76rem var(--font-ui);cursor:pointer;padding:3px 4px;border-radius:5px}.rare-toggle:hover{color:var(--text)}.add-slab{margin-top:.6rem;display:flex;flex-direction:column;gap:8px}.add-slab-form{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.add-slab-form select,.add-slab-form input{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:7px;padding:.36rem .5rem;font:500 .82rem var(--font-ui)}.add-slab-form .graded-grade{min-width:4.6rem}.pgroup-cancel{background:transparent;border:0;color:var(--muted);cursor:pointer;font-size:.95rem;line-height:1;padding:0 .2rem}.pgroup-cancel:hover{color:var(--text)}.prov{display:block;margin:1px 0 3px}.prov.indent{margin-left:1.15rem}.prov-add{background:transparent;border:0;color:var(--faint);cursor:pointer;padding:2px 3px;border-radius:5px;font:500 .73rem var(--font-ui)}.prov-add:hover{color:var(--muted)}.prov-gl{font-size:.76rem;font-variant-numeric:tabular-nums}.prov-gl.up{color:var(--ok);font-weight:600}.prov-gl.down{color:var(--bad);font-weight:600}.prov-note{color:var(--faint);font-size:.76rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:15rem}.prov-edit{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:3px 0}.prov-paidf{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:.78rem;white-space:nowrap}.prov-cur{color:var(--muted)}.prov-input{width:4.4rem;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:6px;padding:3px 6px;font:500 .82rem var(--font-mono);font-variant-numeric:tabular-nums;text-align:right}.prov-notef{flex:1;min-width:9rem;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:6px;padding:4px 8px;font:500 .8rem var(--font-ui)}.prov-notef:focus,.prov-input:focus{outline:1px solid var(--accent);border-color:var(--accent)}.prov-done{background:transparent;border:0;color:var(--accent);cursor:pointer;font:600 .78rem var(--font-ui);padding:3px 6px}.two-line,.slab-row{align-items:start}.slab-id{display:inline-flex;align-items:baseline}.slab-id-main{display:inline-flex;flex-direction:column;align-items:flex-start;gap:0;min-width:0}.slab-grade{color:var(--accent);font-weight:600;font-size:.82rem;text-decoration:none}.slab-grade .ext{font-size:.82em;opacity:.7}.slab-grade:hover{text-decoration:underline}.slab-grade.plain{color:var(--text)}.slab-cert{background:transparent;border:0;cursor:pointer;color:var(--faint);font:500 .71rem var(--font-mono);padding:0 2px;border-radius:4px;text-align:left}.slab-cert:hover{color:var(--muted);background:var(--panel-2)}.slab-cert.add{font-family:var(--font-ui)}.slab-cert-input{width:8rem;margin-top:1px;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:6px;padding:2px 6px;font:500 .78rem var(--font-mono)}.slab-cert-input:focus{outline:1px solid var(--accent);border-color:var(--accent)}.v-price-col,.slab-price{display:inline-flex;flex-direction:column;align-items:flex-end;gap:0}.delta{background:transparent;border:0;cursor:pointer;font:600 .72rem var(--font-mono);font-variant-numeric:tabular-nums;padding:0 1px;border-radius:4px;white-space:nowrap}.delta.up{color:var(--ok)}.delta.down{color:var(--bad)}.delta.delta-add{color:var(--faint);font-weight:500;font-family:var(--font-ui)}.delta:hover{text-decoration:underline;text-underline-offset:2px}.slab-note{display:block;max-width:100%;background:transparent;border:0;cursor:pointer;color:var(--faint);font:400 .76rem var(--font-ui);padding:1px 3px;border-radius:5px;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slab-note:hover{color:var(--muted);background:var(--panel-2)}.signin{min-height:100dvh;display:grid;place-items:center;padding:1.5rem;background:radial-gradient(120% 90% at 50% -10%,color-mix(in srgb,var(--accent) 9%,transparent),transparent 60%),var(--bg)}.signin-card{width:100%;max-width:380px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:2rem 1.75rem;display:flex;flex-direction:column;gap:1rem}.signin-brand{display:flex;align-items:center;justify-content:center;gap:.55rem}.signin-tagline{text-align:center;color:var(--muted);font-size:.9rem;margin:-.3rem 0 .6rem}.signin-loading{display:grid;place-items:center;padding:1rem;opacity:.6;animation:pulse 1.4s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.35}50%{opacity:.8}}.signin-or{display:flex;align-items:center;gap:.6rem;color:var(--faint);font-size:.78rem}.signin-or:before,.signin-or:after{content:"";flex:1;height:1px;background:var(--line)}.signin-form{display:flex;flex-direction:column;gap:.75rem}.signin-form label{display:flex;flex-direction:column;gap:.3rem}.signin-form label span{font-size:.78rem;font-weight:600;color:var(--muted)}.signin-form input{background:var(--bg);border:1px solid var(--line);border-radius:9px;padding:.6rem .7rem;font:400 .95rem var(--font-ui);color:var(--text)}.signin-form input:focus{outline:none;border-color:var(--accent)}.signin-form .btn-primary{justify-content:center;margin-top:.25rem}.signin-error{color:var(--bad);font-size:.85rem;text-align:center}.btn-google{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;background:#fff;color:#1f1f1f;border:1px solid var(--line);border-radius:9px;padding:.6rem 1rem;font:600 .92rem var(--font-ui);cursor:pointer}.btn-google:hover{box-shadow:var(--shadow-sm)}.btn-google:disabled,.btn-apple:disabled{opacity:.6;cursor:default}.btn-apple{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:#000;color:#fff;border:1px solid #000;border-radius:9px;padding:.6rem 1rem;font:600 .92rem var(--font-ui);cursor:pointer;margin-bottom:.6rem}.btn-apple:hover{background:#1a1a1a}.account-chip{margin-left:auto;display:inline-flex;align-items:center;gap:.4rem;background:transparent;border:1px solid var(--line);border-radius:999px;padding:.3rem .7rem;color:var(--muted);font:600 .82rem var(--font-ui);cursor:pointer}.account-chip:hover{color:var(--text);border-color:var(--line-hi)}.account-name{max-width:14ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-page{max-width:460px;margin:2rem auto;padding:0 1.25rem}.account-fields{display:grid;grid-template-columns:auto 1fr;gap:.5rem 1.25rem;margin:1.25rem 0 1.75rem}.account-fields dt{color:var(--muted);font-size:.85rem}.account-fields dd{margin:0;font-weight:600}.offline-bar{display:flex;align-items:center;gap:.55rem;padding:.5rem 1.1rem;font-size:.82rem;line-height:1.3;background:color-mix(in oklab,var(--warn) 16%,var(--panel));color:var(--text);border-bottom:1px solid color-mix(in oklab,var(--warn) 34%,var(--line))}.offline-bar b{font-weight:600;color:var(--warn)}.offline-bar.syncing{background:var(--panel-2);border-bottom-color:var(--line);color:var(--muted)}.offline-dot{width:8px;height:8px;border-radius:50%;flex:none;background:var(--warn);box-shadow:0 0 0 3px color-mix(in oklab,var(--warn) 22%,transparent)}.offline-spin{width:12px;height:12px;flex:none;border-radius:50%;border:2px solid var(--line);border-top-color:var(--muted);animation:offline-spin .7s linear infinite}@keyframes offline-spin{to{transform:rotate(360deg)}}.pocket .cap-status.cap-dim{color:var(--muted);font-weight:500}.pocket.empty-slot{opacity:.5;cursor:default}.pocket.empty-slot .pocket-img{border:1px dashed var(--line);background:transparent;display:grid;place-items:center}.pocket.empty-slot .cap-status{justify-self:center}.preset-list{display:flex;flex-direction:column;gap:2px;margin-bottom:.5rem}.preset-opt{display:flex;align-items:flex-start;gap:.5rem;width:100%;background:transparent;border:0;padding:.4rem .35rem;border-radius:8px;cursor:pointer;text-align:left;color:var(--text)}.preset-opt:hover{background:var(--panel-2)}.preset-opt.on{background:color-mix(in srgb,var(--accent) 12%,transparent)}.preset-opt .check{margin-top:1px;flex:0 0 auto}.preset-text{display:flex;flex-direction:column;gap:1px;line-height:1.25}.preset-text b{font-size:.86rem;font-weight:600}.preset-text em{font-size:.72rem;color:var(--muted);font-style:normal}.arrange-btn{display:inline-flex;align-items:center;gap:.35rem;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:.35rem .7rem;font:600 .82rem var(--font-ui);color:var(--muted);cursor:pointer}.arrange-btn:hover{color:var(--text);border-color:var(--line-hi)}.arrange-bar{display:flex;align-items:center;gap:.6rem;width:100%}.arrange-hint{display:inline-flex;align-items:center;gap:.35rem;color:var(--muted);font-size:.82rem}.arrange-reset{margin-left:auto;background:transparent;border:0;color:var(--muted);font:500 .8rem var(--font-ui);cursor:pointer;text-decoration:underline}.arrange-reset:hover{color:var(--text)}.arrange-done{background:var(--accent);color:var(--accent-ink);border:0;border-radius:8px;padding:.4rem 1rem;font-weight:700;font-size:.85rem;cursor:pointer}.arrange-page{margin:.5rem 0 3rem}.pocket.sortable{cursor:grab;user-select:none;-webkit-user-select:none;position:relative}.pocket.sortable:active{cursor:grabbing}.pocket.sortable.dragging{box-shadow:var(--shadow-lg)}.pocket.sortable .drag-badge{position:absolute;top:4px;right:4px;display:grid;place-items:center;width:20px;height:20px;border-radius:6px;background:color-mix(in srgb,var(--panel) 80%,transparent);color:var(--muted);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.pocket.blank{cursor:default}.pocket.blank .pocket-img{border:1px dashed var(--line);background:transparent}.pocket.sortable.blank{opacity:.6}.arrange-add{background:var(--panel);border:1px solid var(--line);border-radius:7px;padding:.3rem .6rem;font:600 .8rem var(--font-ui);color:var(--muted);cursor:pointer}.arrange-add:hover{color:var(--text);border-color:var(--line-hi)}.pocket.sortable .spacer-remove{position:absolute;top:3px;right:3px;width:20px;height:20px;border:0;border-radius:6px;background:color-mix(in srgb,var(--bad) 88%,black);color:#fff;font-size:.7rem;line-height:1;cursor:pointer;display:grid;place-items:center}
