/* ============================================================
   neo.css — Bilim X "Neo" (Kozmik Laboratuvar) gece modu
   data-theme="neo" iken devreye girer. Sadece renk değil,
   tüm tasarım dilini (cam kart + neon + degrade + Space Grotesk)
   dönüştürür. Gündüz modu bu dosyadan etkilenmez.
   ============================================================ */

/* ---------- 1) Token takası (iki palet birden) ---------- */
:root[data-theme="neo"] {
    /* style.css paleti */
    --ink:        #f3ecf8;
    --ink-soft:   #c3b1d1;
    --teal:       #e04fa8;
    --teal-dark:  #f072bb;
    --teal-tint:  #37173a;
    --amber:      #f7991d;
    --violet:     #c072d8;
    --coral:      #f0682c;
    --surface:    #160c1d;
    --surface-2:  #1d1228;
    --line:       rgba(255,255,255,.12);
    --line-soft:  rgba(255,255,255,.08);
    --brand-grad: linear-gradient(135deg, #8e2d8a 0%, #c5388d 45%, #f0682c 100%);
    --shadow:     0 8px 28px rgba(0,0,0,.5);
    --shadow-lg:  0 22px 60px rgba(0,0,0,.62);

    /* home.css (--bx-*) paleti */
    --bx-ink:     #f5eefb;
    --bx-text:    #cdbcdb;
    --bx-muted:   #a892ba;
    --bx-label:   #8f7ba3;
    --bx-purple:  #c072d8;
    --bx-magenta: #e04fa8;
    --bx-orange:  #f5841f;
    --bx-bg:      #160c1d;
    --bx-line:    rgba(255,255,255,.10);

    --neo-glass:  rgba(255,255,255,.045);
    --neo-glass2: rgba(255,255,255,.07);
    --neo-brd:    rgba(255,255,255,.13);
    --neo-mag:    #e04fa8;
    --neo-org:    #f0682c;
    color-scheme: dark;
}

/* ---------- 2) Kozmik zemin + yıldız/molekül dokusu ---------- */
:root[data-theme="neo"] body {
    background:
        radial-gradient(1100px 620px at 82% -6%, rgba(224,79,168,.18), transparent 60%),
        radial-gradient(860px 520px at -4% 4%, rgba(240,104,44,.13), transparent 55%),
        linear-gradient(180deg, #160c1d 0%, #241130 55%, #160c1d 100%);
    background-attachment: fixed;
    color: var(--ink);
}
:root[data-theme="neo"] body::before {
    content: ""; position: fixed; inset: 0; z-index: 0; pointer-events: none; opacity: .5;
    background-image:
        radial-gradient(1.4px 1.4px at 20% 30%, rgba(255,255,255,.35) 50%, transparent 51%),
        radial-gradient(1.4px 1.4px at 70% 60%, rgba(255,255,255,.28) 50%, transparent 51%),
        radial-gradient(1.2px 1.2px at 45% 80%, rgba(224,79,168,.4) 50%, transparent 51%),
        radial-gradient(1.2px 1.2px at 85% 20%, rgba(247,153,29,.35) 50%, transparent 51%),
        radial-gradient(1.2px 1.2px at 10% 70%, rgba(255,255,255,.25) 50%, transparent 51%);
    background-size: 520px 520px, 640px 640px, 480px 480px, 700px 700px, 560px 560px;
}
:root[data-theme="neo"] main,
:root[data-theme="neo"] .site-header,
:root[data-theme="neo"] .site-footer { position: relative; z-index: 1; }

/* ---------- 3) Başlıklar: Space Grotesk ---------- */
:root[data-theme="neo"] h1,
:root[data-theme="neo"] h2,
:root[data-theme="neo"] h3,
:root[data-theme="neo"] .hx-h2,
:root[data-theme="neo"] .num {
    font-family: 'Space Grotesk', var(--font-display), sans-serif;
    letter-spacing: -.02em;
}

/* ---------- 4) Üst menü: koyu cam ---------- */
:root[data-theme="neo"] .site-header {
    background: rgba(20,11,27,.72) !important;
    backdrop-filter: blur(14px);
    border-bottom: 1px solid rgba(255,255,255,.08) !important;
}
:root[data-theme="neo"] .site-header .btn-ghost {
    background: rgba(255,255,255,.05) !important;
    border-color: var(--neo-brd) !important;
    color: var(--ink) !important;
}
:root[data-theme="neo"] .nav-links a { color: var(--bx-text); }
:root[data-theme="neo"] .nav-links a:hover { color: #fff; background: rgba(255,255,255,.06); }
:root[data-theme="neo"] .nav-links a.active { color: var(--neo-mag); }
:root[data-theme="neo"] .nav-toggle span { background: #fff; }

/* ---------- 5) Kartlar → koyu cam + neon kenar ---------- */
:root[data-theme="neo"] .card,
:root[data-theme="neo"] .hx-about-media .card,
:root[data-theme="neo"] .beaker-card,
:root[data-theme="neo"] .hx-mini,
:root[data-theme="neo"] .hx-level,
:root[data-theme="neo"] .hx-includes,
:root[data-theme="neo"] .hx-form-card,
:root[data-theme="neo"] .hx-approach .list,
:root[data-theme="neo"] .sim-card,
:root[data-theme="neo"] .tool-card,
:root[data-theme="neo"] .chip,
:root[data-theme="neo"] .stat-card,
:root[data-theme="neo"] .exp-card,
:root[data-theme="neo"] .form-card,
:root[data-theme="neo"] .feature,
:root[data-theme="neo"] body.panel-lapin .lp-card,
:root[data-theme="neo"] .info-card {
    background: var(--neo-glass) !important;
    border: 1px solid var(--neo-brd) !important;
    backdrop-filter: blur(10px);
    box-shadow: 0 10px 30px rgba(0,0,0,.35);
    color: var(--ink);
}
:root[data-theme="neo"] .card:hover,
:root[data-theme="neo"] .sim-card:hover,
:root[data-theme="neo"] .tool-card:hover,
:root[data-theme="neo"] .hx-mini:hover {
    border-color: var(--neo-mag);
    box-shadow: 0 0 0 1px rgba(224,79,168,.4), 0 14px 40px rgba(224,79,168,.22);
}
/* içerik metinleri kartlarda okunur kalsın */
:root[data-theme="neo"] .card p,
:root[data-theme="neo"] .hx-mini p,
:root[data-theme="neo"] .hx-includes li { color: var(--bx-text); }

/* ---------- 6) Butonlar ---------- */
:root[data-theme="neo"] .btn-primary,
:root[data-theme="neo"] .hx-btn-grad,
:root[data-theme="neo"] .hx-btn-primary {
    background: linear-gradient(135deg, #8e2d8a, #c5388d 55%, #f0682c) !important;
    color: #fff !important;
    border: none;
    box-shadow: 0 8px 26px rgba(224,79,168,.45);
}
:root[data-theme="neo"] .btn-primary:hover,
:root[data-theme="neo"] .hx-btn-grad:hover {
    box-shadow: 0 10px 34px rgba(224,79,168,.6);
    filter: brightness(1.06);
}
:root[data-theme="neo"] .btn-ghost,
:root[data-theme="neo"] .hx-btn-outline,
:root[data-theme="neo"] .hx-btn-light {
    background: rgba(255,255,255,.05) !important;
    border: 1px solid var(--neo-brd) !important;
    color: var(--ink) !important;
    backdrop-filter: blur(6px);
}
:root[data-theme="neo"] .btn-ghost:hover,
:root[data-theme="neo"] .hx-btn-outline:hover {
    border-color: var(--neo-mag) !important;
    color: #fff !important;
    box-shadow: 0 0 18px rgba(224,79,168,.35);
}

/* ---------- 7) Hero + rozet/pill ---------- */
:root[data-theme="neo"] .hero-pill,
:root[data-theme="neo"] .hx-badge,
:root[data-theme="neo"] .hero-eyebrow {
    background: rgba(224,79,168,.14);
    border: 1px solid rgba(224,79,168,.4);
    color: #f6bfe0;
    box-shadow: 0 0 20px rgba(224,79,168,.2);
}
/* hero'daki degrade metin daha parlak neon */
:root[data-theme="neo"] .bx-grad-text,
:root[data-theme="neo"] .hero h1 .accent {
    background: linear-gradient(120deg, #d15be6, #e04fa8 50%, #f0682c);
    -webkit-background-clip: text; background-clip: text;
    -webkit-text-fill-color: transparent; color: transparent;
}
/* hero dekor parlaması */
:root[data-theme="neo"] .hx-hero-media .glow,
:root[data-theme="neo"] .hx-hero-media .blur {
    background: radial-gradient(circle, rgba(224,79,168,.55), rgba(240,104,44,.25) 45%, transparent 70%);
    filter: blur(30px);
}
/* açık zeminli blueprint ızgarasını gizle (gündüzde kalır) */
:root[data-theme="neo"] .hero::before { opacity: .12; }

/* ---------- 8) Bölüm zeminleri / ayraçlar ---------- */
:root[data-theme="neo"] section[style*="#fff"],
:root[data-theme="neo"] .hx-approach { background: transparent; }
:root[data-theme="neo"] .wave path,
:root[data-theme="neo"] .wave { fill: #160c1d !important; }
:root[data-theme="neo"] hr,
:root[data-theme="neo"] .divider { border-color: var(--neo-brd); }

/* ---------- 8b) HERO: kozmik şişe görseli (Nano Banana Pro) ---------- */
:root[data-theme="neo"] .hx-hero {
    background:
        linear-gradient(90deg, rgba(22,12,29,.97) 0%, rgba(22,12,29,.82) 42%, rgba(22,12,29,.30) 75%, rgba(22,12,29,.45) 100%),
        url('../img/neo/hero.jpg') right center / cover no-repeat !important;
}
:root[data-theme="neo"] .hx-hero::before,
:root[data-theme="neo"] .hx-hero::after { opacity: .35; }
/* logo diskini gizle — arkadaki kozmik şişe görseli sahnede */
:root[data-theme="neo"] .hx-hero-media .disc {
    background: transparent !important; box-shadow: none;
}
:root[data-theme="neo"] .hx-hero-media .disc::before { border-color: rgba(224,79,168,.35); }
:root[data-theme="neo"] .hx-hero-media .disc > img { opacity: 0; }
:root[data-theme="neo"] .hx-hero-media .glow { opacity: .5; }
/* süzülen çipler cam olsun, görselin üstünde dursun */
:root[data-theme="neo"] .hx-hero-media .chip {
    background: rgba(22,12,29,.66) !important;
    border: 1px solid rgba(224,79,168,.45) !important;
    color: #f6e7f1;
    backdrop-filter: blur(8px);
    box-shadow: 0 0 18px rgba(224,79,168,.3);
}
/* hero istatistik sayıları: neon degrade + ışıma */
:root[data-theme="neo"] .hx-hero-stats .num,
:root[data-theme="neo"] .hero-stats .stat .num {
    background: linear-gradient(120deg, #e04fa8, #f7991d);
    -webkit-background-clip: text; background-clip: text;
    -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 0 12px rgba(224,79,168,.5));
}
:root[data-theme="neo"] .hx-hero-stats .lbl,
:root[data-theme="neo"] .hero-stats .stat .lbl { color: var(--bx-muted); }

/* ---------- 8c) Diğer açık bölüm zeminleri → kozmik ---------- */
:root[data-theme="neo"] .hx-model-bg {
    background: linear-gradient(170deg, #1a0f24 0%, #241130 55%, #1d0f26 100%) !important;
}
:root[data-theme="neo"] .hx-includes .it,
:root[data-theme="neo"] .hx-approach .grid .it {
    background: var(--neo-glass2) !important;
    border: 1px solid var(--neo-brd);
    color: var(--ink);
}
:root[data-theme="neo"] .hx-approach .grid .it:hover { background: rgba(224,79,168,.12) !important; }
:root[data-theme="neo"] .hx-approach .grid .it,
:root[data-theme="neo"] .hx-approach .grid .it * { color: var(--ink); }
/* mini kart ikon kutuları */
:root[data-theme="neo"] .hx-mini .ic,
:root[data-theme="neo"] .info-card .ic,
:root[data-theme="neo"] .hx-includes .ic {
    background: linear-gradient(135deg, rgba(224,79,168,.22), rgba(240,104,44,.22)) !important;
    color: #f6bfe0 !important;
    box-shadow: 0 0 14px rgba(224,79,168,.25);
}

/* yaş kartları (Anaokulu/İlkokul/Ortaokul): düz parlak degrade → koyu cam + ayrı neon vurgu */
:root[data-theme="neo"] .age-card {
    background: var(--neo-glass) !important;
    border: 1px solid var(--neo-brd);
    backdrop-filter: blur(10px);
    box-shadow: 0 10px 30px rgba(0,0,0,.3);
}
:root[data-theme="neo"] .age-card p { color: var(--bx-text) !important; }
:root[data-theme="neo"] .age-card .em { opacity: 1; }
/* c1 = mor, c2 = magenta, c3 = turuncu — ayırt edilir ama uyumlu */
:root[data-theme="neo"] .age-card.c1 {
    border-color: rgba(180,101,201,.5) !important;
    box-shadow: 0 0 20px rgba(180,101,201,.2), inset 0 0 40px rgba(180,101,201,.06);
}
:root[data-theme="neo"] .age-card.c1 .em { color: #c072d8 !important; }
:root[data-theme="neo"] .age-card.c2 {
    border-color: rgba(224,79,168,.5) !important;
    box-shadow: 0 0 20px rgba(224,79,168,.22), inset 0 0 40px rgba(224,79,168,.06);
}
:root[data-theme="neo"] .age-card.c2 .em { color: #e04fa8 !important; }
:root[data-theme="neo"] .age-card.c3 {
    border-color: rgba(240,104,44,.5) !important;
    box-shadow: 0 0 20px rgba(240,104,44,.22), inset 0 0 40px rgba(240,104,44,.06);
}
:root[data-theme="neo"] .age-card.c3 .em { color: #f7991d !important; }
/* iş ortakları şeridi zaten koyu mor — neon kenar ver */
:root[data-theme="neo"] .hx-partners {
    background: linear-gradient(135deg, #241130 0%, #37173a 55%, #2a1430 100%) !important;
    border-top: 1px solid var(--neo-brd);
    border-bottom: 1px solid var(--neo-brd);
}

/* ---------- 8d) Neon ilerleme + grafik dili ---------- */
:root[data-theme="neo"] .progress,
:root[data-theme="neo"] .progress-bar-wrap,
:root[data-theme="neo"] .bar-track { background: rgba(255,255,255,.08) !important; }
:root[data-theme="neo"] .progress-bar,
:root[data-theme="neo"] .bar-fill,
:root[data-theme="neo"] .progress > span {
    background: linear-gradient(90deg, #c5388d, #f0682c) !important;
    box-shadow: 0 0 12px rgba(224,79,168,.55);
}
:root[data-theme="neo"] table { color: var(--ink); }
:root[data-theme="neo"] table th { color: var(--bx-muted); border-color: var(--neo-brd) !important; }
:root[data-theme="neo"] table td { border-color: var(--line-soft) !important; }
:root[data-theme="neo"] tbody tr:hover { background: rgba(224,79,168,.07); }
/* veri tabloları (Sınıflarım vb.): beyaz hover parlaması → neon vurgu */
:root[data-theme="neo"] table.data th {
    background: rgba(255,255,255,.05) !important;
    color: rgba(255,255,255,.6) !important;
}
:root[data-theme="neo"] table.data td { color: var(--ink); }
:root[data-theme="neo"] table.data tr:hover td { background: rgba(224,79,168,.09) !important; }

/* ---------- 8e) Sınıf analiz sayfası (ca-*) — beyaz kart/metinler → koyu cam ---------- */
:root[data-theme="neo"] .ca-kpi,
:root[data-theme="neo"] .ca-diff-card {
    background: rgba(255,255,255,.06) !important;
    border-color: rgba(255,255,255,.15) !important;
}
:root[data-theme="neo"] .ca-kpi .l,
:root[data-theme="neo"] .ca-diff-card .d,
:root[data-theme="neo"] .ca-bar-lbl { color: rgba(255,255,255,.65) !important; }
:root[data-theme="neo"] .ca-diff-card .t,
:root[data-theme="neo"] .ca-legend { color: rgba(255,255,255,.5) !important; }
:root[data-theme="neo"] .ca-gauge .cap,
:root[data-theme="neo"] .ca-bar-val,
:root[data-theme="neo"] .ca-diff-card .p { color: var(--ink) !important; }
:root[data-theme="neo"] .ca-bar-track { background: rgba(255,255,255,.12) !important; }
:root[data-theme="neo"] .ca-kpi .n { filter: drop-shadow(0 0 8px rgba(224,79,168,.4)); }

/* ---------- 9) Footer ---------- */
:root[data-theme="neo"] .site-footer {
    background: #12081a !important;
    border-top: 1px solid rgba(255,255,255,.08) !important;
    color: var(--bx-text);
}
:root[data-theme="neo"] .site-footer a { color: var(--bx-muted); }
:root[data-theme="neo"] .site-footer a:hover { color: var(--neo-mag); }

/* ---------- 10) Form alanları ---------- */
:root[data-theme="neo"] input,
:root[data-theme="neo"] textarea,
:root[data-theme="neo"] select {
    background: rgba(255,255,255,.05);
    border: 1px solid var(--neo-brd);
    color: var(--ink);
}
:root[data-theme="neo"] input::placeholder,
:root[data-theme="neo"] textarea::placeholder { color: var(--bx-label); }
:root[data-theme="neo"] input:focus,
:root[data-theme="neo"] textarea:focus {
    border-color: var(--neo-mag);
    box-shadow: 0 0 0 3px rgba(224,79,168,.18);
}

/* ---------- 10b) PANEL (Lapin teması) → Kozmik Laboratuvar ---------- */
:root[data-theme="neo"] body.panel-lapin {
    --lp-bg: #160c1d;
    --lp-grad: linear-gradient(180deg, #2a1430 0%, #37173a 60%, #241130 100%);
}
:root[data-theme="neo"] body.panel-lapin .app-main {
    background:
        radial-gradient(900px 500px at 90% -5%, rgba(224,79,168,.14), transparent 60%),
        radial-gradient(700px 460px at 0% 8%, rgba(240,104,44,.10), transparent 55%),
        #160c1d !important;
}
/* kenar çubuğu: degrade yerine koyu cam + neon sağ kenar */
:root[data-theme="neo"] body.panel-lapin .sidebar {
    background: linear-gradient(180deg, #1d0f26 0%, #241130 55%, #1a0d22 100%) !important;
    border-right: 1px solid rgba(224,79,168,.25);
    box-shadow: inset -18px 0 34px rgba(0,0,0,.3);
}
:root[data-theme="neo"] body.panel-lapin .side-doodles { stroke: rgba(224,79,168,.28); }
:root[data-theme="neo"] body.panel-lapin .side-nav a:hover { background: rgba(224,79,168,.14) !important; }
:root[data-theme="neo"] body.panel-lapin .side-nav a.active,
:root[data-theme="neo"] body.panel-lapin .side-nav .submenu a.active {
    background: linear-gradient(135deg, rgba(224,79,168,.28), rgba(240,104,44,.24)) !important;
    color: #fff !important;
    border: 1px solid rgba(224,79,168,.55);
    box-shadow: 0 0 18px rgba(224,79,168,.35) !important;
}
:root[data-theme="neo"] body.panel-lapin .lp-logout {
    background: rgba(255,255,255,.08) !important;
    color: #f6bfe0 !important;
    border: 1px solid var(--neo-brd);
}
/* üst bar + arama */
:root[data-theme="neo"] body.panel-lapin .app-topbar {
    background: rgba(22,12,29,.8) !important;
    border-bottom: 1px solid rgba(255,255,255,.08) !important;
    box-shadow: none !important;
    backdrop-filter: blur(12px);
}
:root[data-theme="neo"] body.panel-lapin .lp-search {
    background: rgba(255,255,255,.06) !important;
    border: 1px solid var(--neo-brd) !important;
}
:root[data-theme="neo"] body.panel-lapin .lp-search input { background: transparent !important; border: 0 !important; }
/* içerik yüzeyleri */
:root[data-theme="neo"] body.panel-lapin .panel-card,
:root[data-theme="neo"] body.panel-lapin .doc-item,
:root[data-theme="neo"] body.panel-lapin .search-info,
:root[data-theme="neo"] body.panel-lapin .video-tabs button,
:root[data-theme="neo"] body.panel-lapin .dropdown-panel,
:root[data-theme="neo"] .sim-modal-inner {
    background: #221327 !important;
    border-color: var(--neo-brd) !important;
    color: var(--ink);
}
:root[data-theme="neo"] body.panel-lapin .dropdown-panel::before {
    background: #221327 !important; border-color: var(--neo-brd) !important;
}
:root[data-theme="neo"] body.panel-lapin .sim-thumb img { background: #221327 !important; }
/* günlük bilgi / gami çipleri: neon */
:root[data-theme="neo"] body.panel-lapin .gami-chip {
    background: rgba(224,79,168,.16); border: 1px solid rgba(224,79,168,.4); color: #f6bfe0;
}

/* ---------- 10d) Admin (sade panel) ---------- */
:root[data-theme="neo"] .app-topbar {
    background: rgba(22,12,29,.85) !important;
    border-bottom: 1px solid rgba(255,255,255,.08) !important;
}
:root[data-theme="neo"] .app-main { background: var(--surface); }
:root[data-theme="neo"] .doc-item,
:root[data-theme="neo"] .panel-card { background: #221327 !important; border-color: var(--neo-brd) !important; color: var(--ink); }
:root[data-theme="neo"] .video-tabs button { background: #221327 !important; color: var(--ink); border-color: var(--neo-brd) !important; }

/* ---------- 10e) Düelloya Katıl (dj-*) — beyaz kart → koyu cam + avatar taşması ---------- */
:root[data-theme="neo"] .dj-card {
    background: rgba(255,255,255,.05) !important;
    border: 1px solid rgba(224,79,168,.35) !important;
    box-shadow: 0 0 26px rgba(224,79,168,.16), 0 18px 44px rgba(0,0,0,.45) !important;
    backdrop-filter: blur(12px);
    color: var(--ink);
}
:root[data-theme="neo"] .dj-me {
    background: rgba(224,79,168,.14) !important;
    border: 1px solid rgba(224,79,168,.4);
    color: #f6bfe0 !important;
}
:root[data-theme="neo"] .dj-nick label,
:root[data-theme="neo"] .dj-card h2,
:root[data-theme="neo"] .dj-card h3 { color: var(--ink) !important; }
:root[data-theme="neo"] .dj-card .avatar-cell span { color: rgba(255,255,255,.6) !important; }
:root[data-theme="neo"] .dj-card .avatar-cell.sel {
    background: rgba(224,79,168,.14) !important;
    box-shadow: 0 0 0 2px rgba(224,79,168,.55), 0 0 18px rgba(224,79,168,.4) !important;
}
:root[data-theme="neo"] .dj-card .pin-inputs input {
    background: rgba(255,255,255,.07) !important;
    border-color: rgba(255,255,255,.2) !important;
    color: #fff !important;
}
/* Avatar ızgarası dar telefonlarda taşmasın: sabit 4 sütun yerine esnek */
:root[data-theme="neo"] .dj-card .avatar-grid {
    grid-template-columns: repeat(auto-fit, minmax(64px, 1fr)) !important;
    gap: 8px !important; padding: 0 !important;
}
@media (max-width: 420px) {
    :root[data-theme="neo"] .dj-card { padding: 20px 14px !important; }
    :root[data-theme="neo"] .dj-card .avatar-grid {
        grid-template-columns: repeat(auto-fit, minmax(56px, 1fr)) !important; gap: 6px !important;
    }
    :root[data-theme="neo"] .dj-card .avatar-cell .avatar-dot { width: 48px !important; height: 48px !important; }
    :root[data-theme="neo"] .dj-card .avatar-cell .avatar-dot svg { width: 26px !important; height: 26px !important; }
}

/* ---------- 10c) Giriş ekranı ---------- */
:root[data-theme="neo"] .auth-card {
    background: rgba(34,19,39,.92) !important;
    border: 1px solid rgba(224,79,168,.35) !important;
    box-shadow: 0 0 40px rgba(224,79,168,.18), 0 24px 60px rgba(0,0,0,.55) !important;
    backdrop-filter: blur(12px);
    color: var(--ink);
}
:root[data-theme="neo"] .auth-card label { color: var(--bx-text); }
/* Giriş ekranı neon logo kilidi (koyu zemin screen ile kaybolur) */
:root[data-theme="neo"] .auth-brand .brand-neon {
    width: 100%; max-width: 220px; height: auto; display: block; margin: 0 auto;
    filter: drop-shadow(0 0 14px rgba(224,79,168,.3));
}

/* ---------- 11) Gündüz/Gece geçiş düğmesi ---------- */
.theme-toggle {
    display: inline-grid; place-items: center;
    width: 40px; height: 40px; flex: 0 0 auto;
    border-radius: 999px; cursor: pointer;
    border: 1px solid var(--line);
    background: var(--surface);
    color: var(--ink);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.theme-toggle:hover { transform: translateY(-1px); }
.theme-toggle svg { width: 19px; height: 19px; display: block; }
.theme-toggle .i-sun { display: none; }
.theme-toggle .i-moon { display: block; }
:root[data-theme="neo"] .theme-toggle {
    border-color: rgba(224,79,168,.5);
    background: rgba(224,79,168,.12);
    color: #f6bfe0;
    box-shadow: 0 0 16px rgba(224,79,168,.35);
}
:root[data-theme="neo"] .theme-toggle .i-sun { display: block; }
:root[data-theme="neo"] .theme-toggle .i-moon { display: none; }

/* geçiş yumuşasın (renk değişimi) */
@media (prefers-reduced-motion: no-preference) {
    :root[data-theme="neo"] body,
    :root[data-theme="neo"] .card,
    :root[data-theme="neo"] .site-header,
    :root[data-theme="neo"] .site-footer { transition: background-color .3s ease, color .3s ease, border-color .3s ease; }
}

/* ===================================================================
   YÖNETİM PANELİ (admin) — Neo uyarlaması
   Sorun: dashboard.css kenar çubuğunu `background: var(--ink)` ile
   boyuyor. Neo'da --ink METİN rengi olarak #f3ecf8'e (açık lavanta)
   dönüşüyor → zemin beyazlaşıyor, üstündeki beyaz yazılar okunmuyor.
   Çözüm: kenar çubuğunu neo panelinin cam diline çek (.np-side ile
   aynı zemin), metin/ayraç renklerini koyu zemine göre yeniden ver.
   =================================================================== */
:root[data-theme="neo"] .sidebar {
    background: rgba(26,15,33,.85) !important;
    backdrop-filter: blur(20px);
    border-right: 1px solid rgba(255,255,255,.1);
    box-shadow: 0 0 20px rgba(197,56,141,.1);
    color: rgba(255,255,255,.75);
}
:root[data-theme="neo"] .sidebar .brand { color: #fff; }
:root[data-theme="neo"] .side-section { color: rgba(255,255,255,.45); }
:root[data-theme="neo"] .side-nav a { color: rgba(255,255,255,.78); }
:root[data-theme="neo"] .side-nav a:hover { background: rgba(255,255,255,.08); color: #fff; }
/* aktif öğe: neo pembesi + hafif neon */
:root[data-theme="neo"] .side-nav a.active {
    background: linear-gradient(135deg, #c5388d, #e04fa8) !important; color: #fff;
    box-shadow: 0 0 14px rgba(224,79,168,.35);
}
:root[data-theme="neo"] .side-badge { background: var(--coral); color: #fff; }
:root[data-theme="neo"] .sidebar-foot { border-top-color: rgba(255,255,255,.12); }
:root[data-theme="neo"] .user-chip .meta strong { color: #fff; }
:root[data-theme="neo"] .user-chip .meta span { color: rgba(255,255,255,.55); }

/* CTA şeridi: style.css `linear-gradient(135deg, var(--ink), #1d3350)` +
   beyaz yazı kullanıyor. Neo'da --ink açık lavantaya döndüğü için degradenin
   ilk yarısı beyazlaşıp yazıyı yutuyordu (admin kenar çubuğuyla aynı tuzak).
   Hakkımızda ve Eğitim Modelimiz sayfalarında görünür. */
:root[data-theme="neo"] .cta-band {
    background: linear-gradient(135deg, #5a1f52, #8e2d8a 55%, #37173a) !important;
    border: 1px solid rgba(224,79,168,.28);
    box-shadow: 0 0 34px rgba(197,56,141,.18);
}

/* ===================================================================
   YÖNETİM PANELİ — Neo'da beyaz kalan ortak bileşenler
   style.css ve calendar.php bunları açık tema için `background:#fff`
   ile tanımlıyor; Neo'nun koyu zemininde beyaz ada gibi duruyorlar.
   Hepsi neo panelinin cam diline çekiliyor.
   =================================================================== */

/* Arama kutusu (admin topbar) */
:root[data-theme="neo"] .admin-search {
    background: rgba(255,255,255,.06) !important;
    border: 1px solid rgba(255,255,255,.14) !important;
}
:root[data-theme="neo"] .admin-search input { color: var(--ink); }
:root[data-theme="neo"] .admin-search input::placeholder { color: rgba(255,255,255,.4); }
:root[data-theme="neo"] .admin-search .ic { color: rgba(255,255,255,.55); }

/* Filtre pill'leri (Öğrenciler / Öğretmenler / Yöneticiler) */
:root[data-theme="neo"] .filter-bar a {
    background: rgba(255,255,255,.05) !important;
    border-color: rgba(255,255,255,.14) !important;
    color: var(--ink-soft);
}
:root[data-theme="neo"] .filter-bar a:hover {
    border-color: var(--teal); color: var(--teal-dark);
}
:root[data-theme="neo"] .filter-bar a.active {
    background: linear-gradient(135deg, #c5388d, #e04fa8) !important;
    border-color: transparent; color: #fff;
    box-shadow: 0 0 12px rgba(224,79,168,.35);
}

/* Tehlike butonu (Sil) — beyaz yerine koyu, kırmızımsı neon kenar */
:root[data-theme="neo"] .btn-danger {
    background: rgba(240,104,44,.14) !important;
    border-color: rgba(240,104,44,.5) !important;
    color: #ffb08a !important;
}
:root[data-theme="neo"] .btn-danger:hover {
    background: var(--coral) !important; color: #fff !important;
}

/* ---- Takvim (calendar.php sayfa-içi stiller) ---- */
:root[data-theme="neo"] .cal-head .btn-nav {
    background: rgba(255,255,255,.06) !important;
    border-color: rgba(255,255,255,.14) !important;
    color: var(--ink);
}
:root[data-theme="neo"] .cal-head .btn-nav:hover { background: rgba(224,79,168,.15) !important; }
:root[data-theme="neo"] .cal-cell {
    background: rgba(255,255,255,.04) !important;
    border-color: rgba(255,255,255,.1) !important;
}
:root[data-theme="neo"] .cal-cell:hover { box-shadow: 0 4px 14px rgba(224,79,168,.25); }
:root[data-theme="neo"] .cal-cell.selected {
    background: rgba(224,79,168,.16) !important; border-color: var(--teal) !important;
}
:root[data-theme="neo"] .cal-cell.today { border-color: var(--teal) !important; }
:root[data-theme="neo"] .cal-cell .dnum { color: rgba(255,255,255,.65); }
:root[data-theme="neo"] .cal-cell.today .dnum { color: var(--teal-dark); }
:root[data-theme="neo"] .cal-cell .evs .more { color: rgba(255,255,255,.5); }

/* Takvim simgeleri Neo'da kategori rengiyle boyanıyor (calendar.php NEO);
   koyu zeminde sönük kalan tonlar için hafif netlik katkısı */
:root[data-theme="neo"] .cal-cell .evs span svg,
:root[data-theme="neo"] .ev-item .ic svg {
    filter: drop-shadow(0 0 4px rgba(0,0,0,.6)) saturate(1.25) brightness(1.15);
}
