.cmwpp-preorder-box,
.cmwpp-popup{
  --cmwpp-accent:#111827;
  --cmwpp-accent-text:#ffffff;
  --cmwpp-surface:#ffffff;
  --cmwpp-surface-alt:#f8fafc;
  --cmwpp-text:#0f172a;
  --cmwpp-muted:#64748b;
  --cmwpp-border:#dbe4ef;
  --cmwpp-hover-bg:#eef2f7;
  --cmwpp-hover-text:#0f172a;
  --cmwpp-selected-bg:#15803d;
  --cmwpp-selected-text:#ffffff;
  --cmwpp-overlay-rgba:rgba(15,23,42,.58);
  --cmwpp-shadow:0 18px 55px rgba(15,23,42,.09);
  font-family:inherit;
}

.cmwpp-svg{display:block;width:1em;height:1em;flex:0 0 auto}

/* Checkout appointment card */
.cmwpp-preorder-box{
  border:1px solid var(--cmwpp-border)!important;
  border-radius:24px!important;
  background:var(--cmwpp-surface)!important;
  color:var(--cmwpp-text)!important;
  padding:22px!important;
  margin:18px 0!important;
  box-shadow:var(--cmwpp-shadow)!important;
  min-width:0;
  overflow:hidden;
}
.cmwpp-preorder-heading{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:start}
.cmwpp-preorder-heading legend{float:none!important;width:auto!important;padding:0!important;margin:0 0 4px!important;font-size:20px!important;font-weight:780!important;line-height:1.25!important;color:var(--cmwpp-text)!important}
.cmwpp-preorder-heading p{margin:0!important;color:var(--cmwpp-muted)!important;font-size:14px!important;line-height:1.55!important}
.cmwpp-preorder-icon{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:var(--cmwpp-surface-alt);border:1px solid var(--cmwpp-border);color:var(--cmwpp-accent);font-size:22px}
.cmwpp-preorder-icon .cmwpp-svg{width:22px;height:22px}
.cmwpp-preorder-badge{font-size:10px!important;font-weight:800!important;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:8px 11px;background:var(--cmwpp-surface-alt);border:1px solid var(--cmwpp-border);color:var(--cmwpp-muted)!important;white-space:nowrap}

.cmwpp-date-list{display:flex;gap:9px;overflow:auto;padding:20px 1px 8px;scrollbar-width:thin;scrollbar-color:var(--cmwpp-border) transparent}
.cmwpp-date{
  appearance:none!important;
  -webkit-appearance:none!important;
  border:1px solid var(--cmwpp-border)!important;
  background:var(--cmwpp-surface)!important;
  border-radius:16px!important;
  min-width:92px!important;
  padding:12px 14px!important;
  cursor:pointer!important;
  text-align:left!important;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease!important;
  color:var(--cmwpp-text)!important;
  box-shadow:none!important;
}
.cmwpp-date span,.cmwpp-date small{display:block;font-size:11px!important;color:var(--cmwpp-muted)!important;transition:color .16s ease}
.cmwpp-date strong{display:block;font-size:16px!important;margin:2px 0!important;color:var(--cmwpp-text)!important;transition:color .16s ease}
.cmwpp-date:hover:not(.is-active),.cmwpp-date:focus-visible:not(.is-active){background:var(--cmwpp-hover-bg)!important;border-color:var(--cmwpp-hover-bg)!important;color:var(--cmwpp-hover-text)!important;transform:translateY(-1px)}
.cmwpp-date:hover:not(.is-active) span,.cmwpp-date:hover:not(.is-active) small,.cmwpp-date:hover:not(.is-active) strong,
.cmwpp-date:focus-visible:not(.is-active) span,.cmwpp-date:focus-visible:not(.is-active) small,.cmwpp-date:focus-visible:not(.is-active) strong{color:var(--cmwpp-hover-text)!important}
.cmwpp-date.is-active{
  background:var(--cmwpp-selected-bg)!important;
  border-color:var(--cmwpp-selected-bg)!important;
  color:var(--cmwpp-selected-text)!important;
  box-shadow:0 8px 24px color-mix(in srgb,var(--cmwpp-selected-bg) 22%,transparent)!important;
  transform:translateY(-1px)
}
.cmwpp-date.is-active span,.cmwpp-date.is-active small,.cmwpp-date.is-active strong{color:var(--cmwpp-selected-text)!important}
.cmwpp-date:focus-visible{outline:3px solid color-mix(in srgb,var(--cmwpp-accent) 22%,transparent)!important;outline-offset:2px!important}

.cmwpp-time-group{display:none;padding-top:15px}
.cmwpp-time-group.is-active{display:block}
.cmwpp-time-label{display:block!important;font-size:12px!important;font-weight:760!important;color:var(--cmwpp-muted)!important;margin:0 0 8px!important}
.cmwpp-select-wrap{position:relative;max-width:430px}
.cmwpp-time-select{
  display:block!important;width:100%!important;min-height:52px!important;
  appearance:none!important;-webkit-appearance:none!important;
  border:1px solid var(--cmwpp-border)!important;border-radius:14px!important;
  background:var(--cmwpp-surface-alt)!important;color:var(--cmwpp-text)!important;
  padding:0 48px 0 15px!important;font:inherit!important;font-size:14px!important;font-weight:720!important;line-height:52px!important;
  box-shadow:none!important;outline:none!important;cursor:pointer!important;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease,color .16s ease!important;
}
.cmwpp-time-select:hover{background:var(--cmwpp-hover-bg)!important;border-color:var(--cmwpp-hover-bg)!important;color:var(--cmwpp-hover-text)!important}
.cmwpp-time-select:focus{background:var(--cmwpp-surface)!important;border-color:var(--cmwpp-accent)!important;color:var(--cmwpp-text)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--cmwpp-accent) 14%,transparent)!important}
.cmwpp-time-select option{background:var(--cmwpp-surface)!important;color:var(--cmwpp-text)!important}.cmwpp-time-select option:checked{background:var(--cmwpp-selected-bg)!important;color:var(--cmwpp-selected-text)!important}
.cmwpp-select-chevron{pointer-events:none;position:absolute;right:16px;top:50%;transform:translateY(-50%);display:grid;place-items:center;color:var(--cmwpp-muted)}
.cmwpp-select-chevron .cmwpp-svg{width:20px;height:20px}

.cmwpp-selection-summary{display:flex;align-items:center;gap:8px;margin-top:17px;border-top:1px solid var(--cmwpp-border);padding-top:14px;font-size:13px!important;color:var(--cmwpp-muted)!important}
.cmwpp-selection-summary strong{color:var(--cmwpp-text)!important;font-weight:780!important}
.cmwpp-summary-icon{display:grid;place-items:center;color:var(--cmwpp-accent)}
.cmwpp-summary-icon .cmwpp-svg{width:18px;height:18px}
.cmwpp-preorder-error{display:none;margin-top:12px;padding:11px 13px;background:#fff1f2;color:#9f1239;border:1px solid #fecdd3;border-radius:12px;font-size:13px!important;font-weight:700!important}
.cmwpp-preorder-error.is-visible{display:block}
.cmwpp-no-slots{display:flex;gap:14px;align-items:center}
.cmwpp-no-slots strong,.cmwpp-no-slots span{display:block}
.cmwpp-no-slots strong{color:var(--cmwpp-text)!important}
.cmwpp-no-slots span{font-size:13px!important;color:var(--cmwpp-muted)!important;margin-top:3px}
.cmwpp-shake{animation:cmwppShake .36s ease}
@keyframes cmwppShake{0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}

/* Closed shop popup */
.cmwpp-popup{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:22px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility .22s ease}
.cmwpp-popup.is-hidden{display:none}
.cmwpp-popup.is-open{opacity:1;visibility:visible;pointer-events:auto}
.cmwpp-popup-backdrop{position:absolute;inset:0;background:var(--cmwpp-overlay-rgba);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.cmwpp-popup-dialog{position:relative;z-index:1;width:min(510px,100%);border:1px solid var(--cmwpp-border);border-radius:26px;background:var(--cmwpp-surface);padding:30px;box-shadow:0 34px 100px rgba(15,23,42,.30);transform:translateY(14px) scale(.985);transition:transform .25s ease;font-family:inherit;color:var(--cmwpp-text)}
.cmwpp-popup.is-open .cmwpp-popup-dialog{transform:translateY(0) scale(1)}
.cmwpp-popup-close{position:absolute!important;right:16px!important;top:14px!important;width:38px!important;height:38px!important;border:1px solid var(--cmwpp-border)!important;border-radius:50%!important;background:var(--cmwpp-surface-alt)!important;color:var(--cmwpp-muted)!important;display:grid!important;place-items:center!important;cursor:pointer!important;padding:0!important;box-shadow:none!important;transition:background .15s ease,color .15s ease,border-color .15s ease!important}
.cmwpp-popup-close .cmwpp-svg{width:18px;height:18px}
.cmwpp-popup-close:hover{background:var(--cmwpp-hover-bg)!important;border-color:var(--cmwpp-hover-bg)!important;color:var(--cmwpp-hover-text)!important}
.cmwpp-popup-icon{width:52px;height:52px;border-radius:17px;display:grid;place-items:center;margin-bottom:17px;background:var(--cmwpp-surface-alt);border:1px solid var(--cmwpp-border);color:var(--cmwpp-accent)}
.cmwpp-popup-icon .cmwpp-svg{width:25px;height:25px}
.cmwpp-popup-kicker{display:inline-block;margin-bottom:8px;font-size:10px!important;line-height:1!important;font-weight:850!important;letter-spacing:.09em;text-transform:uppercase;color:var(--cmwpp-muted)!important}
.cmwpp-popup-dialog h2{margin:0 44px 9px 0!important;padding:0!important;color:var(--cmwpp-text)!important;font-size:25px!important;line-height:1.18!important;font-weight:820!important}
.cmwpp-popup-dialog p{margin:0!important;color:var(--cmwpp-muted)!important;font-size:14px!important;line-height:1.62!important}
.cmwpp-popup-next{display:flex;align-items:center;gap:12px;margin-top:18px;padding:13px 15px;border:1px solid var(--cmwpp-border);border-radius:15px;background:var(--cmwpp-surface-alt)}
.cmwpp-popup-next-icon{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:var(--cmwpp-surface);border:1px solid var(--cmwpp-border);color:var(--cmwpp-accent)}
.cmwpp-popup-next-icon .cmwpp-svg{width:18px;height:18px}
.cmwpp-popup-next-copy{display:block;min-width:0}
.cmwpp-popup-next-copy small,.cmwpp-popup-next-copy strong{display:block}
.cmwpp-popup-next-copy small{margin-bottom:3px;color:var(--cmwpp-muted)!important;font-size:10px!important;font-weight:800!important;text-transform:uppercase;letter-spacing:.055em}
.cmwpp-popup-next-copy strong{color:var(--cmwpp-text)!important;font-size:14px!important;font-weight:800!important}
.cmwpp-popup-actions{display:flex;gap:9px;margin-top:22px}
.cmwpp-popup-primary,.cmwpp-popup-secondary{min-height:46px!important;border-radius:13px!important;padding:0 17px!important;font:inherit!important;font-size:13px!important;font-weight:800!important;cursor:pointer!important;text-decoration:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;box-shadow:none!important;transition:background .16s ease,color .16s ease,border-color .16s ease,transform .16s ease!important}
.cmwpp-popup-primary{border:1px solid var(--cmwpp-accent)!important;background:var(--cmwpp-accent)!important;color:var(--cmwpp-accent-text)!important}
.cmwpp-popup-secondary{border:1px solid var(--cmwpp-border)!important;background:var(--cmwpp-surface)!important;color:var(--cmwpp-text)!important}
.cmwpp-popup-primary:hover{background:var(--cmwpp-hover-bg)!important;border-color:var(--cmwpp-hover-bg)!important;color:var(--cmwpp-hover-text)!important;transform:translateY(-1px)}
.cmwpp-popup-secondary:hover{background:var(--cmwpp-hover-bg)!important;border-color:var(--cmwpp-hover-bg)!important;color:var(--cmwpp-hover-text)!important;transform:translateY(-1px)}
.cmwpp-popup-open{overflow:hidden}

@media(max-width:760px){
  .cmwpp-preorder-box{padding:16px!important;border-radius:19px!important}
  .cmwpp-preorder-heading{grid-template-columns:42px minmax(0,1fr)}
  .cmwpp-preorder-badge{grid-column:2}
  .cmwpp-select-wrap{max-width:none}
  .cmwpp-popup{padding:14px;align-items:end}
  .cmwpp-popup-dialog{width:100%;border-radius:24px;padding:24px 20px 20px}
  .cmwpp-popup-dialog h2{font-size:22px!important}
  .cmwpp-popup-actions{flex-direction:column}
  .cmwpp-popup-primary,.cmwpp-popup-secondary{width:100%}
}
@media(max-width:430px){
  .cmwpp-date{min-width:84px!important;padding:10px 12px!important}
  .cmwpp-selection-summary{align-items:flex-start;flex-wrap:wrap}
  .cmwpp-popup-dialog{padding:22px 17px 17px}
}

/* v1.3 service-aware scheduling */
.cmwpp-service-strip{display:flex;align-items:center;gap:11px;margin-top:18px;padding:12px 14px;border:1px solid var(--cmwpp-border);border-radius:15px;background:var(--cmwpp-surface-alt)}
.cmwpp-service-icon{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;flex:0 0 auto;background:var(--cmwpp-surface);border:1px solid var(--cmwpp-border);color:var(--cmwpp-accent)}
.cmwpp-service-icon .cmwpp-svg{width:19px;height:19px}.cmwpp-service-strip>span:nth-child(2){min-width:0;flex:1}.cmwpp-service-strip small,.cmwpp-service-strip strong{display:block}.cmwpp-service-strip small{font-size:10px!important;text-transform:uppercase;letter-spacing:.06em;font-weight:800!important;color:var(--cmwpp-muted)!important}.cmwpp-service-strip strong{margin-top:2px;font-size:13px!important;color:var(--cmwpp-text)!important}.cmwpp-service-strip em{font-style:normal;font-size:11px!important;font-weight:780!important;color:var(--cmwpp-muted)!important;white-space:nowrap}
.cmwpp-timing-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}
.cmwpp-timing-option{appearance:none!important;-webkit-appearance:none!important;position:relative!important;display:grid!important;grid-template-columns:38px minmax(0,1fr) 22px!important;align-items:center!important;gap:11px!important;min-height:74px!important;padding:13px 14px!important;border:1px solid var(--cmwpp-border)!important;border-radius:16px!important;background:var(--cmwpp-surface)!important;color:var(--cmwpp-text)!important;text-align:left!important;cursor:pointer!important;box-shadow:none!important;transition:background .16s ease,border-color .16s ease,transform .16s ease,box-shadow .16s ease,color .16s ease!important}
.cmwpp-timing-option:hover:not(:disabled):not(.is-active),.cmwpp-timing-option:focus-visible:not(:disabled):not(.is-active){background:var(--cmwpp-hover-bg)!important;border-color:var(--cmwpp-hover-bg)!important;color:var(--cmwpp-hover-text)!important;transform:translateY(-1px)}
.cmwpp-timing-option.is-active{background:var(--cmwpp-selected-bg)!important;border-color:var(--cmwpp-selected-bg)!important;color:var(--cmwpp-selected-text)!important;box-shadow:0 9px 24px color-mix(in srgb,var(--cmwpp-selected-bg) 20%,transparent)!important}
.cmwpp-timing-option.is-disabled,.cmwpp-timing-option:disabled{opacity:.52!important;cursor:not-allowed!important}
.cmwpp-timing-icon{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:var(--cmwpp-surface-alt);border:1px solid var(--cmwpp-border);color:var(--cmwpp-accent)}
.cmwpp-timing-option.is-active .cmwpp-timing-icon{background:color-mix(in srgb,var(--cmwpp-selected-text) 14%,transparent);border-color:color-mix(in srgb,var(--cmwpp-selected-text) 30%,transparent);color:var(--cmwpp-selected-text)}
.cmwpp-timing-icon .cmwpp-svg{width:19px;height:19px}.cmwpp-timing-option strong,.cmwpp-timing-option small{display:block;color:inherit!important}.cmwpp-timing-option strong{font-size:13px!important;font-weight:820!important;line-height:1.2!important}.cmwpp-timing-option small{margin-top:4px;font-size:11px!important;line-height:1.3!important;opacity:.72}.cmwpp-timing-check{width:21px;height:21px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--cmwpp-border);color:transparent;background:var(--cmwpp-surface)}.cmwpp-timing-check .cmwpp-svg{width:13px;height:13px}.cmwpp-timing-option.is-active .cmwpp-timing-check{border-color:color-mix(in srgb,var(--cmwpp-selected-text) 38%,transparent);background:var(--cmwpp-selected-text);color:var(--cmwpp-selected-bg)}
.cmwpp-schedule-panel{max-height:900px;opacity:1;overflow:visible;transition:max-height .28s ease,opacity .2s ease,margin .2s ease}.cmwpp-schedule-panel.is-collapsed{max-height:0;opacity:0;overflow:hidden;margin:0!important;pointer-events:none}.cmwpp-schedule-panel>.cmwpp-time-groups:first-child .cmwpp-time-group{padding-top:16px}
.cmwpp-preorder-box.is-regular .cmwpp-selection-summary{margin-top:15px}

@media(max-width:650px){.cmwpp-timing-choice{grid-template-columns:1fr}.cmwpp-service-strip{align-items:flex-start;flex-wrap:wrap}.cmwpp-service-strip em{margin-left:47px}.cmwpp-timing-option{min-height:68px!important}}
