﻿/*#region Yetkisiz - Hata*/
.yetkisizalan{background:#959aa6;}
.yetkisizalan .yaz{background:#fff; padding:80px;}
.yetkisizalan .baslik{color:#727c93; font-weight:700; font-size:68px; line-height:68px;}
.yetkisizalan .kucukbaslik{color:#959aa6; font-weight:700; font-size:28px;}
.yetkisizalan .acikla{color:#444; font-weight:400; font-size:14px; margin-top:20px; padding-right:40px;}
.hataalan{background:#959aa6;}
.hataalan .yaz{background:#fff; padding:80px;}
.hataalan .baslik{color:#727c93; font-weight:700; font-size:68px; line-height:68px;}
.hataalan .kucukbaslik{color:#959aa6; font-weight:700; font-size:28px;}
.hataalan .acikla{color:#444; font-weight:400; font-size:14px; margin-top:20px; padding-right:40px;}

/*#region Hata Sayfası Layout — Hata/Error.cshtml + Hata/Yetkisiz.cshtml
   Bootstrap grid (row/col-lg-*) + utility (w-100/h-100/justify-content-align-self-*)
   yerine semantik proje sınıfları. Mevcut .hataalan / .yaz / .kucukbaslik / .acikla
   sayfa stilleri korunur; sadece layout iskeleti yeni class'larla yeniden inşa edilir. */

body[tip="hata"]{min-height:100vh;}

.hata-sayfa{display:grid; place-items:center; width:100%; min-height:100vh;}

.hata-panel{width:100%; max-width:900px; box-sizing:border-box;}

.hata-icerik{display:flex; flex-wrap:wrap; align-items:center; gap:24px;}

.hata-metin{flex:1 1 320px; min-width:0;}

.hata-gorsel{flex:1 1 320px; min-width:0; text-align:center;}
.hata-gorsel img{max-width:100%; height:auto;}

/*#endregion*/

.metin-tehlike{color:var(--renk-tehlike);}
/*#endregion*/

/*#region Açılır Menü*/
.acilirmenu{position:absolute; min-width:60px; background:#fff; border:1px solid #e5e7eb; border-radius:10px; box-shadow:0 8px 24px rgba(0,0,0,.1); padding:6px; z-index:9999; opacity:0; transform:translateY(-6px) scale(0.98); transition:opacity .15s ease,transform .15s ease; pointer-events:none;}
.acilirmenu.show{opacity:1; transform:translateY(0) scale(1); pointer-events:auto;}
.acilirmenu button{display:block; width:100%; text-align:left; padding:8px 10px; border:0; background:transparent; cursor:pointer; border-radius:8px; font-size:12px; white-space:nowrap;}
.acilirmenu button:hover{background:#f1f1f1;}

.acilirmenu button.acilirmenu-uyari{color:var(--renk-tehlike); cursor:default;}
.acilirmenu button.acilirmenu-uyari:hover{background:transparent;}

.acilirmenu > button i{width:20px; display:inline-block;}
/*#endregion*/

/*#region ApexChart*/
.apexcharts-bar-series g path{fill:#fff;}
.apexcharts-tooltip *{font-family:'Poppins', sans-serif !important;}
.apexcharts-tooltip{font-family:'Poppins', sans-serif !important;}
.apexcharts-canvas *{font-family:'Poppins', sans-serif !important;}
.donutgrafik .apexcharts-legend{height:100%; display:block; top:50% !important; position:absolute !important; transform:translateY(-50%); bottom:auto; overflow:hidden; align-content:center;}
.donutgrafik .apexcharts-legend.position-right, .donutgrafik .apexcharts-legend.position-left{flex-direction:row; flex-wrap:wrap; width:35%;}
.apexcharts-legend-text{font-size:10px !important;}
.donutgrafik .apexcharts-legend-series{align-self:center; height:20px;}
.donutgrafik .apexcharts-datalabels{text-shadow:none !important; fill:#2A3B72; display:block;}
.donutgrafik .apexcharts-datalabels text{text-shadow:none !important; font-size:10px; font-weight:400; transform:translate(5%); background:#2A3B72;}
.donutgrafik .apexcharts-datalabels rect{transform:translate(5%); fill:#eee !important;}
.donutgrafik .apexcharts-tooltip-series-group.apexcharts-active, .donutgrafik .apexcharts-tooltip-series-group:last-child{padding:5px !important;}
/*#endregion*/

/*#region Plasiyer*/
plasiyer-icerik{width:100%; display:block;}
plasiyer-icerik .stdkutualan{flex:0 0 auto;}
plasiyer-icerik .stdkutualan.satisgrafikbar{width:70%;}
plasiyer-icerik .stdkutualan.tahsilatgrafikbar{width:70%;}
plasiyer-icerik .stdkutualan.satisgrafikdonut{width:30%;}
plasiyer-icerik .stdkutualan.tahsilatgrafikdonut{width:30%;}

plasiyer-icerik .stdkutualan .stdkutubaslikalan{display:flex; padding:0 10px; height:45px; justify-content:space-between;}
plasiyer-icerik .stdkutualan .stdkutubaslikalan .stdkutubaslik{border-radius:8px 8px 0 0; font-size:14px; padding:12px 15px;}

plasiyer-icerik .stdkutualan.satisgrafik .stdkutubaslikalan .stdkutubaslik{background:#E5F9ED; color:#26844C;}

plasiyer-icerik .stdkutualan .stdkutubaslikalan .butonalan{border-radius:8px 8px 0 0; padding:4px 2px; background:#efefef; align-self:flex-end; position:relative; display:flex; margin-left:20px;}

plasiyer-icerik .stdkutualan .stdkutubaslikalan .tarihalan{border-radius:8px 8px 0 0; padding:4px 2px; background:#efefef; align-self:flex-end; position:relative; flex:1 0 0; display:flex; margin-left:20px;}
plasiyer-icerik .stdkutualan .stdkutubaslikalan .tarihalan input{position:relative; z-index:1; border:none; background:#fff; border-radius:5px; height:25px; line-height:25px; font-size:11px; padding:0 10px; flex:1 0 0; width:50%; margin:0 2px;}
plasiyer-icerik .stdkutualan .stdkutubaslikalan .tarihalan input::placeholder{height:25px; line-height:25px;}
plasiyer-icerik .stdkutualan .stdkutubaslikalan .tarihalan i.onayla{color:var(--renk-basari); position:absolute; right:10px; transition:.1s; z-index:2; top:50%; transform:translateY(-55%); font-size:16px; cursor:pointer;}
plasiyer-icerik .stdkutualan .stdkutubaslikalan .tarihalan i.onayla:hover{color:var(--renk-uyari);}

plasiyer-icerik .stdkutualan .stdkutu{padding:5px; border:1px solid rgba(0,0,0,0.1); border-radius:8px; display:flex; flex-wrap:wrap;}
plasiyer-icerik .stdkutualan .stdkutu.baslikli{height:calc(100% - 45px);}

/*#endregion*/

/*#region TarihAlan Bileşen — .bilgilendirme içinde reusable tarih aralığı filtresi*/
.bilgilendirme .tarihalan{display:inline-flex; align-items:center; background:#fff; border:1px solid rgba(0,0,0,0.13); border-radius:8px; padding:0 4px 0 8px; height:32px; box-shadow:0 1px 3px rgba(0,0,0,0.07); transition:border-color .15s,box-shadow .15s; gap:0;}
.bilgilendirme .tarihalan:focus-within{border-color:#2f4dbf; box-shadow:0 0 0 3px rgba(47,77,191,0.10);}
.bilgilendirme .tarihalan .tarihalan-ikon{color:#94a3b8; font-size:12px; margin-right:4px; flex-shrink:0;}
.bilgilendirme .tarihalan input.tarihsec{border:none; background:transparent; height:100%; font-size:11px; padding:0 6px; width:82px; color:#1e293b; outline:none;}
.bilgilendirme .tarihalan input.tarihsec::placeholder{color:#94a3b8;}
.bilgilendirme .tarihalan .tarihalan-sep{color:#b0bac6; font-size:11px; flex-shrink:0; user-select:none; padding:0 2px;}
.bilgilendirme .tarihalan i.onayla{display:inline-flex; align-items:center; justify-content:center; width:26px; height:26px; margin-left:4px; border-radius:5px; background:#eef2ff; color:#2f4dbf; font-size:13px; cursor:pointer; transition:background .15s,color .15s; flex-shrink:0;}
.bilgilendirme .tarihalan i.onayla:hover{background:#2f4dbf; color:#fff;}
/*#endregion TarihAlan Bileşen*/

/*#region Grafik Kapsayıcı — semantik wrapper (Bootstrap w-100 yerine)
   .grafik-kapsayici: ApexChart / chart kütüphanelerinin render hedefi olan div için generic wrapper.
   Önceki kullanım: <div class="w-100" id="satisgrafikbar"> (Bootstrap utility).
   Davranış niyeti:
     - width:100% → parent .stdkutu.baslikli içinde tam genişlik kapla.
     - Chart library'leri parent genişliğine göre boyutlanır; bu rule garantili tam genişlik sağlar.
   Kullanım: ApexChart wrapper'ları (PlasiyerDetay grafikleri, GostergePaneli line/donut grafiği). */
.grafik-kapsayici{width:100%;}
/*#endregion*/

/*#region Bilgilendirme Üst Bar — semantik konum sınıfları
   ════════════════════════════════════════════════════════════════════════════
   .bilgilendirme bar'ının içinde alanın görevine göre semantik konum sınıfları.
   Form/düzenleme ekranları için .duzenleme-grid sistemi vardır; üst bilgi
   barı (liste/detay sayfaları) bambaşka bir yerleşim ihtiyacı taşır:
     - .bilgilendirme zaten flex-wrap; çocukları doğrudan akar.
     - Bu bar'da "kaç kolon?" sorusu YOKTUR; "alan neresi yaslı?" sorusu vardır.

   Namespace: .bilgilendirme-{konum}-alan
     -sag-alan      → bar'ın sağına yaslı slot (toplamlar, sağ aksiyonlar)
     (gelecek) -sol-alan, -filtre-alan, -aksiyon-alan, -toplam-alan vb.
   ════════════════════════════════════════════════════════════════════════════ */

.bilgilendirme .bilgilendirme-sag-alan{margin-left:auto; display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:center; gap:6px;}

.bilgilendirme .bilgi-akis-alan{flex:0 0 100%; min-width:0;}
@media (min-width: 490px) {
    .bilgilendirme .bilgi-akis-alan{flex:1 0 0%;}
}

.bilgilendirme .bilgi-akis-alan.stok{flex:1 1 0; min-width:0;}

sag-icerik .icerik .bilgilendirme-alan{background:#fff;}
sag-icerik .icerik .bilgilendirme{border-radius:8px; border:1px solid rgba(0,0,0,0.1); padding:5px; margin-bottom:6px; display:flex; flex-wrap:wrap; align-items:center;}
/*#region Künye ipucu (info ikonu + hover balon)*/
.kunye-ipucu{position:relative; margin-left:auto; align-self:center; padding:6px;}
.kunye-ipucu > i{font-size:18px; color:var(--renk-yazi-soluk); cursor:help;}
.kunye-ipucu:hover > i{color:var(--renk-birincil);}
.kunye-ipucu .kunye-balon{position:absolute; top:100%; right:-6px; z-index:60; display:none; padding-top:8px;}
.kunye-ipucu:hover .kunye-balon{display:block;}
.kunye-ipucu .kunye-balon .siparis-akis{background:#fff; border:1px solid var(--renk-kenar); border-radius:8px;
    box-shadow:0 8px 24px rgba(0,0,0,.14), 0 2px 6px rgba(0,0,0,.08); padding:10px 14px;
    display:flex; flex-wrap:nowrap; gap:18px; white-space:nowrap;}
iframe-alan .icerik:has(table[data-tablotipi]) .bilgilendirme-alan:has(.kunye-ipucu:hover){z-index:7;}
/*#endregion*/

sag-icerik .icerik .bilgilendirme-alan .toplamlar{display:flex; flex-wrap:nowrap; border-radius:5px; padding:0;}
sag-icerik .icerik .bilgilendirme-alan .toplamlar>*{padding:3px; flex:0 0 auto !important; width:auto !important; max-width:none !important; min-width:fit-content;}
sag-icerik .icerik .bilgilendirme-alan .toplamlar .tutar-alan{border:1px solid rgba(0,0,0,0.1); border-radius:5px; padding:5px 10px; align-content:center; vertical-align:central; transition:.2s;}
sag-icerik .icerik .bilgilendirme-alan .toplamlar .tutar-alan:hover{background:#000; color:#fff;}
sag-icerik .icerik .bilgilendirme-alan .toplamlar .tutar-alan>div{min-width:70px;}
sag-icerik .icerik .bilgilendirme-alan .toplamlar .tutar-alan>div.baslik{font-size:9px; font-weight:600; white-space:nowrap;}
sag-icerik .icerik .bilgilendirme-alan .toplamlar .tutar-alan>div.tutar{font-size:14px;}

.tutar .toplam-doviz{display:inline-block; white-space:nowrap;}
.tutar .toplam-doviz + .toplam-doviz{margin-left:8px; padding-left:8px; border-left:1px solid rgba(0,0,0,0.15);}
/*#endregion Bilgilendirme Üst Bar*/

/*#region Para Alanı (sembol + değer/input)*/
.para-alan{display:inline-flex; align-items:center; gap:4px; width:100%;}
.para-alan .sembol{flex-shrink:0; font-size:10px; color:#888;}
.para-alan input{flex:1; min-width:0; width:80px !important; text-align:right !important;}
.para-alan > span:last-child{flex:1; text-align:left;}
#tablo td:has(.para-alan input){width:80px;}
#tablo td.stdfiyat{width:80px;}

.para-alan.v1 input{width:60px !important; text-align:right !important;}
.para-alan.v1c input{width:60px !important; text-align:center !important;}
#tablo td:has(.para-alan.v1c input), #tablo td:has(.para-alan.v1 input){width:60px;}

.para-alan.v2 input{width:40px !important; text-align:right !important;}
.para-alan.v2c input{width:40px !important; text-align:center !important;}
#tablo td:has(.para-alan.v2c input), #tablo td:has(.para-alan.v2 input){width:40px;}

.aciklama-alan input{width:150px !important; text-align:left !important;}
#tablo td:has(.aciklama-alan input){width:150px;}

.aciklama-satir-alan{position:relative; font-size:10px; width:100% !important;}
.aciklama-satir-alan:has(:not(input)):before{content:'\f303'; font-family:'Font Awesome 6 Pro'; font-weight:400; position:absolute; top:0px; left:0px; color:rgba(0,0,0,0.5);}
.aciklama-satir-alan input{width:100% !important; text-align:left !important; padding:0 0 0 15px !important; font-size:10px; font-weight:600;}

.aciklama-alan{display:block; height:100%;}
.aciklama-alan textarea{width:150px !important; height:100%; min-height:36px; padding:4px 6px;
    text-align:left !important; resize:none; font:inherit; line-height:1.4; box-sizing:border-box;
    border:0px; outline:none; font-size:11px; background:transparent none;}
.aciklama-alan textarea:focus{border:0px;}
#tablo td:has(.aciklama-alan textarea){width:150px; height:1px; vertical-align:top;}

/*#endregion*/

/*#region Hızlı Erişim Düzenle*/
.he-container{display:flex; gap:20px; height:calc(100vh - 24px); min-height:400px; align-items:stretch;}
.he-panel{flex:1; border:1px solid var(--renk-birincil-alfa-12); border-radius:8px; background:#fff; display:flex; flex-direction:column;}
.he-panel.mevcut{flex:1 1 auto; min-width:0;}
.he-panel.secili{flex:0 0 420px; width:420px; height:100%; max-height:100%;}
.he-panel-baslik{padding:12px 16px; font-weight:700; font-size:13px; color:var(--renk-birincil); border-bottom:1px solid var(--renk-birincil-alfa-08); display:flex; align-items:center; gap:8px;}
.he-panel-baslik i{font-size:14px; opacity:0.6;}
.he-panel-baslik .sayi{margin-left:auto; background:var(--renk-birincil); color:#fff; border-radius:10px; padding:1px 8px; font-size:11px; font-weight:600;}
.he-panel.secili .he-panel-baslik .sayi{background:var(--renk-teal);}
.he-arama{padding:8px 12px; border-bottom:1px solid rgba(42,59,114,0.06);}
.he-arama input{width:100%; border:1px solid #e2e8f0; border-radius:6px; padding:7px 10px; font-size:12px; outline:none;}
.he-arama input:focus{border-color:var(--renk-birincil);}
.he-liste{flex:1; overflow-y:auto; padding:6px; min-height:200px;}
.he-panel.secili .he-liste{overflow-y:visible; max-height:none; height:auto;}

.he-grup{font-size:11px; font-weight:700; color:var(--renk-birincil); padding:8px 10px 4px; margin-top:6px; display:flex; align-items:center; gap:6px; user-select:none; border-bottom:1px solid rgba(42,59,114,0.06);}
.he-grup:first-child{margin-top:0;}
.he-grup i{font-size:12px; opacity:0.5;}

.he-item{display:flex; align-items:center; gap:10px; padding:7px 12px; margin:2px 0; border-radius:6px; cursor:grab; user-select:none; border:1px solid transparent; transition:all 0.15s; background:#f8fbff;}
.he-item:active{cursor:grabbing;}
.he-item:hover{background:var(--renk-birincil-cok-acik); border-color:rgba(42,59,114,0.15);}
.he-item .ikon{width:28px; height:28px; border-radius:6px; display:flex; align-items:center; justify-content:center; font-size:12px; color:#fff; flex-shrink:0;}
.he-panel.mevcut .he-item .ikon{background:linear-gradient(135deg, #64748b 0%, #94a3b8 100%);}
.he-panel.secili .he-item .ikon{background:linear-gradient(135deg, #2A3B72 0%, #4f67b3 100%);}
.he-item .bilgi{flex:1; min-width:0;}
.he-item .bilgi .ad{font-size:12px; font-weight:600; color:var(--renk-yazi); white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.he-item .bilgi .detay{font-size:10px; color:var(--renk-yazi-soluk); white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.he-item .sira-no{width:20px; height:20px; border-radius:50%; background:var(--renk-teal); color:#fff; display:flex; align-items:center; justify-content:center; font-size:10px; font-weight:700; flex-shrink:0;}
.he-panel.mevcut .he-item .sira-no{display:none;}

.he-btn{width:24px; height:24px; border-radius:5px; border:none; display:inline-flex; align-items:center; justify-content:center; font-size:11px; flex-shrink:0; cursor:pointer; transition:background 0.15s; touch-action:manipulation;}
.he-ekle-btn{background:var(--renk-teal); color:#fff;}
.he-ekle-btn:hover{background:#0a7a55;}
.he-cikar-btn{background:#ef4444; color:#fff;}
.he-cikar-btn:hover{background:var(--renk-tehlike-koyu);}
.he-yukari-btn, .he-asagi-btn{background:#e2e8f0; color:#475569; display:none;}
.he-yukari-btn:hover, .he-asagi-btn:hover{background:var(--renk-yazi-en-soluk);}
.he-panel.mevcut .he-yukari-btn, .he-panel.mevcut .he-asagi-btn, .he-panel.mevcut .he-cikar-btn{display:none;}
.he-panel.secili .he-ekle-btn{display:none;}

.he-item.drag-over{border-color:var(--renk-birincil); background:#dbeafe;}
.he-item.dragging{opacity:0.4;}
.he-liste.drag-over{background:rgba(219, 234, 254, 0.45); outline:1px dashed rgba(42,59,114,0.28); outline-offset:-6px; border-radius:8px;}
.he-panel.secili .he-item{cursor:grab;}
.he-panel.secili .he-item .sira-no:empty::before{content:'';}
.he-panel .he-item .bilgi .ad, .he-panel .he-item .bilgi .detay{pointer-events:none;}

.he-bilgi{padding:12px 16px; font-size:11px; color:var(--renk-yazi-soluk); text-align:center; border-top:1px solid rgba(42,59,114,0.06);}
.he-panel.secili .he-bilgi{color:var(--renk-teal);}
.he-bos{padding:40px 20px; text-align:center; color:var(--renk-yazi-en-soluk); font-size:12px;}

.apexcharts-data-labels{transform:rotate(-90deg); transform-box:fill-box; transform-origin:center; white-space:nowrap; padding:15px;}

/*#region Cursor Tooltip*/
.cursor-tooltip{position:fixed; background-color:#0b1231; color:#fff; padding:5px 10px; border-radius:5px; font-size:12px; pointer-events:none; opacity:0; transform:translate(-50%, -100%); transition:opacity 0.2s ease; z-index:9999;}
.cursor-tooltip.ozel{background-color:#f00; color:#fff; font-size:10px;}
.cursor-tooltip.tooltip-mobile{transform:none; max-width:calc(100vw - 32px); white-space:normal; word-break:break-word; pointer-events:auto; transition:opacity 0.1s ease;}
.ctitlemini{font-size:10px; display:block;}
.cursor-tooltip ayrac{display:block; width:100%; height:1px; background:rgba(255,255,255,0.1); margin:2px 0;}
.ctitlebuyuk{font-size:14px; display:block;}
.tooltipfiyat{line-height:18px;}
/*#endregion*/

/*#region Sayfa Yükleyici*/
.sayfayukleyici{position:fixed; left:0; top:0; width:100%; height:100%; background:rgba(255,255,255,0.8); display:flex; flex-wrap:wrap; align-items:center; justify-content:center; z-index:99;}
.sayfayukleyici > div{display:block; text-align:center;}
.yukleyici{width:12px; height:12px; aspect-ratio:1; position:relative;}
.yukleyiciaciklama{width:100%; margin-top:20px;}
.yukleyici::before, .yukleyici::after{content:""; position:absolute; inset:0; border-radius:50%; background:#000;}
.yukleyici::before{box-shadow:-25px 0; animation:l8-1 .4s infinite linear;}
.yukleyici::after{transform:rotate(0deg) translateX(25px); animation:l8-2 .4s infinite linear;}

@keyframes l8-1 {
    100%{transform:translateX(25px);}
}
@keyframes l8-2 {
    100%{transform:rotate(-180deg) translateX(25px);}
}

.tabloyukleyici .yukleyici{width:8px; height:8px; aspect-ratio:1; position:relative;}
.tabloyukleyici .yukleyiciaciklama{width:100%; margin-top:20px;}
.tabloyukleyici .yukleyici::before, .yukleyici::after{content:""; position:absolute; inset:0; border-radius:50%; background:#000;}
.tabloyukleyici .yukleyici::before{box-shadow:-15px 0; animation:lk-1 .3s infinite linear;}
.tabloyukleyici .yukleyici::after{transform:rotate(0deg) translateX(15px); animation:lk-2 .3s infinite linear;}

@keyframes lk-1 {
    100%{transform:translateX(15px);}
}
@keyframes lk-2 {
    100%{transform:rotate(-180deg) translateX(15px);}
}

.win-yukleyici{position:absolute; left:0; top:0; width:100%; height:100%; background:rgba(255,255,255,0.8); display:flex; flex-wrap:wrap; align-items:center; justify-content:center; z-index:100000;}
.win-yukleyici > div{display:block; text-align:center;}
/*#endregion*/

/*#region Güncelleyici*/
.guncelleyici{position:absolute; top:10px; left:10px; font-size:18px; color:rgba(0,0,0,0.4);}
.guncelleyici.basarili{color:#30C8AC; animation:buyutkucult 1s ease-in; opacity:0;}
.guncelleyici.hata{color:#fe003e; animation:buyutkucult 1s ease-in; opacity:0;}
@keyframes buyutkucult {
    0%{transform:scale(0); opacity:0.5;}
    20%{transform:scale(1.8); opacity:1;}
    100%{transform:scale(0); opacity:0;}
}

/*#region Sürükle-Bırak X (yatay drag scroll)
   Global yardımcı sınıf. Yatay scroll alanları masaüstünde mouse ile sürüklenebilir,
   mobilde native touch scroll çalışır. JS handler: fonksiyon.js > surukle-birak-x.
   Kullanım: <div class="surukle-birak-x">...</div> */
.surukle-birak-x{overflow-x:auto; overflow-y:hidden; -webkit-overflow-scrolling:touch; scrollbar-width:none; -ms-overflow-style:none; cursor:grab;}
.surukle-birak-x:active{cursor:grabbing;}
.surukle-birak-x::-webkit-scrollbar{display:none;}
/*#endregion*/

/*#region Ekle Buton (yuvarlak ikon + sağ üstte + rozeti)
   Genel kullanım: <button class="eklebuton" type="button">
                     <i class="fal fa-truck"></i>
                     <span class="arti">+</span>
                   </button>
   Mor (purple) yuvarlak buton + sol üstten hafif gölge; sağ-üstte turuncu "+" rozeti.
   Anlam: "yeni X ekle" — örn. nakliye satırı, ek kargo, vb. */
.eklebuton{position:relative; display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; padding:0; border:none; border-radius:5px; background:#573aed; color:#fff; cursor:pointer; box-shadow:0 2px 6px rgba(60, 58, 237, 0.30); transition:background 0.15s, transform 0.15s, box-shadow 0.15s; flex-shrink:0;}
.eklebuton:hover{background:#4a28d9; transform:translateY(-1px); box-shadow:0 4px 12px rgba(60, 58, 237, 0.40);}
.eklebuton:active{transform:translateY(0); box-shadow:0 2px 6px rgba(124, 58, 237, 0.30);}
.eklebuton:disabled{background:#cbd5e1; color:#fff; cursor:not-allowed; box-shadow:none; transform:none; opacity:0.7;}
.eklebuton i{font-size:14px; line-height:1;}

.eklebuton .arti{position:absolute; top:-5px; right:-5px; display:inline-flex; align-items:center; justify-content:center; min-width:15px; height:15px; border-radius:999px; background:#f97316; color:#fff; font-size:12px; line-height:1; box-shadow:0 1px 3px rgba(249, 115, 22, 0.40);}

.stdbuton{position:relative; display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; padding:0; border:none; border-radius:5px; cursor:pointer; box-shadow:0 2px 6px rgba(60, 58, 237, 0.30); transition:background 0.15s, transform 0.15s, box-shadow 0.15s; flex-shrink:0;}
.stdbuton .arti{position:absolute; top:-5px; right:-5px; display:inline-flex; align-items:center; justify-content:center; min-width:15px; height:15px; border-radius:999px; background:#f97316; color:#fff; font-size:12px; line-height:1; box-shadow:0 1px 3px rgba(249, 115, 22, 0.40);}
.stdbuton:hover{transform:translateY(-1px);}

.stdbuton.tip-yesil{background:#15b959; box-shadow:0 2px 6px rgba(21, 185, 89, 0.30); color:#fff;}
.stdbuton.tip-yesil:hover{background:#0f9b48; box-shadow:0 4px 12px rgba(21, 185, 89, 0.40);}

.stdbuton.tip-mavi{background:#2563eb; box-shadow:0 2px 6px rgba(37, 99, 235, 0.30); color:#fff;}
.stdbuton.tip-mavi:hover{background:#1d4ed8; box-shadow:0 4px 12px rgba(37, 99, 235, 0.40);}

.stdbuton.tip-kirmizi{background:#e40a0a; box-shadow:0 2px 6px rgba(30, 41, 59, 0.30); color:#fff;}
.stdbuton.tip-kirmizi:hover{background:#980f0f; box-shadow:0 4px 12px rgba(30, 41, 59, 0.40);}

.stdbuton.tip-koyu{background:#1e293b; box-shadow:0 2px 6px rgba(30, 41, 59, 0.30); color:#fff;}
.stdbuton.tip-koyu:hover{background:#0f172a; box-shadow:0 4px 12px rgba(30, 41, 59, 0.40);}
/*#endregion*/

/*#region Bilgilendirme Std Buton — Mobil Menü
   JS (fonksiyon.js > bilgilendirmeStdButonMobilMenuHazirla) tarafından dinamik üretilir.
   Desktop'ta tamamen gizli; @media (max-width:768px) altında orijinal a.bilgilendirmestdbuton
   linkleri gizlenip bu menü gösterilir. */
.mobil-bilgilendirme-menu{display:none; position:relative;}

.mobil-bilgilendirme-menu .mobil-bilgilendirme-menu-btn{display:inline-flex; align-items:center; gap:8px; padding:5px 8px; height:32px; border-radius:8px; background:#eef2ff; color:#1e2d5a; font-size:10px; font-weight:600; border:1px solid #c7d4ff; box-shadow:0 1px 3px rgba(47,77,191,0.08); cursor:pointer; white-space:nowrap; transition:background .15s, border-color .15s;}
.mobil-bilgilendirme-menu .mobil-bilgilendirme-menu-btn:hover{background:#e0e8ff; border-color:#2f4dbf;}
.mobil-bilgilendirme-menu .mobil-bilgilendirme-menu-btn .lbl{flex:1; overflow:hidden; text-overflow:ellipsis; text-align:left;}
.mobil-bilgilendirme-menu .mobil-bilgilendirme-menu-btn .ok{font-size:10px; opacity:0.6; transition:transform .15s;}
.mobil-bilgilendirme-menu.acik .mobil-bilgilendirme-menu-btn .ok{transform:rotate(180deg);}

.mobil-bilgilendirme-menu .mobil-bilgilendirme-menu-list{position:absolute; top:calc(100% + 4px); left:0; right:auto; min-width:200px; max-height:60vh; overflow-y:auto; margin:0; padding:4px; list-style:none; background:#fff; border:1px solid rgba(0,0,0,0.1); border-radius:8px; box-shadow:0 6px 20px rgba(0,0,0,0.15); z-index:9000; opacity:0; transform:translateY(-4px) scale(0.98); transform-origin:top left; transition:opacity .15s, transform .15s; pointer-events:none;}
.mobil-bilgilendirme-menu.acik .mobil-bilgilendirme-menu-list{opacity:1; transform:translateY(0) scale(1); pointer-events:auto;}

.mobil-bilgilendirme-menu .mobil-bilgilendirme-menu-item{display:flex; align-items:center; gap:8px; padding:8px 12px; border-radius:6px; color:#1e293b; font-size:12px; font-weight:500; text-decoration:none; white-space:nowrap; transition:background .1s;}
.mobil-bilgilendirme-menu .mobil-bilgilendirme-menu-item:hover{background:#eef2ff;}
.mobil-bilgilendirme-menu .mobil-bilgilendirme-menu-item.aktif{background:#dcfce7; color:#166534; font-weight:600;}
.mobil-bilgilendirme-menu .mobil-bilgilendirme-menu-item i{font-size:13px; color:#2f4dbf; flex-shrink:0;}
.mobil-bilgilendirme-menu .mobil-bilgilendirme-menu-item.aktif i{color:#166534;}
/*#endregion*/
/*#endregion*/

/*#region İthalat Tedarikçi Stok Not Detay (sayfa)
   /firma/stok/not/detay → IthalatFirmaStokNot.cshtml
   Üst kart: _ithalatStokBilgilendirme partial (proje .bilgilendirme-alan deseni — ayrı CSS yok)
   Sınıf isimleri sayfaya özel (stoknot-* prefix), parent wrapper yok — duzenle-icerik
   layout padding'ini koruyor; ekstra container şişirmiyor. */

.stoknot-ekle{margin-top:20px; display:flex; flex-direction:column; gap:6px;}
.stoknot-ekle label.ust{font-size:10px; color:#999; text-transform:uppercase; letter-spacing:0.05em; font-weight:600; padding-left:8px;}
.stoknot-ekle textarea{width:100%; min-height:120px; padding:10px 12px; border:1px solid rgba(0,0,0,0.12); border-radius:6px; font:inherit; font-size:13px; line-height:1.5; outline:none; resize:vertical; box-sizing:border-box; transition:border-color .12s;}
.stoknot-ekle textarea:focus{border-color:var(--renk-birincil, #2f4dbf);}

.stoknot-baslik{margin:24px 0 10px 0; font-size:18px; font-weight:600; color:#1e293b; border-bottom:1px solid rgba(0,0,0,0.08); padding-bottom:8px;}

.stoknot-liste{display:flex; flex-direction:column; gap:10px;}

.stoknot-satir{display:flex; gap:12px; align-items:flex-start; padding:8px 0;}
.stoknot-sil{flex:0 0 32px; width:32px; height:32px; border-radius:50%; background:var(--renk-tehlike, #e63946); color:#fff; border:0; cursor:pointer; display:flex; align-items:center; justify-content:center; font-size:13px; transition:transform .12s, background .12s;}
.stoknot-sil:hover{background:#c22b3a; transform:scale(1.1);}
.stoknot-icerik{flex:1; min-width:0; display:flex; flex-direction:column; gap:2px;}
.stoknot-icerik .ust{display:flex; gap:8px; align-items:baseline; flex-wrap:wrap;}
.stoknot-icerik .kullanici{font-size:12px; font-weight:700; color:#1e293b; text-transform:uppercase; letter-spacing:0.03em;}
.stoknot-icerik .tarih{font-size:11px; color:#888;}
.stoknot-icerik .aciklama{font-size:13px; color:#333; line-height:1.5; word-break:break-word;}

.not-isaretle{flex:0 0 32px; width:32px; height:32px; border-radius:50%; background:#e2e8f0; color:#64748b; border:0; cursor:pointer; display:flex; align-items:center; justify-content:center; font-size:14px; transition:transform .12s, background .12s, color .12s;}
.not-isaretle:hover{background:#cbd5e1; transform:scale(1.08);}
.not-isaretle.isaretli{background:var(--renk-basari, #15b959); color:#fff;}
.not-isaretle.isaretli:hover{filter:brightness(1.05);}
.not-isaret-bilgi{font-size:10px; color:#b91c1c; font-weight:600;}
.stoknot-satir.not-isaretlendi .aciklama{text-decoration:line-through; color:#94a3b8;}

.bilgilendirme-alan .bilgi-akis-alan.firma .firma-badge{display:inline-block; background:var(--renk-tehlike, #e63946); color:#fff; font-size:11px; font-weight:600; padding:3px 8px; border-radius:4px;}

.stoknot-bos,
.stoknot-hata{padding:20px; text-align:center; color:#888; font-size:13px; background:#fafafa; border:1px dashed rgba(0,0,0,0.1); border-radius:6px;}
.stoknot-hata{background:#fff7ee; border-color:#ffd086; color:#b06b00;}
.stoknot-liste-yukleniyor{display:flex; justify-content:center; padding:30px;}
/*#endregion*/

/*#region İthalat Sipariş Masraflar + Tahmini Maliyet (sipariş detay)
   Masraf kutuları tablo altında; maliyet-hucre tablodaki Tahmini Maliyet kolonu içidir. */

.ithalat-siparis .duzenle-item.duzenle-item-maliyet{min-width:80px; max-width:120px; flex:0 1 120px;}
.ithalat-siparis .duzenle-item.maliyet-bas{margin-left:auto;}

.liste-kontrol-alan{display:flex; align-items:center; gap:14px; flex-wrap:wrap;}
.liste-kontrol-item{display:flex; align-items:center; gap:6px;}
.liste-kontrol-item > label{font-size:10px; font-weight:600; color:#7383a3; text-transform:uppercase; letter-spacing:0.04em; line-height:1; white-space:nowrap;}
.liste-kontrol-item input, .liste-kontrol-item select{width:90px; height:30px; padding:0 8px; border:1px solid #dce3ec; border-radius:6px; background:#fff; font-size:12px; color:#1e293b; transition:border-color .15s, box-shadow .15s;}
.liste-kontrol-item input:focus, .liste-kontrol-item select:focus{outline:none; border-color:#2f4dbf; box-shadow:0 0 0 2px rgba(47,77,191,0.10);}

.liste-kontrol-item.yonetim-alan > label{color:#7e22ce;}
.liste-kontrol-item.yonetim-alan input{border-style:dashed; border-color:#d8b4fe; background:#faf5ff;}
.liste-kontrol-item.yonetim-alan input:focus{border-color:#8b5cf6; box-shadow:0 0 0 2px rgba(139,92,246,0.12);}
.liste-kontrol-item.yonetim-alan .yonetim-okunur{font-size:12px; color:#6b21a8; padding:0 8px;}

.liste-kontrol-item select.genis{width:auto; min-width:140px;}
.masraflar-ac{cursor:pointer; display:inline-flex; align-items:center; justify-content:center; gap:5px; white-space:nowrap;}
.masraflar-ac:hover{border-color:#2f4dbf; color:#1e2d5a;}
#masrafKutu{width:580px;}
.masraf-toplam-rozet{background:#eef2ff; color:#1e2d5a; border-radius:6px; padding:3px 10px; font-size:11px; font-weight:600; margin-left:6px;}
.masraf-liste{display:grid; grid-template-columns:repeat(auto-fill, minmax(160px, 1fr)); gap:8px 12px;}
.masraf-item{display:flex; flex-direction:column;}
.masraf-item > label{font-size:10px; font-weight:600; color:#7383a3; margin-bottom:3px; text-transform:uppercase; letter-spacing:0.04em; line-height:1;}
.masraf-item input{height:30px; padding:0 8px; border:1px solid #dce3ec; border-radius:6px; background:#fff; font-size:12px; color:#1e293b; text-align:right; transition:border-color .15s, box-shadow .15s;}
.masraf-item input:focus{outline:none; border-color:#2f4dbf; box-shadow:0 0 0 2px rgba(47,77,191,0.10);}
.masraf-item input.kaydedildi{border-color:var(--renk-basari); box-shadow:0 0 0 2px rgba(21,185,89,0.18);}
.masraf-item input:disabled{opacity:.6; background:#f8fafc;}

.maliyet-hucre{display:flex; flex-direction:column; align-items:flex-end; line-height:1.25;}
.maliyet-hucre .maliyet-oran{font-size:10px; color:#f28500; font-weight:600;}
/*#endregion*/

/*#region İthalat Excel ile Ürün Ekle (sayfa)
   3 adımlı akış: örnek indir → yükle → önizleme (kayıt yapılmadan) → onayla. */
.excel-adim{background:#fff; border:1px solid #e2e8f0; border-radius:8px; padding:14px; margin-bottom:12px;}
.excel-adim-baslik{font-size:12px; font-weight:700; color:#1e2d5a; display:flex; align-items:center; gap:8px; margin-bottom:10px;}
.excel-adim-no{display:inline-flex; align-items:center; justify-content:center; width:22px; height:22px; border-radius:50%; background:#1e2d5a; color:#fff; font-size:11px;}
.excel-adim-icerik{display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; font-size:12px; color:#475569;}
.excel-uyari-yazi{color:#b45309; font-weight:600; font-size:11px;}

.excel-ornek-indir{display:inline-flex; align-items:center; gap:6px; background:#15803d; color:#fff; border:0; border-radius:6px; padding:9px 14px; font-size:12px; font-weight:600; cursor:pointer; white-space:nowrap;}
.excel-ornek-indir:hover{filter:brightness(1.08);}

.excel-doviz{display:flex; align-items:center; gap:8px;}
.excel-doviz > label{font-size:10px; font-weight:600; color:#7383a3; text-transform:uppercase; letter-spacing:0.04em;}
.excel-doviz select{height:30px; padding:0 8px; border:1px solid #dce3ec; border-radius:6px; background:#fff; font-size:12px; color:#1e293b;}

.excel-ozet{display:flex; flex-wrap:wrap; gap:8px; margin-bottom:10px;}
.excel-ozet-kutu{font-size:11px; padding:5px 10px; border-radius:6px; background:#f1f5f9; color:#334155;}
.excel-ozet-kutu.ekle{background:#eafaf0; color:#15803d;}
.excel-ozet-kutu.guncelle{background:#eef2ff; color:#1e2d5a;}
.excel-ozet-kutu.hata{background:#fef2f2; color:#b91c1c;}

.excel-onizleme-tablo{max-height:420px; overflow:auto; border:1px solid #e2e8f0; border-radius:6px;}
.excel-tablo{width:100%; border-collapse:collapse; font-size:12px;}
.excel-tablo thead th{position:sticky; top:0; background:#1e2d5a; color:#fff; font-size:11px; font-weight:600; padding:8px; text-align:left; white-space:nowrap;}
.excel-tablo td{padding:7px 8px; border-bottom:1px solid #eef2f6; color:#1e293b;}
.excel-tablo tr.excel-satir-hata td{background:#fff7f7;}
.excel-tablo .excel-aciklama{font-size:11px; color:#64748b;}
.excel-durum{font-size:10px; font-weight:700; padding:3px 8px; border-radius:4px; white-space:nowrap;}
.excel-durum.ekle{background:#eafaf0; color:#15803d;}
.excel-durum.guncelle{background:#eef2ff; color:#1e2d5a;}
.excel-durum.hata{background:#fef2f2; color:#b91c1c;}

.excel-aksiyon{display:flex; justify-content:flex-end; gap:8px; margin-top:12px;}
.excel-aksiyon button{display:inline-flex; align-items:center; gap:6px; border:0; border-radius:6px; padding:9px 16px; font-size:12px; font-weight:600; cursor:pointer;}
.excel-vazgec{background:#f1f5f9; color:#475569;}
.excel-vazgec:hover{background:#e2e8f0;}
.excel-uygula{background:var(--renk-basari, #15b959); color:#fff;}
.excel-uygula:hover:not(:disabled){filter:brightness(1.06);}
.excel-uygula:disabled{background:#cbd5e1; cursor:not-allowed;}
/*#endregion*/

/*#region İthalat Sipariş Detaylı Durum (sayfa)
   /ithalat/siparis/durum — form üstündeki sipariş künyesi + "bilgi girilmemiş" uyarısı. */
.durum-siparis-bilgi{background:#eef2ff; border:1px solid #d7defc; border-radius:8px; padding:10px 14px; font-size:12px; color:#1e2d5a; line-height:1.6;}
.durum-uyari{margin-top:8px; background:#fef2f2; border:1px solid rgba(185,28,28,0.35); color:#b91c1c; border-radius:8px; padding:8px 14px; font-size:11px; font-weight:600; display:flex; align-items:center; gap:8px;}
.durum-fieldset{border:0; margin:0; padding:0; min-width:0;}
/*#endregion*/

/*#region İthalat Sipariş Doküman (sayfa)
   /ithalat/siparis/dokuman — sürükle-bırak yükleme alanı + dosya kartları.
   duzenle-icerik flex-wrap olduğu için tüm içerik .dokuman-sayfa tam-genişlik kapsayıcısında. */
.dokuman-sayfa{width:100%; box-sizing:border-box;}

.dokuman-yukleme-alani{display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; width:100%; padding:34px 20px; border:2px dashed rgba(0,0,0,0.15); border-radius:10px; background:#fafbfd; cursor:pointer; text-align:center; box-sizing:border-box; transition:border-color .15s, background .15s;}
.dokuman-yukleme-alani:hover, .dokuman-yukleme-alani.aktif{border-color:var(--renk-birincil, #2f4dbf); background:#f0f4ff;}
.dokuman-yukleme-alani i{font-size:34px; color:var(--renk-birincil, #2f4dbf);}
.dokuman-yukleme-alani b{font-size:14px; color:#1e293b;}
.dokuman-yukleme-alani span{font-size:12px; color:#94a3b8;}

.dokuman-baslik{display:flex; align-items:center; gap:8px; margin:24px 0 12px 0; font-size:16px; font-weight:600; color:#1e293b; border-bottom:1px solid rgba(0,0,0,0.08); padding-bottom:8px;}
.dokuman-baslik .dokuman-say:not(:empty){background:var(--renk-birincil, #2f4dbf); color:#fff; font-size:11px; font-weight:700; min-width:20px; height:20px; padding:0 6px; border-radius:10px; display:inline-flex; align-items:center; justify-content:center;}

.dokuman-liste{display:grid; grid-template-columns:repeat(auto-fill, minmax(150px, 1fr)); gap:12px;}
.dokuman-kart{position:relative; border:1px solid rgba(0,0,0,0.08); border-radius:10px; background:#fff; overflow:hidden; transition:box-shadow .15s, transform .15s;}
.dokuman-kart:hover{box-shadow:0 6px 18px rgba(0,0,0,0.10); transform:translateY(-2px);}

.dokuman-kart .dokuman-sil{position:absolute; top:6px; right:6px; z-index:2; width:24px; height:24px; border-radius:50%; background:var(--renk-tehlike, #f00); color:#fff; border:0; cursor:pointer; font-size:11px; display:inline-flex; align-items:center; justify-content:center; opacity:0; transition:opacity .15s, transform .12s;}
.dokuman-kart:hover .dokuman-sil{opacity:1;}
.dokuman-kart .dokuman-sil:hover{transform:scale(1.1);}

.dokuman-kart .dokuman-gorsel{height:90px; display:flex; align-items:center; justify-content:center; cursor:pointer; background:#f6f8fb; border-bottom:1px solid rgba(0,0,0,0.05);}
.dokuman-kart .dokuman-gorsel img{width:100%; height:90px; object-fit:cover;}
.dokuman-kart .dokuman-gorsel i{font-size:40px; color:#8d95a8;}
.dokuman-kart .dokuman-gorsel i.dokuman-kirmizi{color:#e0442c;}
.dokuman-kart .dokuman-gorsel i.dokuman-yesil{color:#1d7044;}
.dokuman-kart .dokuman-gorsel i.dokuman-mavi{color:#2b5797;}
.dokuman-kart .dokuman-gorsel i.dokuman-turuncu{color:#eb9711;}

.dokuman-kart .dokuman-bilgi{padding:8px 10px;}
.dokuman-kart .dokuman-ad{font-size:11px; font-weight:600; color:#1e293b; line-height:1.3; overflow:hidden; text-overflow:ellipsis; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;}
.dokuman-kart .dokuman-tarih{font-size:10px; color:#94a3b8; margin-top:4px;}

.dokuman-bos{display:flex; align-items:center; justify-content:center; gap:8px; grid-column:1 / -1; padding:26px; color:#94a3b8; font-size:13px; background:#fafafa; border:1px dashed rgba(0,0,0,0.1); border-radius:8px;}
.dokuman-bos i{font-size:18px;}
.dokuman-liste-yukleniyor{display:flex; justify-content:center; padding:30px; grid-column:1 / -1;}
/*#endregion*/

/*#region Stok GTİP Ekranı (StokGtipDetay)
   Aynı stoğun İTHALAT ve İHRACAT GTİP'i YAN YANA — ikisi farklı olabildiği için
   karşılaştırmalı okunsun. auto-fit + minmax: dar pencerede kendiliğinden alt alta iner. */
.gtip-grid{flex:1 1 100%; width:100%; min-width:0; display:grid; grid-template-columns:repeat(auto-fit, minmax(320px, 1fr)); gap:14px; padding:14px;}

.gtip-kutu{border:1px solid var(--renk-kenarlik, #e2e8f0); border-radius:10px; overflow:hidden; display:flex; flex-direction:column; background:#fff;}

.gtip-kutu-ust{display:flex; align-items:center; gap:9px; padding:10px 14px; color:#fff; font-size:15px; font-weight:700;}
.gtip-kutu-ust i{font-size:17px;}
.gtip-kutu.ithalat .gtip-kutu-ust{background:#6d5bd0;}
.gtip-kutu.ihracat .gtip-kutu-ust{background:#2ec5b6;}

.gtip-kimlik{padding:13px 14px; border-bottom:1px solid var(--renk-kenarlik, #e2e8f0);}
.gtip-numara-input{width:100%; font-size:19px; font-weight:700; letter-spacing:.6px; line-height:1.2; border:1px solid transparent; border-radius:6px; padding:3px 6px; margin-left:-6px; background:transparent; transition:border-color .15s, background .15s;}
.gtip-numara-input:hover{border-color:var(--renk-kenarlik, #e2e8f0);}
.gtip-numara-input:focus{outline:none; border-color:var(--renk-birincil, #2f4dbf); background:#fff;}
.gtip-numara-input::placeholder{font-weight:400; font-size:14px; letter-spacing:0; color:#94a3b8;}
.gtip-ipucu{margin-top:3px; font-size:10px; color:var(--renk-yazi-orta, #64748b);}
.gtip-tanim{margin-top:5px; font-size:12px; line-height:1.45; color:var(--renk-yazi-orta, #64748b);}
.gtip-tanim.alt{margin-top:2px;}

.gtip-oranlar{display:flex; gap:10px; padding:12px 14px;}
.gtip-oran{flex:1; background:var(--renk-arkaplan-acik, #f8fafc); border-radius:7px; padding:9px 11px;}
.gtip-oran .ad{display:block; font-size:9px; font-weight:700; text-transform:uppercase; letter-spacing:.4px; color:var(--renk-yazi-orta, #64748b);}
.gtip-oran .deger{display:block; font-size:20px; font-weight:700; line-height:1.3;}
.gtip-oran.vurgu{background:#fff7ed;}
.gtip-oran.vurgu .deger{color:#c2410c;}

.gtip-uyari{margin:0 14px 12px 14px; border-radius:7px; padding:9px 11px; font-size:12px; line-height:1.5;}
.gtip-uyari .baslik{font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.4px; margin-bottom:3px;}
.gtip-uyari .satir + .satir{margin-top:3px;}
.gtip-uyari.gozetim{background:#fdf2f8; color:#9d174d;}
.gtip-uyari.kkdf{background:#eff6ff; color:#1e40af;}

.gtip-durum{display:flex; align-items:center; gap:8px; padding:12px 14px; font-size:12px;}
.gtip-durum i{font-size:15px;}
.gtip-durum.bos{color:var(--renk-yazi-orta, #64748b);}
.gtip-durum.yok{background:#fef2f2; color:#b91c1c; font-weight:600;}
.gtip-durum.temiz{color:#15803d;}

.gtip-kutu-alt{margin-top:auto; padding:8px 14px; border-top:1px solid var(--renk-kenarlik, #e2e8f0); font-size:10px; color:var(--renk-yazi-orta, #64748b);}
/*#endregion*/

/*#region Aranabilir Select (aramaliselect.js)*/
.aramali-select{display:flex; align-items:center; gap:8px; min-width:200px; height:32px; padding:0 10px; cursor:pointer; user-select:none;
    background:#fff; border:1px solid var(--renk-kenar); border-radius:var(--radius-sm); font-size:12px; transition:border-color .15s, box-shadow .15s;}
.aramali-select:hover{border-color:var(--renk-birincil-acik);}
.aramali-select.acik{border-color:var(--renk-birincil); box-shadow:0 0 0 2px var(--renk-birincil-alfa-12);}
.aramali-select > i{margin-left:auto; font-size:10px; color:var(--renk-yazi-soluk); transition:transform .15s;}
.aramali-select.acik > i{transform:rotate(180deg);}
.aramali-select-yazi{overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-weight:600;}
.aramali-select-yazi.bos{font-weight:400; color:var(--renk-yazi-soluk);}

.aramali-select-kutu{position:fixed; z-index:9999; display:flex; flex-direction:column; overflow:hidden;
    background:#fff; border:1px solid var(--renk-kenar); border-radius:var(--radius-md); box-shadow:var(--golge-lg);}
.aramali-select-arama{display:flex; align-items:center; gap:8px; padding:8px 10px; border-bottom:1px solid var(--renk-kenar-acik);}
.aramali-select-arama i{font-size:12px; color:var(--renk-yazi-soluk);}
.aramali-select-arama input{flex:1; border:0; outline:none; font-size:12px; font-family:var(--font-aile); background:transparent;}
.aramali-select-liste{overflow-y:auto; padding:4px;}
.aramali-select-satir{display:flex; align-items:center; gap:9px; padding:7px 9px; cursor:pointer; border-radius:var(--radius-sm); font-size:12px;}
.aramali-select-satir > i{font-size:13px; color:var(--renk-yazi-orta);}
.aramali-select-metin{display:flex; flex-direction:column; min-width:0; line-height:1.35;}
.aramali-select-ust{font-weight:600; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.aramali-select-alt{font-size:10px; color:var(--renk-yazi-orta); overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.aramali-select-satir.aktif{background:var(--renk-arkaplan-hover);}
.aramali-select-satir.secili{background:var(--renk-birincil-alfa-08);}
.aramali-select-satir.secili .aramali-select-ust{color:var(--renk-birincil);}
.aramali-select-satir.secili > i{color:var(--renk-birincil);}
.aramali-select-bos{padding:16px 10px; text-align:center; font-size:12px; color:var(--renk-yazi-soluk);}
/*#endregion*/


/*#region Rapor Filtre Formu (excel üreten rapor sayfaları — tam genişlik) */
.rapor-form{flex:1 1 auto; display:flex; flex-direction:column; min-height:0; width:100%; background:#fff; border:1px solid var(--renk-kenar-acik); border-radius:8px; overflow:hidden;}
.rapor-form .rapor-baslik{display:flex; align-items:center; gap:14px; flex-shrink:0; padding:18px 26px; background:linear-gradient(135deg,#1e2d5a 0%,#2f4dbf 140%); color:#fff;}
.rapor-form .rapor-baslik > i{font-size:24px; opacity:.85;}
.rapor-form .rapor-baslik b{display:block; font-size:16px; font-weight:600;}
.rapor-form .rapor-baslik span{display:block; margin-top:3px; font-size:12px; color:rgba(255,255,255,0.75);}

.rapor-form .rapor-alan{flex:1 1 auto; min-height:0; overflow-y:auto; display:grid; grid-template-columns:repeat(12,1fr); gap:20px 24px; align-content:start; padding:26px;}
.rapor-form .rapor-item{grid-column:span 3; display:flex; flex-direction:column; gap:7px; min-width:0;}
.rapor-form .rapor-item-genis{grid-column:span 6;}
.rapor-form .rapor-item-kisa{grid-column:span 3;}
@media (max-width:1100px){ .rapor-form .rapor-item{grid-column:span 6;} .rapor-form .rapor-item-genis{grid-column:span 12;} }
@media (max-width:700px){ .rapor-form .rapor-item, .rapor-form .rapor-item-kisa{grid-column:span 12;} }

.rapor-form .rapor-item > label{display:flex; align-items:center; gap:6px; font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.6px; color:var(--renk-yazi-soluk);}
.rapor-form .rapor-say{font-size:9.5px; font-weight:600; color:var(--renk-birincil); text-transform:none; letter-spacing:0;}
.rapor-form .rapor-item small{font-size:10.5px; color:#94a3b8; line-height:1.45;}
.rapor-form .rapor-item .duzenle-kontrol{width:100%; padding:10px 12px; border:1.5px solid #e2e8f0; border-radius:8px; background:#f8fafc; font-size:13px; color:var(--renk-yazi); box-sizing:border-box;}
.rapor-form .rapor-item .duzenle-kontrol:focus{border-color:var(--renk-birincil); background:#fff; outline:none; box-shadow:0 0 0 3px rgba(47,77,191,0.10);}
.rapor-form .rapor-item select[multiple]{padding:5px; height:auto; background:#fff;}
.rapor-form .rapor-item select[multiple] option{padding:7px 9px; border-radius:6px; font-size:12.5px;}
.rapor-form .rapor-item select[multiple] option:checked{background:#eef2ff linear-gradient(0deg,#eef2ff,#eef2ff); color:#1e2d5a; font-weight:600;}

.rapor-form .rapor-alt{display:flex; align-items:center; justify-content:space-between; gap:14px; flex-shrink:0; padding:16px 26px; background:#f8fafc; border-top:1px solid var(--renk-kenar-acik);}
.rapor-form .rapor-bilgi{font-size:11.5px; color:#94a3b8;}
.rapor-form .rapor-indir{display:inline-flex; align-items:center; gap:8px; margin-left:auto; padding:12px 26px; border:0; border-radius:8px; background:var(--renk-basari); color:#fff; font-size:13px; font-weight:600; cursor:pointer; transition:filter .15s;}
.rapor-form .rapor-indir:hover{filter:brightness(1.08);}
.rapor-form .rapor-indir i{font-size:15px;}
/*#endregion*/

/*#region Balon (global tıklamalı popover — .balon-alan > .balon-ac + .balon.gizli)
   Konumlandırma ve ok kurgusu .idetaytooltip ile ortaktır (balonKonumla). */
.balon-alan{position:relative; display:inline-flex; align-items:center; gap:5px;}
.balon-ac{cursor:pointer;}

.balon{--balon-zemin:#fff; --balon-kenar:#ddd;
    position:fixed; top:0; left:0; z-index:100000; transition:none;
    display:flex; flex-direction:column; align-items:flex-start; gap:3px;
    min-width:150px; max-width:340px; padding:8px 10px; white-space:normal; text-align:left; font-size:12px;
    background:var(--balon-zemin); border:1px solid var(--balon-kenar); border-radius:6px;
    box-shadow:0 4px 12px rgba(0,0,0,.15);}
.balon.gizli{display:none;}

.balon::before, .balon::after{content:""; position:absolute; left:var(--ok-x, 50%); transform:translateX(-50%); border-style:solid;}
.balon[yon="asagi"]::before{top:-8px; border-width:0 8px 8px 8px; border-color:transparent transparent var(--balon-kenar) transparent;}
.balon[yon="asagi"]::after{top:-7px; border-width:0 7px 7px 7px; border-color:transparent transparent var(--balon-zemin) transparent;}
.balon[yon="yukari"]::before{bottom:-8px; border-width:8px 8px 0 8px; border-color:var(--balon-kenar) transparent transparent transparent;}
.balon[yon="yukari"]::after{bottom:-7px; border-width:7px 7px 0 7px; border-color:var(--balon-zemin) transparent transparent transparent;}

.balon .baslik{font-size:9.5px; font-weight:700; letter-spacing:.4px; color:var(--renk-yazi-soluk);}
/*#endregion*/
