/* Private trade slice. Reuse the existing Footy Forge palette and typography. */
.trade-layout[hidden],.trade-filters[hidden],.trade-columns[hidden] {display:none!important;}
#trade-draft-next {margin:12px 0;min-height:44px;}
.trade-toolbar { display:flex; align-items:end; gap:18px; flex-wrap:wrap; }
.trade-toolbar>label { flex:1; min-width:160px; color:var(--muted); font-size:.75rem; }
.trade-toolbar select { display:block; margin-top:6px; }
.trade-toolbar select,.trade-board select,.trade-board input { width:100%; min-width:0; min-height:44px; border:1px solid var(--line); border-radius:5px; padding:8px; background:var(--ink-2); color:var(--cream); font-size:.82rem; }
.trade-balance { display:flex; gap:20px; padding-bottom:4px; }
.trade-balance strong { font-size:1.1rem; }
.trade-balance small { display:block; color:var(--muted); font-size:.68rem; font-weight:400; margin-top:3px; }
.trade-note { font-size:.76rem; color:var(--muted); line-height:1.5; overflow-wrap:anywhere; }
.trade-layout { display:grid; grid-template-columns:minmax(0,1fr) 280px; align-items:start; gap:18px; }
.trade-board,.trade-offer { padding:14px; min-width:0; }
.trade-side-tabs { display:flex; gap:6px; }
.trade-side-tabs button { flex:1; }
.trade-side-tabs button,.trade-row button,.trade-dialog-heading button { min-height:44px; border:1px solid var(--line); border-radius:5px; background:transparent; color:var(--cream); cursor:pointer; }
.trade-side-tabs button[aria-pressed="true"],.trade-row button[aria-pressed="true"] { color:var(--gold-bright); border-color:var(--gold-dark); }
.trade-board-header { display:flex; align-items:center; gap:10px; margin:12px 0; }
.trade-board-header h3 { flex:1; min-width:0; font-size:.95rem; margin:0; overflow-wrap:anywhere; }
.trade-board-header label { width:130px; }
.trade-filters { display:grid; grid-template-columns:minmax(0,1fr) 125px; gap:6px; }
.trade-filters label { min-width:0; }
.trade-columns,.trade-row { display:grid; grid-template-columns:minmax(0,1fr) 34px 42px 54px; gap:8px; align-items:center; }
.trade-columns { color:var(--muted); font-size:.6rem; padding-bottom:6px; }
.trade-columns span:not(:first-child) { text-align:center; }
.trade-rows { padding:0; margin:0; list-style:none; }
.trade-row { padding:6px 0; border-top:1px solid var(--line-soft); min-height:56px; }
.trade-row>strong { min-width:0; font-size:.8rem; overflow-wrap:normal; word-break:normal; }
.trade-row small { display:block; color:var(--muted); font-weight:400; font-size:.65rem; margin-top:4px; }
.trade-row .position-tag { min-width:0; padding:4px 2px; font-size:.65rem; text-align:center; }
.trade-row button { font-size:.7rem; padding:4px; }
.trade-ovr { color:var(--gold-bright); font-weight:800; text-align:center; }
.trade-pick { grid-template-columns:minmax(0,1fr) 54px; }
.trade-empty { color:var(--muted); font-size:.76rem; padding:6px 0; }
.trade-offer h3 { margin:0 0 12px; font-size:.95rem; }
#trade-selection>summary { min-height:44px; padding:12px 0; cursor:pointer; font-size:.82rem; color:var(--gold-bright); }
.trade-offer .primary-button { width:100%; min-height:44px; padding:10px; }
.trade-offer .text-button,.trade-toolbar .text-button { min-height:44px; }
.trade-package { min-width:0; font-size:.78rem; }
.trade-package>strong { color:var(--gold-bright); }
.trade-package ul { list-style:none; padding:0; margin:6px 0 12px; }
.trade-package li { margin:4px 0; overflow-wrap:anywhere; }
.trade-package small { display:block; color:var(--muted); font-size:.7rem; margin:4px 0 8px; }
.trade-selected-asset { display:grid; grid-template-columns:minmax(0,1fr) 44px; align-items:center; gap:4px; }
.trade-selected-asset button { min-width:44px; min-height:44px; border:1px solid var(--line); border-radius:4px; background:transparent; color:var(--muted); font-size:1.2rem; cursor:pointer; }
#trade-issue { color:var(--red); }
.trade-history { margin-top:16px; border-block:1px solid var(--line); font-size:.78rem; }
.trade-history>summary,.trade-projections>summary { padding:14px 0; min-height:44px; cursor:pointer; }
.trade-history ul { list-style:none; padding:0; }
.trade-history li { border-top:1px solid var(--line-soft); padding:10px 0; overflow-wrap:anywhere; }
.trade-history li span { display:block; margin-top:4px; color:var(--muted); }
#trade-dialog { width:min(650px,calc(100% - 24px)); max-height:calc(100dvh - 24px); overflow-y:auto; overscroll-behavior:contain; margin:auto; padding:22px; background:var(--ink-2); color:var(--cream); border:1px solid var(--gold-dark); border-radius:10px; }
#trade-dialog::backdrop { background:#030507cf; }
.trade-dialog-heading { display:flex; gap:10px; align-items:start; justify-content:space-between; }
.trade-dialog-heading h3 { font-size:1.15rem; margin:8px 0; overflow-wrap:anywhere; }
.trade-dialog-heading button { min-width:44px; font-size:1.5rem; }
#trade-response { color:var(--gold-bright); font-size:.82rem; line-height:1.5; }
#trade-review-body { font-size:.8rem; line-height:1.5; }
.trade-review-packages,.trade-review-finances { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.trade-review-finances { border-block:1px solid var(--line); padding:12px 0; }
.trade-review-finances h4 { margin:0 0 8px; overflow-wrap:anywhere; }
.trade-review-finances p { margin:5px 0; color:var(--muted); font-size:.7rem; }
.trade-review-finances strong { display:block; color:var(--cream); font-size:.83rem; }
.trade-projections { font-size:.72rem; }
.trade-projections>div { display:grid; grid-template-columns:42px minmax(0,1fr) minmax(0,1fr); gap:6px; padding:4px 0; }
.trade-projections span:not(:first-child) { text-align:right; }
.trade-year-head { color:var(--muted); }
.trade-dialog-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.trade-dialog-actions button { flex:1; min-height:44px; padding:10px; font-size:.82rem; }
.offseason-stage-tabs { flex-wrap:wrap; }
@media(max-width:800px) {
  .trade-layout { grid-template-columns:minmax(0,1fr); gap:12px; }
  .trade-offer { order:-1; position:relative; }
  .trade-offer #trade-review { position:absolute; top:14px; right:14px; width:120px; font-size:.82rem; }
  .trade-offer #trade-selection>summary { padding-right:125px; }
  .trade-offer #trade-issue:empty { display:none; }
  .trade-offer #trade-package { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .trade-offer h3 { display:none; }
  .trade-offer .trade-package ul { margin-bottom:4px; }
  .trade-offer .trade-note { margin:6px 0; }
  .trade-offer .text-button { padding:4px; width:100%; }
  .trade-toolbar { gap:8px 14px; }
  .trade-toolbar>label { min-width:0; flex-basis:100%; }
  .trade-toolbar>.text-button { margin-left:auto; padding:6px 0; font-size:.75rem; }
  .trade-balance { gap:14px; }
  .trade-balance strong { font-size:.95rem; }
  .trade-board { padding:10px; }
}
@media(max-width:450px) {
  .trade-row,.trade-columns { gap:5px; grid-template-columns:minmax(0,1fr) 28px 35px 44px; }
  .trade-row>strong { font-size:.77rem; }
  .trade-pick { grid-template-columns:minmax(0,1fr) 44px; }
  .trade-filters { grid-template-columns:minmax(0,1fr) 110px; }
  .trade-board input,.trade-board select,.trade-toolbar select { font-size:16px; }
  .trade-board-header label { width:120px; }
  #trade-dialog { padding:12px; }
  .trade-review-packages,.trade-review-finances { gap:10px; }
  .offseason-stage-tabs button { padding:6px; font-size:.72rem; }
}
