/* ==========================================================================
   cart-checkout-restyle.css
   StickyLabels.com — Cart & Checkout Pages
   
   Replaces ALL inline <style> blocks from cart.php, checkout.php, inc.cart.php.
   Includes base grid system + full redesign.
   Loaded AFTER footer includes to win cascade.
   ========================================================================== */

:root {
  --sl-green:#769938; --sl-green-dark:#5a7a28; --sl-green-light:#8fb044;
  --sl-gold:#E3A340; --sl-gold-dark:#c8882e;
  --sl-bg:#fafaf6; --sl-bg-card:#ffffff; --sl-bg-warm:#f5f3ec;
  --sl-text:#2c2c2c; --sl-text-mid:#5a5a5a; --sl-text-light:#8a8a8a;
  --sl-border:#e5e2d8; --sl-border-light:#eeebe3;
  --sl-radius:14px; --sl-radius-sm:10px;
  --sl-shadow-sm:0 1px 3px rgba(0,0,0,0.04),0 1px 2px rgba(0,0,0,0.06);
  --sl-shadow:0 4px 16px rgba(0,0,0,0.06),0 1px 3px rgba(0,0,0,0.04);
  --sl-tr:0.25s cubic-bezier(0.4,0,0.2,1);
  --sl-font:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
}


/* =========================================================================
   1. BASE GRID SYSTEM (was inline in cart.php/checkout.php)
   ========================================================================= */

*{-webkit-box-sizing:border-box;box-sizing:border-box;}
img{max-width:100%;vertical-align:middle;border:0;}

.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto;max-width:1100px;}
.row{display:flex;flex-wrap:wrap;margin-right:-15px;margin-left:-15px;}
.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-8,.col-9,.col-12,
.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-5,.col-sm-6,.col-sm-8,.col-sm-9,.col-sm-12,
.col-md-1,.col-md-2,.col-md-3,.col-md-5,.col-md-6,.col-md-9,.col-md-12,
.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-12,
.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-5,.col-xl-6,.col-xl-8,.col-xl-12
{position:relative;width:100%;min-height:1px;padding-right:15px;padding-left:15px;}
.col-1{flex:0 0 8.33%;max-width:8.33%;}
.col-2{flex:0 0 16.67%;max-width:16.67%;}
.col-3{flex:0 0 25%;max-width:25%;}
.col-4{flex:0 0 33.33%;max-width:33.33%;}
.col-5{flex:0 0 41.67%;max-width:41.67%;}
.col-6{flex:0 0 50%;max-width:50%;}
.col-8{flex:0 0 66.67%;max-width:66.67%;}
.col-9{flex:0 0 75%;max-width:75%;}
.col-12{flex:0 0 100%;max-width:100%;}
@media(min-width:576px){
  .col-sm-1{flex:0 0 8.33%;max-width:8.33%;}.col-sm-2{flex:0 0 16.67%;max-width:16.67%;}
  .col-sm-3{flex:0 0 25%;max-width:25%;}.col-sm-5{flex:0 0 41.67%;max-width:41.67%;}
  .col-sm-6{flex:0 0 50%;max-width:50%;}.col-sm-8{flex:0 0 66.67%;max-width:66.67%;}
  .col-sm-9{flex:0 0 75%;max-width:75%;}.col-sm-12{flex:0 0 100%;max-width:100%;}
}
@media(min-width:768px){
  .col-md-1{flex:0 0 8.33%;max-width:8.33%;}.col-md-2{flex:0 0 16.67%;max-width:16.67%;}
  .col-md-3{flex:0 0 25%;max-width:25%;}.col-md-5{flex:0 0 41.67%;max-width:41.67%;}
  .col-md-6{flex:0 0 50%;max-width:50%;}.col-md-9{flex:0 0 75%;max-width:75%;}
  .col-md-12{flex:0 0 100%;max-width:100%;}
}
@media(min-width:992px){
  .col-lg-1{flex:0 0 8.33%;max-width:8.33%;}.col-lg-2{flex:0 0 16.67%;max-width:16.67%;}
  .col-lg-3{flex:0 0 25%;max-width:25%;}.col-lg-5{flex:0 0 41.67%;max-width:41.67%;}
  .col-lg-6{flex:0 0 50%;max-width:50%;}.col-lg-7{flex:0 0 58.33%;max-width:58.33%;}
  .col-lg-8{flex:0 0 66.67%;max-width:66.67%;}.col-lg-12{flex:0 0 100%;max-width:100%;}
}
@media(min-width:1200px){
  .col-xl-1{flex:0 0 8.33%;max-width:8.33%;}.col-xl-2{flex:0 0 16.67%;max-width:16.67%;}
  .col-xl-3{flex:0 0 25%;max-width:25%;}.col-xl-5{flex:0 0 41.67%;max-width:41.67%;}
  .col-xl-6{flex:0 0 50%;max-width:50%;}.col-xl-8{flex:0 0 66.67%;max-width:66.67%;}
  .col-xl-12{flex:0 0 100%;max-width:100%;}
}
.d-flex{display:flex!important;}
.align-items-start{align-items:flex-start!important;}
.clearfix{clear:both;}
.clearfix::after{content:"";display:table;clear:both;}

/* Utility spacing */
.pt--60{padding-top:24px!important;}.pt--80{padding-top:24px!important;}
.pb--150{padding-bottom:48px!important;}
.mt--50{margin-top:20px!important;}
.mb--15{margin-bottom:10px!important;}
.mb--20{margin-bottom:12px!important;}
.mb--25{margin-bottom:12px!important;}
.mb--40{margin-bottom:16px!important;}
.mb--60{margin-bottom:24px!important;}

/* Respcol grid (cart layout) */
.respcol,.respcol2{display:grid;grid-template-columns:1fr;grid-gap:16px;padding:0;margin:0;list-style:none;}
.respcol li{margin-top:0!important;}
@media(min-width:768px){
  .respcol,.respcol2{grid-template-columns:2fr 1fr;}
  .gridres1_3{grid-column:1/1;}.gridres3_3{grid-column:2/2;}
}
.gridres1{grid-column:1/3;}.gridres2{grid-column:3/12;}
.gridres3{grid-column:1/2;}.gridres4{grid-column:1/4;}
.gridresnone{display:none;}


/* =========================================================================
   2. PAGE LEVEL
   ========================================================================= */

.page-content{background:var(--sl-bg)!important;}
.cart_area,.checkout_area{padding-top:20px!important;padding-bottom:48px!important;}

/* Kill the stray <br> after main */
.page-content > br{display:none!important;}


/* =========================================================================
   3. TYPOGRAPHY & LINKS
   ========================================================================= */

.cart_area,.checkout_area,.cart_area *,.checkout_area *,.cart *{font-family:var(--sl-font)!important;}

h2,h4{margin:0 0 10px;line-height:1.3;color:var(--sl-text)!important;-webkit-text-fill-color:var(--sl-text)!important;}
h2{font-size:22px!important;font-weight:700!important;}
h4{font-size:16px!important;font-weight:600!important;}
p{margin:0 0 8px;color:var(--sl-text-mid);font-size:14px;line-height:1.5;}

a{color:var(--sl-green)!important;text-decoration:none!important;transition:color var(--sl-tr);}
a:hover{color:var(--sl-green-dark)!important;text-decoration:none!important;}
a:visited{color:var(--sl-green)!important;}
a:focus{outline:none!important;}

.heading{font-family:var(--sl-font)!important;color:var(--sl-text)!important;font-weight:600!important;font-size:14px!important;line-height:1.3!important;margin:0!important;}


/* =========================================================================
   4. BASE FORM ELEMENTS
   ========================================================================= */

label{display:block;margin-bottom:4px;font-size:13px;font-weight:600;color:var(--sl-text-mid);}

input,select{
  width:100%;height:auto;padding:10px 14px;
  border:1.5px solid var(--sl-border)!important;border-radius:var(--sl-radius-sm)!important;
  font-family:var(--sl-font)!important;font-size:14px;color:var(--sl-text);
  background:var(--sl-bg-card)!important;line-height:1.5;
  transition:border-color var(--sl-tr);
}
input:focus,select:focus{border-color:var(--sl-green)!important;outline:none!important;box-shadow:0 0 0 3px rgba(118,153,56,0.1)!important;}
input:valid{border-color:var(--sl-border)!important;}

button{
  font-family:var(--sl-font)!important;cursor:pointer;border:none;
  background:none;line-height:1.5;text-transform:none;-webkit-appearance:button;
}
button:focus{outline:none!important;}

input[type="checkbox"],input[type="radio"]{width:auto!important;height:auto!important;padding:0!important;}


/* =========================================================================
   5. CART ITEM ROWS — tight, image left of details
   ========================================================================= */

/* Product row */
.cart_area .row[style*="border-bottom"],
.cart .row[style*="border-bottom"]{
  border-bottom:1px solid var(--sl-border-light)!important;
  padding:14px 0!important;margin:0!important;
  align-items:center;
}

/* Product image — clean, no card wrapper */
.cartim,.cart_area img.cartim,.cart img.cartim{
  border-radius:var(--sl-radius-sm)!important;
  border:none!important;box-shadow:none!important;
  max-width:120px!important;width:100%!important;
  display:block!important;
}

/* Column header labels */
.cart_area .col-md-2,.cart_area .col-md-3,.cart_area .col-md-1,
.cart .col-md-2,.cart .col-md-3,.cart .col-md-1{
  font-size:12px!important;color:var(--sl-text-light)!important;
  -webkit-text-fill-color:var(--sl-text-light)!important;
  line-height:1.3!important;padding-top:2px;padding-bottom:2px;
}

/* Bold values inside columns */
.cart_area span[style*="font-weight"],.cart span[style*="font-weight"]{
  color:var(--sl-text)!important;-webkit-text-fill-color:var(--sl-text)!important;
  font-weight:600!important;font-size:13px!important;
}

/* Quantity input in cart */
input#cartItem,input[class*="qty"]{
  width:65px!important;padding:6px 8px!important;
  font-size:15px!important;font-weight:600!important;text-align:center;
  height:auto!important;
}

/* Delete icon */
a[onclick*="deleteID"] img{opacity:0.4;transition:opacity var(--sl-tr);min-width:22px!important;max-width:22px!important;}
a[onclick*="deleteID"]:hover img{opacity:0.9;}

/* Design notes link */
a[onclick*="slideToggle"]{font-size:12px!important;font-weight:500!important;color:var(--sl-green)!important;}

/* Notes textarea */
.cart textarea,.cart_area textarea{
  border:1.5px solid var(--sl-border)!important;border-radius:8px!important;
  padding:8px 10px!important;font-family:var(--sl-font)!important;font-size:13px!important;
  color:var(--sl-text)!important;resize:vertical;width:100%;
}
.cart textarea:focus{border-color:var(--sl-green)!important;outline:none!important;}

/* Edit/eye overlay icon */
div[style*="position:absolute"] img[alt*="design"],
div[style*="position:absolute"] img[alt*="View"],
div[style*="position:absolute"] img[alt*="Edit"]{
  background:var(--sl-bg-card);border-radius:6px;padding:3px;
  box-shadow:var(--sl-shadow-sm);opacity:0.7;width:24px!important;
  transition:opacity var(--sl-tr);
}
a:hover div[style*="position:absolute"] img{opacity:1;}

/* "Add more labels" button */
.button.add-more{
  background:var(--sl-text)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
  border:none!important;border-radius:var(--sl-radius-sm)!important;
  padding:10px 24px!important;font-size:13px!important;font-weight:600!important;
  transition:all var(--sl-tr);box-shadow:var(--sl-shadow-sm);cursor:pointer;display:inline-block;
}
.button.add-more:hover{background:var(--sl-green-dark)!important;-webkit-text-fill-color:#fff!important;}

/* Separator */
div[style*="background-color:#ddd"]{background:var(--sl-border-light)!important;height:1px!important;margin:12px 0!important;}

/* Clearfix spacer between items */
.clearfix[style*="height:12px"]{height:4px!important;}


/* =========================================================================
   6. CART SUMMARY
   ========================================================================= */

.cart-summary{float:none!important;width:100%!important;}

.cart-summary-wrap{
  background:var(--sl-bg-card)!important;
  border:1.5px solid var(--sl-border-light)!important;
  border-radius:var(--sl-radius)!important;
  padding:18px!important;box-shadow:var(--sl-shadow-sm)!important;margin-bottom:10px!important;
}

.cart-summary-wrap h4{
  font-size:15px!important;font-weight:700!important;
  text-decoration:none!important;margin-bottom:14px!important;
  padding-bottom:10px;border-bottom:1.5px solid var(--sl-border-light);
}

.cart-summary-wrap p{
  font-size:13px!important;font-weight:500!important;color:var(--sl-text-mid)!important;
  -webkit-text-fill-color:var(--sl-text-mid)!important;
  line-height:1.4!important;margin-bottom:3px!important;
}
.cart-summary-wrap p span{float:right;color:var(--sl-text)!important;-webkit-text-fill-color:var(--sl-text)!important;font-weight:600!important;}

.cart-summary-wrap p.desc{font-size:11px!important;color:var(--sl-text-light)!important;-webkit-text-fill-color:var(--sl-text-light)!important;font-weight:400!important;margin:2px 0!important;}
.cart-summary-wrap p.spell{font-size:11.5px!important;line-height:1.3!important;}

/* Total */
.cart-summary-wrap h2{
  border-top:1.5px solid var(--sl-border)!important;
  padding-top:12px!important;margin-top:8px!important;
  font-size:20px!important;font-weight:700!important;
  color:var(--sl-green-dark)!important;-webkit-text-fill-color:var(--sl-green-dark)!important;
}
.cart-summary-wrap h2 span{color:var(--sl-green-dark)!important;-webkit-text-fill-color:var(--sl-green-dark)!important;float:right;}


/* =========================================================================
   7. DELIVERY OPTIONS
   ========================================================================= */

.deli{
  border:1.5px solid var(--sl-border-light)!important;border-radius:var(--sl-radius-sm)!important;
  padding:10px 12px!important;margin:5px 0!important;cursor:pointer;
  transition:all var(--sl-tr);background:var(--sl-bg-card)!important;
}
.deli:hover{border-color:var(--sl-green)!important;background:rgba(118,153,56,0.03)!important;}

/* Selected delivery — override inline bg:#90ca00 */
.deli[style*="background-color"]{
  background:linear-gradient(135deg,#f8fdf2,#f2f8e8)!important;
  border-color:var(--sl-green)!important;box-shadow:0 0 0 1px var(--sl-green)!important;
}
.deli p{color:var(--sl-text)!important;-webkit-text-fill-color:var(--sl-text)!important;font-size:13px!important;font-weight:600!important;margin-bottom:1px!important;}
.deli p span{font-weight:700!important;}
.deli .desc,.deli p.desc{color:var(--sl-text-light)!important;-webkit-text-fill-color:var(--sl-text-light)!important;font-size:11px!important;font-weight:400!important;}


/* =========================================================================
   8. ALL BUTTONS
   ========================================================================= */

a.brook-btn,button.brook-btn,
a.brook-btn.bk-btn-theme,button.brook-btn.bk-btn-theme{
  background:var(--sl-green)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
  font-family:var(--sl-font)!important;font-size:14px!important;font-weight:700!important;
  border:none!important;border-radius:var(--sl-radius-sm)!important;
  box-shadow:var(--sl-shadow-sm)!important;letter-spacing:0!important;
  text-transform:none!important;transition:all var(--sl-tr)!important;
  display:inline-block;text-align:center;white-space:nowrap;cursor:pointer;
}
a.brook-btn.btn-sd-size,button.brook-btn.btn-sd-size{
  padding:12px 28px!important;height:auto!important;line-height:1.5!important;
}
a.brook-btn:hover,button.brook-btn:hover{
  background:var(--sl-green-dark)!important;box-shadow:var(--sl-shadow)!important;
  transform:translateY(-2px)!important;
}

/* Checkout CTA */
.btn-essential{
  background:var(--sl-green)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
  border:none!important;border-radius:var(--sl-radius-sm)!important;
  font-family:var(--sl-font)!important;font-weight:700!important;font-size:15px!important;
  text-transform:none!important;box-shadow:var(--sl-shadow-sm)!important;
  padding:14px 24px!important;width:100%!important;display:block!important;
  transition:all var(--sl-tr)!important;margin:0!important;
}
.btn-essential:hover{background:var(--sl-green-dark)!important;box-shadow:var(--sl-shadow)!important;transform:none!important;}

/* Continue Shopping */
.cart .button,.cart_area .button{
  background:var(--sl-green)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
  border-radius:var(--sl-radius-sm)!important;padding:12px 28px!important;
  font-weight:700!important;font-size:14px!important;transition:all var(--sl-tr);
  box-shadow:var(--sl-shadow-sm);display:inline-block;cursor:pointer;
}
.cart .button:hover,.cart_area .button:hover{background:var(--sl-green-dark)!important;}


/* =========================================================================
   9. CHECKOUT FORM
   ========================================================================= */

.checkout-title{
  font-size:17px!important;font-weight:700!important;color:var(--sl-text)!important;
  text-decoration:none!important;margin-bottom:16px!important;padding-bottom:8px;
  border-bottom:1.5px solid var(--sl-border-light);
}

.checkout-form label{
  font-size:12px!important;font-weight:600!important;color:var(--sl-text-mid)!important;
  text-transform:none!important;margin-bottom:4px!important;
}

.checkout-form input,.checkout-form select,.checkout-form select.nice-select{
  margin-bottom:10px!important;
}

.checkout-form input[type="submit"],.account-submit{
  background:var(--sl-green)!important;color:#fff!important;border:none!important;
  border-radius:var(--sl-radius-sm)!important;font-weight:700!important;
  padding:12px 24px!important;cursor:pointer!important;transition:all var(--sl-tr)!important;
}
.checkout-form input[type="submit"]:hover{background:var(--sl-green-dark)!important;}


/* =========================================================================
   10. CHECKOUT ORDER SUMMARY
   ========================================================================= */

.checkout-cart-total{
  background:var(--sl-bg-card)!important;border:1.5px solid var(--sl-border-light)!important;
  border-radius:var(--sl-radius)!important;padding:20px!important;box-shadow:var(--sl-shadow-sm)!important;
}

.checkout-cart-total h4{font-size:15px!important;font-weight:700!important;text-decoration:none!important;line-height:1.4!important;}
.checkout-cart-total h4:first-child{margin-bottom:14px!important;padding-bottom:10px;border-bottom:1.5px solid var(--sl-border-light);}
.checkout-cart-total h4:last-child{margin-top:10px!important;padding-top:10px;border-top:1.5px solid var(--sl-border);color:var(--sl-green-dark)!important;font-size:18px!important;}
.checkout-cart-total h4 span{color:inherit!important;float:right;}

.checkout-cart-total ul{border-bottom:1px solid var(--sl-border-light)!important;padding:0!important;margin:0 0 10px!important;list-style:none;}
.checkout-cart-total ul li{font-size:13px!important;font-weight:500!important;color:var(--sl-text-mid)!important;margin-bottom:8px!important;line-height:1.4!important;}
.checkout-cart-total ul li span{color:var(--sl-text)!important;font-weight:600!important;float:right;}

.checkout-cart-total p{font-size:13px!important;color:var(--sl-text-mid)!important;-webkit-text-fill-color:var(--sl-text-mid)!important;border:none!important;margin-bottom:3px!important;line-height:1.3!important;}
.checkout-cart-total p span{color:var(--sl-text)!important;-webkit-text-fill-color:var(--sl-text)!important;font-weight:600!important;float:right;}
.checkout-cart-total p.desc{font-size:11px!important;color:var(--sl-text-light)!important;-webkit-text-fill-color:var(--sl-text-light)!important;font-weight:400!important;}

.checkout-cart-total .deli{line-height:1.3!important;padding:8px 10px!important;margin:3px 0!important;}


/* =========================================================================
   11. PAYMENT METHOD
   ========================================================================= */

.checkout-payment-method{
  background:var(--sl-bg-card)!important;border:1.5px solid var(--sl-border-light)!important;
  border-radius:var(--sl-radius)!important;padding:20px!important;box-shadow:var(--sl-shadow-sm)!important;
}

.StripeElement{border:1.5px solid var(--sl-border)!important;border-radius:var(--sl-radius-sm)!important;padding:12px 14px!important;background:var(--sl-bg-card)!important;box-shadow:none!important;height:auto!important;transition:border-color var(--sl-tr);}
.StripeElement--focus{border-color:var(--sl-green)!important;box-shadow:0 0 0 3px rgba(118,153,56,0.1)!important;}
.StripeElement--invalid{border-color:#dc2626!important;}

/* Radio buttons */
.single-method{margin-bottom:14px;}
.single-method input[type="radio"]+label{font-size:13px!important;color:var(--sl-text)!important;padding-left:28px!important;line-height:20px!important;}
.single-method input[type="radio"]+label::before{border:2px solid var(--sl-border)!important;width:18px!important;height:18px!important;border-radius:50%!important;}
.single-method input[type="radio"]:checked+label::before{border-color:var(--sl-green)!important;}
.single-method input[type="radio"]:checked+label::after{background:var(--sl-green)!important;width:8px!important;height:8px!important;left:5px!important;top:5px!important;}
.single-method p{font-size:12px!important;color:var(--sl-text-light)!important;margin-top:4px!important;line-height:1.4!important;}

/* Checkboxes */
.check-box input[type="checkbox"]+label,.checkout-form .check-box input[type="checkbox"]+label{font-size:13px!important;color:var(--sl-text)!important;}
.check-box input[type="checkbox"]+label::before,.checkout-form .check-box input[type="checkbox"]+label::before{border:2px solid var(--sl-border)!important;border-radius:4px!important;width:18px!important;height:18px!important;}
.check-box input[type="checkbox"]:checked+label::before{border-color:var(--sl-green)!important;}
.check-box input[type="checkbox"]:checked+label::after{color:var(--sl-green)!important;font-size:11px!important;line-height:18px!important;width:18px!important;}

#shipping-form{display:none;}

/* Billing fields toggle */
#billing-fields{transition:all 0.3s ease;overflow:hidden;}
#billing-fields .row{padding-top:8px;}


/* =========================================================================
   12. DISCOUNT COUPON
   ========================================================================= */

.discount-coupon h4{font-size:15px!important;text-decoration:none!important;margin-bottom:14px!important;}
.discount-coupon input{border-radius:var(--sl-radius-sm)!important;height:auto!important;padding:10px 14px!important;}


/* =========================================================================
   13. DESCRIPTION TEXT
   ========================================================================= */

p.desc{font-size:11.5px!important;color:var(--sl-text-light)!important;-webkit-text-fill-color:var(--sl-text-light)!important;line-height:1.4!important;font-weight:400!important;}

.cart-summary-button-group{margin-top:12px;}

/* Dispatch info text below checkout button */
.cart-summary-button-group ~ p.desc{margin-top:12px!important;}


/* =========================================================================
   14. RESPONSIVE
   ========================================================================= */

@media(max-width:768px){
  .cart_area,.checkout_area{padding-top:12px!important;padding-bottom:32px!important;}
  .cart-summary-wrap,.checkout-cart-total,.checkout-payment-method{padding:14px!important;}

  /* Stack cart image above details on mobile */
  .cart .col-3,.cart_area .col-3,.cart .col-sm-3,.cart_area .col-sm-3{
    flex:0 0 100%!important;max-width:100%!important;margin-bottom:8px;text-align:center;
  }
  .cartim{max-width:140px!important;margin:0 auto!important;}
  .cart .col-9,.cart_area .col-9,.cart .col-sm-9,.cart_area .col-sm-9,
  .cart .col-md-9,.cart_area .col-md-9{
    flex:0 0 100%!important;max-width:100%!important;
  }

  a.brook-btn.btn-sd-size,button.brook-btn.btn-sd-size{
    width:100%!important;padding:12px 16px!important;
  }
}

@media(max-width:480px){
  .container{max-width:100%!important;padding:0 10px!important;}
  .cart-summary-wrap h2{font-size:18px!important;}
}
