/* ============================================================
   lojiSys — site.css
   KURAL: Tüm CSS bu dosyaya yazılır; view içine <style> yazılmaz.
   Bölümler:
     1) Tema değişkenleri (dark/light)
     2) Genel / yardımcı
     3) Admin paneli kabuğu (sidebar, topbar, flyout)
     4) İçerik bileşenleri (kart, tablo, rozet, buton)
     5) Süper admin (panel) varyantı
     6) Login sayfası
     7) DataTables & SweetAlert uyumu
   ============================================================ */

/* ---------- 1) TEMA DEĞİŞKENLERİ ---------- */
:root {
  --sb-full:    256px;
  --sb-mini:     64px;
  --topbar-h:    60px;
  --flyout-w:   220px;
  --tr:         .22s ease;
  --font: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
}

[data-theme="dark"] {
  --bg:        #080f1a;
  --bg2:       #0c1524;
  --surface:   #111e30;
  --surface2:  #162438;
  --sb-bg:     #090f1d;
  --border:    rgba(0,200,224,.10);
  --border2:   rgba(0,200,224,.22);
  --tx:        #c8e6f4;
  --tx2:       #6b8fa8;
  --tx3:       #8cb9db;
  --accent:    #00c8e0;
  --accent2:   #0099bb;
  --glow:      rgba(0,200,224,.16);
  --danger:    #ff4d6a;
  --success:   #00d68f;
  --warning:   #ffb300;
  --info:      #5b8dee;
  --shadow:    0 8px 32px rgba(0,0,0,.5);
  --shadow-sm: 0 2px 10px rgba(0,0,0,.28);
  --topbar-bg: rgba(8,15,26,.88);
  --overlay:   rgba(4,9,18,.72);
}
[data-theme="light"] {
  --bg:        #f0f4f8;
  --bg2:       #e8edf3;
  --surface:   #ffffff;
  --surface2:  #f7f9fc;
  --sb-bg:     #ffffff;
  --border:    rgba(0,0,0,.07);
  --border2:   rgba(0,0,0,.14);
  --tx:        #1a2c3d;
  --tx2:       #5a7184;
  --tx3:       #9db2c4;
  --accent:    #0099bb;
  --accent2:   #007a99;
  --glow:      rgba(0,153,187,.11);
  --danger:    #e63757;
  --success:   #00a67e;
  --warning:   #e5a000;
  --info:      #3d6ee8;
  --shadow:    0 8px 32px rgba(0,0,0,.10);
  --shadow-sm: 0 2px 8px rgba(0,0,0,.06);
  --topbar-bg: rgba(255,255,255,.92);
  --overlay:   rgba(0,0,0,.42);
}

/* ---------- 2) GENEL ---------- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:15px}
body{
  font-family:var(--font);
  background:var(--bg);color:var(--tx);
  min-height:100vh;
  transition:background var(--tr),color var(--tr);
  -webkit-font-smoothing:antialiased;
}
a{color:var(--accent);text-decoration:none}
/* hidden attribute'u HER ZAMAN gizler. Bootstrap'ın .d-flex/.d-block gibi
   yardımcıları display'i !important ile verdiği için hidden'ı eziyordu:
   JS "hidden = true" diyor ama öğe ekranda kalıyordu (sessiz UI hatası). */
[hidden]{display:none!important}
::-webkit-scrollbar{width:4px;height:4px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:var(--border2);border-radius:99px}
::-webkit-scrollbar-thumb:hover{background:var(--accent)}

#page-loader{
  position:fixed;inset:0;z-index:9999;
  background:var(--bg);
  display:flex;align-items:center;justify-content:center;
  flex-direction:column;gap:14px;
  transition:opacity .35s,visibility .35s;
}
#page-loader.hide{opacity:0;visibility:hidden}
.loader-ring{
  width:40px;height:40px;
  border:3px solid var(--border2);
  border-top-color:var(--accent);
  border-radius:50%;animation:spin .7s linear infinite;
}
@keyframes spin{to{transform:rotate(360deg)}}
.loader-txt{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--tx2)}

.shell{display:flex;min-height:100vh}

/* ---------- 3) SIDEBAR ---------- */
#sidebar{
  width:var(--sb-full);
  flex-shrink:0;
  background:var(--sb-bg);
  border-right:1px solid var(--border);
  display:flex;flex-direction:column;
  position:fixed;top:0;left:0;bottom:0;
  z-index:300;
  overflow:hidden;
  transition:width var(--tr),transform var(--tr),background var(--tr);
}

body.sb-mini #sidebar { width:var(--sb-mini); }

body.sb-mini .sb-logo-text,
body.sb-mini .nav-link-text,
body.sb-mini .nav-group-label,
body.sb-mini .nav-badge,
body.sb-mini .sub-arrow,
body.sb-mini .sf-text,
body.sb-mini .sf-btn { display:none; }

body.sb-mini .sb-header { justify-content:center; padding:0; gap:0; }

body.sb-mini .nav-link {
  display:flex;justify-content:center;align-items:center;
  width:100%;height:44px;padding:0;gap:0;
}
body.sb-mini .nav-link i.nav-icon {
  width:18px;font-size:.95rem;text-align:center;
  margin:0;flex-shrink:0;display:block;
}

body.sb-mini .sub-menu { max-height:0 !important; }

body.sb-mini .sf-wrap { justify-content:center;align-items:center;padding:12px 0;gap:0; }

@media(max-width:991.98px){
  #sidebar{transform:translateX(-100%);width:var(--sb-full) !important;}
  body.sb-open #sidebar{transform:translateX(0);}
  body.sb-open #sb-overlay{opacity:1;pointer-events:auto;}
}

#sb-overlay{
  position:fixed;inset:0;z-index:299;
  background:var(--overlay);
  opacity:0;pointer-events:none;
  transition:opacity var(--tr);
}

.sb-header{
  height:var(--topbar-h);flex-shrink:0;
  display:flex;align-items:center;gap:11px;
  padding:0 16px;
  border-bottom:1px solid var(--border);
  overflow:hidden;
}
/* Amblem zeminsizdir (noktali kure, arası şeffaf) — bu yüzden kare gölge/kutu
   YOK: kutu gölgesi küre etrafında boş bir kare parıltı bırakıyordu. */
.sb-logo-mark{
  width:34px;height:34px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
}
.sb-logo-mark img{width:100%;height:100%;display:block}
.sb-logo-text{
  overflow:hidden;white-space:nowrap;
  transition:opacity var(--tr),width var(--tr);
}
.sb-logo-text strong{font-size:.9rem;font-weight:800;letter-spacing:.06em;line-height:1.2;display:block}
.sb-logo-text strong span{color:var(--accent)}
.sb-logo-text small{font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;color:var(--tx2);display:block}

.sb-nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:10px 0}
.nav-group-label{
  font-size:.6rem;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;color:var(--tx3);
  padding:13px 18px 5px;white-space:nowrap;
}

.nav-link{
  display:flex;align-items:center;gap:10px;
  padding:10px 16px;
  color:var(--tx2);font-size:.82rem;font-weight:500;
  cursor:pointer;white-space:nowrap;
  border:none;background:none;width:100%;text-align:left;
  position:relative;
  transition:color var(--tr),background var(--tr),padding var(--tr);
}
.nav-link i.nav-icon{width:18px;text-align:center;font-size:.88rem;flex-shrink:0;transition:color var(--tr)}
.nav-link:hover{color:var(--tx);background:var(--glow)}
.nav-link.active{color:var(--accent);background:var(--glow)}
.nav-link.active::before{
  content:'';position:absolute;left:0;top:7px;bottom:7px;
  width:3px;border-radius:0 3px 3px 0;background:var(--accent);
}
.nav-link.active i.nav-icon{color:var(--accent)}
.nav-badge{
  margin-left:auto;flex-shrink:0;
  font-size:.58rem;font-weight:700;
  padding:2px 7px;border-radius:99px;
  background:var(--glow);color:var(--accent);
  border:1px solid var(--border2);
}
.nav-badge.danger{background:rgba(255,77,106,.12);color:var(--danger);border-color:rgba(255,77,106,.25)}
.sub-arrow{font-size:.62rem;margin-left:auto;transition:transform var(--tr)}
.has-sub.open>.nav-link .sub-arrow{transform:rotate(90deg)}

.sub-menu{max-height:0;overflow:hidden;transition:max-height .28s ease}
.has-sub.open .sub-menu{max-height:300px}
.sub-menu .nav-link{padding-left:44px;font-size:.79rem;color:var(--tx3)}
.sub-menu .nav-link:hover{color:var(--tx2)}
.sub-menu .nav-link.active{color:var(--accent)}

.sf-wrap{
  flex-shrink:0;padding:10px 14px;
  border-top:1px solid var(--border);
  display:flex;align-items:center;gap:10px;
  transition:padding var(--tr);
}
.sf-av-wrap{position:relative;flex-shrink:0;cursor:pointer}
.sf-av{
  width:32px;height:32px;border-radius:50%;
  background:linear-gradient(135deg,var(--accent),var(--accent2));
  display:flex;align-items:center;justify-content:center;
  font-size:.67rem;font-weight:700;color:#fff;
  transition:box-shadow var(--tr);
}
.sf-av-wrap:hover .sf-av{box-shadow:0 0 0 2.5px var(--accent)}
.sf-online{
  position:absolute;bottom:0;right:0;
  width:8px;height:8px;border-radius:50%;
  background:var(--success);
  border:2px solid var(--sb-bg);
}
.sf-text{flex:1;overflow:hidden;white-space:nowrap}
.sf-text strong{display:block;font-size:.77rem;line-height:1.3}
.sf-text span{font-size:.64rem;color:var(--tx2)}
.sf-btn{
  flex-shrink:0;background:none;border:none;
  color:var(--tx3);font-size:.76rem;cursor:pointer;
  padding:4px;transition:color var(--tr);
}
.sf-btn:hover{color:var(--tx)}

/* ---------- FLYOUT (mini modda hover) ---------- */
#flyout{
  position:fixed;
  left:var(--sb-mini);
  top:0;bottom:0;
  width:var(--flyout-w);
  z-index:298;
  background:var(--sb-bg);
  border-right:1px solid var(--border2);
  box-shadow:var(--shadow);
  display:flex;flex-direction:column;
  padding-bottom:12px;
  opacity:0;
  transform:translateX(-6px);
  pointer-events:none;
  transition:opacity .16s ease, transform .16s ease;
}
#flyout.show{opacity:1;transform:translateX(0);pointer-events:auto}
#flyout::before{content:'';position:absolute;left:-10px;top:0;bottom:0;width:10px}

.flyout-head{
  height:var(--topbar-h);
  display:flex;align-items:flex-end;
  padding:0 16px 12px;
  border-bottom:1px solid var(--border);
  flex-shrink:0;
}
.flyout-label{
  font-size:.64rem;font-weight:700;
  letter-spacing:.17em;text-transform:uppercase;color:var(--accent);
}
.flyout-body{flex:1;overflow-y:auto;padding:8px 0}
.flyout-link{
  display:flex;align-items:center;gap:9px;
  padding:9px 16px;
  font-size:.81rem;font-weight:500;color:var(--tx2);
  cursor:pointer;white-space:nowrap;
  border:none;background:none;width:100%;text-align:left;
  transition:color var(--tr),background var(--tr),padding-left var(--tr);
}
.flyout-link i{width:15px;text-align:center;font-size:.8rem;flex-shrink:0}
.flyout-link:hover{color:var(--tx);background:var(--glow);padding-left:20px}
.flyout-link.active{color:var(--accent);background:var(--glow)}
.flyout-badge{
  margin-left:auto;font-size:.57rem;font-weight:700;
  padding:2px 6px;border-radius:99px;
  background:var(--glow);color:var(--accent);border:1px solid var(--border2);
}
.flyout-badge.danger{background:rgba(255,77,106,.12);color:var(--danger);border-color:rgba(255,77,106,.25)}

body:not(.sb-mini) #flyout{display:none !important}

/* ---------- MAIN ---------- */
.main-wrap{
  flex:1;margin-left:var(--sb-full);
  display:flex;flex-direction:column;min-width:0;
  transition:margin-left var(--tr);
}
body.sb-mini .main-wrap{margin-left:var(--sb-mini)}
@media(max-width:991.98px){.main-wrap{margin-left:0 !important}}

/* ---------- TOPBAR ---------- */
#topbar{
  height:var(--topbar-h);flex-shrink:0;
  position:sticky;top:0;z-index:200;
  background:var(--topbar-bg);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border-bottom:1px solid var(--border);
  display:flex;align-items:center;
  padding:0 20px;gap:12px;
  transition:background var(--tr);
}
.tb-toggle{
  background:none;border:none;
  color:var(--tx2);font-size:.95rem;
  cursor:pointer;padding:6px 8px;border-radius:8px;flex-shrink:0;
  transition:background var(--tr),color var(--tr);
}
.tb-toggle:hover{background:var(--glow);color:var(--accent)}
.tb-breadcrumb{
  display:flex;align-items:center;gap:6px;
  font-size:.78rem;color:var(--tx2);flex-shrink:0;
}
.tb-breadcrumb .crumb{color:var(--tx2);transition:color var(--tr)}
.tb-breadcrumb .crumb:hover{color:var(--accent)}
.tb-breadcrumb .sep{color:var(--tx3);font-size:.58rem}
.tb-breadcrumb .crumb.active{color:var(--tx);font-weight:500;pointer-events:none}
.tb-search{flex:1;max-width:300px;position:relative}
.tb-search input{
  width:100%;background:var(--surface);border:1px solid var(--border);
  border-radius:9px;padding:7px 12px 7px 32px;
  font-size:.79rem;color:var(--tx);outline:none;
  transition:border-color var(--tr),box-shadow var(--tr),background var(--tr);
}
.tb-search input::placeholder{color:var(--tx3)}
.tb-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--glow)}
.tb-search i{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--tx3);font-size:.77rem}
.tb-spacer{flex:1}
.theme-btn{
  width:36px;height:36px;border-radius:10px;
  background:none;border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;flex-shrink:0;position:relative;overflow:hidden;
  transition:background var(--tr),border-color var(--tr),transform var(--tr);
}
.theme-btn:hover{background:var(--glow);border-color:var(--border2);transform:rotate(15deg)}
.theme-btn .t-sun{
  position:absolute;font-size:1rem;color:#e5a000;
  transition:opacity .25s ease,transform .3s cubic-bezier(.34,1.56,.64,1);
  opacity:1;transform:rotate(0deg) scale(1);
}
.theme-btn .t-moon{
  position:absolute;font-size:.9rem;color:var(--accent);
  transition:opacity .25s ease,transform .3s cubic-bezier(.34,1.56,.64,1);
  opacity:0;transform:rotate(-90deg) scale(.6);
}
[data-theme="dark"] .theme-btn .t-sun{opacity:0;transform:rotate(90deg) scale(.6)}
[data-theme="dark"] .theme-btn .t-moon{opacity:1;transform:rotate(0deg) scale(1)}
[data-theme="dark"] .theme-btn{border-color:var(--border2)}
.tb-icon{
  width:34px;height:34px;border-radius:9px;
  background:none;border:1px solid var(--border);
  color:var(--tx2);font-size:.82rem;
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;position:relative;flex-shrink:0;
  transition:background var(--tr),border-color var(--tr),color var(--tr);
}
.tb-icon:hover{background:var(--glow);border-color:var(--border2);color:var(--accent)}
.tb-badge-dot{
  position:absolute;top:-3px;right:-3px;
  width:15px;height:15px;border-radius:50%;
  background:var(--danger);color:#fff;
  font-size:.52rem;font-weight:700;
  display:flex;align-items:center;justify-content:center;
  border:2px solid var(--bg);
}
.tb-user{
  display:flex;align-items:center;gap:8px;
  padding:4px 10px 4px 4px;
  border:1px solid var(--border);border-radius:99px;
  cursor:pointer;flex-shrink:0;
  transition:background var(--tr),border-color var(--tr);
}
.tb-user:hover{background:var(--glow);border-color:var(--border2)}
.tu-av{
  width:26px;height:26px;border-radius:50%;
  background:linear-gradient(135deg,var(--accent),var(--accent2));
  display:flex;align-items:center;justify-content:center;
  font-size:.62rem;font-weight:700;color:#fff;
}
.tu-name{font-size:.76rem;font-weight:600}

.tb-drop{
  position:absolute;top:calc(100% + 8px);right:0;
  z-index:400;background:var(--surface);
  border:1px solid var(--border2);border-radius:14px;
  box-shadow:var(--shadow);overflow:hidden;min-width:190px;
  display:none;
}
.tb-drop.show{display:block;animation:fdDown .15s ease}
@keyframes fdDown{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}
.drop-head{padding:12px 14px;border-bottom:1px solid var(--border)}
.drop-head strong{display:block;font-size:.8rem}
.drop-head span{font-size:.68rem;color:var(--tx2)}
.drop-item{
  display:flex;align-items:center;gap:9px;
  padding:9px 14px;font-size:.78rem;color:var(--tx2);text-decoration:none;
  cursor:pointer;transition:background var(--tr),color var(--tr);
}
.drop-item i{width:13px;font-size:.77rem}
.drop-item:hover{background:var(--surface2);color:var(--tx)}
.drop-item.danger{color:var(--danger)}
.drop-item.danger:hover{background:rgba(255,77,106,.08)}
.drop-sep{height:1px;background:var(--border);margin:3px 0}

/* ---------- 4) İÇERİK ---------- */
.main-content{flex:1;padding:24px 24px 48px;overflow-x:hidden}
@media(max-width:575.98px){.main-content{padding:16px 12px 32px}}
.page-header{
  display:flex;align-items:flex-start;justify-content:space-between;
  flex-wrap:wrap;gap:12px;margin-bottom:24px;
}
.page-title{font-size:1.28rem;font-weight:700;line-height:1.2}
.page-subtitle{font-size:.78rem;color:var(--tx2);margin-top:3px}

.card{
  background:var(--surface);border:1px solid var(--border);
  transition:background var(--tr),border-color var(--tr),box-shadow var(--tr);
}
.card:hover{box-shadow:var(--shadow-sm)}
.card-hd{padding:15px 18px 0;display:flex;align-items:center;justify-content:space-between;gap:10px}
.card-title{font-size:.84rem;font-weight:700}
.card-sub{font-size:.7rem;color:var(--tx2);margin-top:2px}
.card-bd{padding:15px 18px 18px}

.stat-card{padding:18px 20px;display:flex;flex-direction:column;gap:14px}
.si{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1rem}
.si-teal  {background:rgba(0,200,224,.12);color:var(--accent)}
.si-green {background:rgba(0,214,143,.12);color:var(--success)}
.si-blue  {background:rgba(91,141,238,.12);color:var(--info)}
.si-yellow{background:rgba(255,179,0,.12); color:var(--warning)}
.si-red   {background:rgba(255,77,106,.12);color:var(--danger)}

.stat-num{font-size:1.7rem;font-weight:800;letter-spacing:-.03em;line-height:1}
.stat-lbl{font-size:.7rem;color:var(--tx2);margin-top:3px;font-weight:500}
.delta{display:inline-flex;align-items:center;gap:4px;font-size:.68rem;font-weight:600;padding:3px 7px;border-radius:6px}
.delta.up  {background:rgba(0,214,143,.1);color:var(--success)}
.delta.down{background:rgba(255,77,106,.1);color:var(--danger)}
.delta.flat{background:var(--glow);color:var(--tx2)}

.prog-track{height:4px;border-radius:99px;background:var(--bg2);overflow:hidden}
.prog-fill{height:100%;border-radius:99px;background:linear-gradient(90deg,var(--accent),var(--accent2));transition:width .7s cubic-bezier(.4,0,.2,1)}

.chart-ph{
  background:var(--surface2);border-radius:10px;border:1px dashed var(--border2);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:8px;color:var(--tx3);font-size:.75rem;min-height:200px;
}
.chart-ph i{font-size:1.8rem;opacity:.28}

.tbl-wrap{overflow-x:auto}
table.dt{width:100%;border-collapse:separate;border-spacing:0;font-size:.79rem}
table.dt thead th{padding:9px 13px;font-size:.63rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--tx2);border-bottom:1px solid var(--border);white-space:nowrap}
table.dt tbody tr{transition:background var(--tr)}
table.dt tbody tr:hover{background:var(--surface2)}
table.dt tbody td{padding:11px 13px;color:var(--tx);border-bottom:1px solid var(--border);vertical-align:middle;white-space:nowrap}
table.dt tbody tr:last-child td{border-bottom:none}

.s-pill{display:inline-flex;align-items:center;gap:5px;font-size:.67rem;font-weight:600;padding:3px 9px;border-radius:99px}
.s-pill::before{content:'';width:5px;height:5px;border-radius:50%;flex-shrink:0}
.s-pill.delivered,.s-pill.success{background:rgba(0,214,143,.1);color:var(--success)}.s-pill.delivered::before,.s-pill.success::before{background:var(--success)}
.s-pill.transit,.s-pill.info{background:rgba(91,141,238,.1);color:var(--info)}.s-pill.transit::before,.s-pill.info::before{background:var(--info)}
.s-pill.pending,.s-pill.warning{background:rgba(255,179,0,.1);color:var(--warning)}.s-pill.pending::before,.s-pill.warning::before{background:var(--warning)}
.s-pill.cancelled,.s-pill.danger{background:rgba(255,77,106,.1);color:var(--danger)}.s-pill.cancelled::before,.s-pill.danger::before{background:var(--danger)}
.s-pill.muted{background:var(--surface2);color:var(--tx2);border:1px solid var(--border)}.s-pill.muted::before{background:var(--tx3)}

/* Faturaya Gönder onayı (SweetAlert içeriği) — operasyonun muhasebeye talep kutusu */
.ship-reqbox{border:1px solid var(--border2);border-radius:10px;overflow:hidden;text-align:left;margin-bottom:.7rem}
.ship-reqhead{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;
  padding:.55rem .75rem;background:var(--surface2);border-bottom:1px solid var(--border);font-size:.82rem}
.ship-reqhead span{color:var(--tx2);font-size:.75rem}
.ship-reqline{display:flex;justify-content:space-between;gap:.8rem;align-items:center;
  padding:.4rem .75rem;border-bottom:1px solid var(--border);font-size:.78rem}
.ship-reqline:last-child{border-bottom:none}
.ship-reqline .mono{color:var(--tx2)}
.ship-reqmore{padding:.4rem .75rem;font-size:.74rem;color:var(--tx2)}
.ship-reqwarn{text-align:left;font-size:.76rem;color:var(--warning);
  background:rgba(255,179,0,.08);border:1px solid rgba(255,179,0,.28);border-radius:8px;padding:.45rem .65rem;margin-bottom:.7rem}
.ship-reqinfo{text-align:left;font-size:.76rem;color:var(--tx2);line-height:1.55;margin-bottom:.7rem}
.ship-reqinfo b{color:var(--tx)}

/* Sevkiyat listesinde geri gönderme gerekçesi (ipucu değil, GÖRÜNÜR satır) */
.ship-rejnote{color:var(--danger);max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Sevkiyat detay modalinde faturalama durumu şeridi */
.ship-dm-reject,.ship-dm-pending,.ship-dm-invoiced{display:flex;gap:10px;align-items:flex-start;
  padding:10px 12px;border-radius:10px;font-size:.79rem;line-height:1.55;margin-bottom:14px}
.ship-dm-reject{background:rgba(255,77,106,.08);border:1px solid rgba(255,77,106,.28);color:var(--danger)}
.ship-dm-reject b{color:var(--tx)}
.ship-dm-rejhint{color:var(--tx2);font-size:.73rem;margin-top:4px}
.ship-dm-pending{background:rgba(255,179,0,.08);border:1px solid rgba(255,179,0,.28);color:var(--warning)}
.ship-dm-pending b{color:var(--tx)}
.ship-dm-invoiced{background:rgba(0,214,143,.08);border:1px solid rgba(0,214,143,.28);color:var(--success)}
.ship-dm-invoiced b{color:var(--tx)}

/* ---------- YAKIT FORMU: seçili istasyon çipi ---------- */
.fu-station-chip{display:flex;align-items:center;gap:6px}
.fu-chip-x{padding:2px 7px;font-size:.68rem;line-height:1}

/* ---------- FATURALANACAKLAR (muhasebe talep kuyruğu) ---------- */
.bq-search{max-width:240px}
/* Kart içeriği .card-bd kullanmıyor (sekme çizgisi tam genişlikte kalsın diye):
   yatay boşluk sekme şeridine ve gövdeye ayrı ayrı verilir. */
.set-tabs.bq-tabs{padding:0 16px;margin:0 0 16px}
.bq-body{padding:0 16px 16px}
@media(max-width:575.98px){.set-tabs.bq-tabs{padding:0 12px}.bq-body{padding:0 12px 12px}}
.bq-cnt{background:var(--surface2);border:1px solid var(--border);border-radius:99px;
  padding:1px 7px;font-size:.68rem;font-weight:700}
.set-tab.active .bq-cnt{background:var(--glow);border-color:var(--border2);color:var(--accent)}
.bq-empty{text-align:center;padding:44px 16px;color:var(--tx2);font-size:.84rem}

.bq-req{border:1px solid var(--border2);border-radius:12px;background:var(--surface2);overflow:hidden;transition:border-color var(--tr)}
.bq-req+.bq-req{margin-top:12px}
.bq-req:hover{border-color:var(--accent)}
.bq-req.multi{border-left:3px solid var(--warning)}
.bq-req-hd{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 14px;cursor:pointer;transition:background var(--tr)}
.bq-req-hd:hover{background:var(--glow)}
.bq-caret{color:var(--tx2);font-size:.75rem;transition:transform var(--tr);flex-shrink:0}
.bq-req.open .bq-caret{transform:rotate(90deg)}
.bq-no{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem;font-weight:700;color:var(--accent);
  background:var(--glow);border:1px solid var(--border2);border-radius:8px;padding:2px 8px;flex-shrink:0}
.bq-req-main{flex:1;min-width:160px}
.bq-cust{font-weight:700;font-size:.88rem}
.bq-meta{font-size:.72rem;color:var(--tx2);margin-top:2px}
.bq-amt{font-weight:700;font-size:.92rem;color:var(--accent);font-variant-numeric:tabular-nums}
.bq-req-bd{display:none;border-top:1px solid var(--border);background:var(--surface)}
.bq-req.open .bq-req-bd{display:block}

.bq-warn,.bq-info{display:flex;gap:10px;align-items:flex-start;margin:14px;padding:10px 12px;
  border-radius:10px;font-size:.78rem;line-height:1.55}
.bq-warn{background:rgba(255,179,0,.08);border:1px solid rgba(255,179,0,.28);color:var(--warning)}
.bq-warn b{color:inherit}
.bq-info{background:var(--glow);border:1px solid var(--border2);color:var(--tx2)}
.bq-info b{color:var(--tx)}
.bq-note{display:flex;gap:10px;align-items:flex-start;margin:14px;padding:10px 12px;border-radius:10px;
  font-size:.78rem;line-height:1.55;color:var(--tx2);background:rgba(91,141,238,.08);border:1px solid rgba(91,141,238,.25)}
.bq-note b{color:var(--tx)}
.bq-note.reject{background:rgba(255,77,106,.08);border-color:rgba(255,77,106,.25)}

.bq-tblwrap{overflow-x:auto}
.bq-tbl{width:100%;border-collapse:collapse;font-size:.79rem;min-width:640px}
.bq-tbl thead th{background:var(--surface2);color:var(--tx2);text-align:left;font-size:.68rem;font-weight:700;
  letter-spacing:.4px;text-transform:uppercase;padding:8px 12px;border-bottom:1px solid var(--border2);white-space:nowrap}
.bq-tbl tbody td{padding:9px 12px;border-bottom:1px solid var(--border);vertical-align:middle}
.bq-tbl tbody tr:hover{background:var(--surface2)}
.bq-tbl tbody tr.is-selected{background:var(--glow)}
.bq-c-date{white-space:nowrap;width:92px}
.bq-c-pick{width:34px}
.bq-kind{display:inline-block;background:var(--surface2);border:1px solid var(--border);border-radius:6px;
  padding:1px 6px;font-size:.66rem;color:var(--tx2);margin:1px 0}

.bq-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding:12px 14px;border-top:1px solid var(--border)}
.bq-lock{font-size:.72rem;color:var(--tx2);display:inline-flex;align-items:center;gap:6px;margin-left:auto}
.bq-lock.warn{color:var(--warning)}
.bq-swaltext{text-align:left;font-size:.82rem;color:var(--tx2);line-height:1.55;margin-bottom:10px}
.bq-swaltext b{color:var(--tx)}

/* Fatura formunda talep şeridi (sevkiyat → fatura köprüsü) */
.iv-reqbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--surface);
  border:1px solid var(--border2);border-left:3px solid var(--accent);border-radius:12px;
  padding:12px 14px;margin-bottom:16px;box-shadow:var(--shadow-sm)}
.iv-reqno{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem;font-weight:700;
  color:var(--accent);background:var(--glow);border:1px solid var(--border2);border-radius:8px;padding:2px 8px}
.iv-reqtxt{font-size:.84rem;color:var(--tx)}
.iv-reqwho{display:block;font-size:.72rem;color:var(--tx2);margin-top:2px}
.iv-reqnote{flex-basis:100%;font-size:.78rem;line-height:1.55;color:var(--tx2);
  background:rgba(91,141,238,.08);border:1px solid rgba(91,141,238,.25);border-radius:10px;padding:8px 11px}
.iv-reqnote b{color:var(--tx)}
.iv-mergetgl{display:inline-flex;align-items:center;gap:7px;font-size:.76rem;color:var(--tx2);
  cursor:pointer;margin-left:14px}
.iv-mergetgl input{accent-color:var(--accent);cursor:pointer}

/* Fatura görüntüleme modalında "Kaynak Sevkiyatlar" (köprü izi) */
.iv-srcship{border-top:1px solid var(--border);background:var(--surface)}
.iv-srcship-hd{display:flex;align-items:center;gap:8px;padding:12px 14px;font-size:.82rem;font-weight:700;color:var(--tx)}
.iv-srcship-hd i{color:var(--accent)}

/* Fatura listesi — entegratör durumu (ikon + kısa etiket; mesajlı olan tıklanır) */
.inv-integ{display:inline-flex;align-items:center;gap:5px;font-size:.67rem;font-weight:600;padding:3px 9px;border-radius:99px}
.inv-integ i{font-size:.72rem}
.inv-integ.none{color:var(--tx3);font-weight:500;padding:0}
.inv-integ.ok{background:rgba(0,214,143,.1);color:var(--success)}
.inv-integ.err{background:rgba(255,77,106,.1);color:var(--danger)}
.inv-integ.info{background:rgba(91,141,238,.12);color:var(--info)}
.inv-integ.purple{background:rgba(139,92,246,.14);color:#8b5cf6}
.inv-integ.warn{background:rgba(255,179,0,.14);color:var(--warning)}
.inv-integ.dark{background:rgba(120,130,150,.16);color:var(--tx2)}
.inv-integ-btn{cursor:pointer;border:1px solid transparent;transition:border-color .12s,filter .12s}
.inv-integ-btn:hover{filter:brightness(1.05)}
.inv-integ-btn.ok:hover{border-color:rgba(0,214,143,.45)}
.inv-integ-btn.err:hover{border-color:rgba(255,77,106,.45)}

/* e-Arşiv iptalinde yasal süre (7 gün) aşıldı uyarısı — SweetAlert gövdesinde gösterilir */
.inv-latewarn{display:flex;gap:9px;text-align:left;font-size:.78rem;line-height:1.45;
  background:rgba(255,179,0,.12);border:1px solid rgba(255,179,0,.35);color:var(--tx1);
  border-radius:10px;padding:11px 13px;margin-bottom:12px}
.inv-latewarn i{color:var(--warning);font-size:.95rem;margin-top:1px;flex-shrink:0}

.act-item{display:flex;gap:11px;align-items:flex-start;padding:9px 0;border-bottom:1px solid var(--border)}
.act-item:last-child{border-bottom:none}
.act-ico{width:30px;height:30px;border-radius:8px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:.74rem}
.act-title{font-size:.78rem;font-weight:500}
.act-time{font-size:.65rem;color:var(--tx2);margin-top:2px}

.qa{display:flex;flex-direction:column;align-items:center;gap:7px;padding:14px 8px;border:1px solid var(--border);border-radius:11px;background:var(--surface2);cursor:pointer;text-align:center;transition:border-color var(--tr),background var(--tr),transform var(--tr)}
.qa:hover{border-color:var(--accent);background:var(--glow);transform:translateY(-2px)}
.qa-ico{width:36px;height:36px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:.9rem}
.qa-lbl{font-size:.7rem;font-weight:600;color:var(--tx2)}

.btn-accent{background:linear-gradient(135deg,var(--accent),var(--accent2));border:none;color:#fff;font-weight:600;font-size:.77rem;letter-spacing:.05em;padding:8px 16px;border-radius:9px;cursor:pointer;transition:opacity var(--tr),transform var(--tr),box-shadow var(--tr);box-shadow:0 4px 14px var(--glow);display:inline-flex;align-items:center;gap:6px}
.btn-accent:hover{opacity:.87;transform:translateY(-1px);color:#fff}
.btn-ghost{background:none;border:1px solid var(--border);color:var(--tx2);font-size:.77rem;font-weight:500;padding:7px 14px;border-radius:9px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:background var(--tr),border-color var(--tr),color var(--tr)}
.btn-ghost:hover{background:var(--glow);border-color:var(--border2);color:var(--tx)}
.btn-danger-soft{background:rgba(255,77,106,.1);border:1px solid rgba(255,77,106,.25);color:var(--danger);font-size:.77rem;font-weight:600;padding:7px 14px;border-radius:9px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:background var(--tr)}
.btn-danger-soft:hover{background:rgba(255,77,106,.2);color:var(--danger)}

/* form elemanları (kart içi) */
.loji-input,.loji-select{
  width:100%;background:var(--surface2);border:1px solid var(--border);
  border-radius:9px;padding:8px 12px;font-size:.82rem;color:var(--tx);outline:none;
  transition:border-color var(--tr),box-shadow var(--tr);
}
.loji-input:focus,.loji-select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--glow)}
.loji-label{display:block;font-size:.66rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--tx2);margin-bottom:6px}

/* -- Boyut yardımcısı: .sm (Bootstrap'ın -sm mantığı; lojiSys temasına uygun,
      kendi bileşen sınıflarımıza eklenir: <input class="loji-input sm">,
      <button class="btn-accent sm">). Tekrar tekrar CSS yazmak yerine kullanılır. -- */
.loji-input.sm,.loji-select.sm{padding:6px 11px;font-size:.79rem;border-radius:8px}
.btn-accent.sm,.btn-ghost.sm,.btn-danger-soft.sm{padding:6px 14px;font-size:.76rem;border-radius:8px}

/* -- kompakt modal formu: çok alanlı formlar tek ekrana sığsın (personel vb.) -- */
.modal-compact .loji-label{font-size:.6rem;letter-spacing:.09em;margin-bottom:3px}
.modal-compact .loji-input,.modal-compact .loji-select{padding:6px 10px;font-size:.78rem}
.modal-compact .info-block-title{margin:0;font-size:.6rem}
.modal-compact .modal-body{padding-top:12px;padding-bottom:12px}
.field-validation-error{color:var(--danger);font-size:.72rem;display:block;margin-top:4px}
.validation-summary-errors{color:var(--danger);font-size:.78rem;margin-bottom:12px}
.validation-summary-errors ul{margin:0;padding-left:18px}

/* ---------- 5) SÜPER ADMİN (PANEL) VARYANTI ----------
   Aynı kabuk, farklı vurgu rengi: firma paneliyle görsel olarak karışmaz. */
body.panel-mode{
  --accent:  #8b7bff;
  --accent2: #6a5be0;
  --glow:    rgba(139,123,255,.16);
}
body.panel-mode[data-theme="light"]{
  --accent:  #6a5be0;
  --accent2: #5347b8;
  --glow:    rgba(106,91,224,.12);
}
body.panel-mode[data-theme="dark"]{
  --border:  rgba(139,123,255,.10);
  --border2: rgba(139,123,255,.22);
}
.panel-tag{
  display:inline-flex;align-items:center;gap:6px;
  font-size:.6rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  padding:3px 10px;border-radius:99px;
  background:var(--glow);color:var(--accent);border:1px solid var(--border2);
}

/* ---------- 6) LOGIN SAYFASI ---------- */
body.login-page{
  --c0:#020b16;--ac:#00c8e0;--ac2:#0099bb;
  --bd:rgba(0,200,224,.1);--bd2:rgba(0,200,224,.22);
  --ltx:#c8e6f4;--mu:#426880;
  --glass:rgba(2,11,24,.68);--glass2:rgba(3,13,28,.86);
  height:100%;overflow:hidden;
  background:var(--c0);color:var(--ltx);
}
body.login-page.panel-login{
  --ac:#8b7bff;--ac2:#6a5be0;
  --bd:rgba(139,123,255,.12);--bd2:rgba(139,123,255,.25);
}

#cv{position:fixed;inset:0;width:100%;height:100%;z-index:0}

.vig{position:fixed;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(ellipse 80% 80% at 50% 50%,transparent 30%,rgba(2,11,22,.52) 68%,rgba(2,11,22,.9) 100%)}

.lpage{position:relative;z-index:2;height:100vh;display:flex;align-items:stretch}

/* sol blok */
.L{
  flex:1;display:flex;flex-direction:column;
  padding:clamp(1.8rem,3.5vw,2.8rem) clamp(2rem,4.5vw,3.8rem);
  gap:0;
}
.l-top{
  display:flex;align-items:center;justify-content:space-between;
  flex-shrink:0;
  opacity:0;animation:up .6s .05s ease forwards;
}
.brand{display:flex;align-items:center;gap:13px}
/* Nabız halkası DAİRESEL: amblem zeminsiz yuvarlak küre, kare halka yakışmıyor. */
.bmark{width:44px;height:44px;border-radius:50%;flex-shrink:0;animation:bpulse 4s ease-in-out infinite}
.bmark img{width:100%;height:100%;display:block}
@keyframes bpulse{0%,100%{box-shadow:0 0 0 0 rgba(0,200,224,.12)}50%{box-shadow:0 0 0 10px rgba(0,200,224,0)}}
.bname{font-size:1.22rem;font-weight:800;letter-spacing:.04em}
.bname em{color:var(--ac);font-style:normal}
.bsub{font-size:.6rem;letter-spacing:.15em;text-transform:uppercase;color:var(--mu);margin-top:3px}
.live{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--bd2);border-radius:100px;padding:6px 16px;font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ac);font-weight:600;background:rgba(0,200,224,.05);backdrop-filter:blur(10px)}
.ldot{width:6px;height:6px;border-radius:50%;background:var(--ac);box-shadow:0 0 10px var(--ac);animation:blink 2s ease infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.2}}

.l-mid{flex:1;display:flex;flex-direction:column;justify-content:center;opacity:0;animation:up .6s .22s ease forwards}
.eyebrow{
  display:flex;align-items:center;gap:9px;
  font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--mu);font-weight:500;margin-bottom:1.1rem;
}
.eyebrow::before{content:'';width:24px;height:1px;background:var(--ac);opacity:.5}
.htitle{
  font-size:clamp(2rem,3vw,3rem);
  font-weight:800;line-height:1.1;letter-spacing:-.03em;
  margin-bottom:1.1rem;
}
.htitle .hl{
  display:block;
  background:linear-gradient(95deg,var(--ac) 0%,#5ee8ff 60%,#a8f0ff 100%);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.hdesc{font-size:.9rem;line-height:1.75;color:var(--mu);font-weight:300;max-width:420px;margin-bottom:1.8rem}

.metrics{display:flex;gap:1.6rem;flex-wrap:wrap}
.metric{display:flex;flex-direction:column;gap:2px}
.metric-n{
  font-size:1.55rem;font-weight:800;line-height:1;
  background:linear-gradient(135deg,var(--ltx) 0%,var(--ac) 100%);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.metric-l{font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--mu)}

.l-bot{flex-shrink:0;opacity:0;animation:up .6s .42s ease forwards}
.pills{display:flex;flex-wrap:wrap;gap:7px}
.pill{display:flex;align-items:center;gap:7px;border:1px solid var(--bd);border-radius:8px;padding:7px 13px;font-size:.73rem;color:var(--mu);background:var(--glass);backdrop-filter:blur(12px);transition:border-color .22s,color .22s,transform .22s,box-shadow .22s;opacity:0}
.pill:hover{border-color:var(--bd2);color:var(--ltx);transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,200,224,.08)}
.pill i{color:var(--ac)}

/* sağ blok (form) */
.R{width:clamp(300px,33%,430px);display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,4.5vw,3rem) clamp(1.75rem,3.5vw,2.5rem);background:var(--glass2);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);border-left:1px solid var(--bd);position:relative;overflow:hidden}
.R::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:1.5px;background:linear-gradient(90deg,transparent,var(--ac),transparent);animation:sweep 4s ease-in-out infinite}
@keyframes sweep{0%{left:-100%;opacity:0}6%{opacity:1}94%{opacity:1}100%{left:100%;opacity:0}}
.R::after{content:'';position:absolute;bottom:-90px;right:-90px;width:260px;height:260px;background:radial-gradient(circle,rgba(0,200,224,.055) 0%,transparent 65%);pointer-events:none;animation:breathe 8s ease-in-out infinite}
@keyframes breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.25)}}

.fhead{margin-bottom:1.75rem;opacity:0;animation:up .55s .25s ease forwards}
.ftitle{font-size:1.48rem;font-weight:700;margin-bottom:.28rem;letter-spacing:-.01em}
.fsub{font-size:.81rem;color:var(--mu);font-weight:300;line-height:1.5}
.ffields{opacity:0;animation:up .55s .4s ease forwards}
.flb{display:block;font-size:.66rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--mu);margin-bottom:7px}
.fw{position:relative;margin-bottom:1.1rem}
.fi{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--mu);font-size:.88rem;pointer-events:none;transition:color .25s}
.finput{width:100%;background:rgba(3,11,26,.65);border:1px solid var(--bd);border-radius:10px;padding:12.5px 40px 12.5px 38px;font-family:var(--font);font-size:.86rem;color:var(--ltx);outline:none;transition:border-color .25s,box-shadow .25s,background .25s;-webkit-appearance:none}
.finput::placeholder{color:#163248}
.finput:focus{border-color:var(--ac);background:rgba(0,200,224,.05);box-shadow:0 0 0 3px rgba(0,200,224,.09)}
.fw:focus-within .fi{color:var(--ac)}
.fbar{position:absolute;bottom:1px;left:10px;right:10px;height:1px;background:var(--ac);transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.4,0,.2,1);border-radius:1px;box-shadow:0 0 10px var(--ac)}
.fw:focus-within .fbar{transform:scaleX(1)}
.pw-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--mu);font-size:.88rem;cursor:pointer;transition:color .2s;padding:2px;line-height:1}
.pw-toggle:hover{color:var(--ac)}
.xrow{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.35rem}
.xlink{color:var(--ac);text-decoration:none;font-size:.76rem;font-weight:500}
.xlink:hover{text-decoration:underline}
.ckl{display:flex;align-items:center;gap:9px;cursor:pointer;user-select:none}
.ckl input{display:none}
.ckbox{width:16px;height:16px;border:1px solid var(--bd2);border-radius:4px;background:rgba(3,11,26,.65);display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}
.ckl input:checked~.ckbox{background:var(--ac);border-color:var(--ac);box-shadow:0 0 12px rgba(0,200,224,.35)}
.ckl input:checked~.ckbox::after{content:'';width:8px;height:5px;border-left:2px solid var(--c0);border-bottom:2px solid var(--c0);transform:rotate(-45deg) translateY(-1px);display:block}
.ckt{font-size:.78rem;color:var(--mu)}
.flnk{font-size:.78rem;color:var(--ac);text-decoration:none;font-weight:500;transition:opacity .2s}
.flnk:hover{opacity:.7}
.fbtn{width:100%;padding:13.5px;background:linear-gradient(135deg,var(--ac),var(--ac2));border:none;border-radius:10px;font-size:.83rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--c0);cursor:pointer;transition:opacity .2s,transform .2s,box-shadow .2s;box-shadow:0 4px 22px rgba(0,200,224,.22);position:relative;overflow:hidden}
.fbtn::after{content:'';position:absolute;top:0;left:-75%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);transform:skewX(-20deg);animation:shim 3.8s 1.5s ease-in-out infinite}
@keyframes shim{0%{left:-75%}55%,100%{left:130%}}
.fbtn:hover:not(:disabled){opacity:.88;transform:translateY(-1.5px);box-shadow:0 8px 30px rgba(0,200,224,.38)}
.fbtn:active:not(:disabled){transform:none}
.fbtn:disabled{opacity:.5;cursor:not-allowed}
.fbi{display:flex;align-items:center;justify-content:center;gap:9px}
.divd{display:flex;align-items:center;gap:12px;margin:1.2rem 0;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--mu)}
.divd::before,.divd::after{content:'';flex:1;height:1px;background:var(--bd)}
.ffoot{text-align:center;font-size:.77rem;color:var(--mu);margin-bottom:.9rem}
.ffoot a{color:var(--ac);text-decoration:none;font-weight:500}
.fsec{display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid rgba(0,200,224,.07);border-radius:9px;padding:9px 12px;background:rgba(0,200,224,.025);font-size:.68rem;color:var(--mu);letter-spacing:.04em}
.fsec i{color:var(--ac);font-size:.8rem}
.ferr{border:1px solid rgba(255,77,106,.3);background:rgba(255,77,106,.08);color:#ff8ba0;border-radius:9px;padding:9px 12px;font-size:.76rem;margin-bottom:1rem}
.ferr:empty{display:none}

/* Login akışı bilgilendirme kutusu (şifremi unuttum/sıfırla — gönderildi/geçersiz) */
.fnotice{display:flex;gap:11px;align-items:flex-start;border:1px solid rgba(0,200,224,.28);background:rgba(0,200,224,.06);border-radius:11px;padding:13px 15px;margin-bottom:1.1rem}
.fnotice i{color:var(--ac);font-size:1.15rem;margin-top:1px}
.fnotice strong{display:block;font-size:.84rem;color:var(--tx,#e8f6f8);margin-bottom:3px}
.fnotice p{font-size:.76rem;color:var(--mu);line-height:1.55;margin:0}
.fnotice.ok{border-color:rgba(52,211,153,.32);background:rgba(52,211,153,.07)}
.fnotice.ok i{color:#34d399}

@keyframes up{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

@media(max-width:800px){
  .L{display:none}.R{width:100%;border-left:none;background:rgba(2,8,18,.92)}
  body.login-page{overflow:auto}.lpage{height:auto;min-height:100vh}
}
@media(max-width:360px){.R{padding:1.75rem 1.1rem}}

/* ---------- 7) DATATABLES & SWEETALERT UYUMU ---------- */
/* Kapatma (×) butonu tema uyumu: markup dark-öncelikli `btn-close-white` kullanır
   (beyaz ikon). Light temada filtre kaldırılır → Bootstrap'ın siyah ikonu döner;
   böylece × her iki temada da görünür (tüm modal/offcanvas'lar için tek kural). */
[data-theme="light"] .btn-close.btn-close-white{filter:none}

.swal-nx{border:1px solid var(--border2) !important;border-radius:16px !important;box-shadow:0 20px 60px rgba(0,0,0,.4) !important}
.swal2-input{background:var(--surface2) !important;border-color:var(--border2) !important;color:var(--tx) !important;border-radius:9px !important;font-size:.84rem !important}
.swal2-input:focus{border-color:var(--accent) !important;box-shadow:0 0 0 3px var(--glow) !important}

/* DataTables 2.x + tema değişkenleri */
div.dt-container .dt-search input,
div.dt-container .dt-length select{
  background:var(--surface2);border:1px solid var(--border);color:var(--tx);
  border-radius:8px;padding:5px 10px;font-size:.78rem;outline:none;
}
div.dt-container .dt-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--glow)}
div.dt-container .dt-info,
div.dt-container .dt-length,
div.dt-container .dt-search{color:var(--tx2);font-size:.75rem}
div.dt-container .dt-paging button.dt-paging-button{
  color:var(--tx2) !important;border:1px solid var(--border) !important;
  border-radius:8px !important;background:none !important;font-size:.75rem;
}
div.dt-container .dt-paging button.dt-paging-button.current{
  background:var(--glow) !important;color:var(--accent) !important;border-color:var(--border2) !important;
}
div.dt-container .dt-paging button.dt-paging-button:hover:not(.disabled){
  background:var(--surface2) !important;color:var(--tx) !important;
}
table.dataTable{color:var(--tx)}
table.dataTable thead th{border-bottom:1px solid var(--border) !important}
table.dataTable tbody td{border-bottom:1px solid var(--border) !important}

@media(max-width:575.98px){.tb-breadcrumb,.tb-search{display:none !important}}

/* ============================================================
   CARİ EKSTRE (detay sayfası) — özet kartlar, filtre chip'leri,
   hareket offcanvas'ı, dağıtım listesi, yazdırma
   ============================================================ */

/* -- özet kartlar: üst renk şeridi + değer -- */
.ek-card{
  background:var(--surface);border:1px solid var(--border);border-radius:14px;
  padding:16px 18px;height:100%;display:flex;flex-direction:column;gap:12px;
  position:relative;overflow:hidden;transition:box-shadow var(--tr);
}
.ek-card:hover{box-shadow:var(--shadow-sm)}
.ek-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--accent)}
.ek-card[data-accent="info"]::before{background:var(--info)}
.ek-card[data-accent="danger"]::before{background:var(--danger)}
.ek-card[data-accent="success"]::before{background:var(--success)}
.ek-card[data-accent="warning"]::before{background:var(--warning)}
.ek-head{display:flex;align-items:flex-start;gap:12px}
.ek-label{font-size:.63rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--tx2)}
.ek-value{font-size:1.45rem;font-weight:800;letter-spacing:-.02em;line-height:1.2;margin-top:2px}
.ek-sub{font-size:.68rem;color:var(--tx3);margin-top:2px}
.ek-foot{font-size:.68rem;color:var(--tx2);border-top:1px solid var(--border);padding-top:9px;margin-top:auto}

/* -- filtre chip'leri -- */
.chip-group{display:inline-flex;gap:4px;background:var(--surface2);border:1px solid var(--border);border-radius:11px;padding:4px;flex-wrap:wrap}
.chip{
  background:none;border:none;border-radius:8px;padding:5px 11px;cursor:pointer;
  font-size:.72rem;font-weight:600;color:var(--tx2);display:inline-flex;align-items:center;gap:6px;
  transition:background var(--tr),color var(--tr);white-space:nowrap;
}
.chip:hover{color:var(--tx)}
.chip.active{background:var(--surface);color:var(--tx);box-shadow:var(--shadow-sm);border:1px solid var(--border2);padding:4px 10px}

/* -- filtre dropdown butonları (ekstre filtre çubuğu) -- */
.filter-dd{
  display:inline-flex;align-items:center;gap:7px;background:var(--surface2);
  border:1px solid var(--border);border-radius:11px;padding:8px 13px;cursor:pointer;
  font-size:.74rem;font-weight:600;color:var(--tx2);white-space:nowrap;
  transition:border-color var(--tr),background var(--tr),color var(--tr);
}
.filter-dd:hover{color:var(--tx);border-color:var(--border2)}
.filter-dd .fd-label{color:var(--tx3);font-weight:500}
.filter-dd .fd-value{color:var(--tx);font-weight:700}
.filter-dd .fd-caret{font-size:.55rem;color:var(--tx3);transition:transform .15s ease}
.filter-dd.show .fd-caret{transform:rotate(180deg)}
.filter-dd.filtered{border-color:var(--accent);background:var(--glow)}
.filter-dd.filtered .fd-value{color:var(--accent)}
.filter-menu{min-width:185px}
.filter-menu .dropdown-item{gap:9px}
.filter-menu .dropdown-item .fd-ico{width:16px;text-align:center;font-size:.74rem;color:var(--tx2)}
.filter-menu .dropdown-item .fd-check{margin-left:auto;font-size:.66rem;color:var(--accent);opacity:0}
.filter-menu .dropdown-item.active{background:var(--glow);font-weight:600}
.filter-menu .dropdown-item.active .fd-check{opacity:1}
.filter-clear{
  display:inline-flex;align-items:center;gap:6px;background:transparent;
  border:1px dashed var(--border2);border-radius:11px;padding:8px 12px;cursor:pointer;
  font-size:.72rem;font-weight:600;color:var(--tx2);white-space:nowrap;
  transition:border-color var(--tr),color var(--tr);
}
.filter-clear:hover{color:var(--danger);border-color:var(--danger)}

/* -- detaylı bilgi bloğu -- */
.info-block-title{font-size:.63rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:7px}
.info-lbl{color:var(--tx2);font-weight:600}
.btn-link-accent{background:none;border:none;color:var(--accent);font-size:.72rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:5px;padding:2px 6px}
.btn-link-accent:hover{opacity:.75}

/* -- bootstrap dropdown teması -- */
.loji-dropdown{background:var(--surface);border:1px solid var(--border2);border-radius:12px;box-shadow:var(--shadow);padding:6px;min-width:230px}
.loji-dropdown .dropdown-item{color:var(--tx);font-size:.78rem;font-weight:500;border-radius:8px;padding:8px 12px;display:flex;align-items:center}
.loji-dropdown .dropdown-item:hover{background:var(--glow);color:var(--tx)}
.loji-dropdown .dropdown-item:disabled{color:var(--tx3);opacity:.65}
.loji-dropdown .dropdown-divider{border-color:var(--border);margin:4px 6px;opacity:1}

/* -- hareket offcanvas'ı -- */
.loji-offcanvas{background:var(--surface);color:var(--tx);border-left:1px solid var(--border2);width:430px;max-width:96vw}
.loji-offcanvas .offcanvas-header{border-bottom:1px solid var(--border);padding:16px 18px}
.loji-offcanvas .offcanvas-body{padding:16px 18px}
.loji-offcanvas form{display:flex;flex-direction:column;height:100%}
.offcanvas-footer{border-top:1px solid var(--border);padding:13px 18px;display:flex;justify-content:flex-end;gap:9px}
.tx-badge-strip{padding:11px 18px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:9px;background:var(--surface2)}

/* -- büyük tutar girişi -- */
.amount-wrap{
  display:flex;align-items:center;gap:10px;background:var(--surface2);
  border:1px solid var(--border);border-radius:13px;padding:14px 14px;
  transition:border-color var(--tr),box-shadow var(--tr);
}
.amount-wrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--glow)}
.amount-symbol{font-size:1rem;color:var(--tx3);font-weight:700}
.amount-wrap input{
  flex:1;background:none;border:none;outline:none;color:var(--tx);
  font-size:1.55rem;font-weight:800;text-align:right;min-width:0;letter-spacing:-.02em;
}
.amount-wrap .loji-select{flex:0 0 auto}

/* -- dağıtım (FIFO / manuel) -- */
.alloc-tabs{display:flex;background:var(--surface2);border:1px solid var(--border);border-radius:11px;padding:4px;gap:4px;margin-top:6px}
.alloc-tab{
  flex:1;background:none;border:none;border-radius:8px;padding:7px 10px;cursor:pointer;
  font-size:.72rem;font-weight:700;color:var(--tx2);display:flex;align-items:center;justify-content:center;gap:6px;
  transition:background var(--tr),color var(--tr);
}
.alloc-tab.active{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff}
.alloc-panel{margin-top:8px}
.alloc-item{
  display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--border);
  border-radius:10px;margin-bottom:6px;cursor:pointer;transition:border-color var(--tr);
}
.alloc-item:hover{border-color:var(--border2)}
.alloc-meta{flex:1;font-size:.74rem;min-width:0}
/* Tutar kutusu: her iki dağıtım panelinde de (alloc-amount / av-amount) sabit genişlik */
.alloc-item .loji-input{width:110px;flex:0 0 auto;text-align:right;font-weight:700;padding:5px 9px;font-size:.78rem}
.alloc-meta div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* -- finansa yansıtma kutusu -- */
.finance-check{
  display:flex;gap:10px;align-items:flex-start;background:var(--surface2);
  border:1px solid var(--border);border-radius:11px;padding:11px 13px;cursor:pointer;
}
.finance-check input{margin-top:3px;accent-color:var(--accent)}

/* -- türe göre dolu butonlar (offcanvas kaydet) -- */
.btn-danger-solid,.btn-success-solid{
  border:none;color:#fff;font-weight:700;font-size:.77rem;letter-spacing:.04em;
  padding:8px 18px;border-radius:9px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;
  transition:opacity var(--tr),transform var(--tr);
}
.btn-danger-solid{background:linear-gradient(135deg,var(--danger),#d63384)}
.btn-success-solid{background:linear-gradient(135deg,var(--success),#00b3a4)}
.btn-danger-solid:hover,.btn-success-solid:hover{opacity:.88;transform:translateY(-1px)}
.btn-danger-solid:disabled,.btn-success-solid:disabled{opacity:.55;cursor:default;transform:none}

/* -- yazdırma: yalnızca başlık + özet + ekstre tablosu -- */
@media print{
  #sidebar,#topbar,#flyout,#sb-overlay,#page-loader,.no-print,
  .dt-search,.dt-length,.dt-paging,.dt-info{display:none !important}
  .main-wrap{margin-left:0 !important}
  .main-content{padding:0 !important}
  body{background:#fff !important}
  .card,.ek-card{box-shadow:none !important;border:1px solid #ccc !important}
}

/* -- özet kartlarda ek döviz satırları (dövizler çapraz toplanmaz, ayrı gösterilir) -- */
.ek-curlines{margin-top:4px;font-size:.72rem;font-weight:700;color:var(--tx2);line-height:1.5}
.ek-curlines:empty{display:none}

/* ---------- Aranabilir select (loji-combo) ---------- */
.loji-combo-wrap{position:relative}
.loji-combo-wrap>select{display:none!important}
.loji-combo-panel{
  position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:1080;
  background:var(--surface);border:1px solid var(--border2);border-radius:10px;
  max-height:240px;overflow-y:auto;box-shadow:0 10px 28px rgba(0,0,0,.28);
}
.loji-combo-item{display:block;padding:7px 12px;font-size:.78rem;color:var(--tx);cursor:pointer}
.loji-combo-item:hover,.loji-combo-item.active{background:var(--surface2);color:var(--accent)}
.loji-combo-clear{color:var(--tx3);border-bottom:1px solid var(--border)}
.loji-combo-empty{padding:8px 12px;font-size:.72rem;color:var(--tx3)}

/* ---------- Sevkiyat formu: OZ/KIRA gecisi + hizli ekleme popover'i ---------- */
/* OZ/KIRA butonlari: yandaki input'larla ayni yukseklik/genislik (esit bolunmus) */
.loji-src-row{width:100%}
.loji-src-btn{flex:1;justify-content:center;padding:6px 12px;font-size:.82rem;font-weight:700}
.loji-src-btn.active{
  border-color:var(--accent);color:var(--accent);
  background:rgba(0,200,224,.10);
}
/* Combo + "+" butonu satiri: buton input yuksekligine yapisir (kare, ikon ortali) */
.s-addwrap{position:relative;align-items:stretch!important}
.s-quick-add{
  align-self:stretch;flex:0 0 auto;width:38px;padding:0!important;
  justify-content:center;color:var(--accent);
}
.s-quick-add:hover{border-color:var(--accent);background:var(--glow)}
.loji-pop{
  position:absolute;top:calc(100% + 6px);right:0;z-index:1090;min-width:250px;
  background:var(--surface);border:1px solid var(--border2);border-radius:12px;
  padding:12px 14px;box-shadow:0 12px 32px rgba(0,0,0,.32);
}
.loji-pop-title{font-size:.78rem;font-weight:700;color:var(--tx);margin-bottom:8px}

/* ============================================================
   Sevkiyat listesi — filtre / seçim / kolon / satır menüsü
   (Tüm renkler tema değişkenlerinden; dark+light otomatik.)
   ============================================================ */
.mono{font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace;font-size:.94em;letter-spacing:-.01em}

/* ---- Üst filtre çubuğu ---- */
/* Yalnız yerleşim; boyut .sm sınıfından gelir (markup'ta loji-input sm / btn-accent sm) */
.ship-filterbar{display:flex;gap:7px;align-items:center;flex-wrap:wrap;padding:9px 14px;border-bottom:1px solid var(--border)}
.ship-filterbar .sf-field{display:flex;flex-direction:column;gap:0}
.ship-filterbar .loji-input{min-width:0}
.ship-filterbar input[type="date"].loji-input{width:124px}
.sf-search{position:relative}

/* Genel filtre çubuğu (küçük istemci-tarafı listeler: navlun tarifesi vb.) */
.filter-bar{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}
.filter-bar .filter-field{display:flex;flex-direction:column;gap:3px}
.filter-bar .filter-field .loji-select{min-width:150px}
@media (max-width:640px){
  .filter-bar .filter-field{flex:1 1 140px}
  .filter-bar .filter-field .loji-select{min-width:0;width:100%}
}
.sf-search .loji-input{width:220px;max-width:100%;padding-left:28px}
.sf-search-ico{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--tx3);font-size:.72rem;pointer-events:none}
.sf-spacer{flex:1 1 auto;min-width:0}
.sf-addbtn,.sf-advbtn{align-self:center}
.sf-advbtn .sf-chev{transition:transform var(--tr);font-size:.6rem;margin-left:1px}
.sf-advbtn.active .sf-chev{transform:rotate(180deg)}
.sf-badge{background:var(--accent);color:#04222a;font-size:.58rem;font-weight:700;border-radius:99px;padding:0 5px;min-width:15px;text-align:center;line-height:1.6}

/* ---- Açılır detaylı filtre paneli ---- */
.ship-advpanel{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--tr);background:var(--surface2)}
.ship-advpanel.open{grid-template-rows:1fr;border-bottom:1px solid var(--border)}
.ship-advpanel-in{overflow:hidden}
.ship-advgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px 14px;padding:18px}
.ship-advgrid .loji-input,.ship-advgrid .loji-select{width:100%;min-width:0}
.ship-advfoot{display:flex;justify-content:flex-end;padding:0 18px 16px}

/* ---- Aktif filtre çipleri ---- */
.ship-chips{display:none;flex-wrap:wrap;gap:8px;align-items:center;padding:0}
.ship-chips.show{display:flex;padding:13px 18px;border-bottom:1px solid var(--border)}
.ship-fchip{display:inline-flex;align-items:center;gap:7px;font-size:.73rem;color:var(--tx2);background:var(--glow);border:1px solid var(--border2);border-radius:99px;padding:4px 6px 4px 12px}
.ship-fchip b{color:var(--tx);font-weight:600}
.fchip-x{cursor:pointer;width:17px;height:17px;display:grid;place-items:center;border-radius:50%;color:var(--tx2);font-size:.7rem;transition:background var(--tr),color var(--tr)}
.fchip-x:hover{background:var(--danger);color:#fff}
.ship-fchip-clear{background:none;border:none;color:var(--tx3);font-size:.73rem;cursor:pointer;text-decoration:underline;padding:2px 4px}
.ship-fchip-clear:hover{color:var(--tx)}

/* ---- Tablo araç çubuğu (görünümler + kolon seçici) ---- */
.ship-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 18px;border-bottom:1px solid var(--border);transition:opacity var(--tr)}
.ship-toolbar.is-dim{opacity:.45;pointer-events:none}
.ship-presets{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.ship-presets-lbl{font-size:.62rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:var(--tx3);margin-right:2px}
.ship-preset{font-size:.76rem;font-weight:600;padding:6px 14px;border-radius:99px;border:1px solid var(--border);background:var(--surface);color:var(--tx2);cursor:pointer;transition:all var(--tr)}
.ship-preset:hover{border-color:var(--accent);color:var(--tx)}
.ship-preset.active{background:linear-gradient(135deg,var(--accent),var(--accent2));border-color:transparent;color:#fff;box-shadow:0 3px 12px var(--glow)}
.ship-toolbar-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ship-info{font-size:.76rem;color:var(--tx2);font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}
.ship-tbdiv{width:1px;height:22px;background:var(--border);margin:0 2px;align-self:center}
.btn-ghost.btn-icon{width:36px;padding-left:0;padding-right:0;justify-content:center}
/* Sayfa başına kayıt seçicisi + sayfalama tablonun ALTINDA; ince aralık */
div.dt-container .dt-layout-row:last-child{margin-top:14px;align-items:center;row-gap:10px}
div.dt-container .dt-length label{display:inline-flex;align-items:center;gap:7px;margin:0}
/* Tablo sarmalayıcı: p-3 (!important) yerine — üst dolgu az, böylece kayıt
   bilgisi ile başlık arası boşluk küçük kalır (yan/alt dolgu korunur) */
.ship-tblwrap{padding:2px 16px 14px}
/* Başlık satırı zeminle ayrışsın: hafif dolgulu bant + belirgin alt çizgi */
#shipmentCard table.dt thead th{
  background:var(--surface2);color:var(--tx2);
  border-bottom:1px solid var(--border2);
}
#shipmentCard table.dt thead th:first-child{border-radius:9px 0 0 9px}
#shipmentCard table.dt thead th:last-child{border-radius:0 9px 9px 0}
/* Tablo boyut kademeleri (btnShrink/btnGrow; varsayılan = sınıfsız) */
#shipmentCard.ship-size-xs table.dt{font-size:.7rem}
#shipmentCard.ship-size-xs table.dt tbody td{padding:5px 10px}
#shipmentCard.ship-size-xs table.dt thead th{padding:6px 10px;font-size:.56rem}
#shipmentCard.ship-size-sm table.dt{font-size:.745rem}
#shipmentCard.ship-size-sm table.dt tbody td{padding:8px 11px}
#shipmentCard.ship-size-sm table.dt thead th{padding:7px 11px;font-size:.6rem}
#shipmentCard.ship-size-lg table.dt{font-size:.86rem}
#shipmentCard.ship-size-lg table.dt tbody td{padding:14px 15px}
#shipmentCard.ship-size-lg table.dt thead th{padding:11px 15px;font-size:.68rem}
.ship-toolbar-right .btn-ghost:disabled{opacity:.35;pointer-events:none}

/* Görünüm + kolonlar birleşik kompakt menüsü (tek ikon → dropdown) */
.ship-viewwrap{position:relative}
.ship-view-caret{font-size:.54rem;opacity:.5;margin-left:3px}
.ship-viewmenu{padding:10px;min-width:290px;max-width:340px}
.ship-vm-hd{font-size:.61rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--tx3);padding:2px 6px 7px}
.ship-vm-presets{display:flex;gap:6px;flex-wrap:wrap;padding:0 4px 2px}
.ship-vm-presets .ship-preset{flex:1 1 0;text-align:center}
.ship-vm-div{height:1px;background:var(--border);margin:10px 2px}
.ship-colmenu{display:grid;grid-template-columns:1fr 1fr;gap:1px;max-height:42vh;overflow-y:auto;padding:2px 0}
.ship-colmenu-item{display:flex;align-items:center;gap:9px;font-size:.78rem;color:var(--tx);padding:7px 9px;border-radius:8px;cursor:pointer;user-select:none}
.ship-colmenu-item:hover{background:var(--glow)}
.ship-colmenu-item input{accent-color:var(--accent);width:15px;height:15px;cursor:pointer;flex:0 0 auto}
@media(max-width:400px){.ship-viewmenu{min-width:0;width:calc(100vw - 28px)}}

/* ---- Yüzen toplu işlem çubuğu (ekran alt-ortası) ---- */
.ship-bulkbar{
  position:fixed;left:50%;bottom:26px;z-index:1080;
  display:flex;align-items:center;gap:3px;padding:6px 7px 6px 8px;
  background:var(--surface);border:1px solid var(--border);border-radius:999px;
  box-shadow:0 8px 28px rgba(0,0,0,.20),0 1px 3px rgba(0,0,0,.10);
  opacity:0;pointer-events:none;transform:translateX(-50%) translateY(12px) scale(.97);
  transition:opacity .2s ease,transform .2s cubic-bezier(.34,1.35,.5,1);
}
.ship-bulkbar.show{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0) scale(1)}
.ship-bulk-count{display:inline-flex;align-items:center;gap:6px;font-size:.77rem;font-weight:600;color:var(--accent);padding:5px 12px 5px 13px}
.ship-bulk-count .n{font-weight:700;font-variant-numeric:tabular-nums}
.ship-bulk-div{width:1px;height:18px;background:var(--border);margin:0 2px}
.ship-bulk-dd{position:relative}
.ship-bulk-btn{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;font-weight:500;font-family:inherit;
  padding:7px 13px;border-radius:999px;border:none;background:none;color:var(--tx);cursor:pointer;transition:background var(--tr)}
.ship-bulk-btn:hover,.ship-bulk-btn[aria-expanded="true"]{background:var(--glow)}
.ship-bulk-btn .ship-dd-caret{font-size:.55rem;opacity:.45;margin-left:0}
.ship-bulk-btn.icon{padding:0;width:34px;height:34px;justify-content:center;color:var(--tx2)}
.ship-bulk-btn.icon:hover{color:var(--tx)}
.ship-bulk-menu{min-width:180px;margin-bottom:10px!important}
.ship-bulk-menu .dropdown-item{gap:10px}
.ship-bulk-menu .ship-item-danger{color:var(--danger)}
.ship-bulk-menu .ship-item-danger:hover{background:rgba(255,77,106,.1);color:var(--danger)}
.ship-bulk-menu .ship-item-danger .ship-mi-ico{color:var(--danger)}
.ship-mi-ico{width:15px;text-align:center;color:var(--tx3);font-size:.8rem}
.ship-bulk-close{width:32px;height:32px;flex:0 0 auto;border-radius:50%;border:none;background:none;color:var(--tx3);
  cursor:pointer;display:grid;place-items:center;font-size:.88rem;transition:background var(--tr),color var(--tr)}
.ship-bulk-close:hover{background:var(--surface2);color:var(--tx)}
@media(max-width:480px){.ship-bulkbar{left:12px;right:12px;transform:translateY(14px) scale(.96);justify-content:center;flex-wrap:wrap}
  .ship-bulkbar.show{transform:translateY(0) scale(1)}}

/* ---- Seçim kolonu + satırlar ---- */
/* Seçim ve işlem kolonları HER boyut kademesinde dar kalır: boyut sınıfları
   (#shipmentCard.ship-size-*) hücre dolgusunu ID özgüllüğüyle ezdiğinden
   burada !important zorunludur (bilinçli). */
table.dt th.ship-pick,table.dt td.ship-pick{width:26px;padding:8px 6px 8px 12px !important;text-align:center}
table.dt th.ship-actcol,table.dt td.ship-actcol{width:26px;padding:8px 4px 8px 0 !important;text-align:center}
.ship-cbx{accent-color:var(--accent);width:13px;height:13px;cursor:pointer;vertical-align:middle}
table.dt tbody tr.is-selected{background:var(--glow)}
table.dt tbody tr.is-selected:hover{background:var(--glow)}
.ship-subrow{font-size:.68rem;color:var(--tx3);margin-top:3px}
.ship-money{font-weight:600;font-variant-numeric:tabular-nums}
.ship-money.rev{color:var(--success)}
.ship-money.cost{color:var(--tx2);font-weight:500}
.ship-money.profit{font-weight:700}

/* Satır kebab düğmesi */
.ship-kebab{width:28px;height:28px;border-radius:8px;border:1px solid transparent;background:none;color:var(--tx3);cursor:pointer;
  display:inline-grid;place-items:center;font-size:.9rem;transition:all var(--tr)}
.ship-kebab:hover,.ship-kebab.open{color:var(--accent);background:var(--glow);border-color:var(--border2)}

/* ---- Satır işlem menüsü (fixed, JS konumlandırır) ---- */
.ship-rowmenu{position:fixed;z-index:1085;min-width:180px;background:var(--surface);border:1px solid var(--border2);
  border-radius:12px;padding:6px;box-shadow:0 12px 32px rgba(0,0,0,.32);animation:shipMenuIn .12s ease}
@keyframes shipMenuIn{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}
.ship-mi{display:flex;align-items:center;gap:11px;width:100%;padding:9px 12px;border:none;background:none;color:var(--tx);
  font-size:.81rem;font-weight:500;font-family:inherit;text-align:left;border-radius:8px;cursor:pointer;transition:background var(--tr)}
.ship-mi:hover{background:var(--glow)}
.ship-mi .mi-ico{width:15px;text-align:center;color:var(--tx3);font-size:.8rem}
.ship-mi.danger{color:var(--danger)}
.ship-mi.danger:hover{background:rgba(255,77,106,.12)}
.ship-mi.danger .mi-ico{color:var(--danger)}
.ship-mdiv{height:1px;background:var(--border);margin:5px 8px}

/* ---- Salt-okunur detay modalı (çift tık) ---- */
.ship-dm-head{align-items:flex-start;border-bottom:1px solid var(--border)}
.ship-dm-title{font-size:1rem;font-weight:700;letter-spacing:-.01em}
.ship-dm-sub{font-size:.74rem;color:var(--tx2);margin-top:3px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.ship-dm-dot{color:var(--tx3);margin:0 2px}
.ship-dm-body{display:flex;flex-direction:column;gap:16px;padding:16px 18px}
.ship-dm-foot{border-top:1px solid var(--border)}
.ship-dm-route{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--surface2);
  border:1px solid var(--border);border-radius:11px;padding:11px 15px}
.ship-dm-stop .k{font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--tx3)}
.ship-dm-stop .v{font-size:.83rem;font-weight:600;margin-top:1px}
.ship-dm-rarr{color:var(--accent);font-size:.72rem;flex:0 0 auto}
.ship-dm-sec{display:flex;flex-direction:column;gap:9px}
.ship-dm-h{font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);
  display:flex;align-items:center;gap:9px}
.ship-dm-h::after{content:'';flex:1;height:1px;background:var(--border)}
.ship-dm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:9px 16px}
.ship-dm-f .k{font-size:.6rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--tx3)}
.ship-dm-f .v{font-size:.82rem;margin-top:1px;overflow-wrap:anywhere}
.ship-dm-amts{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:7px}
.ship-dm-amt{display:flex;justify-content:space-between;gap:8px;font-size:.76rem;color:var(--tx2);
  border:1px solid var(--border);border-radius:9px;padding:6px 10px;background:var(--surface2)}
.ship-dm-amt b{font-variant-numeric:tabular-nums}
.ship-dm-amt.rev b{color:var(--success)}
.ship-dm-amt.cost b{color:var(--tx2)}
.ship-dm-totals{display:flex;gap:22px;flex-wrap:wrap;border-top:1px dashed var(--border);padding-top:9px;margin-top:2px}
.ship-dm-totals span{font-size:.68rem;color:var(--tx3);margin-right:7px;text-transform:uppercase;letter-spacing:.06em}
.ship-dm-totals b{font-size:.85rem;font-variant-numeric:tabular-nums}
.ship-dm-desc{font-size:.8rem;color:var(--tx2);background:var(--surface2);border:1px solid var(--border);
  border-radius:10px;padding:10px 13px;white-space:pre-wrap}
/* Çift tık metin seçimini önle (modal açılışında yazı seçili kalmasın) */
#shipmentTable tbody td{user-select:none}

@media(max-width:640px){
  .sf-search .loji-input{width:100%}
  .ship-filterbar .loji-input,.ship-filterbar .loji-select{min-width:0;width:100%}
  .ship-filterbar .sf-field{flex:1 1 140px}
}

/* ============================================================
   FİRMA AYARLARI HUB'I (/settings) — sekmeler, form grid, toggle, medya
   Tema değişkenleriyle çizilir; dark/light otomatik.
   ============================================================ */
.set-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:22px;flex-wrap:wrap}
.set-tab{background:none;border:none;border-bottom:2px solid transparent;color:var(--tx2);font-size:.8rem;font-weight:600;padding:10px 16px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:color var(--tr),border-color var(--tr);margin-bottom:-1px}
.set-tab:hover{color:var(--tx)}
.set-tab.active{color:var(--accent);border-bottom-color:var(--accent)}
.set-tab i{font-size:.85rem}

.set-panel{display:none}
.set-panel.active{display:block;animation:setFade .25s ease}
@keyframes setFade{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}

.set-section+.set-section{margin-top:26px}
.set-section-title{font-size:.68rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:var(--tx2);margin:0 0 15px;padding-bottom:9px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:8px}
.set-section-title i{color:var(--accent);font-size:.8rem}

.set-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:15px 16px}
.set-grid .full{grid-column:1/-1}
.set-field{display:flex;flex-direction:column;min-width:0}

.set-hint{font-size:.69rem;color:var(--tx3);line-height:1.5;margin-top:6px}

/* Profil sayfası: iki kart yan yana (dar ekranda alt alta) + form aksiyon çubuğu */
.profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;align-items:start}
.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}

/* E-posta Ayarları: hibrit açıklama kutusu */
.mail-info{margin-bottom:16px}
.mail-note{display:flex;gap:12px;align-items:flex-start}
.mail-note>i{color:var(--accent);font-size:1.15rem;margin-top:2px}
.mail-note strong{display:block;font-size:.86rem;color:var(--tx);margin-bottom:4px}
.mail-note p{margin:0;font-size:.78rem;line-height:1.6;color:var(--tx2)}

.set-check{display:inline-flex;align-items:center;gap:7px;font-size:.74rem;color:var(--tx2);cursor:pointer;user-select:none}
.set-check input{accent-color:var(--accent);cursor:pointer}

/* toggle switch */
.set-switch{display:inline-flex;align-items:center;gap:10px;cursor:pointer;user-select:none}
.set-switch input{position:absolute;opacity:0;width:0;height:0}
.set-switch .track{width:38px;height:21px;border-radius:99px;background:var(--bg2);border:1px solid var(--border2);position:relative;transition:background var(--tr),border-color var(--tr);flex-shrink:0}
.set-switch .track::after{content:'';position:absolute;top:2px;left:2px;width:15px;height:15px;border-radius:50%;background:var(--tx3);transition:transform var(--tr),background var(--tr)}
.set-switch input:checked+.track{background:var(--accent);border-color:var(--accent)}
.set-switch input:checked+.track::after{transform:translateX(17px);background:#fff}
.set-switch input:focus-visible+.track{box-shadow:0 0 0 3px var(--glow)}
.set-switch .sw-label{font-size:.8rem;color:var(--tx);font-weight:500}

/* medya (logo / kaşe) */
.set-media{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap}
.set-media-box{width:150px;height:100px;border:1px dashed var(--border2);border-radius:11px;background:var(--surface2);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}
.set-media-box img{max-width:100%;max-height:100%;object-fit:contain}
.set-media-box .ph{color:var(--tx3);font-size:1.7rem}
.set-media-ctrl{display:flex;flex-direction:column;gap:6px;flex:1;min-width:170px}

/* dosya girişi */
input[type=file].set-file{font-size:.75rem;color:var(--tx2);max-width:100%}
input[type=file].set-file::file-selector-button{background:var(--surface2);border:1px solid var(--border);color:var(--tx);border-radius:8px;padding:6px 12px;font-size:.74rem;font-weight:600;cursor:pointer;margin-right:10px;transition:background var(--tr),border-color var(--tr)}
input[type=file].set-file::file-selector-button:hover{border-color:var(--accent);background:var(--glow)}
input[type=file].set-file:disabled{opacity:.5}

.set-file-row{display:flex;align-items:center;gap:9px;font-size:.78rem;color:var(--tx2);margin-bottom:4px;flex-wrap:wrap}
.set-file-row i{color:var(--accent)}
.set-file-link{color:var(--accent);text-decoration:none;font-weight:600}
.set-file-link:hover{text-decoration:underline}

.set-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px;padding-top:16px;border-top:1px solid var(--border)}

/* düzenleme yetkisi yoksa form salt-okunur görünür */
.set-panel fieldset:disabled{opacity:.85}
.set-panel fieldset:disabled .set-actions{display:none}

/* ============================================================
   FATURA OLUŞTUR (Views/Invoice/Create.cshtml + js/pages/invoice-form.js)
   Bağımsız tasarım bloğu — çakışmayı önlemek için tüm sınıflar "iv-" önekli
   ve .iv-root altında token'lanır. Tema: app data-theme'ine uyumlu (dark/light).
   ============================================================ */
.iv-root{
  --iv-card:var(--surface); --iv-fill:var(--surface2); --iv-fill2:var(--border2);
  --iv-ink:var(--tx); --iv-ink2:var(--tx2); --iv-label:var(--tx2); --iv-muted:var(--tx3);
  --iv-line:var(--border); --iv-accent:var(--accent); --iv-accent-ink:var(--accent2);
  --iv-accent-soft:color-mix(in srgb,var(--accent) 16%,transparent);
  --iv-green:#12b06a; --iv-green-soft:color-mix(in srgb,#12b06a 14%,transparent);
  --iv-red:var(--danger); --iv-red-soft:color-mix(in srgb,var(--danger) 14%,transparent);
  --iv-orange:#eaa23b; --iv-blue:#3aa5dc; --iv-teal:#16b0c4; --iv-yellow:#eebb3c; --iv-pink:#e0526a;
  --iv-fh:34px; --iv-r:11px; --iv-rs:7px;
  display:flex;flex-direction:column;gap:13px;color:var(--iv-ink);font-size:13px;line-height:1.4;padding-bottom:8px;
}
.iv-card{background:var(--iv-card);border:1px solid var(--iv-line);border-radius:var(--iv-r);
  border-left:4px solid var(--iv-rail,var(--iv-accent));overflow:hidden;box-shadow:var(--shadow-sm)}
/* Aranabilir combo içeren kartlar: açılır liste kart sınırını aşabilsin (kesilmesin) */
.iv-card.iv-of-visible{overflow:visible}
.iv-hd{display:flex;align-items:center;gap:10px;padding:11px 15px;border-bottom:1px solid var(--iv-line)}
.iv-hd .iv-ic{width:26px;height:26px;border-radius:7px;display:grid;place-items:center;color:#fff;flex:0 0 auto}
.iv-hd .iv-ic svg{width:14px;height:14px}
.iv-hd h2{margin:0;font-size:13.5px;font-weight:700}
.iv-hd .iv-sub{margin-left:auto;font-size:11px;color:var(--iv-muted)}
.iv-bd{padding:15px}
.iv-rail-orange{--iv-rail:var(--iv-orange)} .iv-rail-blue{--iv-rail:var(--iv-blue)}
.iv-rail-teal{--iv-rail:var(--iv-teal)} .iv-rail-green{--iv-rail:var(--iv-green)}
.iv-rail-yellow{--iv-rail:var(--iv-yellow)} .iv-rail-pink{--iv-rail:var(--iv-pink)}
.iv-ic-orange{background:var(--iv-orange)} .iv-ic-blue{background:var(--iv-blue)}
.iv-ic-teal{background:var(--iv-teal)} .iv-ic-green{background:var(--iv-green)}
.iv-ic-yellow{background:var(--iv-yellow)} .iv-ic-pink{background:var(--iv-pink)}

.iv-grid{display:grid;gap:11px 12px}
.iv-field{display:flex;flex-direction:column;gap:5px;min-width:0}
/* Label solda, alan sağda yatay satır (ör. Cari'den Seç combo'su) */
.iv-inline-field{display:flex;align-items:center;gap:14px}
.iv-inline-field>.iv-lbl{flex:0 0 auto;margin:0;white-space:nowrap}
.iv-inline-field>.loji-combo-wrap,.iv-inline-field>.loji-combo{flex:1 1 auto;min-width:0}
.iv-field.col2{grid-column:span 2} .iv-field.full{grid-column:1/-1}
/* Genel Bilgiler — 4'lü satırlar; dar ekranda 2'ye, telefonda 1'e iner */
.iv-grid.iv-g4a{grid-template-columns:1fr 1fr 1.1fr 1.2fr}
.iv-grid.iv-g4b{grid-template-columns:1fr .8fr 1.1fr 1.2fr}
@media (max-width:760px){.iv-grid.iv-g4a,.iv-grid.iv-g4b{grid-template-columns:1fr 1fr}}
/* Telefonda ikişerli eşleşme korunur (Senaryo+Tip / Tarih+Saat / Para+Döviz);
   uzun alanlar (Seri-No, ETTN) tam satıra iner */
@media (max-width:460px){.iv-grid.iv-g4a .iv-fw-sm{grid-column:1/-1}}
.iv-lbl{font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--iv-label);
  display:flex;align-items:center;gap:5px}
.iv-lbl .req{color:var(--iv-red)}
.iv-lbl .opt{font-weight:600;text-transform:none;letter-spacing:0;color:var(--iv-muted);font-size:9.5px}
.iv-inp{width:100%;height:var(--iv-fh);background:var(--iv-fill);border:1px solid transparent;border-radius:var(--iv-rs);
  padding:0 10px;color:var(--iv-ink);font:inherit;font-size:12.5px;outline:none;transition:.15s}
textarea.iv-inp{height:auto;padding:8px 10px;resize:vertical;min-height:56px;line-height:1.4}
.iv-inp::placeholder{color:var(--iv-muted)}
.iv-inp:focus{border-color:var(--iv-accent);background:var(--iv-card);box-shadow:0 0 0 3px var(--iv-accent-soft)}
.iv-inp:disabled,.iv-inp[readonly]{color:var(--iv-ink2);opacity:.85}
.iv-inp:disabled{cursor:not-allowed;opacity:.6}
select.iv-inp{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239aa4b1' stroke-width='2.4'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 11px center;padding-right:30px;cursor:pointer}
.iv-hint{font-size:11.5px;color:var(--iv-muted);display:flex;align-items:center;gap:5px}
.iv-hint svg{flex:0 0 auto;opacity:.8;width:13px;height:13px}
.iv-group{display:flex}
.iv-group .iv-inp{border-top-right-radius:0;border-bottom-right-radius:0}
.iv-suffix{display:flex;align-items:center;padding:0 12px;background:var(--iv-fill2);color:var(--iv-muted);
  font-size:12px;font-weight:600;border-radius:0 var(--iv-rs) var(--iv-rs) 0}
/* Suffix'ten sonra "Güncel" butonu gelince: suffix sağ yuvarlağını bırakır, butona boşluk */
.iv-group .iv-suffix:not(:last-child){border-radius:0}
.iv-group > .iv-btn{margin-left:6px;border-color:var(--iv-fill2);white-space:nowrap}
.iv-ibtn-txt{display:flex;align-items:center;gap:6px;padding:0 13px;background:var(--iv-card);color:var(--iv-accent-ink);
  border:1px solid var(--iv-fill2);border-left:0;border-radius:0 var(--iv-rs) var(--iv-rs) 0;
  font-size:12.5px;font-weight:600;cursor:pointer;white-space:nowrap}
.iv-ibtn-txt:hover{background:var(--iv-accent-soft)}
.iv-ibtn-txt svg{width:14px;height:14px}
.iv-prefix{display:flex;align-items:center;padding:0 11px;background:var(--iv-fill2);color:var(--iv-ink2);
  font-size:12px;font-weight:700;letter-spacing:.03em;border-radius:var(--iv-rs) 0 0 var(--iv-rs)}
.iv-prefix + .iv-inp{border-top-left-radius:0;border-bottom-left-radius:0}
.iv-iconinp{position:relative}
.iv-iconinp .iv-inp{padding-right:36px}
.iv-iconinp .ibtn{position:absolute;right:4px;top:4px;bottom:4px;width:30px;border:0;background:transparent;
  color:var(--iv-muted);border-radius:6px;cursor:pointer;display:grid;place-items:center}
.iv-iconinp .ibtn:hover{background:var(--iv-fill2);color:var(--iv-accent)}
.iv-iconinp .ibtn svg{width:16px;height:16px}

.iv-tabs{margin-left:auto;display:flex;gap:5px;background:var(--iv-fill);padding:3px;border-radius:8px}
.iv-tab{border:0;background:transparent;color:var(--iv-ink2);font:inherit;font-size:11.5px;font-weight:600;
  padding:5px 11px;border-radius:6px;cursor:pointer;display:flex;align-items:center;gap:6px}
.iv-tab svg{width:13px;height:13px}
.iv-tab.on{background:var(--iv-accent);color:#fff}

.iv-btn{display:inline-flex;align-items:center;gap:6px;border-radius:7px;font:inherit;font-size:12px;font-weight:600;
  padding:7px 12px;cursor:pointer;border:1px solid transparent;background:var(--iv-card);color:var(--iv-ink2);transition:.15s}
.iv-btn svg{width:14px;height:14px}
.iv-btn:hover{background:var(--iv-fill)}
.iv-btn-primary{background:var(--iv-accent);color:#fff;border-color:var(--iv-accent)}
.iv-btn-primary:hover{background:var(--iv-accent-ink)}
.iv-btn-outline{background:var(--iv-card);border-color:var(--iv-fill2);color:var(--iv-ink2)}
.iv-btn-outline:hover{border-color:var(--iv-accent);color:var(--iv-accent-ink)}
.iv-btn-danger{background:var(--iv-card);border-color:var(--iv-fill2);color:var(--iv-red)}
.iv-btn-danger:hover{background:var(--iv-red-soft)}
.iv-btn-sm{padding:5px 10px;font-size:11.5px}
.iv-btn-icon{padding:0;gap:0;width:var(--iv-fh);flex:0 0 auto;justify-content:center}
.iv-iconbtn{width:28px;height:28px;border-radius:6px;border:1px solid var(--iv-fill2);background:var(--iv-card);
  color:var(--iv-red);display:grid;place-items:center;cursor:pointer}
.iv-iconbtn:hover{background:var(--iv-red-soft)}
.iv-iconbtn svg{width:14px;height:14px}

.iv-badge{font-size:11px;font-weight:700;color:var(--iv-accent-ink);background:var(--iv-accent-soft);
  padding:2px 9px;border-radius:20px}
.iv-items{width:100%;border-collapse:collapse}
.iv-items thead th{font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--iv-label);
  text-align:left;padding:0 8px 9px;white-space:nowrap}
.iv-items thead th.r{text-align:right} .iv-items thead th.c{text-align:center}
.iv-items td{padding:5px 8px;vertical-align:middle}
.iv-items tbody tr.iv-row:not(:first-child) td{border-top:1px solid var(--iv-line)}
.iv-chips-row td{padding:0 8px 8px;border-top:0!important}
.iv-idx{width:26px;height:26px;border-radius:50%;background:var(--iv-fill);color:var(--iv-ink2);font-size:12px;
  font-weight:700;display:grid;place-items:center}
.iv-items .iv-inp{height:30px;font-size:12px;padding:0 8px}
.iv-c-qty{width:74px} .iv-c-unit{width:96px} .iv-c-price{width:110px} .iv-c-disc{width:66px} .iv-c-kdv{width:86px}
.iv-c-num{width:96px;text-align:right;font-variant-numeric:tabular-nums;color:var(--iv-ink2);font-size:13px}
.iv-c-total{width:104px;text-align:right;font-variant-numeric:tabular-nums;font-weight:700;color:var(--iv-green);font-size:14px}
.iv-c-act{width:40px}
.iv-addtax-btn{width:32px;height:32px;border-radius:50%;border:1.5px dashed var(--iv-fill2);background:var(--iv-card);
  color:var(--iv-muted);cursor:pointer;display:grid;place-items:center;margin:0 auto;transition:.15s}
.iv-addtax-btn svg{width:14px;height:14px}
.iv-addtax-btn:hover{border-color:var(--iv-accent);color:var(--iv-accent)}
.iv-addtax-btn.on{border-style:solid;border-color:var(--iv-accent);color:var(--iv-accent);background:var(--iv-accent-soft)}
.iv-foot{display:flex;gap:8px;align-items:flex-start;margin-top:14px;padding:11px 13px;background:var(--iv-fill);
  border-radius:var(--iv-rs);font-size:11.5px;color:var(--iv-ink2);line-height:1.5}
.iv-foot svg{flex:0 0 auto;margin-top:1px;color:var(--iv-blue);width:15px;height:15px}

.iv-taxrow td{padding:0 8px 12px}
.iv-taxpanel{background:var(--iv-fill);border-radius:var(--iv-rs);padding:14px;margin-top:2px}
.iv-taxpanel-hd{display:flex;align-items:center;gap:8px;margin-bottom:12px}
.iv-taxpanel-hd svg{width:14px;height:14px;color:var(--iv-accent)}
.iv-taxpanel-hd .t{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--iv-accent-ink)}
.iv-taxpanel-hd .n{margin-left:auto;font-size:11px;color:var(--iv-muted)}
.iv-taxpanel-grid{display:grid;grid-template-columns:1fr 300px;gap:14px}
@media (max-width:820px){.iv-taxpanel-grid{grid-template-columns:1fr}}
.iv-taxlist{background:var(--iv-card);border-radius:var(--iv-rs);border:1px solid var(--iv-line);min-height:150px;
  display:flex;flex-direction:column}
.iv-taxlist table{width:100%;border-collapse:collapse}
.iv-taxlist th{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--iv-label);
  text-align:left;padding:9px 11px;border-bottom:1px solid var(--iv-line)}
.iv-taxlist th.r{text-align:right}
.iv-taxlist td{padding:8px 11px;font-size:13px;border-bottom:1px solid var(--iv-line)}
.iv-taxlist td.r{text-align:right;font-variant-numeric:tabular-nums}
.iv-taxlist .empty{margin:auto;padding:28px 14px;color:var(--iv-muted);font-size:12.5px;font-style:italic;text-align:center}
.iv-taxadd{background:var(--iv-card);border-radius:var(--iv-rs);border:1px solid var(--iv-line);padding:14px;
  display:flex;flex-direction:column;gap:10px;align-self:start}
.iv-taxadd .t{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--iv-label);
  display:flex;align-items:center;gap:6px}
.iv-taxadd .t svg{width:13px;height:13px}
.iv-taxadd .calc{background:var(--iv-fill);border-radius:var(--iv-rs);padding:9px 12px;font-size:13px;color:var(--iv-ink2);
  display:flex;justify-content:space-between}
.iv-taxadd .calc b{color:var(--iv-accent-ink);font-variant-numeric:tabular-nums}

.iv-bottom{display:grid;grid-template-columns:1fr 400px;gap:13px;align-items:start}
@media (max-width:900px){.iv-bottom{grid-template-columns:1fr}}
.iv-stack{display:flex;flex-direction:column;gap:13px}
.iv-note-row{display:flex;gap:10px;align-items:flex-start;margin-bottom:10px}
.iv-note-row textarea{flex:1}

.iv-sumblock{background:var(--iv-card);border:1px solid var(--iv-line);border-radius:var(--iv-rs);overflow:hidden}
.iv-sum-hd{background:var(--iv-accent);color:#fff;font-size:11.5px;font-weight:700;letter-spacing:.05em;
  text-transform:uppercase;padding:9px 14px;display:flex;align-items:center;gap:8px}
.iv-sum-hd svg{width:14px;height:14px}
.iv-sum-body{padding:6px 14px}
.iv-sum-line{display:flex;justify-content:space-between;align-items:center;padding:8px 0;font-size:13px;color:var(--iv-ink2)}
.iv-sum-line + .iv-sum-line{border-top:1px solid var(--iv-line)}
.iv-sum-line .v{font-variant-numeric:tabular-nums;font-weight:600;color:var(--iv-ink)}
.iv-sum-line.muted,.iv-sum-line.muted .v{color:var(--iv-muted)}
.iv-sum-line.neg .v{color:var(--iv-red)}
.iv-sum-line.total{padding:12px 0;font-size:14px;font-weight:800;color:var(--iv-accent-ink);text-transform:uppercase;letter-spacing:.03em}
.iv-sum-line.total .v{font-size:20px;font-weight:800;color:var(--iv-accent-ink)}
.iv-words{margin-top:12px;background:var(--iv-green-soft);border-radius:var(--iv-rs);padding:11px 13px}
.iv-words .t{font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--iv-green);
  display:flex;align-items:center;gap:6px;margin-bottom:3px}
.iv-words .t svg{width:12px;height:12px}
.iv-words .v{font-size:13px;color:var(--iv-ink);font-weight:600}
.iv-kdvdist{margin-top:12px}
.iv-kdvdist .t{font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--iv-label);
  display:flex;align-items:center;gap:6px;margin-bottom:8px}
.iv-kdvdist .t svg{width:12px;height:12px}
.iv-kdvgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.iv-kdvbox{background:var(--iv-card);border:1px solid var(--iv-line);border-radius:var(--iv-rs);padding:9px 8px;text-align:center}
.iv-kdvbox.on{border-color:var(--iv-accent);background:var(--iv-accent-soft)}
.iv-kdvbox .p{font-size:11px;font-weight:700;color:var(--iv-label)}
.iv-kdvbox .b{font-size:13px;font-weight:700;color:var(--iv-ink);margin:2px 0;font-variant-numeric:tabular-nums}
.iv-kdvbox .k{font-size:10px;color:var(--iv-muted);font-variant-numeric:tabular-nums}

.iv-actionbar{background:var(--iv-card);border:1px solid var(--iv-line);border-radius:var(--iv-r);padding:11px 15px}
.iv-actionbar-in{display:flex;align-items:center;gap:12px}
.iv-status{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--iv-ink2)}
.iv-status .dot{width:8px;height:8px;border-radius:50%;background:var(--iv-yellow);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--iv-yellow) 25%,transparent)}
.iv-status b{color:var(--iv-ink);font-weight:700}
.iv-actionbar .grp{display:flex;gap:7px;margin-left:auto}
@media (max-width:720px){.iv-status .txt-full{display:none}.iv-actionbar-in{gap:8px;flex-wrap:wrap}}

/* Fatura — kalem tevkifat bloğu (Tevkifat/Tevkifat İade tipinde görünür) */
.iv-wh{background:var(--iv-card);border:1px solid var(--iv-line);border-radius:var(--iv-rs);padding:12px;margin-bottom:12px}
.iv-wh-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.iv-wh-head svg{width:14px;height:14px;color:var(--iv-pink)}
.iv-wh-head .t{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--iv-pink)}
.iv-wh-head .n{margin-left:auto;font-size:11px;color:var(--iv-muted)}
.iv-wh-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}
.iv-wh-amt{font-size:12.5px;color:var(--iv-ink2);white-space:nowrap}
.iv-wh-amt b{color:var(--iv-pink);font-variant-numeric:tabular-nums;margin-left:4px}
@media (max-width:600px){.iv-wh-row{grid-template-columns:1fr}}

/* Fatura — ek vergi %/Tutar mod geçiş rozeti (tıklanabilir suffix) */
.iv-mode-toggle{cursor:pointer;user-select:none;min-width:34px;justify-content:center;transition:.15s}
.iv-mode-toggle:hover{background:var(--iv-accent);color:#fff}
.iv-check{display:inline-flex;align-items:center;gap:9px;cursor:pointer;font-size:13px;font-weight:600;color:var(--iv-ink2);user-select:none}
.iv-check input{width:17px;height:17px;accent-color:var(--iv-accent);cursor:pointer}

/* Fatura — kaleme uygulanan vergi rozetleri (panel kapalıyken de görünür) */
.iv-tax-chips{display:flex;flex-wrap:nowrap;gap:4px;margin-top:5px;overflow-x:auto;scrollbar-width:none}
.iv-tax-chips::-webkit-scrollbar{display:none}
.iv-tax-chip{flex:0 0 auto;font-size:10px;font-weight:600;color:var(--iv-accent-ink);background:var(--iv-accent-soft);
  padding:2px 8px;border-radius:20px;white-space:nowrap}
.iv-tax-chip.wh{color:var(--iv-pink);background:color-mix(in srgb,var(--iv-pink) 15%,transparent)}

/* Fatura — İade Fatura Bilgisi bölümü */
.iv-root{--iv-indigo:#6b6ce0}
.iv-rail-indigo{--iv-rail:var(--iv-indigo)}
.iv-ic-indigo{background:var(--iv-indigo)}
.iv-ref-row{display:grid;grid-template-columns:auto 1fr auto 170px auto auto;gap:10px;align-items:center;margin-bottom:9px}
.iv-ref-lbl{font-size:11px;font-weight:600;color:var(--iv-label);white-space:nowrap}
.iv-ref-btn{width:34px;height:34px;border-radius:8px;border:0;color:#fff;cursor:pointer;display:grid;place-items:center;transition:.15s}
.iv-ref-btn svg{width:16px;height:16px}
.iv-ref-btn.add{background:var(--iv-accent)}
.iv-ref-btn.add:hover{background:var(--iv-accent-ink)}
.iv-ref-btn.del{background:var(--iv-ink2)}
.iv-ref-btn.del:hover{background:var(--iv-red)}
@media (max-width:760px){
  .iv-ref-row{grid-template-columns:1fr 1fr auto auto;gap:8px}
  .iv-ref-row .iv-ref-lbl{display:none}
}

/* Fatura — İstisna Bilgisi bölümü */
.iv-root{--iv-violet:#8b5cf6}
.iv-rail-violet{--iv-rail:var(--iv-violet)}
.iv-ic-violet{background:var(--iv-violet)}

/* İstisna kartı: aranabilir combo paneli kart dışına taşabilsin (kırpılmasın) */
#ivIstisnaCard{overflow:visible}
#ivIstisnaCard .iv-bd{overflow:visible}

/* Fatura — önizleme modalı (XSLT HTML iframe içinde) */
.iv-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}
.iv-modal[hidden]{display:none}
.iv-modal-backdrop{position:absolute;inset:0;background:rgba(4,9,18,.62)}
.iv-modal-box{position:relative;background:#fff;width:min(940px,96vw);height:92vh;border-radius:12px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 70px rgba(0,0,0,.45)}
.iv-modal-hd{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid var(--iv-line);background:var(--iv-card);color:var(--iv-ink);font-weight:600;font-size:14px}
.iv-modal-actions{display:flex;gap:8px}
.iv-modal-body{flex:1;position:relative;background:#fff}
.iv-modal-body iframe{width:100%;height:100%;border:0;background:#fff}
.iv-modal-loading[hidden]{display:none}
.iv-modal-loading{position:absolute;inset:0;display:grid;place-items:center;color:#667;font-size:13px;background:#fff}
/* UBL-TR ham XML görüntüleme (kod bloğu — kaydırmalı, monospace) */
.iv-xml-pre[hidden]{display:none}
.iv-xml-pre{position:absolute;inset:0;margin:0;overflow:auto;padding:14px 16px;background:#0f1720;color:#d6e2ee;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.55;white-space:pre;tab-size:2;-moz-tab-size:2}
