/* ============================================================
   Košík — design/Shop - Kosik.dc.html (desktop)
            Shop - Mobil.dc.html (mobil, karta „Košík")
   Tokeny: main.css :root (handoff §2)
   ============================================================ */

.cart-page{padding:40px var(--pad-x) 64px;display:flex;flex-direction:column;gap:22px}

/* ---------- hlavička stránky ---------- */
.cart-head{display:flex;align-items:baseline;gap:14px}
.cart-head__title{font:800 42px var(--font-sans);letter-spacing:-.035em;color:var(--c-ink)}
.cart-head__count{font:500 12px var(--font-mono);color:var(--c-muted)}
.cart-head__continue{margin-left:auto;font:500 12px var(--font-mono);color:var(--c-ink)}
.cart-head__continue:hover{color:var(--c-red)}

/* ---------- lišta dopravy zdarma ---------- */
.cart-freeship{border:1px solid var(--c-line);border-radius:var(--r-md);padding:14px 18px;display:flex;flex-direction:column;gap:9px}
.cart-freeship__label{font:500 12px var(--font-mono);letter-spacing:.04em;color:var(--c-ink)}
.cart-freeship__label--ok{color:var(--c-green)}
.cart-freeship__label .woocommerce-Price-amount{font:inherit;color:inherit}
.cart-freeship__bar{height:4px;background:var(--c-line);border-radius:2px}
.cart-freeship__fill{height:4px;background:var(--c-green);border-radius:2px}

/* ---------- layout ---------- */
.cart-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:32px;align-items:start}
.cart-left{display:flex;flex-direction:column}

/* skryté nativní tlačítko update_cart (submit přes Enter / JS stepper) */
.cart-form__update{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;padding:0}

/* ---------- položka ---------- */
.cart-items{display:flex;flex-direction:column}
.cart-item{display:flex;gap:20px;padding:22px 0;border-bottom:1px solid var(--c-line)}
.cart-item__thumb{width:104px;height:120px;flex:none;border:1px solid var(--c-line);border-radius:var(--r-md);overflow:hidden}
.cart-item__thumb a{display:block;width:100%;height:100%}
.cart-item__thumb img{width:100%;height:100%;object-fit:cover}
.cart-item__info{flex:1;display:flex;flex-direction:column;gap:4px}
.cart-item__name{font:700 18px var(--font-sans);letter-spacing:-.01em;color:var(--c-ink)}
.cart-item__name a{color:inherit}
.cart-item__meta{font:500 11.5px var(--font-mono);color:var(--c-muted);text-transform:uppercase}
.cart-item__qty{display:flex;border:1.5px solid var(--c-ink);border-radius:var(--r-sm);align-items:center;width:max-content;margin-top:10px}
.cart-item__qty-btn{padding:6px 14px;font:600 15px var(--font-sans);color:var(--c-ink);line-height:normal}
.cart-item__qty-input,
.cart-item__qty-value{font:700 14px var(--font-sans);color:var(--c-ink);text-align:center}
.cart-item__qty-input{border:0;background:none;width:30px;padding:0;-moz-appearance:textfield;appearance:textfield}
.cart-item__qty-input::-webkit-outer-spin-button,
.cart-item__qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.cart-item__qty--fixed{padding:6px 14px}
.cart-item__aside{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between}
.cart-item__price{font:700 16px var(--font-sans);color:var(--c-ink);white-space:nowrap}
.cart-item__remove{font:500 11px var(--font-mono);color:var(--c-muted);text-decoration:underline}
.cart-item__remove:hover{color:var(--c-red)}

/* ---------- věnování na kartičku ---------- */
.cart-dedication{padding:22px 0 0;display:flex;flex-direction:column;gap:10px}
.cart-dedication__label{font:500 11.5px var(--font-mono);letter-spacing:.08em;color:var(--c-ink)}
.cart-dedication__input{border:1px solid var(--c-line);border-radius:var(--r-md);padding:13px 15px;font:400 14px/1.5 var(--font-sans);color:var(--c-ink);min-height:52px;width:100%;resize:vertical;background:var(--c-surface)}
.cart-dedication__input::placeholder{color:var(--c-muted)}
.cart-dedication__input:focus{outline:none;border-color:var(--c-ink)}

/* ---------- kupón ---------- */
.cart-coupon{padding:22px 0 0;display:flex;flex-direction:column;gap:10px}
.cart-coupon__label{font:500 11.5px var(--font-mono);letter-spacing:.08em;color:var(--c-ink)}
.cart-coupon__row{display:flex;gap:10px}
.cart-coupon__input{flex:1;min-width:0;border:1px solid var(--c-line);border-radius:var(--r-md);padding:12px 15px;font:400 14px var(--font-sans);color:var(--c-ink);background:var(--c-surface)}
.cart-coupon__input::placeholder{color:var(--c-muted)}
.cart-coupon__input:focus{outline:none;border-color:var(--c-ink)}
.cart-coupon__btn{border:1.5px solid var(--c-ink);border-radius:var(--r-sm);color:var(--c-ink);font:700 13px var(--font-sans);padding:12px 20px;background:transparent;transition:background .15s,color .15s}
.cart-coupon__btn:hover{background:var(--c-ink);color:var(--c-amber-soft)}

/* ---------- souhrn ---------- */
.cart-summary{border:1px solid var(--c-line);border-radius:var(--r-md);padding:24px;display:flex;flex-direction:column;gap:14px;position:sticky;top:20px}
.cart-summary__title{font:800 22px var(--font-sans);letter-spacing:-.02em;color:var(--c-ink)}
.cart-summary__row{display:flex;justify-content:space-between;gap:12px;font:400 14px var(--font-sans);color:var(--c-text)}
.cart-summary__row .woocommerce-Price-amount{white-space:nowrap}
.cart-summary__row--coupon a{font:500 11px var(--font-mono);color:var(--c-muted);text-decoration:underline;margin-left:6px}
.cart-summary__row--coupon a:hover{color:var(--c-red)}
.cart-summary__free{color:var(--c-green);font-weight:700}
.cart-summary__total{border-top:1px solid var(--c-line);padding-top:14px;display:flex;justify-content:space-between;gap:12px;font:800 18px var(--font-sans);color:var(--c-ink)}
.cart-summary__total small{font:500 11px var(--font-mono);color:var(--c-muted)}
.cart-summary__checkout{display:block;background:var(--c-red);color:#fff;font:700 15px var(--font-sans);padding:16px 0;text-align:center;border-radius:var(--r-sm);transition:background .15s}
.cart-summary__checkout:hover{background:var(--c-ink);color:#fff}
.cart-summary__pay{font:500 10.5px var(--font-mono);letter-spacing:.04em;color:var(--c-muted);text-align:center}

/* ---------- prázdný košík (handoff §6.6) ---------- */
.cart-empty{padding:22px 0;display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.cart-empty__text{font:400 16px/1.6 var(--font-sans);color:var(--c-text)}

/* ---------- mobil (Shop - Mobil.dc.html, karta „Košík") ---------- */
@media (max-width:1024px){
	.cart-layout{grid-template-columns:1fr;gap:0}
	.cart-summary{position:static;margin-top:22px}
}

@media (max-width:560px){
	.cart-page{padding:16px var(--pad-x) 20px;gap:14px}
	.cart-head__title{font-size:28px}
	.cart-head__count{font-size:10px}
	.cart-head__continue{font-size:10px}
	.cart-freeship{padding:11px 14px;gap:7px}
	.cart-freeship__label{font-size:10px}
	.cart-freeship__bar,.cart-freeship__fill{height:3px}
	.cart-item{gap:12px;padding:14px 0}
	.cart-item__thumb{width:78px;height:92px;border-radius:var(--r-sm)}
	.cart-item__info{gap:3px}
	.cart-item__name{font-size:15px;letter-spacing:0}
	.cart-item__meta{font-size:9.5px}
	.cart-item__qty{margin-top:7px}
	.cart-item__qty-btn{padding:5px 12px;font-size:13px;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
	/* Pole mělo 30×15 px a 12 px písmo — nedalo se do něj trefit a iOS při
	   klepnutí zoomoval. Tlačítka +/− už 44 px měla, pole zůstalo pozadu. */
	.cart-item__qty-input,.cart-item__qty-value{font-size:16px;min-width:44px;min-height:44px;
		display:inline-flex;align-items:center;justify-content:center}
	.cart-item__qty-input{width:44px}
	.cart-item__price{font-size:14px}
	.cart-dedication,.cart-coupon{padding-top:14px}
	.cart-summary{border:0;padding:0;gap:7px;margin-top:14px}
	.cart-summary__title{font-size:18px}
	.cart-summary__row{font-size:13.5px}
	.cart-summary__total{font-size:16px;padding-top:9px}
	.cart-summary__checkout{font-size:14px;padding:15px 0;min-height:48px;margin-top:7px}
	.cart-summary__pay{font-size:9px}
}

/* ---------- mobil: doladění po auditu (9. 8. 2026) ---------- */
@media (max-width:1024px){
  .cart-dedication__input,
  .cart-coupon__input{font-size:16px}      /* pod 16 px iOS zoomuje */
  .cart-dedication__input{min-height:96px}
}
