/* WCR Complete Your Setup — desktop modal + mobile bottom sheet */
html.wcr-setup-lock,
body.wcr-setup-lock{overflow:hidden!important;overscroll-behavior:none;}

.wcr-setup-overlay{
  --wcr-setup-accent:var(--wcr-accent,#e20d0d);
  --wcr-setup-accent-hover:var(--wcr-accent-h,#c90000);
  position:fixed;
  inset:0;
  z-index:999999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:rgba(10,12,15,.67);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .2s ease,visibility .2s ease;
  -webkit-backdrop-filter:blur(2px);
  backdrop-filter:blur(2px);
}
.wcr-setup-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto;}
.wcr-setup-dialog{
  width:min(780px,100%);
  max-height:min(88vh,820px);
  display:flex;
  flex-direction:column;
  overflow:hidden;
  background:#fff;
  color:#111;
  border-radius:16px;
  box-shadow:0 28px 90px rgba(0,0,0,.32);
  transform:translateY(14px) scale(.985);
  opacity:0;
  transition:transform .22s cubic-bezier(.2,.8,.2,1),opacity .18s ease;
  outline:none;
}
.wcr-setup-overlay.is-open .wcr-setup-dialog{transform:translateY(0) scale(1);opacity:1;}
.wcr-setup-overlay.is-dragging .wcr-setup-dialog{transition:none!important;}
.wcr-setup-drag-handle{display:none;}

.wcr-setup-header{
  position:relative;
  display:grid;
  grid-template-columns:44px minmax(0,1fr) 38px;
  gap:14px;
  align-items:center;
  padding:22px 26px;
  border-bottom:1px solid #e9e9e9;
  background:#fff;
}
.wcr-setup-success-icon{
  width:42px;
  height:42px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#079455;
  color:#fff;
  font-size:22px;
  font-weight:900;
  box-shadow:0 6px 16px rgba(7,148,85,.2);
}
.wcr-setup-confirmation h2{margin:0!important;font:800 20px/1.2 inherit!important;color:#151515!important;}
.wcr-setup-confirmation p{margin:4px 0 0!important;color:#505050!important;font-size:13px!important;line-height:1.4!important;}
.wcr-setup-close{
  position:absolute!important;
  top:16px!important;
  right:18px!important;
  z-index:12!important;
  display:grid!important;
  place-items:center!important;
  box-sizing:border-box!important;
  width:38px!important;
  min-width:38px!important;
  max-width:38px!important;
  height:38px!important;
  min-height:38px!important;
  max-height:38px!important;
  aspect-ratio:1 / 1!important;
  margin:0!important;
  padding:0!important;
  border:1px solid #111!important;
  border-radius:999px!important;
  background:#111!important;
  color:#fff!important;
  line-height:0!important;
  cursor:pointer!important;
  overflow:hidden!important;
  box-shadow:0 5px 14px rgba(0,0,0,.16)!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  transform:none!important;
}
.wcr-setup-close svg{display:block!important;width:17px!important;height:17px!important;overflow:visible!important;pointer-events:none!important;}
.wcr-setup-close svg path{fill:none!important;stroke:currentColor!important;stroke-width:2.25!important;stroke-linecap:round!important;}
.wcr-setup-close:hover,.wcr-setup-close:focus-visible{background:#333!important;border-color:#333!important;color:#fff!important;outline:2px solid #fff!important;outline-offset:-4px!important;}

.wcr-setup-body{min-height:0;overflow:auto;padding:20px 26px 22px;overscroll-behavior:contain;}
.wcr-setup-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px;}
.wcr-setup-section-heading h3{margin:0!important;color:#111!important;font:850 22px/1.2 inherit!important;}
.wcr-setup-section-heading p{margin:4px 0 0!important;color:#666!important;font-size:13px!important;}
.wcr-setup-view-all{border:0;background:transparent;color:var(--wcr-setup-accent);font-size:13px;font-weight:800;white-space:nowrap;cursor:pointer;padding:5px 0;}
.wcr-setup-view-all:hover{text-decoration:underline;}

.wcr-setup-tabs{display:flex;gap:6px;align-items:center;overflow-x:auto;padding:2px 0 10px;margin-bottom:12px;border-bottom:1px solid #ededed;scrollbar-width:none;}
.wcr-setup-tabs::-webkit-scrollbar{display:none;}
.wcr-setup-tab{flex:0 0 auto!important;border:1px solid transparent!important;background:#f1f1f1!important;color:#111!important;padding:9px 14px!important;border-radius:999px!important;font-size:13px!important;font-weight:800!important;line-height:1!important;cursor:pointer!important;transition:background .15s,color .15s,border-color .15s!important;box-shadow:none!important;}
.wcr-setup-tab:hover,.wcr-setup-tab:focus-visible{background:#d9d9d9!important;border-color:#d0d0d0!important;color:#111!important;outline:none!important;}
.wcr-setup-tab.is-active,.wcr-setup-tab.is-active:hover,.wcr-setup-tab.is-active:focus-visible{background:#111!important;border-color:#111!important;color:#fff!important;box-shadow:0 4px 12px rgba(0,0,0,.18)!important;}

.wcr-setup-feedback{display:none;border-radius:9px;padding:10px 12px;margin:0 0 12px;font-size:13px;font-weight:700;line-height:1.4;}
.wcr-setup-feedback.is-visible{display:block;}
.wcr-setup-feedback.is-error{background:#fff0f0;border:1px solid #ffc9c9;color:#a40000;}
.wcr-setup-feedback.is-success{background:#ecfdf3;border:1px solid #a6f4c5;color:#067647;}

.wcr-setup-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.wcr-setup-product{
  position:relative;
  min-width:0;
  border:1px solid #e5e5e5;
  border-radius:12px;
  background:#fff;
  padding:11px;
  transition:border-color .15s,box-shadow .15s,transform .15s;
}
.wcr-setup-product:hover{border-color:#c9c9c9;box-shadow:0 9px 24px rgba(0,0,0,.07);transform:translateY(-1px);}
.wcr-setup-product.is-filtered-out{display:none!important;}
.wcr-setup-product.is-added{border-color:#75d8a4;background:#f6fff9;box-shadow:0 0 0 1px rgba(7,148,85,.12);}
.wcr-setup-product.has-error{border-color:#fca5a5;background:#fffafa;}
.wcr-setup-popular-badge{position:absolute;left:10px;top:-8px;z-index:2;background:#f2f2f2;color:#444;border-radius:999px;padding:3px 8px;font-size:9px;font-weight:850;box-shadow:0 1px 3px rgba(0,0,0,.08);}
.wcr-setup-product-main{display:grid;grid-template-columns:74px minmax(0,1fr);gap:10px;align-items:center;min-height:82px;}
.wcr-setup-product-image{width:74px;height:74px;display:grid;place-items:center;border-radius:9px;background:#fafafa;overflow:hidden;}
.wcr-setup-product-image img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;image-rendering:auto;}
.wcr-setup-product-placeholder{font-size:28px;color:#b6b6b6;}
.wcr-setup-product-copy{min-width:0;}
.wcr-setup-product-copy h4{margin:0!important;color:#111!important;font:800 13px/1.3 inherit!important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.wcr-setup-product-price{margin-top:5px;color:#111;font-size:13px;font-weight:850;}
.wcr-setup-product-price .woocommerce-Price-amount{font-weight:850;}
.wcr-setup-product-actions{display:grid;grid-template-columns:minmax(0,1fr) 64px;gap:8px;align-items:center;margin-top:10px;}
.wcr-setup-qty{height:34px;display:grid;grid-template-columns:30px minmax(32px,1fr) 30px;align-items:center;border:1px solid #dedede;border-radius:9px;overflow:hidden;background:#fff;}
.wcr-setup-qty button{height:32px;border:0;background:#fff;color:#222;font-size:17px;font-weight:800;cursor:pointer;padding:0;}
.wcr-setup-qty button:hover:not(:disabled){background:#f5f5f5;}
.wcr-setup-qty input{width:100%!important;min-width:0!important;height:32px!important;border:0!important;border-left:1px solid #eee!important;border-right:1px solid #eee!important;border-radius:0!important;padding:0!important;text-align:center!important;font-size:12px!important;font-weight:850!important;box-shadow:none!important;-moz-appearance:textfield;}
.wcr-setup-qty input::-webkit-inner-spin-button,.wcr-setup-qty input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0;}
.wcr-setup-add-extra{height:34px;border:0;border-radius:8px;background:#111;color:#fff;font-size:12px;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px;padding:0 9px;white-space:nowrap;}
.wcr-setup-add-extra:hover:not(:disabled){background:var(--wcr-setup-accent);}
.wcr-setup-product.is-added .wcr-setup-add-extra{background:#079455;}
.wcr-setup-product.is-added .wcr-setup-qty{border-color:#8dd8ae;}
.wcr-setup-card-message{min-height:0;margin-top:7px;color:#ad0000;font-size:10px;font-weight:700;line-height:1.35;}
.wcr-setup-card-message:empty{display:none;}
.wcr-setup-card-message.is-success{color:#067647;}
.wcr-setup-empty{grid-column:1/-1;padding:28px 18px;text-align:center;border:1px dashed #d8d8d8;border-radius:12px;background:#fafafa;}
.wcr-setup-empty strong,.wcr-setup-empty span{display:block;}
.wcr-setup-empty strong{font-size:16px;color:#111;}
.wcr-setup-empty span{font-size:13px;color:#666;margin-top:5px;}

.wcr-setup-footer{display:grid;grid-template-columns:minmax(170px,.72fr) minmax(360px,1.3fr);gap:18px;align-items:center;padding:16px 26px 18px;border-top:1px solid #e9e9e9;background:#fff;box-shadow:0 -8px 24px rgba(0,0,0,.025);}
.wcr-setup-subtotal{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 12px;align-items:baseline;}
.wcr-setup-subtotal span{font-size:12px;font-weight:800;color:#333;}
.wcr-setup-subtotal strong{font-size:18px;color:#111;white-space:nowrap;}
.wcr-setup-subtotal small{grid-column:1/-1;color:#777;font-size:10px;}
.wcr-setup-actions{display:grid;grid-template-columns:1fr 1.12fr;gap:10px;}
.wcr-setup-actions button{min-height:46px;border-radius:9px;font-size:13px;font-weight:850;cursor:pointer;padding:10px 14px;display:flex;align-items:center;justify-content:center;gap:7px;}
.wcr-setup-continue-renting{border:1.5px solid #222;background:#fff;color:#111;}
.wcr-setup-continue-renting:hover{background:#f5f5f5;}
.wcr-setup-actions button.wcr-setup-checkout{border:1.5px solid #111!important;background:#111!important;color:#fff!important;box-shadow:0 7px 18px rgba(0,0,0,.14)!important;}
.wcr-setup-actions button.wcr-setup-checkout:hover:not(:disabled),.wcr-setup-actions button.wcr-setup-checkout:focus-visible{background:#2b2b2b!important;border-color:#2b2b2b!important;color:#fff!important;}
.wcr-setup-actions button:disabled,.wcr-setup-add-extra:disabled{cursor:not-allowed;opacity:.72;}
.wcr-setup-spinner{width:14px;height:14px;display:inline-block;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:wcrSetupSpin .65s linear infinite;flex:0 0 auto;}
@keyframes wcrSetupSpin{to{transform:rotate(360deg)}}

.wcr-setup-form-error{display:none;margin:0 0 8px;padding:9px 11px;border:1px solid #fecaca;border-radius:8px;background:#fff1f2;color:#a40000;font-size:12px;font-weight:750;line-height:1.4;}
.wcr-setup-form-error.is-visible{display:block;}
.rfl-btn-primary.is-wcr-loading{gap:9px!important;}
body.wcr-setup-enabled .wcr-recommended,body.wcr-setup-enabled .rfl-rec{display:none!important;}

/* Color selectors inspired by the supplied compact tablecloth reference. */
.rfl-color-wrap .rfl-color-head{justify-content:space-between!important;align-items:center!important;}
.rfl-color-wrap .rfl-color-qty-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
  align-items:stretch!important;
}
.rfl-color-wrap .rfl-color-qty-card{
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr) auto!important;
  gap:8px!important;
  align-items:center!important;
  min-width:0!important;
  min-height:64px!important;
  padding:8px!important;
  border:1px solid #e4e4e4!important;
  border-radius:8px!important;
  background:#fff!important;
  box-sizing:border-box!important;
}
.rfl-color-wrap .rfl-color-qty-card.is-selected{border-color:var(--wcr-setup-accent)!important;box-shadow:0 0 0 1px rgba(0,0,0,.10)!important;background:#fbfdff!important;}
.rfl-color-wrap .rfl-color-qty-card.is-oos{opacity:.5;}
.rfl-color-wrap .rfl-color-btn{
  grid-column:1!important;
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  border-radius:7px!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid #e1e1e1!important;
  background:#f8f8f8!important;
  box-shadow:none!important;
  transform:none!important;
}
.rfl-color-wrap .rfl-color-btn.is-active{border-color:var(--wcr-setup-accent)!important;box-shadow:0 0 0 2px rgba(0,0,0,.10)!important;}
.rfl-color-wrap .rfl-color-btn.is-active:after{top:1px!important;left:1px!important;width:14px!important;height:14px!important;font-size:9px!important;background:var(--wcr-setup-accent)!important;}
.rfl-color-wrap .rfl-color-thumb{display:block;width:100%;height:100%;object-fit:cover;object-position:center;}
.rfl-color-wrap .rfl-color-swatch{display:block;width:100%!important;height:100%!important;border-radius:6px!important;}
.rfl-color-wrap .rfl-color-qty-body{min-width:0!important;}
.rfl-color-wrap .rfl-color-qty-body strong{display:block;color:#111;font-size:11px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rfl-color-wrap .rfl-color-qty-body span{display:block;color:#777;font-size:9px;margin-top:2px;white-space:nowrap;}
.rfl-color-wrap .rfl-color-qty-stepper{
  display:grid!important;
  grid-template-columns:23px 28px 23px!important;
  align-items:center!important;
  border:1px solid #e3e3e3!important;
  border-radius:7px!important;
  overflow:hidden!important;
  background:#fff!important;
}
.rfl-color-wrap .rfl-color-qty-btn{width:23px!important;height:25px!important;border:0!important;background:#fff!important;color:#111!important;font-size:13px!important;padding:0!important;}
.rfl-color-wrap .rfl-color-qty-input{width:28px!important;min-width:28px!important;height:25px!important;min-height:25px!important;border:0!important;border-left:1px solid #ededed!important;border-right:1px solid #ededed!important;border-radius:0!important;padding:0!important;text-align:center!important;font-size:10px!important;font-weight:800!important;box-shadow:none!important;}

.rfl-linen-color-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;}
.rfl-linen-color-card{
  grid-template-columns:38px minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  gap:5px 8px!important;
  padding:8px!important;
  min-width:0!important;
  border-radius:8px!important;
}
.rfl-linen-color-media,.rfl-linen-color-swatch{grid-row:1/3!important;width:38px!important;height:38px!important;border-radius:7px!important;}
.rfl-linen-color-name{font-size:11px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rfl-linen-color-stock{font-size:9px!important;margin-top:1px!important;}
.rfl-linen-qty-stepper{grid-column:1/-1!important;justify-self:stretch!important;grid-template-columns:24px minmax(30px,1fr) 24px!important;border-radius:7px!important;}
.rfl-linen-qty-btn{width:24px!important;height:25px!important;font-size:13px!important;}
.rfl-linen-qty-input{width:100%!important;height:25px!important;min-height:25px!important;font-size:10px!important;}
.wcr-color-is-collapsed{display:none!important;}
.wcr-color-is-collapsed.is-color-visible{display:grid!important;}
.wcr-color-toggle{width:100%;margin-top:8px;border:0;border-top:1px solid #ececec;background:transparent;color:#333;padding:9px 6px 1px;font-size:11px;font-weight:800;cursor:pointer;display:flex;justify-content:center;align-items:center;gap:6px;}
.wcr-color-toggle:hover{color:var(--wcr-setup-accent);}

@media(max-width:767px){
  .wcr-setup-overlay{align-items:flex-end;padding:0;background:rgba(8,10,12,.58);}
  .wcr-setup-dialog{
    width:100%;
    max-height:min(91dvh,820px);
    border-radius:24px 24px 0 0;
    transform:translateY(105%);
    opacity:1;
    padding-bottom:env(safe-area-inset-bottom,0px);
  }
  .wcr-setup-overlay.is-open .wcr-setup-dialog{transform:translateY(0);}
  .wcr-setup-drag-handle{display:flex;height:24px;align-items:center;justify-content:center;background:#fff;touch-action:none;}
  .wcr-setup-drag-handle span{width:42px;height:5px;border-radius:999px;background:#d2d2d2;}
  .wcr-setup-header{grid-template-columns:38px minmax(0,1fr) 36px;padding:8px 16px 15px;gap:10px;touch-action:pan-x;}
  .wcr-setup-success-icon{width:36px;height:36px;font-size:18px;}
  .wcr-setup-confirmation h2{font-size:17px!important;}
  .wcr-setup-confirmation p{font-size:11px!important;}
  .wcr-setup-close{top:7px!important;right:14px!important;width:36px!important;min-width:36px!important;max-width:36px!important;height:36px!important;min-height:36px!important;max-height:36px!important;}
  .wcr-setup-body{padding:15px 14px 16px;}
  .wcr-setup-section-heading{align-items:center;margin-bottom:10px;}
  .wcr-setup-section-heading h3{font-size:19px!important;}
  .wcr-setup-section-heading p{font-size:11px!important;}
  .wcr-setup-view-all{font-size:11px;}
  .wcr-setup-tabs{margin:0 -14px 11px;padding:2px 14px 10px;}
  .wcr-setup-tab{padding:8px 13px;font-size:12px;}
  .wcr-setup-products{display:flex;grid-template-columns:none;gap:10px;overflow-x:auto;overflow-y:hidden;margin:0 -14px;padding:5px 14px 12px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
  .wcr-setup-products::-webkit-scrollbar{display:none;}
  .wcr-setup-product{flex:0 0 156px;width:156px;padding:9px;scroll-snap-align:start;}
  .wcr-setup-product-main{display:block;min-height:0;}
  .wcr-setup-product-image{width:100%;height:98px;margin-bottom:8px;}
  .wcr-setup-product-copy h4{font-size:11px!important;-webkit-line-clamp:2;min-height:29px;}
  .wcr-setup-product-price{font-size:12px;margin-top:3px;}
  .wcr-setup-product-actions{grid-template-columns:1fr 52px;gap:6px;margin-top:8px;}
  .wcr-setup-qty{height:31px;grid-template-columns:24px minmax(28px,1fr) 24px;border-radius:8px;}
  .wcr-setup-qty button,.wcr-setup-qty input{height:29px!important;font-size:11px!important;}
  .wcr-setup-add-extra{height:31px;font-size:11px;border-radius:7px;padding:0 6px;}
  .wcr-setup-footer{display:block;padding:12px 14px calc(12px + env(safe-area-inset-bottom,0px));}
  .wcr-setup-subtotal{margin-bottom:10px;}
  .wcr-setup-subtotal strong{font-size:17px;}
  .wcr-setup-actions{grid-template-columns:1fr 1.12fr;gap:8px;}
  .wcr-setup-actions button{min-height:44px;font-size:11px;padding:8px;}

  .rfl-color-wrap .rfl-color-qty-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .rfl-color-wrap .rfl-color-qty-card{grid-template-columns:36px minmax(0,1fr)!important;grid-template-rows:auto auto!important;gap:4px 7px!important;padding:7px!important;}
  .rfl-color-wrap .rfl-color-btn{grid-row:1/3!important;width:36px!important;height:36px!important;min-width:36px!important;}
  .rfl-color-wrap .rfl-color-qty-stepper{grid-column:1/-1!important;justify-self:stretch!important;grid-template-columns:23px minmax(28px,1fr) 23px!important;}
  .rfl-linen-color-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}

@media(max-width:420px){
  .wcr-setup-actions{grid-template-columns:1fr;}
  .wcr-setup-checkout{order:-1;}
  .wcr-setup-continue-renting{min-height:40px!important;}
  .wcr-setup-section-heading{display:block;}
  .wcr-setup-view-all{margin-top:7px;}
}

/* WCR 3.90.16 — Exact dated stock and category filtering */
.wcr-setup-section-heading{justify-content:flex-start}
.wcr-setup-view-all{display:none!important}
.wcr-setup-product-stock{display:block;margin-top:3px;color:#667085;font-size:10px;font-weight:700}
.wcr-setup-qty button:disabled{cursor:not-allowed;opacity:.35;background:#f7f7f7}

/* WCR 3.90.17 — stable black pills and theme-proof close control */
.wcr-setup-tabs button.wcr-setup-tab{font-family:inherit!important;text-transform:none!important;text-decoration:none!important;}
