:root {
    color-scheme: light;
}

.ffn-redirect-page {
    margin: 0;
    min-height: 100vh;
    padding: 24px;
    display: grid;
    place-items: center;
    font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    background:
        radial-gradient(circle at top, rgba(43, 105, 189, 0.14), transparent 40%),
        linear-gradient(180deg, #f4f7fb 0%, #edf3fb 100%);
    color: #102033;
}

.ffn-redirect-card {
    width: min(100%, 560px);
    padding: 32px;
    border: 1px solid rgba(148, 168, 198, 0.2);
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 28px 72px rgba(15, 23, 42, 0.12);
}

.ffn-redirect-card h1 {
    margin: 0 0 12px;
    font-size: clamp(2rem, 5vw, 2.8rem);
    line-height: 1.04;
    color: #08111f;
}

.ffn-redirect-card p {
    margin: 0 0 16px;
    line-height: 1.65;
    color: #304155;
}

.ffn-redirect-card p:last-child {
    margin-bottom: 0;
}

.ffn-redirect-card a {
    color: #0f63c5;
    font-weight: 700;
}

html[data-theme="dark"] {
    color-scheme: dark;
    --ffn-ed-bg: #08111f;
    --ffn-ed-surface: rgba(11, 22, 37, 0.78);
    --ffn-ed-surface-strong: rgba(13, 25, 41, 0.92);
    --ffn-ed-surface-muted: rgba(17, 30, 49, 0.84);
    --ffn-ed-text: #f3f7ff;
    --ffn-ed-text-muted: #c2d0e6;
    --ffn-ed-text-soft: #8ea2c0;
    --ffn-ed-border: rgba(148, 168, 198, 0.18);
    --ffn-ed-border-strong: rgba(148, 168, 198, 0.28);
    --ffn-ed-accent: #63b4ff;
    --ffn-ed-accent-soft: rgba(99, 180, 255, 0.16);
    --ffn-ed-shadow-soft: 0 20px 60px rgba(2, 8, 17, 0.34);
    --ffn-ed-shadow-card: 0 28px 84px rgba(2, 8, 17, 0.46);

    --brand-bg: #08111f;
    --brand-surface: #111b2c;
    --brand-surface-subtle: #132032;
    --brand-surface-muted: #182639;
    --brand-surface-panel: rgba(11, 22, 37, 0.92);
    --brand-text: #dbe6f7;
    --brand-text-heading: #f3f7ff;
    --brand-text-muted: #a5b8d4;
    --brand-border: rgba(148, 168, 198, 0.18);
    --brand-border-light: rgba(148, 168, 198, 0.12);
    --brand-border-subtle: rgba(148, 168, 198, 0.18);
    --brand-border-strong: rgba(148, 168, 198, 0.28);
    --brand-shadow-md: 0 18px 44px rgba(2, 8, 17, 0.34);
    --brand-shadow-lg: 0 24px 56px rgba(2, 8, 17, 0.42);
    --brand-shadow-xl: 0 30px 80px rgba(2, 8, 17, 0.5);

    --tp-bg: #08111f;
    --tp-ink: #f3f7ff;
    --tp-text: #c2d0e6;
    --tp-muted: #9bb1ce;
    --tp-soft: #7e94b4;
    --tp-border: rgba(148, 168, 198, 0.18);
    --tp-border-light: rgba(148, 168, 198, 0.1);
    --tp-surface: #111b2c;
    --tp-white: rgba(11, 22, 37, 0.92);
    --tp-shadow-md: 0 10px 32px rgba(2, 8, 17, 0.34);
    --tp-shadow-lg: 0 18px 48px rgba(2, 8, 17, 0.42);
    --tp-shadow-xl: 0 24px 64px rgba(2, 8, 17, 0.48);
    --tp-shadow-card-hover: 0 24px 56px rgba(2, 8, 17, 0.44);

    --page-bg: #08111f;
    --page-bg-accent: #0d1828;
    --page-panel: rgba(11, 22, 37, 0.92);
    --page-border: rgba(148, 168, 198, 0.18);
    --page-shadow: 0 30px 72px -36px rgba(0, 0, 0, 0.68);
    --page-text: #f3f7ff;
    --page-muted: #bdcbe0;
    --page-soft: rgba(148, 168, 198, 0.16);
    --page-hero: linear-gradient(145deg, rgba(12, 24, 40, 0.98) 0%, rgba(12, 28, 43, 0.96) 50%, rgba(16, 35, 54, 1) 100%);

    --draft-bg: #08111f;
    --draft-panel: rgba(11, 22, 37, 0.92);
    --draft-border: rgba(148, 168, 198, 0.18);
    --draft-border-strong: rgba(148, 168, 198, 0.28);
    --draft-text: #f3f7ff;
    --draft-muted: #b8c9e0;
    --draft-soft: #8398b7;
    --draft-shadow: 0 24px 56px rgba(2, 8, 17, 0.44);

    --bg-primary: rgba(11, 22, 37, 0.92);
    --bg-subtle: #111b2c;
    --bg-muted: #182639;
    --bg-dark: #0b1627;
    --bg-dark-mid: #14233b;
    --border-light: rgba(148, 168, 198, 0.14);
    --border-subtle: rgba(148, 168, 198, 0.2);
    --border-medium: rgba(148, 168, 198, 0.3);
    --text-primary: #f3f7ff;
    --text-heading: #f3f7ff;
    --text-secondary: #c2d0e6;
    --text-tertiary: #8fa5c2;
    --accent-primary: #63b4ff;
    --accent-hover: #8bcbff;
}

.ffn-ed-theme-toggle {
    gap: 0.55rem;
}

.ffn-ed-theme-toggle.is-desktop {
    width: 2.9rem;
    min-height: 2.9rem;
    padding: 0;
}

.ffn-ed-theme-toggle.is-desktop .ffn-ed-theme-label {
    display: none;
}

.ffn-ed-theme-icon-wrap {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1rem;
    height: 1rem;
}

.ffn-ed-theme-icon-wrap svg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    transition: opacity 0.2s ease, transform 0.2s ease;
}

.ffn-ed-theme-icon--sun {
    opacity: 0;
    transform: scale(0.82) rotate(-16deg);
}

html[data-theme="dark"] .ffn-ed-theme-icon--sun {
    opacity: 1;
    transform: scale(1) rotate(0deg);
}

html[data-theme="dark"] .ffn-ed-theme-icon--moon {
    opacity: 0;
    transform: scale(0.82) rotate(16deg);
}

.ffn-ed-mobile-controls {
    display: none !important;
    align-items: center;
    gap: 0.55rem;
}

.ffn-ed-theme-toggle.is-mobile {
    width: 2.75rem;
    min-height: 2.75rem;
    padding: 0;
    box-shadow: var(--ffn-ed-shadow-soft);
}

.ffn-ed-theme-toggle.is-mobile .ffn-ed-theme-label {
    display: none;
}

html[data-theme="dark"] body.ffn-ed-body {
    background:
        radial-gradient(circle at top, rgba(35, 76, 139, 0.22), transparent 42%),
        linear-gradient(180deg, #08111f 0%, #0a1424 54%, #0d1930 100%);
    color: var(--ffn-ed-text);
}

html[data-theme="dark"] .ffn-redirect-page {
    background:
        radial-gradient(circle at top, rgba(35, 76, 139, 0.22), transparent 42%),
        linear-gradient(180deg, #08111f 0%, #0a1424 54%, #0d1930 100%);
    color: var(--ffn-ed-text);
}

html[data-theme="dark"] .ffn-redirect-card {
    border-color: var(--ffn-ed-border-strong);
    background: linear-gradient(145deg, rgba(11, 22, 37, 0.95), rgba(15, 29, 47, 0.88));
    box-shadow: var(--ffn-ed-shadow-card);
}

html[data-theme="dark"] .ffn-redirect-card h1,
html[data-theme="dark"] .ffn-redirect-card p,
html[data-theme="dark"] .ffn-redirect-card a {
    color: var(--ffn-ed-text);
}

html[data-theme="dark"] .ffn-redirect-card p {
    color: var(--ffn-ed-text-muted);
}

html[data-theme="dark"] .ffn-redirect-card a {
    color: #7fd4ff;
}

html[data-theme="dark"] .ffn-ed-ambient,
html[data-theme="dark"] .ffn-pilot-ambient {
    background: radial-gradient(circle at top, rgba(35, 76, 139, 0.32), transparent 46%), var(--ffn-ed-bg);
}

html[data-theme="dark"] .ffn-ed-bloom,
html[data-theme="dark"] .ffn-pilot-bloom {
    mix-blend-mode: screen;
    opacity: 0.2;
}

html[data-theme="dark"] .ffn-pilot-title .is-dim {
    color: rgba(243, 247, 255, 0.18);
}

html[data-theme="dark"] .ffn-ed-shell {
    background: linear-gradient(180deg, rgba(8, 17, 31, 0.78) 0%, rgba(8, 17, 31, 0) 100%);
}

html[data-theme="dark"] .ffn-ed-nav-link,
html[data-theme="dark"] .ffn-ed-button,
html[data-theme="dark"] .ffn-ed-auth-link,
html[data-theme="dark"] .ffn-ed-profile-toggle,
html[data-theme="dark"] .ffn-ed-theme-toggle.is-mobile {
    border-color: var(--ffn-ed-border);
    background: rgba(11, 22, 37, 0.82);
    color: var(--ffn-ed-text-muted);
}

html[data-theme="dark"] .ffn-ed-nav-link:hover,
html[data-theme="dark"] .ffn-ed-button:hover,
html[data-theme="dark"] .ffn-ed-auth-link:hover,
html[data-theme="dark"] .ffn-ed-nav-link[aria-current="page"],
html[data-theme="dark"] .ffn-ed-profile-toggle:hover,
html[data-theme="dark"] .ffn-ed-profile.is-open .ffn-ed-profile-toggle,
html[data-theme="dark"] .ffn-ed-theme-toggle.is-mobile:hover {
    background: rgba(18, 34, 56, 0.96);
    border-color: rgba(99, 180, 255, 0.28);
    color: var(--ffn-ed-text);
}

html[data-theme="dark"] .ffn-ed-button.is-primary,
html[data-theme="dark"] .ffn-ed-auth-link.is-primary {
    color: #041019;
    background: linear-gradient(135deg, #63b4ff, #7fd4ff);
    box-shadow: 0 18px 48px rgba(99, 180, 255, 0.22);
}

html[data-theme="dark"] .ffn-ed-button.is-primary:hover,
html[data-theme="dark"] .ffn-ed-auth-link.is-primary:hover {
    color: #041019;
    background: linear-gradient(135deg, #79c3ff, #93ddff);
}

html[data-theme="dark"] .ffn-ed-dropdown-panel,
html[data-theme="dark"] .ffn-ed-profile-menu,
html[data-theme="dark"] .ffn-ed-mobile-panel,
html[data-theme="dark"] .ffn-ed-footer-inner {
    background: rgba(10, 21, 36, 0.94);
    border-color: var(--ffn-ed-border-strong);
    box-shadow: var(--ffn-ed-shadow-card);
}

html[data-theme="dark"] .ffn-ed-dropdown-link:hover,
html[data-theme="dark"] .ffn-ed-dropdown-link[aria-current="page"],
html[data-theme="dark"] .ffn-ed-profile-link:hover {
    background: rgba(99, 180, 255, 0.12);
}

html[data-theme="dark"] .ffn-ed-dropdown-section {
    background: linear-gradient(180deg, rgba(15, 28, 46, 0.96), rgba(10, 21, 36, 0.84));
    border-color: var(--ffn-ed-border);
}

html[data-theme="dark"] .ffn-ed-profile-link.is-danger {
    color: #fca5a5;
}

html[data-theme="dark"] .ffn-ed-profile-link.is-danger:hover {
    background: rgba(239, 68, 68, 0.12);
    color: #fecaca;
}

html[data-theme="dark"] .ffn-ed-week-input {
    border-color: var(--ffn-ed-border);
    background: rgba(7, 15, 26, 0.9);
}

html[data-theme="dark"] .ffn-ed-week-input:focus {
    border-color: rgba(99, 180, 255, 0.38);
    box-shadow: 0 0 0 0.24rem rgba(99, 180, 255, 0.14);
}

html[data-theme="dark"] .ffn-ed-week-option {
    background: rgba(15, 28, 46, 0.72);
    border-color: var(--ffn-ed-border);
}

html[data-theme="dark"] .ffn-ed-week-option:hover {
    background: rgba(99, 180, 255, 0.12);
    border-color: rgba(99, 180, 255, 0.24);
}

html[data-theme="dark"] .ffn-ed-week-option:focus-visible {
    outline-color: rgba(99, 180, 255, 0.3);
    background: rgba(99, 180, 255, 0.12);
    border-color: rgba(99, 180, 255, 0.24);
}

html[data-theme="dark"] .ffn-ed-week-badge {
    background: rgba(99, 180, 255, 0.16);
    color: #63b4ff;
}

html[data-theme="dark"] .ffn-ed-mobile-toggle {
    border: 1px solid var(--ffn-ed-border);
    background: rgba(11, 22, 37, 0.82);
    border-radius: 0.8rem;
    box-shadow: var(--ffn-ed-shadow-soft);
}

html[data-theme="dark"] .ffn-pilot-eyebrow,
html[data-theme="dark"] .ffn-pilot-meta-chip,
html[data-theme="dark"] .ffn-pilot-button,
html[data-theme="dark"] .ffn-pilot-link-card,
html[data-theme="dark"] .ffn-pilot-aside-item,
html[data-theme="dark"] .ffn-pilot-support-card,
html[data-theme="dark"] .ffn-pilot-details,
html[data-theme="dark"] .ffn-pilot-page-note,
html[data-theme="dark"] .ffn-pilot-input,
html[data-theme="dark"] .ffn-pilot-textarea,
html[data-theme="dark"] .ffn-home-demo-shell,
html[data-theme="dark"] .ffn-home-demo-topbar,
html[data-theme="dark"] .ffn-home-demo-tabs,
html[data-theme="dark"] .ffn-home-demo-tab,
html[data-theme="dark"] .ffn-home-demo-bottombar,
html[data-theme="dark"] .ffn-home-demo-row.is-ai .ffn-home-demo-bubble,
html[data-theme="dark"] .ffn-home-demo-metric-row,
html[data-theme="dark"] .ffn-home-demo-panel,
html[data-theme="dark"] .ffn-home-demo-transition,
html[data-theme="dark"] .ffn-home-demo-note-panel,
html[data-theme="dark"] .ffn-home-demo-noscript,
html[data-theme="dark"] .ffn-home-demo-control {
    border-color: var(--ffn-ed-border-strong);
    background: rgba(11, 22, 37, 0.82);
    box-shadow: var(--ffn-ed-shadow-soft);
}

html[data-theme="dark"] .ffn-pilot-button:hover,
html[data-theme="dark"] .ffn-pilot-link-card:hover,
html[data-theme="dark"] .ffn-home-demo-control:hover:not(:disabled) {
    border-color: rgba(99, 180, 255, 0.28);
    background: rgba(16, 30, 49, 0.96);
}

html[data-theme="dark"] .ffn-pilot-button.is-primary,
html[data-theme="dark"] .ffn-home-demo-cta,
html[data-theme="dark"] .ffn-home-demo-row.is-user .ffn-home-demo-bubble {
    color: #041019;
    background: linear-gradient(135deg, #63b4ff 0%, #7fd4ff 100%);
    box-shadow: 0 16px 34px rgba(99, 180, 255, 0.18);
}

html[data-theme="dark"] .ffn-pilot-button.is-primary:hover,
html[data-theme="dark"] .ffn-home-demo-cta:hover {
    color: #041019;
    background: linear-gradient(135deg, #79c3ff 0%, #93ddff 100%);
}

html[data-theme="dark"] .ffn-home-demo-log {
    background:
        radial-gradient(circle at top left, rgba(99, 180, 255, 0.08), transparent 28%),
        linear-gradient(180deg, rgba(7, 15, 26, 0.96), rgba(10, 21, 36, 0.98));
}

html[data-theme="dark"] .ffn-home-demo-tab.is-active,
html[data-theme="dark"] .ffn-home-demo-control.is-primary,
html[data-theme="dark"] .ffn-home-demo-chip,
html[data-theme="dark"] .ffn-home-demo-transition,
html[data-theme="dark"] .ffn-home-demo-note-panel,
html[data-theme="dark"] .ffn-pilot-details[open],
html[data-theme="dark"] .ffn-pilot-page-note {
    background: rgba(99, 180, 255, 0.12);
    box-shadow: inset 0 0 0 1px rgba(99, 180, 255, 0.18);
}

html[data-theme="dark"] .ffn-home-demo-tab {
    color: var(--ffn-ed-text-muted);
}

html[data-theme="dark"] .ffn-home-demo-tab.is-active {
    color: var(--ffn-ed-accent);
}

html[data-theme="dark"] .ffn-home-demo-progress,
html[data-theme="dark"] .ffn-home-demo-card-subtitle,
html[data-theme="dark"] .ffn-home-demo-metric-meta,
html[data-theme="dark"] .ffn-home-demo-panel-label,
html[data-theme="dark"] .ffn-home-demo-panel-meta,
html[data-theme="dark"] .ffn-home-demo-bullets,
html[data-theme="dark"] .ffn-home-demo-typing,
html[data-theme="dark"] .ffn-home-demo-note-copy {
    color: var(--ffn-ed-text-muted);
}

html[data-theme="dark"] .ffn-home-demo-bottombar,
html[data-theme="dark"] .ffn-home-demo-topbar,
html[data-theme="dark"] .ffn-home-demo-tabs {
    border-color: var(--ffn-ed-border);
}

html[data-theme="dark"] .ffn-home-showcase-root {
    --ffn-showcase-shell-border: rgba(255, 255, 255, 0.1);
    --ffn-showcase-shell-bg:
        radial-gradient(circle at top right, rgba(64, 140, 255, 0.22), transparent 34%),
        radial-gradient(circle at bottom left, rgba(255, 111, 97, 0.12), transparent 36%),
        linear-gradient(160deg, #07101f 0%, #0b1e3a 48%, #14315c 100%);
    --ffn-showcase-shell-shadow:
        0 22px 50px rgba(7, 16, 31, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
    --ffn-showcase-stage-border: rgba(255, 255, 255, 0.08);
    --ffn-showcase-stage-bg:
        linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.04)),
        rgba(7, 16, 31, 0.24);
    --ffn-showcase-meta-border: rgba(255, 255, 255, 0.08);
    --ffn-showcase-meta-bg: rgba(255, 255, 255, 0.07);
    --ffn-showcase-tab-border: rgba(255, 255, 255, 0.1);
    --ffn-showcase-tab-bg: rgba(255, 255, 255, 0.06);
    --ffn-showcase-tab-hover-bg: rgba(255, 255, 255, 0.12);
    --ffn-showcase-tab-hover-border: rgba(132, 191, 255, 0.35);
    --ffn-showcase-tab-active-bg: rgba(73, 137, 255, 0.22);
    --ffn-showcase-tab-active-border: rgba(132, 191, 255, 0.65);
    --ffn-showcase-item-bg: rgba(255, 255, 255, 0.06);
    --ffn-showcase-rank-bg: rgba(73, 137, 255, 0.18);
    --ffn-showcase-badge-bg: rgba(255, 255, 255, 0.14);
    --ffn-showcase-control-border: rgba(255, 255, 255, 0.12);
    --ffn-showcase-control-bg: rgba(255, 255, 255, 0.08);
    --ffn-showcase-control-hover-bg: rgba(255, 255, 255, 0.14);
    --ffn-showcase-control-hover-border: rgba(132, 191, 255, 0.4);
    --ffn-showcase-control-primary-bg: rgba(73, 137, 255, 0.26);
    --ffn-showcase-control-primary-border: rgba(132, 191, 255, 0.38);
    --ffn-showcase-text: #f7fbff;
    --ffn-showcase-text-strong: #ffffff;
    --ffn-showcase-text-muted: rgba(225, 236, 248, 0.78);
    --ffn-showcase-text-soft: rgba(225, 236, 248, 0.7);
    --ffn-showcase-accent: #9fd3ff;
}

html[data-theme="dark"] .ffn-home-about-demo-copy {
    border-color: var(--ffn-ed-border-strong);
    background:
        radial-gradient(circle at top left, rgba(99, 180, 255, 0.12), transparent 38%),
        linear-gradient(145deg, rgba(11, 22, 37, 0.92), rgba(15, 29, 47, 0.82));
    box-shadow: var(--ffn-ed-shadow-soft);
}

html[data-theme="dark"] .ffn-home-about-demo-point {
    border-color: var(--ffn-ed-border);
    background: rgba(16, 30, 49, 0.92);
}

html[data-theme="dark"] .ffn-home-about-diagram-link:hover {
    color: var(--ffn-ed-text);
}

html[data-theme="dark"] .ffn-hero-nav-btn {
    border-color: var(--ffn-ed-border-strong);
    background: rgba(11, 22, 37, 0.82);
    color: var(--ffn-ed-text-muted);
    box-shadow: var(--ffn-ed-shadow-soft);
}

html[data-theme="dark"] .ffn-hero-nav-btn:hover {
    border-color: rgba(99, 180, 255, 0.28);
    background: rgba(16, 30, 49, 0.96);
    color: var(--ffn-ed-text);
}

html[data-theme="dark"] .ffn-hero-nav-btn--primary {
    color: #041019;
    background: linear-gradient(135deg, #63b4ff 0%, #7fd4ff 100%);
    box-shadow: 0 16px 34px rgba(99, 180, 255, 0.18);
}

html[data-theme="dark"] .ffn-hero-nav-btn--primary:hover {
    color: #041019;
    background: linear-gradient(135deg, #79c3ff 0%, #93ddff 100%);
}

html[data-theme="dark"] .ffn-title-nerd,
html[data-theme="dark"] .ffn-page-nerd-cluster img,
html[data-theme="dark"] .ffn-panel-nerd {
    filter:
        brightness(0) saturate(100%) invert(73%) sepia(67%) saturate(3143%)
        hue-rotate(184deg) brightness(102%) contrast(101%)
        drop-shadow(0 16px 24px rgba(99, 180, 255, 0.16));
}

html[data-theme="dark"] .ffn-data-page .ffn-pilot-hero-main,
html[data-theme="dark"] .ffn-data-page .ffn-pilot-hero-side,
html[data-theme="dark"] .ffn-data-card,
html[data-theme="dark"] .ffn-data-table-card,
html[data-theme="dark"] .ffn-data-control-card,
html[data-theme="dark"] .ffn-data-summary-card,
html[data-theme="dark"] .summary-card,
html[data-theme="dark"] .stat-card,
html[data-theme="dark"] .odds-card,
html[data-theme="dark"] .odds-note-card,
html[data-theme="dark"] .odds-bye-card {
    border-color: var(--ffn-ed-border-strong);
    background: linear-gradient(145deg, rgba(11, 22, 37, 0.92), rgba(15, 29, 47, 0.82));
    box-shadow: var(--ffn-ed-shadow-card);
}

html[data-theme="dark"] .ffn-data-hero-note,
html[data-theme="dark"] .ffn-data-side-note,
html[data-theme="dark"] .ffn-toggle,
html[data-theme="dark"] .segment-btn,
html[data-theme="dark"] .pill-btn,
html[data-theme="dark"] .toggle-btn,
html[data-theme="dark"] .filter-btn,
html[data-theme="dark"] .search-input,
html[data-theme="dark"] .sort-select,
html[data-theme="dark"] .ffn-data-page input,
html[data-theme="dark"] .ffn-data-page select,
html[data-theme="dark"] .odds-line-cell,
html[data-theme="dark"] .odds-implied-row,
html[data-theme="dark"] .odds-day-header,
html[data-theme="dark"] .news-source-link {
    border-color: var(--ffn-ed-border);
    background: rgba(11, 22, 37, 0.82);
    color: var(--ffn-ed-text-muted);
}

html[data-theme="dark"] .ffn-toggle:hover,
html[data-theme="dark"] .segment-btn:hover,
html[data-theme="dark"] .pill-btn:hover,
html[data-theme="dark"] .toggle-btn:hover,
html[data-theme="dark"] .filter-btn:hover,
html[data-theme="dark"] .news-source-link:hover {
    border-color: rgba(99, 180, 255, 0.28);
    background: rgba(16, 30, 49, 0.96);
    color: var(--ffn-ed-text);
}

html[data-theme="dark"] .ffn-toggle.active,
html[data-theme="dark"] .segment-btn.active,
html[data-theme="dark"] .pill-btn.active,
html[data-theme="dark"] .toggle-btn.active,
html[data-theme="dark"] .filter-btn.active,
html[data-theme="dark"] .pc-sheet-cta,
html[data-theme="dark"] #back-to-top {
    color: #041019;
    background: linear-gradient(135deg, #63b4ff, #7fd4ff);
    box-shadow: 0 18px 36px rgba(99, 180, 255, 0.18);
}

html[data-theme="dark"] .ffn-board-search-input {
    border-color: var(--ffn-ed-border);
    background: rgba(11, 22, 37, 0.82);
    color: var(--ffn-ed-text-muted);
}

html[data-theme="dark"] .ffn-board-search-input::placeholder {
    color: var(--ffn-ed-text-soft);
}

html[data-theme="dark"] .ffn-board-search-input:focus {
    border-color: rgba(99, 180, 255, 0.4);
    background: rgba(16, 30, 49, 0.96);
    box-shadow: 0 0 0 0.22rem rgba(99, 180, 255, 0.14);
}

html[data-theme="dark"] .rankings-table,
html[data-theme="dark"] .proj-table,
html[data-theme="dark"] .contracts-table {
    background: rgba(11, 22, 37, 0.88);
    box-shadow: inset 0 0 0 1px rgba(148, 168, 198, 0.1);
}

html[data-theme="dark"] .rankings-table thead th,
html[data-theme="dark"] .proj-table thead th,
html[data-theme="dark"] .contracts-table thead th,
html[data-theme="dark"] .results-table thead th,
html[data-theme="dark"] .coaches-table thead th {
    border-bottom-color: var(--ffn-ed-border);
    background: rgba(16, 30, 49, 0.94);
    color: var(--ffn-ed-text);
}

html[data-theme="dark"] .rankings-table tbody td,
html[data-theme="dark"] .proj-table tbody td,
html[data-theme="dark"] .contracts-table tbody td,
html[data-theme="dark"] .results-table tbody td,
html[data-theme="dark"] .coaches-table tbody td {
    border-bottom-color: rgba(148, 168, 198, 0.12);
    color: var(--ffn-ed-text-muted);
}

html[data-theme="dark"] .rankings-table tbody tr:hover,
html[data-theme="dark"] .proj-table tbody tr:hover,
html[data-theme="dark"] .contracts-table tbody tr:hover,
html[data-theme="dark"] .results-table tbody tr:hover,
html[data-theme="dark"] .coaches-table tbody tr:hover {
    background: rgba(99, 180, 255, 0.08);
}

html[data-theme="dark"] .player-row:nth-child(even) td {
    background-color: rgba(148, 168, 198, 0.05);
}

html[data-theme="dark"] .results-table tbody tr.traded {
    background: linear-gradient(90deg, rgba(251, 191, 36, 0.12) 0%, transparent 34%);
}

/* Position badges */
html[data-theme="dark"] .pos-badge--qb   { background: rgba(251, 191, 36, 0.18); color: #fcd34d; }
html[data-theme="dark"] .pos-badge--rb   { background: rgba(52, 211, 153, 0.16); color: #6ee7b7; }
html[data-theme="dark"] .pos-badge--wr   { background: rgba(96, 165, 250, 0.18); color: #93c5fd; }
html[data-theme="dark"] .pos-badge--te   { background: rgba(244, 114, 182, 0.16); color: #f9a8d4; }
html[data-theme="dark"] .pos-badge--k    { background: rgba(167, 139, 250, 0.18); color: #c4b5fd; }
html[data-theme="dark"] .pos-badge--dst,
html[data-theme="dark"] .pos-badge--def  { background: rgba(129, 140, 248, 0.18); color: #a5b4fc; }
html[data-theme="dark"] .pos-badge--flex { background: rgba(236, 72, 153, 0.16); color: #f9a8d4; }

/* Value pills (rankings ADP delta) */
html[data-theme="dark"] .value-pill--value { background: rgba(52, 211, 153, 0.18); color: #6ee7b7; border-color: transparent; }
html[data-theme="dark"] .value-pill--buy   { background: rgba(74, 222, 128, 0.14); color: #86efac; border-color: transparent; }
html[data-theme="dark"] .value-pill--fair  { background: rgba(148, 163, 184, 0.14); color: #94a3b8; }
html[data-theme="dark"] .value-pill--risk  { background: rgba(251, 146, 60, 0.16); color: #fdba74; border-color: transparent; }
html[data-theme="dark"] .value-pill--avoid { background: rgba(248, 113, 113, 0.16); color: #fca5a5; border-color: transparent; }

/* Confidence pills */
html[data-theme="dark"] .conf-pill--high   { background: rgba(20, 184, 166, 0.18); color: #5eead4; }
html[data-theme="dark"] .conf-pill--medium { background: rgba(251, 191, 36, 0.18); color: #fcd34d; }
html[data-theme="dark"] .conf-pill--low    { background: rgba(248, 113, 113, 0.16); color: #fca5a5; }

/* Signals view value cells */
html[data-theme="dark"] .value-solid   { background: rgba(96, 165, 250, 0.16); color: #93c5fd; }
html[data-theme="dark"] .value-premium { background: rgba(251, 191, 36, 0.16); color: #fcd34d; }
html[data-theme="dark"] .value-elite   { background: rgba(52, 211, 153, 0.16); color: #6ee7b7; }

/* Data cells with hardcoded colors */
html[data-theme="dark"] .data-cell--positive { color: #4ade80 !important; }
html[data-theme="dark"] .data-cell--negative { color: #f87171 !important; }

/* Contract/badge status pills */
html[data-theme="dark"] .badge-official          { background: rgba(52, 211, 153, 0.16); color: #6ee7b7; }
html[data-theme="dark"] .badge-reported          { background: rgba(96, 165, 250, 0.16); color: #93c5fd; }
html[data-theme="dark"] .badge-pending           { background: rgba(251, 191, 36, 0.16); color: #fcd34d; }
html[data-theme="dark"] .badge-extension         { background: rgba(167, 139, 250, 0.18); color: #c4b5fd; }
html[data-theme="dark"] .badge-confidence-high   { background: rgba(52, 211, 153, 0.16); color: #6ee7b7; }
html[data-theme="dark"] .badge-confidence-medium { background: rgba(251, 191, 36, 0.16); color: #fcd34d; }
html[data-theme="dark"] .badge-confidence-low    { background: rgba(248, 113, 113, 0.16); color: #fca5a5; }

/* Notice banner */
html[data-theme="dark"] .ffn-data-notice-banner {
    background: linear-gradient(135deg, rgba(30, 58, 138, 0.4), rgba(29, 78, 216, 0.28));
    border-color: rgba(99, 180, 255, 0.22);
    color: #93c5fd;
}

html[data-theme="dark"] .ffn-data-notice-banner strong {
    color: #bfdbfe;
}

html[data-theme="dark"] .pc-card,
html[data-theme="dark"] .pc-sheet {
    border-color: var(--ffn-ed-border-strong);
    background: linear-gradient(145deg, rgba(9, 19, 33, 0.98), rgba(14, 31, 57, 0.96));
    color: var(--ffn-ed-text);
    box-shadow: 0 28px 80px rgba(2, 8, 17, 0.52);
}

html[data-theme="dark"] .pc-backdrop {
    background: rgba(2, 8, 17, 0.72);
}

html[data-theme="dark"] .ffn-tool-page--news .news-card,
html[data-theme="dark"] .tp-panel,
html[data-theme="dark"] .tp-card,
html[data-theme="dark"] .panel,
html[data-theme="dark"] .ac-track-panel,
html[data-theme="dark"] .ac-track-card,
html[data-theme="dark"] .draft-section,
html[data-theme="dark"] .resource-item,
html[data-theme="dark"] .draft-controls,
html[data-theme="dark"] .draft-panel,
html[data-theme="dark"] .draft-stat,
html[data-theme="dark"] .summary-pill,
html[data-theme="dark"] .dc-team-picker,
html[data-theme="dark"] .dc-chart-shell,
html[data-theme="dark"] .dc-autocomplete,
html[data-theme="dark"] .dc-search,
html[data-theme="dark"] .dc-ac-item,
html[data-theme="dark"] .dc-update-badge,
html[data-theme="dark"] .tool-card {
    border-color: rgba(148, 168, 198, 0.18);
    background: rgba(11, 22, 37, 0.9);
    box-shadow: 0 20px 48px rgba(2, 8, 17, 0.38);
    color: var(--tp-text);
}

html[data-theme="dark"] #draft-main,
html[data-theme="dark"] #depth-chart-main,
html[data-theme="dark"] #academy-main {
    background:
        radial-gradient(circle at top right, rgba(99, 180, 255, 0.08), transparent 28%),
        linear-gradient(180deg, #08111f 0%, #0c1524 24%, #0f1b2e 100%);
}

html[data-theme="dark"] .draft-summary-strip .summary-pill,
html[data-theme="dark"] .draft-controls,
html[data-theme="dark"] .draft-panel-head,
html[data-theme="dark"] .dc-ac-item:hover,
html[data-theme="dark"] .dc-ac-item.dc-ac-active,
html[data-theme="dark"] .ac-track-card:hover,
html[data-theme="dark"] .ac-track-card.active,
html[data-theme="dark"] .resource-item:hover {
    background: rgba(16, 30, 49, 0.96);
}

html[data-theme="dark"] .year-select,
html[data-theme="dark"] .control-input,
html[data-theme="dark"] .control-select,
html[data-theme="dark"] .academy-search input {
    border-color: rgba(148, 168, 198, 0.18);
    background: rgba(8, 16, 29, 0.92);
    color: var(--tp-ink);
}

html[data-theme="dark"] .ffn-article-panel,
html[data-theme="dark"] .ffn-article-rail-card,
html[data-theme="dark"] .archive-article-card,
html[data-theme="dark"] .archive-filter-shell,
html[data-theme="dark"] .archive-search-shell {
    border-color: var(--ffn-ed-border-strong);
    background: linear-gradient(145deg, rgba(11, 22, 37, 0.92), rgba(15, 29, 47, 0.82));
    box-shadow: var(--ffn-ed-shadow-card);
}

html[data-theme="dark"] .ffn-article-page .cta-box.ffn-article-cta {
    border-color: rgba(99, 180, 255, 0.22);
    background:
        radial-gradient(circle at 100% 0%, rgba(99, 180, 255, 0.18) 0%, rgba(99, 180, 255, 0.04) 34%, transparent 60%),
        linear-gradient(145deg, rgba(11, 22, 37, 0.96), rgba(15, 29, 47, 0.9));
    box-shadow: var(--ffn-ed-shadow-card);
}

html[data-theme="dark"] .ffn-article-page .ffn-inline-cta {
    border-color: rgba(99, 180, 255, 0.22);
    background: linear-gradient(145deg, rgba(11, 22, 37, 0.94), rgba(15, 29, 47, 0.86));
    box-shadow: var(--ffn-ed-shadow-soft);
}

html[data-theme="dark"] .ffn-article-page .ffn-inline-cta__copy p {
    color: var(--ffn-ed-text-soft);
}

html[data-theme="dark"] .ffn-article-page .ffn-inline-cta .ffn-pilot-button.is-primary,
html[data-theme="dark"] .ffn-article-page .ffn-inline-cta .ffn-pilot-button.is-primary:hover,
html[data-theme="dark"] .ffn-article-page .ffn-article-cta__actions .ffn-pilot-button.is-primary,
html[data-theme="dark"] .ffn-article-page .ffn-article-cta__actions .ffn-pilot-button.is-primary:hover {
    color: #041019;
    -webkit-text-fill-color: #041019;
}

html[data-theme="dark"] .ffn-article-page .ffn-article-cta__copy p,
html[data-theme="dark"] .ffn-article-page .ffn-article-cta__note {
    color: var(--ffn-ed-text-soft);
}

html[data-theme="dark"] .ffn-article-page .ffn-article-cta__pills span {
    border-color: rgba(148, 168, 198, 0.22);
    background: rgba(11, 22, 37, 0.72);
    box-shadow: none;
}

html[data-theme="dark"] .ffn-article-page .auto-backlink,
html[data-theme="dark"] .ffn-article-page .ffn-article-related__item {
    border-color: rgba(99, 180, 255, 0.16);
    background: rgba(11, 22, 37, 0.78);
    box-shadow: var(--ffn-ed-shadow-soft);
}

html[data-theme="dark"] .ffn-article-page .auto-backlink {
    border-left-color: rgba(99, 180, 255, 0.34);
}

html[data-theme="dark"] .ffn-article-page .auto-backlink__eyebrow,
html[data-theme="dark"] .ffn-article-page .ffn-article-related__label {
    color: var(--ffn-ed-text-soft);
}

html[data-theme="dark"] .ffn-article-page .auto-backlink a,
html[data-theme="dark"] .ffn-article-page .ffn-article-related__item strong {
    color: var(--ffn-ed-text);
}

html[data-theme="dark"] .ffn-article-page .ffn-article-related__item:hover {
    border-color: rgba(99, 180, 255, 0.28);
    background: rgba(14, 28, 46, 0.92);
    box-shadow: var(--ffn-ed-shadow-card);
}

html[data-theme="dark"] .ffn-article-page .article-content blockquote,
html[data-theme="dark"] .ffn-article-page .article-content code,
html[data-theme="dark"] .archive-search-shell input,
html[data-theme="dark"] .archive-filter-button {
    border-color: var(--ffn-ed-border);
    background: rgba(11, 22, 37, 0.82);
}

html[data-theme="dark"] .ffn-article-page .article-content pre {
    background: #07121f;
    box-shadow: inset 0 0 0 1px rgba(148, 168, 198, 0.16);
}

html[data-theme="dark"] .ffn-article-page .article-content hr {
    background: repeating-linear-gradient(
        90deg,
        rgba(148, 168, 198, 0.22),
        rgba(148, 168, 198, 0.22) 4px,
        transparent 4px,
        transparent 8px
    );
}

html[data-theme="dark"] .hero-panel,
html[data-theme="dark"] .billing-shell,
html[data-theme="dark"] .pricing-card,
html[data-theme="dark"] .bridge-shell,
html[data-theme="dark"] .faq-item {
    border-color: var(--page-border);
    background: linear-gradient(145deg, rgba(11, 22, 37, 0.96), rgba(15, 29, 47, 0.86));
    box-shadow: var(--page-shadow);
}

html[data-theme="dark"] .hero-panel::before {
    background: linear-gradient(145deg, rgba(99, 180, 255, 0.1), rgba(52, 211, 153, 0.08));
}

html[data-theme="dark"] .hero-panel::after {
    background: radial-gradient(circle, rgba(99, 180, 255, 0.18) 0%, transparent 72%);
}

html[data-theme="dark"] .hero-title {
    color: var(--page-text);
}

html[data-theme="dark"] .hero-button.secondary,
html[data-theme="dark"] .card-button.secondary,
html[data-theme="dark"] .trust-pill,
html[data-theme="dark"] .eyebrow {
    border-color: rgba(148, 168, 198, 0.18);
    background: rgba(11, 22, 37, 0.82);
    color: var(--page-text);
}

html[data-theme="dark"] .hero-button.primary,
html[data-theme="dark"] .card-button.primary {
    color: #041019;
    box-shadow: 0 16px 30px -18px rgba(99, 180, 255, 0.48);
}

html[data-theme="dark"] .pricing-main::before {
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
}

/* Pricing: body background gradient */
html[data-theme="dark"] .pricing-main {
    background:
        radial-gradient(circle at top left, rgba(99, 180, 255, 0.08), transparent 28%),
        radial-gradient(circle at top right, rgba(52, 211, 153, 0.06), transparent 28%),
        linear-gradient(180deg, #08111f 0%, #0a1424 48%, #0d1930 100%);
}

/* Pricing: card top stripe (dark mode keeps gradient but darker) */
html[data-theme="dark"] .pricing-card::before {
    background: linear-gradient(90deg, rgba(148, 168, 198, 0.18), rgba(148, 168, 198, 0));
}

html[data-theme="dark"] .pricing-card.featured {
    border-color: rgba(52, 211, 153, 0.3);
}

html[data-theme="dark"] .pricing-card.featured::before {
    background: linear-gradient(90deg, #34d399 0%, #63b4ff 100%);
}

/* Pricing: feature list items */
html[data-theme="dark"] .feature-item {
    color: var(--ffn-ed-text-muted);
}

html[data-theme="dark"] .feature-item.off {
    color: var(--ffn-ed-text-soft);
}

html[data-theme="dark"] .feature-item.off .feature-icon {
    background: rgba(148, 168, 198, 0.14);
}

/* Pricing: plan badge colors for dark */
html[data-theme="dark"] .plan-badge.free {
    background: rgba(148, 168, 198, 0.14);
    color: var(--ffn-ed-text-muted);
}

html[data-theme="dark"] .plan-badge.pro {
    background: rgba(52, 211, 153, 0.16);
    color: #6ee7b7;
}

html[data-theme="dark"] .plan-badge.elite {
    background: rgba(251, 191, 36, 0.16);
    color: #fcd34d;
}

/* Pricing: savings badge */
html[data-theme="dark"] .savings-badge {
    background: rgba(251, 191, 36, 0.14);
    color: #fcd34d;
}

/* Pricing: bridge steps */
html[data-theme="dark"] .bridge-step {
    background: rgba(11, 22, 37, 0.72);
    border-color: var(--ffn-ed-border);
}

/* Pricing: price strike */
html[data-theme="dark"] .price-strike {
    background: rgba(148, 168, 198, 0.1);
    color: var(--ffn-ed-text-soft);
}

/* Pricing: faq background override (was rgba(255,255,255,0.92)) */
html[data-theme="dark"] .faq-item {
    background: rgba(11, 22, 37, 0.78);
}

html[data-theme="dark"] .faq-question:hover {
    color: #6ee7b7;
}

/* Homepage rankings section */
html[data-theme="dark"] .ranking-column {
    background: rgba(11, 22, 37, 0.92);
    border-color: var(--ffn-ed-border);
}

html[data-theme="dark"] .player-list li {
    border-bottom-color: rgba(148, 168, 198, 0.1);
    color: var(--ffn-ed-text-muted);
}

html[data-theme="dark"] .player-list li:nth-child(even) {
    background-color: rgba(148, 168, 198, 0.05);
}

html[data-theme="dark"] .player-list li:hover {
    background-color: rgba(99, 180, 255, 0.08);
}

html[data-theme="dark"] .player-name {
    color: var(--ffn-ed-text);
}

html[data-theme="dark"] .player-list li:hover .player-name {
    color: var(--ffn-ed-accent);
}

html[data-theme="dark"] .player-rank {
    color: var(--ffn-ed-text-muted);
}

html[data-theme="dark"] .ppr-toggle,
html[data-theme="dark"] .position-toggle {
    background-color: rgba(11, 22, 37, 0.82);
    border: 1px solid var(--ffn-ed-border);
}

/* Homepage position badges (hp-pos-badge -- different class from pos-badge on rankings page) */
html[data-theme="dark"] .hp-pos-badge--qb   { background: rgba(251, 191, 36, 0.18); color: #fcd34d; }
html[data-theme="dark"] .hp-pos-badge--rb   { background: rgba(52, 211, 153, 0.16); color: #6ee7b7; }
html[data-theme="dark"] .hp-pos-badge--wr   { background: rgba(96, 165, 250, 0.18); color: #93c5fd; }
html[data-theme="dark"] .hp-pos-badge--te   { background: rgba(244, 114, 182, 0.16); color: #f9a8d4; }
html[data-theme="dark"] .hp-pos-badge--k    { background: rgba(167, 139, 250, 0.18); color: #c4b5fd; }
html[data-theme="dark"] .hp-pos-badge--dst,
html[data-theme="dark"] .hp-pos-badge--def  { background: rgba(129, 140, 248, 0.18); color: #a5b4fc; }

@media (max-width: 1100px) {
    .ffn-ed-mobile-controls {
        display: flex !important;
    }

    .ffn-ed-theme-toggle.is-desktop {
        display: none;
    }
}

@media (min-width: 1101px) {
    .ffn-ed-mobile-controls {
        display: none !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ffn-ed-theme-icon-wrap svg {
        transition: none !important;
    }
}

/* =============================================================
   TABLE DARK MODE FIXES
   ============================================================= */

/* 1. Scrollbar thumb: was near-black (rgba(7,16,31,0.18)) -- invisible on dark bg */
html[data-theme="dark"] .rankings-table-wrap,
html[data-theme="dark"] .proj-table-wrap,
html[data-theme="dark"] .contracts-table-wrap {
    scrollbar-color: rgba(148, 168, 198, 0.28) transparent;
}

html[data-theme="dark"] .rankings-table-wrap::-webkit-scrollbar-thumb,
html[data-theme="dark"] .proj-table-wrap::-webkit-scrollbar-thumb,
html[data-theme="dark"] .contracts-table-wrap::-webkit-scrollbar-thumb {
    background: rgba(148, 168, 198, 0.28);
}

/* 2. Row hover: base rule sets background-color on td elements; dark mode only targeted tr.
      td backgrounds paint over tr backgrounds, so the light-mode blue bleed persisted.
      Override td directly in dark mode. */
html[data-theme="dark"] .player-row:hover td,
html[data-theme="dark"] .player-row:focus-visible td {
    background-color: rgba(99, 180, 255, 0.1);
}

html[data-theme="dark"] .player-row:focus-visible {
    box-shadow: inset 0 0 0 2px rgba(99, 180, 255, 0.2);
}

/* 3. Mobile sticky rank column: base mobile rules pin the first cell with light
      backgrounds, which leaves a bright staggered strip in dark mode. Match the
      sticky column to the dark row surfaces instead. */
@media (max-width: 768px) {
    html[data-theme="dark"] .rankings-table td:first-child,
    html[data-theme="dark"] .proj-table td:first-child {
        background: rgba(11, 22, 37, 0.96);
        box-shadow: 1px 0 0 rgba(148, 168, 198, 0.12);
    }

    html[data-theme="dark"] .rankings-table .player-row:nth-child(even) td:first-child,
    html[data-theme="dark"] .proj-table .player-row:nth-child(even) td:first-child {
        background: rgba(17, 30, 49, 0.96);
    }

    html[data-theme="dark"] .rankings-table .player-row:hover td:first-child,
    html[data-theme="dark"] .rankings-table .player-row:focus-visible td:first-child,
    html[data-theme="dark"] .proj-table .player-row:hover td:first-child,
    html[data-theme="dark"] .proj-table .player-row:focus-visible td:first-child {
        background: rgba(28, 54, 86, 0.96);
    }
}

/* 3. Elite rank badge: #b45309 is dark amber -- nearly invisible on #08111f */
html[data-theme="dark"] .rank-cell--elite {
    color: #f59e0b !important;
}

/* 4. Loading / error messages: had white background, no dark override */
html[data-theme="dark"] .loading-message,
html[data-theme="dark"] .error-message {
    background: rgba(11, 22, 37, 0.88);
    border-color: rgba(148, 168, 198, 0.14);
    color: var(--ffn-ed-text-muted);
}

html[data-theme="dark"] .error-message {
    color: #fca5a5;
}

/* 5. Injuries page: team accordion cards had hardcoded white gradient + white border */
html[data-theme="dark"] .ffn-data-page--injuries #teamList > div {
    border-color: var(--ffn-ed-border-strong);
    background: linear-gradient(145deg, rgba(11, 22, 37, 0.92), rgba(15, 29, 47, 0.82));
    box-shadow: var(--ffn-ed-shadow-card);
}

html[data-theme="dark"] .ffn-data-page--injuries .team-updates-panel {
    background: rgba(11, 22, 37, 0.6);
}

/* 6. Injuries: inner row separator border was dark-on-dark -- invisible */
html[data-theme="dark"] .ffn-data-page--injuries .p-4.border-b.border-gray-200 {
    border-top-color: rgba(148, 168, 198, 0.1);
}

/* 7. Injuries: accordion count badge -- dark blue tint near-invisible on dark bg */
html[data-theme="dark"] .ffn-data-page--injuries .ffn-accordion__count {
    background: rgba(99, 180, 255, 0.16);
}

/* 8. Coaches: conference header divider pseudo-element was dark-on-dark -- invisible */
html[data-theme="dark"] .ffn-data-page--coaches .conference-header::after {
    background: rgba(148, 168, 198, 0.16);
}

html[data-theme="dark"] .ffn-data-page--coaches .team-card {
    border-color: var(--ffn-ed-border-strong);
    background: linear-gradient(160deg, rgba(9, 18, 31, 0.96), rgba(14, 28, 44, 0.88));
    box-shadow: 0 22px 54px rgba(2, 8, 17, 0.42);
}

html[data-theme="dark"] .ffn-data-page--coaches .team-card:hover {
    border-color: rgba(99, 180, 255, 0.24);
    box-shadow: 0 26px 60px rgba(2, 8, 17, 0.48);
}

html[data-theme="dark"] .ffn-data-page--coaches .team-name {
    color: var(--ffn-ed-text);
    border-bottom-color: rgba(148, 168, 198, 0.12);
}

html[data-theme="dark"] .ffn-data-page--coaches .division-title,
html[data-theme="dark"] .ffn-data-page--coaches .coach-role {
    color: var(--ffn-ed-text-soft);
}

html[data-theme="dark"] .ffn-data-page--coaches .coach-info {
    border-color: rgba(148, 168, 198, 0.12);
    background: rgba(8, 17, 31, 0.58);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.02);
}

html[data-theme="dark"] .ffn-data-page--coaches .coach-info.hc {
    background: linear-gradient(135deg, rgba(23, 38, 65, 0.7), rgba(8, 17, 31, 0.58));
}

html[data-theme="dark"] .ffn-data-page--coaches .coach-info.oc {
    background: linear-gradient(135deg, rgba(8, 52, 124, 0.34), rgba(8, 17, 31, 0.58));
}

html[data-theme="dark"] .ffn-data-page--coaches .coach-info.dc {
    background: linear-gradient(135deg, rgba(41, 56, 79, 0.58), rgba(8, 17, 31, 0.58));
}

html[data-theme="dark"] .ffn-data-page--coaches .coach-name {
    color: var(--ffn-ed-text);
}

html[data-theme="dark"] .ffn-data-page--coaches .coach-note,
html[data-theme="dark"] .ffn-data-page--coaches .coach-date,
html[data-theme="dark"] .ffn-data-page--coaches .no-coach {
    color: var(--ffn-ed-text-muted);
}

html[data-theme="dark"] .ffn-data-page--coaches .no-coach {
    color: #9fb3cf;
}

/* =============================================================
   ABOUT PAGE + ARTICLE CARDS — DARK MODE FIXES
   Components used rgba(255,255,255,...) backgrounds with no
   dark overrides, rendering them invisible on #08111f.
   ============================================================= */

/* About: social cards, pillar cards, content cards — glass panels */
html[data-theme="dark"] .ffn-pilot-about .ffn-about-social-card,
html[data-theme="dark"] .ffn-pilot-about .ffn-about-pillar,
html[data-theme="dark"] .ffn-pilot-about .ffn-about-content-card {
    border-color: var(--ffn-ed-border-strong);
    background: linear-gradient(145deg, rgba(11, 22, 37, 0.88), rgba(15, 29, 47, 0.78));
    box-shadow: 0 12px 32px rgba(2, 8, 17, 0.32);
}

html[data-theme="dark"] .ffn-pilot-about .ffn-about-social-card:hover,
html[data-theme="dark"] .ffn-pilot-about .ffn-about-pillar:hover,
html[data-theme="dark"] .ffn-pilot-about .ffn-about-content-card:hover {
    border-color: rgba(99, 180, 255, 0.32);
    background: linear-gradient(145deg, rgba(16, 30, 49, 0.96), rgba(20, 36, 58, 0.92));
    box-shadow: 0 16px 40px rgba(99, 180, 255, 0.08);
}

/* About: card platform labels (X, YouTube, TikTok / Pillar 1, 2, 3 / days) */
html[data-theme="dark"] .ffn-pilot-about .ffn-about-social-card span:first-child,
html[data-theme="dark"] .ffn-pilot-about .ffn-about-pillar span:first-child,
html[data-theme="dark"] .ffn-pilot-about .ffn-about-content-card span:first-child {
    color: var(--ffn-ed-accent);
    text-shadow: 0 0 8px rgba(99, 180, 255, 0.15);
}

/* About: card titles (@theFFNerds etc) — bright for readability */
html[data-theme="dark"] .ffn-pilot-about .ffn-about-social-card strong,
html[data-theme="dark"] .ffn-pilot-about .ffn-about-pillar strong,
html[data-theme="dark"] .ffn-pilot-about .ffn-about-content-card strong {
    color: #f3f7ff;
}

/* About: card descriptions */
html[data-theme="dark"] .ffn-pilot-about .ffn-about-social-card p,
html[data-theme="dark"] .ffn-pilot-about .ffn-about-pillar p,
html[data-theme="dark"] .ffn-pilot-about .ffn-about-content-card p {
    color: var(--ffn-ed-text-muted);
}

/* About: stat boxes (18+, 16, 24/7) */
html[data-theme="dark"] .ffn-pilot-about .ffn-about-stat {
    border-color: var(--ffn-ed-border-strong);
    background: linear-gradient(145deg, rgba(11, 22, 37, 0.88), rgba(15, 29, 47, 0.78));
}

html[data-theme="dark"] .ffn-pilot-about .ffn-about-stat strong {
    color: var(--ffn-ed-accent);
    text-shadow: 0 0 12px rgba(99, 180, 255, 0.2);
}

html[data-theme="dark"] .ffn-pilot-about .ffn-about-stat span {
    color: var(--ffn-ed-text-muted);
}

/* About: blockquote */
html[data-theme="dark"] .ffn-pilot-about .ffn-about-quote {
    border-left-color: var(--ffn-ed-accent);
    background: rgba(99, 180, 255, 0.06);
    color: var(--ffn-ed-text-muted);
    box-shadow: inset 0 0 0 1px rgba(99, 180, 255, 0.08);
}

/* About: checklist check marks */
html[data-theme="dark"] .ffn-pilot-about .ffn-about-check {
    background: rgba(99, 180, 255, 0.14);
    color: var(--ffn-ed-accent);
    box-shadow: 0 0 8px rgba(99, 180, 255, 0.1);
}

/* About: checklist text */
html[data-theme="dark"] .ffn-pilot-about .ffn-about-checklist li {
    color: var(--ffn-ed-text-muted);
}

html[data-theme="dark"] .ffn-pilot-about .ffn-about-checklist li strong {
    color: #f3f7ff;
}

/* About: CTA section */
html[data-theme="dark"] .ffn-pilot-about .ffn-about-cta {
    border-color: var(--ffn-ed-border-strong);
}

/* About: section heads */
html[data-theme="dark"] .ffn-pilot-section-head span:first-child {
    color: var(--ffn-ed-accent);
}

html[data-theme="dark"] .ffn-pilot-section-head span:last-child {
    color: var(--ffn-ed-text-muted);
}

/* About: inline CTA buttons — FantasyGPT ghost button had hardcoded white bg */
html[data-theme="dark"] .ffn-pilot-about .ffn-pilot-hero-main a[href="https://fantasygpt.org"] {
    background: rgba(11, 22, 37, 0.82) !important;
    border-color: var(--ffn-ed-border-strong) !important;
    color: var(--ffn-ed-text) !important;
}

html[data-theme="dark"] .ffn-pilot-about .ffn-pilot-hero-main a[href="https://fantasygpt.org"]:hover {
    border-color: rgba(99, 180, 255, 0.32) !important;
    background: rgba(16, 30, 49, 0.96) !important;
}

/* Homepage: article boxes — white border was invisible */
html[data-theme="dark"] .ffn-pilot-home .article-box {
    border-color: var(--ffn-ed-border-strong);
}

html[data-theme="dark"] .ffn-pilot-home .article-box:hover {
    border-color: rgba(99, 180, 255, 0.22);
}

/* Homepage: article divider */
html[data-theme="dark"] .ffn-article-divider {
    background: repeating-linear-gradient(
        90deg,
        rgba(148, 168, 198, 0.22),
        rgba(148, 168, 198, 0.22) 4px,
        transparent 4px,
        transparent 8px
    );
}

/* =============================================================
   GLOBAL SURFACE COMPONENTS — DARK MODE
   Every component below used rgba(255,255,255,...) backgrounds
   which appear as washed-out grey patches on the #08111f base.
   ============================================================= */

/* Core design-system cards & panels (.ffn-card, .ffn-panel, .ffn-ed-card, .ffn-ed-panel) */
html[data-theme="dark"] .ffn-card,
html[data-theme="dark"] .ffn-panel,
html[data-theme="dark"] .ffn-ed-panel,
html[data-theme="dark"] .ffn-ed-card {
    background: linear-gradient(145deg, rgba(11, 22, 37, 0.92), rgba(15, 29, 47, 0.82));
    border-color: var(--ffn-ed-border-strong);
    box-shadow: var(--ffn-ed-shadow-card);
}

/* Homepage: player list rows — grey pills on dark bg */
html[data-theme="dark"] .ffn-pilot-home .player-list li {
    border-color: var(--ffn-ed-border);
    background: rgba(11, 22, 37, 0.72);
}

html[data-theme="dark"] .ffn-pilot-home .player-list li:nth-child(even) {
    background: rgba(15, 29, 47, 0.62);
}

html[data-theme="dark"] .ffn-pilot-home .player-list li:hover {
    background: rgba(99, 180, 255, 0.08);
    border-color: rgba(99, 180, 255, 0.18);
}

/* Homepage: PPR / position toggle pills */
html[data-theme="dark"] .ffn-pilot-home .ffn-toggle {
    border-color: var(--ffn-ed-border);
    background: rgba(11, 22, 37, 0.82);
    color: var(--ffn-ed-text-muted);
}

html[data-theme="dark"] .ffn-pilot-home .ffn-toggle:hover {
    border-color: rgba(99, 180, 255, 0.28);
    background: rgba(16, 30, 49, 0.96);
    color: var(--ffn-ed-text);
}

html[data-theme="dark"] .ffn-pilot-home .ffn-toggle.active {
    background: linear-gradient(135deg, #63b4ff, #7fd4ff);
    color: #041019;
    border-color: transparent;
    box-shadow: 0 12px 28px rgba(99, 180, 255, 0.18);
}

/* Homepage: tool links grid */
html[data-theme="dark"] .ffn-pilot-home .homepage-tool-link {
    border-color: var(--ffn-ed-border);
    background: rgba(11, 22, 37, 0.72);
}

html[data-theme="dark"] .ffn-pilot-home .homepage-tool-link:hover {
    border-color: rgba(99, 180, 255, 0.28);
    background: rgba(16, 30, 49, 0.96);
}

/* Homepage: social pills */
html[data-theme="dark"] .ffn-pilot-social-pill {
    border-color: var(--ffn-ed-border-strong);
    background: rgba(11, 22, 37, 0.82);
}

html[data-theme="dark"] .ffn-pilot-social-pill:hover {
    border-color: rgba(99, 180, 255, 0.28);
    background: rgba(16, 30, 49, 0.96);
}

html[data-theme="dark"] .ffn-pilot-social-pill span:first-child {
    color: var(--ffn-ed-accent);
}

/* Homepage: video card */
html[data-theme="dark"] .ffn-home-video-card {
    border-color: var(--ffn-ed-border-strong);
    background: rgba(11, 22, 37, 0.82);
}

/* Homepage: tools dropdown */
html[data-theme="dark"] .ffn-home-tools-dropdown {
    border-color: var(--ffn-ed-border-strong);
    background: rgba(11, 22, 37, 0.82);
}

html[data-theme="dark"] .ffn-home-tools-toggle:hover {
    background: rgba(99, 180, 255, 0.06);
}

/* Homepage: about graphic placeholder */
html[data-theme="dark"] .ffn-home-about-graphic {
    background: #0b1627;
}

/* Article cards: thumbnail background */
html[data-theme="dark"] .ffn-article-thumb {
    background: rgba(11, 22, 37, 0.82);
}

/* Bottom articles (More Articles panel) — grey cards → dark blue surface */
html[data-theme="dark"] .ffn-pilot-home .bottom-article {
    border-color: var(--ffn-ed-border);
    background: rgba(13, 25, 42, 0.78);
}

html[data-theme="dark"] .ffn-pilot-home .bottom-article:hover {
    border-color: rgba(99, 180, 255, 0.22);
    background: rgba(16, 30, 49, 0.92);
}

/* Bottom article tag pill */
html[data-theme="dark"] .ffn-pilot-home .bottom-article-tag {
    background: rgba(99, 180, 255, 0.12);
    color: var(--ffn-ed-accent);
}

/* Bottom article date */
html[data-theme="dark"] .ffn-pilot-home .bottom-article-date {
    color: var(--ffn-ed-text-soft);
}

/* Loading skeleton — grey shimmer → dark blue shimmer */
html[data-theme="dark"] .loading-skeleton {
    background: linear-gradient(90deg, rgba(15, 29, 47, 0.7) 25%, rgba(22, 40, 64, 0.8) 50%, rgba(15, 29, 47, 0.7) 75%) !important;
    background-size: 200px 100% !important;
}

/* Featured article cards — the card itself is transparent but the h3/meta
   sit against the page bg; make sure the article-link area reads as a
   proper dark surface on hover */
html[data-theme="dark"] .ffn-article-card:hover .ffn-article-thumb {
    box-shadow: 0 12px 24px rgba(99, 180, 255, 0.08);
}

/* Callout boxes */
html[data-theme="dark"] .ffn-pilot-callout {
    border-left-color: var(--ffn-ed-accent);
    background: rgba(99, 180, 255, 0.06);
    color: var(--ffn-ed-text-muted);
    box-shadow: inset 0 0 0 1px rgba(99, 180, 255, 0.08);
}

html[data-theme="dark"] .ffn-pilot-callout strong {
    color: #f3f7ff;
}

/* FAQ items */
html[data-theme="dark"] .ffn-pilot-faq-item {
    border-color: var(--ffn-ed-border-strong);
    background: rgba(11, 22, 37, 0.72);
    box-shadow: 0 12px 32px rgba(2, 8, 17, 0.28);
}

html[data-theme="dark"] .ffn-pilot-faq-icon {
    border-color: var(--ffn-ed-border);
    background: rgba(11, 22, 37, 0.82);
}

/* Form inputs */
html[data-theme="dark"] .ffn-pilot-input,
html[data-theme="dark"] .ffn-pilot-textarea {
    border-color: var(--ffn-ed-border);
    background: rgba(7, 15, 26, 0.88);
    color: var(--ffn-ed-text);
}

html[data-theme="dark"] .ffn-pilot-input:focus,
html[data-theme="dark"] .ffn-pilot-textarea:focus {
    border-color: rgba(99, 180, 255, 0.38);
    box-shadow: 0 0 0 0.22rem rgba(99, 180, 255, 0.14);
    background: rgba(11, 22, 37, 0.94);
}

/* Info box (rankings page) */
html[data-theme="dark"] .ffn-info-box {
    background: rgba(11, 22, 37, 0.88);
    border-color: var(--ffn-ed-border-strong);
    color: var(--ffn-ed-text-muted);
}

/* Select dropdowns */
html[data-theme="dark"] .ffn-select {
    border-color: var(--ffn-ed-border);
    background: rgba(7, 15, 26, 0.88);
    color: var(--ffn-ed-text);
}

/* Targeted dark cleanup for editorial data/tool pages */
html[data-theme="dark"] .ffn-tool-page--news .news-context,
html[data-theme="dark"] .ffn-tool-page--news .news-impact,
html[data-theme="dark"] .ffn-data-page--schedule .week-section,
html[data-theme="dark"] .ffn-data-page--schedule .game-card,
html[data-theme="dark"] .ffn-data-page--weather .weather-card,
html[data-theme="dark"] .ffn-data-page--weather .info-card,
html[data-theme="dark"] .ffn-data-page--weather .weather-stadium,
html[data-theme="dark"] .ffn-data-page--weather .weather-game-outlook,
html[data-theme="dark"] .ffn-data-page--weather .weather-range-note,
html[data-theme="dark"] .ffn-data-page--weather .weather-forecast,
html[data-theme="dark"] .ffn-data-page--weather .forecast-day,
html[data-theme="dark"] .ffn-data-page--weather .weather-note-card,
html[data-theme="dark"] .ffn-data-page--weather .weather-data-missing,
html[data-theme="dark"] .ffn-data-page--weather .dome-badge,
html[data-theme="dark"] .dc-team-tile,
html[data-theme="dark"] .dc-position-card,
html[data-theme="dark"] .dc-empty,
html[data-theme="dark"] .lesson-card,
html[data-theme="dark"] .lesson-detail,
html[data-theme="dark"] .lesson-helper,
html[data-theme="dark"] .lesson-gpt,
html[data-theme="dark"] .lesson-tool-link,
html[data-theme="dark"] .lesson-related-btn,
html[data-theme="dark"] .lesson-community-card,
html[data-theme="dark"] .lesson-empty,
html[data-theme="dark"] .roadmap-stat,
html[data-theme="dark"] .roadmap-card,
html[data-theme="dark"] .roadmap-item,
html[data-theme="dark"] .roadmap-action,
html[data-theme="dark"] .sg-card,
html[data-theme="dark"] .sg-note,
html[data-theme="dark"] .sg-academy-link,
html[data-theme="dark"] .sg-academy-btn,
html[data-theme="dark"] .prediction-card,
html[data-theme="dark"] .prediction-resolution,
html[data-theme="dark"] .leaderboard-item,
html[data-theme="dark"] .leaderboard-rank,
html[data-theme="dark"] .leaderboard-empty,
html[data-theme="dark"] .reviewer-panel {
    border-color: rgba(148, 168, 198, 0.18);
    background: rgba(12, 24, 40, 0.92);
    color: var(--ffn-ed-text-muted);
    box-shadow: 0 18px 44px rgba(2, 8, 17, 0.34);
}

html[data-theme="dark"] .ffn-tool-page--news .news-context strong,
html[data-theme="dark"] .ffn-tool-page--news .news-impact strong,
html[data-theme="dark"] .ffn-data-page--weather .weather-note-card strong,
html[data-theme="dark"] .lesson-helper strong,
html[data-theme="dark"] .lesson-community-card h4,
html[data-theme="dark"] .roadmap-card h3,
html[data-theme="dark"] .roadmap-item strong,
html[data-theme="dark"] .sg-title-row h4,
html[data-theme="dark"] .prediction-top h4,
html[data-theme="dark"] .leaderboard-main strong,
html[data-theme="dark"] .dc-position-name,
html[data-theme="dark"] .dc-starter .dc-player-name,
html[data-theme="dark"] .dc-empty h3 {
    color: var(--ffn-ed-text);
}

html[data-theme="dark"] .ffn-tool-page--news .news-context,
html[data-theme="dark"] .ffn-tool-page--news .news-impact {
    background: linear-gradient(135deg, rgba(15, 31, 52, 0.96), rgba(18, 39, 67, 0.88));
}

html[data-theme="dark"] .ffn-tool-page--news .news-impact {
    border-color: rgba(99, 180, 255, 0.2);
    color: #c7dcff;
}

html[data-theme="dark"] .ffn-tool-page--news .news-type-badge.type-breaking,
html[data-theme="dark"] .status-rejected,
html[data-theme="dark"] .prediction-outcome-miss {
    background: rgba(248, 113, 113, 0.16);
    color: #fca5a5;
}

html[data-theme="dark"] .ffn-tool-page--news .news-type-badge.type-watch,
html[data-theme="dark"] .ffn-tool-page--news .news-relevance-badge.relevance-watch,
html[data-theme="dark"] .status-reviewing,
html[data-theme="dark"] .prediction-outcome-partial,
html[data-theme="dark"] .lesson-takeaway,
html[data-theme="dark"] .auth-login {
    background: rgba(251, 191, 36, 0.16);
    border-color: rgba(251, 191, 36, 0.24);
    color: #fcd34d;
}

html[data-theme="dark"] .ffn-tool-page--news .news-type-badge.type-analysis,
html[data-theme="dark"] .ffn-tool-page--news .news-relevance-badge.relevance-high,
html[data-theme="dark"] .status-shipped,
html[data-theme="dark"] .prediction-status-resolved,
html[data-theme="dark"] .prediction-outcome-hit,
html[data-theme="dark"] .lesson-fantasy,
html[data-theme="dark"] .auth-ok {
    background: rgba(52, 211, 153, 0.16);
    border-color: rgba(52, 211, 153, 0.24);
    color: #86efac;
}

html[data-theme="dark"] .ffn-tool-page--news .news-source-badge.source-official,
html[data-theme="dark"] .ffn-tool-page--news .news-relevance-badge.relevance-elevated,
html[data-theme="dark"] .ffn-data-page--weather .weather-source-badge,
html[data-theme="dark"] .ffn-data-page--weather .forecast-day-tag,
html[data-theme="dark"] .lesson-read-link,
html[data-theme="dark"] .lesson-detail-cat,
html[data-theme="dark"] .sg-rank,
html[data-theme="dark"] .sg-id,
html[data-theme="dark"] .prediction-confidence,
html[data-theme="dark"] .leaderboard-tier,
html[data-theme="dark"] .status-planned {
    background: rgba(96, 165, 250, 0.16);
    border-color: rgba(96, 165, 250, 0.24);
    color: #93c5fd;
}

html[data-theme="dark"] .ffn-tool-page--news .news-source-badge.source-ffn {
    background: rgba(45, 212, 191, 0.16);
    color: #5eead4;
}

html[data-theme="dark"] .ffn-tool-page--news .news-source-badge.source-lane,
html[data-theme="dark"] .ffn-tool-page--news .news-relevance-badge.relevance-low,
html[data-theme="dark"] .ffn-tool-page--news .news-date-badge,
html[data-theme="dark"] .status-open,
html[data-theme="dark"] .status-hidden,
html[data-theme="dark"] .prediction-status-open,
html[data-theme="dark"] .prediction-status-voided,
html[data-theme="dark"] .prediction-outcome-void,
html[data-theme="dark"] .sg-cat {
    background: rgba(148, 163, 184, 0.14);
    color: var(--ffn-ed-text-muted);
}

html[data-theme="dark"] .ffn-data-page--schedule .week-header,
html[data-theme="dark"] .ffn-data-page--schedule .game-card,
html[data-theme="dark"] .ffn-data-page--weather .forecast-day-meta {
    border-color: rgba(148, 168, 198, 0.14);
}

html[data-theme="dark"] .ffn-data-page--schedule .game-card:hover,
html[data-theme="dark"] .ffn-data-page--weather .weather-card:hover,
html[data-theme="dark"] .ffn-data-page--weather .forecast-day:hover,
html[data-theme="dark"] .dc-team-tile:hover,
html[data-theme="dark"] .dc-team-tile.active,
html[data-theme="dark"] .dc-position-card:hover,
html[data-theme="dark"] .lesson-card:hover,
html[data-theme="dark"] .lesson-card.active,
html[data-theme="dark"] .roadmap-action:hover,
html[data-theme="dark"] .sg-card:hover,
html[data-theme="dark"] .sg-card.is-focused,
html[data-theme="dark"] .vote-btn:hover:not(:disabled) {
    border-color: rgba(99, 180, 255, 0.28);
    background: rgba(16, 31, 52, 0.96);
    box-shadow: 0 22px 52px rgba(2, 8, 17, 0.42);
}

html[data-theme="dark"] .ffn-data-page--weather .weather-game-pill,
html[data-theme="dark"] .ffn-data-page--weather .weather-game-reason,
html[data-theme="dark"] .academy-search-chip,
html[data-theme="dark"] .lesson-path-btn,
html[data-theme="dark"] .lesson-pill,
html[data-theme="dark"] .status-tab,
html[data-theme="dark"] .vote-btn,
html[data-theme="dark"] .sg-status,
html[data-theme="dark"] .prediction-pill {
    border-color: rgba(148, 168, 198, 0.16);
    background: rgba(17, 32, 52, 0.9);
    color: var(--ffn-ed-text-muted);
}

html[data-theme="dark"] .academy-search-chip:hover,
html[data-theme="dark"] .lesson-path-btn:hover,
html[data-theme="dark"] .lesson-pill:hover,
html[data-theme="dark"] .status-tab:hover,
html[data-theme="dark"] .lesson-tool-link:hover,
html[data-theme="dark"] .lesson-related-btn:hover,
html[data-theme="dark"] .sg-academy-btn:hover {
    border-color: rgba(99, 180, 255, 0.34);
    background: rgba(99, 180, 255, 0.12);
    color: #93c5fd;
}

html[data-theme="dark"] .lesson-path-btn.active,
html[data-theme="dark"] .lesson-pill.active,
html[data-theme="dark"] .status-tab.active,
html[data-theme="dark"] .vote-btn.voted {
    border-color: rgba(99, 180, 255, 0.34);
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.72), rgba(14, 116, 144, 0.62));
    color: #ffffff;
}

html[data-theme="dark"] .ffn-data-page--weather .weather-impact-badge--high {
    background: rgba(248, 113, 113, 0.18);
    color: #fca5a5;
}

html[data-theme="dark"] .ffn-data-page--weather .weather-impact-badge--watch {
    background: rgba(251, 191, 36, 0.18);
    color: #fcd34d;
}

html[data-theme="dark"] .ffn-data-page--weather .weather-impact-badge--clear {
    background: rgba(52, 211, 153, 0.16);
    color: #86efac;
}

html[data-theme="dark"] .ffn-data-page--weather .dome-badge {
    background: linear-gradient(135deg, rgba(6, 95, 70, 0.34), rgba(20, 83, 45, 0.26));
    border-color: rgba(52, 211, 153, 0.24);
    color: #86efac;
}

html[data-theme="dark"] .dc-search:focus,
html[data-theme="dark"] .dc-autocomplete,
html[data-theme="dark"] .dc-ac-item,
html[data-theme="dark"] .ffn-tool-page .ffn-data-select,
html[data-theme="dark"] .academy-search input,
html[data-theme="dark"] .sg-form input,
html[data-theme="dark"] .sg-form select,
html[data-theme="dark"] .sg-form textarea,
html[data-theme="dark"] .sg-toolbar select,
html[data-theme="dark"] .sg-toolbar input,
html[data-theme="dark"] .sg-moderation input,
html[data-theme="dark"] .sg-moderation select,
html[data-theme="dark"] .prediction-moderation textarea,
html[data-theme="dark"] .prediction-moderation select {
    border-color: rgba(148, 168, 198, 0.2);
    background: rgba(7, 15, 26, 0.92);
    color: var(--ffn-ed-text);
}

html[data-theme="dark"] .sg-form input::placeholder,
html[data-theme="dark"] .sg-form textarea::placeholder,
html[data-theme="dark"] .sg-toolbar input::placeholder,
html[data-theme="dark"] .sg-moderation input::placeholder,
html[data-theme="dark"] .prediction-moderation textarea::placeholder {
    color: var(--ffn-ed-text-soft);
}

html[data-theme="dark"] .ffn-tool-page .ffn-data-select option,
html[data-theme="dark"] .sg-form select option,
html[data-theme="dark"] .sg-toolbar select option,
html[data-theme="dark"] .sg-moderation select option,
html[data-theme="dark"] .prediction-moderation select option {
    background: #0b1625;
    color: var(--ffn-ed-text);
}

html[data-theme="dark"] .dc-position-head,
html[data-theme="dark"] .dc-ac-item + .dc-ac-item,
html[data-theme="dark"] .sg-moderation,
html[data-theme="dark"] .prediction-moderation {
    border-color: rgba(148, 168, 198, 0.14);
}

html[data-theme="dark"] .dc-player-item:hover,
html[data-theme="dark"] .dc-player-item:focus-visible,
html[data-theme="dark"] .dc-player-item.dc-starter {
    background: rgba(17, 32, 52, 0.82);
}

html[data-theme="dark"] .dc-player-slot,
html[data-theme="dark"] .dc-backup .dc-player-slot,
html[data-theme="dark"] .dc-starter .dc-player-slot {
    background: rgba(96, 165, 250, 0.14);
    color: #bfdbfe;
}

html[data-theme="dark"] .dc-player-name,
html[data-theme="dark"] .dc-tile-name,
html[data-theme="dark"] .lesson-card h3,
html[data-theme="dark"] .lesson-body,
html[data-theme="dark"] .lesson-helper,
html[data-theme="dark"] .lesson-gpt p,
html[data-theme="dark"] .lesson-community-card p,
html[data-theme="dark"] .roadmap-card p,
html[data-theme="dark"] .sg-body,
html[data-theme="dark"] .prediction-body {
    color: var(--ffn-ed-text-muted);
}

html[data-theme="dark"] .dc-team-tile.active .dc-tile-name,
html[data-theme="dark"] .dc-team-tile:hover .dc-tile-name,
html[data-theme="dark"] .ac-track-card.active strong,
html[data-theme="dark"] .ac-track-card:hover strong,
html[data-theme="dark"] .lesson-card.active h3,
html[data-theme="dark"] .lesson-card:hover h3 {
    color: var(--ffn-ed-text);
}

html[data-theme="dark"] .dc-empty-error {
    border-color: rgba(248, 113, 113, 0.28);
    background: rgba(69, 10, 10, 0.28);
}

html[data-theme="dark"] .sg-card.is-hidden,
html[data-theme="dark"] .sg-card.is-rejected,
html[data-theme="dark"] .prediction-card.is-resolved,
html[data-theme="dark"] .prediction-card.is-voided {
    background: rgba(15, 27, 45, 0.76);
}

html[data-theme="dark"] .medal-gold {
    border-color: rgba(234, 179, 8, 0.38) !important;
    background: rgba(113, 63, 18, 0.32) !important;
}

html[data-theme="dark"] .medal-bronze {
    border-color: rgba(217, 119, 6, 0.38) !important;
    background: rgba(120, 53, 15, 0.26) !important;
}

html[data-theme="dark"] .loading-spinner {
    border-color: rgba(148, 168, 198, 0.18);
    border-top-color: var(--ffn-ed-accent);
}
