/* ============================================================
   BEEZUI — Theme Base  v2.0
   ──────────────────────────────────────────────────────────
   KATMAN 1 — Primitive Tokens
     Tema dosyalarının override ettiği temel değişkenler.

   KATMAN 2 — Component Tokens
     Her bileşene özgü değişkenler; primitiften miras alır.
     Tema dosyaları sadece farklılaştırmak istediği
     component token'ı override eder, geri kalanlar
     otomatik primitiften gelir.
   ============================================================ */

:root {

  /* ── KATMAN 1: Primitives ──────────────────────────────── */

  /* Ana renk */
  --bz-primary:        #1a6fc4;
  --bz-primary-dark:   #145599;
  --bz-primary-light:  #dbeafe;
  --bz-primary-rgb:    26, 111, 196;
  --bz-accent:         #0ea5e9;

  /* Arka planlar */
  --bz-bg:             #f0f2f5;
  --bz-surface:        #ffffff;
  --bz-hover-bg:       #eff6ff;

  /* Kenarlıklar */
  --bz-border:         #d0d7e3;
  --bz-border-light:   #e8ecf2;

  /* Yazılar */
  --bz-text:           #1e2432;
  --bz-text-muted:     #6b7592;
  --bz-text-inverse:   #ffffff;

  /* Header (her zaman kendi renkleri var) */
  --bz-header-bg:      #1a2540;
  --bz-header-text:    #e8edf8;

  /* Panel başlık gradyanı */
  --bz-panel-title-bg: linear-gradient(135deg, #1a6fc4 0%, #145599 100%);
  --bz-panel-title-h:  32px;

  /* Sidebar arka planı (gradient olabilir) */
  --bz-sidebar-bg:     var(--bz-surface);

  /* Grafik seri renkleri (BzChart)
     Sirayla atanir, DONDURULMEZ: 9. seri yeni bir renk uretmez, "Diger"e
     katlanmali ya da kucuk coklular kullanilmali.
     Bu sekizli, komsu ciftlerde renk korlugu ayrimi (OKLab DeltaE >= 8) ve
     normal gorus tabani (>= 15) kapilarini gecer. Pasta/donut gibi TUM
     renklerin ayni anda gorundugu bicimlerde ilk UC slot guvenlidir;
     otesinde ayrimi renge birakmayin (dogrudan etiket, doku, tablo). */
  --bz-series-1:       #2a78d6;
  --bz-series-2:       #eb6834;
  --bz-series-3:       #1baf7a;
  --bz-series-4:       #eda100;
  --bz-series-5:       #e87ba4;
  --bz-series-6:       #008300;
  --bz-series-7:       #4a3aa7;
  --bz-series-8:       #e34948;

  /* Durum renkleri */
  --bz-success:        #16a34a;
  --bz-success-light:  #dcfce7;
  --bz-warning:        #d97706;
  --bz-warning-light:  #fef3c7;
  --bz-danger:         #dc2626;
  --bz-danger-light:   #fee2e2;
  --bz-info:           #0891b2;
  --bz-info-light:     #cffafe;

  /* Geometri */
  --bz-radius:         4px;
  --bz-radius-lg:      8px;
  --bz-gap:            4px;

  /* Gölgeler */
  --bz-shadow-sm:      0 1px 3px rgba(0,0,0,.10);
  --bz-shadow:         0 2px 8px rgba(0,0,0,.12);
  --bz-shadow-lg:      0 8px 24px rgba(0,0,0,.16);

  /* Geçiş */
  --bz-transition:     220ms cubic-bezier(.4,0,.2,1);

  /* Scrollbar */
  --bz-scroll-w:       6px;
  --bz-scroll-track:   #eef0f5;
  --bz-scroll-thumb:   #b0bcd4;


  /* ── KATMAN 2: Component Tokens ────────────────────────── */

  /* ·· Sidebar / Menü ··
       Dark sidebar'lı temalarda buralar override edilir.
       Standart temalarda primitiften miras alır.          */
  --bz-sidebar-text:        var(--bz-text);
  --bz-sidebar-text-muted:  var(--bz-text-muted);
  --bz-sidebar-border:      var(--bz-border);
  --bz-sidebar-hover:       var(--bz-hover-bg);
  --bz-sidebar-active-bg:   var(--bz-primary-light);
  --bz-sidebar-active-text: var(--bz-primary);
  --bz-sidebar-icon:        var(--bz-text-muted);

  /* ·· Toolbar ·· */
  --bz-toolbar-bg:          var(--bz-surface);
  --bz-toolbar-border:      var(--bz-border);
  --bz-toolbar-text:        var(--bz-text);
  --bz-toolbar-text-muted:  var(--bz-text-muted);
  --bz-toolbar-btn-hover:   var(--bz-hover-bg);
  --bz-toolbar-btn-active:  var(--bz-primary-light);

  /* ·· Tab ·· */
  --bz-tab-bg:              var(--bz-bg);
  --bz-tab-bar-bg:          var(--bz-bg);
  --bz-tab-border:          var(--bz-border);
  --bz-tab-text:            var(--bz-text-muted);
  --bz-tab-active-bg:       var(--bz-surface);
  --bz-tab-active-text:     var(--bz-primary);
  --bz-tab-hover-bg:        var(--bz-hover-bg);

  /* ·· DataGrid ·· */
  --bz-dg-bg:               var(--bz-bg);
  --bz-dg-header-bg:        var(--bz-bg);       /* orijinal: var(--bz-bg) — header, row'dan biraz farklı */
  --bz-dg-header-text:      var(--bz-text-muted);
  --bz-dg-header-border:    var(--bz-border);
  --bz-dg-row-bg:           var(--bz-surface);
  --bz-dg-row-alt-bg:       var(--bz-bg);
  --bz-dg-row-hover:        var(--bz-hover-bg);
  --bz-dg-row-selected:     var(--bz-primary-light);
  --bz-dg-row-selected-text:var(--bz-primary);
  --bz-dg-border:           var(--bz-border);
  --bz-dg-border-row:       var(--bz-border-light);
  --bz-dg-footer-bg:        var(--bz-surface);  /* aggregate footer satırı */
  --bz-dg-pager-bg:         var(--bz-bg);       /* sayfalama çubuğu — orijinal: var(--bz-bg) */
  --bz-dg-footer-text:      var(--bz-text-muted);
  --bz-dg-text:             var(--bz-text);

  /* ·· Panel / Card ·· */
  --bz-panel-bg:            var(--bz-surface);
  --bz-panel-border:        var(--bz-border);
  --bz-panel-text:          var(--bz-text);
  --bz-panel-text-muted:    var(--bz-text-muted);
  --bz-card-bg:             var(--bz-surface);
  --bz-card-border:         var(--bz-border);
  --bz-card-text:           var(--bz-text);
  --bz-card-text-muted:     var(--bz-text-muted);
  --bz-card-hover-bg:       var(--bz-hover-bg);

  /* ·· Dialog ·· */
  --bz-dialog-bg:           var(--bz-surface);
  --bz-dialog-overlay:      rgba(0,0,0,.45);
  --bz-dialog-border:       var(--bz-border);
  --bz-dialog-text:         var(--bz-text);
  --bz-dialog-text-muted:   var(--bz-text-muted);
  --bz-dialog-hover:        var(--bz-hover-bg);

  /* ·· Window ·· */
  --bz-window-bg:           var(--bz-surface);
  --bz-window-title-bg:     var(--bz-panel-title-bg);
  --bz-window-border:       var(--bz-border);
  --bz-window-text:         var(--bz-text);
  --bz-window-text-muted:   var(--bz-text-muted);

  /* ·· Form / Input ·· */
  --bz-input-bg:            var(--bz-surface);
  --bz-input-bg-focus:      var(--bz-surface);
  --bz-input-border:        var(--bz-border);
  --bz-input-border-focus:  var(--bz-primary);
  --bz-input-text:          var(--bz-text);
  --bz-input-placeholder:   var(--bz-text-muted);
  --bz-input-label:         var(--bz-text-muted);
  --bz-label-w:             120px;

  /* ·· Chip ·· */
  --bz-chip-bg:             var(--bz-surface);
  --bz-chip-border:         var(--bz-border);
  --bz-chip-text:           var(--bz-text);
  --bz-chip-text-muted:     var(--bz-text-muted);
  --bz-chip-hover:          var(--bz-hover-bg);

  /* ·· Badge ·· */
  --bz-badge-bg:            var(--bz-surface);
  --bz-badge-border:        var(--bz-border-light);
  --bz-badge-text:          var(--bz-text);

  /* ·· Toast ·· */
  --bz-toast-bg:            var(--bz-surface);
  --bz-toast-border:        var(--bz-border);
  --bz-toast-text:          var(--bz-text);
  --bz-toast-text-muted:    var(--bz-text-muted);
  --bz-toast-shadow:        var(--bz-shadow-lg);

  /* ·· Context Menu ·· */
  --bz-ctx-bg:              var(--bz-bg);
  --bz-ctx-border:          var(--bz-border);
  --bz-ctx-text:            var(--bz-text);
  --bz-ctx-text-muted:      var(--bz-text-muted);
  --bz-ctx-hover:           var(--bz-primary-light);

  /* ·· Accordion ·· */
  --bz-acc-bg:              var(--bz-surface);
  --bz-acc-border:          var(--bz-border);
  --bz-acc-text:            var(--bz-text);
  --bz-acc-text-muted:      var(--bz-text-muted);
  --bz-acc-hover:           var(--bz-hover-bg);

  /* ·· Drawer ·· */
  --bz-drawer-bg:           var(--bz-surface);
  --bz-drawer-border:       var(--bz-border);
  --bz-drawer-text:         var(--bz-text);
  --bz-drawer-overlay:      rgba(0,0,0,.4);

  /* ·· Steps ·· */
  --bz-steps-bg:            var(--bz-bg);
  --bz-steps-border:        var(--bz-border);
  --bz-steps-text:          var(--bz-text);
  --bz-steps-text-muted:    var(--bz-text-muted);
  --bz-steps-active:        var(--bz-primary);

  /* ·· Range Slider ·· */
  --bz-range-track:         var(--bz-border);
  --bz-range-fill:          var(--bz-primary);
  --bz-range-thumb:         var(--bz-primary);
  --bz-range-text:          var(--bz-text);

  /* ·· Rating ·· */
  --bz-rating-empty:        var(--bz-border);
  --bz-rating-filled:       var(--bz-primary);

  /* ·· Quantity ·· */
  --bz-qty-bg:              var(--bz-bg);
  --bz-qty-border:          var(--bz-border);
  --bz-qty-text:            var(--bz-text);
  --bz-qty-btn-bg:          var(--bz-surface);
  --bz-qty-btn-hover:       var(--bz-primary-light);

  /* ·· OTP Input ·· */
  --bz-otp-bg:              var(--bz-bg);
  --bz-otp-border:          var(--bz-border);
  --bz-otp-text:            var(--bz-text);
  --bz-otp-focus:           var(--bz-primary);

  /* ·· Breadcrumb ·· */
  --bz-breadcrumb-sep:      '/';
  --bz-breadcrumb-text:     var(--bz-text-muted);
  --bz-breadcrumb-active:   var(--bz-text);
  --bz-breadcrumb-link:     var(--bz-primary);

  /* ·· Chart ·· */
  --bz-chart-bg:            var(--bz-surface);
  --bz-chart-border:        var(--bz-border);
  --bz-chart-text:          var(--bz-text);
  --bz-chart-grid:          var(--bz-border-light);

  /* ·· Calculator ·· */
  --bz-calc-bg:             var(--bz-surface);
  --bz-calc-border:         var(--bz-border);
  --bz-calc-text:           var(--bz-text);
  --bz-calc-btn-hover:      var(--bz-hover-bg);

  /* ·· Slider ··
       Görsel ÜZERİNDEKİ öğeler (ok, araç butonu, alt yazı) bilerek
       tema-bağımsız yarı saydam siyah: altındaki görselin rengi
       bilinemez, tema rengi kullanmak okunurluğu garanti etmez.   */
  --bz-slider-bg:           var(--bz-surface);
  --bz-slider-border:       var(--bz-border);
  --bz-slider-stage-bg:     var(--bz-bg);
  --bz-slider-btn-bg:       rgba(0,0,0,.48);
  --bz-slider-btn-hover:    rgba(0,0,0,.68);
  --bz-slider-btn-text:     #ffffff;
  --bz-slider-thumbs-bg:    var(--bz-bg);
  --bz-slider-thumb-active: var(--bz-primary);
  --bz-slider-caption-bg:   rgba(0,0,0,.55);   /* cam etiket — blur ile birlikte */
  --bz-slider-caption-text: #ffffff;
  --bz-slider-dot:          rgba(255,255,255,.55);
  --bz-slider-dot-active:   #ffffff;

  /* ── Alias tokenlar (eski/eksik isimleri kapsar) ────────── */
  --bz-hover:               var(--bz-hover-bg);
  --bz-border-strong:       color-mix(in srgb, var(--bz-border) 60%, var(--bz-text) 40%);
  --bz-bg-alt:              var(--bz-hover-bg);
}

/* ── Karanlik kip: grafik seri renkleri ──────────────────────────
   Ayni sekiz renk, koyu yuzey icin yeniden adimlanmis; acik kipin
   otomatik cevrilmis hali DEGIL. Tema dosyalari kendi
   [data-theme="x-dark"] bloklarini tasidigi icin burada tek bir
   "-dark ile biten" secici hepsini yakalar. */
:root[data-theme$="-dark"] {
  --bz-series-1:       #3987e5;
  --bz-series-2:       #d95926;
  --bz-series-3:       #199e70;
  --bz-series-4:       #c98500;
  --bz-series-5:       #d55181;
  --bz-series-6:       #008300;
  --bz-series-7:       #9085e9;
  --bz-series-8:       #e66767;
}
