/* ============================================================
   DECK BUILDER — budget, excluded cards, combos (2026-10-11)
   ============================================================ */

/* "Budget: …" over the commander list, beside the build dropdowns */
.build-budget{
  background:var(--surface); border:1px solid var(--line-2); color:var(--text);
  padding:9px 14px; border-radius:var(--r1); font:inherit; font-size:13.5px; cursor:pointer; white-space:nowrap;
}
.build-budget:hover{border-color:var(--line-3);}
.build-budget.set{border-color:var(--accent); color:var(--accent-hi);}
.build-budget[hidden]{display:none;}

/* the budget fields in the Rebuild dialog and the budget dialog */
.budget-row{display:flex; gap:8px; align-items:center;}
.budget-row .cfg-select{flex:1 1 auto; min-width:0;}
.budget-row .budget-num{flex:0 0 110px; width:110px; padding-right:11px; background-image:none;}
.budget-row .budget-num[hidden]{display:none;}

/* "Never in this deck" in the Rebuild dialog */
.ex-field .k{display:block; margin-bottom:6px;}
.ex-chips{display:flex; flex-wrap:wrap; gap:6px;}
.ex-chip{
  display:inline-flex; align-items:center; gap:4px; padding:3px 4px 3px 10px; border-radius:20px;
  background:var(--surface-2); border:1px solid var(--line-2); font-size:13px;
}
.ex-x{
  border:none; background:none; color:var(--text-dim); font-size:16px; line-height:1;
  width:24px; height:24px; border-radius:50%; cursor:pointer;
}
.ex-x:hover{color:var(--text); background:var(--line);}

/* ---- Combos, under Analysis ---- */
.combo-panel{
  border:1px solid var(--line-2); background:var(--surface); border-radius:var(--r3);
  padding:18px 20px; margin-bottom:26px; display:flex; flex-direction:column; gap:10px;
}
.cp-head{display:flex; align-items:center; gap:10px; flex-wrap:wrap;}
.cp-head.clickable{cursor:pointer;}
.cp-fold{margin-left:auto;}
.combo-panel.folded{padding-top:14px; padding-bottom:14px;}
.combo-panel.folded .cp-body, .cp-body[hidden]{display:none;}
.cp-head h3{font-size:19px; text-transform:uppercase; letter-spacing:.06em;}
.cp-count{font-size:13px; color:var(--text-dim);}
.cp-body{display:flex; flex-direction:column; gap:10px;}
.cp-sub{
  margin-top:8px; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:var(--text-label);
}
.cp-list{display:flex; flex-direction:column; gap:8px;}
.cp-row{
  display:flex; flex-direction:column; gap:5px; padding:10px 12px; border-radius:var(--r2);
  background:var(--bg-2); border:1px solid var(--line);
}
.cp-row.minor{opacity:.8;}
.cp-cards{display:flex; flex-wrap:wrap; align-items:center; gap:4px 6px;}
.cp-card{
  border:none; background:none; padding:0; font:inherit; font-size:14.5px; font-weight:600; color:var(--text);
  cursor:pointer; text-align:left;
}
.cp-card:hover{color:var(--accent-hi); text-decoration:underline;}
.cp-card.missing{color:var(--accent-hi); border-bottom:1px dashed var(--accent);}
.cp-plus{color:var(--text-faint); font-size:13px;}
.cp-does{font-size:13px; color:var(--text-dim); line-height:1.45;}
.cp-tags{display:flex; flex-wrap:wrap; gap:6px;}
.cp-tag{
  font-size:11.5px; padding:2px 8px; border-radius:20px; color:var(--text-dim);
  background:var(--surface-2); border:1px solid var(--line);
}
.cp-tag.hot{color:var(--accent-hi); border-color:var(--accent);}
.cp-tag.warn{color:var(--warn); border-color:rgba(var(--warn-rgb),.45); background:rgba(var(--warn-rgb),.08);}
.cp-tag.own{color:var(--ok, #41cf8d); border-color:rgba(65,207,141,.4);}
.cp-more{align-self:flex-start;}
.cp-stale{color:var(--text-faint);}
.cp-foot{font-size:12px; color:var(--text-faint); line-height:1.5;}
.cp-foot a{color:var(--text-dim); text-decoration:underline;}

@media(max-width:960px){
  .combo-panel{padding:16px 14px; margin-bottom:20px;}
  .budget-row .budget-num{font-size:16px;}
}

/* The Rebuild dialog runs taller than a laptop screen; on a desktop a
   .modal does not scroll by itself (phones get overflow-y in 05-mobile). */
.modal.scroll-modal{overflow-y:auto; overscroll-behavior:contain;}

/* "Bracket 3 instead of 4": over the deck list when the budget kept it lower */
.notice.budget-note{margin-top:0; margin-bottom:16px;}

/* the shopping list as tiles: the collection's tiles inside the panel */
.shop-viewbar{margin:12px 0 10px;}
.shop-tiles{margin-bottom:6px;}

/* "Themes" in the Rebuild dialog: up to three of EDHREC's ways to play */
.theme-field .k{display:block; margin-bottom:8px;}
.theme-chips{gap:6px;}
.theme-chips .chip{display:inline-flex; align-items:center; gap:6px; padding:6px 12px; font-size:13px;}
.theme-chips .chip .n{font-size:11.5px; opacity:.72; font-variant-numeric:tabular-nums;}
.theme-chips .chip:disabled{opacity:.42; cursor:default;}
.theme-chips .chip:disabled:hover{border-color:var(--line-2); color:var(--text-dim);}
.theme-chips .chip.more{background:none; border-style:dashed;}
