/* ═══════════════════════════════════════════════════════════════════
   TEMA „CLASA VESELĂ" — doar paginile publice (home, login, register)
   ───────────────────────────────────────────────────────────────────
   Se încarcă din layout.php DOAR când view-ul setează $theme = 'kids'.
   Toate regulile sunt sub body.kids → editorul, dashboard-ul și adminul
   nu sunt atinse. Nu intră în build-ul dist/ (servit ca atare).
   ═══════════════════════════════════════════════════════════════════ */

body.kids {
  --k-ink: #1f2a44;
  --k-ink-soft: #4b5878;
  --k-paper: #fffdf5;
  --k-grid: rgba(96, 145, 214, .16);
  --k-margin: rgba(239, 68, 68, .35);
  --k-board: #2f6b4f;
  --k-board-dark: #245740;
  --k-wood: #b87a3d;
  --k-wood-dark: #8a5526;
  --k-chalk: #fbfaf3;
  --k-red: #ef4444;
  --k-orange: #fb923c;
  --k-yellow: #facc15;
  --k-green: #22c55e;
  --k-blue: #3b82f6;
  --k-purple: #a855f7;
  --k-pink: #f472b6;
  --k-font: "Baloo 2", "Nunito", system-ui, sans-serif;
  --k-hand: "Caveat", "Comic Sans MS", cursive;

  font-family: var(--k-font);
  color: var(--k-ink);
  background-color: var(--k-paper);
  /* Foaie de caiet de matematică: pătrățele + linia roșie de margine */
  background-image:
    linear-gradient(90deg, transparent 58px, var(--k-margin) 58px, var(--k-margin) 60px, transparent 60px),
    linear-gradient(var(--k-grid) 1px, transparent 1px),
    linear-gradient(90deg, var(--k-grid) 1px, transparent 1px);
  background-size: 100% 100%, 26px 26px, 26px 26px;
  background-attachment: fixed;
}
body.kids h1, body.kids h2, body.kids h3 { font-family: var(--k-font); color: var(--k-ink); }

/* ── Topbar: tabla de clasă (design în app.css) — aici doar fontul temei ── */
body.kids .topbar { position: sticky; }
body.kids .brand__text-bold { font-family: var(--k-font); font-weight: 800; }
body.kids .brand__text-script { font-family: var(--k-hand); }
/* Navigația de sus este definită în app.css pentru toate paginile. */

/* ── Butoane „jucărie": colțuri rotunde + umbră plină dedesubt ───── */
body.kids .btn {
  font-family: var(--k-font);
  font-weight: 800;
  border-radius: 999px;
  border: 2px solid var(--k-ink);
  box-shadow: 0 2px 0 var(--k-ink);
  transition: transform .12s ease, box-shadow .12s ease;
}
body.kids .btn:hover { transform: translateY(-2px); box-shadow: 0 3px 0 var(--k-ink); }
body.kids .btn:active { transform: translateY(4px); box-shadow: 0 1px 0 var(--k-ink); }
body.kids .btn:focus-visible { outline: 4px solid var(--k-yellow); outline-offset: 3px; }
body.kids .btn-primary { background: var(--k-orange); color: var(--k-ink); }
body.kids .btn-primary:hover { background: #fdba74; color: var(--k-ink); }
body.kids .btn-ghost { background: #fff; color: var(--k-ink); }
body.kids .btn-ghost:hover { background: #fef9c3; color: var(--k-ink); }
body.kids .btn-google { background: #fff; color: var(--k-ink); }
body.kids .btn-sm { box-shadow: 0 2px 0 var(--k-ink); border-width: 2px; }

body.kids .main { max-width: 1180px; }

/* ═════════════════════════ HOME ═════════════════════════════════ */

/* Tabla verde cu ramă de lemn și suport de cretă */
.k-board {
  position: relative;
  margin: 18px auto 56px;
  padding: 64px 40px 72px;
  text-align: center;
  color: var(--k-chalk);
  background:
    radial-gradient(ellipse at 30% 20%, rgba(255,255,255,.07), transparent 55%),
    radial-gradient(ellipse at 80% 90%, rgba(0,0,0,.18), transparent 60%),
    var(--k-board);
  border: 16px solid var(--k-wood);
  border-radius: 18px;
  box-shadow:
    inset 0 0 0 3px var(--k-wood-dark),
    inset 0 0 60px rgba(0,0,0,.28),
    0 18px 0 -6px var(--k-wood-dark),
    0 30px 50px -20px rgba(31,42,68,.45);
  overflow: visible;
}
/* urme de cretă ștearsă */
.k-board::before {
  content: "";
  position: absolute; inset: 0;
  border-radius: 4px;
  background:
    radial-gradient(ellipse 30% 8% at 22% 70%, rgba(255,255,255,.06), transparent 70%),
    radial-gradient(ellipse 25% 6% at 75% 25%, rgba(255,255,255,.05), transparent 70%);
  pointer-events: none;
}
.k-board__eyebrow {
  display: inline-block;
  font-family: var(--k-hand);
  font-size: 28px;
  font-weight: 700;
  color: var(--k-yellow);
  transform: rotate(-2deg);
  margin-bottom: 6px;
}
body.kids .k-board h1 {
  font-family: var(--k-hand);
  font-weight: 700;
  font-size: clamp(46px, 7.2vw, 88px);
  line-height: .98;
  color: var(--k-chalk);
  margin: 0 0 18px;
  text-shadow: 0 0 1px rgba(255,255,255,.6), 0 0 12px rgba(255,255,255,.12);
}
body.kids .k-board h1 .k-chalk-pink { color: #fbcfe8; }
body.kids .k-board h1 .k-chalk-blue { color: #bfdbfe; }
.k-board__lead {
  max-width: 640px;
  margin: 0 auto 30px;
  font-size: 20px;
  line-height: 1.5;
  color: rgba(251,250,243,.88);
}
.k-board__actions { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; position: relative; z-index: 2; }
.k-board__actions .btn { min-height: 58px; padding: 0 30px; font-size: 20px; }
.k-board .btn-primary { background: var(--k-yellow); }
.k-board .btn-primary:hover { background: #fde047; }

/* desene cu creta în jurul textului */
.k-doodle { position: absolute; pointer-events: none; color: rgba(251,250,243,.55); }
.k-doodle--sun   { top: 26px;  left: 34px;  width: 86px; }
.k-doodle--abc   { top: 36px;  right: 44px; font-family: var(--k-hand); font-size: 44px; font-weight: 700; transform: rotate(8deg); color: rgba(254,240,138,.7); }
.k-doodle--math  { bottom: 40px; left: 46px; font-family: var(--k-hand); font-size: 40px; font-weight: 700; transform: rotate(-6deg); color: rgba(191,219,254,.75); }
.k-doodle--star  { bottom: 46px; right: 60px; width: 64px; color: rgba(251,207,232,.75); }
.k-doodle--heart { top: 50%; right: 24px; width: 40px; color: rgba(251,250,243,.35); }

/* suportul de cretă + bureţelul */
.k-tray {
  position: absolute;
  left: 8%; right: 8%; bottom: -34px;
  height: 18px;
  background: linear-gradient(var(--k-wood), var(--k-wood-dark));
  border-radius: 4px 4px 10px 10px;
  box-shadow: 0 8px 14px -6px rgba(0,0,0,.35);
}
.k-tray .k-chalk, .k-tray .k-sponge {
  position: absolute; bottom: 14px;
  width: 54px; height: 11px; border-radius: 6px;
  padding: 0; border: 0; cursor: pointer;
  box-shadow: inset 0 -2px 0 rgba(0,0,0,.12);
  transition: transform .15s ease, opacity .15s ease, box-shadow .15s ease;
}
/* zonă de atingere mai mare decât creta subțire */
.k-tray .k-chalk::before, .k-tray .k-sponge::before { content: ""; position: absolute; inset: -14px -6px -8px; }
/* cretele stau grupate în capătul STÂNG al suportului (cerut de proprietar); buretele rămâne în dreapta */
.k-tray .k-chalk:nth-child(1) { left: 18px; background: #fbfaf3; }
.k-tray .k-chalk:nth-child(2) { left: 84px; background: var(--k-yellow); width: 40px; transform: rotate(-4deg); }
.k-tray .k-chalk:nth-child(3) { left: 136px; background: var(--k-pink); width: 34px; }
.k-tray .k-chalk:nth-child(4) { left: 182px; background: #93c5fd; width: 46px; transform: rotate(3deg); }
.k-tray .k-chalk:hover { transform: translateY(-4px) rotate(-3deg); }
/* creta „luată" din suport: rămâne doar urma ei */
.k-tray .k-chalk[aria-pressed="true"] { opacity: .25; transform: translateY(-2px); }
.k-tray .k-sponge {
  left: auto; right: 12%;
  width: 92px; height: 26px; bottom: 12px;
  background: linear-gradient(#475569 0 55%, var(--k-yellow) 55%);
}
.k-tray .k-sponge:hover { transform: translateY(-3px); }
.k-tray .k-sponge[aria-pressed="true"] { transform: translateY(-8px) rotate(-6deg); box-shadow: 0 6px 0 rgba(0,0,0,.25), 0 0 0 3px var(--k-yellow); }
.k-tray button:focus-visible { outline: 3px solid var(--k-yellow); outline-offset: 4px; }

/* canvasul de joacă acoperă interiorul ramei; textul lasă evenimentele să treacă spre el */
.k-board__canvas { position: absolute; inset: 0; width: 100%; height: 100%; border-radius: 4px; z-index: 1; touch-action: auto; }
.k-board > :not(.k-board__canvas):not(.k-tray):not(.k-doodle) { position: relative; z-index: 2; pointer-events: none; }
.k-board > .k-doodle { z-index: 2; }
.k-board__actions .btn { pointer-events: auto; }
.k-board.is-drawing .k-board__canvas { touch-action: none; cursor: crosshair; }
.k-board__hint {
  position: absolute !important;
  left: 0; right: 0; bottom: 10px;
  margin: 0; text-align: center;
  font-family: var(--k-hand); font-size: 22px; font-weight: 700;
  color: rgba(251,250,243,.6);
  transition: opacity .4s ease;
}
.k-board__hint.is-hidden { opacity: 0; }

/* ── Titluri de secțiune scrise „de mână" ─────────────────────────── */
.k-section { margin: 0 auto 64px; }
.k-section__title {
  text-align: center;
  font-size: clamp(30px, 4vw, 42px);
  font-weight: 800;
  margin: 0 0 8px;
}
.k-section__title mark {
  background: linear-gradient(transparent 55%, #fde68a 55%, #fde68a 90%, transparent 90%);
  color: inherit;
  padding: 0 4px;
}
.k-section__sub { text-align: center; color: var(--k-ink-soft); font-size: 19px; margin: 0 0 34px; }

/* ── Bilețele lipite cu bandă (funcțiile) ─────────────────────────── */
.k-notes { display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px; }
.k-note {
  position: relative;
  padding: 36px 22px 24px;
  border-radius: 4px 4px 18px 4px;
  box-shadow: 0 12px 20px -12px rgba(31,42,68,.45);
  transform: rotate(var(--tilt, -1.5deg));
  transition: transform .2s ease;
}
.k-note:hover { transform: rotate(0deg) translateY(-6px) scale(1.02); }
.k-note::before { /* banda adezivă */
  content: "";
  position: absolute; top: -12px; left: 50%;
  width: 92px; height: 26px;
  transform: translateX(-50%) rotate(-3deg);
  background: rgba(255,255,255,.65);
  border: 1px dashed rgba(31,42,68,.15);
}
.k-note:nth-child(1) { background: #fef08a; --tilt: -2deg; }
.k-note:nth-child(2) { background: #bfdbfe; --tilt: 1.5deg; }
.k-note:nth-child(3) { background: #fbcfe8; --tilt: -1deg; }
.k-note:nth-child(4) { background: #bbf7d0; --tilt: 2deg; }
.k-note svg { width: 72px; height: 72px; display: block; margin-bottom: 12px; }
.k-note h3 { font-size: 22px; font-weight: 800; margin: 0 0 6px; }
.k-note p { margin: 0; font-size: 16px; line-height: 1.5; color: #334155; }

/* ── 3 pași ───────────────────────────────────────────────────────── */
.k-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; counter-reset: step; }
.k-step {
  position: relative;
  background: #fff;
  border: 2px solid var(--k-ink);
  border-radius: 22px;
  padding: 30px 22px 22px;
  text-align: center;
  box-shadow: 0 3px 0 var(--k-ink);
}
.k-step__num {
  position: absolute; top: -26px; left: 50%; transform: translateX(-50%);
  width: 52px; height: 52px; border-radius: 50%;
  display: grid; place-items: center;
  font-size: 28px; font-weight: 800; color: #fff;
  border: 2px solid var(--k-ink);
}
.k-step:nth-child(1) .k-step__num { background: var(--k-red); }
.k-step:nth-child(2) .k-step__num { background: var(--k-blue); }
.k-step:nth-child(3) .k-step__num { background: var(--k-green); }
.k-step h3 { font-size: 22px; font-weight: 800; margin: 8px 0 4px; }
.k-step p { margin: 0; color: var(--k-ink-soft); font-size: 16px; }

/* ── Pentru cine ─────────────────────────────────────────────────── */
.k-who { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.k-who__card {
  display: flex; gap: 16px; align-items: flex-start;
  background: #fff;
  border-radius: 20px;
  padding: 22px;
  border: 2px solid #e2e8f0;
  box-shadow: 0 10px 24px -18px rgba(31,42,68,.5);
}
.k-who__icon {
  flex: none; width: 60px; height: 60px; border-radius: 16px;
  display: grid; place-items: center;
}
.k-who__icon svg { width: 38px; height: 38px; }
.k-who__card:nth-child(1) .k-who__icon { background: #fee2e2; }
.k-who__card:nth-child(2) .k-who__icon { background: #dbeafe; }
.k-who__card:nth-child(3) .k-who__icon { background: #dcfce7; }
.k-who__card h3 { margin: 0 0 4px; font-size: 20px; font-weight: 800; }
.k-who__card p  { margin: 0; color: var(--k-ink-soft); font-size: 16px; line-height: 1.45; }

/* ── Chemare finală: creion uriaș ────────────────────────────────── */
.k-pencil {
  display: flex; align-items: stretch;
  margin: 0 auto 40px; max-width: 900px;
  filter: drop-shadow(0 14px 18px rgba(31,42,68,.25));
}
.k-pencil__eraser { flex: none; width: 46px; background: var(--k-pink); border-radius: 22px 0 0 22px; }
.k-pencil__band   { flex: none; width: 22px; background: repeating-linear-gradient(90deg, #cbd5e1 0 4px, #94a3b8 4px 7px); }
.k-pencil__body {
  flex: 1;
  display: flex; align-items: center; justify-content: space-between; gap: 18px; flex-wrap: wrap;
  padding: 22px 26px;
  background: linear-gradient(var(--k-yellow) 0 33%, #fde047 33% 66%, #eab308 66%);
}
.k-pencil__body h2 { margin: 0; font-size: clamp(24px, 3.2vw, 34px); font-weight: 800; }
.k-pencil__tip {
  flex: none; width: 90px;
  background: linear-gradient(90deg, #f5d0a9 0 70%, var(--k-ink) 70%);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}

/* ═════════════════════ LOGIN / REGISTER ══════════════════════════ */
body.kids .auth-card {
  position: relative;
  max-width: 470px;
  margin: 56px auto 40px;
  padding: 58px 34px 30px 50px;
  border: 0;
  border-radius: 10px 22px 22px 10px;
  background:
    linear-gradient(90deg, transparent 32px, var(--k-margin) 32px, var(--k-margin) 34px, transparent 34px),
    repeating-linear-gradient(#fff 0 31px, #dbeafe 31px 32px);
  box-shadow: 0 2px 0 #e5e7eb, 0 6px 0 #f3f4f6, 0 26px 40px -22px rgba(31,42,68,.5);
}
/* spirala caietului */
body.kids .auth-card::before {
  content: "";
  position: absolute; top: -14px; left: 24px; right: 24px; height: 30px;
  background: radial-gradient(circle at 12px 15px, #94a3b8 0 7px, var(--k-paper) 7.5px 10px, transparent 10.5px) 0 0 / 34px 30px repeat-x;
}
body.kids .auth-card__icon {
  width: 96px; height: 96px;
  margin: -20px auto 6px;
  background: none; border: 0; box-shadow: none;
}
body.kids .auth-card__icon svg { width: 96px; height: 96px; }
body.kids .auth-card h1 { font-size: 34px; font-weight: 800; text-align: center; }
body.kids .auth-card .subtitle { text-align: center; color: var(--k-ink-soft); font-size: 17px; }
body.kids .field label { font-family: var(--k-font); font-weight: 700; color: var(--k-ink); font-size: 16px; }
body.kids .field input {
  font-family: var(--k-font);
  font-size: 17px;
  border: 2px solid #cbd5e1;
  border-radius: 14px;
  background: #fff;
}
body.kids .field input:focus { border-color: var(--k-blue); box-shadow: 0 0 0 4px rgba(59,130,246,.2); outline: none; }
body.kids .auth-card .btn-block { min-height: 54px; font-size: 18px; margin-top: 6px; }
body.kids .auth-card .btn-primary { background: var(--k-green); color: #fff; }
body.kids .auth-card .btn-primary:hover { background: #16a34a; color: #fff; }
body.kids .divider { font-family: var(--k-hand); font-size: 22px; color: var(--k-ink-soft); }
body.kids .plan-teaser {
  background: #fef9c3;
  border: 2px dashed #eab308;
  border-radius: 16px;
  transform: rotate(-.6deg);
}
body.kids .plan-teaser__badge { background: var(--k-green); color: #fff; }
body.kids .auth-footer-link { text-align: center; font-weight: 600; }
body.kids .auth-footer-link a, body.kids .plan-teaser a { color: var(--k-blue); font-weight: 800; }

body.kids .flash { font-family: var(--k-font); border-radius: 16px; border-width: 2px; }
body.kids .footer { background: #fff; border-top: 2px dashed #e2e8f0; font-family: var(--k-font); }

/* ═════════════════════ DASHBOARD („Lecțiile mele") ══════════════════ */

/* Salutul: numele scris de mână */
body.kids .dash-hero__title { font-family: var(--k-font); font-weight: 800; color: var(--k-ink); }
body.kids .dash-hero__name { font-family: var(--k-hand); font-weight: 700; color: var(--k-blue); font-size: 1.25em; }
body.kids .dash-hero__sub strong { font-family: var(--k-hand); color: var(--k-green); }

/* Căutarea: pastilă-jucărie */
body.kids .dash-search {
  background: #fff;
  border: 2px solid var(--k-ink);
  border-radius: 999px;
  box-shadow: 0 2px 0 var(--k-ink);
}
body.kids .dash-search:focus-within { box-shadow: 0 2px 0 var(--k-ink), 0 0 0 4px rgba(250,204,21,.6); }
body.kids .dash-search__input { font-family: var(--k-font); font-size: 17px; color: var(--k-ink); }
/* „Lecție nouă": mai subțire decât butoanele-jucărie standard (cerut de proprietar) */
body.kids .dash-hero__cta { border-width: 2px; box-shadow: 0 2px 0 var(--k-ink); font-weight: 700; }
body.kids .dash-hero__cta:hover { box-shadow: 0 3px 0 var(--k-ink); }
body.kids .dash-hero__cta:active { box-shadow: 0 1px 0 var(--k-ink); }

/* „Continuă unde ai rămas" = o tablă mică, cu ramă de lemn */
body.kids .continue-banner {
  background:
    radial-gradient(ellipse at 20% 0%, rgba(255,255,255,.08), transparent 60%),
    var(--k-board);
  color: var(--k-chalk);
  border: 7px solid var(--k-wood);
  border-radius: 14px;
  box-shadow: inset 0 0 0 2px var(--k-wood-dark), inset 0 0 30px rgba(0,0,0,.25), 0 6px 0 -1px var(--k-wood-dark), 0 12px 20px -12px rgba(31,42,68,.5);
}
body.kids .continue-banner:hover { transform: translateY(-2px); }
body.kids .continue-banner__icon { background: transparent; border-color: rgba(251,250,243,.7); color: var(--k-yellow); }
body.kids .continue-banner__icon svg { stroke: var(--k-yellow); }
body.kids .continue-banner__eyebrow { font-family: var(--k-hand); font-size: 19px; letter-spacing: 0; text-transform: none; color: var(--k-yellow); }
body.kids .continue-banner__title { font-family: var(--k-hand); font-size: 26px; font-weight: 700; color: var(--k-chalk); }
body.kids .continue-banner__time, body.kids .continue-banner__meta { color: rgba(251,250,243,.75); }
body.kids .continue-banner__chip { background: rgba(255,255,255,.12); color: var(--k-chalk); border-color: rgba(255,255,255,.3); }
body.kids .continue-banner__cta {
  background: var(--k-yellow); color: var(--k-ink);
  border: 2px solid var(--k-ink); border-radius: 999px;
  box-shadow: 0 2px 0 var(--k-ink); font-family: var(--k-font); font-weight: 800;
}

/* Bara de filtre = o riglă galbenă cu gradații */
body.kids .dash-toolbar {
  background:
    repeating-linear-gradient(90deg, rgba(31,42,68,.28) 0 1.5px, transparent 1.5px 12px) left bottom / 100% 7px no-repeat,
    repeating-linear-gradient(90deg, rgba(31,42,68,.35) 0 1.5px, transparent 1.5px 60px) left bottom / 100% 13px no-repeat,
    #fefbea;                     /* riglă foarte pală — culorile vii oboseau privirea (cerut de proprietar) */
  border: 2px solid var(--k-ink);
  border-radius: 14px;
  box-shadow: 0 2px 0 var(--k-ink);
  padding-bottom: 18px;
}
body.kids .dash-select__label, body.kids .dash-toolbar__label { font-family: var(--k-font); color: var(--k-ink); }
body.kids .combobox__trigger { font-family: var(--k-font); font-weight: 700; color: var(--k-ink); }
/* Filtrele Materie / Clasă — câmpuri clare: iconiță + etichetă deasupra valorii + săgeată */
body.kids .dash-toolbar__filters { gap: 10px; }
body.kids .dash-select {
  height: 48px;
  min-width: 190px;
  padding: 0 12px 0 6px;
  gap: 0;
  background: #fff;
  border: 2px solid var(--k-ink);
  border-radius: 14px;
  box-shadow: 0 2px 0 var(--k-ink);
  transition: transform .12s ease, box-shadow .12s ease, background .12s ease;
}
body.kids .dash-select:hover { background: #fff; transform: translateY(-1px); box-shadow: 0 3px 0 var(--k-ink); }
body.kids .dash-select:focus-within { border-color: var(--k-ink); box-shadow: 0 2px 0 var(--k-ink), 0 0 0 4px rgba(59, 130, 246, .35); }
body.kids .dash-select .combobox__trigger { gap: 10px; padding: 0; color: var(--k-ink); }
body.kids .dash-select__dot { display: none !important; }
body.kids .dash-select__icon {
  display: inline-grid;
  place-items: center;
  flex-shrink: 0;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: #ede9fe;
  color: #7c3aed;
  transition: background .12s ease, color .12s ease;
}
body.kids .dash-select--grade .dash-select__icon { background: #dbeafe; color: #2563eb; }
body.kids .dash-select__text {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
  min-width: 0;
}
body.kids .dash-select__label {
  margin: 0;
  padding: 0;
  border: 0;
  color: var(--k-ink-soft);
  font: 800 10px/1 var(--k-font);
  letter-spacing: .1em;
  text-transform: uppercase;
}
body.kids .dash-select .combobox__value {
  max-width: 100%;
  color: var(--k-ink);
  font: 700 15px/1.15 var(--k-font);
}
body.kids .dash-select:not(.is-filled) .combobox__value { color: var(--k-ink-soft); font-weight: 600; }
body.kids .dash-select__chevron { position: static; transform: none; margin-left: 4px; color: var(--k-ink); }
body.kids .combobox.is-open .dash-select__chevron { transform: rotate(180deg); }
/* Filtru activ: iconița se colorează (materia în culoarea ei), fundalul capătă o nuanță */
body.kids .dash-select--subject.is-filled { background: color-mix(in srgb, var(--sel-accent) 12%, white); }
body.kids .dash-select--subject.is-filled .dash-select__icon { background: var(--sel-accent); color: #fff; }
body.kids .dash-select--grade.is-filled { background: #eff6ff; }
body.kids .dash-select--grade.is-filled .dash-select__icon { background: var(--k-blue); color: #fff; }
/* Lista derulantă */
body.kids .combobox__panel {
  top: calc(100% + 8px);
  min-width: 240px;
  padding: 6px;
  border: 2px solid var(--k-ink);
  border-radius: 14px;
  box-shadow: 0 2px 0 var(--k-ink), 0 16px 28px -14px rgba(31, 42, 68, .4);
}
body.kids .combobox__option { padding: 9px 10px; border-radius: 9px; color: var(--k-ink); font: 600 14px/1.2 var(--k-font); }
body.kids .combobox__option:hover,
body.kids .combobox__option.is-active { background: #fef9c3; }
body.kids .combobox__option.is-selected { background: #fde68a; font-weight: 800; }
body.kids .combobox__option.is-selected.is-active,
body.kids .combobox__option.is-selected:hover { background: #fcd34d; }
body.kids .combobox__option-check { color: var(--k-ink); }
body.kids .dash-toolbar__clear {
  align-self: center;
  height: 36px;
  margin-left: 2px;
  padding: 0 13px;
  gap: 6px;
  border: 2px solid #b91c1c;
  border-radius: 999px;
  background: #fff;
  color: #b91c1c;
  font: 700 13.5px/1 var(--k-font);
  transition: background .12s ease;
}
body.kids .dash-toolbar__clear:hover { background: #fee2e2; }
@media (max-width: 760px) {
  body.kids .dash-select { width: 100%; height: 50px; }
}
@media (prefers-reduced-motion: reduce) {
  body.kids .dash-select { transition: none; }
}
body.kids .chip {
  font-family: var(--k-font); font-weight: 700; color: var(--k-ink);
  background: #fff; border: 2px solid var(--k-ink); border-radius: 999px;
  box-shadow: 0 2px 0 var(--k-ink);
}
body.kids .chip:hover { transform: translateY(-1px); box-shadow: 0 3px 0 var(--k-ink); }
body.kids .chip.is-active { background: var(--k-orange); color: var(--k-ink); border-color: var(--k-ink); }
body.kids .view-toggle { background: #fff; border: 2px solid var(--k-ink); border-radius: 12px; box-shadow: 0 2px 0 var(--k-ink); }
body.kids .view-toggle__btn.is-active { background: var(--k-blue); color: #fff; }

/* Cardurile de lecție = bilețele colorate, cu contur de cerneală */
body.kids .dash-grid .card-lesson {
  background: #fffcee;
  border: 2px solid var(--k-ink);
  border-radius: 16px;
  box-shadow: 0 2px 0 var(--k-ink);
}
/* nuanțe foarte pale (aproape albe) — alternanța rămâne, dar nu mai obosește privirea */
body.kids .dash-grid .card-lesson:nth-child(4n+2) { background: #f3f8ff; }
body.kids .dash-grid .card-lesson:nth-child(4n+3) { background: #fdf4f9; }
body.kids .dash-grid .card-lesson:nth-child(4n+4) { background: #f2fcf5; }
body.kids .dash-grid .card-lesson:hover { transform: translateY(-2px) rotate(-.4deg); box-shadow: 0 3px 0 var(--k-ink); }
body.kids .dash-grid .card-lesson__preview { background: #fff; border-color: var(--k-ink); }
body.kids .dash-grid[data-view="compact"] .card-lesson__preview { border-right: 2px solid var(--k-ink); }
body.kids .card-lesson__title { font-family: var(--k-font); font-weight: 800; font-size: 17px; color: var(--k-ink); }
body.kids .card-lesson__time { font-family: var(--k-font); font-weight: 600; color: var(--k-ink-soft); }
body.kids .card-lesson__delete { color: var(--k-red); }
body.kids .card-lesson__chip { font-family: var(--k-font); font-weight: 700; border: 2px solid var(--k-ink); }

/* ── Lecțiile mele (05.10.2026) ──────────────────────────────────────────
   Nuanța cardului vine din materie (aceeași materie = aceeași culoare peste tot);
   fără materie = hârtie neutră. Înlocuiește alternanța nth-child, care colora
   la întâmplare. Materiile fără --subj-* proprie împrumută culoarea celei mai apropiate. */
.card-lesson[data-subject="dlc"],
.card-lesson[data-subject="lb_materna"]       { --accent: var(--subj-romana); }
.card-lesson[data-subject="ds"]               { --accent: var(--subj-stiinte); }
.card-lesson[data-subject="dos"],
.card-lesson[data-subject="educatie_sociala"] { --accent: var(--subj-civica); }
.card-lesson[data-subject="dec"]              { --accent: var(--subj-arte); }
.card-lesson[data-subject="dpm"],
.card-lesson[data-subject="joc_miscare"]      { --accent: var(--subj-sport); }
.card-lesson[data-subject="germana"],
.card-lesson[data-subject="lb_moderna"],
.card-lesson[data-subject="latina"]           { --accent: var(--subj-franceza); }
.card-lesson[data-subject="tehnologica"]      { --accent: var(--subj-tic); }
.card-lesson[data-subject="logica"],
.card-lesson[data-subject="psihologie"],
.card-lesson[data-subject="economie"],
.card-lesson[data-subject="sociologie"],
.card-lesson[data-subject="filosofie"],
.card-lesson[data-subject="antreprenoriala"]  { --accent: var(--subj-istorie); }
body.kids .dash-grid .card-lesson:nth-child(n) { background: #fffdf5; }
body.kids .dash-grid .card-lesson[data-subject] { background: color-mix(in srgb, var(--accent) 8%, #fff); }

/* Redenumire pe loc — creionul de lângă „Duplică" (cards: pe miniatură, compact: în rând) */
body.kids .card-lesson__rename {
  position: absolute; top: 10px; right: 96px; z-index: 3;
  width: 34px; height: 34px; display: inline-flex; align-items: center; justify-content: center;
  border: 0; border-radius: 10px; background: rgba(255,255,255,.92); color: var(--k-ink);
  box-shadow: 0 1px 4px rgba(0,0,0,.15); cursor: pointer; opacity: 0; transition: opacity .15s;
}
body.kids .card-lesson:hover .card-lesson__rename,
body.kids .card-lesson:focus-within .card-lesson__rename { opacity: 1; }
@media (hover: none) { body.kids .card-lesson__rename { opacity: 1; } }
body.kids .dash-grid .card-lesson.is-renaming .card-lesson__rename { visibility: hidden; }
body.kids .card-lesson__title-input {
  width: 100%; min-width: 0; margin: 0; padding: 4px 8px;
  font: 800 16px/1.2 var(--k-font); color: var(--k-ink);
  background: #fff; border: 2px solid var(--k-blue); border-radius: 8px; outline: none;
  box-shadow: 0 0 0 3px rgba(59,130,246,.18);
}

/* Lista compactă: o singură coloană (se citește de sus în jos, nu în zigzag),
   cu coloane aliniate: miniatură | titlu | materie + clasă | dată | acțiuni.
   Titlul are prioritate — etichetele se scurtează primele. */
body.kids .dash-toolbar--compact:has(~ .dash-grid[data-view="compact"]) { margin-bottom: 14px; }
body.kids .dash-grid[data-view="compact"] { grid-template-columns: minmax(0, 1fr); gap: 8px; }
body.kids .dash-grid[data-view="compact"] .card-lesson__link { height: 60px; }
body.kids .dash-grid[data-view="compact"] .card-lesson__preview { width: 96px; height: 60px; aspect-ratio: auto; }
body.kids .dash-grid[data-view="compact"] .card-lesson__preview img { object-position: left top; }
body.kids .dash-grid[data-view="compact"] .card-lesson__subject-dot { display: none; }

body.kids .dash-grid[data-view="compact"] .card-lesson__body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 120px;
  grid-template-rows: auto auto;
  align-content: center;
  column-gap: 16px;
  row-gap: 3px;
  padding: 0 4px 0 16px;
}
body.kids .dash-grid[data-view="compact"] .card-lesson__title,
body.kids .dash-grid[data-view="compact"] .card-lesson__title-input { grid-column: 1; grid-row: 1; font-size: 16px; }
body.kids .dash-grid[data-view="compact"] .card-lesson__chips {
  display: flex; grid-column: 1; grid-row: 2;
  min-width: 0; overflow: hidden; gap: 6px;
}
body.kids .dash-grid[data-view="compact"] .card-lesson__chip {
  min-width: 0; overflow: hidden; text-overflow: ellipsis;
  padding: 0 8px; font-size: 11.5px; line-height: 18px; border-width: 1.5px;
}
body.kids .dash-grid[data-view="compact"] .card-lesson__chip--grade { flex-shrink: 0; }
body.kids .dash-grid[data-view="compact"] .card-lesson__footer { grid-column: 2; grid-row: 1 / 3; justify-content: flex-end; }
body.kids .dash-grid[data-view="compact"] .card-lesson__ruling { display: none; }
body.kids .dash-grid[data-view="compact"] .card-lesson__time { min-width: 0; font-size: 12.5px; }

/* Ecran lat: etichetele trec într-o coloană proprie, aceeași lățime pe toate rândurile */
@media (min-width: 1000px) {
  body.kids .dash-grid[data-view="compact"] .card-lesson__body {
    grid-template-columns: minmax(0, 1fr) minmax(0, 340px) 130px;
    grid-template-rows: auto;
  }
  body.kids .dash-grid[data-view="compact"] .card-lesson__chips { grid-column: 2; grid-row: 1; }
  body.kids .dash-grid[data-view="compact"] .card-lesson__footer { grid-column: 3; grid-row: 1; }
  body.kids .dash-grid[data-view="compact"] .card-lesson__chip { font-size: 12px; line-height: 20px; }
}

/* Acțiunile (redenumește, duplică, șterge) apar doar la hover/focus — nu mai e un coș
   roșu pe fiecare rând. Pe ecranele tactile rămân vizibile, estompate. */
body.kids .dash-grid[data-view="compact"] .card-lesson__rename,
body.kids .dash-grid[data-view="compact"] .card-lesson__dup-form,
body.kids .dash-grid[data-view="compact"] .card-lesson__delete-form {
  position: static; align-self: center; flex-shrink: 0; margin: 0; padding: 0; border: 0;
}
body.kids .dash-grid[data-view="compact"] .card-lesson__delete-form { margin-right: 10px; }
body.kids .dash-grid[data-view="compact"] .card-lesson__rename,
body.kids .dash-grid[data-view="compact"] .card-lesson__dup,
body.kids .dash-grid[data-view="compact"] .card-lesson__delete {
  width: 32px; height: 32px; margin-left: 2px; border-radius: 9px;
  background: transparent; box-shadow: none; opacity: 0;
  color: var(--k-ink-soft); transition: opacity .15s, background .15s, color .15s;
}
body.kids .dash-grid[data-view="compact"] .card-lesson__delete { color: var(--k-red); }
body.kids .dash-grid[data-view="compact"] .card-lesson:hover :is(.card-lesson__rename, .card-lesson__dup, .card-lesson__delete),
body.kids .dash-grid[data-view="compact"] .card-lesson:focus-within :is(.card-lesson__rename, .card-lesson__dup, .card-lesson__delete) { opacity: 1; }
body.kids .dash-grid[data-view="compact"] :is(.card-lesson__rename, .card-lesson__dup):hover { background: #e8eefc; color: var(--k-ink); }
body.kids .dash-grid[data-view="compact"] .card-lesson__delete:hover { background: #fee2e2; color: #b91c1c; transform: none; }
@media (hover: none) {
  body.kids .dash-grid[data-view="compact"] :is(.card-lesson__rename, .card-lesson__dup, .card-lesson__delete) { opacity: .6; }
}
@media (max-width: 560px) {
  /* Telefon: titlul ia tot rândul de sus; etichetele și data împart rândul de jos */
  body.kids .dash-grid[data-view="compact"] .card-lesson__preview { width: 72px; height: 56px; }
  body.kids .dash-grid[data-view="compact"] .card-lesson__link { height: 56px; }
  body.kids .dash-grid[data-view="compact"] .card-lesson__body { grid-template-columns: minmax(0, 1fr) auto; column-gap: 8px; padding: 0 2px 0 10px; }
  body.kids .dash-grid[data-view="compact"] .card-lesson__title,
  body.kids .dash-grid[data-view="compact"] .card-lesson__title-input { grid-column: 1 / 3; font-size: 14.5px; }
  body.kids .dash-grid[data-view="compact"] .card-lesson__footer { grid-column: 2; grid-row: 2; }
  body.kids .dash-grid[data-view="compact"] .card-lesson__time { font-size: 11.5px; }
  body.kids .dash-grid[data-view="compact"] .card-lesson__chip--subject { min-width: 5.5em; }
  body.kids .dash-grid[data-view="compact"] .card-lesson__dup-form { display: none; }
  body.kids .dash-grid[data-view="compact"] :is(.card-lesson__rename, .card-lesson__delete) { width: 30px; margin-left: 0; }
  body.kids .dash-grid[data-view="compact"] .card-lesson__delete-form { margin-right: 4px; }
}

/* Stare goală */
body.kids .empty { background: #fff; border: 2px dashed var(--k-ink-soft); border-radius: 22px; font-family: var(--k-font); }

/* ═══════════════════════ RESPONSIVE ═════════════════════════════ */
@media (max-width: 980px) {
  .k-notes { grid-template-columns: repeat(2, 1fr); }
  .k-who { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  body.kids { background-size: 100% 100%, 22px 22px, 22px 22px; background-image:
    linear-gradient(var(--k-grid) 1px, transparent 1px),
    linear-gradient(90deg, var(--k-grid) 1px, transparent 1px); background-size: 22px 22px, 22px 22px; }
  .k-board { padding: 48px 18px 60px; border-width: 11px; margin-top: 8px; }
  .k-board__lead { font-size: 17px; }
  .k-board__actions .btn { width: 100%; }
  .k-doodle--sun, .k-doodle--heart { display: none; }
  .k-doodle--abc { top: 10px; right: 14px; font-size: 30px; }
  .k-doodle--math { bottom: 16px; left: 14px; font-size: 26px; }
  .k-doodle--star { bottom: 18px; right: 18px; width: 38px; }
  .k-tray { left: 4%; right: 4%; }
  .k-tray .k-chalk { width: 34px !important; }
  .k-tray .k-chalk:nth-child(1) { left: 10px; }
  .k-tray .k-chalk:nth-child(2) { left: 52px; }
  .k-tray .k-chalk:nth-child(3) { left: 94px; }
  .k-tray .k-chalk:nth-child(4) { left: 136px; }
  .k-tray .k-sponge { width: 64px; right: 8%; }
  .k-board__hint { font-size: 18px; bottom: 4px; }
  .k-steps { grid-template-columns: 1fr; gap: 40px; }
  .k-pencil__eraser { width: 24px; }
  .k-pencil__band { width: 12px; }
  .k-pencil__tip { width: 44px; }
  .k-pencil__body { padding: 18px; }
  body.kids .auth-card { margin-top: 40px; padding: 52px 20px 24px 40px; }
}
@media (max-width: 520px) {
  .k-notes { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  body.kids .btn, .k-note { transition: none; }
  .k-note:hover { transform: rotate(var(--tilt)); }
}

/* ═══════════════════ PAGINA „CREDITELE MELE" (+ bara admin) ═══════════════════
   Același limbaj ca dashboard-ul: caiet, cerneală 2px, bilețele colorate,
   soldul scris cu cretă pe o tablă cu ramă de lemn. */

/* Bara de tab-uri admin = pastile pe caiet */
body.kids .admin-tabs { border-bottom: 2px dashed rgba(31, 42, 68, .18); padding-bottom: 12px; }
body.kids .admin-tabs__inner { gap: 8px; padding: 2px 2px 4px; }
body.kids .admin-tab {
  font-family: var(--k-font); font-size: 14.5px; font-weight: 700; color: var(--k-ink);
  padding: 7px 14px; background: #fff;
  border: 2px solid var(--k-ink); border-radius: 999px; box-shadow: 0 2px 0 var(--k-ink);
  transition: transform .12s ease, box-shadow .12s ease, background-color .12s ease;
}
body.kids .admin-tab:hover { background: #fef9c3; color: var(--k-ink); transform: translateY(-1px); box-shadow: 0 3px 0 var(--k-ink); }
body.kids .admin-tab.is-active { background: var(--k-yellow); color: var(--k-ink); border-color: var(--k-ink); }
body.kids .admin-tab svg { color: var(--k-ink); }

/* Titlul paginii: marcaj galben de „carioca" sub cuvinte */
body.kids .admin-hero__title {
  display: inline;
  font-family: var(--k-font); font-weight: 800; color: var(--k-ink);
  background: linear-gradient(transparent 62%, rgba(250, 204, 21, .55) 62% 92%, transparent 92%);
  padding: 0 4px;
}
body.kids .admin-hero__sub { font-family: var(--k-font); font-size: 16px; color: var(--k-ink-soft); margin-top: 8px; }

/* Control monetizare = bilețel alb prins cu bandă adezivă */
body.kids .mon-toggle {
  position: relative;
  background: #fff;
  border: 2px solid var(--k-ink); border-radius: 16px;
  box-shadow: 0 2px 0 var(--k-ink);
  font-family: var(--k-font);
}
body.kids .mon-toggle::before {
  content: ""; position: absolute; top: -11px; left: 50%; width: 92px; height: 20px;
  transform: translateX(-50%) rotate(-2deg);
  background: rgba(250, 204, 21, .55); border-left: 2px dashed rgba(31,42,68,.12); border-right: 2px dashed rgba(31,42,68,.12);
}
body.kids .mon-toggle__title { font-family: var(--k-font); font-weight: 800; color: var(--k-ink); }
body.kids .mon-toggle__title::before { display: none; }
body.kids .mon-toggle__title svg { color: var(--k-purple); }
body.kids .mon-toggle__status {
  font-family: var(--k-font); font-weight: 800; letter-spacing: .06em;
  border: 2px solid var(--k-ink); border-radius: 999px; box-shadow: 0 2px 0 var(--k-ink);
}
body.kids .mon-toggle__status--off { background: #fee2e2; color: #991b1b; }
body.kids .mon-toggle__status--on  { background: #bbf7d0; color: #14532d; }
body.kids .mon-toggle__desc, body.kids .mon-toggle__note { font-family: var(--k-font); color: var(--k-ink-soft); }
body.kids .mon-toggle__desc b { color: var(--k-ink); }
body.kids .mon-toggle code {
  font-size: .85em; padding: 1px 6px; border-radius: 6px;
  background: #fef9c3; border: 1.5px solid rgba(31, 42, 68, .25); color: var(--k-ink);
}

/* Sold = tabla de clasă, scris cu cretă */
body.kids .credits-hero__balance {
  border: 6px solid transparent;
  border-radius: 14px;
  background:
    radial-gradient(120% 160% at 12% 0%, rgba(255, 255, 255, .11), transparent 55%) padding-box,
    radial-gradient(90% 140% at 100% 100%, rgba(0, 0, 0, .22), transparent 60%) padding-box,
    linear-gradient(#2f644b, #285741) padding-box,
    linear-gradient(135deg, #b98650, #8d5c2f 45%, #a8733f 70%, #7f5129) border-box;
  box-shadow: inset 0 2px 10px rgba(0, 0, 0, .3), 0 2px 0 #6d4724, 0 10px 18px -12px rgba(70, 44, 18, .6);
  color: var(--k-chalk);
  font-family: var(--k-font);
}
body.kids .credits-hero__balance-glow { display: none; }
body.kids .credits-hero__balance-label { color: rgba(254, 243, 199, .85); letter-spacing: .14em; }
body.kids .credits-hero__number {
  font: 700 64px/0.9 var(--k-hand); color: var(--k-chalk); letter-spacing: 0;
  text-shadow: 0 0 1px rgba(255, 255, 255, .5), 0 0 10px rgba(255, 255, 255, .1);
}
body.kids .credits-hero__unit { font: 700 26px/1 var(--k-hand); color: #fde68a; opacity: 1; }
body.kids .credits-hero__balance-ron { color: rgba(247, 245, 236, .9); }
body.kids .credits-hero__balance-ron b { font: 700 24px/1 var(--k-hand); color: var(--k-chalk); }
body.kids .credits-hero__balance-rate { color: rgba(247, 245, 236, .7); opacity: 1; }
body.kids .credits-hero__cta {
  background: var(--k-yellow); color: var(--k-ink);
  border: 2px solid var(--k-ink); box-shadow: 0 2px 0 var(--k-ink);
  font-family: var(--k-font); font-size: 15px; font-weight: 800;
}
body.kids .credits-hero__cta:hover { color: var(--k-ink); background: #fde047; box-shadow: 0 3px 0 var(--k-ink); transform: translateY(-1px); }
body.kids .credits-hero__cta:active { box-shadow: 0 1px 0 var(--k-ink); transform: translateY(1px); }

/* Plan = bilețel lipit cu bandă adezivă */
body.kids .credits-hero__plan {
  position: relative;
  background: #dbeafe;
  border: 2px solid var(--k-ink); border-radius: 16px;
  box-shadow: 0 2px 0 var(--k-ink);
  font-family: var(--k-font);
}
body.kids .credits-hero__plan--premium { background: #fef9c3; }
body.kids .credits-hero__plan { justify-content: flex-start; gap: 10px; }
body.kids .credits-hero__plan-badge { align-self: flex-start; }
body.kids .credits-hero__plan::after {
  content: ""; position: absolute; top: -11px; right: 28px; width: 80px; height: 20px;
  transform: rotate(4deg);
  background: rgba(244, 114, 182, .45); border-left: 2px dashed rgba(31,42,68,.12); border-right: 2px dashed rgba(31,42,68,.12);
}
body.kids .credits-hero__plan-badge {
  font-family: var(--k-font); font-weight: 800; color: var(--k-ink);
  background: #fff; border: 2px solid var(--k-ink); box-shadow: 0 2px 0 var(--k-ink);
}
body.kids .credits-hero__plan--premium .credits-hero__plan-badge { background: var(--k-yellow); color: var(--k-ink); }
body.kids .credits-hero__plan--premium .credits-hero__plan-badge svg { color: #b45309; }
body.kids .credits-hero__plan-label { color: var(--k-ink-soft); font-family: var(--k-font); letter-spacing: .14em; }
body.kids .credits-hero__plan-expires, body.kids .credits-hero__plan-desc { font-family: var(--k-font); color: var(--k-ink); }
body.kids .credits-hero__plan-days { border: 2px solid var(--k-ink); background: #fff; color: var(--k-ink); }
body.kids .credits-hero__upgrade {
  background: var(--k-purple); color: #fff;
  border: 2px solid var(--k-ink); box-shadow: 0 2px 0 var(--k-ink);
  font-family: var(--k-font); font-weight: 800;
}
body.kids .credits-hero__upgrade:hover { color: #fff; box-shadow: 0 3px 0 var(--k-ink); transform: translateY(-1px); }

/* Cifrele = bilețele colorate ca în dashboard */
body.kids .credits-stat {
  background: #fef9c3;
  border: 2px solid var(--k-ink); border-radius: 16px;
  box-shadow: 0 2px 0 var(--k-ink);
  font-family: var(--k-font);
  transition: transform .12s ease, box-shadow .12s ease;
}
body.kids .credits-stat:nth-child(4n+2) { background: #fce7f3; }
body.kids .credits-stat:nth-child(4n+3) { background: #dbeafe; }
body.kids .credits-stat:nth-child(4n+4) { background: #dcfce7; }
body.kids .credits-stat:hover { transform: translateY(-2px) rotate(-.4deg); box-shadow: 0 3px 0 var(--k-ink); }
body.kids .credits-stat__icon { background: #fff !important; border: 2px solid var(--k-ink); color: var(--k-ink) !important; }
body.kids .credits-stat__icon--topup svg  { color: #15803d; }
body.kids .credits-stat__icon--spent svg  { color: #dc2626; }
body.kids .credits-stat__icon--assets svg { color: #4f46e5; }
body.kids .credits-stat__icon--grant svg  { color: #b45309; }
body.kids .credits-stat__val { font: 800 30px/1 var(--k-font); color: var(--k-ink); }
body.kids .credits-stat__lbl { font-family: var(--k-font); font-weight: 700; color: var(--k-ink-soft); }

/* Panourile = foi albe cu contur de cerneală */
body.kids .credits-panel {
  background: #fff;
  border: 2px solid var(--k-ink); border-radius: 16px;
  box-shadow: 0 2px 0 var(--k-ink);
  font-family: var(--k-font);
}
body.kids .credits-panel__head { border-bottom: 2px dashed rgba(31, 42, 68, .2); }
body.kids .credits-panel__title { font-family: var(--k-font); font-weight: 800; color: var(--k-ink); }
body.kids .credits-panel__title svg { color: var(--k-blue); }
body.kids .credits-panel__count {
  background: var(--k-yellow); color: var(--k-ink);
  border: 2px solid var(--k-ink); font-family: var(--k-font); font-weight: 800;
}
body.kids .credits-empty { color: var(--k-ink-soft); font-family: var(--k-font); }
body.kids .credits-timeline__item { border-bottom: 2px dashed rgba(31, 42, 68, .12); }
body.kids .credits-timeline__icon { border: 2px solid var(--k-ink); }
body.kids .credits-timeline__title { font-family: var(--k-font); font-weight: 800; color: var(--k-ink); }
body.kids .credits-timeline__note { font-family: var(--k-font); color: var(--k-ink); }
body.kids .credits-timeline__date, body.kids .credits-timeline__balance { font-family: var(--k-font); color: var(--k-ink-soft); }
body.kids .credits-timeline__delta-val { font: 700 26px/1 var(--k-hand); }
body.kids .credits-asset {
  background: #fffdf5;
  border: 2px solid var(--k-ink); border-radius: 14px;
  box-shadow: 0 2px 0 var(--k-ink);
  font-family: var(--k-font);
}
body.kids .credits-asset:hover { background: #fef9c3; box-shadow: 0 3px 0 var(--k-ink); }
body.kids .credits-asset__thumb { background: #fff; border: 2px solid var(--k-ink); }
body.kids .credits-asset__name { font-family: var(--k-font); font-weight: 800; color: var(--k-ink); }
body.kids .credits-asset__cat { font-family: var(--k-font); border: 1.5px solid var(--k-ink); color: var(--k-ink); background: #dcfce7; }
body.kids .credits-asset__price-val { background: var(--k-yellow); color: var(--k-ink); border: 2px solid var(--k-ink); font-family: var(--k-font); }
body.kids .credits-asset__price-gift { background: #fce7f3; color: #9d174d; border: 2px solid var(--k-ink); font-family: var(--k-font); }
@media (prefers-reduced-motion: reduce) {
  body.kids .admin-tab, body.kids .credits-stat { transition: none; }
}

/* ═══════════════════ PAGINILE DE ADMINISTRARE ═══════════════════
   Tema e activată din _admin_quick_nav.php. Același limbaj ca dashboard-ul:
   foi albe cu cerneală 2px, bara de căutare = rigla galbenă, titluri cu marcaj. */

/* Titluri de pagină (admin-hero e deja stilizat mai sus) */
body.kids .page-header h1,
body.kids .lin-hero h1,
body.kids .linform-hero h1 {
  display: inline;
  font-family: var(--k-font); font-weight: 800; color: var(--k-ink);
  background: linear-gradient(transparent 62%, rgba(250, 204, 21, .55) 62% 92%, transparent 92%);
  padding: 0 4px;
}
body.kids .lin-hero h1, body.kids .linform-hero h1 { font-size: 2rem; }
body.kids .page-header .page-header__sub,
body.kids .lin-hero p,
body.kids .linform-hero .crumbs { font-family: var(--k-font); color: var(--k-ink-soft); margin-top: 8px; }
body.kids .page-header__back,
body.kids .linform-hero .crumbs a { color: var(--k-ink); font-weight: 700; }
body.kids .lin-page { padding-inline: 0; }

/* Foi albe: panouri, carduri de formular, categorii de planuri, grupuri */
body.kids .admin-panel,
body.kids .linform-card,
body.kids .plans-category,
body.kids .asset-group,
body.kids .batch-preview__table-wrap,
body.kids .table-wrap {
  background: #fff;
  border: 2px solid var(--k-ink);
  border-radius: 16px;
  box-shadow: 0 2px 0 var(--k-ink);
  font-family: var(--k-font);
}
/* Fără chenar dublu: tabelul / categoria stau deja într-un panou */
body.kids .admin-panel .table-wrap,
body.kids .plans-category .table-wrap {
  background: transparent; border: 0; border-radius: 0; box-shadow: none;
}
body.kids .admin-panel .plans-category {
  border: 0; border-top: 2px dashed rgba(31, 42, 68, .15); border-radius: 0; box-shadow: none;
}
body.kids .admin-panel h2,
body.kids .linform-card h2,
body.kids .plans-category__name { font-family: var(--k-font); font-weight: 800; color: var(--k-ink); }
body.kids .admin-panel h2::before { background: var(--k-orange); }
body.kids .admin-panel h3 { font-family: var(--k-font); color: var(--k-ink); }
body.kids .admin-panel--money { background: #fef9c3; }
body.kids .admin-panel--danger { background: #fff1f2; border-color: #b91c1c; box-shadow: 0 2px 0 #b91c1c; }
body.kids .admin-panel--danger h2::before { background: #ef4444; }
body.kids .admin-panel__sep { border-top: 2px dashed rgba(31, 42, 68, .15); }
body.kids .admin-panel__note, body.kids .form-hint, body.kids .lf-hint, body.kids .u-muted { color: var(--k-ink-soft); }
body.kids .info-row { border-bottom: 2px dashed rgba(31, 42, 68, .1); }
body.kids .plans-category__icon, body.kids .asset-group__icon { background: #fef9c3; border: 2px solid var(--k-ink); color: var(--k-ink); }
body.kids .asset-group__summary:hover { background: #fffbeb; }
body.kids .asset-group__name { font-family: var(--k-font); font-weight: 800; color: var(--k-ink); }
body.kids .asset-group__count { background: var(--k-yellow); color: var(--k-ink); border: 2px solid var(--k-ink); }

/* Bara de căutare + filtre = rigla galbenă din dashboard */
body.kids .admin-toolbar,
body.kids .lin-filters {
  background:
    repeating-linear-gradient(90deg, rgba(31,42,68,.55) 0 1.5px, transparent 1.5px 12px) left bottom / 100% 7px no-repeat,
    repeating-linear-gradient(90deg, rgba(31,42,68,.55) 0 1.5px, transparent 1.5px 60px) left bottom / 100% 13px no-repeat,
    #fde68a;
  border: 2px solid var(--k-ink);
  border-radius: 14px;
  box-shadow: 0 2px 0 var(--k-ink);
  padding-bottom: 22px;
  font-family: var(--k-font);
}
body.kids .admin-toolbar .dash-toolbar__label,
body.kids .lin-filters label { color: var(--k-ink); font-family: var(--k-font); }

/* Câmpuri de formular */
body.kids .form-input,
body.kids .field input, body.kids .field select, body.kids .field textarea,
body.kids .linform-field input, body.kids .linform-field select, body.kids .linform-field textarea,
body.kids .lin-filters input, body.kids .lin-filters select,
body.kids .batch-preview__input, body.kids .batch-preview__select {
  background-color: #fff;
  border: 2px solid var(--k-ink);
  border-radius: 12px;
  color: var(--k-ink);
  font-family: var(--k-font);
  box-shadow: none;
}
body.kids .form-input:focus,
body.kids .field input:focus, body.kids .field select:focus, body.kids .field textarea:focus,
body.kids .linform-field input:focus, body.kids .linform-field select:focus, body.kids .linform-field textarea:focus,
body.kids .lin-filters input:focus, body.kids .lin-filters select:focus {
  outline: none;
  border-color: var(--k-ink);
  box-shadow: 0 0 0 4px rgba(250, 204, 21, .6);
}
body.kids .form-lbl, body.kids .lf-label, body.kids .field label { font-family: var(--k-font); font-weight: 800; color: var(--k-ink); }

/* Tabele */
body.kids .users-table th, body.kids .assets-table th, body.kids .plans-table th, body.kids .batch-preview__table th {
  background: transparent;
  font-family: var(--k-font); color: var(--k-ink-soft); letter-spacing: .08em;
  border-bottom: 2px solid var(--k-ink);
}
body.kids .users-table td, body.kids .assets-table td, body.kids .plans-table td, body.kids .batch-preview__table td {
  font-family: var(--k-font); color: var(--k-ink);
  border-bottom: 2px dashed rgba(31, 42, 68, .1);
}
body.kids .users-table tbody tr:hover, body.kids .assets-table tbody tr:hover { background: #fffbeb; }
body.kids .users-table__user-name { font-weight: 800; }
body.kids .badge { border: 1.5px solid var(--k-ink); font-family: var(--k-font); }

/* Carduri: asset-uri, planșe, liniaturi */
body.kids .asset-card,
body.kids .admin-board-card,
body.kids .lin-card {
  background: #fff;
  border: 2px solid var(--k-ink);
  border-radius: 16px;
  box-shadow: 0 2px 0 var(--k-ink);
  font-family: var(--k-font);
  transition: transform .12s ease, box-shadow .12s ease;
}
body.kids .asset-card:hover,
body.kids .admin-board-card:hover,
body.kids .lin-card:hover { transform: translateY(-2px) rotate(-.4deg); box-shadow: 0 3px 0 var(--k-ink); }
body.kids .asset-card__preview,
body.kids .admin-board-card__preview,
body.kids .lin-card__preview { background: #fffdf5; border-bottom: 2px solid var(--k-ink); }
body.kids .asset-card__body { background: #fef9c3; }
body.kids .asset-grid > .asset-card:nth-child(4n+2) .asset-card__body { background: #dbeafe; }
body.kids .asset-grid > .asset-card:nth-child(4n+3) .asset-card__body { background: #fce7f3; }
body.kids .asset-grid > .asset-card:nth-child(4n+4) .asset-card__body { background: #dcfce7; }
body.kids .asset-card__name, body.kids .admin-board-card__title, body.kids .lin-card__nume { font-family: var(--k-font); font-weight: 800; color: var(--k-ink); }
body.kids .asset-card__badge { border: 1.5px solid var(--k-ink); }
body.kids .lin-tag { border: 1.5px solid var(--k-ink); font-family: var(--k-font); }

/* Carduri de sus din Planuri = bilețele */
body.kids .credits-card {
  background: #dbeafe;
  border: 2px solid var(--k-ink); border-radius: 16px;
  box-shadow: 0 2px 0 var(--k-ink);
  font-family: var(--k-font);
}
body.kids .credits-card::before { display: none; }
body.kids .credits-card--plan { background: #fef9c3; }
body.kids .credits-card__label { color: var(--k-ink-soft); letter-spacing: .14em; }
body.kids .credits-card__val { font-family: var(--k-font); color: var(--k-ink); }
body.kids .credits-card__sub { color: var(--k-ink); }
body.kids .plans-check--yes { border: 2px solid var(--k-ink); }

/* Paginare liniaturi */
body.kids .lin-pagination a, body.kids .lin-pagination span {
  font-family: var(--k-font); font-weight: 800; color: var(--k-ink);
  background: #fff; border: 2px solid var(--k-ink); border-radius: 999px; box-shadow: 0 2px 0 var(--k-ink);
}
body.kids .lin-pagination .is-active { background: var(--k-yellow); color: var(--k-ink); }

/* Zone de încărcare */
body.kids .batch-upload__ref { border: 2px dashed rgba(31, 42, 68, .25); border-radius: 12px; background: #fffdf5; box-shadow: none; }
body.kids .dropzone,
body.kids .batch-upload__drop {
  background: #fffdf5;
  border: 2px dashed var(--k-ink);
  border-radius: 16px;
  font-family: var(--k-font);
  color: var(--k-ink);
}

/* Ferestre modale */
body.kids .modal {
  background: #fffdf5;
  border: 2px solid var(--k-ink); border-radius: 18px;
  box-shadow: 0 3px 0 var(--k-ink), 0 24px 48px -20px rgba(31, 42, 68, .45);
  font-family: var(--k-font);
}
body.kids .modal__head { border-bottom: 2px dashed rgba(31, 42, 68, .15); }
body.kids .modal__foot { border-top: 2px dashed rgba(31, 42, 68, .15); }
body.kids .modal__head h2, body.kids .modal__head h3 { font-family: var(--k-font); font-weight: 800; color: var(--k-ink); }

@media (prefers-reduced-motion: reduce) {
  body.kids .asset-card, body.kids .admin-board-card, body.kids .lin-card { transition: none; }
}


/* Penajul bufniței se estompează treptat în hârtia caietului. */
body.kids .auth-card__icon:has(img) {
  width: 104px; height: 104px;
  top: -44px;
}
body.kids .auth-card__icon img {
  width: 100%; height: 100%;
  filter: saturate(.86) contrast(.96) brightness(1.04);
  mix-blend-mode: multiply;
  -webkit-mask-image: linear-gradient(to bottom, #000 0%, #000 54%, rgba(0,0,0,.96) 67%, rgba(0,0,0,.65) 82%, transparent 100%);
  mask-image: linear-gradient(to bottom, #000 0%, #000 54%, rgba(0,0,0,.96) 67%, rgba(0,0,0,.65) 82%, transparent 100%);
}

/* Login pe orizontală: formularul în stânga, Google + „Nu ai cont?" în dreapta */
body.kids .auth-card--wide { max-width: 940px; }
.auth-split {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 28px;
  align-items: start;
}
.auth-split__col { min-width: 0; }
.auth-split .plan-teaser { margin-top: 18px; }
.divider.auth-split__or { flex-direction: column; align-self: stretch; margin: 0; }
.divider.auth-split__or::before,
.divider.auth-split__or::after { flex: 1; width: 1px; height: auto; min-height: 24px; }
@media (max-width: 760px) {
  .auth-split { grid-template-columns: 1fr; gap: 0; }
  .divider.auth-split__or { flex-direction: row; margin: var(--space-6) 0; }
  .divider.auth-split__or::before,
  .divider.auth-split__or::after { width: auto; height: 1px; min-height: 0; }
}
