/**
 * Past Waivers floating window (pwv-*). MinimizablePanel manages position,
 * size, and the minimized dock pill; this file styles the window content.
 */

#pastWaiversPanel .pwv-window {
    position: fixed;
    display: flex;
    flex-direction: column;
    background: var(--jt-bg-primary);
    border: 1px solid var(--jt-border-secondary);
    border-radius: 14px;
    box-shadow: var(--jt-modal-shadow);
    color: var(--jt-text-primary);
    overflow: hidden;
    z-index: 1600;   /* floating panel tier — above board, below modals */
    min-width: 640px;
    min-height: 380px;
}

/* ── Header (drag handle) ── */
.pwv-head {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    background: var(--jt-bg-secondary);
    border-bottom: 1px solid var(--jt-border-primary);
    cursor: grab;
    flex: 0 0 auto;
}
.pwv-grip { color: var(--jt-text-muted); font-size: 13px; }
.pwv-head h2 { font-size: 0.95rem; font-weight: 800; margin: 0; }
.pwv-intel {
    background: var(--jt-gradient-pro);
    color: #fff;
    font-size: 0.55rem;
    font-weight: 700;
    padding: 2px 7px;
    border-radius: 4px;
}
.pwv-year {
    margin-left: auto;
    background: var(--jt-bg-tertiary);
    border: 1px solid var(--jt-border-secondary);
    color: var(--jt-text-primary);
    border-radius: 8px;
    padding: 3px 8px;
    font-size: 0.72rem;
}
.pwv-toggle {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.72rem;
    color: var(--jt-text-secondary);
    background: var(--jt-bg-tertiary);
    border: 1px solid var(--jt-border-secondary);
    border-radius: 16px;
    padding: 4px 12px;
    cursor: pointer;
    white-space: nowrap;
}
.pwv-toggle input { accent-color: var(--jt-accent-teal); }
.pwv-mfl { color: var(--jt-accent-blue-hover); font-size: 0.72rem; text-decoration: none; white-space: nowrap; }
.pwv-x {
    background: var(--jt-bg-tertiary);
    border: 1px solid var(--jt-border-secondary);
    color: var(--jt-text-primary);
    border-radius: 8px;
    width: 28px;
    height: 28px;
    cursor: pointer;
}

/* ── Run timeline ── */
.pwv-runs {
    display: flex;
    gap: 6px;
    padding: 9px 14px;
    border-bottom: 1px solid var(--jt-border-primary);
    overflow-x: auto;
    flex: 0 0 auto;
    scrollbar-width: none;
}
.pwv-runs::-webkit-scrollbar { display: none; }
.pwv-run {
    flex: 0 0 auto;
    background: var(--jt-bg-tertiary);
    border: 1px solid var(--jt-border-secondary);
    border-radius: 9px;
    padding: 5px 11px;
    font-size: 0.7rem;
    color: var(--jt-text-secondary);
    cursor: pointer;
    text-align: center;
}
.pwv-run b { display: block; color: var(--jt-text-primary); font-size: 0.74rem; }
.pwv-run span { font-size: 0.58rem; color: var(--jt-text-muted); }
.pwv-run.on { outline: 2px solid var(--jt-accent-teal); color: var(--jt-text-primary); }

/* ── Body grid ── */
.pwv-body {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 12px;
    padding: 12px 14px;
    overflow: auto;
    flex: 1 1 auto;
    min-height: 0;
}
.pwv-body.show-bids { grid-template-columns: minmax(0, 1fr) 270px 290px; }
.pwv-empty { padding: 26px; text-align: center; color: var(--jt-text-muted); font-size: 0.8rem; grid-column: 1 / -1; }

/* ── Results table ── */
.pwv-results {
    background: var(--jt-bg-secondary);
    border: 1px solid var(--jt-border-primary);
    border-radius: 12px;
    overflow-x: auto;
    align-self: start;
}
.pwv-results h3 {
    font-size: 0.66rem;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    color: var(--jt-text-secondary);
    padding: 9px 12px;
    border-bottom: 1px solid var(--jt-border-primary);
    background: var(--jt-bg-primary);
    margin: 0;
}
.pwv-results table { width: 100%; border-collapse: collapse; min-width: 540px; }
.pwv-results th {
    font-size: 0.56rem;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    color: var(--jt-text-muted);
    text-align: left;
    padding: 6px 10px;
    border-bottom: 1px solid var(--jt-border-primary);
    white-space: nowrap;
}
.pwv-results td {
    padding: 7px 10px;
    border-bottom: 1px solid var(--jt-border-muted);
    font-size: 0.75rem;
    vertical-align: middle;
    white-space: nowrap;
}
tr.pwv-claim { cursor: pointer; }
tr.pwv-claim:hover { background: var(--jt-bg-hover); }
tr.pwv-claim.mine { background: rgba(20, 184, 166, 0.06); }
tr.pwv-claim.mine td:first-child { border-left: 3px solid var(--jt-accent-teal); }
tr.pwv-claim.lost-mine { background: rgba(239, 68, 68, 0.05); }
tr.pwv-claim.lost-mine td:first-child { border-left: 3px solid var(--jt-accent-red); }
/* ⭐ My bids mode: rows the acting franchise bid on light up (theme-aware
   amber involvement tint layered over the win/loss edge colors); everything
   else recedes so your activity scans instantly. */
.pwv-body.mybids tr.pwv-claim.pwv-hl {
    background: color-mix(in srgb, var(--jt-accent-amber) 12%, transparent);
}
.pwv-body.mybids tr.pwv-claim.pwv-hl td:first-child {
    border-left: 3px solid var(--jt-accent-amber);
}
.pwv-body.mybids tr.pwv-claim.pwv-hl.mine td:first-child { border-left-color: var(--jt-accent-teal); }
.pwv-body.mybids tr.pwv-claim.pwv-hl.lost-mine td:first-child { border-left-color: var(--jt-accent-red); }
.pwv-body.mybids tr.pwv-claim:not(.pwv-hl) { opacity: 0.42; }
.pwv-body.mybids tr.pwv-claim:not(.pwv-hl):hover { opacity: 1; }
.pwv-body.mybids .pwv-bid-line.me {
    background: color-mix(in srgb, var(--jt-accent-amber) 14%, transparent);
    border-radius: 5px;
    padding-left: 6px;
    font-weight: 700;
}

.pwv-caret { display: inline-block; color: var(--jt-text-muted); font-size: 0.6rem; transition: transform 0.15s; }
tr.pwv-claim.open .pwv-caret { transform: rotate(90deg); color: var(--jt-accent-teal); }
.pwv-who { font-size: 0.68rem; color: var(--jt-text-secondary); }
.pwv-who.me { color: var(--jt-accent-teal-hover); font-weight: 700; }
.pwv-mut { color: var(--jt-text-muted); }
.pwv-wbid { font-weight: 800; color: var(--jt-accent-amber); }

.pwv-badge { display: inline-block; padding: 1px 6px; border-radius: 4px; font-size: 0.58rem; font-weight: 700; }
.pwv-b-tight { background: rgba(16,185,129,.15); color: var(--jt-accent-green-hover); }
.pwv-b-fair  { background: rgba(59,130,246,.14); color: var(--jt-accent-blue-hover); }
.pwv-b-over  { background: rgba(239,68,68,.14); color: var(--jt-accent-red-hover); }
.pwv-b-steal { background: rgba(20,184,166,.18); color: var(--jt-accent-teal-hover); }
.pwv-b-mut   { background: rgba(148,163,184,.12); color: var(--jt-text-secondary); }

.pwv-pos {
    color: #fff; font-size: 0.55rem; font-weight: 700; min-width: 26px;
    text-align: center; padding: 1px 4px; border-radius: 4px; display: inline-block;
    background: var(--jt-bg-elevated);
}
.pwv-pos-qb { background: var(--jt-pos-qb, rgba(255,59,94,.85)); }
.pwv-pos-rb { background: var(--jt-pos-rb, rgba(34,139,34,.85)); }
.pwv-pos-wr { background: var(--jt-pos-wr, rgba(0,102,204,.85)); }
.pwv-pos-te { background: var(--jt-pos-te, rgba(255,140,0,.85)); }
.pwv-pos-pk { background: var(--jt-pos-flex, rgba(245,158,11,.85)); }

tr.pwv-bids td { background: var(--jt-bg-primary); padding: 0; }
.pwv-bids-wrap { padding: 8px 14px 10px 26px; }
.pwv-bid-line { display: flex; gap: 10px; align-items: center; padding: 2.5px 0; font-size: 0.7rem; color: var(--jt-text-secondary); white-space: normal; }
.pwv-bid-line span { min-width: 34px; font-weight: 700; color: var(--jt-text-primary); }
.pwv-bid-line.won span { color: var(--jt-accent-amber); }
.pwv-bid-line.me { color: var(--jt-accent-teal-hover); }
.pwv-bid-line.fail { color: var(--jt-text-muted); }
.pwv-foot { font-size: 0.6rem; color: var(--jt-text-muted); padding: 8px 12px; }

/* ── Rail cards ── */
.pwv-rail { display: flex; flex-direction: column; gap: 12px; align-self: start; min-width: 0; }
.pwv-card {
    background: var(--jt-bg-secondary);
    border: 1px solid var(--jt-border-primary);
    border-radius: 12px;
    padding: 11px 13px;
}
.pwv-card h4 {
    font-size: 0.6rem;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    color: var(--jt-text-muted);
    margin: 0 0 8px;
    display: flex;
    gap: 6px;
    align-items: center;
}
.pwv-line { display: flex; justify-content: space-between; font-size: 0.75rem; padding: 2.5px 0; gap: 8px; }
.pwv-line b.g { color: var(--jt-accent-green-hover); }
.pwv-line b.r { color: var(--jt-accent-red-hover); }
.pwv-jerry {
    margin-top: 8px;
    background: rgba(59,130,246,.08);
    border: 1px solid rgba(59,130,246,.3);
    border-radius: 8px;
    padding: 8px 10px;
    font-size: 0.7rem;
    color: var(--jt-text-secondary);
}
.pwv-jerry b { color: var(--jt-accent-blue-hover); }
.pwv-jerry-btn {
    margin-top: 8px; width: 100%;
    background: var(--jt-gradient-pro); color: #fff; border: none;
    border-radius: 14px; padding: 7px; font-size: 0.72rem; font-weight: 700; cursor: pointer;
}
.pwv-calib { margin-top: 8px; font-size: 0.62rem; color: var(--jt-accent-teal-hover); }
.pwv-lb { display: flex; align-items: center; gap: 8px; font-size: 0.68rem; padding: 2px 0; color: var(--jt-text-secondary); }
.pwv-lb .nm { width: 108px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pwv-lb.me .nm { color: var(--jt-accent-teal-hover); font-weight: 700; }
.pwv-lb .bar { flex: 1; height: 6px; border-radius: 3px; background: var(--jt-bg-tertiary); position: relative; overflow: hidden; }
.pwv-lb .bar i { position: absolute; left: 0; top: 0; bottom: 0; background: var(--jt-accent-teal); border-radius: 3px; opacity: .8; }
.pwv-lb .amt { width: 36px; text-align: right; font-weight: 700; color: var(--jt-text-primary); }

/* ── Current bids column ── */
.pwv-curbids { align-self: start; min-width: 0; }
.pwv-live { margin-left: auto; color: var(--jt-accent-green-hover); font-size: 0.56rem; text-transform: none; letter-spacing: 0; }
.pwv-hist {
    padding: 0 10px 8px 32px;
    font-size: 0.62rem;
    color: var(--jt-accent-teal-hover);
}
.pwv-hist.warn { color: var(--jt-accent-amber-hover); }
.pwv-curbids .rm-waiver-group {
    background: rgba(20,184,166,.05);
    border: 1px solid var(--jt-border-secondary);
    border-radius: 10px;
    margin-bottom: 8px;
    overflow: hidden;
}
.pwv-curbids .rm-group-header { background: var(--jt-bg-tertiary); padding: 6px 10px; }
.pwv-cur-budget { border-top: 1px dashed var(--jt-border-muted); margin-top: 8px; padding-top: 8px; font-size: 0.72rem; }
.pwv-cur-budget div { display: flex; justify-content: space-between; padding: 1.5px 0; }
.pwv-cur-budget b.a { color: var(--jt-accent-amber); }
.pwv-cur-budget b.g { color: var(--jt-accent-green-hover); }

/* ── Phones: full dynamic viewport (same treatment as FootballChat) —
   MinimizablePanel's persisted float geometry doesn't fit a phone. ── */
@media (max-width: 585px) {
    #pastWaiversPanel .pwv-window {
        box-sizing: border-box;
        left: 0 !important;
        top: 0 !important;
        width: 100vw !important;
        height: 100dvh !important;
        max-width: 100vw;
        max-height: 100dvh;
        border-radius: 0;
        min-width: 0;
        min-height: 0;
        padding-top: env(safe-area-inset-top, 0);
    }
    #pastWaiversPanel .jt-mp-resize-grip { display: none !important; }
    .pwv-head { flex-wrap: wrap; row-gap: 6px; cursor: default; }
    .pwv-year { margin-left: 0; }
    .pwv-body, .pwv-body.show-bids { grid-template-columns: 1fr; }
    .pwv-results table { min-width: 480px; }
}
