/**
 * Snooker Championship — dark mode
 * Loaded after module CSS. Scoped to body.hh-ct-dark / data-hh-ct-dark-mode.
 * Filename avoids collision with clean-theme dark.css (toggle must not remove this).
 */

html[data-hh-ct-dark-mode="dark"],
body.hh-ct-dark {
    --sc-ml-page-bg: #151b21;
    --sc-ml-surface: #1e262e;
    --sc-ml-surface-alt: #232c35;
    --sc-ml-surface-muted: #28323c;
    --sc-ml-surface-hover: #2d3844;
    --sc-ml-surface-subtle: #252e38;
    --sc-ml-surface-panel: #212930;
    --sc-ml-surface-empty: #1a2128;
    --sc-ml-surface-inset: #171d24;
    --sc-ml-surface-highlight: #1a2b28;
    --sc-ml-surface-tab: #232b33;
    --sc-ml-surface-tab-active: #1a2e2a;
    --sc-ml-surface-gradient-start: #1e262e;
    --sc-ml-surface-gradient-end: #1a232b;
    --sc-ml-surface-gradient-end-muted: #232b33;
    --sc-ml-border: #3a4654;
    --sc-ml-border-light: #33404d;
    --sc-ml-border-medium: #404d5c;
    --sc-ml-border-soft: #364352;
    --sc-ml-border-dashed: #4a5868;
    --sc-ml-border-placeholder: #5a6878;
    --sc-ml-text: #d8dee4;
    --sc-ml-text-strong: #eef2f6;
    --sc-ml-text-heading: #f3f6f9;
    --sc-ml-text-dark: #ffffff;
    --sc-ml-text-muted: #9aa8b6;
    --sc-ml-text-soft: #b0bcc8;
    --sc-ml-text-label: #c2ccd6;
    --sc-ml-text-eyebrow: #8fa0ae;
    --sc-ml-text-note: #9aa8b6;
    --sc-ml-text-meta: #93a1af;
    --sc-ml-text-placeholder: #7d8b99;
    --sc-ml-text-body: #c8d1da;
    --sc-ml-accent: #59d3b4;
    --sc-ml-accent-soft: rgba(89, 211, 180, 0.14);
    --sc-ml-accent-on: #dffef5;
    --sc-ml-accent-border: rgba(89, 211, 180, 0.28);
    --sc-ml-link: #6dd4c4;
    --sc-ml-link-strong: #8aebd4;
    --sc-ml-success-bg: rgba(46, 160, 98, 0.18);
    --sc-ml-success-text: #7ddea8;
    --sc-ml-success-text-alt: #6fd39c;
    --sc-ml-danger-bg: rgba(179, 58, 58, 0.18);
    --sc-ml-danger-text: #f0a0a0;
    --sc-ml-danger-text-alt: #e89292;
    --sc-ml-danger-text-strong: #ffaaaa;
    --sc-ml-info-bg: rgba(42, 95, 158, 0.2);
    --sc-ml-info-text: #8ec0ff;
    --sc-ml-warning-bg: rgba(154, 107, 16, 0.22);
    --sc-ml-warning-text: #f0cc78;
    --sc-ml-warning-border: rgba(240, 204, 120, 0.28);
    --sc-ml-neutral-bg: #2a333d;
    --sc-ml-neutral-text: #a8b4c0;
    --sc-ml-closed-border: #5c6878;
    --sc-ml-medal-gold-bg: #8a6f1a;
    --sc-ml-medal-gold-text: #ffe98a;
    --sc-ml-medal-silver-bg: #5a6570;
    --sc-ml-medal-silver-text: #e8edf2;
    --sc-ml-medal-bronze-bg: #7a5230;
    --sc-ml-medal-bronze-text: #ffd4a8;
    --sc-ml-medal-gold-row-bg: rgba(138, 111, 26, 0.18);
    --sc-ml-medal-silver-row-bg: rgba(90, 101, 112, 0.16);
    --sc-ml-medal-bronze-row-bg: rgba(122, 82, 48, 0.16);
    --sc-ml-chip-bg: #2f3944;
    --sc-ml-chip-text: #c8d1da;
    --sc-ml-chip-soft-bg: rgba(89, 211, 180, 0.12);
    --sc-ml-chip-soft-text: #b8efe2;
    --sc-ml-cover-bg: #1a232b;
    --sc-ml-cover-empty: #4a6270;
    --sc-ml-shadow: rgba(0, 0, 0, 0.35);
    --sc-ml-shadow-strong: rgba(0, 0, 0, 0.5);
    --sc-ml-podium-gold-start: #3a3218;
    --sc-ml-podium-gold-end: #2a2414;
    --sc-ml-podium-gold-border: #8a6f1a;
    --sc-ml-podium-silver-start: #2a323a;
    --sc-ml-podium-silver-end: #222830;
    --sc-ml-podium-silver-border: #5a6570;
    --sc-ml-podium-bronze-start: #32261c;
    --sc-ml-podium-bronze-end: #241c14;
    --sc-ml-podium-bronze-border: #7a5230;
}

/* Manage shell / page background */
body.hh-ct-dark.sc-championship-manage-page,
html[data-hh-ct-dark-mode="dark"] body.sc-championship-manage-page {
    background: var(--sc-ml-page-bg);
    color: var(--sc-ml-text);
}

/* HumHub panels inside championship UI */
body.hh-ct-dark .snooker-championship-manage-root .panel,
body.hh-ct-dark .snooker-championship-manage-root .panel-default,
body.hh-ct-dark .snooker-championship-manage-root .panel-body,
body.hh-ct-dark .snooker-championship-manage-root .panel-heading,
body.hh-ct-dark .sc-directory .panel,
body.hh-ct-dark .sc-directory .panel-default,
body.hh-ct-dark .sc-directory .panel-body,
body.hh-ct-dark .sc-directory .panel-heading,
body.hh-ct-dark .sc-display .panel,
body.hh-ct-dark .sc-display .panel-body,
body.hh-ct-dark .sc-display .panel-heading {
    background-color: var(--sc-ml-surface) !important;
    border-color: var(--sc-ml-border) !important;
    color: var(--sc-ml-text);
}

body.hh-ct-dark .snooker-championship-manage-root .panel-heading,
body.hh-ct-dark .sc-directory .panel-heading,
body.hh-ct-dark .sc-display .panel-heading {
    background-color: var(--sc-ml-surface-muted) !important;
    color: var(--sc-ml-text-strong);
}

body.hh-ct-dark .snooker-championship-manage-root .well,
body.hh-ct-dark .snooker-championship-manage-root .well-sm,
body.hh-ct-dark .sc-directory .well {
    background-color: var(--sc-ml-surface-alt);
    border-color: var(--sc-ml-border);
    color: var(--sc-ml-text);
}

body.hh-ct-dark .snooker-championship-manage-root .form-control,
body.hh-ct-dark .snooker-championship-manage-root textarea,
body.hh-ct-dark .snooker-championship-manage-root select,
body.hh-ct-dark .sc-directory .form-control {
    background-color: var(--sc-ml-surface-inset) !important;
    border-color: var(--sc-ml-border-medium) !important;
    color: var(--sc-ml-text-strong) !important;
}

body.hh-ct-dark .snooker-championship-manage-root .help-block,
body.hh-ct-dark .snooker-championship-manage-root .text-muted,
body.hh-ct-dark .sc-directory .text-muted {
    color: var(--sc-ml-text-muted) !important;
}

body.hh-ct-dark .snooker-championship-manage-root a:not(.btn),
body.hh-ct-dark .sc-directory a:not(.btn),
body.hh-ct-dark .sc-display a:not(.btn) {
    color: var(--sc-ml-link);
}

body.hh-ct-dark .snooker-championship-manage-root hr,
body.hh-ct-dark .sc-directory hr {
    border-top-color: var(--sc-ml-border);
}

body.hh-ct-dark .snooker-championship-manage-root .list-group-item,
body.hh-ct-dark .sc-directory .list-group-item {
    background-color: var(--sc-ml-surface);
    border-color: var(--sc-ml-border);
    color: var(--sc-ml-text);
}

body.hh-ct-dark .snooker-championship-manage-root .table > thead > tr > th,
body.hh-ct-dark .snooker-championship-manage-root .table > tbody > tr > th,
body.hh-ct-dark .snooker-championship-manage-root .table > tbody > tr > td,
body.hh-ct-dark .snooker-championship-manage-root .table > thead > tr > td {
    border-color: var(--sc-ml-border) !important;
    color: var(--sc-ml-text);
    background-color: transparent;
}

body.hh-ct-dark .snooker-championship-manage-root .table > thead > tr > th {
    background-color: var(--sc-ml-surface-muted) !important;
    color: var(--sc-ml-text-soft);
}

body.hh-ct-dark .snooker-championship-manage-root .table-striped > tbody > tr:nth-of-type(odd) {
    background-color: var(--sc-ml-surface-alt) !important;
}

body.hh-ct-dark .snooker-championship-manage-root .table-hover > tbody > tr:hover {
    background-color: var(--sc-ml-surface-hover) !important;
}

body.hh-ct-dark .snooker-championship-manage-root .nav-tabs > li > a {
    color: var(--sc-ml-text-soft);
}

body.hh-ct-dark .snooker-championship-manage-root .nav-tabs > li.active > a,
body.hh-ct-dark .snooker-championship-manage-root .nav-tabs > li.active > a:hover,
body.hh-ct-dark .snooker-championship-manage-root .nav-tabs > li.active > a:focus {
    background-color: var(--sc-ml-surface);
    border-color: var(--sc-ml-border);
    color: var(--sc-ml-text-strong);
}

body.hh-ct-dark .snooker-championship-manage-root .nav-tabs {
    border-bottom-color: var(--sc-ml-border);
}

/* Sidebar / shell */
body.hh-ct-dark .snooker-championship-manage-sidebar,
body.hh-ct-dark .sc-manage-shell__top,
body.hh-ct-dark .sc-panel-head,
body.hh-ct-dark .sc-section {
    background: var(--sc-ml-surface);
    border-color: var(--sc-ml-border);
    color: var(--sc-ml-text);
}

body.hh-ct-dark .snooker-championship-manage-nav a {
    color: var(--sc-ml-text-soft);
}

body.hh-ct-dark .snooker-championship-manage-nav a:hover,
body.hh-ct-dark .snooker-championship-manage-nav li.active > a {
    background: var(--sc-ml-surface-hover);
    color: var(--sc-ml-text-strong);
}

/* Guide */
body.hh-ct-dark .sc-guide-toc {
    background: var(--sc-ml-surface-gradient-end);
    border-color: var(--sc-ml-accent-border);
}

body.hh-ct-dark .sc-guide-toc a.is-active {
    color: var(--sc-ml-link-strong);
}

body.hh-ct-dark .sc-guide-callout {
    background: var(--sc-ml-warning-bg);
    border-color: var(--sc-ml-warning-border);
}

/* Display / roster / facts / chips */
body.hh-ct-dark .sc-display-about {
    background: var(--sc-ml-surface);
    border-bottom-color: var(--sc-ml-border);
}

body.hh-ct-dark .sc-display-about__lead {
    color: var(--sc-ml-text-body);
}

body.hh-ct-dark .sc-display-about__guide:hover,
body.hh-ct-dark .sc-display-about__guide:focus {
    color: var(--sc-ml-link-strong);
}

body.hh-ct-dark .sc-display-chip {
    background: var(--sc-ml-chip-soft-bg);
    color: var(--sc-ml-chip-soft-text);
}

body.hh-ct-dark .sc-display-chip--accent {
    background: var(--sc-ml-link);
    color: #fff;
}

body.hh-ct-dark .sc-fact {
    background: var(--sc-ml-surface-gradient-end);
    border-color: var(--sc-ml-accent-border);
}

body.hh-ct-dark .sc-display-roster__item {
    background: var(--sc-ml-surface-panel);
}

body.hh-ct-dark .sc-display-roster__index {
    color: var(--sc-ml-text-muted);
}

body.hh-ct-dark .sc-team-roster-modal__member {
    border-bottom-color: var(--sc-ml-border-light);
}

/* Ranking / podium */
body.hh-ct-dark .sc-final-ranking__table > thead > tr > th {
    background: var(--sc-ml-surface-muted);
    border-bottom-color: var(--sc-ml-border-medium);
    color: var(--sc-ml-text-soft);
}

body.hh-ct-dark .sc-final-ranking__table > tbody > tr > td {
    border-top-color: var(--sc-ml-border-light);
}

body.hh-ct-dark .sc-final-ranking__table > tbody > tr.is-gold {
    background: var(--sc-ml-medal-gold-row-bg);
}

body.hh-ct-dark .sc-final-ranking__table > tbody > tr.is-silver {
    background: var(--sc-ml-medal-silver-row-bg);
}

body.hh-ct-dark .sc-final-ranking__table > tbody > tr.is-bronze {
    background: var(--sc-ml-medal-bronze-row-bg);
}

body.hh-ct-dark .sc-final-ranking__podium-card,
body.hh-ct-dark .sc-final-ranking__podium-item {
    border-color: var(--sc-ml-border);
    background: linear-gradient(180deg, var(--sc-ml-surface) 0%, var(--sc-ml-surface-gradient-end) 100%);
}

body.hh-ct-dark .sc-final-ranking__podium-item.is-gold,
body.hh-ct-dark .sc-final-ranking__podium-card.is-gold {
    border-color: var(--sc-ml-podium-gold-border);
    background: linear-gradient(180deg, var(--sc-ml-podium-gold-start) 0%, var(--sc-ml-podium-gold-end) 100%);
}

body.hh-ct-dark .sc-final-ranking__podium-item.is-silver,
body.hh-ct-dark .sc-final-ranking__podium-card.is-silver {
    border-color: var(--sc-ml-podium-silver-border);
    background: linear-gradient(180deg, var(--sc-ml-podium-silver-start) 0%, var(--sc-ml-podium-silver-end) 100%);
}

body.hh-ct-dark .sc-final-ranking__podium-item.is-bronze,
body.hh-ct-dark .sc-final-ranking__podium-card.is-bronze {
    border-color: var(--sc-ml-podium-bronze-border);
    background: linear-gradient(180deg, var(--sc-ml-podium-bronze-start) 0%, var(--sc-ml-podium-bronze-end) 100%);
}

body.hh-ct-dark .sc-rank-board,
body.hh-ct-dark .sc-fixture-card,
body.hh-ct-dark .sc-round-block,
body.hh-ct-dark .sc-tournament-card {
    border-color: var(--sc-ml-border);
    background: var(--sc-ml-surface);
    color: var(--sc-ml-text);
}

/* Directory cards */
body.hh-ct-dark .sc-directory-hero {
    box-shadow: 0 14px 36px rgba(0, 0, 0, 0.35);
}

body.hh-ct-dark .sc-directory-panel {
    background: var(--sc-ml-surface);
    border-color: var(--sc-ml-border);
}

body.hh-ct-dark .sc-directory-filters {
    background: linear-gradient(180deg, var(--sc-ml-surface) 0%, var(--sc-ml-surface-muted) 100%);
    border-color: var(--sc-ml-border);
}

body.hh-ct-dark .sc-directory-empty__icon {
    background: rgba(89, 211, 180, 0.12);
    color: var(--sc-ml-accent);
}

body.hh-ct-dark .sc-directory-empty__title {
    color: var(--sc-ml-text-heading);
}

body.hh-ct-dark .sc-directory .sc-directory-card {
    background: var(--sc-ml-surface);
    border-color: var(--sc-ml-border);
    box-shadow: 0 2px 8px var(--sc-ml-shadow);
}

body.hh-ct-dark .sc-directory .sc-directory-card:hover {
    border-color: var(--sc-ml-accent);
    box-shadow: 0 4px 14px var(--sc-ml-shadow-strong);
}

body.hh-ct-dark .sc-directory .sc-tournament-card__title a {
    color: var(--sc-ml-text-heading);
}

body.hh-ct-dark .sc-directory .sc-tournament-card__cover--empty {
    background:
        radial-gradient(circle at 30% 30%, rgba(89, 211, 180, 0.22), transparent 55%),
        linear-gradient(145deg, #163528, #0f1f17);
    color: rgba(244, 250, 247, 0.88);
}

/* Profile widget */
body.hh-ct-dark .sc-profile-championship__head .fa {
    color: var(--sc-ml-link);
}

body.hh-ct-dark .sc-profile-championship__stat {
    border-color: var(--sc-ml-border);
    background: var(--sc-ml-surface-alt);
}

body.hh-ct-dark .sc-profile-championship__stat-value {
    color: var(--sc-ml-text-strong);
}

body.hh-ct-dark .sc-profile-championship__stat-label,
body.hh-ct-dark .sc-profile-championship__section-label,
body.hh-ct-dark .sc-profile-championship__section-title .fa,
body.hh-ct-dark .sc-profile-championship__vs {
    color: var(--sc-ml-text-muted);
}

body.hh-ct-dark .sc-profile-championship__section-title,
body.hh-ct-dark .sc-profile-championship__tournament-title,
body.hh-ct-dark .sc-profile-championship__match-line {
    color: var(--sc-ml-text-strong);
}

body.hh-ct-dark .sc-profile-championship__stat--win .sc-profile-championship__stat-value,
body.hh-ct-dark .sc-profile-championship__delta--up {
    color: var(--sc-ml-success-text);
}

body.hh-ct-dark .sc-profile-championship__stat--loss .sc-profile-championship__stat-value,
body.hh-ct-dark .sc-profile-championship__delta--down {
    color: var(--sc-ml-danger-text);
}

body.hh-ct-dark .sc-profile-championship__stat--pts .sc-profile-championship__stat-value {
    color: var(--sc-ml-link);
}

body.hh-ct-dark .sc-profile-championship__section,
body.hh-ct-dark .sc-profile-championship__league,
body.hh-ct-dark .sc-profile-championship__tournament,
body.hh-ct-dark .sc-profile-championship__team,
body.hh-ct-dark .sc-profile-championship__match {
    border-color: var(--sc-ml-border);
}

body.hh-ct-dark .sc-profile-championship__rank {
    background: var(--sc-ml-chip-bg);
    color: var(--sc-ml-chip-text);
}

body.hh-ct-dark .sc-profile-championship__league-stats {
    color: var(--sc-ml-text-label);
}

/* Live remote */
body.hh-ct-dark.sc-live-remote-page {
    background:
        radial-gradient(90% 50% at 50% -8%, rgba(22, 127, 146, 0.22), transparent 48%),
        linear-gradient(180deg, #121a1f 0%, #151b21 38%);
    color: var(--sc-ml-text-heading);
}

body.hh-ct-dark .sc-live__top,
body.hh-ct-dark .sc-live__card,
body.hh-ct-dark .sc-live__panel,
body.hh-ct-dark .sc-live__board,
body.hh-ct-dark .sc-live__side,
body.hh-ct-dark .sc-live__actions,
body.hh-ct-dark .sc-live__player,
body.hh-ct-dark .sc-live__break-log {
    background: var(--sc-ml-surface) !important;
    border-color: var(--sc-ml-accent-border) !important;
    color: var(--sc-ml-text);
}

body.hh-ct-dark .sc-live__meta,
body.hh-ct-dark .sc-live__hint,
body.hh-ct-dark .sc-live__sub,
body.hh-ct-dark .sc-live__label {
    color: var(--sc-ml-text-muted) !important;
}

body.hh-ct-dark .sc-live__title,
body.hh-ct-dark .sc-live__score,
body.hh-ct-dark .sc-live__player-name {
    color: var(--sc-ml-text-heading) !important;
}

body.hh-ct-dark .sc-live__link,
body.hh-ct-dark .sc-live a:not(.btn) {
    color: var(--sc-ml-link) !important;
}

body.hh-ct-dark .sc-live__badge,
body.hh-ct-dark .sc-live__chip {
    background: var(--sc-ml-surface-inset) !important;
    border-color: var(--sc-ml-accent-border) !important;
    color: var(--sc-ml-text-soft) !important;
}

body.hh-ct-dark .sc-live__score-input,
body.hh-ct-dark .sc-live input.form-control,
body.hh-ct-dark .sc-live select.form-control {
    background: var(--sc-ml-surface-inset) !important;
    border-color: var(--sc-ml-border-medium) !important;
    color: var(--sc-ml-text-strong) !important;
}

body.hh-ct-dark .sc-live__alert--danger,
body.hh-ct-dark .sc-live .alert-danger {
    background: var(--sc-ml-danger-bg) !important;
    border-color: rgba(240, 160, 160, 0.35) !important;
    color: var(--sc-ml-danger-text) !important;
}

body.hh-ct-dark .sc-live__alert--success,
body.hh-ct-dark .sc-live .alert-success {
    background: var(--sc-ml-success-bg) !important;
    color: var(--sc-ml-success-text) !important;
}

body.hh-ct-dark .sc-live__alert--warning,
body.hh-ct-dark .sc-live .alert-warning {
    background: var(--sc-ml-warning-bg) !important;
    color: var(--sc-ml-warning-text) !important;
}

/* Labels / badges inside module */
body.hh-ct-dark .snooker-championship-manage-root .label-default,
body.hh-ct-dark .sc-directory .label-default,
body.hh-ct-dark .sc-display .label-default {
    background-color: var(--sc-ml-chip-bg);
    color: var(--sc-ml-chip-text);
}

/* Modal inside championship */
body.hh-ct-dark .modal-content {
    background-color: var(--sc-ml-surface);
    border-color: var(--sc-ml-border);
    color: var(--sc-ml-text);
}

body.hh-ct-dark .modal-header,
body.hh-ct-dark .modal-footer {
    border-color: var(--sc-ml-border);
    background-color: var(--sc-ml-surface-muted);
}

body.hh-ct-dark .modal-title {
    color: var(--sc-ml-text-heading);
}

/* Dropdowns in manage */
body.hh-ct-dark .snooker-championship-manage-root .dropdown-menu {
    background-color: var(--sc-ml-surface);
    border-color: var(--sc-ml-border);
}

body.hh-ct-dark .snooker-championship-manage-root .dropdown-menu > li > a {
    color: var(--sc-ml-text);
}

body.hh-ct-dark .snooker-championship-manage-root .dropdown-menu > li > a:hover {
    background-color: var(--sc-ml-surface-hover);
    color: var(--sc-ml-text-strong);
}
