/* DECK BUILDER */
#deck-screen{background:var(--bg);flex-direction:column;height:100%;overflow:hidden;}
#db-hdr{display:flex;align-items:center;gap:12px;padding:9px 14px;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;}
#db-hdr h2{font-family:'Bebas Neue',sans-serif;font-size:1.5rem;letter-spacing:4px;color:var(--gold);margin:0;}
.db-action-row{display:flex;align-items:center;gap:8px;flex:1;}
#deck-name-input{font-family:'Barlow Condensed',sans-serif;font-size:.85rem;letter-spacing:1px;background:var(--surface2);border:1px solid var(--border2);color:var(--text);padding:6px 10px;outline:none;width:160px;}
#deck-name-input:focus{border-color:var(--gold);}
#deck-count-badge{font-family:'Bebas Neue',sans-serif;font-size:.9rem;letter-spacing:2px;padding:5px 12px;border:1px solid var(--border2);color:var(--muted2);}
#deck-count-badge.full{border-color:var(--green);color:var(--green);}
#db-filters{display:flex;align-items:center;gap:7px;padding:7px 14px;background:var(--surface2);border-bottom:1px solid var(--border);flex-shrink:0;flex-wrap:wrap;}
.filter-btn{font-family:'Barlow Condensed',sans-serif;font-size:.62rem;letter-spacing:1.5px;text-transform:uppercase;padding:3px 10px;border:1px solid var(--border2);background:transparent;color:var(--muted2);cursor:pointer;transition:all .15s;}
.filter-btn:hover{color:var(--text);border-color:var(--muted2);}
.filter-btn.active{background:var(--gold-dim);border-color:var(--gold);color:var(--gold);}
/* Crew filter buttons keep their inline text color when active */
.filter-btn[style*="color"].active{background:rgba(255,255,255,.06);}
#search-input{font-family:'Barlow Condensed',sans-serif;font-size:.72rem;background:var(--surface);border:1px solid var(--border2);color:var(--text);padding:4px 9px;outline:none;width:130px;}
#search-input:focus{border-color:var(--gold);}
.btn-starter { color: var(--gold) !important; border-color: rgba(212,175,55,.4) !important; }
.btn-starter:hover { background: rgba(212,175,55,.1) !important; border-color: var(--gold) !important; }
#db-main{display:grid;grid-template-columns:1fr 260px;flex:1;overflow:hidden;}
#collection-area{overflow-y:auto;padding:12px;scrollbar-width:thin;scrollbar-color:var(--border) transparent;}
#collection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(95px,1fr));gap:9px;}
.coll-card-wrap{position:relative;cursor:pointer;transition:transform .15s;}
.coll-card-wrap:hover{transform:translateY(-3px);}
.coll-card-wrap .card{width:100%;height:auto;aspect-ratio:78/106;}
.coll-count-badge{position:absolute;top:-4px;right:-4px;background:var(--gold);color:#000;font-family:'Bebas Neue',sans-serif;font-size:.65rem;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:10;letter-spacing:0;}
.coll-count-badge.maxed{background:var(--red);color:#fff;}
.coll-card-wrap.in-deck .card{box-shadow:0 0 0 2px var(--gold);}
.coll-card-wrap.maxed-out{opacity:.45;cursor:not-allowed;}
.coll-card-wrap.maxed-out:hover{transform:none;}
.add-overlay{position:absolute;inset:0;border-radius:4px;background:rgba(0,255,135,.08);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s;}
.coll-card-wrap:not(.maxed-out):hover .add-overlay{opacity:1;}
.add-overlay span{font-family:'Bebas Neue',sans-serif;font-size:1.3rem;color:var(--green);}
#deck-panel{background:var(--surface);border-left:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;}
#deck-panel-hdr{padding:9px 12px;border-bottom:1px solid var(--border);flex-shrink:0;}
#deck-panel-hdr h3{font-family:'Bebas Neue',sans-serif;font-size:1rem;letter-spacing:3px;color:var(--text);}
#deck-panel-hdr p{font-family:'Barlow Condensed',sans-serif;font-size:.58rem;color:var(--muted);letter-spacing:.5px;margin-top:1px;}
#curve-chart{padding:7px 12px;border-bottom:1px solid var(--border);flex-shrink:0;}
#curve-chart h4{font-family:'Barlow Condensed',sans-serif;font-size:.56rem;letter-spacing:2px;color:var(--muted);text-transform:uppercase;margin-bottom:5px;}
#curve-bars{display:flex;align-items:flex-end;gap:3px;height:32px;}
.curve-bar-wrap{display:flex;flex-direction:column;align-items:center;gap:2px;flex:1;}
.curve-bar{width:100%;background:rgba(212,175,55,.1);border:1px solid rgba(212,175,55,.2);transition:height .3s;min-height:2px;border-radius:2px 2px 0 0;position:relative;}
.curve-bar.filled{background:var(--gold);border-color:var(--gold);box-shadow:0 0 8px rgba(212,175,55,.3);}
.curve-label{font-family:'Bebas Neue',sans-serif;font-size:.5rem;color:var(--muted);letter-spacing:1px;}
#crew-breakdown{padding:7px 12px;border-bottom:1px solid var(--border);flex-shrink:0;}
#crew-breakdown h4{font-family:'Barlow Condensed',sans-serif;font-size:.56rem;letter-spacing:2px;color:var(--muted);text-transform:uppercase;margin-bottom:5px;}
.crew-row{display:flex;align-items:center;gap:7px;margin-bottom:3px;}
.crew-row-label{font-family:'Barlow Condensed',sans-serif;font-size:.58rem;letter-spacing:1px;text-transform:uppercase;width:60px;flex-shrink:0;}
.crew-row-bar-outer{flex:1;height:4px;background:var(--border);border-radius:3px;overflow:hidden;}
.crew-row-bar{height:100%;border-radius:3px;transition:width .3s;}
.crew-row-count{font-family:'Bebas Neue',sans-serif;font-size:.68rem;min-width:14px;text-align:right;}
#deck-list{flex:1;overflow-y:auto;padding:7px 12px;scrollbar-width:thin;scrollbar-color:var(--border) transparent;}
.deck-entry{display:flex;align-items:center;gap:7px;padding:4px 0;border-bottom:1px solid var(--border);}
.deck-entry:hover{background:rgba(255,255,255,.02);}
.deck-entry-art{font-size:.9rem;width:20px;text-align:center;flex-shrink:0;}
.deck-entry-name{font-family:'Barlow Condensed',sans-serif;font-size:.66rem;letter-spacing:.5px;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.deck-entry-cost{font-family:'Bebas Neue',sans-serif;font-size:.68rem;color:var(--gold);min-width:26px;text-align:right;}
.deck-entry-qty{font-family:'Bebas Neue',sans-serif;font-size:.68rem;color:var(--muted2);min-width:16px;text-align:center;}
.deck-entry-remove{background:none;border:none;color:var(--muted);cursor:pointer;font-size:.75rem;padding:0 3px;transition:color .15s;}
.deck-entry-remove:hover{color:var(--red);}
.deck-type-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0;}
.type-dot-character{background:#4FC3F7;}.type-dot-equipment{background:#D4AF37;}.type-dot-lore{background:#00FF87;}.type-dot-trap{background:#FF6B35;}.type-dot-territory{background:#CE93D8;}
#deck-panel-footer{padding:12px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:8px;flex-shrink:0;background:var(--surface2);}
#deck-validation{font-family:'Barlow Condensed',sans-serif;font-size:.65rem;letter-spacing:1px;color:var(--muted);text-align:center;padding:4px;border-radius:4px;background:rgba(255,255,255,.03);}
#deck-validation.valid{color:var(--green);background:rgba(0,255,135,.05);border:1px solid rgba(0,255,135,.1);}
#deck-validation.invalid{color:var(--red);background:rgba(255,59,59,.05);border:1px solid rgba(255,59,59,.1);}
#deck-validation.warn{color:#FF9800;background:rgba(255,152,0,.05);border:1px solid rgba(255,152,0,.1);}
.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:30px;color:var(--muted);text-align:center;}
.empty-state .big{font-size:2rem;}
.empty-state p{font-family:'Barlow Condensed',sans-serif;font-size:.75rem;letter-spacing:1px;}

/* ══════════════════════════════════

/* SAVED DECKS */
#saved-decks-section {
  border-bottom: 1px solid var(--border);
  flex-shrink: 0;
  padding: 7px 12px;
}
#saved-decks-header {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: .58rem;
  letter-spacing: 2px;
  color: var(--muted);
  text-transform: uppercase;
  margin-bottom: 5px;
}
.saved-deck-row {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 4px 0;
  border-bottom: 1px solid var(--border);
}
.saved-deck-name {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: .65rem;
  letter-spacing: .5px;
  flex: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--text);
}
.saved-deck-count {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: .55rem;
  color: var(--muted);
  flex-shrink: 0;
}
.saved-deck-btn {
  font-family: 'Bebas Neue', sans-serif;
  font-size: .6rem;
  letter-spacing: 1px;
  padding: 2px 7px;
  border: 1px solid var(--border2);
  background: transparent;
  cursor: pointer;
  transition: all .15s;
  flex-shrink: 0;
}
.saved-deck-btn.load { color: var(--green); border-color: rgba(0,255,135,.3); }
.saved-deck-btn.load:hover { background: rgba(0,255,135,.1); }
.saved-deck-btn.del { color: var(--red); border-color: rgba(255,59,59,.3); }
.saved-deck-btn.del:hover { background: rgba(255,59,59,.1); }

.saved-deck-actions {
  display: flex;
  align-items: center;
  gap: 4px;
}
.saved-deck-btn-icon {
  background: none;
  border: none;
  cursor: pointer;
  font-size: .8rem;
  padding: 2px;
  opacity: .5;
  transition: opacity .15s;
  display: flex;
  align-items: center;
  justify-content: center;
}
.saved-deck-btn-icon:hover { opacity: 1; }

/* ── Collection ownership states ── */
.coll-card-wrap.locked {
  opacity: .5;
  filter: grayscale(.7);
  cursor: default;
}
.locked-overlay {
  position: absolute; inset: 0;
  background: rgba(0,0,0,.6);
  display: flex; flex-direction: column;
  align-items: center; justify-content: center;
  gap: 4px; border-radius: 6px;
  pointer-events: none;
}
.lock-icon { font-size: 1.2rem; }
.lock-text {
  font-family: 'Bebas Neue', sans-serif;
  font-size: .45rem; letter-spacing: 2px;
  color: var(--gold); opacity: .9;
}
.owned-qty-badge {
  position: absolute; top: 4px; left: 4px;
  background: rgba(0,0,0,.75);
  border: 1px solid rgba(255,255,255,.2);
  font-family: 'Bebas Neue', sans-serif;
  font-size: .55rem; letter-spacing: 1px;
  color: #fff; padding: 1px 4px;
  border-radius: 2px; z-index: 4;
}

/* ── DISENCHANT BUTTON ── */
.disenchant-btn {
  position: absolute; bottom: 22px; right: 2px;
  background: rgba(0,0,0,.75); border: 1px solid rgba(180,180,255,.3);
  color: rgba(180,180,255,.8); font-family: 'Bebas Neue', sans-serif;
  font-size: .45rem; letter-spacing: 1px; padding: 2px 4px;
  cursor: pointer; border-radius: 2px; z-index: 5;
  transition: all .15s;
}
.disenchant-btn:hover {
  background: rgba(180,180,255,.2); border-color: rgba(180,180,255,.6);
  color: #fff;
}
.disenchant-btn.legendary-dupe {
  border-color: rgba(212,175,55,.5);
  color: var(--gold);
  background: rgba(212,175,55,.1);
}
.disenchant-btn.legendary-dupe:hover {
  background: rgba(212,175,55,.25);
  border-color: var(--gold);
}
