/* trade.css — per-route styles for /trade
   Extracted from inline <style> 2026-06-03 (subpage-css-phase2).
   Generic box-sizing/html/body/a resets dropped (base.css owns).
   .app grid redef dropped (critical CSS + base.css).
   All page-specific component rules preserved. */

/* Reset & Shell (page-specific additions only) */
button,select,input,textarea{font-family:inherit;}
.skip{position:absolute;top:-100px;left:0;padding:8px 16px;background:var(--red-primary);color:#fff;z-index:100;}.skip:focus{top:0;}
.content{display:flex;flex-direction:column;min-width:0;padding-bottom:64px;}
.mob-nav-toggle{display:none;}
@media(max-width:880px){
  .content{padding-top:56px;}
}

/* Animations */
@keyframes fadeInUp{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:translateY(0);}}
@keyframes scaleIn{from{opacity:0;transform:scale(.94);}to{opacity:1;transform:scale(1);}}
@keyframes gradeIn{0%{opacity:0;transform:scale(.5);}60%{transform:scale(1.15);}100%{opacity:1;transform:scale(1);}}
@keyframes pulse{0%,100%{opacity:1;}50%{opacity:.6;}}
@keyframes shimmer{0%{background-position:-200% 0;}100%{background-position:200% 0;}}
@media(prefers-reduced-motion:reduce){*{animation-duration:0s!important;transition-duration:0s!important;}}

/* Skeleton Loading */
.skel{background:linear-gradient(90deg,var(--bg-surface,#0A0A0A) 25%,var(--bg-surface-2,#111) 50%,var(--bg-surface,#0A0A0A) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:6px;}
.skel-text{height:14px;margin-bottom:8px;width:80%;}
.skel-text.short{width:50%;}
.skel-card{height:120px;border-radius:12px;margin-bottom:12px;}
.skel-row{height:44px;border-radius:6px;margin-bottom:6px;}

/* Page Header */
.page-header{background:var(--sns-grad-page-header,linear-gradient(135deg,#0d0d0d 0%,#1a0000 50%,#0d0d0d 100%));border-bottom:2px solid var(--red-primary,#FF1A1A);padding:20px 24px 16px;position:relative;overflow:hidden;flex-shrink:0;}
.page-header::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(135deg,transparent,transparent 20px,rgba(255,26,26,.03) 20px,rgba(255,26,26,.03) 21px);pointer-events:none;}
.page-header-inner{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;}
.page-eyebrow{font-family:var(--f-display);font-size:16px;letter-spacing:.2em;color:var(--red-primary);text-transform:uppercase;display:block;margin-bottom:2px;}
.page-title{font-family:var(--f-display);font-size:clamp(22px,3vw,36px);letter-spacing:.04em;color:var(--white-bright);line-height:1;}
.page-subtitle{font-size:16px;color:var(--gray-light,var(--gray-light,#C2C2C2));margin:4px 0 0;}
.header-actions{display:flex;align-items:center;gap:8px;}
.commish-toggle-btn{padding:8px 16px;border-radius:8px;font-family:var(--f-display);font-size:16px;letter-spacing:.1em;background:var(--bg-surface-2);border:1px solid var(--gray-border,#2A2A2A);color:var(--gray-light);cursor:pointer;transition:all .2s;}
.commish-toggle-btn.on{background:rgba(255,45,45,.12);border-color:var(--gold-accent,var(--accent,#FF2D2D));color:#FFFFFF;}
.deadline-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:8px;font-family:var(--f-display);font-size:16px;letter-spacing:.08em;border:1px solid var(--gray-border);background:var(--bg-surface-2);}
.deadline-badge.warning{border-color:rgba(255,255,255,.5);background:rgba(255,45,45,.08);color:#FFFFFF;}
.deadline-badge.urgent{border-color:rgba(255,26,26,.5);background:rgba(255,26,26,.08);color:var(--red-primary);animation:pulse 2s infinite;}
.deadline-dot{width:8px;height:8px;border-radius:50%;background:currentColor;}

/* Tab Bar */
.tab-bar-wrap{position:relative;flex-shrink:0;}
.tab-bar{display:flex;gap:0;padding:0 16px;border-bottom:1px solid var(--gray-border);background:var(--bg-surface);overflow-x:auto;flex-shrink:0;}
.tab-bar::-webkit-scrollbar{display:none;}
.tab-bar-fade{display:none;position:absolute;top:0;right:0;bottom:1px;width:32px;background:linear-gradient(90deg,transparent,var(--bg-surface) 65%);pointer-events:none;}
@media(max-width:880px){.tab-bar-fade{display:block;}}
.tab-btn{padding:12px 18px;font-family:var(--f-display);font-size:16px;letter-spacing:.12em;color:var(--gray-light);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;white-space:nowrap;transition:color .15s,border-color .15s;}
.tab-btn:hover{color:var(--white-bright);}
.tab-btn.active{color:var(--white-bright);border-bottom-color:var(--red-primary);}
.tab-btn .badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;font-family:var(--f-body);font-size:16px;font-weight:600;background:var(--red-primary);color:#fff;margin-left:6px;}

/* Tab Panels */
.tab-panel{display:none;padding:16px;animation:fadeInUp .3s ease both;}
.tab-panel.active{display:block;}

/* Panel / Card Base */
.panel{background:var(--bg-surface);border:1px solid var(--gray-border);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;}
.panel-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--gray-border);flex-shrink:0;}
.panel-title{font-family:var(--f-display);font-size:16px;letter-spacing:.1em;color:var(--white-bright);display:flex;align-items:center;gap:6px;}
.panel-subtitle{font-size:16px;color:var(--gray-light);margin-top:2px;}
.panel-body{flex:1;overflow-y:auto;padding:12px 14px;}
.panel-body::-webkit-scrollbar{width:3px;}
.panel-body::-webkit-scrollbar-thumb{background:var(--gray-border);border-radius:2px;}

/* Dashboard Grid (Tab 1) */
.dash-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px;}
@media(max-width:1100px){.dash-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:600px){.dash-grid{grid-template-columns:1fr;}}
.stat-tile{background:var(--bg-surface);border:1px solid var(--gray-border);border-radius:10px;padding:16px;text-align:center;transition:border-color .2s,box-shadow .2s;}
.stat-tile:hover{border-color:rgba(255,26,26,.3);box-shadow:var(--sns-shadow-card);}
.stat-num{font-family:var(--f-display);font-size:32px;letter-spacing:.02em;line-height:1;color:var(--white-bright);}
.stat-label{font-family:var(--f-display);font-size:16px;letter-spacing:.14em;color:var(--gray-light);margin-top:4px;}
.stat-tile.highlight .stat-num{color:var(--red-primary);}
.stat-tile.gold .stat-num{color:#FFFFFF;}

/* Trade Card (inbox/outbox/history items) */
.trade-card{background:var(--bg-surface);border:1px solid var(--gray-border);border-radius:10px;padding:14px 16px;margin-bottom:10px;cursor:pointer;transition:border-color .15s,box-shadow .15s;}
.trade-card:hover{border-color:rgba(255,26,26,.3);box-shadow:0 0 12px rgba(255,26,26,.15);}
.trade-card.status-proposed{border-left:3px solid var(--gold-accent);}
.trade-card.status-pending_review{border-left:3px solid #6aa9d7;}
.trade-card.status-accepted,.trade-card.status-completed{border-left:3px solid var(--green-positive, #3DBA6E);}
.trade-card.status-declined,.trade-card.status-vetoed,.trade-card.status-commish_rejected{border-left:3px solid var(--red-primary);}
.trade-card.status-expired,.trade-card.status-withdrawn,.trade-card.status-countered{border-left:3px solid var(--gray-light);}
.tc-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;}
.tc-teams{font-family:var(--f-display);font-size:16px;letter-spacing:.06em;}
.tc-arrow{color:var(--gray-light);margin:0 4px;}
.tc-status{padding:2px 8px;border-radius:4px;font-family:var(--f-display);font-size:16px;letter-spacing:.1em;white-space:nowrap;}
.tc-status.proposed{background:rgba(255,45,45,.15);color:#FFFFFF;}
.tc-status.pending_review{background:rgba(106,169,215,.15);color:#6aa9d7;}
.tc-status.accepted,.tc-status.completed{background:rgba(61,186,110,.15);color:var(--green-positive, #3DBA6E);}
.tc-status.declined,.tc-status.vetoed,.tc-status.commish_rejected{background:rgba(255,26,26,.15);color:#ff6b6b;}
.tc-status.expired,.tc-status.withdrawn,.tc-status.countered{background:rgba(138,138,138,.15);color:var(--gray-light);}
.tc-assets{display:flex;gap:12px;margin-bottom:8px;}
.tc-side{flex:1;min-width:0;}
.tc-side-label{font-family:var(--f-display);font-size:16px;letter-spacing:.14em;color:var(--gray-light);margin-bottom:4px;}
.tc-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 6px;background:rgba(255,26,26,.06);border:1px solid rgba(255,26,26,.15);border-radius:4px;font-size:16px;margin:0 4px 4px 0;}
.tc-pick-chip{background:rgba(255,45,45,.08);border-color:rgba(255,255,255,.2);color:#FFFFFF;}
.tc-meta{display:flex;align-items:center;gap:8px;font-size:16px;color:var(--gray-light);}
.tc-review-info{font-size:16px;color:#6aa9d7;margin-top:6px;padding:6px 8px;background:rgba(106,169,215,.06);border-radius:6px;}

/* Position Badges */
.pos-badge{padding:2px 5px;border-radius:3px;font-family:var(--f-display);font-size:16px;letter-spacing:.06em;white-space:nowrap;}
.pos-QB{background:var(--sns-pos-qb-bg);color:var(--sns-pos-qb-text);}
.pos-RB{background:var(--sns-pos-rb-bg);color:var(--sns-pos-rb-text);}
.pos-WR{background:var(--sns-pos-wr-bg);color:var(--sns-pos-wr-text);}
.pos-TE{background:var(--sns-pos-te-bg);color:var(--sns-pos-te-text);}
.pos-K{background:var(--sns-pos-k-bg);color:var(--sns-pos-k-text);}
.pos-DEF,.pos-DST{background:rgba(160,100,220,.14);color:#c080ff;}

/* Propose Trade (Tab 2) */
.propose-layout{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
@media(max-width:880px){.propose-layout{grid-template-columns:1fr;}}
.propose-col{display:flex;flex-direction:column;gap:12px;}
.propose-section{background:var(--bg-surface);border:1px solid var(--gray-border);border-radius:10px;padding:14px;}
.propose-label{font-family:var(--f-display);font-size:16px;letter-spacing:.14em;color:var(--gray-light);margin-bottom:8px;}
.team-select{width:100%;background:var(--bg-surface-2);border:1px solid var(--gray-border);border-radius:6px;padding:8px 12px;font-size:16px;color:var(--white-bright);cursor:pointer;outline:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238A8A8A' stroke-width='2'><polyline points='6 9 12 15 18 9'/></svg>");background-repeat:no-repeat;background-position:right 10px center;transition:border-color .15s,box-shadow .15s;}
.team-select:focus{border-color:var(--green-positive, #3DBA6E);box-shadow:0 0 0 3px rgba(61,186,110,.15);outline:none;}
.player-search{width:100%;background:var(--bg-surface-2);border:1px solid var(--gray-border);border-radius:6px;padding:7px 10px;font-size:16px;color:var(--white-bright);outline:none;margin-bottom:6px;transition:border-color .15s,box-shadow .15s;}
.player-search:focus{border-color:var(--green-positive, #3DBA6E);box-shadow:0 0 0 3px rgba(61,186,110,.15);}
.player-search::placeholder{color:var(--gray-light);}
.player-list{max-height:240px;overflow-y:auto;border:1px solid var(--gray-border);border-radius:6px;background:var(--black-bg,#050505);}
.player-list::-webkit-scrollbar{width:3px;}
.player-list::-webkit-scrollbar-thumb{background:var(--gray-border);}
.player-row{display:grid;grid-template-columns:auto 1fr auto;gap:6px;align-items:center;padding:8px 10px;border-bottom:1px solid rgba(255,255,255,.04);cursor:pointer;transition:background .12s;min-height:44px;}
.player-row:last-child{border-bottom:none;}
.player-row:hover{background:var(--bg-surface-2);}
.player-row.selected{background:rgba(255,26,26,.08);border-left:2px solid var(--red-primary);}
.player-row.disabled{opacity:.35;cursor:not-allowed;pointer-events:none;}
.player-info{min-width:0;}
.player-name-sm{font-family:var(--f-display);font-size:16px;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.player-school{font-size:16px;color:var(--gray-light);}
.ppg-sm{font-family:var(--f-mono,'JetBrains Mono',monospace);font-size:16px;color:var(--gray-light);white-space:nowrap;}
.player-list-empty{text-align:center;padding:24px 8px;color:var(--gray-light);font-size:16px;}

/* Draft Pick Selector */
.pick-selector{margin-top:8px;}
.pick-row{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px;}
.pick-add-btn{padding:6px 12px;border-radius:6px;font-family:var(--f-display);font-size:16px;letter-spacing:.08em;background:rgba(255,45,45,.08);border:1px solid rgba(255,45,45,.2);color:#FFFFFF;cursor:pointer;transition:all .15s;}
.pick-add-btn:hover{background:rgba(255,45,45,.15);}
.pick-chip-rm{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:4px;font-size:16px;background:rgba(255,45,45,.1);border:1px solid rgba(255,45,45,.25);color:#FFFFFF;}
.pick-chip-rm .rm-x{cursor:pointer;margin-left:4px;opacity:.6;transition:opacity .15s;}
.pick-chip-rm .rm-x:hover{opacity:1;}

/* Offer Summary */
.offer-summary{background:var(--bg-surface);border:1px solid var(--gray-border);border-radius:10px;padding:16px;margin-top:16px;}
.offer-title{font-family:var(--f-display);font-size:16px;letter-spacing:.12em;color:var(--white-bright);margin-bottom:12px;}
.offer-sides{display:grid;grid-template-columns:1fr 40px 1fr;gap:8px;align-items:start;}
.offer-side-label{font-family:var(--f-display);font-size:16px;letter-spacing:.14em;color:var(--gray-light);margin-bottom:6px;}
.offer-vs{font-family:var(--f-display);font-size:18px;color:var(--gray-light);text-align:center;padding-top:18px;}
.offer-chip{display:flex;align-items:center;gap:4px;padding:4px 8px;background:rgba(255,26,26,.06);border:1px solid rgba(255,26,26,.15);border-radius:4px;font-size:16px;margin-bottom:4px;}
.offer-chip .chip-x{cursor:pointer;color:var(--gray-light);font-size:16px;line-height:1;margin-left:auto;padding:0 2px;}
.offer-chip .chip-x:hover{color:var(--red-primary);}
.offer-empty{font-size:16px;color:rgba(138,138,138,.5);font-style:italic;}
.msg-textarea{width:100%;background:var(--bg-surface-2);border:1px solid var(--gray-border);border-radius:6px;padding:8px 10px;font-size:16px;color:var(--white-bright);resize:vertical;min-height:56px;outline:none;margin-top:10px;transition:border-color .15s,box-shadow .15s;}
.msg-textarea:focus{border-color:var(--green-positive, #3DBA6E);box-shadow:0 0 0 3px rgba(61,186,110,.15);}
.msg-textarea::placeholder{color:var(--gray-light);}
.msg-counter{font-size:16px;color:var(--gray-light);text-align:right;margin-top:2px;}
.send-btn{width:100%;margin-top:12px;padding:12px;min-height:44px;border-radius:8px;font-family:var(--f-display);font-size:16px;letter-spacing:.12em;background:var(--sns-grad-btn-primary,linear-gradient(180deg,#FF2A2A 0%,var(--brand-red-deep, #C40000) 100%));color:#fff;border:none;cursor:pointer;transition:all .2s;box-shadow:var(--sns-shadow-btn-primary,0 2px 12px rgba(255,45,45,.35));position:relative;overflow:hidden;}
/* aura glow — matches the master-button treatment (tokens.css .btn-primary) */
.send-btn::after{content:'';position:absolute;inset:-4px;border-radius:12px;background:transparent;box-shadow:0 0 0 0 rgba(255,45,45,0);animation:sns-btn-aura 2s ease-in-out infinite;pointer-events:none;}
.send-btn:hover:not(:disabled){filter:brightness(1.12);box-shadow:0 0 0 1px rgba(255,45,45,.5),0 4px 20px rgba(255,45,45,.45);}
.send-btn:active:not(:disabled){transform:scale(.97);}
.send-btn:focus-visible{outline:2px solid #fff;outline-offset:2px;}
.send-btn:disabled{background:var(--gray-border);color:var(--gray-light);cursor:not-allowed;box-shadow:none;}
.send-btn:disabled::after{display:none;}

/* Offer-vs swap button */
.offer-vs-btn{font-family:var(--f-display);font-size:18px;color:var(--gray-light);text-align:center;padding-top:18px;background:none;border:none;cursor:pointer;transition:color .15s,transform .15s;display:block;width:100%;}
.offer-vs-btn:hover{color:var(--white-bright);transform:scale(1.2);}
.offer-vs-btn:active{transform:scale(1.05);}
.offer-vs-btn:focus-visible{outline:2px solid #fff;outline-offset:2px;border-radius:4px;}

/* Fairness Analyzer */
.analyzer-panel{background:var(--bg-surface);border:1px solid var(--gray-border);border-radius:10px;padding:14px;margin-top:16px;}
.fairness-meter{margin-bottom:12px;}
.fairness-label{font-family:var(--f-display);font-size:16px;letter-spacing:.12em;color:var(--gray-light);margin-bottom:4px;}
.fairness-bar-wrap{height:8px;background:var(--bg-surface-2);border-radius:4px;overflow:hidden;margin-bottom:4px;}
.fairness-bar{height:100%;border-radius:4px;transition:width .5s ease;}
.fairness-values{display:flex;justify-content:space-between;font-family:var(--f-mono);font-size:16px;}
.grade-display{text-align:center;padding:16px 0 8px;}
.grade-letter{font-family:var(--f-display);font-size:64px;line-height:1;letter-spacing:.02em;animation:gradeIn .4s ease;}
.grade-A{color:var(--green-positive, #3DBA6E);}.grade-B{color:#7fc89a;}.grade-C{color:#FFFFFF;}.grade-D{color:var(--orange-accent, #FF6A00);}.grade-F{color:var(--red-primary);}
.grade-verdict{font-family:var(--f-display);font-size:16px;letter-spacing:.15em;margin-top:4px;color:var(--gray-light);}
.fairness-hint{font-size:16px;color:var(--gray-light);text-align:center;margin-top:8px;line-height:1.5;}
.value-row{display:flex;justify-content:space-between;align-items:center;padding:5px 0;border-bottom:1px solid rgba(255,255,255,.04);font-size:16px;}
.value-row:last-child{border-bottom:none;}
.value-name{color:var(--white-bright);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;}
.value-ppg{font-family:var(--f-mono);font-size:16px;color:#FFFFFF;flex-shrink:0;margin-left:8px;}

/* Trade Review Modal */
.modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.78);z-index:999;align-items:center;justify-content:center;}
.modal-overlay.show{display:flex;}
.modal{background:var(--bg-surface);border:1px solid var(--gray-border);border-radius:14px;padding:24px;width:min(560px,94vw);max-height:90vh;overflow-y:auto;animation:scaleIn .2s ease;box-shadow:var(--sns-shadow-modal);}
.modal-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:16px;}
.modal-title{font-family:var(--f-display);font-size:22px;letter-spacing:.06em;color:var(--white-bright);}
.modal-subtitle{font-size:16px;color:var(--gray-light);margin-top:3px;}
.modal-close{background:none;border:none;color:var(--gray-light);font-size:22px;cursor:pointer;padding:4px;line-height:1;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;}
.modal-close:hover{color:var(--white-bright);}
.modal-trade-sides{display:grid;grid-template-columns:1fr 32px 1fr;gap:8px;align-items:start;background:var(--bg-surface-2);border-radius:10px;padding:14px;margin-bottom:16px;}
.modal-side-label{font-family:var(--f-display);font-size:16px;letter-spacing:.14em;color:var(--gray-light);margin-bottom:6px;}
.modal-side-vs{font-family:var(--f-display);font-size:16px;color:var(--gray-light);text-align:center;padding-top:20px;}
.modal-player-chip{padding:4px 8px;background:rgba(255,26,26,.08);border:1px solid rgba(255,26,26,.15);border-radius:5px;font-size:16px;margin-bottom:4px;display:flex;align-items:center;gap:4px;}
.modal-pick-chip{background:rgba(255,45,45,.08);border-color:rgba(255,255,255,.2);color:#FFFFFF;}
.modal-msg{background:var(--bg-surface-2);border-radius:8px;padding:10px 12px;margin-bottom:16px;font-size:16px;color:var(--gray-light);font-style:italic;}
.modal-actions{display:flex;gap:10px;margin-bottom:12px;flex-wrap:wrap;}
.btn-accept{flex:1;min-width:100px;padding:11px;border-radius:8px;font-family:var(--f-display);font-size:16px;letter-spacing:.1em;background:rgba(61,186,110,.12);border:1px solid var(--green-positive, #3DBA6E);color:var(--green-positive, #3DBA6E);cursor:pointer;transition:all .15s;min-height:44px;}
.btn-accept:hover{background:rgba(61,186,110,.22);}
.btn-reject{flex:1;min-width:100px;padding:11px;border-radius:8px;font-family:var(--f-display);font-size:16px;letter-spacing:.1em;background:rgba(255,26,26,.1);border:1px solid var(--red-primary);color:#ff6b6b;cursor:pointer;transition:all .15s;min-height:44px;}
.btn-reject:hover{background:rgba(255,26,26,.2);}
.btn-counter{flex:1;min-width:100px;padding:11px;border-radius:8px;font-family:var(--f-display);font-size:16px;letter-spacing:.1em;background:rgba(255,45,45,.08);border:1px solid var(--gold-accent);color:#FFFFFF;cursor:pointer;transition:all .15s;min-height:44px;}
.btn-counter:hover{background:rgba(255,45,45,.18);}
.btn-withdraw{padding:11px;border-radius:8px;font-family:var(--f-display);font-size:16px;letter-spacing:.1em;background:var(--bg-surface-2);border:1px solid var(--gray-border);color:var(--gray-light);cursor:pointer;transition:all .15s;min-height:44px;}
.btn-withdraw:hover{border-color:var(--red-primary);color:#ff6b6b;}
.counter-box{background:var(--bg-surface-2);border-radius:8px;padding:12px;display:none;margin-bottom:12px;}
.counter-box.show{display:block;}
.modal-result{text-align:center;padding:24px 16px;}
.modal-result-ic{font-size:48px;display:block;margin-bottom:8px;}
.modal-result-msg{font-family:var(--f-display);font-size:18px;letter-spacing:.06em;margin-bottom:16px;}
.btn-close-result{padding:10px 24px;border-radius:8px;font-family:var(--f-display);font-size:16px;letter-spacing:.1em;background:var(--bg-surface-2);border:1px solid var(--gray-border);color:var(--white-bright);cursor:pointer;min-height:44px;}

/* Veto Section */
.veto-section{background:var(--bg-surface-2);border-radius:8px;padding:12px;margin-top:12px;}
.veto-title{font-family:var(--f-display);font-size:16px;letter-spacing:.12em;color:var(--gray-light);margin-bottom:8px;}
.veto-progress{display:flex;align-items:center;gap:10px;margin-bottom:6px;}
.veto-bar-wrap{flex:1;height:6px;background:rgba(255,255,255,.06);border-radius:3px;overflow:hidden;}
.veto-bar{height:100%;background:var(--red-primary);border-radius:3px;transition:width .4s ease;}
.veto-count{font-family:var(--f-mono);font-size:16px;color:var(--gray-light);white-space:nowrap;}
.veto-btn{padding:8px 16px;border-radius:6px;font-family:var(--f-display);font-size:16px;letter-spacing:.1em;background:rgba(255,26,26,.1);border:1px solid rgba(255,26,26,.3);color:#ff6b6b;cursor:pointer;transition:all .15s;margin-top:6px;min-height:44px;}
.veto-btn:hover{background:rgba(255,26,26,.2);}
.veto-btn:disabled{opacity:.4;cursor:not-allowed;}

/* Commish Panel */
.commish-panel{margin:16px;animation:fadeInUp .3s ease;border:1px solid rgba(255,45,45,.3);border-radius:12px;background:rgba(255,45,45,.03);overflow:hidden;}
.commish-panel[hidden]{display:none;}
.commish-header{padding:12px 16px;border-bottom:1px solid rgba(255,45,45,.2);display:flex;align-items:center;gap:8px;}
.commish-title{font-family:var(--f-display);font-size:16px;letter-spacing:.12em;color:#FFFFFF;}
.commish-badge{background:var(--gold-accent);color:#1a1207;border-radius:3px;font-family:var(--f-display);font-size:16px;letter-spacing:.1em;padding:1px 6px;}
.commish-body{padding:12px 16px;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px;}
.commish-card{background:var(--bg-surface);border:1px solid var(--gray-border);border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:8px;}
.commish-card-actions{display:flex;gap:6px;}
.commish-approve{padding:6px 14px;border-radius:6px;font-family:var(--f-display);font-size:16px;letter-spacing:.08em;background:rgba(61,186,110,.12);border:1px solid var(--green-positive, #3DBA6E);color:var(--green-positive, #3DBA6E);cursor:pointer;}
.commish-reject{padding:6px 14px;border-radius:6px;font-family:var(--f-display);font-size:16px;letter-spacing:.08em;background:rgba(255,26,26,.1);border:1px solid rgba(255,26,26,.3);color:#ff6b6b;cursor:pointer;}

/* Empty States */
.empty-state{text-align:center;padding:48px 24px;}
.empty-ic{margin-bottom:12px;opacity:.5;display:flex;align-items:center;justify-content:center;}
.empty-ic svg{width:40px;height:40px;stroke:currentColor;fill:none;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;}
.empty-title{font-family:var(--f-display);font-size:18px;letter-spacing:.08em;margin-bottom:6px;}
.empty-desc{font-size:16px;color:var(--gray-light);margin-bottom:16px;line-height:1.5;}
.empty-cta{display:inline-block;padding:10px 24px;border-radius:8px;font-family:var(--f-display);font-size:16px;letter-spacing:.1em;background:var(--red-primary);color:#fff;border:none;cursor:pointer;transition:background .15s;min-height:44px;}
.empty-cta:hover{background:var(--red-bright);}

/* Transfer Portal Window Status */
.window-status-banner{display:none;padding:10px 16px;border-radius:8px;font-size:16px;margin:12px 16px 0;align-items:center;gap:8px;flex-wrap:wrap;}
.window-status-banner.open{display:flex;background:rgba(61,186,110,.08);border:1px solid rgba(61,186,110,.25);color:var(--green-positive, #3DBA6E);}
.window-status-banner.closed{display:flex;background:rgba(255,26,26,.08);border:1px solid rgba(255,26,26,.25);color:#ff6b6b;}
.wsb-dot{width:8px;height:8px;border-radius:50%;background:currentColor;flex-shrink:0;}
.wsb-text{flex:1;}
/* Inline Alert */
.inline-alert{padding:10px 14px;border-radius:8px;font-size:16px;margin-bottom:12px;}
.inline-alert.info{background:rgba(106,169,215,.08);border:1px solid rgba(106,169,215,.25);color:#6aa9d7;}
.inline-alert.warn{background:rgba(255,45,45,.08);border:1px solid rgba(255,45,45,.25);color:#FFFFFF;}
.inline-alert.error{background:rgba(255,26,26,.08);border:1px solid rgba(255,26,26,.25);color:#ff6b6b;}

/* Status indicator */
.status-indicator{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:4px;}
.status-indicator.live{background:var(--green-positive, #3DBA6E);animation:pulse 2s infinite;}
.status-indicator.pending{background:var(--gold-accent);}
.status-indicator.closed{background:var(--gray-light);}

/* History filters */
.filter-row{display:flex;gap:6px;margin-bottom:12px;flex-wrap:wrap;}
.filter-chip{padding:5px 12px;border-radius:16px;font-size:16px;font-family:var(--f-display);letter-spacing:.08em;background:var(--bg-surface-2);border:1px solid var(--gray-border);color:var(--gray-light);cursor:pointer;transition:all .15s;min-height:32px;}
.filter-chip:hover{border-color:var(--white-bright);color:var(--white-bright);}
.filter-chip.active{background:rgba(255,26,26,.1);border-color:var(--red-primary);color:var(--white-bright);}
