/*
 * A Terv oldal jóváhagyott dark-gold kártyanyelvének közös, útvonalanként
 * elhatárolt rétege. A szelektorok kizárólag a layout által kiosztott
 * sonr-plan-* body-osztályok alatt érvényesek.
 */
:is(
  .sonr-plan-master,
  .sonr-plan-phoneparty,
  .sonr-plan-task,
  .sonr-plan-production,
  .sonr-plan-incentive,
  .sonr-plan-issue,
  .sonr-plan-training,
  .sonr-plan-dashboard,
  .sonr-plan-advisory,
  .sonr-plan-meres
) {
  --spu-page: #131316;
  --spu-card: linear-gradient(145deg, #1d1e24, #18191e);
  --spu-card-selected: linear-gradient(145deg, rgba(201, 164, 76, .16), #18191e 72%);
  --spu-card-highlight: radial-gradient(circle at 22% 0%, rgba(201, 164, 76, .19), transparent 44%), linear-gradient(145deg, #1d1e24, #18191e);
  --spu-panel: #1c1c22;
  --spu-border: rgba(255, 255, 255, .08);
  --spu-border-gold: rgba(201, 164, 76, .45);
  --spu-gold: #c9a44c;
  --spu-gold-light: #e8cd8a;
  --spu-text: #fff;
  --spu-muted: rgba(255, 255, 255, .55);
  --spu-green: #b7c48a;
  --spu-red: #d19a9a;
  --spu-radius: 18px;
  background-color: var(--spu-page);
  color: var(--spu-text);
}

:is(
  .sonr-plan-master,
  .sonr-plan-phoneparty,
  .sonr-plan-task,
  .sonr-plan-production,
  .sonr-plan-incentive,
  .sonr-plan-issue,
  .sonr-plan-training,
  .sonr-plan-dashboard,
  .sonr-plan-advisory,
  .sonr-plan-meres
) :is(input, select, textarea, button, table) {
  font-family: Roboto, Arial, sans-serif;
}

/* Törzsadatok és a kapcsolódó kezelőoldalak. A tagsági mc-card érintetlen. */
.sonr-plan-master :is(.card:not(.mc-card), .prd-card, .tz-card, .training-manage-filter-card, .training-manage-list-card, .training-manage-course-card) {
  background: var(--spu-card);
  border: 1px solid var(--spu-border);
  border-radius: var(--spu-radius);
  box-shadow: 0 14px 36px rgba(0, 0, 0, .18);
}
.sonr-plan-master :is(.training-manage-office-card.is-selected, .training-manage-course-card:hover) {
  background: var(--spu-card-selected);
  border-color: var(--spu-border-gold);
}
.sonr-plan-master :is(.card-header, .card-footer) {
  background: transparent;
  border-color: var(--spu-border);
}
.sonr-plan-master :is(.card-title, .mc-page-title, .prd-title, .tz-title, .training-manage-header h1, .training-manage-list-head h2) {
  font-family: Junegull, sans-serif;
  color: var(--spu-gold-light);
  letter-spacing: .02em;
}
.sonr-plan-master :is(.table, .table th, .table td, .grid-view, .summary) {
  color: var(--spu-muted);
  border-color: var(--spu-border);
}
.sonr-plan-master :is(.table thead th, .grid-view thead th) {
  color: var(--spu-gold-light);
  background: rgba(201, 164, 76, .06);
}
.sonr-plan-master :is(.table tbody tr:hover, .grid-view tbody tr:hover) {
  background: rgba(201, 164, 76, .055);
}
.sonr-plan-master :is(.form-control, .form-select, .select2-selection, .kv-editable-input) {
  color: var(--spu-text);
  background: var(--spu-panel);
  border: 1px solid var(--spu-border);
  border-radius: 12px;
}
.sonr-plan-master :is(.form-control, .form-select, .select2-selection):focus {
  border-color: var(--spu-border-gold);
  box-shadow: 0 0 0 3px rgba(201, 164, 76, .1);
}

/* Telefon Party. A jutalomkép és az ikonok változatlanok maradnak. */
.sonr-plan-phoneparty .phone-party-module :is(.pp-reward-hero, .pp-accordion, .pp-ring-card, .pp-request-row, .pp-close-reward-panel, .pp-cycle-card) {
  background: var(--spu-card);
  border: 1px solid var(--spu-border);
  border-radius: var(--spu-radius);
  box-shadow: 0 14px 36px rgba(0, 0, 0, .18);
}
.sonr-plan-phoneparty .phone-party-module :is(.pp-page-title, .pp-section-title, .pp-reward-hero-name, .pp-accordion-head > span:first-child) {
  font-family: Junegull, sans-serif;
  color: var(--spu-gold-light);
  letter-spacing: .02em;
}
.sonr-plan-phoneparty .phone-party-module :is(.pp-ring-card.total, .pp-accordion[open]) {
  background: var(--spu-card-highlight);
  border-color: var(--spu-border-gold);
}
.sonr-plan-phoneparty .phone-party-module :is(.pp-agreed-table, .pp-agreed-table th, .pp-agreed-table td) {
  border-color: var(--spu-border);
}
.sonr-plan-phoneparty .phone-party-module :is(input, select, textarea) {
  color: var(--spu-text);
  background: var(--spu-panel);
  border-color: var(--spu-border);
  border-radius: 12px;
}

/* Feladatok. */
.sonr-plan-task :is(.task-card, .tdp-panel, .tdp-dialog > div, .tdp-modal-box) {
  background: var(--spu-card);
  border: 1px solid var(--spu-border);
  border-radius: var(--spu-radius);
  box-shadow: 0 14px 36px rgba(0, 0, 0, .18);
}
.sonr-plan-task :is(.task-card h3, .tdp-module h1, .tdp-module h2, .tdp-dialog h2) {
  font-family: Junegull, sans-serif;
  color: var(--spu-gold-light);
  letter-spacing: .02em;
}
.sonr-plan-task :is(.tdp-active, .tdp-task:hover, .tdp-task[aria-current="true"]) {
  background: var(--spu-card-selected);
  border-color: var(--spu-border-gold);
}
.sonr-plan-task :is(.tdp-module input, .tdp-module select, .tdp-module textarea, .tdp-dialog input, .tdp-dialog select, .tdp-dialog textarea) {
  color: var(--spu-text);
  background: var(--spu-panel);
  border: 1px solid var(--spu-border);
  border-radius: 12px;
}

/* Termelés és bevétel. */
.sonr-plan-production .production-module :is(.production-stat-card, .chart-cell, .card) {
  background: var(--spu-card);
  border: 1px solid var(--spu-border);
  border-radius: var(--spu-radius);
  box-shadow: 0 14px 36px rgba(0, 0, 0, .18);
}
.sonr-plan-production .production-module :is(.production-stat-card.gold, .income-blur-wrap.revealed) {
  background: var(--spu-card-highlight);
  border-color: var(--spu-border-gold);
}
.sonr-plan-production .production-module :is(h1, h2, h3, .production-page-title, .stat-num) {
  color: var(--spu-gold-light);
}
.sonr-plan-production .production-module :is(h1, h2, h3, .production-page-title) {
  font-family: Junegull, sans-serif;
  letter-spacing: .02em;
}
.sonr-plan-production .production-module :is(.plan-bar, .dashboard-bar-track, .progress) {
  height: 8px;
  background: #30313a;
  border-radius: 999px;
  overflow: hidden;
}
.sonr-plan-production .production-module :is(.plan-bar-fill, .dashboard-bar-fill, .progress-bar) {
  background: linear-gradient(90deg, #91a861, #c9a44c);
}

/* Incentive. A plakátképek és a nagyító rétege érintetlen. */
.sonr-plan-incentive .incentive-module :is(.incentive-comp-card, .incentive-admin-row, .incentive-bet-side, .card) {
  background: var(--spu-card);
  border: 1px solid var(--spu-border);
  border-radius: var(--spu-radius);
  box-shadow: 0 14px 36px rgba(0, 0, 0, .18);
}
.sonr-plan-incentive .incentive-module :is(.incentive-bet-side.leading, .incentive-toplist-row.me) {
  background: var(--spu-card-selected);
  border-color: var(--spu-border-gold);
}
.sonr-plan-incentive .incentive-module :is(.incentive-page-title, .incentive-comp-name, .incentive-admin-name, .card-title) {
  font-family: Junegull, sans-serif;
  color: var(--spu-gold-light);
  letter-spacing: .02em;
}
.sonr-plan-incentive .incentive-module :is(.track, .incentive-admin-mini-track, .progress) {
  height: 8px;
  background: #30313a;
  border-radius: 999px;
  overflow: hidden;
}
.sonr-plan-incentive .incentive-module :is(.track .fill, .incentive-admin-mini-track .fill, .progress-bar) {
  background: linear-gradient(90deg, #91a861, #c9a44c);
}

/* Hibajelentések. */
.sonr-plan-issue .ir-admin-page :is(.ir-admin-card, .ir-admin-filters) {
  background: var(--spu-card);
  border: 1px solid var(--spu-border);
  border-radius: var(--spu-radius);
  box-shadow: 0 14px 36px rgba(0, 0, 0, .18);
}
.sonr-plan-issue .ir-admin-page :is(.ir-admin-header h1, .ir-admin-author strong) {
  font-family: Junegull, sans-serif;
  color: var(--spu-gold-light);
  letter-spacing: .02em;
}
.sonr-plan-issue .ir-admin-page .ir-admin-filter-active {
  background: var(--spu-card-selected);
  border-color: var(--spu-border-gold);
}

/* Képzés. A kurzusképek, ikonok és a tagsági mc-card nem kapnak felülírást. */
.sonr-plan-training :is(.training-module, .training-manage-cards) :is(.card:not(.mc-card), .training-series-card, .training-session-card, .training-manage-filter-card, .training-manage-list-card, .training-manage-course-card, .training-roadmap-content) {
  background: var(--spu-card);
  border: 1px solid var(--spu-border);
  border-radius: var(--spu-radius);
  box-shadow: 0 14px 36px rgba(0, 0, 0, .18);
}
.sonr-plan-training :is(.training-module, .training-manage-cards) :is(.training-status-current .training-roadmap-content, .training-manage-office-card.is-selected) {
  background: var(--spu-card-selected);
  border-color: var(--spu-border-gold);
}
.sonr-plan-training :is(.training-page-title, .training-manage-header h1, .training-series-title, .training-editor-head h1) {
  font-family: Junegull, sans-serif;
  color: var(--spu-gold-light);
  letter-spacing: .02em;
}
.sonr-plan-training :is(.training-progress-track, .progress) {
  height: 8px;
  background: #30313a;
  border-radius: 999px;
  overflow: hidden;
}
.sonr-plan-training :is(.training-progress-fill, .progress-bar) {
  background: linear-gradient(90deg, #91a861, #c9a44c);
}

/* Dashboard. A tagsági mc-card és a Today’s Money számítása érintetlen. */
.sonr-plan-dashboard .sfd-root :is(.card:not(.mc-card), .sfd-kpi, .sfd-rank, .sfd-team, .sfd-dialog, .sfd-panel) {
  background: var(--spu-card);
  border: 1px solid var(--spu-border);
  border-radius: var(--spu-radius);
  box-shadow: 0 14px 36px rgba(0, 0, 0, .18);
}
.sonr-plan-dashboard .sfd-root :is(.sfd-kpi.is-active, .sfd-own-place, .gold-border) {
  background: var(--spu-card-highlight);
  border-color: var(--spu-border-gold);
}
.sonr-plan-dashboard .sfd-root :is(.sfd-title, .sfd-kpi-label, .sfd-rank-head h2, .card-title) {
  font-family: Junegull, sans-serif;
  color: var(--spu-gold-light);
  letter-spacing: .02em;
}
.sonr-plan-dashboard .sfd-root :is(.sfd-month-track, .progress) {
  height: 8px;
  background: #30313a;
  border-radius: 999px;
  overflow: hidden;
}
.sonr-plan-dashboard .sfd-root :is(.sfd-month-track i, .progress-bar) {
  background: linear-gradient(90deg, #91a861, #c9a44c);
}

/* Tanácsadás. A kalkulátorok tartalma és az anyagtár működése változatlan. */
.sonr-plan-advisory .advh-page :is(.advh-hero, .advh-client-bar, .advh-saved, .advh-library, .advh-folder, .advh-doc, .advh-calc-card, .advh-viewer-bar, .advh-launch-bar) {
  background: var(--spu-card);
  border: 1px solid var(--spu-border);
  border-radius: var(--spu-radius);
  box-shadow: 0 14px 36px rgba(0, 0, 0, .18);
}
.sonr-plan-advisory .advh-page :is(.advh-hero, .advh-scope-btn.is-active, .advh-folder:not(.is-closed)) {
  border-color: var(--spu-border-gold);
}
.sonr-plan-advisory .advh-page :is(.advh-hero h1, .advh-section-head h2, .advh-doc h3) {
  font-family: Junegull, sans-serif;
  color: var(--spu-gold-light);
  letter-spacing: .02em;
}
.sonr-plan-advisory .advh-page :is(.advh-search, .advh-client-select, input, select, textarea) {
  background-color: var(--spu-panel);
  border-color: var(--spu-border);
}

/* Mérés. A jogosultsági és eredményszámítások változatlanok. */
.sonr-plan-meres .meres-module :is(.meres-card, .meres-track-card, .meres-month-card, .meres-total-card, .meres-branch-card, .meres-team-detail-card, .meres-eligibility-card) {
  background: var(--spu-card);
  border: 1px solid var(--spu-border);
  border-radius: var(--spu-radius);
  box-shadow: 0 14px 36px rgba(0, 0, 0, .18);
}
.sonr-plan-meres .meres-module :is(.meres-card.opening, .meres-track-card.ready, .meres-team-detail-card[open]) {
  background: var(--spu-card-highlight);
  border-color: var(--spu-border-gold);
}
.sonr-plan-meres .meres-module :is(.meres-page-title, .meres-card-title, .meres-track-name, .meres-section-title) {
  font-family: Junegull, sans-serif;
  color: var(--spu-gold-light);
  letter-spacing: .02em;
}
.sonr-plan-meres .meres-module :is(.progress, .meres-progress-track) {
  height: 8px;
  background: #30313a;
  border-radius: 999px;
  overflow: hidden;
}
.sonr-plan-meres .meres-module :is(.progress-bar, .meres-progress-fill) {
  background: linear-gradient(90deg, #91a861, #c9a44c);
}

@media (max-width: 760px) {
  :is(
    .sonr-plan-master,
    .sonr-plan-phoneparty,
    .sonr-plan-task,
    .sonr-plan-production,
    .sonr-plan-incentive,
    .sonr-plan-issue,
    .sonr-plan-training,
    .sonr-plan-dashboard,
    .sonr-plan-advisory,
    .sonr-plan-meres
  ) :is(.card, .pp-reward-hero, .pp-accordion, .task-card, .tdp-panel, .production-stat-card, .incentive-comp-card, .ir-admin-card, .training-series-card) {
    border-radius: 16px;
  }

  .sonr-plan-master :is(.card-body, .training-manage-filter-card, .training-manage-list-card),
  .sonr-plan-phoneparty .phone-party-module :is(.pp-accordion-body, .pp-reward-hero-meta),
  .sonr-plan-task :is(.task-card, .tdp-panel),
  .sonr-plan-production .production-module :is(.production-stat-card, .card-body),
  .sonr-plan-incentive .incentive-module :is(.incentive-comp-card, .card-body),
  .sonr-plan-issue .ir-admin-page .ir-admin-card,
  .sonr-plan-training :is(.training-module, .training-manage-cards) :is(.card-body, .training-series-card),
  .sonr-plan-dashboard .sfd-root :is(.card-body, .sfd-kpi, .sfd-rank, .sfd-team) {
    padding-left: 16px;
    padding-right: 16px;
  }

  .sonr-plan-advisory .advh-page :is(.advh-hero, .advh-client-bar, .advh-saved, .advh-library),
  .sonr-plan-meres .meres-module :is(.meres-card, .meres-track-card, .meres-team-detail-card) {
    padding-left: 16px;
    padding-right: 16px;
  }

  .sonr-plan-master :is(.table-responsive, .grid-view),
  .sonr-plan-phoneparty .phone-party-module :is(.pp-table-scroll, .pp-agreed-table-wrap),
  .sonr-plan-training :is(.training-table-scroll, .table-responsive) {
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
