﻿/* ============================================================
   politicians.css — /whales/{ticker}/politicians. Prefix pl-.
   Loads after whales.css and hedgefunds.css.
   ============================================================ */

.pl-label {
    font-size: 1.05rem !important;
}

/* ---- who traded it ---- */
.pl-cards {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: .75rem;
    margin-bottom: 1.75rem;
}

.pl-card {
    display: block;
    padding: .75rem .9rem;
    border: 1px solid var(--border);
    border-left: 3px solid var(--text-muted);
    border-radius: 8px;
    background: var(--surface);
    text-decoration: none;
    color: inherit;
}

    .pl-card:hover {
        border-color: var(--ew-gold, #DDB785);
    }

        .pl-card:hover .pl-name {
            color: var(--ew-gold, #DDB785);
        }

    .pl-card:focus-visible {
        outline: 2px solid var(--ew-gold, #DDB785);
        outline-offset: 2px;
    }

/* the row a card jumps to, briefly marked so the landing is obvious */
.pl-table tr:target {
    background: color-mix(in srgb, var(--ew-gold, #DDB785) 12%, transparent);
}

/* the sticky header would otherwise hide the row jumped to */
.pl-table tr[id] {
    scroll-margin-top: 5rem;
}

/* Party is a fact of the filing, so it's shown — but as a quiet left rule and a
   small pill, not as the organising principle of the page. */
.pl-d {
    border-left-color: #3B6FD4;
}

.pl-r {
    border-left-color: #C4433B;
}

.pl-i {
    border-left-color: var(--text-muted);
}

.pl-name {
    font-weight: 700;
    font-size: 14px;
    color: var(--text);
}

.pl-seat,
.pl-seat-inline {
    font-size: 11.5px;
    color: var(--text-muted);
}

.pl-seat-inline {
    display: block;
    font-weight: 400;
}

.pl-party {
    display: inline-block;
    min-width: 1.1rem;
    text-align: center;
    padding: 0 .2rem;
    border-radius: 3px;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .03em;
    color: #fff;
}

.pl-p-d {
    background: #3B6FD4;
}

.pl-p-r {
    background: #C4433B;
}

.pl-p-i {
    background: var(--text-muted);
}

.pl-counts {
    display: flex;
    flex-wrap: wrap;
    gap: .15rem .6rem;
    margin-top: .35rem;
    font-size: 12px;
    font-weight: 600;
}

.pl-last {
    margin-top: .2rem;
    font-size: 10.5px;
    color: var(--text-muted);
}

/* ---- transactions ---- */
.pl-table {
    font-size: 13px;
}

.pl-amt {
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

/* a spouse's trade is disclosed identically but isn't the member's decision */
.pl-owner {
    margin-left: .35rem;
    padding: 0 .3rem;
    border: 1px solid var(--border);
    border-radius: 3px;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .03em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.pl-subtype {
    margin-left: .3rem;
    font-size: 10px;
    color: var(--text-muted);
}

.pl-delay {
    color: var(--text-muted);
    white-space: nowrap;
}

.pl-days {
    display: inline-block;
    margin-left: .3rem;
    font-size: 10.5px;
    opacity: .8;
}

    /* past the statutory 45 days */
    .pl-days.is-late {
        color: var(--negative, #c62828);
        font-weight: 700;
        opacity: 1;
    }


/* ---- asset type ----
   On every row. Stock is deliberately quiet and options carry the brand colour,
   because that is the distinction a reader is most likely to miss. */
.pl-asset {
    display: inline-block;
    min-width: 1.5rem;
    margin-left: .3rem;
    padding: 0 .25rem;
    border: 1px solid var(--border);
    border-radius: 3px;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .04em;
    text-align: center;
    color: var(--text-muted);
    cursor: help;
}

.pl-as-op {
    border-color: var(--ew-gold, #DDB785);
    color: var(--ew-gold, #DDB785);
}

.pl-as-st {
    opacity: .7;
}

/* the original filing */
.pl-doc {
    margin-left: .35rem;
    font-size: 11px;
    text-decoration: none;
    opacity: .6;
}

    .pl-doc:hover {
        opacity: 1;
    }


/* hollow key swatch, matching the option markers on the chart */
.in-key-hollow {
    background: transparent;
    border: 2px solid var(--text-muted);
    opacity: 1;
}

.pl-tip-band {
    font-variant-numeric: tabular-nums;
}
