:root{--color-bg: #1a1a14;--color-shelf: #2c1f0e;--color-shelf-edge: #8b6914;--color-leather: #1e3a2f;--color-leather-dark: #152a21;--color-spine-text: #d4af37;--color-gold: #d4af37;--color-gold-light: #f0d060;--color-text: #e8dcc8;--color-text-muted: #8a7a60;--color-pocket: #0d1f18;--color-pocket-border: #2a4a38;--color-unowned-overlay: rgba(0, 0, 0, .55);--font-display: "Cinzel", serif;--font-body: "Crimson Pro", Georgia, serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--radius-card: 4px;--transition-fast: .15s ease;--transition-med: .2s ease}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;padding:0;min-height:100vh;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:16px;line-height:1.5}h1,h2,h3,h4{font-family:var(--font-display);color:var(--color-gold);letter-spacing:.04em;margin:0 0 .5em}a{color:var(--color-gold-light);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-gold)}button{font-family:inherit;cursor:pointer}.placeholder{max-width:720px;margin:4rem auto;padding:2rem;text-align:center}.centered-loader{display:flex;align-items:center;justify-content:center;min-height:100vh;color:var(--color-text-muted);font-style:italic}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:1rem}.login-card{background:linear-gradient(180deg,var(--color-leather),var(--color-leather-dark));border:1px solid var(--color-shelf-edge);border-radius:8px;padding:3rem 2.5rem;max-width:420px;width:100%;text-align:center;box-shadow:0 16px 48px #00000080}.login-card h1{font-size:2.25rem;margin-bottom:.5rem}.login-tagline{color:var(--color-text-muted);font-style:italic;margin-bottom:2rem}.google-signin{display:inline-flex;align-items:center;gap:.75rem;background:#fff;color:#1f1f1f;border:none;border-radius:4px;padding:.75rem 1.5rem;font-family:var(--font-body);font-size:1rem;font-weight:500;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.google-signin:hover{transform:translateY(-1px);box-shadow:0 6px 18px #d4af374d}.top-nav{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;border-bottom:1px solid var(--color-shelf-edge)}.top-nav h1{font-size:1.5rem;margin:0}.top-nav-actions{display:flex;gap:1.5rem;align-items:center}.link-button{background:none;border:none;color:var(--color-gold-light);font-family:inherit;font-size:inherit;padding:0;cursor:pointer}.link-button:hover{color:var(--color-gold)}.signed-in-as{color:var(--color-text-muted);font-family:var(--font-mono);font-size:.85rem;padding-right:1rem;margin-right:.5rem;border-right:1px solid var(--color-shelf-edge)}.legal-page{max-width:760px;width:100%;margin:2rem auto 4rem;padding:0 2rem;min-height:100vh}.legal-header{margin-bottom:1.75rem}.legal-header h1{font-family:var(--font-display);color:var(--color-gold);margin:.75rem 0 .25rem}.legal-updated{color:var(--color-text-muted);font-style:italic;margin:0;font-size:.9rem}.legal-page h2{font-family:var(--font-display);color:var(--color-gold);font-size:1.15rem;letter-spacing:.04em;margin:1.75rem 0 .5rem}.legal-page p,.legal-page li{font-size:.95rem;line-height:1.6;color:var(--color-text)}.legal-page ul{padding-left:1.5rem}.legal-page a{color:var(--color-gold-light)}.legal-page a:hover{color:var(--color-gold)}.site-footer{display:flex;align-items:center;justify-content:center;gap:.6rem;padding:1.5rem 1rem 1rem;margin-top:auto;color:var(--color-text-muted);font-family:var(--font-mono);font-size:.8rem;letter-spacing:.02em}.site-footer a{color:var(--color-text-muted);text-decoration:none}.site-footer a:hover{color:var(--color-gold-light)}.site-footer-sep{opacity:.5}.login-page{flex-direction:column}.home{min-height:100vh;display:flex;flex-direction:column}.want-notifications{max-width:640px;width:100%;margin:1.5rem auto 0;padding:.85rem 1rem;background:#d4af371a;border:1px solid var(--color-gold);border-radius:6px}.want-notifications-header{margin:0 0 .5rem;font-family:var(--font-display);font-size:.9rem;letter-spacing:.1em;color:var(--color-gold)}.want-notifications ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.25rem}.want-notifications li button{width:100%;text-align:left;background:none;border:1px solid transparent;color:var(--color-text);padding:.4rem .6rem;border-radius:3px;font-family:var(--font-body);font-size:.95rem;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.want-notifications li button:hover{background:#d4af371f;border-color:var(--color-shelf-edge)}.want-notifications strong{color:var(--color-gold-light);font-weight:600}.want-notifications em{font-style:normal;color:var(--color-text)}.want-foil-tag{color:var(--color-spine-text);font-family:var(--font-mono);font-size:.85rem}.home-search{max-width:640px;width:100%;margin:1.5rem auto 0;padding:0 1rem;display:flex;flex-direction:column;gap:.5rem;position:relative}.card-search{position:relative;width:100%}.card-search-input{width:100%;padding:.7rem 1rem;background:#0000004d;border:1px solid var(--color-shelf-edge);border-radius:4px;color:var(--color-text);font-family:var(--font-body);font-size:1rem;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.card-search-input::placeholder{color:var(--color-text-muted);font-style:italic}.card-search-input:focus{outline:none;border-color:var(--color-gold);box-shadow:0 0 0 2px #d4af3726}.card-search-results{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:50;max-height:480px;overflow-y:auto;background:linear-gradient(180deg,var(--color-leather-dark),#0f1f17);border:1px solid var(--color-shelf-edge);border-radius:4px;box-shadow:0 12px 28px #0009}.card-search-empty{padding:.85rem 1rem;color:var(--color-text-muted);font-style:italic;font-size:.9rem}.card-search-result{display:flex;align-items:center;gap:.85rem;width:100%;background:none;border:none;border-bottom:1px solid rgba(212,175,55,.1);padding:.6rem .85rem;cursor:pointer;text-align:left;color:var(--color-text);font-family:inherit;transition:background var(--transition-fast)}.card-search-result:last-child{border-bottom:none}.card-search-result:hover{background:#d4af3714}.card-search-result-img{width:42px;height:58px;object-fit:cover;border-radius:3px;flex-shrink:0;background:var(--color-pocket)}.card-search-result-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.card-search-result-name{font-family:var(--font-display);font-size:.95rem;color:var(--color-gold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-search-result-meta{display:flex;gap:.4rem;font-family:var(--font-mono);font-size:.75rem;color:var(--color-text-muted);flex-wrap:wrap}.home-search-chip{display:inline-flex;align-items:center;gap:.5rem;background:#d4af371f;border:1px solid var(--color-gold);color:var(--color-gold);padding:.3rem .7rem;border-radius:3px;font-size:.85rem;align-self:flex-start;font-family:var(--font-mono)}.home-search-chip-clear{background:none;border:none;color:var(--color-gold);font-size:1.1rem;line-height:1;cursor:pointer;padding:0;margin-left:.2rem}.home-search-chip-clear:hover{color:var(--color-gold-light)}.trade-binder-tile{display:flex;align-items:center;gap:1.25rem;margin:1.5rem auto 0;padding:1rem 1.5rem;max-width:520px;border-radius:6px;background:linear-gradient(135deg,#ffffff0f,#0003),linear-gradient(180deg,#4a3416,#6b4a1f);border:1px solid var(--color-gold);text-decoration:none;color:var(--color-spine-text);box-shadow:0 4px 14px #00000073,inset 0 0 0 1px #d4af3740;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.trade-binder-tile:hover{transform:translateY(-2px);color:var(--color-gold);box-shadow:0 8px 22px #0000008c,inset 0 0 0 1px #d4af3773}.trade-binder-tile-icon{font-size:2rem;line-height:1;color:var(--color-gold);flex-shrink:0}.trade-binder-tile-meta{display:flex;flex-direction:column;gap:.2rem;flex:1}.trade-binder-tile-label{font-family:var(--font-display);font-size:1.1rem;letter-spacing:.15em;text-transform:uppercase;color:var(--color-gold)}.trade-binder-tile-stats{font-family:var(--font-mono);font-size:.85rem;color:var(--color-text);opacity:.85}.bookshelf{flex:1;display:flex;flex-direction:column;align-items:center;gap:0;padding:2rem;max-width:1400px;width:100%;margin:0 auto}.bookshelf-empty-hint{text-align:center;color:var(--color-text-muted);font-style:italic;padding:1rem 2rem 2rem}.bookshelf-empty-hint a{font-style:normal}.shelf{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:center;gap:4px;padding:0 1rem;min-height:220px;width:calc(1196px + 2rem);max-width:100%;background:linear-gradient(180deg,transparent 0%,transparent calc(100% - 14px),var(--color-shelf) calc(100% - 14px),var(--color-shelf) 100%);border-bottom:3px solid var(--color-shelf-edge);box-shadow:0 6px 10px -4px #0009,inset 0 -14px 12px -10px #00000080}.binder{width:96px;height:200px;display:flex;flex-direction:column;align-items:center;padding:.6rem .25rem .4rem;border-radius:2px 2px 1px 1px;text-decoration:none;color:var(--color-spine-text);cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast),opacity var(--transition-fast);position:relative;flex-shrink:0}.binder-owned{background:linear-gradient(90deg,var(--color-leather-dark) 0%,var(--color-leather) 18%,var(--color-leather) 82%,var(--color-leather-dark) 100%);border:1px solid #000;border-bottom:none;box-shadow:inset 0 0 0 2px #00000040,inset 4px 0 6px -4px #ffffff14,inset -4px 0 6px -4px #0006,2px 2px 4px #0006}.binder-owned:hover{transform:translateY(-8px);box-shadow:inset 0 0 0 2px #00000040,inset 4px 0 6px -4px #ffffff14,inset -4px 0 6px -4px #0006,2px 2px 4px #0006,0 10px 18px #00000080}.binder-empty{background:var(--color-unowned-overlay);border:1px dashed var(--color-text-muted);color:var(--color-text-muted);opacity:.45}.binder-empty:hover{opacity:.85;transform:translateY(-3px)}.binder-icon{width:36px;height:36px;background-color:var(--color-spine-text);mask-size:contain;mask-repeat:no-repeat;mask-position:center;-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;margin-bottom:.5rem;flex-shrink:0}.binder-empty .binder-icon{background-color:var(--color-text-muted)}.binder-spine{writing-mode:vertical-rl;transform:rotate(180deg);font-family:var(--font-display);font-size:.62rem;font-weight:600;letter-spacing:.18em;text-align:center;flex:1;display:flex;align-items:center;justify-content:center;white-space:normal;word-spacing:.15em;line-height:1.05;text-transform:uppercase;max-height:100%;max-width:100%}.settings-page{min-height:100vh;display:flex;flex-direction:column}.settings-content{max-width:720px;width:100%;margin:2rem auto;padding:2rem}.settings-meta{color:var(--color-text-muted);margin-bottom:2rem}.setting-row{margin:1.5rem 0;padding:1.25rem;background:#0003;border:1px solid var(--color-shelf-edge);border-radius:4px}.setting-row label{display:flex;align-items:center;gap:.75rem;font-size:1.05rem;cursor:pointer}.setting-row input[type=checkbox]{width:1.15rem;height:1.15rem;cursor:pointer;accent-color:var(--color-gold)}.setting-help{color:var(--color-text-muted);font-size:.92rem;margin:.6rem 0 0 1.9rem}.setting-row-label{font-family:var(--font-display);letter-spacing:.1em;font-size:.95rem;color:var(--color-gold);margin:0 0 .5rem}.setting-radio{display:flex;align-items:flex-start;gap:.75rem;padding:.4rem 0;cursor:pointer;font-size:1rem}.setting-radio input[type=radio]{width:1.15rem;height:1.15rem;margin-top:.15rem;cursor:pointer;accent-color:var(--color-gold)}.username-field{display:flex;gap:.5rem;align-items:stretch;margin-top:.4rem;max-width:420px}.username-field input{flex:1;padding:.55rem .8rem;background:#0000004d;border:1px solid var(--color-shelf-edge);border-radius:4px;color:var(--color-text);font-family:var(--font-mono);font-size:.95rem}.username-field input:focus{outline:none;border-color:var(--color-gold);box-shadow:0 0 0 2px #d4af3726}.username-field button{padding:.55rem 1.1rem;background:var(--color-leather);border:1px solid var(--color-shelf-edge);color:var(--color-spine-text);border-radius:4px;font-family:var(--font-display);font-size:.85rem;letter-spacing:.08em;cursor:pointer;transition:background var(--transition-fast)}.username-field button:hover:not(:disabled){background:var(--color-leather-dark);color:var(--color-gold);border-color:var(--color-gold)}.username-field button:disabled{opacity:.4;cursor:not-allowed}.username-msg-err{color:#d8554a;font-size:.85rem;margin:.5rem 0 0}.username-msg-ok{color:var(--color-gold-light);font-size:.85rem;margin:.5rem 0 0}.share-url{display:flex;gap:.5rem;align-items:center;margin-top:.6rem;padding:.5rem .75rem;background:#00000059;border:1px solid var(--color-shelf-edge);border-radius:4px;flex-wrap:wrap}.share-url code{flex:1;font-family:var(--font-mono);font-size:.85rem;color:var(--color-spine-text);word-break:break-all}.share-url button{background:var(--color-leather-dark);border:1px solid var(--color-shelf-edge);color:var(--color-spine-text);padding:.3rem .8rem;border-radius:3px;font-family:var(--font-display);letter-spacing:.08em;font-size:.8rem;cursor:pointer;transition:background var(--transition-fast)}.share-url button:hover{background:var(--color-leather);color:var(--color-gold);border-color:var(--color-gold)}.setting-row-username{border-color:var(--color-gold)}.settings-import-button{display:inline-block;background:var(--color-leather);border:1px solid var(--color-gold);color:var(--color-spine-text);padding:.7rem 1.4rem;border-radius:4px;font-family:var(--font-display);letter-spacing:.08em;font-size:.9rem;text-decoration:none;transition:background var(--transition-fast),color var(--transition-fast)}.settings-import-button:hover{background:var(--color-leather-dark);color:var(--color-gold)}.binder-view{min-height:100vh;display:flex;flex-direction:column}.binder-meta{padding:1rem 2rem;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--color-shelf-edge);gap:1rem}.binder-meta>*{justify-self:start}.binder-meta-title{justify-self:center;text-align:center}.binder-meta>.link-button{justify-self:end}.binder-meta h1{margin:0;font-size:1.5rem}.binder-meta-stats{color:var(--color-text-muted);font-style:italic;font-size:.95rem}.binder-meta-back{font-family:var(--font-display);letter-spacing:.1em}.binder-pages{flex:1;display:flex;align-items:center;justify-content:center;padding:1rem 1.5rem}.binder-page-spread{display:flex;align-items:stretch;position:relative;background:linear-gradient(180deg,var(--color-leather-dark),var(--color-leather));border:2px solid #000;border-radius:4px;padding:1rem;width:100%;max-width:1100px;box-shadow:0 12px 32px #00000080,inset 0 0 0 1px #d4af3726}.binder-page-spread:before{content:"";position:absolute;top:1rem;bottom:1rem;left:50%;width:4px;background:linear-gradient(180deg,#0009,#0000004d);border-radius:2px;transform:translate(-2px);pointer-events:none;z-index:1}.binder-page{flex:1;min-width:0;padding:0 .5rem}.binder-page-cover{background:linear-gradient(135deg,#ffffff0d,#00000040),var(--color-leather);border-radius:2px;box-shadow:inset 0 0 0 1px #0000004d}.binder-page-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.pocket{width:100%;aspect-ratio:63 / 88;background:var(--color-pocket);border:1px solid var(--color-pocket-border);border-radius:var(--radius-card);position:relative;overflow:hidden}.pocket-blank{background:#00000040;border-style:dashed;opacity:.5}.card-image{width:100%;height:100%;object-fit:cover;display:block;transition:filter var(--transition-fast)}.pocket-empty .card-image{filter:brightness(.35) saturate(.4)}.pocket-empty:hover .card-image{filter:brightness(.55) saturate(.55)}.qty-badge{position:absolute;bottom:4px;left:4px;background:#000000d9;color:var(--color-text);border:1px solid var(--color-shelf-edge);border-radius:3px;padding:1px 6px;font-family:var(--font-mono);font-size:.72rem;font-weight:600;line-height:1.3;letter-spacing:.04em;pointer-events:none;-webkit-user-select:none;user-select:none}.qty-badge-foil{color:var(--color-spine-text);border-color:var(--color-gold);text-shadow:0 0 6px rgba(212,175,55,.5)}.pocket-price{position:absolute;bottom:6px;left:50%;transform:translate(-50%);background:#000000d9;color:var(--color-spine-text);border:1px solid var(--color-shelf-edge);border-radius:3px;padding:2px 8px;font-family:var(--font-mono);font-size:.78rem;font-weight:600;letter-spacing:.04em;pointer-events:none;white-space:nowrap;-webkit-user-select:none;user-select:none}.pocket-stale-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#d8554a8c;color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;font-family:var(--font-display);font-size:.75rem;font-weight:600;letter-spacing:.15em;pointer-events:none;text-shadow:0 1px 2px rgba(0,0,0,.6)}.binder-page-spread-trade{background:linear-gradient(180deg,#2a1f0c,#3d2e15);box-shadow:0 12px 32px #0000008c,inset 0 0 0 2px #d4af374d}.pocket{cursor:context-menu}.pocket-foil:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(115deg,transparent 0%,rgba(180,100,255,.22) 22%,rgba(100,220,255,.28) 38%,rgba(255,240,120,.28) 52%,rgba(255,130,200,.22) 68%,rgba(120,255,180,.22) 82%,transparent 100%);background-size:250% 250%;mix-blend-mode:color-dodge;animation:foil-shimmer 6s ease-in-out infinite;border-radius:inherit}@keyframes foil-shimmer{0%{background-position:0% 0%}50%{background-position:100% 100%}to{background-position:0% 0%}}@media (prefers-reduced-motion: reduce){.pocket-foil:after{animation:none;background-position:50% 50%}}.binder-pagination{display:flex;align-items:center;justify-content:center;gap:2rem;padding:1rem 2rem 2rem}.binder-pagination button{background:var(--color-leather-dark);border:1px solid var(--color-shelf-edge);color:var(--color-spine-text);padding:.5rem 1.25rem;border-radius:3px;font-family:var(--font-display);letter-spacing:.1em;font-size:.9rem;cursor:pointer;transition:background var(--transition-fast)}.binder-pagination button:hover:not(:disabled){background:var(--color-leather)}.binder-pagination button:disabled{opacity:.4;cursor:not-allowed}.binder-pagination-info{color:var(--color-text-muted);font-family:var(--font-display);letter-spacing:.15em;font-size:.85rem;text-transform:uppercase}.binder-error{text-align:center;padding:4rem 2rem;color:var(--color-text-muted);font-style:italic}.card-detail-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;flex-direction:column;align-items:center;justify-content:safe center;padding:2rem;overflow-y:auto;z-index:100;animation:card-detail-fade-in .15s ease-out}@keyframes card-detail-fade-in{0%{opacity:0}to{opacity:1}}.card-detail-panel{background:linear-gradient(180deg,var(--color-leather),var(--color-leather-dark));border:2px solid var(--color-shelf-edge);border-radius:8px;padding:1.75rem;max-width:1100px;width:100%;box-shadow:0 24px 64px #000c;display:grid;grid-template-columns:360px 1fr;gap:2rem;flex-shrink:0}@media (max-width: 800px){.card-detail-panel{grid-template-columns:1fr;gap:1rem}}.card-detail-image-wrapper{position:relative;align-self:start}.card-detail-image{width:100%;height:auto;display:block;border-radius:14px;box-shadow:0 8px 24px #0009}.card-detail-flip{position:absolute;top:.6rem;left:.6rem;background:#000000d1;color:var(--color-spine-text);border:1px solid var(--color-shelf-edge);width:36px;height:36px;border-radius:50%;cursor:pointer;font-size:1rem;line-height:1;display:flex;align-items:center;justify-content:center;transition:background var(--transition-fast),transform var(--transition-fast);z-index:1}.card-detail-flip:hover{background:var(--color-leather);border-color:var(--color-gold);color:var(--color-gold);transform:rotate(45deg)}.mana-cost{display:inline-flex;gap:2px;align-items:center;flex-wrap:wrap}.mana-symbol{width:1.1rem;height:1.1rem;display:inline-block;vertical-align:middle;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5))}.card-detail-info{display:flex;flex-direction:column;gap:1rem;min-width:0}.card-detail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.card-detail-name{font-family:var(--font-display);font-size:1.5rem;color:var(--color-gold);margin:0 0 .35rem;line-height:1.2}.card-detail-mana{margin-top:.25rem;display:inline-block}.card-detail-typeline{font-style:italic;color:var(--color-text-muted);margin-top:.35rem}.card-detail-set{font-size:.85rem;color:var(--color-text-muted);font-family:var(--font-mono);letter-spacing:.04em;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.card-detail-rarity{text-transform:uppercase;font-weight:600}.card-detail-rarity.rarity-mythic{color:#f37b1f}.card-detail-rarity.rarity-rare{color:var(--color-gold)}.card-detail-rarity.rarity-uncommon{color:#c0d4e0}.card-detail-rarity.rarity-common{color:var(--color-text)}.color-identity{display:inline-flex;gap:.2rem}.color-dot{width:12px;height:12px;border-radius:50%;border:1px solid rgba(0,0,0,.6);display:inline-block}.color-dot.color-w{background:#f4ecc9}.color-dot.color-u{background:#5587d8}.color-dot.color-b{background:#2b2b2b}.color-dot.color-r{background:#cc4d3e}.color-dot.color-g{background:#5fa56e}.card-detail-oracle{background:var(--color-pocket);border:1px solid var(--color-pocket-border);border-radius:4px;padding:1rem 1.1rem;white-space:pre-wrap;font-size:.95rem;line-height:1.6;color:var(--color-text)}.card-detail-stats{display:flex;gap:.75rem;flex-wrap:wrap}.card-detail-stat{background:#0006;border:1px solid var(--color-shelf-edge);border-radius:4px;padding:.4rem .8rem;font-family:var(--font-mono);font-size:.9rem}.card-detail-prices{display:flex;gap:1.25rem;font-family:var(--font-mono);font-size:.95rem;color:var(--color-text)}.card-detail-prices .price-foil{color:var(--color-spine-text)}.card-detail-collection{background:#0000004d;border:1px solid var(--color-shelf-edge);border-radius:4px;padding:1rem 1.1rem}.card-detail-collection h3{margin:0 0 .75rem;font-size:1.05rem;color:var(--color-gold)}.card-detail-qty-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.4rem 0}.card-detail-qty-label{font-size:1rem;flex:1}.card-detail-qty-row.foil .card-detail-qty-label{color:var(--color-spine-text)}.card-detail-qty-controls{display:flex;align-items:center;gap:.5rem}.card-detail-qty-controls button{width:32px;height:32px;background:var(--color-leather-dark);border:1px solid var(--color-shelf-edge);color:var(--color-spine-text);border-radius:4px;font-weight:700;font-size:1.1rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.card-detail-qty-controls button:disabled{opacity:.3;cursor:not-allowed}.card-detail-qty-controls button:hover:not(:disabled){background:var(--color-leather);border-color:var(--color-gold)}.card-detail-qty-value{width:2.5rem;text-align:center;font-family:var(--font-mono);font-size:1.05rem;font-weight:600}.card-detail-totals{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--color-shelf-edge);display:flex;flex-direction:column;gap:.35rem;font-family:var(--font-mono);font-size:.95rem}.card-detail-totals-row{display:flex;justify-content:space-between}.card-detail-totals-row.value{color:var(--color-gold);font-weight:600}.card-detail-trade{border-color:var(--color-gold)}.card-detail-trade h3{color:var(--color-gold-light)}.card-detail-traded{margin-top:1rem;width:100%;background:#6b1f1f;color:var(--color-text);border:1px solid #d8554a;border-radius:4px;padding:.7rem 1rem;font-family:var(--font-display);letter-spacing:.08em;font-size:.85rem;cursor:pointer;transition:background var(--transition-fast)}.card-detail-traded:hover{background:#842626}.card-detail-want{margin-top:.5rem}.card-detail-want-button{width:100%;background:var(--color-leather);color:var(--color-spine-text);border:1px solid var(--color-gold);border-radius:4px;padding:.7rem 1rem;font-family:var(--font-display);letter-spacing:.08em;font-size:.9rem;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.card-detail-want-button:hover:not(:disabled){background:var(--color-leather-dark);color:var(--color-gold)}.card-detail-want-button:disabled{opacity:.55;cursor:not-allowed}.card-detail-want-button.sent{background:#d4af372e;color:var(--color-gold)}.card-detail-wants{margin-top:.75rem;background:#0000004d;border:1px solid var(--color-gold);border-radius:4px;padding:.85rem 1rem}.card-detail-wants h3{margin:0 0 .5rem;font-size:1rem;color:var(--color-gold-light)}.card-detail-wants ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.3rem}.card-detail-wants li{display:flex;align-items:center;justify-content:space-between;font-family:var(--font-mono);font-size:.95rem;padding:.25rem 0}.card-detail-wants .wanter{color:var(--color-text)}.card-detail-wants .wants-dismiss{background:none;border:1px solid var(--color-shelf-edge);color:var(--color-text-muted);width:24px;height:24px;border-radius:50%;cursor:pointer;font-size:1rem;line-height:1;display:flex;align-items:center;justify-content:center}.card-detail-wants .wants-dismiss:hover{border-color:#d8554a;color:#d8554a}.trades-page{max-width:1200px;width:100%;margin:2rem auto;padding:0 1.5rem;display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}@media (max-width: 900px){.trades-page{grid-template-columns:1fr}}.trades-section{background:#0003;border:1px solid var(--color-shelf-edge);border-radius:6px;padding:1rem 1.25rem}.trades-section h2{margin:0 0 1rem;font-size:1.1rem;color:var(--color-gold)}.trades-count{color:var(--color-text-muted);font-family:var(--font-mono);font-size:.95rem}.trades-empty{color:var(--color-text-muted);font-style:italic;padding:1rem 0}.trades-section ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.trade-row{display:flex;align-items:center;gap:.85rem;padding:.6rem .75rem;background:#0000004d;border:1px solid var(--color-shelf-edge);border-radius:4px;transition:border-color var(--transition-fast)}.trade-row:hover{border-color:var(--color-gold)}.trade-row-img{width:48px;height:67px;object-fit:cover;border-radius:3px;flex-shrink:0}.trade-row-img-placeholder{background:var(--color-pocket)}.trade-row-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.trade-row-name{font-family:var(--font-display);font-size:.95rem;color:var(--color-gold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trade-row-meta{font-family:var(--font-mono);font-size:.75rem;color:var(--color-text-muted)}.trade-row-party{font-size:.85rem;color:var(--color-text)}.trade-row-party a,.trade-row-link{color:var(--color-gold-light);text-decoration:underline;background:none;border:none;padding:0;font:inherit;cursor:pointer}.trade-row-link:hover{color:var(--color-gold)}.trade-row-action{background:var(--color-leather-dark);border:1px solid var(--color-shelf-edge);color:var(--color-text);padding:.4rem .8rem;border-radius:3px;font-family:var(--font-display);letter-spacing:.08em;font-size:.75rem;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast)}.trade-row-action:hover{background:#6b1f1f;border-color:#d8554a;color:#fff}.decks-page{max-width:760px;width:100%;margin:2rem auto;padding:0 2rem}.decks-import-toggle{display:block;width:100%;margin-bottom:1.5rem;background:var(--color-leather-dark);border:1px dashed var(--color-shelf-edge);color:var(--color-spine-text);padding:.85rem 1.25rem;border-radius:4px;font-family:var(--font-display);letter-spacing:.08em;font-size:.95rem;cursor:pointer}.decks-import-toggle:hover{background:var(--color-leather);border-color:var(--color-gold);color:var(--color-gold)}.decks-import-form{background:#00000040;border:1px solid var(--color-shelf-edge);border-radius:6px;padding:1.25rem 1.5rem;margin-bottom:1.5rem}.decks-import-form h2{margin:0 0 .75rem;color:var(--color-gold)}.decks-import-form input[type=text],.decks-import-form textarea{width:100%;background:#00000059;border:1px solid var(--color-shelf-edge);border-radius:4px;padding:.6rem .85rem;color:var(--color-text);font-family:var(--font-mono);font-size:.95rem;margin-bottom:.75rem}.decks-import-form input[type=text]:focus,.decks-import-form textarea:focus{outline:none;border-color:var(--color-gold);box-shadow:0 0 0 2px #d4af3726}.decks-import-form textarea{resize:vertical;min-height:200px}.decks-import-actions{display:flex;gap:1rem;justify-content:flex-end;align-items:center}.decks-import-submit{background:var(--color-leather);border:1px solid var(--color-gold);color:var(--color-spine-text);padding:.6rem 1.4rem;border-radius:4px;font-family:var(--font-display);letter-spacing:.08em;font-size:.9rem;cursor:pointer}.decks-import-submit:hover:not(:disabled){color:var(--color-gold)}.decks-import-submit:disabled{opacity:.4;cursor:not-allowed}.decks-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.6rem}.deck-row{display:flex;align-items:center;gap:.85rem;padding:.8rem 1rem;background:#00000040;border:1px solid var(--color-shelf-edge);border-radius:4px}.deck-row:hover{border-color:var(--color-gold)}.deck-row-info{flex:1;min-width:0}.deck-row-name{font-family:var(--font-display);font-size:1rem;color:var(--color-gold)}.deck-row-meta{font-family:var(--font-mono);font-size:.8rem;color:var(--color-text-muted)}.deck-row-action{background:var(--color-leather-dark);border:1px solid var(--color-shelf-edge);color:var(--color-spine-text);padding:.4rem .85rem;border-radius:3px;font-family:var(--font-display);letter-spacing:.08em;font-size:.78rem;cursor:pointer;text-decoration:none;transition:background var(--transition-fast);flex-shrink:0}.deck-row-action:hover{background:var(--color-leather);border-color:var(--color-gold);color:var(--color-gold)}.deck-row-delete:hover{background:#6b1f1f;border-color:#d8554a;color:#fff}.deck-cardlist{min-height:100vh;display:flex;flex-direction:column}.deck-cardlist-body{max-width:900px;width:100%;margin:1.5rem auto;padding:0 1.5rem 3rem;display:flex;flex-direction:column;gap:2rem}.deck-section h2{font-size:1.4rem;margin:0 0 1rem;padding-bottom:.4rem;border-bottom:2px solid var(--color-shelf-edge)}.deck-section-missing h2{color:#f0a040;border-bottom-color:#f0a04066}.deck-section-count{color:var(--color-text-muted);font-family:var(--font-mono);font-size:.95rem;font-weight:400}.deck-type-block{margin:1rem 0 1.4rem}.deck-type-block h3{font-size:1.05rem;color:var(--color-gold-light);margin:0 0 .4rem}.deck-type-block ul{list-style:none;padding:0;margin:0;font-family:var(--font-body);font-size:1rem;line-height:1.55}.deck-type-block li{padding:.05rem 0}.deck-card-qty{font-family:var(--font-mono);color:var(--color-text-muted);display:inline-block;min-width:2.5rem}.deck-card-name{color:var(--color-text)}.deck-card-note{color:var(--color-gold-light);font-style:italic;font-size:.9rem}.deck-cardlist-print{font-family:var(--font-display)!important;letter-spacing:.08em}@media print{.deck-cardlist-header,.top-nav,.binder-meta-back,.deck-cardlist-print,.link-button{display:none!important}body,.deck-cardlist{background:#fff!important;color:#000!important}.deck-cardlist-body{max-width:none;padding:0 1rem;margin:0}.deck-section h2,.deck-type-block h3,.deck-card-name,.deck-card-qty{color:#000!important}.deck-section h2{border-bottom-color:#000!important}.deck-section-missing h2{color:#000!important}.deck-card-note{color:#555!important}}.card-detail-close{background:none;border:1px solid var(--color-shelf-edge);color:var(--color-text);width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:1.3rem;line-height:1;display:flex;align-items:center;justify-content:center;flex-shrink:0}.card-detail-close:hover{background:var(--color-leather);color:var(--color-gold)}.card-detail-loading{color:var(--color-text-muted);font-style:italic;font-size:.9rem}.import-view{min-height:100vh;display:flex;flex-direction:column}.import-content{max-width:760px;width:100%;margin:2rem auto;padding:2rem}.import-meta{color:var(--color-text-muted);font-size:.95rem;margin-bottom:2rem}.import-dropzone{border:2px dashed var(--color-shelf-edge);border-radius:6px;padding:3rem 2rem;text-align:center;background:#0003}.import-dropzone label{display:inline-block;background:var(--color-leather);color:var(--color-spine-text);padding:.75rem 1.5rem;border:1px solid var(--color-shelf-edge);border-radius:4px;font-family:var(--font-display);letter-spacing:.1em;cursor:pointer;transition:background var(--transition-fast)}.import-dropzone label:hover{background:var(--color-leather-dark);border-color:var(--color-gold);color:var(--color-gold)}.import-summary{background:#0003;border:1px solid var(--color-shelf-edge);border-radius:6px;padding:1.5rem}.import-filename{margin:0 0 1rem;font-family:var(--font-mono);font-size:.95rem}.import-loading{color:var(--color-text-muted);font-style:italic}.import-error,.import-result-err{color:#d8554a;background:#d8554a1a;border:1px solid #d8554a;border-radius:4px;padding:.75rem 1rem;margin:1rem 0}.import-result-ok{color:var(--color-gold);background:#d4af371a;border:1px solid var(--color-gold);border-radius:4px;padding:.75rem 1rem;margin:1rem 0}.import-stats{list-style:none;padding:0;margin:1rem 0;font-size:1.05rem}.import-stats li{padding:.4rem 0}.import-stats .stat-num{font-family:var(--font-mono);font-weight:600;color:var(--color-gold);margin-right:.4rem}.import-stats .stat-warn .stat-num{color:#f0a040}.import-mode{border:1px solid var(--color-shelf-edge);border-radius:4px;padding:1rem 1.25rem;margin:1.5rem 0}.import-mode legend{padding:0 .5rem;font-family:var(--font-display);letter-spacing:.1em;color:var(--color-gold);font-size:.85rem;text-transform:uppercase}.import-mode label{display:flex;align-items:flex-start;gap:.75rem;padding:.5rem 0;cursor:pointer}.import-mode input[type=radio]{margin-top:.4rem;accent-color:var(--color-gold);cursor:pointer}.import-button{background:var(--color-leather);color:var(--color-spine-text);border:1px solid var(--color-shelf-edge);padding:.75rem 1.5rem;font-family:var(--font-display);font-size:.95rem;letter-spacing:.1em;border-radius:4px;cursor:pointer;transition:background var(--transition-fast)}.import-button:hover:not(:disabled){background:var(--color-leather-dark);border-color:var(--color-gold);color:var(--color-gold)}.import-button:disabled{opacity:.4;cursor:not-allowed}.import-unmatched{margin-top:1.5rem;font-size:.9rem}.import-unmatched summary{cursor:pointer;color:var(--color-text-muted);padding:.4rem 0}.import-unmatched ul{list-style:none;padding:.5rem 0 0 1rem;margin:0;max-height:320px;overflow-y:auto;font-family:var(--font-mono);font-size:.85rem}.import-unmatched li{padding:.2rem 0}.import-unmatched .muted{color:var(--color-text-muted)}
