/* ===========================================================
   COLLECTION — Sepet & Sipariş modülü  v6.0.0
   Katalog sayfasının mevcut CSS değişkenlerini kullanır.
   (--ink, --line, --muted, --card, --soft, --field, --shadow, --r-lg, --r)
   =========================================================== */

:root{
  --cart-w:420px;
  --wa:#25d366;
  --wa-dark:#128c4a;
}

/* ---- Ürün kartı: link + sepet butonu ayrımı ---- */
.item{position:relative}
.item-link{display:flex;flex-direction:column;flex:1 1 auto;color:inherit;text-decoration:none}
.item-foot{padding:0 14px 14px;margin-top:auto}
.item-add{
  width:100%;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:0 12px;border:1px solid var(--line);border-radius:100px;background:var(--field);
  color:var(--ink);font-size:12.5px;font-weight:650;letter-spacing:-.005em;cursor:pointer;
  transition:background .16s,border-color .16s,color .16s;-webkit-tap-highlight-color:transparent;
}
.item-add svg{width:16px;height:16px;flex:none}
.item-add:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.item-add.is-in{background:var(--ink);border-color:var(--ink);color:#fff}
.item-add.is-in .add-label:after{content:" ✓"}
.item-qty-badge{
  display:none;min-width:20px;height:20px;padding:0 6px;border-radius:999px;
  background:rgba(255,255,255,.22);font-size:11px;font-weight:700;line-height:20px;text-align:center;
}
.item-add.is-in .item-qty-badge{display:inline-block}
.item-add:active{transform:scale(.985)}

/* ---- Üst bardaki sepet butonu ---- */
.cart-btn{
  position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:40px;padding:0 15px;border-radius:13px;border:1px solid var(--line);background:#fff;
  color:var(--ink);font-size:12px;font-weight:650;cursor:pointer;transition:.15s;
  -webkit-tap-highlight-color:transparent;
}
.cart-btn:hover{border-color:#c9cbc2}
.cart-btn svg{width:18px;height:18px}
.cart-btn .cart-btn-text{display:inline}
.cart-count{
  position:absolute;top:-7px;right:-7px;min-width:20px;height:20px;padding:0 6px;border-radius:999px;
  background:var(--ink);color:#fff;font-size:11px;font-weight:700;line-height:20px;text-align:center;
  box-shadow:0 0 0 2px var(--bg);opacity:0;transform:scale(.6);transition:.18s;
}
.cart-count.on{opacity:1;transform:scale(1)}

/* ---- Katman ---- */
.cart-scrim{
  position:fixed;inset:0;z-index:90;background:rgba(24,25,22,.42);backdrop-filter:blur(2px);
  opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s;
}
.cart-scrim.on{opacity:1;visibility:visible}

/* ---- Çekmece ---- */
.cart-drawer{
  position:fixed;top:0;right:0;bottom:0;z-index:100;width:min(var(--cart-w),100%);
  background:var(--bg);border-left:1px solid var(--line);
  display:flex;flex-direction:column;
  transform:translateX(102%);transition:transform .3s cubic-bezier(.32,.72,0,1);
  box-shadow:-18px 0 50px rgba(24,25,22,.10);
}
.cart-drawer.on{transform:translateX(0)}

.cart-head{
  flex:none;display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:18px 18px 14px;border-bottom:1px solid var(--line);
  padding-top:calc(18px + env(safe-area-inset-top));
}
.cart-head h2{font-size:19px;font-weight:600;letter-spacing:-.02em}
.cart-head .kicker{margin-bottom:5px}
.cart-close{
  width:38px;height:38px;flex:none;border-radius:14px;border:1px solid var(--line);background:#fff;
  color:var(--ink);display:grid;place-items:center;cursor:pointer;transition:.15s;
}
.cart-close:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.cart-close svg{width:17px;height:17px}

.cart-body{flex:1 1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:14px 16px 6px}

.cart-empty{padding:52px 18px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:var(--r-lg)}
.cart-empty strong{display:block;color:var(--ink);font-size:15px;font-weight:600;margin-bottom:6px}
.cart-empty .btn{margin-top:16px}

.cart-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.cart-row{
  display:grid;grid-template-columns:66px 1fr;gap:12px;align-items:start;
  padding:11px;border:1px solid var(--line);border-radius:var(--r);background:var(--card);
}
.cart-thumb{width:66px;height:82px;border-radius:9px;overflow:hidden;background:var(--soft);flex:none}
.cart-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.cart-thumb .noimg-mini{width:100%;height:100%;display:grid;place-items:center;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.1em}
.cart-info{min-width:0}
.cart-cat{color:var(--muted);font-size:9.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.cart-name{margin:4px 0 0;font-size:13.5px;font-weight:600;line-height:1.35;letter-spacing:-.005em;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cart-name a:hover{text-decoration:underline}
.cart-row-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px}
.qty{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:10px;background:var(--field);overflow:hidden}
.qty button{
  width:32px;height:32px;border:0;background:transparent;color:var(--ink);font-size:16px;line-height:1;
  cursor:pointer;display:grid;place-items:center;transition:.15s;-webkit-tap-highlight-color:transparent;
}
.qty button:hover{background:var(--soft)}
.qty span{min-width:30px;text-align:center;font-size:13px;font-weight:700}
.cart-del{
  border:0;background:transparent;color:var(--muted);font-size:11.5px;font-weight:600;cursor:pointer;
  padding:6px 4px;border-radius:8px;transition:.15s;
}
.cart-del:hover{color:#b3261e}

/* ---- Müşteri bilgileri ---- */
.cart-form{margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:var(--r);background:var(--card)}
.cart-form .kicker{margin-bottom:11px}
.cart-field{display:grid;gap:6px;margin-bottom:10px}
.cart-field:last-child{margin-bottom:0}
.cart-field label{font-size:11px;font-weight:650;color:var(--muted)}
.cart-field input,.cart-field textarea{
  width:100%;border:1px solid var(--line);border-radius:14px;background:var(--field);
  padding:11px 12px;font-size:13px;outline:0;transition:.15s;resize:vertical;
}
.cart-field input:focus,.cart-field textarea:focus{border-color:#aeb1a8;background:#fff}
.cart-field textarea{min-height:74px}

/* ---- Alt aksiyonlar ---- */
.cart-foot{
  flex:none;border-top:1px solid var(--line);background:var(--card);
  padding:14px 16px calc(14px + env(safe-area-inset-bottom));
  display:grid;gap:9px;
}
.cart-sum{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:3px}
.cart-sum span{color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.cart-sum strong{font-size:15px;font-weight:650}
.cart-actions{display:grid;gap:9px}
.cart-actions .row2{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.cart-btn-wa{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:50px;
  border:0;border-radius:100px;background:var(--wa);color:#fff;font-size:14px;font-weight:700;
  cursor:pointer;text-decoration:none;transition:.15s;-webkit-tap-highlight-color:transparent;
}
.cart-btn-wa:hover{background:var(--wa-dark)}
.cart-btn-wa svg{width:20px;height:20px}
.cart-sec{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:46px;
  border:1px solid var(--line);border-radius:13px;background:#fff;color:var(--ink);
  font-size:12.5px;font-weight:650;cursor:pointer;transition:.15s;-webkit-tap-highlight-color:transparent;
}
.cart-sec:hover{border-color:#c9cbc2;background:var(--soft)}
.cart-sec svg{width:16px;height:16px;flex:none}
.cart-clear{
  border:0;background:transparent;color:var(--muted);font-size:11.5px;font-weight:600;
  cursor:pointer;padding:6px;border-radius:8px;transition:.15s;
}
.cart-clear:hover{color:#b3261e}
.cart-note-mini{margin:0;text-align:center;color:var(--muted);font-size:10.5px;line-height:1.5}

.cart-drawer[hidden]{display:flex}
.cart-locked{overflow:hidden}

/* ---- Bildirim ---- */
.cart-toast{
  position:fixed;left:50%;bottom:26px;transform:translateX(-50%) translateY(10px);
  background:var(--ink);color:#fff;padding:11px 18px;border-radius:999px;
  font-size:13px;font-weight:600;opacity:0;pointer-events:none;transition:.2s;z-index:140;
  max-width:min(88vw,420px);text-align:center;
}
.cart-toast.on{opacity:1;transform:translateX(-50%) translateY(0)}

/* ---- Mobil ---- */
@media(max-width:600px){
  .cart-drawer{width:100%;border-left:0}
  .cart-btn{padding:0 12px;min-height:38px}
  .cart-btn .cart-btn-text{display:none}
  .cart-body{padding:12px 13px 4px}
  .cart-foot{padding:12px 13px calc(12px + env(safe-area-inset-bottom))}
  .cart-row{grid-template-columns:58px 1fr;gap:10px;padding:10px}
  .cart-thumb{width:58px;height:72px}
  .item-foot{padding:0 12px 12px}
  .item-add{font-size:12px;min-height:40px}
  .cart-toast{bottom:18px}
}
@media(max-width:430px){
  .cart-actions .row2{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .cart-drawer,.cart-scrim,.cart-count,.cart-toast{transition:none}
}

/* ===========================================================
   SİPARİŞ FORMU (PDF / Yazdır)
   =========================================================== */
#order-sheet{display:none}

@media print{
  @page{size:A4;margin:14mm}
  body.is-printing > *{display:none!important}
  body.is-printing #order-sheet{display:block!important}
  body.is-printing{background:#fff!important}

  #order-sheet{
    font-family:Inter,"Helvetica Neue",Arial,sans-serif;color:#181916;font-size:11pt;line-height:1.5;
  }
  .os-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;
    padding-bottom:12px;border-bottom:2px solid #181916;margin-bottom:18px}
  .os-head img{height:34px;width:auto}
  .os-head h1{margin:0;font-size:18pt;font-weight:700;letter-spacing:-.02em}
  .os-head .os-meta{text-align:right;font-size:9pt;color:#5f625b;line-height:1.6}
  .os-cust{margin:0 0 16px;padding:11px 13px;border:1px solid #d9dad4;border-radius:6px;font-size:10pt}
  .os-cust b{display:inline-block;min-width:78px}
  table.os-table{width:100%;border-collapse:collapse;margin-bottom:16px}
  table.os-table th{
    text-align:left;font-size:8.5pt;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
    color:#5f625b;border-bottom:1px solid #181916;padding:7px 6px;
  }
  table.os-table td{padding:9px 6px;border-bottom:1px solid #e7e8e2;font-size:10pt;vertical-align:top}
  table.os-table td.os-c{text-align:center;white-space:nowrap}
  table.os-table .os-nm{font-weight:600}
  table.os-table .os-ct{display:block;font-size:8.5pt;color:#5f625b;margin-top:2px}
  .os-total{display:flex;justify-content:flex-end;gap:22px;font-size:11pt;font-weight:700;
    padding-top:6px;border-top:2px solid #181916}
  .os-note{margin-top:16px;padding:11px 13px;border:1px solid #d9dad4;border-radius:6px;font-size:10pt}
  .os-note b{display:block;margin-bottom:4px;font-size:8.5pt;letter-spacing:.08em;text-transform:uppercase;color:#5f625b}
  .os-foot{margin-top:26px;padding-top:10px;border-top:1px solid #e7e8e2;
    font-size:8.5pt;color:#5f625b;display:flex;justify-content:space-between;gap:14px}
  #order-sheet a{color:#181916;text-decoration:none}
}
