/* ============================================================================
   Karanlık tema — kapsamlı kontrast + tüm bileşenler
   ============================================================================ */

html[data-theme="dark"] {
  /* Ana renk paleti — koyu zemin, açık metin */
  --c-bg:        #0d1422;
  --c-bg-2:      #131c30;
  --c-bg-3:      #1a2440;
  --c-bg-4:      #232f4f;
  --c-line:      #2a3556;
  --c-line-2:    #364270;
  --c-ink:       #ecefF6;
  --c-ink-soft:  #c4cce0;
  --c-muted:     #8a95b3;
  --c-navy:      #f3e9c8;     /* başlıklar */
  --c-navy-800:  #f3e9c8;
  --c-gold:      #e8cb7a;
  --c-gold-300:  #f0d99a;
  --c-gold-400:  #e8cb7a;
  --c-gold-500:  #d6b97a;
  --c-gold-600:  #c9a961;
  --c-gold-700:  #f0d99a;
  --c-cream:     #131c30;
  --c-cream-2:   #1a2440;

  /* Portal */
  --p-bg:        #0d1422;
  --p-bg-2:      #131c30;
  --p-line:      #2a3556;
  --p-ink:       #ecefF6;
  --p-ink-soft:  #c4cce0;
  --p-muted:     #8a95b3;
  --p-navy:      #f3e9c8;
  --p-gold:      #e8cb7a;
  --p-gold-3:    #f0d99a;
  --p-success:   #6cc796;
  --p-danger:    #ff8a8a;
  color-scheme: dark;
}

html[data-theme="dark"] body {
  background: var(--c-bg);
  color: var(--c-ink);
}

/* Genel metin görünürlüğü */
html[data-theme="dark"] h1,
html[data-theme="dark"] h2,
html[data-theme="dark"] h3,
html[data-theme="dark"] h4,
html[data-theme="dark"] h5,
html[data-theme="dark"] h6 { color: var(--c-navy); }

html[data-theme="dark"] p,
html[data-theme="dark"] li,
html[data-theme="dark"] dt,
html[data-theme="dark"] dd,
html[data-theme="dark"] td,
html[data-theme="dark"] th,
html[data-theme="dark"] label { color: var(--c-ink); }

html[data-theme="dark"] small,
html[data-theme="dark"] .lede,
html[data-theme="dark"] .text-muted { color: var(--c-ink-soft); }

html[data-theme="dark"] a { color: var(--c-gold); }
html[data-theme="dark"] a:hover { color: var(--c-gold-300); }

html[data-theme="dark"] em { color: var(--c-gold); font-style: italic; }
html[data-theme="dark"] strong { color: var(--c-navy); }

/* Kartlar */
html[data-theme="dark"] .card,
html[data-theme="dark"] .pcard,
html[data-theme="dark"] .admin-card,
html[data-theme="dark"] .featured-article,
html[data-theme="dark"] .stat-tile,
html[data-theme="dark"] .pstat,
html[data-theme="dark"] .pcase {
  background: var(--c-bg-2);
  border-color: var(--c-line);
  color: var(--c-ink);
}
html[data-theme="dark"] .card h2,
html[data-theme="dark"] .card h3,
html[data-theme="dark"] .pcard h2,
html[data-theme="dark"] .pcard h3,
html[data-theme="dark"] .admin-card h2,
html[data-theme="dark"] .admin-card h3 { color: var(--c-navy); }

/* Header / footer */
html[data-theme="dark"] header.site-header,
html[data-theme="dark"] footer.site-footer { background: var(--c-bg); border-color: var(--c-line); }
html[data-theme="dark"] header.site-header a,
html[data-theme="dark"] footer.site-footer a { color: var(--c-ink); }
html[data-theme="dark"] header.site-header a:hover,
html[data-theme="dark"] footer.site-footer a:hover { color: var(--c-gold); }
html[data-theme="dark"] .nav__lang a.is-active { color: var(--c-gold); border-color: var(--c-gold); }

/* Form elemanları */
html[data-theme="dark"] input[type="text"],
html[data-theme="dark"] input[type="email"],
html[data-theme="dark"] input[type="tel"],
html[data-theme="dark"] input[type="password"],
html[data-theme="dark"] input[type="search"],
html[data-theme="dark"] input[type="number"],
html[data-theme="dark"] input[type="date"],
html[data-theme="dark"] input[type="datetime-local"],
html[data-theme="dark"] input[type="time"],
html[data-theme="dark"] input[type="url"],
html[data-theme="dark"] textarea,
html[data-theme="dark"] select {
  background: var(--c-bg-3) !important;
  color: var(--c-ink) !important;
  border-color: var(--c-line) !important;
}
html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder { color: var(--c-muted); }
html[data-theme="dark"] input:focus,
html[data-theme="dark"] textarea:focus,
html[data-theme="dark"] select:focus { border-color: var(--c-gold) !important; outline-color: var(--c-gold); }

/* Buttons */
html[data-theme="dark"] .btn--primary { background: var(--c-gold); color: #0d1422; border-color: var(--c-gold); }
html[data-theme="dark"] .btn--primary:hover { background: var(--c-gold-300); color: #0d1422; }
html[data-theme="dark"] .btn--ghost { background: transparent; color: var(--c-ink); border-color: var(--c-line-2); }
html[data-theme="dark"] .btn--ghost:hover { background: var(--c-bg-3); border-color: var(--c-gold); color: var(--c-gold); }
html[data-theme="dark"] .pbtn--gold { background: var(--c-gold); color: #0d1422; }
html[data-theme="dark"] .pbtn--ghost { color: var(--c-ink); border-color: var(--c-line-2); }

/* Tablolar */
html[data-theme="dark"] table { background: var(--c-bg-2); }
html[data-theme="dark"] table th { background: var(--c-bg-3); color: var(--c-navy); border-color: var(--c-line); }
html[data-theme="dark"] table td { border-color: var(--c-line); color: var(--c-ink); }
html[data-theme="dark"] tr:hover td { background: var(--c-bg-3); }
html[data-theme="dark"] .admin-table thead th { background: var(--c-bg-3); }

/* Page header (üstteki dark navy banner light tema'da; dark tema'da daha derin) */
html[data-theme="dark"] .page-header,
html[data-theme="dark"] .page-header__inner { background: var(--c-bg-2); }
html[data-theme="dark"] .page-header h1 { color: var(--c-navy); }
html[data-theme="dark"] .page-header .lede,
html[data-theme="dark"] .page-header p { color: var(--c-ink-soft); }
html[data-theme="dark"] .page-header .breadcrumb,
html[data-theme="dark"] .page-header .breadcrumb a,
html[data-theme="dark"] .page-header .breadcrumb li { color: var(--c-ink-soft); }
html[data-theme="dark"] .page-header .breadcrumb a:hover { color: var(--c-gold); }

/* Sections */
html[data-theme="dark"] .section--cream { background: var(--c-bg-2); }
html[data-theme="dark"] .section { color: var(--c-ink); }

/* Hero */
html[data-theme="dark"] .hero { background: var(--c-bg); }
html[data-theme="dark"] .hero h1,
html[data-theme="dark"] .hero h2 { color: var(--c-navy); }
html[data-theme="dark"] .hero .lede,
html[data-theme="dark"] .hero p { color: var(--c-ink-soft); }
html[data-theme="dark"] .hero img:not([data-no-dim]),
html[data-theme="dark"] .hero svg:not([data-no-dim]) { opacity: .85; }

/* Pills, badges */
html[data-theme="dark"] .pill,
html[data-theme="dark"] .pill-cat,
html[data-theme="dark"] .pbadge { background: var(--c-bg-3); color: var(--c-ink); border-color: var(--c-line); }
html[data-theme="dark"] .pbadge--ok { background: rgba(108,199,150,.15); color: #6cc796; }
html[data-theme="dark"] .pbadge--err { background: rgba(255,138,138,.15); color: #ff8a8a; }
html[data-theme="dark"] .pbadge--warn { background: rgba(232,203,122,.15); color: var(--c-gold); }
html[data-theme="dark"] .pbadge--mute { background: var(--c-bg-3); color: var(--c-muted); }

/* Flash messages */
html[data-theme="dark"] .flash--success { background: rgba(108,199,150,.12); border-color: rgba(108,199,150,.3); color: #6cc796; }
html[data-theme="dark"] .flash--error   { background: rgba(255,138,138,.12); border-color: rgba(255,138,138,.3); color: #ff8a8a; }

/* Admin sidebar */
html[data-theme="dark"] .admin-side { background: var(--c-bg); border-color: var(--c-line); }
html[data-theme="dark"] .admin-side a { color: var(--c-ink-soft); }
html[data-theme="dark"] .admin-side a:hover,
html[data-theme="dark"] .admin-side a.is-active { background: var(--c-bg-3); color: var(--c-gold); }
html[data-theme="dark"] .admin-side__brand { color: var(--c-navy); }
html[data-theme="dark"] .admin-nav__group { color: var(--c-muted); }

/* Admin main */
html[data-theme="dark"] .admin-main { background: var(--c-bg); }
html[data-theme="dark"] .admin-page-header h1 { color: var(--c-navy); }

/* Portal — app bar, greeting, stats */
html[data-theme="dark"] .papp { background: var(--c-bg-2); border-color: var(--c-line); }
html[data-theme="dark"] .pgreet h1 { color: var(--c-navy); }
html[data-theme="dark"] .pgreet__eyebrow { color: var(--c-gold); }
html[data-theme="dark"] .pstat__label { color: var(--c-muted); }
html[data-theme="dark"] .pstat__num { color: var(--c-gold); }
html[data-theme="dark"] .ptl::before { background: var(--c-line); }
html[data-theme="dark"] .ptl__date { color: var(--c-ink-soft); }
html[data-theme="dark"] .ptl__date strong { color: var(--c-navy); }
html[data-theme="dark"] .ptl__dot { background: var(--c-bg-3); border-color: var(--c-gold); }
html[data-theme="dark"] .ptl__body small { color: var(--c-ink-soft); }
html[data-theme="dark"] .pcase__type { color: var(--c-gold); }
html[data-theme="dark"] .pcase__title { color: var(--c-navy); }
html[data-theme="dark"] .pcase__meta { color: var(--c-ink-soft); }
html[data-theme="dark"] .pcase__hearing { color: var(--c-ink-soft); }
html[data-theme="dark"] .pchat__row--admin .pchat__bubble { background: var(--c-bg-3); color: var(--c-ink); }
html[data-theme="dark"] .pchat__row--mine  .pchat__bubble { background: var(--c-gold); color: #0d1422; }

/* Text inputs/textareas içinde syntax highlight */
html[data-theme="dark"] code,
html[data-theme="dark"] pre {
  background: var(--c-bg-3);
  color: var(--c-gold-300);
  border: 1px solid var(--c-line);
  border-radius: 4px;
  padding: 2px 6px;
}

/* Görseller — koyu tema'da yumuşat */
html[data-theme="dark"] img:not([data-no-dim]) { filter: brightness(.92) contrast(1.05); }
html[data-theme="dark"] svg:not([stroke="currentColor"]):not([data-no-dim]) { opacity: .92; }

/* Featured article + topic cards on home */
html[data-theme="dark"] .featured-article__media { background-color: var(--c-bg-3); }
html[data-theme="dark"] .featured-article__badge { background: var(--c-gold); color: #0d1422; }
html[data-theme="dark"] .featured-article__body h2 { color: var(--c-navy); }
html[data-theme="dark"] .card__more { color: var(--c-gold); }
html[data-theme="dark"] .card__icon { color: var(--c-gold); }

/* CTA banner */
html[data-theme="dark"] .cta-banner,
html[data-theme="dark"] .pcta { background: linear-gradient(135deg, var(--c-bg-3), var(--c-bg-2)); border-color: var(--c-line-2); }
html[data-theme="dark"] .cta-banner h2,
html[data-theme="dark"] .pcta h2 { color: var(--c-navy); }
html[data-theme="dark"] .cta-banner p,
html[data-theme="dark"] .pcta p { color: var(--c-ink-soft); }

/* WhatsApp + theme toggle */
html[data-theme="dark"] .whatsapp-float { background: #25d366 !important; color: #fff !important; }
html[data-theme="dark"] .theme-toggle {
  background: rgba(26,36,64,.92);
  border-color: rgba(255,255,255,.1);
  color: var(--c-gold);
}

/* Theme toggle button — sol-alt (whatsapp sağ-altta) */
.theme-toggle {
  position: fixed;
  bottom: 1.4rem;
  left: 1.4rem;
  right: auto;
  width: 44px; height: 44px;
  border-radius: 50%;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(8px);
  cursor: pointer;
  z-index: 99;
  display: grid; place-items: center;
  color: #0a1f3d;
  box-shadow: 0 4px 16px rgba(0,0,0,.1);
  transition: transform .2s, box-shadow .2s;
}
.theme-toggle:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,.15); }
.theme-toggle .moon { display: none; }
.theme-toggle .sun  { display: block; }
html[data-theme="dark"] .theme-toggle .sun  { display: none; }
html[data-theme="dark"] .theme-toggle .moon { display: block; }

@media (max-width: 480px) {
  .theme-toggle { left: 1rem; bottom: 1rem; width: 40px; height: 40px; }
}

/* Sistem prefer-color-scheme: dark — kullanıcı manual seçmemişse */
@media (prefers-color-scheme: dark) {
  html:not([data-theme]) {
    --c-bg: #0d1422; --c-bg-2: #131c30; --c-bg-3: #1a2440;
    --c-line: #2a3556; --c-ink: #ecefF6; --c-ink-soft: #c4cce0;
    --c-muted: #8a95b3; --c-navy: #f3e9c8; --c-gold: #e8cb7a;
    color-scheme: dark;
  }
  html:not([data-theme]) body { background: var(--c-bg); color: var(--c-ink); }
  html:not([data-theme]) .pcard,
  html:not([data-theme]) .admin-card,
  html:not([data-theme]) .card { background: var(--c-bg-2); border-color: var(--c-line); }
}
