/* Cart Widget — Ürün sayfaları için bağımsız sepet bileşeni */
:root{--cw-green:#243814;--cw-gold:#c9a84c;--cw-cream:#f7f4ec;--cw-border:#e4dac2;--cw-text:#172111;--cw-muted:#7f734f}

/* Nav badge */
.cw-nav-cart{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;background:var(--cw-green);color:#fff;border-radius:6px;font:700 .85rem/1 Vazirmatn,Arial,sans-serif;text-decoration:none;transition:opacity .15s}
.cw-nav-cart:hover{opacity:.85}
.cw-nav-cart #cw-cart-count{background:var(--cw-gold);color:var(--cw-green);border-radius:999px;padding:2px 6px;font-size:.75rem;font-weight:900;min-width:18px;text-align:center}

/* Panel wrapper */
.cw-panel{background:var(--cw-cream);border-top:3px solid var(--cw-gold);padding:28px 16px 36px;margin:0}
.cw-panel-title{font:700 1.15rem/1.2 'Cormorant Garamond',Georgia,serif;color:var(--cw-green);margin:0 0 18px;text-align:center;letter-spacing:.02em}

/* Product grid */
.cw-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:900px;margin:0 auto}
@media(min-width:560px){.cw-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:900px){.cw-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Product card */
.cw-product-card{background:#fff;border:1px solid var(--cw-border);border-radius:10px;padding:14px 12px 12px;display:flex;flex-direction:column;gap:8px;cursor:pointer;transition:box-shadow .15s,border-color .15s}
.cw-product-card:hover{border-color:var(--cw-green);box-shadow:0 2px 10px rgba(36,56,20,.12)}
.cw-product-card.is-open{border-color:var(--cw-gold);background:#fffdf5}
.cw-product-name{font:700 .82rem/1.3 Vazirmatn,Arial,sans-serif;color:var(--cw-text)}
.cw-product-price{font:900 1.05rem/1 Vazirmatn,Arial,sans-serif;color:var(--cw-green)}

/* Size / shoe grid */
.cw-size-label{font:.7rem/1 Vazirmatn,Arial,sans-serif;font-weight:700;color:var(--cw-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px}
.cw-size-grid,.cw-shoe-grid{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:4px}
.cw-size-btn,.cw-shoe-btn{border:1.5px solid var(--cw-border);border-radius:5px;background:#fff;color:var(--cw-text);font:700 .75rem/1 Vazirmatn,Arial,sans-serif;padding:5px 7px;cursor:pointer;transition:border-color .12s,background .12s;min-width:34px;text-align:center}
.cw-size-btn:hover,.cw-shoe-btn:hover{border-color:var(--cw-green)}
.cw-size-btn.is-selected,.cw-shoe-btn.is-selected{border-color:var(--cw-gold);background:var(--cw-gold);color:var(--cw-green)}

/* Qty row */
.cw-qty-row{display:flex;align-items:center;gap:6px;margin-bottom:2px}
.cw-qty-label{font:.7rem/1 Vazirmatn,Arial,sans-serif;font-weight:700;color:var(--cw-muted);text-transform:uppercase;flex:1}
.cw-qty-dec,.cw-qty-inc{width:26px;height:26px;border:1.5px solid var(--cw-border);border-radius:5px;background:#fff;color:var(--cw-green);font:700 1rem/1 Vazirmatn,Arial,sans-serif;cursor:pointer;display:grid;place-items:center;transition:border-color .12s}
.cw-qty-dec:hover,.cw-qty-inc:hover{border-color:var(--cw-green)}
.cw-qty-val{font:700 .9rem/1 Vazirmatn,Arial,sans-serif;min-width:22px;text-align:center}

/* Add button */
.cw-add-btn{min-height:40px;border:0;border-radius:7px;background:var(--cw-green);color:#fff;font:800 .82rem/1 Vazirmatn,Arial,sans-serif;cursor:pointer;transition:opacity .15s;padding:0 8px;margin-top:auto}
.cw-add-btn:hover{opacity:.88}
.cw-add-btn:disabled{opacity:.45;cursor:not-allowed}

/* Type 3 redirect button */
.cw-redirect-btn{display:block;width:100%;min-height:40px;border:2px solid var(--cw-green);border-radius:7px;background:#fff;color:var(--cw-green);font:800 .82rem/1 Vazirmatn,Arial,sans-serif;text-decoration:none;display:grid;place-items:center;transition:background .15s,color .15s;margin-top:auto;text-align:center;padding:8px}
.cw-redirect-btn:hover{background:var(--cw-green);color:#fff}

/* Toast */
.cw-toast{position:fixed;bottom:20px;right:16px;z-index:9999;background:var(--cw-green);color:#fff;padding:12px 14px;border-radius:10px;font:700 .85rem/1.3 Vazirmatn,Arial,sans-serif;max-width:min(390px,calc(100vw - 28px));box-shadow:0 4px 16px rgba(0,0,0,.18);opacity:0;transform:translateY(8px);transition:opacity .2s,transform .2s;pointer-events:none;display:flex;align-items:center;gap:12px}
.cw-toast.is-visible{opacity:1;transform:none;pointer-events:auto}
.cw-toast-copy{display:flex;align-items:center;gap:4px;min-width:0;flex-wrap:wrap}
.cw-toast-icon{font-size:1.1em;margin-right:4px}
.cw-toast-action{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 12px;border-radius:999px;background:var(--cw-gold);color:var(--cw-green);font-weight:900;text-decoration:none;white-space:nowrap}

/* Sticky cart bar */
.cw-sticky-cart{position:fixed;left:50%;bottom:18px;z-index:9990;display:flex;align-items:center;justify-content:space-between;gap:18px;width:min(560px,calc(100vw - 28px));padding:12px 14px 12px 16px;border:1px solid rgba(201,168,76,.55);border-radius:14px;background:rgba(36,56,20,.96);color:#fff;box-shadow:0 14px 36px rgba(0,0,0,.26);transform:translate(-50%,110px);opacity:0;transition:transform .28s ease,opacity .28s ease;font-family:Vazirmatn,Arial,sans-serif;pointer-events:none}
.cw-sticky-cart.is-visible{transform:translate(-50%,0);opacity:1;pointer-events:auto}
.cw-sticky-cart strong{display:block;font-size:.94rem;line-height:1.15}
.cw-sticky-cart span{display:block;font-size:.78rem;color:#efe2b5;margin-top:2px}
.cw-sticky-cart a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 16px;border-radius:999px;background:var(--cw-gold);color:var(--cw-green);font-weight:900;text-decoration:none;white-space:nowrap}
body.cw-has-sticky-cart{padding-bottom:76px}
body[data-product-id] .cw-sticky-cart{display:none!important}
body[data-product-id].cw-has-sticky-cart{padding-bottom:0}
@media(max-width:560px){.cw-toast{right:10px;left:10px;bottom:88px;align-items:flex-start;flex-direction:column}.cw-toast-action{align-self:stretch}.cw-sticky-cart{bottom:calc(12px + env(safe-area-inset-bottom));width:calc(100vw - 20px);border-radius:12px}.cw-sticky-cart a{padding:0 12px;font-size:.84rem}}
