/* FreshLane V17 — checkout */
#cart-modal .modal-content:has(#checkout-step.active) {
  width: min(1180px, calc(100% - 32px)) !important;
  max-height: 94vh !important;
  padding: 34px !important;
  border: 1px solid rgba(255,255,255,.75) !important;
  border-radius: 34px !important;
  background:
    radial-gradient(circle at 98% 2%, rgba(218,239,188,.28), transparent 20rem),
    #f8f9f5 !important;
  box-shadow: 0 34px 100px rgba(13,38,23,.21) !important;
}
#checkout-step .modal-header { margin-bottom: 20px !important; }
#checkout-step .modal-header h2 { font-size: clamp(33px,4vw,48px) !important; line-height: .98 !important; letter-spacing: -.06em !important; }
#checkout-step .manager-note {
  margin: 0 0 18px !important;
  padding: 14px 16px !important;
  border: 1px solid rgba(49,90,64,.08) !important;
  border-radius: 18px !important;
  background: linear-gradient(135deg,#edf4e8,#f7f9f4) !important;
}
#checkout-step .manager-note-icon { color:#173a24 !important; background:#dff3ad !important; }

.checkout-layout-v17 {
  display: grid;
  grid-template-columns: minmax(0,1.3fr) minmax(320px,.7fr);
  gap: 18px;
  align-items: start;
}
.checkout-main-column-v17 { display:grid; gap:12px; min-width:0; }
.checkout-panel-v17 {
  padding: 19px;
  border: 1px solid rgba(32,61,40,.08);
  border-radius: 22px;
  background: rgba(255,255,255,.84);
  box-shadow: 0 10px 30px rgba(23,46,31,.035);
}
.checkout-panel-head-v17 { margin-bottom:17px; display:flex; align-items:center; gap:12px; }
.checkout-panel-head-v17 > span {
  width:35px;
  height:35px;
  flex:0 0 35px;
  display:grid;
  place-items:center;
  border-radius:12px;
  color:#234832;
  background:#dff3ad;
  font-size:9px;
  font-weight:900;
}
.checkout-panel-head-v17 strong { display:block; color:#172119; font-size:14px; letter-spacing:-.025em; }
.checkout-panel-head-v17 small { display:block; margin-top:3px; color:#8a938b; font-size:8px; }
.checkout-fields-grid-v17,.checkout-address-grid-v17 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }
.checkout-address-grid-v17 { grid-template-columns:minmax(150px,.6fr) minmax(0,1.4fr); }
.checkout-saved-address-v17 { margin-bottom:11px !important; }
#checkout-step .form-group { margin:0 !important; }
#checkout-step .form-group label { margin-bottom:7px !important; color:#39463c !important; font-size:10px !important; font-weight:800 !important; }
#checkout-step .form-group input,
#checkout-step .form-group select,
#checkout-step .form-group textarea {
  min-height:50px !important;
  padding:0 14px !important;
  border:1px solid rgba(35,65,43,.10) !important;
  border-radius:15px !important;
  background:#f5f7f3 !important;
  color:#172119 !important;
  font-size:12px !important;
  outline:none !important;
}
#checkout-step .form-group textarea { min-height:84px !important; padding-top:13px !important; resize:vertical; }
#checkout-step .form-group input:focus,
#checkout-step .form-group select:focus,
#checkout-step .form-group textarea:focus { border-color:rgba(49,90,64,.38) !important; background:#fff !important; box-shadow:0 0 0 4px rgba(49,90,64,.07) !important; }
#customer-city { font-weight:800 !important; color:#234832 !important; }
#checkout-step .delivery-fields { margin:0 !important; gap:11px !important; }
.checkout-comment-panel-v17 { background:linear-gradient(145deg,#f6f2e8,#fff) !important; }

.checkout-summary-column-v17 {
  position:sticky;
  top:0;
  padding:20px;
  display:grid;
  gap:13px;
  border-radius:24px;
  color:#fff;
  background:
    radial-gradient(circle at 95% 0,rgba(223,243,173,.20),transparent 13rem),
    linear-gradient(150deg,#315b41,#173a24);
  box-shadow:0 20px 46px rgba(24,62,39,.18);
}
#checkout-step .checkout-summary-column-v17 .promo-box,
#checkout-step .checkout-summary-column-v17 .bonus-checkout-box {
  margin:0 !important;
  padding:15px !important;
  border:1px solid rgba(255,255,255,.13) !important;
  border-radius:17px !important;
  background:rgba(255,255,255,.08) !important;
}
#checkout-step .checkout-summary-column-v17 label { color:rgba(255,255,255,.78) !important; }
#checkout-step .promo-row input,
#checkout-step .bonus-checkout-box input { color:#172119 !important; background:#fff !important; }
#checkout-step .promo-row button,
#checkout-step .bonus-primary-btn,
#checkout-step .bonus-secondary-btn { border-color:rgba(255,255,255,.15) !important; color:#173a24 !important; background:#dff3ad !important; }
#checkout-step .promo-message,#checkout-step .bonus-checkout-box small { color:rgba(255,255,255,.68) !important; }
#checkout-step .checkout-price-breakdown {
  margin:0 !important;
  padding:16px 5px 4px !important;
  border:0 !important;
  background:transparent !important;
}
#checkout-step .checkout-price-row { color:rgba(255,255,255,.67) !important; border-color:rgba(255,255,255,.10) !important; }
#checkout-step .checkout-price-row strong { color:#fff !important; }
#checkout-step .checkout-price-row.discount-row strong,
#checkout-step .checkout-price-row.bonus-row strong { color:#dff3ad !important; }
#checkout-step .checkout-price-row.total { margin-top:8px !important; padding-top:17px !important; color:#fff !important; }
#checkout-step .checkout-price-row.total strong { color:#dff3ad !important; font-size:25px !important; }
#checkout-step .checkout-form-actions { margin:1px 0 0 !important; display:grid !important; grid-template-columns:.65fr 1.35fr; gap:8px !important; }
#checkout-step .checkout-form-actions button { min-height:51px !important; border-radius:999px !important; }
#checkout-step #back-to-cart { border-color:rgba(255,255,255,.16) !important; color:#fff !important; background:rgba(255,255,255,.08) !important; }
#checkout-step #submit-order-btn { color:#173a24 !important; background:#dff3ad !important; box-shadow:0 11px 27px rgba(7,27,15,.17) !important; }
#checkout-step #submit-order-btn:hover { background:#e8f8c4 !important; }

@media(max-width:850px) {
  #cart-modal .modal-content:has(#checkout-step.active) { width:calc(100% - 18px) !important; padding:24px !important; }
  .checkout-layout-v17 { grid-template-columns:1fr; }
  .checkout-summary-column-v17 { position:static; }
}
@media(max-width:600px) {
  #cart-modal .modal-content:has(#checkout-step.active) { width:calc(100% - 10px) !important; max-height:97vh !important; padding:18px 13px 22px !important; border-radius:25px !important; }
  #checkout-step .modal-header h2 { font-size:31px !important; }
  #checkout-step .manager-note { padding:12px !important; }
  .checkout-main-column-v17 { gap:9px; }
  .checkout-panel-v17 { padding:15px; border-radius:19px; }
  .checkout-fields-grid-v17,.checkout-address-grid-v17,.delivery-fields { grid-template-columns:1fr !important; }
  .checkout-panel-head-v17 { margin-bottom:14px; }
  .checkout-summary-column-v17 { padding:17px; border-radius:21px; }
  #checkout-step .checkout-form-actions { grid-template-columns:1fr !important; }
  #checkout-step #submit-order-btn { grid-row:1; }
  #checkout-step #back-to-cart { grid-row:2; }
}
