:root{
  /* Tasarim referansi paleti (mv_erp_tasarim_referans.html) */
  --mavi:#2563eb;     --mavi-bg:#eff6ff;
  --yesil:#16a34a;    --yesil-bg:#f0fdf4;
  --kirmizi:#dc2626;  --kirmizi-bg:#fef2f2;
  --turuncu:#d97706;  --turuncu-bg:#fffbeb;
  --mor:#7c3aed;      --mor-bg:#f5f3ff;
  --teal:#0d9488;     --teal-bg:#f0fdfa;
  /* Uygulama semantik takma adlari (eski sinif adlari calismaya devam etsin) */
  --lacivert:#2563eb;        /* ana vurgu: aktif menu + primary buton (referans mavi) */
  --lacivert-koyu:#1d4ed8;
  --yan-bg:#f8fafc;          /* sol menu zemini */
  --icerik-bg:#f1f5f9;       /* icerik alani zemini */
  --zemin:#f1f5f9;           /* genel acik zemin (rozet/grup-satiri/panel basligi vb.) — onceden tanimsizdi */
  --ok:#16a34a;              /* denge: dengeli (yesil) */
  --err:#dc2626;             /* denge: dengesiz (kirmizi) */
  --uyari:#d97706;           /* dikkat / bekleyen (turuncu) */
  --txt:#1e293b;
  --mut:#64748b;
  --mut2:#94a3b8;
  --line:#e2e8f0;
  --mono:"SF Mono",ui-monospace,"Cascadia Mono","Roboto Mono",Menlo,Consolas,monospace;
}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,Segoe UI,Roboto,Arial,sans-serif;background:var(--icerik-bg);color:var(--txt)}

/* === Kabuk: sol dikey menu + govde === */
.kabuk{display:flex;min-height:100vh}
/* Mobil hamburger / cekmece ogeleri — masaustunde gizli (mobil media query gosterir) */
.hamburger,.ust-app-baslik,.menu-perde,.serit-dots{display:none}
.yan-ayar{display:none}

/* Sol dikey menu (sidebar) */
.yan{width:220px;flex:0 0 220px;background:var(--yan-bg);border-right:1px solid var(--line);
     display:flex;flex-direction:column;position:sticky;top:0;height:100vh}
.yan .marka{display:flex;align-items:center;gap:11px;padding:16px 18px;border-bottom:1px solid var(--line)}
.yan .marka-logo{flex:0 0 auto;width:38px;height:38px;border-radius:10px;background:var(--lacivert);
     color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;
     letter-spacing:.3px;overflow:hidden;box-shadow:0 2px 6px rgba(31,78,121,.25)}
.yan .marka-logo img{width:100%;height:100%;object-fit:contain;background:#fff}
.yan .marka-yazi{display:flex;flex-direction:column;line-height:1.18;min-width:0}
.yan .marka-ad{font-weight:800;font-size:15.5px;color:var(--lacivert);letter-spacing:.2px;
     white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px}
.yan .marka-alt{font-size:9.5px;font-weight:700;color:var(--mut2);letter-spacing:.7px;text-transform:uppercase;margin-top:1px}
.yan .marka-alt:empty{display:none}
.yan nav{display:flex;flex-direction:column;padding:12px 10px;gap:2px;height:calc(100vh - 70px);overflow-y:auto}
.yan nav .siralanabilir{cursor:grab}
.yan nav a{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:8px;
     color:#334155;text-decoration:none;font-size:14px;font-weight:500}
.yan nav a svg{width:18px;height:18px;flex:0 0 18px;color:#64748b}
.yan nav a:hover{background:#e7ecf3;color:var(--lacivert)}
.yan nav a:hover svg{color:var(--lacivert)}
.yan nav a.aktif{background:var(--lacivert);color:#fff}
.yan nav a.aktif svg{color:#fff}
.yan nav a span:first-of-type{flex:1}
.nav-badge{min-width:18px;height:18px;border-radius:9px;background:var(--kirmizi);color:#fff;font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;padding:0 5px;flex:0 0 auto}
.nav-badge[hidden]{display:none}
.yan nav a.aktif .nav-badge{background:#fff;color:var(--lacivert)}
/* Mobil alt menüde rozet ikonun sağ üstüne */
.nav-badge-alt{position:absolute;top:2px;right:50%;transform:translateX(14px);border:2px solid #fff;box-sizing:content-box;min-width:14px;height:14px;font-size:9px}

.govde{flex:1;min-width:0;display:flex;flex-direction:column}

/* === Ince ust bar (sadece sag: sirket + dil + kullanici) === */
.ust{height:52px;background:#fff;border-bottom:1px solid var(--line);
     display:flex;align-items:center;padding:0 22px;position:sticky;top:0;z-index:5}
.ust-sag{margin-left:auto;display:flex;align-items:center;gap:18px}
.ust-alan{display:flex;align-items:center;gap:7px;font-size:13px}
.ust-alan select{padding:5px 8px}
/* Segment seçici (dil + para birimi) — tıklamalı, açılır menü değil */
.seg-mini{display:inline-flex;background:var(--zemin,#eef2f7);border:1px solid var(--line);border-radius:9px;padding:2px;gap:2px}
.seg-mini button{border:none;background:transparent;padding:4px 10px;border-radius:7px;font-size:12px;font-weight:700;color:var(--mut);cursor:pointer;line-height:1.35;font-family:inherit}
.seg-mini button.aktif{background:#fff;color:var(--lacivert);box-shadow:0 1px 3px rgba(15,23,42,.16)}
.seg-mini button:hover:not(.aktif){color:var(--txt)}
.kur-not{font-size:12px;color:#92400e;background:#fef3c7;border:1px solid #fde68a;
     padding:3px 9px;border-radius:999px;white-space:nowrap;max-width:280px;overflow:hidden;text-overflow:ellipsis}
.kullanici{display:flex;align-items:center;gap:8px;padding-left:14px;border-left:1px solid var(--line)}
.kullanici-cikis{background:#dc2626;color:#fff;border:none;width:36px;height:36px;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.14s;box-shadow:0 2px 6px rgba(220,38,38,.32)}
.kullanici-cikis:hover{background:#b91c1c;transform:translateY(-1px);box-shadow:0 4px 12px rgba(220,38,38,.4)}
.kullanici-cikis svg{width:18px;height:18px}
.kullanici .avatar{width:34px;height:34px;border-radius:50%;background:var(--lacivert);color:#fff;cursor:pointer;text-decoration:none;
     display:flex;align-items:center;justify-content:center;font-size:12.5px;font-weight:700;transition:.14s;box-shadow:0 2px 6px rgba(31,78,121,.28)}
.kullanici a.avatar:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(31,78,121,.4)}
.kullanici .kadi{font-size:13px;color:#334155;cursor:pointer;text-decoration:none}
.kullanici a.kadi:hover{color:var(--mavi)}

/* Bildirim zili */
.bildirim-zil{position:relative;width:36px;height:36px;border-radius:10px;border:1px solid var(--line);background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#475569;transition:border-color .15s,background .15s}
.bildirim-zil:hover{border-color:var(--mavi);background:var(--mavi-bg);color:var(--mavi)}
.bildirim-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;border-radius:9px;background:var(--kirmizi);color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 5px;border:2px solid #fff;box-sizing:content-box}
.bildirim-panel{position:fixed;top:60px;right:18px;width:380px;max-height:70vh;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 40px rgba(15,23,42,.15);z-index:9999;display:flex;flex-direction:column;overflow:hidden}
.bildirim-bas{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--line);background:var(--zemin)}
.bildirim-bas h3{font-size:14px;margin:0;font-weight:700}
.bildirim-bas button{background:none;border:none;color:var(--mavi);font-size:12px;cursor:pointer;font-weight:600}
.bildirim-liste{overflow-y:auto;max-height:60vh}
.bildirim-liste{overflow-y:auto;flex:1}
.bildirim-oge{display:flex;gap:10px;padding:12px 14px;border-bottom:1px solid #f1f5f9;text-decoration:none;color:#1e293b;transition:background .12s;position:relative;cursor:pointer;align-items:flex-start}
.bildirim-oge:hover{background:var(--zemin)}
.bildirim-oge.unread{background:#f0f9ff}
.bildirim-oge.unread::before{content:"";position:absolute;left:5px;top:18px;width:6px;height:6px;border-radius:50%;background:var(--mavi)}
.bildirim-ikon{flex-shrink:0;font-size:16px;line-height:1}
.bildirim-icerik{flex:1;min-width:0}
.bildirim-baslik{font-size:13px;font-weight:600;color:#0f172a;margin-bottom:2px}
.bildirim-mesaj{font-size:11.5px;color:var(--mut);line-height:1.3}
.bildirim-zaman{font-size:10.5px;color:var(--mut2);margin-top:3px}
.bildirim-sil{background:none;border:none;color:#cbd5e1;font-size:18px;cursor:pointer;flex-shrink:0;width:24px;height:24px;border-radius:6px;line-height:1;padding:0}
.bildirim-oge:hover .bildirim-sil{color:#94a3b8}
.bildirim-sil:hover{background:#fef2f2;color:#dc2626!important}
.bildirim-bos{padding:30px 14px;text-align:center;color:var(--mut);font-size:13px}
.bildirim-alt{border-top:1px solid var(--line);padding:10px 14px;text-align:center;background:var(--zemin)}
.bildirim-alt a{color:var(--mavi);text-decoration:none;font-size:12.5px;font-weight:600}
.bildirim-alt a:hover{text-decoration:underline}

/* === Icerik alani (genis) === */
main{flex:1;padding:24px 28px;width:100%}
h1{font-size:20px;margin:0 0 16px}
/* GUVENLIK: icerik alanindaki hicbir ikon devasa render olamaz (CSS yuklenmese
   bile SVG'lerin kendi width/height'i var; bu kural ek emniyet). */
main svg{max-width:32px;max-height:32px}

/* form ogeleri */
select,input,button{font:inherit;padding:7px 9px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:var(--txt)}

/* Ana buton: lacivert dolu (Kesinlestir) */
button{background:var(--lacivert);color:#fff;border:1px solid var(--lacivert);cursor:pointer;font-weight:600}
button:hover{background:var(--lacivert-koyu);border-color:var(--lacivert-koyu)}
/* Ikincil buton: cerceveli (Taslak, + Satir, sil) */
button.gri{background:#fff;color:var(--lacivert);border:1px solid #cbd5e1;font-weight:500}
button.gri:hover{background:#f1f5f9;border-color:var(--lacivert);color:var(--lacivert)}

/* kartlar */
.kartlar{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:22px}
.kart{background:#fff;border:1px solid var(--line);border-radius:10px;padding:16px}
.kart .etiket{color:var(--mut);font-size:12px;text-transform:uppercase;letter-spacing:.4px}
.kart .deger{font-size:24px;font-weight:700;margin-top:6px;font-family:var(--mono);font-variant-numeric:tabular-nums}
.kart .pb{color:#94a3b8;font-size:13px;font-weight:500;font-family:system-ui}

.panel{background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px;margin-bottom:20px}

/* tablolar */
table{width:100%;border-collapse:collapse;font-size:14px}
th,td{text-align:left;padding:8px 10px;border-bottom:1px solid #eef2f7}
th{color:var(--mut);font-weight:600;font-size:12px;text-transform:uppercase}
th.sayi,td.sayi{text-align:right}
/* Sayilar ve hesap kodlari: monospace, saga dayali */
td.sayi,input.sayi,.kod{font-family:var(--mono);font-variant-numeric:tabular-nums}
.kod{font-size:13px;color:#334155}
.satir-form td{padding:4px}

/* rozetler */
.rozet{display:inline-block;padding:2px 8px;border-radius:999px;font-size:12px}
.rozet.taslak{background:#fef9c3;color:#854d0e}
.rozet.kesin{background:#dcfce7;color:#166534}

/* Panel ic baslik (tutarli tipografi) */
.panel-baslik{font-size:15px;font-weight:700;margin:2px 0 14px;color:var(--txt)}

/* --- Dashboard: bar grafik (aylik trend) --- */
.bar-grafik{display:flex;align-items:flex-end;gap:8px;height:140px;padding-top:8px}
.bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;height:100%;justify-content:flex-end;min-width:0}
.bar-deger{font-size:10px;color:var(--mut);font-family:var(--mono);white-space:nowrap}
.bar{width:100%;max-width:44px;background:#dbe7fb;border-radius:7px 7px 0 0;min-height:4px;transition:.2s}
.bar.vurgu{background:var(--mavi)}
.bar-etiket{font-size:10.5px;color:var(--mut2);white-space:nowrap}
/* Dashboard: yatay cubuklu liste (cari ozet) */
.yatay-liste{display:flex;flex-direction:column;gap:11px}
.yatay-satir{display:flex;flex-direction:column;gap:4px}
.yatay-ust{display:flex;justify-content:space-between;gap:10px;font-size:12.5px}
.yatay-ad{color:var(--txt);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.yatay-tutar{font-family:var(--mono);font-weight:600;flex-shrink:0}
.yatay-cubuk{height:8px;border-radius:5px;background:var(--zemin,#f1f5f9);overflow:hidden}
.yatay-dolu{height:100%;border-radius:5px}
/* Dashboard: aktivite akisi (son islemler) */
.akis{display:flex;flex-direction:column}
.akis-satir{display:flex;align-items:center;gap:11px;padding:9px 4px;border-bottom:1px solid #f1f5f9;text-decoration:none;color:var(--txt);cursor:pointer}
.akis-satir:last-child{border-bottom:0}
.akis-satir:hover{background:var(--mavi-bg)}
.akis-ikon{flex:0 0 30px;width:30px;height:30px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:var(--ac-bg,var(--mavi-bg));color:var(--ac,var(--mavi))}
.akis-orta{flex:1;min-width:0}
.akis-ad{font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.akis-alt{font-size:11px;color:var(--mut2);font-family:var(--mono)}
.akis-tutar{font-family:var(--mono);font-weight:600;font-size:13px;flex-shrink:0}
/* Finans karti → link + ay/ay degisim rozeti */
.kpi-link{color:var(--mut2);text-decoration:none;font-weight:700;font-size:15px}
.kpi-link:hover{color:var(--mavi)}
.degisim{font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:7px}
.degisim.poz{background:var(--yesil-bg);color:var(--yesil)}
.degisim.neg{background:var(--kirmizi-bg);color:var(--kirmizi)}

/* Ozet kart deger renkleri (anlam): pozitif yesil, negatif kirmizi, uyari turuncu */
.kart .deger.poz{color:var(--ok)}
.kart .deger.neg{color:var(--err)}
.kart .deger.uyari{color:var(--uyari)}

/* ============================================================
   DASHBOARD BILESENLERI (merkezi/yeniden kullanilabilir)
   Tum modul ana sayfalari ve alt sayfalari bu siniflari kullanir.
   ============================================================ */

/* --- Renk tonu yardimcilari: --ac (vurgu) + --ac-bg (soluk zemin). Ikon kutusu, rozet vb. icin. --- */
.ton-mavi   {--ac:#2563eb;--ac-bg:#e8f0fe}
.ton-indigo {--ac:#4f46e5;--ac-bg:#ebeafd}
.ton-mor    {--ac:#7c3aed;--ac-bg:#f2eafe}
.ton-teal   {--ac:#0d9488;--ac-bg:#e0f4f1}
.ton-yesil  {--ac:#16a34a;--ac-bg:#e7f6ec}
.ton-turuncu{--ac:#ea580c;--ac-bg:#fdeee2}
.ton-amber  {--ac:#d97706;--ac-bg:#fbefd9}
.ton-kirmizi{--ac:#dc2626;--ac-bg:#fce9e9}
.ton-pembe  {--ac:#db2777;--ac-bg:#fce8f1}
.ton-gri    {--ac:#475569;--ac-bg:#eef1f5}

/* --- KPI kart (referans): beyaz varsayilan + sparkline; uyari durumlari renkli zemin --- */
.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:13px;margin-bottom:14px}
/* Modern KPI kart: beyaz + renkli sol vurgu + büyük koyu sayı (+ trend/sparkline desteği) */
.kpi-card{--kpi:var(--mavi);position:relative;border-radius:16px;padding:16px 18px 15px 19px;
  background:#fff;border:1px solid var(--line);box-shadow:0 1px 2px rgba(15,23,42,.04);overflow:hidden}
.kpi-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--kpi);border-radius:16px 0 0 16px}
.kpi-card.mavi{--kpi:var(--mavi)} .kpi-card.gri{--kpi:var(--mut)} .kpi-card.yesil{--kpi:var(--yesil)}
.kpi-card.kirmizi{--kpi:var(--kirmizi)} .kpi-card.turuncu{--kpi:var(--turuncu)} .kpi-card.mor{--kpi:var(--mor)} .kpi-card.teal{--kpi:var(--teal)}
.kpi-ust{display:flex;justify-content:space-between;align-items:center;gap:8px}
.kpi-etiket{font-size:11.5px;font-weight:600;letter-spacing:.01em;color:var(--mut)}
.kpi-mark{color:var(--kpi);font-size:14px;line-height:1}
.kpi-deger{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:27px;font-weight:800;
  line-height:1.15;margin:7px 0 3px;color:var(--kpi);overflow-wrap:anywhere;letter-spacing:-.5px}
.kpi-deger .pb{font-family:system-ui;font-size:12px;font-weight:600;opacity:.55;margin-left:4px}
.kpi-not{font-size:11px;color:var(--mut2,#94a3b8)}
/* Trend rozeti (artış/azalış) */
.kpi-trend{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-weight:700;font-family:var(--mono);padding:2px 7px;border-radius:7px}
.kpi-trend.arti{color:var(--yesil);background:var(--yesil-bg)} .kpi-trend.eksi{color:var(--kirmizi);background:var(--kirmizi-bg)} .kpi-trend.notr{color:var(--mut);background:var(--zemin)}
/* Sparkline + alt satır */
.kpi-alt{display:flex;justify-content:space-between;align-items:flex-end;gap:8px;margin-top:2px}
.kpi-spark{flex:0 0 auto;height:30px;width:96px;opacity:.9}
.kpi-spark svg{display:block;width:100%;height:100%;overflow:visible}
.kpi-spark{display:block;width:100%;height:22px}
/* eski kpi-ikon (kose ikon) — referansta yok; gizle */
.kpi-ikon{display:none}

/* --- Nav kart (YATAY/DAR): solda kucuk renkli ikon kutusu + ad; sagda opsiyonel rozet --- */
.nav-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}
.nav-card{--ac:#1F4E79;--ac-bg:#eef3f8;display:flex;align-items:center;gap:11px;
  padding:11px 13px;border:1px solid var(--line);border-radius:11px;background:#fff;
  color:var(--txt);text-decoration:none;transition:.14s ease}
.nav-card:hover{border-color:var(--ac);box-shadow:0 4px 12px rgba(15,23,42,.09);transform:translateY(-1px)}
.nav-card .nc-ikon{flex:0 0 30px;display:inline-flex;align-items:center;justify-content:center;
  width:30px;height:30px;border-radius:8px;background:var(--ac-bg);color:var(--ac)}
.nav-card .nc-ikon svg{width:18px;height:18px}
.nav-card .nc-ad{font-weight:600;font-size:13.5px;line-height:1.25;flex:1;min-width:0}
.nc-rozet{flex:0 0 auto;min-width:22px;height:22px;padding:0 6px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:999px;font-size:12px;font-weight:700;color:#fff;line-height:1}
.nc-rozet.err{background:var(--err);box-shadow:0 0 0 3px rgba(226,75,74,.18)}
.nc-rozet.ok{background:var(--ok)}

/* --- Sistem sagligi: yesil tik / sari uyari satirlari --- */
.saglik-liste{display:flex;flex-direction:column}
.saglik-satir{display:flex;align-items:center;gap:11px;padding:10px 4px;
  border-bottom:1px solid #f1f5f9;color:var(--txt);text-decoration:none}
.saglik-satir:last-child{border-bottom:0}
a.saglik-satir:hover{background:#f8fafc}
.saglik-ikon{flex:0 0 24px;width:24px;height:24px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:800}
.saglik-ikon.ok{background:#dcfce7;color:#166534}
.saglik-ikon.uyari{background:#fef3c7;color:#92400e}
.saglik-ikon.hata{background:#fee2e2;color:#991b1b}
.saglik-ad{flex:1;font-size:13px;font-weight:500;min-width:0}
.saglik-not{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:11.5px;color:var(--mut);white-space:nowrap}

/* --- Panel basligi + sag eylem linki --- */
.panel-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.panel-bar .panel-baslik{margin:0}
.panel-eylem{font-size:13px;color:var(--lacivert);text-decoration:none;font-weight:600;white-space:nowrap}
.panel-eylem:hover{text-decoration:underline}
/* Notr sayac rozeti ("12 kayit") + panel ici alt baslik */
.sayac-rozet{display:inline-flex;align-items:center;font-size:12px;font-weight:700;color:var(--mut);
  background:#f1f5f9;border:1px solid var(--line);padding:3px 10px;border-radius:999px}
.alt-baslik{font-size:12px;font-weight:700;color:#334155;margin:18px 0 8px;text-transform:uppercase;letter-spacing:.3px}
.alt-baslik:first-child{margin-top:0}

/* --- MERKEZI alt-sayfa ust serit: geri + ikon + baslik + alt baslik + sag durum --- */
.sayfa-ust{display:flex;align-items:center;gap:13px;margin:0 0 18px;flex-wrap:wrap}
.sayfa-geri{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;
  border-radius:9px;border:1px solid var(--line);background:#fff;color:var(--lacivert);text-decoration:none;transition:.12s}
.sayfa-geri:hover{background:#eef3f8;border-color:var(--lacivert);transform:translateX(-1px)}
.sayfa-ust-ikon{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;
  border-radius:11px;background:var(--ac-bg,#eef3f8);color:var(--ac,var(--lacivert))}
.sayfa-ust-orta{flex:1 1 200px;min-width:160px}
.sayfa-ust-baslik{font-size:19px;font-weight:700;line-height:1.2;color:var(--txt);overflow-wrap:anywhere}
.sayfa-ust-alt{font-size:12.5px;color:var(--mut);margin-top:2px}
.sayfa-ust-sag{flex:0 1 auto;display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}

/* Buton ici ikon (Getir/Excel/PDF/Ara) */
button svg,a.btn svg{vertical-align:-3px;margin-right:6px}

/* Negatif tutarlar kirmizi (tablolarda) */
td.neg,.neg{color:var(--err)}

/* --- Denge seridi: rapor altinda yesil "Dengeli · Aktif=Pasif" / kirmizi serit --- */
.denge-serit{display:flex;align-items:center;gap:9px;margin-top:14px;padding:11px 16px;border-radius:10px;
  font-weight:600;font-size:13.5px;border:1px solid}
.denge-serit .ds-ikon{font-weight:800}
.denge-serit.ok{background:#ecf8f1;border-color:#cdeadd;color:#166534}
.denge-serit.hata{background:#fdf3f2;border-color:#f6d6d4;color:#991b1b}

/* --- Fis Listesi: genisleyen detay satiri --- */
tr.detay-satir>td{padding:0;background:#f8fafc;border-bottom:1px solid var(--line)}
.fis-detay{padding:14px 16px}
.fis-detay table{background:#fff;border:1px solid var(--line);border-radius:9px;overflow:hidden}
.fis-detay-alt{display:flex;align-items:center;gap:12px;margin-top:12px;flex-wrap:wrap}
.acilir-satir{cursor:pointer}
.acilir-satir:hover{background:var(--mavi-bg)}
.acilir-satir.acik{background:var(--mavi-bg)}
.acilir-satir .ac-ok{color:var(--mut2);display:inline-block;transition:.15s}
.acilir-satir.acik .ac-ok{color:var(--mavi);transform:rotate(90deg)}
.ac-ok-cell{width:34px;text-align:center}
.detay-baslik{font-size:10.5px;color:var(--mut);font-weight:700;letter-spacing:.03em;margin-bottom:9px;text-transform:uppercase}

/* --- Kokpit ust serit (modul ana sayfasi: ikon + baslik + alt + aksiyon) --- */
.ust{display:flex;align-items:center;gap:11px;margin-bottom:16px;flex-wrap:wrap}
/* Modül başlığı (içerik içi .ust) global üst bar .ust kurallarından (height:52px, sticky) muaf —
   çok aksiyonlu başlıkta buton satırları taşıp alttaki içeriğe binmesin. */
main .ust{height:auto;min-height:0;position:static;align-items:center;background:transparent;border-bottom:none;padding:0;box-shadow:none}
main .ust .ust-aksiyon{flex:1 1 auto}
.ikon-kutu{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;
  flex-shrink:0;background:var(--ac-bg,var(--mavi-bg));color:var(--ac,var(--mavi))}
.h-ad{font-size:18px;font-weight:700;line-height:1.2}
.h-alt{font-size:12px;color:var(--mut)}

/* --- Ust serit aksiyon butonlari (Yeni / Disa aktar) --- */
.ust-aksiyon{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
/* Mobil aksiyon taşma menüsü (⋯) — birincil buton kalır, gerisi menüye iner */
.ust-tasma{position:relative;display:inline-flex}
.ust-tasma-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:38px;border:1px solid var(--line);background:#fff;border-radius:10px;cursor:pointer;color:#0f172a;font-size:22px;line-height:1;padding:0}
.ust-tasma-btn:hover{border-color:var(--mavi)}
.ust-tasma-menu{position:absolute;top:calc(100% + 6px);right:0;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px rgba(15,23,42,.16);padding:7px;min-width:210px;max-width:80vw;z-index:300;display:none;flex-direction:column;gap:5px}
.ust-tasma.acik .ust-tasma-menu{display:flex}
.ust-tasma-menu > *{width:100%;justify-content:flex-start!important;margin:0!important}
.ust-tasma-menu > .ayrac{display:none}
.btn-ana{display:inline-flex;align-items:center;gap:6px;padding:9px 15px;border-radius:10px;border:none;
  background:var(--mavi);color:#fff;font-size:13px;font-weight:600;cursor:pointer;text-decoration:none}
.btn-ana:hover{background:var(--lacivert-koyu)}
.btn-cizgi{display:inline-flex;align-items:center;gap:6px;padding:9px 15px;border-radius:10px;
  border:1px solid var(--line);background:#fff;color:var(--txt);font-size:13px;font-weight:500;cursor:pointer;text-decoration:none}
.btn-cizgi:hover{border-color:var(--mavi);color:var(--mavi)}
.btn-yesil{display:inline-flex;align-items:center;gap:6px;padding:9px 15px;border-radius:10px;border:none;
  background:var(--yesil);color:#fff;font-size:13px;font-weight:600;cursor:pointer;text-decoration:none}
.btn-yesil:hover{background:#15803d}
.btn-turuncu{display:inline-flex;align-items:center;gap:6px;padding:9px 15px;border-radius:10px;border:none;
  background:var(--turuncu);color:#fff;font-size:13px;font-weight:600;cursor:pointer;text-decoration:none}
.btn-turuncu:hover{background:#b45309}

/* --- BILANCO iki sutun (Aktif mavi / Pasif yesil) --- */
.bilanco-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.bilanco-kol{background:#fff;border:1px solid var(--line);border-radius:13px;overflow:hidden}
.bk-baslik{padding:11px 14px;display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:700}
.bk-baslik.aktif{background:var(--mavi-bg);color:var(--mavi)}
.bk-baslik.pasif{background:var(--yesil-bg);color:var(--yesil)}
.bk-grup{padding:8px 14px;display:flex;justify-content:space-between;gap:10px;background:var(--zemin,#f1f5f9);font-size:12px;font-weight:600}
.bk-satir{padding:6px 14px 6px 26px;display:flex;justify-content:space-between;gap:10px;font-size:12.5px}
.bk-satir>span:first-child{color:var(--mut)}
.bk-satir .mono,.bk-grup .mono,.bk-baslik .mono,.bk-toplam .mono{font-family:var(--mono);font-variant-numeric:tabular-nums}
.bk-satir .neg{color:var(--err)}
.bk-toplam{padding:10px 14px;display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--line);font-size:13px;font-weight:700}
.bk-toplam.aktif{background:var(--mavi-bg);color:var(--mavi)}
.bk-toplam.pasif{background:var(--yesil-bg);color:var(--yesil)}
.bk-git{cursor:pointer}
.bk-git:hover{background:var(--mavi-bg)}
.bk-ok{color:var(--mut2);font-weight:700}
.bk-git:hover .bk-ok{color:var(--mavi)}

/* --- Bottom-sheet (mobil detay paneli) --- */
.sheet-bg{position:fixed;inset:0;background:rgba(15,23,42,.4);z-index:60;opacity:0;transition:.2s;backdrop-filter:blur(1px)}
.sheet-bg.acik{opacity:1}
.sheet{position:fixed;left:0;right:0;bottom:0;z-index:61;background:#fff;border-radius:20px 20px 0 0;
  padding:9px 18px calc(20px + env(safe-area-inset-bottom));box-shadow:0 -6px 24px rgba(0,0,0,.18);
  transform:translateY(100%);transition:transform .25s ease;max-height:85vh;overflow-y:auto}
.sheet.acik{transform:translateY(0)}
.sheet-tut{width:38px;height:4px;background:var(--line);border-radius:2px;margin:3px auto 14px}
.sheet-baslik{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:3px}
.sheet-ad{font-size:17px;font-weight:700;font-family:var(--mono)}
.sheet-alt{font-size:12px;color:var(--mut);margin-bottom:14px}
.sheet-satir{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--line)}
.sheet-satir:last-of-type{border-bottom:none}
.sheet-ad2{font-size:13px;font-weight:500}
.sheet-kod{font-size:10px;color:var(--mut2);font-family:var(--mono)}
.sheet-tutar{font-size:13px;font-family:var(--mono)}
.sheet-denge{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:11px;
  padding:10px 14px;border-radius:11px;font-size:12px;font-weight:600}
.sheet-denge.ok{background:var(--yesil-bg);color:var(--yesil)}
.sheet-denge.hata{background:var(--kirmizi-bg);color:var(--kirmizi)}
.sheet-denge .mono{font-family:var(--mono)}
.sheet-buton{width:100%;margin-top:13px;padding:13px;border-radius:12px;border:none;background:var(--mavi);color:#fff;font-size:14px;font-weight:600;cursor:pointer}

/* ============================================================
   GIRIS FORMU + ARANABILIR SECIM MODALI (merkezi/yeniden kullanilabilir)
   ============================================================ */
/* Ust bilgi seridi (tarih/tip/aciklama) */
.ust-form{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end;padding-bottom:16px;border-bottom:1px solid var(--line);margin-bottom:16px}
.ust-form .alan label{font-size:11px;color:var(--mut);font-weight:600;letter-spacing:.02em;display:block;margin-bottom:5px}
.ust-form .alan input,.ust-form .alan select{padding:9px 11px;border:1px solid var(--line);border-radius:9px;font-size:13px;width:100%;background:#fff}

/* Satir grid (basliklar + satirlar) */
.satir-baslik{display:grid;gap:10px;font-size:10.5px;color:var(--mut);font-weight:600;letter-spacing:.03em;padding:0 4px 7px;text-transform:uppercase}
.satir-grid{display:grid;gap:10px;align-items:center;padding:7px 4px;border-radius:10px}
.satir-grid:hover{background:var(--zemin,#f1f5f9)}
.satir-grid input,.satir-grid select{padding:8px 10px;border:1px solid var(--line);border-radius:8px;font-size:13px;width:100%;background:#fff}
.satir-grid .num,.satir-baslik .num{text-align:right;font-family:var(--mono);font-variant-numeric:tabular-nums}
.satir-grid .cfa{color:var(--mut);font-size:13px}
.gd-yevmiye{grid-template-columns:2.2fr 2fr 70px 1fr 1fr 1.1fr 30px}
.gd-hesap{grid-template-columns:2.4fr 1fr 1fr 30px}
.gd-stok{grid-template-columns:2.2fr 1.3fr 1fr 1fr 1fr 30px}
.satir-sil{width:28px;height:28px;border-radius:7px;border:none;background:var(--kirmizi-bg);color:var(--kirmizi);cursor:pointer;font-size:14px;line-height:1}
.satir-ekle{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border-radius:9px;border:1px dashed var(--mavi);
  background:var(--mavi-bg);color:var(--mavi);font-size:13px;font-weight:600;cursor:pointer;margin-top:8px}
.satir-ekle:hover{background:#e0ecfd}

/* Toplam/denge seridi */
.toplam-serit{display:flex;align-items:center;gap:14px;margin-top:16px;padding-top:16px;border-top:2px solid var(--line);flex-wrap:wrap}
.toplam-serit .tlabel{font-size:13px;font-weight:600}
.toplam-serit .tnum{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:14px;font-weight:700}
.denge-rozet{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;padding:6px 13px;border-radius:9px;background:var(--yesil-bg);color:var(--yesil)}
.denge-rozet.hata{background:var(--kirmizi-bg);color:var(--kirmizi)}

/* Grup basligi (acilis bolumleri) */
.grup-baslik{font-size:12.5px;font-weight:700;color:var(--txt);margin:20px 0 9px;display:flex;align-items:center;gap:8px}
.grup-baslik:first-of-type{margin-top:4px}
.grup-baslik .gic{width:24px;height:24px;border-radius:7px;background:var(--ac-bg,var(--mavi-bg));color:var(--ac,var(--mavi));display:inline-flex;align-items:center;justify-content:center}

/* Secim butonu (dropdown yerine modal acan input-gorunumlu buton) */
.secim-btn{width:100%;text-align:left;padding:8px 11px;border:1px solid var(--line);border-radius:8px;background:#fff;
  font-size:13px;cursor:pointer;color:var(--txt);display:flex;align-items:center;gap:7px;min-height:36px}
.secim-btn:hover{border-color:var(--mavi)}
.secim-btn.bos{color:var(--mut2)}
.secim-btn .kod{font-family:var(--mono);color:var(--mavi);font-size:12px;flex-shrink:0}
.secim-deger{display:inline-flex;align-items:center;gap:7px}
.secim-deger .kod{font-family:var(--mono);color:var(--mavi);font-size:12px}

/* Aranabilir secim modali */
.modal-bg{position:fixed;inset:0;background:rgba(15,23,42,.45);z-index:80;display:flex;align-items:flex-start;
  justify-content:center;padding:56px 16px;opacity:0;transition:.15s;backdrop-filter:blur(1px)}
.modal-bg.acik{opacity:1}
.modal{background:#fff;border-radius:16px;width:100%;max-width:540px;max-height:82vh;display:flex;flex-direction:column;
  box-shadow:0 20px 50px rgba(0,0,0,.25);transform:translateY(-10px);transition:.18s ease}
.modal-bg.acik .modal{transform:none}
.modal-ust{display:flex;align-items:center;gap:10px;padding:16px 22px;border-bottom:1px solid var(--line)}
/* Modal içerik alanı için genel nefes payı (ad-hoc içerik div'leri .modal-icerik kullansın). */
.modal-icerik{padding:18px 22px;overflow-y:auto}
.modal-baslik{font-size:15px;font-weight:700;flex:1}
.modal-kapat{width:30px;height:30px;border-radius:8px;border:1px solid var(--line);background:#fff;color:var(--mut);cursor:pointer;font-size:16px;line-height:1}
.modal-kapat:hover{border-color:var(--kirmizi);color:var(--kirmizi)}
.modal-ara{position:relative;padding:13px 18px 9px}
.modal-ara input{width:100%;padding:9px 11px 9px 34px;border:1px solid var(--line);border-radius:9px;font-size:14px}
.modal-ara input:focus{outline:none;border-color:var(--mavi);box-shadow:0 0 0 3px var(--mavi-bg)}
.modal-ara .ara-ikon{position:absolute;left:30px;top:50%;transform:translateY(-50%);color:var(--mut2);pointer-events:none}
.modal-liste{overflow-y:auto;padding:4px 10px 8px}
.modal-oge{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:9px;cursor:pointer}
.modal-oge:hover,.modal-oge.vurgu{background:var(--mavi-bg)}
.modal-oge .kod{font-family:var(--mono);font-size:12px;color:var(--mavi);flex-shrink:0;min-width:54px}
.modal-oge .ad{flex:1;font-size:13.5px;min-width:0;overflow-wrap:anywhere}
.modal-oge .ono{width:19px;height:19px;border:2px solid var(--line);border-radius:5px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:12px}
.modal-oge.secili .ono{background:var(--mavi);border-color:var(--mavi)}
.modal-bos{padding:26px;text-align:center;color:var(--mut);font-size:13px}
.modal-alt{padding:14px 22px;border-top:1px solid var(--line);display:flex;align-items:center;gap:10px}
.modal-alt .secsay{font-size:12px;color:var(--mut);flex:1}

/* ============ CARI MODULU ============ */
/* Tur kartlari (musteri/tedarikci/ortak/personel) */
.tur-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:13px;margin-bottom:18px}
.tur-kart{display:flex;align-items:center;gap:13px;padding:16px;border:1px solid var(--line);border-radius:14px;background:#fff;
  text-decoration:none;color:var(--txt);transition:.15s ease;box-shadow:0 1px 2px rgba(15,23,42,.04)}
.tur-kart:hover{border-color:var(--ac,var(--mavi));box-shadow:0 8px 22px rgba(15,23,42,.12);transform:translateY(-2px)}
.tur-ikon{width:46px;height:46px;border-radius:13px;display:inline-flex;align-items:center;justify-content:center;background:var(--ac-bg,var(--mavi-bg));color:var(--ac,var(--mavi));flex-shrink:0}
.tur-orta{flex:1;min-width:0}
.tur-ad{font-weight:700;font-size:14.5px}
.tur-alt{font-size:12px;color:var(--mut);font-family:var(--mono);margin-top:3px}
.tur-adet{font-size:24px;font-weight:800;font-family:var(--mono);line-height:1;color:var(--ac,var(--txt))}
.tur-ok{flex-shrink:0;color:var(--mut2);font-size:18px;font-weight:700;transition:.15s}
.tur-kart:hover .tur-ok{color:var(--ac,var(--mavi));transform:translateX(2px)}
/* Tur rozeti (liste/tablo) */
.tur-rozet{font-size:10px;padding:2px 8px;border-radius:5px;font-weight:600;white-space:nowrap}
.t-mus{background:var(--mavi-bg);color:var(--mavi)}
.t-ted{background:var(--turuncu-bg);color:var(--turuncu)}
.t-ort{background:var(--mor-bg);color:var(--mor)}
.t-per{background:var(--teal-bg);color:var(--teal)}

/* Cari ana sayfa: turlere gore acilir/kapanir gruplar */
.cari-grup{margin-bottom:10px}
.grup-bas{display:flex;align-items:center;gap:10px;padding:12px 15px;background:#fff;border:1px solid var(--line);border-radius:12px;cursor:pointer}
.grup-bas:hover{background:var(--zemin)}
.grup-bas .gnokta{width:9px;height:9px;border-radius:3px;flex-shrink:0}
.grup-bas .gad{font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.03em}
.grup-bas .gsay{font-size:11px;color:var(--mut);font-family:var(--mono)}
.grup-bas .gbakiye{margin-left:auto;font-family:var(--mono);font-weight:700;font-size:13px}
.grup-bas .gok{color:var(--mut2);transition:.15s;font-size:13px}
.cari-grup.acik .grup-bas{border-radius:12px 12px 0 0}
.cari-grup.acik .gok{transform:rotate(90deg)}
.grup-govde{display:none;border:1px solid var(--line);border-top:0;border-radius:0 0 12px 12px;overflow:hidden}
.cari-grup.acik .grup-govde{display:block}

/* === mv_erp_cari_modul.html BIREBIR === */
/* Finans/ozet kart (.fk) — renkli zemin + kose soluk ikon */
.fk-grid{display:grid;gap:11px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin-bottom:4px}
.fk{border-radius:13px;padding:13px 15px;position:relative;overflow:hidden;border:1px solid transparent}
.fk .ic{position:absolute;right:11px;top:11px;font-size:24px;opacity:.16;line-height:1}
.fk-lbl{font-size:11px;font-weight:500;opacity:.9}
.fk-val{font-size:20px;font-weight:600;font-family:var(--mono);margin:4px 0 2px;font-variant-numeric:tabular-nums}
.fk-alt{font-size:11px;opacity:.8}
.fk.mavi{background:var(--mavi-bg)} .fk.mavi .ic,.fk.mavi .fk-lbl,.fk.mavi .fk-val,.fk.mavi .fk-alt{color:var(--mavi)}
.fk.turuncu{background:var(--turuncu-bg)} .fk.turuncu .ic,.fk.turuncu .fk-lbl,.fk.turuncu .fk-val,.fk.turuncu .fk-alt{color:var(--turuncu)}
.fk.kirmizi{background:var(--kirmizi-bg)} .fk.kirmizi .ic,.fk.kirmizi .fk-lbl,.fk.kirmizi .fk-val,.fk.kirmizi .fk-alt{color:var(--kirmizi)}
.fk.gri{background:var(--zemin)} .fk.gri .ic{color:var(--mut2)} .fk.gri .fk-lbl,.fk.gri .fk-alt{color:var(--mut)}

/* Tur sekmeleri (tabs) */
.sekmeler{display:flex;gap:7px;flex-wrap:wrap;margin:14px 0}
.sekme{padding:7px 15px;border-radius:9px;border:1px solid var(--line);background:#fff;font-size:13px;cursor:pointer;display:flex;align-items:center;gap:6px;color:var(--txt)}
.sekme:hover{border-color:var(--mor)}
.sekme.aktif{background:var(--mor);color:#fff;border-color:var(--mor)}
.sekme .say{font-size:11px;font-weight:700;font-family:var(--mono);background:var(--zemin);color:var(--mut);padding:1px 8px;border-radius:20px;line-height:1.5}
.sekme.aktif .say{background:rgba(255,255,255,.25);color:#fff}

/* Arama kutusu (ikonlu) */
.ara-kutu{position:relative;flex:1;min-width:200px}
.ara-kutu input{padding:9px 11px 9px 32px;border:1px solid var(--line);border-radius:9px;font-size:13px;width:100%}
.ara-kutu input:focus{outline:none;border-color:var(--mavi);box-shadow:0 0 0 3px var(--mavi-bg)}
.ara-kutu .ico{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--mut2);pointer-events:none}

/* === Stok modulu (mv_erp_stok_modul.html birebir) === */
.fk.teal{background:var(--teal-bg)} .fk.teal .ic,.fk.teal .fk-lbl,.fk.teal .fk-val,.fk.teal .fk-alt{color:var(--teal)}
.urun-ad{font-weight:500;color:var(--mavi);cursor:pointer;text-decoration:none}
.urun-ad:hover{text-decoration:underline}
.urun-alt{font-size:10px;color:var(--mut2)}
.deger-bar{height:7px;border-radius:4px;background:var(--zemin,#f1f5f9);overflow:hidden}
.deger-bar>span{display:block;height:100%}
.kritik-kart{border-color:var(--kirmizi)}
.kritik-satir{display:flex;justify-content:space-between;align-items:center;padding:7px 0;border-bottom:1px solid var(--line)}
.kritik-satir:last-child{border-bottom:none}
.detay-ust{display:flex;gap:18px;flex-wrap:wrap;align-items:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;margin-bottom:14px}
.urun-avatar{width:60px;height:60px;border-radius:14px;background:var(--teal-bg);color:var(--teal);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.du-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:14px;flex:1;min-width:200px}
.du-lbl{font-size:10px;color:var(--mut);font-weight:600;text-transform:uppercase}
.du-val{font-size:14px;margin-top:3px;font-weight:600;font-family:var(--mono)}
.belge.b-giris{background:var(--yesil-bg);color:var(--yesil)}
.belge.b-cikis{background:var(--kirmizi-bg);color:var(--kirmizi)}
.stok-orta{display:grid;grid-template-columns:1.4fr 1fr;gap:12px;margin:12px 0}
@media(max-width:900px){.stok-orta{grid-template-columns:1fr}}
/* gruplu + KOMPAKT tablo */
.kompakt thead td{padding:8px 12px}
.kompakt tbody td{padding:7px 12px}
.grup-satir td{padding:9px 14px;font-weight:700;font-size:11px;letter-spacing:.06em;text-transform:uppercase;position:relative;background:#f8fafc;color:var(--mut2);border-top:1px solid #f1f5f9;border-bottom:1px solid #f1f5f9}
.grup-satir td::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--mut2)}
.grup-satir .gs-sayi{display:inline-block;font-family:var(--mono);font-size:10px;font-weight:700;padding:2px 8px;border-radius:5px;background:#fff;margin-left:8px;letter-spacing:.02em}
.grup-satir .gs-deger{float:right;font-family:var(--mono);font-size:12px;font-weight:800;text-transform:none;letter-spacing:0}
.grup-satir .tasi{opacity:.55;margin-left:6px;cursor:pointer}
/* Tipe göre tema renkli */
.grup-satir[data-tip="hammadde"]  td{background:var(--teal-bg);   color:var(--teal)}
.grup-satir[data-tip="hammadde"]  td::before{background:var(--teal)}
.grup-satir[data-tip="hammadde"]  .gs-sayi{color:var(--teal)}
.grup-satir[data-tip="hammadde"]  .gs-deger{color:var(--teal)}
.grup-satir[data-tip="mamul"]     td{background:var(--mavi-bg);   color:var(--mavi)}
.grup-satir[data-tip="mamul"]     td::before{background:var(--mavi)}
.grup-satir[data-tip="mamul"]     .gs-sayi{color:var(--mavi)}
.grup-satir[data-tip="mamul"]     .gs-deger{color:var(--mavi)}
.grup-satir[data-tip="yarimamul"] td{background:var(--mor-bg);    color:var(--mor)}
.grup-satir[data-tip="yarimamul"] td::before{background:var(--mor)}
.grup-satir[data-tip="yarimamul"] .gs-sayi{color:var(--mor)}
.grup-satir[data-tip="yarimamul"] .gs-deger{color:var(--mor)}
.grup-satir[data-tip="ticari"]    td{background:var(--turuncu-bg);color:var(--turuncu)}
.grup-satir[data-tip="ticari"]    td::before{background:var(--turuncu)}
.grup-satir[data-tip="ticari"]    .gs-sayi{color:var(--turuncu)}
.grup-satir[data-tip="ticari"]    .gs-deger{color:var(--turuncu)}
.mi.iptal{color:var(--kirmizi)}
.menu-ayrac{height:1px;background:var(--line);margin:4px 0}
/* grup sirasi modal */
.siralanabilir{display:flex;align-items:center;gap:10px;padding:9px 12px;border:1px solid var(--line);border-radius:10px;margin-bottom:7px;background:var(--zemin,#f1f5f9)}
.siralanabilir.surukleniyor{opacity:.45}
.siralanabilir .tut{cursor:grab;color:var(--mut2);font-size:16px;user-select:none}
.siralanabilir .kol{display:flex;flex-direction:column;gap:2px}
.siralanabilir .ok{width:24px;height:18px;border-radius:5px;border:1px solid var(--line);background:#fff;cursor:pointer;font-size:10px;display:flex;align-items:center;justify-content:center;padding:0;color:var(--mut)}
.siralanabilir .ok:disabled{opacity:.35;cursor:default}
/* mobil gruplu kompakt kartlar (dort sutun) */
.stok-mobil{display:none}
.m-grup{font-size:11px;font-weight:700;color:var(--teal);background:var(--teal-bg);padding:7px 11px;border-radius:8px;margin:10px 0 8px}
.m-urun{background:#fff;border:1px solid var(--line);border-radius:11px;padding:11px;margin-bottom:7px}
.m-urun-ust{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:7px;gap:8px}
.m-dort{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:5px;text-align:center}
.m-dort>div{background:var(--zemin,#f1f5f9);border-radius:7px;padding:5px 3px}
.m-dort .l{font-size:8px;color:var(--mut)}
.m-dort .v{font-size:12px;font-weight:600;font-family:var(--mono)}
@media(max-width:760px){.stok-masaustu{display:none}.stok-mobil{display:block}}

/* === Fatura liste + kokpit (mv_erp_fatura_liste.html birebir) === */
.sekme.aktif-satis{background:var(--yesil);color:#fff;border-color:var(--yesil)}
.sekme.aktif-alis{background:var(--turuncu);color:#fff;border-color:var(--turuncu)}
.sekme:hover.tema-satis{border-color:var(--yesil)} .sekme:hover.tema-alis{border-color:var(--turuncu)}
/* Hub sekmelerinde "yakinda" placeholder kart */
.bos-sekme{background:#fff;border:1px dashed var(--line);border-radius:12px;padding:36px 22px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--mut);margin-top:14px}
.bos-sekme .b-ikon{width:54px;height:54px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--zemin);color:var(--mut2)}
.bos-sekme.t-yesil .b-ikon{background:var(--yesil-bg);color:var(--yesil)} .bos-sekme.t-yesil{border-color:rgba(22,163,74,.25)}
.bos-sekme.t-turuncu .b-ikon{background:var(--turuncu-bg);color:var(--turuncu)} .bos-sekme.t-turuncu{border-color:rgba(217,119,6,.25)}
.bos-sekme h3{margin:2px 0 0;font-size:15px;color:var(--txt);font-weight:600}
.bos-sekme p{margin:0;font-size:12px;max-width:380px;line-height:1.55}
.bos-sekme .b-rozet{margin-top:4px;font-size:10px;padding:3px 9px;border-radius:5px;background:var(--zemin);color:var(--mut2);font-weight:600;letter-spacing:.4px;text-transform:uppercase}
.fk.yesil{background:var(--yesil-bg)} .fk.yesil .ic,.fk.yesil .fk-lbl,.fk.yesil .fk-val,.fk.yesil .fk-alt{color:var(--yesil)}
.r-odendi{background:var(--yesil-bg);color:var(--yesil)}
.r-bekliyor{background:var(--turuncu-bg);color:var(--turuncu)}
.r-kismi{background:#fef3c7;color:#854f0b}
.r-iptal{background:var(--kirmizi-bg);color:var(--kirmizi)}
.fat-rozet{font-size:10px;padding:2px 8px;border-radius:5px;font-weight:600;white-space:nowrap}
.no-link{font-weight:600;color:var(--mavi);cursor:pointer;font-family:var(--mono);text-decoration:none}
.no-link:hover{text-decoration:underline}
tr.fatura-iptal>td{opacity:.55}
/* mobil fatura kartlari */
.fat-mobil{display:none}
.m-fatura{background:#fff;border:1px solid var(--line);border-left:3px solid var(--line);border-radius:11px;padding:11px;margin-bottom:8px;display:block;text-decoration:none;color:inherit}
.m-fatura.dt-odendi{border-left-color:var(--yesil)}      /* tahsil/ödendi → yeşil */
.m-fatura.dt-bekliyor{border-left-color:var(--turuncu)}  /* bekliyor/kısmi → turuncu */
.m-fatura.dt-iptal{border-left-color:var(--kirmizi)}     /* iptal → kırmızı */
.m-fatura.iptal{opacity:.55}
.m-fatura-ust{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:7px;gap:8px}
@media(max-width:760px){.fat-masaustu{display:none}.fat-mobil{display:block}}

/* === Fatura KESME ekrani (mv_erp_fatura_kesme.html birebir) === */
.fk-ust-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:13px;padding-bottom:16px;border-bottom:1px solid var(--line);margin-bottom:14px}
.fk-ust-form .fk-cari-cell{grid-column:span 2;min-width:0}
@media(max-width:640px){.fk-ust-form .fk-cari-cell{grid-column:span 1}}
.fk-ust-form label{font-size:11px;color:var(--mut);font-weight:600;display:block;margin-bottom:5px}
.fk-ust-form input,.fk-ust-form select{padding:8px 10px;border:1px solid var(--line);border-radius:8px;font-size:13px;width:100%;background:#fff;font-family:inherit}
.fk-secici{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;cursor:pointer;background:#fff;font-size:13px;width:100%;text-align:left;color:#0f172a}
.fk-secici:hover{border-color:var(--mavi)}
.fk-secici>span:first-child{color:#0f172a;font-weight:500;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fk-secici .ok{margin-left:auto;color:var(--mut2);flex-shrink:0}
.fk-secici.bos>span:first-child{color:var(--mut2);font-weight:400}
.fk-satir-bas{display:grid;grid-template-columns:2.4fr 72px 96px 60px 84px 96px 28px;gap:8px;font-size:9.5px;color:var(--mut);font-weight:600;padding:0 4px 6px;text-transform:uppercase}
.fk-satir{display:grid;grid-template-columns:2.4fr 72px 96px 60px 84px 96px 28px;gap:8px;align-items:center;padding:4px;border-radius:8px}
.fk-satir:hover{background:var(--zemin,#f1f5f9)}
.fk-satir input,.fk-satir select{padding:6px 8px;font-size:12px;border:1px solid var(--line);border-radius:8px;width:100%;background:#fff;font-family:inherit}
.fk-satir .fk-secici{padding:6px 8px;font-size:12px}
.fk-satir .num{text-align:right;font-variant-numeric:tabular-nums}
.fk-satir .satir-tutar{font-family:var(--mono);font-size:12px;text-align:right;font-weight:600}
.fk-sil{width:26px;height:26px;border-radius:6px;border:none;background:var(--kirmizi-bg);color:var(--kirmizi);cursor:pointer;font-size:13px}
.fk-ekle{display:inline-flex;align-items:center;gap:6px;padding:8px 13px;border-radius:8px;border:1px dashed var(--mavi);background:var(--mavi-bg);color:var(--mavi);font-size:13px;font-weight:500;cursor:pointer;margin-top:8px}
.fk-toplam{display:grid;grid-template-columns:1fr 320px;gap:16px;margin-top:16px;padding-top:16px;border-top:2px solid var(--line)}
.fk-ozet{display:flex;justify-content:space-between;padding:5px 0;font-size:13px}
.fk-ozet.kdv{color:var(--mut);font-size:12px}
.fk-ozet-genel{display:flex;justify-content:space-between;padding:10px 0 0;margin-top:7px;border-top:1px solid var(--line);font-size:17px;font-weight:700}
.fk-mobil-bilgi{display:none}
@media(max-width:820px){
  .fk-satir-bas{display:none}
  .fk-satir{grid-template-columns:1fr;gap:7px;background:var(--zemin,#f1f5f9);padding:11px;margin-bottom:8px}
  .fk-satir .fk-mobil-bilgi{display:block;font-size:10px;color:var(--mut);font-weight:600;margin-bottom:-2px;text-transform:uppercase}
  .fk-satir .satir-tutar{text-align:left;font-size:14px}
  .fk-toplam{grid-template-columns:1fr}
  /* yapiskan kaydet seridi (mobil) */
  .fk-kaydet-serit{position:sticky;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--line);padding:10px 0;margin:0 -2px;display:flex;gap:8px;z-index:20}
}

/* Cari tablo karti + tablo (dosyadaki birebir: radius 14, thead zemin, tbody ust-cizgi) */
.tablo-kart{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:visible}
.cari-tablo{width:100%;border-collapse:collapse;font-size:12.5px;background:#fff}
.cari-tablo thead td{font-size:10px;color:#94a3b8;font-weight:600;letter-spacing:.05em;padding:9px 14px;background:#fafbfc;text-transform:uppercase;border-bottom:1px solid #f1f5f9}
.cari-tablo tbody td{padding:7px 14px;border-top:1px solid #f1f5f9;background:#fff;line-height:1.4}
.cari-tablo tbody tr:first-child td{border-top:0}
.cari-tablo .sag{text-align:right}
.cari-ad{font-weight:500;color:var(--mavi);cursor:pointer;text-decoration:none;font-size:13px}
.cari-ad:hover{text-decoration:underline}
.cari-alt{font-size:10.5px;color:#a1aab9;margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:340px}
.menu-ic{position:absolute;right:0;top:34px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.12);padding:5px;width:170px;z-index:100;display:none}
.menu-ic.acik{display:block}
.menu{position:relative}
.menu:has(.menu-ic.acik){z-index:101}
/* Açılır menü kırpılmasın — bilinen tüm overflow'lu wrapper'ları geçici visible yap */
.tablo-kart:has(.menu-ic.acik),
.grup-govde:has(.menu-ic.acik),
.cari-grup:has(.menu-ic.acik),
.panel:has(.menu-ic.acik),
.cari-grup:has(.menu-ic.acik) .grup-govde,
[style*="overflow-x:auto"]:has(.menu-ic.acik),
[style*="overflow:auto"]:has(.menu-ic.acik),
[style*="overflow:hidden"]:has(.menu-ic.acik){overflow:visible !important}
.menu-ic .mi{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:7px;font-size:13px;cursor:pointer;color:var(--txt);text-decoration:none}
.menu-ic .mi:hover{background:var(--zemin)}
.menu-ic .mi.sil{color:var(--kirmizi)}

/* Ortaklar: pasta legend + sermaye ilerleme (mv_erp_ortak_personel.html) */
.pasta-legend{margin-top:14px;align-self:stretch;display:flex;flex-direction:column;gap:8px}
.pay-satir{display:flex;align-items:center;gap:8px;font-size:12px}
.pay-nokta{width:10px;height:10px;border-radius:3px;flex-shrink:0}
.pay-ad{flex:0 0 auto}
.pay-cubuk{flex:1;height:7px;border-radius:4px;background:var(--zemin);overflow:hidden;margin:0 4px}
.pay-cubuk>span{display:block;height:100%;border-radius:4px}
.pay-yuzde{font-weight:600;flex-shrink:0;font-family:var(--mono)}
.prog{height:7px;border-radius:4px;background:var(--zemin);overflow:hidden;margin-top:5px}
.prog>span{display:block;height:100%}
.pasta-svg{width:180px!important;height:180px!important;max-width:none!important;max-height:none!important;display:block;margin:4px 0}
.ortak-grid{display:grid;grid-template-columns:0.85fr 1.5fr;gap:12px;margin-bottom:12px}

/* Satir islem menusu (⋮) */
.islem-menu{position:relative;display:inline-block}
.islem-btn{width:28px;height:28px;border-radius:7px;border:1px solid var(--line);background:#fff;cursor:pointer;color:var(--mut);font-size:15px;line-height:1}
.islem-btn:hover{border-color:var(--mavi);color:var(--mavi)}
.islem-acilir{position:absolute;right:0;top:32px;z-index:20;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 24px rgba(15,23,42,.16);min-width:170px;padding:5px;display:none}
.islem-acilir.acik{display:block}
.islem-acilir a{display:flex;align-items:center;gap:9px;padding:8px 11px;border-radius:7px;font-size:13px;color:var(--txt);text-decoration:none;cursor:pointer}
.islem-acilir a:hover{background:var(--mavi-bg)}
.islem-acilir a.tehlike{color:var(--kirmizi)}
.islem-acilir a.tehlike:hover{background:var(--kirmizi-bg)}

/* Form modali (genis) + form grid */
.modal.genis{max-width:700px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:18px 22px;overflow-y:auto}
.form-grid .alan{display:flex;flex-direction:column;gap:5px;min-width:0}
.form-grid .alan.tam{grid-column:1/-1}
.form-grid label{font-size:11px;color:var(--mut);font-weight:600}
.form-grid input,.form-grid select,.form-grid textarea{padding:9px 11px;border:1px solid var(--line);border-radius:9px;font-size:13px;width:100%;font-family:inherit;background:#fff}
.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{outline:none;border-color:var(--mavi);box-shadow:0 0 0 3px var(--mavi-bg)}

/* Cari ekstre: bilgi + risk bar */
.cari-bilgi{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}
.bilgi-etiket{font-size:11px;color:var(--mut);text-transform:uppercase;letter-spacing:.3px}
.bilgi-deger{font-size:14px;font-weight:600;margin-top:3px;overflow-wrap:anywhere}
.risk-bar{height:8px;border-radius:5px;background:var(--zemin,#f1f5f9);overflow:hidden;margin-top:6px}
.risk-dolu{height:100%;border-radius:5px;background:var(--mavi)}
.risk-dolu.asti{background:var(--kirmizi)}

/* === Cari ekstre (mv_erp_cari_ekstre.html birebir) === */
.ek-kart{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;margin-bottom:14px;display:flex;gap:20px;flex-wrap:wrap;align-items:center}
.ek-avatar{width:60px;height:60px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;flex-shrink:0}
.ek-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:14px;flex:1;min-width:200px}
.ek-lbl{font-size:10px;color:var(--mut);font-weight:600;text-transform:uppercase;letter-spacing:.03em}
.ek-val{font-size:13px;margin-top:3px;font-weight:500;overflow-wrap:anywhere}
.ek-bakiye{text-align:right;padding-left:20px;border-left:1px solid var(--line);min-width:140px}
.ek-bakiye .ek-buyuk{font-family:var(--mono);font-size:22px;font-weight:700;margin:2px 0 1px}
.mini-kpi{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:14px}
.mk{border-radius:12px;padding:12px 14px}
.mk-lbl{font-size:10px;font-weight:600;opacity:.9;text-transform:uppercase;letter-spacing:.02em}
.mk-val{font-size:17px;font-weight:700;font-family:var(--mono);margin-top:3px}
.belge{display:inline-block;font-size:11px;padding:2px 8px;border-radius:5px;font-weight:600;background:var(--mavi-bg);color:var(--mavi);white-space:nowrap}
.belge.b-tah{background:var(--yesil-bg);color:var(--yesil)}
.belge.b-acl{background:var(--zemin,#f1f5f9);color:var(--mut)}
.belge.b-avn{background:var(--turuncu-bg);color:var(--turuncu)}
.belge.b-brd{background:var(--teal-bg);color:var(--teal)}
.yur-bakiye{font-weight:700}
a.belge{text-decoration:none;cursor:pointer;transition:filter .12s}
a.belge:hover{filter:brightness(.94);text-decoration:underline}
/* Deep-link ile gelinen satiri kisa sure vurgula */
@keyframes satirVurgu{0%{background:var(--mavi-bg)}60%{background:var(--mavi-bg)}100%{background:transparent}}
.satir-vurgu>td,tr.satir-vurgu{animation:satirVurgu 2.6s ease-out;box-shadow:inset 3px 0 0 var(--mavi)}
@media(max-width:760px){.ek-bakiye{border-left:none;padding-left:0;text-align:left;min-width:0}}

/* === CARİ EKSTRE — MOBİL banka-ekstresi (base: gizli; @media(max-width:760px)'da açılır) === */
#ekOzetMob{display:none}
.ek-hareket-mob{display:none}
.ek-h{position:relative;display:flex;align-items:center;gap:11px;padding:11px 13px 11px 16px;background:#fff;border:1px solid var(--line);border-radius:12px}
.ek-h-bar{position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0}
.ek-h-ik{width:34px;height:34px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.ek-h-mid{flex:1;min-width:0}
.ek-h-no{font-family:var(--mono);font-size:13px;font-weight:600;color:var(--txt);text-decoration:none}
a.ek-h-no{color:var(--mavi)}
.ek-h-alt{font-size:11px;color:var(--mut2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}
.ek-h-sag{text-align:right;flex:0 0 auto}
.ek-h-tutar{font-family:var(--mono);font-size:14px;font-weight:700}
.ek-h-bakiye{font-size:10px;color:var(--mut2);margin-top:1px}
.ek-gr{background:linear-gradient(135deg,#2563eb,#1e3a8a);border-radius:16px;padding:16px 18px;color:#fff}
.ek-gr-ad{font-size:14px;font-weight:600}
.ek-gr-lbl{font-size:10px;text-transform:uppercase;letter-spacing:.06em;opacity:.78;margin-top:10px}
.ek-gr-buyuk{font-family:var(--mono);font-size:28px;font-weight:700;line-height:1.1}
.ek-gr-yon{font-size:11px;opacity:.85;margin-top:1px}
.ek-gr-ozet{display:flex;gap:8px;margin-top:13px}
.ek-gr-mk{flex:1;background:rgba(255,255,255,.15);border-radius:9px;padding:7px 11px}
.ek-gr-mk .l{font-size:9px;text-transform:uppercase;opacity:.82}
.ek-gr-mk .v{font-family:var(--mono);font-size:14px;font-weight:600;margin-top:1px}

/* Yon rozeti (A/B) + vadeli satir vurgusu */
.yon{font-size:10px;font-weight:700;padding:1px 6px;border-radius:5px}
.yon.a{background:var(--yesil-bg);color:var(--yesil)}
.yon.b{background:var(--kirmizi-bg);color:var(--kirmizi)}
tr.satir-vadeli>td,.satir-vadeli{background:#fef2f2}

/* --- Durum pill (MERKEZI): "Dengeli ✓" / "Dengesiz ✗" / "Kâr" gibi vurgulu gosterge.
       Rapor basliklarinda, denge satirlarinda, formlarda kullanilir. --- */
.durum-pill{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;
  padding:4px 12px;border-radius:999px;border:1px solid;white-space:nowrap}
.durum-pill.ok   {background:#ecf8f1;border-color:#cdeadd;color:#166534}
.durum-pill.hata {background:#fdf3f2;border-color:#f6d6d4;color:#991b1b}
.durum-pill.uyari{background:#fffbf1;border-color:#f5e1c2;color:#92400e}
.durum-pill.notr {background:#f1f5f9;border-color:var(--line);color:var(--mut)}

/* --- Rapor tablolari: renk kodlu toplam/grup/sonuc satirlari --- */
.rapor-blok table tfoot tr{background:#eef3f8}
.rapor-blok table tfoot td{border-top:2px solid #cbd5e1}
.rapor-blok tr.satir-grup>td{background:#f6f8fb}
.rapor-blok tr.satir-toplam>td{background:#eef3f8;border-top:1px solid #d8e1ec}
.rapor-blok tr.satir-arat>td{background:#f3f6fa}
.rapor-blok tr.satir-sonuc>td{background:#e9f1fb;border-top:2px solid #c7d7ea}

/* --- Pano iki kolon: genis sol (tablo) + dar sag (ozet) --- */
.pano-kolon{display:grid;grid-template-columns:1.7fr 1fr;gap:18px;align-items:start}
.pano-kolon.pano-tek{grid-template-columns:1fr}
/* Onay kuyruğu detay paneli */
.onay-detay{margin:5px 0 0;max-width:360px;background:var(--zemin,#f8fafc);border:1px solid var(--line);border-radius:8px;padding:9px 11px}
.onay-detay-ust{font-size:11px;color:var(--mut);line-height:1.5;word-break:break-all}
.onay-detay-tip{font-weight:700;color:var(--txt)}
.onay-kayit-link{display:inline-flex;align-items:center;gap:4px;margin-top:7px;font-size:12px;font-weight:600;color:var(--mavi);text-decoration:none;border:1px solid var(--mavi);border-radius:7px;padding:4px 10px}
.onay-kayit-link:hover{background:var(--mavi-bg)}
.onay-govde-bas{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--mut2);font-weight:700;margin-top:8px}
.onay-govde-pre{white-space:pre-wrap;font-size:11px;background:#fff;border:1px solid var(--line);border-radius:6px;padding:7px;margin:3px 0 0;overflow:auto}
/* Yetki matrisi */
.ym-legend{display:inline-flex;gap:14px;font-size:12px;color:var(--mut)}
.ym-legend span{display:inline-flex;align-items:center;gap:5px}
.ym-legend .ym-d{width:18px;height:18px;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:800}
.ym-tablo{width:100%;border-collapse:collapse;font-size:13px}
.ym-tablo th,.ym-tablo td{border:1px solid var(--line);padding:8px 6px;text-align:center}
.ym-tablo thead th{background:var(--zemin,#f8fafc);font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:var(--mut);position:sticky;top:0}
.ym-tablo th.ym-modul,.ym-tablo td.ym-modul{text-align:left;font-weight:600;white-space:nowrap;position:sticky;left:0;background:#fff;z-index:1}
.ym-tablo td.ym-modul{font-weight:600}
.ym-tablo .ym-kod{display:block;font-size:10px;color:var(--mut2);font-family:var(--mono);font-weight:400}
.ym-h{font-weight:800;font-size:15px}
.ym-tam,.ym-d.ym-tam{background:#ecfdf5;color:#16a34a}
.ym-kismi,.ym-d.ym-kismi{background:#fffbeb;color:#d97706}
.ym-yok,.ym-d.ym-yok{color:var(--mut2)}
.ym-tikla{cursor:pointer;transition:filter .1s}
.ym-tikla:hover{filter:brightness(.93);outline:2px solid var(--mavi);outline-offset:-2px}
.ym-kilit{cursor:not-allowed;opacity:.7}
.ymm-master{display:flex;align-items:center;gap:8px;font-size:13.5px;padding:6px 0;cursor:pointer}
.ymm-tablo{width:100%;border-collapse:collapse;font-size:13px}
.ymm-tablo th,.ymm-tablo td{border:1px solid var(--line);padding:7px 8px;text-align:center}
.ymm-tablo th{background:var(--zemin,#f8fafc);font-size:10.5px;text-transform:uppercase;letter-spacing:.03em;color:var(--mut)}
.ymm-tablo .ymm-alt{text-align:left;font-weight:600;white-space:nowrap}
.ymm-tablo input[type=checkbox]{width:17px;height:17px;cursor:pointer}
.panel-rozet{display:inline-block;font-size:9.5px;font-weight:700;padding:1px 6px;border-radius:9px;vertical-align:middle;white-space:nowrap}
/* Panel Yönetimi — canlı operasyon panosu */
.pn-canli{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:#16a34a}
.pn-canli-nokta{width:8px;height:8px;border-radius:50%;background:#16a34a;animation:pnPulse 1.6s infinite}
@keyframes pnPulse{0%{box-shadow:0 0 0 0 rgba(22,163,74,.45)}70%{box-shadow:0 0 0 8px rgba(22,163,74,0)}100%{box-shadow:0 0 0 0 rgba(22,163,74,0)}}
.pn-pano{display:grid;grid-template-columns:1.4fr 1fr;gap:14px;align-items:start}
.pn-blok{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;margin-bottom:14px}
.pn-blok-bas{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--txt);margin-bottom:10px}
.pn-harita{height:420px;border-radius:11px;overflow:hidden;z-index:0}
.pn-sag-kolon .pn-blok:last-child{margin-bottom:0}
.pn-akis{display:flex;flex-direction:column;gap:7px;max-height:200px;overflow:auto}
.pn-oge{display:flex;align-items:center;gap:10px;padding:8px;border-radius:10px;background:var(--zemin,#f8fafc)}
a.pn-oge{text-decoration:none;color:inherit;transition:background .1s,box-shadow .1s}
a.pn-oge:hover{background:#eef2ff;box-shadow:0 1px 6px rgba(79,70,229,.12)}
.pn-oge-ik{width:32px;height:32px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pn-oge-mid{flex:1;min-width:0}
.pn-oge-bas{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pn-oge-alt{font-size:11px;color:var(--mut2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pn-oge-tut{font-weight:800;font-size:13px;color:#16a34a;white-space:nowrap}
.pn-oge-knm{color:#4f46e5;flex-shrink:0}
/* Onaylanabilir öge: detay linki + onay/ret butonları */
.pn-oge-akt{flex-wrap:wrap}
.pn-oge-link{display:flex;align-items:center;gap:10px;flex:1;min-width:0;text-decoration:none;color:inherit;border-radius:8px;transition:background .1s}
.pn-oge-link:hover{background:#eef2ff}
.pn-oge-btns{display:flex;gap:6px;flex-shrink:0;width:100%;justify-content:flex-end;margin-top:2px}
.pn-oge-btns button{display:inline-flex;align-items:center;gap:4px;padding:5px 11px;border-radius:8px;font:inherit;font-size:12px;font-weight:600;cursor:pointer;border:1px solid}
.po-onay{background:var(--yesil-bg,#dcfce7);border-color:#16a34a;color:#15803d}
.po-onay:hover{background:#16a34a;color:#fff}
.po-red{background:var(--kirmizi-bg,#fee2e2);border-color:#dc2626;color:#b91c1c}
.po-red:hover{background:#dc2626;color:#fff}
.pn-bos{text-align:center;color:var(--mut2);font-size:12.5px;padding:24px 10px}
/* Tam genişlik anlık liste — otomatik kolon grid */
.pn-akis-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px;max-height:none}
.pn-akis-grid .pn-bos{grid-column:1/-1}
.pn-sonuc{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.pn-sonuc .pn-cip{font-size:11px;background:var(--zemin,#f1f5f9);border-radius:8px;padding:4px 9px;color:var(--mut)}
.pn-sonuc .pn-cip b{color:var(--txt)}
@media(max-width:900px){.pn-pano{grid-template-columns:1fr}.pn-harita{height:300px}}
.pn-donem{display:inline-flex;gap:4px;background:var(--zemin,#f1f5f9);border-radius:10px;padding:4px;margin-bottom:14px}
.pn-donem button{border:0;background:none;border-radius:8px;padding:7px 14px;font-size:13px;font-weight:700;color:var(--mut);cursor:pointer}
.pn-donem button.aktif{background:#fff;color:var(--txt);box-shadow:0 1px 3px rgba(0,0,0,.1)}
.od-row{display:flex;align-items:center;gap:10px;margin-bottom:8px;font-size:12.5px}
.od-ad{display:flex;align-items:center;gap:6px;min-width:90px}
.od-ad i{width:10px;height:10px;border-radius:3px;display:inline-block}
.od-bar{flex:1;height:10px;background:var(--zemin,#eef2f7);border-radius:6px;overflow:hidden}
.od-bar span{display:block;height:100%;border-radius:6px}
.od-tut{min-width:110px;text-align:right;font-weight:700}
.od-tut small{color:var(--mut2);font-weight:600}
.pn-saatlik{display:flex;align-items:flex-end;gap:3px;height:90px;padding-top:6px}
.pn-saatlik .sa-bar{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:3px}
.pn-saatlik .sa-bar>span{width:100%;max-width:18px;background:#16a34a;border-radius:3px 3px 0 0;min-height:2px}
.pn-saatlik .sa-bar small{font-size:8.5px;color:var(--mut2)}
/* Saha hedef/rota/komisyon */
.hd-row{display:flex;align-items:center;gap:11px;padding:9px 0;border-bottom:1px solid var(--line)}
.hd-row:last-child{border-bottom:0}
.hd-donut{width:50px;height:50px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;position:relative}
.hd-donut::before{content:'';position:absolute;inset:6px;background:#fff;border-radius:50%}
.hd-donut span{position:relative;font-size:11px;font-weight:800;color:var(--txt)}
.hd-mid{flex:1;min-width:0}.hd-bas{font-size:13px;font-weight:600}.hd-alt{font-size:11.5px;color:var(--mut2);margin-top:2px}
.hd-sil{border:0;background:none;color:var(--kirmizi);font-size:18px;cursor:pointer;flex-shrink:0;line-height:1}
.rota-kart{border:1px solid var(--line);border-radius:10px;padding:8px;margin-bottom:8px}
.rota-bas{display:flex;align-items:center;gap:6px;font-weight:700;font-size:13px;margin-bottom:6px}
.rota-durak{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:12.5px}
.rota-durak.tamam{opacity:.6}.rota-durak.tamam .rd-ad{text-decoration:line-through}
.rd-sira{width:20px;height:20px;border-radius:50%;background:var(--zemin);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}
.rd-ad{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rd-tik{border:1px solid var(--line);background:#fff;border-radius:6px;width:26px;height:24px;cursor:pointer;color:#16a34a;font-weight:700;margin-left:auto}
.rota-secili{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0}
.rota-secili .rs-cip{font-size:11.5px;background:#eef2ff;color:#4f46e5;border-radius:8px;padding:3px 8px}
.rota-secili .rs-cip b{cursor:pointer;margin-left:3px}
.ml{display:block;font-size:12px;font-weight:600;color:var(--mut);margin:8px 0 4px}
.mi-in{width:100%;box-sizing:border-box;padding:9px 11px;border:1px solid var(--line);border-radius:9px;font:inherit}
/* Panel Yönetimi hub */
.pn-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.pn-kart{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:14px}
.pn-ust{display:flex;gap:13px;align-items:flex-start}
.pn-kart-badge{flex:0 0 auto;min-width:22px;height:22px;border-radius:11px;background:var(--kirmizi);color:#fff;font-size:11px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;padding:0 6px}
.pn-kart-badge[hidden]{display:none}
.pn-ik{width:50px;height:50px;border-radius:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pn-baslik{font-size:16px;font-weight:800}
.pn-aciklama{font-size:12.5px;color:var(--mut);line-height:1.5;margin-top:3px}
.pn-istatistik{display:flex;flex-wrap:wrap;gap:8px}
.pn-istatistik:empty{display:none}
.pn-stat{font-size:12px;color:var(--mut);background:var(--zemin,#f1f5f9);border-radius:8px;padding:5px 10px}
.pn-stat b{color:var(--txt);font-weight:700}
.pn-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:4px 0 2px}
.pn-mini-k{background:var(--zemin,#f8fafc);border-radius:10px;padding:9px 6px;text-align:center}
.pn-mini-v{font-size:17px;font-weight:800;line-height:1.1}
.pn-mini-l{font-size:10px;color:var(--mut2);margin-top:2px}
.pn-aksiyon{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}
.pn-btn{font-size:13px;padding:9px 14px;border-radius:9px;text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.pn-btn.btn-ana{color:#fff}
/* POS (satış noktası) */
.pos-arac{display:flex;gap:12px;flex-wrap:wrap;align-items:end;margin:0 0 14px}
.pos-arac label{font-size:11px;color:var(--mut);font-weight:600;display:block;margin-bottom:4px}
.pos-arac select{padding:8px 11px;border:1px solid var(--line);border-radius:9px;font:inherit;background:#fff;min-width:160px}
.pos-ana{display:grid;grid-template-columns:1fr 360px;gap:14px;align-items:start}
.pos-sol{min-width:0}
.pos-ara{width:100%;padding:11px 14px;border:1px solid var(--line);border-radius:10px;font-size:15px;background:#fff;margin-bottom:12px}
.pos-urun-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:9px}
.pos-urun{display:flex;flex-direction:column;gap:5px;padding:8px;border:1px solid var(--line);border-radius:11px;background:#fff;cursor:pointer;text-align:left;transition:all .1s;color:var(--txt)}
.pos-urun:hover{border-color:var(--yesil);box-shadow:0 4px 12px rgba(22,163,74,.12);transform:translateY(-1px)}
.pos-u-img{display:flex;align-items:center;justify-content:center;width:100%;height:72px;border-radius:8px;background-size:cover;background-position:center;background-repeat:no-repeat;background-color:var(--zemin,#f1f5f9)}
.pos-u-noimg{color:var(--mut2)}
/* Resimsiz mod (ayar: pos.urun_resim=0) — kompakt isim+fiyat kartları */
body.pos-resimsiz .pos-u-img{display:none}
body.pos-resimsiz .pos-urun{padding:12px 10px}
body.pos-resimsiz #pos-urunler{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}
.pos-u-ad{font-size:12.5px;font-weight:600;line-height:1.25;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:31px;color:var(--txt)}
.pos-u-fiy{font-size:13.5px;font-weight:800;color:var(--yesil)}
.pos-urun{position:relative}
.pos-u-stok{position:absolute;top:7px;right:7px;z-index:1;font-size:10px;font-weight:700;padding:2px 7px;border-radius:10px;background:rgba(255,255,255,.92);color:#16a34a;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.pos-u-stok.az{color:#d97706}
.pos-u-stok.yok{color:#dc2626}
.pos-urun.tukendi{opacity:.55}
.pos-urun.tukendi .pos-u-fiy{color:var(--mut2)}
.pos-sag{position:sticky;top:12px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px;display:flex;flex-direction:column}
.pos-sepet-bas{font-weight:700;font-size:13px;display:flex;align-items:center;gap:8px;margin-bottom:8px}
.pos-cip{background:var(--yesil);color:#fff;border-radius:20px;font-size:11px;font-weight:800;padding:1px 9px}
.pos-sepet{flex:1;max-height:46vh;overflow:auto;display:flex;flex-direction:column;gap:6px}
.pos-sepet-bos{color:var(--mut2);font-size:12.5px;text-align:center;padding:24px 0}
.pos-s-satir{display:grid;grid-template-columns:1fr auto auto auto;gap:7px;align-items:center;padding:6px 0;border-bottom:1px solid var(--line)}
.pos-s-ad{font-size:12.5px;font-weight:600;min-width:0}
.pos-s-bf{display:block;font-size:10.5px;color:var(--mut);font-weight:500}
.pos-s-mik{display:inline-flex;align-items:center;gap:3px}
.pos-mik-btn{width:24px;height:24px;border:1px solid var(--line);border-radius:6px;background:var(--zemin,#f8fafc);cursor:pointer;font-weight:700}
.pos-mik-inp{width:42px;text-align:center;padding:4px;border:1px solid var(--line);border-radius:6px;font:inherit}
.pos-s-tut{font-size:12.5px;font-weight:700;min-width:64px;text-align:right}
.pos-s-sil{border:0;background:none;color:var(--kirmizi);font-size:18px;cursor:pointer;line-height:1}
.pos-s-isk-chip{margin-top:3px;display:inline-flex;align-items:center;gap:3px;border:1px dashed var(--line);background:none;color:var(--mut);border-radius:7px;padding:2px 7px;font-size:10.5px;font-weight:700;cursor:pointer}
.pos-s-isk-chip.var{border-style:solid;border-color:#dc2626;color:#dc2626;background:#fef2f2}
.pos-s-isk-et{color:#dc2626;font-weight:800}
.pos-s-bf s{color:var(--mut2);opacity:.8}
.pos-indirim-ozet{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#dc2626;font-weight:700;padding:2px 0}
.pos-indirim-ozet b{font-weight:800}
.pos-genel-ind{color:#dc2626!important;border-color:#fecaca!important}
.ind-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.ind-tab{border:1px solid var(--line);background:var(--zemin,#f8fafc);border-radius:8px;padding:9px;font-weight:700;font-size:13px;cursor:pointer;color:var(--mut)}
.ind-tab.aktif{background:#dc2626;color:#fff;border-color:#dc2626}
.pos-toplam{display:flex;justify-content:space-between;align-items:center;font-weight:800;font-size:18px;margin:10px 0;padding-top:10px;border-top:2px solid var(--line)}
.pos-odeme{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.pos-od{display:flex;align-items:center;justify-content:center;gap:6px;padding:13px 8px;border:0;border-radius:11px;font-size:13.5px;font-weight:700;color:#fff;cursor:pointer}
.pos-nakit{background:#16a34a} .pos-kart{background:#2563eb} .pos-veresiye{background:#d97706;grid-column:1/-1}
.pos-od:hover{filter:brightness(.95)}
.pos-fis-od{display:inline-block;padding:4px 14px;border-radius:8px;font-weight:700;font-size:13px;color:#fff}
.pos-fis-od.pos-nakit{background:#16a34a} .pos-fis-od.pos-kart{background:#2563eb} .pos-fis-od.pos-veresiye{background:#d97706}
/* Nakit ödeme modalı (kupür + para üstü) */
.nm-ozet{display:flex;justify-content:space-between;align-items:center;font-size:16px;padding:4px 0 12px;border-bottom:1px solid var(--line)}
.nm-ozet b{font-weight:800;font-size:18px}
.nm-kupurler{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0}
.nm-kupur{color:#fff;border:0;border-radius:9px;padding:13px 4px;font-weight:800;font-size:15px;cursor:pointer;box-shadow:inset 0 -3px rgba(0,0,0,.2);line-height:1.1}
.nm-kupur:active{transform:translateY(1px)}
.nm-kupur small{display:block;font-size:10px;font-weight:600;opacity:.9;margin-top:1px}
.nm-satir{display:flex;align-items:center;gap:10px;margin:10px 0 6px}
.nm-satir label{font-size:13px;color:var(--mut);min-width:74px}
.nm-satir input{flex:1;padding:10px 12px;border:1px solid var(--line);border-radius:9px;font-size:19px;font-weight:700;text-align:right;background:#fff}
.nm-hizli{display:flex;gap:8px}.nm-hizli .btn-cizgi{flex:1}
.nm-ustu{display:flex;justify-content:space-between;align-items:center;background:#ecfdf5;border-radius:10px;padding:11px 14px;margin-top:12px;font-size:15px;font-weight:600}
.nm-ustu b{font-size:21px;font-weight:800;color:var(--yesil)}
.nm-ustu.eksik{background:#fef2f2}.nm-ustu.eksik b{color:var(--kirmizi)}
.nm-fis-satir{display:flex;justify-content:space-between;font-size:13.5px;padding:5px 0;border-top:1px solid var(--line)}
.nm-ustu-fis b{color:var(--yesil);font-weight:800}
.nm-kasa-acik{margin-top:10px;font-size:12px;color:var(--mut);background:var(--zemin,#f1f5f9);border-radius:8px;padding:8px}
/* Geniş nakit modalı: SOL canlı fiş önizleme + SAĞ ödeme */
.pos-nakit-modal{max-width:720px;width:95vw}
.nm-grid{display:grid;grid-template-columns:280px 1fr;gap:16px;align-items:start}
.nm-sol{background:#e9edf2;border-radius:12px;padding:12px;max-height:62vh;overflow:auto}
.nm-onizleme-bas{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--mut);text-align:center;margin-bottom:8px}
@media(max-width:680px){
  /* Mobilde grid yerine flex-kolon: öğeler asla üst üste binmez. Ödeme alanı üstte, fiş önizleme altta. */
  .pos-nakit-modal .modal-icerik{padding-left:14px;padding-right:14px}
  .nm-grid{display:flex;flex-direction:column;gap:14px;overflow-x:hidden}
  .nm-sag{order:1;min-width:0}
  .nm-sol{order:2;max-height:300px;min-width:0}
  .nm-kupurler{grid-template-columns:repeat(4,1fr);gap:7px}
  .nm-kupur{padding:12px 2px;font-size:14px}
  .nm-satir input,.nm-alinan{min-width:0}
}
/* Termal fiş (POS satış fişi + önizleme) */
.pos-fis{background:#fff;color:#111;font-family:'Courier New',ui-monospace,monospace;width:248px;margin:0 auto;padding:14px;font-size:12px;line-height:1.45;border-radius:4px;box-shadow:0 1px 6px rgba(0,0,0,.12)}
.pos-fis .fr-logo{display:block;max-width:120px;max-height:54px;margin:0 auto 6px;object-fit:contain}
.pos-fis .fr-ad{text-align:center;font-weight:800;font-size:14px;letter-spacing:.5px}
.pos-fis .fr-c{text-align:center;font-size:10.5px;color:#444}
.pos-fis .fr-tip{margin-top:4px;font-weight:700;color:#111}
.pos-fis .fr-hr{border-top:1px dashed #999;margin:7px 0}
.pos-fis .fr-l{display:flex;justify-content:space-between;gap:8px}
.pos-fis .fr-l .fr-nm{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pos-fis .fr-tot{font-weight:800;font-size:14px;margin-top:3px}
.pos-fis-sar{display:flex;justify-content:center}
/* Yazdırma: yalnız fiş görünür */
#pos-yazdir{display:none}
@media print{
  body{background:#fff!important}
  body *{visibility:hidden!important}
  #pos-yazdir,#pos-yazdir *{visibility:visible!important}
  #pos-yazdir{display:block!important;position:absolute;left:0;top:0;width:100%}
  #pos-yazdir .pos-fis{box-shadow:none;width:280px}
}
/* POS vardiya (shift) paneli */
.vp-kart{background:var(--zemin,#f8fafc);border:1px solid var(--line);border-radius:12px;padding:6px 14px}
.vp-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;font-size:13.5px;border-bottom:1px solid var(--line)}
.vp-row:last-child{border-bottom:0}
.vp-row b{font-weight:700}
.vp-row.vp-bek{border-top:2px solid var(--line);border-bottom:0;margin-top:2px;font-size:15px}
.vp-row.vp-bek b{font-size:18px;color:var(--lacivert,#1e293b)}
/* POS gün sonu kasa sayımı modalı */
.gs-tablo{width:100%;border-collapse:collapse;font-size:13px;margin-bottom:12px}
.gs-tablo td{border:1px solid var(--line);padding:6px 8px}
.gs-tablo thead td{background:var(--zemin,#f8fafc);font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:var(--mut)}
.gs-tablo .sag{text-align:right}
.gs-tablo input{border:1px solid var(--line);border-radius:6px;padding:5px;font:inherit}
.gs-ozet{display:flex;flex-direction:column;gap:6px;background:var(--zemin,#f1f5f9);border-radius:10px;padding:11px 14px}
.gs-ozet>div{display:flex;justify-content:space-between;align-items:center;font-size:14px}
.gs-ozet b{font-weight:700}
.gs-ozet .gs-fark{border-top:1px solid var(--line);padding-top:7px;font-weight:700}
.gs-ozet .gs-fark b{font-size:18px}
.gs-muh{display:flex;align-items:center;gap:7px;margin-top:12px;font-size:13px;cursor:pointer}
@media(max-width:820px){.pos-ana{grid-template-columns:1fr}.pos-sag{position:static}}

.denetim-nokta{font-size:13px;line-height:1}
.denetim-nokta.ok{color:var(--ok)}
.denetim-nokta.err{color:var(--uyari)}

/* --- Ozet rozeti: "X/Y saglikli" (alt sayfa basliklarinda) --- */
.ozet-rozet{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:700;
  padding:6px 13px;border-radius:999px;border:1px solid}
.ozet-rozet::before{content:"";width:9px;height:9px;border-radius:50%;background:currentColor}
.ozet-rozet.ok{background:#ecf8f1;border-color:#cdeadd;color:#166534}
.ozet-rozet.uyari{background:#fffaf0;border-color:#f5e1c2;color:#92400e}
.ozet-rozet.hata{background:#fdf3f2;border-color:#f6d6d4;color:#991b1b}

/* --- Durum satiri (MERKEZI): renk zeminli + ikonlu kontrol/durum karti.
       Varyant: ok (yesil) / uyari (sari) / hata (kirmizi). Tum modullerde kullanilir. --- */
.durum-liste{display:flex;flex-direction:column;gap:10px}
.durum-satiri{display:flex;align-items:flex-start;gap:12px;padding:13px 15px;border-radius:11px;border:1px solid}
.durum-satiri.ok   {background:#f1faf5;border-color:#cdeadd}
.durum-satiri.uyari{background:#fffbf1;border-color:#f5e1c2}
.durum-satiri.hata {background:#fdf4f3;border-color:#f6d6d4}
.durum-ikon{flex:0 0 30px;width:30px;height:30px;border-radius:8px;
  display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:15px}
.durum-satiri.ok    .durum-ikon{background:#dcfce7;color:#166534}
.durum-satiri.uyari .durum-ikon{background:#fef3c7;color:#92400e}
.durum-satiri.hata  .durum-ikon{background:#fee2e2;color:#991b1b}
.durum-govde{flex:1;min-width:0}
.durum-ust{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.durum-ad{font-weight:600;font-size:14px}
.durum-etiket{font-size:11px;font-weight:700;padding:2px 9px;border-radius:999px;text-transform:uppercase;letter-spacing:.3px}
.durum-satiri.ok    .durum-etiket{background:#dcfce7;color:#166534}
.durum-satiri.uyari .durum-etiket{background:#fef3c7;color:#92400e}
.durum-satiri.hata  .durum-etiket{background:#fee2e2;color:#991b1b}
.durum-ozet{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:12px;color:var(--mut);margin-top:5px;overflow-wrap:anywhere}
.durum-sorunlar{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.durum-sorun{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border:1px solid var(--line);
  border-radius:7px;background:#fff;color:var(--lacivert);text-decoration:none;font-size:12.5px;font-weight:500}
.durum-sorun:hover{border-color:var(--lacivert);background:#f8fafc}
.durum-sorun .ok-link{color:var(--mut);font-weight:600}

tr.tikla{cursor:pointer}
tr.tikla:hover{background:#f8fafc}

/* Fark / denge: dengeli yesil, dengesiz kirmizi */
.denge{font-weight:700}
.denge.ok{color:var(--ok)}
.denge.err{color:var(--err)}

.mesaj{padding:10px 12px;border-radius:8px;margin-bottom:14px;display:none}
.mesaj.ok{background:#dcfce7;color:#166534;display:block}
.mesaj.err{background:#fee2e2;color:#991b1b;display:block}
.arac{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:16px}
/* Modern araç çubuğu: arama solda büyür, filtre+aksiyonlar sağda. Eski inline boşluk span'ı gereksiz (arama zaten büyüyor) → gizle. */
.arac > span[style]{display:none!important}
.arac .ara-kutu{flex:1 1 240px}
.arac > select,.arac > input[type=date],.arac > .btn-cizgi,.arac > .btn-ana,.arac > a.btn-cizgi{flex:0 0 auto}
.arac > .btn-cizgi,.arac > .btn-ana,.arac > a.btn-cizgi{height:38px;display:inline-flex;align-items:center}
.arac > select,.arac > input[type=date]{height:38px}
@media(max-width:680px){
  .arac{gap:8px}
  .arac .ara-kutu{flex:1 1 100%}
  .arac > select,.arac > input[type=date]{flex:1 1 100%}
  .arac > .btn-cizgi,.arac > .btn-ana,.arac > a.btn-cizgi{flex:1 1 auto;justify-content:center}
}
.mut{color:var(--mut);font-size:13px}
a.link{color:var(--lacivert);text-decoration:none}

/* Iki kolonlu sayfa duzeni (orn. cari) - mobilde tek kolona iner */
.iki-kolon{display:grid;grid-template-columns:340px 1fr;gap:20px}

/* Mobil alt menu - masaustunde gizli */
.alt{display:none}
.mobil-fab{display:none}   /* mobil "+ Yeni" yüzen buton — sadece @media(max-width:760px)'da görünür */

/* Alt menü ortası "Fatura" butonu (yalnız .alt görünürken=mobil) + yukarı açılır seçim sheet'i */
.alt-fatura{flex:1 0 auto;min-width:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:none;border:0;color:#64748b;font-size:10px;font-weight:500;padding:6px 4px;cursor:pointer;white-space:nowrap}
/* açık renkli yumuşak KARE tile (dolu mavi daire değil) — aktif sayfa kendi rengiyle öne çıksın */
.alt-fatura .af-yuvarlak{width:36px;height:36px;border-radius:11px;background:var(--mavi-bg);color:var(--mavi);display:flex;align-items:center;justify-content:center;transition:background .15s, color .15s, box-shadow .15s}
.alt-fatura:active .af-yuvarlak{transform:scale(.93)}
.alt-fatura.acik .af-yuvarlak{background:var(--mavi);color:#fff;box-shadow:0 0 0 4px rgba(37,99,235,.16)}  /* sadece speed-dial AÇIKKEN dolu */
/* Fatura speed-dial: menü üstünde açılan iki ayrı buton */
.fts-perde{position:fixed;inset:0;background:rgba(15,23,42,.28);z-index:90;opacity:0;visibility:hidden;transition:opacity .22s, visibility .22s}
.fts-perde.acik{opacity:1;visibility:visible}
.fts-mini{position:fixed;left:0;right:0;bottom:78px;z-index:91;display:flex;flex-direction:row;justify-content:center;align-items:center;gap:12px;pointer-events:none}
.fts-mini.acik{pointer-events:auto}
.ftm-btn{display:inline-flex;align-items:center;gap:9px;padding:9px 18px 9px 9px;border-radius:99px;text-decoration:none;color:#fff;font-size:14.5px;font-weight:700;
  box-shadow:0 8px 22px rgba(15,23,42,.32);opacity:0;transform:translateY(24px) scale(.82);
  transition:opacity .2s ease, transform .3s cubic-bezier(.34,1.56,.64,1)}
.ftm-btn.k-satis{background:#16a34a}
.ftm-btn.k-alis{background:#ea8a0c}
.ftm-yz{line-height:1}
.ftm-ik{width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.fts-mini.acik .ftm-btn{opacity:1;transform:translateY(0) scale(1)}
.fts-mini.acik .ftm-btn.k-satis{transition-delay:.02s}
.fts-mini.acik .ftm-btn.k-alis{transition-delay:.10s}
.ftm-btn:active{transform:translateY(0) scale(.95)}
/* Speed-dial açıkken sayfa "+ Yeni" FAB'ı gizlensin (kalabalık olmasın) */
body.fatura-acik .mobil-fab{opacity:0;visibility:hidden;transition:opacity .18s, visibility .18s}

/* ===================== Modern Panel (dashboard) ===================== */
.panel-baslik-ust{font-size:11px;font-weight:700;color:var(--mut);text-transform:uppercase;letter-spacing:.06em;margin:0 0 10px}

/* === Kur hero kartları (XE mobil tarzı) === */
.kur-hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-bottom:16px}
.kur-kart{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px;display:flex;flex-direction:column;gap:8px;position:relative;transition:transform .15s ease, box-shadow .15s ease}
.kur-kart:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(15,23,42,.08)}
.kur-kart-ust{display:flex;align-items:center;gap:10px}
.kur-bayrak{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;color:#fff;font-size:12px;letter-spacing:.5px;flex-shrink:0;font-family:var(--mono)}
.kur-kart[data-pb="EUR"] .kur-bayrak{background:linear-gradient(135deg,#185fa5,#0c447c)}
.kur-kart[data-pb="USD"] .kur-bayrak{background:linear-gradient(135deg,#0f6e56,#04342c)}
.kur-kart[data-pb="TRY"] .kur-bayrak{background:linear-gradient(135deg,#a32d2d,#501313)}
.kur-kart[data-pb="XOF"] .kur-bayrak,
.kur-kart[data-pb="CFA"] .kur-bayrak{background:linear-gradient(135deg,#534ab7,#26215c)}
.kur-kart-bilgi{flex:1;min-width:0}
.kur-pb-ad{font-weight:700;font-size:14.5px;color:var(--txt);line-height:1.2;letter-spacing:.02em}
.kur-pb-alt{font-size:11px;color:var(--mut2);margin-top:2px}
.kur-kart-deger{font-family:var(--mono);font-size:26px;font-weight:800;letter-spacing:-.4px;color:var(--mor);line-height:1}
.kur-kart-deger .pb-min{font-size:13px;font-weight:600;color:var(--mut);margin-left:5px;letter-spacing:0}
.kur-kart-alt{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:2px}
.kur-degisim{display:inline-flex;align-items:center;gap:4px;font-family:var(--mono);font-size:12px;font-weight:700;padding:3px 8px;border-radius:6px}
.kur-degisim.yukari{color:var(--yesil);background:var(--yesil-bg)}
.kur-degisim.asagi {color:var(--kirmizi);background:var(--kirmizi-bg)}
.kur-degisim.sabit {color:var(--mut2);background:var(--zemin)}
.kur-tarih{font-size:11px;color:var(--mut2);font-family:var(--mono)}

/* Çevirici */
.kur-cev{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px;margin-bottom:16px}
.kur-cev-grid{display:grid;grid-template-columns:1fr 44px 1fr;gap:10px;align-items:end}
.kur-cev-kutu{display:flex;flex-direction:column;gap:6px}
.kur-cev-kutu label{font-size:11px;color:var(--mut);font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.kur-cev-sat{display:flex;gap:8px;align-items:stretch}
.kur-cev-sat input{flex:1;padding:11px 13px;border:1px solid var(--line);border-radius:9px;font-family:var(--mono);font-size:18px;font-weight:700;color:var(--txt);background:var(--zemin);text-align:right;letter-spacing:-.2px;min-width:0}
.kur-cev-sat input:focus{outline:0;border-color:var(--mor);background:#fff}
.kur-cev-sat select{padding:11px 12px;border:1px solid var(--line);border-radius:9px;font-weight:700;background:#fff;font-family:var(--mono);font-size:14px;cursor:pointer;min-width:90px}
.kur-cev-swap{display:flex;align-items:center;justify-content:center}
.kur-cev-swap button{width:42px;height:42px;border:1px solid var(--line);background:#fff;border-radius:10px;cursor:pointer;color:var(--mor);transition:transform .15s ease, background .15s}
.kur-cev-swap button:hover{background:var(--mor-bg);transform:rotate(180deg)}
.kur-cev-not{margin-top:10px;font-size:11.5px;color:var(--mut2);font-family:var(--mono);text-align:center}
@media (max-width: 640px){
  .kur-cev-grid{grid-template-columns:1fr;gap:6px}
  .kur-cev-swap{order:2;margin:4px 0}
  .kur-cev-swap button{transform:rotate(90deg)}
  .kur-cev-swap button:hover{transform:rotate(270deg)}
}

/* Oto-güncelle şeridi */
.kur-oto{background:linear-gradient(90deg, var(--mor-bg), var(--mavi-bg));border:1px solid var(--line);border-radius:12px;padding:12px 16px;display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:14px}
.kur-oto-ad{font-weight:700;color:var(--mor);font-size:13.5px;flex:1;min-width:160px}
.kur-oto-ad .kucuk{display:block;font-size:11px;color:var(--mut2);font-weight:500;margin-top:2px}
.kur-oto input[type=date]{padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;font-family:var(--mono);font-size:13px}

/* === Admin paneli (kullanıcı yönetimi) === */
.adm-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:12px}
.adm-kart{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;transition:transform .12s ease, box-shadow .12s ease}
.adm-kart:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(15,23,42,.06)}
.adm-av{width:44px;height:44px;border-radius:50%;background:var(--mor-bg);color:var(--mor);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;letter-spacing:.02em;flex-shrink:0}
.adm-kart.r-admin .adm-av   {background:var(--mor-bg);color:var(--mor)}
.adm-kart.r-muhasebe .adm-av{background:var(--mavi-bg);color:var(--mavi)}
.adm-kart.r-gozlemci .adm-av{background:var(--zemin);color:var(--mut2)}
.adm-bilgi{flex:1;min-width:150px}
.adm-ad{font-weight:700;font-size:14px;color:var(--txt);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.adm-eposta{font-size:11.5px;color:var(--mut2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-family:var(--mono)}
.adm-meta{display:flex;align-items:center;gap:6px;margin-top:6px;flex-wrap:wrap}
.adm-rol{font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:5px;letter-spacing:.02em;text-transform:uppercase;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:var(--zemin);color:var(--mut)}
.adm-rol.admin    {background:var(--mor-bg);color:var(--mor)}
.adm-rol.muhasebe {background:var(--mavi-bg);color:var(--mavi)}
.adm-rol.gozlemci {background:var(--zemin);color:var(--mut2)}
.adm-rol.satis    {background:var(--yesil-bg);color:var(--yesil)}
.adm-rol.alis     {background:var(--turuncu-bg);color:var(--turuncu)}
.adm-rol.depo     {background:#e0e7ff;color:#4f46e5}
.adm-rol.ik       {background:#e3f6fb;color:#0891b2}
.adm-rol.kasiyer  {background:#fce7f3;color:#be185d}
.adm-durum{font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:5px}
.adm-durum.aktif{background:var(--yesil-bg);color:var(--yesil)}
.adm-durum.pasif{background:var(--kirmizi-bg);color:var(--kirmizi)}
.adm-kart.pasif{opacity:.55}
.adm-aksiyon{display:flex;gap:6px;flex-shrink:0;align-items:center;margin-left:auto}
.adm-aksiyon button{width:36px;height:36px;border:1px solid var(--line);background:#fff;border-radius:9px;cursor:pointer;color:var(--mut2);display:flex;align-items:center;justify-content:center;transition:background .12s, color .12s, border-color .12s;padding:0}
.adm-aksiyon button svg{width:18px;height:18px;display:block;flex-shrink:0}
.adm-aksiyon button:hover{background:var(--mor-bg);color:var(--mor);border-color:var(--mor)}
.adm-aksiyon button.duzenle:hover{background:var(--mavi-bg);color:var(--mavi);border-color:var(--mavi)}
.adm-aksiyon button.sifre:hover{background:var(--mor-bg);color:var(--mor);border-color:var(--mor)}
.adm-aksiyon button.toggle.aktif{background:var(--yesil-bg);color:var(--yesil);border-color:var(--yesil)}
.adm-aksiyon button.toggle.pasif{background:var(--zemin);color:var(--mut)}
.adm-aksiyon button.sil:hover{background:var(--kirmizi-bg);color:var(--kirmizi);border-color:var(--kirmizi)}

/* === Admin yetki modal modern bileşenleri === */
/* Rol kartları */
.adm-rol-kart{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1.5px solid var(--line);border-radius:9px;cursor:pointer;background:#fff;transition:border-color .12s, background .12s, transform .1s;font-size:12.5px;font-weight:600;color:var(--txt)}
.adm-rol-kart:hover{background:var(--zemin)}
.adm-rol-kart.sec{border-color:var(--mor);background:var(--mor-bg);color:var(--mor)}
.adm-rol-nokta{width:14px;height:14px;border-radius:50%;flex-shrink:0;border:2px solid #fff;box-shadow:0 0 0 1.5px var(--line)}
.adm-rol-kart.sec .adm-rol-nokta{box-shadow:0 0 0 1.5px var(--mor)}
.adm-rol-label{flex:1}

/* Şirket / kullanıcı seçim chip listesi */
.adm-chip-liste{display:flex;flex-wrap:wrap;gap:6px;border:1px solid var(--line);border-radius:9px;padding:8px;max-height:120px;overflow-y:auto;background:var(--zemin)}
.adm-chip{padding:6px 11px;border:1px solid var(--line);background:#fff;border-radius:18px;cursor:pointer;font-size:12.5px;font-weight:500;color:var(--mut2);transition:all .12s;display:inline-flex;align-items:center}
.adm-chip:hover{border-color:var(--mor)}
.adm-chip.sec{background:var(--mor);color:#fff;border-color:var(--mor)}
.adm-chip.sec::before{content:"✓ ";font-weight:700;margin-right:3px}

/* Modül pill button grid */
.adm-mod-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(115px,1fr));gap:6px;padding:10px;background:var(--zemin);border:1px solid var(--line);border-radius:9px;max-height:230px;overflow-y:auto}
.adm-mod-pill{padding:7px 10px;border:1px solid var(--line);background:#fff;border-radius:7px;cursor:pointer;font-size:12px;font-weight:500;color:var(--mut2);text-align:center;transition:all .12s;text-transform:capitalize}
.adm-mod-pill:hover{border-color:var(--mavi)}
.adm-mod-pill.sec{background:var(--mavi);color:#fff;border-color:var(--mavi);font-weight:600}
.adm-mod-pill{display:flex;align-items:center;gap:5px;justify-content:flex-start;text-align:left}
.adm-mod-pill.durum-tam{background:var(--yesil-bg);color:var(--yesil);border-color:#bbe5be}
.adm-mod-pill.durum-kismi{background:#fef3c7;color:#854f0b;border-color:#fde5a3}
.adm-mod-pill.acik{box-shadow:0 0 0 2px var(--mor);transform:translateY(-1px)}

/* Modül alt panel (accordion) */
.adm-mod-detay{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px;max-height:340px;overflow-y:auto}
.adm-mod-detay:empty{display:none}
.adm-detay-baslik{display:flex;align-items:center;gap:10px;padding-bottom:8px;margin-bottom:8px;border-bottom:1px solid var(--line);font-size:13.5px}
.adm-detay-baslik strong{color:var(--mor);font-size:14px}
.adm-alt-liste{display:flex;flex-direction:column;gap:6px}
.adm-alt-sat{display:flex;align-items:center;gap:10px;padding:7px 4px;border-bottom:1px dashed var(--line)}
.adm-alt-sat:last-child{border-bottom:0}
.adm-alt-ad{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--txt);min-width:140px;cursor:pointer}
.adm-alt-ad input{cursor:pointer}
.adm-eylem-grp{display:flex;gap:4px;flex-wrap:wrap;margin-left:auto}
.adm-eylem{border:1px solid var(--line);background:#fff;padding:4px 10px;border-radius:6px;font-size:11.5px;font-weight:600;cursor:pointer;color:var(--mut2);transition:all .12s}
.adm-eylem:hover{border-color:var(--mor);color:var(--mor)}
.adm-eylem.sec{color:#fff !important}

/* Aktif/Pasif toggle switch */
.adm-toggle{display:inline-flex;align-items:center;gap:8px;cursor:pointer;padding:4px 0}
.adm-toggle input{position:absolute;opacity:0;pointer-events:none}
.adm-toggle-yol{display:inline-block;width:44px;height:24px;background:var(--line);border-radius:12px;position:relative;transition:background .15s}
.adm-toggle-yol::after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:left .18s}
.adm-toggle input:checked + .adm-toggle-yol{background:var(--yesil)}
.adm-toggle input:checked + .adm-toggle-yol::after{left:22px}
.adm-toggle-txt{font-size:13px;font-weight:600;color:var(--txt)}

/* === Reçete modern form === */
.rf-baslik-kart{background:linear-gradient(135deg, var(--mor-bg), #fff);border:1px solid var(--line);border-radius:12px;padding:14px;margin-bottom:14px}
.rf-baslik-ic{display:grid;grid-template-columns:1fr 180px 120px;gap:12px;align-items:end}
@media (max-width:720px){ .rf-baslik-ic{grid-template-columns:1fr} }
.rf-alan{display:flex;flex-direction:column}
.rf-alan select, .rf-alan input{padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:#fff;font-size:14px;font-weight:500}
.rf-alan input:focus, .rf-alan select:focus{outline:0;border-color:var(--mor)}
.rf-lbl{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--mut);margin-bottom:5px}
.rf-birim-alan{align-items:center;text-align:center}
.rf-birim-deger{padding:10px;background:var(--mor);color:#fff;border-radius:9px;font-weight:700;font-size:15px;width:100%;text-align:center}

.rf-mod-bar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;padding:8px 12px;background:var(--zemin);border-radius:9px;flex-wrap:wrap}
.rf-mod-sol{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.rf-mod-toggle{display:inline-flex;background:#fff;border:1px solid var(--line);border-radius:8px;padding:3px}
.rf-mod-btn{padding:6px 14px;border:0;background:transparent;border-radius:6px;cursor:pointer;font-size:12px;font-weight:600;color:var(--mut2);transition:all .12s}
.rf-mod-btn.aktif{background:var(--mor);color:#fff}

.rf-satir-liste{display:flex;flex-direction:column;gap:8px}
.rf-satir-kart{display:grid;grid-template-columns:30px 1fr 160px 100px 32px;gap:10px;align-items:end;background:#fff;border:1px solid var(--line);border-radius:9px;padding:10px;transition:border-color .12s}
.rf-satir-kart:hover{border-color:var(--mor)}
@media (max-width:720px){ .rf-satir-kart{grid-template-columns:30px 1fr 32px;grid-template-areas:"no bil sil" "no mik mik" "no fire fire"}
  .rf-satir-bilesen{grid-area:bil} .rf-satir-miktar{grid-area:mik} .rf-satir-fire{grid-area:fire} .rf-satir-no{grid-area:no} .rf-sil{grid-area:sil}
}
.rf-satir-no{font-family:var(--mono);color:var(--mor);font-weight:800;font-size:14px;display:flex;align-items:center;justify-content:center;background:var(--mor-bg);border-radius:7px;height:38px}
.rf-satir-bilesen select, .rf-satir-miktar input, .rf-satir-fire input{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:7px;font-size:13px;font-weight:500;background:#fff}
.rf-satir-miktar{position:relative}
.rf-satir-miktar input{text-align:right;font-family:var(--mono);font-weight:700;padding-right:34px}
.rf-mik-birim{position:absolute;right:8px;bottom:8px;font-size:11px;font-weight:700;color:var(--mut2);pointer-events:none}
.rf-satir-fire input{text-align:right}
.rf-sil{background:#fff;border:1px solid var(--line);color:var(--kirmizi);border-radius:7px;width:32px;height:38px;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center}
.rf-sil:hover{background:var(--kirmizi-bg);border-color:var(--kirmizi)}

.rf-yuzde-ozet{margin-top:14px;padding:12px;border:1px solid var(--line);border-radius:9px;background:var(--zemin)}
.rf-yuzde-lbl{display:flex;justify-content:space-between;font-size:13px;font-weight:600;color:var(--txt);margin-bottom:6px}
.rf-progress{height:10px;background:#e5e7eb;border-radius:6px;overflow:hidden}
.rf-progress-ic{height:100%;transition:width .25s ease, background .15s}
.rf-progress-ic.rf-eksik{background:#f59e0b}
.rf-progress-ic.rf-tam{background:var(--yesil)}
.rf-progress-ic.rf-tasti{background:var(--kirmizi)}

/* Reçete maliyet özet kartları */
.rf-maliyet-ozet{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:8px;margin-top:14px}
@media (max-width:640px){ .rf-maliyet-ozet{grid-template-columns:1fr} }
.rf-mal-kart{background:#fff;border:1px solid var(--line);border-radius:9px;padding:12px 14px;text-align:center}
.rf-mal-lbl{font-size:11px;font-weight:700;color:var(--mut2);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}
.rf-mal-deg{font-family:var(--mono);font-weight:700;font-size:16px;color:var(--txt)}
.rf-mal-kart.rf-mal-toplam{background:linear-gradient(135deg, var(--mor), #6d28d9);border-color:var(--mor)}
.rf-mal-toplam .rf-mal-lbl{color:rgba(255,255,255,.85)}
.rf-mal-toplam .rf-mal-deg{color:#fff;font-size:20px}
.rf-mal-not{margin-top:3px;font-size:11px;color:rgba(255,255,255,.8);font-family:var(--mono)}

/* === Tablo sayfalama === */
.sayfa-kontrol{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;border-top:1px solid var(--line);background:var(--zemin);flex-wrap:wrap}
.sayfa-sol,.sayfa-sag{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.sayfa-boyut{padding:5px 9px;border:1px solid var(--line);border-radius:6px;font-size:12px;background:#fff;cursor:pointer;font-weight:600}
.sayfa-btn{padding:5px 10px;border:1px solid var(--line);background:#fff;border-radius:6px;cursor:pointer;font-size:12px;font-weight:600;color:var(--txt);min-width:32px;text-align:center;transition:background .12s, border-color .12s}
.sayfa-btn:hover:not(:disabled){background:var(--mor-bg);border-color:var(--mor);color:var(--mor)}
.sayfa-btn.aktif{background:var(--mor);color:#fff;border-color:var(--mor)}
.sayfa-btn:disabled{opacity:.35;cursor:not-allowed}
.sayfa-btn.sayfa-ok{font-size:14px;font-weight:700;padding:3px 9px}
.sayfa-nokta{padding:5px 4px;color:var(--mut);font-weight:700}

/* === Belgeler sayfası === */
.bel-kat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;margin-bottom:6px}
.bel-kat-kart{display:flex;align-items:center;gap:10px;padding:11px 13px;border:1px solid var(--line);background:#fff;border-radius:10px;cursor:pointer;transition:border-color .12s, box-shadow .12s, transform .1s}
.bel-kat-kart:hover{border-color:var(--mor);transform:translateY(-1px)}
.bel-kat-kart.sec{border-color:var(--mor);box-shadow:0 0 0 2px rgba(91,33,182,.15);background:var(--mor-bg)}
.bel-kat-ikon{width:40px;height:40px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.bel-kat-ic{flex:1;min-width:0}
.bel-kat-ad{font-weight:700;font-size:13px;color:var(--txt);line-height:1.2}
.bel-kat-say{font-size:11px;color:var(--mut2);margin-top:3px}

.bel-liste{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px;padding:14px}
.bel-kart{background:#fff;border:1px solid var(--line);border-radius:11px;overflow:hidden;transition:transform .12s, box-shadow .12s;display:flex;flex-direction:column}
.bel-kart:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(15,23,42,.07)}
.bel-kart-ic{padding:10px 12px;display:flex;flex-direction:column;gap:6px;flex:1}
.bel-kart-baslik{font-weight:700;font-size:13px;color:var(--txt);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bel-kart-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:11px}
.bel-kat-rozet{padding:2px 7px;border-radius:5px;font-weight:600;font-size:10.5px;letter-spacing:.02em}
.bel-kart-tarih{font-size:11px;color:var(--mut2);font-family:var(--mono)}
.bel-kart-aks{display:flex;gap:5px;margin-top:auto;padding-top:4px}

/* === Kasa / Banka kart grid'i (resimdeki tasarım) === */
.kb-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:14px}
.kb-kart{background:#fff;border:1px solid var(--line);border-radius:14px;padding:0;overflow:hidden;display:flex;flex-direction:column;transition:transform .15s ease, box-shadow .15s ease}
.kb-kart:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(15,23,42,.07)}
.kb-kart.pasif{opacity:.6}
/* Üst şerit: avatar + ad/kod + sağda 2 pill + menü */
.kb-kart-ust{display:flex;align-items:center;gap:11px;padding:14px 16px;border-bottom:1px solid var(--line)}
.kb-av{width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--mor)}
.kb-kart.tip-kasa  .kb-av{background:var(--mor-bg)}
.kb-kart.tip-banka .kb-av{background:var(--mavi-bg);color:var(--mavi)}
.kb-kart-bilgi{flex:1;min-width:0}
.kb-ad{font-weight:700;font-size:15px;color:var(--txt);line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.kb-kod{font-family:var(--mono);font-size:11px;color:var(--mut2);margin-top:2px}
.kb-pillgrubu{display:flex;align-items:center;gap:5px;flex-shrink:0}
.kb-pill{display:inline-block;padding:3px 9px;border-radius:6px;font-size:10.5px;font-weight:700;letter-spacing:.02em;font-family:var(--mono)}
.kb-pill.pb-xof{background:var(--mor-bg);color:var(--mor)}
.kb-pill.pb-eur{background:var(--mavi-bg);color:var(--mavi)}
.kb-pill.pb-usd{background:var(--yesil-bg);color:var(--yesil)}
.kb-pill.pb-try{background:var(--kirmizi-bg);color:var(--kirmizi)}
.kb-pill.tip{background:var(--zemin);color:var(--mut2);text-transform:lowercase}
/* Bakiye ve özet */
.kb-bakiye{padding:14px 16px 12px}
.kb-deger{font-size:30px;font-weight:800;letter-spacing:-.5px;font-family:var(--mono);color:var(--mor);line-height:1}
.kb-kart.tip-banka .kb-deger{color:var(--mavi)}
.kb-kart .kb-deger.eksi{color:var(--kirmizi)}
.kb-deger .pb{font-size:18px;font-weight:700;margin-left:6px;opacity:.9}
.kb-aylik{display:flex;gap:24px;margin-top:10px}
.kb-aylik > div{display:flex;flex-direction:column;gap:2px}
.kb-aylik .l{font-size:11px;color:var(--mut);font-weight:600;display:flex;align-items:center;gap:4px}
.kb-aylik .v{font-family:var(--mono);font-weight:700;font-size:13px}
.kb-aylik .yes .l{color:var(--yesil)} .kb-aylik .yes .v{color:var(--yesil)}
.kb-aylik .kir .l{color:var(--kirmizi)} .kb-aylik .kir .v{color:var(--kirmizi)}
/* 2 sıralı eylem butonları (3+3) */
.kb-aksiyonlar{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:0 14px 14px}
.kb-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:11px 6px;border-radius:9px;border:0;cursor:pointer;font-size:12px;font-weight:700;text-decoration:none;transition:transform .12s ease, background .12s ease}
.kb-btn:hover{transform:translateY(-1px)}
.kb-btn svg{width:18px;height:18px;stroke-width:2}
.kb-btn.tahsil  {background:#e9f6ec;color:#15803d}
.kb-btn.tahsil:hover  {background:#d8efdc}
.kb-btn.odeme   {background:#fee2e2;color:#b91c1c}
.kb-btn.odeme:hover   {background:#fad0d0}
.kb-btn.transfer{background:#dde9fb;color:#185fa5}
.kb-btn.transfer:hover{background:#cbdbf6}
.kb-btn.gider   {background:#ebe5fb;color:#5b21b6}
.kb-btn.gider:hover   {background:#dccff5}
.kb-btn.duzenle {background:#fef3c7;color:#854f0b}
.kb-btn.duzenle:hover {background:#fde5a3}
.kb-btn.gecmis  {background:var(--zemin);color:var(--mut2)}
.kb-btn.gecmis:hover  {background:#e4e8ee}
.kb-bos{padding:30px;text-align:center;color:var(--mut);font-size:13px;border:1px dashed var(--line);border-radius:12px}
/* Kart ⋮ menüsü (sayfaya popup, browser confirm yerine) */
.kb-popup{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 32px rgba(15,23,42,.14);min-width:200px;padding:6px;z-index:1000;display:flex;flex-direction:column;gap:1px}
.kb-popup .mi{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:7px;cursor:pointer;font-size:13px;color:var(--txt);background:none;border:0;text-align:left;transition:background .12s}
.kb-popup .mi:hover{background:var(--zemin)}
.kb-popup .mi.sil:hover{background:var(--kirmizi-bg)}
.kb-popup .menu-ayrac{height:1px;background:var(--line);margin:4px 0}

/* CRM Pipeline kanban — 5 aşamalı görsel */
.pl-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-top:8px}
.pl-kol{background:#fff;border:1px solid var(--line);border-radius:12px;padding:11px 12px 10px;border-top:3px solid var(--line);transition:transform .15s ease, box-shadow .15s ease}
.pl-kol:hover{transform:translateY(-2px);box-shadow:0 6px 18px rgba(15,23,42,.08)}
.pl-kol.a-yeni       {border-top-color:var(--mut2)}
.pl-kol.a-gorusme    {border-top-color:var(--mavi)}
.pl-kol.a-teklif     {border-top-color:var(--turuncu)}
.pl-kol.a-kazanildi  {border-top-color:var(--yesil)}
.pl-kol.a-kaybedildi {border-top-color:var(--kirmizi)}
.pl-kol .pl-bas{font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--mut);margin-bottom:7px}
.pl-kol .pl-adet{font-family:var(--mono);font-size:24px;font-weight:800;line-height:1.1}
.pl-kol.a-yeni       .pl-adet{color:var(--mut2)}
.pl-kol.a-gorusme    .pl-adet{color:var(--mavi)}
.pl-kol.a-teklif     .pl-adet{color:var(--turuncu)}
.pl-kol.a-kazanildi  .pl-adet{color:var(--yesil)}
.pl-kol.a-kaybedildi .pl-adet{color:var(--kirmizi)}
.pl-kol .pl-deger{font-family:var(--mono);font-size:12px;color:var(--mut2);font-weight:600;margin-top:4px}
.pl-kol .pl-firsat{display:block;padding:7px 9px;margin-top:7px;background:var(--zemin,#f8fafc);border-radius:7px;text-decoration:none;color:var(--txt);font-size:11.5px;border:1px solid transparent;transition:border-color .12s ease}
.pl-kol .pl-firsat:hover{border-color:var(--line)}
.pl-kol .pl-firsat .pf-bas{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pl-kol .pl-firsat .pf-deg{font-family:var(--mono);color:var(--mut);font-size:10.5px;margin-top:2px}
/* Pipeline kanban sürükle-bırak */
.pl-kol{display:flex;flex-direction:column}
.pl-drop{margin-top:7px;display:flex;flex-direction:column;gap:7px;min-height:60px;flex:1}
.pl-kol .pl-firsat{margin-top:0;cursor:grab;user-select:none}
.pl-kol .pl-firsat:active{cursor:grabbing}
.pl-firsat.suruk{opacity:.45}
.pl-kol.uzeri{background:var(--mavi-bg);border-color:var(--mavi);box-shadow:0 0 0 2px var(--mavi) inset}
.pl-kol.uzeri .pl-drop{outline:2px dashed var(--mavi);outline-offset:3px;border-radius:8px}
.pl-bos{color:var(--mut2);font-size:11px;text-align:center;padding:10px 0;border:1px dashed var(--line);border-radius:7px}
/* Ayarlar: antet/şablon logo */
.sablon-logo-satir{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.sablon-logo-onizleme{width:150px;height:90px;border:1px dashed var(--line);border-radius:11px;display:flex;align-items:center;justify-content:center;background:var(--zemin,#f8fafc);flex-shrink:0;overflow:hidden;padding:8px}
.sablon-logo-onizleme img{max-width:100%;max-height:100%;object-fit:contain}
/* Dashboard: trend tooltip + dönem kıyas + gelir/gider donut */
.trend-sarmal{position:relative}
.trend-tip{position:absolute;top:2px;z-index:5;background:#0f172a;color:#fff;border-radius:10px;padding:9px 11px;min-width:150px;font-size:12px;box-shadow:0 8px 24px rgba(0,0,0,.22);pointer-events:none}
.trend-tip .tt-ay{font-weight:700;font-size:11px;letter-spacing:.04em;opacity:.7;margin-bottom:6px}
.trend-tip .tt-sat{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:2px 0}
.trend-tip .tt-sat span{display:inline-flex;align-items:center;gap:6px;opacity:.85}
.trend-tip .tt-sat b{font-family:var(--mono)}
.trend-tip .tt-sat i{width:8px;height:8px;border-radius:2px;display:inline-block}
.trend-tip i.d-y{background:var(--yesil)} .trend-tip i.d-t{background:var(--turuncu)}
.trend-tip .tt-net{border-top:1px solid rgba(255,255,255,.15);margin-top:4px;padding-top:5px}
.trend-tip .tt-net b.k{color:#4ade80} .trend-tip .tt-net b.z{color:#f87171}
.kiyas-serit{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;padding-top:11px;border-top:1px solid var(--line)}
.kiyas-serit .kiyas-bas{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--mut2);font-weight:700}
.kiyas-oge{display:inline-flex;align-items:center;gap:7px;background:var(--zemin,#f8fafc);border:1px solid var(--line);border-radius:9px;padding:5px 10px;font-size:12.5px}
.kiyas-oge .kl{color:var(--mut)} .kiyas-oge .kv{font-family:var(--mono);font-weight:700}
.kiyas-oge .kp{font-weight:700;font-size:11.5px} .kiyas-oge .kp.yuk{color:#16a34a} .kiyas-oge .kp.dus{color:#dc2626}
.dag-donut{display:flex;align-items:center;gap:24px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 18px;margin-bottom:12px}
.dag-donut .donut-svg{width:140px;height:140px;flex-shrink:0}
.donut-net{font-size:19px;font-weight:800;font-family:var(--mono)} .donut-net.k{fill:#16a34a} .donut-net.z{fill:#dc2626}
.donut-lbl{font-size:11px;fill:var(--mut2);text-transform:uppercase;letter-spacing:.05em}
.donut-legend{display:flex;flex-direction:column;gap:8px;flex:1;min-width:160px}
.donut-legend>div{display:flex;align-items:center;gap:9px;font-size:13px}
.donut-legend i{width:11px;height:11px;border-radius:3px;flex-shrink:0}
.donut-legend span{color:var(--mut);flex:1}
.donut-legend b{font-family:var(--mono);font-size:12.5px}

/* Hatırlatma bandı */
.hat-band{background:var(--turuncu-bg);border:1px solid #f5e1c2;border-radius:11px;padding:11px 14px;margin-bottom:14px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.hat-band .hb-ic{width:34px;height:34px;border-radius:9px;background:var(--turuncu);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.hat-band .hb-ad{flex:1;font-size:13px;color:var(--turuncu);font-weight:700}
.hat-band .hb-no{font-family:var(--mono);font-size:12px;color:var(--turuncu)}
.hat-band a.hb-link{font-size:11.5px;color:var(--turuncu);text-decoration:none;font-weight:600}

/* Rapor Galerisi — modern rapor seçim kartları (üst şerit) */
.rg-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:9px;margin-bottom:14px}
.rg-kart{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:14px 10px 11px;border:1px solid var(--line);border-radius:11px;background:#fff;cursor:pointer;text-decoration:none;color:var(--txt);font-size:12px;font-weight:600;text-align:center;line-height:1.25;transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease, background .15s ease}
.rg-kart:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(15,23,42,.08)}
.rg-kart .rg-ic{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:var(--zemin);color:var(--mut2);transition:background .15s ease, color .15s ease}
.rg-kart.t-teal    .rg-ic{background:var(--teal-bg);color:var(--teal)}
.rg-kart.t-mor     .rg-ic{background:var(--mor-bg);color:var(--mor)}
.rg-kart.t-yesil   .rg-ic{background:var(--yesil-bg);color:var(--yesil)}
.rg-kart.t-turuncu .rg-ic{background:var(--turuncu-bg);color:var(--turuncu)}
.rg-kart.t-mavi    .rg-ic{background:var(--mavi-bg);color:var(--mavi)}
.rg-kart.t-indigo  .rg-ic{background:var(--mor-bg);color:var(--mor)}
.rg-kart.t-amber   .rg-ic{background:var(--turuncu-bg);color:var(--turuncu)}
.rg-kart.t-gri     .rg-ic{background:var(--zemin);color:var(--mut2)}
/* Aktif rapor kartı — tema renkli border + soft fill */
.rg-kart.aktif{box-shadow:0 4px 14px rgba(15,23,42,.10);transform:translateY(-1px)}
.rg-kart.aktif.t-teal   {border:2px solid var(--teal);    background:var(--teal-bg)}
.rg-kart.aktif.t-mor    {border:2px solid var(--mor);     background:var(--mor-bg)}
.rg-kart.aktif.t-yesil  {border:2px solid var(--yesil);   background:var(--yesil-bg)}
.rg-kart.aktif.t-turuncu{border:2px solid var(--turuncu); background:var(--turuncu-bg)}
.rg-kart.aktif.t-mavi   {border:2px solid var(--mavi);    background:var(--mavi-bg)}
.rg-kart.aktif.t-indigo {border:2px solid var(--mor);     background:var(--mor-bg)}
.rg-kart.aktif.t-amber  {border:2px solid var(--turuncu); background:var(--turuncu-bg)}
.rg-kart.aktif.t-gri    {border:2px solid var(--mut2);    background:var(--zemin)}
.rg-kart.aktif .rg-ic{background:#fff}

/* Rapor üst kontrol şeridi (filtre + aksiyon birleşik panel) */
.rapor-kontrol{background:#fff;border:1px solid var(--line);border-radius:13px;padding:12px 14px;margin-bottom:12px}
.rapor-kontrol .arac{margin:0}
.rk-bas{display:none}   /* masaustunde gizli; mobilde katlanir filtre ust-bari */
.rapor-aks{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}
.rapor-aks .pbnot{font-size:11px;color:var(--mut);font-family:var(--mono);background:var(--zemin);padding:5px 10px;border-radius:6px}

/* Hızlı İşlemler kart şeridi */
.hizli-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(122px,1fr));gap:9px;margin-bottom:16px}
.hizli-kart{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:14px 10px 12px;border:1px solid var(--line);border-radius:13px;background:#fff;text-decoration:none;color:var(--txt);font-size:12px;font-weight:600;text-align:center;transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease}
.hizli-kart:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(15,23,42,.08)}
.hizli-ic{width:38px;height:38px;border-radius:11px;display:flex;align-items:center;justify-content:center}
.hizli-kart.t-yesil .hizli-ic{background:var(--yesil-bg);color:var(--yesil)}
.hizli-kart.t-yesil:hover{border-color:var(--yesil)}
.hizli-kart.t-turuncu .hizli-ic{background:var(--turuncu-bg);color:var(--turuncu)}
.hizli-kart.t-turuncu:hover{border-color:var(--turuncu)}
.hizli-kart.t-mavi .hizli-ic{background:var(--mavi-bg);color:var(--mavi)}
.hizli-kart.t-mavi:hover{border-color:var(--mavi)}
.hizli-kart.t-mor .hizli-ic{background:var(--mor-bg);color:var(--mor)}
.hizli-kart.t-mor:hover{border-color:var(--mor)}
.hizli-kart.t-teal .hizli-ic{background:var(--teal-bg);color:var(--teal)}
.hizli-kart.t-teal:hover{border-color:var(--teal)}
.hizli-kart.t-pembe .hizli-ic{background:var(--kirmizi-bg);color:var(--kirmizi)}
.hizli-kart.t-pembe:hover{border-color:var(--kirmizi)}
.hizli-kart .ad{line-height:1.25}

/* Son 6 Ay birlesik bar grafigi (gruplu) */
.bar-grafik-pro{display:flex;align-items:flex-end;gap:14px;height:170px;padding:8px 4px 4px;position:relative}
.bar-grafik-pro .bg-col{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:4px;height:100%;justify-content:flex-end;position:relative}
.bar-grafik-pro .bg-ciftli{display:flex;gap:3px;align-items:flex-end;height:100%;width:100%;justify-content:center}
.bar-grafik-pro .bg-bar{width:46%;max-width:24px;border-radius:5px 5px 0 0;background:var(--mavi);position:relative;transition:opacity .2s}
.bar-grafik-pro .bg-bar.satis{background:var(--yesil)} .bar-grafik-pro .bg-bar.alis{background:var(--turuncu)}
.bar-grafik-pro .bg-col:hover .bg-bar{opacity:.85}
.bar-grafik-pro .bg-etiket{font-size:11px;color:var(--mut);font-weight:600;text-align:center}
.bar-grafik-pro .bg-deger{font-size:10px;color:var(--mut2);font-family:var(--mono);position:absolute;top:-15px;opacity:0;transition:opacity .15s;white-space:nowrap}
.bar-grafik-pro .bg-col:hover .bg-deger{opacity:1}
.bar-legend{display:flex;gap:14px;font-size:11px;color:var(--mut)}
.bar-legend .nokta{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px}

/* Son Yevmiye Kayıtları — kompakt fiş kart listesi (sol kenar modül tonu) */
.yk-mini{display:flex;flex-direction:column;gap:5px}
.yk-satir{display:grid;grid-template-columns:30px 1fr auto;gap:11px;align-items:center;padding:9px 11px;border:1px solid var(--line);border-left:3px solid var(--line);border-radius:9px;background:#fff;text-decoration:none;color:var(--txt);transition:background .12s ease, transform .12s ease, border-color .12s ease}
.yk-satir:hover{background:var(--zemin,#f8fafc);transform:translateX(2px)}
.yk-satir.m-satis{border-left-color:var(--yesil)} .yk-satir.m-satis:hover{border-color:var(--yesil)} .yk-satir.m-satis .yk-ikon{color:var(--yesil)}
.yk-satir.m-alis{border-left-color:var(--turuncu)} .yk-satir.m-alis:hover{border-color:var(--turuncu)} .yk-satir.m-alis .yk-ikon{color:var(--turuncu)}
.yk-satir.m-muhasebe{border-left-color:var(--mavi)} .yk-satir.m-muhasebe:hover{border-color:var(--mavi)} .yk-satir.m-muhasebe .yk-ikon{color:var(--mavi)}
.yk-satir.m-bordro{border-left-color:var(--kirmizi)} .yk-satir.m-bordro:hover{border-color:var(--kirmizi)} .yk-satir.m-bordro .yk-ikon{color:var(--kirmizi)}
.yk-satir.m-uretim{border-left-color:var(--mor)} .yk-satir.m-uretim:hover{border-color:var(--mor)} .yk-satir.m-uretim .yk-ikon{color:var(--mor)}
.yk-satir.iptal{opacity:.6}
.yk-satir.iptal .yk-no, .yk-satir.iptal .yk-tut{text-decoration:line-through}
.yk-ikon{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--mut2)}
.yk-orta{min-width:0}
.yk-no{font-family:var(--mono);font-weight:700;font-size:12.5px;color:var(--mavi);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.yk-alt{font-size:10.5px;color:var(--mut);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.yk-sag{display:flex;flex-direction:column;align-items:flex-end;gap:3px;white-space:nowrap}
.yk-tut{font-family:var(--mono);font-weight:700;font-size:12.5px}

/* Son Faturalar mini liste */
.fat-mini{display:flex;flex-direction:column;gap:2px}
.fat-mini-satir{display:flex;align-items:center;gap:11px;padding:8px 10px;border-radius:9px;text-decoration:none;color:var(--txt);transition:background .12s ease}
.fat-mini-satir:hover{background:var(--zemin,#f1f5f9)}
.fat-mini .ikon{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.fat-mini .ikon.satis{background:var(--yesil-bg);color:var(--yesil)}
.fat-mini .ikon.alis{background:var(--turuncu-bg);color:var(--turuncu)}
.fat-mini .orta{flex:1;min-width:0;display:flex;flex-direction:column}
.fat-mini .no{font-size:12.5px;font-weight:600;font-family:var(--mono)}
.fat-mini .alt{font-size:11px;color:var(--mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:170px}
.fat-mini .tutar{font-family:var(--mono);font-weight:700;font-size:13px;white-space:nowrap}
.fat-mini .tutar.iptal{text-decoration:line-through;opacity:.55}

/* Cari özet liste — kartın İÇİ yüzdelik olarak doluyor (sol→sağ fill) */
.cari-mini{display:flex;flex-direction:column;gap:7px}
.cari-mini-satir{
  --yuzde:0%; --fill:transparent;
  position:relative;
  display:grid;grid-template-columns:36px 1fr auto;gap:11px;align-items:center;
  padding:10px 12px;border-radius:11px;border:1px solid var(--line);
  background:linear-gradient(90deg, var(--fill) 0, var(--fill) var(--yuzde), #fff var(--yuzde), #fff 100%);
  text-decoration:none;color:var(--txt);overflow:hidden;
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease, background .4s cubic-bezier(.4,.0,.2,1)
}
.cari-mini-satir:hover{transform:translateY(-1px);box-shadow:0 4px 14px rgba(15,23,42,.07)}
.cari-mini-satir.alacak{--fill:var(--yesil-bg)}
.cari-mini-satir.borc  {--fill:var(--kirmizi-bg)}
.cari-mini-satir.alacak:hover{border-color:var(--yesil)}
.cari-mini-satir.borc:hover{border-color:var(--kirmizi)}
.cari-avatar-mini{position:relative;z-index:1;width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;font-family:var(--mono);flex-shrink:0;background:#fff;box-shadow:0 0 0 1px var(--line)}
.cari-mini-satir.alacak .cari-avatar-mini{color:var(--yesil);box-shadow:0 0 0 1px #cdeadd}
.cari-mini-satir.borc   .cari-avatar-mini{color:var(--kirmizi);box-shadow:0 0 0 1px #f6d6d4}
.cari-mini-orta{position:relative;z-index:1;min-width:0}
.cari-mini-orta .ad{font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.3;color:var(--txt)}
.cari-mini-orta .kod{font-size:10.5px;color:var(--mut2);font-family:var(--mono);margin-right:5px;font-weight:500}
.cari-mini-sag{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-end;gap:2px;white-space:nowrap}
.cari-mini-sag .tutar{font-family:var(--mono);font-weight:800;font-size:13.5px;line-height:1.15}
.cari-mini-sag .yuzde{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.02em}
.cari-mini-satir.alacak .cari-mini-sag .tutar,.cari-mini-satir.alacak .cari-mini-sag .yuzde{color:var(--yesil)}
.cari-mini-satir.borc   .cari-mini-sag .tutar,.cari-mini-satir.borc   .cari-mini-sag .yuzde{color:var(--kirmizi)}

/* Cari TÜR HUB kartları — içi yüzdelik dolar (mavi/turuncu/mor/teal) */
.tur-kart{--yuzde:0%; --fill:transparent; position:relative; overflow:hidden;
  background:linear-gradient(90deg, var(--fill) 0, var(--fill) var(--yuzde), #fff var(--yuzde), #fff 100%);
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease, background .4s cubic-bezier(.4,.0,.2,1)}
.tur-kart.ton-mavi    {--fill:var(--mavi-bg)}
.tur-kart.ton-turuncu {--fill:var(--turuncu-bg)}
.tur-kart.ton-mor     {--fill:var(--mor-bg)}
.tur-kart.ton-teal    {--fill:var(--teal-bg)}
.tur-kart>*{position:relative;z-index:1}
.tur-kart .tur-ikon{background:#fff;box-shadow:0 0 0 1px var(--line);width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.tur-kart.ton-mavi    .tur-ikon{color:var(--mavi)}
.tur-kart.ton-turuncu .tur-ikon{color:var(--turuncu)}
.tur-kart.ton-mor     .tur-ikon{color:var(--mor)}
.tur-kart.ton-teal    .tur-ikon{color:var(--teal)}
.tur-kart .tur-ad{font-size:13.5px;font-weight:700;color:var(--txt)}
.tur-kart .tur-alt{font-size:11.5px;font-weight:600;font-family:var(--mono);margin-top:2px}
.tur-kart.ton-mavi    .tur-alt{color:var(--mavi)}
.tur-kart.ton-turuncu .tur-alt{color:var(--turuncu)}
.tur-kart.ton-mor     .tur-alt{color:var(--mor)}
.tur-kart.ton-teal    .tur-alt{color:var(--teal)}
.tur-kart .tur-adet{font-family:var(--mono);font-size:22px;font-weight:800;color:var(--txt)}

/* Cari tablo satır avatar */
.cari-tablo .cari-av{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:7px;font-family:var(--mono);font-weight:700;font-size:10px;flex-shrink:0;background:#fff;box-shadow:0 0 0 1px #eef2f6;margin-right:9px;vertical-align:-9px;letter-spacing:.02em}
.cari-tablo .av-mavi   {color:var(--mavi)   ;box-shadow:0 0 0 1px #bcdcf6;background:var(--mavi-bg)}
.cari-tablo .av-turuncu{color:var(--turuncu);box-shadow:0 0 0 1px #f5e1c2;background:var(--turuncu-bg)}
.cari-tablo .av-mor    {color:var(--mor)    ;box-shadow:0 0 0 1px #d6c8e5;background:var(--mor-bg)}
.cari-tablo .av-teal   {color:var(--teal)   ;box-shadow:0 0 0 1px #a7e8d6;background:var(--teal-bg)}
.cari-tablo tbody tr{transition:background .12s ease}
.cari-tablo tbody tr:hover>td{background:rgba(15,23,42,.025)}
/* İçerik metinleri (slate-500) — kalın rakam sütunları inline style ile override eder */
.cari-tablo tbody td{color:#64748b}
.cari-tablo tbody td .cari-ad{color:var(--mavi)} /* bağlantı mavi kalır */
.cari-tablo tbody td .cari-alt{color:#a1aab9}    /* alt satır (adres/vergi) açık */

/* Grup başlığı modernize — renkli sol kenar şerit + temalı sayı pill */
.grup-bas{position:relative;padding-left:18px}
.grup-bas::before{content:'';position:absolute;left:8px;top:50%;transform:translateY(-50%);width:3px;height:18px;border-radius:2px;background:var(--mut2)}
.cari-grup[data-grup="musteri"]   .grup-bas::before{background:var(--mavi)}
.cari-grup[data-grup="tedarikci"] .grup-bas::before{background:var(--turuncu)}
.cari-grup[data-grup="ortak"]     .grup-bas::before{background:var(--mor)}
.cari-grup[data-grup="personel"]  .grup-bas::before{background:var(--teal)}
.grup-bas .gnokta{display:none}
.grup-bas .gsay{font-family:var(--mono);font-size:11px;font-weight:700;padding:2px 8px;border-radius:6px;background:var(--zemin);color:var(--mut2)}
.cari-grup[data-grup="musteri"]   .gsay{background:var(--mavi-bg);   color:var(--mavi)}
.cari-grup[data-grup="tedarikci"] .gsay{background:var(--turuncu-bg);color:var(--turuncu)}
.cari-grup[data-grup="ortak"]     .gsay{background:var(--mor-bg);    color:var(--mor)}
.cari-grup[data-grup="personel"]  .gsay{background:var(--teal-bg);   color:var(--teal)}
.grup-bas .gbakiye{font-size:13.5px;font-weight:800;font-family:var(--mono)}

/* Stok grup özet — kartın İÇİ yüzdelik olarak doluyor (sol→sağ fill, cari-mini ile aynı şablon) */
.stk-mini{display:flex;flex-direction:column;gap:7px}
.stk-mini-satir{
  --yuzde:0%; --fill:transparent;
  position:relative;
  display:grid;grid-template-columns:36px 1fr auto;gap:11px;align-items:center;
  padding:11px 13px;border-radius:11px;border:1px solid var(--line);
  background:linear-gradient(90deg, var(--fill) 0, var(--fill) var(--yuzde), #fff var(--yuzde), #fff 100%);
  text-decoration:none;color:var(--txt);overflow:hidden;
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease, background .4s cubic-bezier(.4,.0,.2,1)
}
.stk-mini-satir:hover{transform:translateY(-1px);box-shadow:0 4px 14px rgba(15,23,42,.07)}
.stk-mini-satir.t-ticari   {--fill:var(--turuncu-bg)} .stk-mini-satir.t-ticari:hover  {border-color:var(--turuncu)}
.stk-mini-satir.t-hammadde {--fill:var(--teal-bg)}    .stk-mini-satir.t-hammadde:hover{border-color:var(--teal)}
.stk-mini-satir.t-mamul    {--fill:var(--mavi-bg)}    .stk-mini-satir.t-mamul:hover   {border-color:var(--mavi)}
.stk-mini-satir.t-yarimamul{--fill:var(--mor-bg)}     .stk-mini-satir.t-yarimamul:hover{border-color:var(--mor)}
.stk-avatar-mini{position:relative;z-index:1;width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:#fff;box-shadow:0 0 0 1px var(--line)}
.stk-mini-satir.t-ticari    .stk-avatar-mini{color:var(--turuncu);box-shadow:0 0 0 1px #f5e1c2}
.stk-mini-satir.t-hammadde  .stk-avatar-mini{color:var(--teal);   box-shadow:0 0 0 1px #a7e8d6}
.stk-mini-satir.t-mamul     .stk-avatar-mini{color:var(--mavi);   box-shadow:0 0 0 1px #bcdcf6}
.stk-mini-satir.t-yarimamul .stk-avatar-mini{color:var(--mor);    box-shadow:0 0 0 1px #d6c8e5}
.stk-mini-orta{position:relative;z-index:1;min-width:0}
.stk-mini-orta .ad{font-size:13px;font-weight:600;line-height:1.3;color:var(--txt);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.stk-mini-orta .alt{font-size:10.5px;color:var(--mut);margin-top:2px}
.stk-mini-sag{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-end;gap:2px;white-space:nowrap}
.stk-mini-sag .tutar{font-family:var(--mono);font-weight:800;font-size:13.5px;line-height:1.15}
.stk-mini-sag .yuzde{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.02em}
.stk-mini-satir.t-ticari    .tutar,.stk-mini-satir.t-ticari    .yuzde{color:var(--turuncu)}
.stk-mini-satir.t-hammadde  .tutar,.stk-mini-satir.t-hammadde  .yuzde{color:var(--teal)}
.stk-mini-satir.t-mamul     .tutar,.stk-mini-satir.t-mamul     .yuzde{color:var(--mavi)}
.stk-mini-satir.t-yarimamul .tutar,.stk-mini-satir.t-yarimamul .yuzde{color:var(--mor)}

/* Gelir / Gider Dağılımı */
.dag-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.dag-kart{border:1px solid var(--line);border-radius:13px;overflow:hidden;background:#fff;display:flex;flex-direction:column}
.dag-baslik{padding:11px 14px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#fff;display:flex;justify-content:space-between;align-items:center;gap:8px}
.dag-baslik.gelir{background:var(--yesil)}
.dag-baslik.gider{background:var(--kirmizi)}
.dag-baslik .top{font-family:var(--mono);font-weight:800;font-size:13px;background:rgba(255,255,255,.18);padding:3px 9px;border-radius:6px;letter-spacing:.02em}
.dag-ust-cubuk{height:4px;background:var(--zemin,#f1f5f9);display:flex}
.dag-ust-cubuk>span{display:block;height:100%}
.dag-ic{padding:5px;flex:1}
.dag-satir{display:grid;grid-template-columns:1fr auto 120px;gap:11px;align-items:center;padding:8px 11px;font-size:12.5px;border-radius:7px}
.dag-satir:hover{background:var(--zemin,#f8fafc)}
.dag-satir .dad{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dag-satir .dtutar{font-family:var(--mono);font-weight:600;text-align:right;font-size:12px}
.dag-satir .dyuzde-wrap{display:flex;align-items:center;gap:8px}
.dag-satir .dyuzde-bar{flex:1;height:6px;border-radius:4px;background:var(--line);overflow:hidden}
.dag-satir .dyuzde-bar>span{display:block;height:100%;border-radius:4px;transition:width .4s ease}
.dag-satir.gelir .dyuzde-bar>span{background:var(--yesil)}
.dag-satir.gider .dyuzde-bar>span{background:var(--kirmizi)}
.dag-satir .dyuzde{font-family:var(--mono);font-size:11px;color:var(--mut2);font-weight:700;min-width:38px;text-align:right}
.dag-bos{padding:22px;color:var(--mut);font-size:12px;text-align:center}
.dag-net{margin-top:0;padding:14px 18px;border-radius:13px;display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line)}
.dag-net.kar{background:var(--yesil-bg);color:var(--yesil);border-color:#cdeadd}
.dag-net.zarar{background:var(--kirmizi-bg);color:var(--kirmizi);border-color:#f6d6d4}
.dag-net .ad{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.dag-net .val{font-family:var(--mono);font-size:20px;font-weight:800}

@media(max-width:760px){.dag-grid{grid-template-columns:1fr}.dag-satir{grid-template-columns:1fr auto 90px;font-size:11.5px}}

/* Kritik stok kompakt liste */
.krit-mini{display:flex;flex-direction:column;gap:7px;max-height:240px;overflow:auto}
.krit-satir{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 11px;border-radius:9px;background:var(--kirmizi-bg);border:1px solid #f6d6d4}
.krit-satir .ad{font-size:12.5px;font-weight:600;color:var(--kirmizi)}
.krit-satir .alt{font-size:10.5px;color:var(--kirmizi);opacity:.85;font-family:var(--mono);margin-top:1px}
.krit-satir a{text-decoration:none;color:inherit;display:block}
.krit-bos{padding:14px;text-align:center;color:var(--yesil);font-weight:600;font-size:13px;background:var(--yesil-bg);border-radius:9px}

/* Tum İşlemler — detaylı tablo (masaüstü) + kart (mobil) */
.akis-tablo{width:100%;border-collapse:separate;border-spacing:0;font-size:12.5px}
.akis-tablo thead td{font-size:10px;color:var(--mut);font-weight:700;letter-spacing:.05em;padding:8px 9px;background:var(--zemin);text-transform:uppercase;border-bottom:1px solid var(--line);white-space:nowrap}
.akis-tablo thead td.sag{text-align:right}
.akis-tablo tbody td{padding:9px;border-bottom:1px solid #f1f5f9;vertical-align:middle}
.akis-tablo tbody tr{transition:background .12s ease}
.akis-tablo tbody tr:hover td{background:rgba(15,23,42,.03)}
.akis-tablo tbody tr.acik td .acik-ic{display:inline-block}
.akis-tablo .ac-ok{display:inline-block;color:var(--mut2);transition:transform .2s ease;font-size:14px;line-height:1}
.akis-tablo tr.acik .ac-ok{transform:rotate(90deg);color:var(--mavi)}
.akis-tablo tr.iptal td{opacity:.55}
.akis-tablo tr.tikla{cursor:pointer}

/* Muhasebe fişler — alta açılır detay */
.fd-acilan{padding:14px 18px 16px;background:var(--zemin,#f8fafc);border-top:1px solid var(--line)}
.fd-acilan-ust{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap;padding:0 2px 10px;border-bottom:1px solid var(--line);margin-bottom:10px}
.fd-acilan-tablo{width:100%;border-collapse:collapse;font-size:12.5px;background:#fff;border:1px solid var(--line);border-radius:9px;overflow:hidden}
.fd-acilan-tablo thead td{font-size:10px;color:var(--mut);font-weight:700;letter-spacing:.05em;padding:7px 10px;background:#fff;text-transform:uppercase;border-bottom:1px solid var(--line)}
.fd-acilan-tablo tbody td{padding:7px 10px;border-bottom:1px solid #f1f5f9}
.fd-acilan-tablo tbody tr:last-child td{border-bottom:0}
.fd-acilan-tablo tfoot td{padding:8px 10px;background:var(--zemin);border-top:2px solid var(--line)}
.fd-acilan-tablo .sag{text-align:right}
.fd-acilan-alt{display:flex;justify-content:flex-end;margin-top:10px}
.durum-pill{font-size:11px;padding:4px 11px;border-radius:6px;font-weight:700}
.durum-pill.ok{background:var(--yesil-bg);color:var(--yesil)}
.durum-pill.hata{background:var(--kirmizi-bg);color:var(--kirmizi)}
.durum-pill.uyari{background:var(--turuncu-bg);color:var(--turuncu)}
.akis-tablo tbody tr.iptal td{opacity:.6;text-decoration:line-through}
.akis-tablo .tar{font-family:var(--mono);font-size:11.5px;color:var(--mut2);white-space:nowrap}
.akis-tablo .belge{font-family:var(--mono);font-weight:600;color:var(--mavi);text-decoration:none;font-size:12px}
.akis-tablo .belge:hover{text-decoration:underline}
.akis-tablo .ack{color:var(--mut2);font-size:11.5px;display:block;margin-top:2px;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.akis-tablo .tut{font-family:var(--mono);font-weight:700;text-align:right;white-space:nowrap}
.mod-rozet{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:6px;font-size:10.5px;font-weight:700;letter-spacing:.02em;white-space:nowrap}
.mod-rozet svg{width:12px;height:12px}
.mod-rozet.m-satis    {background:var(--yesil-bg);color:var(--yesil)}
.mod-rozet.m-alis     {background:var(--turuncu-bg);color:var(--turuncu)}
.mod-rozet.m-muhasebe {background:var(--mavi-bg);color:var(--mavi)}
.mod-rozet.m-bordro   {background:var(--kirmizi-bg);color:var(--kirmizi)}
.mod-rozet.m-uretim   {background:var(--mor-bg);color:var(--mor)}
.mod-rozet.m-stok     {background:var(--teal-bg);color:var(--teal)}
/* mobil kartlar */
.akis-kart{display:none}
@media(max-width:760px){
  .akis-tablo{display:none}
  .akis-kart{display:flex;flex-direction:column;gap:8px}
  .akis-k-satir{display:flex;flex-direction:column;gap:5px;padding:11px;background:#fff;border:1px solid var(--line);border-radius:11px;text-decoration:none;color:var(--txt);border-left:3px solid var(--line)}
  .akis-k-satir.m-satis{border-left-color:var(--yesil)}
  .akis-k-satir.m-alis{border-left-color:var(--turuncu)}
  .akis-k-satir.m-muhasebe{border-left-color:var(--mavi)}
  .akis-k-satir.m-bordro{border-left-color:var(--kirmizi)}
  .akis-k-satir.m-uretim{border-left-color:var(--mor)}
  .akis-k-ust{display:flex;justify-content:space-between;align-items:center;gap:6px}
  .akis-k-orta{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px}
  .akis-k-meta{font-size:10.5px;color:var(--mut);font-family:var(--mono)}
  .akis-k-ack{font-size:11.5px;color:var(--mut2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .akis-k-tut{font-family:var(--mono);font-weight:700;font-size:13px}
}

/* eski akış stil (geriye dönük) — color-strip kalsın */
.akis .akis-satir{border-radius:9px;padding:9px 11px;margin-bottom:2px;border-bottom:0;border-left:3px solid transparent}
.akis .akis-satir:hover{background:var(--zemin)}
.akis .akis-satir.ton-yesil{border-left-color:var(--yesil)}
.akis .akis-satir.ton-turuncu{border-left-color:var(--turuncu)}
.akis .akis-satir.ton-mor{border-left-color:var(--mor)}
.akis .akis-satir.ton-mavi{border-left-color:var(--mavi)}
.akis .akis-satir.ton-pembe{border-left-color:var(--kirmizi)}
.akis .akis-satir.ton-indigo{border-left-color:var(--mor)}

@media(max-width:760px){
  .bar-grafik-pro{height:130px;gap:8px}
  .bar-grafik-pro .bg-bar{max-width:18px}
  .fat-mini .alt{max-width:130px}
}

/* ===================== Modernlestirme: hover + transition seridi ===================== */
.kpi-card{transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease; cursor:default}
.kpi-card:hover{transform:translateY(-2px); box-shadow:0 6px 18px rgba(15,23,42,.08)}
.kpi-card:has(.kpi-link:hover){border-color:var(--mavi)}
.fk{transition:transform .15s ease, box-shadow .15s ease}
.fk:hover{transform:translateY(-2px); box-shadow:0 6px 18px rgba(15,23,42,.07)}
.nav-card{transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease, background .15s ease}
.tur-kart{transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease}
.cari-tablo tbody tr{transition:background .12s ease}
.cari-tablo tbody tr:not(.grup-satir):hover td{background:var(--zemin,#f8fafc)}
.akis-satir{transition:background .12s ease, transform .12s ease}
.akis-satir:hover{transform:translateX(2px)}
.bar-col .bar{transition:opacity .2s ease, transform .2s ease}
.bar-col:hover .bar{opacity:.85; transform:scaleY(1.02)}
.bar-col:hover .bar-deger{color:var(--mavi)}
.deger-bar{height:10px;border-radius:6px;background:var(--zemin,#f1f5f9);overflow:hidden;margin-top:2px}
.deger-bar>span{display:block;height:100%;border-radius:6px;transition:width .35s ease}
/* tablolarda kompakt satir hover ortak */
table tbody tr:not(.grup-satir):not(.fatura-iptal):hover>td{background:rgba(15,23,42,.025)}

/* ===================== Fatura DETAY (modern) ===================== */
.fd-grid{display:grid;grid-template-columns:1fr 290px;gap:16px;align-items:start;margin-top:12px}
.fd-yan{display:flex;flex-direction:column;gap:14px;position:sticky;top:12px}
.fd-blok{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px}
.fd-blok h3{font-size:10.5px;color:var(--mut);font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin:0 0 12px;padding-bottom:9px;border-bottom:1px solid var(--line)}
.fd-aksiyon{display:flex;flex-direction:column;gap:7px}
.fd-aksiyon>*{justify-content:flex-start !important;width:100%;text-align:left;padding:9px 12px !important;font-size:13px;display:inline-flex;align-items:center;gap:8px}
.fd-aksiyon .ayrac{height:1px;background:var(--line);margin:5px 0;padding:0 !important}
.fd-aksiyon .pasif{background:var(--zemin);color:var(--mut2);cursor:not-allowed;border-color:var(--line)}
.fd-aksiyon .pasif:hover{background:var(--zemin);color:var(--mut2)}
.fd-bag{display:flex;flex-direction:column;gap:3px}
.fd-bag a,.fd-bag .ko{display:flex;align-items:center;gap:9px;padding:9px 10px;border-radius:8px;font-size:13px;color:var(--txt);text-decoration:none;justify-content:space-between}
.fd-bag a:hover{background:var(--zemin)}
.fd-bag .ko{color:var(--mut)}
.fd-bag .ic{display:flex;align-items:center;gap:9px}
.fd-bag .ok-sag{color:var(--mut2);font-family:var(--mono);font-size:11px}

.fd-ust{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px;display:flex;align-items:flex-start;gap:20px;flex-wrap:wrap}
.fd-ust-sol{flex:1;min-width:220px}
.fd-no{font-family:var(--mono);font-size:22px;font-weight:700;color:var(--txt);margin:0 0 6px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;line-height:1.2}
.fd-no .fat-rozet{font-size:10px}
.fd-tema-yesil .fd-no{color:#0f5132} .fd-tema-turuncu .fd-no{color:#7c3a00}
.fd-cari-ozet{font-size:14px;color:var(--mut2);margin-top:6px;line-height:1.45}
.fd-cari-ozet .ad{color:var(--txt);font-weight:600;font-size:15px;display:block}
.fd-cari-ozet .meta{font-size:12px;color:var(--mut)}
.fd-ust-sag{text-align:right;min-width:180px;display:flex;flex-direction:column;align-items:flex-end;gap:4px}
.fd-tutar{font-family:var(--mono);font-size:26px;font-weight:700;line-height:1}
.fd-tutar .pb{font-size:13px;color:var(--mut);margin-left:4px;font-weight:500}
.fd-tutar-lbl{font-size:10px;color:var(--mut);font-weight:600;text-transform:uppercase;letter-spacing:.05em}

.fd-tarih-serit{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:14px 0}
.fd-tk{background:#fff;border:1px solid var(--line);border-radius:11px;padding:11px 13px}
.fd-tk .l{font-size:10px;color:var(--mut);font-weight:600;text-transform:uppercase;letter-spacing:.05em}
.fd-tk .v{font-family:var(--mono);font-size:14px;font-weight:600;margin-top:3px;color:var(--txt)}
.fd-tk.uyar{background:var(--kirmizi-bg);border-color:rgba(220,38,38,.25)} .fd-tk.uyar .v{color:var(--kirmizi)}
.fd-tk.iyi{background:var(--yesil-bg);border-color:rgba(22,163,74,.25)}    .fd-tk.iyi .v{color:var(--yesil)}

.fd-cari-kart{display:flex;gap:14px;align-items:center;margin:0 0 14px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px}
.fd-avatar{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;flex-shrink:0;font-family:var(--mono)}
.fd-cari-bilgi{flex:1;min-width:0}
.fd-cari-bilgi .ad{font-size:15px;font-weight:600;color:var(--txt);margin:0 0 3px}
.fd-cari-bilgi .satir{font-size:12px;color:var(--mut);display:flex;flex-wrap:wrap;gap:14px}
.fd-cari-bilgi .satir span strong{font-weight:600;color:var(--mut2)}

.fd-not{background:#fff;border:1px dashed var(--line);border-radius:12px;padding:10px 13px;margin-top:12px;font-size:13px;color:var(--mut2)}
.fd-not .l{font-size:10px;color:var(--mut);text-transform:uppercase;font-weight:600;letter-spacing:.04em;margin-bottom:3px}

.fd-toplam-panel{display:flex;justify-content:flex-end;padding:14px 18px;background:var(--zemin);border:1px solid var(--line);border-radius:12px;margin-top:14px}
.fd-toplam-ic{min-width:280px}
.fd-toplam-ic .satir{display:flex;justify-content:space-between;padding:4px 0;font-size:13px;color:var(--mut2)}
.fd-toplam-ic .satir.genel{padding-top:9px;margin-top:6px;border-top:1px solid var(--line);font-size:15px;font-weight:700;color:var(--txt)}
.fd-toplam-ic .mono{font-family:var(--mono)}

@media(max-width:900px){.fd-grid{grid-template-columns:1fr}.fd-yan{position:static}}
@media print{
  .fd-yan,.fd-aksiyon,.fd-bag{display:none !important}
  .fd-grid{display:block}.fd-blok{border:0;padding:0}
  .fd-ust,.fd-cari-kart,.fd-tk,.fd-toplam-panel{border:1px solid #ccc !important;box-shadow:none}
}

/* ===================== YAZDIRMA (print / PDF) ===================== */
.yazdir-baslik{display:none}
@media print{
  .yan,.alt,.ust,.rapor-arac,.rapor-butonlar,#mesaj{display:none !important}
  .kabuk,.govde{display:block}
  main{padding:0}
  .panel{border:0;box-shadow:none;padding:0;margin:0}
  .yazdir-baslik{display:block;margin-bottom:12px}
  .yazdir-baslik h1{font-size:18px;margin:0 0 4px}
  .yazdir-baslik .alt-bilgi{font-size:12px;color:#444}
  table{font-size:11px;page-break-inside:auto}
  tr{page-break-inside:avoid}
  thead{display:table-header-group}
  th,td{border-bottom:1px solid #ccc}
  h2{font-size:13px}
  @page{margin:14mm}
}

/* ===================== RESPONSIVE (mobil) ===================== */
@media(max-width:760px){
  /* Yatay tasma guvenligi */
  html,body{overflow-x:hidden}

  /* === SOL MENU → HAMBURGER CEKMECE (off-canvas, sabit header altinda) === */
  .yan{
    position:fixed;top:48px;left:0;bottom:0;height:auto;width:80vw;max-width:300px;z-index:70;
    flex:0 0 auto;display:flex;flex-direction:column;
    transform:translateX(-100%);transition:transform .26s cubic-bezier(.4,0,.2,1);
    box-shadow:2px 0 24px rgba(15,23,42,.18);will-change:transform
  }
  body.cekmece-acik .yan{transform:translateX(0)}
  .yan .marka{display:none}            /* marka ust barda gosteriliyor */
  .yan nav{height:auto;flex:1;min-height:0}   /* modul butonlari ustte, kayar */
  /* Cekmece ALT kismi: sirket/PB/dil seciciler buraya tasinir (app.js) — en altta */
  /* Şirket / Görünüm / Dil — ÜST ÜSTE (her satır tam genişlik; etiket üstte, segment kontrol altında eşit yayılır) */
  .yan-ayar{display:flex;flex-direction:column;gap:11px;padding:11px 12px;border-top:1px solid var(--line);background:#fff}
  .yan-ayar:empty{display:none}
  .yan-ayar .ust-alan{width:100%;min-width:0;display:flex;flex-direction:column;gap:5px;font-size:11px;color:var(--mut)}
  .yan-ayar .ust-alan span.mut{display:block;font-weight:700;text-transform:uppercase;letter-spacing:.03em;font-size:10px}
  .yan-ayar .ust-alan select{width:100%;max-width:none;padding:9px 10px;font-size:13px;border:1px solid var(--line);border-radius:9px;background:#fff;-webkit-appearance:none;appearance:none}
  /* Segment seçici (görünüm/dil) tam genişlik, butonlar eşit pay + dokunmatik boy */
  .yan-ayar .seg-mini{width:100%;padding:3px;border-radius:10px}
  .yan-ayar .seg-mini button{flex:1;padding:9px 4px;font-size:13px;border-radius:8px}
  /* Perde (backdrop) — header altindan baslar */
  .menu-perde{display:block;position:fixed;top:48px;left:0;right:0;bottom:0;z-index:65;background:rgba(15,23,42,.42);
    opacity:0;visibility:hidden;transition:opacity .26s,visibility .26s}
  body.cekmece-acik .menu-perde{opacity:1;visibility:visible}
  body.cekmece-acik{overflow:hidden}

  /* === APP UST BARI: SABIT (fixed — sticky bazi tarayicilarda body overflow ile kayiyordu) === */
  header.ust{position:fixed;top:0;left:0;right:0;z-index:80}
  /* === hamburger + baslik (sol), bildirim + avatar (sag) === */
  .hamburger{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;
    border:none;background:transparent;color:var(--txt);border-radius:10px;cursor:pointer;flex:0 0 auto;margin-left:-4px}
  .hamburger:active{background:var(--zemin)}
  .hamburger .ham-x{display:none}
  body.cekmece-acik .hamburger .ham-ac{display:none}
  body.cekmece-acik .hamburger .ham-x{display:block}
  .ust-app-baslik{display:block;font-weight:800;font-size:16px;color:var(--lacivert);letter-spacing:.3px;flex:0 0 auto}
  /* Seciciler ust bardan kalkar (cekmeceye tasinir); bildirim+avatar kalir */
  .ust .ust-alan{display:none}
  .alt{
    display:flex;position:fixed;left:0;right:0;bottom:0;height:60px;z-index:30;
    background:#fff;border-top:1px solid var(--line);
    justify-content:space-between;align-items:stretch;overflow-x:auto;
    padding:0 4px;box-shadow:0 -2px 8px rgba(15,23,42,.06)
  }
  .alt a{
    flex:1 0 auto;min-width:46px;display:flex;flex-direction:column;align-items:center;justify-content:center;
    gap:3px;color:#64748b;text-decoration:none;font-size:10px;font-weight:500;padding:6px 4px;white-space:nowrap
  }
  /* "+ Yeni" birincil aksiyon → yüzen buton (FAB); orijinal #yeniBtn mobilde gizli */
  #yeniBtn{display:none!important}
  .mobil-fab{display:inline-flex;align-items:center;gap:7px;position:fixed;right:14px;bottom:72px;z-index:40;
    background:var(--lacivert);color:#fff;border:none;border-radius:99px;padding:13px 17px;font-size:13.5px;font-weight:600;
    box-shadow:0 6px 20px rgba(37,99,235,.42);cursor:pointer;max-width:calc(100vw - 28px)}
  .mobil-fab span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mobil-fab:active{transform:scale(.96)}
  .alt a svg{width:21px;height:21px}
  .alt a.aktif{color:var(--lacivert)}

  /* Govde: sabit header (48) + alt menu icin bosluk */
  main{padding:64px 14px 80px}
  h1{font-size:18px}

  /* Ince ust bar sadelesir: etiketler gizli, secimler daralir, bar kendi icinde kayar */
  .ust{height:48px;padding:0 10px;overflow-x:auto}
  /* Modul kokpit basligi (main icindeki .ust) sabit yukseklikten muaf — sarar, kirpilmaz */
  main .ust{height:auto;overflow:visible;padding:10px 14px;border-radius:12px}
  /* Aksiyon alani 2. satira tam genislikte sarar; kebab sag kenara oturur (menu ekranda kalir) */
  main .ust .ust-aksiyon{flex:1 1 100%;justify-content:flex-end}
  /* Sayfa basligi (sayfaUst): uzun baslik + aksiyon CAKISMASIN → aksiyonlar 2. satira tam genislik */
  .sayfa-ust{flex-wrap:wrap;gap:10px 12px}
  .sayfa-ust-baslik{font-size:16px}
  .sayfa-ust-sag:not(:empty){flex:1 1 100%;justify-content:flex-end;flex-wrap:wrap}
  .ust-sag{gap:8px;min-width:0}
  .ust-alan{min-width:0}
  .ust-alan span.mut{display:none}
  .ust-sag select{max-width:104px;font-size:12px;padding:5px 6px;text-overflow:ellipsis}
  .kullanici{padding-left:8px}
  .kullanici .kadi{display:none}
  .kur-not{display:none}

  /* Kartlar / iki kolon: tek/iki sutuna iner. minmax(0,1fr) = icerik tasmasini onler */
  .kartlar{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .kart{min-width:0}
  .kart .deger{font-size:19px;overflow-wrap:anywhere}
  /* HIZLI ISLEMLER → yatay kayan ikon seridi (app): kenardan kenara, snap */
  .hizli-grid{display:flex;gap:6px;overflow-x:auto;margin:0 -14px 14px;padding:2px 14px 8px;
    -webkit-overflow-scrolling:touch;scrollbar-width:none}
  .hizli-grid::-webkit-scrollbar{display:none}
  .hizli-kart{flex:0 0 auto;width:76px;border:0;background:transparent;padding:2px 2px 0;gap:7px;
    transition:transform .12s ease}
  .hizli-kart:active{transform:scale(.94)}
  .hizli-kart .hizli-ic{width:54px;height:54px;border-radius:17px}
  .hizli-kart .hizli-ic svg{width:24px;height:24px}
  .hizli-kart .ad{font-size:11.5px;font-weight:600}

  /* GENEL BILGILER (KPI / fk / tür) → yatay kayan kartlar, sonraki karttan ucu gorunur */
  .kpi-grid,.fk-grid,.tur-grid{display:flex;gap:10px;overflow-x:auto;margin:0 -14px 12px;padding:2px 14px 10px;
    -webkit-overflow-scrolling:touch;scrollbar-width:none}
  .kpi-grid::-webkit-scrollbar,.fk-grid::-webkit-scrollbar,.tur-grid::-webkit-scrollbar{display:none}
  .kpi-card,.fk{flex:0 0 auto;width:60%;min-width:172px;max-width:220px;min-height:auto}
  .tur-grid .tur-kart{flex:0 0 auto;width:72%;min-width:210px;max-width:250px}
  .kpi-card{padding:14px}
  .kpi-deger{font-size:22px}
  /* Yatay serit kaydirma noktalari (dots) — aktif nokta pill olur */
  .serit-dots{display:flex;justify-content:center;align-items:center;gap:6px;margin:-2px 0 14px}
  .serit-dots span{width:6px;height:6px;border-radius:50%;background:var(--line);transition:width .2s,background .2s;cursor:pointer}
  .serit-dots span.aktif{background:var(--mavi);width:18px;border-radius:99px}

  /* RAPORLAR: rapor galerisi → yatay kayan kompakt kartlar (hizli islemler gibi) */
  .rg-grid{display:flex;gap:8px;overflow-x:auto;margin:0 -14px 12px;padding:2px 14px 8px;
    -webkit-overflow-scrolling:touch;scrollbar-width:none}
  .rg-grid::-webkit-scrollbar{display:none}
  .rg-kart{flex:0 0 auto;width:92px;padding:11px 6px 9px;gap:7px}
  .rg-kart .rg-ic{width:36px;height:36px}
  .rg-kart>span:last-child{font-size:11px}
  /* === FILTRE = KATLANIR MODERN PANEL: ust bar (Filtre + ozet + chevron); kapaliyken sadece bar + Getir === */
  .rapor-kontrol{padding:10px 12px}
  .rk-bas{display:flex;align-items:center;gap:11px;width:100%;background:transparent;border:0;padding:2px 0;cursor:pointer;text-align:left}
  .rk-bas .rk-ik{width:34px;height:34px;flex:0 0 auto;border-radius:10px;background:var(--mavi-bg);color:var(--mavi);display:flex;align-items:center;justify-content:center}
  .rk-bas .rk-mid{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
  .rk-bas .rk-t{font-size:13px;font-weight:600;color:var(--txt)}
  .rk-bas .rk-ozet{font-size:11px;color:var(--mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
  .rk-bas .rk-ok{transition:transform .2s ease;color:var(--mut2);flex:0 0 auto}
  .rapor-kontrol.acik .rk-bas .rk-ok{transform:rotate(180deg)}
  .rapor-kontrol .arac{flex-direction:column;align-items:stretch;gap:9px;margin-top:11px}
  .rapor-kontrol .arac>span[style]{display:none}
  .rapor-kontrol .arac #getir{width:100%;justify-content:center}
  /* KAPALI durum: filtre alanlari + export gizli; sadece bar + Getir gorunur */
  .rapor-kontrol:not(.acik) .arac{margin-top:10px}
  .rapor-kontrol:not(.acik) .arac .flt{display:none}
  .rapor-kontrol:not(.acik) .rapor-aks{display:none}
  .rapor-aks{margin-top:11px;padding-top:11px}
  .rapor-aks .pbnot{margin-left:0}

  /* ===== RAPOR CIKTISI MOBIL: liste raporlari KART, mali tablolar temiz LISTE (app.js r-kart/r-liste ekler) ===== */

  /* --- LISTE RAPORU → MODERN KART (mizan/stok/defter): baslik(kod+ad) sol, ana sayi buyuk sag, digerleri rozet --- */
  #raporAlan table.r-kart{display:block;border:0;background:transparent;width:100%}
  #raporAlan table.r-kart thead{display:none}
  #raporAlan table.r-kart tbody{display:block}
  #raporAlan table.r-kart tr{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 8px;background:#fff;border:1px solid var(--line);border-radius:13px;margin-bottom:9px;padding:12px 14px}
  #raporAlan table.r-kart td{display:inline-flex;align-items:baseline;gap:5px;border:0;padding:0;font-size:11px;color:var(--mut);overflow-wrap:anywhere}
  #raporAlan table.r-kart td::before{content:attr(data-label);color:var(--mut2);font-weight:600;text-transform:uppercase;font-size:9.5px;letter-spacing:.3px}
  #raporAlan table.r-kart td:empty{display:none}
  #raporAlan table.r-kart tr::after{content:"";flex-basis:100%;height:0;order:1}   /* basliktan sonra satir kir */
  #raporAlan table.r-kart td:first-child{order:0;font-family:var(--mono);font-size:12px;color:var(--mut);flex:0 0 auto}
  #raporAlan table.r-kart td:first-child::before{display:none}
  #raporAlan table.r-kart td.kk-ad{order:0;font-size:14.5px;font-weight:600;color:var(--txt);flex:1 1 40%}
  #raporAlan table.r-kart td.kk-ad::before{display:none}
  #raporAlan table.r-kart td:last-child{order:0;margin-left:auto;flex-direction:column;align-items:flex-end;gap:1px;font-family:var(--mono);font-size:17px;font-weight:700;color:var(--lacivert)}
  #raporAlan table.r-kart td:last-child::before{font-size:9px;color:var(--mut2);font-weight:600}
  #raporAlan table.r-kart td:last-child.neg{color:var(--kirmizi)}
  #raporAlan table.r-kart td:not(:first-child):not(:last-child):not(.kk-ad){order:2;background:var(--zemin);padding:2px 9px;border-radius:99px;font-size:10.5px}
  #raporAlan table.r-kart tfoot{display:block}
  #raporAlan table.r-kart tfoot tr{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px 12px;background:var(--zemin);border-color:var(--line)}
  #raporAlan table.r-kart tfoot td{font-family:var(--mono);font-weight:700;font-size:12px;color:var(--txt)}
  #raporAlan table.r-kart tfoot td::before{display:none}

  /* --- MALI TABLO → TEMIZ HIYERARSIK LISTE (gelir/bilanco): girinti + ara-toplam vurgu --- */
  #raporAlan table.r-liste{display:block;border:1px solid var(--line);border-radius:13px;overflow:hidden;background:#fff;width:100%}
  #raporAlan table.r-liste thead{display:none}
  #raporAlan table.r-liste tbody{display:block}
  #raporAlan table.r-liste tr{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;border-bottom:1px solid #f4f6f8}
  #raporAlan table.r-liste td{display:block;border:0;padding:0;font-size:13px;color:var(--txt);overflow-wrap:anywhere}
  #raporAlan table.r-liste td::before{display:none}
  #raporAlan table.r-liste td:first-child{flex:1;min-width:0;color:var(--mut);text-align:left}
  #raporAlan table.r-liste td.sag,#raporAlan table.r-liste td.sayi,#raporAlan table.r-liste td:last-child{flex:0 0 auto;font-family:var(--mono);text-align:right;color:var(--txt);white-space:nowrap}
  #raporAlan table.r-liste td.neg{color:var(--kirmizi)}
  #raporAlan table.r-liste tr.satir-grup,#raporAlan table.r-liste tr.satir-toplam,#raporAlan table.r-liste tr.satir-sonuc,#raporAlan table.r-liste tr.satir-arat{background:var(--zemin)}
  #raporAlan table.r-liste tr.satir-grup td,#raporAlan table.r-liste tr.satir-toplam td,#raporAlan table.r-liste tr.satir-sonuc td,#raporAlan table.r-liste tr.satir-arat td{font-weight:700;color:var(--txt)}
  #raporAlan table.r-liste tfoot{display:block}
  #raporAlan table.r-liste tfoot tr{display:flex;justify-content:space-between;background:var(--zemin);font-weight:700;border-top:2px solid var(--line);padding:10px 14px}
  #raporAlan table.r-liste tfoot td{display:block;border:0;padding:0;font-family:var(--mono)}
  #raporAlan table.r-liste tfoot td::before{display:none}

  /* --- DRILL detay satiri (kart/liste icinde acilir): mangle olmasin; nested tablo kendi kart/listesini alir --- */
  #raporAlan table.r-kart tr.detay-satir,#raporAlan table.r-liste tr.detay-satir{display:block;background:transparent;border:0;border-radius:0;margin:-2px 0 9px;padding:0}
  #raporAlan table.r-kart tr.detay-satir>td,#raporAlan table.r-liste tr.detay-satir>td{display:block;background:transparent;border:0;padding:0;width:100%}
  #raporAlan table.r-kart tr.detay-satir>td::before,#raporAlan table.r-liste tr.detay-satir>td::before{display:none}
  #raporAlan .detay-satir .fis-detay{background:var(--zemin);border:1px solid var(--line);border-left:3px solid var(--mavi);border-radius:11px;padding:9px 10px}
  #raporAlan .detay-satir .fis-detay table{margin:0}
  #raporAlan .detay-satir .fis-detay table.r-kart tr{background:#fff;padding:10px 12px}
  /* yevmiye fis detayinda uzun aciklama (kk-ad) basligi kendi satirina insin, ana sayiyla sikismasin */
  #raporAlan .detay-satir .fis-detay table.r-kart td.kk-ad{flex:1 1 100%;order:2;font-size:12.5px;font-weight:600;margin-top:1px}

  /* cari ekstre mobil: masaüstü tablo gizli → banka-ekstresi kartları + gradient özet; mini-kpi & bilgiKart bakiye gizli */
  #ekstreTablo{display:none}
  .ek-hareket-mob{display:flex;flex-direction:column;gap:8px}
  #ekOzetMob{display:block;margin-bottom:14px}
  #miniKpi{display:none}
  #bilgiKart{display:none}   /* iletişim bilgisi cari detayında; ekstrede odak bakiye+hareketler */

  /* /cari list kartları: tür renkli sol kenar (ekstre/fatura kartlarıyla görsel dil birliği) */
  .cari-satir{border-left:3px solid var(--line)}
  .cari-satir.tur-musteri{border-left-color:var(--mavi)}
  .cari-satir.tur-tedarikci{border-left-color:var(--turuncu)}
  .cari-satir.tur-ortak{border-left-color:var(--mor)}
  .cari-satir.tur-personel{border-left-color:var(--teal)}

  .nav-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .pano-kolon{grid-template-columns:1fr;gap:14px}
  .iki-kolon{grid-template-columns:1fr}
  .panel{padding:14px}

  /* Formlar: alanlar tam genislik, alt alta */
  .arac{gap:10px}
  .arac label{display:flex;flex-direction:column;align-items:stretch;gap:4px;width:100%;font-size:13px}
  .arac input,.arac select,.arac label input,.arac label select{width:100%}

  /* Tablolar: kart bicimi (yatay kayma yok). data-label app.js'te eklenir.
     display:block sart: display:table kalsa uzun hucre main'i genisletip tasmaya yol acar. */
  main table{display:block;width:100%;border:0;font-size:13px}
  main table tbody{display:block;width:100%}
  main table thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
  main table tr{display:block;background:#fff;border:1px solid var(--line);border-radius:10px;margin-bottom:10px;padding:6px 12px}
  main table td{display:flex;justify-content:space-between;align-items:center;gap:12px;text-align:right;padding:7px 0;border:0;border-bottom:1px solid #f1f5f9;min-width:0;overflow-wrap:anywhere}
  main table tr td:last-child{border-bottom:0}
  main table td::before{content:attr(data-label);color:var(--mut);font-weight:600;text-transform:uppercase;font-size:11px;letter-spacing:.3px;text-align:left;flex:0 0 auto}
  main table td input,main table td select{width:auto;max-width:62%}
  main table tfoot tr{background:#f8fafc}

  /* --- MOBIL MINI-KART (MERKEZI): islem/belge listeleri icin yapilandirilmis kart.
     Kullanim: <table class="mobil-kart"> + hucrelerde data-rol="baslik|durum|aciklama|alt|tutar".
     Duzen: ust = baslik(sol) + durum(sag), orta = aciklama, alt = tarih/tip(sol) + tutar(sag). --- */
  main table.mobil-kart thead{display:none}
  main table.mobil-kart tr{display:grid;grid-template-columns:1fr auto;gap:1px 10px;align-items:start;
    padding:11px 13px 11px 14px;border-radius:11px;border-left:4px solid transparent}
  /* Renkli sol serit (kesin=yesil, taslak=turuncu) — referans mobil m-fis */
  main table.mobil-kart tr.serit-yesil{border-left-color:var(--yesil)}
  main table.mobil-kart tr.serit-turuncu{border-left-color:var(--turuncu)}
  main table.mobil-kart tr.serit-mavi{border-left-color:var(--mavi)}
  main table.mobil-kart tr.serit-kirmizi{border-left-color:var(--kirmizi)}
  main table.mobil-kart td{display:block;padding:0;border:0;text-align:left;overflow-wrap:anywhere}
  main table.mobil-kart td::before{display:none}
  main table.mobil-kart td[data-rol="baslik"]{grid-column:1;grid-row:1;font-family:var(--mono);font-weight:700;font-size:13px;color:#334155}
  main table.mobil-kart td[data-rol="durum"]{grid-column:2;grid-row:1;justify-self:end}
  main table.mobil-kart td[data-rol="aciklama"]{grid-column:1 / -1;grid-row:2;font-size:13px;color:var(--txt);margin-top:3px}
  main table.mobil-kart td[data-rol="alt"]{grid-column:1;grid-row:3;font-size:12px;color:var(--mut);margin-top:4px}
  main table.mobil-kart td[data-rol="altsag"]{grid-column:2;grid-row:3;justify-self:end;font-size:12px;color:var(--mut);margin-top:4px}
  main table.mobil-kart td[data-rol="tutar"]{grid-column:2;grid-row:3;justify-self:end;font-family:var(--mono);font-variant-numeric:tabular-nums;font-weight:700;font-size:13px;margin-top:4px}
  main table.mobil-kart td:empty{display:none}
  main table.mobil-kart td.ac-ok-cell{display:none}
  /* Genisleyen detay satiri mini-kart grid'ine girmez: tam genislik blok (ic tablo generic kart olur) */
  main table.mobil-kart tr.detay-satir{display:block;padding:0;border:0;background:transparent}
  main table.mobil-kart tr.detay-satir>td{display:block;grid-column:1/-1;padding:0}

  /* --- Giris formu mobil: her satir mini-kart + yapiskan kaydet seridi --- */
  .ust-form{gap:10px}
  .ust-form .alan{width:100%!important;flex:1 1 100%!important}
  .satir-baslik{display:none}
  .satir-grid{grid-template-columns:1fr 1fr!important;gap:9px!important;background:#fff;border:1px solid var(--line);
    border-radius:12px;padding:12px 12px 10px;margin-bottom:10px;position:relative}
  .satir-grid:hover{background:#fff}
  .satir-grid .secim-btn,.satir-grid .sacik{grid-column:1/-1}
  .satir-grid .cfa{display:none}
  .satir-grid .satir-sil{position:absolute;top:9px;right:9px}
  .toplam-serit{position:sticky;bottom:64px;z-index:6;background:#fff;margin:14px -14px -14px;padding:12px 14px;
    border-top:1px solid var(--line);box-shadow:0 -4px 16px rgba(15,23,42,.08);border-radius:0}
  .toplam-serit .btn-ana,.toplam-serit .btn-cizgi{flex:1;justify-content:center}

  /* Secim modali mobilde alttan tam genislik */
  .modal-bg{padding:0;align-items:flex-end}
  .modal{max-width:none;max-height:88vh;border-radius:18px 18px 0 0}
  .modal.genis{max-width:none}

  /* Mobilde gizlenecek tablo kolonlari (cari: telefon/alacak/borc/menu) */
  .gizle-mobil{display:none!important}
  /* Tur sekmeleri mobilde yatay kayar */
  .sekmeler{flex-wrap:nowrap;overflow-x:auto;padding-bottom:3px}
  .sekme{white-space:nowrap}
  /* fk kartlari mobilde 2 sutun */
  .fk-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ortak-grid{grid-template-columns:1fr}
}

/* ============================================================
   MODERN UYUMLULUK KATMANI (kasa/banka modülü ajan sayfaları)
   Bootstrap-vari sınıfları uygulama tasarım sistemine eşler.
   ============================================================ */

/* --- Kart / panel --- */
.card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:0;margin-bottom:16px;box-shadow:0 1px 2px rgba(15,23,42,.04);overflow:hidden}
.card>.card-header{padding:13px 16px;border-bottom:1px solid var(--line);font-weight:700;font-size:13.5px;color:var(--txt);background:#fff;display:flex;align-items:center;justify-content:space-between;gap:10px}
.card>*:not(.card-header){padding-left:16px;padding-right:16px}
.card>*:last-child{padding-bottom:14px}
.card>.card-header{padding-left:16px;padding-right:16px}
.kart{background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 1px 2px rgba(15,23,42,.04)}

/* --- Araç çubuğu --- */
.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:6px 0 16px}

/* --- Tablolar (data-table / tbl / tablo → cari-tablo görünümü) --- */
.data-table,table.tbl,table.tablo{width:100%;border-collapse:collapse;font-size:12.5px;background:#fff}
.data-table thead th,table.tbl thead th,table.tablo thead th,
.data-table thead td,table.tbl thead td,table.tablo thead td{font-size:10px;color:#94a3b8;font-weight:600;letter-spacing:.05em;padding:9px 14px;background:#fafbfc;text-transform:uppercase;border-bottom:1px solid #f1f5f9;text-align:left}
.data-table tbody td,table.tbl tbody td,table.tablo tbody td{padding:8px 14px;border-top:1px solid #f1f5f9;color:#475569;line-height:1.4}
.data-table tbody tr,table.tbl tbody tr,table.tablo tbody tr{transition:background .12s ease}
.data-table tbody tr:hover>td,table.tbl tbody tr:hover>td,table.tablo tbody tr:hover>td{background:rgba(15,23,42,.025)}
.tbl-bos,.bos-satir{text-align:center;color:var(--mut);padding:22px;font-size:13px}
.data-table code,table.tbl code,table.tablo code{font-family:var(--mono);font-size:11.5px;color:var(--mavi);background:var(--mavi-bg);padding:1px 6px;border-radius:6px}
tr.row-eslesti>td{background:var(--yesil-bg)!important}
tr.row-acik>td{background:var(--turuncu-bg)!important}

/* --- Butonlar --- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 15px;border-radius:10px;border:1px solid transparent;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;text-decoration:none;line-height:1.2;transition:background .15s,border-color .15s,color .15s}
.btn-primary{background:var(--lacivert);color:#fff;border-color:var(--lacivert)}
.btn-primary:hover{background:var(--lacivert-koyu);border-color:var(--lacivert-koyu)}
.btn-secondary{background:var(--zemin);color:var(--txt);border-color:var(--line)}
.btn-secondary:hover{border-color:var(--mavi);color:var(--mavi)}
.btn-outline{background:#fff;color:var(--txt);border-color:var(--line)}
.btn-outline:hover{border-color:var(--mavi);color:var(--mavi)}
.btn-outline-danger{background:#fff;color:var(--kirmizi);border-color:rgba(220,38,38,.35)}
.btn-outline-danger:hover{background:var(--kirmizi-bg)}
.btn-tehlike{background:var(--kirmizi);color:#fff;border-color:var(--kirmizi)}
.btn-tehlike:hover{background:#b91c1c}
.btn-sm,.btn-kucuk{padding:4px 10px;font-size:11.5px;border-radius:8px}
.btn-kucuk{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);background:#fff;color:var(--txt);cursor:pointer;font-weight:600}
.btn-kucuk:hover{border-color:var(--mavi);color:var(--mavi)}
.btn-kucuk-tehlike{border-color:rgba(220,38,38,.35);color:var(--kirmizi)}
.btn-kucuk-tehlike:hover{background:var(--kirmizi-bg)}
.esle-btn{padding:3px 9px;font-size:11px;border-radius:7px;border:1px solid var(--mavi);background:var(--mavi-bg);color:var(--mavi);cursor:pointer;font-weight:600}
.esle-btn:hover{background:var(--mavi);color:#fff}
.btn-close{width:30px;height:30px;border-radius:8px;border:1px solid var(--line);background:#fff;color:var(--mut);cursor:pointer;font-size:16px;line-height:1;display:inline-flex;align-items:center;justify-content:center}
.btn-close:hover{border-color:var(--kirmizi);color:var(--kirmizi)}

/* --- Form --- */
.form-group{margin-bottom:12px}
.form-group>label,.form-etiket{display:block;font-size:12px;color:var(--mut);font-weight:600;margin-bottom:5px}
.form-row{display:grid;gap:12px}
.form-control,.form-alan{width:100%;padding:9px 11px;border:1px solid var(--line);border-radius:9px;font-size:13.5px;font-family:inherit;background:#fff;color:var(--txt)}
.form-control:focus,.form-alan:focus{outline:none;border-color:var(--mavi);box-shadow:0 0 0 3px var(--mavi-bg)}
textarea.form-control,textarea.form-alan{resize:vertical}

/* --- Modal (overlay/backdrop/box/header/govde/footer) --- */
.modal-overlay,.modal .modal-backdrop,.modal-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.45);z-index:80}
.modal-overlay{display:flex;align-items:flex-start;justify-content:center;padding:7vh 16px 16px}
.modal-box,.modal-kutu{position:relative;background:#fff;border-radius:16px;width:100%;max-width:540px;max-height:84vh;display:flex;flex-direction:column;box-shadow:0 24px 60px rgba(15,23,42,.25);z-index:1;overflow:hidden}
/* Bootstrap-vari STANDALONE .modal (overlay+box ayrı, display ile açılır — ör. #oneriModal) */
.modal:not(.modal-bg){position:fixed;inset:0;z-index:80;align-items:flex-start;justify-content:center;padding:7vh 16px 16px}
.modal:not(.modal-bg)[style*="flex"]{display:flex}
/* App deseni .modal-bg > .modal — yukarıdaki standalone kuralının sızıntısını geri al (regresyon fix) */
.modal-bg .modal{position:static;inset:auto;padding:0;align-items:stretch;justify-content:flex-start}
.modal-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 18px;border-bottom:1px solid var(--line);font-weight:700;font-size:15px}
.modal-govde,.modal-body{padding:16px 18px;overflow-y:auto}
.modal-footer{padding:12px 18px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:flex-end;gap:10px}

/* --- Rozet / badge --- */
.badge,.rozet,.eslesti-rozet,.acik-rozet{display:inline-block;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:700;line-height:1.5}
.badge-success,.rozet-yesil,.eslesti-rozet{background:var(--yesil-bg);color:var(--yesil)}
.badge-warning,.acik-rozet{background:var(--turuncu-bg);color:var(--turuncu)}
.badge-danger,.rozet-kirmizi{background:var(--kirmizi-bg);color:var(--kirmizi)}
.badge-secondary{background:var(--zemin);color:var(--mut)}
.badge-mavi{background:var(--mavi-bg);color:var(--mavi)}

/* --- Sekme (sekme-sira → segmented). NOT: kurallar SADECE .sekme-sira içine scope'lu;
   global yazılırsa standart .sekmeler butonlarını (~495) düzleştirir (şeffaf/bordersuz). --- */
.sekme-sira{display:inline-flex;gap:4px;background:var(--zemin);padding:4px;border-radius:11px;flex-wrap:wrap}
.sekme-sira .sekme{border:none;background:transparent;padding:7px 14px;border-radius:8px;font-size:13px;font-weight:600;color:var(--mut);cursor:pointer;font-family:inherit;transition:all .15s}
.sekme-sira .sekme:hover{color:var(--txt)}
.sekme-sira .sekme.aktif{background:#fff;color:var(--mavi);box-shadow:0 1px 3px rgba(15,23,42,.1)}

/* --- Inline autocomplete (cari/ürün ara — modal yerine yazarak seç, sağda ara düğmesi) --- */
.ac-wrap{position:relative;display:flex;align-items:center;gap:6px;width:100%}
.ac-wrap input.ac-inp{flex:1;width:100%;min-width:0;padding:9px 11px;border:1px solid var(--line);border-radius:9px;font:inherit;background:#fff}
.ac-wrap input.ac-inp:focus{outline:none;border-color:var(--mavi);box-shadow:0 0 0 3px var(--mavi-bg)}
.ac-btn{flex-shrink:0;display:inline-flex;align-items:center;gap:5px;height:38px;padding:0 12px;border:1px solid var(--line);background:var(--zemin);color:var(--txt);cursor:pointer;border-radius:9px;font:inherit;font-size:12.5px;font-weight:600;white-space:nowrap}
.ac-btn:hover{background:var(--mavi-bg);border-color:var(--mavi);color:var(--mavi)}
.ac-dd{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 30px rgba(15,23,42,.16);z-index:60;max-height:300px;overflow-y:auto;display:none}
.ac-dd.acik{display:block}
.ac-oge{display:flex;gap:10px;align-items:center;padding:9px 12px;cursor:pointer}
.ac-oge:hover,.ac-oge.vurgu{background:var(--mavi-bg)}
.ac-oge .kod{font-family:var(--mono);font-size:12px;color:var(--mavi);min-width:52px;flex-shrink:0}
.ac-oge .ad{flex:1;font-size:13.5px;min-width:0;overflow-wrap:anywhere}
.ac-bos{padding:11px 13px;color:var(--mut);font-size:12.5px}

/* Kur farkı faturası modalı */
.kff-bilgi{font-size:12.5px;color:var(--mut);line-height:1.55;background:var(--zemin);border:1px solid var(--line);border-radius:10px;padding:11px 13px}
.kff-form input{padding:9px 11px;border:1px solid var(--line);border-radius:9px;font-size:13px;width:100%;background:#fff}
.kff-form input:focus{outline:none;border-color:#7c3aed;box-shadow:0 0 0 3px rgba(124,58,237,.12)}
.kff-onizleme{margin-top:14px;border:1px solid var(--line);border-radius:12px;padding:6px 14px;background:#fff}
.kff-yon{margin:8px 0 4px;text-align:center;font-weight:700;font-size:13px;border:1px solid;border-radius:9px;padding:7px 10px}
.kff-sat{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);font-size:13px}
.kff-sat:last-child{border-bottom:0}
.kff-sat span:first-child{color:var(--mut)}
.kff-vurgu{font-weight:800;font-size:15px}
.kff-vurgu span:first-child{color:var(--txt)}
.kff-hata{color:var(--kirmizi);font-size:13px;padding:10px 2px}
.kff-mod{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.kff-mod-btn{display:flex;align-items:center;gap:9px;text-align:left;padding:11px 13px;border:1.5px solid var(--line);border-radius:11px;background:#fff;cursor:pointer;color:var(--mut);transition:all .12s}
.kff-mod-btn span{display:flex;flex-direction:column;min-width:0;line-height:1.3}
.kff-mod-btn b{font-size:13px;color:var(--txt);font-weight:700}
.kff-mod-btn small{font-size:11px;color:var(--mut)}
.kff-mod-btn.aktif{border-color:#7c3aed;background:rgba(124,58,237,.06);color:#7c3aed}
.kff-mod-btn.aktif b{color:#7c3aed}
@media(max-width:560px){.kff-mod{grid-template-columns:1fr}}
/* Demirbaş sayımı bulundu/bulunamadı toggle */
.ds-tog{font-size:11.5px;padding:4px 10px;border:1px solid var(--line);border-radius:7px;background:#fff;cursor:pointer;color:var(--mut)}
.ds-tog+.ds-tog{margin-left:4px}
.ds-tog.ds-ev{background:#ecfdf5;border-color:#a7f3d0;color:#15803d;font-weight:700}
.ds-tog.ds-hayir{background:#fef2f2;border-color:#fecaca;color:#b91c1c;font-weight:700}

/* --- Toplu işlem çubuğu (fatura listesi çoklu seçim) --- */
.toplu-bar{display:flex;align-items:center;gap:9px;flex-wrap:wrap;background:var(--mor-bg,#eef2ff);border:1px solid var(--mor,#6d5efc);border-radius:11px;padding:9px 14px;margin:10px 0}
.toplu-bar .toplu-say{font-size:13px;font-weight:700;color:var(--mor,#4f46e5)}

/* --- Belge zinciri (Teklif → Sipariş → İrsaliye → Fatura) --- */
.bz-baslik{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--mut2);margin:2px 2px 7px}
.bz{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-bottom:12px}
.bz-adim{display:flex;flex-direction:column;line-height:1.25;text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:9px;padding:6px 11px;min-width:0;transition:.12s}
a.bz-adim:hover{border-color:var(--mor);box-shadow:0 2px 6px rgba(15,23,42,.06)}
.bz-adim .bz-et{font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--mut)}
.bz-adim .bz-no{font-size:12.5px;font-weight:700;color:var(--txt);font-family:var(--mono)}
.bz-adim.bz-aktif{background:var(--mor-bg,#eef2ff);border-color:var(--mor)}
.bz-adim.bz-aktif .bz-et,.bz-adim.bz-aktif .bz-no{color:var(--mor)}
.bz-ok{color:var(--mut2);font-size:15px;font-weight:700;flex-shrink:0}

/* --- Yardımcı (utility) --- */
.text-center{text-align:center}
.text-right{text-align:right}
.text-success{color:var(--yesil)}
.text-danger{color:var(--kirmizi)}
.text-warning{color:var(--turuncu)}
.text-muted{color:var(--mut)}
.font-bold{font-weight:700}

/* --- Kasa dashboard liste satırı + pill --- */
.kd-ksat{display:flex;justify-content:space-between;align-items:center;padding:9px 4px;border-bottom:1px solid var(--line);font-size:13px}
.kd-ksat:last-child{border-bottom:none}
.kd-pill{font-size:10px;padding:1px 7px;border-radius:6px;background:var(--zemin);color:var(--mut);font-weight:700;margin-left:6px}

/* --- İşlem buton satırı (cek_senet/mutabakat/dunning ortak) --- */
.cs-islem{display:flex;gap:5px;flex-wrap:wrap}
.cs-islem button,.islem-btn-sm{font-size:10.5px;padding:3px 8px;border:1px solid var(--line);background:#fff;color:var(--txt);border-radius:6px;cursor:pointer;font-weight:600}
.cs-islem button:hover,.islem-btn-sm:hover{border-color:var(--mavi);color:var(--mavi)}

/* === Araçlar açılır menü (çok butonlu hub başlıklarını toparlar) === */
.arac-dd{position:relative;display:inline-flex}
.arac-dd-btn{display:inline-flex;align-items:center;gap:6px}
.arac-dd-btn .ok{font-size:9px;opacity:.7;transition:transform .15s}
.arac-dd.acik .arac-dd-btn .ok{transform:rotate(180deg)}
.arac-dd-panel{position:absolute;top:calc(100% + 6px);right:0;background:#fff;border:1px solid var(--line);
  border-radius:13px;box-shadow:0 14px 38px rgba(15,23,42,.16);padding:8px;min-width:250px;max-width:86vw;
  z-index:320;display:none;flex-direction:column;gap:2px}
.arac-dd.acik .arac-dd-panel{display:flex}
.arac-dd-grup{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--mut2);padding:8px 10px 3px}
.arac-dd-panel a,.arac-dd-panel button{display:flex;align-items:center;gap:9px;padding:9px 11px;border-radius:9px;
  font-size:13px;color:var(--txt);text-decoration:none;border:none;background:none;cursor:pointer;width:100%;text-align:left;font-family:inherit;line-height:1.3}
.arac-dd-panel a:hover,.arac-dd-panel button:hover{background:var(--mavi-bg);color:var(--mavi)}
.arac-dd-panel a svg,.arac-dd-panel button svg{flex:0 0 auto;color:var(--mut)}
.arac-dd-panel a:hover svg,.arac-dd-panel button:hover svg{color:var(--mavi)}
@media(max-width:680px){.arac-dd-panel{right:auto;left:0}}

/* ===== RAPORLAR SAYFASI YENİLEME ===== */
/* 1) Rapor kartları — kompakt + ton renkli aktif vurgu */
.rg-grid{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px}
.rg-kart{padding:12px 8px 10px;font-size:11.5px;border-radius:12px}
.rg-kart .rg-ic{width:34px;height:34px}
.rg-kart.t-teal{--tone:var(--teal)} .rg-kart.t-mor{--tone:var(--mor)} .rg-kart.t-yesil{--tone:var(--yesil)}
.rg-kart.t-turuncu{--tone:var(--turuncu)} .rg-kart.t-mavi{--tone:var(--mavi)}
.rg-kart.aktif{border-color:var(--tone,var(--mavi));box-shadow:0 4px 14px rgba(15,23,42,.10), inset 0 0 0 1px var(--tone,var(--mavi))}
.rg-kart.aktif .rg-ic{transform:scale(1.06)}

/* 2) Filtre/mevzuat barı — tutarlı stilli alanlar */
/* .rapor-kontrol zaten kart (bg+border+padding); iç .arac şeffaf — kart içinde kart olmasın */
.rapor-kontrol .arac{background:transparent;border:0;padding:0;align-items:flex-end}
.rapor-kontrol .flt{display:inline-flex;flex-direction:column;gap:5px;font-size:11px;font-weight:600;color:var(--mut);text-transform:uppercase;letter-spacing:.02em}
.rapor-kontrol .flt select,.rapor-kontrol .flt input{padding:8px 11px;border:1px solid var(--line);border-radius:9px;font-size:13px;background:#fff;color:var(--txt);font-weight:500;text-transform:none;letter-spacing:0;font-family:inherit}
.rapor-kontrol .flt select:focus,.rapor-kontrol .flt input:focus{outline:none;border-color:var(--mavi);box-shadow:0 0 0 3px var(--mavi-bg)}

/* === MOBİL araç/filtre çubuğu — temiz düzen (yukarıdaki flex-end sızıntısını ezer) ===
   Arama tam satır · filtreler tam satır · aksiyon butonları tek satırda eşit paylaşımlı. */
@media(max-width:680px){
  .arac,.rapor-kontrol .arac{display:flex!important;flex-direction:row!important;flex-wrap:wrap;align-items:stretch!important;gap:8px;margin:0}
  .arac>span[style]{display:none!important}
  .arac .ara-kutu{flex:1 1 100%!important;min-width:0}
  .arac>select,.arac>input[type=date],.rapor-kontrol .arac>select,.rapor-kontrol .flt{flex:1 1 100%!important;width:100%}
  /* Aksiyonlar (Excel, Avans, Yan Hak vb.) tek satır, eşit genişlik, okunur (gerekirse 2. satıra sarar) */
  .arac>.btn-cizgi,.arac>.btn-ana,.arac>a.btn-cizgi{flex:1 1 0;min-width:0;justify-content:center;text-align:center;height:auto;min-height:40px;padding:9px 8px;font-size:12.5px;line-height:1.15}
  .arac>.btn-cizgi svg,.arac>.btn-ana svg{flex:0 0 auto}
}

/* 3) Rapor tablosu — renkli başlık + zebra + hover */
.rapor-blok table{border:1px solid var(--line);border-radius:13px;overflow:hidden;box-shadow:0 1px 2px rgba(15,23,42,.04)}
.rapor-blok thead th{background:var(--mavi-bg);color:var(--lacivert,#1e3a8a);font-weight:700;font-size:11px;
  letter-spacing:.03em;padding:11px 13px;border-bottom:2px solid #c7d2fe;text-align:left}
.rapor-blok thead th.sayi{text-align:right}
.rapor-blok tbody td{padding:9px 13px;border-bottom:1px solid #f1f5f9}
.rapor-blok tbody tr:nth-child(even):not(.satir-grup):not(.satir-toplam):not(.satir-arat):not(.satir-sonuc):not(.satir-vadeli)>td{background:#fafbfd}
.rapor-blok tbody tr:hover:not(.satir-grup):not(.satir-toplam):not(.satir-arat):not(.satir-sonuc)>td{background:var(--mavi-bg)}
.rapor-blok td.neg{color:var(--kirmizi);font-weight:700}
.rapor-blok tbody td.sayi{font-weight:600}
.rapor-blok table tfoot td{background:#eef2ff;border-top:2px solid #c7d2fe;color:var(--lacivert,#1e3a8a);padding:11px 13px}
.rapor-blok tr.acilir-satir{cursor:pointer}
/* Komisyon yönetim modalı */
.ky-bas{font-weight:700;font-size:13px;margin:4px 0 8px}
.ky-form{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px}
.ky-form .mi-in{max-width:180px}
