/* ============================================================
   ORTAK TEMA KATMANI — tüm iç uygulamalar için tek tasarım dili
   Sayfa kendi <style>'ından SONRA yüklenir; token'ları yeniden
   tanımlayarak mevcut bileşenleri tek elden değiştirir.
   Yeni uygulamaya eklemek için:  <link rel="stylesheet" href="/tema.css">
   ============================================================ */

:root{
  /* marka — yumuşatılmış lavanta/indigo */
  --t-ana:#5b3fd6;
  --t-ana-koyu:#43299f;
  --t-ana-acik:#f1edff;
  --t-vurgu:#ffcf2d;
  --t-olumlu:#0ca678;
  --t-uyari:#f08c00;
  --t-olumsuz:#e03131;
  --t-bilgi:#1c7ed6;

  /* yüzey — hafif sıcak, saf beyaz yerine kırık beyaz */
  --t-zemin:#f2f1f8;
  --t-yuzey:#ffffff;
  --t-yuzey-2:#faf9fe;
  --t-kenar:#e8e6f2;
  --t-kenar-koyu:#d9d5ea;

  /* yazı — saf siyah yok */
  --t-yazi:#1b1730;
  --t-yazi-2:#5c5878;
  --t-yazi-3:#8b87a3;

  /* gölge merdiveni — geniş ve düşük opaklık */
  --t-golge-1:0 1px 3px rgba(27,23,48,.03),0 8px 24px -14px rgba(27,23,48,.10);
  --t-golge-2:0 2px 8px rgba(27,23,48,.035),0 18px 42px -18px rgba(27,23,48,.14);
  --t-golge-3:0 14px 48px -14px rgba(93,62,188,.24);

  /* yarıçap ölçeği — daha yuvarlak */
  --t-r-s:10px; --t-r-m:14px; --t-r-l:20px; --t-r-xl:26px;

  /* --- eski değişkenleri tema token'larına bağla (markup değişmez) --- */
  --mor:var(--t-ana);
  --koyu-mor:var(--t-ana-koyu);
  --acik-mor:var(--t-ana-acik);
  --sari:var(--t-vurgu);
  --yesil:var(--t-olumlu);
  --kirmizi:var(--t-olumsuz);
  --gri:var(--t-yazi-2);
  --acik-gri:var(--t-zemin);
  --yazi:var(--t-yazi);
  --golge:var(--t-golge-2);
  --golge-hover:var(--t-golge-3);
}

body{background:var(--t-zemin);}

/* ---------- Kenar çubuğu ---------- */
.sidebar{
  background:linear-gradient(168deg,#3a2390 0%,#4d31b8 46%,#6144d6 100%);
  box-shadow:1px 0 0 rgba(255,255,255,.07),10px 0 34px -16px rgba(60,45,120,.30);
}
.sidebar::before{
  content:'';position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(560px 280px at 0% 0%,rgba(255,207,45,.10),transparent 62%);
}
.sidebar-logo{padding:22px 18px 18px;border-bottom:1px solid rgba(255,255,255,.10);}
.sidebar-logo h2{letter-spacing:-.2px;}
.menu-item{
  border-left:none;position:relative;border-radius:10px;margin:1px 10px;
  transition:background .15s,color .15s;
  color:rgba(255,255,255,.92);font-weight:500;   /* açık lavantada okunurluk */
}
.menu-item.menu-alt{color:rgba(255,255,255,.82);}
.menu-item:hover{transform:none;background:rgba(255,255,255,.09);}
.menu-item.aktif{
  background:var(--y-yuzey,#fff);color:var(--mor);font-weight:650;
  box-shadow:0 4px 14px rgba(0,0,0,.20);
}
.menu-item.aktif:hover{background:var(--y-yuzey,#fff);color:var(--mor);}
.menu-item.aktif .m-ikon{opacity:1;}
.menu-item.aktif::after{color:rgba(93,62,188,.45);}
.menu-item .m-ikon{transition:opacity .15s,transform .15s;}
.menu-item:hover .m-ikon{transform:scale(1.08);}
.menu-item.aktif::before{
  content:'';position:absolute;left:-6px;top:50%;transform:translateY(-50%);
  width:3px;height:18px;border-radius:3px;background:var(--t-vurgu);
  box-shadow:0 0 10px rgba(255,207,45,.65);
}
.sidebar-menu::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18);border:none;}
.sidebar-alt{
  padding:12px 14px calc(14px + env(safe-area-inset-bottom));
  border-top:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.14);
}
.kullanici-kart{background:rgba(255,255,255,.10);box-shadow:inset 0 0 0 1px rgba(255,255,255,.07);}
.kullanici-rol{background:var(--t-vurgu);color:var(--y-mor-yazi,#3a2390);letter-spacing:.3px;}
.btn-cikis{border-radius:var(--t-r-s);font-weight:600;}

/* çevrimiçi rozeti çıkış butonunun üstüne binmesin */
#baglanti-rozet{left:auto!important;right:14px!important;bottom:14px!important;opacity:.92;}

/* ---------- Sayfa başlığı ---------- */
.ust-bar{margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid var(--t-kenar);}
.sayfa-baslik{letter-spacing:-.5px;line-height:1.15;}
.sayfa-alt-baslik{color:var(--t-yazi-2);}

/* ---------- Kartlar ---------- */
.kart{
  border:1px solid var(--t-kenar);border-radius:var(--t-r-l);
  box-shadow:var(--t-golge-1);
}
.kart:hover{box-shadow:var(--t-golge-2);border-color:var(--t-kenar-koyu);transform:translateY(-2px);}
.kart::after{height:0;}
.kart-ikon-kutu{box-shadow:inset 0 0 0 1px rgba(46,42,68,.04);}
.kart-sayi{font-variant-numeric:tabular-nums;letter-spacing:-.5px;}
.kart.mor{border-top:3px solid var(--t-ana);}
.kart.sari{border-top:3px solid var(--t-vurgu);}
.kart.yesil{border-top:3px solid var(--t-olumlu);}
.kart.kirmizi{border-top:3px solid var(--t-olumsuz);}

/* ---------- Panel / tablo kutusu ---------- */
.tablo-kutu{border:1px solid var(--t-kenar);border-radius:var(--t-r-l);box-shadow:var(--t-golge-1);}
.tablo-baslik{border-bottom:1px solid var(--t-kenar);background:var(--t-yuzey-2);}
.tablo-baslik h3{letter-spacing:-.2px;}
th{background:var(--t-yuzey-2);color:var(--t-yazi-3);border-bottom:1px solid var(--t-kenar);}
td{border-bottom:1px solid var(--y-kenar,#f3f2f8);}
tbody tr:hover td{background:var(--y-bilgi-z,#f8f7fc);}

/* ---------- Butonlar ---------- */
.btn{border-radius:10px;letter-spacing:.1px;}
.btn-mor{background:linear-gradient(180deg,#6a4de0,var(--t-ana));box-shadow:0 1px 2px rgba(91,73,189,.18),0 6px 16px -8px rgba(91,73,189,.35);}
.btn-mor:hover{background:linear-gradient(180deg,var(--t-ana),var(--t-ana-koyu));}
.btn-gri{background:var(--t-yuzey);color:var(--t-yazi-2);box-shadow:inset 0 0 0 1px var(--t-kenar-koyu);}
.btn-gri:hover{background:var(--t-yuzey-2);color:var(--t-yazi);}
.btn-sari{box-shadow:0 1px 2px rgba(180,130,0,.25);}

/* ---------- Rozet ---------- */
.rozet{box-shadow:inset 0 0 0 1px rgba(46,42,68,.05);}

/* ---------- Form ---------- */
.arama,.form-grup input,.form-grup select,.form-grup textarea,.giris-input{
  border-color:var(--t-kenar-koyu);background:var(--t-yuzey);border-radius:10px;
}
.arama:focus,.form-grup input:focus,.form-grup select:focus,.form-grup textarea:focus,.giris-input:focus{
  border-color:var(--t-ana);box-shadow:0 0 0 3px rgba(115,97,216,.13);
}
:where(button,a,input,select,textarea):focus-visible{
  outline:2px solid var(--t-ana);outline-offset:2px;
}

/* ---------- Modül / hızlı erişim kartları ---------- */
.modul-kart{border:1px solid var(--t-kenar);border-radius:var(--t-r-m);transition:.18s;}
.modul-kart:hover{border-color:var(--t-ana);box-shadow:var(--t-golge-2);transform:translateY(-2px);}

/* ---------- Modal ---------- */
.modal-kutu{border-radius:var(--t-r-xl);box-shadow:0 24px 70px -24px rgba(46,42,68,.40);}
.modal{background:rgba(46,42,68,.34);backdrop-filter:blur(4px);}

/* ---------- Giriş ekranı ---------- */
#giris-ekrani{background:linear-gradient(150deg,#2f1c78 0%,#4d31b8 55%,#7657e8 100%);}
.giris-kutu{border-radius:var(--t-r-xl);box-shadow:0 30px 90px -30px rgba(60,45,120,.55);}

/* ---------- Genel yumuşatma ---------- */
@media (prefers-reduced-motion:reduce){
  *{animation-duration:.01ms!important;transition-duration:.01ms!important;}
}

/* ---------- Dashboard modül ızgarası ---------- */
#d-modul-grid{grid-template-columns:repeat(auto-fill,minmax(196px,1fr));gap:12px;padding:16px;}
.t-modul{
  cursor:pointer;padding:16px 14px 15px;border-radius:var(--t-r-m);
  background:var(--t-yuzey);border:1px solid var(--t-kenar);
  transition:transform .16s,box-shadow .16s,border-color .16s;
  position:relative;overflow:hidden;
}
.t-modul::before{
  content:'';position:absolute;left:0;top:0;bottom:0;width:3px;
  background:var(--t-ana);opacity:0;transition:opacity .16s;
}
.t-modul:hover{transform:translateY(-2px);box-shadow:var(--t-golge-2);border-color:var(--t-kenar-koyu);}
.t-modul:hover::before{opacity:1;}
.t-modul-ikon{
  width:38px;height:38px;border-radius:11px;display:flex;align-items:center;justify-content:center;
  font-size:19px;background:var(--t-ana-acik);margin-bottom:10px;
}
.t-modul-ad{font-size:14px;font-weight:700;color:var(--t-yazi);letter-spacing:-.1px;}
.t-modul-ac{font-size:11.5px;color:var(--t-yazi-2);margin-top:4px;line-height:1.45;}

@media (max-width:768px){
  #d-modul-grid{grid-template-columns:1fr 1fr!important;gap:8px;padding:10px;}
  .t-modul{padding:12px 10px;}
  .t-modul-ikon{width:32px;height:32px;font-size:16px;border-radius:9px;margin-bottom:8px;}
  .t-modul-ad{font-size:13px;}
  .t-modul-ac{font-size:11px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
  .ust-bar{padding-bottom:10px;}
}

/* ---------- Menü sıralama (sürükle-bırak) ---------- */
.sidebar-menu [data-mid]{
  cursor:pointer;
  -webkit-user-select:none;user-select:none;-webkit-touch-callout:none;
  -webkit-tap-highlight-color:rgba(255,255,255,.08);
}
/* Sıralama modu: parmak dokunmadan ÖNCE touch-action kapanır — tarayıcı kaydırmayı
   hiç başlatmaz, sürükleme gerçek cihazda da kaçmaz. */
.sidebar-menu.sirala-modu [data-mid]{touch-action:none;}
.sidebar-menu.sirala-modu .menu-item{background:rgba(255,255,255,.08);}
.sidebar-menu.sirala-modu .menu-item::after{opacity:1;display:block;}
#menu-sirala-btn{border-style:solid;color:rgba(255,255,255,.75);}
.sidebar-menu.sirala-modu ~ * #menu-sirala-btn,
.sidebar-menu.sirala-modu #menu-sirala-btn{
  background:var(--t-vurgu);color:var(--y-mor-yazi,#3a2390);border-color:transparent;font-weight:700;
}
.sidebar-menu [data-mid].surukleniyor,
.sidebar-menu .menu-grup.surukleniyor{opacity:.4;}
.sidebar-menu .menu-item{padding-right:20px;}
.menu-item::after{
  content:'⠿';position:absolute;right:5px;top:50%;transform:translateY(-50%);
  font-size:12px;color:rgba(255,255,255,.4);opacity:0;transition:opacity .15s;
}
.menu-item:hover::after{opacity:1;}
.menu-grup-bas::after{display:none;}
.menu-altlik{margin:10px 12px 4px;display:flex;flex-direction:column;gap:6px;}
.menu-sifirla{
  padding:8px 10px;border-radius:8px;cursor:pointer;
  font-size:11px;color:rgba(255,255,255,.55);text-align:center;
  border:1px dashed rgba(255,255,255,.2);
}
.menu-sifirla:hover{color:#fff;border-color:rgba(255,255,255,.4);background:rgba(255,255,255,.07);}

/* mobilde sürükleme ipucu (dokunmatikte tutamak görünmez) */
@media (max-width:768px){
  #sidebar-menu::after{
    content:'Sıralamak için “Menüyü sırala”ya bas';
    display:block;padding:10px 16px 16px;font-size:10.5px;
    color:rgba(255,255,255,.4);text-align:center;
  }
  .menu-item::after{display:none;}
}

#sidebar-menu.sirala-modu::after{content:'Öğeleri sürükleyip bırak';color:var(--t-vurgu);}
@media (max-width:768px){ #sidebar-menu.sirala-modu::after{content:'Öğeleri basılı tutmadan sürükle';} }

/* açık lavanta menüde ikincil metinler soluk kalmasın */
.sidebar-logo span{color:rgba(255,255,255,.62);}
.kullanici-kart span{color:rgba(255,255,255,.66);}
.btn-cikis{background:rgba(255,255,255,.12);color:rgba(255,255,255,.9);border-color:rgba(255,255,255,.22);}
.menu-sifirla{color:rgba(255,255,255,.6);border-color:rgba(255,255,255,.24);}

/* Depo İşleri: özet kartlar dashboard'daki gibi kompakt */
#sayfa-depo .kartlar{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:16px;}
#sayfa-depo .kart{padding:12px 14px;border-radius:12px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
#sayfa-depo .kart-ikon-kutu{width:32px;height:32px;border-radius:9px;font-size:15px;margin-bottom:0;flex-shrink:0;}
#sayfa-depo .kart-sayi{font-size:18px;}
#sayfa-depo .kart-etiket{font-size:11px;margin-top:0;}

/* Streç hesap makinesi: .btn inline-flex olduğu için rakam sola yapışıyordu */
.strc-tuslar .btn{justify-content:center;font-variant-numeric:tabular-nums;}
@media (min-width:769px){
  /* masaüstünde hesap makinesi yarım ekranı kaplamasın */
  #sayfa-strec div[style*="minmax(280px,1fr)"]{grid-template-columns:minmax(280px,360px) minmax(0,1fr)!important;}
}

/* ============================================================
   "YENİ" GÖRÜNÜM — 07.09.2026
   İkinci tema. body[data-duzen="yeni"] ile açılır; Klasik görünüm
   (data-tema yok) hiç etkilenmez. Marka renkleri AYNI kalır —
   değişen geometri, yoğunluk ve tipografi hiyerarşisidir.
   Koyu tema burada YOK: sayfa JS'i 2.000+ yerde açık zemine göre
   sabit renk basıyor, koyu zemin okunmaz olur (07.09 ölçümü).
   ============================================================ */
body[data-duzen="yeni"]{
  --t-zemin:#f4f3f9;
  --t-yuzey:#ffffff;
  --t-kenar:#e9e7f3;
  --t-yazi-1:#171526;
  --t-yazi-2:#585570;
  --t-yazi-3:#8b88a3;
  --t-golge-1:0 1px 2px rgba(23,21,38,.04);
  --t-golge-2:0 2px 6px rgba(23,21,38,.05), 0 10px 24px rgba(23,21,38,.05);
  --t-golge-3:0 8px 20px rgba(23,21,38,.07), 0 22px 48px rgba(23,21,38,.08);
  --t-r-1:10px; --t-r-2:14px; --t-r-3:18px;
}

/* başlık hiyerarşisi: sayfa adı biraz daha iri ve sıkı, alt başlık sakin */
body[data-duzen="yeni"] .sayfa-baslik{ font-size:23px; font-weight:800; letter-spacing:-.3px; }
body[data-duzen="yeni"] .sayfa-alt-baslik{ color:var(--t-yazi-2); font-size:13px; }

/* kartlar: daha yumuşak kenar, daha az gürültülü gölge */
body[data-duzen="yeni"] .kart,
body[data-duzen="yeni"] .t-modul,
body[data-duzen="yeni"] .ca-kutu{
  border-radius:var(--t-r-2);
  box-shadow:var(--t-golge-2);
  border:1px solid var(--t-kenar);
}

/* tablolar: satır yüksekliği ve ayırıcı sadeleşir */
body[data-duzen="yeni"] table.cetvel td{ padding-top:9px; padding-bottom:9px; }
body[data-duzen="yeni"] table.cetvel thead th{
  background:var(--t-yuzey-2); color:var(--t-yazi-2); font-size:11.5px;
  letter-spacing:.3px; text-transform:none;
}

/* ---- menü: bölüm başlıkları + arama kutusu (yalnız yeni görünüm) ---- */
body[data-duzen="yeni"] .menu-bolum{
  color:rgba(255,255,255,.45); font-size:10px; font-weight:800;
  letter-spacing:.9px; padding:13px 14px 5px; text-transform:uppercase;
  pointer-events:none;
}
body[data-duzen="yeni"] #menu-ara-kutu{ display:block; }
#menu-ara-kutu{ display:none; padding:10px 12px 4px; }
#menu-ara{
  width:100%; box-sizing:border-box; border:0; outline:0;
  background:rgba(255,255,255,.14); color:#fff;
  border-radius:9px; padding:9px 12px; font-size:12.5px; font-family:inherit;
}
#menu-ara::placeholder{ color:rgba(255,255,255,.6); }

/* görünüm anahtarı (kenar çubuğu altlığı) */
.tema-secici{ display:flex; gap:4px; background:rgba(0,0,0,.18); border-radius:10px; padding:3px; margin:0 14px 8px; }
.tema-secici button{
  flex:1; border:0; cursor:pointer; font-family:inherit; font-size:11.5px; font-weight:700;
  padding:7px 6px; border-radius:8px; background:transparent; color:rgba(255,255,255,.72);
  min-height:34px;                    /* mobilde dokunma hedefi */
}
@media (max-width:768px){ .tema-secici button{ min-height:44px; font-size:13px; } }
.tema-secici button.aktif{ background:var(--y-yuzey,#fff); color:var(--t-ana,#5b3fd6); }

/* ============ KOMUT PALETİ + BUGÜN — 07.09.2026 ============
   Her iki görünümde de aynı: tema anahtarına bağlı DEĞİL. */
#komut-katman{
  display:none; position:fixed; inset:0; z-index:9000;
  background:rgba(20,18,35,.42); backdrop-filter:blur(2px);
  padding:12vh 16px 16px; justify-content:center; align-items:flex-start;
}
#komut-katman.acik{ display:flex; }
#komut-kutu{
  width:100%; max-width:560px; background:var(--y-yuzey,#fff); border-radius:16px;
  box-shadow:0 18px 48px rgba(20,18,35,.28); overflow:hidden;
}
#komut-giris{
  width:100%; border:0; outline:0; font-family:inherit; font-size:16px;
  padding:16px 18px; color:var(--y-metin1,#171526); background:transparent;
  border-bottom:1px solid #eceaf5;
}
#komut-liste{ max-height:48vh; overflow-y:auto; }
.komut-sat{
  display:flex; align-items:center; gap:10px; padding:10px 18px;
  cursor:pointer; font-size:14px; color:var(--y-metin1,#2b2842);
}
.komut-sat.secili{ background:var(--y-bilgi-z,#f2effc); }
.komut-ikon{ width:22px; text-align:center; flex-shrink:0; }
.komut-ad{ flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.komut-alt{ font-size:11px; color:var(--y-metin3,#8b88a3); flex-shrink:0; }
.komut-bos{ padding:18px; text-align:center; color:var(--y-metin3,#8b88a3); font-size:13px; }
#komut-ipucu{
  padding:8px 18px; font-size:11px; color:var(--y-metin3,#8b88a3);
  border-top:1px solid #eceaf5; background:var(--y-bilgi-z,#faf9fd);
}
.mobil-ara-btn{
  background:rgba(255,255,255,.16); border:0; color:#fff; font-size:16px;
  width:36px; height:36px; border-radius:10px; cursor:pointer; flex-shrink:0;
}
@media (min-width:769px){ .mobil-ara-btn{ display:none; } }

.bg-sat{
  display:flex; align-items:center; gap:10px; flex-wrap:wrap;
  padding:11px 16px; border-bottom:1px solid #f0eef8; cursor:pointer;
}
.bg-sat:last-child{ border-bottom:0; }
.bg-sat:hover{ background:var(--y-bilgi-z,#faf9fd); }
.bg-sat.gec{ border-left:3px solid #dc2626; }
.bg-sat-ad{ flex:1; min-width:140px; font-size:14px; font-weight:600; color:var(--y-metin1,#1a1a2e); }
.bg-sat-yan{ display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
.bg-tarih{ font-size:11px; color:var(--y-metin3,#6b7280); }
.bg-sat.gec .bg-tarih{ color:#dc2626; font-weight:700; }
.bg-hizli-kart{
  display:flex; align-items:center; gap:10px; cursor:pointer;
  border:1px solid #ece9f6; border-radius:12px; padding:12px 14px;
  background:var(--y-bilgi-z,#fbfaff); font-size:13px; font-weight:600; color:var(--y-metin1,#1a1a2e);
}
.bg-hizli-kart:hover{ box-shadow:0 6px 18px rgba(93,62,188,.14); }
#sayfa-bugun .kartlar{ display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:10px; margin-bottom:16px; }
#sayfa-bugun .kart{ background:var(--y-yuzey,#fff); border:1px solid #ece9f6; border-radius:12px; padding:13px 15px;
  display:grid; grid-template-columns:auto minmax(0,1fr); grid-template-areas:"i s" "i e"; column-gap:12px; align-items:center; }
#sayfa-bugun .kart-ikon-kutu{ grid-area:i; width:38px; height:38px; border-radius:10px; font-size:17px;
  display:flex; align-items:center; justify-content:center; background:var(--y-bilgi-z,#f4f2fc); }
#sayfa-bugun .kart-sayi{ grid-area:s; font-size:20px; font-weight:800; color:var(--y-metin1,#1a1a2e); align-self:end; line-height:1.15; }
#sayfa-bugun .kart-etiket{ grid-area:e; font-size:11px; color:var(--y-metin3,#6b7280); margin-top:1px; align-self:start; }


/* ============ KOYU GÖRÜNÜM — 07.09.2026 ============
   "Yeni" düzeni miras alır (bölüm başlıkları + menü araması), yalnız renk
   token'larını ezer. Sayfalardaki gömülü renkler 07.09'da var(--y-*) sarmalına
   alındı; sarmalanmamış açık zeminler kademeli olarak çevriliyor. */
body[data-tema="koyu"]{
  --acik-gri:#15141f;
  --white:#1e1c2a;
  --yazi:#ece9f7;
  --gri:#a5a1ba;
  --acik-mor:#2b2442;
  --mor:#8b6ef0;
  --koyu-mor:#7455de;

  --y-yuzey:#1e1c2a;
  --y-zemin2:#26243a;
  --y-metin1:#ece9f7;
  --y-metin2:#c6c2d8;
  --y-metin3:#a5a1ba;
  --y-metin4:#8b87a2;
  --y-kenar:#343149;
  --y-mor-yazi:#bda7ff;
  --y-kirmizi-yazi:#ff9d9d;
  --y-turuncu-yazi:#ffc46b;
  --y-yesil-yazi:#6ee7a8;
  --y-mavi-yazi:#8ec5ff;
  --y-hata-z:#3a1f24;
  --y-ok-z:#14301f;
  --y-uyari-z:#382c14;
  --y-bilgi-z:#1b2340;

  --t-zemin:#15141f; --t-yuzey:#1e1c2a; --t-yuzey-2:#26243a; --t-kenar:#343149; --t-kenar-koyu:#413d5c;
  --t-ana:#8b6ef0; --t-ana-koyu:#7455de; --t-ana-acik:#2b2442;
  --t-yazi:#ece9f7; --t-yazi-1:#ece9f7; --t-yazi-2:#c6c2d8; --t-yazi-3:#8b87a2;
  --t-golge-2:0 2px 6px rgba(0,0,0,.35), 0 10px 24px rgba(0,0,0,.3);
  background:var(--acik-gri); color:var(--yazi);
  color-scheme:dark;
}
body[data-tema="koyu"] .icerik{ background:var(--acik-gri); }
body[data-tema="koyu"] input,
body[data-tema="koyu"] select,
body[data-tema="koyu"] textarea{ color:var(--yazi); }
body[data-tema="koyu"] input::placeholder,
body[data-tema="koyu"] textarea::placeholder{ color:var(--y-metin4); }
body[data-tema="koyu"] #komut-kutu{ background:var(--y-yuzey); }
body[data-tema="koyu"] #komut-giris{ background:transparent; color:var(--yazi); border-bottom-color:var(--y-kenar); }
body[data-tema="koyu"] .komut-sat{ color:var(--y-metin2); }
body[data-tema="koyu"] .komut-sat.secili{ background:var(--y-zemin2); }
body[data-tema="koyu"] #komut-ipucu{ background:var(--y-zemin2); border-top-color:var(--y-kenar); }
body[data-tema="koyu"] .bg-hizli-kart,
body[data-tema="koyu"] #sayfa-bugun .kart{ background:var(--y-yuzey); border-color:var(--y-kenar); color:var(--yazi); }
body[data-tema="koyu"] #sayfa-bugun .kart-ikon-kutu{ background:var(--y-zemin2); }
body[data-tema="koyu"] #sayfa-bugun .kart-sayi,
body[data-tema="koyu"] .bg-sat-ad{ color:var(--yazi); }
body[data-tema="koyu"] .bg-sat:hover{ background:var(--y-zemin2); }
body[data-tema="koyu"] ::-webkit-scrollbar-thumb{ background:#413d5c; border-color:var(--acik-gri); }
body[data-tema="koyu"] .rozet-sari{ color:#fcd34d; }
body[data-tema="koyu"] .rozet-yesil{ color:#6ee7b7; }
body[data-tema="koyu"] .rozet-kirmizi{ color:#fca5a5; }
body[data-tema="koyu"] .rozet-mavi{ color:#93c5fd; }
body[data-tema="koyu"] .rozet-mor{ color:#c4b5fd; }

/* Koyu: JS ile üretilen zebra/vurgu satırları (inline #f… zeminler).
   var(--y-*) sarmalına alınmış zeminler bu seçiciye TAKILMAZ, anlamlı
   renklerini korur; burada yalnız dinamik üretilen açık zeminler yakalanır. */
body[data-tema="koyu"] [style*="background:#f" i],
body[data-tema="koyu"] [style*="background: #f" i],
body[data-tema="koyu"] [style*="background:#e" i],
body[data-tema="koyu"] [style*="background: #e" i],
body[data-tema="koyu"] [style*="background:#d" i],
body[data-tema="koyu"] [style*="background:white" i],
body[data-tema="koyu"] [style*="background: white" i],
body[data-tema="koyu"] [style*="background:#fff;" i],
body[data-tema="koyu"] [style*="background:var(--y-yuzey,white)" i],
body[data-tema="koyu"] [style*="background:var(--y-yuzey,#ffffff)" i]{
  background:var(--y-zemin2)!important; color:var(--y-metin2);
}
body[data-tema="koyu"] tbody tr[style*="background:var(--y-yuzey,#ffffff)" i],
body[data-tema="koyu"] tbody tr[style*="background:var(--y-yuzey,#fff)" i]{ background:var(--y-yuzey)!important; }


/* Koyu: yukarıdaki [style*="background:#e/#f/#d"] açık-zemin süzgeci, aynı harfle başlayan
   DOYGUN renkleri de (#ef4444 kırmızı, #eab308 sarı, #f59e0b turuncu…) zemin rengine
   boyuyordu — grafik açıklama kareleri ve durum rozetleri kayboluyordu (14.09).
   Öznitelik seçicisi karakter aralığı bilmediği için süzgeç daraltılamaz; index.html'de
   geçen L<0.80 ve S>0.25 olan d/e/f önekli renkler burada geri verilir.
   Seçiciler ';' ya da $= ile SONLANIR: '#e0242422' gibi alfa ekli yarı saydam zeminleri
   eşlememeli (eşleşince opak olup aynı renkli yazıyı yutuyordu). */
body[data-tema="koyu"] [style*="background:#d97706;" i],
body[data-tema="koyu"] [style*="background: #d97706;" i],
body[data-tema="koyu"] [style$="background:#d97706" i],
body[data-tema="koyu"] [style$="background: #d97706" i]{ background:#d97706!important; }
body[data-tema="koyu"] [style*="background:#dc2626;" i],
body[data-tema="koyu"] [style*="background: #dc2626;" i],
body[data-tema="koyu"] [style$="background:#dc2626" i],
body[data-tema="koyu"] [style$="background: #dc2626" i]{ background:#dc2626!important; }
body[data-tema="koyu"] [style*="background:#e02424;" i],
body[data-tema="koyu"] [style*="background: #e02424;" i],
body[data-tema="koyu"] [style$="background:#e02424" i],
body[data-tema="koyu"] [style$="background: #e02424" i]{ background:#e02424!important; }
body[data-tema="koyu"] [style*="background:#e6be00;" i],
body[data-tema="koyu"] [style*="background: #e6be00;" i],
body[data-tema="koyu"] [style$="background:#e6be00" i],
body[data-tema="koyu"] [style$="background: #e6be00" i]{ background:#e6be00!important; }
body[data-tema="koyu"] [style*="background:#ea580c;" i],
body[data-tema="koyu"] [style*="background: #ea580c;" i],
body[data-tema="koyu"] [style$="background:#ea580c" i],
body[data-tema="koyu"] [style$="background: #ea580c" i]{ background:#ea580c!important; }
body[data-tema="koyu"] [style*="background:#eab308;" i],
body[data-tema="koyu"] [style*="background: #eab308;" i],
body[data-tema="koyu"] [style$="background:#eab308" i],
body[data-tema="koyu"] [style$="background: #eab308" i]{ background:#eab308!important; }
body[data-tema="koyu"] [style*="background:#ec4899;" i],
body[data-tema="koyu"] [style*="background: #ec4899;" i],
body[data-tema="koyu"] [style$="background:#ec4899" i],
body[data-tema="koyu"] [style$="background: #ec4899" i]{ background:#ec4899!important; }
body[data-tema="koyu"] [style*="background:#ef4444;" i],
body[data-tema="koyu"] [style*="background: #ef4444;" i],
body[data-tema="koyu"] [style$="background:#ef4444" i],
body[data-tema="koyu"] [style$="background: #ef4444" i]{ background:#ef4444!important; }
body[data-tema="koyu"] [style*="background:#f59e0b;" i],
body[data-tema="koyu"] [style*="background: #f59e0b;" i],
body[data-tema="koyu"] [style$="background:#f59e0b" i],
body[data-tema="koyu"] [style$="background: #f59e0b" i]{ background:#f59e0b!important; }
body[data-tema="koyu"] [style*="background:#f87171;" i],
body[data-tema="koyu"] [style*="background: #f87171;" i],
body[data-tema="koyu"] [style$="background:#f87171" i],
body[data-tema="koyu"] [style$="background: #f87171" i]{ background:#f87171!important; }
body[data-tema="koyu"] [style*="background:#f97316;" i],
body[data-tema="koyu"] [style*="background: #f97316;" i],
body[data-tema="koyu"] [style$="background:#f97316" i],
body[data-tema="koyu"] [style$="background: #f97316" i]{ background:#f97316!important; }
body[data-tema="koyu"] [style*="background:#fb923c;" i],
body[data-tema="koyu"] [style*="background: #fb923c;" i],
body[data-tema="koyu"] [style$="background:#fb923c" i],
body[data-tema="koyu"] [style$="background: #fb923c" i]{ background:#fb923c!important; }
body[data-tema="koyu"] [style*="background:#fbbf24;" i],
body[data-tema="koyu"] [style*="background: #fbbf24;" i],
body[data-tema="koyu"] [style$="background:#fbbf24" i],
body[data-tema="koyu"] [style$="background: #fbbf24" i]{ background:#fbbf24!important; }
body[data-tema="koyu"] [style*="background:#fcd34d;" i],
body[data-tema="koyu"] [style*="background: #fcd34d;" i],
body[data-tema="koyu"] [style$="background:#fcd34d" i],
body[data-tema="koyu"] [style$="background: #fcd34d" i]{ background:#fcd34d!important; }
body[data-tema="koyu"] [style*="background:#fdba74;" i],
body[data-tema="koyu"] [style*="background: #fdba74;" i],
body[data-tema="koyu"] [style$="background:#fdba74" i],
body[data-tema="koyu"] [style$="background: #fdba74" i]{ background:#fdba74!important; }
body[data-tema="koyu"] [style*="background:#fde047;" i],
body[data-tema="koyu"] [style*="background: #fde047;" i],
body[data-tema="koyu"] [style$="background:#fde047" i],
body[data-tema="koyu"] [style$="background: #fde047" i]{ background:#fde047!important; }
body[data-tema="koyu"] [style*="background:#fde68a;" i],
body[data-tema="koyu"] [style*="background: #fde68a;" i],
body[data-tema="koyu"] [style$="background:#fde68a" i],
body[data-tema="koyu"] [style$="background: #fde68a" i]{ background:#fde68a!important; }
body[data-tema="koyu"] [style*="background:#ffc107;" i],
body[data-tema="koyu"] [style*="background: #ffc107;" i],
body[data-tema="koyu"] [style$="background:#ffc107" i],
body[data-tema="koyu"] [style$="background: #ffc107" i]{ background:#ffc107!important; }
body[data-tema="koyu"] [style*="background:#ffd300;" i],
body[data-tema="koyu"] [style*="background: #ffd300;" i],
body[data-tema="koyu"] [style$="background:#ffd300" i],
body[data-tema="koyu"] [style$="background: #ffd300" i]{ background:#ffd300!important; }
body[data-tema="koyu"] [style*="background:#ffff00;" i],
body[data-tema="koyu"] [style*="background: #ffff00;" i],
body[data-tema="koyu"] [style$="background:#ffff00" i],
body[data-tema="koyu"] [style$="background: #ffff00" i]{ background:#ffff00!important; }

/* JS'in dinamik ürettiği (string birleştirmeli) marka moru metinler */
body[data-tema="koyu"] [style*="color:var(--y-mor-yazi,#5D3EBC)" i]{ color:var(--y-mor-yazi)!important; }

/* JS'in dinamik ürettiği koyu durum metinleri (string birleştirmeli inline style) */
body[data-tema="koyu"] [style*="color:var(--y-kirmizi-yazi,#991b1b)" i],
body[data-tema="koyu"] [style*="color:var(--y-kirmizi-yazi,#b91c1c)" i],
body[data-tema="koyu"] [style*="color:var(--y-kirmizi-yazi,#7f1d1d)" i],
body[data-tema="koyu"] [style*="color:var(--y-kirmizi-yazi,#a41818)" i]{ color:var(--y-kirmizi-yazi)!important; }
body[data-tema="koyu"] [style*="color:var(--y-yesil-yazi,#166534)" i],
body[data-tema="koyu"] [style*="color:var(--y-yesil-yazi,#15803d)" i],
body[data-tema="koyu"] [style*="color:var(--y-yesil-yazi,#065f46)" i],
body[data-tema="koyu"] [style*="color:var(--y-yesil-yazi,#14532d)" i],
body[data-tema="koyu"] [style*="color:var(--y-yesil-yazi,#166f4a)" i],
body[data-tema="koyu"] [style*="color:var(--y-yesil-yazi,#00A650)" i]{ color:var(--y-yesil-yazi)!important; }
body[data-tema="koyu"] [style*="color:var(--y-turuncu-yazi,#92400e)" i],
body[data-tema="koyu"] [style*="color:var(--y-turuncu-yazi,#b45309)" i],
body[data-tema="koyu"] [style*="color:var(--y-kirmizi-yazi,#9a3412)" i],
body[data-tema="koyu"] [style*="color:var(--y-turuncu-yazi,#78350f)" i],
body[data-tema="koyu"] [style*="color:var(--y-turuncu-yazi,#854d0e)" i]{ color:var(--y-turuncu-yazi)!important; }
body[data-tema="koyu"] [style*="color:var(--y-mavi-yazi,#1e40af)" i],
body[data-tema="koyu"] [style*="color:var(--y-mavi-yazi,#1e3a5f)" i],
body[data-tema="koyu"] [style*="color:var(--y-mavi-yazi,#1d4ed8)" i],
body[data-tema="koyu"] [style*="color:var(--y-mavi-yazi,#075985)" i],
body[data-tema="koyu"] [style*="color:var(--y-mavi-yazi,#0369a1)" i],
body[data-tema="koyu"] [style*="color:var(--y-mavi-yazi,#1f4e79)" i],
body[data-tema="koyu"] [style*="color:var(--y-mavi-yazi,#1e3a8a)" i]{ color:var(--y-mavi-yazi)!important; }

/* Koyu: satır vurgusu — bilgi zemini değil, bir tık açık nötr */
body[data-tema="koyu"] tbody tr:hover td{ background:#2e2b45!important; }
body[data-tema="koyu"] ::-webkit-scrollbar-thumb:hover{ background:#524d70; }

/* Sarı/vurgu zeminli düğme ve rozetlerde yazı KOYU kalır (--yazi koyuda açığa döndü) */
body[data-tema="koyu"] .btn-sari,
body[data-tema="koyu"] .kullanici-rol{ color:#1a1a2e; }

/* Koyu: Kontrolcü Dashboard grup kartları — KP_GRUP_COLORS ham hex basıyor
   (SVG fill özniteliğine ve alfa ekli birleştirmeye gittiği için token'lanamaz). */
body[data-tema="koyu"] #kp-db-grup-kartlar [style*="color:#475569" i],
body[data-tema="koyu"] #kp-db-grup-kartlar [style*="color:#1d4ed8" i],
body[data-tema="koyu"] #kp-db-grup-kartlar [style*="color:#15803d" i],
body[data-tema="koyu"] #kp-db-grup-kartlar [style*="color:#c2410c" i]{ color:var(--y-metin1)!important; }
body[data-tema="koyu"] #kp-db-grup-kartlar circle[fill^="#"]{ fill:var(--y-zemin2); }
body[data-tema="koyu"] #kp-db-grup-kartlar text[fill^="#"]{ fill:var(--y-metin1); }
