*{
  box-sizing:border-box;
  -webkit-tap-highlight-color:var(--appClear);
}

html,
body{
  width:var(--appW);
  height:var(--appH);
  margin:0;
  overflow:hidden;
  background:var(--appBg);
  color:var(--appText);
  font-family:var(--appFont);
}

body:before{
  content:"";
  position:fixed;
  inset:-20dvh -20dvw;
  background:
    radial-gradient(circle at 18% 12%,rgba(24,182,255,.28),transparent 26%),
    radial-gradient(circle at 84% 10%,rgba(255,79,216,.24),transparent 24%),
    radial-gradient(circle at 58% 74%,rgba(24,182,255,.16),transparent 32%),
    radial-gradient(circle at 40% 40%,rgba(255,255,255,.08),transparent 18%);
  filter:blur(18px);
  pointer-events:none;
}

button{
  font:inherit;
  cursor:pointer;
}

[hidden]{
  display:none!important;
}

.app{
  position:relative;
  width:var(--appW);
  height:var(--appH);
  overflow:hidden;
  background:
    radial-gradient(circle at top left,rgba(24,182,255,.12),transparent 24%),
    radial-gradient(circle at top right,rgba(255,79,216,.1),transparent 26%),
    linear-gradient(180deg,color-mix(in srgb,var(--appBg) 72%,transparent),var(--appBg) 42%);
}

.topbar{
  position:fixed;
  z-index:var(--zTop);
  top:0;
  left:0;
  width:var(--appW);
  height:calc(var(--topH) + var(--appSafeTop));
  padding:var(--appSafeTop) var(--topPadX) 0;
  display:flex;
  align-items:center;
  justify-content:center;
  border-bottom:1px solid rgba(255,255,255,.14);
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.02));
  backdrop-filter:blur(var(--blurXl)) saturate(1.8);
  -webkit-backdrop-filter:blur(var(--blurXl)) saturate(1.8);
  box-shadow:0 10px 40px rgba(0,0,0,.18),inset 0 -1px 0 rgba(255,255,255,.14);
}

.toprow{
  width:100%;
  height:var(--topRowH);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--gapLg);
}

.brand{
  height:var(--topRowH);
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
}

.header-logo{
  display:block;
  height:var(--brandImgH);
  width:auto;
  max-width:min(52vw, 220px);
  object-fit:contain;
  filter:drop-shadow(0 0 18px rgba(24,182,255,.2));
}

.header-logo img{
  display:block;
  height:100%;
  width:auto;
  max-width:100%;
  object-fit:contain;
}

.bell{
  width:var(--bellSize);
  height:var(--bellSize);
  padding:0;
  margin:0;
  border:1px solid var(--appLineLite);
  border-radius:var(--rFull);
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.14);
  color:var(--appIcon);
  font-size:1.06rem;
  line-height:1;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22);
  backdrop-filter:blur(var(--blurSm));
  -webkit-backdrop-filter:blur(var(--blurSm));
}

.scroller{
  position:absolute;
  inset:0;
  overflow-y:auto;
  overflow-x:hidden;
  padding:calc(96px + var(--appSafeTop)) 0 calc(112px + var(--appSafeBottom));
  scroll-behavior:smooth;
  overscroll-behavior:contain;
}

.scroller::-webkit-scrollbar{
  width:0;
}

.btn{
  border:0;
  border-radius:var(--rMd);
  padding:15px 18px;
  font-weight:950;
  font-size:1rem;
}

.btn.primary{
  background:var(--appWhite);
  color:var(--appDark);
}

.btn.secondary{
  background:var(--appGlass);
  color:var(--appText);
  border:1px solid var(--appLine);
}

.kicker{
  color:#d9d5ff;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-size:.76rem;
  font-weight:900;
}

.toast{
  position:fixed;
  right:var(--gapLg);
  bottom:calc(94px + var(--appSafeBottom));
  z-index:2147483647!important;
  background:var(--appGlassHard);
  color:var(--appDark);
  border-radius:var(--rSm);
  padding:var(--gapLg) var(--padXl);
  font-weight:850;
  box-shadow:var(--shadowToast);
  transform:translateY(30px);
  opacity:0;
  pointer-events:none;
  transition:var(--easeMed);
}

.toast.show{
  transform:translateY(0);
  opacity:1;
}

@media (max-width:520px){
  .topbar{
    height:calc(var(--topMobH) + var(--appSafeTop));
  }

  .scroller{
    padding-top:calc(76px + var(--appSafeTop));
  }
}

@media (min-width:760px){
  .topbar{
    padding-left:var(--topDeskPadX);
    padding-right:var(--topDeskPadX);
  }

  .scroller{
    padding-top:calc(118px + var(--appSafeTop));
  }
}

/* Match the scroll clearance to the measured bottom navigation height.
   The navigation height already includes the iPhone safe-area inset.
   The extra 12px mirrors the 12px breathing room above the page content. */
.scroller{padding-bottom:calc(var(--bottomNavHeight, 84px) + 12px)}

#tabMount{position:relative;}
#tabMount > .tabPreloading{position:absolute!important;inset:0!important;width:100%!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;z-index:-1!important;}


/* Original Loading9.php infinity particle loader, embedded unchanged visually. */
.tab-loader{
  position:fixed;
  top:0;
  left:0;
  width:100vw;
  height:100vh;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  background:rgba(0,0,0,.3);
  z-index:calc(var(--zToast) + 20);
  overflow:hidden;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .5s ease-out,visibility 0s linear .5s;
}
.tab-loader.active{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transition:opacity .5s ease-out;
}
.tab-loader-particle{
  position:absolute;
  border-radius:50%;
  pointer-events:none;
  will-change:transform,opacity,background,box-shadow;
  transition:opacity .3s ease-out,transform .3s ease-out;
}


/* Randomized viewport bubble transitions. JavaScript uses the Web Animations
   API for smooth, synchronized motion; these classes are the fallback. */
.bubble-awaiting-entry{
  visibility:hidden!important;
}

.bubble-pop-out{
  animation:bubblePopOut .36s cubic-bezier(.4,0,.24,1) both;
  animation-delay:var(--bubble-delay,0ms);
  pointer-events:none!important;
  transform-origin:center;
  will-change:transform,opacity;
}

.bubble-pop-in{
  animation:bubblePopIn .44s cubic-bezier(.16,.84,.24,1) both;
  animation-delay:var(--bubble-delay,0ms);
  transform-origin:center;
  will-change:transform,opacity;
}

@keyframes bubblePopOut{
  0%{opacity:1;scale:1;translate:0 0}
  30%{opacity:1;scale:1.004;translate:0 0}
  100%{opacity:0;scale:.95;translate:var(--bubble-x,0) var(--bubble-y,2px)}
}

@keyframes bubblePopIn{
  0%{opacity:0;scale:.955;translate:var(--bubble-x,0) var(--bubble-y,2px)}
  82%{opacity:1;scale:1.006;translate:0 0}
  100%{opacity:1;scale:1;translate:0 0}
}

@media (prefers-reduced-motion:reduce){
  .bubble-pop-out,.bubble-pop-in{
    animation-duration:.01ms!important;
    animation-delay:0ms!important;
  }
}

}

/* Active cart button and drawer */
.topActions{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-end;gap:8px;flex:0 0 auto;flex-wrap:nowrap!important;white-space:nowrap}
.headerAction{position:relative;width:var(--bellSize);height:var(--bellSize);padding:0;margin:0;border:1px solid var(--appLineLite);border-radius:var(--rFull);display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.14);color:var(--appIcon);font-size:1.06rem;line-height:1;box-shadow:inset 0 1px 0 rgba(255,255,255,.22);backdrop-filter:blur(var(--blurSm));-webkit-backdrop-filter:blur(var(--blurSm));transition:transform .2s ease,background .2s ease}
.headerAction:active{transform:scale(.94)}
.headerActionBadge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 5px;border:2px solid var(--appBg);border-radius:999px;display:grid;place-items:center;background:linear-gradient(135deg,var(--appBlue),var(--appPink));color:#fff;font-size:.56rem;font-weight:950;line-height:1}
.activeCartDrawer{position:fixed;inset:0;z-index:2147482000;display:grid;grid-template-columns:minmax(0,1fr) min(430px,94dvw);pointer-events:none}
.activeCartDrawer[hidden]{display:none!important}
.activeCartBackdrop{grid-column:1 / -1;grid-row:1;border:0;background:rgba(4,7,18,.44);opacity:0;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:opacity .25s ease}
.activeCartPanel{grid-column:2;grid-row:1;position:relative;height:100dvh;min-height:0;padding:calc(18px + var(--appSafeTop)) 16px calc(18px + var(--appSafeBottom));display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto;background:color-mix(in srgb,var(--appPanel) 93%,transparent);border-left:1px solid var(--appLine);box-shadow:-24px 0 70px rgba(0,0,0,.24);backdrop-filter:blur(28px) saturate(1.4);-webkit-backdrop-filter:blur(28px) saturate(1.4);transform:translateX(105%);transition:transform .28s cubic-bezier(.22,.8,.26,1)}
.activeCartDrawer.isOpen{pointer-events:auto}.activeCartDrawer.isOpen .activeCartBackdrop{opacity:1}.activeCartDrawer.isOpen .activeCartPanel{transform:translateX(0)}
.activeCartHeader{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:2px 2px 15px;border-bottom:1px solid var(--appLine)}
.activeCartHeader small{display:block;color:var(--appMuted);font-size:.61rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.activeCartHeader h2{margin:3px 0 0;font-size:1.45rem;letter-spacing:-.045em}.activeCartHeader button{width:40px;height:40px;border:1px solid var(--appLine);border-radius:14px;background:var(--appGlass);color:var(--appText)}
.activeCartList{min-height:0;overflow-y:auto;padding:14px 1px;display:grid;align-content:start;gap:10px;scrollbar-width:none}.activeCartList::-webkit-scrollbar{display:none}
.activeCartItem{display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px;border:1px solid var(--appLine);border-radius:19px;background:var(--appGlass)}
.activeCartThumb{width:64px;height:64px;min-width:0;min-height:0;box-sizing:border-box;border-radius:15px;overflow:hidden;contain:layout paint;display:grid;place-items:center;background:var(--appPanelSoft);color:var(--appMuted);padding:7px}.activeCartThumb img{display:block;box-sizing:border-box;width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;object-fit:contain;object-position:center;border-radius:9px;transform:none!important}.activeCartCopy{min-width:0}.activeCartCopy small,.activeCartCopy b,.activeCartCopy span{display:block}.activeCartCopy small{color:var(--appMuted);font-size:.57rem;font-weight:850;text-transform:uppercase}.activeCartCopy b{margin:4px 0;font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activeCartCopy span{font-size:.65rem;color:var(--appMuted)}
.activeCartActions{display:grid;justify-items:end;gap:8px}.activeCartQuantity{height:30px;display:flex;align-items:center;border:1px solid var(--appLine);border-radius:999px;overflow:hidden;background:var(--appPanel)}.activeCartQuantity button{width:28px;height:28px;border:0;background:transparent;color:var(--appText);font-size:.7rem}.activeCartQuantity strong{min-width:20px;text-align:center;font-size:.67rem}.activeCartRemove{width:30px;height:30px;border:0;border-radius:10px;background:transparent;color:var(--appMuted)}
.activeCartEmpty{min-height:0;display:grid;place-items:center;align-content:center;gap:8px;text-align:center;color:var(--appMuted);padding:30px}.activeCartEmpty>i{font-size:2rem}.activeCartEmpty b{color:var(--appText);font-size:.95rem}.activeCartEmpty small{max-width:230px;font-size:.7rem;line-height:1.45}.activeCartEmpty button{height:40px;margin-top:6px;padding:0 16px;border:0;border-radius:14px;background:linear-gradient(135deg,var(--appBlue),var(--appPink));color:#fff;font-size:.7rem;font-weight:900}
.activeCartFooter{padding:14px 2px 0;border-top:1px solid var(--appLine);display:grid;gap:10px}.activeCartFooter>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.activeCartFooter span{font-size:.7rem;color:var(--appMuted);font-weight:800}.activeCartFooter strong{font-size:1rem}.activeCartFooter>small{font-size:.6rem;line-height:1.4;color:var(--appMuted)}.activeCartPrimary{height:44px;border:0;border-radius:15px;background:linear-gradient(135deg,var(--appBlue),var(--appPink));color:#fff;font-size:.74rem;font-weight:950}.activeCartClear{height:35px;border:0;background:transparent;color:var(--appMuted);font-size:.65rem;font-weight:850}
body.cartOpen{touch-action:none}
@media(hover:hover){.headerAction:hover{background:rgba(255,255,255,.23)}.activeCartRemove:hover{background:rgba(255,80,100,.1);color:#e33}}
@media(max-width:520px){.topActions{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-end;flex-wrap:nowrap!important;gap:6px}.headerAction{width:38px;height:38px}.activeCartPanel{width:100dvw;padding-left:13px;padding-right:13px}.activeCartDrawer{grid-template-columns:0 1fr}.activeCartItem{grid-template-columns:58px minmax(0,1fr) auto;padding:8px;gap:9px}.activeCartThumb{width:58px;height:58px;box-sizing:border-box;padding:7px}.header-logo{max-width:min(42vw,180px)}}


.activeCartDates{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 2px;border-bottom:1px solid var(--appLine)}
.activeCartDates>div{min-width:0}.activeCartDates small,.activeCartDates strong{display:block}.activeCartDates small{font-size:.55rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em;color:var(--appMuted)}.activeCartDates strong{margin-top:3px;font-size:.62rem;line-height:1.35;color:var(--appText)}
.activeCartDates button{flex:0 0 auto;height:34px;padding:0 12px;border:1px solid var(--appLine);border-radius:12px;background:var(--appGlass);color:var(--appText);font-size:.61rem;font-weight:900}
.findDateGate{width:100%;max-width:100%;box-sizing:border-box;margin:0 0 12px;padding:12px;border:1px solid var(--appLine);border-radius:18px;background:var(--appGlass);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;box-shadow:var(--shadowSoft);overflow:hidden}
.findDateGateCopy{min-width:0;display:flex;align-items:center;gap:10px}.findDateGateCopy>i{width:36px;height:36px;flex:0 0 36px;border-radius:12px;display:grid;place-items:center;background:var(--appPanelSoft);color:var(--appBlue)}.findDateGateCopy>div{min-width:0}.findDateGateCopy span,.findDateGateCopy strong{display:block}.findDateGateCopy span{font-size:.54rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em;color:var(--appMuted)}.findDateGateCopy strong{max-width:100%;margin-top:3px;font-size:.66rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.findDateGate.isReady .findDateGateCopy>i{color:#16a36a}
.findDateGate>button{flex:0 0 auto;height:36px;padding:0 13px;border:0;border-radius:12px;background:linear-gradient(135deg,var(--appBlue),var(--appPink));color:#fff;font-size:.62rem;font-weight:900}
.findDateFields{min-width:0;width:100%;grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;padding-top:10px;border-top:1px solid var(--appLine);box-sizing:border-box}.findDateFields[hidden]{display:none!important}.findDateField{min-width:0;display:grid;gap:5px}.findDateField>span{font-size:.52rem;font-weight:850;color:var(--appMuted)}.findDateValue{min-width:0;width:100%;height:50px;box-sizing:border-box;padding:7px 9px;border:1px solid var(--appLine);border-radius:11px;display:block;overflow:hidden;background:var(--appPanel);color:var(--appText);font:inherit;text-align:left}.findDateValue strong,.findDateValue small{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.findDateValue strong{font-size:.62rem}.findDateValue small{margin-top:3px;color:var(--appMuted);font-size:.54rem}.findDateFields>#findDateApply{grid-column:1/-1;width:100%;height:40px;padding:0 12px;border:0;border-radius:11px;background:var(--appText);color:var(--appBg);font-size:.6rem;font-weight:900}
.findDatePicker{position:fixed;inset:0;z-index:2147483000;display:grid;align-items:end;overflow:hidden}.findDatePicker[hidden]{display:none!important}.findDatePickerBackdrop{position:absolute;inset:0;border:0;background:rgba(5,8,18,.48);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.findDatePickerPanel{position:relative;width:min(100dvw,520px);max-height:min(88dvh,760px);margin:0 auto;padding:18px 16px calc(18px + var(--appSafeBottom));overflow-y:auto;border:1px solid var(--appLine);border-radius:28px 28px 0 0;background:color-mix(in srgb,var(--appPanel) 96%,transparent);box-shadow:0 -24px 70px rgba(0,0,0,.26)}.findDatePickerHeader{display:flex;align-items:center;justify-content:space-between;gap:12px}.findDatePickerHeader span{font-size:.55rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--appBlue)}.findDatePickerHeader h2{margin:3px 0 0;font-size:1.2rem;letter-spacing:-.035em}.findDatePickerHeader>button{width:38px;height:38px;border:1px solid var(--appLine);border-radius:13px;background:var(--appGlass);color:var(--appText)}.findDatePickerStep{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;margin:16px 0 12px}.findDatePickerStep button{height:38px;border:1px solid var(--appLine);border-radius:12px;background:var(--appPanelSoft);color:var(--appMuted);font-size:.65rem;font-weight:900}.findDatePickerStep button.isActive{border-color:color-mix(in srgb,var(--appBlue) 55%,transparent);background:color-mix(in srgb,var(--appBlue) 12%,var(--appPanel));color:var(--appText)}.findDatePickerStep i{color:var(--appMuted)}.findCalendarHead{display:grid;grid-template-columns:38px 1fr 38px;align-items:center;gap:8px;margin:6px 0 10px}.findCalendarHead strong{text-align:center;font-size:.82rem}.findCalendarHead button{width:38px;height:38px;border:1px solid var(--appLine);border-radius:12px;background:var(--appGlass);color:var(--appText)}.findCalendarHead button:disabled{opacity:.3}.findCalendarWeek,.findCalendarGrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.findCalendarWeek{margin-bottom:5px}.findCalendarWeek span{text-align:center;color:var(--appMuted);font-size:.51rem;font-weight:850}.findCalendarGrid button,.findCalendarBlank{aspect-ratio:1;min-width:0;border:0;border-radius:12px}.findCalendarGrid button{background:var(--appPanelSoft);color:var(--appText);font-size:.64rem;font-weight:850}.findCalendarGrid button.isToday{box-shadow:inset 0 0 0 1px var(--appBlue)}.findCalendarGrid button.isSelected{background:linear-gradient(135deg,var(--appBlue),var(--appPink));color:#fff}.findCalendarGrid button:disabled{opacity:.24}.findTimePicker{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0}.findTimePicker>span{font-size:.62rem;font-weight:900;color:var(--appMuted)}.findTimeControls{display:flex;align-items:center;gap:6px}.findTimeSelect{position:relative}.findTimeSelectButton{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:58px;height:38px;padding:0 10px;border:1px solid var(--appLine);border-radius:11px;background:var(--appPanel);color:var(--appText);font:inherit;font-size:.65rem;font-weight:850}.findTimeSelect[data-time-select="minute"] .findTimeSelectButton{min-width:66px}.findTimeSelect[data-time-select="meridiem"] .findTimeSelectButton{min-width:72px}.findTimeSelectButton i{font-size:.7rem;transition:transform .2s ease}.findTimeSelectButton.isOpen i{transform:rotate(180deg)}.findTimeSelectButton:disabled{opacity:.4}.findTimeSelectMenu{position:absolute;right:0;bottom:calc(100% + 8px);z-index:8;width:max-content;min-width:100%;max-height:min(42dvh,320px);padding:6px;overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--appLine);border-radius:15px;background:color-mix(in srgb,var(--appPanel) 98%,transparent);box-shadow:0 18px 48px rgba(8,12,28,.22);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.findTimeSelectMenu[hidden]{display:none!important}.findTimeSelectOption{display:flex;align-items:center;justify-content:center;width:100%;min-width:54px;height:38px;padding:0 12px;border:0;border-radius:10px;background:transparent;color:var(--appText);font:inherit;font-size:.68rem;font-weight:850}.findTimeSelectOption.isSelected{background:color-mix(in srgb,var(--appBlue) 14%,var(--appPanel));color:var(--appBlue)}.findTimeSelectOption:active{transform:scale(.97)}.findDatePickerConfirm{width:100%;height:44px;border:0;border-radius:14px;background:var(--appText);color:var(--appBg);font-size:.7rem;font-weight:950}body.datePickerOpen{overflow:hidden;touch-action:none}
.findResultBtn.needsDates{opacity:.62}.findResultBtn.needsDates i::before{content:"\f1e8"}
@media(max-width:520px){.findDatePickerPanel{width:100dvw}.activeCartDates{padding-left:2px;padding-right:2px}}
.findRentalMinimum{margin:-4px 0 12px;text-align:center;color:var(--appMuted);font-size:.58rem;font-weight:850;letter-spacing:.01em}
.findCalendarHead .findCalendarJump{width:100%;min-width:0;padding:0 10px;display:flex;align-items:center;justify-content:center;gap:7px;font-size:.82rem;font-weight:900}.findCalendarJump i{font-size:.68rem;transition:transform .22s ease}.findCalendarJump.isOpen i{transform:rotate(180deg)}.findCalendarJumpPanel{min-height:245px;padding:4px 0 8px}.findCalendarYearHead{display:grid;grid-template-columns:38px 1fr 38px;align-items:center;gap:8px;margin:2px 0 14px}.findCalendarYearHead strong{text-align:center;font-size:1rem}.findCalendarYearHead button{width:38px;height:38px;border:1px solid var(--appLine);border-radius:12px;background:var(--appGlass);color:var(--appText)}.findCalendarYearHead button:disabled{opacity:.3}.findCalendarMonthGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.findCalendarMonthGrid button{height:48px;border:1px solid var(--appLine);border-radius:13px;background:var(--appPanelSoft);color:var(--appText);font-size:.68rem;font-weight:900}.findCalendarMonthGrid button.isSelected{border-color:color-mix(in srgb,var(--appBlue) 55%,transparent);background:color-mix(in srgb,var(--appBlue) 13%,var(--appPanel));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--appPink) 32%,transparent)}.findCalendarMonthGrid button:disabled{opacity:.24}

/* Membership-aware cart hold status */
.activeCartHoldStatus{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;margin:10px 1px 0;padding:10px 11px;border:1px solid color-mix(in srgb,var(--appBlue) 30%,var(--appLine));border-radius:15px;background:color-mix(in srgb,var(--appBlue) 7%,var(--appGlass));overflow:hidden}
.activeCartHoldStatus[hidden]{display:none!important}.activeCartHoldIcon{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:color-mix(in srgb,var(--appBlue) 14%,var(--appPanel));color:var(--appBlue)}
.activeCartHoldCopy{min-width:0}.activeCartHoldCopy small,.activeCartHoldCopy strong{display:block}.activeCartHoldCopy small{font-size:.52rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase;color:var(--appMuted)}.activeCartHoldCopy strong{margin-top:2px;font-size:.66rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activeCartHoldStatus>span{max-width:92px;text-align:right;font-size:.53rem;line-height:1.25;font-weight:850;color:var(--appMuted)}
.activeCartHoldStatus.isExpired{border-color:color-mix(in srgb,#e44 42%,var(--appLine));background:color-mix(in srgb,#e44 8%,var(--appGlass))}.activeCartHoldStatus.isExpired .activeCartHoldIcon{color:#e44;background:color-mix(in srgb,#e44 12%,var(--appPanel))}.activeCartHoldStatus.isError{border-color:color-mix(in srgb,#e79b24 45%,var(--appLine));background:color-mix(in srgb,#e79b24 8%,var(--appGlass))}.activeCartHoldStatus.isError .activeCartHoldIcon{color:#e79b24;background:color-mix(in srgb,#e79b24 12%,var(--appPanel))}

.activeCartHoldStatus{position:relative;flex-wrap:wrap}.activeCartRetain{width:100%;margin-top:10px;border:0;border-radius:12px;padding:11px 14px;font-weight:800;background:var(--accent,#3467ff);color:#fff}.activeCartHoldStatus.isExpired .activeCartRetain{display:block}.activeCartHoldCopy strong{font-variant-numeric:tabular-nums}.activeCartHoldCopy small:after{content:" · activity refreshes this hold";opacity:.72;font-weight:600}


/* Customer-facing rental cart refinements */
.activeCartHeader>div{min-width:0}.activeCartHeaderHint{margin:6px 0 0;max-width:290px;color:var(--appMuted);font-size:.62rem;line-height:1.4}
.activeCartHoldStatus{grid-template-columns:40px minmax(0,1fr) auto;padding:13px 14px;margin:12px 1px 2px;border-radius:18px;box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 10%,transparent)}
.activeCartHoldIcon{width:40px;height:40px;border-radius:13px;font-size:1rem}
.activeCartHoldCopy small{font-size:.54rem}.activeCartHoldCopy strong{margin-top:4px;font-size:.74rem;white-space:normal;line-height:1.25}
.activeCartHoldStatus>span{max-width:105px;font-size:.56rem}
.activeCartHoldHelp{grid-column:2/-1;margin:1px 0 0;color:var(--appMuted);font-size:.56rem;line-height:1.35}
.activeCartHoldCopy small:after{content:""}
.activeCartRetain{grid-column:1/-1}
@media(max-width:520px){.activeCartHeaderHint{font-size:.58rem}.activeCartHoldStatus{grid-template-columns:38px minmax(0,1fr);gap:9px}.activeCartHoldStatus>span{grid-column:2;text-align:left;max-width:none}.activeCartHoldHelp{grid-column:2}.activeCartHoldIcon{width:38px;height:38px}.activeCartHoldCopy strong{font-size:.7rem}}


/* Compact cart reservation timer */
.activeCartHoldStatus{grid-template-columns:34px minmax(0,1fr) auto!important;gap:9px!important;margin:10px 1px 0!important;padding:9px 11px!important;min-height:54px!important;border-radius:15px!important;align-items:center!important}
.activeCartHoldIcon{width:34px!important;height:34px!important;border-radius:11px!important;font-size:.86rem!important}
.activeCartHoldCopy small{font-size:.48rem!important;line-height:1.1!important}
.activeCartHoldCopy strong{margin-top:2px!important;font-size:.68rem!important;line-height:1.15!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.activeCartHoldStatus>span{max-width:92px!important;font-size:.5rem!important;line-height:1.2!important;text-align:right!important}
.activeCartHoldHelp{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.activeCartRetain{grid-column:1/-1!important;margin-top:2px!important;padding:9px 11px!important}
@media(max-width:520px){.activeCartHoldStatus{grid-template-columns:32px minmax(0,1fr) auto!important;padding:8px 10px!important;min-height:50px!important}.activeCartHoldIcon{width:32px!important;height:32px!important}.activeCartHoldStatus>span{grid-column:auto!important;max-width:72px!important;text-align:right!important}.activeCartHoldCopy strong{font-size:.65rem!important}}

/* Guided rental checkout */
.checkoutDrawer,.contractDialog{position:fixed;inset:0;z-index:calc(var(--zToast) + 30);display:grid;place-items:center;pointer-events:none}.checkoutDrawer[hidden],.contractDialog[hidden]{display:none!important}.checkoutBackdrop,.contractBackdrop{position:absolute;inset:0;border:0;background:rgba(4,7,18,.58);opacity:0;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);transition:opacity .24s ease}.checkoutPanel{position:relative;width:min(760px,96dvw);height:min(860px,94dvh);display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;background:color-mix(in srgb,var(--appPanel) 96%,transparent);border:1px solid var(--appLine);border-radius:28px;box-shadow:0 28px 90px rgba(0,0,0,.35);overflow:hidden;transform:translateY(24px) scale(.985);opacity:0;transition:.24s ease}.checkoutDrawer.isOpen,.contractDialog.isOpen{pointer-events:auto}.checkoutDrawer.isOpen .checkoutBackdrop,.contractDialog.isOpen .contractBackdrop{opacity:1}.checkoutDrawer.isOpen .checkoutPanel{transform:none;opacity:1}.checkoutHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:21px 22px 16px;border-bottom:1px solid var(--appLine)}.checkoutHeader small,.checkoutSectionHeading small{display:block;color:var(--appMuted);font-size:.56rem;font-weight:950;letter-spacing:.09em;text-transform:uppercase}.checkoutHeader h2{margin:4px 0 4px;font-size:1.45rem;letter-spacing:-.04em}.checkoutHeader p{margin:0;color:var(--appMuted);font-size:.68rem;line-height:1.4}.checkoutHeader>button{width:40px;height:40px;border:1px solid var(--appLine);border-radius:14px;background:var(--appGlass);color:var(--appText)}.checkoutProgress{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:12px 18px;border-bottom:1px solid var(--appLine)}.checkoutProgress button{display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;padding:7px;border:0;border-radius:12px;background:transparent;color:var(--appMuted);font-size:.59rem}.checkoutProgress span{width:23px;height:23px;display:grid;place-items:center;border-radius:999px;border:1px solid var(--appLine);font-size:.55rem;font-weight:950}.checkoutProgress button.isActive{color:var(--appText);background:color-mix(in srgb,var(--appBlue) 9%,var(--appGlass))}.checkoutProgress button.isActive span,.checkoutProgress button.isComplete span{background:var(--appBlue);border-color:var(--appBlue);color:#fff}.checkoutBody{overflow:auto;padding:18px 20px}.checkoutStep{display:none}.checkoutStep.isActive{display:grid;gap:14px}.checkoutSectionHeading{display:flex;align-items:center;justify-content:space-between;gap:12px}.checkoutSectionHeading h3{margin:4px 0 0;font-size:1.05rem}.checkoutSectionHeading button{border:1px solid var(--appLine);border-radius:11px;padding:8px 11px;background:var(--appGlass);color:var(--appText);font-size:.61rem;font-weight:850}.checkoutDateCard,.checkoutPaymentSummary{display:flex;align-items:center;gap:12px;padding:13px 14px;border:1px solid var(--appLine);border-radius:17px;background:var(--appGlass)}.checkoutDateCard>i,.checkoutPaymentSummary>i{font-size:1.1rem;color:var(--appBlue)}.checkoutDateCard small,.checkoutDateCard strong,.checkoutPaymentSummary b,.checkoutPaymentSummary small{display:block}.checkoutDateCard small,.checkoutPaymentSummary small{font-size:.59rem;color:var(--appMuted)}.checkoutDateCard strong,.checkoutPaymentSummary b{margin-top:3px;font-size:.73rem}.checkoutItemList{display:grid;gap:8px}.checkoutItem{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:12px 13px;border:1px solid var(--appLine);border-radius:16px;background:var(--appGlass)}.checkoutItem b,.checkoutItem small{display:block}.checkoutItem b{font-size:.72rem}.checkoutItem small{margin-top:4px;color:var(--appMuted);font-size:.59rem}.checkoutItem strong{font-size:.7rem}.checkoutPromo{display:grid;gap:7px}.checkoutPromo label{font-size:.61rem;font-weight:900}.checkoutPromo>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.checkoutPromo input,.checkoutFormGrid input,.checkoutFormGrid select,.checkoutFormGrid textarea{width:100%;border:1px solid var(--appLine);border-radius:13px;background:var(--appGlass);color:var(--appText);padding:11px 12px;font:inherit;font-size:.68rem;outline:none}.checkoutPromo button{border:0;border-radius:13px;padding:0 16px;background:var(--appText);color:var(--appPanel);font-size:.64rem;font-weight:950}.checkoutPromo small{min-height:14px;color:var(--appMuted);font-size:.57rem}.checkoutTotals{display:grid;gap:7px;padding:13px 14px;border:1px solid var(--appLine);border-radius:17px;background:var(--appPanelSoft)}.checkoutTotals>div{display:flex;justify-content:space-between;gap:12px;font-size:.65rem}.checkoutTotals>div:last-child{padding-top:8px;border-top:1px solid var(--appLine);font-size:.76rem;font-weight:950}.checkoutFormGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.checkoutFormGrid label{display:grid;gap:6px}.checkoutFormGrid label.isWide{grid-column:1/-1}.checkoutFormGrid label>span{font-size:.59rem;font-weight:850;color:var(--appMuted)}.checkoutFormGrid textarea{resize:vertical}.checkoutContract{display:flex;align-items:center;justify-content:space-between;gap:13px;padding:14px;border:1px solid var(--appLine);border-radius:17px;background:var(--appGlass)}.checkoutContract>div{display:flex;align-items:center;gap:11px;min-width:0}.checkoutContract i{font-size:1.05rem;color:var(--appBlue)}.checkoutContract b,.checkoutContract small{display:block}.checkoutContract b{font-size:.71rem}.checkoutContract small{margin-top:4px;font-size:.58rem;line-height:1.4;color:var(--appMuted)}.checkoutContract button{flex:0 0 auto;border:1px solid var(--appLine);border-radius:11px;padding:8px 11px;background:var(--appPanel);color:var(--appText);font-size:.59rem;font-weight:900}.checkoutAgreement{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;border:1px solid var(--appLine);border-radius:14px;background:var(--appGlass);font-size:.63rem;line-height:1.4}.checkoutAgreement input{margin-top:2px}.checkoutPaymentMethods{display:grid;gap:8px}.checkoutPaymentMethods label{display:block}.checkoutPaymentMethods input{position:absolute;opacity:0}.checkoutPaymentMethods span{display:flex;align-items:center;gap:10px;padding:13px;border:1px solid var(--appLine);border-radius:15px;background:var(--appGlass);font-size:.66rem;font-weight:850}.checkoutPaymentMethods input:checked+span{border-color:color-mix(in srgb,var(--appBlue) 60%,var(--appLine));box-shadow:0 0 0 3px color-mix(in srgb,var(--appBlue) 13%,transparent)}.checkoutFinalReview{display:grid;gap:7px;padding:14px;border:1px solid var(--appLine);border-radius:17px}.checkoutFinalReview>div{display:flex;justify-content:space-between;gap:12px;font-size:.66rem}.checkoutFinalReview>div:last-child{font-size:.8rem;font-weight:950}.checkoutPaymentNotice{margin:0;color:var(--appMuted);font-size:.58rem;line-height:1.45}.checkoutFooter{display:flex;justify-content:flex-end;gap:10px;padding:14px 18px;border-top:1px solid var(--appLine)}.checkoutFooter button{min-height:43px;border-radius:14px;padding:0 18px;font-size:.68rem;font-weight:950}.checkoutPrimary{border:0;background:linear-gradient(135deg,var(--appBlue),var(--appPink));color:#fff}.checkoutSecondary{border:1px solid var(--appLine);background:var(--appGlass);color:var(--appText)}.contractPanel{position:relative;width:min(620px,94dvw);max-height:88dvh;display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:var(--appPanel);border:1px solid var(--appLine);border-radius:24px;box-shadow:0 28px 90px rgba(0,0,0,.36);overflow:hidden;opacity:0;transform:translateY(18px);transition:.22s ease}.contractDialog.isOpen .contractPanel{opacity:1;transform:none}.contractPanel header,.contractPanel footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 17px;border-bottom:1px solid var(--appLine)}.contractPanel footer{border-top:1px solid var(--appLine);border-bottom:0;justify-content:flex-end}.contractPanel header h3{margin:0;font-size:1rem}.contractPanel header button{width:37px;height:37px;border:1px solid var(--appLine);border-radius:12px;background:var(--appGlass);color:var(--appText)}.contractPanel>div{overflow:auto;padding:18px;font-size:.67rem;line-height:1.65;color:var(--appText)}.contractPanel footer button{border:0;border-radius:13px;padding:11px 15px;background:var(--appText);color:var(--appPanel);font-size:.65rem;font-weight:950}
@media(max-width:640px){.checkoutPanel{width:100dvw;height:100dvh;max-height:none;border-radius:0;border:0}.checkoutHeader{padding:calc(14px + var(--appSafeTop)) 15px 12px}.checkoutProgress{padding:9px 8px}.checkoutProgress b{display:none}.checkoutBody{padding:15px 13px}.checkoutFormGrid{grid-template-columns:1fr}.checkoutFormGrid label.isWide{grid-column:auto}.checkoutFooter{padding:11px 13px calc(11px + var(--appSafeBottom))}.checkoutFooter button{flex:1}.checkoutContract{align-items:flex-start}.contractPanel{width:100dvw;height:100dvh;max-height:none;border-radius:0}}

/* Refined guided checkout — adapted from the existing customer portal visual flow */
.srOnly{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.checkoutDrawer{padding:18px}.checkoutPanel{width:min(1120px,97dvw);height:min(900px,95dvh);grid-template-rows:auto auto minmax(0,1fr) auto;border-radius:30px;background:color-mix(in srgb,var(--appPanel) 97%,transparent);box-shadow:0 34px 110px rgba(3,8,24,.42)}
.checkoutHeader{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;padding:18px 20px 15px;background:linear-gradient(135deg,color-mix(in srgb,var(--appBlue) 9%,var(--appPanel)),color-mix(in srgb,var(--appPink) 7%,var(--appPanel)));border-bottom:1px solid var(--appLine)}
.checkoutBrandMark{width:44px;height:44px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(135deg,var(--appBlue),var(--appPink));color:#fff;box-shadow:0 12px 28px color-mix(in srgb,var(--appBlue) 25%,transparent);font-size:1.05rem}.checkoutHeaderCopy{min-width:0}.checkoutHeader small{font-size:.55rem}.checkoutHeader h2{font-size:1.38rem;margin:2px 0}.checkoutHeader p{font-size:.65rem}.checkoutHeader>button{align-self:start}
.checkoutProgress{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:10px 18px;background:color-mix(in srgb,var(--appPanelSoft) 72%,transparent)}.checkoutProgress button{justify-content:flex-start;text-align:left;padding:9px 10px;border:1px solid transparent;border-radius:15px}.checkoutProgress button>span{flex:0 0 auto;width:28px;height:28px}.checkoutProgress button b,.checkoutProgress button small{display:block}.checkoutProgress button b{font-size:.62rem}.checkoutProgress button small{font-size:.5rem;color:var(--appMuted);margin-top:2px}.checkoutProgress button.isActive{border-color:color-mix(in srgb,var(--appBlue) 28%,var(--appLine));background:color-mix(in srgb,var(--appBlue) 10%,var(--appGlass))}.checkoutProgress button.isComplete{color:var(--appText)}
.checkoutWorkspace{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 330px;overflow:hidden}.checkoutBody{padding:20px 22px 24px}.checkoutStep.isActive{gap:16px;animation:checkoutStepIn .2s ease both}@keyframes checkoutStepIn{from{opacity:.3;transform:translateY(7px)}to{opacity:1;transform:none}}
.checkoutSectionHeading{align-items:flex-start}.checkoutSectionHeading h3{font-size:1.13rem;letter-spacing:-.035em}.checkoutSectionHeading p{margin:5px 0 0;color:var(--appMuted);font-size:.62rem;line-height:1.45}.checkoutSectionHeading button{display:flex;align-items:center;gap:6px}.checkoutDateCard{padding:14px 15px;border-radius:19px;background:linear-gradient(135deg,color-mix(in srgb,var(--appBlue) 8%,var(--appGlass)),color-mix(in srgb,var(--appPink) 5%,var(--appGlass)))}.checkoutDateCard>i{width:39px;height:39px;display:grid;place-items:center;border-radius:13px;background:var(--appPanel);box-shadow:0 8px 22px rgba(0,0,0,.08)}.checkoutDateCard span{display:block;margin-top:3px;color:var(--appMuted);font-size:.55rem}
.checkoutItemList{gap:9px}.checkoutItem{padding:13px 14px;border-radius:18px;transition:border-color .18s ease,transform .18s ease}.checkoutItem:hover{border-color:color-mix(in srgb,var(--appBlue) 32%,var(--appLine));transform:translateY(-1px)}.checkoutItem b{font-size:.75rem}.checkoutItem strong{font-size:.74rem}
.checkoutPromo{padding:14px;border:1px dashed color-mix(in srgb,var(--appBlue) 35%,var(--appLine));border-radius:19px;background:color-mix(in srgb,var(--appBlue) 5%,var(--appGlass))}.checkoutPromoHead>div{display:flex;align-items:center;gap:10px}.checkoutPromoHead i{width:33px;height:33px;display:grid;place-items:center;border-radius:11px;background:color-mix(in srgb,var(--appBlue) 12%,var(--appPanel));color:var(--appBlue)}.checkoutPromoHead b,.checkoutPromoHead small{display:block}.checkoutPromoHead b{font-size:.69rem}.checkoutPromoHead small{margin-top:2px;font-size:.54rem;color:var(--appMuted)}.checkoutPromo>div:not(.checkoutPromoHead){grid-template-columns:minmax(0,1fr) auto}.checkoutPromo input{background:var(--appPanel)}.checkoutPromo button{min-height:42px;background:var(--appText);white-space:nowrap}
.checkoutTotals{padding:15px 16px;border-radius:19px}.checkoutTotals>div{font-size:.67rem}.checkoutTotals>div:last-child{font-size:.84rem}
.checkoutFormGrid{gap:14px}.checkoutFormGrid label>span{display:flex;justify-content:space-between;gap:8px}.checkoutFormGrid label>span em{font-style:normal;font-weight:700;color:var(--appMuted)}.checkoutFormGrid input,.checkoutFormGrid select,.checkoutFormGrid textarea{min-height:45px;border-radius:15px;background:var(--appGlass);transition:border-color .18s ease,box-shadow .18s ease}.checkoutFormGrid textarea{min-height:105px}.checkoutFormGrid input:focus,.checkoutFormGrid select:focus,.checkoutFormGrid textarea:focus{border-color:color-mix(in srgb,var(--appBlue) 55%,var(--appLine));box-shadow:0 0 0 4px color-mix(in srgb,var(--appBlue) 12%,transparent)}.checkoutInfoNotice{display:flex;align-items:flex-start;gap:9px;padding:12px 13px;border-radius:16px;background:color-mix(in srgb,var(--appBlue) 8%,var(--appGlass));color:var(--appMuted);font-size:.59rem;line-height:1.45}.checkoutInfoNotice i{color:var(--appBlue);font-size:.8rem}
.checkoutContractList,.checkoutAgreementGroup{display:grid;gap:9px}.checkoutContract{padding:15px;border-radius:19px}.checkoutContract>div>i{width:38px;height:38px;display:grid;place-items:center;border-radius:13px;background:color-mix(in srgb,var(--appBlue) 10%,var(--appPanel))}.checkoutContract button{display:flex;align-items:center;gap:5px;white-space:nowrap}.checkoutAgreement{position:relative;align-items:stretch;padding:0;overflow:hidden}.checkoutAgreement input{position:absolute;opacity:0}.checkoutAgreement>span{width:100%;display:grid;grid-template-columns:31px minmax(0,1fr);column-gap:10px;padding:12px 13px}.checkoutAgreement>span>i{grid-row:1/3;width:27px;height:27px;display:grid;place-items:center;border-radius:9px;border:1px solid var(--appLine);color:transparent}.checkoutAgreement b,.checkoutAgreement small{display:block}.checkoutAgreement b{font-size:.65rem}.checkoutAgreement small{margin-top:3px;color:var(--appMuted);font-size:.54rem}.checkoutAgreement input:checked+span{background:color-mix(in srgb,var(--appBlue) 8%,var(--appGlass))}.checkoutAgreement input:checked+span>i{background:var(--appBlue);border-color:var(--appBlue);color:#fff}
.checkoutPaymentSummary{padding:14px 15px;border-radius:19px}.checkoutPaymentSummary>i{width:38px;height:38px;display:grid;place-items:center;border-radius:13px;background:color-mix(in srgb,var(--appBlue) 11%,var(--appPanel))}.checkoutPaymentSummary>span{margin-left:auto;padding:6px 9px;border-radius:999px;background:color-mix(in srgb,#19a36b 12%,var(--appGlass));color:#128258;font-size:.53rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.checkoutPaymentMethods{grid-template-columns:1fr 1fr}.checkoutPaymentMethods span{height:100%;align-items:flex-start;padding:14px;border-radius:18px}.checkoutPaymentMethods span>i:first-child{width:35px;height:35px;display:grid;place-items:center;border-radius:11px;background:var(--appPanel);font-size:.9rem}.checkoutPaymentMethods span>span{display:block;padding:0;border:0;background:none}.checkoutPaymentMethods b,.checkoutPaymentMethods small{display:block}.checkoutPaymentMethods b{font-size:.66rem}.checkoutPaymentMethods small{margin-top:4px;color:var(--appMuted);font-size:.53rem;line-height:1.35}.checkoutPaymentMethods span>i:last-child{margin-left:auto;color:transparent}.checkoutPaymentMethods input:checked+span>i:last-child{color:var(--appBlue)}.checkoutPaymentNotice{display:flex;gap:9px;align-items:flex-start;padding:12px;border-radius:16px;background:color-mix(in srgb,var(--appBlue) 7%,var(--appGlass))}.checkoutPaymentNotice i{color:var(--appBlue);font-size:.8rem}
.checkoutSidebar{min-height:0;overflow:auto;padding:18px;border-left:1px solid var(--appLine);background:color-mix(in srgb,var(--appPanelSoft) 78%,transparent);display:flex;flex-direction:column;gap:12px}.checkoutSidebarHead{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.checkoutSidebarHead small{font-size:.55rem;font-weight:900;text-transform:uppercase;letter-spacing:.09em;color:var(--appMuted)}.checkoutSidebarHead b{font-size:.66rem}.checkoutSidebarDate{display:flex;gap:10px;align-items:center;padding:12px;border-radius:16px;border:1px solid var(--appLine);background:var(--appGlass)}.checkoutSidebarDate>i{color:var(--appBlue)}.checkoutSidebarDate small,.checkoutSidebarDate b{display:block}.checkoutSidebarDate small{font-size:.52rem;color:var(--appMuted)}.checkoutSidebarDate b{margin-top:3px;font-size:.62rem}.checkoutMiniItems{display:grid;gap:7px;max-height:235px;overflow:auto}.checkoutMiniItem{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:10px 11px;border-radius:14px;border:1px solid var(--appLine);background:var(--appGlass)}.checkoutMiniItem b,.checkoutMiniItem small{display:block}.checkoutMiniItem b{font-size:.61rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.checkoutMiniItem small{margin-top:3px;font-size:.51rem;color:var(--appMuted)}.checkoutMiniItem strong{font-size:.59rem}.checkoutSidebarTotals{display:grid;gap:7px;padding:13px;border-radius:16px;background:var(--appPanel);border:1px solid var(--appLine)}.checkoutSidebarTotals>div{display:flex;justify-content:space-between;gap:10px;font-size:.59rem}.checkoutSidebarTotals>div:last-child{padding-top:8px;border-top:1px solid var(--appLine);font-size:.72rem;font-weight:950}.checkoutSecureNote{margin-top:auto;display:flex;gap:9px;padding:12px;border-radius:16px;background:color-mix(in srgb,var(--appPink) 7%,var(--appGlass));border:1px solid color-mix(in srgb,var(--appPink) 18%,var(--appLine))}.checkoutSecureNote i{color:var(--appPink)}.checkoutSecureNote b,.checkoutSecureNote small{display:block}.checkoutSecureNote b{font-size:.6rem}.checkoutSecureNote small{margin-top:3px;color:var(--appMuted);font-size:.51rem;line-height:1.4}
.checkoutFooter{align-items:center;padding:13px 18px}.checkoutFooterStep{margin-right:auto}.checkoutFooterStep small,.checkoutFooterStep b{display:block}.checkoutFooterStep small{font-size:.5rem;text-transform:uppercase;letter-spacing:.08em;color:var(--appMuted);font-weight:900}.checkoutFooterStep b{margin-top:2px;font-size:.63rem}.checkoutFooter button{display:flex;align-items:center;justify-content:center;gap:8px}.checkoutPrimary{min-width:178px;box-shadow:0 12px 28px color-mix(in srgb,var(--appBlue) 22%,transparent)}
.contractPanel{width:min(700px,94dvw);border-radius:26px}.contractPanel>div{font-size:.71rem;padding:22px 24px}
@media(max-width:900px){.checkoutDrawer{padding:0;width:auto;height:auto;inset:0;overflow:hidden}.checkoutPanel{width:100%;height:100%;min-width:0;max-width:none;max-height:none;border-radius:0;border:0}.checkoutWorkspace{grid-template-columns:1fr}.checkoutSidebar{display:none}.checkoutProgress button{justify-content:center;text-align:center}.checkoutProgress button small{display:none}.checkoutBody{padding:17px 15px 22px}.checkoutFooterStep{display:none}.checkoutFooter{padding-bottom:calc(12px + var(--appSafeBottom))}}
@media(max-width:640px){.checkoutHeader{grid-template-columns:auto minmax(0,1fr) auto;padding:calc(12px + var(--appSafeTop)) 13px 11px;gap:10px}.checkoutBrandMark{width:38px;height:38px;border-radius:13px}.checkoutHeader h2{font-size:1.08rem}.checkoutHeader p{font-size:.56rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.checkoutProgress{padding:8px 7px;gap:4px}.checkoutProgress button{padding:7px 4px;border-radius:12px}.checkoutProgress button>span{width:25px;height:25px}.checkoutProgress button b{display:none}.checkoutBody{padding:15px 12px 18px}.checkoutSectionHeading h3{font-size:1rem}.checkoutSectionHeading p{font-size:.57rem}.checkoutSectionHeading button{padding:7px 9px}.checkoutDateCard{padding:12px}.checkoutItem{padding:11px 12px}.checkoutPromo>div:not(.checkoutPromoHead){grid-template-columns:1fr}.checkoutPromo button{min-height:40px}.checkoutFormGrid{grid-template-columns:1fr;gap:11px}.checkoutFormGrid label.isWide{grid-column:auto}.checkoutContract{align-items:flex-start;display:grid;grid-template-columns:1fr}.checkoutContract button{justify-content:center}.checkoutPaymentMethods{grid-template-columns:1fr}.checkoutPaymentMethods span{padding:12px}.checkoutFooter{padding:10px 12px calc(10px + var(--appSafeBottom))}.checkoutFooter button{flex:1;min-width:0}.checkoutPrimary{min-width:0}.contractPanel{width:100dvw;height:100dvh;max-height:none;border-radius:0}}

/* Checkout destination and saved-address experience */
.checkoutEventBasics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.checkoutEventBasics label,.checkoutNotesField{display:grid;gap:6px}.checkoutEventBasics label>span,.checkoutNotesField>span{font-size:.59rem;font-weight:850;color:var(--appMuted)}.checkoutEventBasics input,.checkoutNotesField textarea{width:100%;min-height:45px;border:1px solid var(--appLine);border-radius:15px;background:var(--appGlass);color:var(--appText);padding:11px 12px;font:inherit;font-size:.68rem;outline:none}.checkoutNotesField textarea{min-height:104px;resize:vertical}.checkoutEventBasics input:focus,.checkoutNotesField textarea:focus{border-color:color-mix(in srgb,var(--appBlue) 55%,var(--appLine));box-shadow:0 0 0 4px color-mix(in srgb,var(--appBlue) 12%,transparent)}
.checkoutFulfillmentChoices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.checkoutFulfillmentChoices label{display:block;cursor:pointer}.checkoutFulfillmentChoices input{position:absolute;opacity:0;pointer-events:none}.checkoutFulfillmentChoices label>span{height:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px;border:1px solid var(--appLine);border-radius:17px;background:var(--appGlass);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.checkoutFulfillmentChoices label>span>i:first-child{width:36px;height:36px;display:grid;place-items:center;border-radius:12px;background:var(--appPanelSoft);color:var(--appBlue);font-size:.95rem}.checkoutFulfillmentChoices label>span>span b,.checkoutFulfillmentChoices label>span>span small{display:block}.checkoutFulfillmentChoices b{font-size:.66rem}.checkoutFulfillmentChoices small{margin-top:3px;color:var(--appMuted);font-size:.54rem;line-height:1.35}.checkoutFulfillmentChoices label>span>i:last-child{color:var(--appBlue);opacity:0;transform:scale(.8);transition:.18s ease}.checkoutFulfillmentChoices input:checked+span{border-color:color-mix(in srgb,var(--appBlue) 58%,var(--appLine));box-shadow:0 0 0 3px color-mix(in srgb,var(--appBlue) 11%,transparent);background:color-mix(in srgb,var(--appBlue) 6%,var(--appGlass))}.checkoutFulfillmentChoices input:checked+span>i:last-child{opacity:1;transform:scale(1)}
.checkoutLocationCard{display:grid;gap:12px;padding:15px;border:1px solid var(--appLine);border-radius:20px;background:var(--appPanelSoft)}.checkoutLocationHead{display:flex;align-items:center;justify-content:space-between;gap:12px}.checkoutLocationHead>div{display:flex;align-items:center;gap:10px}.checkoutLocationHead>div>i{width:38px;height:38px;display:grid;place-items:center;border-radius:13px;background:var(--appPanel);color:var(--appBlue);box-shadow:0 8px 20px rgba(0,0,0,.07)}.checkoutLocationHead b,.checkoutLocationHead small{display:block}.checkoutLocationHead b{font-size:.72rem}.checkoutLocationHead small{margin-top:3px;color:var(--appMuted);font-size:.56rem}.checkoutLocationHead button{display:flex;align-items:center;gap:6px;border:1px solid var(--appLine);border-radius:12px;padding:9px 11px;background:var(--appPanel);color:var(--appText);font-size:.59rem;font-weight:900}
.checkoutSavedAddresses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.checkoutSavedAddress{display:block;cursor:pointer}.checkoutSavedAddress input{position:absolute;opacity:0;pointer-events:none}.checkoutSavedAddress>span{height:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;border:1px solid var(--appLine);border-radius:15px;background:var(--appGlass);transition:.18s ease}.checkoutSavedAddress>span>i:first-child{width:32px;height:32px;display:grid;place-items:center;border-radius:11px;background:var(--appPanel);color:var(--appBlue)}.checkoutSavedAddress b,.checkoutSavedAddress small{display:block}.checkoutSavedAddress b{font-size:.64rem}.checkoutSavedAddress small{margin-top:3px;color:var(--appMuted);font-size:.53rem;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.checkoutSavedAddress>span>i:last-child{color:var(--appBlue);opacity:0}.checkoutSavedAddress input:checked+span{border-color:color-mix(in srgb,var(--appBlue) 58%,var(--appLine));box-shadow:0 0 0 3px color-mix(in srgb,var(--appBlue) 10%,transparent);background:color-mix(in srgb,var(--appBlue) 5%,var(--appGlass))}.checkoutSavedAddress input:checked+span>i:last-child{opacity:1}
.checkoutAddressForm{display:grid;gap:12px;padding-top:12px;border-top:1px solid var(--appLine)}.checkoutAddressForm[hidden]{display:none}.checkoutAddressFormHead b,.checkoutAddressFormHead small{display:block}.checkoutAddressFormHead b{font-size:.67rem}.checkoutAddressFormHead small{margin-top:3px;color:var(--appMuted);font-size:.55rem}.checkoutSaveAddress{display:flex;align-items:flex-start;gap:9px;padding:11px 12px;border:1px solid var(--appLine);border-radius:14px;background:var(--appGlass);cursor:pointer}.checkoutSaveAddress>span{display:flex;align-items:center;gap:9px}.checkoutSaveAddress>span>i{color:var(--appBlue);font-size:.9rem}.checkoutSaveAddress b,.checkoutSaveAddress small{display:block}.checkoutSaveAddress b{font-size:.62rem}.checkoutSaveAddress small{margin-top:2px;color:var(--appMuted);font-size:.53rem}.checkoutPickupCard{display:flex;align-items:flex-start;gap:11px;padding:13px;border-radius:16px;background:color-mix(in srgb,var(--appBlue) 7%,var(--appGlass));border:1px solid color-mix(in srgb,var(--appBlue) 18%,var(--appLine))}.checkoutPickupCard>i{width:37px;height:37px;display:grid;place-items:center;flex:0 0 auto;border-radius:12px;background:var(--appPanel);color:var(--appBlue)}.checkoutPickupCard b,.checkoutPickupCard small{display:block}.checkoutPickupCard b{font-size:.67rem}.checkoutPickupCard small{margin-top:4px;color:var(--appMuted);font-size:.56rem;line-height:1.45}.checkoutLocationCard.isPickup .checkoutLocationHead{display:none}
@media(max-width:820px){.checkoutFulfillmentChoices{grid-template-columns:1fr}.checkoutFulfillmentChoices label>span{min-height:68px}.checkoutSavedAddresses{grid-template-columns:1fr}}
@media(max-width:640px){.checkoutEventBasics{grid-template-columns:1fr}.checkoutLocationCard{padding:13px;border-radius:18px}.checkoutLocationHead{align-items:flex-start}.checkoutLocationHead button{padding:8px 9px}.checkoutSavedAddress small{white-space:normal}.checkoutFulfillmentChoices label>span{padding:11px}.checkoutAddressForm .checkoutFormGrid{gap:10px}}

.checkoutSavedAddress em{display:inline-flex;margin-top:5px;padding:3px 7px;border-radius:999px;background:color-mix(in srgb,var(--appBlue) 10%,transparent);color:var(--appBlue);font-size:.48rem;font-style:normal;font-weight:800;letter-spacing:.02em}


.checkoutDeliveryQuote{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;margin-top:16px;padding:16px;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--surface) 94%,var(--accent) 6%)}
.checkoutDeliveryQuoteIcon{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);font-size:20px}
.checkoutDeliveryQuoteCopy{min-width:0;display:grid;gap:3px}.checkoutDeliveryQuoteCopy small{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.checkoutDeliveryQuoteCopy b{font-size:22px;line-height:1.1}.checkoutDeliveryQuoteCopy span{font-size:12px;color:var(--muted);line-height:1.45}
.checkoutDeliveryQuote button{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:12px;padding:10px 12px;font-weight:800;display:flex;align-items:center;gap:7px}.checkoutDeliveryQuote.isLoading .checkoutDeliveryQuoteIcon i{animation:checkoutSpin 1s linear infinite}.checkoutDeliveryQuote.isReady{border-color:color-mix(in srgb,#1f9d55 45%,var(--line));background:color-mix(in srgb,var(--surface) 92%,#1f9d55 8%)}.checkoutDeliveryQuote.isReview{border-color:color-mix(in srgb,#d97706 45%,var(--line));background:color-mix(in srgb,var(--surface) 92%,#d97706 8%)}
.checkoutDeliveryBreakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.checkoutDeliveryBreakdown>div{padding:11px 12px;border:1px solid var(--line);border-radius:13px;background:var(--surface);display:grid;gap:2px}.checkoutDeliveryBreakdown span{font-size:11px;color:var(--muted)}.checkoutDeliveryBreakdown b{font-size:13px}
@keyframes checkoutSpin{to{transform:rotate(360deg)}}
@media(max-width:720px){.checkoutDeliveryQuote{grid-template-columns:auto 1fr}.checkoutDeliveryQuote button{grid-column:1/-1;justify-content:center}.checkoutDeliveryBreakdown{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Checkout experience redesign */
.checkoutEventCard,.checkoutPhoneCard{display:grid;gap:14px;padding:16px;border:1px solid var(--appLine);border-radius:22px;background:var(--appPanelSoft);box-shadow:0 14px 34px rgba(30,55,90,.06)}
.checkoutCardLead{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center}.checkoutCardLead>i{width:44px;height:44px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(145deg,color-mix(in srgb,var(--appBlue) 13%,var(--appPanel)),color-mix(in srgb,var(--appPink) 10%,var(--appPanel)));color:var(--appBlue);font-size:1rem}.checkoutCardLead small,.checkoutCardLead b,.checkoutCardLead span{display:block}.checkoutCardLead small{text-transform:uppercase;letter-spacing:.09em;font-size:.5rem;font-weight:950;color:var(--appMuted)}.checkoutCardLead b{margin-top:2px;font-size:.72rem}.checkoutCardLead span{margin-top:3px;color:var(--appMuted);font-size:.55rem;line-height:1.4}
.checkoutEventTypePills{display:flex;gap:7px;overflow:auto;padding-bottom:2px;scrollbar-width:none}.checkoutEventTypePills::-webkit-scrollbar{display:none}.checkoutEventTypePills button{flex:0 0 auto;display:flex;align-items:center;gap:6px;min-height:34px;padding:0 11px;border:1px solid var(--appLine);border-radius:999px;background:var(--appGlass);color:var(--appText);font:inherit;font-size:.56rem;font-weight:850;transition:.18s ease}.checkoutEventTypePills button i{color:var(--appBlue)}.checkoutEventTypePills button.isSelected{border-color:color-mix(in srgb,var(--appBlue) 55%,var(--appLine));background:color-mix(in srgb,var(--appBlue) 8%,var(--appGlass));box-shadow:0 0 0 3px color-mix(in srgb,var(--appBlue) 9%,transparent)}
.checkoutPremiumField{display:grid;gap:6px}.checkoutPremiumField>span{font-size:.56rem;font-weight:900;color:var(--appMuted)}.checkoutPremiumField>div{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;min-height:47px;padding:0 13px;border:1px solid var(--appLine);border-radius:15px;background:var(--appGlass)}.checkoutPremiumField>div:focus-within{border-color:color-mix(in srgb,var(--appBlue) 58%,var(--appLine));box-shadow:0 0 0 4px color-mix(in srgb,var(--appBlue) 10%,transparent)}.checkoutPremiumField i{color:var(--appBlue)}.checkoutPremiumField input{width:100%;border:0;outline:0;background:transparent;color:var(--appText);font:inherit;font-size:.67rem}
.checkoutPhoneChoices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.checkoutPhonePill{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;min-height:62px;padding:10px 11px;border:1px solid var(--appLine);border-radius:17px;background:var(--appGlass);color:var(--appText);text-align:left;font:inherit;transition:.18s ease}.checkoutPhonePill>i:first-child{width:34px;height:34px;display:grid;place-items:center;border-radius:12px;background:var(--appPanel);color:var(--appBlue)}.checkoutPhonePill small,.checkoutPhonePill b{display:block}.checkoutPhonePill small{font-size:.48rem;color:var(--appMuted)}.checkoutPhonePill b{margin-top:2px;font-size:.6rem}.checkoutPhonePill>i:last-child{color:var(--appBlue);opacity:0}.checkoutPhonePill.isSelected{border-color:color-mix(in srgb,var(--appBlue) 58%,var(--appLine));background:color-mix(in srgb,var(--appBlue) 6%,var(--appGlass));box-shadow:0 0 0 3px color-mix(in srgb,var(--appBlue) 9%,transparent)}.checkoutPhonePill.isSelected>i:last-child{opacity:1}.checkoutPhoneAdd>i:first-child{color:var(--appPink);background:color-mix(in srgb,var(--appPink) 8%,var(--appPanel))}
.checkoutLocationCard{padding:16px;border-radius:23px}.checkoutSavedAddresses{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.checkoutSavedAddress>span{min-height:92px;grid-template-columns:1fr auto;grid-template-rows:auto 1fr;padding:13px}.checkoutSavedAddress>span>i:first-child{grid-column:1;width:38px;height:38px}.checkoutSavedAddress>span>span{grid-column:1 / -1;min-width:0}.checkoutSavedAddress>span>i:last-child{position:absolute;right:12px;top:12px}.checkoutSavedAddress{position:relative}.checkoutSavedAddress b{font-size:.65rem}.checkoutSavedAddress small{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.checkoutSavedAddress em{display:inline-flex;margin-top:7px;padding:4px 7px;border-radius:999px;background:color-mix(in srgb,var(--appBlue) 9%,var(--appPanel));color:var(--appBlue);font-size:.45rem;font-style:normal;font-weight:900}
.checkoutAddressForm{display:grid;gap:13px;padding:14px;border:1px dashed color-mix(in srgb,var(--appBlue) 35%,var(--appLine));border-radius:18px;background:color-mix(in srgb,var(--appBlue) 3%,var(--appGlass))}.checkoutAddressSearch{display:grid;gap:6px}.checkoutAddressSearch>span{font-size:.56rem;font-weight:900;color:var(--appMuted)}.checkoutAddressSearch>div{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;min-height:49px;padding:0 13px;border:1px solid var(--appLine);border-radius:15px;background:var(--appPanel)}.checkoutAddressSearch>div:focus-within{border-color:color-mix(in srgb,var(--appBlue) 58%,var(--appLine));box-shadow:0 0 0 4px color-mix(in srgb,var(--appBlue) 10%,transparent)}.checkoutAddressSearch i{color:var(--appBlue)}.checkoutAddressSearch input{width:100%;border:0;outline:0;background:transparent;color:var(--appText);font:inherit;font-size:.66rem}.checkoutAddressSearch>small{color:var(--appMuted);font-size:.49rem}
.checkoutAddressTypeGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.checkoutAddressTypeGrid label{cursor:pointer}.checkoutAddressTypeGrid input{position:absolute;opacity:0}.checkoutAddressTypeGrid span{display:grid;place-items:center;gap:5px;min-height:58px;padding:8px 4px;border:1px solid var(--appLine);border-radius:14px;background:var(--appGlass);transition:.18s ease}.checkoutAddressTypeGrid i{color:var(--appBlue);font-size:.85rem}.checkoutAddressTypeGrid b{font-size:.5rem}.checkoutAddressTypeGrid input:checked+span{border-color:color-mix(in srgb,var(--appBlue) 58%,var(--appLine));background:color-mix(in srgb,var(--appBlue) 7%,var(--appGlass));box-shadow:0 0 0 3px color-mix(in srgb,var(--appBlue) 9%,transparent)}
.checkoutAddressDetails{padding-top:2px}.checkoutDeliverySummary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 15px;border:1px solid var(--appLine);border-radius:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--appBlue) 7%,var(--appPanel)),color-mix(in srgb,var(--appPink) 5%,var(--appPanel)))}.checkoutDeliverySummary>div{display:flex;align-items:center;gap:11px;min-width:0}.checkoutDeliverySummary>div>i{width:39px;height:39px;display:grid;place-items:center;border-radius:13px;background:var(--appPanel);color:var(--appBlue);font-size:.92rem}.checkoutDeliverySummary span{min-width:0}.checkoutDeliverySummary small,.checkoutDeliverySummary b,.checkoutDeliverySummary em{display:block}.checkoutDeliverySummary small{text-transform:uppercase;letter-spacing:.08em;font-size:.47rem;font-weight:950;color:var(--appMuted)}.checkoutDeliverySummary b{margin-top:2px;font-size:.76rem}.checkoutDeliverySummary em{margin-top:2px;color:var(--appMuted);font-size:.5rem;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.checkoutDeliverySummary button{flex:0 0 auto;width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--appLine);border-radius:12px;background:var(--appPanel);color:var(--appText)}.checkoutDeliverySummary.isLoading button i{animation:checkoutSpin .9s linear infinite}@keyframes checkoutSpin{to{transform:rotate(360deg)}}
.checkoutDeliveryBreakdown{display:none!important}.pac-container{z-index:2147483647!important;border:1px solid rgba(30,55,90,.12)!important;border-radius:16px!important;overflow:hidden!important;box-shadow:0 18px 46px rgba(20,36,65,.2)!important;font-family:inherit!important}.pac-item{padding:10px 12px!important;cursor:pointer!important}.pac-icon{margin-top:5px!important}
@media(max-width:640px){.checkoutEventCard,.checkoutPhoneCard,.checkoutLocationCard{padding:13px;border-radius:19px}.checkoutPhoneChoices{grid-template-columns:1fr}.checkoutSavedAddresses{grid-template-columns:repeat(2,minmax(0,1fr))}.checkoutSavedAddress>span{min-height:104px}.checkoutAddressTypeGrid{grid-template-columns:repeat(4,minmax(62px,1fr));overflow-x:auto}.checkoutAddressTypeGrid span{min-height:55px}.checkoutDeliverySummary{padding:12px}.checkoutDeliverySummary em{max-width:210px}}

.checkoutIncludedService{display:grid;grid-template-columns:46px minmax(0,1fr) 24px;align-items:center;gap:13px;padding:15px;border:1px solid color-mix(in srgb,var(--appBlue) 30%,var(--appLine));border-radius:18px;background:color-mix(in srgb,var(--appBlue) 7%,var(--appGlass))}.checkoutIncludedService>i:first-child{width:46px;height:46px;display:grid;place-items:center;border-radius:15px;background:color-mix(in srgb,var(--appBlue) 14%,var(--appPanel));color:var(--appBlue);font-size:1.15rem}.checkoutIncludedService>i:last-child{color:var(--appBlue);font-size:1.05rem}.checkoutIncludedService small,.checkoutIncludedService b,.checkoutIncludedService span{display:block}.checkoutIncludedService small{font-size:.55rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase;color:var(--appBlue)}.checkoutIncludedService b{margin-top:4px;font-size:.72rem}.checkoutIncludedService span{margin-top:4px;color:var(--appMuted);font-size:.59rem;line-height:1.45}

/* Membership-aware multiple cart switcher */
.activeCartSwitcher{padding:12px 1px;border-bottom:1px solid var(--appLine);display:grid;gap:10px}.activeCartSwitcher[hidden]{display:none!important}.cartSwitcherHead{display:flex;align-items:center;justify-content:space-between;gap:12px}.cartSwitcherHead small,.cartSwitcherHead strong{display:block}.cartSwitcherHead small{font-size:.52rem;text-transform:uppercase;letter-spacing:.07em;font-weight:900;color:var(--appMuted)}.cartSwitcherHead strong{margin-top:3px;font-size:.67rem}.cartSwitcherHead button{height:34px;padding:0 12px;border:1px solid var(--appLine);border-radius:12px;background:var(--appGlass);color:var(--appText);font-size:.61rem;font-weight:900}.cartSwitcherHead button:disabled{opacity:.42}.cartSwitcherGrid{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none}.cartSwitcherGrid::-webkit-scrollbar{display:none}.cartSwitcherCard{min-width:150px;display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px;border:1px solid var(--appLine);border-radius:14px;background:var(--appGlass);color:var(--appText);text-align:left}.cartSwitcherCard>span{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:var(--appPanelSoft);color:var(--appBlue)}.cartSwitcherCard b,.cartSwitcherCard small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cartSwitcherCard b{font-size:.65rem}.cartSwitcherCard small{margin-top:2px;font-size:.53rem;color:var(--appMuted)}.cartSwitcherCard>i{font-size:.65rem;color:var(--appMuted)}.cartSwitcherCard.isActive{border-color:color-mix(in srgb,var(--appBlue) 55%,var(--appLine));box-shadow:0 0 0 3px color-mix(in srgb,var(--appBlue) 10%,transparent)}


.checkoutAddressLoading{grid-column:1/-1;display:flex;align-items:center;gap:12px;min-height:84px;padding:18px;border:1px dashed rgba(40,174,238,.45);border-radius:22px;background:rgba(230,247,255,.72);color:var(--checkoutMuted,#56627a);font-weight:800}
.checkoutAddressLoading i{font-size:22px;color:#20acef;animation:checkoutAddressSpin .9s linear infinite}
@keyframes checkoutAddressSpin{to{transform:rotate(360deg)}}

/* Google Places suggestions inside the checkout drawer */
.pac-container{z-index:2147483647!important;margin-top:8px!important;border:1px solid color-mix(in srgb,var(--appBlue) 28%,var(--appLine))!important;border-radius:18px!important;background:color-mix(in srgb,var(--appPanel) 96%,transparent)!important;box-shadow:0 22px 60px rgba(15,23,42,.18)!important;font-family:inherit!important;overflow:hidden!important;padding:6px!important;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}
.pac-item{min-height:58px!important;display:flex!important;align-items:center!important;gap:8px!important;padding:10px 12px!important;border-top:0!important;border-radius:13px!important;color:var(--appMuted)!important;font-size:.62rem!important;line-height:1.3!important;cursor:pointer!important;transition:background .16s ease,transform .16s ease!important}
.pac-item:hover,.pac-item-selected{background:color-mix(in srgb,var(--appBlue) 10%,var(--appPanel))!important;transform:translateX(2px)}
.pac-item-query{color:var(--appText)!important;font-size:.68rem!important;font-weight:900!important}.pac-icon{width:30px!important;height:30px!important;margin:0 2px 0 0!important;border-radius:10px!important;background-color:color-mix(in srgb,var(--appBlue) 10%,var(--appPanel))!important;background-position:center!important}.pac-logo:after{margin:7px 10px 5px!important;opacity:.72!important}
.checkoutAutocompleteStatus{display:flex;align-items:center;gap:6px}.checkoutAutocompleteStatus i{color:var(--appBlue)}.checkoutAddressLoading{grid-column:1/-1;min-height:104px;display:flex;align-items:center;justify-content:center;gap:10px;border:1px dashed color-mix(in srgb,var(--appBlue) 32%,var(--appLine));border-radius:16px;background:color-mix(in srgb,var(--appBlue) 5%,var(--appPanel));color:var(--appMuted);font-weight:800}.checkoutAddressLoading i{color:var(--appBlue);animation:checkoutAddressSpin .9s linear infinite}@keyframes checkoutAddressSpin{to{transform:rotate(360deg)}}
@media(max-width:640px){.pac-container{width:calc(100dvw - 32px)!important;left:16px!important;right:16px!important}.pac-item{min-height:62px!important;padding:11px!important}.pac-item-query{font-size:.72rem!important}}


/* Checkout saved/used places and custom Google suggestion panel */
.checkoutSavedAddresses:not([hidden]){margin-top:14px}
.checkoutSavedAddress>span{box-shadow:0 8px 24px rgba(26,53,92,.06)}
.checkoutSavedAddress em{white-space:nowrap}
.checkoutGoogleSuggestions{position:relative;z-index:40;display:grid;gap:6px;margin-top:3px;padding:7px;border:1px solid color-mix(in srgb,var(--appBlue) 28%,var(--appLine));border-radius:18px;background:color-mix(in srgb,var(--appPanel) 98%,transparent);box-shadow:0 22px 60px rgba(15,23,42,.16);overflow:hidden}
.checkoutGoogleSuggestions[hidden]{display:none!important}
.checkoutGoogleSuggestion{width:100%;min-height:62px;display:grid;grid-template-columns:38px minmax(0,1fr) 24px;align-items:center;gap:11px;padding:10px;border:0;border-radius:13px;background:transparent;color:var(--appText);text-align:left;cursor:pointer;transition:background .16s ease,transform .16s ease}
.checkoutGoogleSuggestion:hover,.checkoutGoogleSuggestion:focus-visible{outline:0;background:color-mix(in srgb,var(--appBlue) 9%,var(--appPanel));transform:translateX(2px)}
.checkoutGoogleSuggestion>i:first-child{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:color-mix(in srgb,var(--appBlue) 11%,var(--appPanel));color:var(--appBlue);font-size:.92rem}
.checkoutGoogleSuggestion>i:last-child{color:var(--appMuted);font-size:.72rem}
.checkoutGoogleSuggestion b,.checkoutGoogleSuggestion small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.checkoutGoogleSuggestion b{font-size:.67rem}.checkoutGoogleSuggestion small{margin-top:4px;color:var(--appMuted);font-size:.54rem}
.checkoutGoogleSuggestions.isLoading{pointer-events:none;opacity:.72}
.checkoutSuggestionSpinner{animation:checkoutAddressSpin .9s linear infinite}
@media(max-width:640px){.checkoutSavedAddresses{grid-template-columns:1fr!important}.checkoutSavedAddress>span{min-height:92px}.checkoutGoogleSuggestion{min-height:66px;padding:11px 9px}.checkoutGoogleSuggestion b{font-size:.72rem}.checkoutGoogleSuggestion small{font-size:.58rem}}

/* Address suggestions: full-width, readable list */
.checkoutGoogleSuggestions{
  display:flex!important;
  flex-direction:column!important;
  grid-template-columns:none!important;
  gap:0!important;
  padding:6px!important;
  max-height:min(42dvh,360px);
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}
.checkoutGoogleSuggestion{
  flex:0 0 auto!important;
  width:100%!important;
  min-width:0!important;
  min-height:70px!important;
  grid-template-columns:42px minmax(0,1fr) 22px!important;
  gap:12px!important;
  padding:12px 10px!important;
  border-radius:14px!important;
}
.checkoutGoogleSuggestion + .checkoutGoogleSuggestion{
  border-top:1px solid color-mix(in srgb,var(--appLine) 82%,transparent)!important;
}
.checkoutGoogleSuggestion>span{min-width:0!important;display:block!important}
.checkoutGoogleSuggestion b,
.checkoutGoogleSuggestion small{
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
.checkoutGoogleSuggestion b{
  font-size:.76rem!important;
  line-height:1.28!important;
  font-weight:900!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden!important;
}
.checkoutGoogleSuggestion small{
  margin-top:5px!important;
  font-size:.62rem!important;
  line-height:1.35!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden!important;
}
@media(max-width:640px){
  .checkoutGoogleSuggestions{max-height:min(38dvh,320px)}
  .checkoutGoogleSuggestion{min-height:76px!important;padding:12px 9px!important}
  .checkoutGoogleSuggestion b{font-size:.78rem!important}
  .checkoutGoogleSuggestion small{font-size:.64rem!important}
}

/* Collapsible delivery quote details */
.checkoutDeliverySummary{cursor:pointer;user-select:none;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.checkoutDeliverySummary:active{transform:scale(.995)}.checkoutDeliverySummary:focus-visible{outline:3px solid color-mix(in srgb,var(--appBlue) 24%,transparent);outline-offset:3px}.checkoutDeliverySummary #checkoutDeliveryToggle i{transition:transform .24s ease}.checkoutDeliverySummary.isExpanded #checkoutDeliveryToggle i{transform:rotate(180deg)}
.checkoutDeliveryBreakdown{display:grid!important;grid-template-columns:1fr 1fr;gap:9px;margin-top:10px;padding:12px;border:1px solid var(--appLine);border-radius:18px;background:color-mix(in srgb,var(--appPanel) 92%,var(--appBlue) 8%);animation:checkoutDeliveryReveal .22s ease both}.checkoutDeliveryBreakdown[hidden]{display:none!important}.checkoutDeliveryDetail{display:flex!important;align-items:center;gap:10px;min-width:0;padding:11px!important;border:1px solid color-mix(in srgb,var(--appLine) 88%,transparent)!important;border-radius:14px!important;background:var(--appPanel)!important}.checkoutDeliveryDetail>i{width:32px;height:32px;flex:0 0 32px;display:grid;place-items:center;border-radius:10px;background:color-mix(in srgb,var(--appBlue) 10%,var(--appPanel));color:var(--appBlue)}.checkoutDeliveryDetail span{min-width:0}.checkoutDeliveryDetail small,.checkoutDeliveryDetail b{display:block}.checkoutDeliveryDetail small{font-size:.48rem!important;color:var(--appMuted)!important;line-height:1.25}.checkoutDeliveryDetail b{margin-top:2px;font-size:.61rem!important;line-height:1.3}.checkoutDeliveryRefresh{grid-column:1/-1;width:100%;min-height:40px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--appLine);border-radius:12px;background:var(--appPanel);color:var(--appText);font:inherit;font-size:.56rem;font-weight:900}.checkoutDeliveryRefresh:active{transform:scale(.985)}@keyframes checkoutDeliveryReveal{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}@media(max-width:520px){.checkoutDeliveryBreakdown{grid-template-columns:1fr}.checkoutDeliveryRefresh{grid-column:1}.checkoutDeliverySummary em{max-width:230px}}

/* Project switcher terminology and compact reservation timer */
.cartSwitcherHead{align-items:flex-start!important}
.cartSwitcherSummary{min-width:0;flex:1 1 auto}
.projectSwitcherActions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:0 0 auto}
.projectSwitcherActions>.activeCartHoldStatus.projectHoldMini{display:flex!important;align-items:center!important;gap:7px!important;width:auto!important;min-width:0!important;min-height:34px!important;margin:0!important;padding:5px 9px!important;border-radius:12px!important;box-shadow:none!important}
.projectSwitcherActions>.activeCartHoldStatus.projectHoldMini[hidden]{display:none!important}
.projectHoldMini .activeCartHoldIcon{width:24px!important;height:24px!important;border-radius:8px!important;flex:0 0 24px!important;font-size:.68rem!important}
.projectHoldMini .activeCartHoldCopy{min-width:0!important}
.projectHoldMini .activeCartHoldCopy small{display:none!important}
.projectHoldMini .activeCartHoldCopy strong{margin:0!important;max-width:116px!important;font-size:.57rem!important;line-height:1.1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.projectHoldMini>span,.projectHoldMini .activeCartHoldHelp{display:none!important}
.projectHoldMini .activeCartRetain{position:absolute;top:39px;right:0;width:max-content;max-width:190px;margin:0;padding:8px 10px;border-radius:10px;font-size:.53rem;z-index:3}
.projectHoldMini{position:relative!important;overflow:visible!important}
.cartSwitcherCard{min-width:164px}
@media(max-width:560px){
  .cartSwitcherHead{gap:8px!important}
  .projectSwitcherActions{gap:6px}
  .cartSwitcherHead button{height:32px!important;padding:0 10px!important;font-size:.55rem!important}
  .projectSwitcherActions>.activeCartHoldStatus.projectHoldMini{min-height:32px!important;padding:4px 7px!important}
  .projectHoldMini .activeCartHoldIcon{width:22px!important;height:22px!important;flex-basis:22px!important}
  .projectHoldMini .activeCartHoldCopy strong{max-width:88px!important;font-size:.52rem!important}
}

/* Project switcher naming, deletion, and verification */
.cartSwitcherCard{position:relative;display:flex!important;align-items:stretch;padding:0!important;overflow:hidden}
.cartSwitcherSelect{min-width:0;flex:1;display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px;border:0;background:transparent;color:inherit;text-align:left}
.cartSwitcherSelect>span{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:var(--appPanelSoft);color:var(--appBlue)}
.cartSwitcherSelect b,.cartSwitcherSelect small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cartSwitcherSelect b{font-size:.65rem}.cartSwitcherSelect small{margin-top:2px;font-size:.53rem;color:var(--appMuted)}
.cartSwitcherSelect>i{font-size:.65rem;color:var(--appMuted)}
.cartSwitcherDelete{width:38px;flex:0 0 38px;border:0;border-left:1px solid var(--appLine);background:transparent;color:var(--appMuted);display:grid;place-items:center;font-size:.67rem}
.cartSwitcherDelete:active{background:color-mix(in srgb,#ef4444 10%,transparent);color:#dc2626}
.projectDeleteDialog[hidden]{display:none!important}.projectDeleteDialog{position:fixed!important;inset:0!important;z-index:2147483646!important;display:grid;align-items:end;justify-items:stretch;padding:14px;isolation:isolate;pointer-events:auto}.projectDeleteDialog>*{pointer-events:auto}body.projectDeleteOpen{overflow:hidden;touch-action:none}
.projectDeleteBackdrop{position:absolute;inset:0;background:rgba(15,23,42,.34);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.projectDeleteSheet{position:relative;width:min(100%,430px);margin:0 auto;padding:22px;border:1px solid var(--appLine);border-radius:24px;background:var(--appPanel);box-shadow:0 24px 70px rgba(15,23,42,.24);text-align:center;animation:projectDeleteIn .22s ease both}
.projectDeleteIcon{width:52px;height:52px;margin:0 auto 12px;border-radius:17px;display:grid;place-items:center;background:color-mix(in srgb,#ef4444 11%,var(--appPanel));color:#dc2626;font-size:1.15rem}
.projectDeleteSheet h3{margin:0;color:var(--appText);font-size:1.05rem}.projectDeleteSheet p{margin:8px 0 18px;color:var(--appMuted);font-size:.72rem;line-height:1.45}
.projectDeleteActions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.projectDeleteActions button{min-height:46px;border-radius:15px;font-weight:900;font-size:.7rem}.projectDeleteCancel{border:1px solid var(--appLine);background:var(--appGlass);color:var(--appText)}.projectDeleteConfirm{border:0;background:#ef4444;color:#fff}.projectDeleteConfirm:disabled{opacity:.62}
@keyframes projectDeleteIn{from{transform:translateY(18px);opacity:0}to{transform:none;opacity:1}}

/* Checkout policy and agreement workspace */
.checkoutPoliciesStep{gap:16px}.checkoutPolicyProgress{padding:14px 15px;border:1px solid var(--appLine);border-radius:18px;background:var(--appPanelSoft)}.checkoutPolicyProgress>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.6rem;color:var(--appMuted)}.checkoutPolicyProgress strong{color:var(--appText);font-size:.62rem}.checkoutPolicyProgressTrack{height:7px;margin-top:10px;border-radius:999px;background:color-mix(in srgb,var(--appLine) 70%,transparent);overflow:hidden}.checkoutPolicyProgressTrack i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--appBlue),var(--appPink));transition:width .28s ease}.checkoutPolicyTabs{display:flex;gap:9px;overflow-x:auto;padding:2px 1px 7px;scroll-snap-type:x proximity;scrollbar-width:none}.checkoutPolicyTabs::-webkit-scrollbar{display:none}.checkoutPolicyTab{scroll-snap-align:center;flex:0 0 auto;min-width:118px;display:grid;grid-template-columns:34px minmax(0,1fr) 15px;align-items:center;gap:8px;padding:10px 11px;border:1px solid var(--appLine);border-radius:16px;background:var(--appGlass);color:var(--appText);text-align:left}.checkoutPolicyTab>span{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:color-mix(in srgb,var(--appBlue) 10%,var(--appPanel));color:var(--appBlue)}.checkoutPolicyTab b{font-size:.61rem}.checkoutPolicyTab>i{font-size:.65rem;color:var(--appMuted)}.checkoutPolicyTab.isActive{border-color:color-mix(in srgb,var(--appBlue) 70%,var(--appLine));box-shadow:0 0 0 3px color-mix(in srgb,var(--appBlue) 10%,transparent);background:color-mix(in srgb,var(--appBlue) 7%,var(--appGlass))}.checkoutPolicyTab.isReviewed>i{color:var(--appBlue)}.checkoutPolicyPanel{border:1px solid var(--appLine);border-radius:22px;background:var(--appGlass);overflow:hidden}.checkoutPolicyHeader{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:start;gap:12px;padding:16px;border-bottom:1px solid var(--appLine)}.checkoutPolicyIcon{width:46px;height:46px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(135deg,color-mix(in srgb,var(--appBlue) 16%,var(--appPanel)),color-mix(in srgb,var(--appPink) 12%,var(--appPanel)));color:var(--appBlue);font-size:1.15rem}.checkoutPolicyHeader small,.checkoutPolicySubhead small{display:block;color:var(--appMuted);font-size:.52rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.checkoutPolicyHeader h4{margin:3px 0 4px;font-size:.86rem}.checkoutPolicyHeader p{margin:0;color:var(--appMuted);font-size:.58rem;line-height:1.45}.checkoutPolicyHeader>span{padding:6px 8px;border-radius:999px;background:var(--appPanelSoft);font-size:.52rem;font-weight:900;color:var(--appMuted)}.checkoutPolicySections{display:grid;gap:8px;padding:13px}.checkoutPolicyAccordion{border:1px solid var(--appLine);border-radius:14px;background:var(--appPanel);overflow:hidden}.checkoutPolicyAccordion>button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 13px;border:0;background:transparent;color:var(--appText);font-size:.62rem;font-weight:900;text-align:left}.checkoutPolicyAccordion>button i{transition:transform .2s ease}.checkoutPolicyAccordion>div{display:grid;grid-template-rows:0fr;transition:grid-template-rows .22s ease}.checkoutPolicyAccordion>div>p{min-height:0;overflow:hidden;margin:0;padding:0 13px;color:var(--appMuted);font-size:.58rem;line-height:1.6}.checkoutPolicyAccordion.isOpen>div{grid-template-rows:1fr}.checkoutPolicyAccordion.isOpen>div>p{padding-bottom:13px}.checkoutPolicyAccordion.isOpen>button i{transform:rotate(180deg)}.checkoutPolicyAddons,.checkoutSelectedAddons{padding:14px;border-top:1px solid var(--appLine)}.checkoutSelectedAddons{border:1px solid var(--appLine);border-radius:19px;background:var(--appPanelSoft)}.checkoutPolicySubhead{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.checkoutPolicySubhead h5{margin:3px 0 0;font-size:.72rem}.checkoutPolicySubhead>span,.checkoutPolicySubhead>strong{font-size:.54rem;color:var(--appMuted)}#checkoutPolicyAddonList{display:grid;gap:8px}.checkoutPolicyOption{position:relative;display:grid;grid-template-columns:29px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px;border:1px solid var(--appLine);border-radius:14px;background:var(--appPanel);cursor:pointer}.checkoutPolicyOption input{position:absolute;opacity:0;pointer-events:none}.checkoutPolicyOptionCheck{width:27px;height:27px;display:grid;place-items:center;border:1px solid var(--appLine);border-radius:9px;color:transparent}.checkoutPolicyOptionCopy b,.checkoutPolicyOptionCopy small{display:block}.checkoutPolicyOptionCopy b{font-size:.62rem}.checkoutPolicyOptionCopy small{margin-top:3px;color:var(--appMuted);font-size:.53rem;line-height:1.4}.checkoutPolicyOption>strong{font-size:.57rem;white-space:nowrap}.checkoutPolicyOption.isSelected{border-color:color-mix(in srgb,var(--appBlue) 65%,var(--appLine));background:color-mix(in srgb,var(--appBlue) 7%,var(--appPanel))}.checkoutPolicyOption.isSelected .checkoutPolicyOptionCheck{background:var(--appBlue);border-color:var(--appBlue);color:#fff}.checkoutPolicyNav{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;padding:13px;border-top:1px solid var(--appLine)}.checkoutPolicyNav button{min-height:40px;border:1px solid var(--appLine);border-radius:12px;background:var(--appPanel);color:var(--appText);font-size:.58rem;font-weight:900}.checkoutPolicyNav button:nth-child(2){background:linear-gradient(135deg,var(--appBlue),var(--appPink));border:0;color:#fff}.checkoutPolicyNav button:nth-child(2).isReviewed{background:var(--appText);color:var(--appPanel)}.checkoutPolicyNav button:disabled{opacity:.4}.checkoutSelectedAddonsList,#checkoutSelectedAddonsList{display:grid;gap:7px}#checkoutSelectedAddonsList>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:7px;border-top:1px solid var(--appLine);font-size:.59rem}#checkoutSelectedAddonsList span{display:flex;align-items:center;gap:7px}#checkoutSelectedAddonsList i{color:var(--appBlue)}.checkoutFinalAgreement{padding-top:2px}
@media(max-width:640px){.checkoutPolicyProgress>div:first-child{align-items:flex-start;flex-direction:column;gap:4px}.checkoutPolicyHeader{grid-template-columns:42px minmax(0,1fr)}.checkoutPolicyHeader>span{grid-column:2;justify-self:start}.checkoutPolicyIcon{width:42px;height:42px}.checkoutPolicyNav{grid-template-columns:1fr 1.35fr 1fr}.checkoutPolicyNav button{padding:0 7px}.checkoutPolicyOption{grid-template-columns:29px minmax(0,1fr)}.checkoutPolicyOption>strong{grid-column:2;justify-self:start}.checkoutPolicyTab{min-width:108px}}


/* Booking terms refinement */
.checkoutPoliciesStep{position:relative}
.checkoutPolicyTabs{position:sticky;top:-1px;z-index:12;margin-inline:-4px;padding:9px 4px 10px;background:color-mix(in srgb,var(--appPanel) 94%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid color-mix(in srgb,var(--appLine) 72%,transparent)}
.checkoutPolicyTabs::after{content:"";position:absolute;inset:auto 0 -10px;height:10px;pointer-events:none;background:linear-gradient(180deg,color-mix(in srgb,var(--appPanel) 24%,transparent),transparent)}
.checkoutPolicyTab{min-width:124px}
.checkoutPolicyPanel[hidden]{display:none!important}
.checkoutPolicyNav button.needsChoice{box-shadow:0 0 0 3px color-mix(in srgb,var(--appPink) 14%,transparent)}
.checkoutFinalAgreement{display:grid;gap:9px;padding-top:0}
.checkoutFinalAgreement[hidden]{display:none!important}
.checkoutAgreementReady{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:start;padding:15px;border:1px solid color-mix(in srgb,var(--appBlue) 45%,var(--appLine));border-radius:18px;background:color-mix(in srgb,var(--appBlue) 7%,var(--appGlass))}
.checkoutAgreementReady>span{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,var(--appBlue),var(--appPink));color:#fff;font-size:1.05rem}
.checkoutAgreementReady small,.checkoutAgreementReady b,.checkoutAgreementReady p{display:block}
.checkoutAgreementReady small{color:var(--appBlue);font-size:.52rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.checkoutAgreementReady b{margin-top:3px;font-size:.72rem}
.checkoutAgreementReady p{margin:4px 0 0;color:var(--appMuted);font-size:.56rem;line-height:1.45}
.checkoutPoliciesStep.policiesComplete .checkoutPolicyTabs{border-bottom-color:color-mix(in srgb,var(--appBlue) 38%,var(--appLine))}
@media(max-width:640px){.checkoutPolicyTabs{top:-1px;margin-inline:-2px;padding-inline:2px}.checkoutPolicyTab{min-width:112px}.checkoutAgreementReady{grid-template-columns:38px minmax(0,1fr);padding:13px}.checkoutAgreementReady>span{width:38px;height:38px}}

/* Legal-name electronic signature */
.checkoutLegalSigner{display:grid;gap:13px;padding:15px;border:1px solid var(--appLine);border-radius:18px;background:var(--appPanel)}
.checkoutLegalSignerHead{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:start}.checkoutLegalSignerHead>span{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:color-mix(in srgb,var(--appPink) 10%,var(--appPanel));color:var(--appPink);font-size:1rem}.checkoutLegalSignerHead small{display:block;color:var(--appPink);font-size:.52rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.checkoutLegalSignerHead h5{margin:3px 0 4px;font-size:.76rem}.checkoutLegalSignerHead p{margin:0;color:var(--appMuted);font-size:.56rem;line-height:1.45}
.checkoutLegalNameField{display:grid;gap:7px}.checkoutLegalNameField>span{font-size:.57rem;font-weight:900;color:var(--appText)}.checkoutLegalNameField>div{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;min-height:48px;border:1px solid var(--appLine);border-radius:14px;background:var(--appGlass);overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease}.checkoutLegalNameField>div>i{display:grid;place-items:center;color:var(--appBlue)}.checkoutLegalNameField input{width:100%;height:46px;border:0;outline:0;background:transparent;color:var(--appText);font:inherit;font-size:.68rem;font-weight:800;padding:0 12px 0 0}.checkoutLegalNameField>div:focus-within{border-color:color-mix(in srgb,var(--appBlue) 70%,var(--appLine));box-shadow:0 0 0 3px color-mix(in srgb,var(--appBlue) 10%,transparent)}.checkoutLegalNameField input.isInvalid{color:#dc2626}.checkoutLegalNameField input.isVerified{color:var(--appText)}.checkoutLegalNameField>small{color:var(--appMuted);font-size:.53rem;line-height:1.4}.checkoutSignatureNotice{display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px;align-items:start;margin:0;padding:10px 11px;border-radius:13px;background:color-mix(in srgb,var(--appBlue) 6%,var(--appPanelSoft));color:var(--appMuted);font-size:.54rem;line-height:1.5}.checkoutSignatureNotice i{color:var(--appBlue);font-size:.8rem}
@media(max-width:640px){.checkoutLegalSigner{padding:13px}.checkoutLegalSignerHead{grid-template-columns:38px minmax(0,1fr)}.checkoutLegalSignerHead>span{width:38px;height:38px}}


/* Locked checkout step indicators with persistent completion state */
.checkoutProgress button:disabled{opacity:1;cursor:default;pointer-events:none}
.checkoutProgress button>span{position:relative;font-size:.82rem}
.checkoutProgress button>span i{line-height:1}
.checkoutProgress button.isComplete:not(.isActive)>span::after{content:"\F26A";font-family:"bootstrap-icons";position:absolute;right:-5px;bottom:-5px;width:14px;height:14px;display:grid;place-items:center;border:2px solid var(--appPanel);border-radius:999px;background:var(--appBlue);color:#fff;font-size:.48rem;line-height:1}
.checkoutProgress button.isComplete{color:var(--appText)}
.checkoutProgress button.isComplete>span{background:color-mix(in srgb,var(--appBlue) 16%,var(--appPanel));border-color:color-mix(in srgb,var(--appBlue) 55%,var(--appLine));color:var(--appBlue)}
.checkoutProgress button.isActive>span{background:linear-gradient(135deg,var(--appBlue),var(--appPink));border-color:transparent;color:#fff}

/* Accurate policy navigation beneath the sticky policy tabs */
.checkoutPolicyPanel{scroll-margin-top:calc(72px + env(safe-area-inset-top,0px))}
.checkoutFinalAgreement{scroll-margin-top:14px}
.checkoutPolicyOptionGroupTitle{padding:5px 2px 0}.checkoutPolicyOptionGroupTitle small{display:block;color:var(--appMuted);font-size:.52rem;font-weight:950;letter-spacing:.06em;text-transform:uppercase}.checkoutPolicyOption.isSingleChoice .checkoutPolicyOptionCheck{border-radius:999px}.checkoutPolicyOption.isSingleChoice.isSelected .checkoutPolicyOptionCheck{background:var(--appPanel);border:7px solid var(--appBlue);color:transparent}

/* Policy option dependency states */
.checkoutPolicyOption.isDisabled{opacity:.48;cursor:not-allowed;filter:saturate(.45)}
.checkoutPolicyOption.isDisabled input{pointer-events:none}
.checkoutPolicyOption.isDisabled .checkoutPolicyOptionCopy small::after{content:' Included with Full Cleaning Coverage';font-weight:700}

/* Stripe card and partial-payment checkout */
.checkoutPaymentAmount,.checkoutCardSource{display:grid;gap:11px;padding:14px;border:1px solid var(--appLine);border-radius:19px;background:var(--appPanelSoft)}
.checkoutPaymentSubhead{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.checkoutPaymentSubhead small{display:block;color:var(--appMuted);font-size:.54rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.checkoutPaymentSubhead h4{margin:3px 0 0;font-size:.78rem}.checkoutPaymentSubhead>span,#checkoutBookingFeeBadge{padding:6px 9px;border-radius:999px;background:color-mix(in srgb,var(--appBlue) 10%,var(--appGlass));color:var(--appBlue);font-size:.52rem;font-weight:900;white-space:nowrap}
.checkoutPaymentAmountChoices{display:grid;gap:8px}.checkoutPaymentAmountChoices label{display:block}.checkoutPaymentAmountChoices input{position:absolute;opacity:0}.checkoutPaymentAmountChoices label>span{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px;border:1px solid var(--appLine);border-radius:16px;background:var(--appGlass)}.checkoutPaymentAmountChoices input:checked+span{border-color:color-mix(in srgb,var(--appBlue) 60%,var(--appLine));box-shadow:0 0 0 3px color-mix(in srgb,var(--appBlue) 12%,transparent)}.checkoutPaymentAmountChoices label>span>i{width:35px;height:35px;display:grid;place-items:center;border-radius:11px;background:var(--appPanel);color:var(--appBlue)}.checkoutPaymentAmountChoices b,.checkoutPaymentAmountChoices small{display:block}.checkoutPaymentAmountChoices b{font-size:.66rem}.checkoutPaymentAmountChoices small{margin-top:3px;color:var(--appMuted);font-size:.53rem;line-height:1.35}.checkoutPaymentAmountChoices strong{font-size:.68rem;white-space:nowrap}
.checkoutCustomPayment{display:grid;gap:6px}.checkoutCustomPayment>span{font-size:.59rem;font-weight:900}.checkoutCustomPayment>div{display:flex;align-items:center;border:1px solid var(--appLine);border-radius:14px;background:var(--appGlass);overflow:hidden}.checkoutCustomPayment>div>b{padding-left:12px;font-size:.75rem}.checkoutCustomPayment input{width:100%;border:0;background:transparent;color:var(--appText);padding:11px;font:inherit;font-size:.72rem;outline:none}.checkoutCustomPayment small{color:var(--appMuted);font-size:.54rem}.checkoutBookingFeeNotice{display:flex;gap:8px;margin:0;padding:10px 11px;border-radius:14px;background:color-mix(in srgb,var(--appPink) 7%,var(--appGlass));color:var(--appMuted);font-size:.55rem;line-height:1.45}.checkoutBookingFeeNotice i{color:var(--appPink)}
.checkoutSavedCards{display:grid;gap:7px}.checkoutSavedCardLoading,.checkoutSavedCardEmpty{display:flex;align-items:center;gap:9px;padding:11px;border:1px dashed var(--appLine);border-radius:14px;color:var(--appMuted);font-size:.58rem}.checkoutSavedCardLoading i{animation:spin .9s linear infinite}.checkoutSavedCard{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px;border:1px solid var(--appLine);border-radius:14px;background:var(--appGlass)}.checkoutSavedCard i{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--appPanel);color:var(--appBlue)}.checkoutSavedCard b,.checkoutSavedCard small{display:block}.checkoutSavedCard b{font-size:.64rem}.checkoutSavedCard small{margin-top:3px;color:var(--appMuted);font-size:.52rem}.checkoutSavedCard em{font-style:normal;font-size:.52rem;font-weight:900;color:#128258}
.checkoutCardSource .checkoutPaymentMethods{grid-template-columns:1fr}.checkoutCardSource .checkoutPaymentMethods label.isUnavailable{opacity:.45;pointer-events:none}
@media(max-width:640px){.checkoutPaymentSubhead{align-items:center}.checkoutPaymentAmountChoices label>span{padding:11px}.checkoutPaymentAmountChoices strong{font-size:.63rem}.checkoutPaymentAmount,.checkoutCardSource{padding:12px}}

/* Thread preview containment: overlays stay inside the rendered ICT frame. */
.checkoutDrawer{left:0!important;right:0!important;top:0!important;bottom:0!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important}.checkoutPanel{width:min(1120px,100%)!important;max-width:100%!important;box-sizing:border-box!important}@media(max-width:900px){.checkoutDrawer{width:100%!important;max-width:100%!important}.checkoutPanel{width:100%!important;max-width:100%!important}}

.checkoutStripeElement{min-height:118px;padding:14px;border:1px solid var(--appLine);border-radius:17px;background:var(--appGlass)}.checkoutStripeLoading,.checkoutStripeError{min-height:88px;display:flex;align-items:center;justify-content:center;gap:9px;color:var(--appMuted);font-size:.62rem;text-align:center}.checkoutStripeLoading i{animation:checkoutSpin .9s linear infinite}.checkoutStripeError{flex-wrap:wrap;color:var(--appText)}.checkoutStripeError button{border:1px solid var(--appLine);border-radius:11px;background:var(--appPanel);color:var(--appText);padding:8px 11px;font-size:.6rem;font-weight:900}@keyframes checkoutSpin{to{transform:rotate(360deg)}}

/* Global notifications must remain above every checkout, review, auth, and contract overlay. */
body>.toast#toast{position:fixed!important;z-index:2147483647!important;isolation:isolate!important;pointer-events:none!important;max-width:min(420px,calc(100dvw - 28px))!important;}

.checkoutSavedCards[hidden],#checkoutPaymentFlow[hidden],.checkoutPaymentConfirmation[hidden]{display:none!important}
.checkoutPaymentConfirmation{display:grid;justify-items:center;gap:10px;padding:28px 18px;text-align:center;border:1px solid var(--appLine);border-radius:22px;background:var(--appPanelSoft)}
.checkoutConfirmationIcon{width:62px;height:62px;display:grid;place-items:center;border-radius:20px;background:color-mix(in srgb,var(--appBlue) 12%,var(--appPanel));color:var(--appBlue);font-size:1.8rem}
.checkoutPaymentConfirmation>small{text-transform:uppercase;letter-spacing:.14em;font-weight:900;color:var(--appBlue)}
.checkoutPaymentConfirmation h3{margin:0;font-size:1.15rem}.checkoutPaymentConfirmation p{margin:0;max-width:34rem;color:var(--appMuted);line-height:1.55}
.checkoutPaymentConfirmation strong{font-size:1.7rem}.checkoutPaymentConfirmation em{font-style:normal;color:var(--appMuted);font-size:.58rem}
.checkoutPaymentConfirmation button{margin-top:6px;min-height:46px;padding:0 20px;border:0;border-radius:15px;background:var(--appText);color:var(--appPanel);font-weight:900}
#checkoutPaymentFlow{display:grid;gap:14px}

body.projectDeleteOpen>.activeCartDrawer,body.projectDeleteOpen>.checkoutDrawer{pointer-events:none!important}.projectDeleteDialog{transform:translateZ(0)!important;contain:layout style!important}.projectDeleteBackdrop{z-index:0}.projectDeleteSheet{z-index:1}

/* Refined payment summary card */
.checkoutFinalReview{display:grid;gap:14px;padding:16px;border:1px solid color-mix(in srgb,var(--appLine) 86%,var(--appBlue));border-radius:24px;background:color-mix(in srgb,var(--appPanelSoft) 96%,transparent);box-shadow:0 18px 42px rgba(0,0,0,.14);overflow:hidden;min-width:0}
.checkoutReviewIntro small,.checkoutReviewSectionLabel{display:block;color:var(--appMuted);font-size:.5rem;font-weight:950;letter-spacing:.13em;text-transform:uppercase}
.checkoutReviewIntro h4{margin:5px 0 0;font-size:.88rem;line-height:1.2;letter-spacing:-.025em}
.checkoutReviewCard{border:1px solid var(--appLine);border-radius:18px;background:color-mix(in srgb,var(--appGlass) 86%,transparent);overflow:hidden;min-width:0}
.checkoutReviewHeader{display:flex;align-items:center;gap:11px;padding:13px 14px;border-bottom:1px solid var(--appLine);background:color-mix(in srgb,var(--appBlue) 4%,var(--appGlass))}
.checkoutReviewHeader>i,.checkoutReviewSectionHead>i{flex:0 0 auto;width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:color-mix(in srgb,var(--appBlue) 12%,var(--appPanel));color:var(--appBlue);font-size:.88rem}
.checkoutReviewHeader h5{margin:0;font-size:.66rem;line-height:1.25}
.checkoutReviewSection{border-top:1px solid var(--appLine)}
.checkoutReviewSection:first-of-type{border-top:0}
.checkoutReviewSectionHead{display:flex;align-items:center;gap:10px;padding:11px 14px;border-bottom:1px solid color-mix(in srgb,var(--appLine) 82%,transparent);background:color-mix(in srgb,var(--appPanel) 55%,transparent)}
.checkoutReviewSectionHead span{font-size:.64rem;font-weight:950}
.checkoutReviewRows{display:grid;padding:0 14px}
.checkoutReviewRow{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;min-width:0;padding:11px 0;border-bottom:1px solid color-mix(in srgb,var(--appLine) 72%,transparent)}
.checkoutReviewRow:last-child{border-bottom:0}
.checkoutReviewRowLead{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:10px;min-width:0}
.checkoutReviewRowLead>i{width:28px;height:28px;display:grid;place-items:center;color:var(--appText);font-size:.73rem}
.checkoutReviewRowText{min-width:0}
.checkoutReviewRowText span,.checkoutReviewRowText small{display:block;min-width:0;overflow-wrap:anywhere}
.checkoutReviewRowText span{font-size:.61rem;font-weight:800;line-height:1.28}
.checkoutReviewRowText small{margin-top:3px;color:var(--appMuted);font-size:.49rem;line-height:1.35}
.checkoutReviewRow>strong{font-size:.65rem;font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}
.checkoutReviewRow.isDiscount .checkoutReviewRowText span,.checkoutReviewRow.isDiscount>strong{color:#16986a}
.checkoutReviewRow.isTotal{padding-top:12px;border-top:1px dashed color-mix(in srgb,var(--appLine) 86%,transparent)}
.checkoutReviewRow.isTotal .checkoutReviewRowLead{grid-template-columns:minmax(0,1fr)}
.checkoutReviewRow.isTotal .checkoutReviewRowText span{font-weight:950;color:var(--appText)}
.checkoutReviewRow.isTotal>strong{font-size:.76rem;color:var(--appBlue)}
.checkoutReviewRow.isCharge .checkoutReviewRowText span{color:var(--appBlue);font-weight:950}
.checkoutReviewRow.isCharge>strong{font-size:.82rem;color:var(--appBlue)}
.checkoutReviewSection.isRemaining .checkoutReviewSectionHead>i{background:color-mix(in srgb,#18a675 13%,var(--appPanel));color:#18a675}
.checkoutReviewSection.isRemaining .checkoutReviewRow>strong{font-size:.8rem;color:#18a675}
.checkoutReviewSection.isRemaining .checkoutReviewRows{background:color-mix(in srgb,#18a675 3%,transparent)}
@media(max-width:640px){.checkoutFinalReview{gap:12px;padding:14px;border-radius:22px}.checkoutReviewIntro h4{font-size:.82rem}.checkoutReviewHeader,.checkoutReviewSectionHead{padding-left:12px;padding-right:12px}.checkoutReviewRows{padding:0 12px}.checkoutReviewRow{gap:10px;padding:10px 0}.checkoutReviewRowLead{grid-template-columns:25px minmax(0,1fr);gap:8px}.checkoutReviewRowLead>i{width:25px;height:25px;font-size:.69rem}.checkoutReviewRowText span{font-size:.58rem}.checkoutReviewRowText small{font-size:.47rem}.checkoutReviewRow>strong{font-size:.62rem}}


/* Payment summary containment fix: neutralize the legacy direct-child flex rules. */
.checkoutFinalReview > .checkoutReviewIntro{
  display:block;
  width:100%;
  min-width:0;
  font-size:inherit;
  font-weight:inherit;
}
.checkoutFinalReview > .checkoutReviewCard{
  display:block;
  width:100%;
  min-width:0;
  font-size:inherit;
  font-weight:inherit;
}
.checkoutFinalReview > .checkoutReviewCard:last-child{
  font-size:inherit;
  font-weight:inherit;
}
.checkoutReviewCard > .checkoutReviewHeader{
  display:flex;
  width:100%;
  min-width:0;
  box-sizing:border-box;
}
.checkoutReviewCard > .checkoutReviewSection{
  display:block;
  width:100%;
  min-width:0;
  box-sizing:border-box;
}
.checkoutReviewRows,.checkoutReviewRow,.checkoutReviewRowLead,.checkoutReviewRowText{
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
.checkoutReviewRowText span,.checkoutReviewRowText small{
  word-break:normal;
  overflow-wrap:break-word;
}
@media(max-width:640px){
  .checkoutFinalReview > .checkoutReviewIntro,
  .checkoutFinalReview > .checkoutReviewCard{width:100%;}
  .checkoutReviewRow{grid-template-columns:minmax(0,1fr) max-content;}
}

/* Reusable system date picker */
.systemDatePickerOverlay{position:fixed;inset:0;z-index:2147483200;display:grid;align-items:end;padding:16px;background:rgba(4,8,18,.58);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.systemDatePickerPanel{width:min(100%,520px);max-height:min(88dvh,760px);margin:0 auto;padding:20px;border:1px solid color-mix(in srgb,var(--appBlue) 22%,var(--appLine));border-radius:30px;background:color-mix(in srgb,var(--appPanel) 96%,transparent);box-shadow:0 -24px 80px rgba(0,0,0,.3);overflow:auto}
.systemDatePickerHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.systemDatePickerHeader small{font-size:.56rem;font-weight:950;text-transform:uppercase;letter-spacing:.12em;color:var(--appBlue)}.systemDatePickerHeader h2{margin:4px 0 4px;font-size:1.35rem;letter-spacing:-.04em}.systemDatePickerHeader p{margin:0;color:var(--appMuted);font-size:.65rem;line-height:1.45}.systemDatePickerHeader>button{width:42px;height:42px;flex:0 0 42px;border:1px solid var(--appLine);border-radius:14px;background:var(--appGlass);color:var(--appText)}
.systemDatePickerSelection{display:flex;align-items:center;gap:12px;margin:18px 0 14px;padding:13px;border:1px solid color-mix(in srgb,var(--appBlue) 25%,var(--appLine));border-radius:18px;background:color-mix(in srgb,var(--appBlue) 8%,var(--appPanelSoft))}.systemDatePickerSelection>i{width:40px;height:40px;display:grid;place-items:center;border-radius:13px;background:color-mix(in srgb,var(--appBlue) 18%,transparent);color:var(--appBlue)}.systemDatePickerSelection small,.systemDatePickerSelection strong{display:block}.systemDatePickerSelection small{font-size:.52rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--appMuted)}.systemDatePickerSelection strong{margin-top:3px;font-size:.74rem}
.systemDatePickerNav{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;gap:9px;margin:7px 0 10px}.systemDatePickerNav strong{text-align:center;font-size:.86rem}.systemDatePickerNav button{width:42px;height:42px;border:1px solid var(--appLine);border-radius:13px;background:var(--appGlass);color:var(--appText)}.systemDatePickerNav button:disabled{opacity:.28}
.systemDatePickerWeek,.systemDatePickerGrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.systemDatePickerWeek{margin-bottom:6px}.systemDatePickerWeek span{text-align:center;font-size:.52rem;font-weight:900;color:var(--appMuted)}.systemDatePickerGrid button,.systemDatePickerBlank{aspect-ratio:1;border:0;border-radius:13px}.systemDatePickerGrid button{background:var(--appPanelSoft);color:var(--appText);font-size:.67rem;font-weight:900}.systemDatePickerGrid button.isToday{box-shadow:inset 0 0 0 1px var(--appBlue)}.systemDatePickerGrid button.isSelected{background:var(--appText);color:var(--appBg);box-shadow:0 8px 22px color-mix(in srgb,var(--appBlue) 22%,transparent)}.systemDatePickerGrid button:disabled{opacity:.22}
.systemDatePickerActions{display:grid;grid-template-columns:.72fr 1.28fr;gap:9px;margin-top:18px}.systemDatePickerActions button{min-height:48px;border-radius:15px;font:inherit;font-size:.68rem;font-weight:950}.systemDatePickerActions .isSecondary{border:1px solid var(--appLine);background:var(--appGlass);color:var(--appText)}.systemDatePickerActions .isPrimary{border:0;background:var(--appText);color:var(--appBg)}body.systemDatePickerOpen{overflow:hidden;touch-action:none}
@media(min-width:700px){.systemDatePickerOverlay{align-items:center}.systemDatePickerPanel{box-shadow:0 28px 90px rgba(0,0,0,.32)}}

/* Custom single date and time selectors */
.systemPickerInput{cursor:pointer!important;caret-color:transparent;background-image:linear-gradient(transparent,transparent)!important;padding-right:3.1rem!important}
.systemPickerInput::-webkit-calendar-picker-indicator{opacity:0;position:absolute;inset:0;width:100%;height:100%;cursor:pointer}
.systemSinglePickerValue{display:flex;align-items:center;gap:13px;margin:17px 0 14px;padding:14px;border:1px solid color-mix(in srgb,var(--appBlue) 25%,var(--appLine));border-radius:19px;background:color-mix(in srgb,var(--appBlue) 8%,var(--appPanelSoft))}.systemSinglePickerValue>i{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;background:color-mix(in srgb,var(--appBlue) 17%,transparent);color:var(--appBlue);font-size:1rem}.systemSinglePickerValue small,.systemSinglePickerValue strong{display:block}.systemSinglePickerValue small{font-size:.58rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase;color:var(--appMuted)}.systemSinglePickerValue strong{margin-top:3px;font-size:.82rem}
.systemSinglePickerActions{display:grid;grid-template-columns:.72fr 1.28fr;gap:10px;margin-top:18px}.systemSinglePickerActions button{min-height:52px;border-radius:17px;font:inherit;font-size:.72rem;font-weight:950}.systemSinglePickerActions .isSecondary{border:1px solid var(--appLine);background:var(--appGlass);color:var(--appText)}.systemSinglePickerActions .isPrimary{border:0;background:var(--appText);color:var(--appBg)}
.systemTimePickerGrid{display:grid;gap:16px}.systemTimePickerGrid>div>small{display:block;margin-bottom:8px;font-size:.61rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em;color:var(--appMuted)}.systemTimeOptions{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}.systemTimeOptions.isPeriod{grid-template-columns:repeat(2,minmax(0,1fr))}.systemTimeOptions button{min-height:43px;border:1px solid var(--appLine);border-radius:13px;background:var(--appPanelSoft);color:var(--appText);font:inherit;font-size:.72rem;font-weight:900}.systemTimeOptions button.isSelected{border-color:var(--appBlue);background:color-mix(in srgb,var(--appBlue) 14%,var(--appPanel));color:var(--appBlue);box-shadow:0 7px 20px color-mix(in srgb,var(--appBlue) 15%,transparent)}

/* Custom date/time field triggers. Keep the native values in the form, but render
   the same polished tap target used throughout the project workspace. */
.systemPickerInput{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  opacity:0!important;
  pointer-events:none!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
}
.systemPickerTrigger{
  width:100%;
  min-height:64px;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) 18px;
  align-items:center;
  gap:12px;
  padding:10px 16px 10px 11px;
  border:1px solid color-mix(in srgb,var(--appLine) 86%,var(--appBlue) 14%);
  border-radius:19px;
  background:var(--appGlass);
  color:var(--appText);
  text-align:left;
  font:inherit;
  box-shadow:0 8px 22px rgba(15,23,42,.035),inset 0 1px 0 rgba(255,255,255,.46);
  transition:transform .16s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease;
  -webkit-tap-highlight-color:transparent;
}
.systemPickerTrigger:hover,.systemPickerTrigger:focus-visible{
  border-color:color-mix(in srgb,var(--appBlue) 48%,var(--appLine));
  background:color-mix(in srgb,var(--appBlue) 5%,var(--appGlass));
  outline:0;
  box-shadow:0 0 0 4px color-mix(in srgb,var(--appBlue) 9%,transparent),0 10px 26px rgba(15,23,42,.05);
}
.systemPickerTrigger:active,.systemPickerTrigger.isPressed{transform:scale(.985)}
.systemPickerTriggerIcon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:color-mix(in srgb,var(--appBlue) 11%,var(--appGlass));
  color:var(--appBlue);
  font-size:.92rem;
}
.systemPickerTriggerCopy{display:grid;gap:3px;min-width:0}
.systemPickerTriggerCopy small{
  color:var(--appMuted);
  font-size:.47rem;
  font-weight:900;
  line-height:1.15;
  letter-spacing:.075em;
  text-transform:uppercase;
}
.systemPickerTriggerCopy strong{
  min-width:0;
  color:var(--appMuted);
  font-size:.68rem;
  font-weight:850;
  line-height:1.25;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.systemPickerTrigger.hasValue .systemPickerTriggerCopy strong{color:var(--appText)}
.systemPickerTriggerChevron{justify-self:end;color:var(--appMuted);font-size:.68rem}
.hubProjectEditPanel label:has(> .systemPickerTrigger),
.hubQuickEditFields label:has(> .systemPickerTrigger){gap:8px}
@media(max-width:560px){
  .systemPickerTrigger{min-height:62px;grid-template-columns:40px minmax(0,1fr) 16px;gap:11px;padding:10px 14px 10px 10px;border-radius:18px}
  .systemPickerTriggerIcon{width:40px;height:40px;border-radius:13px;font-size:.86rem}
  .systemPickerTriggerCopy small{font-size:.46rem}
  .systemPickerTriggerCopy strong{font-size:.66rem}
}
@media(prefers-color-scheme:dark){
  .systemPickerTrigger{box-shadow:0 8px 22px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.055)}
}

/* Hub projects inside the rental-project selector */
.cartSwitcherSummary p{margin:5px 0 0;max-width:320px;color:var(--appMuted);font-size:.54rem;line-height:1.35}
.cartSwitcherCard:not(:has(.cartSwitcherDelete)) .cartSwitcherSelect{padding-right:11px}
@media(max-width:560px){.cartSwitcherSummary p{max-width:210px;font-size:.51rem}.cartSwitcherGrid{padding-bottom:2px}}

/* Hub project-space picker */
.projectSpacePicker{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) 18px;align-items:center;gap:10px;min-width:230px;padding:9px 12px;border:1px solid var(--appBorder);border-radius:18px;background:var(--appSurface);box-shadow:0 8px 22px rgba(31,42,68,.07);cursor:pointer;overflow:hidden}
.projectSpacePicker>span{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:var(--appAccentSoft);color:var(--appAccent)}
.projectSpacePicker>div{display:grid;gap:2px;min-width:0}.projectSpacePicker small{color:var(--appMuted);font-size:.52rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.projectSpacePicker strong{overflow:hidden;color:var(--appText);font-size:.68rem;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.projectSpacePicker>i{color:var(--appMuted)}
.projectSpacePicker select{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.projectSpacePicker.isDisabled{opacity:.56;cursor:not-allowed}.projectSpacePicker.isDisabled select{cursor:not-allowed}
.projectSpacesEmpty{display:grid;justify-items:center;gap:7px;padding:24px 18px;border:1px dashed var(--appBorder);border-radius:20px;text-align:center;color:var(--appMuted)}.projectSpacesEmpty>i{font-size:1.45rem;color:var(--appAccent)}.projectSpacesEmpty strong{color:var(--appText);font-size:.75rem}.projectSpacesEmpty p{margin:0;max-width:300px;font-size:.58rem;line-height:1.45}
@media(max-width:560px){.projectSwitcherActions{width:100%}.projectSpacePicker{width:100%;min-width:0}.cartSwitcherHead{align-items:stretch}.cartSwitcherSummary p{max-width:none}}

/* Rental project-space manager: responsive card layout */
.activeCartSwitcher{padding:18px 0 14px!important;overflow:hidden}
.cartSwitcherHead{display:grid!important;grid-template-columns:minmax(0,1fr)!important;align-items:stretch!important;gap:14px!important;width:100%;min-width:0}
.cartSwitcherSummary{width:100%;min-width:0;padding:0 4px}
.cartSwitcherSummary>small{font-size:.66rem!important;line-height:1.15;letter-spacing:.12em!important}
.cartSwitcherSummary .cartSwitcherCountRow{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:7px;min-width:0}
.cartSwitcherSummary .cartSwitcherCountRow strong{margin:0!important;font-size:.9rem!important;line-height:1.2;min-width:0}
.cartSwitcherSummary .cartSwitcherCountRow span{flex:0 0 auto;padding:5px 9px;border-radius:999px;background:var(--appAccentSoft);color:var(--appAccent);font-size:.58rem;font-weight:900;white-space:nowrap}
.cartSwitcherSummary p{max-width:none!important;margin:7px 0 0!important;font-size:.66rem!important;line-height:1.45!important}
.projectSwitcherActions{display:grid!important;width:100%!important;min-width:0;gap:10px}
.projectSpacePicker,.projectSpaceCreate{position:relative;display:grid!important;grid-template-columns:48px minmax(0,1fr) 20px!important;align-items:center;gap:12px;width:100%!important;min-width:0!important;padding:13px 14px!important;border:1px solid var(--appBorder)!important;border-radius:20px!important;background:var(--appSurface)!important;box-shadow:0 10px 26px rgba(31,42,68,.08)!important;color:var(--appText)!important;text-align:left;overflow:hidden}
.projectSpaceCreate{appearance:none;cursor:pointer}
.projectSpacePicker>span,.projectSpaceCreate>span{display:grid;place-items:center;width:48px!important;height:48px!important;border-radius:15px!important;background:var(--appAccentSoft)!important;color:var(--appAccent)!important;font-size:1.05rem}
.projectSpacePicker>div,.projectSpaceCreate>div{display:grid;gap:2px;min-width:0}
.projectSpacePicker small,.projectSpaceCreate small{font-size:.58rem!important;font-weight:900;letter-spacing:.1em!important;text-transform:uppercase;color:var(--appMuted)!important}
.projectSpacePicker strong,.projectSpaceCreate strong{font-size:.84rem!important;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--appText)!important}
.projectSpacePicker p,.projectSpaceCreate p{margin:1px 0 0!important;font-size:.61rem!important;line-height:1.3;color:var(--appMuted)!important;white-space:normal}
.projectSpacePicker>i,.projectSpaceCreate>i{font-size:.82rem;color:var(--appMuted)}
.projectSpaceCreate:disabled,.projectSpacePicker.isDisabled{opacity:.5;cursor:not-allowed}
.projectSpacesEmpty{padding:28px 18px!important;border-radius:22px!important;gap:8px!important}
.projectSpacesEmpty>span{display:grid;place-items:center;width:54px;height:54px;border-radius:17px;background:var(--appAccentSoft);color:var(--appAccent)}
.projectSpacesEmpty>span i{font-size:1.35rem}
.projectSpacesEmpty>strong{font-size:.83rem!important}
.projectSpacesEmpty>p{font-size:.65rem!important;max-width:330px!important}
.cartSwitcherGrid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;overflow:visible!important;gap:10px!important}
.cartSwitcherCard{min-width:0!important;width:100%;grid-template-columns:minmax(0,1fr) auto!important;padding:0!important;border-radius:18px!important;overflow:hidden}
.cartSwitcherSelect{display:grid!important;grid-template-columns:42px minmax(0,1fr) 16px!important;align-items:center;gap:10px;width:100%;min-width:0;padding:12px!important;border:0!important;background:transparent!important;text-align:left}
.cartSwitcherSelect>span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--appAccentSoft);color:var(--appAccent)}
.cartSwitcherSelect b{font-size:.74rem!important}.cartSwitcherSelect small{font-size:.59rem!important}
.cartSwitcherDelete{align-self:stretch!important;width:46px;height:auto!important;padding:0!important;border:0!important;border-left:1px solid var(--appLine)!important;border-radius:0!important;background:transparent!important;color:var(--appMuted)!important}
.cartSwitcherDelete:active{background:color-mix(in srgb,var(--appAccent) 9%,transparent)!important;color:var(--appAccent)!important}
@media(max-width:560px){
  .activeCartSwitcher{padding-inline:0!important}
  .cartSwitcherSummary{padding-inline:2px}
  .cartSwitcherSummary .cartSwitcherCountRow{align-items:flex-end}
  .projectSpacePicker,.projectSpaceCreate{grid-template-columns:46px minmax(0,1fr) 18px!important;padding:12px!important;border-radius:18px!important}
  .projectSpacePicker>span,.projectSpaceCreate>span{width:46px!important;height:46px!important}
}


/* Refined rental spaces drawer */
.activeCartPanel{background:var(--appBg)}
.activeCartHeader{padding-bottom:16px!important}
.activeCartSwitcher{padding:14px 0 12px!important;border-bottom:0!important}
.projectSpacesPanel{display:grid;gap:14px;padding:16px;border:1px solid var(--appBorder);border-radius:24px;background:var(--appSurface);box-shadow:0 14px 34px rgba(31,42,68,.08)}
.projectSpaceTitleRow{display:flex;align-items:center;justify-content:space-between;gap:12px}
.projectSpaceTitleRow>div{min-width:0}
.projectSpaceTitleRow small{display:block;font-size:.62rem!important;letter-spacing:.12em!important;color:var(--appAccent)!important}
.projectSpaceTitleRow strong{display:block;margin-top:4px!important;font-size:.9rem!important;line-height:1.2}
.projectSpaceTitleRow>span{flex:0 0 auto;padding:6px 10px;border-radius:999px;background:var(--appAccentSoft);color:var(--appAccent);font-size:.6rem;font-weight:900}
.cartSwitcherSummary p{margin-top:6px!important;font-size:.64rem!important;line-height:1.4!important}
.projectSpacePicker,.projectSpaceCreate{box-shadow:none!important;background:var(--appPanelSoft)!important;border-color:transparent!important}
.projectSpacePicker:focus-within,.projectSpaceCreate:focus-visible{border-color:var(--appAccent)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--appAccent) 14%,transparent)!important}
.projectSpacesEmpty{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;padding:14px!important;border:0!important;border-radius:18px!important;background:var(--appPanelSoft)!important;text-align:left!important}
.projectSpacesEmpty>span{flex:0 0 auto;width:44px!important;height:44px!important;border-radius:14px!important}
.projectSpacesEmpty>div{min-width:0}
.projectSpacesEmpty strong{display:block;font-size:.74rem!important}
.projectSpacesEmpty p{margin-top:3px!important;font-size:.6rem!important;line-height:1.35!important}
.activeCartList:empty{display:none}
@media(max-width:560px){
  .projectSpacesPanel{padding:14px;border-radius:22px}
  .projectSpacePicker,.projectSpaceCreate{grid-template-columns:42px minmax(0,1fr) 18px!important;padding:11px 12px!important;border-radius:17px!important}
  .projectSpacePicker>span,.projectSpaceCreate>span{width:42px!important;height:42px!important;border-radius:13px!important}
  .projectSpacePicker strong,.projectSpaceCreate strong{font-size:.8rem!important}
  .projectSpacePicker p,.projectSpaceCreate p{font-size:.59rem!important}
}

/* Compact project-space redesign */
.projectSpacesPanel{
  gap:12px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.projectSpaceUsage{
  display:grid;
  grid-template-columns:auto minmax(90px,1fr) auto;
  align-items:center;
  gap:12px;
  padding:13px 14px;
  border:1px solid var(--appBorder);
  border-radius:19px;
  background:var(--appSurface);
  box-shadow:0 8px 22px rgba(31,42,68,.06);
}
.projectSpaceUsage>div:first-child{display:flex;align-items:baseline;gap:6px;min-width:0}
.projectSpaceUsage strong{font-size:1rem;line-height:1;color:var(--appText)}
.projectSpaceUsage strong span{font-size:.68rem;color:var(--appMuted)}
.projectSpaceUsage small{font-size:.58rem;font-weight:800;color:var(--appMuted);text-transform:uppercase;letter-spacing:.08em}
.projectSpaceUsage>b{font-size:.65rem;color:var(--appAccent);white-space:nowrap}
.projectSpaceMeter{display:grid;grid-template-columns:repeat(5,minmax(10px,1fr));gap:5px}
.projectSpaceMeter i{display:block;height:6px;border-radius:999px;background:var(--appPanelSoft);border:1px solid var(--appBorder)}
.projectSpaceMeter i.isUsed{background:var(--appAccent);border-color:var(--appAccent)}
.projectSwitcherActions{display:grid!important;gap:10px!important;width:100%!important}
.projectSpacePicker,.projectSpaceCreate{
  grid-template-columns:44px minmax(0,1fr) 18px!important;
  gap:11px!important;
  padding:12px 13px!important;
  border:1px solid var(--appBorder)!important;
  border-radius:19px!important;
  background:var(--appSurface)!important;
  box-shadow:0 8px 22px rgba(31,42,68,.06)!important;
}
.projectSpacePicker>span,.projectSpaceCreate>span{
  width:44px!important;height:44px!important;border-radius:14px!important;
}
.projectSpacePicker strong,.projectSpaceCreate strong{font-size:.82rem!important}
.projectSpacePicker p,.projectSpaceCreate p{font-size:.6rem!important;margin-top:2px!important}
.projectSpacePicker small,.projectSpaceCreate small{display:none!important}
.cartSwitcherGrid{display:grid!important;gap:9px!important;overflow:visible!important}
.cartSwitcherCard{min-width:0!important;width:100%!important}
@media(max-width:560px){
  .projectSpaceUsage{grid-template-columns:auto minmax(74px,1fr) auto;padding:12px;border-radius:17px;gap:10px}
  .projectSpaceUsage strong{font-size:.94rem}
  .projectSpaceMeter{gap:4px}
  .projectSpacePicker,.projectSpaceCreate{grid-template-columns:42px minmax(0,1fr) 18px!important;padding:11px 12px!important;border-radius:17px!important}
  .projectSpacePicker>span,.projectSpaceCreate>span{width:42px!important;height:42px!important}
}

/* Compact rental-project drawer — reduce stacked card density */
.projectSpacesCompact{gap:9px!important}
.projectSpaceTopline{display:flex;align-items:center;gap:8px;min-width:0}
.projectSpaceUsageCompact{flex:1 1 auto;min-width:0;display:grid!important;grid-template-columns:auto minmax(52px,1fr) auto!important;gap:9px!important;padding:9px 11px!important;border-radius:15px!important;box-shadow:none!important;background:var(--appPanelSoft)!important;border-color:transparent!important}
.projectSpaceUsageCompact>strong{font-size:.82rem!important;line-height:1!important;white-space:nowrap}
.projectSpaceUsageCompact>strong span{font-size:.56rem!important}
.projectSpaceUsageCompact>b{font-size:.57rem!important;color:var(--appMuted)!important}
.projectSpaceUsageCompact .projectSpaceMeter{gap:3px!important}
.projectSpaceUsageCompact .projectSpaceMeter i{height:5px!important;border:0!important;background:color-mix(in srgb,var(--appMuted) 14%,transparent)!important}
.projectSpaceUsageCompact .projectSpaceMeter i.isUsed{background:var(--appAccent)!important}
.projectSpaceTopline>.projectHoldMini{flex:0 0 auto!important;min-width:108px!important;max-width:128px!important;min-height:38px!important;padding:5px 8px!important;border-radius:13px!important;background:var(--appPanelSoft)!important;border-color:transparent!important}
.projectSpaceTopline>.projectHoldMini .activeCartHoldIcon{width:26px!important;height:26px!important;flex-basis:26px!important}
.projectSpaceTopline>.projectHoldMini .activeCartHoldCopy strong{max-width:82px!important;font-size:.56rem!important}
.projectSwitcherActionsCompact{display:block!important}
.projectSwitcherActionsCompact .projectSpacePicker,.projectSwitcherActionsCompact .projectSpaceCreate{grid-template-columns:34px minmax(0,1fr) 16px!important;gap:9px!important;padding:9px 11px!important;border-radius:15px!important;box-shadow:none!important;background:var(--appPanelSoft)!important;border-color:transparent!important}
.projectSwitcherActionsCompact .projectSpacePicker>span,.projectSwitcherActionsCompact .projectSpaceCreate>span{width:34px!important;height:34px!important;border-radius:11px!important;font-size:.82rem!important}
.projectSwitcherActionsCompact .projectSpacePicker strong,.projectSwitcherActionsCompact .projectSpaceCreate strong{font-size:.69rem!important}
.projectSwitcherActionsCompact .projectSpacePicker p,.projectSwitcherActionsCompact .projectSpaceCreate p{display:none!important}
.cartSwitcherGridCompact{gap:7px!important}
.cartSwitcherGridCompact .cartSwitcherCard{border-radius:15px!important;box-shadow:none!important}
.cartSwitcherGridCompact .cartSwitcherSelect{grid-template-columns:34px minmax(0,1fr) 14px!important;gap:9px!important;padding:9px 10px!important;min-height:54px!important}
.cartSwitcherGridCompact .cartSwitcherSelect>span{width:34px!important;height:34px!important;border-radius:10px!important}
.cartSwitcherGridCompact .cartSwitcherSelect b{font-size:.68rem!important}
.cartSwitcherGridCompact .cartSwitcherSelect small{font-size:.54rem!important;margin-top:1px!important}
.cartSwitcherGridCompact .cartSwitcherDelete{width:40px!important;flex-basis:40px!important}
@media(max-width:560px){
  .projectSpacesCompact{gap:8px!important}
  .projectSpaceTopline{gap:7px}
  .projectSpaceUsageCompact{padding:8px 10px!important;grid-template-columns:auto minmax(44px,1fr) auto!important;gap:8px!important}
  .projectSpaceTopline>.projectHoldMini{min-width:102px!important;max-width:112px!important}
}

/* Compact horizontal rental-project rail */
.projectSpacesRail{display:grid;gap:10px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
.cartProjectRail{display:flex;gap:10px;overflow-x:auto;overflow-y:hidden;padding:2px 2px 8px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;scrollbar-width:none}
.cartProjectRail::-webkit-scrollbar{display:none}
.cartProjectChip{display:grid!important;grid-template-columns:minmax(0,1fr) 38px!important;flex:0 0 238px!important;min-width:238px!important;max-width:238px!important;height:70px!important;border-radius:18px!important;overflow:hidden;scroll-snap-align:start;box-shadow:none!important}
.cartProjectChip .cartSwitcherSelect{grid-template-columns:36px minmax(0,1fr)!important;gap:10px!important;padding:10px 11px!important;min-height:70px!important}
.cartProjectChip .cartSwitcherSelect>span{width:36px!important;height:36px!important;border-radius:11px!important}
.cartProjectChip .cartSwitcherSelect>i{display:none!important}
.cartProjectChip .cartSwitcherSelect b{font-size:.75rem!important;line-height:1.15!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cartProjectChip .cartSwitcherSelect small{font-size:.57rem!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cartProjectChip .cartSwitcherDelete{width:38px!important;min-width:38px!important;height:70px!important;border-left:1px solid var(--appBorder)!important}
.cartProjectAdd{flex:0 0 96px;height:70px;display:grid;place-items:center;align-content:center;gap:5px;border:1px dashed color-mix(in srgb,var(--appAccent) 48%,var(--appBorder));border-radius:18px;background:var(--appAccentSoft);color:var(--appAccent);font:inherit;font-weight:900;scroll-snap-align:end}
.cartProjectAdd i{font-size:1rem}.cartProjectAdd span{font-size:.58rem;line-height:1.1;text-align:center}
.projectSpaceChooser[hidden]{display:none}.projectSpaceChooser{position:fixed;inset:0;z-index:2147483000;display:grid;align-items:end}.projectSpaceChooserBackdrop{position:absolute;inset:0;background:rgba(18,25,40,.42);backdrop-filter:blur(10px)}
.projectSpaceChooserSheet{position:relative;max-height:min(72dvh,620px);display:grid;grid-template-rows:auto minmax(0,1fr);background:var(--appSurface);border:1px solid var(--appBorder);border-radius:26px 26px 0 0;overflow:hidden;box-shadow:0 -18px 55px rgba(20,30,50,.22)}
.projectSpaceChooserSheet header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 14px;border-bottom:1px solid var(--appBorder)}
.projectSpaceChooserSheet header small{font-size:.58rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--appAccent)}.projectSpaceChooserSheet h3{margin:3px 0 0;font-size:1.05rem}.projectSpaceChooserSheet header button{width:42px;height:42px;border:1px solid var(--appBorder);border-radius:14px;background:var(--appSurface);color:var(--appText)}
.projectSpaceChooserList{overflow:auto;padding:12px 14px calc(18px + env(safe-area-inset-bottom));display:grid;gap:9px}
.projectSpaceChooserList button{display:grid;grid-template-columns:42px minmax(0,1fr) 24px;align-items:center;gap:11px;width:100%;padding:12px;border:1px solid var(--appBorder);border-radius:17px;background:var(--appSurface);color:var(--appText);text-align:left}.projectSpaceChooserList button>span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--appAccentSoft);color:var(--appAccent)}.projectSpaceChooserList button div{display:grid;gap:3px;min-width:0}.projectSpaceChooserList button b{font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.projectSpaceChooserList button small{font-size:.58rem;color:var(--appMuted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.projectSpaceChooserList button>i{color:var(--appAccent)}
body.projectSpaceChooserOpen{overflow:hidden}
@media(max-width:560px){.cartProjectChip{flex-basis:220px!important;min-width:220px!important;max-width:220px!important}.cartProjectAdd{flex-basis:86px}}

/* Final mobile rental-project rail refinement */
.projectSpaceTopline{align-items:stretch!important}
.projectSpaceUsageCompact,
.projectSpaceTopline>.projectHoldMini{
  height:44px!important;
  min-height:44px!important;
  max-height:44px!important;
  box-sizing:border-box!important;
}
.projectSpaceUsageCompact{padding:0 12px!important}
.projectSpaceTopline>.projectHoldMini{padding:0 10px!important;align-items:center!important}
.projectSpaceTopline>.projectHoldMini .activeCartHoldIcon{width:28px!important;height:28px!important;flex:0 0 28px!important}
.projectSpaceTopline>.projectHoldMini .activeCartHoldCopy{display:flex!important;align-items:center!important;height:100%!important}
.projectSpaceTopline>.projectHoldMini .activeCartHoldCopy small,
.projectSpaceTopline>.projectHoldMini .activeCartHoldLimit,
.projectSpaceTopline>.projectHoldMini .activeCartHoldHelp,
.projectSpaceTopline>.projectHoldMini .activeCartRetain{display:none!important}
.projectSpaceTopline>.projectHoldMini .activeCartHoldCopy strong{font-size:.66rem!important;max-width:none!important;white-space:nowrap!important}
.cartProjectRail{gap:8px!important;padding:3px 1px 8px!important}
.cartProjectChip{
  flex:0 0 176px!important;
  min-width:176px!important;
  max-width:176px!important;
  height:62px!important;
  grid-template-columns:minmax(0,1fr) 34px!important;
  border-radius:16px!important;
}
.cartProjectChip .cartSwitcherSelect{grid-template-columns:31px minmax(0,1fr)!important;gap:8px!important;padding:8px 9px!important;min-height:62px!important}
.cartProjectChip .cartSwitcherSelect>span{width:31px!important;height:31px!important;border-radius:10px!important}
.cartProjectChip .cartSwitcherSelect b{font-size:.69rem!important}
.cartProjectChip .cartSwitcherSelect small{font-size:.52rem!important}
.cartProjectChip .cartSwitcherDelete{width:34px!important;min-width:34px!important;height:62px!important}
.cartProjectAdd{
  flex:0 0 72px!important;
  width:72px!important;
  height:62px!important;
  border-radius:16px!important;
  gap:3px!important;
}
.cartProjectAdd i{font-size:.92rem!important}
.cartProjectAdd span{font-size:.52rem!important;max-width:54px!important}

/* Project chooser aligned with the site's sheet/card language */
.projectSpaceChooser{padding:0!important}
.projectSpaceChooserSheet{
  width:min(100%,560px)!important;
  margin:0 auto!important;
  max-height:min(76dvh,650px)!important;
  border-radius:28px 28px 0 0!important;
  background:var(--appSurface)!important;
}
.projectSpaceChooserSheet header{padding:16px 16px 14px!important;align-items:flex-start!important}
.projectSpaceChooserHeading{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:center;min-width:0}
.projectSpaceChooserHeading>span{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:var(--appAccentSoft);color:var(--appAccent);font-size:1.05rem}
.projectSpaceChooserHeading>div{min-width:0}
.projectSpaceChooserSheet header small{font-size:.56rem!important}
.projectSpaceChooserSheet h3{font-size:1rem!important;line-height:1.1!important}
.projectSpaceChooserSheet header p{margin:5px 0 0;font-size:.62rem;line-height:1.35;color:var(--appMuted);font-weight:700}
.projectSpaceChooserSheet header>button{flex:0 0 40px;width:40px!important;height:40px!important;border-radius:13px!important}
.projectSpaceChooserList{padding:12px 14px calc(16px + env(safe-area-inset-bottom))!important;gap:8px!important}
.projectSpaceChooserList button{
  grid-template-columns:40px minmax(0,1fr) 34px!important;
  gap:10px!important;
  min-height:64px!important;
  padding:10px 11px!important;
  border-radius:16px!important;
  background:var(--appSurface)!important;
  box-shadow:0 7px 20px rgba(31,42,68,.05)!important;
}
.projectSpaceChooserList button>span{width:40px!important;height:40px!important;border-radius:12px!important}
.projectSpaceChooserList button b{font-size:.72rem!important}
.projectSpaceChooserList button small{font-size:.56rem!important}
.projectSpaceChooserList button>em{display:grid;place-items:center;width:32px;height:32px;border-radius:11px;background:var(--appAccentSoft);color:var(--appAccent);font-style:normal}
.projectSpaceChooserList button>em i{font-size:.82rem}
@media(max-width:560px){
  .projectSpaceTopline{gap:7px!important}
  .projectSpaceUsageCompact{min-width:0!important}
  .projectSpaceTopline>.projectHoldMini{min-width:112px!important;max-width:112px!important}
  .cartProjectChip{flex-basis:168px!important;min-width:168px!important;max-width:168px!important}
  .cartProjectAdd{flex-basis:68px!important;width:68px!important}
}

/* Keep the project usage meter and reservation timer perfectly aligned */
.projectSpaceTopline{
  align-items:stretch!important;
}
.projectSpaceTopline>.projectSpaceUsageCompact,
.projectSpaceTopline>.activeCartHoldStatus.projectHoldMini{
  align-self:stretch!important;
  margin:0!important;
  translate:none!important;
  transform:none!important;
  inset:auto!important;
  vertical-align:top!important;
}
.projectSpaceTopline>.activeCartHoldStatus.projectHoldMini{
  display:flex!important;
}

/* Compact glass checkout actions */
.activeCartFooter{
  padding:10px 2px 0;
  gap:7px;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
}
.activeCartFooter>div{
  grid-column:1/-1;
  min-height:30px;
}
.activeCartFooter span{font-size:.66rem}
.activeCartFooter strong{font-size:.96rem}
.activeCartFooter>small{
  grid-column:1/-1;
  margin:0;
  font-size:.56rem;
  line-height:1.3;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.activeCartPrimary,
.activeCartEmpty button,
.findDateGate>button{
  border:1px solid color-mix(in srgb,var(--appBlue) 38%,var(--appLine));
  background:linear-gradient(135deg,
    color-mix(in srgb,var(--appBlue) 18%,transparent),
    color-mix(in srgb,var(--appBlue) 7%,var(--appGlass))
  );
  color:var(--appText);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.38),0 8px 22px rgba(31,87,160,.10);
  backdrop-filter:blur(16px) saturate(1.25);
  -webkit-backdrop-filter:blur(16px) saturate(1.25);
}
.activeCartPrimary{
  grid-column:1;
  height:40px;
  padding:0 15px;
  border-radius:14px;
  font-size:.7rem;
}
.activeCartPrimary:active,
.activeCartEmpty button:active,
.findDateGate>button:active{transform:scale(.985)}
.activeCartClear{
  grid-column:2;
  width:auto;
  height:40px;
  padding:0 13px;
  border:1px solid var(--appLine);
  border-radius:14px;
  background:color-mix(in srgb,var(--appGlass) 78%,transparent);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  font-size:.61rem;
  white-space:nowrap;
}
.activeCartEmpty button{height:39px;border-radius:14px;padding:0 17px}

@media(max-width:520px){
  .activeCartFooter{padding-top:9px;gap:6px}
  .activeCartFooter>div{min-height:28px}
  .activeCartPrimary{height:39px}
  .activeCartClear{height:39px;padding:0 11px}
}

/* Ultra-compact rental checkout summary */
.activeCartFooter{
  box-sizing:border-box!important;
  align-self:end!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  padding:8px 2px 2px!important;
  margin:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-rows:auto auto!important;
  align-content:start!important;
  align-items:center!important;
  gap:6px 7px!important;
}
.activeCartFooter>div{
  grid-column:1!important;
  grid-row:1!important;
  min-height:0!important;
  height:34px!important;
  padding:0 10px!important;
  border:1px solid var(--appLine)!important;
  border-radius:13px!important;
  background:color-mix(in srgb,var(--appGlass) 72%,transparent)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
}
.activeCartFooter>div span{font-size:.61rem!important;white-space:nowrap!important}
.activeCartFooter>div strong{font-size:.84rem!important;white-space:nowrap!important}
.activeCartFooter>small{
  grid-column:1/-1!important;
  grid-row:2!important;
  order:4!important;
  min-height:0!important;
  margin:0!important;
  padding:1px 3px 0!important;
  font-size:.51rem!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  display:block!important;
}
.activeCartPrimary{
  grid-column:2!important;
  grid-row:1!important;
  height:34px!important;
  min-height:34px!important;
  padding:0 13px!important;
  border-radius:13px!important;
  font-size:.62rem!important;
  white-space:nowrap!important;
}
.activeCartClear{
  grid-column:2!important;
  grid-row:2!important;
  justify-self:end!important;
  height:auto!important;
  min-height:0!important;
  padding:1px 4px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  font-size:.52rem!important;
  line-height:1.2!important;
}
@media(max-width:520px){
  .activeCartFooter{padding-top:7px!important;gap:5px 6px!important}
  .activeCartFooter>div{height:33px!important;padding-inline:9px!important}
  .activeCartPrimary{height:33px!important;min-height:33px!important;padding-inline:11px!important}
}

/* Prevent compact checkout note from bleeding into the remove action */
.activeCartFooter>small{
  grid-column:1!important;
  grid-row:2!important;
  min-width:0!important;
  max-width:100%!important;
  padding:0 2px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.activeCartClear{
  grid-column:2!important;
  grid-row:2!important;
  position:relative!important;
  z-index:2!important;
  justify-self:end!important;
  flex:0 0 auto!important;
  margin:0!important;
  padding:0 3px!important;
  white-space:nowrap!important;
}
@media(max-width:520px){
  .activeCartFooter{
    grid-template-columns:minmax(0,1fr) auto!important;
    column-gap:6px!important;
  }
  .activeCartFooter>small{
    font-size:.48rem!important;
    line-height:1.1!important;
  }
  .activeCartClear{
    font-size:.49rem!important;
  }
}
