/* ============================================================
 * xHOSTING Portal Theme — Design token integration
 * Based on landing page colour system (light + dark)
 * Loads AFTER the compiled bundle; overrides with specificity.
 *
 * Targets: Bootstrap 5  [data-bs-theme="light"|"dark"]
 *          Tabler       --tblr-* custom properties
 *
 * Do NOT edit the compiled bundle — add overrides here only.
 * ============================================================ */

/* ──────────────────────────────────────────────────────────────
   0.  FONT FACE  — Courier New is system font; no @font-face needed.
       We declare the stack here so it can be referenced everywhere.
   ────────────────────────────────────────────────────────────── */

:root {
  --xh-font:        'Courier New', 'Courier', monospace;
  --xh-radius:      10px;
  --xh-radius-lg:   14px;
  --xh-transition:  .18s ease;

  /* light-mode design tokens (default) */
  --xh-bg:          #f7fafc;
  --xh-bg-alt:      #edf2f7;
  --xh-fg:          #0b0f14;
  --xh-muted:       #4b5563;
  --xh-accent:      #00784c;
  --xh-accent-rgb:  0, 120, 76;
  --xh-accent-2:    #0ea5e9;
  --xh-glow:        rgba(0, 199, 127, .35);
  --xh-card:        rgba(255,255,255,.82);
  --xh-border:      rgba(15,23,42,.14);
  --xh-input-bg:    #ffffff;
  --xh-sidebar-bg:  #ffffff;
  --xh-navbar-bg:   rgba(255,255,255,.55);
  --xh-navbar-border: rgba(15,23,42,.12);
  --xh-focus-ring:  rgba(0,120,76,.30);
  --xh-shadow:      0 4px 24px rgba(2,6,23,.10);
  --xh-shadow-sm:   0 2px 10px rgba(2,6,23,.07);
}

[data-bs-theme="dark"] {
  --xh-bg:          #0a0a0a;
  --xh-bg-alt:      #111111;
  --xh-fg:          rgba(120,255,120,1);
  --xh-muted:       rgba(0,255,153,.72);
  --xh-accent:      #00ff99;
  --xh-accent-rgb:  0, 255, 153;
  --xh-accent-2:    #60a5fa;
  --xh-glow:        rgba(0,255,153,.55);
  --xh-card:        rgba(10,10,10,.72);
  --xh-border:      rgba(0,255,153,.20);
  --xh-input-bg:    rgba(0,0,0,.45);
  --xh-sidebar-bg:  rgba(5,5,5,.92);
  --xh-navbar-bg:   rgba(0,0,0,.28);
  --xh-navbar-border: rgba(0,255,153,.18);
  --xh-focus-ring:  rgba(0,255,153,.40);
  --xh-shadow:      0 4px 32px rgba(0,0,0,.65);
  --xh-shadow-sm:   0 2px 12px rgba(0,0,0,.55);
}

/* ──────────────────────────────────────────────────────────────
   1.  BOOTSTRAP 5 + TABLER CSS VARIABLE OVERRIDES
   ────────────────────────────────────────────────────────────── */

/* — Light mode — */
:root,
[data-bs-theme="light"] {
  --bs-body-bg:                var(--xh-bg);
  --bs-body-color:             var(--xh-fg);
  --bs-secondary-color:        var(--xh-muted);
  --bs-tertiary-color:         var(--xh-muted);
  --bs-border-color:           var(--xh-border);
  --bs-border-color-translucent: var(--xh-border);
  --bs-primary:                var(--xh-accent);
  --bs-primary-rgb:            var(--xh-accent-rgb);
  --bs-link-color:             var(--xh-accent);
  --bs-link-hover-color:       var(--xh-accent);
  --bs-font-sans-serif:        var(--xh-font);
  --bs-body-font-family:       var(--xh-font);
  --bs-card-bg:                var(--xh-card);
  --bs-card-border-color:      var(--xh-border);
  --bs-card-cap-bg:            transparent;

  /* Bootstrap dropdown + focus-ring color */
  --bs-dropdown-link-active-bg:   rgba(var(--xh-accent-rgb), .15);
  --bs-dropdown-link-active-color: var(--xh-accent);
  --bs-focus-ring-color:          rgba(var(--xh-accent-rgb), .30);

  /* Tabler */
  --tblr-primary:              var(--xh-accent);
  --tblr-primary-rgb:          var(--xh-accent-rgb);
  --tblr-body-bg:              var(--xh-bg);
  --tblr-body-color:           var(--xh-fg);
  --tblr-secondary-color:      var(--xh-muted);
  --tblr-border-color:         var(--xh-border);
  --tblr-card-bg:              var(--xh-card);
  --tblr-font-sans-serif:      var(--xh-font);
  --tblr-body-font-family:     var(--xh-font);
}

/* — Dark mode — */
[data-bs-theme="dark"] {
  --bs-body-bg:                var(--xh-bg);
  --bs-body-color:             var(--xh-fg);
  --bs-secondary-color:        var(--xh-muted);
  --bs-tertiary-color:         var(--xh-muted);
  --bs-border-color:           var(--xh-border);
  --bs-border-color-translucent: rgba(0,255,153,.12);
  --bs-primary:                var(--xh-accent);
  --bs-primary-rgb:            var(--xh-accent-rgb);
  --bs-link-color:             var(--xh-accent);
  --bs-link-hover-color:       var(--xh-accent);
  --bs-font-sans-serif:        var(--xh-font);
  --bs-body-font-family:       var(--xh-font);
  --bs-card-bg:                var(--xh-card);
  --bs-card-border-color:      var(--xh-border);
  --bs-card-cap-bg:            transparent;
  --bs-emphasis-color:         var(--xh-fg);
  --bs-secondary-bg:           rgba(0,255,153,.06);
  --bs-tertiary-bg:            rgba(0,0,0,.35);

  /* Bootstrap dropdown + focus-ring color (dark) */
  --bs-dropdown-link-active-bg:   rgba(0,255,153,.15);
  --bs-dropdown-link-active-color: #00ff99;
  --bs-focus-ring-color:          rgba(0,255,153,.35);

  /* Tabler dark */
  --tblr-primary:              var(--xh-accent);
  --tblr-primary-rgb:          var(--xh-accent-rgb);
  --tblr-body-bg:              var(--xh-bg);
  --tblr-body-color:           var(--xh-fg);
  --tblr-secondary-color:      var(--xh-muted);
  --tblr-border-color:         var(--xh-border);
  --tblr-card-bg:              var(--xh-card);
  --tblr-font-sans-serif:      var(--xh-font);
  --tblr-body-font-family:     var(--xh-font);
}

/* ──────────────────────────────────────────────────────────────
   2.  BASE — html / body
   ────────────────────────────────────────────────────────────── */

html,
body {
  font-family: var(--xh-font) !important;
  background-color: var(--xh-bg) !important;
  color: var(--xh-fg) !important;
  transition: background-color var(--xh-transition), color var(--xh-transition);
}

a {
  color: var(--xh-accent);
  text-decoration-skip-ink: auto;
  text-underline-offset: 3px;
  transition: color var(--xh-transition), filter var(--xh-transition);
}

a:hover {
  color: var(--xh-accent);
  filter: brightness(1.15);
}

a:focus-visible,
button:focus-visible {
  outline: 2px solid var(--xh-accent);
  outline-offset: 2px;
}

/* ──────────────────────────────────────────────────────────────
   3.  NAVBAR  (top / horizontal navigation)
   ────────────────────────────────────────────────────────────── */

.navbar,
.navbar-expand-lg,
.navbar-expand-xl {
  background-color: var(--xh-navbar-bg) !important;
  border-bottom: 1px solid var(--xh-navbar-border) !important;
  backdrop-filter: blur(18px) saturate(160%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(160%) !important;
  box-shadow: 0 4px 20px rgba(0,0,0,.12) !important;
  font-family: var(--xh-font) !important;
  transition: background-color var(--xh-transition),
              border-color var(--xh-transition),
              box-shadow var(--xh-transition) !important;
}

[data-bs-theme="dark"] .navbar,
[data-bs-theme="dark"] .navbar-expand-lg,
[data-bs-theme="dark"] .navbar-expand-xl {
  box-shadow: 0 4px 28px rgba(0,0,0,.55) !important;
}

.navbar-brand {
  font-family: var(--xh-font) !important;
  font-weight: 700;
  letter-spacing: .04em;
  color: var(--xh-fg) !important;
}

.navbar .nav-link {
  color: var(--xh-fg) !important;
  font-family: var(--xh-font) !important;
  transition: color var(--xh-transition) !important;
}

.navbar .nav-link:hover,
.navbar .nav-link.active {
  color: var(--xh-accent) !important;
}

[data-bs-theme="dark"] .navbar .nav-link {
  color: rgba(200,255,220,.90) !important;
}

[data-bs-theme="dark"] .navbar .nav-link:hover,
[data-bs-theme="dark"] .navbar .nav-link.active {
  color: var(--xh-accent) !important;
  text-shadow: 0 0 10px var(--xh-glow);
}

.navbar-toggler {
  border-color: var(--xh-border) !important;
  border-radius: var(--xh-radius) !important;
}

/* ──────────────────────────────────────────────────────────────
   4.  SIDEBAR / VERTICAL NAVIGATION
   ────────────────────────────────────────────────────────────── */

.navbar-vertical,
.sidebar,
.offcanvas,
.offcanvas-start {
  background-color: var(--xh-sidebar-bg) !important;
  border-right: 1px solid var(--xh-border) !important;
  font-family: var(--xh-font) !important;
}

[data-bs-theme="dark"] .navbar-vertical,
[data-bs-theme="dark"] .sidebar,
[data-bs-theme="dark"] .offcanvas,
[data-bs-theme="dark"] .offcanvas-start {
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

.navbar-vertical .nav-link,
.sidebar .nav-link,
.offcanvas-item .nav-link {
  color: var(--xh-fg) !important;
  border-radius: var(--xh-radius) !important;
  font-family: var(--xh-font) !important;
  transition: background-color var(--xh-transition),
              color var(--xh-transition),
              box-shadow var(--xh-transition),
              border-color var(--xh-transition) !important;
}

/* ── Sidebar hover: vékony zöld keret, áttetsző háttér ──────── */
.offcanvas-item {
  border-bottom: 1px solid var(--xh-border) !important;
  border-radius: var(--xh-radius) !important;
  margin: 1px 4px !important;
}

.offcanvas-item:first-child {
  border-top: none !important;
}

.offcanvas-item:hover {
  background: transparent !important;
}

.offcanvas-item .nav-link:hover,
.navbar-vertical .nav-link:hover,
.sidebar .nav-link:hover {
  background-color: transparent !important;
  color: var(--xh-accent) !important;
  box-shadow: inset 0 0 0 1px rgba(var(--xh-accent-rgb), .55) !important;
  border-radius: var(--xh-radius) !important;
}

[data-bs-theme="dark"] .offcanvas-item .nav-link:hover,
[data-bs-theme="dark"] .navbar-vertical .nav-link:hover,
[data-bs-theme="dark"] .sidebar .nav-link:hover {
  background-color: rgba(0,255,153,.04) !important;
  box-shadow: inset 0 0 0 1px rgba(0,255,153,.45),
              0 0 8px rgba(0,255,153,.08) !important;
  text-shadow: 0 0 10px rgba(0,255,153,.20);
}

[data-bs-theme="light"] .offcanvas-item .nav-link:hover,
[data-bs-theme="light"] .navbar-vertical .nav-link:hover,
[data-bs-theme="light"] .sidebar .nav-link:hover {
  background-color: rgba(0,120,76,.04) !important;
  box-shadow: inset 0 0 0 1px rgba(0,120,76,.38) !important;
}

/* ── Sidebar aktív állapot ───────────────────────────────────── */
.offcanvas-item .nav-link.xh-active,
.navbar-vertical .nav-link.xh-active,
.sidebar .nav-link.xh-active {
  color: var(--xh-accent) !important;
  font-weight: 600;
  background-color: rgba(var(--xh-accent-rgb), .07) !important;
  box-shadow: inset 0 0 0 1px rgba(var(--xh-accent-rgb), .60) !important;
}

[data-bs-theme="dark"] .offcanvas-item .nav-link.xh-active {
  background-color: rgba(0,255,153,.06) !important;
  box-shadow: inset 0 0 0 1px rgba(0,255,153,.55),
              0 0 14px rgba(0,255,153,.08) !important;
  text-shadow: 0 0 12px rgba(0,255,153,.25);
}

[data-bs-theme="light"] .offcanvas-item .nav-link.xh-active {
  background-color: rgba(0,120,76,.06) !important;
  box-shadow: inset 0 0 0 1px rgba(0,120,76,.45) !important;
}

/* Bootstrap .active osztály is (ha server-side lenne beállítva) */
.navbar-vertical .nav-link.active,
.sidebar .nav-link.active,
.navbar-vertical .nav-item.active > .nav-link {
  background-color: rgba(var(--xh-accent-rgb), .07) !important;
  color: var(--xh-accent) !important;
  font-weight: 600;
  box-shadow: inset 0 0 0 1px rgba(var(--xh-accent-rgb), .55) !important;
}

[data-bs-theme="dark"] .navbar-vertical .nav-link.active,
[data-bs-theme="dark"] .sidebar .nav-link.active {
  background-color: rgba(0,255,153,.06) !important;
  box-shadow: inset 0 0 0 1px rgba(0,255,153,.50),
              0 0 12px rgba(0,255,153,.08) !important;
}

[data-bs-theme="light"] .navbar-vertical .nav-link.active,
[data-bs-theme="light"] .sidebar .nav-link.active {
  background-color: rgba(0,120,76,.06) !important;
  box-shadow: inset 0 0 0 1px rgba(0,120,76,.40) !important;
}

/* ──────────────────────────────────────────────────────────────
   5.  CARDS
   ────────────────────────────────────────────────────────────── */

.card {
  background-color: var(--xh-card) !important;
  border: 1px solid var(--xh-border) !important;
  border-radius: var(--xh-radius-lg) !important;
  box-shadow: var(--xh-shadow-sm) !important;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition: box-shadow var(--xh-transition), border-color var(--xh-transition) !important;
  font-family: var(--xh-font) !important;
}

.card:hover {
  box-shadow: var(--xh-shadow) !important;
}

[data-bs-theme="dark"] .card {
  background-color: rgba(10,10,10,.68) !important;
  border-color: rgba(0,255,153,.18) !important;
}

[data-bs-theme="dark"] .card:hover {
  border-color: rgba(0,255,153,.32) !important;
  box-shadow: 0 0 22px rgba(0,255,153,.10), var(--xh-shadow) !important;
}

.card-header {
  background-color: transparent !important;
  border-bottom: 1px solid var(--xh-border) !important;
  font-family: var(--xh-font) !important;
  font-weight: 600;
}

.card-footer {
  background-color: transparent !important;
  border-top: 1px solid var(--xh-border) !important;
}

/* ──────────────────────────────────────────────────────────────
   6.  FORM CONTROLS  (inputs, selects, textareas)
   ────────────────────────────────────────────────────────────── */

.form-control,
.form-select,
.ts-wrapper .ts-control,
.input-group-text {
  font-family: var(--xh-font) !important;
  background-color: var(--xh-input-bg) !important;
  color: var(--xh-fg) !important;
  border-color: var(--xh-border) !important;
  border-radius: var(--xh-radius) !important;
  transition: border-color var(--xh-transition),
              box-shadow var(--xh-transition) !important;
}

.form-control:focus,
.form-select:focus {
  border-color: var(--xh-accent) !important;
  box-shadow: 0 0 0 3px var(--xh-focus-ring) !important;
  background-color: var(--xh-input-bg) !important;
  color: var(--xh-fg) !important;
}

[data-bs-theme="dark"] .form-control,
[data-bs-theme="dark"] .form-select,
[data-bs-theme="dark"] .input-group-text {
  background-color: rgba(0,0,0,.42) !important;
  color: rgba(120,255,120,1) !important;
  border-color: rgba(0,255,153,.22) !important;
}

[data-bs-theme="dark"] .form-control:focus,
[data-bs-theme="dark"] .form-select:focus {
  background-color: rgba(0,0,0,.55) !important;
  border-color: rgba(0,255,153,.60) !important;
  box-shadow: 0 0 0 3px rgba(0,255,153,.22) !important;
  color: rgba(120,255,120,1) !important;
}

[data-bs-theme="dark"] .form-control::placeholder,
[data-bs-theme="dark"] .form-select::placeholder {
  color: rgba(0,255,153,.40) !important;
}

.form-label {
  color: var(--xh-fg) !important;
  font-family: var(--xh-font) !important;
  font-weight: 500;
}

.input-group-text {
  color: var(--xh-muted) !important;
}

[data-bs-theme="dark"] .input-group-text {
  color: var(--xh-muted) !important;
  border-color: rgba(0,255,153,.22) !important;
}

/* TomSelect — light mode */
.ts-wrapper .ts-control {
  font-family: var(--xh-font) !important;
  background-color: var(--xh-input-bg) !important;
  color: var(--xh-fg) !important;
  border-color: var(--xh-border) !important;
  border-radius: var(--xh-radius) !important;
}

.ts-dropdown {
  background-color: var(--xh-card) !important;
  border-color: var(--xh-border) !important;
  color: var(--xh-fg) !important;
  font-family: var(--xh-font) !important;
  border-radius: var(--xh-radius) !important;
  box-shadow: var(--xh-shadow) !important;
}

.ts-dropdown .option:hover,
.ts-dropdown .option.active,
.ts-dropdown .active {
  background-color: rgba(var(--xh-accent-rgb), .12) !important;
  color: var(--xh-accent) !important;
}

.ts-dropdown .option.selected,
.ts-dropdown .selected {
  background-color: rgba(var(--xh-accent-rgb), .18) !important;
  color: var(--xh-accent) !important;
  font-weight: 600;
}

/* TomSelect — dark mode
   Mindkét eset lefedve: dropdown a .ts-wrapper-ben (default) ÉS body-ra portálva */
[data-bs-theme="dark"] .ts-wrapper .ts-control {
  background-color: rgba(0,0,0,.42) !important;
  color: rgba(120,255,120,1) !important;
  border-color: rgba(0,255,153,.22) !important;
}

[data-bs-theme="dark"] .ts-dropdown,
[data-bs-theme="dark"] .ts-wrapper .ts-dropdown {
  background-color: #0a0a0a !important;
  border-color: rgba(0,255,153,.25) !important;
  color: rgba(200,255,220,1) !important;
  box-shadow: 0 4px 16px rgba(0,0,0,.7) !important;
}

[data-bs-theme="dark"] .ts-dropdown .option,
[data-bs-theme="dark"] .ts-wrapper .ts-dropdown .option {
  color: rgba(200,255,220,.9) !important;
  background-color: transparent !important;
}

[data-bs-theme="dark"] .ts-dropdown .option:hover,
[data-bs-theme="dark"] .ts-dropdown .option.active,
[data-bs-theme="dark"] .ts-dropdown .active,
[data-bs-theme="dark"] .ts-wrapper .ts-dropdown .option:hover,
[data-bs-theme="dark"] .ts-wrapper .ts-dropdown .option.active,
[data-bs-theme="dark"] .ts-wrapper .ts-dropdown .active {
  background-color: rgba(0,255,153,.14) !important;
  color: #00ff99 !important;
}

[data-bs-theme="dark"] .ts-dropdown .option.selected,
[data-bs-theme="dark"] .ts-dropdown .selected,
[data-bs-theme="dark"] .ts-wrapper .ts-dropdown .option.selected,
[data-bs-theme="dark"] .ts-wrapper .ts-dropdown .selected {
  background-color: rgba(0,255,153,.18) !important;
  color: #00ff99 !important;
}

/* ──────────────────────────────────────────────────────────────
   7.  BUTTONS
   ────────────────────────────────────────────────────────────── */

/* Egységes lekerekítés MINDEN gomb-variánson — egyetlen szabály */
.btn,
[class*="btn-"] {
  --bs-btn-border-radius: var(--xh-radius) !important;
  border-radius: var(--xh-radius) !important;
  font-family: var(--xh-font) !important;
}

.btn-primary {
  background-color: var(--xh-accent) !important;
  border-color: var(--xh-accent) !important;
  color: #000 !important;
  font-family: var(--xh-font) !important;
  font-weight: 700;
  letter-spacing: .04em;
  transition: background-color var(--xh-transition),
              box-shadow var(--xh-transition),
              filter var(--xh-transition) !important;
}

.btn-primary:hover,
.btn-primary:focus {
  background-color: var(--xh-accent) !important;
  border-color: var(--xh-accent) !important;
  color: #000 !important;
  filter: brightness(1.10);
  box-shadow: 0 0 0 3px var(--xh-focus-ring),
              0 4px 18px rgba(var(--xh-accent-rgb), .32) !important;
}

[data-bs-theme="dark"] .btn-primary {
  color: #000 !important;
  text-shadow: none !important;
  box-shadow: 0 0 14px rgba(0,255,153,.22) !important;
}

[data-bs-theme="dark"] .btn-primary:hover,
[data-bs-theme="dark"] .btn-primary:focus {
  box-shadow: 0 0 0 3px rgba(0,255,153,.25),
              0 0 24px rgba(0,255,153,.35) !important;
}

.btn-outline-primary {
  color: var(--xh-accent) !important;
  border-color: var(--xh-accent) !important;
}

.btn-outline-primary:hover {
  background-color: var(--xh-accent) !important;
  border-color: var(--xh-accent) !important;
  color: #000 !important;
}

.btn-icon {
  transition: background-color var(--xh-transition),
              color var(--xh-transition) !important;
}

.btn-icon:hover {
  color: var(--xh-accent) !important;
  background-color: rgba(var(--xh-accent-rgb), .10) !important;
}

[data-bs-theme="dark"] .btn-icon:hover {
  background-color: rgba(0,255,153,.12) !important;
  box-shadow: 0 0 8px rgba(0,255,153,.15) !important;
}

/* (font-family és border-radius az univerzális .btn szabályból jön) */

/* ──────────────────────────────────────────────────────────────
   8.  TABLES
   ────────────────────────────────────────────────────────────── */

.table {
  color: var(--xh-fg) !important;
  font-family: var(--xh-font) !important;
  --bs-table-border-color: var(--xh-border);
}

.table thead th {
  color: var(--xh-muted) !important;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  border-bottom: 1px solid var(--xh-border) !important;
  font-family: var(--xh-font) !important;
}

[data-bs-theme="dark"] .table thead th {
  color: var(--xh-accent) !important;
  opacity: .80;
}

.table-striped > tbody > tr:nth-of-type(odd) > * {
  background-color: rgba(var(--xh-accent-rgb), .03) !important;
  color: var(--xh-fg) !important;
}

[data-bs-theme="dark"] .table-striped > tbody > tr:nth-of-type(odd) > * {
  background-color: rgba(0,255,153,.04) !important;
}

.table-hover > tbody > tr:hover > * {
  background-color: rgba(var(--xh-accent-rgb), .07) !important;
  color: var(--xh-fg) !important;
}

[data-bs-theme="dark"] .table-hover > tbody > tr:hover > * {
  background-color: rgba(0,255,153,.08) !important;
}

.table td,
.table th {
  border-color: var(--xh-border) !important;
  font-family: var(--xh-font) !important;
}

/* ──────────────────────────────────────────────────────────────
   9.  NAV TABS
   ────────────────────────────────────────────────────────────── */

.nav-tabs {
  border-bottom-color: var(--xh-border) !important;
  font-family: var(--xh-font) !important;
}

.nav-tabs .nav-link {
  color: var(--xh-muted) !important;
  border-color: transparent !important;
  border-radius: var(--xh-radius) var(--xh-radius) 0 0 !important;
  font-family: var(--xh-font) !important;
  transition: color var(--xh-transition), background-color var(--xh-transition) !important;
}

.nav-tabs .nav-link:hover {
  color: var(--xh-accent) !important;
  border-color: var(--xh-border) var(--xh-border) transparent !important;
  background-color: rgba(var(--xh-accent-rgb), .06) !important;
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: var(--xh-accent) !important;
  background-color: var(--xh-card) !important;
  border-color: var(--xh-border) var(--xh-border) var(--xh-card) !important;
  font-weight: 600;
}

[data-bs-theme="dark"] .nav-tabs .nav-link.active {
  border-color: rgba(0,255,153,.22) rgba(0,255,153,.22) var(--xh-card) !important;
  text-shadow: 0 0 8px rgba(0,255,153,.30);
}

.tab-content {
  color: var(--xh-fg) !important;
  font-family: var(--xh-font) !important;
}

.nav-tabs-alt {
  font-family: var(--xh-font) !important;
}

/* ──────────────────────────────────────────────────────────────
   10.  BADGES
   ────────────────────────────────────────────────────────────── */

/* Tétel-számláló badge (pl. "6 tétel" a rendelés accordion fejlécén) */
.xh-badge-count {
  background-color: rgba(var(--xh-accent-rgb), .15) !important;
  color: var(--xh-accent) !important;
  border: 1px solid rgba(var(--xh-accent-rgb), .40) !important;
  font-weight: 600;
  font-family: var(--xh-font) !important;
  letter-spacing: .04em;
}

[data-bs-theme="dark"] .xh-badge-count {
  background-color: rgba(0,255,153,.12) !important;
  color: #00ff99 !important;
  border-color: rgba(0,255,153,.35) !important;
  box-shadow: 0 0 6px rgba(0,255,153,.12);
}

[data-bs-theme="light"] .xh-badge-count {
  background-color: rgba(0,120,76,.10) !important;
  color: #00784c !important;
  border-color: rgba(0,120,76,.30) !important;
}


.badge {
  font-family: var(--xh-font) !important;
  border-radius: 6px !important;
  letter-spacing: .04em;
}

.badge.bg-primary,
.badge.text-bg-primary {
  background-color: var(--xh-accent) !important;
  color: #000 !important;
}

[data-bs-theme="dark"] .badge.bg-success,
[data-bs-theme="dark"] .badge.text-bg-success {
  background-color: rgba(0,255,153,.18) !important;
  color: var(--xh-accent) !important;
  border: 1px solid rgba(0,255,153,.30) !important;
}

/* ──────────────────────────────────────────────────────────────
   11.  ALERTS
   ────────────────────────────────────────────────────────────── */

.alert {
  border-radius: var(--xh-radius) !important;
  font-family: var(--xh-font) !important;
  border: 1px solid var(--xh-border) !important;
}

[data-bs-theme="dark"] .alert-info {
  background-color: rgba(0,255,153,.08) !important;
  border-color: rgba(0,255,153,.25) !important;
  color: rgba(120,255,120,1) !important;
}

[data-bs-theme="dark"] .alert-warning {
  background-color: rgba(245,158,11,.10) !important;
  border-color: rgba(245,158,11,.30) !important;
  color: #fbbf24 !important;
}

[data-bs-theme="dark"] .alert-danger {
  background-color: rgba(220,38,38,.10) !important;
  border-color: rgba(220,38,38,.30) !important;
  color: #f87171 !important;
}

[data-bs-theme="dark"] .alert-success {
  background-color: rgba(0,255,153,.08) !important;
  border-color: rgba(0,255,153,.28) !important;
  color: var(--xh-accent) !important;
}

/* ──────────────────────────────────────────────────────────────
   12.  MODALS
   ────────────────────────────────────────────────────────────── */

.modal-content {
  background-color: var(--xh-card) !important;
  border: 1px solid var(--xh-border) !important;
  border-radius: var(--xh-radius-lg) !important;
  box-shadow: var(--xh-shadow) !important;
  font-family: var(--xh-font) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
}

[data-bs-theme="dark"] .modal-content {
  background-color: rgba(8,8,8,.92) !important;
  border-color: rgba(0,255,153,.22) !important;
  box-shadow: 0 8px 48px rgba(0,0,0,.80),
              0 0 40px rgba(0,255,153,.06) !important;
}

.modal-header {
  border-bottom: 1px solid var(--xh-border) !important;
}

.modal-footer {
  border-top: 1px solid var(--xh-border) !important;
}

.modal-title {
  font-family: var(--xh-font) !important;
  font-weight: 700;
  color: var(--xh-fg) !important;
}

[data-bs-theme="dark"] .modal-backdrop {
  background-color: rgba(0,0,0,.75) !important;
}

/* ──────────────────────────────────────────────────────────────
   13.  BREADCRUMBS
   ────────────────────────────────────────────────────────────── */

.breadcrumb {
  font-family: var(--xh-font) !important;
  font-size: .8rem;
}

.breadcrumb-item a {
  color: var(--xh-accent) !important;
}

.breadcrumb-item.active {
  color: var(--xh-muted) !important;
}

.breadcrumb-item + .breadcrumb-item::before {
  color: var(--xh-border) !important;
}

/* ──────────────────────────────────────────────────────────────
   14.  PAGINATION
   ────────────────────────────────────────────────────────────── */

.pagination {
  font-family: var(--xh-font) !important;
}

.page-link {
  background-color: var(--xh-card) !important;
  border-color: var(--xh-border) !important;
  color: var(--xh-fg) !important;
  border-radius: var(--xh-radius) !important;
  transition: background-color var(--xh-transition),
              color var(--xh-transition) !important;
}

.page-link:hover {
  background-color: rgba(var(--xh-accent-rgb), .10) !important;
  color: var(--xh-accent) !important;
  border-color: var(--xh-accent) !important;
}

.page-item.active .page-link {
  background-color: var(--xh-accent) !important;
  border-color: var(--xh-accent) !important;
  color: #000 !important;
  font-weight: 700;
}

[data-bs-theme="dark"] .page-item.active .page-link {
  box-shadow: 0 0 12px rgba(0,255,153,.30) !important;
}

.page-item.disabled .page-link {
  opacity: .40 !important;
}

/* ──────────────────────────────────────────────────────────────
   15.  DROPDOWNS
   ────────────────────────────────────────────────────────────── */

.dropdown-menu {
  background-color: var(--xh-card) !important;
  border: 1px solid var(--xh-border) !important;
  border-radius: var(--xh-radius) !important;
  box-shadow: var(--xh-shadow) !important;
  font-family: var(--xh-font) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
}

[data-bs-theme="dark"] .dropdown-menu {
  background-color: rgba(8,8,8,.95) !important;
  border-color: rgba(0,255,153,.22) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,.75),
              0 0 20px rgba(0,255,153,.06) !important;
}

.dropdown-item {
  color: var(--xh-fg) !important;
  font-family: var(--xh-font) !important;
  border-radius: calc(var(--xh-radius) - 2px) !important;
  transition: background-color var(--xh-transition),
              color var(--xh-transition) !important;
}

.dropdown-item:hover,
.dropdown-item:focus {
  background-color: rgba(var(--xh-accent-rgb), .10) !important;
  color: var(--xh-accent) !important;
}

/* Aktív/kiválasztott dropdown elem — nincs kék */
.dropdown-item.active,
.dropdown-item:active {
  background-color: rgba(var(--xh-accent-rgb), .18) !important;
  color: var(--xh-accent) !important;
  font-weight: 600;
}

[data-bs-theme="dark"] .dropdown-item:hover,
[data-bs-theme="dark"] .dropdown-item:focus {
  background-color: rgba(0,255,153,.10) !important;
  color: #00ff99 !important;
}

[data-bs-theme="dark"] .dropdown-item.active,
[data-bs-theme="dark"] .dropdown-item:active {
  background-color: rgba(0,255,153,.16) !important;
  color: #00ff99 !important;
}

[data-bs-theme="light"] .dropdown-item.active,
[data-bs-theme="light"] .dropdown-item:active {
  background-color: rgba(0,120,76,.14) !important;
  color: #00784c !important;
}

.dropdown-divider {
  border-color: var(--xh-border) !important;
}

.dropdown-header {
  color: var(--xh-muted) !important;
  font-family: var(--xh-font) !important;
  font-size: .72rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}

/* ──────────────────────────────────────────────────────────────
   16.  TOAST NOTIFICATIONS
   ────────────────────────────────────────────────────────────── */

.toast {
  background-color: var(--xh-card) !important;
  border: 1px solid var(--xh-border) !important;
  border-radius: var(--xh-radius) !important;
  box-shadow: var(--xh-shadow) !important;
  font-family: var(--xh-font) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  color: var(--xh-fg) !important;
}

[data-bs-theme="dark"] .toast {
  background-color: rgba(8,8,8,.88) !important;
  border-color: rgba(0,255,153,.22) !important;
}

.toast-header {
  background-color: transparent !important;
  border-bottom: 1px solid var(--xh-border) !important;
  color: var(--xh-fg) !important;
  font-family: var(--xh-font) !important;
  font-weight: 600;
}

/* ──────────────────────────────────────────────────────────────
   17.  LIST GROUPS
   ────────────────────────────────────────────────────────────── */

.list-group-item {
  background-color: var(--xh-card) !important;
  border-color: var(--xh-border) !important;
  color: var(--xh-fg) !important;
  font-family: var(--xh-font) !important;
  transition: background-color var(--xh-transition) !important;
}

.list-group-item.active {
  background-color: var(--xh-accent) !important;
  border-color: var(--xh-accent) !important;
  color: #000 !important;
}

.list-group-item:hover {
  background-color: rgba(var(--xh-accent-rgb), .08) !important;
}

/* ──────────────────────────────────────────────────────────────
   18.  ACCORDION
   ────────────────────────────────────────────────────────────── */

.accordion-item {
  background-color: var(--xh-card) !important;
  border-color: var(--xh-border) !important;
  font-family: var(--xh-font) !important;
}

.accordion-button {
  background-color: transparent !important;
  color: var(--xh-fg) !important;
  font-family: var(--xh-font) !important;
  font-weight: 600;
}

.accordion-button:not(.collapsed) {
  color: var(--xh-accent) !important;
  background-color: rgba(var(--xh-accent-rgb), .06) !important;
  box-shadow: inset 0 -1px 0 var(--xh-border) !important;
}

.accordion-button::after {
  filter: none !important;
}

[data-bs-theme="dark"] .accordion-button::after {
  filter: invert(1) brightness(1.5) !important;
}

/* ──────────────────────────────────────────────────────────────
   19.  PROGRESS BARS
   ────────────────────────────────────────────────────────────── */

.progress {
  background-color: rgba(var(--xh-accent-rgb), .10) !important;
  border-radius: 999px !important;
}

.progress-bar {
  background-color: var(--xh-accent) !important;
  border-radius: 999px !important;
}

[data-bs-theme="dark"] .progress-bar {
  box-shadow: 0 0 10px rgba(0,255,153,.35) !important;
}

/* ──────────────────────────────────────────────────────────────
   20.  PAGE HEADER / SECTION HEADINGS
   ────────────────────────────────────────────────────────────── */

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: var(--xh-font) !important;
  font-weight: 700;
  color: var(--xh-fg) !important;
}

[data-bs-theme="dark"] h1,
[data-bs-theme="dark"] h2,
[data-bs-theme="dark"] h3,
[data-bs-theme="dark"] h4,
[data-bs-theme="dark"] h5,
[data-bs-theme="dark"] h6 {
  text-shadow: 0 0 18px rgba(0,255,153,.14);
}

.page-title {
  font-family: var(--xh-font) !important;
  color: var(--xh-fg) !important;
}

/* ──────────────────────────────────────────────────────────────
   21.  ICON COLOUR
   ────────────────────────────────────────────────────────────── */

.icon {
  color: inherit;
  transition: color var(--xh-transition) !important;
}

a .icon:hover,
.nav-link:hover .icon {
  color: var(--xh-accent) !important;
}

/* ──────────────────────────────────────────────────────────────
   22.  LANGUAGE SELECTOR  (bottom-left public pages)
   ────────────────────────────────────────────────────────────── */

#xh-pub-lang-sel,
#xh-lang-sel {
  font-family: var(--xh-font) !important;
  background-color: var(--xh-input-bg) !important;
  color: var(--xh-fg) !important;
  border-color: var(--xh-border) !important;
  border-radius: var(--xh-radius) !important;
}

#xh-pub-lang-sel:focus,
#xh-lang-sel:focus {
  border-color: var(--xh-accent) !important;
  box-shadow: 0 0 0 3px var(--xh-focus-ring) !important;
}

/* ──────────────────────────────────────────────────────────────
   23.  LOGIN / SIGNUP / PASSWORD-RESET  (layout_public pages)
   ────────────────────────────────────────────────────────────── */

.page-login,
.page-signup,
.page-password-reset,
.page-forgot-password {
  min-height: 100vh;
  background-color: var(--xh-bg) !important;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--xh-font) !important;
}

/* Background noise/grid effect for public pages in dark mode */
[data-bs-theme="dark"] .page-login,
[data-bs-theme="dark"] .page-signup,
[data-bs-theme="dark"] .page-password-reset,
[data-bs-theme="dark"] .page-forgot-password {
  background-image:
    radial-gradient(circle at 25% 25%, rgba(0,255,153,.04) 0%, transparent 55%),
    radial-gradient(circle at 75% 75%, rgba(96,165,250,.03) 0%, transparent 55%) !important;
}

.page-login .card,
.page-signup .card,
.page-password-reset .card,
.page-forgot-password .card {
  max-width: 420px;
  width: 100%;
  margin: 0 auto;
}

[data-bs-theme="dark"] .page-login .card,
[data-bs-theme="dark"] .page-signup .card,
[data-bs-theme="dark"] .page-password-reset .card,
[data-bs-theme="dark"] .page-forgot-password .card {
  background-color: rgba(10,10,10,.80) !important;
  border-color: rgba(0,255,153,.22) !important;
  box-shadow: 0 0 40px rgba(0,255,153,.08),
              0 16px 60px rgba(0,0,0,.75) !important;
}

.page-login .card h1,
.page-signup .card h1,
.page-password-reset .card h1 {
  font-family: var(--xh-font) !important;
  font-weight: 700;
  font-size: 1.35rem;
  color: var(--xh-fg) !important;
}

[data-bs-theme="dark"] .page-login .card h1,
[data-bs-theme="dark"] .page-signup .card h1,
[data-bs-theme="dark"] .page-password-reset .card h1 {
  text-shadow: 0 0 22px rgba(0,255,153,.35);
}

/* ──────────────────────────────────────────────────────────────
   24.  GENERAL CLIENT-AREA LAYOUT SPACING
   ────────────────────────────────────────────────────────────── */

/* Ensure content background matches theme */
.page-body,
main,
.container-xl,
.container-fluid {
  background-color: transparent !important;
}

/* Subtle horizontal rule */
hr {
  border-color: var(--xh-border) !important;
  opacity: 1 !important;
}

/* Scrollbar — dark mode */
[data-bs-theme="dark"] ::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}

[data-bs-theme="dark"] ::-webkit-scrollbar-track {
  background: transparent;
}

[data-bs-theme="dark"] ::-webkit-scrollbar-thumb {
  background: rgba(0,255,153,.25);
  border-radius: 999px;
}

[data-bs-theme="dark"] ::-webkit-scrollbar-thumb:hover {
  background: rgba(0,255,153,.45);
}

/* Scrollbar — light mode */
[data-bs-theme="light"] ::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}

[data-bs-theme="light"] ::-webkit-scrollbar-track {
  background: transparent;
}

[data-bs-theme="light"] ::-webkit-scrollbar-thumb {
  background: rgba(0,120,76,.22);
  border-radius: 999px;
}

[data-bs-theme="light"] ::-webkit-scrollbar-thumb:hover {
  background: rgba(0,120,76,.45);
}

/* ──────────────────────────────────────────────────────────────
   25.  DARK-MODE COLOUR NORMALISATION
         (force inherited text colour where Bootstrap leaves it
          on a white default inside dark contexts)
   ────────────────────────────────────────────────────────────── */

[data-bs-theme="dark"] p,
[data-bs-theme="dark"] span,
[data-bs-theme="dark"] label,
[data-bs-theme="dark"] small,
[data-bs-theme="dark"] .text-muted,
[data-bs-theme="dark"] .form-text {
  color: inherit;
}

[data-bs-theme="dark"] .text-muted,
[data-bs-theme="dark"] .text-secondary {
  color: var(--xh-muted) !important;
}

[data-bs-theme="dark"] .text-body {
  color: var(--xh-fg) !important;
}

[data-bs-theme="dark"] .text-body-secondary {
  color: var(--xh-muted) !important;
}

[data-bs-theme="dark"] code,
[data-bs-theme="dark"] pre {
  color: var(--xh-accent) !important;
  background-color: rgba(0,0,0,.45) !important;
  border: 1px solid rgba(0,255,153,.15) !important;
  border-radius: var(--xh-radius) !important;
}

/* Selection highlight */
[data-bs-theme="dark"] ::selection {
  background-color: rgba(0,255,153,.25) !important;
  color: #000 !important;
}

[data-bs-theme="light"] ::selection {
  background-color: rgba(0,120,76,.20) !important;
  color: #000 !important;
}

/* ──────────────────────────────────────────────────────────────
   26.  JELÖLŐNÉGYZETEK + RÁDIÓGOMBOK  (checkbox / radio)
         A compiled bundle .form-check-input:checked { background-color:#005fc5 }
         — nincs !important, tehát a mi !important szabályunk biztosan nyer.
   ────────────────────────────────────────────────────────────── */

/* BS5 CSS változók (ahol a bundle CSS custom property-t használ) */
:root,
[data-bs-theme="light"] {
  --bs-form-check-input-checked-bg-color:           var(--xh-accent);
  --bs-form-check-input-checked-border-color:       var(--xh-accent);
  --bs-form-check-input-focus-border:               var(--xh-accent);
  --bs-form-check-input-focus-box-shadow:           0 0 0 .25rem rgba(var(--xh-accent-rgb), .25);
  --bs-form-check-input-indeterminate-bg-color:     var(--xh-accent);
  --bs-form-check-input-indeterminate-border-color: var(--xh-accent);
}

[data-bs-theme="dark"] {
  --bs-form-check-input-checked-bg-color:           #00ff99;
  --bs-form-check-input-checked-border-color:       #00ff99;
  --bs-form-check-input-focus-border:               #00ff99;
  --bs-form-check-input-focus-box-shadow:           0 0 0 .25rem rgba(0,255,153,.28);
  --bs-form-check-input-indeterminate-bg-color:     #00ff99;
  --bs-form-check-input-indeterminate-border-color: #00ff99;
}

/* Natív form kontrollok accent színe (class nélküli checkboxokhoz is) */
:root,
[data-bs-theme="light"] {
  accent-color: var(--xh-accent);
}
[data-bs-theme="dark"] {
  accent-color: #00ff99;
}

/* Közvetlen override — felülírja a bundle #005fc5-öt */
.form-check-input:checked,
input[type="checkbox"]:checked,
input[type="radio"]:checked {
  background-color: var(--xh-accent) !important;
  border-color:     var(--xh-accent) !important;
}

.form-check-input:focus {
  border-color: var(--xh-accent) !important;
  box-shadow: 0 0 0 .25rem rgba(var(--xh-accent-rgb), .25) !important;
  outline: 0;
}

.form-check-input:checked:focus {
  box-shadow: 0 0 0 .25rem rgba(var(--xh-accent-rgb), .30) !important;
}

[data-bs-theme="dark"] .form-check-input:checked {
  background-color: #00ff99 !important;
  border-color:     #00ff99 !important;
  box-shadow: 0 0 6px rgba(0,255,153,.25) !important;
}

/* Dark módban #00ff99 háttéren a fehér pipa kontrasztja csak ~1.3:1 — fekete pipát használunk */
[data-bs-theme="dark"] .form-check-input:checked[type="checkbox"] {
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e") !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e") !important;
}
[data-bs-theme="dark"] .form-check-input:checked[type="radio"] {
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23000'/%3e%3c/svg%3e") !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23000'/%3e%3c/svg%3e") !important;
}

[data-bs-theme="dark"] .form-check-input:focus {
  border-color: rgba(0,255,153,.70) !important;
  box-shadow: 0 0 0 .25rem rgba(0,255,153,.22) !important;
}

/* Switch (toggle) */
.form-switch .form-check-input:checked {
  background-color: var(--xh-accent) !important;
  border-color:     var(--xh-accent) !important;
}

[data-bs-theme="dark"] .form-switch .form-check-input:checked {
  background-color: #00ff99 !important;
  border-color:     #00ff99 !important;
  box-shadow: 0 0 8px rgba(0,255,153,.22) !important;
  /* Sötét gomb/pöcök a bright green háttéren */
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%230a0a0a'/%3e%3c/svg%3e") !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%230a0a0a'/%3e%3c/svg%3e") !important;
}

/* Nem bejelölt állapot kerete */
.form-check-input {
  border-color: var(--xh-border) !important;
}

[data-bs-theme="dark"] .form-check-input {
  background-color: rgba(0,0,0,.35) !important;
  border-color: rgba(0,255,153,.30) !important;
}

/* ──────────────────────────────────────────────────────────────
   27.  GOMB TÉRKÖZ  — egymás alá/mellé kerülő gombok ne érjenek össze
   ────────────────────────────────────────────────────────────── */

/* Vízszintes sorban: .btn mellé kerülő .btn kap bal margót */
.btn + .btn {
  margin-left: .375rem;
}

/* d-flex / gap konténerben a gap már kezeli a távolságot —
   ne adjunk EXTRA margin-left-et a sima .btn + .btn szabály miatt */
.d-flex > .btn + .btn,
[class*="gap-"] > .btn + .btn {
  margin-left: 0 !important;
}

/* Ha a gombok egymás ALÁ kerülnek (flex-column, d-grid, block) */
.d-flex.flex-column > .btn + .btn,
.d-grid > .btn + .btn,
.form-actions > .btn + .btn {
  margin-left: 0 !important;
  margin-top: .375rem;
}

/* Általános blokk-szintű gombsor */
.btn.d-block + .btn.d-block,
.w-100.btn + .w-100.btn {
  margin-left: 0 !important;
  margin-top: .5rem;
}

/* Tabler / FOSSBilling action-bar */
.card-footer .btn + .btn,
.modal-footer .btn + .btn {
  margin-left: .375rem;
}

/* ──────────────────────────────────────────────────────────────
   28.  CKEDITOR JAVÍTÁSOK
        a) Balloon position: fixed + z-index, hogy Bootstrap modal
           (z-index 1055) fölé kerüljön és ne csússzon el
        b) "Link" felirat + minden anchor elem a balloon-ban:
           ne örököljük a téma zöld accent színét
        c) Dark módban se legyen zöld a label/cím szöveg
   ────────────────────────────────────────────────────────────── */

/* a) position: fixed — viewport-hoz pozicionálódik, nem a modal clip
      z-index: 9999 — Bootstrap modal (1055) és backdrop (1050) fölé */
.ck.ck-balloon-panel:not(.ck-powered-by-balloon):not(.ck-evaluation-badge-balloon) {
  position: fixed !important;
  z-index: 9999 !important;
}

/* b) A balloon és toolbar belsejében az <a> és heading elemek NE
   örököljék a téma a { color: var(--xh-accent) } zöld szabályát.
   inherit → a CKEditor konténer saját szövegszínét kapja, nem a
   globális link-accent-et. */
.ck.ck-balloon-panel a,
.ck.ck-balloon-panel h2,
.ck.ck-balloon-panel h3,
.ck.ck-balloon-panel .ck-form__header__title,
.ck.ck-toolbar a {
  color: inherit !important;
}

/* c) CKEditor label/cím szöveg: minden témán inherit (ne zöld) */
.ck.ck-balloon-panel .ck-label,
.ck.ck-balloon-panel label,
.ck.ck-balloon-panel .ck-link-form__label,
.ck .ck-labeled-field-view__label {
  color: inherit !important;
}
