/*
 * Kelen SC alkalmazas – 2026 ujratervezes
 * A fajl a korabbi komponensek utan toltodik be. Az uzleti logika valtozatlan,
 * a teljes felulet egy kozos, referenciaalapu alkalmazasvazat kap.
 */

@font-face {
  font-family: "Barlow Condensed Kelen";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("assets/fonts/barlow-condensed-800-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

.reference-values-subcard .reference-values-table.compact .reference-values-row {
  grid-template-columns: minmax(180px, 1.4fr) minmax(140px, 0.8fr) minmax(110px, 0.6fr);
}

.reference-values-subcard {
  border-color: var(--rd-border);
  background: #ffffff;
  box-shadow: none;
}

.reference-values-subcard .reference-values-subhead strong {
  color: var(--rd-text);
}

.reference-values-subcard .reference-values-subhead span,
.reference-values-subcard > p {
  color: var(--rd-muted) !important;
}

.reference-values-subcard .reference-values-table.compact {
  overflow: hidden;
  border: 1px solid var(--rd-border);
  border-radius: 8px;
}

.reference-values-subcard .reference-values-table.compact .reference-values-row {
  color: var(--rd-text);
  background: #ffffff;
}

.reference-values-subcard .reference-values-table.compact .reference-values-row.is-head {
  color: var(--rd-text);
  background: var(--rd-surface-alt);
}

@media (max-width: 680px) {
  .reference-values-subcard .reference-values-table.compact .reference-values-row {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 4px 12px;
  }

  .reference-values-subcard .reference-values-table.compact .reference-values-row.is-head > :last-child {
    display: none;
  }

  .reference-values-subcard .reference-values-table.compact .reference-values-row > :last-child {
    grid-column: 1 / -1;
    color: var(--muted);
  }

  .reference-values-subcard .reference-values-table.compact .reference-values-row:not(.is-head) > :last-child::before {
    content: "Mért játékos: ";
    font-weight: 800;
  }
}

@font-face {
  font-family: "Barlow Condensed Kelen";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("assets/fonts/barlow-condensed-800-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  --rd-sidebar: 248px;
  --rd-navy-950: #06172b;
  --rd-navy-900: #0a2038;
  --rd-navy-800: #12304e;
  --rd-green: #087a55;
  --rd-green-dark: #066747;
  --rd-green-soft: #e7f7f1;
  --rd-blue: #2874d6;
  --rd-blue-soft: #eaf2ff;
  --rd-amber: #d89217;
  --rd-amber-soft: #fff5dc;
  --rd-red: #cc4554;
  --rd-red-soft: #fdecef;
  --rd-purple: #6f5bd3;
  --rd-purple-soft: #f0edff;
  --rd-text: #17283b;
  --rd-muted: #596a7c;
  --rd-faint: #627286;
  --rd-border: #dde5ec;
  --rd-border-strong: #cbd6e0;
  --rd-canvas: #f2f5f8;
  --rd-surface: #ffffff;
  --rd-surface-alt: #f8fafc;
  --rd-radius: 8px;
  --rd-shadow: 0 8px 24px rgba(20, 42, 67, 0.07);
  --rd-shadow-strong: 0 20px 55px rgba(6, 23, 43, 0.18);
}

#leadershipPanel .leadership-team-selector {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(270px, 360px);
  align-items: end;
  gap: 18px;
  margin: 0 0 16px;
  border: 1px solid var(--rd-border);
  border-left: 4px solid var(--rd-green);
  border-radius: var(--rd-radius);
  padding: 16px;
  background: var(--rd-surface);
  box-shadow: 0 3px 13px rgba(20, 42, 67, 0.04);
}

#leadershipPanel .leadership-team-selector-intro {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

#leadershipPanel .leadership-team-selector-icon {
  display: grid;
  place-items: center;
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  border-radius: 8px;
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
}

#leadershipPanel .leadership-team-selector-icon svg {
  width: 21px;
  height: 21px;
}

#leadershipPanel .leadership-team-selector-intro > div,
#leadershipPanel .leadership-team-selector label {
  display: grid;
  gap: 4px;
  min-width: 0;
}

#leadershipPanel .leadership-team-selector-intro > div > span,
#leadershipPanel .leadership-team-selector label > span {
  color: var(--rd-muted);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

#leadershipPanel .leadership-team-selector-intro strong {
  overflow-wrap: anywhere;
  color: var(--rd-text);
  font-size: 1rem;
  line-height: 1.35;
}

#leadershipPanel .leadership-team-selector select {
  width: 100%;
  min-height: 46px;
  border: 1px solid var(--rd-border-strong);
  border-radius: 8px;
  padding: 0 42px 0 13px;
  color: var(--rd-text);
  background: var(--rd-surface);
  font: inherit;
  font-weight: 800;
}

#leadershipPanel .leadership-team-selector select:focus {
  outline: none;
  border-color: var(--rd-green);
  box-shadow: 0 0 0 3px rgba(8, 122, 85, 0.14);
}

@media (max-width: 760px) {
  #leadershipPanel .leadership-team-selector {
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
    gap: 13px;
    padding: 13px;
  }
}

html,
body {
  min-width: 320px;
  color: var(--rd-text);
  background: var(--rd-canvas) !important;
}

body {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 15px;
  line-height: 1.5;
}

button,
input,
select,
textarea {
  letter-spacing: 0;
}

button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible {
  outline: 3px solid rgba(40, 116, 214, 0.24);
  outline-offset: 2px;
}

/* Alkalmazasvaz */
.app-shell,
.app-shell.is-player-focus,
.app-shell.is-coach-focus,
.app-shell.is-payment-focus {
  display: grid;
  grid-template-columns: var(--rd-sidebar) minmax(0, 1fr);
  min-height: 100vh;
  color: var(--rd-text);
  background: var(--rd-canvas) !important;
}

.app-shell.is-player-focus .sidebar,
.app-shell.is-player-focus .topbar,
.app-shell.is-coach-focus .sidebar,
.app-shell.is-coach-focus .topbar,
.app-shell.is-payment-focus .sidebar,
.app-shell.is-payment-focus .topbar {
  display: flex !important;
}

.app-shell.is-player-focus .workspace,
.app-shell.is-coach-focus .workspace,
.app-shell.is-payment-focus .workspace,
.workspace {
  min-width: 0;
  min-height: 100vh;
  padding: 0 !important;
  color: var(--rd-text);
  background: var(--rd-canvas) !important;
}

/* Bal oldali navigacio */
.sidebar,
.app-shell.is-team-drawer-open .sidebar {
  position: sticky;
  top: 0;
  z-index: 50;
  display: block;
  width: var(--rd-sidebar);
  min-width: var(--rd-sidebar);
  height: 100vh;
  min-height: 0;
  padding: 0;
  overflow: visible;
  border: 0;
  border-right: 1px solid rgba(255, 255, 255, 0.08);
  color: #fff;
  background: var(--rd-navy-950) !important;
}

.sidebar-tools,
.sidebar-tools:hover,
.sidebar-tools.is-labels-open,
.sidebar-tools.is-collapsed-after-click,
.sidebar-tools.is-collapsed-after-click:hover {
  position: relative;
  inset: auto;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 4px;
  width: 100%;
  height: 100vh;
  padding: 20px 14px 18px;
  overflow-x: hidden;
  overflow-y: auto;
  border: 0;
  background: var(--rd-navy-950) !important;
  box-shadow: none;
  backdrop-filter: none;
  scrollbar-width: thin;
}

.rail-brand {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 58px;
  margin: 0 0 18px;
  border: 0;
  border-radius: 0;
  padding: 0 8px 16px;
  color: #fff;
  background: transparent;
  box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.1);
}

.rail-brand img {
  width: 40px;
  height: 46px;
  flex: 0 0 40px;
  object-fit: contain;
}

.rail-brand-copy {
  display: grid;
  gap: 1px;
  min-width: 0;
}

.rail-brand-copy strong {
  color: #fff;
  font-size: 1rem;
  font-weight: 800;
  line-height: 1.2;
}

.rail-brand-copy small {
  color: rgba(255, 255, 255, 0.56);
  font-size: 0.72rem;
  font-weight: 650;
}

.sidebar-section-label {
  display: block;
  margin: 14px 10px 6px;
  color: rgba(255, 255, 255, 0.58);
  font-size: 0.64rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.sidebar-tool-action,
.sidebar-tools:hover .sidebar-tool-action,
.sidebar-tools.is-labels-open .sidebar-tool-action,
.sidebar-tools.is-collapsed-after-click .sidebar-tool-action {
  position: relative;
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  width: 100%;
  min-height: 44px;
  border: 1px solid transparent;
  border-radius: var(--rd-radius);
  padding: 9px 12px;
  color: rgba(255, 255, 255, 0.69);
  background: transparent;
  box-shadow: none;
  font-size: 0.87rem;
  font-weight: 650;
  line-height: 1.2;
  text-align: left;
  transition: color 150ms ease, background 150ms ease, border-color 150ms ease;
}

.sidebar-tool-action::before,
.sidebar-tool-action::after {
  display: none !important;
}

.sidebar-tool-action > svg,
.sidebar-tool-action > i {
  width: 19px;
  height: 19px;
  flex: 0 0 19px;
  color: rgba(255, 255, 255, 0.52);
  stroke-width: 1.8;
}

.sidebar-tool-action > span,
.sidebar-tools:hover .sidebar-tool-action > span,
.sidebar-tools.is-labels-open .sidebar-tool-action > span,
.sidebar-tools.is-collapsed-after-click .sidebar-tool-action > span {
  position: static;
  display: block;
  min-width: 0;
  color: inherit;
  font-size: inherit;
  opacity: 1;
  transform: none;
}

.sidebar-tool-action:hover,
.sidebar-tool-action:focus-visible {
  border-color: rgba(255, 255, 255, 0.08);
  color: #fff;
  background: rgba(255, 255, 255, 0.06);
  box-shadow: none;
}

.sidebar-tool-action.is-active,
.sidebar-tools:hover .sidebar-tool-action.is-active {
  border-color: rgba(26, 193, 135, 0.16);
  color: #fff;
  background: rgba(10, 163, 111, 0.15);
  box-shadow: inset 3px 0 0 var(--rd-green);
}

.sidebar-tool-action:hover > svg,
.sidebar-tool-action:focus-visible > svg,
.sidebar-tool-action.is-active > svg,
.sidebar-tool-action:hover > i,
.sidebar-tool-action.is-active > i {
  color: #56d6aa;
}

.sidebar-drawer {
  position: fixed;
  top: 0;
  bottom: 0;
  left: var(--rd-sidebar);
  z-index: 70;
  display: flex;
  flex-direction: column;
  gap: 18px;
  width: 340px;
  min-width: 0;
  height: 100vh;
  padding: 22px;
  overflow: auto;
  border: 0;
  border-left: 1px solid rgba(255, 255, 255, 0.08);
  color: #fff;
  background: var(--rd-navy-900) !important;
  box-shadow: 18px 0 46px rgba(6, 23, 43, 0.24);
  opacity: 0;
  pointer-events: none;
  transform: translateX(-18px);
  transition: opacity 150ms ease, transform 150ms ease;
}

.app-shell.is-team-drawer-open .sidebar-drawer {
  opacity: 1;
  pointer-events: auto;
  transform: translateX(0);
}

.sidebar-drawer .brand-block {
  display: none;
}

.sidebar-drawer .search-wrap {
  margin-top: 4px;
}

.sidebar-drawer label,
.sidebar-drawer .search-wrap label {
  color: rgba(255, 255, 255, 0.58);
  font-size: 0.72rem;
  font-weight: 750;
}

.sidebar-drawer input,
.sidebar input {
  min-height: 42px;
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: var(--rd-radius);
  color: #fff;
  background: rgba(255, 255, 255, 0.07);
  box-shadow: none;
}

.sidebar-drawer input::placeholder {
  color: rgba(255, 255, 255, 0.38);
}

.team-toggle,
.team-filter-item,
.team-club-tab,
.team-club-panel,
.sidebar .player-card {
  border-color: rgba(255, 255, 255, 0.1);
  border-radius: var(--rd-radius);
  color: rgba(255, 255, 255, 0.76);
  background: rgba(255, 255, 255, 0.045);
  box-shadow: none;
}

.team-toggle:hover,
.team-toggle.is-open,
.team-filter-item:hover,
.team-filter-item.is-active,
.team-club-tab:hover,
.team-club-tab.is-active,
.sidebar .player-card:hover,
.sidebar .player-card.is-active {
  border-color: rgba(86, 214, 170, 0.34);
  color: #fff;
  background: rgba(10, 163, 111, 0.13);
  box-shadow: inset 3px 0 0 var(--rd-green);
}

.team-filter-icon,
.team-filter-item strong,
.team-club-tab strong {
  color: var(--rd-navy-950);
  background: rgba(255, 255, 255, 0.88);
}

.team-club-tab {
  align-items: center;
}

.team-club-tab-main {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
}

.team-club-tab-logo {
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  border-radius: 6px;
  object-fit: contain;
}

/* Felso fejlec */
.topbar {
  position: sticky;
  top: 0;
  z-index: 35;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  min-height: 78px;
  margin: 0;
  border: 0;
  border-bottom: 1px solid var(--rd-border);
  border-radius: 0;
  padding: 15px 30px;
  color: var(--rd-text);
  background: rgba(255, 255, 255, 0.97);
  box-shadow: none;
  backdrop-filter: blur(12px);
}

.topbar-title {
  flex: 1 1 240px;
  min-width: 0;
}

.topbar .eyebrow {
  margin-bottom: 2px;
  color: var(--rd-green-dark);
  font-size: 0.64rem;
  letter-spacing: 0.06em;
}

.topbar h2 {
  margin: 0;
  color: var(--rd-text);
  font-size: 1.42rem;
  font-weight: 780;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.toolbar {
  display: flex;
  flex: 0 1 auto;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 7px;
  min-width: 0;
}

.toolbar button,
.primary-action,
.ghost-action,
.icon-action,
.danger-action,
.circle-action,
.small-action,
.small-delete,
.dialog-actions button {
  min-height: 40px;
  border-radius: var(--rd-radius);
  padding: 9px 13px;
  font-size: 0.82rem;
  font-weight: 720;
  line-height: 1.1;
  text-shadow: none;
  transition: color 140ms ease, background 140ms ease, border-color 140ms ease, box-shadow 140ms ease;
}

.primary-action,
.toolbar .primary-action {
  border: 1px solid var(--rd-green);
  color: #fff;
  background: var(--rd-green);
  box-shadow: 0 5px 13px rgba(10, 163, 111, 0.18);
}

.primary-action:hover,
.toolbar .primary-action:hover {
  border-color: var(--rd-green-dark);
  color: #fff;
  background: var(--rd-green-dark);
  box-shadow: 0 7px 18px rgba(8, 122, 85, 0.22);
  transform: none;
}

.ghost-action,
.icon-action,
.circle-action,
.small-action,
.toolbar .ghost-action,
.toolbar .icon-action {
  border: 1px solid var(--rd-border);
  color: var(--rd-text);
  background: #fff;
  box-shadow: none;
}

.ghost-action:hover,
.icon-action:hover,
.circle-action:hover,
.small-action:hover,
.toolbar .ghost-action:hover,
.toolbar .icon-action:hover {
  border-color: #a9bbc9;
  color: var(--rd-navy-800);
  background: var(--rd-blue-soft);
}

.icon-action {
  width: 40px;
  padding: 9px;
}

.icon-action > span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.top-signout {
  width: 40px;
  padding: 9px;
}

.top-signout > span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}

.toolbar .pwa-install-action {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  width: auto;
  border-color: var(--rd-green);
  color: #fff;
  background: var(--rd-green);
  font-weight: 850;
  white-space: nowrap;
  box-shadow: 0 8px 20px rgba(10, 132, 91, 0.2);
  transition: background 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.toolbar .pwa-install-action:hover {
  border-color: var(--rd-green-dark);
  color: #fff;
  background: var(--rd-green-dark);
  box-shadow: 0 10px 24px rgba(7, 83, 61, 0.24);
  transform: translateY(-1px);
}

.pwa-install-action svg {
  width: 18px;
  height: 18px;
}

.toolbar .pwa-install-action.is-ready {
  border-color: #087453;
  color: #fff;
  background: #087f5a;
  box-shadow: 0 9px 22px rgba(10, 132, 91, 0.24);
}

.toolbar .pwa-install-action.is-installed,
.toolbar .pwa-install-action:disabled {
  border-color: #cfe0da;
  color: #587267;
  background: #edf5f1;
  box-shadow: none;
  cursor: default;
  opacity: 1;
}

.toolbar .push-notification-action {
  position: relative;
  flex: 0 0 40px;
  transition: color 150ms ease, background 150ms ease, border-color 150ms ease, box-shadow 150ms ease;
}

.toolbar .push-notification-action.is-active {
  border-color: var(--rd-green);
  color: #fff;
  background: var(--rd-green);
  box-shadow: 0 6px 16px rgba(10, 132, 91, 0.2);
}

.toolbar .push-notification-action.is-active:hover {
  border-color: var(--rd-green-dark);
  color: #fff;
  background: var(--rd-green-dark);
}

.toolbar .push-notification-action.is-active::after {
  position: absolute;
  top: 6px;
  right: 6px;
  width: 7px;
  height: 7px;
  border: 2px solid #087c55;
  border-radius: 50%;
  background: #fff;
  content: "";
}

.toolbar .push-notification-action.is-blocked,
.toolbar .push-notification-action.has-error {
  border-color: #f1b9bd;
  color: #a52733;
  background: #fff1f2;
}

.view-preview-control {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  padding: 3px 4px 3px 10px;
  color: var(--rd-muted);
  background: var(--rd-surface-alt);
  box-shadow: none;
}

.view-preview-control select {
  min-height: 32px;
  border: 0;
  padding: 4px 26px 4px 7px;
  background: transparent;
}

/* Tartalmi munkater */
.detail-layout,
.coach-standalone-page,
.payment-standalone-page,
.task-reminder-banner {
  width: min(1500px, 100%);
  margin-right: auto;
  margin-left: auto;
}

.detail-layout {
  padding: 28px 30px 44px;
}

.coach-standalone-page,
.payment-standalone-page {
  padding: 28px 30px 44px;
}

.detail-panel,
.app-shell.is-player-focus .detail-panel {
  min-width: 0;
  min-height: 0;
  border: 0;
  border-radius: 0;
  color: var(--rd-text);
  background: transparent !important;
  box-shadow: none;
}

.home-state {
  gap: 24px;
  padding: 0;
  background: transparent;
}

.home-hero,
.home-hero.is-poster-only,
.home-hero.has-team-dashboard {
  min-height: 0;
  border: 0;
  border-radius: 0;
  padding: 0;
  color: var(--rd-text);
  background: transparent !important;
  box-shadow: none;
}

.home-hero::before {
  display: none;
}

.home-team-players,
.home-global-panel {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.home-hero.is-poster-only .home-team-players {
  display: grid;
  grid-column: 1;
}

/* Valodi kezdolapi dashboard */
.club-dashboard {
  display: grid;
  gap: 22px;
  min-width: 0;
}

.dashboard-intro {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  min-width: 0;
  border-bottom: 1px solid var(--rd-border);
  padding: 2px 0 20px;
}

.dashboard-intro h3 {
  margin: 0 0 5px;
  color: var(--rd-text);
  font-size: 1.72rem;
  font-weight: 790;
  line-height: 1.2;
}

.dashboard-intro-club {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}

.dashboard-intro-club > div {
  min-width: 0;
}

.dashboard-active-club-logo {
  width: 62px;
  height: 62px;
  flex: 0 0 62px;
  border-radius: 10px;
  object-fit: contain;
}

.dashboard-intro-club > div > span {
  color: var(--rd-muted);
  font-size: 0.84rem;
  font-weight: 600;
}

.dashboard-team-browser-action {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 42px;
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  padding: 9px 12px;
  color: var(--rd-text);
  background: #fff;
  font-weight: 720;
}

.dashboard-team-browser-action:hover {
  border-color: #a9bbc9;
  background: var(--rd-blue-soft);
}

.dashboard-team-browser-action svg:first-child {
  color: var(--rd-green-dark);
}

.dashboard-club-switcher {
  display: grid;
  gap: 10px;
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  padding: 16px;
  background: #fff;
  box-shadow: 0 3px 12px rgba(20, 42, 67, 0.035);
}

.dashboard-club-switcher-label {
  color: var(--rd-muted);
  font-size: 0.76rem;
  font-weight: 720;
}

.dashboard-club-switcher-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.dashboard-club-choice {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) 18px;
  gap: 12px;
  align-items: center;
  min-width: 0;
  min-height: 70px;
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  padding: 12px 14px;
  color: var(--rd-text);
  background: var(--rd-surface-alt);
  text-align: left;
}

.dashboard-club-choice:hover {
  border-color: #a6d9c7;
  background: var(--rd-green-soft);
}

.dashboard-club-choice.is-active {
  border-color: var(--rd-green);
  background: var(--rd-green-soft);
  box-shadow: inset 3px 0 0 var(--rd-green-dark);
}

.dashboard-club-choice-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: var(--rd-radius);
  color: var(--rd-green-dark);
  background: #fff;
  overflow: hidden;
}

.dashboard-club-choice-logo {
  width: 38px;
  height: 38px;
  border-radius: 7px;
  object-fit: contain;
}

.dashboard-club-choice > span:nth-child(2) {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.dashboard-club-choice strong {
  overflow-wrap: anywhere;
  color: var(--rd-text);
  font-size: 1rem;
  font-weight: 790;
}

.dashboard-club-choice small {
  color: var(--rd-muted);
  font-size: 0.72rem;
  font-weight: 650;
}

.dashboard-club-choice > svg {
  width: 18px;
  height: 18px;
  color: var(--rd-muted);
}

.dashboard-club-choice.is-active > svg {
  color: var(--rd-green-dark);
}

.dashboard-kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.dashboard-kpi {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  min-width: 0;
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  padding: 17px;
  color: var(--rd-text);
  background: #fff;
  box-shadow: 0 3px 12px rgba(20, 42, 67, 0.035);
}

.dashboard-kpi-icon,
.dashboard-coverage-icon,
.dashboard-activity-icon {
  display: grid;
  place-items: center;
  border-radius: var(--rd-radius);
}

.dashboard-kpi-icon {
  width: 42px;
  height: 42px;
  color: var(--rd-blue);
  background: var(--rd-blue-soft);
}

.kpi-players .dashboard-kpi-icon {
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
}

.kpi-orthopedic .dashboard-kpi-icon {
  color: var(--rd-purple);
  background: var(--rd-purple-soft);
}

.kpi-classification .dashboard-kpi-icon {
  color: #98660d;
  background: var(--rd-amber-soft);
}

.dashboard-kpi > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.dashboard-kpi span:not(.dashboard-kpi-icon) {
  color: var(--rd-muted);
  font-size: 0.72rem;
  font-weight: 680;
}

.dashboard-kpi strong {
  color: var(--rd-text);
  font-size: 1.65rem;
  font-weight: 800;
  line-height: 1.15;
}

.dashboard-kpi small {
  color: var(--rd-faint);
  font-size: 0.68rem;
  font-weight: 600;
}

.dashboard-main-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.72fr);
  gap: 24px;
  align-items: start;
  min-width: 0;
}

.dashboard-team-section,
.dashboard-side-column {
  display: grid;
  gap: 13px;
  min-width: 0;
}

.dashboard-side-column {
  gap: 14px;
}

.dashboard-side-panel {
  display: grid;
  gap: 15px;
  min-width: 0;
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  padding: 17px;
  background: #fff;
  box-shadow: 0 3px 12px rgba(20, 42, 67, 0.035);
}

.dashboard-section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 14px;
  min-width: 0;
}

.dashboard-section-head h4 {
  margin: 0;
  color: var(--rd-text);
  font-size: 1.04rem;
  font-weight: 770;
}

.dashboard-section-head > span {
  color: var(--rd-muted);
  font-size: 0.76rem;
  font-weight: 650;
}

.dashboard-team-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}

.dashboard-team-card {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) 18px;
  gap: 11px;
  align-items: center;
  min-width: 0;
  min-height: 66px;
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  padding: 11px 12px;
  color: var(--rd-text);
  background: #fff;
  text-align: left;
}

.dashboard-team-card:hover {
  border-color: #a6d9c7;
  background: var(--rd-green-soft);
}

.dashboard-team-card.is-empty {
  color: var(--rd-muted);
  background: var(--rd-surface-alt);
}

.dashboard-team-mark {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  color: #fff;
  background: var(--rd-navy-800);
  font-size: 0.68rem;
  font-weight: 800;
}

.dashboard-team-card:hover .dashboard-team-mark {
  background: var(--rd-green-dark);
}

.dashboard-team-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.dashboard-team-copy strong {
  overflow: hidden;
  color: var(--rd-text);
  font-size: 0.86rem;
  font-weight: 760;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dashboard-team-copy small {
  overflow: hidden;
  color: var(--rd-muted);
  font-size: 0.68rem;
  font-weight: 600;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dashboard-team-card > svg {
  color: var(--rd-faint);
}

.dashboard-coverage-list,
.dashboard-activity-list {
  display: grid;
  gap: 11px;
}

.dashboard-coverage-row {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
}

.dashboard-coverage-icon,
.dashboard-activity-icon {
  width: 34px;
  height: 34px;
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
}

.dashboard-coverage-row > div {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.dashboard-coverage-row > div > span:first-child {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}

.dashboard-coverage-row strong,
.dashboard-coverage-row b {
  color: var(--rd-text);
  font-size: 0.76rem;
}

.dashboard-coverage-row small {
  color: var(--rd-faint);
  font-size: 0.66rem;
}

.dashboard-progress {
  display: block;
  height: 5px;
  overflow: hidden;
  border-radius: 999px;
  background: #e8edf2;
}

.dashboard-progress i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--rd-green);
}

.dashboard-activity-list button {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 18px;
  gap: 10px;
  align-items: center;
  width: 100%;
  border: 0;
  border-top: 1px solid var(--rd-border);
  border-radius: 0;
  padding: 10px 0 0;
  color: var(--rd-text);
  background: transparent;
  text-align: left;
}

.dashboard-activity-list button:first-child {
  border-top: 0;
  padding-top: 0;
}

.dashboard-activity-list button:hover strong {
  color: var(--rd-green-dark);
}

.dashboard-activity-list button > span:nth-child(2) {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.dashboard-activity-list strong {
  overflow: hidden;
  color: var(--rd-text);
  font-size: 0.77rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dashboard-activity-list small {
  color: var(--rd-muted);
  font-size: 0.66rem;
}

.dashboard-activity-list button > svg {
  color: var(--rd-faint);
}

/* Altalanos komponensrendszer */
.leadership-card,
.management-form,
.management-item,
.chart-card,
.team-kpi,
.insight-panel,
.feedback-card,
.info-block,
.measurement-form,
.measurement-type-card,
.reference-compare-card,
.reference-compare-summary,
.classification-form,
.classification-summary,
.classification-criteria,
.classification-detail,
.full-data-section,
.trend-kpi,
.trend-period,
.trend-focus-card,
.status-tile,
.orthopedic-reference-card,
.orthopedic-reference-compare-card,
.orthopedic-age-comparison,
.orthopedic-recommendation-item,
.orthopedic-fine-tuning,
.orthopedic-special-attention,
.sync-card,
.local-data-card,
.field-document-card,
.training-material-card,
.health-record-item,
.task-item,
.payment-record-item,
.payment-detail-card,
.parent-payment-timeline-card,
.parent-child-report-card,
.coach-detail-panel,
.coach-detail-page-head,
.coach-contact-card,
.coach-clothing-row,
.coach-tools-grid label,
.coach-receipt-history,
.coach-receipt-document,
.coach-receipt-visual-item,
.coach-return-row,
.coach-new-receipt-menu,
.data-hero {
  border-color: var(--rd-border);
  border-radius: var(--rd-radius);
  color: var(--rd-text);
  background: var(--rd-surface);
  box-shadow: 0 3px 13px rgba(20, 42, 67, 0.04);
}

.section-heading,
.chart-card-head,
.feedback-card-head,
.team-measurement-table-head,
.home-team-head {
  gap: 14px;
}

.section-heading h3,
.section-heading h4,
.chart-card-head h4,
.feedback-card-head h4,
.home-team-head strong,
.team-programs-head h3,
.team-measurement-table-head strong,
.workspace h1,
.workspace h2,
.workspace h3,
.workspace h4,
.workspace h5,
.workspace h6 {
  color: var(--rd-text);
  text-shadow: none;
}

.section-heading h3,
.data-hero h3 {
  font-size: 1.28rem;
  font-weight: 780;
}

.section-heading h4,
.chart-card-head h4,
.feedback-card-head h4 {
  font-size: 1rem;
  font-weight: 760;
}

.section-heading span,
.section-heading p,
.chart-card-head span,
.feedback-card-head span,
.home-team-head span,
.team-measurement-table-head span,
.muted-empty,
.chart-empty,
.reference-source,
.dialog-subtitle,
.dialog-form-note {
  color: var(--rd-muted);
}

.data-hero {
  display: flex;
  align-items: center;
  gap: 14px;
  border-left: 4px solid var(--rd-green);
  padding: 16px;
}

.data-hero-logo {
  width: 48px;
  min-width: 48px;
  min-height: 52px;
  border: 0;
  border-radius: var(--rd-radius);
  padding: 5px;
  background: var(--rd-navy-950);
}

.data-hero-logo img {
  max-height: 42px;
}

input,
select,
textarea,
.view-preview-control {
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  color: var(--rd-text);
  background: #fff;
  box-shadow: none;
}

input,
select,
textarea {
  min-height: 42px;
  padding: 9px 11px;
}

input:focus,
select:focus,
textarea:focus {
  border-color: var(--rd-green);
  box-shadow: 0 0 0 3px rgba(10, 163, 111, 0.14);
}

label,
.workspace label {
  color: #495d71;
  font-size: 0.78rem;
  font-weight: 680;
}

.management-form,
.measurement-form,
.classification-form {
  padding: 18px;
}

.form-grid {
  gap: 13px;
}

/* Tabok es nezetvaltok */
.tabs,
.result-subtabs,
.team-view-menu,
.coach-detail-tabs,
.coach-directory-switch,
.field-schedule-switch,
.parent-portal-switch,
.coach-detail-mode {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  padding: 4px;
  background: #fff;
  box-shadow: none;
}

.tab,
.result-subtab,
.team-view-button,
.coach-detail-tabs button,
.coach-directory-switch button,
.field-schedule-switch button,
.parent-portal-switch button,
.coach-detail-mode button {
  min-height: 38px;
  border: 1px solid transparent;
  border-radius: 6px;
  padding: 8px 11px;
  color: var(--rd-muted);
  background: transparent;
  box-shadow: none;
  font-size: 0.76rem;
  font-weight: 700;
}

.tab:hover,
.result-subtab:hover,
.team-view-button:hover,
.coach-detail-tabs button:hover,
.coach-directory-switch button:hover,
.field-schedule-switch button:hover,
.parent-portal-switch button:hover,
.coach-detail-mode button:hover {
  color: var(--rd-text);
  background: var(--rd-surface-alt);
}

.tab.is-active,
.result-subtab.is-active,
.team-view-button.is-active,
.coach-detail-tabs button.is-active,
.coach-directory-switch button.is-active,
.field-schedule-switch button.is-active,
.parent-portal-switch button.is-active,
.coach-detail-mode button.is-active {
  border-color: #b9e2d3;
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
  box-shadow: none;
}

.team-view-menu {
  display: grid;
  grid-template-columns: repeat(7, minmax(100px, 1fr));
  overflow-x: auto;
}

.team-view-button {
  justify-content: center;
}

.team-view-icon {
  width: 24px;
  height: 24px;
  border-radius: 6px;
  color: var(--rd-muted);
  background: var(--rd-surface-alt);
}

.team-view-button.is-active .team-view-icon {
  color: #fff;
  background: var(--rd-green-dark);
}

/* Csapat- es jatekosnezet */
.home-team-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--rd-border);
  padding: 2px 0 16px;
}

.home-player-section {
  margin-top: 18px;
}

.home-player-list,
.home-hero.has-team-dashboard .home-player-list {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.home-player-card {
  min-height: 56px;
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  padding: 8px 10px;
  color: var(--rd-text);
  background: #fff;
  box-shadow: none;
}

.home-player-card:hover {
  border-color: #a6d9c7;
  background: var(--rd-green-soft);
  box-shadow: none;
  transform: none;
}

.home-player-card .avatar,
.home-player-card .avatar-fallback {
  width: 36px;
  min-width: 36px;
  height: 36px;
  font-size: 0.68rem;
}

.home-player-card strong {
  color: var(--rd-text);
  font-size: 0.78rem;
}

.home-team-dashboard {
  margin-top: 18px;
}

/* Csapatattekintes: a korabbi sotet kartyaelemek olvashato vilagos valtozata. */
.home-team-dashboard .team-attention-card,
.home-team-dashboard .team-highlighted-card,
.home-team-dashboard .narrative-card,
.home-team-dashboard .team-coverage-card {
  overflow: hidden;
}

.home-team-dashboard .team-attention-card .chart-card-head,
.home-team-dashboard .team-highlighted-card .chart-card-head,
.home-team-dashboard .narrative-card .chart-card-head,
.home-team-dashboard .team-coverage-card .chart-card-head {
  align-items: flex-start;
}

.home-team-dashboard .attention-list,
.home-team-dashboard .highlight-player-list {
  gap: 9px;
}

.home-team-dashboard .attention-item,
.home-team-dashboard .highlight-player-item {
  border: 1px solid var(--rd-border);
  border-radius: 7px;
  color: var(--rd-text);
  background: var(--rd-surface-alt);
  box-shadow: none;
}

.home-team-dashboard .attention-item {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  padding: 13px 14px;
}

.home-team-dashboard .attention-item.warn {
  border-color: #ecd080;
  background: #fff8e6;
}

.home-team-dashboard .attention-item.bad {
  border-color: #efaab2;
  background: #fff0f2;
}

.home-team-dashboard .attention-item:hover,
.home-team-dashboard .highlight-player-item:hover {
  border-color: #91cdb8;
  background: #effaf5;
  transform: none;
}

.home-team-dashboard .attention-item-copy,
.home-team-dashboard .highlight-player-item > span {
  gap: 6px;
}

.home-team-dashboard .attention-item strong,
.home-team-dashboard .highlight-player-item strong {
  color: var(--rd-text);
  font-size: 0.92rem;
  font-weight: 800;
}

.home-team-dashboard .attention-item small,
.home-team-dashboard .highlight-player-item small,
.home-team-dashboard .highlight-player-item em {
  color: #50667c;
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1.38;
}

.home-team-dashboard .attention-item em {
  min-width: 108px;
  border: 1px solid #d9b85e;
  border-radius: 999px;
  padding: 7px 10px;
  color: #74540b;
  background: #fff2c8;
  font-size: 0.72rem;
  font-weight: 850;
}

.home-team-dashboard .attention-item.bad em {
  border-color: #e79da6;
  color: #a02f3c;
  background: #fde1e5;
}

.home-team-dashboard .attention-tags {
  gap: 6px;
}

.home-team-dashboard .attention-tags b {
  border: 1px solid #cbd8e4;
  border-radius: 999px;
  padding: 5px 8px;
  color: #31485e;
  background: #fff;
  font-size: 0.74rem;
  font-weight: 760;
  line-height: 1.22;
}

.home-team-dashboard .attention-item.bad .attention-tags b {
  border-color: #ebc1c7;
  background: #fff8f8;
}

.home-team-dashboard .classification-leadership-card {
  border-color: #b8dfca;
  border-left: 4px solid var(--rd-green);
  background: #f4fbf7;
}

.home-team-dashboard .team-highlighted-card {
  border-left-width: 4px;
}

.home-team-dashboard .highlight-player-item {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  padding: 12px 14px;
  background: #fff;
}

.home-team-dashboard .highlight-player-item b {
  min-width: 62px;
  border: 1px solid #8fcdb3;
  border-radius: 999px;
  padding: 7px 10px;
  color: #076b47;
  background: #dff6e8;
  font-size: 0.92rem;
  font-weight: 850;
}

.home-team-dashboard .narrative-card {
  border-left: 4px solid #d9b347;
}

.home-team-dashboard .narrative-card.good {
  border-color: #b8dfca;
  border-left-color: var(--rd-green);
}

.home-team-dashboard .narrative-card.warn,
.home-team-dashboard .narrative-card.neutral {
  border-color: #ecd080;
  border-left-color: #d9b347;
}

.home-team-dashboard .narrative-card.bad {
  border-color: #efaab2;
  border-left-color: #d85a67;
}

.home-team-dashboard .narrative-list {
  gap: 8px;
}

.home-team-dashboard .narrative-list li {
  border: 1px solid var(--rd-border);
  border-left-width: 4px;
  border-radius: 6px;
  padding: 11px 12px;
  background: var(--rd-surface-alt);
}

.home-team-dashboard .narrative-list strong {
  color: var(--rd-text);
  font-size: 0.88rem;
}

.home-team-dashboard .narrative-list span {
  color: #50667c;
  font-size: 0.8rem;
  font-weight: 650;
  line-height: 1.42;
}

.home-team-dashboard .coverage-grid {
  gap: 9px;
}

.home-team-dashboard .coverage-item {
  border: 1px solid #b8dfca;
  border-radius: 7px;
  padding: 12px;
  background: #f1faf5;
}

.home-team-dashboard .coverage-item.has-missing {
  border-color: #ecd080;
  background: #fff8e6;
}

.home-team-dashboard .coverage-item span {
  color: #536b7f;
  font-size: 0.72rem;
  font-weight: 800;
}

.home-team-dashboard .coverage-item strong {
  color: var(--rd-text);
  font-size: 1.08rem;
}

.home-team-dashboard .coverage-item small {
  color: #50667c;
  font-size: 0.76rem;
  font-weight: 700;
}

/* A csapatfejlodes jelzese csak az ertek es az informacios ikon mogott fusson. */
.team-table.team-development-overview-table .team-table-row > .change-text {
  display: inline-flex;
  align-items: center;
  justify-self: start;
  width: fit-content;
  max-width: 100%;
}

/* Ortopediai fokuszok: az elso csak tenyleges korrekcios igenynel piros. */
.player-detail .orthopedic-recommendation-item.is-primary.bad {
  border-color: #edaab3;
  border-left-color: #d63f4d;
  background: #fde7ea;
}

.player-detail .orthopedic-recommendation-item.is-primary.bad .orthopedic-recommendation-item-head > span {
  color: #a52f3d;
}

.player-detail .orthopedic-recommendation-item.is-secondary.warn {
  border-color: #ecd080;
  border-left-color: #d7a92d;
  background: #fff7da;
}

.player-detail .orthopedic-recommendation-item.is-secondary.warn .orthopedic-recommendation-item-head > span {
  color: #815d08;
}

.player-detail .orthopedic-fine-tuning {
  border-color: #b8d8ef;
  border-left-color: #5a9fd0;
  background: #eef8ff;
}

/* Jatekosprofil */
.player-detail {
  min-height: 0;
  border: 0;
  border-radius: 0;
  padding: 0;
  color: var(--rd-text);
  background: transparent !important;
  box-shadow: none;
}

.player-detail .profile-header {
  border: 1px solid var(--rd-border);
  border-left: 4px solid var(--rd-green);
  border-radius: var(--rd-radius);
  padding: 18px;
  color: var(--rd-text);
  background: #fff;
  box-shadow: 0 3px 13px rgba(20, 42, 67, 0.04);
}

.profile-main h3,
.player-detail .profile-header h3 {
  color: var(--rd-text);
  font-size: 1.42rem;
}

.meta-pill,
.risk-pill,
.score-overall,
.change-text,
.report-rating,
.health-status-pill,
.task-status-pill {
  border-radius: 999px;
}

.player-detail .tabs {
  position: sticky;
  top: 89px;
  z-index: 20;
  margin: 14px 0;
  box-shadow: 0 5px 16px rgba(20, 42, 67, 0.06);
}

.tab-panel {
  min-width: 0;
}

/* Tablazatok */
.excel-table-wrap,
.team-data-table-wrap,
.team-table-scroll,
.history-table-wrap,
.classification-table-wrap {
  overflow: auto;
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  background: #fff;
  box-shadow: none;
}

.excel-table,
.team-data-table,
.history-table,
.classification-table {
  border-collapse: separate;
  border-spacing: 0;
  color: var(--rd-text);
  background: #fff;
}

.excel-table thead th,
.team-data-table thead th,
.history-table thead th,
.classification-table thead th {
  position: sticky;
  top: 0;
  z-index: 3;
  border-color: var(--rd-border);
  color: #3e5267;
  background: #eef3f7;
  font-size: 0.7rem;
  font-weight: 780;
  text-transform: none;
}

.excel-table td,
.excel-table th,
.team-data-table td,
.team-data-table th,
.history-table td,
.history-table th,
.classification-table td,
.classification-table th {
  border-color: var(--rd-border);
  padding: 9px 10px;
}

.excel-table tbody tr:nth-child(even) td,
.excel-table tbody tr:nth-child(even) th,
.team-data-table tbody tr:nth-child(even) td,
.team-data-table tbody tr:nth-child(even) th,
.history-table tbody tr:nth-child(even) td,
.classification-table tbody tr:nth-child(even) td {
  background: var(--rd-surface-alt);
}

.excel-table tbody tr:hover td,
.excel-table tbody tr:hover th,
.team-data-table tbody tr:hover td,
.team-data-table tbody tr:hover th {
  background: #eef9f5;
}

/* Grafikonok es visszajelzesek */
.team-average-visual-row,
.team-average-visual-row.good,
.team-average-visual-row.bad,
.team-average-visual-row.neutral {
  border: 1px solid var(--rd-border);
  border-left: 4px solid var(--rd-green);
  border-radius: var(--rd-radius);
  color: var(--rd-text);
  background: #fff;
  box-shadow: none;
}

.team-average-visual-row.bad {
  border-left-color: var(--rd-red);
}

.team-average-visual-row.neutral {
  border-left-color: var(--rd-amber);
}

.chart-shell,
.radar-shell,
.spark-shell {
  border-color: var(--rd-border);
  background: var(--rd-surface-alt);
}

.spark-axis,
.radar-ring,
.radar-axis {
  stroke: #c7d3de;
}

.spark-line,
.radar-line {
  stroke: var(--rd-green);
}

.spark-dot,
.radar-dot {
  fill: var(--rd-green);
  stroke: #fff;
}

.info-tip,
.value-with-info .info-tip,
.workspace .value-with-info .info-tip {
  border-color: #b7cae7;
  color: #205da8;
  background: var(--rd-blue-soft);
}

/* Naptarak */
.coach-calendar-card,
.parent-calendar-card,
.parent-attendance-stats {
  border-color: var(--rd-border);
  border-radius: var(--rd-radius);
  color: var(--rd-text);
  background: #fff;
  box-shadow: 0 3px 13px rgba(20, 42, 67, 0.04);
}

/* Szülői jelenléti összegzés: tömör, mégis azonnal áttekinthető állapotok. */
.parent-attendance-stats {
  gap: 8px;
  padding: 10px 12px;
}

.parent-attendance-stats-head {
  gap: 8px;
}

.parent-attendance-stats-head strong {
  font-size: 0.92rem;
}

.parent-attendance-stats-head > span {
  font-size: 0.68rem;
}

.parent-attendance-stat-grid {
  gap: 6px;
}

.parent-attendance-stat {
  min-height: 66px;
  gap: 2px;
  padding: 8px 9px;
}

.parent-attendance-stat b {
  font-size: 1.15rem;
  line-height: 1;
}

.parent-attendance-stat span {
  font-size: 0.66rem;
  line-height: 1.2;
}

@media (max-width: 720px) {
  .parent-attendance-stats {
    padding: 8px;
  }

  .parent-attendance-stats-head {
    align-items: center;
    flex-direction: row;
  }

  .parent-attendance-stats-head > span {
    text-align: right;
  }

  .parent-attendance-stat-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 5px;
  }

  .parent-attendance-stat {
    min-height: 62px;
    padding: 7px 5px;
  }

  .parent-attendance-stat b {
    font-size: 1.12rem;
  }

  .parent-attendance-stat span {
    font-size: 0.6rem;
    line-height: 1.16;
  }
}

.coach-calendar-weekdays,
.parent-calendar-weekdays {
  color: var(--rd-muted);
  background: #eef3f7;
}

.coach-calendar-day,
.parent-calendar-day {
  border-color: var(--rd-border);
  color: var(--rd-text);
  background: #fff;
}

.coach-calendar-day:hover,
.parent-calendar-day:hover {
  border-color: #9ed4c1;
  background: var(--rd-green-soft);
}

/* Dialogok */
dialog,
.dialog-card,
.coach-program-dialog-card,
.technical-player-dialog-card {
  border: 1px solid var(--rd-border-strong);
  border-radius: var(--rd-radius);
  color: var(--rd-text);
  background: #fff;
  box-shadow: var(--rd-shadow-strong);
}

dialog::backdrop {
  background: rgba(6, 23, 43, 0.52);
  backdrop-filter: blur(3px);
}

.dialog-header {
  border-bottom: 1px solid var(--rd-border);
  padding-bottom: 14px;
}

.dialog-actions {
  border-top: 1px solid var(--rd-border);
  padding-top: 14px;
}

#playerDialog {
  width: min(1080px, calc(100vw - 24px));
  max-width: calc(100vw - 24px);
  max-height: calc(100dvh - 24px);
  margin: auto;
  overflow: visible;
}

#playerDialog .dialog-card {
  max-height: calc(100dvh - 24px);
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  -webkit-overflow-scrolling: touch;
}

@media (max-width: 720px) {
  #playerDialog {
    width: calc(100vw - 12px);
    max-width: calc(100vw - 12px);
    max-height: calc(100dvh - 12px);
  }

  #playerDialog .dialog-card {
    max-height: calc(100dvh - 12px);
  }
}

.pwa-install-dialog {
  width: min(560px, calc(100vw - 28px));
}

.push-permission-dialog {
  width: min(620px, calc(100vw - 28px));
  max-height: calc(100dvh - 28px);
  padding: 0;
  overflow: hidden;
  border: 0;
}

.push-permission-card {
  gap: 0;
  padding: 0;
  overflow: hidden;
  border: 0;
  box-shadow: none;
}

.push-permission-hero {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  align-items: center;
  gap: 20px;
  padding: 28px;
  color: #fff;
  background: #062d25;
}

.push-permission-hero .eyebrow {
  margin: 0 0 5px;
  color: #80e4bd;
}

.push-permission-hero h3 {
  margin: 0;
  color: #fff;
  font-size: clamp(1.45rem, 3vw, 2rem);
  line-height: 1.08;
}

.push-permission-hero p:last-child {
  margin: 10px 0 0;
  max-width: 440px;
  color: #d8e8e3;
  font-size: 0.94rem;
  line-height: 1.5;
}

.push-permission-icon {
  display: grid;
  width: 72px;
  height: 72px;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 8px;
  color: #05251f;
  background: #80e4bd;
}

.push-permission-icon svg {
  width: 34px;
  height: 34px;
}

.push-permission-benefits {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  border-bottom: 1px solid var(--rd-border);
  background: var(--rd-border);
}

.push-permission-benefits span {
  display: flex;
  min-height: 76px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 14px;
  color: var(--rd-text);
  background: #fff;
  font-size: 0.82rem;
  font-weight: 800;
  text-align: center;
}

.push-permission-benefits svg {
  width: 19px;
  height: 19px;
  flex: 0 0 auto;
  color: var(--rd-green);
}

.push-permission-note {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 0;
  padding: 18px 28px;
  color: var(--rd-muted);
  background: #f7faf9;
  font-size: 0.84rem;
  line-height: 1.45;
}

.push-permission-note svg {
  width: 20px;
  height: 20px;
  flex: 0 0 auto;
  color: var(--rd-green);
}

.push-permission-actions {
  display: grid;
  grid-template-columns: minmax(120px, 0.42fr) minmax(220px, 1fr);
  gap: 12px;
  padding: 18px 28px 24px;
  border-top: 0;
}

.push-permission-actions button {
  min-height: 50px;
  justify-content: center;
}

@media (max-width: 560px) {
  .push-permission-dialog {
    width: calc(100vw - 16px);
    max-height: calc(100dvh - 16px);
  }

  .push-permission-hero {
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 14px;
    padding: 22px 18px;
  }

  .push-permission-icon {
    width: 54px;
    height: 54px;
  }

  .push-permission-icon svg {
    width: 27px;
    height: 27px;
  }

  .push-permission-hero h3 {
    font-size: 1.35rem;
  }

  .push-permission-hero p:last-child {
    font-size: 0.84rem;
  }

  .push-permission-benefits {
    grid-template-columns: 1fr;
  }

  .push-permission-benefits span {
    min-height: 46px;
    justify-content: flex-start;
    padding: 10px 18px;
    text-align: left;
  }

  .push-permission-note {
    padding: 15px 18px;
  }

  .push-permission-actions {
    grid-template-columns: 1fr;
    padding: 14px 18px 18px;
  }

  .push-permission-actions #pushPermissionEnableBtn {
    grid-row: 1;
  }
}

.pwa-install-card {
  gap: 18px;
  padding: 22px;
}

.pwa-install-card .dialog-header h3 {
  margin: 2px 0 5px;
  color: var(--rd-text);
  font-size: 1.35rem;
}

.pwa-install-card .dialog-subtitle {
  display: block;
  max-width: 420px;
  color: var(--rd-muted);
  font-size: 0.82rem;
  line-height: 1.45;
}

.pwa-install-visual {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  border: 1px solid #cfe0da;
  border-radius: 8px;
  padding: 18px;
  color: var(--rd-green-dark);
  background: #f2fbf6;
}

.pwa-install-visual > span {
  display: grid;
  place-items: center;
  width: 68px;
  height: 68px;
  overflow: hidden;
  border: 1px solid #bfe2d1;
  border-radius: 8px;
  background: #fff;
}

.pwa-install-visual img {
  width: 58px;
  height: 58px;
  object-fit: contain;
}

.pwa-install-visual > svg {
  width: 24px;
  height: 24px;
}

.pwa-install-visual > span > svg {
  width: 32px;
  height: 32px;
}

.pwa-install-visual > .pwa-install-device-pair {
  display: flex;
  gap: 4px;
  width: 82px;
}

.pwa-install-visual > .pwa-install-device-pair > svg {
  width: 28px;
  height: 28px;
}

.pwa-install-steps {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.pwa-install-steps li {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-width: 0;
  border: 1px solid var(--rd-border);
  border-radius: 7px;
  padding: 11px 12px;
  background: #fff;
}

.pwa-install-steps li > span {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  color: #fff;
  background: var(--rd-green);
  font-size: 0.78rem;
  font-weight: 850;
}

.pwa-install-steps strong {
  color: var(--rd-text);
  font-size: 0.82rem;
  font-weight: 720;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.pwa-install-note {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 9px;
  margin: 0;
  color: var(--rd-muted);
  font-size: 0.75rem;
  line-height: 1.45;
}

.pwa-install-note svg {
  width: 18px;
  height: 18px;
  color: var(--rd-green);
}

#coachProgramDialog .coach-program-dialog-card .dialog-form-note,
.coach-program-dialog-card .dialog-form-note,
.dialog-form-note {
  color: var(--rd-muted) !important;
}

/* Bejelentkezes */
.login-screen {
  position: relative;
  display: grid;
  place-items: center;
  min-height: 100vh;
  overflow: hidden;
  padding: 28px;
  background: var(--rd-canvas) !important;
}

.login-screen::before {
  content: "";
  position: fixed;
  inset: 0 auto 0 0;
  width: 38%;
  background: var(--rd-navy-950);
}

.login-screen::after {
  content: "KELEN SC";
  position: fixed;
  left: 5vw;
  bottom: 5vh;
  color: rgba(255, 255, 255, 0.04);
  font-size: 6rem;
  font-weight: 900;
  letter-spacing: 0.08em;
}

.login-card {
  position: relative;
  z-index: 2;
  width: min(500px, 100%);
  gap: 20px;
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  padding: 28px;
  color: var(--rd-text);
  background: #fff;
  box-shadow: 0 28px 75px rgba(6, 23, 43, 0.22);
}

.login-brand {
  border-bottom: 1px solid var(--rd-border);
  padding-bottom: 17px;
}

.login-logo {
  border-radius: var(--rd-radius);
  background: var(--rd-navy-950);
}

.login-copy h2 {
  max-width: 18ch;
  color: var(--rd-text);
  font-size: 2rem;
}

.login-copy p:last-child,
.login-status span,
.auth-mode-hint {
  color: var(--rd-muted);
}

.login-status {
  border: 1px solid #b9d4ed;
  border-left: 4px solid var(--rd-blue);
  border-radius: var(--rd-radius);
  background: var(--rd-blue-soft);
}

.auth-mode-switch {
  border-color: var(--rd-border);
  border-radius: var(--rd-radius);
  background: var(--rd-surface-alt);
}

.auth-mode-switch button {
  border-radius: 6px;
}

.auth-mode-switch button.is-active {
  color: #fff;
  background: var(--rd-green);
  box-shadow: none;
}

.auth-reset-button {
  justify-self: start;
  min-height: auto;
  border: 0;
  padding: 2px 0;
  color: var(--rd-green-dark);
  background: transparent;
  font: inherit;
  font-size: 0.9rem;
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}

.auth-reset-button:hover,
.auth-reset-button:focus-visible {
  color: var(--rd-navy-950);
}

/* The compact sync form is useful in the app shell, but too dense on the login card. */
.login-screen .sync-login.login-form {
  grid-template-columns: minmax(0, 1fr);
  align-items: stretch;
  gap: 14px;
  padding: 16px;
}

.login-screen .sync-login.login-form > * {
  min-width: 0;
}

.login-screen .sync-login.login-form .primary-action {
  width: 100%;
  justify-content: center;
}

.parent-registration-form {
  gap: 16px !important;
}

.parent-registration-children-fields {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.parent-registration-child-card {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  min-width: 0;
  margin: 0;
  border: 1px solid var(--rd-border);
  border-left: 4px solid var(--rd-green);
  border-radius: 9px;
  padding: 12px;
  background: var(--rd-surface-alt);
}

.parent-registration-child-card legend {
  grid-column: 1 / -1;
  max-width: 100%;
  padding: 0 5px;
  color: var(--rd-green-dark);
  font-size: 0.8rem;
  font-weight: 850;
}

.parent-registration-child-card label {
  min-width: 0;
}

.parent-registration-child-card input,
.parent-registration-child-card select {
  min-width: 0;
}

.parent-registration-children-empty {
  margin: 0;
  border: 1px dashed var(--rd-border-strong);
  border-radius: 8px;
  padding: 11px 12px;
  color: var(--rd-muted);
  background: var(--rd-surface-alt);
  font-size: 0.84rem;
  font-weight: 700;
  line-height: 1.45;
}

@media (max-width: 640px) {
  .parent-registration-child-card {
    grid-template-columns: 1fr;
  }
}

/* Munkateruletek: az Attekintes vizualis rendje */
.home-global-panel {
  display: grid;
  gap: 16px;
  min-width: 0;
}

.home-global-panel > .data-hero {
  min-height: 84px;
  border: 1px solid var(--rd-border);
  border-left: 4px solid var(--rd-green);
  background: #fff;
}

.home-global-panel > .data-hero > div:last-child {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.home-global-panel > .data-hero span {
  color: var(--rd-muted);
  font-size: 0.78rem;
  font-weight: 600;
}

#healthPanel > .data-hero {
  border-left-color: var(--rd-red);
}

#tasksPanel > .data-hero {
  border-left-color: var(--rd-blue);
}

#trainingPanel > .data-hero {
  border-left-color: var(--rd-purple);
}

#fieldsPanel > .data-hero {
  border-left-color: var(--rd-amber);
}

.health-summary,
.task-summary,
.training-summary {
  display: grid;
  gap: 12px;
}

#healthPanel .health-summary-line,
#tasksPanel .task-summary-line,
#trainingPanel .training-summary-line {
  display: grid;
  gap: 3px;
  min-width: 0;
  border: 1px solid var(--rd-border);
  border-left: 4px solid var(--rd-green);
  border-radius: var(--rd-radius);
  padding: 13px 15px;
  color: var(--rd-text);
  background: #fff;
  box-shadow: 0 3px 13px rgba(20, 42, 67, 0.04);
}

#healthPanel .health-summary-line {
  border-left-color: var(--rd-red);
  background: #fff8f9;
}

#tasksPanel .task-summary-line {
  border-left-color: var(--rd-blue);
  background: #f7faff;
}

#trainingPanel .training-summary-line {
  border-left-color: var(--rd-purple);
  background: #faf9ff;
}

#healthPanel .health-summary-line strong,
#tasksPanel .task-summary-line strong,
#trainingPanel .training-summary-line strong {
  color: var(--rd-text);
  font-size: 0.9rem;
  line-height: 1.35;
}

#healthPanel .health-summary-line span,
#tasksPanel .task-summary-line span,
#trainingPanel .training-summary-line span {
  color: var(--rd-muted);
  font-size: 0.76rem;
  line-height: 1.4;
}

#healthPanel .health-filters {
  display: grid;
  gap: 13px;
  min-width: 0;
  border: 1px solid var(--rd-border);
  border-left: 4px solid var(--rd-red);
  border-radius: var(--rd-radius);
  padding: 14px 15px;
  color: var(--rd-text);
  background: var(--rd-surface);
  box-shadow: 0 3px 13px rgba(20, 42, 67, 0.04);
}

#healthPanel .health-filter-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-width: 0;
}

#healthPanel .health-filter-head > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

#healthPanel .health-filter-head h4 {
  margin: 0;
  color: var(--rd-text);
  font-size: 0.98rem;
}

#healthPanel .health-filter-head span {
  color: var(--rd-muted);
  font-size: 0.75rem;
  line-height: 1.35;
}

#healthPanel .health-filter-reset {
  flex: 0 0 auto;
  border: 1px solid var(--rd-border-strong);
  border-radius: 999px;
  padding: 7px 10px;
  color: var(--rd-muted);
  background: var(--rd-surface-alt);
  font-size: 0.72rem;
  font-weight: 800;
  cursor: pointer;
}

#healthPanel .health-filter-reset:not(:disabled):hover,
#healthPanel .health-filter-reset:not(:disabled):focus-visible {
  border-color: var(--rd-red);
  color: var(--rd-red);
}

#healthPanel .health-filter-reset:disabled {
  cursor: default;
  opacity: 0.55;
}

#healthPanel .health-filter-grid {
  display: grid;
  grid-template-columns: minmax(180px, 1.1fr) minmax(160px, 0.8fr) minmax(180px, 1.1fr);
  gap: 10px;
  min-width: 0;
}

#healthPanel .health-filter-grid label {
  display: grid;
  gap: 5px;
  min-width: 0;
  color: var(--rd-muted);
  font-size: 0.72rem;
  font-weight: 800;
}

#healthPanel .health-filter-grid input,
#healthPanel .health-filter-grid select {
  min-width: 0;
  width: 100%;
  border: 1px solid var(--rd-border-strong);
  border-radius: var(--rd-radius);
  padding: 10px 11px;
  color: var(--rd-text);
  background: var(--rd-surface-alt);
  font: inherit;
  font-size: 0.82rem;
  font-weight: 700;
}

#healthPanel .health-filter-grid input:focus,
#healthPanel .health-filter-grid select:focus {
  outline: 2px solid rgba(204, 69, 84, 0.2);
  outline-offset: 1px;
  border-color: var(--rd-red);
}

#healthPanel .health-visualizations {
  display: grid;
  gap: 14px;
  min-width: 0;
}

#healthPanel .health-analytics-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 14px;
  min-width: 0;
  padding: 2px 2px 0;
}

#healthPanel .health-analytics-head > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

#healthPanel .health-analytics-head .eyebrow {
  margin: 0;
  color: var(--rd-red);
  font-size: 0.68rem;
  font-weight: 850;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

#healthPanel .health-analytics-head h4 {
  margin: 0;
  color: var(--rd-text);
  font-size: 1.08rem;
}

#healthPanel .health-analytics-head > div > span {
  color: var(--rd-muted);
  font-size: 0.76rem;
  line-height: 1.4;
}

#healthPanel .health-analytics-count {
  flex: 0 0 auto;
  border: 1px solid rgba(204, 69, 84, 0.24);
  border-radius: 999px;
  padding: 7px 10px;
  color: var(--rd-red);
  background: var(--rd-red-soft);
  font-size: 0.72rem;
  font-weight: 800;
  white-space: nowrap;
}

#healthPanel .health-analytics-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  min-width: 0;
}

#healthPanel .health-analytics-card {
  display: grid;
  align-content: start;
  min-width: 0;
  border: 1px solid var(--rd-border);
  border-top: 3px solid var(--rd-red);
  border-radius: var(--rd-radius);
  padding: 15px;
  color: var(--rd-text);
  background: var(--rd-surface);
  box-shadow: 0 3px 13px rgba(20, 42, 67, 0.04);
}

#healthPanel .health-analytics-card.health-age-card {
  grid-column: 1 / -1;
}

#healthPanel .health-analytics-card .chart-card-head {
  align-items: start;
  margin-bottom: 14px;
}

#healthPanel .health-analytics-card .chart-card-head > div {
  min-width: 0;
}

#healthPanel .health-analytics-card .chart-card-head h4 {
  margin: 0 0 4px;
  color: var(--rd-text);
  font-size: 0.98rem;
  line-height: 1.25;
}

#healthPanel .health-analytics-card .chart-card-head span {
  color: var(--rd-muted);
  font-size: 0.75rem;
  line-height: 1.35;
}

#healthPanel .health-analytics-card .chart-card-head > svg {
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
  color: var(--rd-red);
}

#healthPanel .health-contact-visual {
  display: grid;
  grid-template-columns: minmax(128px, 0.8fr) minmax(0, 1fr);
  align-items: center;
  gap: 16px;
  min-width: 0;
}

#healthPanel .health-donut-wrap {
  display: grid;
  place-items: center;
}

#healthPanel .health-donut {
  display: grid;
  place-items: center;
  width: min(100%, 156px);
  aspect-ratio: 1;
  border-radius: 50%;
  background: conic-gradient(
    #cc4554 0deg var(--health-contact-end),
    #2874d6 var(--health-contact-end) var(--health-non-contact-end),
    #cbd6e0 var(--health-non-contact-end) 360deg
  );
}

#healthPanel .health-donut.is-empty {
  background: #dfe7ed;
}

#healthPanel .health-donut::after {
  content: "";
  grid-area: 1 / 1;
  width: 68%;
  aspect-ratio: 1;
  border-radius: 50%;
  background: var(--rd-surface);
}

#healthPanel .health-donut-center {
  z-index: 1;
  grid-area: 1 / 1;
  display: grid;
  justify-items: center;
  gap: 2px;
  text-align: center;
}

#healthPanel .health-donut-center strong {
  color: var(--rd-text);
  font-size: 1.45rem;
  line-height: 1;
}

#healthPanel .health-donut-center span {
  color: var(--rd-muted);
  font-size: 0.68rem;
  font-weight: 750;
}

#healthPanel .health-legend {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

#healthPanel .health-legend-item {
  display: grid;
  grid-template-columns: 10px minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 7px;
  min-width: 0;
  color: var(--rd-text);
  font-size: 0.77rem;
  font-weight: 750;
}

#healthPanel .health-legend-item strong {
  font-size: 0.86rem;
}

#healthPanel .health-legend-item small {
  min-width: 34px;
  color: var(--rd-muted);
  font-size: 0.7rem;
  text-align: right;
}

#healthPanel .health-legend-dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #cbd6e0;
}

#healthPanel .health-legend-item.is-contact .health-legend-dot {
  background: #cc4554;
}

#healthPanel .health-legend-item.is-non_contact .health-legend-dot {
  background: #2874d6;
}

#healthPanel .health-bar-list {
  display: grid;
  gap: 11px;
  max-height: 350px;
  overflow: auto;
  padding-right: 3px;
}

#healthPanel .health-bar-row {
  display: grid;
  gap: 5px;
  min-width: 0;
}

#healthPanel .health-bar-label {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: baseline;
  min-width: 0;
  color: var(--rd-text);
  font-size: 0.76rem;
  font-weight: 750;
}

#healthPanel .health-bar-label span {
  min-width: 0;
  overflow-wrap: anywhere;
}

#healthPanel .health-bar-label strong {
  color: var(--rd-red);
  font-size: 0.82rem;
}

#healthPanel .health-bar-track {
  height: 9px;
  overflow: hidden;
  border-radius: 999px;
  background: var(--rd-surface-alt);
}

#healthPanel .health-bar-track span {
  display: block;
  width: var(--health-bar-width);
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--rd-red), #e68b96);
}

#healthPanel .health-age-card .health-bar-track span {
  background: linear-gradient(90deg, var(--rd-green), #48ae88);
}

#healthPanel .health-analytics-card .chart-empty {
  margin: 0;
  color: var(--rd-muted);
}

.home-global-panel > .management-form,
.home-global-panel > .leadership-card,
.home-global-panel > .field-document-card,
.home-global-panel > .training-toolbar {
  min-width: 0;
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  color: var(--rd-text);
  background: #fff;
  box-shadow: 0 3px 13px rgba(20, 42, 67, 0.04);
}

.home-global-panel > .training-toolbar {
  padding: 14px;
}

/* Edzoi nevjegyzek */
#coachesPanel > .data-hero {
  order: 1;
}

#coachesPanel > .coach-directory-switch {
  order: 2;
  margin: 0;
}

#coachesPanel > #coachList {
  order: 3;
}

#coachesPanel > #playerEquipmentAddForm {
  order: 3;
}

#coachesPanel > #coachForm,
#coachesPanel > #playerEquipmentList {
  order: 4;
}

#coachesPanel .management-list {
  gap: 12px;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.coach-directory-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-width: 0;
  border-bottom: 1px solid var(--rd-border);
  padding: 0 0 11px;
}

.coach-directory-head > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.coach-directory-head span {
  color: var(--rd-green-dark) !important;
  font-size: 0.67rem;
  font-weight: 800;
  text-transform: uppercase;
}

.coach-directory-head strong {
  color: var(--rd-text) !important;
  font-size: 1.05rem;
  font-weight: 780;
}

.coach-directory-head b {
  flex: 0 0 auto;
  border: 1px solid #b9e2d3;
  border-radius: 999px;
  padding: 5px 9px;
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
  font-size: 0.72rem;
}

.coach-directory-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

#coachesPanel .coach-management-item {
  position: relative;
  min-height: 126px;
  border: 1px solid var(--rd-border);
  border-left: 4px solid var(--rd-green);
  border-radius: var(--rd-radius);
  padding: 15px;
  color: var(--rd-text);
  background: #fff;
  box-shadow: 0 3px 13px rgba(20, 42, 67, 0.04);
}

#coachesPanel .coach-management-item:hover {
  border-color: #aed7c8;
  border-left-color: var(--rd-green-dark);
  background: #fbfefd;
  box-shadow: 0 8px 20px rgba(20, 42, 67, 0.08);
}

.coach-full-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.coach-full-nav-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.coach-full-nav-actions button {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.coach-full-nav-actions svg {
  width: 16px;
  height: 16px;
}

.coach-contact-edit-dialog {
  width: min(680px, calc(100vw - 28px));
  max-width: calc(100vw - 28px);
  max-height: calc(100dvh - 28px);
  margin: auto;
  overflow: hidden;
}

.coach-contact-edit-card {
  max-height: calc(100dvh - 28px);
  overflow-x: hidden;
  overflow-y: auto;
}

#coachesPanel .coach-name-button,
#coachesPanel .coach-name-button strong,
.home-global-panel .coach-name-button strong,
.home-global-panel .management-item strong {
  color: var(--rd-text) !important;
}

#coachesPanel .coach-name-button strong {
  flex-wrap: wrap;
  font-size: 1rem;
  font-weight: 780;
  line-height: 1.25;
}

#coachesPanel .coach-name-button strong::after {
  content: "Adatlap";
  border-color: #b9d4ed;
  border-radius: 999px;
  color: #205da8;
  background: var(--rd-blue-soft);
  font-size: 0.62rem;
}

#coachesPanel .coach-name-button:hover strong,
#coachesPanel .coach-name-button:focus-visible strong {
  color: var(--rd-green-dark) !important;
}

#coachesPanel .coach-management-main > span,
#coachesPanel .coach-management-main > small,
.home-global-panel .management-item span,
.home-global-panel .management-item small {
  color: var(--rd-muted) !important;
}

#coachesPanel .coach-contact-list {
  gap: 7px;
  margin-top: 2px;
  padding-top: 5px;
}

#coachesPanel .coach-app-status {
  border: 1px solid var(--rd-border);
  border-radius: 999px;
  padding: 5px 8px;
  color: var(--rd-muted);
  background: var(--rd-surface-alt);
}

#coachesPanel .coach-app-status.is-active {
  border-color: #9fd8be;
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
}

#coachesPanel .coach-app-status.is-invited,
#leadershipPanel .technical-permission-person .coach-app-status.is-invited {
  border-color: #b8cfee;
  color: #245b95;
  background: #eff6ff;
}

#coachesPanel .coach-app-status.is-checking,
#leadershipPanel .technical-permission-person .coach-app-status.is-checking {
  border-color: #cbd5e1;
  color: #475569;
  background: #f8fafc;
}

#coachesPanel .coach-app-status.is-warning,
#leadershipPanel .technical-permission-person .coach-app-status.is-warning {
  border-color: #ecd080;
  color: #8b5b05;
  background: var(--rd-amber-soft);
}

#coachesPanel .coach-app-status.is-contact {
  border-color: #b9d4ed;
  color: #205da8;
  background: var(--rd-blue-soft);
}

#coachesPanel .coach-app-status.is-missing {
  border-color: #ecd080;
  color: #8b5b05;
  background: var(--rd-amber-soft);
}

#coachesPanel .coach-app-status-note {
  color: var(--rd-muted) !important;
}

#leadershipPanel .coach-app-status-note {
  color: var(--rd-muted);
}

#leadershipPanel .technical-permission-invite {
  border-color: var(--rd-green-dark);
  color: #ffffff;
  background: var(--rd-green-dark);
  box-shadow: 0 4px 12px rgba(9, 127, 87, 0.16);
}

#leadershipPanel .technical-permission-invite:hover,
#leadershipPanel .technical-permission-invite:focus-visible {
  border-color: #056444;
  background: #056444;
  box-shadow: 0 6px 16px rgba(9, 127, 87, 0.22);
}

#leadershipPanel .technical-permission-invite {
  align-self: end;
  min-width: 156px;
}

#leadershipPanel .technical-permission-invite:disabled {
  border-color: var(--rd-border-strong);
  color: var(--rd-muted);
  background: var(--rd-surface-alt);
  box-shadow: none;
}

@keyframes coach-app-status-spin {
  to { transform: rotate(360deg); }
}

#coachesPanel .coach-app-status.is-checking i,
#leadershipPanel .technical-permission-person .coach-app-status.is-checking i {
  animation: coach-app-status-spin 1s linear infinite;
}

#coachesPanel .coach-contact-list a,
#coachesPanel .coach-phone-link {
  color: #205da8 !important;
  font-weight: 700;
  text-decoration: none;
}

#coachesPanel .coach-contact-list a:hover,
#coachesPanel .coach-contact-list a:focus-visible {
  color: var(--rd-green-dark) !important;
  text-decoration: underline;
}

.coach-directory-empty {
  display: flex;
  align-items: center;
  gap: 12px;
  border: 1px dashed var(--rd-border-strong);
  border-radius: var(--rd-radius);
  padding: 18px;
  color: var(--rd-muted);
  background: var(--rd-surface-alt);
}

.coach-directory-empty > svg {
  flex: 0 0 auto;
  width: 24px;
  height: 24px;
  color: var(--rd-green);
}

.coach-directory-empty > div {
  display: grid;
  gap: 2px;
}

.coach-directory-empty strong {
  color: var(--rd-text) !important;
}

.coach-directory-empty span {
  color: var(--rd-muted) !important;
  font-size: 0.78rem;
}

#coachesPanel .coach-import-form {
  gap: 15px;
  border-left: 4px solid var(--rd-blue);
}

.coach-form-head {
  display: flex;
  align-items: center;
  gap: 11px;
  border-bottom: 1px solid var(--rd-border);
  padding-bottom: 13px;
}

.coach-form-head-icon {
  display: grid;
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  place-items: center;
  border-radius: var(--rd-radius);
  color: #205da8;
  background: var(--rd-blue-soft);
}

.coach-form-head-icon svg {
  width: 18px;
  height: 18px;
}

.coach-form-head > div {
  display: grid;
  gap: 2px;
}

.coach-form-head strong {
  color: var(--rd-text) !important;
  font-size: 0.94rem;
}

.coach-form-head small {
  color: var(--rd-muted) !important;
  font-size: 0.74rem;
}

/* Elnoki szerzodeskezeles */
#leadershipPanel .president-kpi-grid {
  gap: 10px;
}

#leadershipPanel .president-kpi-grid .leadership-kpi {
  min-height: 126px;
  border: 1px solid var(--rd-border);
  border-top: 4px solid var(--rd-green);
  border-radius: var(--rd-radius);
  padding: 15px;
  background: #fff;
  box-shadow: 0 3px 13px rgba(20, 42, 67, 0.04);
}

#leadershipPanel .president-kpi-grid .leadership-kpi:nth-child(2) {
  border-top-color: var(--rd-green);
  background: #f8fdfb;
}

#leadershipPanel .president-kpi-grid .leadership-kpi:nth-child(3) {
  border-top-color: var(--rd-amber);
  background: #fffdf8;
}

#leadershipPanel .president-kpi-grid .leadership-kpi:nth-child(4) {
  border-top-color: var(--rd-red);
  background: #fffafb;
}

#leadershipPanel .president-kpi-grid button.leadership-kpi {
  width: 100%;
  appearance: none;
  color: inherit;
  font: inherit;
  text-align: left;
}

#leadershipPanel .president-kpi-action {
  position: relative;
  cursor: pointer;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

#leadershipPanel .president-kpi-action:hover {
  border-color: #a9bdcc;
  box-shadow: 0 9px 22px rgba(20, 42, 67, 0.1);
  transform: translateY(-2px);
}

#leadershipPanel .president-kpi-action:focus-visible {
  outline: 3px solid rgba(22, 130, 93, 0.24);
  outline-offset: 2px;
}

#leadershipPanel .president-kpi-action.is-active {
  border-color: var(--rd-green);
  box-shadow: 0 0 0 3px rgba(22, 130, 93, 0.12), 0 9px 22px rgba(20, 42, 67, 0.09);
}

#leadershipPanel .president-kpi-action em {
  display: flex;
  gap: 6px;
  align-items: center;
  margin-top: 5px;
  color: var(--rd-green);
  font-size: 0.73rem;
  font-style: normal;
  font-weight: 900;
}

#leadershipPanel .president-kpi-action em::after {
  content: "\2192";
  font-size: 0.95rem;
  line-height: 1;
  transition: transform 160ms ease;
}

#leadershipPanel .president-kpi-action:hover em::after {
  transform: translateX(3px);
}

#leadershipPanel .contract-list-employer-switch {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

#leadershipPanel .contract-list-employer-switch button b,
#leadershipPanel .president-contract-season-tabs button b {
  color: #0f6f51;
  background: #e1f3ec;
}

#leadershipPanel .contract-list-employer-switch button.is-active b,
#leadershipPanel .president-contract-season-tabs button.is-active b {
  color: #fff;
  background: var(--rd-green);
}

#leadershipPanel .president-contract-filters {
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  padding: 13px;
  background: #f7fafc;
  box-shadow: none;
}

#leadershipPanel .president-contract-filters label {
  color: var(--rd-muted);
}

#leadershipPanel .president-contract-filters input,
#leadershipPanel .president-contract-filters select {
  border-color: #cbd7e1;
  color: var(--rd-text);
  background: #fff;
}

#leadershipPanel .president-contract-filters input:focus,
#leadershipPanel .president-contract-filters select:focus {
  border-color: var(--rd-green);
  outline: 3px solid rgba(22, 130, 93, 0.12);
}

#leadershipPanel .president-contract-filters .ghost-action {
  border-color: var(--rd-green);
  color: #fff;
  background: var(--rd-green);
}

#leadershipPanel .president-contract-filters .ghost-action:hover {
  border-color: #0f6f51;
  color: #fff;
  background: #0f6f51;
}

#leadershipPanel .president-contract-panel-switch {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 4px;
  margin: 0;
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  padding: 4px;
  background: #fff;
}

#leadershipPanel .president-contract-panel-switch button {
  min-height: 40px;
  border: 1px solid transparent;
  border-radius: 6px;
  color: var(--rd-muted);
  background: transparent;
  font-size: 0.78rem;
  font-weight: 740;
}

#leadershipPanel .president-contract-panel-switch button:hover {
  color: var(--rd-text);
  background: var(--rd-surface-alt);
}

#leadershipPanel .president-contract-panel-switch button.is-active {
  border-color: #b9e2d3;
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
}

#leadershipPanel .president-contract-card {
  display: grid;
  gap: 14px;
  min-width: 0;
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  padding: 18px;
  color: var(--rd-text);
  background: #fff;
  box-shadow: 0 3px 13px rgba(20, 42, 67, 0.04);
}

#leadershipPanel .president-contract-card > .section-heading {
  border-bottom: 1px solid var(--rd-border);
  padding-bottom: 13px;
}

#leadershipPanel .contract-type-select {
  gap: 6px;
  margin: 0;
}

#leadershipPanel .contract-type-select select {
  min-height: 42px;
  border-color: var(--rd-border);
  color: var(--rd-text);
  background: #fff;
}

#leadershipPanel .contract-employer-switch {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 4px;
  margin: 0;
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  padding: 4px;
  background: var(--rd-surface-alt);
}

#leadershipPanel .contract-employer-switch button {
  min-height: 38px;
  border: 1px solid transparent;
  border-radius: 6px;
  color: var(--rd-muted);
  background: transparent;
  font-size: 0.74rem;
}

#leadershipPanel .contract-employer-switch button.is-active {
  border-color: var(--rd-border-strong);
  color: var(--rd-text);
  background: #fff;
}

#leadershipPanel .president-contract-form {
  display: grid;
  gap: 10px;
}

.president-contract-form-guide {
  display: flex;
  align-items: center;
  gap: 11px;
  border: 1px solid #b9d4ed;
  border-left: 4px solid var(--rd-blue);
  border-radius: var(--rd-radius);
  padding: 12px 14px;
  color: var(--rd-text);
  background: var(--rd-blue-soft);
}

.president-contract-form-guide > svg {
  flex: 0 0 auto;
  width: 21px;
  height: 21px;
  color: #205da8;
}

.president-contract-form-guide > div {
  display: grid;
  gap: 2px;
}

.president-contract-form-guide strong {
  color: var(--rd-text);
  font-size: 0.84rem;
}

.president-contract-form-guide span {
  color: var(--rd-muted);
  font-size: 0.74rem;
  line-height: 1.4;
}

.president-contract-step {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  color: var(--rd-text);
  background: #fff;
}

.president-contract-step[open] {
  border-color: #b8d7ca;
  box-shadow: 0 5px 16px rgba(20, 42, 67, 0.06);
}

.president-contract-step > summary {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 20px;
  gap: 11px;
  align-items: center;
  min-height: 62px;
  padding: 10px 13px;
  color: var(--rd-text);
  background: var(--rd-surface-alt);
  cursor: pointer;
  list-style: none;
}

.president-contract-step > summary::-webkit-details-marker {
  display: none;
}

.president-contract-step[open] > summary {
  border-bottom: 1px solid var(--rd-border);
  background: var(--rd-green-soft);
}

.president-contract-step-index {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border-radius: var(--rd-radius);
  color: #fff;
  background: var(--rd-navy-900);
  font-size: 0.76rem;
  font-weight: 800;
}

.president-contract-step[open] .president-contract-step-index {
  background: var(--rd-green);
}

.president-contract-step-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.president-contract-step-copy strong {
  color: var(--rd-text);
  font-size: 0.88rem;
  font-weight: 780;
}

.president-contract-step-copy small {
  color: var(--rd-muted);
  font-size: 0.71rem;
  line-height: 1.35;
}

.president-contract-step > summary > svg {
  width: 18px;
  height: 18px;
  color: var(--rd-faint);
  transition: transform 160ms ease;
}

.president-contract-step[open] > summary > svg {
  color: var(--rd-green-dark);
  transform: rotate(180deg);
}

#leadershipPanel .president-contract-step .president-contract-fieldset {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  min-width: 0;
  margin: 0;
  border: 0;
  border-radius: 0;
  padding: 15px;
  background: #fff;
  box-shadow: none;
}

#leadershipPanel .president-contract-step .president-contract-fieldset > legend {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

#leadershipPanel .president-contract-step label {
  color: #45586c;
  font-size: 0.76rem;
  font-weight: 690;
}

#leadershipPanel .president-contract-step input,
#leadershipPanel .president-contract-step select,
#leadershipPanel .president-contract-step textarea {
  min-height: 40px;
  border-color: var(--rd-border);
  border-radius: var(--rd-radius);
  color: var(--rd-text);
  background: #fff;
}

#leadershipPanel .president-contract-step .contract-coach-preview,
#leadershipPanel .president-contract-step .contract-document-card {
  border-color: var(--rd-border);
  border-radius: var(--rd-radius);
  color: var(--rd-text);
  background: var(--rd-surface-alt);
}

.contract-ocr-intro {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  border: 1px solid #b9d4ed;
  border-left: 4px solid var(--rd-blue);
  border-radius: var(--rd-radius);
  padding: 13px 14px;
  background: var(--rd-blue-soft);
}

.contract-ocr-intro > svg {
  width: 24px;
  height: 24px;
  color: #205da8;
}

.contract-ocr-intro > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.contract-ocr-intro strong {
  color: var(--rd-text);
  font-size: 0.9rem;
}

.contract-ocr-intro div span {
  color: var(--rd-muted);
  font-size: 0.74rem;
  line-height: 1.4;
}

.contract-ocr-local-badge {
  display: inline-flex;
  gap: 6px;
  align-items: center;
  white-space: nowrap;
  color: var(--rd-green-dark);
  font-size: 0.7rem;
  font-weight: 780;
}

.contract-ocr-local-badge svg {
  width: 16px;
  height: 16px;
}

.contract-ocr-supported {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  align-items: center;
  border-bottom: 1px solid var(--rd-border);
  padding: 2px 2px 12px;
}

.contract-ocr-supported > span {
  display: inline-flex;
  gap: 6px;
  align-items: center;
  color: #45586c;
  font-size: 0.73rem;
  font-weight: 720;
}

.contract-ocr-supported svg {
  width: 16px;
  height: 16px;
  color: var(--rd-green-dark);
}

#leadershipPanel .president-contract-step .contract-document-upload {
  gap: 5px;
  border: 1px dashed #a8c8ba;
  border-radius: var(--rd-radius);
  padding: 12px;
  color: var(--rd-text);
  background: #f7fbf9;
}

#leadershipPanel .president-contract-step .contract-document-upload > span {
  color: var(--rd-text);
  font-size: 0.8rem;
  font-weight: 760;
}

#leadershipPanel .president-contract-step .contract-document-upload > small {
  color: var(--rd-muted);
  font-size: 0.71rem;
  font-weight: 570;
}

#leadershipPanel .president-contract-step .contract-document-upload input {
  margin-top: 4px;
  padding: 6px;
  background: #fff;
}

#leadershipPanel .president-contract-step .contract-document-card strong {
  color: var(--rd-text);
}

#leadershipPanel .president-contract-step .contract-document-card span,
#leadershipPanel .president-contract-step .contract-document-card small {
  color: var(--rd-muted);
}

.contract-ocr-actions {
  display: flex;
  gap: 12px;
  align-items: center;
}

#leadershipPanel .president-contract-step .contract-ocr-actions .ghost-action {
  flex: 0 0 auto;
  min-height: 40px;
  border-color: #a8c8ba;
  color: #fff;
  background: var(--rd-green);
}

#leadershipPanel .president-contract-step .contract-ocr-actions .ghost-action:disabled {
  border-color: var(--rd-border);
  color: var(--rd-faint);
  background: var(--rd-surface-alt);
}

.contract-ocr-actions > span {
  color: var(--rd-muted);
  font-size: 0.72rem;
  line-height: 1.4;
}

#leadershipPanel .president-contract-step .contract-ocr-status {
  border-left: 3px solid var(--rd-blue);
  padding: 9px 11px;
  color: #35506f;
  background: var(--rd-blue-soft);
  font-size: 0.72rem;
  line-height: 1.4;
  text-transform: none;
}

.contract-ocr-review {
  overflow: hidden;
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  background: #fff;
}

.contract-ocr-review-head {
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--rd-border);
  padding: 11px 12px;
  background: var(--rd-surface-alt);
}

.contract-ocr-review-head > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.contract-ocr-review-head strong {
  color: var(--rd-text);
  font-size: 0.82rem;
}

.contract-ocr-review-head span {
  color: var(--rd-muted);
  font-size: 0.7rem;
}

.contract-ocr-review-head > span {
  flex: 0 0 auto;
  color: var(--rd-green-dark);
  font-weight: 780;
}

.contract-ocr-review-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.contract-ocr-review-item {
  display: grid;
  grid-template-columns: minmax(110px, 0.75fr) minmax(0, 1.25fr);
  gap: 3px 12px;
  align-content: center;
  min-width: 0;
  border-bottom: 1px solid var(--rd-border);
  padding: 10px 12px;
}

.contract-ocr-review-item:nth-child(odd) {
  border-right: 1px solid var(--rd-border);
}

.contract-ocr-review-item > span {
  color: var(--rd-muted);
  font-size: 0.69rem;
  font-weight: 690;
}

.contract-ocr-review-item > strong {
  min-width: 0;
  color: var(--rd-text);
  font-size: 0.78rem;
  overflow-wrap: anywhere;
}

.contract-ocr-review-item > small {
  grid-column: 2;
  color: var(--rd-green-dark);
  font-size: 0.65rem;
  line-height: 1.3;
}

.contract-ocr-review-item.warning > small,
.contract-ocr-review-item.attention > small {
  color: #9a5c08;
}

.contract-ocr-review > p {
  display: flex;
  gap: 7px;
  align-items: center;
  margin: 0;
  padding: 10px 12px;
  color: var(--rd-muted);
  font-size: 0.69rem;
}

.contract-ocr-review > p svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  color: var(--rd-green);
}

.president-contract-savebar {
  display: grid;
  gap: 12px;
  border: 1px solid var(--rd-border);
  border-left: 4px solid var(--rd-green);
  border-radius: var(--rd-radius);
  padding: 14px;
  background: var(--rd-surface-alt);
}

.president-contract-savebar > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.president-contract-savebar > div > span {
  color: var(--rd-muted);
  font-size: 0.74rem;
}

#leadershipPanel .president-contract-savebar .primary-action {
  grid-column: auto;
  flex: 0 0 auto;
  min-width: 190px;
}

#leadershipPanel .president-contract-browser,
#leadershipPanel .contract-renewal-box {
  border-color: var(--rd-border);
  border-radius: var(--rd-radius);
  color: var(--rd-text);
  background: #fff;
  box-shadow: none;
}

#leadershipPanel .president-contract-list-head {
  border-color: var(--rd-border);
  border-left: 4px solid var(--rd-green);
  border-radius: var(--rd-radius);
  color: var(--rd-text);
  background: var(--rd-surface-alt);
}

#leadershipPanel .president-contract-list-head strong {
  color: var(--rd-text);
}

#leadershipPanel .president-contract-list-head span {
  color: var(--rd-muted);
}

/* Vilagos edzoi tomeges felvetel */
#coachesPanel [data-coach-panel="bulk"] {
  display: grid;
  gap: 10px;
}

#coachesPanel [data-coach-panel="bulk"][hidden] {
  display: none;
}

#coachesPanel .technical-bulk-toolbar {
  margin: 0;
}

#coachesPanel .technical-bulk-toolbar span {
  color: var(--rd-muted);
}

#coachesPanel .coach-bulk-table-wrap {
  border: 1px solid var(--rd-border-strong);
  border-radius: var(--rd-radius);
  color: var(--rd-text);
  background: #fff;
  box-shadow: 0 5px 16px rgba(20, 42, 67, 0.05);
}

#coachesPanel .coach-bulk-entry-table {
  color: var(--rd-text);
  background: #fff;
}

#coachesPanel .coach-bulk-entry-table th,
#coachesPanel .coach-bulk-entry-table td {
  border-color: var(--rd-border);
}

#coachesPanel .coach-bulk-entry-table th {
  color: var(--rd-navy-800);
  background: #eaf0f5;
  box-shadow: inset 0 -1px 0 var(--rd-border-strong);
}

#coachesPanel .coach-bulk-entry-table td {
  background: #fff;
}

#coachesPanel .coach-bulk-entry-table tbody tr:nth-child(even) td {
  background: var(--rd-surface-alt);
}

#coachesPanel .coach-bulk-entry-table input {
  border: 1px solid #cbd7e1;
  color: var(--rd-text);
  background: #fff;
  box-shadow: none;
}

#coachesPanel .coach-bulk-entry-table input::placeholder {
  color: #788899;
}

#coachesPanel .coach-bulk-entry-table input:focus {
  border-color: var(--rd-green);
  outline: 3px solid rgba(8, 122, 85, 0.12);
}

/* Vilagos technikai vezeto teljes kepernyos tabla */
#leadershipPanel .technical-table-overlay {
  color: var(--rd-text);
  background: rgba(242, 245, 248, 0.98);
}

#leadershipPanel .technical-table-overlay-head {
  border: 1px solid var(--rd-border-strong);
  color: var(--rd-text);
  background: #fff;
  box-shadow: var(--rd-shadow);
}

#leadershipPanel .technical-table-overlay-head h3 {
  color: var(--rd-text);
}

#leadershipPanel .technical-table-overlay-head .eyebrow {
  color: var(--rd-green-dark);
}

#leadershipPanel .technical-overlay-actions > span,
#leadershipPanel .technical-name-search {
  border-color: var(--rd-border);
  color: var(--rd-muted);
  background: var(--rd-surface-alt);
}

#leadershipPanel .technical-name-search input {
  border-color: var(--rd-border-strong);
  color: var(--rd-text);
  background: #fff;
}

#leadershipPanel .technical-name-search input::placeholder {
  color: #788899;
}

#leadershipPanel .technical-name-search input:focus {
  border-color: var(--rd-green);
  box-shadow: 0 0 0 3px rgba(8, 122, 85, 0.12);
}

#leadershipPanel .technical-name-search small {
  color: var(--rd-green-dark);
}

#leadershipPanel .technical-mini-button {
  border-color: var(--rd-border-strong);
  color: var(--rd-navy-800);
  background: #fff;
}

#leadershipPanel .technical-mini-button:hover,
#leadershipPanel .technical-mini-button:focus-visible {
  border-color: #9acbb9;
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
}

#leadershipPanel .technical-danger-mini {
  border-color: #efbec4;
  color: #a52f3d;
  background: var(--rd-red-soft);
}

#leadershipPanel .technical-danger-mini:hover,
#leadershipPanel .technical-danger-mini:focus-visible {
  border-color: var(--rd-red);
  color: #fff;
  background: var(--rd-red);
}

#leadershipPanel .technical-save-main {
  border-color: var(--rd-green);
  color: #fff;
  background: var(--rd-green);
  box-shadow: none;
}

#leadershipPanel .technical-save-main:hover,
#leadershipPanel .technical-save-main:focus-visible {
  border-color: var(--rd-green-dark);
  color: #fff;
  background: var(--rd-green-dark);
}

#leadershipPanel .technical-overlay-actions .technical-table-close-button {
  border-color: var(--rd-navy-800);
  color: #fff;
  background: var(--rd-navy-800);
}

#leadershipPanel .technical-overlay-actions .technical-table-close-button:hover,
#leadershipPanel .technical-overlay-actions .technical-table-close-button:focus-visible {
  border-color: var(--rd-navy-950);
  color: #fff;
  background: var(--rd-navy-950);
}

#leadershipPanel .technical-leadership-card.is-fullscreen {
  border-color: var(--rd-border-strong);
  color: var(--rd-text);
  background: #fff;
  box-shadow: var(--rd-shadow);
}

#leadershipPanel .technical-leadership-card .team-measurement-table-head {
  border-color: var(--rd-border-strong);
  color: var(--rd-text);
  background: #eaf0f5;
}

#leadershipPanel .technical-leadership-card .team-measurement-table-head strong {
  color: var(--rd-navy-800);
}

#leadershipPanel .technical-leadership-card .team-measurement-table-head span {
  color: var(--rd-muted);
}

#leadershipPanel .technical-leadership-card .excel-table-wrap {
  border-color: var(--rd-border-strong);
  background: #fff;
  scrollbar-color: #a9b8c5 #eef2f5;
}

#leadershipPanel .technical-leadership-card .excel-table th,
#leadershipPanel .technical-leadership-card .excel-table td {
  border-color: var(--rd-border);
  color: var(--rd-text);
  background: #fff;
}

#leadershipPanel .technical-leadership-card .excel-table thead th {
  color: var(--rd-navy-800);
  background: #eaf0f5;
  box-shadow: inset 0 -1px 0 var(--rd-border-strong);
}

#leadershipPanel .technical-leadership-card .excel-table tbody th {
  color: var(--rd-text);
  background: #fff;
}

#leadershipPanel .technical-leadership-card .excel-table tbody tr:nth-child(even) td,
#leadershipPanel .technical-leadership-card .excel-table tbody tr:nth-child(even) th {
  background: var(--rd-surface-alt);
}

#leadershipPanel .technical-leadership-card.is-fullscreen .technical-table th:first-child,
#leadershipPanel .technical-leadership-card.is-fullscreen .technical-table td:first-child {
  background: #eef3f7;
}

#leadershipPanel .technical-leadership-card.is-fullscreen .technical-table th:nth-child(2),
#leadershipPanel .technical-leadership-card.is-fullscreen .technical-table td:nth-child(2) {
  background: #fff;
  box-shadow: 8px 0 14px rgba(20, 42, 67, 0.08);
}

#leadershipPanel .technical-leadership-card.is-fullscreen .technical-table tbody tr:nth-child(even) td:first-child,
#leadershipPanel .technical-leadership-card.is-fullscreen .technical-table tbody tr:nth-child(even) th:nth-child(2) {
  background: var(--rd-surface-alt);
}

#leadershipPanel .technical-leadership-card.is-fullscreen .technical-table thead th:first-child,
#leadershipPanel .technical-leadership-card.is-fullscreen .technical-table thead th:nth-child(2) {
  background: #eaf0f5;
}

#leadershipPanel .technical-leadership-card .technical-table tbody tr.bad td,
#leadershipPanel .technical-leadership-card .technical-table tbody tr.bad th {
  border-color: #f0c8ce;
  background: #fff7f8;
}

#leadershipPanel .technical-leadership-card .technical-table tbody tr.warn td,
#leadershipPanel .technical-leadership-card .technical-table tbody tr.warn th {
  border-color: #ecd9a7;
  background: #fffaf0;
}

#leadershipPanel .technical-leadership-card .technical-table tbody tr.is-selected td,
#leadershipPanel .technical-leadership-card .technical-table tbody tr.is-selected th {
  box-shadow: inset 0 0 0 999px rgba(8, 122, 85, 0.08);
}

#leadershipPanel .technical-filter-head > span {
  color: var(--rd-navy-800);
}

#leadershipPanel .technical-column-filter,
#leadershipPanel .technical-edit-control,
#leadershipPanel .technical-edit-control.required {
  border-color: #cbd7e1;
  color: var(--rd-text);
  background: #fff;
}

#leadershipPanel .technical-column-filter:focus,
#leadershipPanel .technical-edit-control:focus {
  border-color: var(--rd-green);
  box-shadow: 0 0 0 3px rgba(8, 122, 85, 0.12);
}

#leadershipPanel .technical-edit-control::placeholder {
  color: #788899;
}

#leadershipPanel .technical-sort-button {
  border-color: #cbd7e1;
  color: var(--rd-navy-800);
  background: #fff;
}

#leadershipPanel .technical-sort-button b {
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
}

#leadershipPanel .technical-sort-button:hover,
#leadershipPanel .technical-sort-button:focus-visible,
#leadershipPanel .technical-sort-button.is-active {
  border-color: var(--rd-green);
  color: #fff;
  background: var(--rd-green);
}

#leadershipPanel .technical-sort-button.is-active b {
  color: var(--rd-green-dark);
  background: #fff;
}

#leadershipPanel .technical-copy-button {
  border-color: #9acbb9;
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
}

#leadershipPanel .technical-copy-button:hover,
#leadershipPanel .technical-copy-button:focus-visible {
  border-color: var(--rd-green);
  color: #fff;
  background: var(--rd-green);
}

#leadershipPanel .technical-player-link {
  color: var(--rd-navy-800);
}

/* Suritett technikai adatbazis: tobb sor es oszlop marad egyszerre lathato */
#leadershipPanel .technical-table-overlay {
  padding: 8px;
}

#leadershipPanel .technical-table-fullscreen {
  gap: 6px;
}

#leadershipPanel .technical-table-overlay-head {
  grid-template-columns: minmax(180px, auto) minmax(0, 1fr);
  gap: 8px;
  min-height: 52px;
  padding: 6px 8px;
}

#leadershipPanel .technical-table-overlay-head h3 {
  margin: 0;
  font-size: 1rem;
  line-height: 1.15;
}

#leadershipPanel .technical-table-overlay-head .eyebrow {
  margin-bottom: 2px;
  font-size: 0.63rem;
  line-height: 1.1;
}

#leadershipPanel .technical-overlay-actions {
  flex-wrap: nowrap;
  gap: 5px;
  min-width: 0;
}

#leadershipPanel .technical-overlay-actions > span {
  min-height: 32px;
  padding: 5px 7px;
  font-size: 0.72rem;
}

#leadershipPanel .technical-name-search {
  grid-template-columns: 16px minmax(110px, 185px) auto;
  gap: 5px;
  min-height: 32px;
  padding: 3px 5px;
}

#leadershipPanel .technical-name-search > svg {
  width: 15px;
  height: 15px;
  color: var(--rd-muted);
}

#leadershipPanel .technical-search-label {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

#leadershipPanel .technical-name-search input {
  height: 26px;
  padding: 4px 7px;
  font-size: 0.75rem;
}

#leadershipPanel .technical-name-search small {
  font-size: 0.68rem;
}

#leadershipPanel .technical-mini-button,
#leadershipPanel .technical-danger-mini,
#leadershipPanel .technical-save-main,
#leadershipPanel .technical-overlay-actions .technical-table-close-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  min-width: 32px;
  min-height: 32px;
  padding: 5px 7px;
  font-size: 0.74rem;
}

#leadershipPanel .technical-mini-button > svg,
#leadershipPanel .technical-danger-mini > svg,
#leadershipPanel .technical-save-main > svg,
#leadershipPanel .technical-table-close-button > svg {
  width: 15px;
  height: 15px;
  flex: 0 0 auto;
}

#leadershipPanel .technical-mini-button .technical-action-label,
#leadershipPanel .technical-danger-mini .technical-action-label {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

#leadershipPanel .technical-save-main {
  min-width: auto;
}

#leadershipPanel .technical-leadership-card .team-measurement-table-head {
  min-height: 31px;
  padding: 4px 7px;
  font-size: 0.73rem;
}

#leadershipPanel .technical-leadership-card.is-fullscreen .excel-table {
  min-width: 1260px;
  font-size: 0.71rem;
  line-height: 1.12;
}

#leadershipPanel .technical-leadership-card .excel-table th,
#leadershipPanel .technical-leadership-card .excel-table td {
  padding: 4px 5px;
}

#leadershipPanel .technical-table th,
#leadershipPanel .technical-table td {
  min-width: 90px;
}

#leadershipPanel .technical-select-head,
#leadershipPanel .technical-select-cell,
#leadershipPanel .technical-table th:first-child,
#leadershipPanel .technical-table td:first-child {
  width: 44px;
  min-width: 44px !important;
  max-width: 44px;
}

#leadershipPanel .technical-table th:nth-child(2),
#leadershipPanel .technical-table td:nth-child(2) {
  min-width: 140px;
  width: 140px;
}

#leadershipPanel .technical-table th:nth-child(3),
#leadershipPanel .technical-table td:nth-child(3) {
  min-width: 94px;
  width: 94px;
}

#leadershipPanel .technical-table th:nth-child(4),
#leadershipPanel .technical-table td:nth-child(4) {
  min-width: 76px;
  width: 76px;
}

#leadershipPanel .technical-table th:nth-child(5),
#leadershipPanel .technical-table td:nth-child(5),
#leadershipPanel .technical-table th:nth-child(6),
#leadershipPanel .technical-table td:nth-child(6) {
  min-width: 88px;
  width: 88px;
}

#leadershipPanel .technical-table th:nth-child(7),
#leadershipPanel .technical-table td:nth-child(7) {
  min-width: 100px;
  width: 100px;
}

#leadershipPanel .technical-table th:nth-child(8),
#leadershipPanel .technical-table td:nth-child(8),
#leadershipPanel .technical-table th:nth-child(10),
#leadershipPanel .technical-table td:nth-child(10) {
  min-width: 98px;
  width: 98px;
}

#leadershipPanel .technical-table th:nth-child(9),
#leadershipPanel .technical-table td:nth-child(9) {
  min-width: 112px;
  width: 112px;
}

#leadershipPanel .technical-table th:nth-child(11),
#leadershipPanel .technical-table td:nth-child(11),
#leadershipPanel .technical-table th:nth-child(12),
#leadershipPanel .technical-table td:nth-child(12) {
  min-width: 146px;
  width: 146px;
}

#leadershipPanel .technical-leadership-card.is-fullscreen .technical-table th:nth-child(2),
#leadershipPanel .technical-leadership-card.is-fullscreen .technical-table td:nth-child(2) {
  left: 48px;
}

#leadershipPanel .technical-select-cell input {
  width: 15px;
  height: 15px;
}

#leadershipPanel .technical-edit-control,
#leadershipPanel .technical-edit-control.required,
#leadershipPanel .technical-column-filter,
#leadershipPanel .technical-sort-button {
  min-height: 30px;
  border-radius: 5px;
  padding: 3px 5px;
  font-size: 0.71rem;
  line-height: 1.1;
}

#leadershipPanel .technical-sort-button b {
  width: 19px;
  height: 19px;
  font-size: 0.7rem;
}

#leadershipPanel .technical-filter-head {
  gap: 3px;
}

#leadershipPanel .technical-date-tools {
  grid-template-columns: minmax(100px, 1fr) 30px;
  gap: 4px;
}

#leadershipPanel .technical-copy-button {
  min-width: 30px;
  min-height: 30px;
  padding: 4px;
}

#leadershipPanel .technical-copy-button > svg {
  width: 14px;
  height: 14px;
}

#leadershipPanel .technical-copy-button > span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

#leadershipPanel .technical-field-status {
  margin-top: 2px;
}

#leadershipPanel .technical-field-status .validity-pill {
  min-height: 17px;
  padding: 2px 4px;
  font-size: 0.56rem;
  line-height: 1.05;
}

/* Vilagos fejlodesjelzes a motorikus referenciaosztalyzatok mellett */
.home-team-players .motoric-ranking-metric-trend.good {
  color: #087a55;
  background: #e1f4eb;
}

.home-team-players .motoric-ranking-metric-trend.bad {
  color: #b83242;
  background: #fdebed;
}

.home-team-players .motoric-ranking-metric-trend.neutral {
  color: #596b7b;
  background: #edf1f4;
}

/* Tomor, gorgetes kozben is azonosithato motorikus rangsor */
.home-team-players .motoric-ranking-table {
  --motoric-rank-width: 76px;
  --motoric-change-width: 96px;
  --motoric-player-width: 168px;
  width: var(--motoric-ranking-width);
  min-width: var(--motoric-ranking-width);
  table-layout: fixed;
}

.motoric-ranking-table col.motoric-ranking-rank-column {
  width: var(--motoric-rank-width);
}

.motoric-ranking-table col.motoric-ranking-change-column {
  width: var(--motoric-change-width);
}

.motoric-ranking-table col.motoric-ranking-player-column {
  width: var(--motoric-player-width);
}

.motoric-ranking-table col.motoric-ranking-average-column {
  width: 112px;
}

.motoric-ranking-table col.motoric-ranking-total-column {
  width: 104px;
}

.motoric-ranking-table col.motoric-ranking-count-column {
  width: 88px;
}

.motoric-ranking-table col.motoric-ranking-metric-column {
  width: 96px;
}

.home-team-players .motoric-ranking-table th,
.home-team-players .motoric-ranking-table td {
  min-width: 0;
  max-width: none;
  padding: 8px;
  vertical-align: middle;
}

.home-team-players .motoric-ranking-table thead th {
  font-size: 0.68rem;
  line-height: 1.25;
}

.motoric-ranking-sticky-rank,
.motoric-ranking-sticky-change,
.motoric-ranking-sticky-player {
  position: sticky;
}

.motoric-ranking-sticky-rank {
  left: 0;
}

.motoric-ranking-sticky-change {
  left: var(--motoric-rank-width);
}

.motoric-ranking-sticky-player {
  left: calc(var(--motoric-rank-width) + var(--motoric-change-width));
  box-shadow: 8px 0 12px -12px rgba(6, 34, 57, 0.7);
}

.home-team-players .motoric-ranking-table thead .motoric-ranking-sticky-rank,
.home-team-players .motoric-ranking-table thead .motoric-ranking-sticky-change,
.home-team-players .motoric-ranking-table thead .motoric-ranking-sticky-player {
  z-index: 8;
  background: #eaf5ee;
}

.home-team-players .motoric-ranking-table tbody .motoric-ranking-sticky-rank,
.home-team-players .motoric-ranking-table tbody .motoric-ranking-sticky-change,
.home-team-players .motoric-ranking-table tbody .motoric-ranking-sticky-player {
  z-index: 4;
  background: #fff;
}

.home-team-players .motoric-ranking-table tbody tr:nth-child(even) .motoric-ranking-sticky-rank,
.home-team-players .motoric-ranking-table tbody tr:nth-child(even) .motoric-ranking-sticky-change,
.home-team-players .motoric-ranking-table tbody tr:nth-child(even) .motoric-ranking-sticky-player {
  background: var(--rd-surface-alt);
}

.home-team-players .motoric-ranking-table tbody tr:hover .motoric-ranking-sticky-rank,
.home-team-players .motoric-ranking-table tbody tr:hover .motoric-ranking-sticky-change,
.home-team-players .motoric-ranking-table tbody tr:hover .motoric-ranking-sticky-player {
  background: #eef9f5;
}

.home-team-players .motoric-ranking-table .team-data-player-link {
  display: block;
  overflow: hidden;
  color: var(--rd-navy-950);
  font-size: 0.78rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.home-team-players .motoric-ranking-table .motoric-rank-change {
  max-width: 100%;
  min-height: 26px;
  padding: 3px 6px;
  font-size: 0.7rem;
}

.home-team-players .motoric-ranking-table .motoric-rank-place strong {
  color: var(--rd-navy-950);
  font-size: 0.95rem;
}

.home-team-players .motoric-ranking-table .motoric-ranking-total {
  color: var(--rd-navy-950);
  font-size: 0.78rem;
}

.home-team-players .motoric-ranking-table .motoric-ranking-score small {
  font-size: 0.66rem;
}

@media (max-width: 760px) {
  .home-team-players .motoric-ranking-table {
    --motoric-rank-width: 56px;
    --motoric-change-width: 82px;
    --motoric-player-width: 136px;
    width: var(--motoric-ranking-mobile-width);
    min-width: var(--motoric-ranking-mobile-width);
  }

  .motoric-ranking-table col.motoric-ranking-average-column {
    width: 104px;
  }

  .motoric-ranking-table col.motoric-ranking-total-column {
    width: 94px;
  }

  .motoric-ranking-table col.motoric-ranking-count-column {
    width: 80px;
  }

  .motoric-ranking-table col.motoric-ranking-metric-column {
    width: 88px;
  }

  .home-team-players .motoric-ranking-table th,
  .home-team-players .motoric-ranking-table td {
    padding: 7px 6px;
  }

  .home-team-players .motoric-ranking-table thead th {
    font-size: 0.61rem;
  }

  .home-team-players .motoric-ranking-table .team-data-player-link {
    font-size: 0.72rem;
  }
}

/* Üzenetek: több címzett és csatolmány */
.message-recipient-picker {
  border: 0;
  margin: 0;
  min-width: 0;
  padding: 0;
}

.message-recipient-picker legend {
  color: #40566b;
  font-size: 0.82rem;
  font-weight: 800;
  margin-bottom: 8px;
}

.message-recipient-picker legend small {
  color: #74889a;
  font-weight: 600;
  margin-left: 7px;
}

.message-recipient-scopes {
  display: inline-grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 4px;
  margin-bottom: 9px;
  padding: 4px;
  border: 1px solid #d6e2e9;
  border-radius: 7px;
  background: #f2f7f9;
}

.message-recipient-scopes button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 36px;
  border: 1px solid transparent;
  border-radius: 5px;
  padding: 7px 12px;
  color: #526a7d;
  background: transparent;
  font-size: 0.73rem;
  font-weight: 800;
}

.message-recipient-scopes button:hover {
  color: #075e43;
  background: #e8f5ef;
}

.message-recipient-scopes button[aria-pressed="true"] {
  border-color: #83cbb0;
  color: #075e43;
  background: #fff;
  box-shadow: 0 4px 12px rgba(20, 83, 61, 0.09);
}

.message-recipient-scopes svg {
  width: 16px;
  height: 16px;
}

.message-recipient-groups {
  background: #f7fafc;
  border: 1px solid #d5e1ea;
  border-radius: 7px;
  max-height: 270px;
  overflow: auto;
  padding: 10px;
}

.message-recipient-groups section + section {
  border-top: 1px solid #dce6ed;
  margin-top: 10px;
  padding-top: 10px;
}

.message-recipient-groups section > strong {
  color: #4a6074;
  display: block;
  font-size: 0.72rem;
  letter-spacing: 0.04em;
  margin-bottom: 7px;
  text-transform: uppercase;
}

.message-recipient-groups section > div {
  display: grid;
  gap: 7px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.message-recipient-groups label {
  align-items: center;
  background: #fff;
  border: 1px solid #dbe5ec;
  border-radius: 6px;
  cursor: pointer;
  display: flex;
  gap: 9px;
  min-width: 0;
  padding: 8px;
}

.message-recipient-groups label:has(input:checked) {
  background: #e7f6ef;
  border-color: #7bc9aa;
}

.message-compose-form .message-recipient-picker .message-recipient-groups input[type="checkbox"] {
  appearance: auto;
  accent-color: #087d59;
  flex: 0 0 auto;
  height: 18px;
  margin: 0;
  min-height: 0;
  padding: 0;
  width: 18px;
}

.message-recipient-groups label > span {
  display: grid;
  min-width: 0;
}

.message-recipient-groups label b,
.message-recipient-groups label small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.message-recipient-groups label b {
  color: #173149;
  font-size: 0.82rem;
}

.message-recipient-groups label small {
  color: #6c8295;
  font-size: 0.7rem;
}

.message-recipient-picker output {
  color: #08704f;
  display: block;
  font-size: 0.76rem;
  font-weight: 800;
  margin-top: 7px;
}

.message-recipient-control {
  position: relative;
  display: grid;
  gap: 8px;
  min-width: 0;
  border: 1px solid #b9cbd8;
  border-radius: 7px;
  padding: 10px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(29, 59, 78, 0.06);
}

.message-recipient-selected {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  min-width: 0;
}

.message-recipient-placeholder {
  color: #7a8da0;
  font-size: 0.76rem;
  font-weight: 650;
  padding: 3px 1px;
}

.message-recipient-chip {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  max-width: 100%;
  border: 1px solid #9ed8c0;
  border-radius: 999px;
  padding: 5px 6px 5px 10px;
  color: #075e43;
  background: #e9f8f1;
}

.message-recipient-chip > span {
  display: grid;
  min-width: 0;
  line-height: 1.18;
}

.message-recipient-chip strong,
.message-recipient-chip small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.message-recipient-chip strong {
  font-size: 0.76rem;
}

.message-recipient-chip small {
  color: #55786a;
  font-size: 0.63rem;
}

.message-recipient-chip button {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  border: 0;
  border-radius: 50%;
  padding: 0;
  color: #276d56;
  background: rgba(255, 255, 255, 0.75);
}

.message-recipient-chip button:hover {
  color: #fff;
  background: #087d59;
}

.message-recipient-chip svg {
  width: 14px;
  height: 14px;
}

.message-compose-form .message-recipient-search {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0;
  min-width: 0;
  color: inherit;
}

.message-compose-form .message-recipient-search > svg {
  position: absolute;
  left: 11px;
  z-index: 1;
  width: 18px;
  height: 18px;
  color: #557084;
  pointer-events: none;
}

.message-compose-form .message-recipient-search input {
  min-height: 42px;
  padding: 9px 12px 9px 38px;
  border-color: #d4e0e8;
  background: #f8fbfc;
}

.message-compose-form .message-recipient-search input:focus {
  outline: 3px solid rgba(8, 125, 89, 0.13);
  border-color: #58b391;
  background: #fff;
}

.message-recipient-suggestions {
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  left: 0;
  z-index: 30;
  display: grid;
  max-height: 310px;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  touch-action: pan-y;
  border: 1px solid #b9cbd8;
  border-radius: 7px;
  padding: 6px;
  background: #fff;
  box-shadow: 0 18px 42px rgba(22, 50, 70, 0.18);
}

.message-recipient-suggestions[hidden] {
  display: none;
}

.message-recipient-suggestions button {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 18px;
  gap: 9px;
  align-items: center;
  width: 100%;
  min-width: 0;
  border: 0;
  border-radius: 6px;
  padding: 8px;
  color: #173149;
  background: transparent;
  text-align: left;
}

.message-recipient-suggestions button:hover,
.message-recipient-suggestions button:focus-visible {
  outline: 0;
  background: #eaf7f1;
}

.message-recipient-suggestions button > span:nth-child(2) {
  display: grid;
  min-width: 0;
}

.message-recipient-suggestions strong,
.message-recipient-suggestions small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.message-recipient-suggestions strong {
  font-size: 0.79rem;
}

.message-recipient-suggestions small {
  color: #6b8092;
  font-size: 0.67rem;
}

.message-recipient-suggestions button > svg {
  width: 16px;
  height: 16px;
  color: #087d59;
}

.message-recipient-suggestion-icon {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  color: #08704f;
  background: #dff3ea;
}

.message-recipient-suggestion-icon svg {
  width: 17px;
  height: 17px;
}

.message-recipient-no-result {
  margin: 0;
  padding: 14px 12px;
  color: #6a7f91;
  font-size: 0.76rem;
  text-align: center;
}

.message-recipient-status {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: baseline;
}

.message-recipient-status small {
  color: #73889a;
  font-size: 0.67rem;
  text-align: right;
}

.message-personal-groups {
  display: grid;
  gap: 10px;
  margin-top: 14px;
  border-top: 1px solid #dce6ed;
  padding-top: 14px;
}

.message-personal-groups > header {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

.message-personal-groups > header > div {
  display: grid;
  gap: 2px;
}

.message-personal-groups > header strong {
  color: #173149;
  font-size: 0.8rem;
}

.message-personal-group-heading {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
}

.message-personal-group-heading b {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  border: 1px solid #a7d8c4;
  border-radius: 999px;
  padding: 3px 7px;
  color: #08704f;
  background: #e8f7f0;
  font-size: 0.6rem;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.message-personal-group-heading svg {
  width: 12px;
  height: 12px;
}

.message-personal-groups > header small,
.message-personal-group-empty {
  color: #708597;
  font-size: 0.68rem;
}

.message-personal-group-list {
  display: grid;
  gap: 7px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.message-personal-group-list article {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 38px;
  min-width: 0;
  overflow: hidden;
  border: 1px solid #d5e2e9;
  border-radius: 7px;
  background: #f8fbfc;
}

.message-personal-group-list article > button:first-child {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  min-width: 0;
  border: 0;
  padding: 8px 9px;
  color: #173149;
  background: transparent;
  text-align: left;
}

.message-personal-group-list article > button:first-child:hover {
  background: #eaf7f1;
}

.message-personal-group-list article > button:first-child > svg {
  width: 19px;
  height: 19px;
  color: #087d59;
}

.message-personal-group-list article > button:first-child > span {
  display: grid;
  min-width: 0;
}

.message-personal-group-list strong,
.message-personal-group-list small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.message-personal-group-list strong {
  font-size: 0.75rem;
}

.message-personal-group-list small {
  color: #6d8294;
  font-size: 0.64rem;
}

.message-personal-group-list article > button:last-child {
  display: grid;
  place-items: center;
  border: 0;
  border-left: 1px solid #d5e2e9;
  padding: 0;
  color: #9b3d45;
  background: #fff8f8;
}

.message-personal-group-list article > button:last-child:hover {
  color: #fff;
  background: #b8303b;
}

.message-personal-group-list article > button:last-child svg {
  width: 17px;
  height: 17px;
}

.message-personal-group-empty {
  margin: 0;
}

.message-group-create-shell {
  display: grid;
  gap: 9px;
  border: 1px solid #d5e2e9;
  border-radius: 7px;
  padding: 11px;
  background: #f8fbfc;
}

.message-group-create-shell > div {
  display: grid;
  gap: 2px;
}

.message-group-create-shell > div strong {
  color: #173149;
  font-size: 0.76rem;
}

.message-group-create-shell > div small {
  color: #708597;
  font-size: 0.66rem;
}

.message-group-create {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: end;
}

.message-group-create label {
  min-width: 0;
}

.message-group-name-help {
  color: #708597;
  font-size: 0.64rem;
  font-weight: 650;
  line-height: 1.35;
}

.message-group-create .ghost-action {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 42px;
  white-space: nowrap;
}

.message-group-create .ghost-action svg {
  width: 17px;
  height: 17px;
}

.message-file-field {
  background: #f7fafc;
  border: 1px dashed #b8cad8;
  border-radius: 7px;
  cursor: pointer;
  padding: 11px 12px;
}

.message-file-field > span {
  align-items: center;
  color: #1e506d;
  display: flex;
  font-weight: 800;
  gap: 7px;
}

.message-file-field > span svg {
  height: 18px;
  width: 18px;
}

.message-file-field input {
  font-size: 0.78rem;
  min-height: 38px;
  padding: 7px;
}

.message-file-field small {
  color: #6d8294;
  font-weight: 600;
}

.message-attachment-card {
  align-items: center;
  background: rgba(255, 255, 255, 0.74);
  border: 1px solid rgba(20, 75, 97, 0.16);
  border-radius: 7px;
  color: #173149;
  display: flex;
  gap: 10px;
  margin-top: 8px;
  max-width: 360px;
  padding: 8px;
  text-decoration: none;
}

.message-attachment-card:hover {
  border-color: #09835d;
}

.message-attachment-card > img,
.message-attachment-card > span:first-child {
  align-items: center;
  background: #e1f2eb;
  border-radius: 5px;
  display: flex;
  flex: 0 0 46px;
  height: 46px;
  justify-content: center;
  object-fit: cover;
  width: 46px;
}

.message-attachment-card svg {
  color: #087451;
  height: 22px;
  width: 22px;
}

.message-attachment-card > span:last-child {
  display: grid;
  min-width: 0;
}

.message-attachment-card strong,
.message-attachment-card small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.message-attachment-card small {
  color: #60788c;
  font-size: 0.72rem;
}

.message-reply-attachment {
  align-items: center;
  border: 1px solid #cddae4;
  border-radius: 6px;
  color: #35546d;
  cursor: pointer;
  display: flex;
  flex: 0 0 44px;
  height: 44px;
  justify-content: center;
  position: relative;
}

.message-reply-attachment:hover {
  background: #eaf5f0;
  border-color: #78bea4;
  color: #08704f;
}

.message-reply-attachment input {
  height: 1px;
  opacity: 0;
  position: absolute;
  width: 1px;
}

@media (max-width: 760px) {
  .message-recipient-scopes {
    display: grid;
    width: 100%;
  }

  .message-recipient-scopes button {
    min-width: 0;
    padding-inline: 7px;
  }

  .message-recipient-groups section > div {
    grid-template-columns: 1fr;
  }

  .message-recipient-picker legend small {
    display: block;
    margin: 3px 0 0;
  }

  .message-recipient-groups {
    max-height: 230px;
  }

  .message-recipient-status {
    display: grid;
    gap: 3px;
  }

  .message-recipient-status small {
    text-align: left;
  }

  .message-personal-group-list {
    grid-template-columns: 1fr;
  }

  .message-group-create {
    grid-template-columns: 1fr;
  }

  .message-group-create .ghost-action {
    justify-content: center;
    width: 100%;
  }

  .message-reply-form {
    grid-template-columns: minmax(0, 1fr) 42px 46px;
  }
}

/* Scout munkatér: próbajátékok, távozók és költségtérítési kalkuláció. */
#scoutPanel {
  color: var(--rd-text);
}

.scout-workspace {
  display: grid;
  gap: 16px;
  min-width: 0;
}

.scout-hero,
.scout-detail-card,
.scout-list-panel,
.scout-calculator-overview,
.scout-form {
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  background: #fff;
  box-shadow: 0 10px 24px rgba(14, 43, 74, 0.07);
}

.scout-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 20px 22px;
  border-left: 5px solid var(--rd-green);
  box-shadow: 0 3px 12px rgba(20, 42, 67, 0.04);
}

.scout-hero > div {
  min-width: 0;
}

.scout-hero .eyebrow,
.scout-form-head .eyebrow {
  margin: 0 0 4px;
  color: var(--rd-green-dark) !important;
}

.scout-hero h2,
.scout-form-head h3,
.scout-detail-head h3,
.scout-calculator-hero h3 {
  margin: 0;
  color: var(--rd-text) !important;
}

.scout-hero > div > span,
.scout-form-head > div > span,
.scout-detail-head > div > span,
.scout-calculator-hero > div > span {
  display: block;
  margin-top: 5px;
  color: var(--rd-muted) !important;
  font-weight: 650;
  line-height: 1.45;
}

.scout-hero .primary-action span,
.scout-form .primary-action span,
.scout-detail-actions .primary-action span {
  color: #fff !important;
}

.scout-hero-actions,
.scout-form-actions,
.scout-detail-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.scout-tabs {
  display: flex;
  align-items: center;
  gap: 8px;
  overflow-x: auto;
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  padding: 6px;
  background: #fff;
  box-shadow: 0 3px 12px rgba(20, 42, 67, 0.035);
}

.scout-tabs button {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  gap: 8px;
  min-height: 42px;
  border: 1px solid transparent;
  border-radius: 6px;
  padding: 9px 15px;
  color: var(--rd-muted);
  background: transparent;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

.scout-tabs button > svg { width: 17px; height: 17px; color: var(--rd-faint); }
.scout-tabs button:hover { border-color: #c5d8d0; color: var(--rd-green-dark); background: #f4fbf7; }
.scout-tabs button:hover > svg { color: var(--rd-green-dark); }

.scout-tabs button.is-active {
  border-color: #9fd2b7;
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
  box-shadow: inset 0 0 0 1px rgba(8, 122, 85, 0.08);
}

.scout-tabs button.is-active > svg { color: var(--rd-green-dark); }

.scout-layout {
  display: grid;
  grid-template-columns: minmax(276px, 0.38fr) minmax(0, 1fr);
  gap: 18px;
  align-items: start;
  min-width: 0;
}

.scout-list-panel {
  display: grid;
  gap: 12px;
  padding: 13px;
  min-width: 0;
}

.scout-list-controls {
  display: grid;
  gap: 8px;
}

.scout-list-controls input,
.scout-list-controls select,
.scout-form input,
.scout-form select,
.scout-form textarea {
  width: 100%;
  min-width: 0;
  border: 1px solid var(--rd-border-strong);
  border-radius: 6px;
  padding: 9px 10px;
  color: var(--rd-text);
  background: #fff;
  font: inherit;
  line-height: 1.35;
}

.scout-form textarea {
  resize: vertical;
}

.scout-list-count {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  padding: 2px 2px 0;
}

.scout-list-count strong {
  color: var(--rd-text);
  font-size: 0.92rem;
}

.scout-list-count span {
  color: var(--rd-muted);
  font-size: 0.77rem;
  font-weight: 700;
  text-align: right;
}

.scout-record-list {
  display: grid;
  gap: 8px;
  max-height: 740px;
  overflow: auto;
  padding-right: 2px;
}

.scout-record-card {
  display: grid;
  gap: 5px;
  width: 100%;
  border: 1px solid var(--rd-border);
  border-left: 4px solid #c8d4df;
  border-radius: 6px;
  padding: 12px;
  color: var(--rd-text);
  background: #fff;
  text-align: left;
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(20, 42, 67, 0.025);
}

.scout-record-card:hover,
.scout-record-card.is-active {
  border-color: #96ceb3;
  border-left-color: var(--rd-green);
  background: #f2fbf6;
}

.scout-record-card-top,
.scout-record-card-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
}

.scout-record-card-top strong {
  overflow: hidden;
  color: var(--rd-text);
  font-size: 0.95rem;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.scout-record-card > span:not(.scout-record-card-top):not(.scout-record-card-foot),
.scout-record-card small,
.scout-record-card-foot em {
  overflow: hidden;
  color: var(--rd-muted);
  font-size: 0.78rem;
  font-style: normal;
  font-weight: 650;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.scout-record-card-foot b {
  flex: 0 0 auto;
  color: var(--rd-green-dark);
  font-size: 0.78rem;
}

.scout-status-pill {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  min-height: 26px;
  border-radius: 999px;
  padding: 4px 8px;
  font-size: 0.71rem;
  font-weight: 850;
  line-height: 1.1;
  white-space: nowrap;
}

.scout-status-pill.good { color: #0a744a; background: #dff7ea; }
.scout-status-pill.bad { color: #b13949; background: #fff0f1; }
.scout-status-pill.warn { color: #8c6200; background: #fff4d4; }
.scout-status-pill.info { color: #215f9f; background: #e8f2ff; }
.scout-status-pill.neutral { color: #5f6f82; background: #edf1f5; }

.scout-detail-panel {
  display: grid;
  gap: 16px;
  min-width: 0;
}

.scout-workspace-total {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 132px;
  border: 1px solid #a8dfc2;
  border-left: 7px solid var(--rd-green);
  border-radius: 7px;
  padding: 20px 24px;
  background: linear-gradient(105deg, #ecfaf1, #fff 72%);
  box-shadow: 0 8px 20px rgba(10, 122, 74, 0.08);
}

.scout-workspace-total > div { display: grid; gap: 5px; min-width: 0; }
.scout-workspace-total span { color: var(--rd-muted); font-size: 0.76rem; font-weight: 850; text-transform: uppercase; }
.scout-workspace-total strong { color: var(--rd-green-dark); font-size: clamp(1.8rem, 3vw, 2.65rem); line-height: 1.05; letter-spacing: 0; }
.scout-workspace-total small { max-width: 220px; color: var(--rd-muted); font-size: 0.82rem; font-weight: 750; line-height: 1.45; text-align: right; }

.scout-detail-card,
.scout-calculator-overview {
  display: grid;
  gap: 20px;
  padding: 22px;
}

.scout-calculator-tool .scout-form {
  border: 0;
  border-radius: 0;
  padding: 0;
  background: transparent;
  box-shadow: none;
}

.scout-calculator-tool .scout-form-section {
  border-top: 0;
  padding-top: 0;
}

.scout-detail-head,
.scout-calculator-hero {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.scout-summary-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid var(--rd-border);
  border-radius: 6px;
  overflow: hidden;
}

.scout-summary-kpis > div {
  display: grid;
  align-content: start;
  gap: 5px;
  min-width: 0;
  min-height: 112px;
  padding: 14px;
  border-right: 1px solid var(--rd-border);
  background: #fbfdfd;
}

.scout-summary-kpis > div:last-child { border-right: 0; }

.scout-summary-kpis span,
.scout-notes-grid span,
.scout-highlight-block span {
  color: var(--rd-muted);
  font-size: 0.72rem;
  font-weight: 850;
  text-transform: uppercase;
}

.scout-summary-kpis strong {
  overflow-wrap: anywhere;
  color: var(--rd-text);
  font-size: 1rem;
}

.scout-summary-kpis small {
  color: var(--rd-muted);
  font-size: 0.76rem;
  font-weight: 650;
  line-height: 1.35;
}

.scout-detail-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 0.9fr);
  gap: 18px;
}

.scout-detail-grid > section,
.scout-notes-grid > section {
  border: 1px solid var(--rd-border);
  border-radius: 6px;
  padding: 16px;
  background: #fff;
}

.scout-detail-grid h4 {
  margin: 0 0 12px;
  color: var(--rd-text);
}

.scout-section-score {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 12px;
  padding: 9px 0;
  border-bottom: 1px solid var(--rd-border);
}

.scout-section-score:last-child { border-bottom: 0; }
.scout-section-score span { color: var(--rd-text); font-weight: 750; }
.scout-section-score b { color: var(--rd-green-dark); }
.scout-section-score small { grid-column: 1 / -1; color: var(--rd-muted); font-size: 0.77rem; }

.scout-highlight-block {
  display: grid;
  gap: 5px;
  padding: 11px 0;
  border-bottom: 1px solid var(--rd-border);
}

.scout-highlight-block:last-child { border-bottom: 0; }
.scout-highlight-block p,
.scout-notes-grid p { margin: 0; color: var(--rd-text); line-height: 1.5; }
.scout-highlight-block.concern span { color: #a4444d; }
.scout-highlight-block.outcome span { color: var(--rd-green-dark); }

.scout-notes-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.scout-notes-grid > section { display: grid; gap: 6px; }

.scout-form {
  display: grid;
  gap: 20px;
  padding: 22px;
}

.scout-form-head,
.scout-form-section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.scout-form-section {
  display: grid;
  gap: 14px;
  border-top: 1px solid var(--rd-border);
  padding-top: 18px;
}

.scout-form-section-head strong {
  color: var(--rd-text);
  font-size: 1rem;
}

.scout-form-section-head span,
.scout-template-row small {
  color: var(--rd-muted);
  font-size: 0.78rem;
  font-weight: 650;
  line-height: 1.45;
}

.scout-form-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.scout-form-grid > label,
.scout-template-row label {
  display: grid;
  gap: 6px;
  min-width: 0;
  color: var(--rd-muted);
  font-size: 0.75rem;
  font-weight: 850;
}

.scout-compensation-section {
  border: 1px solid #bfe5d1;
  border-radius: 6px;
  padding: 16px;
  background: #f4fbf7;
}

.scout-compensation-section .scout-form-section-head { border: 0; padding: 0; }
.scout-compensation-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.scout-outgoing-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

.scout-outgoing-calculator-helper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border-top: 1px solid var(--rd-border);
  padding-top: 14px;
}

.scout-outgoing-calculator-helper > div { display: grid; gap: 3px; min-width: 0; }
.scout-outgoing-calculator-helper strong { color: var(--rd-text); }
.scout-outgoing-calculator-helper span { color: var(--rd-muted); font-size: 0.78rem; font-weight: 650; line-height: 1.4; }

.scout-transfer-route {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  border: 1px solid #bfe5d1;
  border-radius: 6px;
  padding: 11px 13px;
  background: #fff;
}

.scout-transfer-route-copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.scout-transfer-route-copy span {
  color: var(--rd-muted);
  font-size: 0.7rem;
  font-weight: 850;
  text-transform: uppercase;
}

.scout-transfer-route-copy strong {
  overflow-wrap: anywhere;
  color: var(--rd-text);
  font-size: 0.9rem;
}

.scout-transfer-route > svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  color: var(--rd-green-dark);
}

.scout-calculation-preview {
  display: grid;
  gap: 5px;
  border-left: 4px solid var(--rd-green);
  padding: 12px 14px;
  background: #fff;
}

.scout-calculation-preview > div {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}

.scout-calculation-preview span,
.scout-calculation-preview p { color: var(--rd-muted); font-weight: 700; }
.scout-calculation-preview strong { color: var(--rd-green-dark); font-size: 1.3rem; }
.scout-calculation-preview p { margin: 0; font-size: 0.8rem; }

.scout-calculator-actions {
  display: flex;
  justify-content: flex-end;
}

.scout-calculator-actions .primary-action { min-width: 150px; justify-content: center; }

.scout-category-recognition {
  min-height: 1.1rem;
  color: var(--rd-green-dark);
  font-size: 0.69rem;
  font-weight: 750;
  line-height: 1.35;
}

.scout-auto-category {
  display: grid;
  align-content: start;
  gap: 6px;
  min-width: 0;
  border: 1px solid var(--rd-border);
  border-radius: 6px;
  padding: 9px 10px;
  background: #fff;
}

.scout-auto-category > span {
  color: var(--rd-muted);
  font-size: 0.75rem;
  font-weight: 850;
}

.scout-date-fields {
  display: grid;
  grid-template-columns: 1.25fr repeat(2, 0.8fr);
  gap: 6px;
}

.scout-date-fields input { min-width: 0; text-align: center; }

.scout-template-row {
  display: flex;
  align-items: end;
  gap: 14px;
}

.scout-template-row label { width: min(360px, 100%); }

.scout-evaluation-sections {
  display: grid;
  gap: 10px;
}

.scout-evaluation-section {
  border: 1px solid var(--rd-border);
  border-radius: 6px;
  background: #fff;
}

.scout-evaluation-section summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 13px 15px;
  color: var(--rd-text);
  font-weight: 850;
  cursor: pointer;
}

.scout-evaluation-section summary small {
  color: var(--rd-muted);
  font-size: 0.76rem;
}

.scout-evaluation-grid {
  display: grid;
  gap: 0;
  border-top: 1px solid var(--rd-border);
}

.scout-metric-row {
  display: grid;
  grid-template-columns: minmax(190px, 0.9fr) 78px minmax(190px, 1.2fr);
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding: 9px 14px;
  border-bottom: 1px solid var(--rd-border);
}

.scout-metric-row:last-child { border-bottom: 0; }
.scout-metric-row > span { color: var(--rd-text); font-size: 0.84rem; font-weight: 720; }
.scout-metric-row select,
.scout-metric-row input { padding: 7px 8px; font-size: 0.82rem; }

.scout-summary-grid > label:nth-last-child(-n+3) { grid-column: span 2; }

.scout-calculator-hero {
  border-bottom: 1px solid var(--rd-border);
  padding-bottom: 18px;
}

.scout-calculator-hero > strong {
  flex: 0 0 auto;
  color: var(--rd-green-dark);
  font-size: 1.65rem;
}

.scout-calculator-table {
  display: grid;
  gap: 7px;
}

.scout-calculator-table button {
  display: grid;
  grid-template-columns: minmax(130px, 0.9fr) minmax(130px, 0.9fr) minmax(190px, 1.2fr) auto;
  align-items: center;
  gap: 12px;
  width: 100%;
  border: 1px solid var(--rd-border);
  border-radius: 6px;
  padding: 11px 13px;
  color: var(--rd-text);
  background: #fff;
  text-align: left;
  cursor: pointer;
}

.scout-calculator-table button:hover { border-color: #9bcfb6; background: #f4fbf7; }
.scout-calculator-table button > span { color: var(--rd-muted); font-weight: 700; }
.scout-calculator-table button > span:first-child { color: var(--rd-text); font-weight: 850; }
.scout-calculator-table button strong { color: var(--rd-green-dark); white-space: nowrap; }

.scout-legal-note {
  margin: 0;
  border-left: 3px solid #e0ae35;
  padding: 9px 12px;
  color: var(--rd-muted);
  background: #fffaf0;
  font-size: 0.79rem;
  font-weight: 650;
  line-height: 1.5;
}

dialog.scout-outgoing-calculator-dialog {
  width: min(880px, calc(100vw - 32px));
  max-height: min(780px, calc(100vh - 32px));
  margin: auto;
  padding: 0;
  overflow: auto;
}

.scout-outgoing-calculator-card {
  display: grid;
  gap: 18px;
  padding: 22px;
  background: #fff;
}

.scout-outgoing-calculator-head,
.scout-outgoing-calculator-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.scout-outgoing-calculator-head { border-bottom: 1px solid var(--rd-border); padding-bottom: 15px; }
.scout-outgoing-calculator-head > div { display: grid; gap: 5px; min-width: 0; }
.scout-outgoing-calculator-head h3 { margin: 0; color: var(--rd-text); font-size: 1.35rem; }
.scout-outgoing-calculator-head span { color: var(--rd-muted); font-size: 0.8rem; font-weight: 650; line-height: 1.45; }
.scout-outgoing-calculator-actions { border-top: 1px solid var(--rd-border); padding-top: 15px; }
.scout-outgoing-calculator-actions .ghost-action:first-child { margin-right: auto; }

.scout-analytics-overview {
  display: grid;
  gap: 18px;
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  padding: 22px;
  background: #fff;
  box-shadow: 0 3px 12px rgba(20, 42, 67, 0.035);
}

.scout-analytics-head,
.scout-analytics-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.scout-analytics-head > div:first-child { display: grid; gap: 5px; min-width: 0; }
.scout-analytics-head h3 { margin: 0; color: var(--rd-text); font-size: 1.45rem; }
.scout-analytics-head span { color: var(--rd-muted); font-size: 0.83rem; font-weight: 650; line-height: 1.5; }
.scout-analytics-head span strong { color: var(--rd-text); }

.scout-analytics-controls {
  display: flex;
  align-items: end;
  gap: 12px;
  border: 1px solid var(--rd-border);
  border-radius: 6px;
  padding: 13px;
  background: #f7faf9;
}

.scout-analytics-controls label {
  display: grid;
  flex: 0 1 250px;
  gap: 6px;
  min-width: 170px;
  color: var(--rd-muted);
  font-size: 0.7rem;
  font-weight: 850;
  text-transform: uppercase;
}

.scout-analytics-controls select {
  width: 100%;
  min-height: 40px;
  border: 1px solid var(--rd-border-strong);
  border-radius: 5px;
  padding: 0 10px;
  color: var(--rd-text);
  background: #fff;
  font: inherit;
  font-size: 0.82rem;
  font-weight: 750;
  text-transform: none;
}

.scout-analytics-controls .primary-action { margin-left: auto; min-height: 40px; }

.scout-player-stat-focus {
  display: grid;
  grid-template-columns: minmax(210px, 0.9fr) minmax(0, 2.1fr);
  gap: 16px;
  overflow: hidden;
  border: 1px solid #bfe5d1;
  border-left: 5px solid var(--rd-green);
  border-radius: 6px;
  padding: 16px;
  background: linear-gradient(100deg, #f1fbf5, #fff 60%);
}

.scout-player-stat-title { display: flex; align-items: flex-start; gap: 11px; min-width: 0; }
.scout-player-stat-title > svg { flex: 0 0 auto; width: 25px; height: 25px; color: var(--rd-green-dark); }
.scout-player-stat-title > div { display: grid; gap: 3px; min-width: 0; }
.scout-player-stat-title h4 { margin: 0; overflow-wrap: anywhere; color: var(--rd-text); font-size: 1.15rem; }
.scout-player-stat-title span { color: var(--rd-muted); font-size: 0.78rem; font-weight: 650; line-height: 1.4; }

.scout-player-stat-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-left: 1px solid #cfe6d8;
}

.scout-player-stat-metrics > div {
  display: grid;
  align-content: start;
  gap: 4px;
  min-width: 0;
  padding: 2px 13px;
  border-right: 1px solid #cfe6d8;
}

.scout-player-stat-metrics > div:last-child { border-right: 0; }
.scout-player-stat-metrics span { color: var(--rd-muted); font-size: 0.66rem; font-weight: 850; line-height: 1.3; text-transform: uppercase; }
.scout-player-stat-metrics strong { overflow-wrap: anywhere; color: var(--rd-text); font-size: 0.96rem; line-height: 1.25; }
.scout-player-stat-metrics small { color: var(--rd-muted); font-size: 0.7rem; font-weight: 650; line-height: 1.35; }

.scout-analytics-scope {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  gap: 8px;
  border: 1px solid #bfe5d1;
  border-radius: 999px;
  padding: 8px 10px;
  color: var(--rd-green-dark);
  background: #f1fbf5;
  font-size: 0.78rem;
  font-weight: 800;
}

.scout-analytics-scope svg { width: 17px; height: 17px; }

.scout-analytics-kpis {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  border: 1px solid var(--rd-border);
  border-radius: 6px;
  overflow: hidden;
}

.scout-analytics-kpis > div {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  min-width: 0;
  min-height: 126px;
  padding: 14px;
  border-right: 1px solid var(--rd-border);
  background: #fff;
}

.scout-analytics-kpis > div > div { display: grid; gap: 5px; min-width: 0; }
.scout-analytics-kpi-icon { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 6px; color: var(--rd-blue); background: var(--rd-blue-soft); }
.scout-analytics-kpis > div.sale .scout-analytics-kpi-icon,
.scout-analytics-kpis > div.positive .scout-analytics-kpi-icon { color: var(--rd-green-dark); background: #dff7ea; }
.scout-analytics-kpis > div.purchase .scout-analytics-kpi-icon { color: #2c5f99; background: #e8f2ff; }
.scout-analytics-kpis > div.negative .scout-analytics-kpi-icon { color: #ad3745; background: #ffe8eb; }
.scout-analytics-kpi-icon svg { width: 19px; height: 19px; }
.scout-analytics-kpis > div:last-child { border-right: 0; }
.scout-analytics-kpis > div.sale { background: #f0fbf5; }
.scout-analytics-kpis > div.purchase { background: #f5f8fe; }
.scout-analytics-kpis > div.positive { background: #effaf4; }
.scout-analytics-kpis > div.negative { background: #fff4f5; }
.scout-analytics-kpis span { color: var(--rd-muted); font-size: 0.69rem; font-weight: 850; line-height: 1.3; text-transform: uppercase; }
.scout-analytics-kpis strong { overflow-wrap: anywhere; color: var(--rd-text); font-size: 1.03rem; }
.scout-analytics-kpis small { color: var(--rd-muted); font-size: 0.72rem; font-weight: 650; line-height: 1.4; }
.scout-analytics-kpis .sale strong,
.scout-analytics-kpis .positive strong { color: #08724a; }
.scout-analytics-kpis .purchase strong { color: #2c5f99; }
.scout-analytics-kpis .negative strong { color: #ad3745; }

.scout-analytics-visual-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.scout-visual-card {
  display: grid;
  align-content: start;
  gap: 18px;
  min-width: 0;
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  padding: 18px;
  background: #fff;
  box-shadow: 0 3px 12px rgba(20, 42, 67, 0.025);
}

.scout-financial-visual-body {
  display: grid;
  grid-template-columns: 146px minmax(0, 1fr);
  align-items: center;
  gap: 20px;
}

.scout-value-donut {
  position: relative;
  display: grid;
  width: 146px;
  aspect-ratio: 1;
  place-items: center;
  border-radius: 50%;
  background: conic-gradient(#07865a 0 var(--scout-sale), #3a78b8 var(--scout-sale) 100%);
}

.scout-value-donut.is-empty { background: #e9eff3; }

.scout-value-donut::after {
  position: absolute;
  width: 105px;
  aspect-ratio: 1;
  border-radius: 50%;
  background: #fff;
  content: "";
}

.scout-value-donut > div { position: relative; z-index: 1; display: grid; gap: 3px; justify-items: center; padding: 8px; text-align: center; }
.scout-value-donut strong { overflow-wrap: anywhere; color: var(--rd-text); font-size: 0.84rem; line-height: 1.16; }
.scout-value-donut span { color: var(--rd-muted); font-size: 0.64rem; font-weight: 750; }

.scout-value-legend { display: grid; gap: 11px; }
.scout-value-legend > div { display: grid; grid-template-columns: 10px minmax(0, 1fr) auto; align-items: center; gap: 9px; min-width: 0; }
.scout-value-legend i { width: 10px; height: 10px; border-radius: 3px; background: var(--rd-green); }
.scout-value-legend .purchase i { background: #3a78b8; }
.scout-value-legend span { display: grid; gap: 2px; min-width: 0; }
.scout-value-legend small { color: var(--rd-muted); font-size: 0.7rem; font-weight: 750; }
.scout-value-legend strong { overflow-wrap: anywhere; color: var(--rd-text); font-size: 0.88rem; }
.scout-value-legend b { color: var(--rd-muted); font-size: 0.76rem; }

.scout-movement-visual { grid-template-rows: auto 1fr auto; }
.scout-movement-bars { display: grid; gap: 15px; }
.scout-movement-bars > div { display: grid; gap: 7px; }
.scout-movement-bars span { display: flex; align-items: center; justify-content: space-between; gap: 12px; color: var(--rd-text); font-size: 0.82rem; }
.scout-movement-bars span b { font-size: 0.78rem; }
.scout-movement-bars > div > i { display: block; height: 12px; overflow: hidden; border-radius: 999px; background: #edf2f1; }
.scout-movement-bars > div > i > b { display: block; height: 100%; border-radius: inherit; background: #138f61; }
.scout-movement-bars > div.outgoing > i { background: #f5e9ea; }
.scout-movement-bars > div.outgoing > i > b { background: #c75763; }
.scout-movement-net { display: grid; grid-template-columns: auto 1fr; gap: 3px 9px; border-top: 1px solid var(--rd-border); padding-top: 12px; }
.scout-movement-net span { grid-column: 1 / -1; color: var(--rd-muted); font-size: 0.69rem; font-weight: 850; text-transform: uppercase; }
.scout-movement-net strong { color: var(--rd-text); font-size: 1rem; }
.scout-movement-net small { align-self: end; color: var(--rd-muted); font-size: 0.72rem; font-weight: 650; line-height: 1.35; text-align: right; }
.scout-movement-net.positive strong { color: var(--rd-green-dark); }
.scout-movement-net.negative strong { color: #ad3745; }

.scout-analytics-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: 16px;
}

.scout-analytics-card {
  display: grid;
  align-content: start;
  gap: 16px;
  min-width: 0;
  border: 1px solid var(--rd-border);
  border-radius: 6px;
  padding: 18px;
  background: #fff;
}

.scout-analytics-card.scout-analytics-wide { grid-column: 1 / -1; }
.scout-analytics-card-head > div { display: grid; gap: 4px; min-width: 0; }
.scout-analytics-card-head h4 { margin: 0; color: var(--rd-text); font-size: 1.05rem; }
.scout-analytics-card-head svg { flex: 0 0 auto; width: 22px; height: 22px; color: var(--rd-green); }

.scout-destination-bars { display: grid; gap: 13px; }
.scout-destination-bar { display: grid; grid-template-columns: minmax(0, 1fr) 74px; gap: 6px 12px; align-items: center; }
.scout-destination-bar > div { display: grid; gap: 2px; min-width: 0; }
.scout-destination-bar strong { overflow-wrap: anywhere; color: var(--rd-text); font-size: 0.85rem; }
.scout-destination-bar span { color: var(--rd-muted); font-size: 0.72rem; font-weight: 650; }
.scout-destination-bar > i { grid-column: 1 / -1; display: block; height: 8px; overflow: hidden; border-radius: 99px; background: #edf2f1; }
.scout-destination-bar > i > b { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--rd-green), #78c99b); }
.scout-destination-bar em { grid-column: 2; grid-row: 1; justify-self: end; color: var(--rd-green-dark); font-size: 0.76rem; font-style: normal; font-weight: 850; white-space: nowrap; }
.scout-destination-bar.academy > i > b { background: #b68117; }
.scout-destination-bar.academy em { color: #8a620d; }
.scout-destination-bar.talent > i > b { background: #138f61; }
.scout-destination-bar.regional > i > b { background: #3a78b8; }
.scout-destination-bar.regional em { color: #2c5f99; }
.scout-destination-bar.grassroots > i > b { background: #74879b; }
.scout-destination-bar.grassroots em { color: #596b7e; }
.scout-destination-bar.stopped > i > b { background: #c75763; }
.scout-destination-bar.stopped em { color: #ad3745; }

.scout-analytics-table { display: grid; min-width: 0; border: 1px solid var(--rd-border); border-radius: 6px; overflow: hidden; }
.scout-analytics-table-head,
.scout-analytics-table-row { display: grid; grid-template-columns: minmax(150px, 1.4fr) repeat(3, minmax(94px, 0.8fr)); gap: 10px; align-items: center; }
.scout-analytics-table-head { padding: 10px 12px; color: var(--rd-muted); background: #f4f8f7; font-size: 0.69rem; font-weight: 850; text-transform: uppercase; }
.scout-analytics-table-row { padding: 11px 12px; border-top: 1px solid var(--rd-border); }
.scout-analytics-table-row > span { display: grid; gap: 2px; min-width: 0; }
.scout-analytics-table-row strong { overflow-wrap: anywhere; color: var(--rd-text); font-size: 0.83rem; }
.scout-analytics-table-row small { color: var(--rd-muted); font-size: 0.7rem; font-weight: 650; }
.scout-analytics-table-row b { color: var(--rd-text); font-size: 0.78rem; white-space: nowrap; }
.scout-analytics-table-row b.sale,
.scout-analytics-table-row b.positive { color: #08724a; }
.scout-analytics-table-row b.purchase { color: #2c5f99; }
.scout-analytics-table-row b.negative { color: #ad3745; }
.scout-analytics-empty { margin: 0; color: var(--rd-muted); font-size: 0.84rem; font-weight: 650; line-height: 1.5; }

.scout-empty-detail {
  display: grid;
  justify-items: start;
  gap: 10px;
  border: 1px dashed var(--rd-border-strong);
  border-radius: var(--rd-radius);
  padding: 36px;
  color: var(--rd-muted);
  background: #fbfdfd;
}

.scout-empty-detail svg { width: 30px; height: 30px; color: var(--rd-green); }
.scout-empty-detail h3 { margin: 0; color: var(--rd-text); }
.scout-empty-detail p { margin: 0; max-width: 430px; line-height: 1.5; }

@media (max-width: 1120px) {
  .scout-form-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .scout-summary-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .scout-summary-kpis > div:nth-child(2) { border-right: 0; }
  .scout-summary-kpis > div:nth-child(-n+2) { border-bottom: 1px solid var(--rd-border); }
  .scout-analytics-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .scout-analytics-kpis > div:nth-child(3) { border-right: 0; }
  .scout-analytics-kpis > div:nth-child(-n+3) { border-bottom: 1px solid var(--rd-border); }
  .scout-player-stat-focus { grid-template-columns: 1fr; }
  .scout-player-stat-metrics { border-top: 1px solid #cfe6d8; border-left: 0; padding-top: 13px; }
}

@media (max-width: 900px) {
  .scout-layout { grid-template-columns: 1fr; }
  .scout-record-list { max-height: 350px; }
  .scout-detail-grid { grid-template-columns: 1fr; }
  .scout-analytics-grid { grid-template-columns: 1fr; }
  .scout-analytics-visual-grid { grid-template-columns: 1fr; }
  .scout-form-grid,
  .scout-compensation-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .scout-analytics-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .scout-analytics-kpis > div { border-right: 1px solid var(--rd-border); border-bottom: 1px solid var(--rd-border); }
  .scout-analytics-kpis > div:nth-child(2),
  .scout-analytics-kpis > div:last-child { border-right: 0; }
  .scout-analytics-kpis > div:last-child { border-bottom: 0; }
  .scout-player-stat-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .scout-player-stat-metrics > div:nth-child(2) { border-right: 0; }
  .scout-player-stat-metrics > div:nth-child(-n+2) { padding-bottom: 12px; border-bottom: 1px solid #cfe6d8; }
  .scout-player-stat-metrics > div:nth-child(n+3) { padding-top: 12px; }
  .scout-calculator-table button { grid-template-columns: minmax(130px, 1fr) minmax(130px, 1fr) auto; }
  .scout-calculator-table button > span:nth-child(3) { display: none; }
}

@media (max-width: 640px) {
  .scout-hero,
  .scout-detail-head,
  .scout-calculator-hero,
  .scout-analytics-head,
  .scout-outgoing-calculator-head,
  .scout-outgoing-calculator-actions,
  .scout-form-head,
  .scout-form-section-head {
    align-items: stretch;
    flex-direction: column;
  }

  .scout-hero-actions,
  .scout-form-actions,
  .scout-detail-actions { width: 100%; }
  .scout-hero-actions .primary-action,
  .scout-form-actions .primary-action,
  .scout-form-actions .ghost-action,
  .scout-detail-actions .primary-action { flex: 1 1 auto; justify-content: center; }
  .scout-form-grid,
  .scout-compensation-grid,
  .scout-notes-grid { grid-template-columns: 1fr; }
  .scout-outgoing-calculator-helper { align-items: stretch; flex-direction: column; }
  .scout-outgoing-calculator-helper .ghost-action { justify-content: center; }
  .scout-workspace-total { align-items: stretch; flex-direction: column; min-height: 0; padding: 18px; }
  .scout-workspace-total small { max-width: none; text-align: left; }
  .scout-summary-grid > label:nth-last-child(-n+3) { grid-column: auto; }
  .scout-summary-kpis { grid-template-columns: 1fr; }
  .scout-summary-kpis > div { min-height: 0; border-right: 0; border-bottom: 1px solid var(--rd-border); }
  .scout-summary-kpis > div:last-child { border-bottom: 0; }
  .scout-template-row { align-items: stretch; flex-direction: column; }
  .scout-transfer-route { align-items: stretch; flex-direction: column; gap: 8px; }
  .scout-transfer-route > svg { align-self: center; transform: rotate(90deg); }
  .scout-metric-row { grid-template-columns: minmax(0, 1fr) 70px; }
  .scout-metric-row input { grid-column: 1 / -1; }
  .scout-calculator-table button { grid-template-columns: minmax(0, 1fr) auto; }
  .scout-calculator-table button > span:nth-child(2) { display: none; }
  .scout-calculator-hero > strong { font-size: 1.35rem; }
  .scout-calculator-actions { justify-content: stretch; }
  .scout-calculator-actions .primary-action { width: 100%; }
  .scout-analytics-scope { width: fit-content; }
  .scout-analytics-controls { align-items: stretch; flex-direction: column; }
  .scout-analytics-controls label { flex-basis: auto; width: 100%; }
  .scout-analytics-controls .primary-action { width: 100%; margin-left: 0; justify-content: center; }
  .scout-player-stat-focus { padding: 14px; }
  .scout-player-stat-metrics { grid-template-columns: 1fr; gap: 0; }
  .scout-player-stat-metrics > div,
  .scout-player-stat-metrics > div:nth-child(2),
  .scout-player-stat-metrics > div:nth-child(-n+2),
  .scout-player-stat-metrics > div:nth-child(n+3) { padding: 10px 0; border-right: 0; border-bottom: 1px solid #cfe6d8; }
  .scout-player-stat-metrics > div:last-child { border-bottom: 0; }
  .scout-financial-visual-body { grid-template-columns: 1fr; justify-items: center; }
  .scout-value-legend { width: min(100%, 320px); }
  .scout-analytics-kpis { grid-template-columns: 1fr; }
  .scout-analytics-kpis > div,
  .scout-analytics-kpis > div:nth-child(2),
  .scout-analytics-kpis > div:nth-child(3),
  .scout-analytics-kpis > div:last-child { border-right: 0; border-bottom: 1px solid var(--rd-border); }
  .scout-analytics-kpis > div:last-child { border-bottom: 0; }
  .scout-outgoing-calculator-actions { align-items: stretch; }
  .scout-outgoing-calculator-actions .ghost-action,
  .scout-outgoing-calculator-actions .primary-action { width: 100%; justify-content: center; }
  .scout-outgoing-calculator-actions .ghost-action:first-child { margin-right: 0; }
  .scout-analytics-table-head { display: none; }
  .scout-analytics-table-row { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
  .scout-analytics-table-row > span { grid-column: 1 / -1; padding-bottom: 3px; }
  .scout-analytics-table-row b { display: grid; gap: 2px; min-width: 0; overflow-wrap: anywhere; white-space: normal; }
  .scout-analytics-table-row b::before { content: attr(data-scout-analytics-label); color: var(--rd-muted); font-size: 0.64rem; font-weight: 850; text-transform: uppercase; }
  #leadershipPanel .technical-departure-list > div { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 760px) {
  #leadershipPanel .technical-table-overlay {
    padding: 5px;
  }

  #leadershipPanel .technical-table-overlay-head {
    grid-template-columns: 1fr;
    padding: 7px;
  }

  #leadershipPanel .technical-overlay-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 5px;
  }

  #leadershipPanel .technical-name-search,
  #leadershipPanel .technical-overlay-actions > span {
    grid-column: 1 / -1;
  }

  #leadershipPanel .technical-name-search {
    grid-template-columns: 16px minmax(0, 1fr) auto;
  }

  #leadershipPanel .technical-mini-button .technical-action-label,
  #leadershipPanel .technical-danger-mini .technical-action-label {
    position: static;
    width: auto;
    height: auto;
    overflow: visible;
    clip: auto;
    clip-path: none;
    white-space: normal;
  }

  #leadershipPanel .technical-mini-button,
  #leadershipPanel .technical-danger-mini {
    min-width: 0;
    padding-inline: 5px;
    font-size: 0.66rem;
  }

  #leadershipPanel .technical-save-main,
  #leadershipPanel .technical-overlay-actions .technical-table-close-button {
    grid-column: 1 / -1;
    width: 100%;
  }

  #leadershipPanel .technical-leadership-card.is-fullscreen .excel-table {
    min-width: 1260px;
  }
}

/* Technikai adatbazisok klubonkent */
#leadershipPanel .technical-club-overview {
  display: grid;
  gap: 14px;
  min-width: 0;
}

#leadershipPanel .technical-club-overview-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  border-bottom: 1px solid var(--rd-border);
  padding: 2px 2px 13px;
}

#leadershipPanel .technical-club-overview-head h4 {
  margin: 2px 0 0;
  color: var(--rd-navy-900);
  font-size: 1.18rem;
}

#leadershipPanel .technical-club-overview-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  min-width: 0;
}

#leadershipPanel .technical-club-overview-actions > span {
  max-width: 560px;
  color: var(--rd-muted);
  font-size: 0.82rem;
  font-weight: 750;
  text-align: right;
}

#leadershipPanel .technical-club-overview-actions .ghost-action {
  flex: 0 0 auto;
  min-height: 40px;
}

#leadershipPanel .technical-club-overview-actions .ghost-action.is-loading i {
  animation: technical-refresh-spin 0.8s linear infinite;
}

@keyframes technical-refresh-spin {
  to {
    transform: rotate(360deg);
  }
}

#leadershipPanel .technical-club-database-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  align-items: stretch;
}

#leadershipPanel .technical-club-database-card {
  display: flex;
  min-width: 0;
  min-height: 100%;
  flex-direction: column;
  border: 1px solid var(--rd-border);
  border-top: 5px solid var(--rd-green);
  border-radius: var(--rd-radius);
  color: var(--rd-text);
  background: #fff;
  box-shadow: 0 7px 22px rgba(20, 42, 67, 0.06);
  overflow: hidden;
}

#leadershipPanel .technical-club-database-card.bad {
  border-top-color: var(--rd-red);
}

#leadershipPanel .technical-departure-alert {
  display: grid;
  gap: 13px;
  border: 1px solid #f1b6bd;
  border-left: 5px solid var(--rd-red);
  border-radius: var(--rd-radius);
  padding: 17px;
  background: #fff7f7;
}

#leadershipPanel .technical-departure-alert-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

#leadershipPanel .technical-departure-alert-head > div { display: grid; gap: 4px; }
#leadershipPanel .technical-departure-alert-head span { color: #a3313d; font-size: 0.73rem; font-weight: 850; text-transform: uppercase; }
#leadershipPanel .technical-departure-alert-head strong { color: var(--rd-text); font-size: 1rem; }
#leadershipPanel .technical-departure-alert-head small { color: var(--rd-muted); font-weight: 650; line-height: 1.45; }
#leadershipPanel .technical-departure-alert-head > svg { flex: 0 0 auto; width: 21px; height: 21px; color: #b73544; }

#leadershipPanel .technical-departure-list {
  display: grid;
  gap: 7px;
}

#leadershipPanel .technical-departure-list > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border: 1px solid #f2d0d4;
  border-radius: 6px;
  padding: 9px 11px;
  background: #fff;
}

#leadershipPanel .technical-departure-list span { display: grid; gap: 2px; min-width: 0; }
#leadershipPanel .technical-departure-list strong { color: var(--rd-text); }
#leadershipPanel .technical-departure-list small { overflow-wrap: anywhere; color: var(--rd-muted); font-size: 0.76rem; font-weight: 650; }
#leadershipPanel .technical-departure-list b { flex: 0 0 auto; color: #9e3040; font-size: 0.85rem; }

#leadershipPanel .technical-club-database-card.warn {
  border-top-color: var(--rd-amber);
}

#leadershipPanel .technical-club-card-head {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 16px;
}

#leadershipPanel .technical-club-mark {
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  border: 1px solid #a7d8c6;
  border-radius: 8px;
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
  font-size: 0.78rem;
  font-weight: 1000;
  overflow: hidden;
}

#leadershipPanel .technical-club-logo {
  width: 44px;
  height: 44px;
  border-radius: 7px;
  object-fit: contain;
}

#leadershipPanel .technical-club-card-head > div {
  display: grid;
  gap: 1px;
  min-width: 0;
}

#leadershipPanel .technical-club-card-head > div > span,
#leadershipPanel .technical-club-card-head small {
  color: var(--rd-muted);
  font-size: 0.74rem;
  font-weight: 800;
}

#leadershipPanel .technical-club-card-head h4 {
  margin: 0;
  color: var(--rd-navy-900);
  font-size: 1.14rem;
}

#leadershipPanel .technical-club-state {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 1px solid #9fd9c0;
  border-radius: 999px;
  padding: 7px 10px;
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
  font-size: 0.73rem;
  font-weight: 950;
  white-space: nowrap;
}

#leadershipPanel .technical-club-state svg {
  width: 15px;
  height: 15px;
}

#leadershipPanel .technical-club-state.bad {
  border-color: #efb3bb;
  color: #982d3b;
  background: var(--rd-red-soft);
}

#leadershipPanel .technical-club-state.warn {
  border-color: #ecd080;
  color: #795200;
  background: var(--rd-amber-soft);
}

#leadershipPanel .technical-club-expiry-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0 16px;
  border: 1px solid var(--rd-border);
  border-radius: 7px;
  background: var(--rd-surface-alt);
  overflow: hidden;
}

#leadershipPanel .technical-club-expiry-metric {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) auto;
  grid-template-rows: auto auto;
  gap: 1px 8px;
  align-items: center;
  min-width: 0;
  padding: 11px;
  background: #f8fdfb;
}

#leadershipPanel .technical-club-expiry-metric:nth-child(even) {
  border-left: 1px solid var(--rd-border);
}

#leadershipPanel .technical-club-expiry-metric:nth-child(n + 3) {
  border-top: 1px solid var(--rd-border);
}

#leadershipPanel .technical-club-expiry-metric.bad {
  background: var(--rd-red-soft);
}

#leadershipPanel .technical-club-expiry-metric.warn {
  background: var(--rd-amber-soft);
}

#leadershipPanel .technical-club-expiry-icon {
  display: grid;
  width: 30px;
  height: 30px;
  grid-row: 1 / 3;
  place-items: center;
  border-radius: 7px;
  color: var(--rd-green-dark);
  background: #fff;
}

#leadershipPanel .technical-club-expiry-metric.bad .technical-club-expiry-icon {
  color: #9b2f3d;
}

#leadershipPanel .technical-club-expiry-metric.warn .technical-club-expiry-icon {
  color: #795200;
}

#leadershipPanel .technical-club-expiry-icon svg {
  width: 16px;
  height: 16px;
}

#leadershipPanel .technical-club-expiry-metric > span:not(.technical-club-expiry-icon) {
  min-width: 0;
  color: var(--rd-text);
  font-size: 0.74rem;
  font-weight: 900;
  overflow-wrap: anywhere;
}

#leadershipPanel .technical-club-expiry-metric strong {
  grid-column: 3;
  grid-row: 1 / 3;
  color: var(--rd-green-dark);
  font-size: 1.35rem;
  line-height: 1;
}

#leadershipPanel .technical-club-expiry-metric.bad strong {
  color: #982d3b;
}

#leadershipPanel .technical-club-expiry-metric.warn strong {
  color: #795200;
}

#leadershipPanel .technical-club-expiry-metric small {
  min-width: 0;
  color: var(--rd-muted);
  font-size: 0.66rem;
  font-weight: 750;
}

#leadershipPanel .technical-club-expiry-preview {
  display: grid;
  gap: 10px;
  padding: 16px;
}

#leadershipPanel .technical-club-expiry-head,
#leadershipPanel .technical-club-card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

#leadershipPanel .technical-club-expiry-head > div {
  display: grid;
  gap: 1px;
}

#leadershipPanel .technical-club-expiry-head strong {
  color: var(--rd-navy-900);
  font-size: 0.88rem;
}

#leadershipPanel .technical-club-expiry-head span,
#leadershipPanel .technical-club-card-footer > span {
  color: var(--rd-muted);
  font-size: 0.72rem;
  font-weight: 800;
}

#leadershipPanel .technical-club-task-button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 1px solid var(--rd-border-strong);
  border-radius: 7px;
  padding: 7px 9px;
  color: var(--rd-navy-800);
  background: #fff;
  font-size: 0.72rem;
  font-weight: 900;
  cursor: pointer;
}

#leadershipPanel .technical-club-task-button:hover,
#leadershipPanel .technical-club-task-button:focus-visible {
  border-color: var(--rd-green);
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
}

#leadershipPanel .technical-club-task-button svg {
  width: 15px;
  height: 15px;
}

#leadershipPanel .technical-club-expiry-preview .technical-expiry-list {
  gap: 7px;
}

#leadershipPanel .technical-club-expiry-preview .technical-expiry-item {
  padding: 8px 9px;
}

#leadershipPanel .technical-club-expiry-preview .technical-expiry-item b {
  min-width: 0;
  padding: 6px 8px;
  font-size: 0.7rem;
}

#leadershipPanel .technical-club-clear-state {
  display: flex;
  align-items: center;
  gap: 9px;
  border: 1px solid #a7d8c6;
  border-radius: 7px;
  padding: 11px;
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
  font-size: 0.76rem;
  font-weight: 800;
}

#leadershipPanel .technical-club-clear-state svg {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
}

#leadershipPanel .technical-club-card-footer {
  margin-top: auto;
  border-top: 1px solid var(--rd-border);
  padding: 13px 16px;
  background: var(--rd-surface-alt);
}

#leadershipPanel .technical-club-card-footer .technical-table-open-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 38px;
}

#leadershipPanel .technical-club-card-footer .technical-table-open-button svg {
  width: 16px;
  height: 16px;
}

/* Szelesseghez igazodas */
@media (max-width: 1180px) {
  :root {
    --rd-sidebar: 218px;
  }

  #leadershipPanel .technical-club-database-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .sidebar-tools,
  .sidebar-tools:hover,
  .sidebar-tools.is-labels-open {
    padding-right: 11px;
    padding-left: 11px;
  }

  .dashboard-kpi-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dashboard-main-grid {
    grid-template-columns: minmax(0, 1fr) 300px;
  }

  .home-player-list,
  .home-hero.has-team-dashboard .home-player-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 820px) and (min-width: 601px) {
  :root {
    --rd-sidebar: 190px;
  }

  .rail-brand {
    gap: 9px;
    padding-right: 5px;
    padding-left: 5px;
  }

  .rail-brand img {
    width: 34px;
    height: 40px;
    flex-basis: 34px;
  }

  .sidebar-tool-action,
  .sidebar-tools:hover .sidebar-tool-action {
    flex-direction: row;
    justify-content: flex-start;
    gap: 9px;
    min-height: 44px;
    padding-right: 9px;
    padding-left: 9px;
    font-size: 0.76rem;
  }

  .topbar {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
    padding: 14px 18px;
  }

  .toolbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) repeat(5, 42px);
    gap: 8px;
    justify-content: stretch;
    width: 100%;
  }

  .toolbar > * {
    width: auto;
    min-width: 0;
  }

  .toolbar #newPlayerBtn {
    grid-column: 1;
    grid-row: 1;
  }

  .toolbar #importBtn {
    grid-column: 2;
    grid-row: 1;
  }

  .toolbar #exportBtn {
    grid-column: 3;
    grid-row: 1;
  }

  .toolbar #pwaInstallBtn {
    grid-column: 4;
    grid-row: 1;
    width: 42px;
    min-width: 42px;
    padding: 9px;
  }

  .toolbar #pwaInstallBtn > span {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }

  .toolbar #pushNotificationBtn {
    grid-column: 5;
    grid-row: 1;
  }

  .toolbar #supabaseSignOutBtn {
    grid-column: 6;
    grid-row: 1;
  }

  .toolbar #viewPreviewControl {
    grid-column: 1 / 6;
    grid-row: 2;
    width: 100%;
  }

  .toolbar #dataManagementBtn {
    grid-column: 6;
    grid-row: 2;
    width: 42px;
    min-width: 42px;
    padding: 9px;
  }

  .toolbar #dataManagementBtn > span {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
  }

  .detail-layout,
  .coach-standalone-page,
  .payment-standalone-page {
    padding: 20px 18px 36px;
  }

  .dashboard-main-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .dashboard-side-column {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dashboard-team-grid,
  .home-player-list,
  .home-hero.has-team-dashboard .home-player-list {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Telefon: also navigacio, teljes szelessegu tartalom */
@media (max-width: 600px) {
  :root {
    --rd-sidebar: 0px;
  }

  body {
    font-size: 14px;
  }

  .app-shell,
  .app-shell.is-player-focus,
  .app-shell.is-coach-focus,
  .app-shell.is-payment-focus {
    display: block;
    min-height: 100vh;
    padding-bottom: 72px;
  }

  .sidebar,
  .app-shell:not(.is-team-drawer-open) .sidebar,
  .app-shell.is-team-drawer-open .sidebar {
    position: fixed;
    inset: auto 0 0;
    z-index: 90;
    width: 100%;
    min-width: 0;
    height: 72px;
    border: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    background: var(--rd-navy-950) !important;
  }

  .sidebar-tools,
  .sidebar-tools:hover,
  .sidebar-tools.is-labels-open,
  .sidebar-tools.is-collapsed-after-click,
  .sidebar-tools.is-collapsed-after-click:hover {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: stretch;
    gap: 4px;
    width: 100%;
    height: 72px;
    padding: 6px 8px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x proximity;
  }

  .rail-brand,
  .sidebar-section-label {
    display: none;
  }

  .sidebar-tool-action,
  .sidebar-tools:hover .sidebar-tool-action,
  .sidebar-tools.is-labels-open .sidebar-tool-action,
  .sidebar-tools.is-collapsed-after-click .sidebar-tool-action {
    display: flex;
    flex: 0 0 68px;
    flex-direction: column;
    justify-content: center;
    gap: 3px;
    width: 68px;
    min-height: 58px;
    border-radius: 7px;
    padding: 5px 4px;
    font-size: 0.61rem;
    text-align: center;
    scroll-snap-align: start;
  }

  .sidebar-tool-action > svg,
  .sidebar-tool-action > i {
    width: 20px;
    height: 20px;
    flex-basis: 20px;
  }

  .sidebar-tool-action > span,
  .sidebar-tools:hover .sidebar-tool-action > span,
  .sidebar-tools.is-labels-open .sidebar-tool-action > span {
    display: block;
    width: 100%;
    overflow: hidden;
    color: inherit;
    font-size: 0.61rem;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .sidebar-drawer {
    top: 0;
    bottom: 72px;
    left: 0;
    width: min(340px, 92vw);
    height: auto;
    max-height: none;
    overflow-y: auto;
    border-right: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 18px 0 46px rgba(6, 23, 43, 0.3);
    opacity: 0;
    transform: translateX(-105%);
  }

  .app-shell.is-team-drawer-open .sidebar-drawer {
    opacity: 1;
    transform: translateX(0);
  }

  .workspace,
  .app-shell.is-player-focus .workspace,
  .app-shell.is-coach-focus .workspace,
  .app-shell.is-payment-focus .workspace {
    min-height: calc(100vh - 72px);
  }

  .topbar {
    position: sticky;
    align-items: stretch;
    flex-direction: column;
    gap: 11px;
    min-height: 0;
    padding: 13px 14px;
  }

  .topbar-title {
    flex: 0 0 auto;
    width: 100%;
  }

  .topbar h2 {
    font-size: 1.2rem;
  }

  .toolbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) repeat(6, 40px);
    justify-content: stretch;
    width: 100%;
  }

  .toolbar .primary-action {
    min-width: 0;
  }

  .toolbar .ghost-action,
  .toolbar .icon-action {
    width: 40px;
    min-width: 40px;
    padding: 8px;
  }

  .toolbar .ghost-action > span,
  .toolbar .icon-action > span {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
  }

  .view-preview-control {
    grid-column: 1 / -1;
    grid-row: 2;
    width: 100%;
  }

  .toolbar #newPlayerBtn {
    grid-column: 1;
    grid-row: 1;
  }

  .toolbar #importBtn {
    grid-column: 2;
    grid-row: 1;
  }

  .toolbar #exportBtn {
    grid-column: 3;
    grid-row: 1;
  }

  .toolbar #pwaInstallBtn {
    grid-column: 4;
    grid-row: 1;
  }

  .toolbar #pushNotificationBtn {
    grid-column: 5;
    grid-row: 1;
  }

  .toolbar #dataManagementBtn {
    grid-column: 6;
    grid-row: 1;
  }

  .toolbar #supabaseSignOutBtn {
    grid-column: 7;
    grid-row: 1;
  }

  .view-preview-control select {
    flex: 1 1 auto;
    min-width: 0;
  }

  body.parent-access-mode .toolbar {
    grid-template-columns: minmax(0, 1fr) repeat(3, 40px);
  }

  body.parent-access-mode .toolbar .view-preview-control {
    grid-column: 1;
    grid-row: 1;
  }

  body.parent-access-mode .toolbar .pwa-install-action {
    grid-column: 2;
    grid-row: 1;
  }

  body.parent-access-mode .toolbar .push-notification-action {
    grid-column: 3;
    grid-row: 1;
  }

  body.parent-access-mode .toolbar .top-signout {
    grid-column: 4;
    grid-row: 1;
  }

  .toolbar .pwa-install-action {
    width: 40px;
    min-width: 40px;
    padding: 8px;
  }

  .toolbar .pwa-install-action > span {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }

  .pwa-install-card {
    gap: 14px;
    padding: 17px;
  }

  .pwa-install-visual {
    gap: 12px;
    padding: 14px;
  }

  .pwa-install-visual > span {
    width: 58px;
    height: 58px;
  }

  .pwa-install-visual img {
    width: 50px;
    height: 50px;
  }

  body.parent-access-mode .sidebar-tool-action,
  body.parent-access-mode .sidebar-tools:hover .sidebar-tool-action,
  body.parent-access-mode .sidebar-tools.is-labels-open .sidebar-tool-action {
    flex: 1 1 0;
    width: auto;
    min-width: 0;
  }

  body.parent-access-mode .sidebar-tools,
  body.parent-access-mode .sidebar-tools:hover,
  body.parent-access-mode .sidebar-tools.is-labels-open {
    overflow-x: hidden;
  }

  body.parent-access-mode .sidebar-tool-action > span,
  body.parent-access-mode .sidebar-tools:hover .sidebar-tool-action > span,
  body.parent-access-mode .sidebar-tools.is-labels-open .sidebar-tool-action > span {
    display: -webkit-box;
    height: 2.1em;
    overflow: hidden;
    font-size: 0.56rem;
    line-height: 1.05;
    text-overflow: clip;
    white-space: normal;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  .detail-layout,
  .coach-standalone-page,
  .payment-standalone-page {
    padding: 16px 12px 28px;
  }

  .dashboard-intro {
    align-items: stretch;
    flex-direction: column;
    gap: 14px;
  }

  .dashboard-intro h3 {
    font-size: 1.45rem;
  }

  .dashboard-team-browser-action {
    justify-content: space-between;
    width: 100%;
  }

  .dashboard-club-switcher {
    padding: 12px;
  }

  .dashboard-club-switcher-options {
    grid-template-columns: minmax(0, 1fr);
  }

  .dashboard-club-choice {
    min-height: 62px;
    padding: 10px 11px;
  }

  .dashboard-kpi-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .dashboard-kpi {
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 9px;
    padding: 12px;
  }

  .dashboard-kpi-icon {
    width: 34px;
    height: 34px;
  }

  .dashboard-kpi strong {
    font-size: 1.3rem;
  }

  .dashboard-main-grid,
  .dashboard-side-column {
    grid-template-columns: minmax(0, 1fr);
  }

  .dashboard-team-grid,
  .home-player-list,
  .home-hero.has-team-dashboard .home-player-list {
    grid-template-columns: minmax(0, 1fr);
  }

  .dashboard-side-panel,
  .dashboard-kpi,
  .dashboard-team-card {
    border-radius: var(--rd-radius);
  }

  .tabs,
  .result-subtabs,
  .team-view-menu,
  .coach-detail-tabs,
  .coach-directory-switch,
  .field-schedule-switch,
  .parent-portal-switch,
  .coach-detail-mode {
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x proximity;
  }

  .team-view-menu {
    display: flex;
  }

  .tab,
  .result-subtab,
  .team-view-button,
  .coach-detail-tabs button,
  .coach-directory-switch button,
  .field-schedule-switch button,
  .parent-portal-switch button,
  .coach-detail-mode button {
    flex: 0 0 auto;
    scroll-snap-align: start;
  }

  .player-detail .tabs {
    top: 112px;
  }

  .player-detail .profile-header {
    grid-template-columns: minmax(0, 1fr);
    padding: 14px;
  }

  .profile-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
  }

  .profile-actions > * {
    width: 100%;
    min-width: 0;
  }

  .login-screen {
    padding: 14px;
  }

  .login-screen::before {
    inset: 0 0 auto;
    width: 100%;
    height: 150px;
  }

  .login-screen::after {
    display: none;
  }

  .login-card {
    padding: 20px;
  }

  .login-copy h2 {
    font-size: 1.65rem;
  }

  .home-global-panel {
    gap: 12px;
  }

  .home-global-panel > .data-hero {
    min-height: 0;
    padding: 13px;
  }

  .coach-directory-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .coach-full-nav {
    align-items: stretch;
    flex-direction: column;
  }

  .coach-full-nav-actions {
    justify-content: flex-start;
  }

  .coach-full-nav-actions button {
    flex: 1 1 180px;
    justify-content: center;
  }

  #coachesPanel .coach-management-item {
    min-height: 0;
  }

  #leadershipPanel .president-kpi-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #leadershipPanel .technical-club-overview-head,
  #leadershipPanel .technical-club-card-footer {
    align-items: stretch;
    flex-direction: column;
  }

  #leadershipPanel .technical-club-overview-actions {
    align-items: stretch;
    flex-direction: column;
  }

  #leadershipPanel .technical-club-overview-actions > span {
    max-width: none;
    text-align: left;
  }

  #leadershipPanel .technical-club-card-head {
    grid-template-columns: 44px minmax(0, 1fr);
    padding: 13px;
  }

  #leadershipPanel .technical-club-mark {
    width: 44px;
    height: 44px;
  }

  #leadershipPanel .technical-club-state {
    grid-column: 1 / -1;
    justify-self: start;
  }

  #leadershipPanel .technical-club-expiry-grid {
    grid-template-columns: minmax(0, 1fr);
    margin: 0 13px;
  }

  #leadershipPanel .technical-club-expiry-metric:nth-child(even) {
    border-left: 0;
  }

  #leadershipPanel .technical-club-expiry-metric:nth-child(n + 2) {
    border-top: 1px solid var(--rd-border);
  }

  #leadershipPanel .technical-club-expiry-preview,
  #leadershipPanel .technical-club-card-footer {
    padding: 13px;
  }

  #leadershipPanel .technical-club-card-footer .technical-table-launcher-actions,
  #leadershipPanel .technical-club-card-footer .technical-table-open-button {
    width: 100%;
  }

  #leadershipPanel .technical-club-card-footer .technical-table-launcher-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #leadershipPanel .leadership-view-switch {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: visible;
  }

  #leadershipPanel .leadership-view-switch button {
    width: 100%;
    min-width: 0;
    white-space: normal;
  }

  #leadershipPanel .president-kpi-grid .leadership-kpi {
    min-height: 112px;
    padding: 12px;
  }

  #leadershipPanel .president-contract-card {
    padding: 13px;
  }

  #leadershipPanel .contract-employer-switch,
  #leadershipPanel .contract-list-employer-switch,
  #leadershipPanel .president-contract-panel-switch {
    grid-template-columns: minmax(0, 1fr);
  }

  .president-contract-step > summary {
    grid-template-columns: 32px minmax(0, 1fr) 18px;
    gap: 9px;
    min-height: 58px;
    padding: 9px 10px;
  }

  .president-contract-step-index {
    width: 32px;
    height: 32px;
  }

  #leadershipPanel .president-contract-step .president-contract-fieldset {
    grid-template-columns: minmax(0, 1fr);
    padding: 12px;
  }

  .contract-ocr-intro {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .contract-ocr-intro > svg {
    width: 21px;
    height: 21px;
  }

  .contract-ocr-local-badge {
    grid-column: 2;
    justify-self: start;
  }

  .contract-ocr-supported {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
  }

  .contract-ocr-actions {
    align-items: stretch;
    flex-direction: column;
  }

  #leadershipPanel .president-contract-step .contract-ocr-actions .ghost-action {
    width: 100%;
  }

  .contract-ocr-review-list {
    grid-template-columns: 1fr;
  }

  .contract-ocr-review-item:nth-child(odd) {
    border-right: 0;
  }

  .contract-ocr-review-item {
    grid-template-columns: minmax(98px, 0.8fr) minmax(0, 1.2fr);
  }

  .president-contract-savebar > div {
    align-items: stretch;
    flex-direction: column;
  }

  #leadershipPanel .president-contract-savebar .primary-action {
    width: 100%;
    min-width: 0;
  }
}

@media (max-width: 390px) {
  .toolbar {
    grid-template-columns: minmax(0, 1fr) repeat(4, 40px);
  }

  .toolbar #dataManagementBtn {
    display: none;
  }

  .dashboard-kpi-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* Felszerelési összesítés és aláírt dokumentumok */
.coach-current-equipment,
.coach-signed-documents,
.coach-signed-document {
  border: 1px solid var(--rd-border);
  border-radius: 8px;
  color: var(--rd-text);
  background: var(--rd-surface);
}

.coach-current-equipment {
  display: grid;
  gap: 12px;
  padding: 14px;
}

.coach-current-equipment-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.coach-current-equipment-head > div,
.coach-current-equipment-copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.coach-current-equipment-head .eyebrow {
  margin: 0;
  color: var(--rd-green-dark);
  font-size: 0.64rem;
  font-weight: 900;
  text-transform: uppercase;
}

.coach-current-equipment-head strong {
  color: var(--rd-text);
  font-size: 1rem;
}

.coach-current-equipment-head span,
.coach-current-equipment-copy span,
.coach-current-equipment-copy small,
.coach-current-equipment-footnote {
  color: var(--rd-muted);
  font-size: 0.74rem;
}

.coach-current-equipment-head > b {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  border: 1px solid #9acbb9;
  border-radius: 999px;
  padding: 4px 8px;
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
  font-size: 0.72rem;
  white-space: nowrap;
}

.coach-current-equipment-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 8px;
}

.coach-current-equipment-item {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) auto;
  align-items: center;
  gap: 9px;
  min-width: 0;
  border: 1px solid var(--rd-border);
  border-radius: 7px;
  padding: 8px;
  background: var(--rd-surface-alt);
}

.coach-current-equipment-item img,
.coach-current-equipment-mark {
  width: 46px;
  height: 46px;
  border-radius: 6px;
  object-fit: contain;
  background: var(--rd-surface);
}

.coach-current-equipment-mark {
  display: grid;
  place-items: center;
  color: var(--rd-green-dark);
  font-size: 0.7rem;
  font-weight: 900;
}

.coach-current-equipment-copy strong {
  overflow: hidden;
  color: var(--rd-text);
  font-size: 0.8rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.coach-current-equipment-item > b {
  color: var(--rd-green-dark);
  font-size: 0.8rem;
  white-space: nowrap;
}

.coach-current-equipment-footnote {
  border-top: 1px solid var(--rd-border);
  padding-top: 9px;
}

.coach-signed-documents {
  overflow: hidden;
}

.coach-signed-documents > summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  min-height: 58px;
  gap: 12px;
  padding: 11px 13px;
  cursor: pointer;
  list-style: none;
}

.coach-signed-documents > summary::-webkit-details-marker,
.coach-signed-document > summary::-webkit-details-marker {
  display: none;
}

.coach-signed-documents-summary,
.coach-signed-document-summary {
  display: flex;
  align-items: center;
  min-width: 0;
}

.coach-signed-documents-summary {
  gap: 10px;
}

.coach-signed-documents-summary > svg {
  width: 20px;
  height: 20px;
  flex: 0 0 auto;
  color: var(--rd-green-dark);
}

.coach-signed-documents-summary > span,
.coach-signed-document-summary > span {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.coach-signed-documents-summary strong {
  color: var(--rd-text);
  font-size: 0.92rem;
}

.coach-signed-documents-summary small,
.coach-signed-document-summary small {
  color: var(--rd-muted);
  font-size: 0.74rem;
}

.coach-signed-documents > summary > b {
  display: grid;
  min-width: 26px;
  height: 26px;
  place-items: center;
  border-radius: 999px;
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
  font-size: 0.72rem;
}

.coach-signed-document-list {
  display: grid;
  gap: 8px;
  border-top: 1px solid var(--rd-border);
  padding: 10px;
}

.coach-signed-document {
  overflow: hidden;
  background: var(--rd-surface-alt);
}

.coach-signed-document > summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  min-height: 47px;
  gap: 10px;
  padding: 8px 10px;
  cursor: pointer;
  list-style: none;
}

.coach-signed-document-summary {
  gap: 8px;
}

.coach-signed-document-summary > svg {
  width: 17px;
  height: 17px;
  flex: 0 0 auto;
  color: var(--rd-green-dark);
}

.coach-signed-document.is-return .coach-signed-document-summary > svg {
  color: var(--rd-red);
}

.coach-signed-document-summary strong {
  color: var(--rd-text);
  font-size: 0.8rem;
}

.coach-signed-document > summary > b {
  color: var(--rd-muted);
  font-size: 0.7rem;
  white-space: nowrap;
}

.coach-signed-document-content {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 10px;
  border-top: 1px solid var(--rd-border);
  padding: 10px;
}

.coach-signed-document-items {
  display: grid;
  gap: 5px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.coach-signed-document-items li {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  border: 1px solid var(--rd-border);
  border-radius: 6px;
  padding: 6px 8px;
  color: var(--rd-text);
  background: var(--rd-surface);
  font-size: 0.73rem;
}

.coach-signed-document-items li span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.coach-signed-document-items li b {
  color: var(--rd-green-dark);
  white-space: nowrap;
}

.coach-signed-document-items li.has-missing {
  border-color: #efbec4;
  background: #fff7f8;
}

.coach-signed-document-items li.has-missing b {
  color: #b83242;
}

.coach-signed-document-download {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  gap: 6px;
  white-space: nowrap;
}

.coach-signed-document-download > svg {
  width: 15px;
  height: 15px;
}

@media (max-width: 760px) {
  .coach-current-equipment-head {
    align-items: stretch;
    flex-direction: column;
  }

  .coach-current-equipment-head > b {
    width: fit-content;
  }

  .coach-current-equipment-list {
    grid-template-columns: 1fr;
  }

  .coach-signed-document-content {
    grid-template-columns: 1fr;
  }

  .coach-signed-document-download {
    width: 100%;
  }

  .coach-signed-document-items li {
    align-items: flex-start;
    flex-direction: column;
  }
}

/* Technikai vezetői programnaptár */
#leadershipPanel .technical-programs-panel {
  display: grid;
  gap: 14px;
  border: 1px solid var(--rd-border);
  border-radius: 8px;
  padding: 16px;
  color: var(--rd-text);
  background: #fff;
}

#leadershipPanel .technical-programs-head,
#leadershipPanel .technical-program-calendar-head,
#leadershipPanel .technical-program-owner-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

#leadershipPanel .technical-programs-head > div,
#leadershipPanel .technical-program-calendar-head > div,
#leadershipPanel .technical-program-owner-head {
  min-width: 0;
}

#leadershipPanel .technical-programs-head .eyebrow,
#leadershipPanel .technical-program-calendar-head .eyebrow {
  margin: 0 0 4px;
  color: var(--rd-green-dark);
  font-size: 0.66rem;
  font-weight: 900;
  text-transform: uppercase;
}

#leadershipPanel .technical-programs-head h4 {
  margin: 0;
  color: var(--rd-text);
  font-size: 1.12rem;
}

#leadershipPanel .technical-programs-head span,
#leadershipPanel .technical-program-calendar-head > span,
#leadershipPanel .technical-program-owner-head span {
  color: var(--rd-muted);
  font-size: 0.78rem;
  line-height: 1.45;
}

#leadershipPanel .technical-program-scope {
  display: inline-flex;
  width: fit-content;
  max-width: 100%;
  gap: 4px;
  border: 1px solid var(--rd-border);
  border-radius: 7px;
  padding: 4px;
  background: var(--rd-surface-alt);
}

#leadershipPanel .technical-program-scope button {
  min-height: 34px;
  border: 0;
  border-radius: 5px;
  padding: 7px 11px;
  color: var(--rd-muted);
  background: transparent;
  font: inherit;
  font-size: 0.78rem;
  font-weight: 850;
  cursor: pointer;
}

#leadershipPanel .technical-program-scope button:hover,
#leadershipPanel .technical-program-scope button:focus-visible,
#leadershipPanel .technical-program-scope button.is-active {
  color: #fff;
  background: var(--rd-green-dark);
  outline: none;
}

#leadershipPanel .technical-program-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

#leadershipPanel .technical-program-group-filter {
  display: grid;
  grid-template-columns: auto minmax(150px, 220px);
  align-items: center;
  gap: 7px;
  color: var(--rd-muted);
  font-size: 0.75rem;
  font-weight: 800;
}

#leadershipPanel .technical-program-group-filter select {
  min-height: 38px;
  border: 1px solid var(--rd-border-strong);
  border-radius: 6px;
  padding: 7px 30px 7px 9px;
  color: var(--rd-text);
  background: #fff;
  font: inherit;
  font-weight: 750;
}

#leadershipPanel .technical-program-group-filter select:focus {
  border-color: var(--rd-green);
  outline: 0;
  box-shadow: 0 0 0 3px rgba(8, 122, 85, 0.12);
}

#leadershipPanel .technical-program-layout {
  display: grid;
  grid-template-columns: minmax(190px, 0.28fr) minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}

#leadershipPanel .technical-program-owner-list,
#leadershipPanel .technical-program-calendar,
#leadershipPanel .technical-program-upcoming {
  display: grid;
  gap: 9px;
  border: 1px solid var(--rd-border);
  border-radius: 7px;
  padding: 11px;
  background: var(--rd-surface-alt);
}

#leadershipPanel .technical-program-owner-head {
  display: grid;
  gap: 2px;
  border-bottom: 1px solid var(--rd-border);
  padding: 2px 2px 10px;
}

#leadershipPanel .technical-program-owner-head strong,
#leadershipPanel .technical-program-calendar-head strong {
  color: var(--rd-text);
  font-size: 0.88rem;
}

#leadershipPanel .technical-program-owner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  width: 100%;
  border: 1px solid var(--rd-border);
  border-radius: 6px;
  padding: 8px;
  color: var(--rd-text);
  background: #fff;
  text-align: left;
  cursor: pointer;
}

#leadershipPanel .technical-program-owner:hover,
#leadershipPanel .technical-program-owner:focus-visible,
#leadershipPanel .technical-program-owner.is-active {
  border-color: #79b59d;
  outline: none;
  background: var(--rd-green-soft);
}

#leadershipPanel .technical-program-owner > span {
  display: grid;
  gap: 2px;
  min-width: 0;
}

#leadershipPanel .technical-program-owner strong {
  overflow: hidden;
  color: var(--rd-text);
  font-size: 0.78rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#leadershipPanel .technical-program-owner small {
  overflow: hidden;
  color: var(--rd-muted);
  font-size: 0.68rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#leadershipPanel .technical-program-owner b {
  display: grid;
  min-width: 25px;
  height: 25px;
  place-items: center;
  border-radius: 999px;
  color: var(--rd-green-dark);
  background: #e7f5ed;
  font-size: 0.7rem;
}

#leadershipPanel .technical-program-calendar {
  background: #fff;
}

#leadershipPanel .technical-program-calendar-head {
  align-items: center;
  border-bottom: 1px solid var(--rd-border);
  padding: 2px 2px 10px;
}

#leadershipPanel .technical-program-calendar > .coach-calendar-board {
  margin: 0;
}

#leadershipPanel .technical-program-upcoming {
  background: var(--rd-surface-alt);
}

#leadershipPanel .technical-program-upcoming .section-heading {
  margin: 0;
}

#leadershipPanel .technical-program-upcoming .section-heading h4 {
  color: var(--rd-text);
}

#leadershipPanel .technical-program-upcoming .section-heading span {
  color: var(--rd-muted);
}

#leadershipPanel .technical-program-upcoming .coach-calendar-event-list {
  display: grid;
  gap: 8px;
}

#coachProgramDialog .coach-program-audience,
#coachProgramDialog .coach-program-targets {
  display: grid;
  gap: 9px;
  margin: 0;
  border: 1px solid var(--rd-border);
  border-radius: 7px;
  padding: 12px;
  background: var(--rd-surface-alt);
}

#coachProgramDialog .coach-program-audience legend {
  padding: 0 5px;
  color: var(--rd-text);
  font-size: 0.84rem;
  font-weight: 850;
}

#coachProgramDialog .coach-program-audience-options,
#coachProgramDialog .coach-program-target-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

#coachProgramDialog .coach-program-audience-options label,
#coachProgramDialog .coach-program-target-option {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  min-width: 0;
  margin: 0;
  border: 1px solid var(--rd-border);
  border-radius: 6px;
  padding: 9px;
  color: var(--rd-text);
  background: #fff;
  cursor: pointer;
}

#coachProgramDialog .coach-program-audience-options input,
#coachProgramDialog .coach-program-target-option input {
  width: 16px;
  min-width: 16px;
  min-height: 16px;
  margin: 2px 0 0;
  accent-color: var(--rd-green-dark);
}

#coachProgramDialog .coach-program-audience small,
#coachProgramDialog .coach-program-targets-head span,
#coachProgramDialog .coach-program-target-option small,
#coachProgramDialog .coach-program-target-loading,
#coachProgramDialog .coach-program-target-help {
  color: var(--rd-muted);
  font-size: 0.74rem;
  line-height: 1.4;
}

#coachProgramDialog .coach-program-targets-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
}

#coachProgramDialog .coach-program-targets-head > div:first-child {
  display: grid;
  gap: 2px;
}

#coachProgramDialog .coach-program-targets-head strong,
#coachProgramDialog .coach-program-target-option strong {
  color: var(--rd-text);
  font-size: 0.8rem;
}

#coachProgramDialog .coach-program-quick-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 5px;
}

#coachProgramDialog .coach-program-quick-actions button {
  min-height: 29px;
  border: 1px solid #b7cfbf;
  border-radius: 5px;
  padding: 5px 7px;
  color: var(--rd-green-dark);
  background: #fff;
  font: inherit;
  font-size: 0.68rem;
  font-weight: 850;
  cursor: pointer;
}

#coachProgramDialog .coach-program-quick-actions button:hover,
#coachProgramDialog .coach-program-quick-actions button:focus-visible,
#coachProgramDialog .coach-program-quick-actions button.is-active {
  border-color: var(--rd-green-dark);
  color: #fff;
  background: var(--rd-green-dark);
  outline: none;
}

#coachProgramDialog .coach-program-target-option > span {
  display: grid;
  gap: 2px;
  min-width: 0;
}

#coachProgramDialog .coach-program-target-loading {
  margin: 0;
}

#coachProgramDialog .coach-program-target-help {
  margin: 0;
}

.coach-internal-program-detail {
  display: grid;
  gap: 9px;
  border: 1px solid #b7cfbf;
  border-radius: 7px;
  padding: 12px;
  background: #f3faf5;
}

.coach-internal-program-detail p,
.coach-internal-program-detail ul {
  margin: 0;
}

.coach-internal-program-detail p {
  color: var(--rd-muted);
  font-size: 0.8rem;
  line-height: 1.45;
}

.coach-internal-program-detail strong {
  color: var(--rd-text);
}

.coach-internal-program-detail ul {
  display: grid;
  gap: 4px;
  padding-left: 18px;
  color: var(--rd-text);
  font-size: 0.84rem;
}

.training-workflow-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: 4px;
}

.training-workflow-actions p {
  flex: 1 1 100%;
  margin: 0;
  color: var(--rd-muted);
  font-size: 0.8rem;
  line-height: 1.45;
}

.training-workflow-actions button {
  min-height: 38px;
}

@media (max-width: 760px) {
  #leadershipPanel .technical-programs-panel {
    padding: 12px;
  }

  #leadershipPanel .technical-programs-head,
  #leadershipPanel .technical-program-calendar-head {
    align-items: stretch;
    flex-direction: column;
  }

  #leadershipPanel .technical-program-toolbar {
    display: grid;
    width: 100%;
    grid-template-columns: minmax(0, 1fr);
  }

  #leadershipPanel .technical-program-scope {
    display: grid;
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #leadershipPanel .technical-program-group-filter {
    grid-template-columns: minmax(0, 1fr);
  }

  #leadershipPanel .technical-program-group-filter select {
    width: 100%;
  }

  #leadershipPanel .technical-program-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  #leadershipPanel .technical-program-owner-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #leadershipPanel .technical-program-owner-head,
  #leadershipPanel .technical-program-owner-list .muted-empty {
    grid-column: 1 / -1;
  }

  #coachProgramDialog .coach-program-audience-options,
  #coachProgramDialog .coach-program-target-options {
    grid-template-columns: minmax(0, 1fr);
  }

  #coachProgramDialog .coach-program-targets-head {
    align-items: stretch;
    flex-direction: column;
  }

  #coachProgramDialog .coach-program-quick-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 440px) {
  #leadershipPanel .technical-program-owner-list {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Alkalmazason beluli uzenetek */
.message-nav-action .message-unread-badge {
  display: inline-grid;
  place-items: center;
  min-width: 20px;
  height: 20px;
  margin-left: auto;
  border: 2px solid var(--rd-navy-950);
  border-radius: 999px;
  padding: 0 5px;
  color: #fff;
  background: var(--rd-red);
  font-size: 0.62rem;
  font-weight: 850;
  line-height: 1;
}

.message-nav-action .message-unread-badge[hidden] {
  display: none;
}

.message-workspace {
  display: grid;
  gap: 18px;
  min-width: 0;
}

.message-page-head,
.message-page-title,
.message-page-actions,
.message-conversation-head,
.message-bubble header,
.message-form-actions,
.message-announcement-note {
  display: flex;
  align-items: center;
}

.message-page-head {
  justify-content: space-between;
  gap: 18px;
  border-bottom: 1px solid var(--rd-border);
  padding: 2px 0 18px;
}

.message-page-title {
  gap: 12px;
  min-width: 0;
}

.message-page-icon {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  border-radius: var(--rd-radius);
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
}

.message-page-icon svg {
  width: 22px;
  height: 22px;
}

.message-page-title h3,
.message-compose-panel h4,
.message-conversation-head h4 {
  margin: 0;
  color: var(--rd-text);
  letter-spacing: 0;
}

.message-page-title h3 {
  font-size: 1.55rem;
  line-height: 1.15;
}

.message-page-title .eyebrow,
.message-compose-panel .eyebrow {
  margin: 0 0 2px;
}

.message-page-actions {
  justify-content: flex-end;
  gap: 8px;
  min-width: 0;
}

.message-page-actions .primary-action,
.message-page-actions .message-groups-action,
.message-form-actions .primary-action,
.message-reply-form .primary-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
}

.message-page-actions .primary-action svg,
.message-page-actions .message-groups-action svg,
.message-form-actions .primary-action svg,
.message-reply-form .primary-action svg {
  width: 17px;
  height: 17px;
}

.message-mode-badge {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  border: 1px solid var(--rd-border);
  border-radius: 999px;
  padding: 5px 10px;
  color: var(--rd-muted);
  background: var(--rd-surface-alt);
  font-size: 0.7rem;
  font-weight: 800;
}

.message-mode-badge.online {
  border-color: #aad6c5;
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
}

.message-mode-badge.warning {
  border-color: #edd69c;
  color: #80550a;
  background: var(--rd-amber-soft);
}

.message-mode-badge.preview,
.message-mode-badge.loading {
  border-color: #cbd9ef;
  color: var(--rd-blue);
  background: var(--rd-blue-soft);
}

.message-summary-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  background: var(--rd-border);
}

.message-summary-row > div {
  display: grid;
  gap: 2px;
  min-width: 0;
  padding: 12px 15px;
  background: #fff;
}

.message-summary-row span {
  color: var(--rd-muted);
  font-size: 0.7rem;
  font-weight: 700;
}

.message-summary-row strong {
  color: var(--rd-text);
  font-size: 1.3rem;
  font-weight: 820;
  line-height: 1.1;
}

.message-team-space-shortcuts {
  display: grid;
  grid-template-columns: minmax(200px, 0.72fr) minmax(0, 1.28fr);
  gap: 14px;
  align-items: center;
  border: 1px solid #b7e2d1;
  border-radius: var(--rd-radius);
  padding: 12px 14px;
  background: linear-gradient(105deg, #effaf5, #ffffff 68%);
}

.message-team-space-shortcuts > header {
  display: flex;
  gap: 10px;
  align-items: center;
  min-width: 0;
}

.message-team-space-shortcuts-icon {
  display: grid;
  place-items: center;
  flex: 0 0 34px;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  color: var(--rd-green-dark);
  background: #d8f4e7;
}

.message-team-space-shortcuts-icon svg {
  width: 18px;
  height: 18px;
}

.message-team-space-shortcuts header > span:last-child,
.message-team-space-shortcuts > div,
.message-team-space-shortcuts button > span {
  display: grid;
  min-width: 0;
}

.message-team-space-shortcuts strong {
  color: var(--rd-text);
  font-size: 0.79rem;
  font-weight: 820;
}

.message-team-space-shortcuts small {
  color: var(--rd-muted);
  font-size: 0.67rem;
  font-weight: 650;
}

.message-team-space-shortcuts > div {
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 8px;
}

.message-team-space-shortcuts button {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 18px;
  gap: 8px;
  align-items: center;
  min-width: 0;
  border: 1px solid #b7e2d1;
  border-radius: 6px;
  padding: 9px 10px;
  color: var(--rd-text);
  background: #ffffff;
  font: inherit;
  text-align: left;
  cursor: pointer;
  transition: border-color 160ms ease, background-color 160ms ease, transform 160ms ease;
}

.message-team-space-shortcuts button:hover,
.message-team-space-shortcuts button:focus-visible {
  border-color: var(--rd-green);
  background: #f5fffa;
  transform: translateY(-1px);
}

.message-team-space-shortcuts button:disabled {
  border-style: dashed;
  color: var(--rd-muted);
  background: #f7fbf9;
  cursor: not-allowed;
  opacity: 0.86;
}

.message-team-space-shortcuts button:disabled:hover {
  transform: none;
}

.message-team-space-shortcuts button > svg {
  width: 17px;
  height: 17px;
  color: var(--rd-green-dark);
}

.message-team-space-empty {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
  border: 1px dashed #b7e2d1;
  border-radius: 6px;
  padding: 10px;
  color: var(--rd-muted);
  background: rgba(255, 255, 255, 0.72);
}

.message-team-space-empty > svg {
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  color: var(--rd-green-dark);
}

.message-team-space-empty > span {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.message-layout {
  display: grid;
  grid-template-columns: minmax(280px, 340px) minmax(0, 1fr);
  min-width: 0;
  min-height: 620px;
  overflow: hidden;
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  background: #fff;
  box-shadow: var(--rd-shadow);
}

.message-thread-panel {
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
  min-width: 0;
  border-right: 1px solid var(--rd-border);
  background: var(--rd-surface-alt);
}

.message-folder-nav {
  display: grid;
  gap: 4px;
  padding: 12px 12px 0;
}

.message-folder-nav button {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr) auto;
  gap: 9px;
  align-items: center;
  width: 100%;
  min-height: 40px;
  border: 0;
  border-radius: 6px;
  padding: 8px 10px;
  color: var(--rd-muted);
  background: transparent;
  font: inherit;
  font-size: 0.76rem;
  font-weight: 760;
  text-align: left;
  cursor: pointer;
}

.message-folder-nav button:hover {
  color: var(--rd-text);
  background: #edf3f5;
}

.message-folder-nav button.is-active {
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
}

.message-folder-nav svg {
  width: 18px;
  height: 18px;
}

.message-folder-nav button b {
  min-width: 24px;
  color: inherit;
  font-size: 0.68rem;
  text-align: right;
}

.strength-reference-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 10px;
}

.strength-reference-grid article {
  display: grid;
  min-width: 0;
  gap: 4px;
  padding: 12px;
  border: 1px solid var(--rd-border);
  border-left: 4px solid var(--rd-green);
  border-radius: var(--rd-radius);
  background: #fff;
}

.strength-reference-grid span,
.strength-reference-grid small {
  color: var(--rd-muted);
  font-size: 0.7rem;
}

.strength-reference-grid strong {
  color: var(--rd-text);
  font-size: 1.15rem;
}

@media (max-width: 760px) {
  .strength-reference-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.message-search {
  position: relative;
  display: block;
  margin: 10px 14px 14px;
}

.message-search svg {
  position: absolute;
  top: 50%;
  left: 12px;
  z-index: 1;
  width: 17px;
  height: 17px;
  color: var(--rd-muted);
  transform: translateY(-50%);
  pointer-events: none;
}

.message-search input,
.message-compose-form input,
.message-compose-form select,
.message-compose-form textarea,
.message-reply-form textarea {
  width: 100%;
  border: 1px solid var(--rd-border-strong);
  border-radius: var(--rd-radius);
  color: var(--rd-text);
  background: #fff;
  font: inherit;
}

.message-search input {
  min-height: 40px;
  padding: 9px 12px 9px 38px;
}

.message-thread-list {
  min-height: 0;
  overflow-y: auto;
  border-top: 1px solid var(--rd-border);
}

.message-thread-row {
  position: relative;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) 8px;
  gap: 10px;
  align-items: start;
  width: 100%;
  min-width: 0;
  min-height: 92px;
  border: 0;
  border-bottom: 1px solid var(--rd-border);
  border-radius: 0;
  padding: 13px 12px;
  color: var(--rd-text);
  background: transparent;
  text-align: left;
}

.message-thread-row:hover,
.message-thread-row:focus-visible {
  background: var(--rd-blue-soft);
}

.message-thread-row.is-active {
  background: #fff;
  box-shadow: inset 3px 0 0 var(--rd-green);
}

.message-thread-row.is-unread .message-thread-copy strong {
  color: var(--rd-navy-950);
  font-weight: 850;
}

.message-thread-icon {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: var(--rd-radius);
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
}

.message-thread-icon svg {
  width: 18px;
  height: 18px;
}

.message-thread-row.is-kind-team_space .message-thread-icon {
  background: #e1f7fa;
  box-shadow: inset 0 0 0 1px #98d9e5;
  color: #08758a;
}

.message-thread-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.message-thread-title {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
}

.message-thread-title strong,
.message-thread-copy > span:last-child,
.message-thread-copy small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.message-thread-title strong {
  min-width: 0;
  color: var(--rd-text);
  font-size: 0.82rem;
  font-weight: 760;
}

.message-thread-title time {
  flex: 0 0 auto;
  color: var(--rd-faint);
  font-size: 0.62rem;
  font-weight: 650;
}

.message-thread-copy small {
  align-items: center;
  color: var(--rd-green-dark);
  display: flex;
  gap: 6px;
  font-size: 0.66rem;
  font-weight: 720;
}

.message-thread-kind {
  color: var(--rd-text);
  flex: 0 0 auto;
  font-size: 0.6rem;
  font-weight: 850;
}

.message-thread-copy > span:last-child {
  color: var(--rd-muted);
  font-size: 0.72rem;
}

.message-thread-unread {
  width: 8px;
  height: 8px;
  margin-top: 4px;
  border-radius: 50%;
  background: var(--rd-blue);
}

.message-list-empty,
.message-empty-detail {
  display: grid;
  place-items: center;
  align-content: center;
  gap: 7px;
  min-height: 260px;
  padding: 28px;
  color: var(--rd-muted);
  text-align: center;
}

.message-list-empty svg,
.message-empty-detail > svg {
  width: 34px;
  height: 34px;
  color: #8da0b3;
}

.message-list-empty strong,
.message-empty-detail strong {
  color: var(--rd-text);
  font-size: 0.9rem;
}

.message-list-empty span,
.message-empty-detail span {
  max-width: 360px;
  font-size: 0.75rem;
}

.message-detail-panel {
  min-width: 0;
  min-height: 0;
  background: #fff;
}

.message-group-manager {
  display: grid;
  align-content: start;
  gap: 18px;
  min-height: 620px;
  padding: 20px;
}

.message-group-manager > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border-bottom: 1px solid var(--rd-border);
  padding-bottom: 15px;
}

.message-group-manager h4 {
  margin: 0;
  color: var(--rd-text);
  font-size: 1.05rem;
}

.message-group-manager .eyebrow {
  margin: 0 0 2px;
}

.message-group-manager-intro {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 13px;
  align-items: start;
  border: 1px solid #b9dfd1;
  border-left: 4px solid var(--rd-green);
  border-radius: var(--rd-radius);
  padding: 16px;
  background: var(--rd-green-soft);
}

.message-group-manager-intro > span {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  color: var(--rd-green-dark);
  background: #fff;
}

.message-group-manager-intro svg {
  width: 19px;
  height: 19px;
}

.message-group-manager-intro strong {
  color: var(--rd-text);
  font-size: 0.88rem;
}

.message-group-manager-intro p {
  margin: 4px 0 0;
  color: var(--rd-muted);
  font-size: 0.75rem;
  line-height: 1.5;
}

.message-group-preview-note {
  display: flex;
  gap: 8px;
  align-items: center;
  border: 1px solid #cbd9ef;
  border-radius: var(--rd-radius);
  padding: 10px 12px;
  color: var(--rd-blue);
  background: var(--rd-blue-soft);
  font-size: 0.72rem;
  font-weight: 700;
}

.message-group-preview-note svg {
  width: 17px;
  height: 17px;
  flex: 0 0 17px;
}

.message-group-manager-list {
  display: grid;
  gap: 9px;
}

.message-group-manager-list article {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) 40px auto 40px;
  gap: 10px;
  align-items: center;
  min-width: 0;
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  padding: 10px 11px;
  background: var(--rd-surface-alt);
}

.message-group-manager-list article > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.message-group-manager-list article strong,
.message-group-manager-list article small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.message-group-manager-list article strong {
  color: var(--rd-text);
  font-size: 0.8rem;
}

.message-group-manager-list article small {
  color: var(--rd-muted);
  font-size: 0.68rem;
}

.message-group-manager-icon {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: var(--rd-radius);
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
}

.message-group-manager-icon svg,
.message-group-manager-list .ghost-action svg {
  width: 17px;
  height: 17px;
}

.message-group-manager-list .ghost-action {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.message-group-manager-delete {
  color: var(--rd-red);
}

.message-group-manager-edit {
  color: var(--rd-green-dark);
}

.message-group-manager-empty {
  display: grid;
  justify-items: center;
  gap: 7px;
  border: 1px dashed var(--rd-border-strong);
  border-radius: var(--rd-radius);
  padding: 32px 18px;
  color: var(--rd-muted);
  background: var(--rd-surface-alt);
  text-align: center;
}

.message-group-manager-empty svg {
  width: 30px;
  height: 30px;
  color: #7d94a8;
}

.message-group-manager-empty strong {
  color: var(--rd-text);
  font-size: 0.86rem;
}

.message-group-manager-empty span {
  max-width: 420px;
  font-size: 0.72rem;
  line-height: 1.45;
}

.message-group-manager-actions {
  display: flex;
  justify-content: flex-end;
}

.message-group-manager-actions .primary-action {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.message-group-manager-actions svg {
  width: 17px;
  height: 17px;
}

.message-group-editor {
  display: grid;
  gap: 18px;
  min-width: 0;
  border: 1px solid var(--rd-border);
  border-radius: var(--rd-radius);
  padding: 18px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(17, 52, 75, 0.08);
}

.message-group-editor-head {
  display: flex;
  align-items: center;
  gap: 11px;
  min-width: 0;
  border-bottom: 1px solid var(--rd-border);
  padding-bottom: 14px;
}

.message-group-editor-head > div {
  min-width: 0;
}

.message-group-editor-head .eyebrow {
  margin: 0 0 2px;
}

.message-group-editor-head h5 {
  overflow: hidden;
  margin: 0;
  color: var(--rd-text);
  font-size: 1rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.message-group-editor-name {
  display: grid;
  gap: 6px;
  min-width: 0;
  color: #40566b;
  font-size: 0.82rem;
  font-weight: 800;
}

.message-group-editor-name input {
  width: 100%;
  min-height: 46px;
  border: 1px solid #b9cbd8;
  border-radius: 7px;
  padding: 10px 12px;
  color: var(--rd-text);
  background: #fff;
  font: inherit;
}

.message-group-editor-name input:focus {
  outline: 3px solid rgba(8, 125, 89, 0.13);
  border-color: #58b391;
}

.message-group-editor-name small {
  color: #708597;
  font-size: 0.67rem;
  font-weight: 650;
}

.message-group-editor-members {
  min-width: 0;
  border-top: 1px solid var(--rd-border);
  padding-top: 16px;
}

.message-group-editor .message-recipient-control {
  min-height: 92px;
}

.message-group-editor .message-recipient-suggestions {
  position: relative;
  inset: auto;
  max-height: min(330px, 42vh);
  margin-top: 2px;
  box-shadow: inset 0 1px 0 rgba(17, 52, 75, 0.04);
}

.message-group-editor .message-recipient-search {
  position: relative;
  display: flex;
  align-items: center;
  color: inherit;
}

.message-group-editor .message-recipient-search > svg {
  position: absolute;
  left: 11px;
  z-index: 1;
  width: 18px;
  height: 18px;
  color: #557084;
  pointer-events: none;
}

.message-group-editor .message-recipient-search input {
  width: 100%;
  min-height: 42px;
  border: 1px solid #d4e0e8;
  border-radius: 7px;
  padding: 9px 12px 9px 38px;
  background: #f8fbfc;
}

.message-group-editor .message-recipient-search input:focus {
  outline: 3px solid rgba(8, 125, 89, 0.13);
  border-color: #58b391;
  background: #fff;
}

.message-group-editor-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 9px;
  border-top: 1px solid var(--rd-border);
  padding-top: 15px;
}

.message-group-editor-actions button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
}

.message-group-editor-actions svg {
  width: 17px;
  height: 17px;
}

@media (min-width: 761px) {
  .message-layout.is-managing-groups {
    height: min(760px, calc(100vh - 250px));
    height: min(760px, calc(100dvh - 250px));
    min-height: 520px;
  }

  .message-layout.is-managing-groups .message-detail-panel {
    min-height: 0;
    overflow: hidden;
  }

  .message-layout.is-managing-groups .message-group-manager {
    height: 100%;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
    -webkit-overflow-scrolling: touch;
  }
}

.message-conversation {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  height: 100%;
  min-height: 620px;
}

.message-conversation-head {
  gap: 11px;
  min-width: 0;
  border-bottom: 1px solid var(--rd-border);
  padding: 14px 16px;
}

.message-conversation-avatar {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  border-radius: 50%;
  color: #fff;
  background: var(--rd-green-dark);
  font-size: 0.72rem;
  font-weight: 850;
}

.message-conversation-head > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.message-thread-delete {
  margin-left: auto;
  color: var(--rd-red);
}

.message-thread-delete:hover,
.message-thread-delete:focus-visible {
  border-color: #e8b7be;
  color: #9d2938;
  background: var(--rd-red-soft);
}

.message-conversation-head h4 {
  overflow: hidden;
  font-size: 0.95rem;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.message-conversation-head span:not(.message-conversation-avatar) {
  overflow: hidden;
  color: var(--rd-muted);
  font-size: 0.7rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.message-mobile-back {
  display: none;
}

.message-stream {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-height: 0;
  overflow-y: auto;
  padding: 20px;
  background: linear-gradient(180deg, #f8fafc 0%, #fff 100%);
}

.message-bubble {
  align-self: flex-start;
  width: fit-content;
  max-width: min(76%, 680px);
  border: 1px solid var(--rd-border);
  border-radius: 8px 8px 8px 2px;
  padding: 10px 12px;
  color: var(--rd-text);
  background: #fff;
  box-shadow: 0 3px 10px rgba(20, 42, 67, 0.04);
}

.message-bubble.is-own {
  align-self: flex-end;
  border-color: #b8dfd0;
  border-radius: 8px 8px 2px 8px;
  background: var(--rd-green-soft);
}

.message-bubble header {
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 5px;
}

.message-bubble header strong {
  color: var(--rd-green-dark);
  font-size: 0.67rem;
  font-weight: 800;
}

.message-bubble header time {
  color: var(--rd-faint);
  font-size: 0.59rem;
}

.message-bubble p {
  margin: 0;
  color: var(--rd-text);
  font-size: 0.8rem;
  line-height: 1.52;
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}

.message-bubble-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 9px;
  padding-top: 8px;
  border-top: 1px solid color-mix(in srgb, var(--rd-border) 72%, transparent);
}

.message-bubble-action {
  display: inline-flex;
  min-height: 30px;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 5px 9px;
  border: 1px solid var(--rd-border);
  border-radius: 6px;
  color: var(--rd-muted);
  background: var(--rd-surface-alt);
  font-size: 0.68rem;
  font-weight: 780;
  cursor: pointer;
}

.message-bubble-action:hover,
.message-bubble-action:focus-visible {
  border-color: #8fcfb5;
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
}

.message-bubble-action.is-liked {
  border-color: #79caaa;
  color: #086d4d;
  background: #dff6ec;
}

.message-bubble-action svg {
  width: 14px;
  height: 14px;
}

.message-bubble-action b {
  min-width: 18px;
  padding: 1px 5px;
  border-radius: 999px;
  color: inherit;
  background: color-mix(in srgb, currentColor 11%, transparent);
  font-size: 0.64rem;
  text-align: center;
}

.message-reply-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 9px;
  align-items: end;
  border-top: 1px solid var(--rd-border);
  padding: 12px 14px;
  background: #fff;
}

.message-reply-form textarea {
  min-height: 44px;
  max-height: 140px;
  resize: vertical;
  padding: 10px 12px;
}

.message-announcement-note {
  gap: 8px;
  border-top: 1px solid var(--rd-border);
  padding: 14px 16px;
  color: var(--rd-muted);
  background: var(--rd-surface-alt);
  font-size: 0.73rem;
  font-weight: 650;
}

.message-announcement-note svg {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
}

.message-compose-panel {
  min-height: 620px;
  padding: 20px;
}

.message-compose-panel > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border-bottom: 1px solid var(--rd-border);
  padding-bottom: 15px;
}

.message-compose-panel h4 {
  font-size: 1.05rem;
}

.message-compose-form {
  display: grid;
  gap: 14px;
  max-width: 760px;
  padding-top: 18px;
}

.message-compose-form label {
  display: grid;
  gap: 6px;
  color: var(--rd-muted);
  font-size: 0.73rem;
  font-weight: 760;
}

.message-compose-form input,
.message-compose-form select,
.message-compose-form textarea {
  min-height: 42px;
  padding: 10px 12px;
}

.message-compose-form textarea {
  min-height: 180px;
  resize: vertical;
}

.message-compose-recipient-note {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  padding: 10px 12px;
  border: 1px solid #b7d8e8;
  border-left: 3px solid #3588b5;
  border-radius: 6px;
  color: #38576c;
  background: #eef7fb;
  font-size: 0.72rem;
  line-height: 1.45;
}

.message-compose-recipient-note svg {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  margin-top: 1px;
  color: #1f6e99;
}

.message-compose-recipient-note strong {
  color: #174d6a;
}

.message-form-actions {
  justify-content: flex-end;
  gap: 8px;
  padding-top: 2px;
}

@media (max-width: 820px) {
  .message-team-space-shortcuts {
    grid-template-columns: 1fr;
  }

  .message-layout {
    grid-template-columns: minmax(250px, 300px) minmax(0, 1fr);
  }

  .message-bubble {
    max-width: 86%;
  }
}

@media (max-width: 760px) {
  .message-page-head {
    align-items: stretch;
    flex-direction: column;
  }

  .message-page-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
  }

  .message-page-actions .primary-action {
    min-width: 116px;
    margin-left: auto;
  }

  .message-page-actions .message-mode-badge {
    justify-content: center;
  }

  .message-layout {
    display: block;
    min-height: 560px;
  }

  .message-thread-panel {
    min-height: 560px;
    border-right: 0;
  }

  .message-detail-panel {
    display: none;
  }

  .message-workspace.has-selected-thread .message-thread-panel,
  .message-layout.is-composing .message-thread-panel,
  .message-layout.is-managing-groups .message-thread-panel {
    display: none;
  }

  .message-workspace.has-selected-thread .message-detail-panel,
  .message-layout.is-composing .message-detail-panel,
  .message-layout.is-managing-groups .message-detail-panel {
    display: block;
  }

  .message-conversation,
  .message-compose-panel,
  .message-group-manager {
    min-height: 560px;
  }

  .message-mobile-back {
    display: inline-grid;
    place-items: center;
    flex: 0 0 40px;
  }

  .message-stream {
    padding: 15px 12px;
  }
}

@media (max-width: 440px) {
  .message-team-space-shortcuts {
    gap: 10px;
    padding: 11px;
  }

  .message-team-space-shortcuts > div {
    grid-template-columns: 1fr;
  }

  .message-page-title h3 {
    font-size: 1.3rem;
  }

  .message-page-actions {
    gap: 6px;
  }

  .message-summary-row > div {
    padding: 10px;
  }

  .message-summary-row span {
    font-size: 0.62rem;
  }

  .message-summary-row strong {
    font-size: 1.08rem;
  }

  .message-bubble {
    max-width: 92%;
  }

  .message-reply-form {
    grid-template-columns: minmax(0, 1fr) 42px;
    padding: 10px;
  }

  .message-reply-form .primary-action {
    width: 42px;
    padding: 9px;
  }

  .message-reply-form .primary-action span {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
  }

  .message-compose-panel {
    padding: 15px;
  }

  .message-page-actions .message-groups-action {
    flex: 1 1 auto;
    justify-content: center;
  }

  .message-group-manager {
    padding: 15px;
  }

  .message-group-manager-list article {
    grid-template-columns: 38px minmax(0, 1fr) 40px 40px;
  }

  .message-group-manager-list .ghost-action {
    grid-column: 1 / -1;
    justify-content: center;
    width: 100%;
  }

  .message-group-manager-actions .primary-action {
    justify-content: center;
    width: 100%;
  }

  .message-group-editor {
    gap: 15px;
    padding: 14px;
  }

  .message-group-editor-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .message-group-editor-actions button {
    width: 100%;
  }
}

/* Motorikus riport: a meresi datumok sajat, olvashato oszlopot kapnak. */
.report-results-table {
  overflow-x: auto;
  scrollbar-width: thin;
  -webkit-overflow-scrolling: touch;
}

.profile-report-visual .report-results-head,
.profile-report-visual .report-results-row {
  grid-template-columns: minmax(96px, 1fr) repeat(3, minmax(112px, 1.02fr)) minmax(94px, 0.8fr) minmax(106px, 0.9fr);
  gap: 10px;
  width: 100%;
  min-width: 720px;
  padding: 11px 12px;
}

.report-results-head > span,
.report-results-row > span,
.report-results-row > strong {
  min-width: 0;
}

.report-results-date-cell {
  justify-items: center;
  text-align: center;
}

.report-results-date-cell time {
  display: grid;
  gap: 1px;
  min-width: 0;
  color: var(--rd-text);
  font-size: 0.78rem;
  font-style: normal;
  font-weight: 800;
  line-height: 1.2;
}

.report-results-date-cell time span {
  white-space: nowrap;
}

@media (max-width: 760px) {
  .profile-report-visual .report-results-head,
  .profile-report-visual .report-results-row {
    min-width: 680px;
    gap: 8px;
    padding: 10px;
    overflow: visible;
  }

  .report-results-date-cell time {
    font-size: 0.72rem;
  }
}

/* Motorikus visszajelzesek: ne kelljen a teljes tablazatot oldalra huzni. */
.motoric-feedback-list {
  display: grid;
  gap: 10px;
}

.motoric-feedback-row {
  display: grid;
  gap: 10px;
  min-width: 0;
  border: 1px solid var(--rd-border);
  border-left: 4px solid var(--rd-green);
  border-radius: var(--rd-radius);
  padding: 13px;
  background: #fff;
}

.motoric-feedback-row:nth-child(even) {
  background: var(--rd-surface-alt);
}

.motoric-feedback-row > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
}

.motoric-feedback-row > header > span,
.motoric-feedback-detail > span {
  color: var(--rd-muted);
  font-size: 0.72rem;
  font-weight: 800;
  line-height: 1.25;
  text-transform: uppercase;
}

.motoric-feedback-row > header > strong {
  color: var(--rd-text);
  font-size: 1.08rem;
  text-align: right;
}

.motoric-feedback-details {
  display: grid;
  gap: 8px;
}

.motoric-feedback-detail {
  display: grid;
  gap: 5px;
  min-width: 0;
  border-top: 1px solid var(--rd-border);
  padding-top: 10px;
}

.motoric-feedback-detail > strong,
.motoric-feedback-detail .value-with-info,
.motoric-feedback-detail .reference-pill {
  justify-self: start;
}

.motoric-feedback-row .value-with-info {
  justify-content: flex-start;
  text-align: left;
}

.motoric-feedback-reference > small {
  color: var(--rd-muted);
  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1.35;
}

.motoric-feedback-reference .reference-pill {
  min-height: 36px;
  padding: 6px 11px;
  font-size: 0.92rem;
}

@media (max-width: 600px) {
  .motoric-feedback-row {
    gap: 9px;
    padding: 12px;
  }

  .motoric-feedback-row > header {
    align-items: flex-start;
    flex-direction: column;
    gap: 4px;
  }

  .motoric-feedback-row > header > strong {
    text-align: left;
  }
}

/* A motorikus osszegzes ket fontos resze: reszletes, de gyorsan atfuthato. */
.motoric-insight-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.motoric-development-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.motoric-development-summary .motoric-insight-stat {
  grid-template-columns: minmax(0, 1fr) auto;
  align-content: start;
  gap: 6px 10px;
  min-height: 92px;
  padding: 12px;
}

.motoric-development-summary .motoric-insight-stat > strong {
  justify-self: end;
  font-size: 1.2rem;
  text-align: right;
}

.motoric-development-summary .motoric-insight-stat > small {
  grid-column: 1 / -1;
}

.motoric-development-summary .motoric-insight-stat:first-child {
  border-color: #b9e4d0;
  background: #eefaf4;
}

.motoric-development-summary .motoric-insight-stat:nth-child(3) {
  border-color: #f0c9ce;
  background: #fff5f6;
}

.motoric-season-switch {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-bottom: 12px;
  border-bottom: 1px solid var(--rd-border);
  padding-bottom: 12px;
}

.motoric-season-switch button {
  min-height: 34px;
  border: 1px solid var(--rd-border-strong);
  border-radius: 6px;
  padding: 6px 10px;
  color: var(--rd-muted);
  background: #fff;
  font-size: 0.76rem;
  font-weight: 800;
}

.motoric-season-switch button:hover {
  color: var(--rd-text);
  background: var(--rd-surface-alt);
}

.motoric-season-switch button.is-active {
  border-color: #9ad6c0;
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
}

.motoric-insight-stat {
  display: grid;
  gap: 4px;
  min-width: 0;
  border: 1px solid var(--rd-border);
  border-radius: 7px;
  padding: 10px;
  background: var(--rd-surface-alt);
}

.motoric-insight-stat > span,
.motoric-insight-stat > small,
.motoric-insight-section-head > span,
.motoric-insight-list small {
  color: var(--rd-muted);
}

.motoric-insight-stat > span {
  font-size: 0.69rem;
  font-weight: 800;
  line-height: 1.25;
  text-transform: uppercase;
}

.motoric-insight-stat > strong {
  color: var(--rd-text);
  font-size: 1.05rem;
}

.motoric-insight-stat > small {
  font-size: 0.72rem;
  line-height: 1.3;
}

.motoric-insight-stat .value-with-info {
  justify-content: flex-start;
}

.motoric-insight-section {
  display: grid;
  gap: 9px;
  margin-top: 14px;
  border-top: 1px solid var(--rd-border);
  padding-top: 14px;
}

.motoric-insight-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.motoric-insight-section-head > strong {
  color: var(--rd-text);
  font-size: 0.86rem;
}

.motoric-insight-section-head > span {
  font-size: 0.72rem;
  font-weight: 700;
  text-align: right;
}

.motoric-insight-list {
  display: grid;
  gap: 7px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.motoric-insight-list > li {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  min-width: 0;
  border: 1px solid var(--rd-border);
  border-left: 3px solid var(--rd-border-strong);
  border-radius: 7px;
  padding: 9px 10px;
  background: #fff;
}

.motoric-insight-list > li.good {
  border-left-color: var(--rd-green);
}

.motoric-insight-list > li.warn,
.motoric-insight-list > li.neutral {
  border-left-color: var(--rd-amber);
}

.motoric-insight-list > li.bad {
  border-left-color: var(--rd-red);
}

.motoric-insight-list > li > div:first-child {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.motoric-insight-list strong {
  color: var(--rd-text);
  font-size: 0.84rem;
}

.motoric-insight-list small {
  font-size: 0.74rem;
  line-height: 1.32;
}

.motoric-insight-list .value-with-info {
  justify-content: flex-end;
}

.motoric-insight-list .reference-pill {
  min-height: 32px;
  padding: 5px 9px;
  font-size: 0.82rem;
}

.motoric-development-result {
  display: grid;
  justify-items: start;
  gap: 3px;
  min-width: 0;
  border-left: 1px solid var(--rd-border);
  padding-left: 12px;
  text-align: left;
}

.motoric-development-result > strong.good {
  color: var(--rd-green-dark);
}

.motoric-development-result > strong.bad {
  color: var(--rd-red);
}

.motoric-development-result > strong.neutral {
  color: #8a630d;
}

.motoric-development-list > li {
  grid-template-columns: minmax(118px, 0.7fr) minmax(0, 1.5fr);
  align-items: stretch;
}

.motoric-development-metric,
.motoric-development-data,
.motoric-development-result {
  align-content: center;
}

.motoric-development-metric {
  display: grid;
  border-right: 1px solid var(--rd-border);
  padding-right: 12px;
}

.motoric-development-data {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.motoric-development-values {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  min-width: 0;
  padding-left: 2px;
}

.motoric-development-values > span:not([aria-hidden="true"]) {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.motoric-development-values > span:last-child {
  text-align: right;
}

.motoric-development-values small {
  color: var(--rd-muted);
  font-size: 0.66rem;
  font-weight: 750;
}

.motoric-development-values strong {
  color: var(--rd-text);
  font-size: 0.84rem;
  overflow-wrap: anywhere;
}

.motoric-development-values > span[aria-hidden="true"] {
  color: var(--rd-faint);
  font-size: 0.82rem;
  font-weight: 800;
}

.motoric-development-overview {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  border: 1px solid var(--rd-border);
  border-left: 4px solid var(--rd-green);
  border-radius: 7px;
  padding: 14px;
  background: var(--rd-surface-alt);
}

.motoric-development-overview.good {
  border-left-color: var(--rd-green);
  background: #f2fbf6;
}

.motoric-development-overview.bad {
  border-left-color: var(--rd-red);
  background: #fff5f6;
}

.motoric-development-overview.neutral {
  border-left-color: var(--rd-amber);
  background: #fffaf0;
}

.motoric-development-overview-copy {
  display: grid;
  gap: 4px;
}

.motoric-development-overview-copy > span,
.motoric-priority-hero span,
.motoric-priority-goal > span,
.motoric-evaluation-context dt {
  color: var(--rd-muted);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}

.motoric-development-overview-copy > strong {
  color: var(--rd-text);
  font-size: 1rem;
  line-height: 1.35;
}

.motoric-development-overview-copy > p {
  margin: 0;
  color: var(--rd-muted);
  font-size: 0.8rem;
  line-height: 1.38;
}

.motoric-evaluation-context {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
}

.motoric-development-overview-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 14px;
  margin: 0;
}

.motoric-development-overview-stats > div,
.motoric-evaluation-context > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.motoric-development-overview-stats dt,
.motoric-evaluation-context dt {
  margin: 0;
}

.motoric-development-overview-stats dd,
.motoric-evaluation-context dd {
  margin: 0;
  color: var(--rd-text);
  font-size: 0.88rem;
  font-weight: 800;
  line-height: 1.25;
}

.motoric-development-overview-stats {
  min-width: min(100%, 420px);
}

.motoric-development-overview-stats > div {
  border-left: 1px solid var(--rd-border);
  padding-left: 10px;
}

.motoric-development-overview-stats > div:first-child {
  border-left: 0;
  padding-left: 0;
}

.motoric-development-overview-stats > div:nth-child(3) {
  border-left: 0;
  padding-left: 0;
}

.motoric-development-overview-stats > div.good dd {
  color: var(--rd-green-dark);
}

.motoric-development-overview-stats > div.bad dd {
  color: var(--rd-red);
}

.motoric-development-overview-stats > div.neutral dd {
  color: #8a630d;
}

.motoric-narrative-card {
  display: grid;
  gap: 14px;
}

.motoric-evaluation-focus {
  display: grid;
  grid-template-columns: minmax(220px, 0.72fr) minmax(0, 1.28fr);
  gap: 18px;
  align-items: center;
  border: 1px solid #ecd080;
  border-left: 5px solid #e1b13a;
  border-radius: 7px;
  padding: 14px 16px;
  background: #fff7d9;
}

.motoric-evaluation-focus.good {
  border-color: #b9e4d0;
  border-left-color: var(--rd-green);
  background: #f2fbf6;
}

.motoric-evaluation-focus.warn {
  border-color: #efc2c8;
  border-left-color: #df7882;
  background: #fff0f2;
}

.motoric-evaluation-focus.bad {
  border-color: #eb98a2;
  border-left-color: #d83c49;
  background: #fde3e6;
}

.motoric-evaluation-focus > div {
  display: grid;
  gap: 4px;
}

.motoric-evaluation-focus span,
.motoric-evaluation-grid-head span {
  color: var(--rd-muted);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}

.motoric-evaluation-focus strong {
  color: var(--rd-text);
  font-size: 1rem;
  line-height: 1.32;
}

.motoric-evaluation-focus p {
  margin: 0;
  color: var(--rd-muted);
  font-size: 0.85rem;
  line-height: 1.45;
}

.motoric-evaluation-grid-section {
  display: grid;
  gap: 10px;
  border-top: 1px solid var(--rd-border);
  padding-top: 14px;
}

.motoric-evaluation-grid-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 14px;
}

.motoric-evaluation-grid-head > div {
  display: grid;
  gap: 3px;
}

.motoric-evaluation-grid-head h5 {
  margin: 0;
  color: var(--rd-text);
  font-size: 1rem;
  font-weight: 800;
}

.motoric-evaluation-grid-head p {
  max-width: 420px;
  margin: 0;
  color: var(--rd-muted);
  font-size: 0.78rem;
  line-height: 1.38;
  text-align: right;
}

.motoric-score-tile-grid,
.motoric-development-tile-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(165px, 1fr));
  gap: 9px;
}

.motoric-score-tile,
.motoric-development-tile {
  display: grid;
  align-content: start;
  gap: 7px;
  min-height: 144px;
  border: 1px solid var(--rd-border);
  border-top: 4px solid var(--rd-border-strong);
  border-radius: 7px;
  padding: 11px;
  background: var(--rd-surface);
}

.motoric-score-tile.good,
.motoric-development-tile.good {
  border-top-color: var(--rd-green);
  background: #f2fbf6;
}

.motoric-score-tile.neutral,
.motoric-development-tile.neutral {
  border-color: #ecd080;
  border-top-color: #e1b13a;
  background: #fff7d9;
}

.motoric-score-tile.warn {
  border-color: #efc2c8;
  border-top-color: #df7882;
  background: #fff0f2;
}

.motoric-score-tile.bad,
.motoric-development-tile.bad {
  border-color: #eb98a2;
  border-top-color: #d83c49;
  background: #fde3e6;
}

.motoric-score-tile.needs-focus {
  box-shadow: inset 0 0 0 1px rgba(188, 145, 29, 0.2);
}

.motoric-score-tile.warn.needs-focus {
  box-shadow: inset 0 0 0 1px rgba(196, 86, 99, 0.16);
}

.motoric-score-tile.bad.needs-focus {
  box-shadow: inset 0 0 0 1px rgba(183, 49, 64, 0.26);
}

.motoric-score-tile.boundary-focus {
  box-shadow: inset 0 0 0 1px rgba(120, 99, 45, 0.18);
}

.motoric-score-tile.boundary-focus > small {
  color: #85620f;
}

.motoric-score-tile.boundary-score-4 {
  border-color: #c8ddc9;
  border-top-color: #9abf69;
  background: linear-gradient(90deg, #f2fbf6 0 50%, #fff7d9 50% 100%);
}

.motoric-score-tile.boundary-score-3 {
  border-color: #eac58c;
  border-top-color: #e0ad40;
  background: linear-gradient(90deg, #fff7d9 0 50%, #fff0f2 50% 100%);
}

.motoric-score-tile.boundary-score-2 {
  border-color: #e9abb3;
  border-top-color: #df6570;
  background: linear-gradient(90deg, #fff0f2 0 50%, #fde3e6 50% 100%);
}

.motoric-score-tile.boundary-score-2 > small {
  color: #ad3643;
}

.motoric-score-tile-head,
.motoric-development-tile-head {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 7px;
  min-width: 0;
}

.motoric-score-tile-head > span,
.motoric-development-tile-head > span {
  color: var(--rd-text);
  font-size: 0.8rem;
  font-weight: 800;
  line-height: 1.22;
}

.motoric-score-tile .reference-pill {
  flex: 0 0 auto;
  min-height: 24px;
  padding: 3px 6px;
  font-size: 0.66rem;
}

.motoric-score-tile > strong {
  color: var(--rd-text);
  font-size: 1.12rem;
  line-height: 1.2;
}

.motoric-score-tile > small {
  color: #85620f;
  font-size: 0.72rem;
  font-weight: 800;
  line-height: 1.25;
}

.motoric-score-tile.good > small {
  color: var(--rd-green-dark);
}

.motoric-score-tile.bad > small {
  color: var(--rd-red);
}

.motoric-score-tile > p {
  margin: auto 0 0;
  color: var(--rd-muted);
  font-size: 0.69rem;
  line-height: 1.25;
}

.motoric-development-tile-head .value-with-info {
  flex: 0 0 auto;
}

.motoric-development-tile-head strong {
  color: #85620f;
  font-size: 0.86rem;
  white-space: nowrap;
}

.motoric-development-tile.good .motoric-development-tile-head strong,
.motoric-development-tile.good > strong {
  color: var(--rd-green-dark);
}

.motoric-development-tile.bad .motoric-development-tile-head strong,
.motoric-development-tile.bad > strong {
  color: var(--rd-red);
}

.motoric-development-tile > strong {
  color: #85620f;
  font-size: 0.83rem;
  line-height: 1.2;
}

.motoric-development-tile-values {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: 5px;
  margin-top: auto;
}

.motoric-development-tile-values > span:not([aria-hidden="true"]) {
  display: grid;
  gap: 2px;
  min-width: 0;
  color: var(--rd-muted);
  font-size: 0.64rem;
  line-height: 1.2;
}

.motoric-development-tile-values > span[aria-hidden="true"] {
  color: var(--rd-muted);
  font-size: 0.78rem;
  font-weight: 800;
}

.motoric-development-tile-values b {
  color: var(--rd-text);
  font-size: 0.76rem;
  line-height: 1.22;
}

.motoric-development-grid-empty {
  margin: 0;
  border: 1px dashed var(--rd-border-strong);
  border-radius: 7px;
  padding: 12px;
  color: var(--rd-muted);
  font-size: 0.84rem;
}

.motoric-priority-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(175px, 0.32fr);
  gap: 18px;
  border: 1px solid #f0cf80;
  border-left: 5px solid var(--rd-amber);
  border-radius: 7px;
  padding: 16px;
  background: #fffaf0;
}

.motoric-priority-hero.good {
  border-color: #b9e4d0;
  border-left-color: var(--rd-green);
  background: #f2fbf6;
}

.motoric-priority-hero.bad {
  border-color: #f1c5ca;
  border-left-color: var(--rd-red);
  background: #fff5f6;
}

.motoric-priority-hero > div:first-child {
  display: grid;
  gap: 5px;
}

.motoric-priority-hero h5 {
  margin: 0;
  color: var(--rd-text);
  font-size: 1.05rem;
  font-weight: 800;
}

.motoric-priority-hero p {
  margin: 0;
  color: var(--rd-muted);
  font-size: 0.86rem;
  line-height: 1.45;
}

.motoric-priority-goal {
  display: grid;
  align-content: center;
  gap: 5px;
  border-left: 1px solid rgba(95, 82, 35, 0.18);
  padding-left: 15px;
}

.motoric-priority-hero.good .motoric-priority-goal {
  border-left-color: rgba(0, 120, 83, 0.18);
}

.motoric-priority-hero.bad .motoric-priority-goal {
  border-left-color: rgba(183, 49, 64, 0.2);
}

.motoric-priority-goal > strong {
  color: var(--rd-text);
  font-size: 0.98rem;
  line-height: 1.3;
}

.motoric-evaluation-context {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-bottom: 1px solid var(--rd-border);
  padding-bottom: 14px;
}

.motoric-evaluation-context > div {
  border-left: 1px solid var(--rd-border);
  padding-left: 12px;
}

.motoric-evaluation-context > div:first-child {
  border-left: 0;
  padding-left: 0;
}

.motoric-pace-callout {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: 16px;
  align-items: center;
  border: 1px solid #f0cf80;
  border-left: 5px solid var(--rd-amber);
  border-radius: 7px;
  padding: 14px 16px;
  background: #fffaf0;
}

.motoric-pace-callout.good {
  border-color: #b9e4d0;
  border-left-color: var(--rd-green);
  background: #f2fbf6;
}

.motoric-pace-callout.bad {
  border-color: #f1c5ca;
  border-left-color: var(--rd-red);
  background: #fff5f6;
}

.motoric-pace-callout > div {
  display: grid;
  gap: 4px;
}

.motoric-pace-callout span {
  color: var(--rd-muted);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}

.motoric-pace-callout strong {
  color: #8a630d;
  font-size: 1rem;
  line-height: 1.3;
}

.motoric-pace-callout.good strong {
  color: var(--rd-green-dark);
}

.motoric-pace-callout.bad strong {
  color: var(--rd-red);
}

.motoric-pace-callout p {
  margin: 0;
  color: var(--rd-muted);
  font-size: 0.84rem;
  line-height: 1.45;
}

.motoric-evaluation-overview {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(180px, 0.34fr);
  gap: 14px;
  border-bottom: 1px solid var(--rd-border);
  padding-bottom: 14px;
}

.motoric-evaluation-overview > div {
  display: grid;
  gap: 5px;
}

.motoric-evaluation-overview span,
.motoric-evaluation-section-head span,
.motoric-evaluation-development > span {
  color: var(--rd-muted);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}

.motoric-evaluation-overview strong {
  color: var(--rd-text);
  font-size: 0.98rem;
  line-height: 1.45;
}

.motoric-evaluation-overview > small {
  align-self: end;
  color: var(--rd-muted);
  font-size: 0.76rem;
  line-height: 1.4;
  text-align: right;
}

.motoric-evaluation-sections {
  display: grid;
  gap: 0;
}

.motoric-evaluation-section {
  display: grid;
  gap: 10px;
  border-top: 1px solid var(--rd-border);
  padding-block: 14px;
}

.motoric-evaluation-section:first-child {
  border-top: 0;
  padding-top: 0;
}

.motoric-evaluation-section-head {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 12px;
}

.motoric-evaluation-section-head > div {
  display: grid;
  gap: 3px;
}

.motoric-evaluation-section-head h5 {
  margin: 0;
  color: var(--rd-text);
  font-size: 0.94rem;
  font-weight: 780;
}

.motoric-evaluation-section-head > strong {
  display: grid;
  place-items: center;
  width: 28px;
  min-width: 28px;
  height: 28px;
  border-radius: 50%;
  color: var(--rd-green-dark);
  background: var(--rd-green-soft);
  font-size: 0.82rem;
}

.motoric-evaluation-section.warn .motoric-evaluation-section-head > strong,
.motoric-evaluation-section.neutral .motoric-evaluation-section-head > strong {
  color: #85620f;
  background: #fff2cf;
}

.motoric-evaluation-section.bad .motoric-evaluation-section-head > strong {
  color: #af3440;
  background: #fde9ec;
}

.motoric-evaluation-section > p,
.motoric-evaluation-development > p {
  margin: 0;
  color: var(--rd-muted);
  font-size: 0.82rem;
  line-height: 1.48;
}

.motoric-evaluation-metric-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 7px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.motoric-evaluation-metric-list > li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
  border: 1px solid var(--rd-border);
  border-left: 3px solid var(--rd-border-strong);
  border-radius: 6px;
  padding: 8px 9px;
  background: var(--rd-surface-alt);
}

.motoric-evaluation-metric-list > li.good {
  border-left-color: var(--rd-green);
}

.motoric-evaluation-metric-list > li.neutral,
.motoric-evaluation-metric-list > li.warn {
  border-left-color: var(--rd-amber);
}

.motoric-evaluation-metric-list > li.bad {
  border-left-color: var(--rd-red);
}

.motoric-evaluation-metric-list > li > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.motoric-evaluation-metric-list strong {
  color: var(--rd-text);
  font-size: 0.8rem;
}

.motoric-evaluation-metric-list small {
  color: var(--rd-muted);
  font-size: 0.69rem;
  line-height: 1.25;
}

.motoric-evaluation-metric-list .reference-pill {
  flex: 0 0 auto;
  min-height: 28px;
  padding: 4px 7px;
  font-size: 0.7rem;
}

.motoric-evaluation-development {
  display: grid;
  gap: 6px;
  border-top: 1px solid var(--rd-border);
  border-left: 3px solid var(--rd-green);
  padding: 14px 0 0 12px;
}

.motoric-evaluation-development.warn {
  border-left-color: var(--rd-amber);
}

.motoric-evaluation-development.neutral {
  border-left-color: var(--rd-border-strong);
}

.motoric-evaluation-development > strong {
  color: var(--rd-text);
  font-size: 0.9rem;
  line-height: 1.42;
}

@media (max-width: 760px) {
  .motoric-insight-stats {
    grid-template-columns: 1fr;
  }

  .motoric-development-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .motoric-insight-list > li {
    align-items: start;
    grid-template-columns: 1fr;
  }

  .motoric-insight-list .value-with-info,
  .motoric-development-result {
    justify-content: flex-start;
    justify-items: start;
    text-align: left;
  }

  .motoric-insight-section-head {
    align-items: flex-start;
    flex-direction: column;
    gap: 3px;
  }

  .motoric-insight-section-head > span {
    text-align: left;
  }

  .motoric-development-list > li {
    grid-template-columns: 1fr;
    gap: 9px;
  }

  .motoric-development-metric {
    border-right: 0;
    border-bottom: 1px solid var(--rd-border);
    padding: 0 0 9px;
  }

  .motoric-development-data {
    grid-template-columns: 1fr;
    gap: 9px;
  }

  .motoric-development-values {
    border-top: 1px solid var(--rd-border);
    border-bottom: 1px solid var(--rd-border);
    padding: 9px 2px;
  }

  .motoric-development-result {
    border-left: 0;
    padding-left: 0;
  }

  .motoric-development-overview,
  .motoric-priority-hero,
  .motoric-pace-callout,
  .motoric-evaluation-focus {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .motoric-evaluation-grid-head {
    align-items: start;
    flex-direction: column;
  }

  .motoric-evaluation-grid-head p {
    max-width: none;
    text-align: left;
  }

  .motoric-evaluation-context {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .motoric-development-overview-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .motoric-priority-goal {
    border-top: 1px solid rgba(95, 82, 35, 0.18);
    border-left: 0;
    padding: 12px 0 0;
  }

  .motoric-priority-hero.good .motoric-priority-goal {
    border-top-color: rgba(0, 120, 83, 0.18);
  }

  .motoric-priority-hero.bad .motoric-priority-goal {
    border-top-color: rgba(183, 49, 64, 0.2);
  }

  .motoric-evaluation-overview {
    grid-template-columns: 1fr;
  }

  .motoric-evaluation-overview > small {
    text-align: left;
  }

  .motoric-evaluation-metric-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 430px) {
  .motoric-development-summary {
    grid-template-columns: 1fr;
  }

  .motoric-development-overview-stats,
  .motoric-evaluation-context {
    grid-template-columns: 1fr;
  }

  .motoric-development-overview-stats > div,
  .motoric-evaluation-context > div {
    border-top: 1px solid var(--rd-border);
    border-left: 0;
    padding: 8px 0 0;
  }

  .motoric-development-overview-stats > div:first-child,
  .motoric-evaluation-context > div:first-child {
    border-top: 0;
    padding-top: 0;
  }
}

.motoric-trend-card .chart-card-head {
  align-items: flex-start;
}

.motoric-trend-controls {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: 8px;
  margin: 2px 0 14px;
  border-bottom: 1px solid var(--rd-border);
  padding-bottom: 14px;
}

.motoric-trend-controls label {
  display: grid;
  gap: 4px;
  min-width: 130px;
  color: var(--rd-muted);
  font-size: 0.68rem;
  font-weight: 800;
  line-height: 1.2;
  text-transform: uppercase;
}

.motoric-trend-controls select,
.motoric-trend-controls input {
  min-height: 36px;
  border: 1px solid var(--rd-border-strong);
  border-radius: 6px;
  padding: 7px 9px;
  color: var(--rd-text);
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
}

.motoric-trend-controls input {
  width: 116px;
}

.motoric-trend-controls .ghost-action {
  min-height: 36px;
  padding: 7px 10px;
  font-size: 0.76rem;
}

@media (max-width: 600px) {
  .motoric-trend-controls {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }

  .motoric-trend-controls label,
  .motoric-trend-controls input,
  .motoric-trend-controls select,
  .motoric-trend-controls .ghost-action {
    width: 100%;
    min-width: 0;
  }

  .motoric-trend-controls .ghost-action {
    grid-column: 1 / -1;
  }
}

/* Radar osszehasonlitasok */
.radar-comparison-card,
.report-radar-panel {
  overflow: hidden;
}

.radar-comparison-card {
  display: grid;
  gap: 14px;
}

.radar-comparison-head {
  margin-bottom: 0;
}

.radar-comparison-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  align-items: center;
  color: var(--rd-muted);
  font-size: 0.78rem;
  font-weight: 800;
}

.radar-comparison-legend span {
  display: inline-flex;
  gap: 8px;
  align-items: center;
}

.radar-legend-swatch {
  position: relative;
  display: inline-block;
  width: 31px;
  height: 10px;
}

.radar-legend-swatch::before,
.radar-legend-swatch::after {
  position: absolute;
  content: "";
}

.radar-legend-swatch::before {
  top: 4px;
  right: 0;
  left: 0;
  border-top: 3px solid var(--rd-green);
}

.radar-legend-swatch::after {
  top: 0;
  left: 11px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--rd-green);
}

.radar-legend-swatch.reference::before {
  border-top: 2px dashed #748398;
}

.radar-legend-swatch.reference::after {
  width: 9px;
  height: 9px;
  background: #748398;
}

.radar-comparison-chart {
  width: min(100%, 620px);
  max-width: 100%;
  margin: 0 auto;
}

.radar-comparison-chart .radar-ring {
  stroke: #d8e0e8;
  stroke-width: 1;
}

.radar-comparison-chart .radar-axis {
  stroke: #c5d0db;
}

.radar-comparison-chart .radar-area {
  fill: rgba(8, 122, 85, 0.14);
}

.radar-comparison-chart .radar-line {
  stroke: var(--rd-green);
  stroke-width: 3;
}

.radar-comparison-chart .radar-dot {
  fill: var(--rd-green);
  stroke: #fff;
  stroke-width: 2;
}

.radar-reference-line {
  fill: none;
  stroke: #748398;
  stroke-width: 2.4;
  stroke-dasharray: 7 6;
  stroke-linejoin: round;
}

.radar-reference-dot {
  fill: #fff;
  stroke: #748398;
  stroke-width: 2;
}

.radar-comparison-chart .radar-label {
  fill: var(--rd-text);
  font-size: 0.8rem;
  font-weight: 800;
}

.radar-comparison-chart .radar-scale {
  fill: var(--rd-muted);
  font-size: 0.71rem;
  font-weight: 800;
}

.radar-comparison-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.radar-summary-item {
  display: grid;
  gap: 4px;
  min-width: 0;
  border: 1px solid var(--rd-border);
  border-left: 4px solid var(--rd-border-strong);
  border-radius: 6px;
  padding: 12px 14px;
  background: var(--rd-surface-alt);
}

.radar-summary-item.good {
  border-left-color: var(--rd-green);
  background: var(--rd-green-soft);
}

.radar-summary-item.warn {
  border-left-color: var(--rd-amber);
  background: var(--rd-amber-soft);
}

.radar-summary-item.bad {
  border-left-color: var(--rd-red);
  background: var(--rd-red-soft);
}

.radar-summary-item small,
.radar-summary-item span {
  color: var(--rd-muted);
  font-size: 0.74rem;
  font-weight: 750;
  line-height: 1.3;
}

.radar-summary-item strong {
  overflow-wrap: anywhere;
  color: var(--rd-text);
  font-size: 1rem;
  line-height: 1.25;
}

.radar-comparison-note {
  margin: 0;
  border-top: 1px solid var(--rd-border);
  padding-top: 12px;
  color: var(--rd-muted);
  font-size: 0.78rem;
  line-height: 1.45;
}

.classification-section-radar {
  display: grid;
  gap: 12px;
  border: 1px solid var(--rd-border);
  border-radius: 6px;
  padding: 14px;
  background: var(--rd-surface-alt);
}

.classification-section-radar-head {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px 14px;
  align-items: start;
}

.classification-section-radar-head h5 {
  margin: 0 0 3px;
  color: var(--rd-text);
  font-size: 0.92rem;
  line-height: 1.25;
}

.classification-section-radar-head span,
.classification-section-radar-head small,
.classification-section-radar-note,
.classification-section-radar.is-empty p {
  color: var(--rd-muted);
  font-size: 0.76rem;
  font-weight: 700;
  line-height: 1.4;
}

.classification-section-radar-head small {
  border: 1px solid var(--rd-border-strong);
  border-radius: 999px;
  padding: 4px 8px;
  background: #fff;
}

.classification-section-radar .radar-comparison-chart {
  width: min(100%, 560px);
}

.classification-section-radar-note,
.classification-section-radar.is-empty p {
  margin: 0;
  border-top: 1px solid var(--rd-border);
  padding-top: 10px;
}

.classification-section-radar.is-empty {
  border-style: dashed;
  background: #fff;
}

@media (max-width: 640px) {
  .radar-comparison-card {
    gap: 12px;
  }

  .radar-comparison-chart {
    width: calc(100% + 16px);
    max-width: none;
    margin-left: -8px;
  }

  .radar-comparison-chart .radar-label {
    font-size: 0.7rem;
  }

  .radar-comparison-summary {
    grid-template-columns: 1fr;
  }

  .classification-section-radar {
    padding: 12px;
  }

  .classification-section-radar .radar-comparison-chart {
    width: calc(100% + 12px);
    margin-left: -6px;
  }
}

/* Edzői leadás: a használhatóan visszaadott és az amortizált tétel külön elszámolása. */
.coach-return-row {
  grid-template-columns: 64px minmax(180px, 1fr) minmax(122px, 0.36fr) minmax(104px, 0.32fr) minmax(126px, 0.4fr) minmax(170px, 0.52fr);
  align-items: center;
}

.coach-return-amortized {
  color: #835500;
}

.coach-return-amortized input {
  border-color: #e3bb65;
  background: #fff9e9;
}

.coach-return-status {
  border: 1px solid #a8d7ba;
  border-radius: 999px;
  padding: 6px 9px;
  color: #176b44;
  background: #edf8f1;
  font-size: 0.76rem;
  font-weight: 800;
  line-height: 1.25;
}

.coach-return-status.is-open {
  border-color: #e5a2a2;
  color: #a64040;
  background: #fff1f1;
}

@media (max-width: 900px) {
  .coach-return-row {
    grid-template-columns: 56px minmax(0, 1fr) repeat(2, minmax(118px, 0.5fr));
  }

  .coach-return-check,
  .coach-return-status {
    grid-column: 2 / -1;
  }
}

@media (max-width: 640px) {
  .coach-return-row {
    grid-template-columns: 56px minmax(0, 1fr);
  }

  .coach-return-check,
  .coach-return-quantity,
  .coach-return-status {
    grid-column: 2;
  }
}

/* E-mailes meghívó: a szerepkör és a csapathozzáférés egy műveletben előkészíthető. */
#leadershipPanel .technical-invitation-panel {
  display: grid;
  gap: 14px;
  border: 1px solid #b8dfce;
  border-left: 4px solid var(--rd-green);
  border-radius: var(--rd-radius);
  padding: 16px;
  color: var(--rd-text);
  background: #f3fbf7;
}

#leadershipPanel .technical-invitation-head {
  display: grid;
  gap: 4px;
}

#leadershipPanel .technical-invitation-head .eyebrow {
  margin: 0;
  color: var(--rd-green-dark) !important;
}

#leadershipPanel .technical-invitation-head h5 {
  margin: 0;
  color: var(--rd-text) !important;
  font-size: 1.08rem;
}

#leadershipPanel .technical-invitation-head span,
#leadershipPanel .technical-invitation-actions small {
  color: var(--rd-muted) !important;
  font-size: 0.8rem;
  font-weight: 650;
  line-height: 1.45;
}

#leadershipPanel .technical-invitation-form {
  display: grid;
  gap: 12px;
}

#leadershipPanel .technical-invitation-fields {
  display: grid;
  grid-template-columns: minmax(150px, 1fr) minmax(190px, 1.15fr) minmax(165px, 0.78fr);
  gap: 10px;
}

#leadershipPanel .technical-invitation-fields label {
  display: grid;
  gap: 5px;
  min-width: 0;
  color: var(--rd-muted) !important;
  font-size: 0.78rem;
  font-weight: 800;
}

#leadershipPanel .technical-invitation-fields input,
#leadershipPanel .technical-invitation-fields select {
  min-width: 0;
  border: 1px solid var(--rd-border-strong);
  border-radius: 6px;
  padding: 9px 10px;
  color: var(--rd-text);
  background: #fff;
  font: inherit;
}

#leadershipPanel .technical-invitation-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

#leadershipPanel .technical-invitation-actions .primary-action {
  flex: 0 0 auto;
}

#leadershipPanel .technical-invitation-feedback {
  margin: 0;
  padding: 11px 13px;
  border: 1px solid var(--rd-border-strong);
  border-radius: 7px;
  background: #f3f7fa;
  color: var(--rd-text);
  font-size: 0.8rem;
  font-weight: 750;
  line-height: 1.45;
}

#leadershipPanel .technical-invitation-feedback[data-tone="pending"] {
  border-color: #b7d8c8;
  background: #edf8f2;
  color: #176344;
}

#leadershipPanel .technical-invitation-feedback[data-tone="success"] {
  border-color: #83d2ad;
  background: #e4f7ed;
  color: #075e3b;
}

#leadershipPanel .technical-invitation-feedback[data-tone="error"] {
  border-color: #f0a2aa;
  background: #fff0f1;
  color: #9b1c2c;
}

#leadershipPanel .technical-invitation-picker {
  overflow: clip;
  border: 1px solid var(--rd-border-strong);
  border-radius: 9px;
  background: #fff;
}

#leadershipPanel .technical-invitation-picker[hidden] {
  display: none;
}

#leadershipPanel .technical-invitation-picker summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 46px;
  padding: 0 12px;
  color: var(--rd-text);
  cursor: pointer;
  font-size: 0.82rem;
  font-weight: 850;
  list-style: none;
}

#leadershipPanel .technical-invitation-picker-label {
  display: grid;
  gap: 2px;
  min-width: 0;
}

#leadershipPanel .technical-invitation-picker-label small {
  color: var(--rd-muted);
  font-size: 0.68rem;
  font-weight: 750;
}

#leadershipPanel .technical-invitation-picker-label strong {
  overflow: hidden;
  color: var(--rd-text);
  font-size: 0.83rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#leadershipPanel .technical-invitation-picker summary::-webkit-details-marker {
  display: none;
}

#leadershipPanel .technical-invitation-picker summary::after {
  width: 7px;
  height: 7px;
  margin-left: 2px;
  border-right: 2px solid var(--rd-green-dark);
  border-bottom: 2px solid var(--rd-green-dark);
  content: "";
  transform: rotate(45deg) translateY(-2px);
}

#leadershipPanel .technical-invitation-picker[open] summary::after {
  transform: rotate(225deg) translate(-2px, -1px);
}

#leadershipPanel .technical-invitation-picker summary b {
  margin-left: auto;
  border-radius: 999px;
  padding: 4px 8px;
  color: var(--rd-green-dark);
  background: #e7f5ed;
  font-size: 0.7rem;
  white-space: nowrap;
}

#leadershipPanel .technical-invitation-picker-body {
  display: grid;
  gap: 10px;
  border-top: 1px solid var(--rd-border);
  padding: 11px 12px 12px;
}

#leadershipPanel .technical-invitation-picker-note {
  color: var(--rd-muted);
  font-size: 0.75rem;
  font-weight: 650;
  line-height: 1.4;
}

#leadershipPanel .technical-invitation-team-grid {
  display: grid;
  gap: 5px;
  max-height: 260px;
  overflow-y: auto;
  padding-right: 3px;
}

#leadershipPanel .technical-invitation-team-grid label,
#leadershipPanel .technical-invitation-parent-player-list label {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  border: 1px solid var(--rd-border);
  border-radius: 7px;
  padding: 8px 9px;
  color: var(--rd-text);
  background: var(--rd-surface-alt);
  font-size: 0.76rem;
  font-weight: 800;
  cursor: pointer;
}

#leadershipPanel .technical-invitation-team-grid label {
  min-height: 38px;
  border-color: transparent;
  padding: 7px 9px;
  background: #f6f9fb;
}

#leadershipPanel .technical-invitation-team-grid label:hover {
  border-color: #a8d7c1;
  background: #eff8f3;
}

#leadershipPanel .technical-invitation-team-grid label:has(input:checked),
#leadershipPanel .technical-invitation-parent-player-list label:has(input:checked) {
  border-color: #6fd5a2;
  background: #e8f8ef;
}

#leadershipPanel .technical-invitation-team-grid input,
#leadershipPanel .technical-invitation-parent-player-list input {
  flex: 0 0 auto;
  width: 15px;
  height: 15px;
  margin: 0;
  accent-color: var(--rd-green-dark);
}

#leadershipPanel .technical-invitation-parent-search {
  display: flex;
  align-items: center;
  gap: 7px;
  border: 1px solid var(--rd-border-strong);
  border-radius: 7px;
  padding: 0 9px;
  color: var(--rd-muted);
  background: #fff;
}

#leadershipPanel .technical-invitation-team-search {
  display: flex;
  align-items: center;
  gap: 7px;
  border: 1px solid var(--rd-border-strong);
  border-radius: 7px;
  padding: 0 9px;
  color: var(--rd-muted);
  background: #fff;
}

#leadershipPanel .technical-invitation-team-search input {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: 0;
  padding: 9px 0;
  color: var(--rd-text);
  background: transparent;
}

#leadershipPanel .technical-invitation-picker-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

#leadershipPanel .technical-invitation-picker-actions button {
  border: 1px solid #b8d7c7;
  border-radius: 6px;
  padding: 6px 9px;
  color: var(--rd-green-dark);
  background: #f1f8f4;
  font: inherit;
  font-size: 0.7rem;
  font-weight: 800;
  cursor: pointer;
}

#leadershipPanel .technical-invitation-picker-actions button:hover {
  border-color: #74bd98;
  background: #e5f5ec;
}

#leadershipPanel .technical-invitation-parent-search input {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: 0;
  padding: 9px 0;
  color: var(--rd-text);
  background: transparent;
  font: inherit;
  font-size: 0.8rem;
}

#leadershipPanel .technical-invitation-parent-player-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
  gap: 7px;
  max-height: 244px;
  overflow: auto;
  padding-right: 3px;
}

#leadershipPanel .technical-invitation-parent-player-list label {
  align-items: flex-start;
}

#leadershipPanel .technical-invitation-parent-player-list label > span {
  display: grid;
  gap: 2px;
  min-width: 0;
}

#leadershipPanel .technical-invitation-parent-player-list strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#leadershipPanel .technical-invitation-parent-player-list small {
  color: var(--rd-muted);
  font-size: 0.68rem;
  font-weight: 700;
}

@media (max-width: 760px) {
  #leadershipPanel .technical-invitation-fields {
    grid-template-columns: 1fr;
  }

  #leadershipPanel .technical-invitation-actions {
    align-items: stretch;
    flex-direction: column;
  }

  #leadershipPanel .technical-invitation-actions .primary-action {
    width: 100%;
    justify-content: center;
  }
}

/* Szülői hozzáférés: kérelmek, jóváhagyás és tömeges meghívás. */
#leadershipPanel .parent-registration-requests-panel {
  display: grid;
  gap: 13px;
  border: 1px solid #a9d8c1;
  border-radius: 12px;
  padding: 15px;
  background: #f4fbf7;
}

#leadershipPanel .parent-registration-requests-head,
#leadershipPanel .parent-request-actions,
#leadershipPanel .parent-request-filters {
  display: flex;
  align-items: center;
  gap: 10px;
}

#leadershipPanel .parent-registration-requests-head { justify-content: space-between; }

#leadershipPanel .parent-registration-requests-head > div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

#leadershipPanel .parent-registration-requests-head .eyebrow {
  margin: 0;
  color: var(--rd-green-dark) !important;
}

#leadershipPanel .parent-registration-requests-head h5 {
  margin: 0;
  color: var(--rd-text) !important;
  font-size: 1.08rem;
}

#leadershipPanel .parent-registration-requests-head span {
  color: var(--rd-muted) !important;
  font-size: 0.8rem;
  font-weight: 650;
  line-height: 1.45;
}

#leadershipPanel .parent-request-kpis {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

#leadershipPanel .parent-request-kpis > div {
  display: grid;
  gap: 3px;
  min-width: 0;
  border: 1px solid var(--rd-border);
  border-radius: 8px;
  padding: 9px 10px;
  background: #fff;
}

#leadershipPanel .parent-request-kpis .is-warn { border-top: 3px solid var(--rd-gold); }
#leadershipPanel .parent-request-kpis .is-good { border-top: 3px solid var(--rd-green); }

#leadershipPanel .parent-request-kpis strong {
  color: var(--rd-navy-800);
  font-size: 1.22rem;
  line-height: 1;
}

#leadershipPanel .parent-request-kpis span {
  color: var(--rd-muted);
  font-size: 0.7rem;
  font-weight: 750;
  line-height: 1.2;
}

#leadershipPanel .parent-request-filters { flex-wrap: wrap; }

#leadershipPanel .parent-request-filters button {
  min-height: 34px;
  border: 1px solid var(--rd-border-strong);
  border-radius: 7px;
  padding: 6px 9px;
  color: var(--rd-muted);
  background: #fff;
  font: inherit;
  font-size: 0.75rem;
  font-weight: 800;
  cursor: pointer;
}

#leadershipPanel .parent-request-filters button.is-active {
  border-color: var(--rd-green);
  color: #fff;
  background: var(--rd-green-dark);
}

#leadershipPanel .parent-request-list { display: grid; gap: 7px; }

#leadershipPanel .parent-request-row {
  display: grid;
  grid-template-columns: minmax(160px, 1fr) minmax(175px, 1fr) minmax(130px, 0.72fr) auto;
  gap: 12px;
  align-items: center;
  border: 1px solid var(--rd-border);
  border-left: 4px solid #a9bac8;
  border-radius: 9px;
  padding: 10px 12px;
  background: #fff;
}

#leadershipPanel .parent-request-row.is-warn { border-left-color: var(--rd-gold); }
#leadershipPanel .parent-request-row.is-good { border-left-color: var(--rd-green); }
#leadershipPanel .parent-request-row.is-bad { border-left-color: var(--rd-danger); }

#leadershipPanel .parent-request-person,
#leadershipPanel .parent-request-child,
#leadershipPanel .parent-request-status {
  display: grid;
  gap: 3px;
  min-width: 0;
}

#leadershipPanel .parent-request-person strong,
#leadershipPanel .parent-request-child strong,
#leadershipPanel .parent-request-status b {
  overflow-wrap: anywhere;
  color: var(--rd-text);
}

#leadershipPanel .parent-request-person span,
#leadershipPanel .parent-request-person small,
#leadershipPanel .parent-request-child span,
#leadershipPanel .parent-request-status small {
  overflow-wrap: anywhere;
  color: var(--rd-muted);
  font-size: 0.74rem;
  font-weight: 650;
}

#leadershipPanel .parent-request-child-list,
.parent-request-dialog-children {
  display: grid;
  gap: 3px;
  min-width: 0;
}

#leadershipPanel .parent-request-child-list span,
.parent-request-dialog-children span {
  overflow-wrap: anywhere;
}

#leadershipPanel .parent-request-child-list span {
  color: var(--rd-muted);
  font-size: 0.74rem;
  font-weight: 650;
}

#leadershipPanel .parent-request-row.is-warn .parent-request-status b { color: #8a6100; }
#leadershipPanel .parent-request-row.is-good .parent-request-status b { color: #08714c; }
#leadershipPanel .parent-request-row.is-bad .parent-request-status b { color: #b13b49; }

#leadershipPanel .parent-request-actions {
  justify-content: flex-end;
  flex-wrap: wrap;
}

dialog.parent-request-approval-dialog {
  width: min(720px, calc(100vw - 32px));
  max-height: min(780px, calc(100vh - 32px));
  margin: auto;
  border: 1px solid var(--rd-border-strong);
  border-radius: 12px;
  padding: 0;
  color: var(--rd-text);
  background: #fff;
  box-shadow: 0 28px 80px rgba(23, 47, 66, 0.28);
}

dialog.parent-request-approval-dialog::backdrop { background: rgba(20, 35, 48, 0.48); }

.parent-request-approval-card {
  display: grid;
  gap: 13px;
  padding: 18px;
}

.parent-request-approval-card > header,
.parent-request-approval-card > footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.parent-request-approval-card > header > div { display: grid; gap: 3px; min-width: 0; }
.parent-request-approval-card .eyebrow { margin: 0; color: var(--rd-green-dark); }
.parent-request-approval-card h3 { margin: 0; color: var(--rd-text); font-size: 1.35rem; }

.parent-request-approval-card header span,
.parent-request-dialog-note {
  color: var(--rd-muted);
  font-size: 0.8rem;
  font-weight: 650;
  line-height: 1.45;
}

.parent-request-dialog-request {
  display: grid;
  gap: 4px;
  border-radius: 9px;
  padding: 10px 12px;
  background: var(--rd-surface-alt);
}

.parent-request-dialog-request strong { color: var(--rd-text); }
.parent-request-dialog-request span { color: var(--rd-muted); font-size: 0.82rem; font-weight: 700; }
.parent-request-dialog-children span { color: var(--rd-muted); font-size: 0.82rem; font-weight: 700; }

.parent-request-dialog-match-summary {
  display: grid;
  gap: 7px;
  border: 1px solid var(--rd-border);
  border-radius: 9px;
  padding: 10px 12px;
  background: #fff;
}

.parent-request-dialog-match-summary > strong { color: var(--rd-text); }

.parent-request-match {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 7px 8px;
  border-radius: 7px;
  color: var(--rd-text);
  background: var(--rd-surface-alt);
  font-size: 0.76rem;
  font-weight: 700;
}

.parent-request-match > span { min-width: 0; overflow-wrap: anywhere; }
.parent-request-match > b { flex: 0 0 auto; font-size: 0.72rem; }
.parent-request-match.is-good { background: #e8f8ef; }
.parent-request-match.is-good b { color: #08714c; }
.parent-request-match.is-warn { background: #fff5dc; }
.parent-request-match.is-warn b { color: #8a6100; }
.parent-request-match.is-bad { background: #fff0f1; }
.parent-request-match.is-bad b { color: #b13b49; }

.parent-request-selection-status {
  margin: 0;
  min-height: 1.25em;
  color: var(--rd-muted);
  font-size: 0.78rem;
  font-weight: 750;
}

.parent-request-selection-status.is-good { color: #08714c; }
.parent-request-selection-status.is-warn { color: #8a6100; }

.parent-request-player-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 7px;
  max-height: 285px;
  overflow: auto;
  padding-right: 3px;
}

.parent-request-player-list label {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  min-width: 0;
  border: 1px solid var(--rd-border);
  border-radius: 7px;
  padding: 8px 9px;
  color: var(--rd-text);
  background: var(--rd-surface-alt);
  font-size: 0.76rem;
  font-weight: 800;
  cursor: pointer;
}

.parent-request-player-list label:has(input:checked) { border-color: #6fd5a2; background: #e8f8ef; }
.parent-request-player-list input { flex: 0 0 auto; width: 15px; height: 15px; margin: 0; accent-color: var(--rd-green-dark); }
.parent-request-player-list label > span { display: grid; gap: 2px; min-width: 0; }
.parent-request-player-list strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.parent-request-player-list small { color: var(--rd-muted); font-size: 0.68rem; font-weight: 700; }

/* Szülői meghívók: a technikai importból épülő, tömeges meghívási felület. */
#leadershipPanel .parent-invitations-panel {
  display: grid;
  gap: 14px;
  border: 1px solid var(--rd-border);
  border-radius: 12px;
  padding: 15px;
  background: var(--rd-surface-alt);
}

#leadershipPanel .parent-invitations-head,
#leadershipPanel .parent-invitation-toolbar,
#leadershipPanel .parent-invitation-batch-actions,
#leadershipPanel .parent-invitation-filters {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

#leadershipPanel .parent-invitations-head > div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

#leadershipPanel .parent-invitations-head .eyebrow {
  margin: 0;
  color: var(--rd-green-dark) !important;
}

#leadershipPanel .parent-invitations-head h5 {
  margin: 0;
  color: var(--rd-text) !important;
  font-size: 1.08rem;
}

#leadershipPanel .parent-invitations-head span,
#leadershipPanel .parent-invitation-list-note {
  color: var(--rd-muted) !important;
  font-size: 0.8rem;
  font-weight: 650;
  line-height: 1.45;
}

#leadershipPanel .parent-invitation-kpis {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}

#leadershipPanel .parent-invitation-kpis > div {
  display: grid;
  gap: 3px;
  min-width: 0;
  border: 1px solid var(--rd-border);
  border-radius: 9px;
  padding: 10px;
  background: #fff;
}

#leadershipPanel .parent-invitation-kpis strong {
  color: var(--rd-navy-800);
  font-size: 1.3rem;
  line-height: 1;
}

#leadershipPanel .parent-invitation-kpis span {
  color: var(--rd-muted);
  font-size: 0.7rem;
  font-weight: 750;
  line-height: 1.2;
}

#leadershipPanel .parent-invitation-kpis .is-ready { border-top: 3px solid var(--rd-green); }
#leadershipPanel .parent-invitation-kpis .is-warn { border-top: 3px solid var(--rd-gold); }
#leadershipPanel .parent-invitation-kpis .is-good { border-top: 3px solid #12825a; }
#leadershipPanel .parent-invitation-kpis .is-bad { border-top: 3px solid var(--rd-danger); }

#leadershipPanel .parent-invitation-toolbar {
  align-items: flex-start;
  padding-top: 2px;
}

#leadershipPanel .parent-invitation-filters {
  flex-wrap: wrap;
  justify-content: flex-start;
}

#leadershipPanel .parent-invitation-filters button {
  min-height: 34px;
  border: 1px solid var(--rd-border-strong);
  border-radius: 7px;
  padding: 6px 9px;
  color: var(--rd-muted);
  background: #fff;
  font: inherit;
  font-size: 0.75rem;
  font-weight: 800;
  cursor: pointer;
}

#leadershipPanel .parent-invitation-filters button.is-active {
  border-color: var(--rd-green);
  color: #fff;
  background: var(--rd-green-dark);
}

#leadershipPanel .parent-invitation-batch-actions {
  flex-wrap: wrap;
  justify-content: flex-end;
}

#leadershipPanel .parent-invitation-batch-actions label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--rd-muted);
  font-size: 0.76rem;
  font-weight: 800;
}

#leadershipPanel .parent-invitation-batch-actions select {
  min-height: 34px;
  border: 1px solid var(--rd-border-strong);
  border-radius: 7px;
  padding: 5px 7px;
  color: var(--rd-text);
  background: #fff;
  font: inherit;
  font-weight: 750;
}

#leadershipPanel .parent-invitation-list,
#leadershipPanel .parent-invitation-missing-list {
  display: grid;
  gap: 7px;
}

#leadershipPanel .parent-invitation-row {
  display: grid;
  grid-template-columns: 30px minmax(160px, 0.95fr) minmax(240px, 1.25fr) minmax(145px, 0.7fr) 38px;
  gap: 12px;
  align-items: center;
  border: 1px solid var(--rd-border);
  border-left: 4px solid #a9bac8;
  border-radius: 9px;
  padding: 10px 12px;
  background: #fff;
}

#leadershipPanel .parent-invitation-row.is-ready { border-left-color: var(--rd-green); }
#leadershipPanel .parent-invitation-row.is-warn { border-left-color: var(--rd-gold); }
#leadershipPanel .parent-invitation-row.is-good { border-left-color: #12825a; }
#leadershipPanel .parent-invitation-row.is-bad { border-left-color: var(--rd-danger); }

#leadershipPanel .parent-invitation-select {
  display: inline-grid;
  place-items: center;
}

#leadershipPanel .parent-invitation-select input {
  width: 17px;
  height: 17px;
  accent-color: var(--rd-green-dark);
}

#leadershipPanel .parent-invitation-person,
#leadershipPanel .parent-invitation-status {
  display: grid;
  gap: 3px;
  min-width: 0;
}

#leadershipPanel .parent-invitation-person strong,
#leadershipPanel .parent-invitation-status b {
  color: var(--rd-text);
  overflow-wrap: anywhere;
}

#leadershipPanel .parent-invitation-person span,
#leadershipPanel .parent-invitation-status small {
  color: var(--rd-muted);
  overflow-wrap: anywhere;
  font-size: 0.75rem;
  font-weight: 650;
}

#leadershipPanel .parent-invitation-children {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  min-width: 0;
}

#leadershipPanel .parent-invitation-children > span {
  display: inline-flex;
  align-items: baseline;
  gap: 4px;
  max-width: 100%;
  border-radius: 999px;
  padding: 4px 7px;
  color: var(--rd-text);
  background: var(--rd-surface-alt);
  font-size: 0.74rem;
  font-weight: 800;
}

#leadershipPanel .parent-invitation-children small {
  color: var(--rd-muted);
  font-size: 0.67rem;
  font-weight: 700;
}

#leadershipPanel .parent-invitation-row.is-ready .parent-invitation-status b { color: var(--rd-green-dark); }
#leadershipPanel .parent-invitation-row.is-warn .parent-invitation-status b { color: #8a6100; }
#leadershipPanel .parent-invitation-row.is-good .parent-invitation-status b { color: #08714c; }
#leadershipPanel .parent-invitation-row.is-bad .parent-invitation-status b { color: #b13b49; }

#leadershipPanel .parent-invitation-remove {
  align-self: center;
  justify-self: end;
  border-color: #efb7be;
  color: #af3848;
  background: #fff6f7;
}

#leadershipPanel .parent-invitation-remove:hover {
  border-color: #d65767;
  color: #8c2736;
  background: #ffe9ec;
}

#leadershipPanel .parent-invitation-remove span {
  display: none;
}

#leadershipPanel .parent-invitation-missing-list > div {
  display: grid;
  grid-template-columns: minmax(150px, 0.7fr) minmax(100px, 0.4fr) minmax(0, 1fr);
  gap: 9px;
  align-items: center;
  border: 1px solid #efb7be;
  border-left: 4px solid var(--rd-danger);
  border-radius: 8px;
  padding: 9px 11px;
  color: var(--rd-text);
  background: #fff7f8;
}

#leadershipPanel .parent-invitation-missing-list span,
#leadershipPanel .parent-invitation-missing-list small {
  color: var(--rd-muted);
  font-size: 0.76rem;
  font-weight: 650;
}

#leadershipPanel .parent-invitation-notice {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  border: 1px solid #efb7be;
  border-radius: 8px;
  padding: 9px 11px;
  color: #8f2e3b;
  background: #fff3f4;
  font-size: 0.8rem;
  font-weight: 700;
  line-height: 1.4;
}

@media (max-width: 980px) {
  #leadershipPanel .parent-request-row {
    grid-template-columns: minmax(150px, 1fr) minmax(160px, 1fr) auto;
  }

  #leadershipPanel .parent-request-status {
    grid-column: 1 / 3;
  }

  #leadershipPanel .parent-invitation-kpis {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  #leadershipPanel .parent-invitation-toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  #leadershipPanel .parent-invitation-batch-actions {
    justify-content: flex-start;
  }

  #leadershipPanel .parent-invitation-row {
    grid-template-columns: 28px minmax(150px, 0.85fr) minmax(200px, 1.2fr) 38px;
  }

  #leadershipPanel .parent-invitation-status {
    grid-column: 2 / -1;
  }

  #leadershipPanel .parent-invitation-remove {
    grid-column: 4;
    grid-row: 1;
  }
}

@media (max-width: 640px) {
  #leadershipPanel .parent-registration-requests-head,
  .parent-request-approval-card > header,
  .parent-request-approval-card > footer {
    align-items: stretch;
    flex-direction: column;
  }

  #leadershipPanel .parent-registration-requests-head .ghost-action,
  #leadershipPanel .parent-request-actions .primary-action,
  .parent-request-approval-card > footer button {
    width: 100%;
    justify-content: center;
  }

  #leadershipPanel .parent-request-kpis {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  #leadershipPanel .parent-request-row {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  #leadershipPanel .parent-request-status {
    grid-column: auto;
  }

  #leadershipPanel .parent-request-actions {
    justify-content: stretch;
  }

  .parent-request-player-list {
    grid-template-columns: 1fr;
  }

  #leadershipPanel .parent-invitations-head {
    align-items: stretch;
    flex-direction: column;
  }

  #leadershipPanel .parent-invitations-head .ghost-action,
  #leadershipPanel .parent-invitation-batch-actions .primary-action {
    width: 100%;
    justify-content: center;
  }

  #leadershipPanel .parent-invitation-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #leadershipPanel .parent-invitation-batch-actions {
    align-items: stretch;
    flex-direction: column;
  }

  #leadershipPanel .parent-invitation-row {
    grid-template-columns: 28px minmax(0, 1fr) 38px;
    gap: 8px;
  }

  #leadershipPanel .parent-invitation-children,
  #leadershipPanel .parent-invitation-status {
    grid-column: 2;
  }

  #leadershipPanel .parent-invitation-remove {
    grid-column: 3;
    grid-row: 1;
  }

  #leadershipPanel .parent-invitation-missing-list > div {
    grid-template-columns: 1fr;
    gap: 3px;
  }
}

/* Vizuális stabilitás: hosszú tartalmak és keskeny nézetek. */
.login-screen {
  overflow-x: hidden;
  overflow-y: auto;
}

.coach-calendar-day {
  overflow: hidden;
}

.parent-calendar-day-events,
.coach-calendar-event-chip {
  min-width: 0;
  max-width: 100%;
}

.coach-calendar-event-chip {
  overflow: hidden;
  text-overflow: ellipsis;
}

.scout-record-card-top > strong {
  flex: 1 1 auto;
  min-width: 0;
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
  overflow-wrap: anywhere;
}

#leadershipPanel .technical-program-owner strong {
  overflow: visible;
  line-height: 1.25;
  text-overflow: clip;
  white-space: normal;
  overflow-wrap: anywhere;
}

.dashboard-activity-list,
.dashboard-activity-list button {
  min-width: 0;
  overflow: hidden;
}

.motoric-score-tile-head {
  flex-wrap: wrap;
}

.motoric-score-tile-head > span {
  flex: 1 1 120px;
  min-width: 0;
  overflow-wrap: anywhere;
}

.motoric-score-tile .reference-pill {
  max-width: 100%;
  white-space: normal;
}

.parent-portal-section,
.parent-child-report-list,
.parent-child-report-card,
.parent-child-report-card .player-report,
.export-table-panel {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.parent-child-report-card,
.export-table-panel {
  overflow: hidden;
}

.export-table-wrap {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  border: 1px solid var(--rd-border);
  border-radius: 7px;
  -webkit-overflow-scrolling: touch;
}

.export-table {
  width: 100%;
  min-width: max-content;
  border-collapse: collapse;
  color: var(--rd-text);
  background: #fff;
}

.export-table th,
.export-table td {
  border: 1px solid var(--rd-border);
  padding: 9px 10px;
  font-size: 0.76rem;
  line-height: 1.35;
  text-align: left;
  vertical-align: top;
}

.export-table th {
  color: var(--rd-text);
  background: var(--rd-surface-alt);
  font-weight: 800;
}

@media (max-width: 640px) {
  .reference-values-head {
    align-items: stretch;
    flex-direction: column;
  }

  .reference-values-head > strong {
    align-self: flex-start;
  }

  .reference-values-head h4 {
    overflow-wrap: anywhere;
  }

  .scout-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: visible;
  }

  .scout-tabs button {
    width: 100%;
    min-width: 0;
    justify-content: center;
    padding-inline: 8px;
  }

  .field-schedule-switch,
  .parent-portal-switch {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: visible;
  }

  .field-schedule-switch button,
  .parent-portal-switch button {
    width: 100%;
    min-width: 0;
    justify-content: center;
    white-space: normal;
  }

  .player-detail > .tabs {
    position: static;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: visible;
  }

  .player-detail > .tabs .tab {
    width: 100%;
    min-width: 0;
    justify-content: center;
    white-space: normal;
  }

  .parent-calendar-card {
    overflow-x: hidden;
  }

  .parent-calendar-grid {
    min-width: 0;
    gap: 3px;
  }

  .parent-calendar-grid > b {
    padding-inline: 0;
    font-size: 0.62rem;
  }

  .parent-calendar-day {
    min-height: 62px;
    padding: 4px 1px;
    border-radius: 6px;
  }

  .parent-calendar-day strong {
    font-size: 0.76rem;
  }

  .parent-calendar-event-link,
  .coach-calendar-event-chip {
    font-size: 0;
  }

  .parent-calendar-event-link b,
  .coach-calendar-event-chip b {
    display: block;
    margin: 0;
    overflow: hidden;
    font-size: 0.5rem;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .parent-calendar-day-status {
    overflow: hidden;
    font-size: 0.48rem;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .correction-group-reference-table .reference-values-row {
    grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
    width: 100%;
    min-width: 0;
    gap: 8px;
    padding: 9px 8px;
  }

  .correction-group-reference-table .reference-values-row > * {
    min-width: 0;
    overflow-wrap: anywhere;
  }

  .radar-comparison-chart,
  .classification-section-radar .radar-comparison-chart {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
  }
}

/* A korábbi globális belépési szabályok felülírása. */
.login-shell {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(250px, 0.8fr) minmax(390px, 1fr);
  width: min(960px, 100%);
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(11, 70, 58, 0.14);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 30px 80px rgba(6, 23, 43, 0.24);
}

.login-pwa-install {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) 18px;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-width: 0;
  min-height: 66px;
  border: 1px solid #086d4e;
  border-radius: 8px;
  padding: 10px 14px;
  color: #fff;
  background: var(--rd-green);
  font: inherit;
  text-align: left;
  cursor: pointer;
  box-shadow: 0 12px 28px rgba(7, 83, 61, 0.2);
  transition: background 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.login-pwa-install:hover,
.login-pwa-install.is-ready {
  border-color: #064e3b;
  color: #fff;
  background: var(--rd-green-dark);
  box-shadow: 0 14px 32px rgba(7, 83, 61, 0.26);
  transform: translateY(-1px);
}

.login-pwa-install.is-installed,
.login-pwa-install:disabled {
  border-color: #d4e0dc;
  color: #687b73;
  background: #eef3f1;
  cursor: default;
  box-shadow: none;
}

.login-pwa-install-icon {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border: 1px solid rgba(255, 255, 255, 0.26);
  border-radius: 7px;
  background: rgba(255, 255, 255, 0.12);
}

.login-pwa-install-icon svg {
  width: 21px;
  height: 21px;
}

.login-pwa-install-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.login-pwa-install-copy strong {
  overflow-wrap: anywhere;
  color: inherit;
  font-size: 0.92rem;
  font-weight: 900;
  line-height: 1.2;
}

.login-pwa-install-copy small {
  color: rgba(255, 255, 255, 0.78);
  font-size: 0.7rem;
  font-weight: 700;
  line-height: 1.25;
}

.login-pwa-install-arrow {
  width: 18px;
  height: 18px;
}

.login-pwa-install.is-installed .login-pwa-install-icon {
  border-color: #ccd9d4;
  background: #e0e9e5;
}

.login-pwa-install.is-installed .login-pwa-install-copy small {
  color: #687b73;
}

.login-showcase {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  overflow: hidden;
  padding: clamp(28px, 5vw, 62px);
  color: #fff;
  background: var(--rd-navy-950);
}

.login-showcase::before {
  content: "KELEN";
  position: absolute;
  right: -0.12em;
  bottom: 0.1em;
  color: rgba(255, 255, 255, 0.055);
  font-size: clamp(4.5rem, 10vw, 8rem);
  font-weight: 900;
  line-height: 0.8;
  letter-spacing: 0;
  pointer-events: none;
}

.login-showcase-crest {
  position: relative;
  display: grid;
  place-items: center;
  width: 224px;
  height: 238px;
  margin: -8px 0 24px;
}

.login-showcase-crest::after {
  content: "";
  position: absolute;
  right: 20%;
  bottom: 4px;
  left: 20%;
  height: 18px;
  border-radius: 50%;
  background: rgba(0, 18, 13, 0.34);
  filter: blur(8px);
  transform: scaleY(0.48);
  pointer-events: none;
}

.login-showcase-crest-stage {
  position: relative;
  display: block;
  z-index: 1;
  width: 220px;
  height: 230px;
}

.login-showcase-crest-canvas,
.login-showcase-crest-fallback {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.login-showcase-crest-canvas {
  opacity: 0;
  transition: opacity 220ms ease;
}

.login-showcase-crest-fallback {
  padding: 14px;
  object-fit: contain;
  filter: drop-shadow(0 18px 16px rgba(0, 24, 17, 0.28));
  transition: opacity 180ms ease;
}

.login-showcase-crest-stage.is-ready .login-showcase-crest-canvas {
  opacity: 1;
}

.login-showcase-crest-stage.is-ready .login-showcase-crest-fallback {
  opacity: 0;
}

.login-showcase-copy {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 7px;
}

.login-showcase-copy .eyebrow {
  margin: 0;
  color: #8de0bb;
}

.login-showcase-copy strong {
  color: #fff;
  font-size: clamp(2rem, 4vw, 3.25rem);
  line-height: 1;
  letter-spacing: 0;
}

.login-showcase-copy span {
  max-width: 30ch;
  color: rgba(255, 255, 255, 0.72);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.login-showcase-line {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 3px;
  margin-top: 36px;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.14);
}

.login-showcase-line span {
  display: block;
  width: 42%;
  height: 100%;
  background: #19c77d;
  animation: login-line-sweep 4.2s ease-in-out infinite;
}

.login-screen {
  display: grid;
  place-items: center;
  min-height: 100svh;
  overflow: auto;
  padding: clamp(18px, 4vw, 48px);
  background: linear-gradient(90deg, var(--rd-navy-950) 0 37%, #f5f8f7 37% 100%) !important;
}

.login-screen::before {
  display: none;
}

.login-screen::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(10, 146, 96, 0.16) 0 1px, transparent 1px) 12% 0 / 11px 100% no-repeat,
    linear-gradient(0deg, rgba(255, 255, 255, 0.1) 0 1px, transparent 1px) 0 88% / 100% 11px no-repeat;
}

.login-shell .login-card {
  width: 100%;
  min-width: 0;
  min-height: 100%;
  border: 0;
  border-radius: 0;
  padding: clamp(26px, 4vw, 48px);
  box-shadow: none;
}

.login-shell .login-brand {
  display: none;
}

.login-shell .login-copy {
  position: relative;
  isolation: isolate;
  gap: 2px;
  margin-bottom: 2px;
  overflow: hidden;
  border: 1px solid #cfe5dc;
  border-top: 4px solid var(--rd-green);
  border-radius: 6px;
  padding: 16px 20px 18px;
  background: #f1f8f5;
}

.login-shell .login-copy::after {
  content: "1926";
  position: absolute;
  top: 50%;
  right: 18px;
  z-index: -1;
  color: rgba(6, 103, 71, 0.07);
  font-family: "Barlow Condensed Kelen", "Arial Narrow", sans-serif;
  font-size: 4.8rem;
  font-weight: 800;
  line-height: 1;
  transform: translateY(-50%);
}

.login-shell .login-copy h2 {
  display: flex;
  align-items: baseline;
  gap: 0.2em;
  width: 100%;
  max-width: none;
  padding: 0;
  font-family: "Barlow Condensed Kelen", "Arial Narrow", "Segoe UI", sans-serif;
  font-size: clamp(2.15rem, 3.6vw, 2.8rem);
  font-weight: 800;
  line-height: 0.96;
  letter-spacing: 0;
  text-wrap: balance;
}

.login-shell .auth-title-prefix {
  display: inline-block;
  flex: 0 0 auto;
  margin-bottom: 0;
  color: var(--rd-green-dark);
  font-size: 0.82em;
  font-weight: 800;
  line-height: 1;
  text-transform: none;
  white-space: nowrap;
}

.login-shell .auth-title-accent {
  display: inline-block;
  color: var(--rd-text);
  font-size: 1em;
  font-weight: 800;
  line-height: 0.96;
  white-space: nowrap;
}

.login-shell .auth-title-accent::after {
  content: none;
}

.login-shell .login-copy h2.is-registration-title {
  font-size: clamp(1.95rem, 3.1vw, 2.4rem);
}

.login-shell .login-copy p:last-child {
  max-width: 44ch;
}

.login-shell .login-status {
  align-items: flex-start;
  padding: 14px 15px;
}

.login-shell .sync-login.login-form {
  padding: 0;
  background: transparent;
}

.login-shell .auth-mode-switch {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr);
}

.login-shell .auth-mode-switch button {
  min-width: 0;
  padding-inline: 12px;
  overflow-wrap: anywhere;
}

.login-shell .parent-registration-child-card {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.login-shell .parent-registration-child-card > label {
  display: grid;
  gap: 6px;
  overflow-wrap: anywhere;
}

@keyframes login-line-sweep {
  0%, 100% { transform: translateX(-12%); }
  50% { transform: translateX(135%); }
}

@media (prefers-reduced-motion: reduce) {
  .login-showcase-line span {
    animation: none;
  }
}

@media (max-width: 760px) {
  .login-screen {
    display: block;
    overflow: auto;
    padding: 16px;
    background: #f5f8f7 !important;
  }

  .login-screen::after {
    background: linear-gradient(180deg, var(--rd-navy-950) 0 188px, transparent 188px 100%);
  }

  .login-shell {
    display: block;
    margin: 0 auto;
    overflow: visible;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }

  .login-pwa-install {
    position: relative;
    top: auto;
    right: auto;
    left: auto;
    width: 100%;
    min-height: 62px;
    border-color: #086d4e;
    padding: 9px 12px;
    color: #fff;
    background: var(--rd-green);
    box-shadow: 0 10px 24px rgba(7, 83, 61, 0.18);
    backdrop-filter: none;
  }

  .login-pwa-install:hover,
  .login-pwa-install.is-ready {
    border-color: #064e3b;
    color: #fff;
    background: var(--rd-green-dark);
  }

  .login-showcase {
    min-height: 172px;
    padding: 22px 20px 30px;
    border-radius: 12px 12px 0 0;
  }

  .login-showcase::before {
    font-size: 5.5rem;
  }

  .login-showcase-crest {
    position: absolute;
    top: 20px;
    right: 14px;
    width: 116px;
    height: 126px;
    margin: 0;
  }

  .login-showcase-crest-stage {
    width: 112px;
    height: 120px;
  }

  .login-showcase-copy {
    max-width: calc(100% - 132px);
  }

  .login-showcase-copy strong {
    font-size: 2.15rem;
  }

  .login-showcase-line {
    margin-top: 18px;
  }

  .login-shell .login-card {
    border: 1px solid var(--rd-border);
    border-top: 0;
    border-radius: 0 0 12px 12px;
    padding: 22px 18px;
    background: #fff;
    box-shadow: 0 18px 45px rgba(6, 23, 43, 0.14);
  }

  .login-shell .login-copy h2 {
    display: flex;
    flex-wrap: wrap;
    gap: 0.2em;
    width: 100%;
    max-width: none;
    padding: 0;
    font-size: 2.05rem;
  }

  .login-shell .login-copy h2.is-registration-title {
    font-size: 1.85rem;
  }

  .login-shell .login-copy {
    padding: 15px 17px 17px;
  }

  .login-shell .login-copy::after {
    right: 14px;
    font-size: 4rem;
  }

  .login-shell .auth-mode-switch {
    grid-template-columns: 1fr;
  }

  .login-shell .auth-mode-switch button {
    min-height: 46px;
  }

  .login-shell .parent-registration-child-card {
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 14px;
  }
}

/* Szuloi riportok: elkulonitett meresi teruletek es egyetlen tablazatgorgetes. */
.parent-child-report-head {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  padding: 14px 16px;
  border-bottom: 1px solid var(--rd-border);
  background: var(--rd-surface-alt);
}

.parent-child-report-head .avatar {
  flex: 0 0 auto;
}

.parent-child-report-head > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.parent-child-report-head strong {
  color: var(--rd-text);
  font-size: 1.05rem;
  overflow-wrap: anywhere;
}

.parent-child-report-head span {
  color: var(--rd-muted);
  font-size: 0.88rem;
  overflow-wrap: anywhere;
}

.parent-child-report-content {
  display: grid;
  gap: 0;
  min-width: 0;
  padding: 0 16px 18px;
  background: #edf2f5;
}

.parent-child-report-content > *,
.parent-report-feedback-grid {
  min-width: 0;
}

.parent-report-feedback-grid {
  grid-template-columns: minmax(0, 1fr);
}

.parent-report-section {
  display: grid;
  gap: 15px;
  min-width: 0;
  margin: 0 -16px;
  padding: 24px 16px 28px;
  border-top: 1px solid #d8e3e9;
  background: #fff;
}

.parent-report-section + .parent-report-section {
  border-top: 9px solid #e3eaee;
}

.parent-report-section-head {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  min-width: 0;
}

.parent-report-section-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  border: 1px solid #bfe2d1;
  border-radius: 7px;
  color: var(--rd-green-dark);
  background: #e3f6ed;
}

.parent-report-section-icon svg {
  width: 21px;
  height: 21px;
}

.parent-report-section-head > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.parent-report-section-head > div > span {
  color: var(--rd-green-dark);
  font-size: 0.68rem;
  font-weight: 850;
  line-height: 1.2;
  text-transform: uppercase;
}

.parent-report-section-head h5 {
  margin: 0;
  color: var(--rd-text);
  font-size: 1.2rem;
  line-height: 1.22;
  overflow-wrap: anywhere;
}

.parent-report-section-head p {
  margin: 0;
  color: var(--rd-muted);
  font-size: 0.78rem;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.parent-report-section-body {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.parent-report-section-body > .report-panel,
.parent-report-section-body > .chart-card,
.parent-report-section-body > .feedback-grid {
  min-width: 0;
  margin: 0;
}

.parent-report-section-motoric-overview {
  background: #f4fbf7;
}

.parent-report-section-motoric-evaluation,
.parent-report-section-classification-overview {
  background: #fffaf0;
}

.parent-report-section-motoric-evaluation .parent-report-section-icon,
.parent-report-section-classification-overview .parent-report-section-icon {
  border-color: #ead395;
  color: #835b05;
  background: #fff1c9;
}

.parent-report-section-motoric-evaluation .parent-report-section-head > div > span,
.parent-report-section-classification-overview .parent-report-section-head > div > span {
  color: #835b05;
}

.parent-report-section-motoric-radar,
.parent-report-section-classification-details {
  background: #f4f8fb;
}

.parent-report-section-motoric-radar .parent-report-section-icon,
.parent-report-section-classification-details .parent-report-section-icon {
  border-color: #c9d9eb;
  color: #315f88;
  background: #e9f2fb;
}

.parent-report-section-motoric-radar .parent-report-section-head > div > span,
.parent-report-section-classification-details .parent-report-section-head > div > span {
  color: #315f88;
}

.parent-report-section-motoric-trend {
  background: #f2faf8;
}

.parent-report-section .motoric-evaluation-grid-section {
  border: 1px solid #d8e3e9;
  border-radius: 7px;
  padding: 14px;
  background: #fff;
}

.parent-report-section .motoric-evaluation-grid-section + .motoric-evaluation-grid-section {
  margin-top: 12px;
  background: #f6f9fb;
}

.parent-report-section .motoric-pace-callout {
  margin-top: 0;
}

.parent-measurement-selector {
  display: grid;
  grid-template-columns: minmax(180px, 0.8fr) minmax(340px, 1.25fr) auto;
  gap: 16px;
  align-items: end;
  min-width: 0;
  border: 1px solid #cfe0da;
  border-left: 5px solid var(--rd-green);
  border-radius: 8px;
  margin: 18px 0 22px;
  padding: 15px 17px;
  background: linear-gradient(135deg, #f2fbf6, #ffffff);
}

.parent-measurement-selector.is-empty {
  grid-template-columns: minmax(0, 1fr);
  border-left-color: var(--rd-border-strong);
  background: var(--rd-surface-alt);
}

.parent-measurement-selector-copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.parent-measurement-selector-copy > span,
.parent-measurement-selector-fields label > span {
  color: var(--rd-muted);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}

.parent-measurement-selector-copy > strong {
  color: var(--rd-text);
  font-size: 1.05rem;
  line-height: 1.25;
}

.parent-measurement-selector-copy > small {
  color: var(--rd-muted);
  font-size: 0.76rem;
  line-height: 1.4;
}

.parent-measurement-selector-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(150px, 1fr));
  gap: 10px;
  min-width: 0;
}

.parent-measurement-selector-fields label {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.parent-measurement-selector-fields select {
  width: 100%;
  min-width: 0;
  height: 42px;
  border: 1px solid var(--rd-border-strong);
  border-radius: 7px;
  padding: 0 34px 0 11px;
  background-color: #fff;
  color: var(--rd-text);
  font: inherit;
  font-size: 0.84rem;
  font-weight: 750;
}

.parent-measurement-selector-fields select:focus {
  border-color: var(--rd-green);
  box-shadow: 0 0 0 3px rgba(8, 133, 95, 0.12);
  outline: 0;
}

.parent-measurement-selector-status {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 36px;
  border: 1px solid #c6e8d9;
  border-radius: 999px;
  padding: 7px 11px;
  background: #e6f7ef;
  color: var(--rd-green-dark);
  font-size: 0.74rem;
  font-weight: 800;
  line-height: 1.25;
  white-space: nowrap;
}

.parent-measurement-selector-status.is-history {
  border-color: #c9d9eb;
  background: #eef5fb;
  color: #315e83;
}

.parent-measurement-selector-status svg {
  flex: 0 0 17px;
  width: 17px;
  height: 17px;
}

.sidebar-tool-action[data-parent-shop] {
  text-decoration: none;
}

.report-results-table {
  display: block;
  width: 100%;
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: thin;
  -webkit-overflow-scrolling: touch;
}

.report-results-table > .report-results-head,
.report-results-table > .report-results-row,
.profile-report-visual .report-results-table > .report-results-head,
.profile-report-visual .report-results-table > .report-results-row {
  width: 100%;
  min-width: 720px;
  overflow: visible;
}

.report-results-date-cell time {
  width: 100%;
  text-align: center;
}

.report-results-date-cell time span {
  display: block;
  white-space: nowrap;
}

@media (max-width: 760px) {
  .parent-child-report-content {
    padding: 0 10px 14px;
  }

  .parent-report-section {
    gap: 12px;
    margin: 0 -10px;
    padding: 19px 10px 22px;
  }

  .parent-report-section + .parent-report-section {
    border-top-width: 7px;
  }

  .parent-report-section-head {
    gap: 10px;
  }

  .parent-report-section-icon {
    width: 36px;
    height: 36px;
    flex-basis: 36px;
  }

  .parent-report-section-icon svg {
    width: 18px;
    height: 18px;
  }

  .parent-report-section-head h5 {
    font-size: 1.05rem;
  }

  .parent-report-section-head p {
    font-size: 0.73rem;
  }

  .parent-measurement-selector {
    margin: 12px 0 16px;
  }

  .parent-measurement-selector {
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
    align-items: stretch;
    padding: 13px;
  }

  .parent-measurement-selector-fields {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .parent-measurement-selector-status {
    justify-self: start;
    white-space: normal;
  }

  .report-results-table > .report-results-head,
  .report-results-table > .report-results-row,
  .profile-report-visual .report-results-table > .report-results-head,
  .profile-report-visual .report-results-table > .report-results-row {
    min-width: 680px;
    overflow: visible;
  }
}

@media (max-width: 430px) {
  .parent-measurement-selector-fields {
    grid-template-columns: minmax(0, 1fr);
  }

  .parent-measurement-selector-status {
    width: 100%;
    justify-content: center;
  }
}

/* Szuloi motorikus osszegzes: a jatekos erteke az elsodleges, a csapatatlag a kontextus. */
.parent-motoric-score-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(190px, 0.65fr);
  min-width: 0;
  overflow: hidden;
  border: 1px solid #cfe0da;
  border-left: 5px solid var(--rd-green);
  border-radius: 8px;
  background: #fff;
}

.parent-motoric-score-hero.warn {
  border-left-color: #df7882;
}

.parent-motoric-score-hero.bad {
  border-left-color: #d83c49;
}

.parent-motoric-score-hero.neutral {
  border-left-color: #e1b13a;
}

.parent-motoric-score-main,
.parent-motoric-team-average {
  display: grid;
  align-content: center;
  min-width: 0;
}

.parent-motoric-score-main {
  gap: 7px;
  padding: 20px 22px;
  background: linear-gradient(135deg, #e6f7ef, #f8fcfa);
}

.parent-motoric-score-main > span,
.parent-motoric-team-average > span {
  color: var(--rd-muted);
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}

.parent-motoric-score-main .value-with-info,
.parent-motoric-team-average .value-with-info {
  justify-content: flex-start;
  flex-wrap: nowrap;
}

.parent-motoric-score-main .value-with-info > strong {
  color: var(--rd-green-dark);
  font-size: 3rem;
  line-height: 1;
}

.parent-motoric-score-main > small,
.parent-motoric-team-average > small {
  color: var(--rd-muted);
  font-size: 0.75rem;
  line-height: 1.35;
}

.parent-motoric-team-average {
  gap: 5px;
  border-left: 1px solid var(--rd-border);
  padding: 18px;
  background: var(--rd-surface-alt);
}

.parent-motoric-team-average .value-with-info > strong {
  color: var(--rd-text);
  font-size: 1.35rem;
  line-height: 1.1;
}

@media (max-width: 760px) {
  #parentChildPanel .parent-portal-switch {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 4px;
    overflow: visible;
  }

  #parentChildPanel .parent-portal-switch button {
    width: 100%;
    min-width: 0;
    gap: 4px;
    justify-content: center;
    padding: 8px 4px;
    font-size: 0.66rem;
    white-space: nowrap;
  }

  #parentChildPanel .parent-portal-switch button svg {
    width: 17px;
    height: 17px;
  }

  .parent-child-report-head {
    padding: 11px 12px;
  }

  .parent-child-report-head .avatar.large {
    width: 56px;
    height: 56px;
  }

  .parent-child-report-content {
    padding: 0 10px 14px;
  }

  .parent-motoric-score-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .parent-motoric-score-main {
    padding: 17px;
  }

  .parent-motoric-score-main .value-with-info > strong {
    font-size: 2.7rem;
  }

  .parent-motoric-team-average {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    border-top: 1px solid var(--rd-border);
    border-left: 0;
    padding: 12px 17px;
  }

  .parent-motoric-team-average .value-with-info {
    justify-self: end;
  }

  .parent-motoric-team-average > small {
    grid-column: 1 / -1;
  }

  #parentChildPanel .parent-child-report-content .info-bubble {
    position: fixed;
    right: 12px;
    bottom: 82px;
    left: 12px;
    width: auto;
    transform: translateY(4px);
  }

  #parentChildPanel .parent-child-report-content .info-bubble::after {
    display: none;
  }

  #parentChildPanel .parent-child-report-content .info-tip:hover .info-bubble,
  #parentChildPanel .parent-child-report-content .info-tip:focus .info-bubble {
    transform: translateY(0);
  }
}

@media (max-width: 360px) {
  #parentChildPanel .parent-portal-switch button {
    gap: 2px;
    font-size: 0.58rem;
  }

  #parentChildPanel .parent-portal-switch button svg {
    width: 15px;
    height: 15px;
  }
}

/* Szülői ortopédiai riport: közérthető, nyomtatható jelentésnézet. */
.parent-orthopedic-report {
  display: grid;
  gap: 0;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--rd-border);
  border-radius: 8px;
  color: var(--rd-text);
  background: #edf2f5;
}

.parent-ortho-report-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  min-width: 0;
  border: 0;
  border-radius: 0;
  padding: 22px 24px;
  background: #edf8f3;
}

.parent-ortho-report-band {
  display: grid;
  gap: 16px;
  min-width: 0;
  border-top: 9px solid #e3eaee;
  padding: 24px 20px 28px;
  background: #fff;
}

.parent-ortho-overview-band {
  background: #f4f8fb;
}

.parent-ortho-band-head {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  min-width: 0;
}

.parent-ortho-band-head > span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  border: 1px solid #bfe2d1;
  border-radius: 7px;
  color: var(--rd-green-dark);
  background: #e3f6ed;
}

.parent-ortho-overview-band .parent-ortho-band-head > span {
  border-color: #c9d9eb;
  color: #315f88;
  background: #e9f2fb;
}

.parent-ortho-band-head svg {
  width: 21px;
  height: 21px;
}

.parent-ortho-band-head > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.parent-ortho-band-head small {
  color: var(--rd-green-dark);
  font-size: 0.68rem;
  font-weight: 850;
  line-height: 1.2;
}

.parent-ortho-overview-band .parent-ortho-band-head small {
  color: #315f88;
}

.parent-ortho-band-head h5 {
  margin: 0;
  color: var(--rd-text);
  font-size: 1.2rem;
  line-height: 1.22;
  overflow-wrap: anywhere;
}

.parent-orthopedic-report > .parent-ortho-section {
  border: 0;
  border-top: 9px solid #e3eaee;
  border-radius: 0;
  padding: 24px 20px 28px;
}

.parent-orthopedic-report > .parent-ortho-fms-section {
  background: #fff;
}

.parent-orthopedic-report > .parent-ortho-recommendations {
  border-left: 5px solid var(--rd-green);
  background: #fffaf0;
}

.parent-ortho-brand {
  display: flex;
  align-items: center;
  gap: 16px;
  min-width: 0;
}

.parent-ortho-brand img {
  width: 58px;
  height: 72px;
  flex: 0 0 auto;
  object-fit: contain;
}

.parent-ortho-brand > div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.parent-ortho-brand span,
.parent-ortho-section-head span {
  color: var(--rd-green-dark);
  font-size: 0.7rem;
  font-weight: 850;
  letter-spacing: 0;
}

.parent-ortho-brand h5,
.parent-ortho-section-head h5 {
  margin: 0;
  color: var(--rd-text);
  overflow-wrap: anywhere;
}

.parent-ortho-brand h5 {
  font-size: 1.55rem;
  line-height: 1.1;
}

.parent-ortho-brand p {
  margin: 0;
  color: var(--rd-muted);
  font-size: 0.83rem;
  line-height: 1.4;
}

.parent-ortho-report-date {
  display: grid;
  grid-template-columns: auto auto;
  align-items: center;
  gap: 2px 8px;
  flex: 0 0 auto;
  border-left: 1px solid #bed8cd;
  padding-left: 22px;
}

.parent-ortho-report-date svg {
  grid-row: 1 / 3;
  width: 23px;
  height: 23px;
  color: var(--rd-green);
}

.parent-ortho-report-date span {
  color: var(--rd-muted);
  font-size: 0.68rem;
  font-weight: 800;
  text-transform: uppercase;
}

.parent-ortho-report-date strong {
  color: var(--rd-text);
  font-size: 0.98rem;
  white-space: nowrap;
}

.parent-ortho-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  min-width: 0;
}

.parent-ortho-summary-tile {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-content: center;
  gap: 3px 10px;
  min-width: 0;
  min-height: 98px;
  overflow: hidden;
  border: 1px solid var(--rd-border);
  border-top: 4px solid var(--rd-green);
  border-radius: 8px;
  padding: 16px;
  background: #fff;
}

.parent-ortho-summary-tile > svg {
  grid-row: 1 / 3;
  align-self: center;
  width: 25px;
  height: 25px;
  color: var(--rd-green);
}

.parent-ortho-summary-tile > span {
  min-width: 0;
  color: var(--rd-muted);
  font-size: 0.69rem;
  font-weight: 800;
  line-height: 1.25;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}

.parent-ortho-summary-tile > strong {
  min-width: 0;
  color: var(--rd-text);
  font-size: 1rem;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.parent-ortho-summary-tile.warn {
  border-top-color: #dca62e;
  background: #fffbef;
}

.parent-ortho-summary-tile.warn > svg {
  color: #a56d00;
}

.parent-ortho-summary-tile.bad {
  border-top-color: #d24a56;
  background: #fff5f5;
}

.parent-ortho-summary-tile.bad > svg {
  color: #b32d3b;
}

.parent-ortho-summary-tile.neutral {
  border-top-color: #4f82bb;
  background: #f5f9fd;
}

.parent-ortho-summary-tile.neutral > svg {
  color: #2e6ca7;
}

.parent-ortho-summary-tile.missing {
  border-top-color: #aebdca;
  background: #f7f9fb;
}

.parent-ortho-summary-tile.missing > svg {
  color: #7d8f9e;
}

.parent-ortho-overview-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, 0.65fr);
  gap: 18px;
  min-width: 0;
}

.parent-ortho-section {
  min-width: 0;
  border: 1px solid var(--rd-border);
  border-radius: 8px;
  padding: 20px;
  background: #fff;
}

.parent-ortho-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-width: 0;
  margin-bottom: 18px;
}

.parent-ortho-section-head > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.parent-ortho-section-head h5 {
  font-size: 1.12rem;
  line-height: 1.2;
}

.parent-ortho-section-head > strong {
  max-width: 48%;
  border-radius: 999px;
  padding: 7px 10px;
  font-size: 0.75rem;
  line-height: 1.25;
  text-align: center;
}

.parent-ortho-section-head > strong.good {
  color: #08724f;
  background: #e3f6ed;
}

.parent-ortho-section-head > strong.warn {
  color: #835b05;
  background: #fff1c9;
}

.parent-ortho-section-head > strong.neutral {
  color: #315f88;
  background: #e9f2fb;
}

.parent-ortho-section-head > strong.missing {
  color: #647789;
  background: #edf2f6;
}

.parent-ortho-step-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(44px, 1fr));
  gap: 8px;
  min-width: 0;
}

.parent-ortho-step {
  display: grid;
  place-items: center;
  gap: 4px;
  min-width: 0;
  min-height: 62px;
  border: 1px solid #bfe2d1;
  border-radius: 7px;
  color: #08724f;
  background: #eaf8f1;
}

.parent-ortho-step span {
  font-size: 1.05rem;
  font-weight: 850;
}

.parent-ortho-step svg {
  width: 16px;
  height: 16px;
}

.parent-ortho-step.bad {
  border-color: #efb0b5;
  color: #ad2e3b;
  background: #fff0f1;
}

.parent-ortho-step.missing {
  border-color: #d9e2e9;
  color: #7c8e9d;
  background: #f4f7f9;
}

.parent-ortho-step-notes {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 12px;
}

.parent-ortho-step-notes span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  max-width: 100%;
  border: 1px solid #f0c5c9;
  border-radius: 999px;
  padding: 6px 9px;
  color: #79303a;
  background: #fff6f6;
  font-size: 0.72rem;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.parent-ortho-step-notes b {
  flex: 0 0 auto;
}

.parent-ortho-section-note {
  margin: 14px 0 0;
  border-top: 1px solid var(--rd-border);
  padding-top: 12px;
  color: var(--rd-muted);
  font-size: 0.72rem;
  line-height: 1.45;
}

.parent-ortho-posture-visuals {
  display: grid;
  gap: 10px;
}

.parent-ortho-finding {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  min-width: 0;
  border: 1px solid #c9e2d7;
  border-radius: 8px;
  padding: 14px;
  background: #f3fbf7;
}

.parent-ortho-finding-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  color: #08724f;
  background: #dff4e9;
}

.parent-ortho-finding-icon svg {
  width: 22px;
  height: 22px;
}

.parent-ortho-finding > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.parent-ortho-finding > div > span {
  color: var(--rd-muted);
  font-size: 0.68rem;
  font-weight: 800;
  text-transform: uppercase;
}

.parent-ortho-finding > div > strong {
  color: var(--rd-text);
  font-size: 0.88rem;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.parent-ortho-finding.warn {
  border-color: #ead395;
  background: #fffaf0;
}

.parent-ortho-finding.warn .parent-ortho-finding-icon {
  color: #8a6007;
  background: #fff0c6;
}

.parent-ortho-finding.bad {
  border-color: #efb0b5;
  background: #fff3f4;
}

.parent-ortho-finding.bad .parent-ortho-finding-icon {
  color: #ad2e3b;
  background: #f9dfe2;
}

.parent-ortho-finding.missing {
  border-color: #d8e1e8;
  background: #f6f8fa;
}

.parent-ortho-finding.missing .parent-ortho-finding-icon {
  color: #708493;
  background: #e8eef2;
}

.parent-ortho-fms-layout {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  align-items: center;
  gap: 26px;
  min-width: 0;
}

.parent-ortho-fms-ring {
  display: grid;
  place-items: center;
  width: 168px;
  height: 168px;
  margin: 0 auto;
  border-radius: 50%;
  background: conic-gradient(var(--rd-green) var(--parent-fms-progress), #e5edf2 0);
}

.parent-ortho-fms-ring::before {
  content: "";
  grid-area: 1 / 1;
  width: 126px;
  height: 126px;
  border-radius: 50%;
  background: #fff;
}

.parent-ortho-fms-ring > div {
  z-index: 1;
  grid-area: 1 / 1;
  display: grid;
  gap: 3px;
  text-align: center;
}

.parent-ortho-fms-ring strong {
  color: var(--rd-green-dark);
  font-size: 2rem;
  line-height: 1;
}

.parent-ortho-fms-ring span {
  max-width: 100px;
  color: var(--rd-muted);
  font-size: 0.67rem;
  line-height: 1.25;
}

.parent-ortho-fms-patterns {
  display: grid;
  gap: 7px;
  min-width: 0;
}

.parent-ortho-fms-pattern {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 96px 26px;
  align-items: center;
  gap: 12px;
  min-width: 0;
  border-bottom: 1px solid var(--rd-border);
  padding: 8px 0;
}

.parent-ortho-fms-pattern:last-child {
  border-bottom: 0;
}

.parent-ortho-fms-pattern > div:first-child {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.parent-ortho-fms-pattern strong,
.parent-ortho-fms-pattern span {
  overflow-wrap: anywhere;
}

.parent-ortho-fms-pattern strong {
  color: var(--rd-text);
  font-size: 0.82rem;
}

.parent-ortho-fms-pattern span {
  color: var(--rd-muted);
  font-size: 0.67rem;
}

.parent-ortho-fms-pattern > b {
  color: #08724f;
  font-size: 1rem;
  text-align: right;
}

.parent-ortho-fms-pattern.warn > b {
  color: #9a6a00;
}

.parent-ortho-fms-pattern.bad > b {
  color: #b02d3b;
}

.parent-ortho-fms-pattern.missing > b {
  color: #7c8e9d;
}

.parent-ortho-fms-scale {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 4px;
}

.parent-ortho-fms-scale i {
  height: 8px;
  border-radius: 999px;
  background: #dfe7ec;
}

.parent-ortho-fms-pattern.good .parent-ortho-fms-scale i.is-filled {
  background: var(--rd-green);
}

.parent-ortho-fms-pattern.warn .parent-ortho-fms-scale i.is-filled {
  background: #dca62e;
}

.parent-ortho-fms-pattern.bad .parent-ortho-fms-scale i.is-filled {
  background: #d24a56;
}

.parent-ortho-recommendations {
  border-left: 5px solid var(--rd-green);
}

.parent-ortho-recommendation-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.parent-ortho-recommendation {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 11px;
  min-width: 0;
  border: 1px solid #d4e1e8;
  border-top: 4px solid #6f8ba2;
  border-radius: 8px;
  padding: 14px;
  background: #f8fafb;
}

.parent-ortho-recommendation.bad {
  border-color: #efb0b5;
  border-top-color: #d24a56;
  background: #fff4f5;
}

.parent-ortho-recommendation.warn {
  border-color: #ead395;
  border-top-color: #dca62e;
  background: #fffaf0;
}

.parent-ortho-recommendation-icon {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  color: #4d6f89;
  background: #e7eef3;
}

.parent-ortho-recommendation.bad .parent-ortho-recommendation-icon {
  color: #ad2e3b;
  background: #f9dfe2;
}

.parent-ortho-recommendation.warn .parent-ortho-recommendation-icon {
  color: #8a6007;
  background: #fff0c6;
}

.parent-ortho-recommendation-icon svg {
  width: 18px;
  height: 18px;
}

.parent-ortho-recommendation > div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.parent-ortho-recommendation > div > span {
  color: var(--rd-muted);
  font-size: 0.65rem;
  font-weight: 850;
  text-transform: uppercase;
}

.parent-ortho-recommendation > div > strong {
  color: var(--rd-text);
  font-size: 0.9rem;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.parent-ortho-recommendation small {
  color: var(--rd-muted);
  font-size: 0.69rem;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.parent-ortho-alert,
.parent-ortho-optional,
.parent-ortho-all-good,
.parent-ortho-empty {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  min-width: 0;
  border-radius: 8px;
  padding: 15px;
}

.parent-ortho-alert {
  margin-bottom: 10px;
  color: #8e2633;
  background: #ffeaec;
}

.parent-ortho-optional {
  margin-top: 10px;
  color: #315f88;
  background: #edf5fc;
}

.parent-ortho-all-good {
  color: #08724f;
  background: #e9f8f1;
}

.parent-ortho-empty {
  color: #50687b;
  background: #f3f6f8;
}

.parent-ortho-alert > svg,
.parent-ortho-optional > svg,
.parent-ortho-all-good > svg,
.parent-ortho-empty > svg {
  width: 26px;
  height: 26px;
}

.parent-ortho-alert > div,
.parent-ortho-optional > div,
.parent-ortho-all-good > div,
.parent-ortho-empty > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.parent-ortho-alert strong,
.parent-ortho-optional strong,
.parent-ortho-all-good strong,
.parent-ortho-empty strong {
  color: inherit;
  font-size: 0.9rem;
}

.parent-ortho-alert span,
.parent-ortho-optional span,
.parent-ortho-all-good span,
.parent-ortho-empty span,
.parent-ortho-optional p {
  margin: 0;
  color: inherit;
  font-size: 0.72rem;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.parent-ortho-report-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  border-top: 1px solid var(--rd-border);
  padding: 12px 8px 2px;
  color: var(--rd-muted);
  font-size: 0.7rem;
  line-height: 1.4;
  text-align: center;
}

.parent-ortho-report-footer img {
  width: 20px;
  height: 26px;
  object-fit: contain;
}

.parent-ortho-empty-report {
  padding: 18px;
  background: #fff;
}

@media (max-width: 980px) {
  .parent-ortho-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .parent-ortho-overview-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .parent-ortho-recommendation-list {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 760px) {
  .parent-orthopedic-report {
    gap: 0;
  }

  .parent-ortho-report-header {
    align-items: flex-start;
    flex-direction: column;
    gap: 16px;
    padding: 17px;
  }

  .parent-ortho-brand {
    align-items: flex-start;
    gap: 12px;
  }

  .parent-ortho-brand img {
    width: 44px;
    height: 55px;
  }

  .parent-ortho-brand h5 {
    font-size: 1.25rem;
  }

  .parent-ortho-report-date {
    width: 100%;
    border-top: 1px solid #bed8cd;
    border-left: 0;
    padding-top: 12px;
    padding-left: 0;
  }

  .parent-ortho-summary-grid {
    gap: 8px;
  }

  .parent-ortho-report-band,
  .parent-orthopedic-report > .parent-ortho-section {
    border-top-width: 7px;
    padding: 19px 14px 22px;
  }

  .parent-ortho-band-head {
    gap: 10px;
  }

  .parent-ortho-band-head > span {
    width: 36px;
    height: 36px;
    flex-basis: 36px;
  }

  .parent-ortho-band-head svg {
    width: 18px;
    height: 18px;
  }

  .parent-ortho-band-head h5 {
    font-size: 1.05rem;
  }

  .parent-ortho-summary-tile {
    min-height: 88px;
    padding: 13px;
  }

  .parent-ortho-section {
    padding: 16px 14px;
  }

  .parent-ortho-section-head {
    align-items: flex-start;
    flex-direction: column;
    gap: 9px;
    margin-bottom: 14px;
  }

  .parent-ortho-section-head > strong {
    max-width: 100%;
    text-align: left;
  }

  .parent-ortho-step-grid {
    grid-template-columns: repeat(4, minmax(44px, 1fr));
    gap: 6px;
  }

  .parent-ortho-step {
    min-height: 56px;
  }

  .parent-ortho-fms-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 20px;
  }

  .parent-ortho-fms-ring {
    width: 148px;
    height: 148px;
  }

  .parent-ortho-fms-ring::before {
    width: 110px;
    height: 110px;
  }

  .parent-ortho-fms-pattern {
    grid-template-columns: minmax(0, 1fr) 74px 22px;
    gap: 8px;
  }
}

@media (max-width: 420px) {
  .parent-ortho-summary-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .parent-ortho-summary-tile {
    min-height: 78px;
  }

  .parent-ortho-step-grid {
    grid-template-columns: repeat(3, minmax(44px, 1fr));
  }

  .parent-ortho-fms-pattern {
    grid-template-columns: minmax(0, 1fr) 54px 18px;
  }

  .parent-ortho-fms-pattern strong {
    font-size: 0.76rem;
  }

  .parent-ortho-report-footer {
    align-items: flex-start;
    text-align: left;
  }
}

/* Korrekciós foglalkozások */
.correction-hero {
  align-items: center;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
}

.correction-hero .data-hero-logo {
  align-items: center;
  background: #e8f7f0;
  color: #08724f;
  display: flex;
  justify-content: center;
}

.correction-hero .data-hero-logo svg {
  height: 34px;
  width: 34px;
}

.correction-hero > div:nth-child(2) > span {
  color: #60778b;
  display: block;
  font-size: 0.86rem;
  line-height: 1.45;
  margin-top: 5px;
}

.correction-type-section,
.correction-selected-type {
  background: #fff;
  border: 1px solid #d8e4ed;
  border-radius: 8px;
  box-shadow: 0 12px 30px rgba(19, 47, 71, 0.06);
  margin-top: 18px;
  padding: 22px;
}

.correction-type-section .section-heading {
  margin-bottom: 18px;
}

.correction-type-section .section-heading h4,
.correction-selected-type h4 {
  color: #132b40;
  font-size: 1.35rem;
  margin: 3px 0 0;
}

.correction-type-section .section-heading span,
.correction-selected-type > div > span {
  color: #60778b;
  display: block;
  font-size: 0.84rem;
  line-height: 1.45;
  margin-top: 5px;
}

.correction-type-grid {
  display: grid;
  gap: 11px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.correction-type-card {
  align-items: center;
  background: #f8fbfd;
  border: 1px solid #d7e3eb;
  border-radius: 8px;
  color: #163047;
  cursor: pointer;
  display: grid;
  font: inherit;
  gap: 12px;
  grid-template-columns: 46px minmax(0, 1fr) auto 20px;
  min-height: 92px;
  padding: 13px;
  text-align: left;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
  width: 100%;
}

.correction-type-card:hover,
.correction-type-card:focus-visible {
  border-color: #54b692;
  box-shadow: 0 9px 22px rgba(8, 114, 79, 0.1);
  outline: 0;
  transform: translateY(-1px);
}

.correction-type-icon,
.correction-manager-detail-icon {
  align-items: center;
  background: #e0f5eb;
  border: 1px solid #bce3d2;
  border-radius: 7px;
  color: #087451;
  display: inline-flex;
  height: 46px;
  justify-content: center;
  width: 46px;
}

.correction-type-icon svg,
.correction-manager-detail-icon svg {
  height: 23px;
  width: 23px;
}

.correction-type-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.correction-type-copy strong {
  color: #132c41;
  font-size: 0.94rem;
}

.correction-type-copy small {
  color: #62798c;
  font-size: 0.75rem;
  line-height: 1.4;
}

.correction-type-availability {
  color: #087451;
  display: grid;
  font-size: 0.78rem;
  font-weight: 850;
  gap: 2px;
  justify-items: end;
  white-space: nowrap;
}

.correction-type-availability small {
  color: #718597;
  font-size: 0.65rem;
  font-weight: 700;
}

.correction-type-availability.is-empty {
  color: #8a6b24;
}

.correction-selected-type {
  align-items: center;
  display: grid;
  gap: 14px;
  grid-template-columns: auto 46px minmax(0, 1fr);
}

.correction-selected-type > .ghost-action {
  align-self: stretch;
}

.correction-manager-layout {
  align-items: start;
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1.55fr) minmax(310px, 0.8fr);
}

.correction-parent-layout {
  display: block;
}

.correction-manager-detail {
  background: #fff;
  border: 1px solid #d8e4ed;
  border-radius: 8px;
  box-shadow: 0 12px 30px rgba(19, 47, 71, 0.06);
  display: grid;
  gap: 16px;
  margin-top: 18px;
  min-height: 300px;
  padding: 20px;
}

.correction-manager-detail.is-empty {
  align-content: center;
  justify-items: center;
  text-align: center;
}

.correction-manager-detail.is-empty h4 {
  color: #183249;
  margin: 0;
}

.correction-manager-detail.is-empty p {
  color: #60778b;
  line-height: 1.5;
  margin: 0;
  max-width: 30ch;
}

.correction-manager-detail > header {
  align-items: start;
  border-bottom: 1px solid #e0e8ef;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding-bottom: 14px;
}

.correction-manager-detail > header h4 {
  color: #132c41;
  font-size: 1.15rem;
  margin: 2px 0 5px;
}

.correction-manager-detail > header span {
  color: #62798c;
  font-size: 0.76rem;
  line-height: 1.4;
}

.correction-manager-capacity {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.correction-manager-capacity span {
  background: #f1f8f5;
  border: 1px solid #d4e8df;
  border-radius: 7px;
  color: #4b6678;
  display: grid;
  font-size: 0.72rem;
  gap: 2px;
  padding: 10px;
}

.correction-manager-capacity strong {
  color: #087451;
  font-size: 1.25rem;
}

.correction-manager-roster > strong {
  color: #20394e;
  display: block;
  margin-bottom: 9px;
}

.correction-manager-roster ul {
  display: grid;
  gap: 7px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.correction-manager-roster li {
  align-items: center;
  background: #f7fafc;
  border: 1px solid #e0e8ef;
  border-radius: 7px;
  display: grid;
  gap: 3px 9px;
  grid-template-columns: 28px minmax(0, 1fr);
  padding: 9px;
}

.correction-manager-roster li > span {
  align-items: center;
  background: #e0f5eb;
  border-radius: 50%;
  color: #087451;
  display: flex;
  font-size: 0.74rem;
  font-weight: 850;
  grid-row: 1 / 3;
  height: 28px;
  justify-content: center;
  width: 28px;
}

.correction-manager-roster li strong {
  color: #183249;
  font-size: 0.83rem;
}

.correction-manager-roster li small,
.correction-manager-roster > p {
  color: #667d90;
  font-size: 0.7rem;
  margin: 0;
  overflow-wrap: anywhere;
}

.correction-manager-actions {
  border-top: 1px solid #e0e8ef;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: auto;
  padding-top: 13px;
}

.correction-calendar-help {
  align-items: center;
  color: #60778b;
  display: flex;
  font-size: 0.75rem;
  gap: 7px;
  margin: 12px 0 0;
}

.correction-calendar-help svg {
  height: 16px;
  width: 16px;
}

.correction-calendar-day.is-manager-day {
  cursor: pointer;
}

.correction-calendar-day.is-manager-day:hover,
.correction-calendar-day.is-manager-day:focus-visible {
  border-color: #69bfa0;
  box-shadow: inset 0 0 0 1px #69bfa0;
  outline: 0;
}

.correction-session-card.is-highlighted {
  animation: correction-card-highlight 1.35s ease;
}

@keyframes correction-card-highlight {
  0%,
  100% {
    box-shadow: none;
  }
  35% {
    box-shadow: 0 0 0 4px rgba(9, 135, 94, 0.18);
  }
}

#correctionSessionDialog .correction-session-dialog-card {
  max-width: 720px;
}

#correctionSessionDialog .correction-session-dialog-card label,
#correctionSessionDialog .correction-session-dialog-card h3,
#correctionSessionDialog .correction-session-dialog-card .dialog-subtitle,
#correctionSessionDialog .correction-session-dialog-card .dialog-form-note,
#correctionSessionDialog .coach-program-repeat legend,
#correctionSessionDialog .coach-repeat-weekdays > span {
  color: #152b3f;
}

#correctionSessionDialog .correction-session-dialog-card input,
#correctionSessionDialog .correction-session-dialog-card select,
#correctionSessionDialog .correction-session-dialog-card textarea {
  background: #fff;
  border: 1px solid #cfdce7;
  color: #152b3f;
}

#correctionSessionDialog .correction-session-dialog-card input[type="checkbox"] {
  appearance: auto;
  accent-color: #087451;
  height: 18px;
  margin: 0;
  min-height: 0;
  padding: 0;
  width: 18px;
}

#correctionSessionDialog .coach-repeat-weekdays label {
  background: #fff;
  border-color: #d3e0e8;
  color: #152b3f;
}

.correction-session-form,
.correction-calendar-card,
.correction-session-section {
  background: #fff;
  border: 1px solid #d8e4ed;
  border-radius: 8px;
  box-shadow: 0 12px 30px rgba(19, 47, 71, 0.06);
  margin-top: 18px;
  padding: 22px;
}

.correction-session-form .section-heading,
.correction-session-section .section-heading {
  align-items: end;
  display: flex;
  gap: 18px;
  justify-content: space-between;
  margin-bottom: 18px;
}

.correction-session-form h4,
.correction-session-section h4 {
  color: #132b40;
  font-size: 1.35rem;
  margin: 3px 0 0;
}

.correction-form-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: 1.3fr 0.8fr 0.65fr 1.1fr;
}

.correction-form-grid label {
  color: #40566b;
  display: grid;
  font-size: 0.82rem;
  font-weight: 800;
  gap: 7px;
}

.correction-form-grid input,
.correction-form-grid textarea {
  background: #f8fbfd;
  border: 1px solid #cfdce7;
  border-radius: 6px;
  color: #152b3f;
  font: inherit;
  min-height: 44px;
  padding: 10px 12px;
  width: 100%;
}

.correction-form-grid input:focus,
.correction-form-grid textarea:focus {
  border-color: #0a8a60;
  box-shadow: 0 0 0 3px rgba(10, 138, 96, 0.12);
  outline: 0;
}

.correction-form-note {
  grid-column: 1 / -1;
}

.correction-form-actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 14px;
}

.correction-calendar-head {
  align-items: center;
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) 44px;
  margin-bottom: 18px;
  text-align: center;
}

.correction-calendar-head strong {
  color: #132b40;
  display: block;
  font-size: 1.25rem;
  text-transform: capitalize;
}

.correction-calendar-weekdays,
.correction-calendar-grid {
  display: grid;
  gap: 7px;
  grid-template-columns: repeat(7, minmax(0, 1fr));
}

.correction-calendar-weekdays {
  margin-bottom: 7px;
}

.correction-calendar-weekdays b {
  color: #698095;
  font-size: 0.74rem;
  text-align: center;
}

.correction-calendar-day {
  background: #f7fafc;
  border: 1px solid #e0e8ef;
  border-radius: 6px;
  min-height: 96px;
  overflow: hidden;
  padding: 8px;
}

.correction-calendar-day > strong {
  color: #40566b;
  display: block;
  font-size: 0.8rem;
  margin-bottom: 6px;
}

.correction-calendar-session-chip {
  background: #daf4e9;
  border-left: 3px solid #09875e;
  border-bottom: 0;
  border-right: 0;
  border-top: 0;
  border-radius: 4px;
  color: #075a40;
  display: block;
  font-family: inherit;
  font-size: 0.68rem;
  font-weight: 750;
  line-height: 1.25;
  margin-top: 4px;
  overflow: hidden;
  padding: 5px 6px;
  text-align: left;
  text-overflow: ellipsis;
  width: 100%;
}

.correction-calendar-session-chip:hover,
.correction-calendar-session-chip:focus-visible {
  background: #c9eddf;
  outline: 2px solid rgba(9, 135, 94, 0.22);
  outline-offset: 1px;
}

.correction-calendar-session-chip b {
  display: block;
  font-size: 0.62rem;
}

.correction-calendar-day > em {
  color: #63778a;
  display: block;
  font-size: 0.66rem;
  margin-top: 4px;
}

.correction-calendar-day.is-muted {
  opacity: 0.42;
}

.correction-calendar-day.has-session {
  background: #f0faf6;
  border-color: #a9dcc8;
}

.correction-session-list {
  display: grid;
  gap: 14px;
}

.correction-session-card {
  border: 1px solid #d6e3ec;
  border-left: 5px solid #0a8a60;
  border-radius: 8px;
  padding: 18px;
}

.correction-session-card.is-full {
  border-left-color: #d69b22;
}

.correction-session-card > header {
  align-items: start;
  display: flex;
  gap: 16px;
  justify-content: space-between;
}

.correction-session-card h4 {
  color: #142c41;
  font-size: 1.18rem;
  margin: 2px 0 0;
}

.correction-capacity-badge {
  align-items: center;
  background: #e1f6ec;
  border: 1px solid #b0e2ce;
  border-radius: 999px;
  color: #08704f;
  display: inline-flex;
  flex: 0 0 auto;
  font-weight: 850;
  gap: 7px;
  padding: 7px 11px;
}

.correction-capacity-badge.is-full {
  background: #fff3d9;
  border-color: #ebcb85;
  color: #805600;
}

.correction-capacity-badge svg,
.correction-session-meta svg,
.correction-participant-list svg {
  height: 17px;
  width: 17px;
}

.correction-session-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 9px 18px;
  margin-top: 13px;
}

.correction-session-meta span {
  align-items: center;
  color: #526b80;
  display: inline-flex;
  font-size: 0.86rem;
  font-weight: 700;
  gap: 6px;
}

.correction-session-note {
  color: #526b80;
  line-height: 1.55;
  margin: 12px 0 0;
}

.correction-participant-list {
  border-top: 1px solid #e1e9ef;
  margin-top: 15px;
  padding-top: 14px;
}

.correction-participant-list > strong {
  color: #20394e;
  display: block;
  margin-bottom: 8px;
}

.correction-participant-list > div {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.correction-participant-list span {
  align-items: center;
  background: #edf5f1;
  border-radius: 999px;
  color: #1d5543;
  display: inline-flex;
  font-size: 0.8rem;
  font-weight: 750;
  gap: 5px;
  padding: 6px 9px;
}

.correction-player-bookings {
  border-top: 1px solid #e1e9ef;
  display: grid;
  gap: 9px;
  margin-top: 15px;
  padding-top: 14px;
}

.correction-player-bookings > div {
  align-items: center;
  background: #f7fafc;
  border: 1px solid #e2e9ef;
  border-radius: 7px;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding: 9px 10px;
}

.correction-player-bookings > div > span {
  align-items: center;
  color: #183249;
  display: flex;
  gap: 9px;
  min-width: 0;
}

.correction-player-bookings .player-avatar {
  flex: 0 0 34px;
  height: 34px;
  width: 34px;
}

.correction-player-bookings .is-booked {
  border-color: #86d4b4;
  color: #08704f;
}

.correction-session-actions {
  align-items: center;
  border-top: 1px solid #e1e9ef;
  color: #61778a;
  display: flex;
  font-size: 0.82rem;
  font-weight: 750;
  justify-content: space-between;
  margin-top: 14px;
  padding-top: 12px;
}

.event-type-correction {
  --event-accent: #087f62;
}

.parent-calendar-day.event-type-correction:not(.has-response) {
  background: #e8f7f1;
  border-color: #8fd4bd;
}

.parent-calendar-event-link.event-type-correction,
.parent-calendar-response-item.event-type-correction {
  border-color: #5eb999;
  color: #075d45;
}

.parent-calendar-day-status.correction {
  background: #d8f2e8;
  color: #086648;
}

.parent-calendar-correction-note {
  color: #567083;
  display: block;
  font-size: 0.75rem;
  line-height: 1.4;
}

.coach-feedback-panel {
  gap: 18px;
  border-color: #92c9b1;
  border-radius: 10px;
  padding: 18px;
  color: var(--rd-text);
  background: #ffffff;
  box-shadow: 0 14px 34px rgba(23, 59, 43, 0.12);
}

.coach-feedback-panel-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  border: 1px solid var(--rd-border);
  border-radius: 8px;
  padding: 16px;
  background: #f7faf8;
}

.coach-feedback-panel-head > div:first-child {
  gap: 6px;
}

.coach-feedback-panel-head h4,
.coach-feedback-roster-head strong,
.coach-feedback-roster-head span,
.coach-feedback-roster ul,
.coach-actual-attendance-head h5,
.coach-actual-player strong {
  color: var(--rd-text);
}

.coach-feedback-panel-head span,
.coach-feedback-roster p,
.coach-actual-attendance-head span {
  color: var(--rd-muted);
}

.coach-feedback-panel-head h4 {
  font-size: 1.35rem;
}

.coach-feedback-panel-head > div:first-child > span {
  color: #526b5f;
  font-size: 0.82rem;
  line-height: 1.45;
}

.coach-feedback-panel-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: end;
  gap: 7px;
}

.coach-feedback-panel-actions button {
  width: auto;
  min-height: 38px;
  border-radius: 7px;
  padding: 8px 11px;
  font-size: 0.74rem;
}

.coach-feedback-panel-actions .ghost-action {
  border-color: #a8c9b9;
  color: #075d40;
  background: #ffffff;
}

.coach-feedback-panel-actions .ghost-action:hover,
.coach-feedback-panel-actions .ghost-action:focus-visible {
  border-color: #08774d;
  color: #ffffff;
  background: #08774d;
}

.coach-feedback-panel-actions .danger-action {
  border-color: #c94944;
  color: #ffffff;
  background: #b6252a;
}

.coach-feedback-summary-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 12px;
}

.coach-feedback-summary-head > div {
  display: grid;
  gap: 3px;
}

.coach-feedback-summary-head strong {
  color: var(--rd-text);
  font-size: 0.98rem;
  font-weight: 900;
}

.coach-feedback-summary-head span {
  color: var(--rd-muted);
  font-size: 0.76rem;
  font-weight: 700;
}

.coach-feedback-summary-head > b {
  border-radius: 999px;
  padding: 6px 10px;
  color: #075d40;
  background: #e3f3ea;
  font-size: 0.72rem;
  font-weight: 900;
  white-space: nowrap;
}

.coach-feedback-roster-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.coach-feedback-status-card {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-width: 0;
  min-height: 92px;
  border: 1px solid var(--rd-border);
  border-radius: 8px;
  padding: 12px;
}

.coach-feedback-status-card.attending {
  border-color: #94d6b6;
  background: #e9f8f0;
}

.coach-feedback-status-card.absent {
  border-color: #efb3af;
  background: #fff0ef;
}

.coach-feedback-status-card.undecided {
  border-color: #e8cb78;
  background: #fff7dc;
}

.coach-feedback-status-icon {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 50%;
  color: #08774d;
  background: #ffffff;
  box-shadow: inset 0 0 0 1px rgba(8, 119, 77, 0.18);
}

.coach-feedback-status-card.absent .coach-feedback-status-icon {
  color: #ae302c;
  box-shadow: inset 0 0 0 1px rgba(174, 48, 44, 0.2);
}

.coach-feedback-status-card.undecided .coach-feedback-status-icon {
  color: #8b6500;
  box-shadow: inset 0 0 0 1px rgba(139, 101, 0, 0.2);
}

.coach-feedback-status-icon svg {
  width: 21px;
  height: 21px;
}

.coach-feedback-status-card > div {
  display: grid;
  gap: 1px;
  min-width: 0;
}

.coach-feedback-status-card strong {
  color: var(--rd-text);
  font-size: 1.55rem;
  font-weight: 950;
  line-height: 1;
}

.coach-feedback-status-card span:not(.coach-feedback-status-icon) {
  color: #263f33;
  font-size: 0.78rem;
  font-weight: 900;
  line-height: 1.25;
}

.coach-feedback-status-card small {
  color: #62766c;
  font-size: 0.65rem;
  font-weight: 700;
}

.coach-feedback-roster {
  border-color: var(--rd-border);
}

.coach-feedback-roster.attending {
  border-color: #9bd9bc;
  background: #eaf8f0;
}

.coach-feedback-roster.absent {
  border-color: #efb5b2;
  background: #fff0ef;
}

.coach-feedback-roster.undecided {
  border-color: #ead08a;
  background: #fff8df;
}

.coach-actual-attendance {
  border-top-color: var(--rd-border);
}

.coach-actual-summary > span {
  border-color: var(--rd-border);
  color: var(--rd-text);
  background: #f5f8f6;
}

.coach-actual-summary .present {
  border-color: #9bd9bc;
  background: #eaf8f0;
}

.coach-actual-summary .absent {
  border-color: #efb5b2;
  background: #fff0ef;
}

.coach-actual-summary .unmarked {
  border-color: #ead08a;
  background: #fff8df;
}

.coach-actual-player-row {
  border-color: var(--rd-border);
  background: #f8fbf9;
}

.coach-actual-actions button {
  border-color: #b9cbc1;
  color: var(--rd-text);
  background: #ffffff;
}

.coach-actual-actions .actual-present.is-active {
  border-color: #08774d;
  color: #ffffff;
  background: #08774d;
}

.coach-actual-actions .actual-absent.is-active {
  border-color: #b83f3a;
  color: #ffffff;
  background: #b83f3a;
}

@media (max-width: 760px) {
  .coach-feedback-roster-grid,
  .attendance-summary-counts {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 5px;
  }

  .coach-feedback-roster {
    min-height: 70px;
    align-content: center;
  }

  .coach-feedback-roster ul,
  .coach-feedback-roster p {
    display: none;
  }

  .coach-feedback-panel {
    gap: 13px;
    padding: 12px;
  }

  .coach-feedback-panel-head {
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
    padding: 12px;
  }

  .coach-feedback-panel-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-content: stretch;
  }

  .coach-feedback-panel-actions button {
    width: 100%;
  }

  .coach-feedback-panel-actions .coach-feedback-close {
    grid-column: 1 / -1;
  }

  .coach-feedback-summary-head {
    align-items: start;
    flex-direction: column;
  }

  .coach-feedback-status-card {
    grid-template-columns: minmax(0, 1fr);
    justify-items: center;
    gap: 5px;
    min-height: 86px;
    padding: 8px 5px;
    text-align: center;
  }

  .coach-feedback-status-icon {
    width: 32px;
    height: 32px;
  }

  .coach-feedback-status-icon svg {
    width: 17px;
    height: 17px;
  }

  .coach-feedback-status-card strong {
    font-size: 1.25rem;
  }

  .coach-feedback-status-card span:not(.coach-feedback-status-icon) {
    font-size: 0.64rem;
  }

  .coach-feedback-status-card small {
    display: none;
  }

  .correction-hero {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .correction-hero .message-mode-badge {
    grid-column: 1 / -1;
    justify-self: start;
  }

  .correction-session-form,
  .correction-calendar-card,
  .correction-session-section,
  .correction-type-section,
  .correction-selected-type,
  .correction-manager-detail {
    padding: 13px;
  }

  .correction-session-form .section-heading,
  .correction-session-section .section-heading,
  .correction-type-section .section-heading {
    align-items: start;
    flex-direction: column;
    gap: 5px;
  }

  .correction-type-grid,
  .correction-manager-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .correction-type-card {
    gap: 9px;
    grid-template-columns: 42px minmax(0, 1fr) 18px;
    min-height: 82px;
    padding: 10px;
  }

  .correction-type-card .correction-type-availability {
    grid-column: 2 / 4;
    grid-row: 2;
    justify-items: start;
    white-space: normal;
  }

  .correction-type-card > svg {
    grid-column: 3;
    grid-row: 1;
  }

  .correction-type-icon {
    height: 42px;
    width: 42px;
  }

  .correction-selected-type {
    align-items: start;
    grid-template-columns: 42px minmax(0, 1fr);
  }

  .correction-selected-type > .ghost-action {
    grid-column: 1 / -1;
    justify-content: center;
  }

  .correction-selected-type > .correction-type-icon {
    grid-column: 1;
  }

  .correction-manager-detail {
    min-height: 0;
  }

  .correction-manager-actions,
  .correction-manager-actions button {
    width: 100%;
  }

  .correction-manager-actions button {
    justify-content: center;
  }

  .correction-form-grid {
    grid-template-columns: 1fr;
  }

  .correction-form-note {
    grid-column: auto;
  }

  .correction-form-actions,
  .correction-form-actions .primary-action {
    width: 100%;
  }

  .correction-calendar-weekdays,
  .correction-calendar-grid {
    gap: 4px;
  }

  .correction-calendar-day {
    min-height: 68px;
    padding: 4px;
  }

  .correction-calendar-session-chip {
    border-left-width: 2px;
    font-size: 0.52rem;
    padding: 3px;
  }

  .correction-calendar-session-chip b {
    font-size: 0.5rem;
  }

  .correction-session-card {
    padding: 13px;
  }

  .correction-session-card > header,
  .correction-player-bookings > div,
  .correction-session-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .correction-capacity-badge {
    align-self: flex-start;
  }

  .correction-player-bookings button,
  .correction-session-actions button {
    justify-content: center;
    width: 100%;
  }

  #correctionSessionDialog .coach-program-form-grid,
  #correctionSessionDialog .coach-repeat-options {
    grid-template-columns: minmax(0, 1fr);
  }
}
.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.app-team-create-dialog {
  width: min(660px, calc(100vw - 28px));
}

.app-team-create-card.delete-confirm-card {
  grid-template-columns: 50px minmax(0, 1fr);
  gap: 16px;
  padding: 22px;
  border-color: var(--rd-border);
  color: var(--rd-text);
  background: var(--rd-surface);
  box-shadow: var(--rd-shadow-strong);
}

.app-team-create-card .app-team-create-mark {
  width: 46px;
  height: 46px;
  border-color: #adddcb;
  color: var(--rd-green);
  background: var(--rd-green-soft);
}

.app-team-create-mark svg {
  width: 25px;
  height: 25px;
}

.app-team-create-card .delete-confirm-copy {
  gap: 8px;
}

.app-team-create-card .delete-confirm-copy h3 {
  color: var(--rd-text);
  font-size: 1.45rem;
}

.app-team-create-card .delete-confirm-copy p:not(.eyebrow) {
  color: var(--rd-muted);
  font-weight: 700;
}

.app-team-create-card .app-prompt-field {
  gap: 8px;
  margin-top: 10px;
  color: var(--rd-text);
}

.app-team-create-card .app-prompt-field input {
  min-height: 48px;
  border-color: var(--rd-border-strong);
  color: var(--rd-text);
  background: var(--rd-surface-alt);
}

.app-team-create-card .app-prompt-field input::placeholder {
  color: #7a8898;
}

.app-team-create-card .app-prompt-field input:focus {
  border-color: var(--rd-green);
  box-shadow: 0 0 0 3px rgba(8, 122, 85, 0.14);
}

.app-team-create-card .app-prompt-field input[aria-invalid="true"] {
  border-color: var(--rd-red);
  box-shadow: 0 0 0 3px rgba(204, 69, 84, 0.12);
}

.app-team-club-picker {
  min-width: 0;
  margin: 16px 0 0;
  padding: 0;
  border: 0;
}

.app-team-club-picker legend {
  margin-bottom: 8px;
  color: var(--rd-text);
  font-weight: 900;
}

.app-team-club-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.app-team-club-options label {
  position: relative;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) 22px;
  align-items: center;
  gap: 10px;
  min-height: 78px;
  padding: 12px;
  border: 1px solid var(--rd-border);
  border-radius: 8px;
  color: var(--rd-text);
  background: var(--rd-surface-alt);
  cursor: pointer;
  transition: border-color 150ms ease, box-shadow 150ms ease, background 150ms ease;
}

.app-team-club-options label:hover {
  border-color: #99cbb8;
  background: #f2fbf7;
}

.app-team-club-options label:has(input:checked) {
  border-color: var(--rd-green);
  background: var(--rd-green-soft);
  box-shadow: inset 0 0 0 1px var(--rd-green);
}

.app-team-club-options label:focus-within {
  outline: 3px solid rgba(40, 116, 214, 0.22);
  outline-offset: 2px;
}

.app-team-club-options input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.app-team-club-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border: 1px solid #c8d5df;
  border-radius: 8px;
  color: var(--rd-muted);
  background: #ffffff;
}

.app-team-club-icon svg {
  width: 21px;
  height: 21px;
}

.app-team-club-copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.app-team-club-copy strong,
.app-team-club-copy small {
  overflow-wrap: anywhere;
}

.app-team-club-copy strong {
  color: var(--rd-text);
  font-size: 1rem;
}

.app-team-club-copy small {
  color: var(--rd-muted);
  font-weight: 700;
}

.app-team-club-check {
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  color: transparent;
  background: #dbe4eb;
}

.app-team-club-check svg {
  width: 14px;
  height: 14px;
}

.app-team-club-options input:checked ~ .app-team-club-icon {
  border-color: #8ecab3;
  color: var(--rd-green);
}

.app-team-club-options input:checked ~ .app-team-club-check {
  color: #ffffff;
  background: var(--rd-green);
}

.app-team-create-error {
  margin-top: 8px !important;
  padding: 9px 11px;
  border-left: 3px solid var(--rd-red);
  border-radius: 6px;
  color: #9d2636 !important;
  background: var(--rd-red-soft);
  font-size: 0.88rem;
}

.app-team-create-card .delete-confirm-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 4px;
}

.app-team-create-card .delete-confirm-actions button {
  min-height: 44px;
}

@media (max-width: 620px) {
  .app-team-create-card.delete-confirm-card {
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 12px;
    padding: 16px;
  }

  .app-team-create-card .app-team-create-mark {
    width: 40px;
    height: 40px;
  }

  .app-team-club-options {
    grid-template-columns: minmax(0, 1fr);
  }

  .app-team-club-options label {
    min-height: 70px;
  }

  .app-team-create-card .delete-confirm-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .app-team-create-card .delete-confirm-actions button {
    justify-content: center;
    width: 100%;
  }
}

#leadershipPanel .technical-team-management-card {
  gap: 16px;
}

#leadershipPanel .technical-team-club-switch {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  padding: 6px;
  border: 1px solid var(--rd-border);
  border-radius: 8px;
  background: var(--rd-surface-alt);
}

#leadershipPanel .technical-team-club-switch button {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) 20px;
  align-items: center;
  gap: 11px;
  min-height: 72px;
  padding: 11px 13px;
  border: 1px solid transparent;
  border-radius: 7px;
  color: var(--rd-muted);
  background: transparent;
  text-align: left;
  cursor: pointer;
}

#leadershipPanel .technical-team-club-switch button:hover {
  border-color: #b7d7ca;
  color: var(--rd-text);
  background: #f1faf6;
}

#leadershipPanel .technical-team-club-switch button.is-active {
  border-color: var(--rd-green);
  color: var(--rd-text);
  background: #ffffff;
  box-shadow: 0 5px 16px rgba(8, 122, 85, 0.1);
}

#leadershipPanel .technical-team-club-switch button:focus-visible {
  outline: 3px solid rgba(40, 116, 214, 0.2);
  outline-offset: 2px;
}

#leadershipPanel .technical-team-club-switch button > span:nth-child(2) {
  display: grid;
  gap: 3px;
  min-width: 0;
}

#leadershipPanel .technical-team-club-switch strong,
#leadershipPanel .technical-team-club-switch small {
  overflow-wrap: anywhere;
}

#leadershipPanel .technical-team-club-switch strong {
  color: inherit;
  font-size: 1rem;
}

#leadershipPanel .technical-team-club-switch small {
  color: var(--rd-muted);
  font-size: 0.76rem;
  font-weight: 750;
}

#leadershipPanel .technical-team-club-switch button > svg {
  width: 18px;
  height: 18px;
  color: #96a5b3;
}

#leadershipPanel .technical-team-club-switch button.is-active > svg {
  color: var(--rd-green);
}

#leadershipPanel .technical-team-club-switch-icon {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border: 1px solid var(--rd-border);
  border-radius: 8px;
  color: var(--rd-muted);
  background: #ffffff;
  overflow: hidden;
}

#leadershipPanel .technical-team-club-logo {
  width: 40px;
  height: 40px;
  border-radius: 7px;
  object-fit: contain;
}

#leadershipPanel .technical-team-club-switch button.is-active .technical-team-club-switch-icon {
  border-color: #99d2bb;
  color: var(--rd-green);
  background: var(--rd-green-soft);
}

#leadershipPanel .technical-team-club-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 14px;
  padding-bottom: 11px;
  border-bottom: 1px solid var(--rd-border);
}

#leadershipPanel .technical-team-club-heading-main {
  display: flex;
  align-items: center;
  gap: 11px;
  min-width: 0;
}

#leadershipPanel .technical-team-active-club-logo {
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  border-radius: 8px;
  object-fit: contain;
}

#leadershipPanel .technical-team-club-heading p,
#leadershipPanel .technical-team-club-heading h5 {
  margin: 0;
}

#leadershipPanel .technical-team-club-heading h5 {
  margin-top: 3px;
  font-size: 1.25rem;
}

#leadershipPanel .technical-team-club-heading > span {
  color: var(--rd-muted);
  font-weight: 800;
}

#leadershipPanel .technical-team-management-card .leadership-kpi,
#leadershipPanel .technical-team-row {
  border-color: var(--rd-border);
  color: var(--rd-text);
  background: #ffffff;
}

#leadershipPanel .technical-team-management-card .leadership-kpi {
  border-top: 3px solid #a9d7c5;
  box-shadow: 0 3px 11px rgba(20, 42, 67, 0.04);
}

#leadershipPanel .technical-team-management-card .leadership-kpi span,
#leadershipPanel .technical-team-management-card .leadership-kpi small,
#leadershipPanel .technical-team-main span,
#leadershipPanel .technical-team-count span {
  color: var(--rd-muted);
}

#leadershipPanel .technical-team-management-card .leadership-kpi strong,
#leadershipPanel .technical-team-main strong,
#leadershipPanel .technical-team-count strong {
  color: var(--rd-text);
}

#leadershipPanel .technical-team-row {
  border-left-color: var(--rd-green);
  box-shadow: 0 2px 9px rgba(20, 42, 67, 0.035);
}

#leadershipPanel .technical-team-count {
  border-color: #b9dfcf;
  background: var(--rd-green-soft);
}

@media (max-width: 680px) {
  #leadershipPanel .technical-permission-invite {
    width: 100%;
  }

  #leadershipPanel .technical-team-club-switch {
    grid-template-columns: minmax(0, 1fr);
  }

  #leadershipPanel .technical-team-club-switch button {
    min-height: 66px;
  }

  #leadershipPanel .technical-team-club-heading {
    align-items: start;
    flex-direction: column;
    gap: 5px;
  }
}

/* Szülői gyermekadatlap: egységes, nyugodt riport-hierarchia. */
#parentChildPanel .parent-child-report-list {
  display: grid;
  gap: 18px;
}

#parentChildPanel .parent-child-report-card {
  overflow: hidden;
  border: 1px solid #cbdde5;
  border-radius: 10px;
  background: #eef4f6;
  box-shadow: 0 12px 30px rgba(22, 53, 73, 0.07);
}

#parentChildPanel .parent-child-report-head {
  position: relative;
  min-height: 78px;
  padding: 17px 19px;
  border-bottom-color: #cfdee5;
  background: linear-gradient(135deg, #f8fcfb, #edf7f2);
}

#parentChildPanel .parent-child-report-head::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 5px;
  background: var(--rd-green);
}

#parentChildPanel .parent-child-report-head .avatar {
  box-shadow: 0 0 0 4px rgba(8, 133, 95, 0.1);
}

#parentChildPanel .parent-child-report-content {
  padding: 0 18px 20px;
  background: #edf4f6;
}

#parentChildPanel .parent-report-section {
  gap: 16px;
  margin: 0 -18px;
  padding: 25px 18px 28px;
  border-top-color: #d2e0e6;
  background: #ffffff;
}

#parentChildPanel .parent-report-section + .parent-report-section {
  border-top-width: 8px;
  border-top-color: #dce8ec;
}

#parentChildPanel .parent-report-section-head {
  padding-bottom: 2px;
}

#parentChildPanel .parent-report-section-head h5 {
  font-size: 1.25rem;
}

#parentChildPanel .parent-report-section-head p {
  max-width: 74ch;
  font-size: 0.8rem;
}

#parentChildPanel .parent-report-section-body {
  gap: 16px;
}

#parentChildPanel .parent-measurement-selector {
  gap: 18px;
  margin: 20px 0 24px;
  border-color: #bddccc;
  border-left-width: 5px;
  border-radius: 10px;
  padding: 16px 18px;
  background: linear-gradient(135deg, #effaf4 0%, #f9fcfb 52%, #ffffff 100%);
  box-shadow: 0 4px 16px rgba(29, 87, 64, 0.055);
}

#parentChildPanel .parent-measurement-selector-copy > strong {
  font-size: 1.08rem;
}

#parentChildPanel .parent-measurement-selector-fields {
  gap: 12px;
}

#parentChildPanel .parent-measurement-selector-fields select {
  border-color: #b8cdd8;
  border-radius: 8px;
  background: #ffffff;
}

#parentChildPanel .parent-measurement-selector-status {
  justify-content: center;
  min-width: 126px;
}

#parentChildPanel .parent-report-section-motoric-overview {
  background: #f0faf5;
}

#parentChildPanel .parent-report-section-motoric-evaluation,
#parentChildPanel .parent-report-section-classification-overview {
  background: #fff9ec;
}

#parentChildPanel .parent-report-section-motoric-radar,
#parentChildPanel .parent-report-section-classification-details {
  background: #f1f7fb;
}

#parentChildPanel .parent-report-section-motoric-trend {
  background: #eff9f7;
}

#parentChildPanel .parent-motoric-score-hero,
#parentChildPanel .parent-orthopedic-report {
  border-radius: 10px;
  box-shadow: 0 4px 15px rgba(21, 52, 72, 0.045);
}

#parentChildPanel .parent-motoric-score-main {
  padding: 22px 24px;
}

#parentChildPanel .parent-motoric-team-average {
  padding: 20px;
}

#parentChildPanel .parent-orthopedic-report {
  border-color: #cadce5;
  background: #eaf1f5;
}

#parentChildPanel .parent-ortho-report-header {
  padding: 24px;
  background: linear-gradient(135deg, #e6f5ed, #f7fbf9);
}

#parentChildPanel .parent-ortho-report-band,
#parentChildPanel .parent-orthopedic-report > .parent-ortho-section {
  border-top-color: #dbe7ec;
}

#parentChildPanel .parent-ortho-report-band {
  padding: 25px 22px 29px;
}

#parentChildPanel .parent-ortho-overview-band {
  background: #f2f7fb;
}

#parentChildPanel .parent-orthopedic-report > .parent-ortho-fms-section {
  background: #ffffff;
}

#parentChildPanel .parent-orthopedic-report > .parent-ortho-recommendations {
  background: #fff9ed;
}

#parentChildPanel .parent-ortho-summary-tile,
#parentChildPanel .parent-ortho-section,
#parentChildPanel .parent-ortho-recommendation {
  box-shadow: 0 3px 10px rgba(21, 52, 72, 0.035);
}

@media (max-width: 760px) {
  #parentChildPanel .data-hero {
    align-items: center;
    gap: 11px;
    padding: 14px;
  }

  #parentChildPanel .data-hero > div:last-child {
    min-width: 0;
  }

  #parentChildPanel .data-hero .eyebrow,
  #parentChildPanel .data-hero h3 {
    overflow-wrap: anywhere;
  }

  #parentChildPanel .data-hero h3 {
    font-size: clamp(1.25rem, 6vw, 1.55rem);
    line-height: 1.08;
  }

  #parentChildPanel .parent-portal-switch {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 5px;
    padding: 5px;
  }

  #parentChildPanel .parent-portal-switch button {
    display: flex;
    min-width: 0;
    min-height: 44px;
    padding: 6px 4px;
    gap: 6px;
    justify-content: center;
    white-space: normal;
    overflow-wrap: anywhere;
    text-align: center;
    line-height: 1.08;
  }

  #parentChildPanel .parent-portal-switch button svg {
    flex: 0 0 auto;
    width: 14px;
    height: 14px;
  }

  #parentChildPanel .parent-child-report-list {
    gap: 14px;
  }

  #parentChildPanel .parent-child-report-head {
    min-height: 68px;
    padding: 13px 14px 13px 16px;
    align-items: center;
    gap: 11px;
  }

  #parentChildPanel .parent-child-report-head > div:last-child {
    min-width: 0;
  }

  #parentChildPanel .parent-child-report-head strong,
  #parentChildPanel .parent-child-report-head > div:last-child > span {
    overflow-wrap: anywhere;
  }

  #parentChildPanel .parent-child-report-content {
    padding: 0 12px 16px;
  }

  #parentChildPanel .parent-report-section {
    gap: 13px;
    margin: 0 -12px;
    padding: 20px 12px 23px;
  }

  #parentChildPanel .parent-report-section + .parent-report-section {
    border-top-width: 7px;
  }

  #parentChildPanel .parent-report-section-head h5 {
    font-size: 1.1rem;
  }

  #parentChildPanel .parent-measurement-selector {
    gap: 12px;
    margin: 14px 0 18px;
    padding: 13px;
  }

  #parentChildPanel .parent-measurement-selector-fields {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  #parentChildPanel .parent-measurement-selector-status {
    width: 100%;
  }

  #parentChildPanel .parent-ortho-report-header {
    padding: 18px;
  }

  #parentChildPanel .parent-ortho-report-band,
  #parentChildPanel .parent-orthopedic-report > .parent-ortho-section {
    padding: 20px 14px 23px;
  }
}

@media (max-width: 430px) {
  #parentChildPanel .parent-portal-switch button {
    font-size: 0.76rem;
  }

  #parentChildPanel .parent-measurement-selector-fields {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
  }

  #parentChildPanel .parent-measurement-selector-fields label {
    gap: 4px;
  }

  #parentChildPanel .parent-measurement-selector-fields label > span {
    min-height: 1.8em;
    font-size: 0.6rem;
    line-height: 1.2;
  }

  #parentChildPanel .parent-measurement-selector-fields select {
    height: 40px;
    padding-right: 26px;
    padding-left: 8px;
    font-size: 0.72rem;
  }
}

/* A munkaterület fejlécében a címsáv ne növekedjen üres függőleges hellyé.
   Kisebb nézetben a műveleti sor közvetlenül a cím alatt kezdődjön. */
.topbar {
  height: auto;
  min-height: 0;
}

.topbar-title,
.topbar .toolbar {
  flex: 0 0 auto;
}

@media (max-width: 820px) {
  .topbar {
    align-items: stretch;
    flex-direction: column;
    justify-content: flex-start;
  }

  .topbar-title,
  .topbar .toolbar {
    width: 100%;
  }
}

@media (min-width: 821px) {
  .topbar {
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
  }

  .topbar-title {
    flex: 0 1 280px;
    min-width: min(100%, 240px);
  }

  .topbar .toolbar {
    flex: 1 1 720px;
    min-width: 0;
    margin-left: 0;
  }
}

/* A feladatkezelő a Programnaptárban közös, egyértelmű munkafelületet kap. */
#programCalendarPanel .program-task-management {
  display: grid;
  gap: 14px;
  min-width: 0;
  margin-top: 2px;
  border-top: 1px solid var(--rd-border);
  padding-top: 18px;
}

#programCalendarPanel .program-task-management-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

#programCalendarPanel .program-task-management-head > div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

#programCalendarPanel .program-task-management-head p,
#programCalendarPanel .program-task-management-head h4,
#programCalendarPanel .program-task-management-head span {
  margin: 0;
}

#programCalendarPanel .program-task-management-head h4 {
  color: var(--rd-text);
  font-size: 1.12rem;
  line-height: 1.25;
}

#programCalendarPanel .program-task-management-head span {
  max-width: 760px;
  color: var(--rd-muted);
  font-size: 0.8rem;
  line-height: 1.45;
}

#programCalendarPanel .program-task-management > .task-summary {
  margin: 0;
}

#programCalendarPanel .program-task-management .task-summary-line {
  border-left-color: var(--rd-blue);
  color: var(--rd-text);
  background: #f7faff;
}

#programCalendarPanel .program-task-management .task-summary-line strong {
  color: var(--rd-text);
}

#programCalendarPanel .program-task-management .task-summary-line span {
  color: var(--rd-muted);
}

#programCalendarPanel .program-task-management > .management-form {
  margin: 0;
  border-color: var(--rd-border);
  border-radius: var(--rd-radius);
  background: #fff;
}

#programCalendarPanel .program-task-management > .task-log-card {
  margin: 0;
  border-color: var(--rd-border);
  border-radius: var(--rd-radius);
  padding: 14px;
  background: #fff;
}

#programCalendarPanel .program-task-management .task-bulk-actions {
  border-color: var(--rd-border);
  color: var(--rd-text);
  background: #f7faff;
}

#programCalendarPanel .program-task-management .task-bulk-actions strong {
  color: var(--rd-text);
}

#programCalendarPanel .program-task-management .task-bulk-actions span,
#programCalendarPanel .program-task-management .task-item-main small,
#programCalendarPanel .program-task-management .task-meta,
#programCalendarPanel .program-task-management .task-item p {
  color: var(--rd-muted);
}

#programCalendarPanel .program-task-management .task-item {
  border-color: var(--rd-border);
  background: var(--rd-surface);
}

#programCalendarPanel .program-task-management .task-item-main strong {
  color: var(--rd-text);
}

@media (max-width: 680px) {
  #programCalendarPanel .program-task-management-head {
    flex-direction: column;
  }

  #programCalendarPanel .program-task-management > .task-log-card {
    padding: 10px;
  }
}

@media (max-width: 760px) {
  #healthPanel .health-filter-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #healthPanel .health-analytics-grid {
    grid-template-columns: 1fr;
  }

  #healthPanel .health-analytics-card.health-age-card {
    grid-column: auto;
  }
}

@media (max-width: 520px) {
  #healthPanel .health-filter-head {
    align-items: start;
    flex-direction: column;
  }

  #healthPanel .health-filter-reset {
    width: 100%;
  }

  #healthPanel .health-filter-grid {
    grid-template-columns: 1fr;
  }

  #healthPanel .health-analytics-head {
    align-items: start;
    flex-direction: column;
  }

  #healthPanel .health-contact-visual {
    grid-template-columns: 1fr;
  }
}
