/* =====================================================================
   ASR VİNÇ — satış modülü (formlar, yedek parça, sepet) ek stilleri
   Tasarım (style.css) değiştirilmez; yalnız tasarımda karşılığı olmayan
   durumlar: gönderim mesajları, KVKK onayı, hatalı alan, stok türleri,
   sepet satırı görseli, onay penceresindeki WhatsApp düğmesi.
   ===================================================================== */

/* ---- form mesajı (başarılı / hatalı) */
.formMsg{margin:0;padding:12px 14px;font-size:13px;line-height:1.6;border-left:3px solid var(--basari);background:var(--basariZemin);color:var(--basariMetin)}
.formMsg.err{border-left-color:var(--hata);background:var(--hataZemin);color:var(--hataMetin)}
.formMsg[hidden]{display:none}
.formMsg:focus{outline:2px solid var(--metinGuclu);outline-offset:2px}
.formMsg b{font-weight:700}
.cartForm .formMsg{margin-top:16px}

/* ---- form: KVKK ve onay kutuları (etiket satır içi) */
.form .formKvkk{display:flex;gap:10px;align-items:flex-start}
.form .formKvkk input{width:17px;height:17px;flex:0 0 17px;margin:2px 0 0;padding:0;accent-color:var(--metinGuclu)}
.form .formKvkk label{display:block;font-size:12px;letter-spacing:0;line-height:1.6;color:var(--a-555555)}
.formKvkk a,.cartForm .consent a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.form .formKvkk.hatali label,.cartForm .consent.bad label{color:var(--hata)}

/* ---- hatalı alan */
.form label.hatali input,.form label.hatali textarea,.form label.hatali select{border-color:var(--hata)}
.form label.hatali{color:var(--hata)}

/* ---- tek başına form bloğu */
.formSec .formWrap{max-width:760px}
.formSec.genis .formWrap{max-width:none}

/* ---- vitrin: fiyat eki, stok türleri */
.shopKdv{font-size:12px;font-weight:600;color:var(--a-6b6d6f);letter-spacing:0}
.shopStock.s-siparis{color:var(--uyari)}
.shopStock.s-siparis:before{background:var(--uyariNokta)}
.shopStock.s-yok{color:var(--hata)}
.shopStock.s-yok:before{background:var(--hata)}
.shopQty input{text-align:center}
.shopCart .shopCartList li span{min-width:0;overflow-wrap:anywhere}

/* ---- sepet satırı görseli */
.cartThumb img{width:100%;height:100%;object-fit:cover;display:block}
.cartItem .shopQty{width:max-content}
.cartName{overflow-wrap:anywhere}

/* ---- onay penceresi */
.siparisOnay .modalBox{max-height:calc(100vh - 40px);overflow:auto}
.siparisOnay .modalBox:focus{outline:none}
.btn.waBtn{background:#1f9d55 !important;border-color:#1f9d55 !important;color:#fff !important;display:inline-flex}
.btn.waBtn:hover{background:#178246 !important;border-color:#178246 !important}
.modalBank b{overflow-wrap:anywhere}

@media(max-width:560px){
  .cartItem{grid-template-columns:56px minmax(0,1fr) auto;row-gap:10px}
  .cartItem .cartThumb{grid-row:1/3;grid-column:1;align-self:start}
  .cartItem>div:nth-child(2){grid-row:1;grid-column:2}
  .cartItem .cartDel{grid-row:1;grid-column:3;justify-self:end}
  .cartItem .shopQty{grid-row:2;grid-column:2}
  .cartItem .cartPrice{grid-row:2;grid-column:3;text-align:right}
}

/* ---- yalnız ekran okuyucu (duyurular) */
.satisSr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;margin:0;padding:0}

/* ---- mobil alt bar varken sepet düğmesi ve paneli barın üstünde kalsın */
@media(max-width:1239px){
  body.mobilBarVar .shopCartFab{bottom:calc(92px + env(safe-area-inset-bottom))}
  body.mobilBarVar .shopCart{bottom:calc(148px + env(safe-area-inset-bottom));max-height:calc(100vh - 260px);overflow:auto}
}

/* ---- stokta olmayan parça: sepete eklenemez */
.shopFoot .shopBtn.shopBtnYok,.shopFoot .shopBtn.shopBtnYok:hover{background:var(--a-eceeed) !important;border-color:var(--a-d9dcdb) !important;color:var(--a-7d8385) !important;cursor:not-allowed}
