/* ═══════════════════════════════════════════════════════════════════════════
   KARTING SERIES STANDINGS MODULE — MODERN DESIGN SYSTEM
   ═══════════════════════════════════════════════════════════════════════════

   Premium, mobile-first championship standings styled to match BookNow.
   Light theme by default, fully themeable via CSS custom properties.

   ═══════════════════════════════════════════════════════════════════════════ */

.scm-mod-KartingSeriesStandings {
    --ss-accent: var(--scm-accent, #2563eb);
    --ss-accent-soft: #eff6ff;

    --ss-bg: var(--scm-surface, #ffffff);
    --ss-bg-elevated: #f8fafc;
    --ss-surface: var(--scm-surface, #f8fafc);

    --ss-text: var(--scm-surface-contrast, #0f172a);
    --ss-text-secondary: var(--scm-text-secondary, #475569);
    --ss-text-tertiary: var(--scm-text-tertiary, #94a3b8);

    --ss-border: var(--scm-border, #e2e8f0);

    --ss-gold: #d97706;
    --ss-gold-soft: #fffbeb;
    --ss-silver: #64748b;
    --ss-silver-soft: #f1f5f9;
    --ss-bronze: #92400e;
    --ss-bronze-soft: #fef3c7;

    --ss-font-family: inherit;
    --ss-text-xs: 0.75rem;
    --ss-text-sm: 0.875rem;
    --ss-text-base: 1rem;
    --ss-text-lg: 1.125rem;

    --ss-space-1: 0.25rem;
    --ss-space-2: 0.5rem;
    --ss-space-3: 0.75rem;
    --ss-space-4: 1rem;
    --ss-space-5: 1.25rem;
    --ss-space-6: 1.5rem;
    --ss-space-8: 2rem;

    --ss-radius-lg: 0.75rem;
    --ss-radius-xl: 1rem;

    --ss-transition: 200ms cubic-bezier(0.16, 1, 0.3, 1);

    background: var(--ss-bg);
    color: var(--ss-text);
    border-radius: var(--ss-radius-xl);
    padding: var(--ss-space-6);
    font-family: var(--ss-font-family);
    font-size: var(--ss-text-base);
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    width: 100%;
    max-width: 680px;
    margin: 0 auto;
}

/* ═══════════════════════════════════════════════════════════════════════════
   HEADER
   ═══════════════════════════════════════════════════════════════════════════ */

.scm-mod-KartingSeriesStandings .ss-header h2 {
    margin: 0 0 var(--ss-space-4) 0;
    font-size: var(--ss-text-lg);
    font-weight: 700;
    color: var(--ss-text);
    display: flex;
    align-items: center;
    gap: var(--ss-space-2);
}

.scm-mod-KartingSeriesStandings .ss-header h2 i {
    color: var(--ss-gold);
}

/* ═══════════════════════════════════════════════════════════════════════════
   TABLE
   ═══════════════════════════════════════════════════════════════════════════ */

.scm-mod-KartingSeriesStandings .ss-table-wrapper {
    overflow-x: auto;
    border: 1px solid var(--ss-border);
    border-radius: var(--ss-radius-lg);
}

.scm-mod-KartingSeriesStandings .ss-table {
    width: 100%;
    border-collapse: collapse;
    font-size: var(--ss-text-sm);
}

.scm-mod-KartingSeriesStandings .ss-table th {
    text-align: left;
    padding: var(--ss-space-3) var(--ss-space-3);
    color: var(--ss-text-secondary);
    font-size: var(--ss-text-xs);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    background: var(--ss-bg-elevated);
    border-bottom: 1px solid var(--ss-border);
}

.scm-mod-KartingSeriesStandings .ss-table td {
    padding: var(--ss-space-3) var(--ss-space-3);
    border-bottom: 1px solid var(--ss-border);
    color: var(--ss-text);
}

.scm-mod-KartingSeriesStandings .ss-table tbody tr:last-child td {
    border-bottom: none;
}

.scm-mod-KartingSeriesStandings .ss-table tbody tr:hover {
    background: var(--ss-bg-elevated);
}

.scm-mod-KartingSeriesStandings .ss-pos-col {
    width: 3rem;
    text-align: center;
}

.scm-mod-KartingSeriesStandings .ss-pts-col {
    width: 5rem;
    text-align: center;
}

.scm-mod-KartingSeriesStandings .ss-position {
    text-align: center;
    font-weight: 700;
    font-size: var(--ss-text-base);
    color: var(--ss-text);
}

.scm-mod-KartingSeriesStandings .ss-driver {
    font-weight: 600;
    color: var(--ss-text);
}

.scm-mod-KartingSeriesStandings .ss-team {
    color: var(--ss-text-secondary);
    font-size: var(--ss-text-xs);
}

.scm-mod-KartingSeriesStandings .ss-points {
    text-align: center;
    font-variant-numeric: tabular-nums;
    font-weight: 700;
    font-size: var(--ss-text-base);
    color: var(--ss-accent);
}

.scm-mod-KartingSeriesStandings .ss-gap {
    color: var(--ss-text-tertiary);
    font-size: var(--ss-text-xs);
    font-variant-numeric: tabular-nums;
}

.scm-mod-KartingSeriesStandings .ss-best-lap {
    font-variant-numeric: tabular-nums;
    font-size: var(--ss-text-xs);
    color: var(--ss-text-tertiary);
}

/* ═══════════════════════════════════════════════════════════════════════════
   PODIUM ROW HIGHLIGHTS
   ═══════════════════════════════════════════════════════════════════════════ */

.scm-mod-KartingSeriesStandings .ss-row-gold {
    background: var(--ss-gold-soft);
}

.scm-mod-KartingSeriesStandings .ss-row-gold .ss-position {
    color: var(--ss-gold);
}

.scm-mod-KartingSeriesStandings .ss-row-silver {
    background: var(--ss-silver-soft);
}

.scm-mod-KartingSeriesStandings .ss-row-silver .ss-position {
    color: var(--ss-silver);
}

.scm-mod-KartingSeriesStandings .ss-row-bronze {
    background: var(--ss-bronze-soft);
}

.scm-mod-KartingSeriesStandings .ss-row-bronze .ss-position {
    color: var(--ss-bronze);
}

/* ═══════════════════════════════════════════════════════════════════════════
   EMPTY STATE
   ═══════════════════════════════════════════════════════════════════════════ */

.scm-mod-KartingSeriesStandings .ss-empty-state {
    text-align: center;
    padding: var(--ss-space-8) var(--ss-space-4);
    color: var(--ss-text-secondary);
}

.scm-mod-KartingSeriesStandings .ss-empty-state i {
    font-size: 2.5rem;
    margin-bottom: var(--ss-space-2);
    display: block;
    color: var(--ss-text-tertiary);
}

/* ═══════════════════════════════════════════════════════════════════════════
   SIZE VARIANTS & RESPONSIVE
   ═══════════════════════════════════════════════════════════════════════════ */

.scm-mod-KartingSeriesStandings.scm-mod-compact {
    padding: var(--ss-space-3);
}

.scm-mod-KartingSeriesStandings.scm-mod-compact .ss-table {
    font-size: var(--ss-text-xs);
}

.scm-mod-KartingSeriesStandings.scm-mod-large {
    padding: var(--ss-space-8);
}

@media (max-width: 576px) {
    .scm-mod-KartingSeriesStandings {
        padding: var(--ss-space-4);
        border-radius: var(--ss-radius-lg);
    }
}

/* ═══════════════════════════════════════════════════════════════════════════
   REDUCED MOTION
   ═══════════════════════════════════════════════════════════════════════════ */

@media (prefers-reduced-motion: reduce) {
    .scm-mod-KartingSeriesStandings,
    .scm-mod-KartingSeriesStandings * {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════
   KARTING DISPLAY CHIP VOCABULARY — WebsiteDisplays light variant
   ───────────────────────────────────────────────────────────────────────────
   Same semantic class names (kd-series-chip, kd-tech-chip, kd-byo-chip,
   kd-license-chip, kd-grade-chip, kd-round-chip, kd-session-chip) are also
   defined in PublicDisplays modules using a dark, oversized treatment.
   These two surfaces intentionally diverge — do NOT consolidate into
   SCMUIKit. Class names match so semantic markup stays portable.
   ═══════════════════════════════════════════════════════════════════════════ */

.scm-mod-KartingSeriesStandings .kd-chip,
.scm-mod-KartingSeriesStandings .kd-series-chip,
.scm-mod-KartingSeriesStandings .kd-tech-chip,
.scm-mod-KartingSeriesStandings .kd-byo-chip,
.scm-mod-KartingSeriesStandings .kd-license-chip,
.scm-mod-KartingSeriesStandings .kd-grade-chip,
.scm-mod-KartingSeriesStandings .kd-round-chip,
.scm-mod-KartingSeriesStandings .kd-session-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.25rem 0.65rem;
    border-radius: 999px;
    font-size: 0.78rem;
    font-weight: 600;
    line-height: 1;
    background: #f1f5f9;
    color: #334155;
    border: 1px solid #e2e8f0;
    white-space: nowrap;
    vertical-align: middle;
}

.scm-mod-KartingSeriesStandings .kd-series-chip   { background: #eef2ff; color: #3730a3; border-color: #c7d2fe; }
.scm-mod-KartingSeriesStandings .kd-tech-chip     { background: #ecfdf5; color: #065f46; border-color: #a7f3d0; }
.scm-mod-KartingSeriesStandings .kd-tech-chip.kd-tech-chip--failed { background: #fef2f2; color: #991b1b; border-color: #fecaca; }
.scm-mod-KartingSeriesStandings .kd-tech-chip.kd-tech-chip--pending { background: #fffbeb; color: #92400e; border-color: #fde68a; }
.scm-mod-KartingSeriesStandings .kd-byo-chip      { background: #fff7ed; color: #9a3412; border-color: #fed7aa; }
.scm-mod-KartingSeriesStandings .kd-license-chip  { background: #f5f3ff; color: #5b21b6; border-color: #ddd6fe; }
.scm-mod-KartingSeriesStandings .kd-grade-chip    { background: #ecfeff; color: #155e75; border-color: #a5f3fc; }
.scm-mod-KartingSeriesStandings .kd-round-chip    { background: #f8fafc; color: #475569; border-color: #cbd5e1; }
.scm-mod-KartingSeriesStandings .kd-session-chip  { background: #f1f5f9; color: #334155; border-color: #cbd5e1; text-transform: uppercase; letter-spacing: 0.02em; }


/* W1.2 (review #15) — venue-mode series picker pills */
.scm-mod-KartingSeriesStandings .ss-series-pill {
    border: 1px solid var(--scm-border, #e2e8f0);
    background: var(--scm-surface, #f8fafc);
    color: var(--scm-surface-contrast, inherit);
    border-radius: 999px;
    padding: 0.3rem 0.85rem;
    font-size: 0.85rem;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease;
}

.scm-mod-KartingSeriesStandings .ss-series-pill:hover {
    border-color: var(--scm-accent, #2563eb);
}

.scm-mod-KartingSeriesStandings .ss-series-pill.is-active {
    background: var(--scm-accent, #2563eb);
    border-color: var(--scm-accent, #2563eb);
    color: #fff;
}

/* W5.1/S-13 (review #15) — round-by-round progression */
.scm-mod-KartingSeriesStandings .ss-row-expandable {
    cursor: pointer;
}

.scm-mod-KartingSeriesStandings .ss-expand-chevron {
    font-size: 0.7rem;
    opacity: 0.5;
    margin-left: 0.4rem;
}

.scm-mod-KartingSeriesStandings .ss-progression-row td {
    background: var(--scm-surface, #f8fafc);
    padding: 0.6rem 0.85rem;
}

.scm-mod-KartingSeriesStandings .ss-progression {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.scm-mod-KartingSeriesStandings .ss-round-chip {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    min-width: 3.4rem;
    border: 1px solid var(--scm-border, #e2e8f0);
    border-radius: 0.5rem;
    padding: 0.25rem 0.5rem;
    font-size: 0.75rem;
    line-height: 1.25;
    background: var(--scm-surface, #fff);
}

.scm-mod-KartingSeriesStandings .ss-round-chip.is-dropped {
    opacity: 0.45;
    text-decoration: line-through;
}

.scm-mod-KartingSeriesStandings .ss-round-chip-label {
    font-weight: 700;
    opacity: 0.7;
}

.scm-mod-KartingSeriesStandings .ss-round-chip-pos {
    font-weight: 600;
}

.scm-mod-KartingSeriesStandings .ss-round-chip-pts {
    opacity: 0.75;
}
