
:root{
 --zemin:#f4f6f8; --panel:#ffffff; --panel2:#eef1f5; --kenar:#e2e6eb; --kenar2:#ccd2da;
 --yazi:#1b2534; --soluk:#6c7787; --orta:#485566;
 --vurgu:#dd7a2c; --vurgu2:#c4661c; --vurgu-koyu:#a55314; --vurgu-bg:#fdf1e6;
 --yesil:#1a7f37; --yesil-bg:#e7f5eb; --yesil-kenar:#b6e0c2;
 --kirmizi:#c62828; --kirmizi-bg:#fdecea; --kirmizi-kenar:#f2c2bd;
 --mavi:#1565c0; --mavi-bg:#e8f1fb; --mavi-kenar:#bcd8f5;
 --sari:#8a6416; --sari-bg:#fdf4e0; --sari-kenar:#ecd9a8;
 --r:10px; --r2:8px;
 --golge:0 1px 2px rgba(23,35,52,.06), 0 4px 14px rgba(23,35,52,.06);
 --golge2:0 8px 28px rgba(23,35,52,.14);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
 font:15px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
 background:var(--zemin); color:var(--yazi);
 -webkit-font-smoothing:antialiased;
}
a{color:var(--vurgu2);text-decoration:none}
a:hover{color:var(--vurgu-koyu);text-decoration:underline}
h1,h2,h3{margin:0 0 12px;font-weight:650;letter-spacing:-.3px}
h1{font-size:22px} h2{font-size:18px} h3{font-size:16px}

/* ---- yerlesim ---- */
.kabuk{display:flex;min-height:100vh}
.yan{
 width:230px;flex:0 0 230px;background:var(--panel);border-right:1px solid var(--kenar);
 display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto;
}
.marka{padding:18px 20px;border-bottom:1px solid var(--kenar);display:flex;align-items:center;gap:10px}
.marka b{font-size:18px;letter-spacing:-.4px}
.marka span{color:var(--vurgu)}
.menu{padding:10px 0;flex:1}
.menu .grup{padding:14px 20px 6px;font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:var(--soluk)}
.menu a{
 display:flex;align-items:center;gap:10px;padding:9px 20px;color:var(--orta);
 font-size:14px;border-left:3px solid transparent;
}
.menu a:hover{background:var(--panel2);color:var(--yazi);text-decoration:none}
.menu a.aktif{background:var(--vurgu-bg);color:var(--vurgu2);border-left-color:var(--vurgu);font-weight:600}
.menu a i{width:18px;text-align:center;font-style:normal;opacity:.8}

.govde{flex:1;min-width:0;display:flex;flex-direction:column}
.ust{
 height:58px;background:var(--panel);border-bottom:1px solid var(--kenar);
 display:flex;align-items:center;gap:14px;padding:0 20px;position:sticky;top:0;z-index:20;
}
.ust .baslik{font-weight:650;font-size:16px}
.ust .sag{margin-left:auto;display:flex;align-items:center;gap:14px}
.rozet{font-size:12px;padding:4px 10px;border-radius:20px;background:var(--panel2);color:var(--orta);border:1px solid var(--kenar)}
.rozet.uyari{background:var(--kirmizi-bg);color:var(--kirmizi);border-color:var(--kirmizi-kenar)}
.icerik{padding:22px}

/* ---- kart ---- */
.kart{background:var(--panel);border:1px solid var(--kenar);border-radius:var(--r);padding:20px;margin-bottom:18px;box-shadow:var(--golge)}
.kart>h2,.kart>h3{margin-top:0}
.kart-bas{display:flex;align-items:center;gap:12px;margin:-4px 0 16px}
.kart-bas h2,.kart-bas h3{margin:0}
.kart-bas .sag{margin-left:auto;display:flex;gap:8px}

.izgara{display:grid;gap:16px}
.i2{grid-template-columns:repeat(2,1fr)}
.i3{grid-template-columns:repeat(3,1fr)}
.i4{grid-template-columns:repeat(4,1fr)}
@media(max-width:1100px){.i4{grid-template-columns:repeat(2,1fr)}.i3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.i2,.i3,.i4{grid-template-columns:1fr}}

.olcut{background:var(--panel);border:1px solid var(--kenar);border-radius:var(--r);padding:16px 18px;box-shadow:var(--golge)}
.olcut .etiket{font-size:12px;color:var(--soluk);text-transform:uppercase;letter-spacing:.5px}
.olcut .deger{font-size:24px;font-weight:660;margin-top:6px;letter-spacing:-.5px}
.olcut .alt{font-size:12px;color:var(--soluk);margin-top:4px}
.olcut.vurgu{border-color:var(--vurgu);background:var(--vurgu-bg)}
.olcut.vurgu .deger{color:var(--vurgu-koyu)}

/* ---- form ---- */
label{display:block;font-size:13px;color:var(--orta);margin:0 0 6px;font-weight:500}
.alan{margin-bottom:14px}
input,select,textarea{
 width:100%;padding:10px 12px;border-radius:var(--r2);border:1px solid var(--kenar2);
 background:var(--panel);color:var(--yazi);font:inherit;font-size:14px;
}
input::placeholder,textarea::placeholder{color:#9aa4b1}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--vurgu);box-shadow:0 0 0 3px rgba(221,122,44,.15)}
input[type=checkbox],input[type=radio]{width:auto;margin-right:6px;accent-color:var(--vurgu)}
textarea{min-height:80px;resize:vertical}
select{cursor:pointer}
.satir{display:flex;gap:12px}
.satir>*{flex:1;min-width:0}

.dugme{
 display:inline-flex;align-items:center;justify-content:center;gap:6px;
 padding:10px 16px;border:1px solid transparent;border-radius:var(--r2);cursor:pointer;
 background:var(--vurgu);color:#fff;font-weight:600;font-size:14px;font-family:inherit;
}
.dugme:hover{background:var(--vurgu2);color:#fff;text-decoration:none}
.dugme.ikincil{background:var(--panel);color:var(--orta);border-color:var(--kenar2)}
.dugme.ikincil:hover{background:var(--panel2);color:var(--yazi)}
.dugme.tehlike{background:var(--kirmizi);color:#fff}
.dugme.tehlike:hover{background:#a92020}
.dugme.kucuk{padding:6px 11px;font-size:13px}
.dugme.tam{width:100%}
.dugme:disabled{opacity:.5;cursor:not-allowed}

/* ---- tablo ---- */
.tablo-sar{overflow-x:auto;border:1px solid var(--kenar);border-radius:var(--r);background:var(--panel)}
table{width:100%;border-collapse:collapse;font-size:14px}
th{
 text-align:left;padding:11px 14px;background:var(--panel2);color:var(--orta);
 font-size:12px;text-transform:uppercase;letter-spacing:.5px;font-weight:600;white-space:nowrap;
 border-bottom:1px solid var(--kenar);
}
td{padding:11px 14px;border-top:1px solid var(--kenar)}
tbody tr:hover{background:var(--panel2)}
td.sag,th.sag{text-align:right}
td.orta,th.orta{text-align:center}
td.dar{width:1%;white-space:nowrap}
.bos{padding:40px;text-align:center;color:var(--soluk)}

/* ---- etiket ---- */
.et{display:inline-block;padding:3px 9px;border-radius:20px;font-size:12px;font-weight:600;border:1px solid}
.et.yesil{background:var(--yesil-bg);color:var(--yesil);border-color:var(--yesil-kenar)}
.et.kirmizi{background:var(--kirmizi-bg);color:var(--kirmizi);border-color:var(--kirmizi-kenar)}
.et.sari{background:var(--sari-bg);color:var(--sari);border-color:var(--sari-kenar)}
.et.gri{background:var(--panel2);color:var(--orta);border-color:var(--kenar2)}
.et.mavi{background:var(--mavi-bg);color:var(--mavi);border-color:var(--mavi-kenar)}

/* ---- uyari ---- */
.uyari{padding:12px 14px;border-radius:var(--r2);font-size:14px;margin-bottom:16px;border:1px solid}
.uyari.hata{background:var(--kirmizi-bg);border-color:var(--kirmizi-kenar);color:#8f1f1f}
.uyari.basari{background:var(--yesil-bg);border-color:var(--yesil-kenar);color:#14602a}
.uyari.bilgi{background:var(--mavi-bg);border-color:var(--mavi-kenar);color:#0f4c8f}
.uyari.dikkat{background:var(--sari-bg);border-color:var(--sari-kenar);color:#7a5712}
.uyari a{color:inherit;text-decoration:underline}

/* ---- modal ---- */
.ortu{position:fixed;inset:0;background:rgba(23,35,52,.45);display:flex;align-items:center;justify-content:center;padding:20px;z-index:100}
.modal{background:var(--panel);border-radius:var(--r);width:100%;max-width:560px;max-height:90vh;overflow-y:auto;box-shadow:var(--golge2)}
.modal-bas{padding:18px 20px;border-bottom:1px solid var(--kenar);display:flex;align-items:center}
.modal-bas h3{margin:0}
.modal-bas .kapat{margin-left:auto;background:0;border:0;color:var(--soluk);font-size:22px;cursor:pointer;line-height:1}
.modal-bas .kapat:hover{color:var(--yazi)}
.modal-govde{padding:20px}
.modal-alt{padding:16px 20px;border-top:1px solid var(--kenar);background:var(--panel2);display:flex;gap:10px;justify-content:flex-end}

/* ---- sekme ---- */
.sekmeler{display:flex;gap:2px;border-bottom:1px solid var(--kenar);margin-bottom:18px}
.sekmeler button{
 background:0;border:0;border-bottom:2px solid transparent;padding:10px 16px;
 color:var(--orta);cursor:pointer;font:inherit;font-size:14px;
}
.sekmeler button:hover{color:var(--yazi)}
.sekmeler button.aktif{color:var(--vurgu2);border-bottom-color:var(--vurgu);font-weight:600}

/* ---- giris ---- */
.giris-sar{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--zemin)}
.giris{width:100%;max-width:400px}
.giris .logo{text-align:center;margin-bottom:26px}
.giris .logo b{font-size:30px;letter-spacing:-1px}
.giris .logo span{color:var(--vurgu)}
.giris .logo div{color:var(--soluk);font-size:13px;margin-top:4px}
.giris .kutu{background:var(--panel);border:1px solid var(--kenar);border-radius:14px;padding:26px;box-shadow:var(--golge)}
.giris .dip{text-align:center;margin-top:18px;font-size:13px;color:var(--soluk)}

.sag{text-align:right}
.soluk{color:var(--soluk)}
.kucuk{font-size:13px}
.yukleniyor{opacity:.5;pointer-events:none}

@media(max-width:860px){
 .yan{position:fixed;left:-240px;z-index:50;transition:left .2s;box-shadow:var(--golge2)}
 .yan.acik{left:0}
 .icerik{padding:16px}
}

/* ---- POS ---- */
.pos-kabuk{display:flex;gap:16px;height:calc(100vh - 58px - 44px)}
.pos-sol{flex:1;min-width:0;display:flex;flex-direction:column;gap:12px}
.pos-sag{width:400px;flex:0 0 400px;display:flex;flex-direction:column;gap:12px}
@media(max-width:1000px){.pos-kabuk{flex-direction:column;height:auto}.pos-sag{width:auto;flex:1}}

.pos-barkod{display:flex;gap:8px}
.pos-barkod input{font-size:18px;padding:14px 16px;font-weight:600}

.pos-kategoriler{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px}
.pos-kategoriler button{
 white-space:nowrap;padding:8px 14px;border-radius:20px;border:1px solid var(--kenar2);
 background:var(--panel);color:var(--orta);cursor:pointer;font:inherit;font-size:13px;
}
.pos-kategoriler button.aktif{background:var(--vurgu);color:#fff;border-color:var(--vurgu)}

.pos-urunler{flex:1;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;align-content:start}
.pos-urun{
 background:var(--panel);border:1px solid var(--kenar);border-radius:var(--r2);padding:12px;
 cursor:pointer;text-align:left;font:inherit;display:flex;flex-direction:column;gap:4px;min-height:88px;
}
.pos-urun:hover{border-color:var(--vurgu);box-shadow:var(--golge)}
.pos-urun .ad{font-size:13px;font-weight:600;line-height:1.3;flex:1}
.pos-urun .fiyat{font-size:16px;font-weight:700;color:var(--vurgu2)}
.pos-urun .stok{font-size:11px;color:var(--soluk)}
.pos-urun.yok{opacity:.55}
.pos-urun .rozet{position:static;font-size:10px;padding:1px 6px}

.pos-sepet{flex:1;background:var(--panel);border:1px solid var(--kenar);border-radius:var(--r);display:flex;flex-direction:column;overflow:hidden}
.pos-sepet-bas{padding:12px 16px;border-bottom:1px solid var(--kenar);display:flex;align-items:center;gap:8px}
.pos-sepet-liste{flex:1;overflow-y:auto;min-height:180px}
.pos-satir{padding:10px 16px;border-bottom:1px solid var(--kenar);display:flex;gap:10px;align-items:center}
.pos-satir:hover{background:var(--panel2)}
.pos-satir .bilgi{flex:1;min-width:0}
.pos-satir .ad{font-size:14px;font-weight:600}
.pos-satir .detay{font-size:12px;color:var(--soluk)}
.pos-satir .tutar{font-weight:700;white-space:nowrap}
.pos-adet{display:flex;align-items:center;gap:4px}
.pos-adet button{width:26px;height:26px;border-radius:6px;border:1px solid var(--kenar2);background:var(--panel);cursor:pointer;font-size:15px;line-height:1;color:var(--orta)}
.pos-adet button:hover{background:var(--panel2)}
.pos-adet input{width:52px;text-align:center;padding:4px;font-size:14px}

.pos-toplam{padding:14px 16px;border-top:1px solid var(--kenar);background:var(--panel2)}
.pos-toplam .satir2{display:flex;justify-content:space-between;font-size:13px;color:var(--orta);margin-bottom:4px}
.pos-toplam .genel{display:flex;justify-content:space-between;align-items:baseline;margin-top:8px}
.pos-toplam .genel b{font-size:28px;letter-spacing:-1px}

.pos-dugmeler{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.pos-dugmeler .dugme{padding:14px;font-size:15px}
.pos-dugmeler .genis{grid-column:1 / -1}

.odeme-tus{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}
.odeme-tus button{padding:16px;font-size:16px;font-weight:600;border-radius:var(--r2);border:1px solid var(--kenar2);background:var(--panel);cursor:pointer;color:var(--yazi)}
.odeme-tus button:hover{border-color:var(--vurgu);background:var(--vurgu-bg)}
.odeme-tus button.sil{background:var(--kirmizi-bg);color:var(--kirmizi);border-color:var(--kirmizi-kenar)}

.fis-yazdir{font-family:"Courier New",monospace;font-size:12px;line-height:1.4;white-space:pre-wrap}
@media print{
 body *{visibility:hidden}
 #fisAlan, #fisAlan *{visibility:visible}
 #fisAlan{position:absolute;left:0;top:0;width:76mm;font-size:11px}
}

/* numaratör */
.odeme-tus{grid-template-columns:repeat(3,1fr)}
.odeme-tus button{
 padding:18px;font-size:20px;font-weight:600;font-variant-numeric:tabular-nums;
 border-radius:var(--r2);border:1px solid var(--kenar2);background:var(--panel);
 cursor:pointer;color:var(--yazi);user-select:none;
}
.odeme-tus button:hover{border-color:var(--vurgu);background:var(--vurgu-bg)}
.odeme-tus button:active{background:var(--vurgu);color:#fff;border-color:var(--vurgu)}
.odeme-tus button.sil{background:var(--kirmizi-bg);color:var(--kirmizi);border-color:var(--kirmizi-kenar)}
.odeme-tus button.sil:hover{background:#fadbd8}
.odeme-tus button.tam{grid-column:span 2;background:var(--panel2);font-size:16px;letter-spacing:.5px}
.odeme-tus button.tam:hover{background:var(--vurgu);color:#fff}

/* ---- ödeme ekranı: iki sütun, kaydırmasız ---- */
.odeme-modal{max-width:740px;max-height:94vh;display:flex;flex-direction:column}
.odeme-modal .modal-bas{padding:12px 18px}
.odeme-modal .modal-govde{padding:16px 18px;overflow:auto}
.odeme-modal .modal-alt{padding:12px 18px}

.odeme-duzen{display:flex;gap:18px}
.odeme-sol{flex:1;min-width:0;display:flex;flex-direction:column}
.odeme-sag{flex:0 0 300px}

.odeme-ozet{display:flex;gap:10px}
.odeme-ozet .kutu{
 flex:1;border:1px solid var(--kenar);border-radius:var(--r2);padding:10px 12px;background:var(--panel);
}
.odeme-ozet .kutu.vurgulu{border-color:var(--vurgu);background:var(--vurgu-bg)}
.odeme-ozet .etiket{display:block;font-size:11px;color:var(--soluk);text-transform:uppercase;letter-spacing:.5px}
.odeme-ozet b{display:block;font-size:20px;letter-spacing:-.5px;margin-top:2px;font-variant-numeric:tabular-nums}
.odeme-ozet .kutu.vurgulu b{color:var(--vurgu-koyu)}

.odeme-giris{
 font-size:26px;padding:12px 14px;text-align:right;font-weight:700;
 font-variant-numeric:tabular-nums;letter-spacing:-.5px;
}

.odeme-tipleri{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.odeme-tipleri .dugme{padding:10px 8px;font-size:13px}

/* numaratör: yükseklik ekrana göre */
.odeme-tus{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:0}
.odeme-tus button{
 padding:0;height:clamp(44px, 7vh, 62px);
 font-size:19px;font-weight:600;font-variant-numeric:tabular-nums;
 border-radius:var(--r2);border:1px solid var(--kenar2);background:var(--panel);
 cursor:pointer;color:var(--yazi);user-select:none;
}
.odeme-tus button:hover{border-color:var(--vurgu);background:var(--vurgu-bg)}
.odeme-tus button:active{background:var(--vurgu);color:#fff;border-color:var(--vurgu)}
.odeme-tus button.sil{background:var(--kirmizi-bg);color:var(--kirmizi);border-color:var(--kirmizi-kenar)}
.odeme-tus button.tam{grid-column:span 2;background:var(--panel2);font-size:15px;letter-spacing:.5px}
.odeme-tus button.tam:hover{background:var(--vurgu);color:#fff}

.odeme-modal .uyari{margin:10px 0 0;padding:8px 10px;font-size:13px}

@media(max-width:760px), (max-height:620px){
  .odeme-duzen{flex-direction:column}
  .odeme-sag{flex:1}
  .odeme-tus button{height:46px;font-size:17px}
  .odeme-giris{font-size:22px;padding:10px 12px}
  .odeme-ozet b{font-size:17px}
}

/* ---- sepet: kompakt iki kademeli satır ---- */
.pos-sepet-bas{padding:9px 12px}
.pos-sepet-liste{min-height:100px}

.pos-satir{display:block;padding:7px 12px;border-bottom:1px solid var(--kenar)}
.pos-satir:hover{background:var(--panel2)}

.pos-satir .sr-ust{display:flex;align-items:center;gap:6px;margin-bottom:4px}
.pos-satir .sr-ust .ad{
 font-size:13.5px;font-weight:600;line-height:1.25;flex:1;min-width:0;
 overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.pos-satir .sr-ust .et{flex:0 0 auto;font-size:10px;padding:1px 6px}
.pos-satir .kaldir{
 flex:0 0 auto;width:20px;height:20px;line-height:1;padding:0;
 border:1px solid var(--kenar2);border-radius:5px;background:var(--panel);
 color:var(--soluk);cursor:pointer;font-size:14px;
}
.pos-satir .kaldir:hover{background:var(--kirmizi-bg);color:var(--kirmizi);border-color:var(--kirmizi-kenar)}

.pos-satir .sr-alt{display:flex;align-items:center;gap:8px}
.pos-satir .fiyat{font-size:12px;color:var(--soluk);cursor:pointer;white-space:nowrap}
.pos-satir .fiyat:hover{color:var(--vurgu2);text-decoration:underline}
.pos-satir .tutar{margin-left:auto;font-weight:700;font-size:14px;white-space:nowrap;font-variant-numeric:tabular-nums}

.pos-adet{display:flex;align-items:center;gap:3px}
.pos-adet button{
 width:22px;height:22px;border-radius:5px;border:1px solid var(--kenar2);
 background:var(--panel);cursor:pointer;font-size:13px;line-height:1;color:var(--orta);padding:0;
}
.pos-adet button:hover{background:var(--vurgu-bg);border-color:var(--vurgu);color:var(--vurgu2)}
.pos-adet input{
 width:40px;text-align:center;padding:2px;font-size:13px;font-weight:600;
 border-radius:5px;font-variant-numeric:tabular-nums;
}

/* toplam bölümü sıkılaştır */
.pos-toplam{padding:10px 12px}
.pos-toplam .satir2{font-size:12px;margin-bottom:2px}
.pos-toplam .genel{margin-top:6px}
.pos-toplam .genel b{font-size:24px}

/* alt düğmeler */
.pos-dugmeler{gap:6px}
.pos-dugmeler .dugme{padding:11px}

/* ---- toplam: tek satır özet ---- */
.pos-toplam{padding:8px 12px}
.pos-toplam .mini{
 display:flex;justify-content:space-between;gap:8px;
 font-size:11.5px;color:var(--soluk);margin-bottom:5px;
}
.pos-toplam .mini b{color:var(--orta);font-weight:600;font-variant-numeric:tabular-nums}
.pos-toplam .genel{display:flex;justify-content:space-between;align-items:baseline;margin:0}
.pos-toplam .genel span{font-size:12px;color:var(--soluk);text-transform:uppercase;letter-spacing:.6px}
.pos-toplam .genel b{font-size:26px;letter-spacing:-1px;font-variant-numeric:tabular-nums}

/* ---- alt düğmeler: 4 sütun tek sıra + ödeme ---- */
.pos-dugmeler{grid-template-columns:repeat(4,1fr);gap:5px}
.pos-dugmeler .dugme{
 flex-direction:column;gap:2px;padding:8px 4px;font-size:11.5px;font-weight:600;line-height:1.15;
 position:relative;
}
.pos-dugmeler .dugme i{font-style:normal;font-size:15px;opacity:.7;line-height:1}
.pos-dugmeler .dugme .ks{
 font-size:9px;opacity:.55;font-weight:600;letter-spacing:.3px;
}
.pos-dugmeler .dugme .sayi{
 display:inline-block;min-width:16px;padding:0 4px;border-radius:8px;
 background:var(--vurgu);color:#fff;font-size:10px;font-weight:700;line-height:14px;
}
.pos-dugmeler .dugme.ikincil .sayi{background:var(--vurgu)}
.pos-dugmeler .odeme-al{
 grid-column:1 / -1;flex-direction:row;gap:8px;
 padding:15px;font-size:17px;letter-spacing:.5px;margin-top:1px;
}
.pos-dugmeler .odeme-al .ks{
 font-size:11px;opacity:.75;border:1px solid rgba(255,255,255,.45);
 border-radius:4px;padding:1px 5px;
}

/* ================= POS TAM EKRAN ================= */
.kabuk.tam-ekran .yan{display:none}
.kabuk.tam-ekran .ust .marka b{font-size:16px}
.kabuk.tam-ekran .icerik{padding:12px}
.kabuk.tam-ekran .pos-kabuk{height:calc(100vh - 58px - 24px)}
.kabuk.tam-ekran .pos-sag{width:440px;flex:0 0 440px}

/* sepet + araç şeridi */
.pos-orta{flex:1;min-height:0;display:flex;gap:8px}
.pos-orta .pos-sepet{flex:1;min-width:0}

.pos-arac{
 flex:0 0 78px;display:flex;flex-direction:column;gap:6px;
}
.pos-arac button{
 flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
 background:var(--panel);border:1px solid var(--kenar);border-radius:var(--r2);
 cursor:pointer;color:var(--orta);font:inherit;padding:6px 2px;position:relative;
}
.pos-arac button:hover{border-color:var(--vurgu);background:var(--vurgu-bg);color:var(--vurgu2)}
.pos-arac button:active{background:var(--vurgu);color:#fff;border-color:var(--vurgu)}
.pos-arac button i{font-style:normal;font-size:19px;line-height:1;opacity:.85}
.pos-arac button span{font-size:11px;font-weight:600;line-height:1.1;text-align:center}
.pos-arac button em{
 font-style:normal;font-size:9px;opacity:.5;font-weight:600;letter-spacing:.3px;
}
.pos-arac button em.sayi{
 opacity:1;background:var(--vurgu);color:#fff;border-radius:8px;
 min-width:17px;padding:0 5px;line-height:15px;font-size:10px;font-weight:700;
}
.pos-arac button.dolu{border-color:var(--vurgu);background:var(--vurgu-bg);color:var(--vurgu2)}

/* alt: toplam + ödeme */
.pos-alt{
 display:flex;align-items:stretch;gap:10px;
 background:var(--panel);border:1px solid var(--kenar);border-radius:var(--r);
 padding:10px 12px;box-shadow:var(--golge);
}
.pos-alt .pos-toplam{flex:1;padding:0;border:0;background:0}
.pos-alt .pos-toplam .genel b{font-size:28px}
.pos-alt .odeme-al{
 flex:0 0 auto;min-width:190px;flex-direction:row;gap:8px;
 padding:0 22px;font-size:17px;letter-spacing:.5px;
}
.pos-alt .odeme-al .ks{
 font-size:11px;opacity:.75;border:1px solid rgba(255,255,255,.45);border-radius:4px;padding:1px 5px;
}

@media(max-width:1000px){
 .kabuk.tam-ekran .pos-sag{width:auto;flex:1}
 .pos-arac{flex:0 0 66px}
}
@media(max-width:700px){
 .pos-orta{flex-direction:column}
 .pos-arac{flex:0 0 auto;flex-direction:row}
 .pos-arac button{flex:1;padding:8px 2px}
 .pos-alt{flex-direction:column;gap:8px}
 .pos-alt .odeme-al{width:100%;padding:14px}
}

/* araç şeridi: 7 buton, genişletilmiş */
.pos-arac{flex:0 0 88px;gap:5px}
.pos-arac button{flex:1;min-height:0;padding:5px 2px;gap:2px}
.pos-arac button i{font-size:17px}
.pos-arac button span{font-size:10.5px}
.pos-arac button em{font-size:8.5px}
.pos-arac button em.sayi{font-size:9px;line-height:14px;min-width:15px;padding:0 4px}
.pos-arac button.tehlike{color:var(--kirmizi);border-color:var(--kirmizi-kenar)}
.pos-arac button.tehlike:hover{background:var(--kirmizi-bg);color:var(--kirmizi);border-color:var(--kirmizi)}
.pos-arac button.tehlike:active{background:var(--kirmizi);color:#fff}

.pos-sepet-bas #musteriEtiket .et{font-size:11px}

@media(max-width:1000px){ .pos-arac{flex:0 0 78px} }
@media(max-width:700px){
 .pos-arac{flex-direction:row;flex-wrap:wrap}
 .pos-arac button{flex:1 1 22%;min-height:52px}
}

/* ---- iskonto ekranı ---- */
.isk-sekme{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.isk-sekme button{
 padding:11px;border:1px solid var(--kenar2);border-radius:var(--r2);
 background:var(--panel);color:var(--orta);cursor:pointer;font:inherit;font-size:14px;font-weight:600;
}
.isk-sekme button:hover{border-color:var(--vurgu)}
.isk-sekme button.aktif{background:var(--vurgu);color:#fff;border-color:var(--vurgu)}

.isk-hizli{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;margin-top:10px}
.isk-hizli button{
 padding:9px 2px;border:1px solid var(--kenar2);border-radius:var(--r2);
 background:var(--panel);color:var(--orta);cursor:pointer;font:inherit;font-size:13px;font-weight:600;
}
.isk-hizli button:hover{border-color:var(--vurgu);background:var(--vurgu-bg);color:var(--vurgu2)}
.isk-hizli button:active{background:var(--vurgu);color:#fff}

.isk-ozet{margin-top:14px;background:var(--panel2);border-radius:var(--r2);padding:12px 14px}
.isk-ozet .satir3{display:flex;justify-content:space-between;font-size:13px;color:var(--orta);margin-bottom:5px}
.isk-ozet .satir3 b{font-variant-numeric:tabular-nums}
.isk-ozet .satir3.son{
 margin:8px 0 0;padding-top:8px;border-top:1px solid var(--kenar);
 font-size:15px;color:var(--yazi);align-items:baseline;
}
.isk-ozet .satir3.son b{font-size:21px;letter-spacing:-.5px}

/* parçalı ödeme listesi */
.odeme-liste{margin-top:10px;display:flex;flex-direction:column;gap:4px}
.od-satir{
 display:flex;align-items:center;gap:8px;padding:7px 10px;
 background:var(--yesil-bg);border:1px solid var(--yesil-kenar);border-radius:var(--r2);font-size:13px;
}
.od-satir .ad{flex:1;font-weight:600;color:var(--yesil)}
.od-satir b{font-variant-numeric:tabular-nums;color:var(--yazi)}
.od-satir button{
 width:20px;height:20px;padding:0;line-height:1;border-radius:5px;
 border:1px solid var(--yesil-kenar);background:transparent;color:var(--yesil);cursor:pointer;font-size:13px;
}
.od-satir button:hover{background:var(--kirmizi-bg);border-color:var(--kirmizi-kenar);color:var(--kirmizi)}
.odeme-tipleri .dugme{position:relative}
#tamamlaDugme:disabled{opacity:.6}

/* ---- üst bar cihaz durumu ---- */
.cihaz-durum{display:flex;gap:6px;margin-right:6px}
.cihaz{
 display:flex;align-items:center;gap:5px;padding:6px 11px;
 border:1px solid var(--kenar2);border-radius:20px;background:var(--panel);
 cursor:pointer;font:inherit;font-size:12px;font-weight:600;color:var(--orta);position:relative;
}
.cihaz i{font-style:normal;font-size:14px;line-height:1;position:relative}
.cihaz:hover{border-color:var(--vurgu);color:var(--vurgu2)}

.cihaz.bagli{background:var(--yesil-bg);border-color:var(--yesil-kenar);color:var(--yesil)}
.cihaz.bagli::after{
 content:'';width:7px;height:7px;border-radius:50%;background:var(--yesil);
 box-shadow:0 0 0 2px rgba(26,127,55,.18);
}
.cihaz.kopuk{background:var(--kirmizi-bg);border-color:var(--kirmizi-kenar);color:var(--kirmizi)}
.cihaz.kopuk i::after{
 content:'\2715';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
 font-size:15px;font-weight:700;color:var(--kirmizi);text-shadow:0 0 3px var(--kirmizi-bg);
}
.cihaz.kopuk::after{
 content:'';width:7px;height:7px;border-radius:50%;background:var(--kirmizi);
 box-shadow:0 0 0 2px rgba(198,40,40,.18);
}

/* cihaz menüsü */
.cihaz-menu{display:flex;flex-direction:column;gap:8px}
.cihaz-menu button{
 display:flex;align-items:center;gap:12px;padding:14px;text-align:left;
 border:1px solid var(--kenar2);border-radius:var(--r2);background:var(--panel);
 cursor:pointer;font:inherit;color:var(--yazi);
}
.cihaz-menu button:hover{border-color:var(--vurgu);background:var(--vurgu-bg)}
.cihaz-menu button i{font-style:normal;font-size:24px;line-height:1;opacity:.8}
.cihaz-menu button b{display:block;font-size:14px;letter-spacing:.3px}
.cihaz-menu button span{display:block;font-size:12px;color:var(--soluk);margin-top:2px}

@media(max-width:1100px){ .cihaz span{display:none} .cihaz{padding:6px 9px} }

/* ---- rapor fişi önizlemesi ---- */
.rapor-fis{
 font-family:"Courier New",Consolas,monospace;font-size:12.5px;line-height:1.5;
 background:#fff;border:1px solid var(--kenar);border-radius:var(--r2);padding:16px 18px;
 max-height:62vh;overflow:auto;
}
.rapor-fis .rf-bas{text-align:center;font-size:16px;font-weight:700;letter-spacing:.5px}
.rapor-fis .rf-tip{text-align:center;font-size:14px;font-weight:700;margin-top:2px}
.rapor-fis .rf-not{text-align:center;font-size:10.5px;color:var(--soluk);margin:3px 0}
.rapor-fis .rf-cizgi{border-top:1px dashed var(--kenar2);margin:8px 0}
.rapor-fis .rf-cizgi.cift{border-top:2px solid var(--kenar2)}
.rapor-fis .rf-baslik{font-weight:700;font-size:11.5px;letter-spacing:.5px;margin:2px 0 4px}
.rapor-fis .rs{display:flex;justify-content:space-between;gap:10px}
.rapor-fis .rs span{color:var(--orta);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rapor-fis .rs b{font-variant-numeric:tabular-nums;white-space:nowrap}
.rapor-fis .rs.kalin{font-weight:700;font-size:13.5px;margin:3px 0}
.rapor-fis .rs.kalin span{color:var(--yazi)}

/* vardiya rozeti üst barda */
#cVardiya i{font-size:13px}
#cVardiya.kopuk i::after{font-size:13px}

/* vardiya çubuğu kalktı, sepet yukarı uzadı */
.kabuk.tam-ekran .pos-kabuk{height:calc(100vh - 58px - 24px)}
.pos-sag .pos-orta{flex:1;min-height:0}

/* ================= RAF ETİKETİ ================= */
.etiket-sayfa{display:flex;flex-wrap:wrap;gap:2mm;background:#fff;padding:4mm;border-radius:var(--r2)}
.etiket{
 border:1px dashed var(--kenar2);border-radius:2px;
 display:flex;flex-direction:column;align-items:center;justify-content:center;
 padding:1.5mm;overflow:hidden;text-align:center;box-sizing:border-box;background:#fff;color:#000;
}
.etiket .e-firma{font-size:8px;color:#555;letter-spacing:.3px;margin-bottom:.5mm}
.etiket .e-isim{
 font-weight:600;line-height:1.15;width:100%;
 display:block;max-height:2.3em;overflow:hidden;word-break:break-word;
}
.etiket .e-fiyat{font-weight:800;letter-spacing:-.5px;line-height:1.1;margin:.5mm 0}
.etiket .e-kdv{font-size:7.5px;color:#555;letter-spacing:.3px}
.etiket .e-barkod{margin-top:.8mm;line-height:0}
.etiket .e-barkod svg{max-width:100%;height:auto}

/* ---- yazdırma ---- */
@media print{
  @page{size:A4;margin:5mm}
  body{background:#fff!important}
  .yan, .ust, .yazdirma-gizle, .kart-bas, .uyari{display:none!important}
  .kabuk, .govde, .icerik{display:block!important;padding:0!important;margin:0!important;height:auto!important;overflow:visible!important}
  .kart{box-shadow:none!important;border:0!important;padding:0!important;margin:0!important;background:#fff!important}
  #onizlemeKart{display:block!important}
  .etiket-sayfa{padding:0;gap:0;display:flex;flex-wrap:wrap}
  .etiket{
    border:0!important;page-break-inside:avoid;break-inside:avoid;
    -webkit-print-color-adjust:exact;print-color-adjust:exact;
  }
  .etiket .e-isim, .etiket .e-fiyat, .etiket .e-kdv, .etiket .e-firma{color:#000!important}
}

/* ---- kasa sayım (banknot dökümü) ---- */
.kasa-sayim{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ks-grup{background:var(--panel2);border-radius:var(--r2);padding:10px 12px}
.ks-baslik{font-size:11.5px;font-weight:700;letter-spacing:.5px;color:var(--soluk);
 text-transform:uppercase;margin-bottom:8px}
.ks-satir{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.ks-deger{width:52px;text-align:right;font-weight:700;font-size:14px;font-variant-numeric:tabular-nums}
.ks-carpi{color:var(--soluk);font-size:12px}
.ks-adet{width:64px;text-align:center;padding:5px;font-size:14px;font-weight:600}
.ks-tutar{margin-left:auto;font-size:13px;font-variant-numeric:tabular-nums;opacity:.35}
.ks-toplam{display:flex;justify-content:space-between;align-items:baseline;
 margin-top:12px;padding-top:12px;border-top:2px solid var(--kenar2)}
.ks-toplam span{font-size:12px;color:var(--soluk);letter-spacing:.6px}
.ks-toplam b{font-size:24px;letter-spacing:-.5px;font-variant-numeric:tabular-nums}
@media(max-width:620px){ .kasa-sayim{grid-template-columns:1fr} }

/* ---- vardiya kapatma: iki sütun, ekrana sığar ---- */
#vardiyaModal .modal{max-width:820px;max-height:94vh;display:flex;flex-direction:column}
#vardiyaModal .modal-govde{overflow:auto}
.vk-duzen{display:grid;grid-template-columns:1fr 300px;gap:18px}
.vk-sol{min-width:0}
.vk-baslik{font-size:11.5px;font-weight:700;letter-spacing:.5px;color:var(--soluk);
 text-transform:uppercase;margin-bottom:8px}
.vk-ozet{background:var(--panel2);border-radius:var(--r2);padding:9px 11px}
.vk-satir{display:flex;justify-content:space-between;font-size:13px;color:var(--orta);margin-bottom:3px}
.vk-satir b{font-variant-numeric:tabular-nums;color:var(--yazi)}
.vk-satir.kalin{margin:6px 0 0;padding-top:6px;border-top:1px solid var(--kenar);font-weight:700}
.vk-satir.kalin b{font-size:16px}
.vk-fark{margin-top:6px}
.vk-fark-kutu{padding:8px 11px;border-radius:var(--r2);font-size:13px;text-align:center;font-weight:600}
.vk-fark-kutu.tamam{background:var(--yesil-bg);color:var(--yesil);border:1px solid var(--yesil-kenar)}
.vk-fark-kutu.eksik{background:var(--kirmizi-bg);color:var(--kirmizi);border:1px solid var(--kirmizi-kenar)}
.vk-fark-kutu.fazla{background:var(--sari-bg);color:var(--sari-koyu,#8a6d0b);border:1px solid var(--sari-kenar)}
.vk-fark-kutu.bos{background:var(--panel2);color:var(--soluk);border:1px dashed var(--kenar2);font-weight:400}
.vk-sag .kasa-sayim{grid-template-columns:1fr}
#vardiyaModal .kasa-sayim{grid-template-columns:1fr 1fr}
#vardiyaModal .ks-toplam b{font-size:20px}
@media(max-width:820px), (max-height:660px){
  .vk-duzen{grid-template-columns:1fr}
  #vardiyaModal .kasa-sayim{grid-template-columns:1fr 1fr}
}

/* ---- çoklu Z raporu satırları ---- */
.z-liste{display:flex;flex-direction:column;gap:6px;margin-top:8px}
.z-satir{display:grid;grid-template-columns:1fr 1.3fr 26px;gap:6px;align-items:center;position:relative}
.z-satir input{padding:7px 9px;font-size:13.5px}
.z-satir .z-no{text-align:center;font-weight:700}
.z-satir .z-tutar{text-align:right;font-weight:700;font-variant-numeric:tabular-nums}
.z-satir .z-sil{
 width:26px;height:26px;padding:0;line-height:1;border-radius:6px;font-size:15px;
 border:1px solid var(--kenar2);background:var(--panel);color:var(--soluk);cursor:pointer;
}
.z-satir .z-sil:hover{background:var(--kirmizi-bg);color:var(--kirmizi);border-color:var(--kirmizi-kenar)}
.z-satir .z-durum{grid-column:1 / -1;margin-top:-2px}
.z-uyari{font-size:11px;font-weight:600}
.z-uyari.tamam{color:var(--yesil)}
.z-uyari.eksik{color:var(--kirmizi)}
.z-toplam{display:flex;justify-content:space-between;align-items:baseline;
 margin-top:8px;padding-top:8px;border-top:1px solid var(--kenar)}
.z-toplam span{font-size:12px;color:var(--soluk);letter-spacing:.4px}
.z-toplam b{font-size:17px;font-variant-numeric:tabular-nums}

/* ---- kampanya ekranı ---- */
.onay-izgara{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:6px}
.onay-izgara label{display:flex;align-items:center;gap:5px;font-size:13px;font-weight:500;
 background:var(--panel2);padding:6px 9px;border-radius:var(--r2);cursor:pointer;margin:0}
.onay-izgara label:hover{background:var(--vurgu-bg)}
.secili-liste{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;min-height:24px}
.secili-oge{display:inline-flex;align-items:center;gap:6px;background:var(--vurgu-bg);
 border:1px solid var(--vurgu);border-radius:20px;padding:4px 6px 4px 12px;font-size:12.5px;font-weight:600;color:var(--vurgu2)}
.secili-oge button{width:18px;height:18px;padding:0;line-height:1;border-radius:50%;border:0;
 background:var(--vurgu);color:#fff;cursor:pointer;font-size:12px}
