/* Checkout specific styling */
.checkout h1 { font-size:1.8rem; margin:1.2rem 0 .8rem; }
.checkout-grid { display:grid; gap:1.5rem; grid-template-columns:repeat(auto-fit,minmax(320px,1fr)); }
.panel { background: var(--color-bg-alt); padding:1.2rem 1.2rem 1.6rem; border:1px solid var(--color-border); border-radius: var(--radius-lg); box-shadow: var(--shadow-soft); }
.panel h2 { margin-top:0; font-size:1.25rem; }
.field { margin-bottom:.9rem; display:flex; flex-direction:column; }
.field.two { display:grid; grid-template-columns:1fr 1fr; gap:.9rem; }
.field label { font-size:.75rem; font-weight:600; letter-spacing:.6px; text-transform:uppercase; color: var(--color-text-light); margin-bottom:.3rem; }
.field input, .field textarea { padding:.65rem .75rem; border:1px solid var(--color-border); border-radius: var(--radius-md); font-size:.9rem; background:#fff; }
body.dark .field input, body.dark .field textarea { background:#2b261f; color:var(--color-text); }
.autofill-row { text-align:right; }

.order-items { list-style:none; margin:0 0 1rem; padding:0; max-height:260px; overflow:auto; }
.order-items li { display:flex; justify-content:space-between; align-items:center; padding:.5rem .6rem; border-bottom:1px dashed var(--color-border); font-size:.85rem; }
.order-items li:last-child { border-bottom:none; }
.order-items .qty { font-weight:600; }

.order-totals { font-size:.85rem; border-top:2px solid var(--color-border); padding-top:.6rem; }
.order-totals div { display:flex; justify-content:space-between; margin:.25rem 0; }
.order-totals .grand { font-weight:700; font-size:1rem; }

.coupon-row { display:flex; gap:.5rem; margin:.7rem 0 1rem; }
.coupon-row input { flex:1; padding:.65rem .7rem; border:1px solid var(--color-border); border-radius: var(--radius-md); }

.payment h3 { margin:1rem 0 .6rem; font-size:1rem; }
.pay-grid { display:grid; gap:.6rem; grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); }
.pay-btn { background: var(--color-bg); border:2px solid var(--color-primary); color: var(--color-primary-dark); font-size:.8rem; font-weight:600; padding:.85rem .5rem; border-radius: var(--radius-md); cursor:pointer; transition: var(--transition-base); }
.pay-btn[aria-pressed="true"], .pay-btn:hover { background: var(--color-primary); color:#fff; }
body.dark .pay-btn { background:#1c1a17; }

.actions-checkout { display:flex; flex-direction:column; gap:.6rem; margin-top:1.1rem; }
.place-order { font-size:1.05rem; padding:1rem; background: linear-gradient(90deg,#ff9100,#b45309); font-weight:700; }
.place-order:disabled { filter:grayscale(.7); opacity:.5; cursor:not-allowed; }
.wa-btn { text-align:center; }
.secure-note { font-size:.7rem; color:var(--color-text-light); margin:.4rem 0 0; text-align:center; }

@media (max-width:680px){
	.panel { padding:1rem; }
	.order-items { max-height:200px; }
	.place-order { font-size:1rem; }
}
