/**
 * Тёмная тема платформы.
 * html[data-theme="dark"] — шапка/подвал (SVG) без перекраски, только кнопка темы.
 * Контент: main и плавающие виджеты (cookie, scroll, гайд).
 */

[data-theme="dark"] {
  color-scheme: dark;

  --color-navy: #8ec5ea;
  --color-navy-deep: #6eb0dc;
  --color-orange: #ffa347;
  --color-orange-hover: #ff8c2a;
  --color-bg: #0f161e;
  --color-card: #1a2433;
  --color-card-elevated: #222f42;
  --color-text: #e6edf3;
  --color-muted: #8fa3b8;
  --color-profile-meta: #7a92a8;
  --color-accent-soft: rgba(62, 140, 198, 0.2);
  --color-link: #5eb8f5;
  --color-border: #2e3d52;
  --color-border-subtle: #243040;
  --color-input-bg: #151d28;
  --color-input-border: #3a4f66;
  --shadow: 0 8px 28px rgba(0, 0, 0, 0.38);

  --ref4-bg: #0f161e;
  --ref4-mouse: #151d28;
  --ref4-gray: #8fa3b8;
  --ref4-dark: #c8d6e3;
  --ref4-black: #e6edf3;
  --ref4-line: #2e3d52;
  --ref4-link: #5eb8f5;
  --ref4-tab-active-bg: rgba(55, 140, 200, 0.22);
  --ref4-tab-active: #6eb8e8;

  --pf-blue: #5eb8f5;
  --pf-dark: #c8d6e3;
  --pf-gray-border: #2e3d52;
  --pf-bg: #0f161e;
  --pf-bg-field: #151d28;
  --pf-placeholder: #7a92b8;
  --pf-req: #5eb8f5;
  --pf-section-title: #c8d6e3;
  --pf-page-title: var(--color-navy);
}

/* ——— База ——— */
[data-theme="dark"] body {
  background: var(--color-bg);
  color: var(--color-text);
}

[data-theme="dark"] main {
  color: var(--color-text);
}

[data-theme="dark"] main h1:not(.home-hero__title):not(.tp-fig-hero__title),
[data-theme="dark"] main h2:not(.home-section-title),
[data-theme="dark"] main h3:not(.home-section-title) {
  color: var(--color-navy);
}

[data-theme="dark"] main a:not(.btn):not(.landing-hit):not(.ls-user-dropdown__item):not(.events-card__main-link):not(.ss-card__link):not(.al-card__meta-value--link):not(.tp-res-form__pill):not(.tp-mip-tab):not(.tp-mip-hero__btn):not(.spd-btn):not(.spd-hall-tab):not(.tp-res-subtab) {
  color: var(--color-link);
}

[data-theme="dark"] label {
  color: var(--color-text);
}

[data-theme="dark"] input[type="text"],
[data-theme="dark"] input[type="email"],
[data-theme="dark"] input[type="tel"],
[data-theme="dark"] input[type="password"],
[data-theme="dark"] input[type="number"],
[data-theme="dark"] input[type="datetime-local"],
[data-theme="dark"] input[type="search"],
[data-theme="dark"] input[type="url"],
[data-theme="dark"] input[type="date"],
[data-theme="dark"] input[type="time"],
[data-theme="dark"] select,
[data-theme="dark"] textarea {
  background: var(--color-input-bg);
  border-color: var(--color-input-border);
  color: var(--color-text);
}

[data-theme="dark"] select {
  color-scheme: dark;
}

[data-theme="dark"] select option {
  background-color: var(--color-card);
  color: var(--color-text);
}

[data-theme="dark"] input[type="date"],
[data-theme="dark"] input[type="time"],
[data-theme="dark"] input[type="datetime-local"] {
  color-scheme: dark;
}

[data-theme="dark"] input::placeholder,
[data-theme="dark"] textarea::placeholder {
  color: var(--color-muted);
  opacity: 0.85;
}

[data-theme="dark"] .ss-breadcrumbs a {
  color: var(--color-link);
}

[data-theme="dark"] .ss-breadcrumbs span {
  color: var(--color-muted);
}

[data-theme="dark"] .page-back-row a {
  color: var(--color-link);
}

[data-theme="dark"] .btn-secondary {
  background: rgba(255, 163, 71, 0.18);
  color: var(--color-navy);
  border: 1px solid rgba(255, 163, 71, 0.35);
}

[data-theme="dark"] main .btn-outline {
  color: var(--color-text);
  border-color: var(--color-border);
}

[data-theme="dark"] main .card {
  background: var(--color-card);
  box-shadow: var(--shadow);
  color: var(--color-text);
}

[data-theme="dark"] main .card h1,
[data-theme="dark"] main .card h2 {
  color: var(--color-navy);
}

/* ——— Фоны страниц (каталоги и кабинеты) ——— */
[data-theme="dark"] main :is(
  .ss-page,
  .al-page,
  .cl-page,
  .spd-page,
  .vpd-page,
  .events-page,
  .auth-page,
  .trainer-cabinet,
  .trainer-cabinet--referee,
  .legal-doc-page
) {
  background-color: var(--color-bg);
}

/* ——— Поиск и фильтры (все каталоги) ——— */
[data-theme="dark"] main .ss-page-head__title,
[data-theme="dark"] main .ss-list-title {
  color: var(--color-navy);
}

[data-theme="dark"] main .ss-search__bar,
[data-theme="dark"] main .ss-filters.card,
[data-theme="dark"] main .events-filters {
  background-color: var(--color-card);
  border: 1px solid var(--color-border);
  box-shadow: none;
}

[data-theme="dark"] main .ss-filters-panel__body {
  background: transparent;
  border: none;
  box-shadow: none;
}

[data-theme="dark"] main .ss-search__input {
  color: var(--color-text);
}

[data-theme="dark"] main .ss-search__input::placeholder {
  color: var(--color-muted);
}

[data-theme="dark"] .ss-search__bar > .ss-icon,
[data-theme="dark"] .spd-students-search > .ss-icon {
  color: var(--color-text);
}

[data-theme="dark"] main .ss-filters-fab {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: #e6edf3;
}

[data-theme="dark"] main .ss-filters-fab__icon path {
  stroke: currentColor;
}

[data-theme="dark"] main .ss-filters-fab:hover {
  background: var(--color-card);
  border-color: var(--color-link);
  color: #fff;
}

[data-theme="dark"] [data-collapsible-filters].is-filters-open .ss-filters-fab {
  background: var(--color-link);
  border-color: var(--color-link);
  color: #fff;
}

[data-theme="dark"] main .ss-filters__label,
[data-theme="dark"] main .events-filters__label,
[data-theme="dark"] main .al-filters__label,
[data-theme="dark"] main .cl-filters__label {
  color: var(--color-muted);
}

[data-theme="dark"] main .events-filters__control,
[data-theme="dark"] main .ss-filters__control {
  background: var(--color-input-bg);
  border-color: var(--color-input-border);
  color: var(--color-text);
}

[data-theme="dark"] main .ss-filters__control::placeholder {
  color: var(--color-muted);
}

[data-theme="dark"] main .ss-filters__select-wrap {
  background: var(--color-input-bg);
  border-color: var(--color-input-border);
}

[data-theme="dark"] main .ss-filters__control--select {
  color-scheme: dark;
  background-color: var(--color-input-bg);
  color: var(--color-text);
}

[data-theme="dark"] main .ss-filters__control--select option {
  background-color: var(--color-card);
  color: var(--color-text);
}

[data-theme="dark"] main .ss-filters__control[type="date"],
[data-theme="dark"] main .ss-filters__control[type="time"] {
  color-scheme: dark;
}

[data-theme="dark"] main .events-filters__control:is(select) {
  color-scheme: dark;
}

[data-theme="dark"] main .events-filters__control option {
  background-color: var(--color-card);
  color: var(--color-text);
}

[data-theme="dark"] main .ss-filters__control--readonly {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-muted);
}

[data-theme="dark"] main .events-filters__control:focus,
[data-theme="dark"] main .ss-filters__control:focus,
[data-theme="dark"] main .ss-filters__select-wrap:focus-within {
  border-color: var(--color-link);
  box-shadow: 0 0 0 2px rgba(55, 140, 200, 0.25);
}

[data-theme="dark"] main .ss-filters__control--select:focus {
  box-shadow: none;
}

[data-theme="dark"] main .ss-filters__select-wrap .ss-icon path {
  stroke: var(--color-muted);
}

[data-theme="dark"] main .events-btn--ghost,
[data-theme="dark"] main .ss-btn--ghost {
  background: var(--color-card-elevated);
  color: var(--color-text);
  border-color: var(--color-border);
}

[data-theme="dark"] main .events-btn--ghost:hover,
[data-theme="dark"] main .ss-btn--ghost:hover {
  background: var(--color-card);
  color: var(--color-text);
  border-color: var(--color-border);
}

[data-theme="dark"] main .events-empty {
  color: var(--color-muted);
  background: var(--color-card);
}

/* Счётчик у заголовка списка (мероприятия, школы, тренеры и т.д.) */
[data-theme="dark"] main .ss-list-head__title {
  color: var(--color-navy);
}

[data-theme="dark"] main .ss-list-head__badge {
  background: var(--color-accent-soft);
  color: var(--color-link);
  border: 1px solid rgba(94, 184, 245, 0.28);
}

/* ——— Карточки списков ——— */
[data-theme="dark"] main :is(
  .ss-card,
  .events-card,
  .al-card,
  .school-card,
  .athlete-card,
  .coach-card,
  .venue-card
) {
  background-color: var(--color-card);
  border-color: var(--color-border);
  color: var(--color-text);
  box-shadow: var(--shadow);
}

[data-theme="dark"] main .ss-card__title,
[data-theme="dark"] main .events-card__name,
[data-theme="dark"] main .al-card__name,
[data-theme="dark"] main .al-card__headline {
  color: var(--color-navy);
}

[data-theme="dark"] main .ss-card__meta,
[data-theme="dark"] main .events-card .athlete-profile-meta,
[data-theme="dark"] main .al-card__meta-label {
  color: var(--color-profile-meta);
}

[data-theme="dark"] main .events-card__sport-row {
  border-top-color: var(--color-border);
}

[data-theme="dark"] main .events-card__media,
[data-theme="dark"] main .events-card__placeholder,
[data-theme="dark"] main .al-card__photo-wrap,
[data-theme="dark"] main .ss-card__photo--cover,
[data-theme="dark"] main .ss-card__photo--no-cover {
  background-color: var(--color-card-elevated);
}

[data-theme="dark"] main .events-card__placeholder {
  background: #13243e url("/static/images/placeholders/champ.svg") center/42% no-repeat;
}

[data-theme="dark"] main .al-card__photo--placeholder {
  background: #1a2840 url("/static/images/placeholders/man.svg") center/62% no-repeat;
}

[data-theme="dark"] main .events-tag--status-open {
  background: rgba(34, 120, 90, 0.22);
  color: #7fd4b8;
}

[data-theme="dark"] main .events-tag--status-closed {
  background: rgba(180, 120, 40, 0.2);
  color: #ffc878;
}

[data-theme="dark"] main .events-tag--status-finished,
[data-theme="dark"] main .events-tag--status-default,
[data-theme="dark"] main .events-tag--age {
  background: var(--color-card-elevated);
  color: var(--color-muted);
}

[data-theme="dark"] main .events-tag--sport,
[data-theme="dark"] main .al-card__tag,
[data-theme="dark"] main .ss-tag,
[data-theme="dark"] main .ss-badge--awards,
[data-theme="dark"] main .ss-badge--price {
  background: rgba(55, 140, 200, 0.2);
  color: var(--color-link);
}

[data-theme="dark"] main .ss-badge--awards .ss-icon path,
[data-theme="dark"] main .ss-badge--price .ss-icon path {
  stroke: var(--color-link);
}

[data-theme="dark"] main .ss-badge--rating {
  background: rgba(255, 163, 71, 0.18);
  color: var(--color-orange);
}

[data-theme="dark"] main .ss-badge--rating .ss-icon path {
  stroke: var(--color-orange);
}

[data-theme="dark"] main .ss-filters__map,
[data-theme="dark"] main .ss-card__map-btn {
  color: var(--color-link);
}

[data-theme="dark"] main .ss-filters__map:hover,
[data-theme="dark"] main .ss-card__map-btn:hover {
  color: #9ed4f5;
}

[data-theme="dark"] main .ss-filters__map .ss-icon path,
[data-theme="dark"] main .ss-card__map-btn .ss-icon path {
  stroke: currentColor !important;
}

[data-theme="dark"] main .al-card__meta-box {
  background: var(--color-card-elevated);
}

[data-theme="dark"] main .al-card__meta-value {
  color: var(--color-text);
}

/* ——— Публичная страница школы ——— */
[data-theme="dark"] main .spd-hero-shell {
  background: transparent;
}

[data-theme="dark"] main .spd-hero,
[data-theme="dark"] main .spd-stats,
[data-theme="dark"] main .spd-section,
[data-theme="dark"] main .spd-awards-head,
[data-theme="dark"] main .spd-coach-card,
[data-theme="dark"] main .spd-team-card,
[data-theme="dark"] main .spd-schedule-block,
[data-theme="dark"] main .spd-game-card,
[data-theme="dark"] main .spd-branch-card,
[data-theme="dark"] main .spd-enroll-card,
[data-theme="dark"] main .spd-student-card,
[data-theme="dark"] main .spd-master-card {
  background-color: var(--color-card);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] main .spd-hero__title,
[data-theme="dark"] main .spd-section__title,
[data-theme="dark"] main .spd-awards-head__title {
  color: var(--color-navy);
}

[data-theme="dark"] main .spd-meta,
[data-theme="dark"] main .spd-about,
[data-theme="dark"] main .spd-awards-head__school,
[data-theme="dark"] main .spd-stat__label,
[data-theme="dark"] main .spd-coach-card__meta {
  color: var(--color-muted);
}

[data-theme="dark"] main .spd-meta__value,
[data-theme="dark"] main .spd-stat__value {
  color: var(--color-text);
}

[data-theme="dark"] main .spd-meta {
  background: var(--color-card-elevated);
}

[data-theme="dark"] main .spd-stat:hover,
[data-theme="dark"] main .spd-stat--current {
  background: var(--color-card-elevated);
}

[data-theme="dark"] main .spd-tag {
  background: rgba(55, 140, 200, 0.2);
  color: var(--color-link);
}

[data-theme="dark"] main .spd-tags--on-cover .spd-tag {
  background: rgba(22, 32, 48, 0.92);
  color: #9ed4f5;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] main .spd-btn--primary {
  background: #037cbd;
  color: #fff;
}

[data-theme="dark"] main .spd-btn--primary:hover {
  background: #005d96;
  color: #fff;
}

[data-theme="dark"] main .spd-btn--ghost {
  color: #ffa629;
}

[data-theme="dark"] main .spd-btn--ghost:hover {
  color: #ffc878;
}

[data-theme="dark"] main .spd-hero__logo {
  background: var(--color-card-elevated);
}

[data-theme="dark"] main .spd-coach-card {
  border: 1px solid var(--color-border);
  box-shadow: none;
}

[data-theme="dark"] main .spd-coach-card--head {
  border-color: rgba(94, 184, 245, 0.45);
  box-shadow: 0 0 0 2px rgba(94, 184, 245, 0.22);
}

[data-theme="dark"] main .spd-coach-card__name {
  color: var(--color-navy);
}

[data-theme="dark"] main .spd-coach-card__role {
  color: var(--color-muted);
}

[data-theme="dark"] main .spd-coach-card__photo-wrap {
  background: var(--color-card-elevated);
}

[data-theme="dark"] main .spd-advantage__title {
  color: var(--color-text);
}

[data-theme="dark"] main .spd-advantage__icon {
  background: var(--color-card-elevated);
  color: var(--color-link);
}

[data-theme="dark"] main .spd-advantage__visual {
  background: var(--color-card-elevated);
}

[data-theme="dark"] main .spd-advantage__visual:has(.spd-advantage__photo) {
  background: var(--color-card-elevated);
}

[data-theme="dark"] main .spd-branch {
  background: var(--color-card);
  border-color: var(--color-border);
}

[data-theme="dark"] main .spd-branch__name {
  color: var(--color-navy);
}

[data-theme="dark"] main .spd-branch__meta {
  color: var(--color-muted);
}

[data-theme="dark"] main .spd-branch__map-btn {
  border-top-color: var(--color-border);
}

[data-theme="dark"] main .spd-branch__photo,
[data-theme="dark"] main .spd-branch__photo--empty {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

/* Вкладка «Команды» — как в просмотре профиля тренера */
[data-theme="dark"] main #spd-teams .spd-team-roster__title,
[data-theme="dark"] main #spd-teams .spd-team-kits__title,
[data-theme="dark"] main #spd-teams .spd-public-team-head__name {
  color: var(--color-navy);
}

[data-theme="dark"] main #spd-teams .team-expanded-card {
  background: var(--color-card);
  box-shadow: none;
  border: 1px solid var(--color-border);
}

[data-theme="dark"] main #spd-teams .spd-team-stat__value {
  color: var(--color-text);
}

[data-theme="dark"] main #spd-teams .spd-public-team-head__crest {
  background: var(--color-card-elevated);
}

[data-theme="dark"] main #spd-teams .spd-team-staff__role {
  color: var(--color-muted);
}

[data-theme="dark"] main #spd-teams .spd-team-staff__name {
  color: var(--color-text);
}

[data-theme="dark"] main #spd-teams .spd-team-staff__photo--empty {
  background: #1a2840 url("/static/images/placeholders/man.svg") center/72% no-repeat;
}

[data-theme="dark"] main #spd-teams .spd-team-kit__label {
  color: var(--color-link);
}

[data-theme="dark"] main #spd-teams .kit-figure-frame {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

/* Создание / редактирование команды (тренер, школа) */
[data-theme="dark"] main .team-create-page .card {
  background: var(--color-card);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] main .team-create-page h1,
[data-theme="dark"] main .team-create-page .team-create-section h2 {
  color: var(--color-navy);
}

[data-theme="dark"] main .team-create-page .team-create-section {
  border-top-color: var(--color-border);
}

[data-theme="dark"] main .team-create-page .page-hint {
  color: var(--color-muted);
}

[data-theme="dark"] main .team-create-page .team-create-fields label,
[data-theme="dark"] main .team-create-page .team-create-school-readonly {
  color: var(--color-text);
}

[data-theme="dark"] main .team-create-page .team-create-school-readonly {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] main .team-create-page .team-create-fields input,
[data-theme="dark"] main .team-create-page .team-create-fields select {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] main .team-create-page .team-create-fields select {
  color-scheme: dark;
  appearance: auto;
  -webkit-appearance: menulist;
}

[data-theme="dark"] main .team-create-page .crest-upload {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] main .team-create-page .crest-upload:hover {
  background: rgba(55, 140, 200, 0.12);
  border-color: var(--color-link);
}

[data-theme="dark"] main .team-create-page .crest-upload__placeholder {
  color: var(--color-link);
}

[data-theme="dark"] main .team-create-page .kit-block {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] main .team-create-page .kit-block h3 {
  color: var(--color-navy);
}

[data-theme="dark"] main .team-create-page .kit-figure-frame {
  background: var(--color-card);
  border-color: var(--color-border);
}

[data-theme="dark"] main .team-create-page .kit-palette-row__label,
[data-theme="dark"] main .team-create-page .kit-palette-row label {
  color: var(--color-text);
}

[data-theme="dark"] main .team-create-page .kit-palette-rows--proto .kit-swatch.is-picked,
[data-theme="dark"] main .team-create-page .kit-swatch.is-picked {
  box-shadow: 0 0 0 1px var(--color-card), 0 0 0 3px var(--color-link);
}

[data-theme="dark"] main .team-create-page .kit-swatch--light {
  box-shadow: 0 0 0 1px var(--color-border);
}

[data-theme="dark"] main #spd-teams .trainer-roster-table {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] main #spd-teams .trainer-roster-table th {
  background: var(--color-card);
  color: var(--color-muted);
  border-color: var(--color-border);
}

[data-theme="dark"] main #spd-teams .trainer-roster-table td {
  color: var(--color-text);
  border-color: var(--color-border);
}

[data-theme="dark"] main #spd-teams .trainer-roster-table tbody tr:hover {
  background: rgba(55, 140, 200, 0.08);
}

[data-theme="dark"] main #spd-teams .formation-showcase__summary,
[data-theme="dark"] main #spd-teams .formation-showcase__details--open .formation-showcase__summary {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] main #spd-teams .formation-showcase__summary-meta,
[data-theme="dark"] main #spd-teams .formation-showcase__pitch-hint,
[data-theme="dark"] main #spd-teams .formation-showcase__details--open .formation-showcase__pitch-hint {
  color: var(--color-muted);
}

[data-theme="dark"] main #spd-teams .formation-showcase__frame {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] main #spd-teams .formation-showcase__title,
[data-theme="dark"] main #spd-teams .formation-showcase__field label {
  color: var(--color-text);
}

[data-theme="dark"] main #spd-teams .team-tag--age {
  background: var(--color-card-elevated);
  color: var(--color-muted);
}

[data-theme="dark"] main .spd-teams-empty {
  background: var(--color-card);
  border-color: var(--color-border);
  color: var(--color-muted);
}

/* Вкладка «Игры» — фон и карточки как в расписании турнира */
[data-theme="dark"] main .spd-games-board {
  background: var(--color-card);
  border: 1px solid var(--color-border);
  box-shadow: none;
}

[data-theme="dark"] main .spd-games-board .tp-fig-schedule-empty {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-muted);
}

[data-theme="dark"] main .spd-games-empty {
  color: var(--color-muted);
}

[data-theme="dark"] main .spd-games-board .tp-gpc {
  --tp-gpc-azure: rgba(55, 140, 200, 0.2);
  --tp-gpc-sorento: #6eb8e8;
  --tp-gpc-mouse: #1a2433;
  --tp-gpc-line: #2e3d52;
  --tp-gpc-body: #c8d6e3;
  --tp-gpc-gray: #8fa3b8;
  --tp-gpc-river: #6eb8e8;
  --tp-gpc-txt-gray: #8fa3b8;
}

[data-theme="dark"] main .spd-games-board .tp-gpc-cell,
[data-theme="dark"] main .spd-games-board .tp-gpc-cell__crest {
  background: var(--tp-gpc-mouse);
  border-color: var(--tp-gpc-line);
}

[data-theme="dark"] main .spd-games-board .tp-gpc-cell__name {
  color: var(--tp-gpc-body);
}

[data-theme="dark"] main .spd-games-board .tp-gpc-mid {
  background: var(--color-card-elevated);
  outline-color: var(--tp-gpc-line);
}

[data-theme="dark"] main .spd-games-board .tp-gpc-mid__clock,
[data-theme="dark"] main .spd-games-board .tp-gpc-mid__period,
[data-theme="dark"] main .spd-games-board .tp-gpc-mid__pen {
  color: var(--fig-muted, #8fa3b8);
}

[data-theme="dark"] main .spd-games-board .tp-gpc-mid__score {
  color: var(--color-text);
}

[data-theme="dark"] main .spd-games-board .tp-gpc-meta__txt {
  color: var(--tp-gpc-gray);
}

[data-theme="dark"] main .spd-games-board .tp-gpc-pill--negative {
  background: rgba(180, 50, 50, 0.2);
  color: #f5a8a8;
}

[data-theme="dark"] main .spd-games-board .tp-res-subtabs {
  background: transparent;
  border-bottom-color: var(--color-border);
}

/* ——— Публичная страница объекта ——— */
[data-theme="dark"] main .vpd-hero-shell,
[data-theme="dark"] main .vpd-section,
[data-theme="dark"] main .vpd-card,
[data-theme="dark"] main .vpd-schedule-item {
  background-color: var(--color-card);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] main .vpd-hero__title,
[data-theme="dark"] main .vpd-section__title {
  color: var(--color-navy);
}

[data-theme="dark"] main .vpd-tag--sport {
  background: rgba(55, 140, 200, 0.22);
  color: var(--color-link);
}

[data-theme="dark"] main .vpd-tag--service {
  background: rgba(255, 163, 71, 0.18);
  color: var(--color-orange);
}

[data-theme="dark"] main .vpd-meta--card {
  background: var(--color-card-elevated);
  border: 1px solid var(--color-border);
}

[data-theme="dark"] main .vpd-meta__label {
  color: var(--color-muted);
}

[data-theme="dark"] main .vpd-meta__value {
  color: var(--color-text);
}

[data-theme="dark"] main .vpd-meta__sub {
  color: var(--color-muted);
}

[data-theme="dark"] main .vpd-hero__preview,
[data-theme="dark"] main .vpd-hero__preview-placeholder {
  background: var(--color-card-elevated);
}

[data-theme="dark"] main .vpd-features {
  background: var(--color-card);
  border-top-color: var(--color-border);
}

[data-theme="dark"] main .vpd-feature {
  background: var(--color-card-elevated);
  border: 1px solid var(--color-border);
}

[data-theme="dark"] main .vpd-feature__label {
  color: var(--color-text);
}

[data-theme="dark"] main .vpd-feature__icon path {
  stroke: var(--color-link);
}

[data-theme="dark"] main .vpd-media-head__all {
  color: var(--color-link);
}

[data-theme="dark"] main .vpd-section__link {
  color: var(--color-link);
}

/* ——— Кабинет тренера / организатор / заявки ——— */
[data-theme="dark"] main .trainer-sidebar__link {
  color: var(--color-text);
}

[data-theme="dark"] main .trainer-sidebar__link:hover {
  background: var(--color-card-elevated);
}

[data-theme="dark"] main .trainer-sidebar__link.is-active {
  background: var(--color-accent-soft);
  border-left-color: var(--color-link);
  color: var(--color-link);
}

[data-theme="dark"] main .trainer-sidebar__group {
  border-top-color: var(--color-border);
}

[data-theme="dark"] main .trainer-sidebar__group .sidebar-group__label {
  color: var(--color-muted);
}

/* Боковое меню кабинета (вне main: владелец школы, объекта) */
[data-theme="dark"] .sidebar {
  background: var(--color-card);
  border: 1px solid var(--color-border);
  box-shadow: var(--shadow);
}

[data-theme="dark"] .sidebar a,
[data-theme="dark"] .sidebar .trainer-sidebar__link {
  color: var(--color-text);
}

[data-theme="dark"] .sidebar a:hover,
[data-theme="dark"] .sidebar .trainer-sidebar__link:hover {
  background: var(--color-card-elevated);
  color: var(--color-text);
}

[data-theme="dark"] .sidebar a.is-active,
[data-theme="dark"] .sidebar .trainer-sidebar__link.is-active {
  background: var(--color-accent-soft);
  border-left-color: var(--color-link);
  color: var(--color-link);
}

[data-theme="dark"] .sidebar .trainer-sidebar__group {
  border-top-color: var(--color-border);
}

[data-theme="dark"] .sidebar .sidebar-group__label {
  color: var(--color-muted);
}

[data-theme="dark"] .sidebar .sidebar-group.is-open .sidebar-group__label {
  color: var(--color-navy);
}

[data-theme="dark"] main :is(
  .trainer-profile-card,
  .trainer-teams-card,
  .trainer-team-row,
  .trainer-team-block__head,
  .trainer-team-block__body-inner,
  .team-expanded-card,
  .trainer-dash-tile,
  .trainer-comp-page,
  .trainer-awards-page,
  .organizer-awards-page,
  .organizer-wizard__panel,
  .organizer-tournament-card,
  .org-sport-pick__card,
  .tapp-pick-intro,
  .tapp-pick-team-card,
  .tapp-step-card,
  .figma-schedule-page,
  .pf-page,
  .pitch-assign-card,
  .training-session-card,
  .trainer-notify-card
) {
  background-color: var(--color-card);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] main .trainer-dash-tile--hero {
  background: linear-gradient(135deg, rgba(55, 140, 200, 0.22) 0%, var(--color-card) 55%, var(--color-bg) 100%);
  border-color: var(--color-border);
}

[data-theme="dark"] main .trainer-profile-card__name,
[data-theme="dark"] main .trainer-team-block__name,
[data-theme="dark"] main .trainer-dash-tile__title,
[data-theme="dark"] main .trainer-section-head h2 {
  color: var(--color-navy);
}

[data-theme="dark"] main .trainer-profile-card__meta,
[data-theme="dark"] main .trainer-dash-hero__date,
[data-theme="dark"] main .trainer-dash-hero__summary,
[data-theme="dark"] main .trainer-dash-list__meta,
[data-theme="dark"] main .trainer-dash-list__team,
[data-theme="dark"] main .trainer-dash-tile__hint {
  color: var(--color-muted);
}

[data-theme="dark"] main .trainer-dash-tile__heading {
  color: var(--color-navy);
}

[data-theme="dark"] main .trainer-dash-list__main {
  color: var(--color-text);
}

[data-theme="dark"] main .trainer-dash-list__time {
  color: var(--color-link);
}

[data-theme="dark"] main .trainer-dash-list__item {
  border-bottom-color: var(--color-border-subtle);
}

[data-theme="dark"] main .trainer-dash-hero__link,
[data-theme="dark"] main .trainer-dash-tile__footer-link,
[data-theme="dark"] main .trainer-dash-tile__head-link {
  color: var(--color-link);
}

[data-theme="dark"] main .athlete-training-open-btn:hover {
  background: var(--color-card-elevated);
}

[data-theme="dark"] main .athlete-comp-invite-card {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] main .athlete-comp-invite-card__media {
  background: var(--color-card);
}

[data-theme="dark"] main .athlete-comp-invite-card__name {
  color: var(--color-text);
}

[data-theme="dark"] main .athlete-comp-invite-card__dates {
  color: var(--color-muted);
}

[data-theme="dark"] main .athlete-comp-invite-card__app-status {
  color: #5ee0b0;
}

[data-theme="dark"] main .athlete-comp-invite-card__btn--no {
  background: var(--color-card);
  color: var(--color-text);
  border-color: var(--color-border);
}

[data-theme="dark"] main .athlete-comp-invite-card__btn--no:hover {
  background: var(--color-card-elevated);
  color: var(--color-text);
}

[data-theme="dark"] main .trainer-stat-pill {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] main .trainer-stat-pill em {
  color: var(--color-muted);
}

[data-theme="dark"] main .btn-edit-team {
  background: var(--color-card-elevated);
  color: var(--color-link);
  border-color: var(--color-link);
}

[data-theme="dark"] main .btn-edit-team:hover {
  background: var(--color-accent-soft);
}

[data-theme="dark"] main .trainer-awards-empty,
[data-theme="dark"] main .organizer-awards-empty,
[data-theme="dark"] main .page-hint,
[data-theme="dark"] main .trainer-dash-empty {
  color: var(--color-muted);
}

[data-theme="dark"] main .trainer-awards-empty {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] main table {
  color: var(--color-text);
}

[data-theme="dark"] main th {
  background: var(--color-card-elevated);
  color: var(--color-navy);
  border-color: var(--color-border);
}

[data-theme="dark"] main td {
  border-color: var(--color-border-subtle);
}

[data-theme="dark"] main tr:nth-child(even) {
  background: rgba(255, 255, 255, 0.02);
}

/* ——— Кабинет: таблица состава и форма заявки ——— */
[data-theme="dark"] main .trainer-roster-table {
  background: var(--color-card);
  color: var(--color-text);
}

[data-theme="dark"] main .trainer-roster-table th {
  background: var(--color-card-elevated);
  color: var(--color-muted);
  border-bottom-color: var(--color-border);
}

[data-theme="dark"] main .trainer-roster-table td {
  color: var(--color-text);
  border-bottom-color: var(--color-border-subtle);
}

[data-theme="dark"] main .trainer-roster-table tbody tr:hover {
  background: var(--color-card-elevated);
}

[data-theme="dark"] main .trainer-roster-table td.trainer-athletes-empty,
[data-theme="dark"] main .trainer-athletes-empty {
  color: var(--color-muted);
}

/* Спортсмен — «Моя команда» (состав) */
[data-theme="dark"] main .athlete-team-card {
  border-color: var(--color-border);
  background: var(--color-card);
}

[data-theme="dark"] main .athlete-team-banner {
  background: linear-gradient(135deg, var(--color-card-elevated) 0%, var(--color-card) 55%);
  border-bottom-color: var(--color-border);
}

[data-theme="dark"] main .athlete-team-banner__crest {
  border-color: var(--color-border);
  background: var(--color-card-elevated);
}

[data-theme="dark"] main .athlete-team-banner__crest--placeholder {
  background: linear-gradient(135deg, rgba(62, 140, 198, 0.28), rgba(62, 140, 198, 0.12));
  border-color: var(--color-border);
}

[data-theme="dark"] main .athlete-team-banner__meta {
  color: var(--color-muted);
}

[data-theme="dark"] main .athlete-team-card .trainer-roster-table {
  background: var(--color-card);
}

[data-theme="dark"] main .athlete-team-card .trainer-roster-table th {
  background: var(--color-card-elevated);
  color: var(--color-muted);
  border-bottom-color: var(--color-border);
}

[data-theme="dark"] main .athlete-team-card .trainer-roster-table td {
  color: var(--color-text);
  border-bottom-color: var(--color-border-subtle);
}

[data-theme="dark"] main .athlete-team-card .trainer-roster-table tbody tr {
  background: transparent;
}

[data-theme="dark"] main .athlete-team-card .trainer-athletes-table__row:hover,
[data-theme="dark"] main .athlete-team-card .trainer-athletes-table__row:focus {
  background: var(--color-card-elevated);
}

[data-theme="dark"] main .athlete-team-card .trainer-athletes-table__row--self {
  background: rgba(62, 140, 198, 0.14);
}

[data-theme="dark"] main .athlete-team-card .trainer-athletes-table__row--self:hover,
[data-theme="dark"] main .athlete-team-card .trainer-athletes-table__row--self:focus {
  background: rgba(62, 140, 198, 0.22);
}

[data-theme="dark"] main .athlete-team-card .trainer-athletes-table__name {
  color: var(--color-text);
}

[data-theme="dark"] main .athlete-team-card .trainer-athletes-table__idx {
  color: var(--color-muted);
}

[data-theme="dark"] main .athlete-team-card .trainer-athletes-th__title,
[data-theme="dark"] main .athlete-team-card .trainer-athletes-th--num {
  color: var(--color-muted);
}

[data-theme="dark"] main .athlete-team-card .trainer-athletes-sort {
  color: var(--color-muted);
}

[data-theme="dark"] main .athlete-team-card .trainer-athletes-sort:hover {
  color: var(--color-link);
  background: rgba(62, 140, 198, 0.18);
  border-color: var(--color-border);
}

[data-theme="dark"] main .athlete-team-card .trainer-athletes-sort.is-active {
  color: var(--color-link);
  background: rgba(62, 140, 198, 0.24);
  border-color: var(--color-border);
}

[data-theme="dark"] main .athlete-team-you-label {
  color: var(--color-link);
}

[data-theme="dark"] main .tournament-application-steps {
  --tapp-step-bg-pending: var(--color-card-elevated);
  --tapp-step-text-pending: var(--color-muted);
  --tapp-step-text-label: var(--color-text);
  --tapp-step-chev: var(--color-muted);
  --tapp-step-blue: var(--color-link);
}

[data-theme="dark"] main .tournament-application-steps__chev {
  color: var(--color-muted);
}

[data-theme="dark"] main .tournament-application-steps__step:not(.is-done):not(.is-current):not(.tournament-application-steps__final) .tournament-application-steps__label {
  color: var(--color-muted);
}

[data-theme="dark"] main .tournament-application-steps__step.is-done .tournament-application-steps__label,
[data-theme="dark"] main .tournament-application-steps__step.is-current .tournament-application-steps__label,
[data-theme="dark"] main .tournament-application-steps__final .tournament-application-steps__label {
  color: var(--color-text);
}

[data-theme="dark"] main .tournament-application-head__title,
[data-theme="dark"] main .tournament-application-block__title {
  color: var(--color-navy);
}

[data-theme="dark"] main .tournament-application-head__sub,
[data-theme="dark"] main .tournament-application-field span {
  color: var(--color-muted);
}

[data-theme="dark"] main .tournament-application-static {
  color: var(--color-text);
}

[data-theme="dark"] main .tournament-application-tag {
  background: var(--color-accent-soft);
  color: var(--color-link);
  border: 1px solid rgba(94, 184, 245, 0.28);
}

[data-theme="dark"] main .tournament-application-input,
[data-theme="dark"] main .tournament-application-select {
  background: var(--color-input-bg);
  border-color: var(--color-input-border);
  color: var(--color-text);
}

[data-theme="dark"] main .tournament-application-btn--secondary {
  background: var(--color-card-elevated);
  color: var(--color-text);
  border-color: var(--color-border);
}

[data-theme="dark"] main .tournament-application-btn--ghost {
  background: transparent;
  color: var(--color-text);
  border-color: var(--color-border);
}

[data-theme="dark"] main .tournament-application-footer {
  border-top-color: var(--color-border);
}

[data-theme="dark"] main .tournament-application-roster-error {
  background: rgba(233, 66, 76, 0.12);
  border-color: rgba(233, 66, 76, 0.35);
  color: #f5a8ad;
}

[data-theme="dark"] main .tournament-application-crest__ph {
  background: linear-gradient(135deg, var(--color-card-elevated), var(--color-card));
  border-color: var(--color-border);
}

[data-theme="dark"] main .tournament-application-avatar--ph {
  background: var(--color-card-elevated);
}

/* ——— Календари тренировок и бронирования ——— */
[data-theme="dark"] main .training-cal {
  border-color: var(--color-border);
}

[data-theme="dark"] main .training-cal-mode__btn {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] main .training-cal-mode__btn:hover {
  background: var(--color-card);
  border-color: var(--color-link);
}

[data-theme="dark"] main .training-cal-mode__btn.is-active {
  background: var(--color-accent-soft);
  border-color: var(--color-link);
  color: var(--color-link);
}

[data-theme="dark"] main .training-cal-nav__arrow {
  background: var(--color-card-elevated);
  color: var(--color-navy);
}

[data-theme="dark"] main .training-cal-nav__arrow:hover {
  background: var(--color-card);
}

[data-theme="dark"] main .training-cal-nav__title {
  color: var(--color-navy);
}

[data-theme="dark"] main .training-cal-legend__item {
  color: var(--color-muted);
}

[data-theme="dark"] main .training-cal-legend__item--mine::before {
  background: rgba(55, 140, 200, 0.35);
  border-color: var(--color-link);
}

[data-theme="dark"] main .training-cal-legend__item--school::before {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] main .training-cal__weekdays {
  background: #1a3a52;
  color: #e6edf3;
}

[data-theme="dark"] main .training-cal__row {
  border-bottom-color: var(--color-border);
}

[data-theme="dark"] main .training-cal__cell {
  background: var(--color-card);
  border-right-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] main .training-cal__cell--muted {
  background: var(--color-input-bg);
  color: var(--color-muted);
}

[data-theme="dark"] main .training-cal__daynum {
  color: var(--color-link);
}

[data-theme="dark"] main .training-cal__cell--muted .training-cal__daynum {
  color: var(--color-muted);
}

[data-theme="dark"] main .training-cal__item {
  background: rgba(55, 140, 200, 0.22);
  border-color: rgba(94, 184, 245, 0.45);
  color: var(--color-text);
}

[data-theme="dark"] main .training-cal__item:hover,
[data-theme="dark"] main .training-cal__item:focus-within {
  background: rgba(55, 140, 200, 0.32);
}

[data-theme="dark"] main .training-cal__item--mine {
  background: rgba(55, 140, 200, 0.28);
  border-color: var(--color-link);
  box-shadow: inset 3px 0 0 var(--color-link);
  color: var(--color-text);
}

[data-theme="dark"] main .training-cal__item--mine:hover,
[data-theme="dark"] main .training-cal__item--mine:focus-within {
  background: rgba(55, 140, 200, 0.38);
}

[data-theme="dark"] main .training-cal__item--school-other {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-muted);
}

[data-theme="dark"] main .training-cal__item--school-other:hover,
[data-theme="dark"] main .training-cal__item--school-other:focus-within {
  background: var(--color-card);
  color: var(--color-text);
}

[data-theme="dark"] main .spd-calendar-wrap .training-cal__item--readonly,
[data-theme="dark"] main .vpd-calendar-wrap .training-cal__item--readonly {
  background: rgba(55, 140, 200, 0.18);
  color: var(--color-text);
}

[data-theme="dark"] main .vpd-calendar-wrap .vpd-cal-booking-mine {
  background: rgba(55, 140, 200, 0.28);
  border-color: var(--color-link);
  color: var(--color-text);
}

[data-theme="dark"] main .vpd-calendar-wrap .vpd-cal-booking-mine:hover {
  background: rgba(55, 140, 200, 0.38);
  border-color: var(--color-link);
}

[data-theme="dark"] main .vpd-cal-book-slot {
  background: var(--color-input-bg);
  border-color: var(--color-border);
  color: var(--color-link);
}

[data-theme="dark"] main .vpd-cal-book-slot:hover {
  background: var(--color-accent-soft);
  border-color: var(--color-link);
}

[data-theme="dark"] main .spd-hall-tab:not(.is-active),
[data-theme="dark"] main .vpd-pitch-tabs .spd-hall-tab:not(.is-active) {
  background: var(--color-card-elevated);
  color: var(--color-link);
}

[data-theme="dark"] main a.spd-hall-tab.is-active,
[data-theme="dark"] main .spd-hall-tab.is-active,
[data-theme="dark"] main .vpd-pitch-tabs .spd-hall-tab.is-active {
  background: #037cbd;
  color: #fff;
}

[data-theme="dark"] main a.spd-hall-tab.is-active:hover,
[data-theme="dark"] main .spd-hall-tab.is-active:hover,
[data-theme="dark"] main .vpd-pitch-tabs .spd-hall-tab.is-active:hover {
  background: #005d96;
  color: #fff;
}

[data-theme="dark"] main .vpd-tag--price,
[data-theme="dark"] main .vpd-tag--price-base {
  background: var(--color-accent-soft);
  color: var(--color-link);
}

[data-theme="dark"] main .vpd-pitch-prices__pitch {
  color: var(--color-muted);
}

/* ——— Профили пользователей ——— */
[data-theme="dark"] main .trainer-profile-card__photo-placeholder {
  background: #1a2840 url("/static/images/placeholders/man.svg") center/68% no-repeat;
  border-color: var(--color-border);
}

[data-theme="dark"] main .athlete-profile-meta--row2 {
  border-top-color: var(--color-border-subtle);
}

[data-theme="dark"] main .athlete-profile-meta,
[data-theme="dark"] main .athlete-profile-meta__icon,
[data-theme="dark"] main .athlete-profile-pride {
  color: var(--color-profile-meta);
}

[data-theme="dark"] main .trainer-profile-card__edit {
  color: var(--color-link);
}

[data-theme="dark"] main .profile-verification-badge__path {
  fill: var(--color-border);
}

[data-theme="dark"] main .profile-verification-badge--verified .profile-verification-badge__path {
  fill: var(--color-link);
}

[data-theme="dark"] main .referee-profile-card {
  background: var(--color-card);
}

[data-theme="dark"] main .referee-profile-card__name {
  color: var(--color-navy);
}

[data-theme="dark"] main .referee-profile-card__photo-ph {
  background: linear-gradient(135deg, var(--color-card-elevated), var(--color-card));
  border-color: var(--color-border);
}

[data-theme="dark"] main .referee-stat-pill {
  background: var(--color-accent-soft);
  color: var(--color-text);
}

[data-theme="dark"] main .referee-stat-pill em {
  color: var(--color-muted);
}

[data-theme="dark"] main .referee-stat-pill strong {
  color: var(--color-navy);
}

/* Страница «Настройка профиля» (/dashboard/profile/) */
[data-theme="dark"] main .pf-shell {
  background: var(--color-bg);
}

[data-theme="dark"] main .pf-nav {
  background: var(--color-card);
  border-right-color: var(--color-border);
}

[data-theme="dark"] main .pf-nav__item {
  color: var(--color-muted);
}

[data-theme="dark"] main .pf-nav__item:hover {
  background: var(--color-card-elevated);
  color: var(--color-navy);
}

[data-theme="dark"] main .pf-nav__item--active {
  background: var(--color-accent-soft);
  color: var(--color-link);
}

[data-theme="dark"] main .pf-page__title,
[data-theme="dark"] main .pf-section__title {
  color: var(--color-navy);
}

[data-theme="dark"] main .pf-label,
[data-theme="dark"] main .pf-radio-label,
[data-theme="dark"] main .pf-checkbox-row {
  color: var(--color-text);
}

[data-theme="dark"] main .pf-form input:not(:disabled):not([type="checkbox"]):not([type="radio"]),
[data-theme="dark"] main .pf-form select,
[data-theme="dark"] main .pf-form textarea,
[data-theme="dark"] main .pf-input {
  background: var(--color-input-bg);
  border-color: var(--color-input-border);
  color: var(--color-text);
}

[data-theme="dark"] main .pf-form input::placeholder,
[data-theme="dark"] main .pf-form textarea::placeholder {
  color: var(--color-muted);
}

[data-theme="dark"] main .pf-input--disabled,
[data-theme="dark"] main .pf-form input:disabled {
  background: var(--color-card-elevated) !important;
  color: var(--color-muted) !important;
}

[data-theme="dark"] main .pf-avatar {
  background: var(--color-card-elevated);
  border-color: var(--color-link);
}

[data-theme="dark"] main .pf-avatar__upload-text,
[data-theme="dark"] main .pf-link {
  color: var(--color-link);
}

[data-theme="dark"] main .pf-section {
  border-top-color: var(--color-border);
}

[data-theme="dark"] main .pf-hint,
[data-theme="dark"] main .pf-file-chosen__label,
[data-theme="dark"] main .profile-password-rules-hint {
  color: var(--color-muted);
}

[data-theme="dark"] main .pf-file-chosen__name {
  color: var(--color-text);
}

[data-theme="dark"] main .pf-file-chosen,
[data-theme="dark"] main .pf-dropzone {
  background: var(--color-input-bg);
  border-color: var(--color-input-border);
  color: var(--color-text);
}

[data-theme="dark"] main .pf-dropzone:hover {
  background: var(--color-accent-soft);
  border-color: var(--color-link);
}

[data-theme="dark"] main .pf-info-banner {
  background: var(--color-accent-soft);
}

[data-theme="dark"] main .pf-info-banner p {
  color: var(--color-text);
}

[data-theme="dark"] main .pf-docs-verified {
  background: rgba(34, 120, 80, 0.2);
  border-color: rgba(34, 120, 80, 0.4);
  color: #8fd4b0;
}

[data-theme="dark"] main .pf-alert--success {
  background: rgba(34, 120, 80, 0.2);
  color: #8fd4b0;
  border-color: rgba(34, 120, 80, 0.35);
}

[data-theme="dark"] main .pf-actions,
[data-theme="dark"] main .profile-password-modal .profile-password-form__actions {
  border-top-color: var(--color-border);
}

[data-theme="dark"] main .btn-outline-orange {
  background: transparent;
  color: var(--color-orange);
  border-color: var(--color-orange);
}

[data-theme="dark"] main .btn-outline-orange:hover {
  background: rgba(255, 140, 42, 0.12);
}

[data-theme="dark"] main .pf-btn--outline {
  color: var(--color-link);
  border-color: var(--color-link);
}

[data-theme="dark"] main .pf-btn--outline:hover {
  background: var(--color-accent-soft);
}

/* Профиль школы / объекта (вкладки владельца) */
[data-theme="dark"] main .school-owner-profile-footer,
[data-theme="dark"] main .venue-owner-profile-footer {
  border-top-color: var(--color-border);
}

[data-theme="dark"] main .school-owner-preview__caption {
  color: var(--color-muted);
}

[data-theme="dark"] main .school-owner-preview__shell {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] main .school-owner-preview__hero {
  background: var(--color-card);
}

[data-theme="dark"] main .school-owner-preview__title,
[data-theme="dark"] main .venue-owner-preview__name {
  color: var(--color-navy);
}

[data-theme="dark"] main .school-owner-preview__meta,
[data-theme="dark"] main .school-owner-preview__link-muted,
[data-theme="dark"] main .venue-owner-preview__address,
[data-theme="dark"] main .venue-owner-preview__link-muted {
  color: var(--color-muted);
}

[data-theme="dark"] main .school-owner-preview__cover-media {
  background: linear-gradient(135deg, var(--color-card-elevated), var(--color-card));
}

[data-theme="dark"] main .school-owner-preview__logo-media,
[data-theme="dark"] main .venue-owner-preview__photo-placeholder {
  background: var(--color-card-elevated);
}

[data-theme="dark"] main .school-advantage-item {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] main .school-advantage-item__title {
  color: var(--color-text);
}

[data-theme="dark"] main .school-advantage-item__meta {
  color: var(--color-muted);
}

[data-theme="dark"] main .school-advantage-item__visual {
  background: var(--color-accent-soft);
}

[data-theme="dark"] main .school-advantage-item__visual--icon {
  color: var(--color-link);
}

[data-theme="dark"] main .school-advantage-item--clickable:hover,
[data-theme="dark"] main .school-advantage-item--active {
  border-color: var(--color-link);
  background: var(--color-accent-soft);
  box-shadow: none;
}

[data-theme="dark"] main .school-advantage-item__link {
  color: inherit;
}

[data-theme="dark"] main .school-advantage-photo-section__title,
[data-theme="dark"] main .school-advantage-edit-panel__title,
[data-theme="dark"] main .school-advantage-section-head__title,
[data-theme="dark"] main .venue-owner-media-section.school-advantage-photo-section h4 {
  color: var(--color-navy);
}

[data-theme="dark"] main .school-advantage-add-panel,
[data-theme="dark"] main .school-plan-add-panel,
[data-theme="dark"] main .school-plan-edit-panel {
  border-top-color: var(--color-border);
}

[data-theme="dark"] main .school-coaches-table__row--head,
[data-theme="dark"] main .school-coaches-table__row--head:hover {
  background: var(--color-accent-soft);
}

[data-theme="dark"] main .school-coaches-table__row--head td,
[data-theme="dark"] main .school-coaches-table__row--head .trainer-athletes-table__name {
  color: var(--color-text);
}

[data-theme="dark"] main .venue-pitches-table__name {
  color: var(--color-link);
}

[data-theme="dark"] main .venue-pitches-table tbody tr.venue-pitches-table__row:hover,
[data-theme="dark"] main .venue-pitches-table tbody tr.venue-pitches-table__row:focus {
  background: var(--color-accent-soft);
}

/* Владелец объекта: модалка поля, таблица бронирований */
[data-theme="dark"] main .venue-pitch-modal__pricing {
  border-top-color: var(--color-border);
}

[data-theme="dark"] main .venue-pitch-modal__pricing-title {
  color: var(--color-navy);
}

[data-theme="dark"] main .venue-price-rule-row__label {
  color: var(--color-muted);
}

[data-theme="dark"] main .venue-price-rule-row__remove {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-muted);
}

[data-theme="dark"] main .venue-price-rule-row__remove:hover {
  background: rgba(185, 28, 28, 0.22);
  border-color: rgba(248, 113, 113, 0.45);
  color: #fca5a5;
}

[data-theme="dark"] main .venue-booking-row--pending {
  background: rgba(251, 191, 36, 0.14);
}

[data-theme="dark"] main .venue-booking-row--pending td,
[data-theme="dark"] main .venue-booking-row--pending td small,
[data-theme="dark"] main .venue-booking-row--pending td strong {
  color: var(--color-text);
}

[data-theme="dark"] main .venue-booking-row--confirmed-unpaid {
  background: rgba(248, 113, 113, 0.12);
}

[data-theme="dark"] main .venue-booking-row--confirmed-unpaid td,
[data-theme="dark"] main .venue-booking-row--confirmed-unpaid td small,
[data-theme="dark"] main .venue-booking-row--confirmed-unpaid td strong {
  color: var(--color-text);
}

[data-theme="dark"] main .venue-booking-expand-btn {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-muted);
}

[data-theme="dark"] main .venue-booking-expand-btn:hover {
  background: var(--color-accent-soft);
  border-color: var(--color-link);
  color: var(--color-link);
}

[data-theme="dark"] main .venue-booking-row--expandable.is-expanded,
[data-theme="dark"] main .venue-booking-row-detail > td {
  background: var(--color-card-elevated);
  border-bottom-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] main .venue-booking-row-detail .training-pitch-picker__title {
  color: var(--color-text);
}

[data-theme="dark"] main .venue-booking-row-detail .training-pitch-picker__legend {
  color: var(--color-muted);
}

[data-theme="dark"] main .venue-booking-status--pending {
  background: rgba(251, 191, 36, 0.22);
  color: #fcd34d;
}

[data-theme="dark"] main .venue-booking-status--confirmed {
  background: rgba(52, 211, 153, 0.18);
  color: #6ee7b7;
}

[data-theme="dark"] main .venue-booking-status--cancelled {
  background: var(--color-card-elevated);
  color: var(--color-muted);
  border: 1px solid var(--color-border);
}

[data-theme="dark"] main .venue-booking-payment--unpaid {
  background: rgba(248, 113, 113, 0.18);
  color: #fca5a5;
}

[data-theme="dark"] main .venue-booking-payment--paid {
  background: rgba(52, 211, 153, 0.18);
  color: #6ee7b7;
}

[data-theme="dark"] main .venue-booking-payment--refunded {
  background: rgba(96, 165, 250, 0.18);
  color: #93c5fd;
}

[data-theme="dark"] main .data-table tbody tr:hover {
  background: var(--color-card-elevated);
}

[data-theme="dark"] main .data-table tbody tr:hover td,
[data-theme="dark"] main .data-table tbody tr:hover td small,
[data-theme="dark"] main .data-table tbody tr:hover td strong {
  color: var(--color-text);
}

[data-theme="dark"] main .venue-owner-bookings-table tbody tr.venue-booking-row--pending:hover {
  background: rgba(251, 191, 36, 0.2);
}

[data-theme="dark"] main .venue-owner-bookings-table tbody tr.venue-booking-row--confirmed-unpaid:hover {
  background: rgba(248, 113, 113, 0.18);
}

[data-theme="dark"] main .venue-booking-row--expandable:hover {
  background: var(--color-card-elevated);
}

[data-theme="dark"] main .school-coaches-pending {
  background: var(--color-card-elevated);
  border: 1px solid var(--color-border);
}

[data-theme="dark"] main .school-coaches-pending__item {
  border-bottom-color: var(--color-border);
}

/* Модалка «Настройка профиля» (HTMX) */
[data-theme="dark"] .trainer-profile-block {
  border-top-color: var(--color-border);
}

[data-theme="dark"] .trainer-profile-block__title {
  color: var(--color-navy);
}

[data-theme="dark"] .trainer-profile-hint,
[data-theme="dark"] .trainer-profile-file-status,
[data-theme="dark"] .trainer-gender-legend,
[data-theme="dark"] .trainer-profile-avatar-label,
[data-theme="dark"] .trainer-gender-field li label {
  color: var(--color-muted);
}

[data-theme="dark"] .trainer-profile-email-ro {
  background: var(--color-input-bg);
  border-color: var(--color-border);
  color: var(--color-muted);
}

[data-theme="dark"] .trainer-profile-form__actions {
  border-top-color: var(--color-border);
}

/* ——— Кабинет тренера: команды, модалки, соревнования, награды ——— */
[data-theme="dark"] main .btn-create-team {
  color: #fff !important;
  background: var(--color-orange);
  box-shadow: 0 2px 10px rgba(255, 140, 42, 0.28);
}

[data-theme="dark"] main .btn-create-team:hover {
  background: var(--color-orange-hover);
  filter: none;
}

[data-theme="dark"] .training-modal-close {
  background: var(--color-card-elevated);
  color: var(--color-text);
  border: 1px solid var(--color-border);
}

[data-theme="dark"] .training-modal-close:hover {
  background: var(--color-card);
  color: #fff;
}

/* Просмотр спортсмена */
[data-theme="dark"] .athlete-modal-section__title {
  color: var(--color-text);
}

[data-theme="dark"] .athlete-modal-card__email,
[data-theme="dark"] .athlete-modal-dl__row dt,
[data-theme="dark"] .athlete-sports-form__row label,
[data-theme="dark"] .athlete-sports-form__label {
  color: var(--color-muted);
}

[data-theme="dark"] .athlete-modal-dl__row {
  border-bottom-color: var(--color-border-subtle);
}

[data-theme="dark"] .athlete-modal-dl__row dd,
[data-theme="dark"] .athlete-sports-form__row--checkbox label {
  color: var(--color-text);
}

[data-theme="dark"] .athlete-sports-form__control,
[data-theme="dark"] .athlete-modal-readonly {
  background: var(--color-input-bg);
  border-color: var(--color-input-border);
  color: var(--color-text);
}

[data-theme="dark"] .athlete-modal-readonly {
  border-style: dashed;
}

[data-theme="dark"] .athlete-modal-card__photo--placeholder {
  background: #1a2840 url("/static/images/placeholders/man.svg") center/68% no-repeat;
  border-color: var(--color-border);
}

[data-theme="dark"] .athlete-modal-sports-saved {
  background: rgba(34, 120, 80, 0.2);
  border-color: rgba(34, 120, 80, 0.4);
  color: #8fd4b0;
}

/* Приглашение в команду */
[data-theme="dark"] .trainer-invite-modal__empty,
[data-theme="dark"] .trainer-invite-modal__sub,
[data-theme="dark"] .trainer-invite-link-result__hint {
  color: var(--color-muted);
}

[data-theme="dark"] .trainer-invite-modal__field label {
  color: var(--color-text);
}

[data-theme="dark"] .trainer-invite-select {
  background: var(--color-input-bg);
  border-color: var(--color-input-border);
  color: var(--color-text);
}

[data-theme="dark"] .trainer-invite-modal__hr {
  border-top-color: var(--color-border);
}

[data-theme="dark"] .trainer-invite-link-result {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] .trainer-invite-link-result__label {
  color: var(--color-muted);
}

[data-theme="dark"] .trainer-invite-link-result__input {
  background: var(--color-input-bg);
  border-color: var(--color-input-border);
  color: var(--color-text);
}

/* Команды: счётчик, теги, статистика */
[data-theme="dark"] main .team-squad-chip {
  background: var(--color-accent-soft);
  color: var(--color-link);
}

[data-theme="dark"] main .team-tag {
  background: rgba(55, 140, 200, 0.22);
  color: var(--color-link);
}

[data-theme="dark"] main .team-tag--age {
  background: var(--color-card-elevated);
  color: var(--color-muted);
}

[data-theme="dark"] main .trainer-teams-accordion .team-expanded-card {
  background: var(--color-card);
  border: 1px solid var(--color-border-subtle);
  box-shadow: none;
}

[data-theme="dark"] main .trainer-teams-accordion .trainer-team-block__head,
[data-theme="dark"] main .trainer-teams-accordion .trainer-team-block__body-inner {
  background-color: transparent;
  border-color: transparent;
}

[data-theme="dark"] main .tapp-pick-meta-tag__k {
  color: var(--color-muted);
}

[data-theme="dark"] main .tapp-pick-meta-tag__v {
  color: var(--color-text);
}

[data-theme="dark"] main .team-count-badge {
  background: var(--color-accent-soft);
  color: var(--color-link);
}

[data-theme="dark"] main .team-stats-tabs button {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-muted);
}

[data-theme="dark"] main .team-stats-tabs button.is-active {
  background: var(--color-accent-soft);
  border-color: var(--color-link);
  color: var(--color-link);
}

[data-theme="dark"] main .team-stats-grid {
  color: var(--color-text);
}

[data-theme="dark"] main .team-stats-grid dt {
  color: var(--color-muted);
}

[data-theme="dark"] main .team-stats-grid dd {
  color: var(--color-text);
}

/* Схема поля (зелёное поле не трогаем) */
[data-theme="dark"] main .formation-showcase__summary,
[data-theme="dark"] main .formation-showcase__details--open .formation-showcase__summary {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-navy);
}

[data-theme="dark"] main .formation-showcase__summary-meta {
  color: var(--color-link);
}

[data-theme="dark"] main .formation-showcase__pitch-hint,
[data-theme="dark"] main .formation-showcase__details--open .formation-showcase__pitch-hint {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-muted);
}

[data-theme="dark"] main .formation-showcase__frame {
  background: var(--color-card);
  border-color: var(--color-border);
}

[data-theme="dark"] main .formation-showcase__title,
[data-theme="dark"] main .formation-showcase__field label {
  color: var(--color-text);
}

[data-theme="dark"] main .formation-showcase__select {
  background: var(--color-input-bg);
  border-color: var(--color-input-border);
  color: var(--color-text);
}

[data-theme="dark"] main .pitch-board--volleyball {
  background: linear-gradient(180deg, #3d3428 0%, #2a241c 45%, #1f1a15 100%);
  border-color: #5c4a32;
}

[data-theme="dark"] main .pitch-board--volleyball .pitch-board__markings {
  border-color: rgba(255, 255, 255, 0.35);
}

[data-theme="dark"] main .pitch-board--volleyball .pitch-board__net,
[data-theme="dark"] main .pitch-board--volleyball .pitch-board__attack-line,
[data-theme="dark"] main .pitch-board--volleyball .pitch-board__court-line--left,
[data-theme="dark"] main .pitch-board--volleyball .pitch-board__court-line--right,
[data-theme="dark"] main .pitch-board--volleyball .pitch-board__court-line--baseline {
  background: rgba(255, 255, 255, 0.42);
}

[data-theme="dark"] main .pitch-player__pos-num {
  background: rgba(30, 41, 59, 0.9);
  border-color: #5c4a32;
  color: #f1e6d4;
}

/* Создание тренировки — список спортсменов */
[data-theme="dark"] .training-modal-hint,
[data-theme="dark"] .training-participant-list__hint {
  color: var(--color-muted);
}

[data-theme="dark"] .training-participant-list__grid {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] .training-participant-item {
  color: var(--color-text);
}

[data-theme="dark"] .training-recurrence__chip span {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] .training-recurrence__chip input:checked + span {
  background: var(--color-accent-soft);
  border-color: var(--color-link);
  color: var(--color-link);
}

/* Соревнования */
[data-theme="dark"] main .trainer-comp-card {
  background: var(--color-card);
}

[data-theme="dark"] main .trainer-comp-pill {
  background: var(--color-card-elevated);
  color: var(--color-text);
}

[data-theme="dark"] main .trainer-comp-pill:hover {
  background: var(--color-card);
}

[data-theme="dark"] main .trainer-comp-pill.is-active {
  background: var(--color-accent-soft);
  color: var(--color-link);
}

[data-theme="dark"] main .trainer-comp-pill__badge {
  background: rgba(55, 140, 200, 0.28);
  color: var(--color-link);
}

[data-theme="dark"] main .trainer-comp-pill.is-active .trainer-comp-pill__badge {
  background: rgba(55, 140, 200, 0.35);
  color: #fff;
}

[data-theme="dark"] main .trainer-comp-pill__badge--muted {
  background: var(--color-card);
  color: var(--color-muted);
}

[data-theme="dark"] main .trainer-comp-subtabs {
  border-bottom-color: var(--color-border);
}

[data-theme="dark"] main .trainer-comp-subtab {
  color: var(--color-muted);
}

[data-theme="dark"] main .trainer-comp-subtab.is-active,
[data-theme="dark"] main .trainer-comp-subtab:hover {
  color: var(--color-link);
}

[data-theme="dark"] main .trainer-comp-tournament-name__text {
  color: var(--color-text);
}

[data-theme="dark"] main .trainer-comp-filter__label {
  color: var(--color-muted);
}

[data-theme="dark"] main .trainer-comp-filter__select {
  color-scheme: dark;
  background: var(--color-input-bg);
  border-color: var(--color-input-border);
  color: var(--color-text);
}

[data-theme="dark"] main .trainer-comp-filter__select option {
  background-color: var(--color-card);
  color: var(--color-text);
}

[data-theme="dark"] main .trainer-comp-row-link:hover {
  background: var(--color-card-elevated);
}

/* Награды */
[data-theme="dark"] main .trainer-awards-lead {
  color: var(--color-muted);
}

[data-theme="dark"] main .trainer-award-frame {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  box-shadow: var(--shadow);
}

[data-theme="dark"] main .trainer-award-frame__visual {
  background: var(--color-card);
}

[data-theme="dark"] main .trainer-award-frame__placeholder {
  background: linear-gradient(160deg, var(--color-card-elevated), var(--color-card));
  color: var(--color-muted);
}

[data-theme="dark"] main .trainer-award-frame__caption {
  border-top-color: var(--color-border);
}

[data-theme="dark"] main .trainer-award-frame__name {
  color: var(--color-text);
}

[data-theme="dark"] main .trainer-award-frame__team,
[data-theme="dark"] main .trainer-award-frame__date {
  color: var(--color-muted);
}

/* Состав команды: заголовки и блок запасных */
[data-theme="dark"] main .trainer-team-block__body-inner > h4[style],
[data-theme="dark"] main .trainer-roster-section-title {
  color: var(--color-navy);
}

[data-theme="dark"] main .team-expanded-card .trainer-table-wrap.card[style*="fdf2f4"] {
  background: var(--color-card-elevated) !important;
  border-color: var(--color-border) !important;
}

[data-theme="dark"] main .team-expanded-card .trainer-table-wrap.card[style*="fdf2f4"] > div:first-child {
  color: var(--color-muted) !important;
}

/* Модалка тренировки: секторы поля (зелёное поле не трогаем) */
[data-theme="dark"] .training-pitch-picker__title {
  color: var(--color-text);
}

[data-theme="dark"] .training-pitch-picker__legend {
  color: var(--color-muted);
}

[data-theme="dark"] .training-pitch-picker__hint {
  color: var(--color-muted);
}

/* ——— Судья ——— */
[data-theme="dark"] main .ref4-card,
[data-theme="dark"] main .ref-cal-match-card,
[data-theme="dark"] main .ref-gm__form,
[data-theme="dark"] main .ref-pen__panel,
[data-theme="dark"] main .ref-em__panel {
  background-color: var(--color-card);
  border-color: var(--ref4-line);
  color: var(--ref4-dark);
}

[data-theme="dark"] main .trainer-cabinet--referee .ref-figma-tabs {
  background: var(--color-card);
}

[data-theme="dark"] main .trainer-cabinet--referee .ref-figma-tabs__item {
  color: var(--ref4-gray);
}

[data-theme="dark"] main .trainer-cabinet--referee .ref-figma-tabs__item.is-active {
  background: var(--ref4-tab-active-bg);
  color: var(--ref4-tab-active);
}

[data-theme="dark"] main .ref4-tile {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--ref4-gray);
}

[data-theme="dark"] main .ref4-tile--emphasis {
  color: var(--ref4-dark);
}

[data-theme="dark"] main .ref4-tile:disabled,
[data-theme="dark"] main .ref4-tile--emphasis:disabled {
  color: var(--ref4-gray);
  opacity: 0.65;
  cursor: not-allowed;
}

[data-theme="dark"] main .referee-board-figma .tp-mi__side,
[data-theme="dark"] .referee-board-figma .tp-mi__side,
[data-theme="dark"] .ref-cal-match-card.referee-board-figma .tp-mi__side {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  outline: none;
}

[data-theme="dark"] .referee-board-figma .tp-mi__crest,
[data-theme="dark"] .referee-board-figma .tp-mi__mid,
[data-theme="dark"] .ref-cal-match-card.referee-board-figma .tp-mi__crest,
[data-theme="dark"] .ref-cal-match-card.referee-board-figma .tp-mi__mid {
  outline: none;
}

[data-theme="dark"] .ref4-card.referee-board-figma .tp-mi__side,
[data-theme="dark"] .ref-figma-ref4-shell .ref4-card.referee-board-figma .tp-mi__side {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  outline: none;
}

[data-theme="dark"] .ref-figma-standalone {
  background: var(--color-bg);
}

[data-theme="dark"] .ref-figma-shell .ref-panel-done {
  background: var(--color-card-elevated);
  color: var(--color-muted);
}

[data-theme="dark"] main .ref4-card.referee-board-figma .tp-mi__mid,
[data-theme="dark"] main .ref-figma-ref4-shell .ref4-card.referee-board-figma .tp-mi__mid,
[data-theme="dark"] main .referee-board-figma .tp-mi__mid {
  background: var(--color-card-elevated);
  outline-color: var(--color-border);
  border-color: var(--color-border);
}

[data-theme="dark"] main .ref-figma-ref4-shell .ref4-card,
[data-theme="dark"] main .trainer-cabinet--referee:has(.ref-figma-ref4-page) .ref4-card {
  background: var(--color-card);
  border-color: var(--color-border);
}

[data-theme="dark"] main .referee-board-figma .tp-mi__crest-ph {
  background: var(--color-accent-soft);
}

/* multiply на светлой подложке убирает белый фон логотипов; на тёмной — «грязит» фото */
[data-theme="dark"] main .ref4-card.referee-board-figma .tp-mi__crest,
[data-theme="dark"] main .ref-figma-ref4-shell .ref4-card.referee-board-figma .tp-mi__crest,
[data-theme="dark"] .referee-board-figma .tp-mi__crest,
[data-theme="dark"] .ref-cal-match-card.referee-board-figma .tp-mi__crest {
  background: #f0f4f8;
}

[data-theme="dark"] main .ref4-card.referee-board-figma .tp-mi__crest img,
[data-theme="dark"] main .ref-figma-ref4-shell .ref4-card.referee-board-figma .tp-mi__crest img,
[data-theme="dark"] .referee-board-figma .tp-mi__crest img,
[data-theme="dark"] .ref-cal-match-card.referee-board-figma .tp-mi__crest img {
  mix-blend-mode: normal;
}

[data-theme="dark"] main .referee-board-figma .tp-mi__team-name,
[data-theme="dark"] main .tp-mi__team-name {
  color: var(--ref4-dark);
}

[data-theme="dark"] main .referee-board-figma .tp-mi__score,
[data-theme="dark"] main .referee-board-figma .tp-mi__clock,
[data-theme="dark"] main .referee-board-figma .tp-mi__period {
  color: var(--ref4-dark);
}

[data-theme="dark"] main .ref-cal-match-card__pill--live {
  background: rgba(55, 140, 200, 0.2);
  color: var(--ref4-tab-active);
}

/* ——— Турнир (всё кроме героя-превью) ——— */
[data-theme="dark"] .tp-fig {
  --fig-bg: #0f161e;
  --fig-navy: #8ec5ea;
  --fig-hero: #004a80;
  --fig-link: #5eb8f5;
  --fig-muted: #8fa3b8;
  --fig-text: #e6edf3;
  --fig-body: #c8d6e3;
  --fig-rule-lbl: #8fa3b8;
  --fig-tab-inactive-bg: #151d28;
  --fig-tab-active-bg: rgba(55, 140, 200, 0.28);
  --fig-tab-active: #6eb8e8;
  --fig-orange: #ffa347;
  --fig-line: #2e3d52;
  --fig-ph: #1e2a3a;
  --fig-contact-bg: #151d28;
  --fig-rule-card: #1a2433;
  background: var(--fig-bg);
}

/* Белая карточка под превью: вкладки + контент всех разделов */
[data-theme="dark"] .tp-fig .tp-fig-shell {
  background: var(--color-card);
  border: 1px solid var(--fig-line);
  box-shadow: var(--shadow);
}

[data-theme="dark"] .tp-fig .tp-fig-shell__inner {
  background: transparent;
}

[data-theme="dark"] .tp-fig .tp-fig-tabs {
  background: transparent;
}

[data-theme="dark"] .tp-fig .tp-fig-tab {
  color: var(--fig-body);
  background: var(--fig-tab-inactive-bg);
  border-color: var(--fig-line);
}

[data-theme="dark"] .tp-fig .tp-fig-tab:hover {
  color: var(--fig-tab-active);
  background: var(--color-card-elevated);
}

[data-theme="dark"] .tp-fig .tp-fig-tab.is-active {
  background: var(--fig-tab-active-bg);
  color: var(--fig-tab-active);
  border-color: rgba(110, 184, 232, 0.35);
}

[data-theme="dark"] .tp-fig .tp-fig-schedule-empty {
  background: var(--color-card-elevated);
  border-color: var(--fig-line);
  color: var(--fig-body);
}

[data-theme="dark"] .tp-fig :is(
  .tp-fig-panel,
  .tp-fig-rail-card,
  .tp-fig-team-card,
  .tp-fig-team-card__lower,
  .tp-fig-ms-card,
  .tp-fig-desc-card,
  .tp-fig-map-card,
  .tp-fig-contact-card,
  .tp-fig-rule-card,
  .tp-schedule-card,
  .tp-gpc-cell,
  .tp-gpc-mid,
  .tp-res-table-wrap,
  .tp-mi,
  .tp-mi-tl,
  .tp-finish-ind-card,
  .tp-team-modal-inner,
  .organizer-award-medal,
  .organizer-award-main
) {
  background-color: var(--color-card);
  border-color: var(--fig-line);
  color: var(--fig-body);
}

[data-theme="dark"] .tp-fig .tp-fig-rule-row:nth-child(odd) {
  background: var(--color-card-elevated);
}

[data-theme="dark"] .tp-fig .tp-fig-rule-row:nth-child(even) {
  background: var(--fig-rule-card);
}

[data-theme="dark"] .tp-fig .tp-fig-rule-lbl {
  color: var(--fig-rule-lbl);
}

[data-theme="dark"] .tp-fig .tp-fig-rule-val {
  color: var(--fig-body);
}

[data-theme="dark"] .tp-fig .tp-fig-participant {
  border-color: var(--fig-line);
}

[data-theme="dark"] .tp-fig .tp-fig-h2-center {
  color: var(--fig-navy);
}

/* Расписание: карточки матчей (tp-gpc) */
[data-theme="dark"] .tp-fig .tp-gpc {
  --tp-gpc-azure: rgba(55, 140, 200, 0.2);
  --tp-gpc-sorento: #6eb8e8;
  --tp-gpc-mouse: #1a2433;
  --tp-gpc-line: #2e3d52;
  --tp-gpc-body: #c8d6e3;
  --tp-gpc-gray: #8fa3b8;
  --tp-gpc-river: #6eb8e8;
  --tp-gpc-txt-gray: #8fa3b8;
}

[data-theme="dark"] .tp-fig .tp-gpc-cell,
[data-theme="dark"] .tp-fig .tp-gpc-cell__crest {
  background: var(--tp-gpc-mouse);
  border-color: var(--tp-gpc-line);
}

[data-theme="dark"] .tp-fig .tp-gpc-cell__name {
  color: var(--tp-gpc-body);
}

[data-theme="dark"] .tp-fig .tp-gpc-mid {
  background: var(--color-card-elevated);
  outline-color: var(--fig-line);
}

[data-theme="dark"] .tp-fig .tp-gpc-mid__clock,
[data-theme="dark"] .tp-fig .tp-gpc-mid__period,
[data-theme="dark"] .tp-fig .tp-gpc-mid__pen {
  color: var(--fig-muted);
}

[data-theme="dark"] .tp-fig .tp-gpc-mid__score {
  color: var(--fig-text);
}

[data-theme="dark"] .tp-fig .tp-gpc-mid__vb-sets .tp-vb-set-pt {
  color: var(--color-muted);
}

[data-theme="dark"] .tp-mip .tp-vb-tl-ball {
  background: var(--color-card-elevated);
  color: #8fa3b8;
}

[data-theme="dark"] .tp-fig .tp-gpc-meta__txt {
  color: var(--tp-gpc-gray);
}

[data-theme="dark"] .tp-fig .tp-gpc-pill--negative {
  background: rgba(180, 50, 50, 0.2);
  color: #f5a8a8;
}

/* Результаты: таблица */
[data-theme="dark"] .tp-fig .tp-res {
  --tp-res-fog: #1e2a3a;
  --tp-res-line: #2e3d52;
  --tp-res-body: #c8d6e3;
  --tp-res-muted: #8fa3b8;
  --tp-res-river: #6eb8e8;
  color: var(--tp-res-body);
}

[data-theme="dark"] .tp-fig .tp-res-row--head .tp-res-cell {
  background: var(--color-card-elevated);
  color: var(--fig-navy);
}

/* Квадратики формы (В / П / Н) и легенда — белый текст на цветном фоне */
[data-theme="dark"] .tp-fig .tp-res-form__pill,
[data-theme="dark"] .tp-fig a.tp-res-form__pill,
[data-theme="dark"] .tp-fig .tp-res-legend .tp-res-form__pill {
  color: #fff;
}

[data-theme="dark"] .tp-fig .tp-res-form__pill--pending {
  color: transparent;
}

[data-theme="dark"] .tp-fig .tp-res-form__tip,
[data-theme="dark"] .tp-fig .tp-res-legend__tip {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.45);
}

[data-theme="dark"] .tp-fig .tp-res-form__tip-line1 {
  color: var(--color-text);
}

[data-theme="dark"] .tp-fig .tp-res-form__tip-line2 {
  color: var(--color-muted);
}

[data-theme="dark"] .tp-fig .tp-res-legend__tip {
  color: var(--color-text);
}

[data-theme="dark"] .tp-fig .tp-res-legend__info-icon {
  background: rgba(55, 140, 200, 0.2);
  color: var(--color-link);
}

[data-theme="dark"] .tp-fig .tp-res-legend__info:hover .tp-res-legend__info-icon,
[data-theme="dark"] .tp-fig .tp-res-legend__info:focus .tp-res-legend__info-icon,
[data-theme="dark"] .tp-fig .tp-res-legend__info:focus-within .tp-res-legend__info-icon {
  background: rgba(55, 140, 200, 0.35);
  color: #9ed4f5;
}

[data-theme="dark"] .tp-fig .tp-res-rank-badge {
  color: #fff;
}

[data-theme="dark"] .tp-fig h1:not(.tp-fig-hero__title),
[data-theme="dark"] .tp-fig h2,
[data-theme="dark"] .tp-fig h3,
[data-theme="dark"] .tp-fig .tp-fig-h2-left {
  color: var(--fig-text);
}

[data-theme="dark"] .tp-fig :is(
  .tp-fig-team-card__name,
  .tp-fig-rail-card__title,
  .tp-fig-muted,
  .tp-fig-muted-center,
  .tp-fig-body,
  .tp-fig-soon,
  .tp-schedule-card__teams,
  .tp-mi__name,
  .tp-mi__score,
  .tp-res-name,
  .tp-fig-ms-card__name,
  .organizer-award-main__name
) {
  color: var(--fig-body);
}

[data-theme="dark"] .tp-fig .tp-fig-team-card__divider {
  border-top-color: var(--fig-line);
}

[data-theme="dark"] .tp-res-subtabs {
  background: var(--color-card);
  border-bottom-color: var(--fig-line);
}

[data-theme="dark"] .tp-res-subtab {
  color: var(--fig-body);
}

[data-theme="dark"] .tp-res-subtab.is-active,
[data-theme="dark"] .tp-res-subtab:hover {
  color: var(--fig-tab-active);
}

[data-theme="dark"] .tp-fig .tp-po-round__head {
  background: #243040;
  color: #9fb0c4;
}

[data-theme="dark"] .tp-fig .tp-po-lines path {
  stroke: #3d5068;
}

[data-theme="dark"] .tp-fig .tp-po-card {
  background: #1e2a3a;
  border-color: #2e3d52;
}

[data-theme="dark"] .tp-fig .tp-po-card--live {
  border-color: #4a9fd4;
  box-shadow: 0 0 0 1px rgba(110, 184, 232, 0.35);
}

[data-theme="dark"] .tp-fig .tp-po-card__row {
  color: #c8d6e3;
}

[data-theme="dark"] .tp-fig .tp-po-card__row + .tp-po-card__row {
  border-top-color: #2e3d52;
}

[data-theme="dark"] .tp-fig .tp-po-card__row--winner .tp-po-card__name,
[data-theme="dark"] .tp-fig .tp-po-card__row--winner .tp-po-card__score {
  color: #6eb8e8;
}

[data-theme="dark"] .tp-fig .tp-po-card__row--tbd .tp-po-card__name {
  color: #6a7d92;
}

[data-theme="dark"] .tp-fig .tp-po-card__crest {
  background: #152030;
  border-color: #2e3d52;
}

[data-theme="dark"] .tp-fig .tp-po-card__crest--ph {
  background: linear-gradient(135deg, #243040 0%, #1a2433 100%);
}

[data-theme="dark"] .tp-fig .tp-po-card__score {
  color: #9fb0c4;
}

[data-theme="dark"] .tp-fig .tp-po-card__score-pen {
  color: #8fa3b8;
}

[data-theme="dark"] .tp-fig .tp-po-third-label {
  color: #c4a882;
}

[data-theme="dark"] .tp-fig .tp-po-round--champion .tp-po-round__head {
  background: linear-gradient(180deg, #3a3020 0%, #2a2418 100%);
  color: #c4a882;
}

[data-theme="dark"] .tp-fig .tp-po-champion-card {
  background: linear-gradient(180deg, #2a2418 0%, #1e1a12 100%);
  border-color: #5a4a28;
}

[data-theme="dark"] .tp-fig .tp-po-champion-card--revealed {
  border-color: #8a7340;
  box-shadow: 0 0 0 1px rgba(196, 168, 130, 0.25);
}

[data-theme="dark"] .tp-fig .tp-po-champion-card__row {
  color: #e8dcc4;
}

[data-theme="dark"] .tp-fig .tp-po-champion-card--revealed .tp-po-champion-card__name {
  color: #e8c878;
}

[data-theme="dark"] .tp-fig .tp-po-champion-card--tbd .tp-po-champion-card__name {
  color: #6a7d92;
}

[data-theme="dark"] .tp-fig .tp-po-champion-card__crest {
  background: #152030;
  border-color: #5a4a28;
}

[data-theme="dark"] .tp-fig .tp-po-champion-card__crest--ph {
  background: linear-gradient(135deg, #3a3020 0%, #2a2418 100%);
}

[data-theme="dark"] .tp-fig .tp-fig-contact-head {
  background: linear-gradient(
    to left,
    rgba(55, 140, 200, 0.18) 0%,
    rgba(30, 50, 70, 0.35) 40%,
    var(--color-card) 100%
  );
}

/* Вкладка «Описание» (завершённый турнир) */
[data-theme="dark"] .tp-fig .tp-finish-h2 {
  color: var(--fig-navy);
}

[data-theme="dark"] .tp-fig .tp-finish-h2-left,
[data-theme="dark"] .tp-fig .tp-finish-rule-lbl {
  color: var(--fig-rule-lbl);
}

[data-theme="dark"] .tp-fig .tp-finish-rule-val {
  color: var(--fig-body);
}

[data-theme="dark"] .tp-fig .tp-finish-rule-card {
  background: var(--fig-rule-card);
}

[data-theme="dark"] .tp-fig .tp-finish-rule-row {
  background: var(--color-card-elevated);
}

[data-theme="dark"] .tp-fig .tp-finish-rule-row--alt {
  background: var(--fig-rule-card);
}

[data-theme="dark"] .tp-fig .tp-finish-ind-card {
  background: var(--color-card);
  border-color: var(--fig-line);
}

/* Пьедестал: как в светлой теме — белый текст на металлических вымпелах */
[data-theme="dark"] .tp-fig .tp-finish-podium-card {
  background: transparent;
  border-color: transparent;
  color: #fff;
}

[data-theme="dark"] .tp-fig .tp-finish-podium-card__place,
[data-theme="dark"] .tp-fig .tp-finish-podium-card__place-sub,
[data-theme="dark"] .tp-fig .tp-finish-podium-card__team,
[data-theme="dark"] .tp-fig .tp-finish-podium-stat__v,
[data-theme="dark"] .tp-fig .tp-finish-podium-stat__k {
  color: #fff;
}

[data-theme="dark"] .tp-fig .tp-finish-podium-card__place-sub {
  opacity: 0.5;
}

[data-theme="dark"] .tp-fig .tp-fig-ms-card {
  background: var(--color-card-elevated);
}

[data-theme="dark"] .tp-fig .tp-fig-ms__sched-link {
  color: var(--fig-link);
}

[data-theme="dark"] main .organizer-award-medal__grade {
  background: var(--color-card-elevated);
  color: var(--color-text);
}

[data-theme="dark"] main .organizer-award-pill {
  background: rgba(55, 140, 200, 0.18);
}

[data-theme="dark"] main .organizer-award-pill__k {
  color: var(--color-link);
  opacity: 0.75;
}

[data-theme="dark"] main .organizer-award-pill__v {
  color: var(--color-link);
}

/* ——— Организатор: карточка мероприятия (вкладки, заявки, расписание, награды) ——— */
[data-theme="dark"] main .organizer-home-head .btn-cancel-outline,
[data-theme="dark"] main .trainer-section-head .btn-cancel-outline {
  background: var(--color-card-elevated);
  color: var(--color-text);
  border-color: var(--color-border);
}

[data-theme="dark"] main .organizer-home-head .btn-cancel-outline:hover,
[data-theme="dark"] main .trainer-section-head .btn-cancel-outline:hover {
  background: var(--color-card);
  color: var(--color-link);
}

[data-theme="dark"] main .organizer-event-card,
[data-theme="dark"] main .organizer-event-preparation,
[data-theme="dark"] main .organizer-event-applications,
[data-theme="dark"] main .organizer-event-secondary-frame {
  background: var(--color-card);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] main .organizer-event-tabs {
  border-bottom-color: var(--color-border);
}

[data-theme="dark"] main .organizer-event-tab {
  color: var(--color-muted);
}

[data-theme="dark"] main a.organizer-event-tab:hover:not(.is-active) {
  color: var(--color-link);
}

[data-theme="dark"] main .organizer-event-tab.is-active {
  color: var(--color-link);
}

[data-theme="dark"] main .organizer-event-crest.crest-upload,
[data-theme="dark"] main .organizer-event-crest.crest-upload:hover {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] main .organizer-event-crest .crest-upload__placeholder {
  color: var(--color-link);
}

[data-theme="dark"] main .organizer-modal-shell .pitch-assign-shell__head,
[data-theme="dark"] main .organizer-modal-shell .organizer-modal-form__actions {
  border-color: var(--color-border);
}

[data-theme="dark"] main .organizer-modal-shell .pitch-assign-shell__title {
  color: var(--color-text);
}

[data-theme="dark"] main .organizer-modal-shell .training-modal-close {
  background: var(--color-card-elevated);
  color: var(--color-text);
}

[data-theme="dark"] main .organizer-modal-shell .training-modal-close:hover {
  background: var(--color-card);
}

[data-theme="dark"] main .organizer-modal-form .btn-cancel-outline {
  background: var(--color-card-elevated);
  color: var(--color-text);
  border-color: var(--color-border);
}

[data-theme="dark"] main .organizer-modal-form .btn-cancel-outline:hover {
  background: var(--color-card);
}

[data-theme="dark"] main .organizer-wizard-field label,
[data-theme="dark"] main .organizer-event-applications__title,
[data-theme="dark"] main .organizer-event-applications__subtitle {
  color: var(--color-muted);
}

[data-theme="dark"] main .organizer-wizard-input,
[data-theme="dark"] main .organizer-modal-form input,
[data-theme="dark"] main .organizer-modal-form select,
[data-theme="dark"] main .organizer-modal-form textarea {
  background: var(--color-input-bg);
  border-color: var(--color-input-border);
  color: var(--color-text);
}

[data-theme="dark"] main .organizer-event-table-wrap {
  border-color: var(--color-border);
  background: var(--color-card);
}

[data-theme="dark"] main .organizer-event-table,
[data-theme="dark"] main .organizer-event-table th,
[data-theme="dark"] main .organizer-event-table td {
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] main .organizer-event-table thead th {
  background: var(--color-card-elevated);
  color: var(--color-muted);
}

[data-theme="dark"] main .organizer-table-icon-btn {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-muted);
}

[data-theme="dark"] main .organizer-table-icon-btn:hover {
  background: var(--color-accent-soft);
  border-color: var(--color-border);
  color: var(--color-link);
}

[data-theme="dark"] main .organizer-table-icon-btn--danger {
  color: #f5a8a8;
  border-color: rgba(180, 50, 50, 0.45);
  background: rgba(180, 50, 50, 0.12);
}

[data-theme="dark"] main .organizer-table-icon-btn--danger:hover {
  background: rgba(180, 50, 50, 0.22);
  border-color: rgba(220, 100, 100, 0.5);
  color: #fecaca;
}

/* Расписание */
[data-theme="dark"] main .figma-schedule-page {
  background: var(--color-bg);
}

[data-theme="dark"] main .figma-schedule-card {
  background: var(--color-card);
  color: var(--color-text);
}

[data-theme="dark"] main .figma-schedule-toolbar {
  border-bottom-color: var(--color-border);
}

[data-theme="dark"] main .figma-schedule-toolbar__title,
[data-theme="dark"] main .figma-schedule-fields-head__title,
[data-theme="dark"] main .figma-schedule-groups__title {
  color: var(--color-text);
}

[data-theme="dark"] main .figma-schedule-toolbar__hint,
[data-theme="dark"] main .figma-schedule-toolbar__hint--drag,
[data-theme="dark"] main .figma-schedule-groups__hint {
  color: var(--color-muted);
}

[data-theme="dark"] main .figma-schedule-legend {
  background: var(--color-accent-soft);
  border-color: var(--color-border);
}

[data-theme="dark"] main .figma-schedule-legend__item {
  color: var(--color-link);
}

[data-theme="dark"] main .figma-schedule-results {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] main .figma-schedule-results__title,
[data-theme="dark"] main .figma-schedule-results__stat strong {
  color: var(--color-text);
}

[data-theme="dark"] main .figma-schedule-results__total,
[data-theme="dark"] main .figma-schedule-results__stats {
  color: var(--color-muted);
}

[data-theme="dark"] main .figma-schedule-grid-wrap {
  background: var(--color-card);
  border-color: var(--color-border);
}

[data-theme="dark"] main .figma-schedule-grid thead th,
[data-theme="dark"] main .figma-schedule-grid__corner,
[data-theme="dark"] main .figma-schedule-grid__pitch-head,
[data-theme="dark"] main .figma-schedule-grid__add-head,
[data-theme="dark"] main .figma-schedule-grid tbody th {
  background: var(--color-card-elevated);
  color: var(--color-text);
  border-color: var(--color-border);
}

[data-theme="dark"] main .figma-schedule-grid tbody td {
  border-color: var(--color-border);
  background: var(--color-card);
}

[data-theme="dark"] main .figma-schedule-grid__cell--pad {
  background: var(--color-bg);
}

[data-theme="dark"] main .figma-schedule-pitch-head__label {
  color: var(--color-text);
}

[data-theme="dark"] main .figma-schedule-remove-x {
  color: var(--color-muted);
}

[data-theme="dark"] main .figma-schedule-remove-x:hover {
  background: rgba(180, 50, 50, 0.2);
  color: #fecaca;
}

[data-theme="dark"] main .figma-schedule-add-field {
  background: var(--color-card-elevated);
  box-shadow: inset 0 0 0 1px var(--color-border);
  color: var(--color-muted);
}

[data-theme="dark"] main .figma-schedule-add-field:hover {
  color: var(--color-link);
}

[data-theme="dark"] main .figma-schedule-add-field--slot {
  background: var(--color-card-elevated);
}

[data-theme="dark"] main .figma-schedule-add-field--slot-filled,
[data-theme="dark"] main .figma-schedule-add-field--slot-filled:hover {
  color: var(--color-text);
}

[data-theme="dark"] main .figma-schedule-slot__avatar--fallback {
  background: var(--color-accent-soft);
  color: var(--color-link);
}

[data-theme="dark"] main .figma-schedule-slot__name {
  color: var(--color-text);
}

[data-theme="dark"] main .figma-schedule-slot__placeholder {
  color: var(--color-muted);
}

[data-theme="dark"] main .figma-schedule-grid__ref-row th {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] main .figma-schedule-grid__ref-row .figma-schedule-grid__ref-label {
  color: var(--color-muted);
}

[data-theme="dark"] main .figma-schedule-match[style*="--match-hue"] {
  background-color: hsl(var(--match-hue), 38%, 20%) !important;
  border-color: hsl(var(--match-hue), 32%, 34%) !important;
  color: var(--color-text);
}

[data-theme="dark"] main .figma-schedule-match__round,
[data-theme="dark"] main .figma-schedule-match__time {
  color: var(--color-muted);
}

[data-theme="dark"] main .figma-schedule-match__score {
  color: var(--color-text);
}

[data-theme="dark"] main .figma-schedule-match__pen {
  color: var(--color-muted);
}

[data-theme="dark"] main .figma-schedule-match__vs {
  color: var(--color-link);
}

[data-theme="dark"] main .figma-schedule-match__status--finished {
  background: rgba(34, 120, 60, 0.25);
  color: #86efac;
}

[data-theme="dark"] main .figma-schedule-match__status--live {
  background: var(--color-accent-soft);
  color: var(--color-link);
}

[data-theme="dark"] main .figma-schedule-team-chip {
  background: rgba(0, 0, 0, 0.2);
  border-color: rgba(120, 180, 220, 0.35);
  color: var(--color-text);
}

[data-theme="dark"] main .figma-schedule-team-chip--locked {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-muted);
}

[data-theme="dark"] main .figma-schedule-empty {
  color: var(--color-muted);
}

[data-theme="dark"] main .figma-schedule-group-col {
  background: var(--color-card);
  border-color: var(--color-border);
}

[data-theme="dark"] main .figma-schedule-group-col--colored {
  background: hsl(var(--group-hue), 35%, 14%);
  border-color: hsl(var(--group-hue), 28%, 28%);
}

[data-theme="dark"] main .figma-schedule-group-col--colored .figma-schedule-group-col__head {
  background: hsl(var(--group-hue), 32%, 20%);
  border-bottom-color: hsl(var(--group-hue), 28%, 28%);
}

[data-theme="dark"] main .figma-schedule-group-col--colored .figma-schedule-group-col__label {
  color: hsl(var(--group-hue), 55%, 78%);
}

[data-theme="dark"] main .figma-schedule-group-col--colored .figma-schedule-group-team {
  background: var(--color-card-elevated);
  border-color: hsl(var(--group-hue), 25%, 32%);
  color: var(--color-text);
}

[data-theme="dark"] main .figma-schedule-group-col__head {
  background: var(--color-card-elevated);
  border-bottom-color: var(--color-border);
}

[data-theme="dark"] main .figma-schedule-group-col__label,
[data-theme="dark"] main .figma-schedule-group-team {
  color: var(--color-text);
}

[data-theme="dark"] main .figma-schedule-group-team {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] main .figma-schedule-group-col--add {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] main .figma-schedule-group-add-btn {
  color: var(--color-muted);
}

[data-theme="dark"] main .figma-schedule-group-col__empty {
  color: var(--color-muted);
}

/* Награды (как на публичной странице турнира) */
[data-theme="dark"] main .organizer-awards-block__title {
  color: var(--color-text);
}

[data-theme="dark"] main .organizer-awards-empty,
[data-theme="dark"] main .organizer-award-main__hint {
  color: var(--color-muted);
}

[data-theme="dark"] main .organizer-awards-page .organizer-award-medal,
[data-theme="dark"] main .organizer-awards-page .organizer-award-main {
  background: var(--color-card);
  border-color: var(--color-border);
}

[data-theme="dark"] main .organizer-awards-add-btn {
  background: var(--color-card-elevated);
  color: #ffb347;
  border: 1px solid var(--color-border);
}

[data-theme="dark"] main .organizer-awards-add-btn:hover {
  background: var(--color-accent-soft);
}

/* Модалки назначения / добавления награды */
[data-theme="dark"] main .organizer-modal-shell .organizer-awards-modal-visual {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] main .organizer-modal-shell .organizer-awards-modal-visual__ph {
  background: var(--color-accent-soft);
}

[data-theme="dark"] main .organizer-modal-shell .organizer-awards-ro-field {
  background: var(--color-input-bg);
  border-color: var(--color-input-border);
  color: var(--color-text);
}

[data-theme="dark"] main .organizer-modal-shell .organizer-awards-ro-field--muted {
  color: var(--color-muted);
}

[data-theme="dark"] main .organizer-modal-shell .organizer-awards-modal-form .organizer-wizard-field label {
  color: var(--color-muted);
}

[data-theme="dark"] main .organizer-modal-shell .organizer-awards-modal-form .organizer-wizard-select {
  background: var(--color-input-bg);
  border-color: var(--color-input-border);
  color: var(--color-text);
}

[data-theme="dark"] main .organizer-modal-shell .organizer-awards-btn--secondary {
  background: var(--color-card-elevated);
  color: var(--color-link);
  border: 1px solid var(--color-border);
}

[data-theme="dark"] main .organizer-modal-shell .organizer-awards-btn--secondary:hover {
  background: var(--color-card);
  color: var(--color-text);
}

[data-theme="dark"] main .organizer-awards-page .organizer-award-main__logo-wrap {
  background: var(--color-card-elevated);
}

[data-theme="dark"] main .organizer-awards-page .organizer-award-main__logo--ph {
  background: var(--color-border);
}

[data-theme="dark"] main .organizer-awards-page .organizer-award-main__name {
  color: var(--color-text);
}

[data-theme="dark"] main .organizer-awards-page .organizer-award-card--team .organizer-award-main--gold,
[data-theme="dark"] .tp-awards-public .organizer-award-card--team .organizer-award-main--gold {
  background: linear-gradient(to left, rgba(255, 210, 90, 0.22) 0%, transparent 52%), var(--color-card);
}

[data-theme="dark"] main .organizer-awards-page .organizer-award-card--team .organizer-award-main--silver,
[data-theme="dark"] .tp-awards-public .organizer-award-card--team .organizer-award-main--silver {
  background: linear-gradient(to left, rgba(186, 198, 214, 0.28) 0%, transparent 52%), var(--color-card);
}

[data-theme="dark"] main .organizer-awards-page .organizer-award-card--team .organizer-award-main--bronze,
[data-theme="dark"] .tp-awards-public .organizer-award-card--team .organizer-award-main--bronze {
  background: linear-gradient(to left, rgba(210, 155, 110, 0.22) 0%, transparent 52%), var(--color-card);
}

[data-theme="dark"] main .organizer-awards-page .organizer-award-card--team .organizer-award-main--special,
[data-theme="dark"] .tp-awards-public .organizer-award-card--team .organizer-award-main--special {
  background: linear-gradient(to left, rgba(120, 180, 220, 0.18) 0%, transparent 52%), var(--color-card);
}

[data-theme="dark"] .tp-fig-team-card__crest-ph,
[data-theme="dark"] .tp-fig-rail-card__thumb--ph,
[data-theme="dark"] .tp-fig-ms-card__crest-ph {
  background: var(--fig-ph);
}

/* Турнир: превью с синим градиентом — как в светлой теме (не менять) */
[data-theme="dark"] .tp-fig .tp-fig-hero {
  background: #004a80;
  color: #fff;
}

[data-theme="dark"] .tp-fig .tp-fig-hero__blob--cyan {
  background: #00cfdc;
  opacity: 0.32;
}

[data-theme="dark"] .tp-fig .tp-fig-hero__blob--indigo {
  background: #02006c;
  opacity: 0.32;
}

[data-theme="dark"] .tp-fig .tp-fig-hero__media {
  background: rgba(0, 0, 0, 0.12);
}

[data-theme="dark"] main .tp-fig .tp-fig-hero h1.tp-fig-hero__title,
[data-theme="dark"] .tp-fig .tp-fig-hero__title {
  color: #fff;
}

[data-theme="dark"] .tp-fig .tp-fig-hero__lbl {
  color: #fff;
  opacity: 0.32;
}

[data-theme="dark"] .tp-fig .tp-fig-hero__val {
  color: #fff;
}

/* ——— Модалки команды (турнир), спортсмена и тренера (каталог) ——— */
[data-theme="dark"] .tp-team-modal-shell .training-modal-shell__panel,
[data-theme="dark"] .athlete-modal-shell .training-modal-shell__panel,
[data-theme="dark"] .coach-modal-shell .training-modal-shell__panel {
  background: var(--color-card);
}

[data-theme="dark"] .tp-team-modal__toolbar {
  background: var(--color-card);
  border-bottom: 1px solid var(--color-border);
}

[data-theme="dark"] .tp-team-modal__name,
[data-theme="dark"] .tp-team-modal__section-title,
[data-theme="dark"] .athlete-modal__section-title,
[data-theme="dark"] .coach-modal__section-title,
[data-theme="dark"] .tp-team-modal-inner .spd-team-roster__title,
[data-theme="dark"] .tp-team-modal-inner .spd-team-kits__title,
[data-theme="dark"] .athlete-modal-inner .spd-team-roster__title,
[data-theme="dark"] .athlete-modal-inner .spd-team-kits__title,
[data-theme="dark"] .coach-modal-inner .spd-team-roster__title,
[data-theme="dark"] .coach-modal-inner .spd-team-kits__title {
  color: var(--color-navy);
}

[data-theme="dark"] .athlete-modal__awards,
[data-theme="dark"] .athlete-modal__team,
[data-theme="dark"] .coach-modal__awards,
[data-theme="dark"] .coach-modal__teams {
  border-top-color: var(--color-border);
}

[data-theme="dark"] .athlete-modal-inner .trainer-profile-card,
[data-theme="dark"] .athlete-modal-inner .trainer-profile-card.card,
[data-theme="dark"] .coach-modal-inner .trainer-profile-card,
[data-theme="dark"] .coach-modal-inner .trainer-profile-card.card {
  background: var(--color-card);
  border-color: var(--color-border);
}

[data-theme="dark"] .athlete-modal-inner .trainer-profile-card__name,
[data-theme="dark"] .coach-modal-inner .trainer-profile-card__name {
  color: var(--color-navy);
}

[data-theme="dark"] .athlete-modal-inner .trainer-profile-card__photo-placeholder,
[data-theme="dark"] .coach-modal-inner .trainer-profile-card__photo-placeholder {
  background: #1a2840 url("/static/images/placeholders/man.svg") center/68% no-repeat;
  border-color: var(--color-border);
}

[data-theme="dark"] .athlete-modal-inner .athlete-profile-meta,
[data-theme="dark"] .athlete-modal-inner .athlete-profile-meta__icon,
[data-theme="dark"] .coach-modal-inner .athlete-profile-meta,
[data-theme="dark"] .coach-modal-inner .athlete-profile-meta__icon {
  color: var(--color-muted);
}

[data-theme="dark"] .athlete-modal-inner .athlete-profile-meta__item > span:last-child,
[data-theme="dark"] .coach-modal-inner .athlete-profile-meta__item > span:last-child {
  color: var(--color-text);
}

[data-theme="dark"] .athlete-modal__school-link,
[data-theme="dark"] .coach-modal__school-link {
  color: var(--color-link);
}

[data-theme="dark"] .athlete-modal__school-link:hover,
[data-theme="dark"] .coach-modal__school-link:hover {
  color: #9ed4f5;
}

[data-theme="dark"] .athlete-modal-inner .team-expanded-card,
[data-theme="dark"] .coach-modal-inner .team-expanded-card {
  background: var(--color-card);
  box-shadow: none;
}

[data-theme="dark"] .athlete-modal-inner .spd-public-team-head__name,
[data-theme="dark"] .coach-modal-inner .spd-public-team-head__name {
  color: var(--color-navy);
}

[data-theme="dark"] .athlete-modal-inner .spd-team-stat__value,
[data-theme="dark"] .coach-modal-inner .spd-team-stat__value {
  color: var(--color-text);
}

[data-theme="dark"] .athlete-modal-inner .spd-public-team-head__crest,
[data-theme="dark"] .coach-modal-inner .spd-public-team-head__crest {
  background: var(--color-card-elevated);
}

[data-theme="dark"] .athlete-modal-inner .team-tag--age,
[data-theme="dark"] .coach-modal-inner .team-tag--age {
  background: var(--color-card-elevated);
  color: var(--color-muted);
}

[data-theme="dark"] .tp-team-modal__crest-ph {
  background: linear-gradient(135deg, var(--color-card-elevated), var(--color-border));
}

[data-theme="dark"] .tp-team-modal__tags .team-tag--school {
  background: rgba(55, 140, 200, 0.22);
  color: var(--color-link);
}

[data-theme="dark"] .tp-team-modal__tags a.team-tag--school:hover {
  background: rgba(55, 140, 200, 0.35);
  color: #9ed4f5;
}

[data-theme="dark"] .tp-team-modal-inner .trainer-stat-pill,
[data-theme="dark"] .athlete-modal-inner .trainer-stat-pill,
[data-theme="dark"] .coach-modal-inner .trainer-stat-pill {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-muted);
}

[data-theme="dark"] .tp-team-modal-inner .trainer-stat-pill em,
[data-theme="dark"] .athlete-modal-inner .trainer-stat-pill em,
[data-theme="dark"] .coach-modal-inner .trainer-stat-pill em {
  color: var(--color-text);
}

[data-theme="dark"] .tp-team-modal-inner .spd-team-staff__role,
[data-theme="dark"] .athlete-modal-inner .spd-team-staff__role,
[data-theme="dark"] .coach-modal-inner .spd-team-staff__role {
  color: var(--color-muted);
}

[data-theme="dark"] .tp-team-modal-inner .spd-team-staff__name,
[data-theme="dark"] .athlete-modal-inner .spd-team-staff__name,
[data-theme="dark"] .coach-modal-inner .spd-team-staff__name {
  color: var(--color-text);
}

[data-theme="dark"] .tp-team-modal-inner .spd-team-staff__photo--empty,
[data-theme="dark"] .athlete-modal-inner .spd-team-staff__photo--empty,
[data-theme="dark"] .coach-modal-inner .spd-team-staff__photo--empty {
  background: #1a2840 url("/static/images/placeholders/man.svg") center/72% no-repeat;
}

[data-theme="dark"] .tp-team-modal-inner .spd-team-kit__label,
[data-theme="dark"] .athlete-modal-inner .spd-team-kit__label,
[data-theme="dark"] .coach-modal-inner .spd-team-kit__label {
  color: var(--color-link);
}

[data-theme="dark"] .tp-team-modal-inner .kit-figure-frame,
[data-theme="dark"] .athlete-modal-inner .kit-figure-frame,
[data-theme="dark"] .coach-modal-inner .kit-figure-frame {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] .tp-team-modal-inner .trainer-roster-table,
[data-theme="dark"] .athlete-modal-inner .trainer-roster-table,
[data-theme="dark"] .coach-modal-inner .trainer-roster-table {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] .tp-team-modal-inner .trainer-roster-table th,
[data-theme="dark"] .athlete-modal-inner .trainer-roster-table th,
[data-theme="dark"] .coach-modal-inner .trainer-roster-table th {
  background: var(--color-card);
  color: var(--color-muted);
  border-color: var(--color-border);
}

[data-theme="dark"] .tp-team-modal-inner .trainer-roster-table td,
[data-theme="dark"] .athlete-modal-inner .trainer-roster-table td,
[data-theme="dark"] .coach-modal-inner .trainer-roster-table td {
  color: var(--color-text);
  border-color: var(--color-border);
}

[data-theme="dark"] .tp-team-modal-inner .trainer-roster-table tbody tr:hover,
[data-theme="dark"] .athlete-modal-inner .trainer-roster-table tbody tr:hover,
[data-theme="dark"] .coach-modal-inner .trainer-roster-table tbody tr:hover {
  background: rgba(55, 140, 200, 0.08);
}

[data-theme="dark"] .tp-team-modal-inner .formation-showcase__summary,
[data-theme="dark"] .tp-team-modal-inner .formation-showcase__details--open .formation-showcase__summary,
[data-theme="dark"] .athlete-modal-inner .formation-showcase__summary,
[data-theme="dark"] .athlete-modal-inner .formation-showcase__details--open .formation-showcase__summary,
[data-theme="dark"] .coach-modal-inner .formation-showcase__summary,
[data-theme="dark"] .coach-modal-inner .formation-showcase__details--open .formation-showcase__summary {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] .tp-team-modal-inner .formation-showcase__summary-meta,
[data-theme="dark"] .athlete-modal-inner .formation-showcase__summary-meta,
[data-theme="dark"] .coach-modal-inner .formation-showcase__summary-meta {
  color: var(--color-muted);
}

[data-theme="dark"] .tp-team-modal-inner .formation-showcase__pitch-hint,
[data-theme="dark"] .tp-team-modal-inner .formation-showcase__details--open .formation-showcase__pitch-hint,
[data-theme="dark"] .athlete-modal-inner .formation-showcase__pitch-hint,
[data-theme="dark"] .athlete-modal-inner .formation-showcase__details--open .formation-showcase__pitch-hint,
[data-theme="dark"] .coach-modal-inner .formation-showcase__pitch-hint,
[data-theme="dark"] .coach-modal-inner .formation-showcase__details--open .formation-showcase__pitch-hint {
  color: var(--color-muted);
}

[data-theme="dark"] .tp-team-modal-inner .formation-showcase__frame,
[data-theme="dark"] .athlete-modal-inner .formation-showcase__frame,
[data-theme="dark"] .coach-modal-inner .formation-showcase__frame {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] .tp-team-modal-inner .formation-showcase__title,
[data-theme="dark"] .tp-team-modal-inner .formation-showcase__field label,
[data-theme="dark"] .athlete-modal-inner .formation-showcase__title,
[data-theme="dark"] .athlete-modal-inner .formation-showcase__field label,
[data-theme="dark"] .coach-modal-inner .formation-showcase__title,
[data-theme="dark"] .coach-modal-inner .formation-showcase__field label {
  color: var(--color-text);
}

[data-theme="dark"] .tp-team-modal-inner .formation-showcase__select,
[data-theme="dark"] .athlete-modal-inner .formation-showcase__select,
[data-theme="dark"] .coach-modal-inner .formation-showcase__select {
  background: var(--color-card);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] .tp-team-modal-inner .trainer-awards-empty,
[data-theme="dark"] .athlete-modal-inner .trainer-awards-empty,
[data-theme="dark"] .coach-modal-inner .trainer-awards-empty {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-muted);
}

/* ——— Страница матча (tp-mip) ——— */
[data-theme="dark"] .tp-mip {
  --fig-tab-inactive-bg: #151d28;
  --fig-tab-active-bg: rgba(55, 140, 200, 0.28);
  --fig-tab-active: #6eb8e8;
  --fig-body: #c8d6e3;
  background: var(--color-bg);
}

[data-theme="dark"] .tp-mip-stack {
  background: var(--color-card);
  border: 1px solid var(--color-border);
  box-shadow: var(--shadow);
}

/* Превью турнира на странице матча — синий блок как в светлой теме */
[data-theme="dark"] .tp-mip .tp-mip-hero {
  background: #004a80;
}

[data-theme="dark"] .tp-mip .tp-mip-hero__blob--a {
  background: #00cfdc;
  opacity: 0.32;
}

[data-theme="dark"] .tp-mip .tp-mip-hero__blob--b {
  background: #02006c;
  opacity: 0.32;
}

[data-theme="dark"] .tp-mip .tp-mip-hero__dates,
[data-theme="dark"] .tp-mip .tp-mip-hero__title,
[data-theme="dark"] main .tp-mip .tp-mip-hero h1.tp-mip-hero__title,
[data-theme="dark"] .tp-mip .tp-mip-hero__val {
  color: #fff;
}

[data-theme="dark"] .tp-mip .tp-mip-hero__lbl {
  color: #fff;
  opacity: 0.32;
}

[data-theme="dark"] .tp-mip .tp-mip-tab {
  background: var(--fig-tab-inactive-bg, #151d28);
  color: var(--fig-body, #c8d6e3);
}

[data-theme="dark"] .tp-mip .tp-mip-tab:hover {
  color: var(--fig-tab-active, #6eb8e8);
  background: var(--color-card-elevated);
}

[data-theme="dark"] .tp-mip .tp-mip-tab--active {
  background: var(--fig-tab-active-bg, rgba(55, 140, 200, 0.28));
  color: var(--fig-tab-active, #6eb8e8);
}

[data-theme="dark"] .tp-mip .tp-mi__side {
  background: var(--color-card-elevated);
  outline-color: var(--color-border);
}

[data-theme="dark"] .tp-mip .tp-mi__crest,
[data-theme="dark"] .tp-mip .tp-mi__crest-ph {
  background: var(--color-card-elevated);
}

[data-theme="dark"] .tp-mip .tp-mi__team-name,
[data-theme="dark"] .tp-mip .tp-mi__period {
  color: var(--color-text);
}

[data-theme="dark"] .tp-mip .tp-mi__mid {
  background: var(--color-card-elevated);
  outline-color: var(--color-border);
}

[data-theme="dark"] .tp-mip .tp-mi__slot,
[data-theme="dark"] .tp-mip .tp-mi__slot-time,
[data-theme="dark"] .tp-mip .tp-mi__slot-date,
[data-theme="dark"] .tp-mip .tp-mi__clock,
[data-theme="dark"] .tp-mip .tp-mi__pen {
  color: var(--color-muted);
}

[data-theme="dark"] .tp-mip .tp-mi__score,
[data-theme="dark"] .tp-mip .tp-mi--finished .tp-mi__score {
  color: var(--fig-tab-active, #6eb8e8);
}

[data-theme="dark"] .tp-mip .tp-mi--scheduled .tp-mi__score {
  color: var(--color-muted);
}

[data-theme="dark"] .tp-mip .tp-mi-foot__bar {
  background: var(--color-card-elevated);
}

[data-theme="dark"] .tp-mip .tp-mi-foot__lbl {
  color: var(--color-muted);
}

[data-theme="dark"] .tp-mip .tp-mi-foot__val {
  color: var(--color-text);
}

[data-theme="dark"] .tp-mip .tp-mi-foot__sep {
  background: var(--color-border);
}

[data-theme="dark"] .tp-mip .tp-mi-foot__ic svg {
  color: var(--color-muted);
}

[data-theme="dark"] .tp-mip .tp-mi-pitch {
  background: rgba(55, 140, 200, 0.12);
}

[data-theme="dark"] .tp-mip .tp-mi-pitch__half,
[data-theme="dark"] .tp-mip .tp-mi-pitch__empty {
  color: var(--color-muted);
}

[data-theme="dark"] .tp-mip .tp-mi-pitch__bar {
  background: var(--color-border);
}

[data-theme="dark"] .tp-mip .tp-mi-pitch__li,
[data-theme="dark"] .tp-mip .tp-mi-pitch__txt {
  color: var(--color-text);
}

[data-theme="dark"] .tp-mip .tp-mi-pitch__min {
  background: var(--color-card);
  outline-color: rgba(55, 140, 200, 0.15);
  color: var(--color-muted);
}

[data-theme="dark"] .tp-mip .tp-mi-tl {
  background: rgba(55, 140, 200, 0.12);
}

[data-theme="dark"] .tp-mip .tp-mi-tl-vline,
[data-theme="dark"] .tp-mip .tp-mi-tl-slice-mid,
[data-theme="dark"] .tp-mip .tp-mi-tl-hr {
  background: var(--color-border);
}

[data-theme="dark"] .tp-mip .tp-mi-tl-half,
[data-theme="dark"] .tp-mip .tp-mi-tl-team-name,
[data-theme="dark"] .tp-mip .tp-mi-tl-empty {
  color: var(--color-muted);
}

[data-theme="dark"] .tp-mip .tp-mi-tl-pop {
  background: var(--color-card);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] .tp-mip .tp-mi-tl-pop__txt {
  color: var(--color-text);
}

[data-theme="dark"] .tp-mip .tp-mi-tl-bul--goal {
  background: var(--color-card);
  border-color: var(--color-border);
  color: var(--color-muted);
}

/* Волейбол: вкладки сетов, ось, буллеты */
[data-theme="dark"] .tp-mip .tp-vb-tl-tab {
  color: var(--color-muted);
}

[data-theme="dark"] .tp-mip .tp-vb-tl-tab.is-active {
  color: var(--fig-tab-active, #6eb8e8);
  border-bottom-color: var(--fig-tab-active, #6eb8e8);
}

[data-theme="dark"] .tp-mip .tp-vb-tl-set-label {
  color: rgba(200, 214, 227, 0.35);
}

[data-theme="dark"] .tp-mip .tp-vb-tl-axis {
  background: var(--color-border);
}

[data-theme="dark"] .tp-mip .tp-vb-tl-bul {
  background: var(--color-card);
  border-color: var(--color-border);
}

[data-theme="dark"] .tp-mip .tp-vb-tl-arrow--a,
[data-theme="dark"] .tp-mip .tp-vb-tl-arrow--b {
  border-bottom-color: var(--color-muted);
  border-top-color: var(--color-muted);
}

[data-theme="dark"] .tp-mip .tp-mi--volleyball .tp-vb-sets-won {
  color: var(--fig-tab-active, #6eb8e8);
}

[data-theme="dark"] .tp-mip .tp-mi--volleyball .tp-vb-when,
[data-theme="dark"] .tp-mip .tp-mi--volleyball .tp-vb-set-pt {
  color: var(--color-muted);
}

/* Статистика по таймам (голы, карточки) */
[data-theme="dark"] .tp-ms-sec {
  background: var(--color-card-elevated);
}

[data-theme="dark"] .tp-ms-sec__head {
  background: var(--color-border);
}

[data-theme="dark"] .tp-ms-sec__head-cell,
[data-theme="dark"] .tp-ms-min,
[data-theme="dark"] .tp-ms-pri,
[data-theme="dark"] .tp-ms-badge__score {
  color: var(--color-text);
}

[data-theme="dark"] .tp-ms-asis {
  color: var(--color-muted);
}

[data-theme="dark"] .tp-ms-row--stripe-light {
  background: var(--color-card);
}

[data-theme="dark"] .tp-ms-row--stripe-muted {
  background: rgba(255, 255, 255, 0.03);
}

[data-theme="dark"] .tp-ms-badge {
  outline-color: var(--color-border);
  background: var(--color-card);
}

[data-theme="dark"] .tp-ms-ico--ball svg path {
  fill: var(--color-text);
}

/* ——— Модалки и загрузка файлов ——— */
[data-theme="dark"] .training-modal-shell__backdrop {
  background: rgba(0, 8, 16, 0.72);
}

[data-theme="dark"] .training-modal-shell__panel {
  background: var(--color-card);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] .school-cover-crop-shell__title {
  color: var(--color-navy);
}

[data-theme="dark"] .school-cover-crop-stage {
  background: #0a121a;
  border: 1px solid var(--color-border-subtle);
}

[data-theme="dark"] .school-cover-crop-box {
  border-color: #e8f4ff;
  box-shadow: 0 0 0 9999px rgba(0, 8, 16, 0.72);
}

[data-theme="dark"] .school-cover-crop-box__handle {
  background: var(--color-card-elevated);
  border-color: var(--color-link);
}

[data-theme="dark"] .school-branch-map-preview {
  background: var(--color-input-bg);
  border-color: var(--color-border);
}

[data-theme="dark"] .school-branch-map-block {
  border-top-color: var(--color-border);
}

[data-theme="dark"] .school-branch-map-block__label {
  color: var(--color-navy);
}

/* Приглашение в команду / школу (тренер, спортсмен) */
[data-theme="dark"] .team-invite-panel__text,
[data-theme="dark"] .team-invite-panel .muted {
  color: var(--color-text);
}

[data-theme="dark"] .team-invite-panel__coach-name {
  color: var(--color-navy);
}

[data-theme="dark"] .team-invite-panel__coach-role {
  color: var(--color-muted);
}

[data-theme="dark"] .team-invite-panel__crest {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] .team-invite-panel__crest--placeholder {
  background: rgba(55, 140, 200, 0.15);
  border-color: var(--color-link);
}

[data-theme="dark"] .training-modal-form__title,
[data-theme="dark"] .training-modal-close {
  color: var(--color-text);
}

[data-theme="dark"] .training-modal-close:hover {
  background: var(--color-card-elevated);
}

[data-theme="dark"] .vpd-booking-detail__row {
  border-bottom-color: var(--color-border);
}

[data-theme="dark"] .vpd-booking-detail__row dt {
  color: var(--color-muted);
}

[data-theme="dark"] .vpd-booking-detail__row dd {
  color: var(--color-text);
}

[data-theme="dark"] .training-modal-shell .btn-cancel-outline {
  background: var(--color-card-elevated);
  color: var(--color-text);
  border-color: var(--color-border);
}

[data-theme="dark"] .training-modal-shell .btn-cancel-outline:hover {
  background: var(--color-card);
}

[data-theme="dark"] .training-modal-shell .btn-training-delete {
  background: rgba(180, 50, 50, 0.15);
  color: #f5a8a8;
  border-color: rgba(180, 50, 50, 0.4);
}

[data-theme="dark"] .training-modal-shell .btn-training-delete:hover {
  background: rgba(180, 50, 50, 0.28);
  border-color: rgba(220, 100, 100, 0.55);
}

[data-theme="dark"] .training-modal-form__grid label,
[data-theme="dark"] .training-modal-form__readonly-hint {
  color: var(--color-muted);
}

[data-theme="dark"] .training-modal-form__grid input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]):not([type="button"]),
[data-theme="dark"] .training-modal-form__grid select,
[data-theme="dark"] .training-modal-form__grid textarea,
[data-theme="dark"] .training-modal-input {
  background: var(--color-input-bg);
  border-color: var(--color-input-border);
  color: var(--color-text);
}

[data-theme="dark"] .file-dropzone__zone {
  background: var(--color-input-bg);
  border-color: var(--color-border);
  color: var(--color-muted);
}

[data-theme="dark"] .file-dropzone__zone:hover {
  border-color: var(--color-link);
  background: var(--color-accent-soft);
}

/* ——— Поп-ап карты (школы, площадки, страница школы) ——— */
[data-theme="dark"] .ss-map-modal__backdrop {
  background: rgba(0, 8, 16, 0.72);
}

[data-theme="dark"] .ss-map-modal__panel {
  background: var(--color-card);
  border: 1px solid var(--color-border);
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.45);
  color: var(--color-text);
}

[data-theme="dark"] .ss-map-modal__close {
  background: var(--color-card-elevated);
  border: 1px solid var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] .ss-map-modal__close:hover {
  background: var(--color-card);
  color: #fff;
}

[data-theme="dark"] .ss-map-modal__close .ss-icon path {
  stroke: currentColor !important;
}

[data-theme="dark"] .ss-map-modal__title {
  color: var(--color-navy);
}

[data-theme="dark"] .ss-map-modal__addr {
  color: var(--color-muted);
}

[data-theme="dark"] .ss-map-modal__frame-wrap {
  background: var(--color-card-elevated);
  border: 1px solid var(--color-border);
}

/* ——— Cookie, scroll, гайды, toast ——— */
[data-theme="dark"] .ls-cookie-banner__panel,
[data-theme="dark"] .ls-cookie-settings__panel {
  background: var(--color-card);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] .ls-cookie-banner__title,
[data-theme="dark"] .ls-cookie-settings__title {
  color: var(--color-navy);
}

[data-theme="dark"] .ls-scroll-top {
  background: var(--color-card-elevated);
  color: var(--color-navy);
  box-shadow: var(--shadow);
}

[data-theme="dark"] .ls-scroll-top:hover {
  background: var(--color-navy-deep);
  color: #fff;
}

[data-theme="dark"] .ls-site-guide-fab,
[data-theme="dark"] .ls-user-guide-fab {
  background: var(--color-card-elevated);
  color: var(--color-navy);
  border-color: var(--color-border);
}

[data-theme="dark"] .site-user-guide,
[data-theme="dark"] .site-admin-guide {
  background: var(--color-bg);
  color: var(--color-text);
}

[data-theme="dark"] .site-admin-guide__sidebar,
[data-theme="dark"] .site-admin-guide__content,
[data-theme="dark"] .site-user-guide__content {
  background: var(--color-card);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] .site-admin-guide__nav-link {
  color: var(--color-text);
}

[data-theme="dark"] .site-admin-guide__nav-link.is-active,
[data-theme="dark"] .site-admin-guide__nav-link:hover {
  background: var(--color-card-elevated);
  color: var(--color-navy);
}

/* ——— Руководство пользователя: навигация, подменю, снимки ——— */
[data-theme="dark"] .site-admin-guide__nav {
  background: var(--color-card);
  border-color: var(--color-border);
  box-shadow: var(--shadow);
}

[data-theme="dark"] .site-admin-guide__nav-brand {
  border-bottom-color: var(--color-border);
}

[data-theme="dark"] .site-admin-guide__nav-brand strong,
[data-theme="dark"] .site-user-guide__hero-title,
[data-theme="dark"] .site-admin-guide__hero h1,
[data-theme="dark"] .site-admin-guide__section h2,
[data-theme="dark"] .site-admin-guide__section h3,
[data-theme="dark"] .site-user-guide .ug-guide-step__title {
  color: var(--color-navy);
}

[data-theme="dark"] .site-admin-guide__nav a {
  color: var(--color-text);
}

[data-theme="dark"] .site-admin-guide__nav a:hover,
[data-theme="dark"] .site-admin-guide__nav a:focus-visible {
  background: var(--color-card-elevated);
  color: var(--color-navy);
}

[data-theme="dark"] .site-admin-guide__nav-group {
  color: var(--color-muted);
}

[data-theme="dark"] .site-user-guide .ug-nav-submenu__summary {
  color: var(--color-navy);
}

[data-theme="dark"] .site-user-guide .ug-nav-submenu__summary::after {
  border-right-color: var(--color-muted);
  border-bottom-color: var(--color-muted);
}

[data-theme="dark"] .site-user-guide .ug-nav-submenu__summary:hover,
[data-theme="dark"] .site-user-guide details.ug-nav-submenu--current > .ug-nav-submenu__summary {
  background: var(--color-accent-soft);
  color: var(--color-link);
}

[data-theme="dark"] .site-user-guide details.ug-nav-submenu,
[data-theme="dark"] .site-user-guide .ug-nav-submenu-wrap {
  background: transparent;
}

[data-theme="dark"] .site-user-guide .ug-nav-submenu__panel {
  border: none;
  background: transparent;
}

[data-theme="dark"] .site-user-guide .ug-nav-submenu__panel a {
  color: var(--color-muted);
}

[data-theme="dark"] .site-user-guide .ug-nav-submenu__panel a:hover,
[data-theme="dark"] .site-user-guide .ug-nav-submenu__panel a:focus-visible {
  color: var(--color-link);
  background: var(--color-accent-soft);
}

[data-theme="dark"] .site-user-guide .site-admin-guide__nav a.ug-nav-link--active {
  background: var(--color-accent-soft);
  color: var(--color-link);
}

[data-theme="dark"] .site-user-guide .site-admin-guide__nav .ug-nav-submenu__panel a.ug-nav-link--active {
  color: var(--color-link);
}

[data-theme="dark"] .ug-role-banner {
  background: var(--color-accent-soft);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] .ug-role-banner strong,
[data-theme="dark"] .ug-role-picker__label {
  color: var(--color-navy);
}

[data-theme="dark"] .ug-role-btn {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] .ug-role-btn:hover {
  border-color: var(--color-orange);
  color: var(--color-orange);
}

[data-theme="dark"] .ug-role-btn.is-active {
  background: var(--color-orange);
  border-color: transparent;
  color: #fff;
}

[data-theme="dark"] .ug-beginner-tip {
  background: var(--color-accent-soft);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] .ug-beginner-tip strong {
  color: var(--color-navy);
}

[data-theme="dark"] .site-user-guide .ug-guide-step {
  border-bottom-color: var(--color-border);
}

[data-theme="dark"] .site-admin-guide__table-wrap {
  border-color: var(--color-border);
}

[data-theme="dark"] .site-admin-guide__table th {
  background: var(--color-card-elevated);
  color: var(--color-navy);
}

[data-theme="dark"] .site-admin-guide__table th,
[data-theme="dark"] .site-admin-guide__table td {
  border-bottom-color: var(--color-border);
  color: var(--color-text);
}

/* Вкладки FAQ и блоки «Частые вопросы» (site-admin-guide + site-user-guide) */
[data-theme="dark"] .site-admin-guide__tab {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] .site-admin-guide__tab:hover,
[data-theme="dark"] .site-admin-guide__tab.is-active {
  border-color: var(--color-link);
  background: var(--color-accent-soft);
  color: var(--color-navy);
}

[data-theme="dark"] .site-admin-guide__tab-panel {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] .site-admin-guide__tab-panel p {
  color: var(--color-text);
}

[data-theme="dark"] .site-admin-guide__tab-panel strong {
  color: var(--color-navy);
}

/* Снимки / подложки макетов кабинетов */
[data-theme="dark"] .site-user-guide .ug-snapshot {
  background: var(--color-bg);
  border-color: var(--color-border);
}

[data-theme="dark"] .site-user-guide .ug-snapshot__body {
  background: var(--color-bg);
  color: var(--color-text);
}

[data-theme="dark"] .site-user-guide .ug-snapshot__caption {
  background: var(--color-card);
  color: var(--color-muted);
  border-top-color: var(--color-border);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .ss-breadcrumbs a {
  color: var(--color-link);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .ss-breadcrumbs span {
  color: var(--color-muted);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .sidebar,
[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-sidebar.card {
  background: var(--color-card);
  border: 1px solid var(--color-border);
  box-shadow: var(--shadow);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .sidebar a,
[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-sidebar__link {
  color: var(--color-text);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .sidebar a:hover,
[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-sidebar__link:hover {
  background: var(--color-card-elevated);
  color: var(--color-text);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .sidebar a.is-active,
[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-sidebar__link.is-active {
  background: var(--color-accent-soft);
  border-left-color: var(--color-link);
  color: var(--color-link);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-sidebar__group {
  border-top-color: var(--color-border);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .sidebar-group__label,
[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-sidebar__group .sidebar-group__label {
  color: var(--color-muted);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .sidebar-group.is-open .sidebar-group__label {
  color: var(--color-navy);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .sidebar-group__submenu a,
[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-sidebar__link--school-tab {
  color: var(--color-text);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .sidebar-group__submenu a.is-active,
[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-sidebar__link--school-tab.is-active {
  background: var(--color-accent-soft);
  border-left-color: var(--color-link);
  color: var(--color-link);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .card,
[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-comp-card,
[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-profile-card,
[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-dash-tile,
[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-table-wrap.card {
  background: var(--color-card);
  border-color: var(--color-border);
  color: var(--color-text);
  box-shadow: var(--shadow);
}

[data-theme="dark"] .site-user-guide .ug-snapshot h1,
[data-theme="dark"] .site-user-guide .ug-snapshot h2,
[data-theme="dark"] .site-user-guide .ug-snapshot h3,
[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-dash-tile__title,
[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-dash-tile__heading {
  color: var(--color-navy);
}

[data-theme="dark"] .site-user-guide .ug-snapshot p,
[data-theme="dark"] .site-user-guide .ug-snapshot .page-hint,
[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-dash-empty,
[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-dash-list__meta {
  color: var(--color-muted);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-roster-table th {
  background: var(--color-card-elevated);
  color: var(--color-muted);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-roster-table td {
  color: var(--color-text);
  border-color: var(--color-border);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-comp-subtab {
  background: var(--color-card-elevated);
  color: var(--color-text);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-comp-subtab.is-active {
  background: var(--color-accent-soft);
  color: var(--color-link);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-comp-pill,
[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-comp-pill__badge {
  background: var(--color-card-elevated);
  color: var(--color-text);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-comp-pill.is-active {
  background: var(--color-accent-soft);
  color: var(--color-link);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .training-modal-form[style],
[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-invite-modal[style] {
  background: var(--color-card) !important;
  border-color: var(--color-border) !important;
  color: var(--color-text);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .training-modal-form label,
[data-theme="dark"] .site-user-guide .ug-snapshot .trainer-invite-modal label {
  color: var(--color-muted);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .badge {
  background: var(--color-accent-soft);
  color: var(--color-link);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .organizer-tournament-title-link {
  color: var(--color-link);
}

[data-theme="dark"] .site-user-guide .ug-mock-browser,
[data-theme="dark"] .site-user-guide .ug-mock-dash {
  background: var(--color-card);
  border-color: var(--color-border);
}

[data-theme="dark"] .site-user-guide .ug-mock-sidebar span.is-on,
[data-theme="dark"] .site-user-guide .ug-mock-pill.is-on {
  background: var(--color-accent-soft);
  color: var(--color-link);
}

[data-theme="dark"] .site-user-guide .ug-mock-main,
[data-theme="dark"] .site-user-guide .ug-mock-browser__url {
  background: var(--color-card);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] .site-user-guide .ug-mock-browser__bar {
  background: var(--color-card-elevated);
  border-bottom-color: var(--color-border);
}

[data-theme="dark"] .site-user-guide .ug-mock-field label {
  color: var(--color-muted);
}

[data-theme="dark"] .site-user-guide .ug-mock-field .ug-mock-input {
  background: var(--color-input-bg);
  border-color: var(--color-input-border);
}

[data-theme="dark"] .site-user-guide .ug-mock-table th {
  background: var(--color-card-elevated);
  color: var(--color-muted);
}

[data-theme="dark"] .site-user-guide .ug-mock-title {
  color: var(--color-navy);
}

[data-theme="dark"] .site-user-guide .ug-modal-snapshot-stage {
  background: rgba(0, 0, 0, 0.35);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .school-owner-preview__caption,
[data-theme="dark"] .site-user-guide .ug-snapshot .venue-owner-preview__caption {
  color: var(--color-muted);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .school-owner-preview__shell,
[data-theme="dark"] .site-user-guide .ug-snapshot .school-owner-preview__hero,
[data-theme="dark"] .site-user-guide .ug-snapshot .school-plan-add-panel {
  background: var(--color-card-elevated) !important;
  border-color: var(--color-border) !important;
}

[data-theme="dark"] .site-user-guide .ug-snapshot .school-owner-preview__title,
[data-theme="dark"] .site-user-guide .ug-snapshot .venue-owner-preview__name {
  color: var(--color-navy);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .school-owner-preview__meta,
[data-theme="dark"] .site-user-guide .ug-snapshot .venue-owner-preview__address,
[data-theme="dark"] .site-user-guide .ug-snapshot .school-owner-preview__link,
[data-theme="dark"] .site-user-guide .ug-snapshot .venue-owner-preview__link {
  color: var(--color-muted);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .school-owner-preview__cover-media {
  background: linear-gradient(135deg, var(--color-card-elevated), var(--color-card));
}

[data-theme="dark"] .site-user-guide .ug-snapshot .school-owner-preview__logo-media {
  background: var(--color-card-elevated) !important;
  color: var(--color-link) !important;
}

[data-theme="dark"] .site-user-guide .ug-snapshot .school-owner-preview__media-overlay,
[data-theme="dark"] .site-user-guide .ug-snapshot .venue-owner-preview__photo-picker-overlay {
  background: rgba(0, 0, 0, 0.55);
  color: #fff;
}

[data-theme="dark"] .site-user-guide .ug-snapshot .school-advantage-item,
[data-theme="dark"] .site-user-guide .ug-snapshot .venue-booking-schedule,
[data-theme="dark"] .site-user-guide .ug-snapshot .venue-pitch-modal,
[data-theme="dark"] .site-user-guide .ug-snapshot .school-owner-team-coach-assign {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .venue-pitch-modal__pricing-title {
  color: var(--color-navy);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .venue-price-rule-row__remove {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-muted);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .venue-booking-row--pending,
[data-theme="dark"] .site-user-guide .ug-snapshot .venue-booking-row--confirmed-unpaid {
  background: rgba(251, 191, 36, 0.14);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .venue-booking-row--confirmed-unpaid {
  background: rgba(248, 113, 113, 0.12);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .venue-booking-row--pending td,
[data-theme="dark"] .site-user-guide .ug-snapshot .venue-booking-row--confirmed-unpaid td {
  color: var(--color-text);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .school-advantage-item__title {
  color: var(--color-text);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .organizer-event-card,
[data-theme="dark"] .site-user-guide .ug-snapshot .organizer-event-preparation,
[data-theme="dark"] .site-user-guide .ug-snapshot .organizer-event-applications,
[data-theme="dark"] .site-user-guide .ug-snapshot .organizer-event-secondary-frame,
[data-theme="dark"] .site-user-guide .ug-snapshot .organizer-wizard-footer,
[data-theme="dark"] .site-user-guide .ug-snapshot .organizer-modal-shell__panel,
[data-theme="dark"] .site-user-guide .ug-snapshot .training-modal-shell__panel {
  background: var(--color-card);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .organizer-event-tab {
  background: var(--color-card-elevated);
  color: var(--color-muted);
  border-color: var(--color-border);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .organizer-event-tab.is-active {
  background: var(--color-accent-soft);
  color: var(--color-link);
  border-color: var(--color-border);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .organizer-event-tab.is-disabled {
  opacity: 0.55;
}

[data-theme="dark"] .site-user-guide .ug-snapshot .organizer-event-applications__title,
[data-theme="dark"] .site-user-guide .ug-snapshot .organizer-event-applications__subtitle,
[data-theme="dark"] .site-user-guide .ug-snapshot .organizer-wizard-field label {
  color: var(--color-muted);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .organizer-wizard-input,
[data-theme="dark"] .site-user-guide .ug-snapshot .organizer-modal-form input,
[data-theme="dark"] .site-user-guide .ug-snapshot .organizer-modal-form select,
[data-theme="dark"] .site-user-guide .ug-snapshot .organizer-modal-form textarea {
  background: var(--color-input-bg);
  border-color: var(--color-input-border);
  color: var(--color-text);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .vpd-hero-shell.card {
  background: linear-gradient(135deg, var(--color-accent-soft), var(--color-card)) !important;
  border-color: var(--color-border);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .venue-owner-video-preview {
  background: var(--color-card-elevated) !important;
  border-color: var(--color-border) !important;
}

[data-theme="dark"] .site-user-guide .ug-snapshot .layout-dashboard > div > .card,
[data-theme="dark"] .site-user-guide .ug-snapshot .school-owner-preview.card,
[data-theme="dark"] .site-user-guide .ug-snapshot .venue-owner-preview.card {
  background: var(--color-card);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] .site-user-guide .ug-snapshot #school-plan-add-panel {
  background: var(--color-card-elevated) !important;
  border-color: var(--color-border) !important;
}

[data-theme="dark"] .site-user-guide .ug-snapshot .crest-upload,
[data-theme="dark"] .site-user-guide .ug-snapshot .crest-upload:hover {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .crest-upload__placeholder {
  color: var(--color-link);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .team-expanded-card,
[data-theme="dark"] .site-user-guide .ug-snapshot .training-calendar-card {
  background: var(--color-card);
  border-color: var(--color-border);
}

[data-theme="dark"] .site-user-guide .ug-snapshot .form-hint,
[data-theme="dark"] .site-user-guide .ug-snapshot .venue-owner-field__hint {
  color: var(--color-muted);
}

[data-theme="dark"] .site-user-guide .ug-snapshot :is(input, textarea, select):not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]) {
  background: var(--color-input-bg);
  border-color: var(--color-input-border);
  color: var(--color-text);
}

[data-theme="dark"] .site-admin-guide__lead,
[data-theme="dark"] .site-user-guide .site-admin-guide__lead {
  color: var(--color-muted);
}

[data-theme="dark"] .toast,
[data-theme="dark"] .ls-toast {
  background: var(--color-card-elevated);
  color: var(--color-text);
  border-color: var(--color-border);
}

[data-theme="dark"] .alert-success {
  background: rgba(34, 120, 80, 0.2);
  color: #8fd4b0;
}

[data-theme="dark"] .alert-error,
[data-theme="dark"] .form-error {
  color: #f5a8a8;
}

[data-theme="dark"] .pf-alert--error {
  background: rgba(180, 50, 50, 0.15);
  color: #f5a8a8;
  border-color: rgba(180, 50, 50, 0.35);
}

/* Выпадающее меню и моб. панель (не полоса шапки) */
[data-theme="dark"] .ls-user-dropdown {
  background: var(--color-card);
  border-color: var(--color-border);
  box-shadow: var(--shadow);
}

[data-theme="dark"] .ls-user-dropdown__item {
  color: var(--color-text);
}

[data-theme="dark"] .ls-user-dropdown__item:hover {
  background: var(--color-card-elevated);
  color: var(--color-text);
}

[data-theme="dark"] .ls-user-dropdown__divider {
  background: var(--color-border);
}

[data-theme="dark"] .ls-user-dropdown .ls-theme-switch-row__label {
  color: var(--color-text);
}

[data-theme="dark"] .ls-mob-header__panel {
  background: var(--color-card);
  border-color: var(--color-border);
}

[data-theme="dark"] .ls-mob-header__panel .ls-site-nav__link,
[data-theme="dark"] .ls-mob-header__profile-link,
[data-theme="dark"] .ls-mob-header__user-name {
  color: var(--color-text);
}

[data-theme="dark"] .ls-mob-header__panel .ls-site-nav__link:hover,
[data-theme="dark"] .ls-mob-header__profile-link:hover {
  background: var(--color-card-elevated);
}

[data-theme="dark"] .ls-site-header .ls-site-nav__link {
  color: #fff;
  background: transparent;
}

[data-theme="dark"] .ls-site-header .ls-site-nav__link:hover,
[data-theme="dark"] .ls-site-header .ls-site-nav__link:focus,
[data-theme="dark"] .ls-site-header .ls-site-nav__link:focus-visible,
[data-theme="dark"] .ls-site-header .ls-site-nav__link:active {
  color: #fff;
  background: transparent;
  box-shadow: none;
  outline: none;
}

/* Юридические документы */
[data-theme="dark"] main .legal-doc,
[data-theme="dark"] main .legal-doc-page {
  background: var(--color-card);
  color: var(--color-text);
}

[data-theme="dark"] main .legal-doc__title,
[data-theme="dark"] main .legal-doc__section {
  color: var(--color-navy);
}

[data-theme="dark"] main .legal-doc__text {
  color: var(--color-text);
}

/* Старые панели судьи (referee_panel.css) */
[data-theme="dark"] main .ref-shell {
  background: var(--color-card);
  color: var(--color-text);
}

/* Модалки гола / нарушения / завершения (подключаются после theme.css — без main) */
[data-theme="dark"] .ref-gm__form,
[data-theme="dark"] .ref-em__panel,
[data-theme="dark"] .ref-pen__panel,
[data-theme="dark"] .ref-goal-modal__panel {
  background: var(--color-card);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] .ref-gm__title,
[data-theme="dark"] .ref-em__title,
[data-theme="dark"] .ref-gm__team-name,
[data-theme="dark"] .ref-em__team-name {
  color: var(--color-text);
}

[data-theme="dark"] .ref-gm__toggle {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] .ref-gm__toggle[aria-pressed="true"][data-ref-gm-mode="penalty"] {
  background: var(--color-accent-soft);
  border-color: var(--color-link);
}

[data-theme="dark"] .ref-gm__toggle[aria-pressed="true"][data-ref-gm-mode="og"] {
  background: rgba(255, 166, 41, 0.15);
  border-color: #ffa629;
}

[data-theme="dark"] .ref-gm__team-card,
[data-theme="dark"] .ref-gm__side,
[data-theme="dark"] .ref-gm__crest {
  background: var(--color-card-elevated);
  outline-color: var(--color-border);
}

[data-theme="dark"] .ref-gm__crest-ph {
  background: var(--color-accent-soft);
}

[data-theme="dark"] .ref-gm__lbl,
[data-theme="dark"] .ref-gm__lbl--assist {
  color: var(--color-muted);
}

[data-theme="dark"] .ref-gm__num-wrap {
  background: var(--color-input-bg);
  border-color: var(--color-input-border);
}

[data-theme="dark"] .ref-gm__num {
  color: var(--color-text);
}

[data-theme="dark"] .ref-gm--assist-off .ref-gm__field--assist .ref-gm__num-wrap {
  background: var(--color-card);
  border-color: var(--color-border);
}

[data-theme="dark"] .ref-gm--assist-off .ref-gm__field--assist .ref-gm__num {
  color: var(--color-muted);
}

[data-theme="dark"] .ref-gm__btn--secondary {
  background: var(--color-card-elevated);
  color: var(--color-link);
  border: 1px solid var(--color-border);
}

[data-theme="dark"] .ref-gm__btn--secondary:hover {
  background: var(--color-card);
}

[data-theme="dark"] .ref-gm__form--sub .ref-gm__sub-swap {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] .ref-vb-sub-icon__in {
  fill: #3dd68c;
}

[data-theme="dark"] .ref-vb-sub-icon__out {
  fill: #f87171;
}

[data-theme="dark"] .tp-ms-ico--sub {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] .ref-em__choice {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] .ref-em__choice:hover:not(:disabled):not(.ref-em__choice--muted) {
  background: var(--color-card);
  border-color: var(--color-border);
}

[data-theme="dark"] .ref-em__choice--active {
  background: var(--color-accent-soft);
  border-color: var(--color-link);
}

[data-theme="dark"] .ref-em__choice--muted,
[data-theme="dark"] .ref-em__choice:disabled {
  color: var(--color-muted);
}

[data-theme="dark"] .ref-em__team {
  background: var(--color-card-elevated);
  outline-color: var(--color-border);
}

[data-theme="dark"] .ref-em__crest-ph {
  background: var(--color-accent-soft);
}

[data-theme="dark"] .ref-em__mid {
  background: var(--color-card);
  outline-color: var(--color-border);
}

[data-theme="dark"] .ref-em__clock,
[data-theme="dark"] .ref-em__pen-sub {
  color: var(--color-muted);
}

[data-theme="dark"] .ref-em__status {
  color: var(--color-text);
}

[data-theme="dark"] .ref-em__submit-btn {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] .ref-em__submit-btn:hover {
  background: var(--color-card);
}

[data-theme="dark"] .ref-pen__panel {
  background: var(--color-card);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] .ref-pen::backdrop {
  background: rgba(0, 0, 0, 0.65);
}

[data-theme="dark"] .ref-pen__title {
  color: var(--color-text);
}

[data-theme="dark"] .ref-pen__finish-top {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] .ref-pen__finish-top:hover {
  background: var(--color-card);
}

[data-theme="dark"] .ref-pen__mid {
  background: var(--color-card-elevated);
  outline-color: var(--color-border);
}

[data-theme="dark"] .ref-pen__clock,
[data-theme="dark"] .ref-pen__hint {
  color: var(--color-muted);
}

[data-theme="dark"] .ref-pen__score {
  color: var(--color-link);
}

[data-theme="dark"] .ref-pen__status,
[data-theme="dark"] .ref-pen__totals {
  color: var(--color-text);
}

[data-theme="dark"] .ref-pen__side-col {
  background: var(--color-card-elevated);
  outline-color: var(--color-border);
}

[data-theme="dark"] .ref-pen__team.ref-em__team {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
}

[data-theme="dark"] .ref-pen__team .ref-em__team-name {
  color: var(--color-text);
}

[data-theme="dark"] .ref-pen__miss {
  background: var(--color-card-elevated);
  border-color: #e9424c;
  color: var(--color-muted);
}

[data-theme="dark"] .ref-pen__miss.is-recorded {
  background: rgba(233, 66, 76, 0.18);
  color: var(--color-text);
}

[data-theme="dark"] .ref-pen__panel input.ref-pen__num[type="text"] {
  background: var(--color-input-bg);
  border-color: var(--color-input-border);
  color: var(--color-text);
}

[data-theme="dark"] .ref-pen__panel input.ref-pen__num[type="text"]:focus {
  outline-color: var(--color-link);
}

[data-theme="dark"] .ref-pen__panel input.ref-pen__num[type="text"]:disabled {
  background: var(--color-card);
  color: var(--color-muted);
}

[data-theme="dark"] .ref-pen__kick--missed .ref-pen__num {
  border-style: dashed;
  color: var(--color-muted);
}

[data-theme="dark"] .ref-pen__add {
  background: rgba(143, 163, 184, 0.12);
  border-color: var(--color-muted);
  color: var(--color-muted);
}

@media (max-width: 767.98px) {
  [data-theme="dark"] .ref-pen__mid {
    background: var(--color-card-elevated);
    outline-color: var(--color-border);
  }

  [data-theme="dark"] .ref-pen__team.ref-em__team {
    background: var(--color-card-elevated);
    border-color: var(--color-border);
  }
}

[data-theme="dark"] .ref-em__score {
  color: var(--color-link);
}

[data-theme="dark"] .ref-em__mvp {
  background: var(--color-card-elevated);
  outline-color: var(--color-border);
}

[data-theme="dark"] .ref-em__panel input.ref-em__mvp-num[type="text"] {
  background: var(--color-input-bg);
  border-color: var(--color-input-border);
  color: var(--color-text);
}

[data-theme="dark"] .ref-em__mvp-lbl {
  color: var(--color-muted);
}

/* Календарь судьи (перебивает .trainer-cabinet--referee:has(.ref-cal-sheet) в referee_figma.css) */
[data-theme="dark"] main .trainer-cabinet--referee:has(.ref-cal-sheet) .ref-cal-sheet,
[data-theme="dark"] main .trainer-cabinet--referee .ref-cal-sheet {
  background: var(--color-card);
  border-color: var(--color-border);
  color: var(--color-text);
}

[data-theme="dark"] main .trainer-cabinet--referee .ref-cal-sheet .trainer-comp-subtabs {
  border-bottom-color: var(--color-border);
}

[data-theme="dark"] main .ref-cal-match-card {
  background: var(--color-card);
  border-color: var(--color-border);
}

[data-theme="dark"] main .trainer-cabinet--referee .ref-cal-sheet .tp-gpc-pill,
[data-theme="dark"] main .trainer-cabinet--referee .ref-cal-sheet .tp-gpc-pill--muted {
  background: var(--color-accent-soft);
  color: var(--color-link);
}

[data-theme="dark"] main .ref-cal-schedule-desktop.tp-fig-block {
  background: transparent;
}

[data-theme="dark"] main .ref-cal-schedule-desktop .tp-fig-schedule,
[data-theme="dark"] main .ref-cal-schedule-desktop .tp-fig-schedule-grid {
  background: transparent;
}

[data-theme="dark"] main .ref-cal-sheet .tp-gpc,
[data-theme="dark"] main .ref-cal-schedule-desktop .tp-gpc {
  --tp-gpc-azure: rgba(55, 140, 200, 0.2);
  --tp-gpc-sorento: #6eb8e8;
  --tp-gpc-mouse: #1a2433;
  --tp-gpc-line: #2e3d52;
  --tp-gpc-body: #c8d6e3;
  --tp-gpc-gray: #8fa3b8;
  --tp-gpc-river: #6eb8e8;
  --tp-gpc-txt-gray: #8fa3b8;
}

[data-theme="dark"] main .ref-cal-sheet .tp-gpc-cell,
[data-theme="dark"] main .ref-cal-sheet .tp-gpc-cell__crest,
[data-theme="dark"] main .ref-cal-schedule-desktop .tp-gpc-cell,
[data-theme="dark"] main .ref-cal-schedule-desktop .tp-gpc-cell__crest {
  background: var(--tp-gpc-mouse);
  border-color: var(--tp-gpc-line);
}

[data-theme="dark"] main .ref-cal-sheet .tp-gpc-cell__name,
[data-theme="dark"] main .ref-cal-schedule-desktop .tp-gpc-cell__name {
  color: var(--tp-gpc-body);
}

[data-theme="dark"] main .ref-cal-sheet .tp-gpc-mid,
[data-theme="dark"] main .ref-cal-schedule-desktop .tp-gpc-mid {
  background: var(--color-card-elevated);
  outline-color: var(--tp-gpc-line);
}

[data-theme="dark"] main .ref-cal-sheet .tp-gpc-mid__clock,
[data-theme="dark"] main .ref-cal-sheet .tp-gpc-mid__period,
[data-theme="dark"] main .ref-cal-sheet .tp-gpc-mid__pen,
[data-theme="dark"] main .ref-cal-schedule-desktop .tp-gpc-mid__clock,
[data-theme="dark"] main .ref-cal-schedule-desktop .tp-gpc-mid__period,
[data-theme="dark"] main .ref-cal-schedule-desktop .tp-gpc-mid__pen {
  color: var(--tp-gpc-gray);
}

[data-theme="dark"] main .ref-cal-sheet .tp-gpc-mid__score,
[data-theme="dark"] main .ref-cal-schedule-desktop .tp-gpc-mid__score {
  color: var(--color-text);
}

[data-theme="dark"] main .ref-cal-sheet .tp-gpc-meta__txt,
[data-theme="dark"] main .ref-cal-schedule-desktop .tp-gpc-meta__txt {
  color: var(--tp-gpc-gray);
}

[data-theme="dark"] main .ref-cal-sheet .tp-fig-schedule-empty {
  background: var(--color-card-elevated);
  border-color: var(--color-border);
  color: var(--color-muted);
}

[data-theme="dark"] main .ref-cal-teams-hint {
  margin: 0.5rem 0 0;
  padding: 0.5rem 0.75rem;
  border-radius: 6px;
  background: rgba(255, 166, 41, 0.12);
  border: 1px solid rgba(255, 166, 41, 0.35);
  color: #ffc266;
  font-size: 0.8125rem;
  line-height: 1.35;
}

[data-theme="dark"] main .ref-cal-match-card--teams-pending .ref-cal-match-card__hit {
  cursor: not-allowed;
}

/* Подложки команд и счёт на доске (десктоп перебивает светлые #f9fafd / #fff) */
@media (min-width: 901px) {
  [data-theme="dark"] main .ref4-card.referee-board-figma .tp-mi__side,
  [data-theme="dark"] main .ref-figma-ref4-shell .ref4-card.referee-board-figma .tp-mi__side {
    background: var(--color-card-elevated);
    outline-color: var(--color-border);
  }

  [data-theme="dark"] main .ref4-card.referee-board-figma .tp-mi__mid,
  [data-theme="dark"] main .ref-figma-ref4-shell .ref4-card.referee-board-figma .tp-mi__mid {
    background: var(--color-card-elevated);
    outline-color: var(--color-border);
    border-color: var(--color-border);
  }

  [data-theme="dark"] main .ref4-card.referee-board-figma .tp-mi__crest-ph,
  [data-theme="dark"] main .ref-figma-ref4-shell .ref4-card.referee-board-figma .tp-mi__crest-ph {
    background: var(--color-accent-soft);
  }

  [data-theme="dark"] main .ref4-card.referee-board-figma .tp-mi__crest,
  [data-theme="dark"] main .ref-figma-ref4-shell .ref4-card.referee-board-figma .tp-mi__crest {
    background: #f0f4f8;
  }

  [data-theme="dark"] main .ref4-card.referee-board-figma .tp-mi__crest img,
  [data-theme="dark"] main .ref-figma-ref4-shell .ref4-card.referee-board-figma .tp-mi__crest img {
    mix-blend-mode: normal;
  }

  [data-theme="dark"] main .trainer-cabinet--referee:has(.ref-cal-sheet) .ref-cal-sheet {
    background: var(--color-card);
    border-color: var(--color-border);
  }
}

/* Текст с жёстким тёмным цветом в main */
[data-theme="dark"] main :is(
  [style*="color: #252"],
  [style*="color:#252"],
  [style*="color: #001"],
  [style*="color:#001"]
) {
  color: var(--color-text);
}

/* Лендинг — форма «Обратная связь» */
[data-theme="dark"] .landing-contact__card {
  background: linear-gradient(
    180deg,
    rgba(12, 22, 36, 0.72) 0%,
    rgba(12, 22, 36, 0.58) 88%,
    rgba(12, 22, 36, 0.52) 100%
  );
  border-color: rgba(255, 255, 255, 0.12);
}

[data-theme="dark"] .landing-form__label,
[data-theme="dark"] .landing-form__consent {
  color: var(--color-text);
}

[data-theme="dark"] .landing-input,
[data-theme="dark"] .landing-form select.landing-input,
[data-theme="dark"] .landing-form textarea.landing-input {
  background-color: var(--color-input-bg);
  border: 1px solid var(--color-input-border);
  color: var(--color-text);
}

[data-theme="dark"] .landing-input::placeholder,
[data-theme="dark"] .landing-form textarea.landing-input::placeholder {
  color: var(--color-muted);
  opacity: 0.85;
}

[data-theme="dark"] .landing-input:focus,
[data-theme="dark"] .landing-form select.landing-input:focus,
[data-theme="dark"] .landing-form textarea.landing-input:focus {
  outline-color: rgba(77, 163, 255, 0.55);
}

[data-theme="dark"] .landing-form select.landing-input {
  color-scheme: dark;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23b8c5d0' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

[data-theme="dark"] .landing-form__field--attachment .file-dropzone,
[data-theme="dark"] .landing-form__field--attachment .file-dropzone-chosen {
  background: var(--color-input-bg);
  border: 1px solid var(--color-input-border);
  color: var(--color-text);
}

[data-theme="dark"] .landing-form__field--attachment .file-dropzone:hover {
  background: var(--color-accent-soft);
  border-color: var(--color-link);
}

[data-theme="dark"] .landing-form__field--attachment .file-dropzone__link {
  color: var(--color-link);
}

[data-theme="dark"] .landing-form__field--attachment .file-dropzone-chosen__label {
  color: var(--color-muted);
}

[data-theme="dark"] .landing-form__field--attachment .file-dropzone__icon path,
[data-theme="dark"] .landing-form__field--attachment .file-dropzone-chosen__icon path {
  stroke: var(--color-link);
}
