/* Pricing rationale (/research/pricing) — only what is unique to this page.
   Stats, scope note, jump links, resource cards, and tags come from
   research-atlas.css, which this page also loads. */

/* ---------- Cairn's own figure, highlighted ---------- */
.stat.cairn dd { color: var(--accent); }

.res.cairn {
    background: var(--accent-soft);
    border-color: var(--accent-soft-line);
    border-left-color: var(--accent);
    box-shadow: none;
}

.res.cairn .subcat { color: var(--accent); }

.tag.who { background: var(--safety-soft); color: var(--ink); }

/* ---------- Price lists inside cards ---------- */
.rates {
    list-style: none;
    margin: 4px 0 12px;
    padding: 0;
    display: grid;
    gap: 2px;
    font-size: 0.88rem;
    color: var(--ink-muted);
}

.rates li {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 4px 0;
    border-bottom: 1px dotted var(--rule);
}

.rates .price {
    font-family: 'IBM Plex Mono', monospace;
    font-variant-numeric: tabular-nums;
    color: var(--ink);
    white-space: nowrap;
}

/* ---------- Side-by-side table ---------- */
.table-wrap {
    overflow-x: auto;
    margin-top: 16px;
    background: var(--surface);
    border: 1px solid var(--surface-line);
    border-radius: 8px;
}

.compare {
    border-collapse: collapse;
    width: 100%;
    min-width: 640px;
    font-size: 0.88rem;
}

.compare th,
.compare td {
    text-align: left;
    vertical-align: top;
    padding: 10px 14px;
    border-bottom: 1px solid var(--surface-line);
}

.compare thead th {
    font-family: 'IBM Plex Mono', monospace;
    font-size: 0.68rem;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--ink-faint);
    background: var(--bg);
}

.compare tbody th { font-weight: 600; color: var(--ink); }
.compare tbody tr:last-child > * { border-bottom: 0; }

.compare .num {
    font-family: 'IBM Plex Mono', monospace;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
    color: var(--ink);
}

.compare tr.cairn > * { background: var(--accent-soft); font-weight: 700; }

.bar {
    display: block;
    height: 6px;
    margin-top: 6px;
    border-radius: 3px;
    background: var(--waypoint);
}

.compare tr.cairn .bar { background: var(--accent); }

.table-note {
    font-size: 0.82rem;
    color: var(--ink-faint);
    margin: 8px 2px 0;
    max-width: none;
}

/* ---------- Numbered reasons ---------- */
.reasons {
    counter-reset: reason;
    list-style: none;
    margin: 20px 0 0;
    padding: 0;
    display: grid;
    gap: 16px;
}

.reasons li {
    counter-increment: reason;
    display: grid;
    grid-template-columns: 34px 1fr;
    gap: 14px;
    align-items: start;
}

.reasons li::before {
    content: counter(reason);
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: var(--waypoint);
    color: var(--waypoint-ink);
    font-family: 'IBM Plex Mono', monospace;
    font-size: 0.85rem;
    font-weight: 600;
}

.reasons h3 { font-size: 1.05rem; margin: 4px 0 4px; }

.reasons p {
    font-size: 0.95rem;
    color: var(--ink-muted);
    margin: 0;
}

/* ---------- Method notes ---------- */
.plain {
    padding-left: 1.2em;
    font-size: 0.95rem;
    color: var(--ink-muted);
}

.plain li { margin-bottom: 8px; max-width: 72ch; }
