.seogizli{display:none}
/* ---- ANASAYFA SSS BOLUMU ----
   Harita bolumunun yerine geldi (Gulbin, 21 Eylul).
   Gulbin, 21 Eylul: "sikca sorulan sorulari berbat yapmissin
   duzenler misin?" -> akordeon bolumun tam genisligini kullaniyor,
   dar bir sutuna sikismiyor; liste basligin dibinden 46 px asagida.
   Bu kural mobil.css'tekiyle AYNI olmali: bu blok mobil.css'ten
   SONRA geliyor, farkli olursa oradaki ayari eziyor ve bolum
   yeniden bozuluyor. */
.sssb .sssakor{max-width:none;margin:46px 0 0}  /* bekci-muaf: Gulbin'in verdigi olcu */
.sssb .ssstum{margin:calc(26*100cqw/var(--AW)) 0 0;text-align:right}
.sssb .ssstum a{font-size:var(--m5);text-transform:uppercase;
  color:var(--mavi-koyu);text-decoration:none;
  border-bottom:var(--cizgi) solid var(--mavi-koyu);padding-bottom:2px}
@media(max-width:820px){
  .sssb .sssakor{max-width:none}
  .sssb .ssstum{margin-top:var(--r3)}
  .sssb .ssstum a{font-size:var(--f5)}
}
/* KLYAMA:MINI SEPET: KART SATIR VE ALT BLOK */
/* ---- MINI SEPET: KART SATIR VE ALT BLOK ----
   Gulbin, 22 Eylul: dort referans mini sepet gonderdi ("su ornekleri
   inceleyelim"), satir duzeni icin "sen ne oneriyorsun", alt blok
   icin "deneyelim hepsini" dedi.
   Onerim kart satir oldu: her urun kendi cercevesinde. Sebebi
   sitenin kendi dili; her sey hairline kutu. Ayrica satir arasi
   ayirici cizgiye gerek kalmiyor, Gulbin kutu ici cizgi istemiyor.
   Gorsel 62'den 90'a cikti (referanslarda panel genisliginin
   dortte biri, bizde ucte bire yakin), ad ve fiyat ust satirda yan
   yana, fiyat sagda kalin; rozet altinda, sayac en altta. */
.cartp .cartrow{display:grid;grid-template-columns:90px minmax(0,1fr);
  gap:var(--r2);align-items:start;position:relative;
  border:var(--cizgi) solid var(--mavi-koyu);padding:var(--r2);
  margin:0 0 var(--r12);background:var(--beyaz)}
/* Her satir kendi cercevesinde: aralarina ayrica cizgi girmiyor. */
.cartp .cartrow .th{width:90px;height:90px;display:grid;place-items:center;
  overflow:hidden;border:0;background:none}
.cartp .cartrow .th img{width:100%;height:100%;object-fit:contain}
.cartp .cartrow .nm{display:grid;gap:var(--r1);min-width:0}
.cartp .cartrow .nm .ust{display:flex;align-items:baseline;
  justify-content:space-between;gap:var(--r12)}
.cartp .cartrow .nm .ust b{font-size:15px;font-weight:var(--ag-baslik);  /* bekci-muaf: mini sepet olcusu */
  line-height:1.25;min-width:0}
/* Eski kural fiyati satirin UCUNCU grid sutununa atiyordu; yeni
   duzende fiyat ad ile ayni satirda, esnek kutunun icinde. */
.cartp .cartrow .nm .ust .pz{grid-column:auto;align-self:auto;margin:0;
  font-size:16px;font-weight:var(--ag-baslik);  /* bekci-muaf: mini sepet olcusu */
  white-space:nowrap;flex:0 0 auto}
.cartp .cartrow .rz{display:flex;flex-wrap:wrap;gap:var(--r1)}
.cartp .cartrow .rz i{font-style:normal;font-size:10px;  /* bekci-muaf: mini sepet olcusu */
  text-transform:uppercase;color:var(--mavi-koyu)}
.cartp .cartrow .qty{justify-self:start;margin-top:var(--r0)}
/* Silme dugmesi kutunun sag ust kosesinde, referanslardaki gibi. */
.cartp .cartrow .rm{position:absolute;top:var(--r1);right:var(--r1);
  width:28px;height:28px;display:grid;place-items:center;
  font-size:18px;line-height:1;background:none;border:0;  /* bekci-muaf: ikon dugmesi */
  color:var(--mavi-koyu);cursor:pointer;transition:color .2s}
.cartp .cartrow .rm:hover{color:var(--mavi-acik)}

/* Baslikta urun sayisi */
.cartp .carth .cadet{margin-left:auto;margin-right:var(--r2);
  font-size:11px;text-transform:uppercase;opacity:.6}  /* bekci-muaf: mini sepet olcusu */

/* Odul seridi: yan yana kutular, esigi olan dolum cubugu aliyor. */
.cartp .oduller{display:grid;grid-template-columns:repeat(3,1fr);
  gap:var(--r1)}
.cartp .odul{border:var(--cizgi) solid var(--mavi-koyu);
  padding:var(--r12) var(--r1);display:grid;gap:2px;align-content:start}
.cartp .odul b{font-size:11px;font-weight:var(--ag-baslik);  /* bekci-muaf: mini sepet olcusu */
  text-transform:uppercase;line-height:1.2}
.cartp .odul span{font-size:10px;opacity:.7;line-height:1.2}  /* bekci-muaf: mini sepet olcusu */
.cartp .odul i{display:block;height:3px;background:rgba(2,31,54,.14);
  margin-top:var(--r0)}
.cartp .odul i u{display:block;height:100%;background:var(--mavi-koyu);
  text-decoration:none;transition:width .45s cubic-bezier(.2,.8,.25,1)}
.cartp .odul.tam{background:var(--mavi-koyu)}
.cartp .odul.tam b,.cartp .odul.tam span{color:var(--beyaz)}
.cartp .odul.tam i{background:rgba(255,255,255,.3)}
.cartp .odul.tam i u{background:var(--beyaz)}
.cartp .odul.bilgi i{display:none}

/* Ikonlu guvence listesi (rozet ciplerinin yerine) */
.cartp .guvence{list-style:none;margin:0 0 var(--r2);padding:0;
  display:grid;gap:var(--r1)}
.cartp .guvence li{display:flex;align-items:center;gap:var(--r12);
  font-size:12px;line-height:1.35;color:var(--mavi-koyu)}  /* bekci-muaf: mini sepet olcusu */
.cartp .guvence .gi{flex:0 0 auto;width:18px;height:18px;display:block;
  color:var(--mavi-koyu)}
.cartp .guvence .gi svg{width:100%;height:100%;display:block;
  stroke-width:var(--ik-cizgi,1.4)}

/* Toplam dugmenin icinde */
.cartp .go.tutarli{display:flex;align-items:center;
  justify-content:space-between;gap:var(--r2);padding:0 var(--r2)}
.cartp .go.tutarli b{font-weight:var(--ag-baslik)}

/* Capraz satis seridi ilk kez veri aldi (mkxsell.py) ve sepet
   govdesini disari itti: .cartb bir grid, icindeki .xs kendi icerik
   genisligine acilinca sutun onunla birlikte buyuyor, satirlar da
   panelin disina tasiyordu. Sutun sinirlandi, serit kendi icinde
   kayiyor. */
.cartp .cartb{grid-template-columns:minmax(0,1fr)}
.cartp .cartb > *{min-width:0}
.cartp .xwrap{overflow:hidden}
.cartp .xrail{overflow-x:auto;scrollbar-width:none}
.cartp .xrail::-webkit-scrollbar{display:none}

/* ---- SEPETTEKI URUN KARTLARI ----
   Gulbin, 22 Eylul: "urun kartlari cok berbat, duzgun bir calisma
   yap" (mini sepetteki serit).
   Olculdu ve dort ayri sorun vardi:
     - gorsel cercevesi 98x74, gorselin kendisi 86x76: kutudan tasiyordu
     - ad ve fiyat ikisi de 11 px, hangisi ne belli degildi
     - ad iki satira dusunce kartlar birbiriyle hizalanmiyordu
     - "Ekle" dugmesi 25 px, dokunulacak olcunun altinda
     - ileri/geri oklari kartlarin UZERINE biniyordu
   Kart artik sitenin kart diliyle ayni: hairline kutu, kare gorsel
   alani, iki satirlik sabit ad alani, fiyat ayri agirlikta, tam
   genislikte 38 px dugme. Oklar seridin basligina tasindi. */
.cartp .xs{position:relative;padding-top:var(--r2)}
.cartp .xs h5{margin:0 0 2px;font-size:12px;font-weight:var(--ag-baslik);  /* bekci-muaf: mini sepet olcusu */
  text-transform:uppercase;letter-spacing:0;color:var(--mavi-koyu)}
.cartp .xs .hint{margin:0 0 var(--r12);font-size:11px;line-height:1.4;  /* bekci-muaf: mini sepet olcusu */
  opacity:.7;max-width:34ch}
/* Oklar basligin sag ustunde, kartlarin uzerinde degil. */
.cartp .xs .xnav{position:absolute;top:var(--r12);width:26px;height:26px;
  display:grid;place-items:center;border:var(--cizgi) solid var(--mavi-koyu);
  background:var(--beyaz);color:var(--mavi-koyu);font-size:14px;  /* bekci-muaf: ikon dugmesi */
  line-height:1;cursor:pointer;transition:background .2s,color .2s}
.cartp .xs .xnav:hover{background:var(--mavi-koyu);color:var(--beyaz)}
.cartp .xs .xnav.sol{right:34px;left:auto}
.cartp .xs .xnav.sag{right:0}
/* Kenar solmalari kartin cercevesini kesiyordu. */
.cartp .xs .xfade{display:none}
.cartp .xs .xwrap{overflow:hidden;position:static}
.cartp .xs .xrail{display:flex;gap:var(--r12);padding:2px;
  scroll-behavior:smooth}
.cartp .xs .xcard{flex:0 0 126px;display:grid;gap:var(--r1);
  grid-template-rows:auto auto auto auto;align-content:start;
  border:var(--cizgi) solid var(--mavi-koyu);padding:var(--r12);
  background:var(--beyaz)}
.cartp .xs .xcard .th{display:grid;place-items:center;width:100%;height:auto;
  aspect-ratio:1;overflow:hidden;border:0;background:none;padding:0}
.cartp .xs .xcard .th img{width:100%;height:100%;object-fit:contain;
  display:block}
/* Ad iki satirda sabit: kartlar birbiriyle hizali kaliyor. */
.cartp .xs .xcard b{font-size:12px;font-weight:var(--ag-baslik);  /* bekci-muaf: mini sepet olcusu */
  line-height:1.25;min-height:2.5em;display:-webkit-box;
  -webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cartp .xs .xcard > span{font-size:13px;font-weight:var(--ag-baslik);  /* bekci-muaf: mini sepet olcusu */
  opacity:1}
.cartp .xs .xcard button{width:100%;min-height:38px;padding:0;
  font:inherit;font-size:11px;text-transform:uppercase;  /* bekci-muaf: mini sepet olcusu */
  border:var(--cizgi) solid var(--mavi-koyu);background:none;
  color:var(--mavi-koyu);cursor:pointer;
  transition:background .2s,color .2s}
.cartp .xs .xcard button:hover{background:var(--mavi-koyu);color:var(--beyaz)}
.cartp .xs .xcard button.ok{background:var(--mavi-koyu);color:var(--beyaz)}

/* ---- ODEME KARTLARI PANELIN ALTINDA ----
   Gulbin, 22 Eylul: "odeme logolari sepet altina gelsin."
   Once guvence satirinin sag ucundaydi; artik en altta, ortali. */
.cartp .guvence li>span{flex:1 1 auto;min-width:0}
.cartp .cartkart{margin-top:var(--r3);display:flex;justify-content:center}
.cartp .cartkart img{width:auto;height:26px;display:block}  /* bekci-muaf: mini sepet olcusu */

/* ---- SATIR ICINDE SILIKLIK YOK, ALTINDA CIZGI YOK ----
   Gulbin, 22 Eylul: "silikler opakliklari dusuk ayrica altindaki
   cizgiyi kaldir."
   Silikligin kaynagi tek bir eski kuraldi: .cartrow span{opacity:.7}.
   Satirin butun parcalari (gorsel, ad, rozet, adet) span oldugu icin
   hepsi %70'e dusuyordu; rozet ve silme dugmesi kendi opacity'siyle
   carpilinca %45'e kadar iniyordu. Satirda artik hicbir sey silik
   degil, hiyerarsi punto ve agirlikla kuruluyor.
   Kutunun altindaki cizgi capraz satis seridinin ust kenariydi;
   kutunun kendi cercevesi zaten ayirmayi yapiyor. */
.cartp .cartrow span{opacity:1}
.cartp .xs{border-top:0}

/* ---- MOBILDE PANEL TEK PARCA KAYIYOR ----
   Olculdu: 375x812'de alt blok (guvence + toplam + dugmeler) 572 px,
   panel 812 px. Ortadaki urun alani flex:1 ile kalani aliyordu, yani
   64 px; tek urun satiri (166 px) bile sigmiyor, kutu ortadan
   kesiliyordu. Mobilde ic kaydirma yerine panelin kendisi kayiyor,
   baslik ustte sabit kaliyor. Masaustunde (>=821) eski davranis. */
@media(max-width:820px){
  .cartp{overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}
  /* Ic kaydirma kalkinca satirlar panelin kenarina yapisiyordu.
     Eski mobil dili satiri tam genislige yayiyordu (mobil.css:
     .cartb padding 0, .cartrow padding --yan); yeni tasarimda her
     satir kendi cerceveli kutusu, o yuzden yan bosluk kutunun
     disinda: --yan basliktaki ve alt bloktaki ile ayni. */
  .cartp .cartb{overflow:visible;flex:0 0 auto;
    padding:0 var(--yan)!important}
  .cartp .cartrow{padding:var(--r2)!important}
  .cartp .carth{position:sticky;top:0;z-index:4;background:var(--beyaz)}
}

/* ---- ADET SAYACI GORUNSUN ----
   Gulbin, 22 Eylul: "+- gozukmuyor."
   Olculdu: dugmelerin rengi rgb(207,230,220), yani --mtn-2. O ton
   cekmece koyu zeminliyken dogruydu; satir beyaz kutuya dondugunde
   beyaz uzerinde beyaza yakin kaldi. Ikisi de koyu mavi, rakam da
   dugmelerle ayni puntoda. */
.cartp .cartrow .qty button{color:var(--mavi-koyu)}
.cartp .cartrow .qty>span{color:var(--mavi-koyu);
  font-size:13px}   /* bekci-muaf: mini sepet olcusu, dugmelerle ayni */

/* ---- AD, FIYAT, SAYAC ALT ALTA ----
   Gulbin, 22 Eylul: "fiyatlar kesin baslik altinda olsun. quantity de
   altinda olsun."
   .ust kutusu ad ile fiyati ayni satira yan yana diziyordu; uzun urun
   adlari fiyati sikistiriyordu. Artik dikey yigin: ad, altinda fiyat,
   onun altinda sayac. Silme dugmesi sag ust kosede kaldigi icin adin
   sag tarafinda ona pay birakiliyor. */
.cartp .cartrow .nm .ust{display:grid;justify-content:stretch;
  gap:var(--r0)!important}
/* !important sebebi: mobil.css'teki ".ust,.alt{gap:var(--r3)!important}"
   kurali urun sayfasi icin yazilmis ama secici kapsamsiz, mini
   sepetteki .ust kutusuna da giriyor ve ad ile fiyat arasini 24 px
   aciyordu. Kural urun sayfasinda dogru, o yuzden orayi bozmadan
   burada geri aliniyor. */
.cartp .cartrow .nm .ust b{padding-right:var(--r3)}
.cartp .cartrow .nm .ust .pz{white-space:nowrap;justify-self:start}

/* ---- FIYAT BASLIKTAN KUCUK ----
   Gulbin, 22 Eylul: "fiyat daha kucuk olsun basliktan kucuk."
   Ad 15, fiyat 16 idi; yani fiyat baslikten buyuktu. Fiyat
   merdivenin bir alt basamagina indi (13), agirligi kaldi.
   Buyuk tutar zaten "Odemeye gec" dugmesinin icinde. */
.cartp .cartrow .nm .ust .pz{font-size:13px}  /* bekci-muaf: mini sepet olcusu */

/* ---- IKINCI VE SONRAKI SATIRIN UST KENARI ----
   Gulbin, 22 Eylul: "2. urunun cercevesinin ustunu cizmeme sebebin ne."
   Sebebi eski bir kural: ".cartp .cartrow+.cartrow{border-top:0}".
   Onceki tasarimda satirlar tek bir listeydi, aralarinda ortak bir
   ayirici cizgi vardi; alt alta gelen iki satir cift cizgi yapmasin
   diye ikincisinin ust kenari kaldiriliyordu. Yeni tasarimda her
   satir kendi kutusu, o yuzden kural yanlis yere dusuyor ve ilk
   satir disindaki her kutu ustsuz kaliyordu. Seciciligi ayni olan
   bu kural geri aliyor. */
.cartp .cartrow + .cartrow{border-top:var(--cizgi) solid var(--mavi-koyu)}

/* ============ MINI SEPETTE TEK RENK: KOYU MAVI ============
   Gulbin, 22 Eylul: "mini sepette sadece koyu mavi kullanacagiz."
   Cekmece ilk kurulusunda koyu zeminliydi ve butun vurgular marka
   yesiliydi; beyaz zemine gecince yesil ya kayboldu ya da beyaz
   uzerinde yesil yazi olarak kaldi. Asagidaki blok cekmecedeki her
   yesil ve acik mavi izini koyu maviye ceviriyor. Zemin beyaz,
   yazi koyu mavi, tek istisna "Odemeye gec" dugmesi: koyu mavi
   zemin uzerine beyaz yazi. Cekmecenin disindaki hicbir sey
   etkilenmiyor, butun seciciler .cartp ile basliyor. */

/* baslik */
.cartp .carth b,.cartp .carth button,
.cartp .carth button:hover{color:var(--mavi-koyu)}

/* ucretsiz kargo / odul seridi */
.cartp .freeb b,.cartp .freeb p,.cartp .freeb.done p,
.cartp .odul b,.cartp .odul span{color:var(--mavi-koyu)}
.cartp .freeb .fil,.cartp .odul i u{background:var(--mavi-koyu)}
.cartp .freeb .trk,.cartp .odul i{background:rgba(2,31,54,.14)}
.cartp .freeb{background:none}

/* satir icindeki sayac */
.cartp .cartrow .qty{border-color:var(--mavi-koyu)}
.cartp .cartrow .qty button:hover{background:rgba(2,31,54,.08);
  color:var(--mavi-koyu)}
/* Gulbin, 22 Eylul: "ustune gelince arkadaki zemin olmasin."
   Kaldir dugmesinin uzerine gelince gri kare beliriyordu; artik
   yalniz ikon ceyrek tur donuyor. */
.cartp .cartrow .rm:hover{color:var(--mavi-koyu);background:none}

/* capraz satis seridi */
.cartp .xs h5{color:var(--mavi-koyu)}
.cartp .xs .xcard,.cartp .xs .xcard:hover{border-color:var(--mavi-koyu)}
.cartp .xs .xcard .th,.cartp .xs .xcard span,
.cartp .xs .xcard b{color:var(--mavi-koyu)}
.cartp .xs .xcard button{border-color:var(--mavi-koyu);
  color:var(--mavi-koyu);background:none}
.cartp .xs .xcard button:hover,.cartp .xs .xcard button.ok{
  background:var(--mavi-koyu);color:var(--beyaz)}
.cartp .xs .xnav{background:var(--beyaz);border-color:var(--mavi-koyu);
  color:var(--mavi-koyu)}
.cartp .xs .xnav:hover{background:var(--mavi-koyu);color:var(--beyaz)}
.cartp .xs .xnav[disabled]:hover{background:var(--beyaz);
  color:var(--mavi-koyu)}
.cartp .xs .xrail{scrollbar-color:rgba(2,31,54,.45) transparent}
.cartp .xs .xrail::-webkit-scrollbar-thumb{background:rgba(2,31,54,.45)}

/* alt blok: indirim satiri da dahil hepsi koyu mavi */
.cartp .cartf .satir,.cartp .cartf .satir.ind,
.cartp .cartf .devam,.cartp .cartnote,.cartp .cartnote a,
.cartp .guvence li,.cartp .guvence .gi{color:var(--mavi-koyu)}
.cartp .cartf .alt{border-color:var(--mavi-koyu);color:var(--mavi-koyu)}
.cartp .cartf .alt:hover{background:rgba(2,31,54,.06)}

/* Kalan iki uzerine gelme durumu: "Odemeye gec" yesile, "Alisverise
   devam et" yesil yaziya donuyordu. Dugme koyu mavi kaliyor, uzerine
   gelince beyazla %8 aciliyor; yani yine koyu mavi ve beyaz. */
.cartp .cartf .go:hover{background:var(--mavi-koyu);
  box-shadow:inset 0 0 0 999px rgba(255,255,255,.08)}
.cartp .cartf .devam:hover{color:var(--mavi-koyu)}

/* ---- GUVENCE LISTESI: IKI SUTUN, EN ALTTA ----
   Gulbin, 22 Eylul: "bunlar sirada iki tane olacak sekilde dortlu,
   odeme ikonlarinin ustunde olsun."
   Dort madde alt alta dort satirdi ve panelin basindaydi; artik
   iki sutunlu iki satir ve kart seridinin hemen ustunde duruyor. */
/* Gulbin, 22 Eylul: "iconlu listeyi ortala sayfaya." Izgara panelin
   tam genisligine yayilmiyor; iki sutun icerigi kadar yer aliyor ve
   blok olarak ortalaniyor. Kart seridi de zaten ortali. */
.cartp .guvence{grid-template-columns:repeat(2,auto);
  justify-content:center;
  column-gap:var(--r3);row-gap:var(--r1);
  margin:var(--r3) 0 0}
.cartp .guvence li{align-items:flex-start;gap:var(--r1)}
.cartp .guvence .gi{margin-top:1px}   /* bekci-muaf: ikon optik hizasi */

/* ---- ALT BLOK: TEK GRUP, DAHA ASAGIDA, DAHA SIKI ----
   Gulbin, 22 Eylul: "odeme logolarini buyut biraz, ustundeki listeyi
   asagiya indir, odemeye gec butonunu da, arasi cok acik."
   Olculdu: dugme ile ikon listesi arasi 44 px, liste ile kart seridi
   arasi 40 px idi; uc parca birbirinden kopuk duruyordu.
   Artik dugme, ikon listesi ve kart seridi tek bir grup: aralari
   --r12 (12 px). Bosluk gruptan cikip grubun USTUNE, toplam
   satirlarinin altina tasindi, boylece uc parca da asagiya indi.
   Kart logolari 26'dan 34 px'e buyudu. */
/* Gulbin, 22 Eylul: "aralarini biraz daha daralt." Olculdu: 40 / 28 /
   28 idi. .cartf'in kendi --r12 arasi zaten 16 px veriyor, ustune
   eklenen paylar kisildi: 28 / 16 / 16. */
.cartp .cartf .go{margin-top:var(--r12)}
.cartp .guvence{margin-top:0}
.cartp .cartkart{margin-top:0}
.cartp .cartkart img{height:34px}   /* bekci-muaf: mini sepet olcusu */

/* ---- IKI CARPI DA AYNI ----
   Gulbin, 22 Eylul: "sepet carpisini da duzelt urun carpisini da,
   ikisi de ayni olsun, x seklinde yamuk duruyor, +'dan x'e donup
   animasyon olabilir ikisinde de."
   Onceki carpi menu ikonunun uc cizgisinden yapiliyordu; cizgiler
   kendi kalinliklarindan dolayi capraza donunce uclari denk gelmiyor,
   yamuk duruyordu. Artik iki yerde de ayni cizim: 24'luk kutuda bir
   yatay bir dikey cizgi, yani arti; 45 derece cevrilince tam carpi.
   Acilista artidan carpiya doner (@starting-style), uzerine gelince
   bir ceyrek tur daha atar. */
.cartp .kx{background:none;border:0;padding:0;cursor:pointer;
  display:grid;place-items:center;color:var(--mavi-koyu)}
.cartp .kx .kxs{width:18px;height:18px;display:block;     /* bekci-muaf: mini sepet ikon olcusu */
  fill:none;stroke:currentColor;stroke-width:1.6;         /* bekci-muaf: ikon kontur kalinligi */
  stroke-linecap:butt;
  transform:rotate(45deg);
  transition:transform .32s cubic-bezier(.2,.8,.25,1)}
@starting-style{ .cartp .kx .kxs{transform:rotate(0deg)} }
.cartp .kx:hover .kxs{transform:rotate(135deg)}
@media(prefers-reduced-motion:reduce){
  .cartp .kx .kxs{transition:none}}
/* Cekmecenin kapat dugmesi */
.cartp .carth .cartx{width:44px;height:44px;margin:-10px}
/* Satirin kaldir dugmesi: kutunun sag ust kosesinde */
.cartp .cartrow .rm{position:absolute;top:var(--r1);right:var(--r1);
  width:28px;height:28px}
.cartp .cartrow .rm .kxs{width:14px;height:14px}          /* bekci-muaf: mini sepet ikon olcusu */

/* ---- FIYAT ROZETI ----
   Gulbin, 22 Eylul: "fiyatta urun sayfasinda %30 indirim yazdiginda
   rozetliydi ya, burada da oyle olsun."
   Urun sayfasindaki .uind rozetinin ayni kalibi: dolu zemin, ince
   agirlik, buyuk harf. Tek fark rengi: orada marka yesili, burada
   mini sepetin tek rengi olan koyu mavi (zemin) + beyaz (yazi). */
.cartp .cartrow .pz{display:flex;align-items:baseline;gap:var(--r1);
  flex-wrap:wrap}
.cartp .cartrow .pz s{font-weight:var(--ag-ince);opacity:.6;
  text-decoration-thickness:var(--cizgi)}
.cartp .cartrow .pz .cind{font-style:normal;background:var(--mavi-koyu);
  color:var(--beyaz);font-weight:var(--ag-ince);line-height:1;
  font-size:10px;   /* bekci-muaf: mini sepet rozet olcusu */
  padding:.32em .6em;text-transform:uppercase;white-space:nowrap}

/* ---- ILERLEME CUBUGU MINI SEPETTE ----
   Stil urun2.css'teki ILERLEME blogundan geliyor; oradaki olculer
   tuval birimine (100cqw/--AW) bagli, cekmecede tuval yok. Yalniz
   olculer sabit degerlere cevriliyor, cizim ve renk aynen duruyor.
   Cekmecenin tek rengi kurali burada gecerli DEGIL: Gulbin, 22 Eylul
   "bir seyi kazandiginda isigi yesil olsun ve yanip sonsun" dedi,
   yani kazanilan adimin isigi ve dolum yesil kaliyor. */
/* Gulbin, 22 Eylul: "cercevesi olsun aralarinda cizgi olmasin."
   Kargo cubugu artik kendi cercevesinde (urun ve sepet
   sayfalarindaki .ukargo ile ayni); kutuyu listeden ayiran alt
   cizgi (.freeb border-bottom) kalkti, araligi bosluk veriyor. */
/* Gulbin, 22 Eylul: "sepet altindaki cizgi kalksin mini sepette."
   Basligin ([ SEPET ]) altindaki hat kalkti. Kargo cubugu o hattin
   hemen dibinde basliyordu, kendi cercevesiyle birlesik gorunuyordu;
   ustune de bosluk verildi. */
.cartp .carth{border-bottom:0!important}
/* Gulbin, 22 Eylul: "kartlar mini sepette enden esit ve hizali
   olsun." Olculdu: kargo kutusu 480 (yan pay 20), urun satirlari
   472 (yan pay 24). Yan pay listeyle ayni degere alindi, uc kutu da
   ayni genislikte ve ayni hizada. */
.cartp .freeb{border-bottom:0!important;background:none;
  padding:var(--r12) var(--r3);margin:0}
.cartp .ukargo{margin:0;padding:var(--r2);
  border:var(--cizgi) solid var(--mavi-koyu)}

/* ---- KAYARKEN UST VE ALT SOLMA ----
   Gulbin, 22 Eylul: "arasi da ust alta transparanlik ver kayarken,
   eski yorumlarin sagi solu gibi."
   Ayri bir katman yok, listenin kendisi maskeleniyor. --solust ve
   --solalt degerlerini JS yaziyor (0 ya da 1): solma yalnizca o
   yonde kaydirilacak icerik varken aciliyor, liste kisa oldugunda
   hic gorunmuyor. */
.cartp .cartb{--solust:0;--solalt:0;
  -webkit-mask-image:linear-gradient(to bottom,
    rgba(0,0,0,calc(1 - var(--solust))) 0,
    #000 var(--r4),
    #000 calc(100% - var(--r4)),
    rgba(0,0,0,calc(1 - var(--solalt))) 100%);
  mask-image:linear-gradient(to bottom,
    rgba(0,0,0,calc(1 - var(--solust))) 0,
    #000 var(--r4),
    #000 calc(100% - var(--r4)),
    rgba(0,0,0,calc(1 - var(--solalt))) 100%)}
/* Alt yazinin olcusu de artboardtan geliyor, ayri kural yok. */

/* ---- CEKMECENIN KENDI CERCEVESI YOK ----
   Gulbin, 22 Eylul: "sepetin etrafinda cerceve olmasin."
   Cekmecenin sol kenarindaki hat kalkti. Panel yine sayfadan
   ayriliyor cunku arkasindaki perde koyu (rgba(3,12,17,.55)). */
.cartp{border-left:0}
/* Gulbin, 22 Eylul: "mini sepeti genislet biraz." 452 -> 520; satirda
   gorsel, metin yigini ve sag alt kosedeki sayac rahat duruyor.
   Mobilde 94vw sinirlamasi ayni kaliyor. */
.cartp{width:min(520px,94vw)}

/* ============ MINI SEPET SATIRI: CIZIMDEKI DUZEN ============
   Gulbin, 22 Eylul: sepet sayfasindaki satir icin cizim gonderdi,
   ardindan "mini sepette de boyle olacak."
   Ayni kurgu, dar kutuya gore: gorsel koyu mavi karenin icinde,
   sagda koseli parantezli ad, ozellik satiri, birim fiyat, TOPLAM
   etiketi ve iri tutar, altinda kupon cipi. Sayac kosede degil,
   metnin altinda kendi satirinda (panel 403 px, kosede yer yok).
   Olculer cizimin oranlari degil, mini sepetin kendi merdiveni. */
.cartp .cartrow{grid-template-columns:96px minmax(0,1fr);
  column-gap:var(--r2);row-gap:var(--r2);align-items:start}
/* Gulbin, 22 Eylul: once "urun resmi etrafinda cerceve olmayacak",
   sonra "urun cercevesi olmayacak, sen metin kucultebilirsin".
   Hem mobil.css'teki cizgi (border !important) hem de arkadaki koyu
   mavi kare kalkti: katalog gorselleri alfasiz ve duz beyaz zeminli,
   o kare ekranda urunun cercevesi gibi okunuyordu. Gorsel dogrudan
   beyaz zeminde. */
/* Kutu saydam; satira yayilmasi ekranda gorunmuyor, ise yarayan
   tarafi metin yigini uzadiginda gorselin dikeyde ortali kalmasi. */
.cartp .cartrow .th{grid-column:1;grid-row:1;align-self:stretch;
  width:96px;background:none;
  display:grid;place-items:center;overflow:hidden;
  border:0!important}
/* Katalog gorselleri alfasiz (VP8, duz beyaz zemin). %86'da
   durduklarinda arkadaki koyu mavi kare ince bir halka olarak
   goruluyor ve cerceve gibi duruyordu; gorsel kareyi tam
   dolduruyor. Cizimdeki gibi koyu zemin uzerinde duran urun
   icin gorsellerin saydam olmasi gerekiyor. */
.cartp .cartrow .th img{width:100%;height:100%;object-fit:contain}
.cartp .cartrow .nm{grid-column:2;grid-row:1;
  display:grid;justify-items:start;gap:2px;min-width:0}  /* bekci-muaf: satir ici optik pay */
/* Eski tasarimdan kalan ".cartp .cartrow .pz{grid-column:3}" kurali
   fiyati .nm izgarasinda ucuncu sutuna atiyor, olmayan sutunlari
   dogurup metni daraltiyordu (ad dort satira kiriliyordu). Yigin
   tek sutun: her oge kendi satirinda. */
.cartp .cartrow .nm > *{grid-column:auto;grid-row:auto}
.cartp .cartrow .nm .cad{font-size:13px;                 /* bekci-muaf: mini sepet olcusu */
  font-weight:var(--ag-baslik);line-height:1.15;
  text-transform:uppercase;color:var(--mavi-koyu);
  padding-right:var(--r3)}
.cartp .cartrow .nm .coz,
.cartp .cartrow .nm .cbir,
.cartp .cartrow .nm .ctop{font-size:9px;line-height:1.35;  /* bekci-muaf: mini sepet olcusu */
  text-transform:uppercase;color:var(--mavi-koyu)}
.cartp .cartrow .nm .ctop{margin-top:var(--r1)}
/* Tutar artik satirin en iri ogesi (cizimdeki gibi).
   Gulbin, 22 Eylul: "fiyat metinlere hizalanacak sola." Eski
   tasarimda fiyat satirin sag ucundaydi ve bunu ".cartrow .pz{
   margin-left:auto}" kurali yapiyordu; yigin duzende o kural
   fiyati digerlerinden 142 px sagda birakiyor, ustelik sayacin
   uzerine biniyordu. */
/* Gulbin, 22 Eylul: "ucret basliktan buyuk olmus, ayni olacaklar."
   Ad 13, tutar 17 idi; tutar da ada esitlendi, agirligi kaldi. */
.cartp .cartrow .nm .pz{margin-left:0;justify-self:start;
  font-size:13px;                                         /* bekci-muaf: ad ile ayni */
  font-weight:var(--ag-baslik);line-height:1;
  display:flex;align-items:baseline;gap:var(--r1)}
.cartp .cartrow .nm .pz s{font-size:10px}                 /* bekci-muaf: mini sepet olcusu */
/* Kupon cipi: urun sayfasindaki indirim rozetiyle ayni kalip. */
.cartp .cartrow .nm .ckup{margin-top:var(--r0);
  display:flex;align-items:center;gap:var(--r1);flex-wrap:wrap}
.cartp .cartrow .nm .ckup em{font-style:normal;
  background:var(--green);color:var(--mavi-koyu);
  font-size:9px;font-weight:var(--ag-ince);              /* bekci-muaf: mini sepet olcusu */
  line-height:1;padding:.55em .8em;text-transform:uppercase;
  white-space:nowrap}
.cartp .cartrow .nm .ckup i{font-style:normal;font-size:9px;   /* bekci-muaf: mini sepet olcusu */
  text-transform:uppercase;color:var(--mavi-koyu)}
/* Gulbin, 22 Eylul: "mini sepette tasarim duzgun cikmasi icin metin
   ve quantity kucultebilirsin."
   Sayac kuculunce cizimdeki yerine, kutunun sag alt kosesine
   oturuyor; metin yigini artik altina degil yanina geciyor. Kupon
   satiri sayacin uzerine binmesin diye o kadar sag pay aliyor. */
.cartp .cartrow{row-gap:0}
.cartp .cartrow .qty{position:absolute;right:var(--r2);bottom:var(--r2);
  grid-column:auto;grid-row:auto;margin:0;width:108px;min-height:34px}
.cartp .cartrow .qty button{width:30px;height:34px;font-size:12px}  /* bekci-muaf: mini sepet olcusu */
.cartp .cartrow .qty > span{min-width:40px;font-size:11px}          /* bekci-muaf: mini sepet olcusu */
/* Sag alt kosedeki sayacin seridi butun yigin icin ayriliyor;
   yalniz kupon satirina pay vermek yetmiyordu, cip ve kazanc
   cumlesi sayacin uzerine biniyordu (olculdu: 31 px bindirme). */
.cartp .cartrow .nm{padding-right:124px}                            /* bekci-muaf: sayac payi */

/* Gulbin, 22 Eylul: "sepet altindaki cizgi kalksin."
   Listeyi alt blok'tan ayiran hat (.cartf border-top) kalkti;
   ayrimi zaten bosluk ve kaydirmadaki solma yapiyor. */
.cartp .cartf{border-top:0!important}


/* ---- BUTUN ARALIKLAR URUNLER ARASI KADAR ----
   Gulbin, 22 Eylul: "hepsinin araligi urunlerin arasindaki aralik
   kadar olsun." Urun satirlari arasi --r12 (12 px); kargo kutusu,
   liste ve capraz satis seridi de ayni araligi kullaniyor. */
/* Olculdu: satirlar arasi 24 cikiyordu, cunku .cartb bir izgara ve
   kendi gap'i --r3. Aralik tek yerden veriliyor: izgara gap'i
   --r12, satirin kendi alt boslugu sifir. */
.cartp .cartb{padding:0 var(--r3) var(--r3);gap:var(--r12)}
.cartp .freeb{padding:var(--r12) var(--r3)}
.cartp .cartrow{margin:0}
/* Gulbin, 22 Eylul: "bunlar da lazim olur kismi biraz daha asagida
   olabilir, ayri bir alan oldugu icin." Urun satirlari arasi --r12
   (12); capraz satis seridi ayri bir bolum oldugu icin onun ustunde
   iki kati bosluk var. */
.cartp .xs{padding-top:var(--r12);margin-top:0}

/* ---- CAPRAZ SATIS SERIDI PANELIN SAG KENARINA KADAR ----
   Gulbin, 22 Eylul: "kesilmesin burasi, sayfanin en sagindan
   baslasin."
   Serit .cartb'nin ic dolgusunun icinde kaliyordu, son kart o
   dolgunun kenarinda kesiliyor ve kirik gibi duruyordu. Serit artik
   panelin iki kenarina kadar uzaniyor; baslik, aciklama ve oklar
   kendi dolgusunu geri aliyor, kartlar ise ilk kart icerik
   hizasindan baslayip son kart kenara kadar kayabiliyor. */
.cartp .xs{margin-left:calc(-1 * var(--r3));
  margin-right:calc(-1 * var(--r3))}
.cartp .xs h5,.cartp .xs .hint{padding-left:var(--r3);
  padding-right:var(--r3)}
.cartp .xs .xnav.sag{right:var(--r3)}
.cartp .xs .xnav.sol{right:calc(var(--r3) + 34px)}
.cartp .xs .xrail{padding:2px var(--r3);
  scroll-padding-left:var(--r3)}

/* ---- ARALIKLAR 1,5 KAT ----
   Gulbin, 22 Eylul: "aralarindaki bosluklari 1,5 kat buyutsene."
   Mini sepetin aralik ritmi topluca olceklendi, oran korunuyor:
   kutular arasi 12 -> 18, capraz satis seridinin ustu 24 -> 36,
   seritteki kartlar arasi 12 -> 18. */
.cartp .cartb{gap:18px}                    /* bekci-muaf: 1,5 kat --r12 */
/* Gulbin, 22 Eylul: "kargo ilerleme kutusu daha yukarida olsun,
   sepetin ustteki boslugu kadar altinda boslugu olsun, kargo kutusu
   da oradan baslasin."
   Olculdu: [ SEPET ] harflerinin ustunde 32 px, altinda 50 px vardi.
   Farki kutunun ust dolgusu yapiyordu; sifirlaninca alt bosluk da
   32'ye indi ve kutu tam oradan basliyor. Alt bosluk (listeye olan
   aralik) 18'de kaliyor. */
.cartp .freeb{padding:0 var(--r3) 18px}    /* bekci-muaf: 1,5 kat --r12 */
.cartp .xs{padding-top:36px}               /* bekci-muaf: 1,5 kat --r3 */
.cartp .xs .xrail{gap:18px}                /* bekci-muaf: 1,5 kat --r12 */

/* Gulbin, 22 Eylul: "'Bunlar da lazim olur' ve 'Odemeye gec' sepet
   yazisi boyutunda olsun."
   [ SEPET ] basligi 17 px ve baslik agirligi. Serit basligi 12'den
   17'ye cikti; dugmenin yazisi zaten 17 idi ama ince agirliktaydi,
   o da baslik agirligina alindi. Tutar zaten ayni olcude. */
.cartp .xs h5{font-size:var(--f3)}
.cartp .cartf .go span{font-weight:var(--ag-baslik)}

/* Gulbin, 22 Eylul: "oklar bunlar da lazim olura hizalansin."
   Oklar seridin ust dolgusunun uzerinde, basligin ustunde
   kaliyordu; artik basligin satiriyla ayni eksende. */
.cartp .xs .xnav{top:calc(36px + (17px - 26px) / 2)}  /* bekci-muaf: baslik ekseni */

/* ---- BOS SEPET: SERIT DIPTE ----
   Gulbin, 22 Eylul: "ya da gitmesin, en alta hizala."
   .cartb bir izgara; bos sepette satirlar iki uca yaslaniyor, yani
   mesaj ustte, capraz satis seridi panelin dibinde kaliyor. */
.cartp .cartb:has(.cartempty){align-content:space-between}

/* ---- SERIDIN ALT PAYI SOLDAKI KADAR ----
   Gulbin, 22 Eylul: "soldaki bosluk kadar kalsin altta da bosluk."
   Olculdu: sol 24, alt 30 (listenin 24'u + rayin 2'si + seridin 4'u).
   Ustelik bos sepette .cartf bos oldugu halde kendi dolgusuyla 48 px
   daha yer kapliyordu. Serit payi sifirlandi, listenin alt dolgusu
   rayin 2 pikselini hesaba katiyor, bos alt blok da gizleniyor. */
.cartp .xs{padding-bottom:0}
.cartp .cartb{padding-bottom:calc(var(--r3) - 2px)}
.cartp .cartf:empty{display:none}

/* ---- MOBILDE KAPAT DUGMESI ----
   Gulbin, 22 Eylul: mobil sepette carpi "[ X ]" diye cerceveli ve
   koseli parantezli cikiyordu. Iki eski kural yuzunden:
   mobil.css "#cartx::before/::after" ile koseli parantez ekliyor
   (o kural dugme "Kapat" YAZISI iken dogruydu) ve
   ".carth button{border:...!important}" cerceve ciziyor.
   Ikisi de bu dugme icin geri aliniyor; carpi kendi basina duruyor. */
#cartx::before,#cartx::after{content:none}
.cartp .carth .cartx{border:0!important;background:none!important;
  padding:0!important;margin:-10px!important;
  min-height:0!important;width:44px;height:44px;
  display:grid!important;place-items:center}

/* ---- MOBILDE SATIR ----
   Gulbin, 22 Eylul: mobilde sayac kupon cipinin ustune biniyordu.
   Panel 375 px'e dustugunde sag alt kosede sayaca yer kalmiyor;
   sayac metnin altina, kendi satirina geciyor ve metin yigini
   sadece carpi kadar sag pay birakiyor. Gorsel de kuculuyor. */
@media(max-width:820px){
  .cartp .cartrow{grid-template-columns:80px minmax(0,1fr);
    column-gap:var(--r12);row-gap:var(--r12)}
  .cartp .cartrow .th{width:80px}
  .cartp .cartrow .nm{padding-right:var(--r4)}
  .cartp .cartrow .qty{position:static;grid-column:1/-1;grid-row:2;
    justify-self:start;margin:0}
}

/* KLYAMA-SON:MINI SEPET: KART SATIR VE ALT BLOK */