/* KOZA ERP arayuzu — 14 Eyl 2026'da onaylanan tasarim: sol menu, pastel ozet kartlari, telefonda alt menu.
   Renk ve yazi degiskenleri renkler.css'te (yonetim paneli de ayni dosyayi kullanir). Dis kaynak yok. */

/* ---------- temel ---------- */
*{box-sizing:border-box}
/* Kaydirma cubugu icin yer hep ayrili: form alanlari acilip kapaninca (sayfa uzayip kisalinca) icerik saga sola kaymaz */
html{-webkit-text-size-adjust:100%;scrollbar-gutter:stable;overflow-y:scroll}
body{margin:0;background:var(--zemin);color:var(--murekkep);font-family:var(--f-govde);font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased}
a{color:var(--lacivert)}
button,input,select,textarea{font:inherit;color:inherit}
h1,h2,h3{text-wrap:balance}
:focus-visible{outline:2px solid var(--vurgu);outline-offset:2px}
.ikon{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.sayi{font-variant-numeric:tabular-nums}
.gizli{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.kpt-hidden,[hidden]{display:none!important}

/* ---------- iskelet ---------- */
.duzen{display:grid;grid-template-columns:252px minmax(0,1fr);min-height:100vh}
.yan{position:sticky;top:0;height:100vh;overflow-y:auto;background:var(--yuzey);border-right:1px solid var(--cizgi);display:flex;flex-direction:column;gap:4px;padding-inline:14px;padding-block:22px 18px}
.marka{display:flex;align-items:center;gap:10px;padding-inline:10px;margin-bottom:22px;color:var(--murekkep);text-decoration:none}
.logo{display:block}
.logo img{display:block;width:100%;height:auto}
.yan .marka{padding-inline:8px}
.yan .logo{width:212px}
.grup-etiket{font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--soluk-2);padding-inline:12px;margin-top:16px;margin-bottom:4px}
.menu-oge{display:flex;align-items:center;gap:12px;width:100%;padding-inline:12px;padding-block:10px;border:0;border-radius:12px;background:none;color:var(--soluk);font-weight:500;font-size:15px;text-decoration:none;text-align:left;cursor:pointer}
.menu-oge:hover{background:var(--yuzey-2);color:var(--murekkep)}
.menu-oge.aktif{background:var(--lacivert);color:var(--lacivert-ink)}
.menu-oge.pasif{color:var(--soluk-2);cursor:not-allowed}
.menu-oge.pasif:hover{background:none;color:var(--soluk-2)}
.cip{margin-left:auto;font-size:11px;font-weight:600;padding-inline:8px;padding-block:2px;border-radius:999px;background:var(--yuzey-2);border:1px solid var(--cizgi);color:var(--soluk)}
.menu-oge .rozet{margin-left:auto;font-size:11px;color:var(--soluk-2)}
.menu-oge.aktif .rozet{color:inherit;opacity:.8}
.yan-alt{margin-top:auto;display:flex;flex-direction:column;gap:4px;padding-top:16px;border-top:1px solid var(--cizgi)}
.yan-alt form{margin:0}

.ana{min-width:0;padding-inline:clamp(16px,3vw,34px);padding-block:22px 56px}
.icerik{max-width:1380px;margin-inline:auto;display:flex;flex-direction:column;gap:20px}

/* ---------- ust bar ---------- */
.ust{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px}
.karsilama{min-width:0}
.karsilama h1{font-family:var(--f-baslik);font-weight:750;font-size:clamp(24px,3vw,32px);line-height:1.1;margin:0;letter-spacing:-.01em}
.tarih{margin:6px 0 0;color:var(--soluk);font-size:14px}
.tarih strong{color:var(--murekkep);font-weight:600}
.ust-araclar{display:flex;align-items:center;gap:10px;flex-wrap:nowrap}
.arama{display:flex;align-items:center;gap:8px;margin:0;background:var(--yuzey);border:1px solid var(--cizgi);border-radius:12px;padding-inline:12px;height:44px;width:min(320px,100%);color:var(--soluk-2)}
.arama:focus-within{border-color:var(--lacivert)}
@media (min-width:800px){.arama{min-width:280px}}
.arama input{border:0;outline:0;background:transparent;width:100%;min-width:0;font-size:14px;color:var(--murekkep)}
.arama input::placeholder{color:var(--soluk-2)}
.avatar{width:44px;height:44px;border-radius:12px;background:var(--kart-lila);color:var(--ikon-lila);display:grid;place-items:center;font-family:var(--f-baslik);font-weight:750;font-size:17px;border:1px solid var(--cizgi);flex:none}

/* ---------- dugmeler ---------- */
.button,.koza-buton,.btn-birincil{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding-inline:16px;border-radius:12px;border:1px solid var(--cizgi);background:var(--yuzey);color:var(--murekkep);font-weight:600;font-size:14px;line-height:1.2;text-decoration:none;white-space:nowrap;cursor:pointer}
.button:hover,.koza-buton:hover{border-color:var(--lacivert);color:var(--lacivert)}
.button-primary,.btn-birincil{background:var(--vurgu);border-color:var(--vurgu);color:var(--vurgu-ink)}
.button-primary:hover,.btn-birincil:hover{filter:brightness(1.06);border-color:var(--vurgu);color:var(--vurgu-ink)}
.button-small,.btn-kucuk{min-height:34px;padding-inline:10px;font-size:13px;border-radius:9px}
.btn-kucuk{display:inline-flex;align-items:center;font-weight:600;border:1px solid var(--cizgi);background:var(--yuzey);color:var(--murekkep);text-decoration:none;white-space:nowrap}
.btn-kucuk:hover{border-color:var(--lacivert);color:var(--lacivert)}
.button-link-delete{color:var(--kritik)}
.button-link-delete:hover{background:var(--kritik-z);border-color:var(--kritik);color:var(--kritik)}
.button:disabled,.button.pasif,.btn-kucuk.pasif{opacity:.5;cursor:not-allowed}
.button.pasif:hover,.btn-kucuk.pasif:hover{border-color:var(--cizgi);color:var(--murekkep)}
.kpt-actions .kpt-form-not{flex-basis:100%;margin:0}
.tam{width:100%}
form.satir-ici{display:inline}

/* ---------- uyarilar ---------- */
.uyarilar{display:flex;flex-direction:column;gap:8px}
.koza-uyari{margin:0;padding:12px 16px;border-radius:14px;background:var(--bilgi-z);color:var(--bilgi);font-size:14px}
.koza-uyari-hata{background:var(--kritik-z);color:var(--kritik)}
.koza-uyari-basari{background:var(--tamam-z);color:var(--tamam)}
.koza-uyari-salt{background:var(--uyari-z);color:var(--uyari)}
.koza-uyari-montaj{border:1px solid var(--uyari);font-size:15px;display:flex;flex-wrap:wrap;gap:2px 8px;align-items:baseline}
.koza-uyari-montaj span{font-size:13px;opacity:.85}
.koza-uyari-satir{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 12px;border:1px solid var(--kritik)}

/* ---------- paneller ---------- */
.panel,.kpt-section{background:var(--yuzey);border:1px solid var(--cizgi);border-radius:20px;padding:20px 22px;box-shadow:var(--golge);min-width:0}
.panel-bas{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:14px}
.panel-bas h2,.kpt-section h2{font-size:16px;font-weight:700;margin:0;line-height:1.3}
.kpt-section h2{margin-bottom:6px}
.panel-bas p{margin:2px 0 0;font-size:13px;color:var(--soluk)}
.baglanti{font-size:13px;font-weight:600;color:var(--lacivert);white-space:nowrap;text-decoration:none}
.baglanti:hover{text-decoration:underline}
.lejant{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12.5px;color:var(--soluk);margin-bottom:6px}
.lejant i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}
.description{font-size:13px;color:var(--soluk);margin:6px 0 0}
.bos{margin:0;color:var(--soluk);font-size:14px}

/* ---------- ozet kartlari ---------- */
.kpiler{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.kpiler-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.kpiler-4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1199px){.kpiler-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:559px){.kpiler-4{grid-template-columns:minmax(0,1fr)}}
.kpi{border-radius:20px;padding:18px 18px 16px;display:flex;flex-direction:column;gap:10px;min-width:0}
.kpi-ust{display:flex;align-items:center;justify-content:space-between;gap:8px}
.kpi-etiket{font-size:13px;font-weight:600;color:var(--soluk)}
.kpi-ikon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--yuzey)}
.kpi-ikon .ikon{width:18px;height:18px}
.kpi-deger{font-family:var(--f-baslik);font-weight:650;font-size:clamp(24px,2.1vw,30px);line-height:1;letter-spacing:-.01em;font-variant-numeric:tabular-nums;white-space:nowrap}
.kpi-deger small{font-family:var(--f-govde);font-size:14px;font-weight:600;color:var(--soluk);margin-left:3px}
.kpi-alt{font-size:13px;color:var(--soluk)}
.kpi-alt b{color:var(--murekkep);font-weight:600}
.k-gok{background:var(--kart-gok)} .k-gok .kpi-ikon{color:var(--ikon-gok)}
.k-lila{background:var(--kart-lila)} .k-lila .kpi-ikon{color:var(--ikon-lila)}
.k-nane{background:var(--kart-nane)} .k-nane .kpi-ikon{color:var(--ikon-nane)}
.k-seftali{background:var(--kart-seftali)} .k-seftali .kpi-ikon{color:var(--ikon-seftali)}
.k-bugday{background:var(--kart-bugday)} .k-bugday .kpi-ikon{color:var(--ikon-bugday)}
.seritler{display:flex;gap:3px;height:8px}
.seritler span{border-radius:4px}
.s-yeni{background:var(--yeni)} .s-plan{background:var(--plan)} .s-tamam{background:var(--tamam)}
.asama-dizi{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12.5px;color:var(--soluk)}
.asama-dizi a{color:inherit;text-decoration:none}
.asama-dizi a:hover{color:var(--murekkep);text-decoration:underline}
.asama-dizi i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:5px;vertical-align:1px}
.ilerleme{height:8px;border-radius:4px;background:var(--yuzey);overflow:hidden}
.ilerleme span{display:block;height:100%;border-radius:4px}
.satir-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,.9fr);gap:16px;align-items:start}
.satir-3{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:16px}

/* grafikler */
.grafik{width:100%;height:auto;display:block;overflow:visible}
.grafik text{font-family:var(--f-govde);font-size:11px;fill:var(--soluk);font-variant-numeric:tabular-nums}
.grafik .deger{fill:var(--murekkep);font-weight:700;font-size:12px}
.grafik .alt-yazi{fill:var(--soluk-2);font-size:10px}
.grafik .surer{fill:var(--vurgu);font-weight:600;font-size:10px}
.izgara{stroke:var(--cizgi);stroke-width:1;fill:none}
.taban{stroke:var(--soluk-2);stroke-width:1;fill:none}
.cubuk-lacivert{fill:var(--lacivert)}
.cubuk-tahsil{fill:var(--tahsil)}
.tarali-zemin{fill:var(--lacivert-soluk)}
.tarali-cizgi{fill:var(--lacivert);opacity:.5}
.cubuk-surer{fill:url(#tarali);stroke:var(--lacivert);stroke-width:1.5;stroke-dasharray:4 3}

/* dikkat */
.dikkat-liste{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.dikkat-oge{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border-radius:14px;background:var(--yuzey-2)}
.dikkat-ikon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center}
.dikkat-ikon .ikon{width:18px;height:18px}
.d-uyari .dikkat-ikon{background:var(--uyari-z);color:var(--uyari)}
.d-kritik .dikkat-ikon{background:var(--kritik-z);color:var(--kritik)}
.d-bilgi .dikkat-ikon{background:var(--bilgi-z);color:var(--bilgi)}
.dikkat-oge strong{display:block;font-size:14px;font-weight:600;line-height:1.3}
.dikkat-oge div > span{display:block;font-size:12.5px;color:var(--soluk);margin-top:2px;overflow-wrap:anywhere}

/* ekip */
.ekip-liste{display:flex;flex-direction:column;gap:18px;margin-top:6px}
.ekip-bas{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px}
.ekip-ad{font-weight:600;font-size:14px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ekip-sayi{font-size:13px;color:var(--soluk);white-space:nowrap}
.ekip-sayi b{font-family:var(--f-baslik);font-size:18px;font-weight:650;color:var(--murekkep);margin-right:3px}
.parca-iz{height:14px;border-radius:7px;background:var(--yuzey-2);display:flex;overflow:hidden}
.parca-iz span{height:100%;border-right:2px solid var(--yuzey)}
.parca-iz span:last-child{border-right:0}
.ekip-detay{font-size:12.5px;color:var(--soluk);margin-top:6px}
.durum-cip{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:600;padding-inline:8px;padding-block:2px;border-radius:999px;white-space:nowrap}
.c-uyari{background:var(--uyari-z);color:var(--uyari)}
.c-yeni{background:var(--yeni-z);color:var(--yeni)}
.c-plan{background:var(--plan-z);color:var(--plan)}
.c-tamam{background:var(--tamam-z);color:var(--tamam)}
.c-kritik{background:var(--kritik-z);color:var(--kritik)}
.projeler tr.gecikti td:first-child{box-shadow:inset 3px 0 0 var(--kritik)}
.projeler tr.gecikti .no a{color:var(--kritik)}
.c-yeni::before,.c-plan::before,.c-tamam::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}

/* is turu ve tahsilat */
.alt-bolum + .alt-bolum{margin-top:18px;padding-top:16px;border-top:1px solid var(--cizgi)}
.alt-baslik{font-size:11.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--soluk-2);margin:0 0 10px}
.tur-satir + .tur-satir{margin-top:12px}
.tur-bas{display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px 10px;font-size:14px;margin-bottom:6px}
.tur-bas span{color:var(--soluk);font-size:13px}
.tur-bas b{font-weight:600}
.cizgi-iz{height:8px;border-radius:4px;background:var(--yuzey-2);overflow:hidden}
.cizgi-iz span{display:block;height:100%;border-radius:4px}
.tahsilat-cubuk{display:flex;height:14px;border-radius:7px;overflow:hidden;gap:2px;background:var(--yuzey-2)}
.tahsilat-cubuk .t-edildi{background:var(--tahsil)}
.tahsilat-cubuk .t-edilmedi{background:var(--kritik)}
.tahsilat-lejant{display:flex;justify-content:space-between;gap:10px;margin-top:8px;font-size:13px;color:var(--soluk)}
.tahsilat-lejant b{color:var(--murekkep);font-family:var(--f-baslik);font-weight:650;font-size:17px;margin-right:4px}
.tahsilat-cubuk .t-kismi{background:var(--plan)}
.tahsilat-lejant{flex-wrap:wrap}

/* proje sayfasi: tahsilatlar */
.tahsilat-tablo{margin-block:4px 16px}
.tahsilat-tablo .tutar{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.tahsilat-tablo th.tutar{text-align:right}
.tahsilat-tablo tr.gecikti td:first-child{box-shadow:inset 3px 0 0 var(--kritik)}
.tahsilat-not{display:block;font-size:12px;color:var(--soluk)}
.tahsilat-form{padding:16px;border-radius:14px;background:var(--yuzey-2);display:flex;flex-direction:column;gap:12px;margin:0}
.tahsilat-form-bas{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:4px 12px}
.tahsilat-form-bas h3{margin:0;font-size:15px}
.tahsilat-form-bas span{font-size:13px;color:var(--soluk)}
.tahsilat-alanlar{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}
.alan-genis{grid-column:1/-1}
.onay{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--murekkep);cursor:pointer}
.onay input{width:18px;height:18px;margin:0;accent-color:var(--lacivert)}

/* ---------- tablolar ---------- */
.tablo-kap{overflow-x:auto;margin-inline:-6px}
table.projeler,table.tablo{width:100%;border-collapse:collapse;font-size:14px}
.projeler th,.tablo th{text-align:left;font-size:11.5px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--soluk-2);padding:10px;border-bottom:1px solid var(--cizgi);white-space:nowrap}
.projeler td,.tablo td{padding:12px 10px;border-bottom:1px solid var(--cizgi);vertical-align:middle}
.projeler td{white-space:nowrap}
.projeler tbody tr:last-child td,.tablo tbody tr:last-child td{border-bottom:0}
.projeler tbody tr:hover td,.tablo tbody tr:hover td{background:var(--yuzey-2)}
.projeler .no a{font-family:var(--f-mono);font-size:13px;color:var(--lacivert);text-decoration:none}
.projeler .no a:hover{text-decoration:underline}
.projeler .musteri{font-weight:600}
.projeler .tur,.ekip-yazi,.projeler .tarih-h{color:var(--soluk)}
.projeler .tutar{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}
.projeler th.tutar{text-align:right}
.projeler .tarih-h{font-variant-numeric:tabular-nums}
.islem{display:flex;gap:6px;align-items:center;justify-content:flex-end}
.tablo .islem{justify-content:flex-start}

/* ---------- arama, filtre ---------- */
.kpt-search-form{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 14px}
.kpt-search-form input[type=search]{flex:1 1 240px;width:auto}
.filtreler{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.filtre{padding-inline:12px;padding-block:7px;border-radius:999px;border:1px solid var(--cizgi);background:var(--yuzey);color:var(--soluk);font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap}
.filtre:hover{border-color:var(--lacivert);color:var(--lacivert)}
.filtre.aktif{background:var(--lacivert);border-color:var(--lacivert);color:var(--lacivert-ink)}

/* ---------- formlar ---------- */
.kpt-form{display:flex;flex-direction:column;gap:16px;margin:0}
.kpt-alan-grubu,#kpt-dependent-form,#kpt-combo-fields{display:flex;flex-direction:column;gap:16px;border:0;margin:0;padding:0;min-width:0}
.kpt-row{display:grid;grid-template-columns:minmax(160px,34%) minmax(0,1fr);gap:8px 24px;align-items:center;padding-block:12px;border-bottom:1px solid var(--cizgi)}
.kpt-row:last-child{border-bottom:0;padding-bottom:0}
.kpt-row>label{font-weight:600;font-size:14px;color:var(--soluk);line-height:1.35}
.kpt-row>div{min-width:0}
.kpt-row em{color:var(--kritik);font-style:normal}
:is(.kpt-row,.alan,.kpt-customer-picker,.kpt-search-form) :is(input[type=text],input[type=email],input[type=tel],input[type=number],input[type=search],input[type=password],input[type=date],select,textarea){width:100%;min-height:44px;padding:10px 14px;border:1px solid var(--cizgi);border-radius:12px;background:var(--yuzey);color:var(--murekkep);font-size:15px;line-height:1.35}
:is(.kpt-row,.alan,.kpt-customer-picker,.kpt-search-form) :is(input,select,textarea):focus{outline:none;border-color:var(--lacivert);box-shadow:0 0 0 3px var(--lacivert-soluk)}
.kpt-row textarea{min-height:104px;resize:vertical}
.kpt-row select:disabled{background:var(--yuzey-2);color:var(--soluk);cursor:not-allowed}
.kpt-row input[type=file]{width:100%;font-size:14px;color:var(--soluk)}
.kpt-row input[type=file]::file-selector-button{margin-right:12px;min-height:40px;padding-inline:14px;border-radius:10px;border:1px solid var(--cizgi);background:var(--yuzey-2);color:var(--murekkep);font-weight:600;cursor:pointer}
.kpt-radio{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.kpt-radio label{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding-inline:14px;border:1px solid var(--cizgi);border-radius:12px;background:var(--yuzey);font-weight:500;color:var(--murekkep);cursor:pointer;white-space:nowrap}
.kpt-radio label:has(input:checked){border-color:var(--lacivert);background:var(--lacivert-soluk)}
.kpt-radio input[type=radio]{margin:0;width:18px;height:18px;accent-color:var(--lacivert)}
.kpt-actions{display:flex;gap:10px;flex-wrap:wrap}
.kpt-alan-grubu:disabled :is(input,select,textarea){background:var(--yuzey-2);color:var(--soluk);cursor:default}
.kpt-alan-grubu:disabled .kpt-barkod{display:none}
.koza-alan-uyari{color:var(--kritik);margin-top:6px}

/* musteri secici */
.kpt-customer-picker{position:relative}
.kpt-customer-results{display:none;position:absolute;z-index:30;left:0;right:0;top:50px;max-height:280px;overflow:auto;background:var(--yuzey);border:1px solid var(--cizgi);border-radius:12px;box-shadow:0 12px 28px rgba(24,32,58,.14);padding:4px}
.kpt-customer-result{display:block;width:100%;text-align:left;padding:12px 14px;border:0;border-radius:9px;background:none;color:var(--murekkep);font-size:14px;cursor:pointer}
.kpt-customer-result:hover,.kpt-customer-result:focus-visible{background:var(--yuzey-2)}
.kpt-customer-empty{padding:12px 14px;color:var(--soluk)}
.kpt-selected-customer{margin-top:10px;padding:12px 14px;border-radius:12px;background:var(--yuzey-2);color:var(--murekkep);font-size:14px}

/* gorseller */
.kpt-image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;margin-top:10px}
.kpt-image-card{display:flex;flex-direction:column;gap:8px;padding:8px;border-radius:14px;background:var(--yuzey-2)}
.kpt-image-open{display:flex;flex-direction:column;gap:6px;width:100%;padding:0;border:0;background:none;text-align:left;cursor:zoom-in}
.kpt-image-open img{display:block;width:100%;height:150px;object-fit:cover;border-radius:10px;background:var(--cizgi)}
.kpt-image-open span{font-size:12px;color:var(--soluk)}
.kpt-image-actions{display:flex;justify-content:flex-end}
.kpt-image-lightbox{display:none;position:fixed;inset:0;z-index:1000;background:rgba(8,10,20,.86);align-items:center;justify-content:center;padding:24px}
.kpt-image-lightbox.is-open{display:flex}
.kpt-image-lightbox img{max-width:92vw;max-height:88vh;object-fit:contain;border-radius:8px}
.kpt-image-close{position:absolute;top:16px;right:16px;width:44px;height:44px;border:0;border-radius:50%;background:#fff;color:#111;font-size:28px;line-height:1;cursor:pointer}

/* barkod */
.kpt-barkod{margin-top:10px;padding:14px;border-radius:14px;background:var(--yuzey-2)}
.kpt-barkod-baslik{font-weight:600;margin:0 0 10px;font-size:13px;color:var(--soluk)}
.kpt-barkod-dugmeler{display:flex;gap:10px;flex-wrap:wrap}
.kpt-gizli-dosya{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;pointer-events:none}
.kpt-barkod-dugmeler label.button:focus-within{outline:2px solid var(--vurgu);outline-offset:2px}
.kpt-barkod-video{position:relative;margin-top:10px;max-width:520px;border-radius:12px;overflow:hidden;background:#000}
.kpt-barkod-video video{display:block;width:100%;max-height:60vh;object-fit:cover}
.kpt-barkod-cerceve{position:absolute;left:8%;right:8%;top:32%;bottom:32%;border:2px solid rgba(255,255,255,.9);border-radius:8px;box-shadow:0 0 0 999px rgba(0,0,0,.35)}
.kpt-barkod-kapat{position:absolute;right:10px;bottom:10px}
.kpt-barkod-adaylar{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.kpt-barkod-aday{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;padding:10px 12px;border:1px solid var(--cizgi);border-radius:12px;background:var(--yuzey);cursor:pointer}
.kpt-barkod-aday:hover,.kpt-barkod-aday:focus-visible{border-color:var(--lacivert);background:var(--lacivert-soluk)}
.kpt-barkod-aday strong{font-family:var(--f-mono);font-size:15px;word-break:break-all;color:var(--murekkep)}
.kpt-barkod-aday span{font-size:12px;color:var(--soluk)}

/* musteriler: form + arama yan yana */
.iki-sutun{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:16px;align-items:start}

/* ---------- tek kart sayfalar (giris, kilit, hata) ---------- */
.tek-sayfa{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding-inline:16px;padding-block:32px}
.tek-kart{width:min(420px,100%);background:var(--yuzey);border:1px solid var(--cizgi);border-radius:24px;box-shadow:var(--golge);padding:30px 26px;display:flex;flex-direction:column;gap:18px}
.tek-kart .marka{margin:0;padding:0}
.tek-kart .logo{width:min(250px,100%)}
.tek-kart h1{font-family:var(--f-baslik);font-size:26px;font-weight:750;margin:0;line-height:1.15}
.tek-kart p{margin:0;color:var(--soluk)}
.tek-ikon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:var(--uyari-z);color:var(--uyari)}
.tek-ikon .ikon{width:24px;height:24px}
.alanlar{display:flex;flex-direction:column;gap:14px;margin:0}
.alan{display:flex;flex-direction:column;gap:6px}
.alan label{font-weight:600;font-size:14px;color:var(--soluk)}

/* modul kartlari (KOZA PROJE yetkisi olmayan kullanici) */
.moduller{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.modul{display:flex;flex-direction:column;gap:6px;padding:22px;border-radius:20px;background:var(--kart-gok);color:var(--murekkep);text-decoration:none}
.modul strong{font-family:var(--f-baslik);font-size:22px;font-weight:700}
.modul span{color:var(--soluk)}
a.modul:hover{outline:2px solid var(--lacivert)}
.modul.kapali{background:var(--yuzey);border:1px dashed var(--cizgi);cursor:not-allowed}

/* ---------- telefon ust ve alt menu ---------- */
.ust-mobil,.alt-menu{display:none}

@media (max-width:1439px){
  .kpiler:not(.kpiler-3):not(.kpiler-4){grid-template-columns:repeat(3,minmax(0,1fr))}
  .kpi-toplam{grid-column:span 2;order:-2}
  .kpi-musteri{order:-1}
}
@media (max-width:1199px){
  .satir-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dikkat{grid-column:span 2}
  .iki-sutun{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:999px){
  .kpiler:not(.kpiler-3):not(.kpiler-4){grid-template-columns:repeat(2,minmax(0,1fr))}
  .kpi-musteri{order:0}
  .satir-3{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:799px){
  .duzen{grid-template-columns:minmax(0,1fr)}
  .yan{display:none}
  .ana{padding-block:0 104px}
  .ust-mobil{display:flex;align-items:center;justify-content:space-between;gap:12px;position:sticky;top:0;z-index:20;background:var(--zemin);padding-block:12px;margin-bottom:6px}
  .ust-mobil .marka{margin:0;padding:0}
  .ust-mobil .logo{width:auto}
  .ust-mobil .logo img{width:auto;height:36px}
  .ust-mobil .avatar{width:38px;height:38px;border-radius:11px;font-size:15px}
  .ust .avatar{display:none}
  .ust-araclar{width:100%}
  .arama{flex:1;width:auto}
  .alt-menu{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);position:fixed;inset-inline:0;bottom:0;z-index:30;background:var(--yuzey);border-top:1px solid var(--cizgi);padding-inline:8px;padding-block:8px calc(8px + env(safe-area-inset-bottom))}
  .alt-menu form{display:contents}
  .alt-menu a,.alt-menu button{display:flex;flex-direction:column;align-items:center;gap:3px;border:0;background:none;font-size:11px;font-weight:600;color:var(--soluk);text-decoration:none;padding-block:4px;border-radius:10px;cursor:pointer}
  .alt-menu .aktif{color:var(--lacivert)}
  .alt-menu .yeni-dugme{color:var(--murekkep)}
  .alt-menu .yeni-dugme span{width:42px;height:42px;border-radius:14px;background:var(--vurgu);color:var(--vurgu-ink);display:grid;place-items:center;margin-top:-18px;box-shadow:0 6px 16px color-mix(in srgb, var(--vurgu) 35%, transparent)}
}
@media (max-width:699px){
  .satir-2{grid-template-columns:minmax(0,1fr)}
  .dikkat{grid-column:auto}
  .kpiler-3{grid-template-columns:minmax(0,1fr)}
  .ust .btn-birincil{display:none}
  .panel,.kpt-section{padding:16px}
  .kpt-row{grid-template-columns:minmax(0,1fr)}
  /* proje tablosu satirlari kart olur */
  .tablo-kap{margin-inline:0;overflow:visible}
  .projeler thead,.tablo thead{display:none}
  .projeler tbody{display:flex;flex-direction:column;gap:10px}
  .projeler tbody tr{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"no durum" "musteri musteri" "tur ekip" "tutar tarih";gap:4px 10px;padding:12px 14px;border-radius:14px;background:var(--yuzey-2)}
  .projeler td{padding:0;border:0;white-space:normal;background:none!important}
  .projeler tr.gecikti{box-shadow:inset 4px 0 0 var(--kritik)}
  .projeler tr.gecikti td:first-child{box-shadow:none}
  .projeler td.no{grid-area:no} .projeler td.durum{grid-area:durum;justify-self:end}
  .projeler td.musteri{grid-area:musteri;font-size:15px}
  .projeler td.tur{grid-area:tur;font-size:13px} .projeler td.ekip{grid-area:ekip;justify-self:end;font-size:13px}
  .projeler td.tutar{grid-area:tutar;text-align:left} .projeler td.tarih-h{grid-area:tarih;justify-self:end;font-size:13px}
  .projeler td.islem,.projeler td.masaustu{display:none}
  .projeler-tam tbody tr{grid-template-areas:"no durum" "musteri musteri" "tur ekip" "tutar tarih" "islem islem"}
  .projeler-tam td.islem{display:flex;grid-area:islem;justify-content:flex-start;flex-wrap:wrap;margin-top:6px}
  /* musteri tablosu: etiketli kart */
  .tablo,.tablo tbody,.tablo tr,.tablo td{display:block}
  .tablo tbody{display:flex;flex-direction:column;gap:10px}
  .tablo tr{padding:12px 14px;border-radius:14px;background:var(--yuzey-2)}
  .tablo td{display:grid;grid-template-columns:84px minmax(0,1fr);gap:10px;padding:3px 0;border:0;background:none!important}
  .tablo td::before{content:attr(data-etiket);color:var(--soluk-2);font-size:12px;font-weight:600}
  .tablo td.islem{display:flex;margin-top:8px}
  .tablo td.islem::before{content:none}
}
@media (max-width:559px){
  .kpiler:not(.kpiler-3):not(.kpiler-4){grid-template-columns:minmax(0,1fr)}
  .kpi-toplam{grid-column:auto}
  .dikkat-oge{grid-template-columns:auto minmax(0,1fr)}
  .dikkat-oge .btn-kucuk{grid-column:2;justify-self:start}
}
@media print{
  .yan,.alt-menu,.ust-mobil,.ust-araclar{display:none!important}
  .duzen{display:block}
  body{background:#fff}
}
@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important}}

/* ---------- firma, kullanicilar (15 Eyl 2026) ---------- */
.firma-adi{margin:-14px 10px 12px;font-size:12.5px;font-weight:600;color:var(--soluk);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.c-lila{background:var(--kart-lila);color:var(--ikon-lila)}
.mono{font-family:var(--f-mono);font-size:13px}
.koza-uyari ul{margin:6px 0 0;padding-left:18px}
.ust-mobil-araclar{display:flex;align-items:center;gap:8px}
.ikon-dugme{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;border:1px solid var(--cizgi);background:var(--yuzey);color:var(--soluk);text-decoration:none}
.ikon-dugme .ikon{width:19px;height:19px}
.giris-baglantilar{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;font-size:14px;color:var(--soluk)}
.giris-baglantilar a,.geri-baglanti{font-weight:600;color:var(--lacivert);text-decoration:none}
.giris-baglantilar a:hover,.geri-baglanti:hover{text-decoration:underline}
.geri-baglanti{font-size:14px;align-self:flex-start}
.tek-ikon.basari{background:var(--tamam-z);color:var(--tamam)}
.bal-kupu{position:absolute!important;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.yetki-cipleri{display:flex;flex-wrap:wrap;gap:6px}
.sutun{display:flex;flex-direction:column;gap:16px;min-width:0}
.kpt-row>label .description{display:block;font-weight:400;margin-top:2px}
.giris-bilgisi{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:16px 0}
.giris-bilgisi div{padding:14px 16px;border-radius:14px;background:var(--yuzey-2);min-width:0}
.giris-bilgisi dt{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--soluk-2)}
.giris-bilgisi dd{margin:4px 0 0;font-size:20px;font-weight:600;overflow-wrap:anywhere;user-select:all}

/* ---------- KOZA TEKLIF: fiyat listeleri ---------- */
.liste-kartlari{display:flex;flex-direction:column;gap:12px}
.liste-karti{padding:16px;border-radius:16px;background:var(--yuzey-2);display:flex;flex-direction:column;gap:12px;min-width:0}
.liste-karti.pasif{opacity:.72}
.liste-karti-bas{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.liste-karti h3{margin:0;font-size:16px;line-height:1.3}
.liste-karti h3 a{color:var(--murekkep);text-decoration:none}
.liste-karti h3 a:hover{color:var(--lacivert);text-decoration:underline}
.liste-karti-bas p{margin:2px 0 0;font-size:13px;color:var(--soluk)}
.marka-cipleri{display:flex;flex-wrap:wrap;gap:6px}
.marka-cip{font-size:12.5px;font-weight:600;padding-inline:10px;padding-block:3px;border-radius:999px;background:var(--yuzey);border:1px solid var(--cizgi)}
.pdf-baglanti{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:var(--yuzey);border:1px solid var(--cizgi);color:var(--murekkep);text-decoration:none;min-width:0}
.pdf-baglanti:hover{border-color:var(--lacivert)}
.pdf-baglanti .ikon{color:var(--kritik)}
.pdf-baglanti span{display:flex;flex-direction:column;min-width:0}
.pdf-baglanti b{font-size:13.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pdf-baglanti small{font-size:12px;color:var(--soluk)}
.adim-liste{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px;font-size:14px;color:var(--soluk)}
.adim-liste b{color:var(--murekkep);font-weight:600}
.satir-form{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin:0}
.satir-form select{min-height:36px;padding:4px 10px;border:1px solid var(--cizgi);border-radius:9px;background:var(--yuzey);color:var(--murekkep);max-width:100%}
.kpi-deger-yazi{font-family:var(--f-baslik);font-weight:650;font-size:20px;line-height:1.1}
.dosya-ad{font-weight:600;overflow-wrap:anywhere}
.alan label small{font-weight:400;color:var(--soluk-2)}
.kpt-row>.kpt-row-etiket{font-weight:600;font-size:14px;color:var(--soluk);line-height:1.35}

/* ---------- iki adimli dogrulama (15 Eyl 2026) ---------- */
a.avatar{text-decoration:none}
.tek-kart.genis{width:min(560px,100%)}
.kurulum-adimlari{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:18px}
.kurulum-adimlari>li{padding-left:4px}
.kurulum-adimlari>li>b{display:block;margin-bottom:8px}
.qr-kutu{display:inline-block;background:#fff;padding:6px;border-radius:14px;border:1px solid var(--cizgi);max-width:100%}
.qr-kutu svg{display:block;width:min(240px,70vw);height:auto;aspect-ratio:1/1;shape-rendering:crispEdges}
.elle-anahtar{margin-top:10px;font-size:14px}
.elle-anahtar summary{cursor:pointer;font-weight:600;color:var(--lacivert)}
.elle-anahtar p{margin:8px 0 0}
.anahtar{font-size:15px;letter-spacing:.06em;word-break:break-all;padding:10px 12px;border-radius:10px;background:var(--yuzey-2);user-select:all}
.alan input.kod-girdisi{font-family:var(--f-mono);font-size:24px;letter-spacing:.25em;text-align:center}
.yedek-kodlar{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;font-family:var(--f-mono);font-size:17px}
.yedek-kodlar li{padding:10px 12px;border-radius:10px;background:var(--yuzey-2);text-align:center;letter-spacing:.08em}
.bag-dugme{border:0;background:none;padding:0;cursor:pointer;font:inherit}
@media print{
  .tek-sayfa{min-height:auto;display:block}
  .tek-kart{box-shadow:none;border:0}
  .yazdirma{display:none!important}
}

/* ---------- grafik serileri ve KOZA POS kontrol paneli (15 Eyl 2026) ----------
   Seri renkleri dataviz dogrulayicisindan gecti: acik #2F63C8/#1B9E8F (zemin #FFFFFF), koyu #4F86EA/#17A08F (zemin #161B2A):
   aydinlik bandi, doygunluk, renk korlugu ayrimi (dE 20 / 16), normal gorus (21 / 18), kontrast >= 3:1. */
:root{--seri-1:#2F63C8;--seri-2:#1B9E8F}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--seri-1:#4F86EA;--seri-2:#17A08F}}
:root[data-theme="dark"]{--seri-1:#4F86EA;--seri-2:#17A08F}
.seri-1-z{background:var(--seri-1)} .seri-2-z{background:var(--seri-2)}
.grafik .cizgi{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.grafik .cizgi.seri-1{stroke:var(--seri-1)} .grafik .cizgi.seri-2{stroke:var(--seri-2)}
.grafik .alan{stroke:none;opacity:.1}
.grafik .alan.seri-1{fill:var(--seri-1)} .grafik .alan.seri-2{fill:var(--seri-2)}
.grafik .nokta{stroke:var(--yuzey);stroke-width:2}
.grafik .nokta.seri-1{fill:var(--seri-1)} .grafik .nokta.seri-2{fill:var(--seri-2)}
.grafik .nisangah{stroke:var(--soluk-2);stroke-width:1;visibility:hidden;pointer-events:none}
.grafik .nisangah.gorunur{visibility:visible}
.grafik .isabet{fill:transparent;cursor:crosshair;outline:none}
.grafik .isabet:focus-visible{fill:color-mix(in srgb,var(--lacivert) 8%,transparent)}
.cubuk-seri-1{fill:var(--seri-1)}
.grafik-kap{position:relative}
.ipucu{position:absolute;z-index:5;min-width:180px;padding:10px 12px;border-radius:12px;background:var(--yuzey);border:1px solid var(--cizgi);box-shadow:0 10px 28px rgba(24,32,58,.16);font-size:13px;pointer-events:none;display:flex;flex-direction:column;gap:4px}
.ipucu-baslik{font-size:12px;font-weight:600;color:var(--soluk);margin-bottom:2px}
.ipucu-satir{display:grid;grid-template-columns:14px auto minmax(0,1fr);align-items:center;gap:8px}
.ipucu-satir i{width:14px;height:2px;border-radius:1px}
.ipucu-satir b{font-variant-numeric:tabular-nums;color:var(--murekkep);font-weight:650}
.ipucu-satir span{color:var(--soluk)}
.tablo-gorunum{margin-top:10px;font-size:13px}
.tablo-gorunum summary{cursor:pointer;color:var(--lacivert);font-weight:600;width:max-content}
.tablo-gorunum .tablo{margin-top:8px;font-size:13px}
.pos-satir{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:16px;align-items:start}
.pos-satir-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
@media (max-width:1099px){.pos-satir,.pos-satir-2{grid-template-columns:minmax(0,1fr)}}
.durum-cubuk{display:flex;gap:2px;height:14px;border-radius:7px;overflow:hidden;margin-block:4px 14px;background:var(--yuzey-2)}
.durum-cubuk .d-basarili{background:var(--tamam)} .durum-cubuk .d-basarisiz{background:var(--kritik)} .durum-cubuk .d-iade{background:var(--plan)}
.durum-liste{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.durum-liste li{display:grid;grid-template-columns:34px minmax(0,1fr) auto 46px;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;background:var(--yuzey-2);font-size:14px}
.durum-ikon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center}
.durum-ikon .ikon{width:18px;height:18px}
.durum-liste .d-basarili .durum-ikon{background:var(--tamam-z);color:var(--tamam)}
.durum-liste .d-basarisiz .durum-ikon{background:var(--kritik-z);color:var(--kritik)}
.durum-liste .d-iade .durum-ikon{background:var(--plan-z);color:var(--plan)}
.durum-liste b{font-family:var(--f-baslik);font-size:18px;font-weight:650}
.durum-yuzde{color:var(--soluk);font-size:13px;text-align:right}
.program-liste{display:flex;flex-direction:column;gap:12px}
.program-satir{display:grid;grid-template-columns:100px minmax(0,1fr) 44px;align-items:center;gap:12px;font-size:14px}
.program-satir .cizgi-iz span{border-radius:0 4px 4px 0}
.program-satir b{text-align:right;font-weight:650}

/* ---------- KOZA TEKLIF: urun aktarimi ve satis listesi ---------- */
.filtre-satiri{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 12px}
.filtre-satiri :is(input,select){min-height:44px;padding:8px 12px;border:1px solid var(--cizgi);border-radius:12px;background:var(--yuzey);color:var(--murekkep);font-size:14px;max-width:100%}
.filtre-satiri input[type=search]{flex:1 1 240px}
.filtre-satiri :is(input,select):focus{outline:none;border-color:var(--lacivert);box-shadow:0 0 0 3px var(--lacivert-soluk)}
.urun-tablo .tutar{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.urun-tablo th.tutar{text-align:right}
.urun-tablo .urun-ad{font-weight:600;overflow-wrap:anywhere}
.soluk{color:var(--soluk)}
.gizli-satir td{color:var(--soluk)}
.satir-form input[type=text],.aday-tablo :is(input,select){min-height:36px;padding:4px 10px;border:1px solid var(--cizgi);border-radius:9px;background:var(--yuzey);color:var(--murekkep);max-width:100%;min-width:0}
.satir-form input[type=text]{flex:1 1 180px}
.sayim-liste{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:14px}
.sayim-liste li{display:flex;justify-content:space-between;gap:10px;padding:6px 10px;border-radius:10px;background:var(--yuzey-2)}
.not-liste{margin:8px 0 0;padding-left:18px;color:var(--soluk);display:flex;flex-direction:column;gap:4px}
.kural-grup{border:1px solid var(--cizgi);border-radius:14px;padding:12px 14px;margin:0;display:flex;flex-direction:column;gap:10px;min-width:0}
.kural-grup legend{padding-inline:6px;font-weight:600;font-size:14px;color:var(--soluk)}
.kural-satir{display:grid;grid-template-columns:96px minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:center}
.kural-etiket{font-size:13px;font-weight:600;color:var(--soluk)}
.kural-satir select,.kural-alan input{width:100%;min-height:40px;padding:6px 10px;border:1px solid var(--cizgi);border-radius:10px;background:var(--yuzey);color:var(--murekkep)}
.kural-alan{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--soluk-2);min-width:0}
@media (max-width:559px){.kural-satir{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.kural-etiket,.kural-satir select{grid-column:1/-1}}
.kur-bilgisi{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;padding:10px 14px;border-radius:12px;background:var(--yuzey-2);margin:0 0 12px;font-size:14px}
.kur-bilgisi form{margin:0}

/* ---------- KOZA TEKLIF: teklifler ---------- */
.teklif-araclar{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center}
.teklif-araclar .description{margin:0}
.musteri-secim,.urun-sonuclar{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.musteri-secim li,.urun-sonuclar li{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;border-radius:12px;background:var(--yuzey-2)}
.musteri-secim li>div,.urun-sonuclar li>div{min-width:0;flex:1 1 220px}
.musteri-secim span,.urun-sonuclar span{display:block;font-size:13px;color:var(--soluk)}
.urun-sonuclar strong{overflow-wrap:anywhere}
.sonuc-fiyat{margin-top:2px}
.sonuc-fiyat b{color:var(--murekkep)}
.satir-form input.adet-kucuk{flex:0 0 64px;width:64px;text-align:right}
.miktar-alan{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.miktar-alan input{width:72px;min-height:36px;padding:4px 8px;border:1px solid var(--cizgi);border-radius:9px;background:var(--yuzey);color:var(--murekkep);text-align:right}
.gizli-dugme{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.teklif-kalemleri tfoot td{border-top:2px solid var(--murekkep);border-bottom:0;padding-top:12px}

/* ---------- KOZA POS: online tahsilat onizlemesi ---------- */
.tahsilat-araclar{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.tahsilat-duzen{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:16px;align-items:start}
@media (max-width:1099px){.tahsilat-duzen{grid-template-columns:minmax(0,1fr)}}
.kart-alanlari{margin:0;padding:14px 16px 16px;border:1px dashed var(--cizgi);border-radius:14px;display:flex;flex-direction:column;gap:12px;min-width:0}
.kart-alanlari legend{padding-inline:6px;font-weight:700;font-size:14px}
.kart-alanlari input:disabled{background:var(--yuzey-2);color:var(--soluk);cursor:not-allowed}
.kart-alanlari .ikon{width:14px;height:14px;vertical-align:-2px}
.tahsilat-ozet{margin:0 0 14px;display:flex;flex-direction:column}
.tahsilat-ozet>div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding-block:10px;border-bottom:1px solid var(--cizgi)}
.tahsilat-ozet>div:last-child{border-bottom:0}
.tahsilat-ozet dt{color:var(--soluk);font-size:14px}
.tahsilat-ozet dd{margin:0;font-weight:600;text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.tahsilat-ozet .ozet-buyuk dt{color:var(--murekkep);font-weight:700}
.tahsilat-ozet .ozet-buyuk dd{font-size:22px;font-weight:700}
.onay-satiri{display:flex;gap:8px;align-items:flex-start;margin-bottom:12px;font-size:13px;color:var(--soluk);line-height:1.4}
.onay-satiri input{margin-top:2px}

/* ---------- Pencere (dialog) · Guncel Doviz Kurlari ---------- */
.pencere{padding:0;border:1px solid var(--cizgi);border-radius:18px;background:var(--yuzey);color:var(--murekkep);box-shadow:var(--golge);width:min(580px,calc(100vw - 32px));max-height:calc(100vh - 32px)}
.pencere::backdrop{background:rgba(15,20,35,.5)}
.pencere-ic{padding:18px 20px 20px;display:flex;flex-direction:column;gap:14px}
.pencere-bas{display:flex;align-items:center;justify-content:space-between;gap:12px}
.pencere-bas h2{margin:0;font-size:17px;font-weight:700}
.pencere-bas form,.pencere-alt{margin:0}
.pencere-kapat{min-width:40px;min-height:40px;border:0;border-radius:10px;background:transparent;color:var(--soluk);font-size:26px;line-height:1;cursor:pointer}
.pencere-kapat:hover,.pencere-kapat:focus-visible{background:var(--yuzey-2);color:var(--murekkep)}
.pencere-not{font-size:13px;line-height:1.5;color:var(--soluk);background:var(--yuzey-2);border-radius:12px;padding:12px 14px}
.pencere-not h3{margin:0 0 4px;font-size:14px;color:var(--murekkep)}
.pencere-not p{margin:0 0 6px}
.pencere-not p:last-child{margin:0}
.pencere-not .ikon{width:14px;height:14px;vertical-align:-2px}
.pencere-alt{display:flex;justify-content:flex-end}
.kur-tablo th,.kur-tablo td{padding-block:7px}
.kur-tablo .tutar{font-variant-numeric:tabular-nums;white-space:nowrap}
.kur-dugmeler{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px}

/* ---------- Modul secici: sol menu + telefon ust cubugu (moduller ayri is) ---------- */
.modul-secici{display:flex;flex-direction:column;gap:2px;padding:4px;margin-block:2px 6px;border:1px solid var(--cizgi);border-radius:14px;background:var(--yuzey-2)}
.modul-oge{display:flex;align-items:center;gap:10px;padding-inline:10px;padding-block:9px;border-radius:10px;color:var(--soluk);font-size:13px;font-weight:700;letter-spacing:.02em;text-decoration:none}
.modul-oge .ikon{width:18px;height:18px}
.modul-oge:hover{background:var(--yuzey);color:var(--murekkep)}
.modul-oge.aktif{background:var(--yuzey);color:var(--murekkep);box-shadow:inset 3px 0 0 var(--vurgu),0 1px 2px rgba(15,20,35,.08)}
.modul-oge.pasif{color:var(--soluk-2);cursor:not-allowed}
.modul-oge.pasif:hover{background:none;color:var(--soluk-2)}
.menu-ipucu{margin:12px 12px 0;font-size:13px;line-height:1.4;color:var(--soluk-2)}
.modul-menu{position:relative}
.modul-menu summary{list-style:none;display:flex;align-items:center;gap:8px;min-height:38px;padding-inline:12px;border:1px solid var(--cizgi);border-radius:11px;background:var(--yuzey);font-size:13px;font-weight:700;color:var(--murekkep);cursor:pointer;white-space:nowrap}
.modul-menu summary::-webkit-details-marker{display:none}
.modul-menu summary::after{content:"";width:6px;height:6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);opacity:.6}
.modul-menu[open] summary::after{transform:translateY(1px) rotate(-135deg)}
.modul-menu-liste{position:absolute;right:0;top:calc(100% + 6px);z-index:40;min-width:200px;display:flex;flex-direction:column;gap:2px;padding:6px;border:1px solid var(--cizgi);border-radius:14px;background:var(--yuzey);box-shadow:var(--golge)}
.modul-menu-liste a,.modul-menu-liste span{display:block;padding:11px 12px;border-radius:10px;font-size:14px;font-weight:600;color:var(--murekkep);text-decoration:none}
.modul-menu-liste a:hover{background:var(--yuzey-2)}
.modul-menu-liste a.aktif{background:var(--lacivert);color:var(--lacivert-ink)}
.modul-menu-liste .pasif{color:var(--soluk-2)}
@media (max-width:399px){.ust-mobil .logo img{height:30px}.modul-menu summary{padding-inline:10px}}

/* ---------- KOZA POS: kart banka dagilim raporu ---------- */
.rapor-filtre .tarih-araligi{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}
.banka-tablo .sag{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.banka-tablo th[scope=row]{text-align:left;font-weight:500}
.banka-tablo .genel-toplam :is(th,td){background:var(--yuzey-2);font-weight:700;color:var(--murekkep)}
.banka-ad{display:flex;align-items:center;gap:10px;min-width:230px}
.banka-ad small{display:block;margin-top:2px;font-size:11.5px;color:var(--soluk)}
.banka-ikon{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:var(--yuzey-2);color:var(--soluk);flex:none}
.banka-ikon .ikon{width:18px;height:18px}

/* ---------- Sol menu: modul akordeonu (modul adina tiklayinca sayfalari altinda acilir) ---------- */
.modul-menusu{display:flex;flex-direction:column;gap:2px;margin-top:6px}
.modul-grup>summary{list-style:none}
.modul-grup>summary::-webkit-details-marker{display:none}
.modul-menusu .modul-oge{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border-radius:12px;background:none;box-shadow:none;color:var(--murekkep);font-size:13px;font-weight:700;letter-spacing:.05em;cursor:pointer;user-select:none}
.modul-menusu .modul-oge .ikon{width:20px;height:20px;color:var(--soluk)}
.modul-menusu .modul-oge small{margin-left:6px;font-size:10.5px;font-weight:600;letter-spacing:0;color:var(--soluk-2)}
.modul-menusu summary.modul-oge::after{content:"";margin-left:auto;width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);opacity:.45;transition:transform .15s}
.modul-grup[open]>summary.modul-oge::after{transform:rotate(45deg)}
.modul-menusu .modul-oge:hover{background:var(--yuzey-2)}
.modul-menusu .modul-oge.aktif{background:none;box-shadow:none}
.modul-menusu .modul-oge.aktif .ikon{color:var(--vurgu)}
.modul-menusu summary.modul-oge:focus-visible{outline:2px solid var(--lacivert);outline-offset:2px}
.modul-menusu .modul-oge.pasif{color:var(--soluk-2);cursor:not-allowed}
.modul-menusu .modul-oge.pasif .ikon{color:var(--soluk-2)}
.modul-menusu .modul-oge.pasif:hover{background:none}
.modul-alt{display:flex;flex-direction:column;gap:2px;margin:2px 0 8px 21px;padding-left:10px;border-left:1px solid var(--cizgi)}
.modul-alt .menu-oge{font-size:14px;padding-block:8px;gap:10px}
.modul-alt .menu-oge .ikon{width:18px;height:18px}

/* ---------- ERP Ana Sayfasi: paketlere gore bolunmus kisa ozet ---------- */
.ana-bolumler{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:16px;align-items:start}
.ana-bolum{display:flex;flex-direction:column;gap:12px}
.ana-bolum .panel-bas{margin-bottom:0}
.ana-bolum-baslik{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ana-bolum-baslik .kpi-ikon{width:32px;height:32px}
.ana-bolum-baslik .cip{margin-left:0}
.mini-kpiler{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:8px}
.mini-kpi{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:12px;background:var(--yuzey-2);color:var(--murekkep);text-decoration:none;min-width:0}
a.mini-kpi:hover{box-shadow:inset 0 0 0 1px var(--cizgi)}
.mini-kpi>span{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--soluk)}
.mini-kpi>span i{width:8px;height:8px;border-radius:50%;display:inline-block;flex:none}
.mini-kpi b{font-size:18px;font-weight:700;overflow-wrap:anywhere}
.mini-kpi small{font-size:12px;color:var(--soluk)}
.ana-not{margin:0;font-size:13.5px;color:var(--soluk)}
.ana-not b{color:var(--murekkep)}
.ana-alt-baslik{margin:4px 0 0;font-size:12px;font-weight:700;color:var(--soluk);text-transform:uppercase;letter-spacing:.07em}
.ana-liste{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.ana-liste li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-block:9px;border-bottom:1px solid var(--cizgi);font-size:14px}
.ana-liste li:last-child{border-bottom:0}
.ana-liste a{display:flex;align-items:baseline;gap:10px;min-width:0;color:var(--murekkep);text-decoration:none}
.ana-liste a:hover .ana-liste-ad{text-decoration:underline}
.ana-liste .ana-liste-ad{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ana-liste .sayi{white-space:nowrap}
.ana-bolum .ilerleme,.ana-bolum .dikkat-liste,.ana-bolum .durum-liste{margin:0}

/* ---------- Yillik uyelik uyarisi: bitise 30 gun kala butun sayfalarda en ustte ---------- */
.uyelik-uyari{display:flex;align-items:center;gap:12px 14px;flex-wrap:wrap;margin:0 0 14px;padding:12px 16px;border-radius:14px;border:1px solid color-mix(in srgb,var(--uyari,#C98A12) 45%,transparent);background:color-mix(in srgb,var(--uyari,#C98A12) 12%,var(--yuzey));color:var(--murekkep)}
.uyelik-uyari>.ikon{width:22px;height:22px;flex:none;color:var(--uyari,#C98A12)}
.uyelik-uyari>div{flex:1 1 280px;display:flex;flex-direction:column;gap:2px;font-size:14px;line-height:1.45}
.uyelik-uyari>div span{color:var(--soluk)}
.uyelik-uyari>div span b{color:var(--murekkep)}
.uyelik-uyari.bitti{border-color:color-mix(in srgb,var(--kritik) 45%,transparent);background:color-mix(in srgb,var(--kritik) 10%,var(--yuzey))}
.uyelik-uyari.bitti>.ikon{color:var(--kritik)}

/* ---------- Ust cubuk: Aboneliklerim dugmesi (bas harf yerine) ---------- */
.abonelik-dugme{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding-inline:14px;border-radius:12px;border:1px solid var(--cizgi);background:var(--kart-lila);color:var(--ikon-lila);font-weight:700;font-size:14px;text-decoration:none;white-space:nowrap;flex:none}
.abonelik-dugme .ikon{width:18px;height:18px}
.abonelik-dugme:hover,.abonelik-dugme[aria-current]{border-color:var(--ikon-lila)}
.firma-adi{max-width:100%}

/* ---------- Abonelik suresi dolunca askiya alma + musteri hizmetleri ---------- */
.uyelik-dugmeler,.askida-dugmeler{display:flex;flex-wrap:wrap;gap:8px}
.askida-kart{display:flex;flex-direction:column;gap:14px;max-width:760px}
.askida-kart h2{margin:0 0 6px;font-size:18px}
.askida-kart p{margin:0 0 8px;color:var(--soluk);line-height:1.5}
.askida-kart .askida-ikon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:color-mix(in srgb,var(--kritik) 12%,var(--yuzey));color:var(--kritik)}
.askida-kart .askida-ikon .ikon{width:24px;height:24px}
.askida-bolum{border-color:color-mix(in srgb,var(--kritik) 40%,var(--cizgi))}

/* ---------- KOZA PROJE: saha ekipleri (firmaya ozel) ---------- */
.ekip-kayitlari{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.ekip-kayitlari li{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;padding-block:10px;border-bottom:1px solid var(--cizgi)}
.ekip-kayitlari li:last-child{border-bottom:0}
.ekip-kayitlari .satir-form{flex:1 1 240px;display:flex;gap:8px;margin:0}
.ekip-kayitlari .satir-form input{flex:1 1 auto;min-width:0;min-height:40px;padding:6px 10px;border:1px solid var(--cizgi);border-radius:10px;background:var(--yuzey);color:var(--murekkep);font-size:14px}
.ekip-kayitlari .ekip-bilgi{font-size:13px;color:var(--soluk)}
.ekip-kayitlari li.pasif :is(strong,input){color:var(--soluk-2)}
.ekip-kayitlari form.satir-ici{margin:0}
.ekip-olustur{display:inline-block;margin-top:8px;font-size:14px}
/* Ekip uyeleri (Emre, 16 Eyl 2026): ekibe is dusunce bildirim gidecek hesaplar */
.ekip-uyeler{flex:1 1 100%;display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;padding-top:4px}
.ekip-uyeler .soluk{font-size:13px;color:var(--soluk)}
.ekip-uyeler select{min-height:36px;max-width:220px;padding:4px 8px;border:1px solid var(--cizgi);border-radius:10px;background:var(--yuzey);color:var(--murekkep);font-size:13.5px}
.ekip-uyeler .satir-form{flex:0 1 auto;gap:6px}
.uye-cip{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:600;padding:3px 4px 3px 10px;border-radius:999px;background:var(--kart-gok);color:var(--murekkep)}
.uye-cip .btn-kucuk{padding:0 7px;min-height:22px;line-height:1;border-radius:999px}

/* ---------- Paket basvuru formu (KOZA POS) ---------- */
.basvuru-kart{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);max-width:1080px;border:1px solid var(--cizgi);border-radius:20px;overflow:hidden;background:var(--yuzey);box-shadow:var(--golge)}
@media (max-width:899px){.basvuru-kart{grid-template-columns:minmax(0,1fr)}}
.basvuru-tanitim{padding:28px;display:flex;flex-direction:column;gap:14px;min-width:0}
.basvuru-marka{display:flex;align-items:center;gap:10px;font-family:var(--f-baslik);font-weight:750;font-size:22px;color:var(--murekkep)}
.basvuru-marka .ikon{width:28px;height:28px;color:var(--vurgu)}
.basvuru-tanitim h2{margin:6px 0 0;font-size:18px}
.basvuru-tanitim>p{margin:0;color:var(--soluk);line-height:1.55}
.basvuru-bankalar{list-style:none;margin:4px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}
.basvuru-bankalar li{display:grid;place-items:center;min-height:44px;padding:6px 10px;border:1px solid var(--cizgi);border-radius:10px;font-size:13px;font-weight:700;text-align:center;color:var(--murekkep)}
.basvuru-tanitim>p.basvuru-dipnot{font-size:12.5px;color:var(--soluk-2)}
.basvuru-tanitim h3{margin:8px 0 0;font-size:15px}
.basvuru-avantajlar{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:14px;color:var(--soluk)}
.basvuru-avantajlar li{display:flex;gap:10px}
.basvuru-avantajlar li::before{content:"";flex:none;width:11px;height:6px;margin-top:5px;border-left:2px solid var(--tahsil);border-bottom:2px solid var(--tahsil);transform:rotate(-45deg)}
.basvuru-tanitim>p.basvuru-alt{margin-top:auto;padding-top:14px;border-top:1px solid var(--cizgi);font-size:13px}
.basvuru-form-alan{background:var(--yuzey-2);display:flex;flex-direction:column;min-width:0}
.basvuru-form-bas{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:22px 28px;border-bottom:1px solid var(--cizgi)}
.basvuru-form-bas h2{margin:0;font-size:18px}
.basvuru-form-bas p{margin:2px 0 0;font-size:13.5px;color:var(--soluk)}
.basvuru-form-bas .pencere-kapat{display:grid;place-items:center;text-decoration:none}
.basvuru-govde{padding:22px 28px 26px;display:flex;flex-direction:column;gap:14px}
.basvuru-ikili{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.basvuru-govde label em{color:var(--kritik);font-style:normal}
.basvuru-bilgi{margin:0;padding:14px 16px;border-radius:12px;background:var(--yuzey);font-size:13px;color:var(--soluk);line-height:1.5}
.basvuru-dugmeler{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:4px}
.basvuru-dugmeler .button{justify-content:center;text-align:center}
.basvuru-karti{display:flex;align-items:center;gap:10px;margin-bottom:8px;padding:10px 12px;border-radius:12px;background:var(--yuzey-2);border:1px solid var(--cizgi);color:var(--murekkep);text-decoration:none}
.basvuru-karti .ikon{width:22px;height:22px;flex:none;color:var(--vurgu)}
.basvuru-karti b{display:block;font-size:13.5px}
.basvuru-karti small{display:block;font-size:12px;color:var(--soluk)}
.basvuru-karti:hover{border-color:var(--vurgu)}

/* Liste satirlarindaki ad baglantilari (Emre, 16 Eyl 2026): duz metne dokunmak Android Chrome'da
   kelimeyi secip "arama sonuclarini gormek icin dokun" cubugunu aciyordu. Ad artik baglanti;
   gorunum kalin metin gibi kalir, dokunma alani satir yuksekligi kadar buyuktur. */
.satir-baglanti{display:inline-block;min-height:24px;font-weight:600;color:var(--murekkep);text-decoration:none;
  -webkit-tap-highlight-color:transparent;touch-action:manipulation}
.satir-baglanti:hover,.satir-baglanti:focus-visible{color:var(--vurgu);text-decoration:underline}
