#ap-cart-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:2147483644}#cart-drawer-modal[hidden],#ap-cart-backdrop[hidden]{display:none!important}body.ap-cart-open{overflow:hidden}#cart-drawer-modal{--color-body-bg:rgba(1,4,26,1);--color-body-text:rgba(208,212,255,1);--color-border:rgba(84,86,85,1);--type-heading-font-size:40px;position:fixed;right:0;top:0;width:468px;max-width:100vw;height:100dvh;display:flex;flex-direction:column;color:var(--color-body-text);font:500 14px/1.3 Poppins,sans-serif;overflow:hidden}#cart-drawer-modal *{box-sizing:border-box}#cart-drawer-modal button{font:inherit;color:inherit;cursor:pointer}#cart-drawer-modal .cart-drawer-header{display:flex;align-items:center;justify-content:space-between;flex:none}#cart-drawer-modal .cart-drawer-title{margin:10px 0;font-weight:600}#cart-drawer-modal .ap-cart-close{background:none;border:0;font-size:30px;padding:0 8px}#cart-drawer-content{padding:0 16px 16px;overflow-y:auto;flex:1;min-height:0}#ap-cart-items ul{list-style:none;padding:0;margin:0}.ap-cart-line{display:flex;align-items:flex-start;padding:16px 0;gap:16px}.ap-cart-line-info{flex:1;min-width:0}.cart-drawer-item-image img{width:100%;height:auto;display:block;max-height:165px;object-fit:contain}.ap-cart-product-title{color:inherit;font-size:14px;line-height:1.3;text-decoration:none}.ap-cart-variant{font-weight:600;margin:4px 0 12px}.ap-cart-line-price{display:flex;gap:4px;color:#b7bfff}.ap-cart-line-price del{font-size:12px;color:#d0d4ff}.ap-cart-discount{display:block;margin-top:3px;font-size:11px}.cart-drawer-item-actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.cart-drawer-item-delete-btn{padding:0;background:none;border:0;color:#7b809b!important;font-size:14px!important}.ap-cart-shipping{margin-top:20px;padding:8px 12px;background:#02093b;border-radius:6px}.ap-cart-shipping p{margin:3px 0 0;font-size:11px;text-align:center;background:rgba(0,0,0,.45);border-radius:4px}.cart-discount-tracker{gap:4px}.ap-cart-total{display:flex;align-items:center;justify-content:space-between;font-size:16px}.ap-cart-total del{font-size:14px;color:#777}.cart-drawer-checkout-btn{display:block;text-align:center;background:#9eea32;color:#01041a!important;font-weight:700;text-decoration:none;border:0;border-radius:7px;padding:12px;margin-top:12px}.shipping-insurance-toggle{display:flex;align-items:center;gap:8px;margin-bottom:8px;padding:6px 10px;background:rgba(44,103,106,.12);border:1px solid rgba(44,103,106,.3);border-radius:6px}.shipping-insurance-toggle span:nth-child(2){flex:1}.insurance-policy-link{display:block;color:#8998fb;font-size:11px}.shipping-insurance-toggle input{appearance:none;width:36px;height:20px;flex:none;border-radius:20px;background:#555;cursor:pointer}.shipping-insurance-toggle input:before{content:'';display:block;width:16px;height:16px;margin:2px;border-radius:50%;background:white;transition:transform .15s}.shipping-insurance-toggle input:checked{background:#9eea32}.shipping-insurance-toggle input:checked:before{transform:translateX(16px)}.ap-cart-empty{text-align:center;padding:80px 12px}.ap-continue-shopping{padding:12px 20px;background:#9eea32;color:#01041a!important;border:0;border-radius:6px}#ap-cart-status:not(:empty){padding:12px;background:#4b1e2e;border-radius:6px}#ap-cart-recommend-host{margin-top:10px}#cart-item-edit-modal{position:fixed!important;z-index:2147483646!important}#cart-item-edit-modal[aria-hidden=false]{display:flex!important;align-items:center!important;justify-content:center!important}#cart-drawer-modal .cart-item-edit-btn{white-space:nowrap}#cart-drawer-modal .cart-drawer-recommend-title{font-weight:700}#cart-drawer-modal .cart-drawer-recommend-card-title{color:inherit}@media(max-width:959.98px){#cart-drawer-modal{width:100%;max-width:100%}}
#cart-drawer-modal .cart-drawer-title{margin:0}#cart-drawer-modal .cart-drawer-content{overflow-x:hidden}#cart-drawer-modal .cart-drawer-item-image img{max-height:none}
#cart-drawer-modal .cart-drawer-item-delete-btn{position:relative}#cart-drawer-modal .cart-drawer-title{margin:0}#cart-drawer-content{overflow-x:hidden}#cart-drawer-modal .cart-drawer-item-image img{max-height:none}

/* =====================================================
   Shipping Insurance — Toggle Switch & Item Disguise
   ===================================================== */

/* ---------- Toggle Mount Container ---------- */
.insurance-toggle-mount {
  padding: 0 0 5px 0;
  margin-bottom: 0;
}

/* ---------- Toggle Row ---------- */
/* Layout: [Icon] [Text...] [Switch] [Price] */
.shipping-insurance-toggle {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  border-radius: 8px;
  background: rgba(44, 103, 106, 0.06);
  border: 1px solid rgba(44, 103, 106, 0.15);
  transition: background 0.25s ease, border-color 0.25s ease;
}

.shipping-insurance-toggle:hover {
  background: rgba(44, 103, 106, 0.10);
  border-color: rgba(44, 103, 106, 0.25);
}

/* ---------- Insurance Icon (40x40 image) ---------- */
.insurance-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  transition: filter 0.3s ease, opacity 0.3s ease;
}

.insurance-icon img {
  width: 40px;
  height: 40px;
  object-fit: contain;
  display: block;
}

/* Icon OFF state: grayscale */
.insurance-icon--off {
  filter: grayscale(100%);
  opacity: 0.45;
}

/* Icon ON state: full color */
.insurance-icon--on {
  filter: grayscale(0%);
  opacity: 1;
}

/* ---------- Text Wrapper (fills available space) ---------- */
.insurance-text-wrap {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
  flex: 1;
}

/* ---------- Widget Main Text ---------- */
.insurance-widget-text {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  color: var(--color-body-text, #121B17);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* ---------- Policy Info Link ---------- */
.insurance-policy-link {
  font-size: 11px;
  font-weight: 400;
  line-height: 1.3;
  color: var(--color-primary-btn-bg, #2C676A);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
  opacity: 0.7;
  transition: opacity 0.2s ease;
  cursor: pointer;
  white-space: nowrap;
  letter-spacing: 0.01em;
}

.insurance-policy-link:hover {
  opacity: 1;
}

/* ---------- Toggle Label (switch only, no flex grow) ---------- */
.insurance-toggle-label {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  user-select: none;
  flex-shrink: 0;
  padding: 0;
  margin: 0;
}

/* ---------- Upgraded Toggle Switch ---------- */
.insurance-switch {
  position: relative;
  display: inline-block;
  width: 44px;
  height: 24px;
  flex-shrink: 0;
}

.insurance-switch input {
  opacity: 0;
  width: 0;
  height: 0;
  position: absolute;
}

.insurance-slider {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(135deg, #d0d4d8 0%, #bfc4c9 100%);
  border-radius: 24px;
  transition: background 0.35s cubic-bezier(0.4, 0, 0.2, 1),
              box-shadow 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  cursor: pointer;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1);
}

/* Knob */
.insurance-slider-knob {
  position: absolute;
  height: 20px;
  width: 20px;
  left: 2px;
  top: 2px;
  background: linear-gradient(180deg, #ffffff 0%, #f5f5f5 100%);
  border-radius: 50%;
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1),
              box-shadow 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.18),
              0 0 0 1px rgba(0, 0, 0, 0.04);
}

/* Checked state */
.insurance-switch input:checked + .insurance-slider {
  background: linear-gradient(135deg, var(--color-primary-btn-bg, #2C676A) 0%, #35807e 100%);
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.08),
              0 0 8px rgba(44, 103, 106, 0.25);
}

.insurance-switch input:checked + .insurance-slider .insurance-slider-knob {
  transform: translateX(20px);
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2),
              0 0 0 1px rgba(0, 0, 0, 0.04);
}

/* Focus visible */
.insurance-switch input:focus-visible + .insurance-slider {
  outline: 2px solid var(--color-primary-btn-bg, #2C676A);
  outline-offset: 2px;
}

/* Hover knob glow */
.insurance-switch:hover .insurance-slider-knob {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.22),
              0 0 0 1px rgba(0, 0, 0, 0.04);
}

/* ---------- Premium Amount ---------- */
.insurance-premium-amount {
  font-weight: 600;
  font-size: 14px;
  white-space: nowrap;
  flex-shrink: 0;
  color: var(--color-body-text, #121B17);
  min-width: 40px;
  text-align: right;
}


/* =====================================================
   Insurance Item Disguise in Cart
   ===================================================== */

/* Completely hide the shipping insurance product row from the cart drawer and cart page */
.shipping-insurance-item {
  display: none !important;
}


/* =====================================================
   Responsive Tweaks
   ===================================================== */
@media (max-width: 959.98px) {
  .shipping-insurance-toggle {
    padding: 8px 12px;
    gap: 8px;
  }

  .insurance-icon {
    width: 32px;
    height: 32px;
  }

  .insurance-icon img {
    width: 32px;
    height: 32px;
  }

  .insurance-switch {
    width: 40px;
    height: 22px;
  }

  .insurance-slider-knob {
    width: 18px;
    height: 18px;
  }

  .insurance-switch input:checked + .insurance-slider .insurance-slider-knob {
    transform: translateX(18px);
  }

  .insurance-widget-text {
    font-size: 13px;
  }

  .insurance-premium-amount {
    font-size: 13px;
  }

  .insurance-policy-link {
    font-size: 10px;
  }
}

/* =====================================================
   Duplicate Toggle Prevention on Cart Page
   ===================================================== */
/* If on the cart page, hide the drawer's toggle switch to prevent duplicates when drawer is closed */
.template-cart:not(.drawer-is-open) #cart-drawer-modal .insurance-toggle-mount,
.template-cart:not(.drawer-is-open) .cart-drawer-summary .insurance-toggle-mount,
.template-cart:not(.drawer-is-open) .cart-drawer-summary-sticky .insurance-toggle-mount {
  display: none !important;
}

/* If the drawer is OPENED on the cart page, hide the main page's toggle switch to prevent overlaps and leaks through the semi-transparent drawer */
body.drawer-is-open .cart-summary .insurance-toggle-mount {
  display: none !important;
}

#cart-drawer-modal{--color-primary-btn-bg:#2c676a}#cart-drawer-modal .ap-shipping-label{display:flex;align-items:center;font-size:12px;font-weight:700;margin-bottom:6px}
#cart-drawer-modal .cart_free_shipping_container{margin-top:20px}#cart-drawer-modal .cart_free_shipping_text{gap:3px}
#cart-drawer-modal .cart-drawer-summary{padding:7px 12px 10px;background:rgba(14,18,36,.85);border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(5px);border-radius:8px}
#cart-drawer-modal .insurance-toggle-mount{margin:0 0 5px;padding:0}#cart-drawer-modal .insurance-switch input{appearance:auto;width:0;height:0;margin:0}#cart-drawer-modal .insurance-switch input::before{content:none}
#cart-drawer-modal .shipping-insurance-toggle{gap:10px;padding:10px 14px;margin:0;background:rgba(44,103,106,.06);border:1px solid rgba(44,103,106,.15);border-radius:8px}#cart-drawer-modal .insurance-policy-link{color:#7c91ff}
#cart-drawer-modal .ap-cart-discount::first-letter{color:#ff3f02}#cart-drawer-modal .cart-drawer-recommend-card-price{color:#9eea32}
#cart-drawer-modal .cart-drawer-recommend-img{height:100%!important;width:100%!important;object-fit:cover!important}

.ap-cart-icon .ap-cart-count[hidden]{display:none!important}

#ap-cart-recommend-host[hidden],#cart-drawer-content.ap-cart-is-loading :is(#ap-cart-items,#ap-cart-recommend-host,#ap-cart-summary){display:none!important}
#cart-drawer-content.ap-cart-is-loading #ap-cart-status{padding:0;background:transparent;border-radius:0}
.ap-cart-loading{padding:24px 0;color:#d0d4ff}
.ap-cart-loading-heading{display:flex;align-items:center;justify-content:center;gap:12px;margin:4px 0 28px;font-size:14px;font-weight:600}
.ap-cart-loading-ring{width:24px;height:24px;border:2px solid #d0d4ff33;border-top-color:#9eea32;border-radius:50%;animation:ap-cart-ring 1s linear infinite;flex:none}
.ap-cart-skeleton-row{display:flex;align-items:flex-start;gap:18px;padding:18px 0;border-bottom:1px solid #d0d4ff12}
.ap-cart-skeleton-image{display:block;width:34%;aspect-ratio:1/1;border-radius:7px;flex:none}
.ap-cart-skeleton-copy{flex:1;padding-top:8px;display:grid;gap:14px}
.ap-cart-skeleton-copy span{height:14px;border-radius:5px}.ap-cart-skeleton-copy span:nth-child(2){width:80%}.ap-cart-skeleton-copy span:nth-child(3){width:48%;margin-top:8px}
.ap-cart-shimmer{position:relative;overflow:hidden;background:#d0d4ff0e}
.ap-cart-shimmer::after{content:'';position:absolute;inset:0;background:linear-gradient(100deg,transparent 10%,#d0d4ff15 50%,transparent 90%);transform:translateX(-100%);animation:ap-cart-shimmer 1.7s ease-in-out infinite}
@keyframes ap-cart-ring{to{transform:rotate(360deg)}}
@keyframes ap-cart-shimmer{to{transform:translateX(100%)}}
@media(prefers-reduced-motion:reduce){.ap-cart-loading-ring,.ap-cart-shimmer::after{animation:none}}

/* OTA cart drawer parity with the live Shoplazza storefront. */
#cart-drawer-modal{--color-body-bg:#111;--color-body-text:#f2f2f2;--color-border:#303030;--color-primary-btn-bg:#ed1c24;background:#111;color:#f2f2f2}
#cart-drawer-modal .cart-drawer-header{padding:20px 16px;border-bottom:1px solid #252525}
#cart-drawer-modal .cart-drawer-title{font-size:32px;line-height:1.15;font-weight:700;margin:0}
#cart-drawer-modal .ap-cart-close{color:#f2f2f2;font-size:30px}
#cart-drawer-modal #cart-drawer-content{padding:0 16px 16px}
#cart-drawer-modal .ap-cart-line{gap:16px;padding:16px 0;border-bottom:1px solid #242424}
#cart-drawer-modal .cart-drawer-item-image{width:116px;max-width:27%;flex:none}
#cart-drawer-modal .cart-drawer-item-image img{width:100%;height:132px;max-height:132px;object-fit:contain}
#cart-drawer-modal .ap-cart-product-title{font-size:14px;font-weight:500;color:#e8e8e8}
#cart-drawer-modal .ap-cart-variant{font-size:12px;font-weight:600;line-height:1.35;margin:4px 0 9px;color:#f2f2f2}
#cart-drawer-modal .ap-cart-line-price{color:#e8e8e8;font-size:14px}
#cart-drawer-modal .ap-cart-line-price del{color:#898989}
#cart-drawer-modal .ap-cart-discount{color:#e6e6e6;font-size:11px}
#cart-drawer-modal .ap-cart-discount::first-letter{color:#ed1c24}
#cart-drawer-modal .cart-drawer-item-actions{gap:12px}
#cart-drawer-modal .cart-drawer-item-delete-btn{color:#999!important}
#cart-drawer-modal .cart-item-edit-btn{display:none!important}
#cart-drawer-modal .cart-drawer-item-quantity{display:flex;align-items:center;gap:0;margin-top:8px;color:#f2f2f2}
#cart-drawer-modal .cart-drawer-item-quantity button{width:30px;height:30px;padding:0;background:transparent;border:1px solid #343434;color:#eee;font-size:18px;line-height:1}
#cart-drawer-modal .cart-drawer-item-quantity span{min-width:34px;text-align:center;font-size:14px}
#cart-drawer-modal .cart-drawer-summary{margin-top:20px!important;padding:10px 8px 12px!important;background:#555!important;border:0!important;border-radius:0!important;backdrop-filter:none!important}
#cart-drawer-modal .ap-cart-total{color:#fff;font-size:16px;font-weight:600}
#cart-drawer-modal .ap-cart-total b{font-weight:600}
#cart-drawer-modal .ap-cart-savings{display:flex;align-items:center;gap:4px;width:max-content;margin:6px 0 0 auto;padding:4px 10px;border-radius:16px;background:#fff;color:#d87538;font-size:12px;font-weight:600}
#cart-drawer-modal .cart-drawer-checkout-btn{margin-top:12px;padding:12px;background:#ed1c24!important;color:#fff!important;border:0;border-radius:0!important;font-size:16px;font-weight:700;text-decoration:none}
#cart-drawer-modal .ap-cart-tax-note{display:block;margin-top:8px;color:#ddd;text-align:center;font-size:12px}
#cart-drawer-modal .cart_free_shipping_container,#cart-drawer-modal .cart-discount-tracker,#cart-drawer-modal #ap-cart-recommend-host,#cart-drawer-modal .insurance-toggle-mount{display:none!important}
#cart-drawer-modal .ap-cart-empty{padding:60px 12px}
#cart-drawer-modal .ap-continue-shopping{background:#ed1c24;color:#fff!important;border-radius:0}
@media(max-width:959.98px){#cart-drawer-modal .cart-drawer-summary{margin-top:16px!important}#cart-drawer-modal .cart-drawer-title{font-size:28px}#cart-drawer-modal .cart-drawer-item-image{width:110px}}

/* Match the original product drawer geometry at desktop widths. */
@media(min-width:960px){
  #cart-drawer-modal .cart-drawer-header{height:82px;min-height:82px;padding:0 16px}
  #cart-drawer-modal .ap-cart-close{width:24px;height:24px;padding:0;border:0!important;background:transparent!important;box-shadow:none!important;font-size:24px;line-height:24px}
  #cart-drawer-modal .ap-cart-line{gap:16px}
  #cart-drawer-modal .cart-drawer-item-image{width:140px;max-width:none}
  #cart-drawer-modal .cart-drawer-item-image img{width:140px;height:140px;max-height:140px}
  #cart-drawer-modal .ap-cart-variant{margin:4px 0 13px}
  #cart-drawer-modal .ap-cart-line-price{margin-top:10px}
  #cart-drawer-modal .cart-drawer-summary{margin-top:16px!important}
  #cart-drawer-modal .cart-drawer-checkout-btn{margin-top:16px}
}
