#puyp-p2b-app{--p2b-ink:#172033;--p2b-muted:#667085;--p2b-line:#e5e7eb;--p2b-bg:#fff;--p2b-soft:#f7f8fb;--p2b-accent:#6d4aff;--p2b-warn:#fff3cd;font-family:inherit;color:var(--p2b-ink);max-width:1180px;margin:28px auto;padding:0 16px}.puyp-p2b-loading{min-height:280px;display:grid;place-items:center;align-content:center;gap:12px}.puyp-p2b-spinner{width:34px;height:34px;border:4px solid #e5e7eb;border-top-color:var(--p2b-accent);border-radius:50%;animation:p2bspin .8s linear infinite}@keyframes p2bspin{to{transform:rotate(360deg)}}.p2b-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start}.p2b-card{background:var(--p2b-bg);border:1px solid var(--p2b-line);border-radius:18px;padding:22px;margin-bottom:18px}.p2b-card h2{font-size:1.35rem;margin:3px 0 8px}.p2b-eyebrow{text-transform:uppercase;letter-spacing:.08em;font-weight:800;font-size:.72rem;color:var(--p2b-accent)}.p2b-date{font-weight:700;margin:0 0 18px}.p2b-date span{color:var(--p2b-muted);font-weight:600}.p2b-item{display:flex;gap:14px;align-items:center;padding:13px 0;border-top:1px solid var(--p2b-line)}.p2b-item img,.p2b-ph{width:74px;height:62px;border-radius:12px;object-fit:contain;background:var(--p2b-soft);display:grid;place-items:center;font-size:1.6rem}.p2b-itemcopy{min-width:0;display:flex;justify-content:space-between;gap:12px;flex:1}.p2b-itemcopy strong{min-width:0}.p2b-muted{color:var(--p2b-muted)}.p2b-hold{padding:14px 18px;border-radius:14px;background:#eaf8ef;border:1px solid #ccebd6;margin-bottom:18px;font-size:1.03rem}.p2b-hold.p2b-warning{background:var(--p2b-warn);border-color:#f2d98e}.p2b-vehicles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.p2b-vehicle{display:block;cursor:pointer}.p2b-vehicle input{position:absolute;opacity:0}.p2b-vehicle span{display:flex;justify-content:space-between;align-items:center;gap:8px;border:1px solid var(--p2b-line);padding:14px;border-radius:13px;min-height:48px}.p2b-vehicle input:checked+span{border-color:var(--p2b-accent);box-shadow:0 0 0 2px rgba(109,74,255,.12)}.p2b-vehicle small{font-weight:700;color:var(--p2b-accent)}.p2b-summary{position:sticky;top:20px}.p2b-row,.p2b-total{display:flex;justify-content:space-between;gap:16px;padding:10px 0}.p2b-total{border-top:2px solid var(--p2b-line);margin-top:8px;padding-top:16px;font-size:1.2rem}.p2b-bundle{display:inline-block;background:#f1edff;color:#4d36b6;border-radius:999px;padding:6px 10px;font-size:.8rem;font-weight:800;margin-bottom:8px}.p2b-btn{width:100%;min-height:48px;border-radius:12px;border:0;padding:12px 16px;font-weight:800;font-size:1rem;cursor:pointer;text-decoration:none;display:flex;align-items:center;justify-content:center;margin-top:12px}.p2b-primary{background:var(--p2b-accent);color:#fff}.p2b-primary:disabled{opacity:.5;cursor:not-allowed}.p2b-secondary{background:var(--p2b-soft);color:var(--p2b-ink);border:1px solid var(--p2b-line)}.p2b-lock{text-align:center;color:var(--p2b-muted);font-size:.8rem;margin:12px 0 0}.p2b-center{text-align:center;max-width:520px;margin:80px auto}.p2b-center .p2b-btn{max-width:320px;margin:16px auto 0}.p2b-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;margin:0 auto 10px;background:var(--p2b-warn);font-weight:900;font-size:1.4rem}@media(max-width:820px){.p2b-layout{grid-template-columns:1fr}.p2b-summary{position:static}.p2b-vehicles{grid-template-columns:1fr}#puyp-p2b-app{padding:0 12px;margin-top:14px}.p2b-card{border-radius:15px;padding:17px}.p2b-itemcopy{flex-direction:column;gap:3px}.p2b-hold{position:sticky;top:0;z-index:3;border-radius:0;margin-left:-12px;margin-right:-12px;text-align:center}}
@media(prefers-reduced-motion:reduce){.puyp-p2b-spinner{animation:none}}

/* v0.2.2 checkout clarity */
.p2b-checkout-head{margin:4px 0 14px}.p2b-checkout-head>span,.p2b-summary-kicker{font-size:.72rem;letter-spacing:.1em;font-weight:900;color:var(--p2b-accent)}.p2b-checkout-head h1{margin:3px 0 4px;font-size:clamp(1.65rem,3vw,2.3rem);line-height:1.05}.p2b-checkout-head p{margin:0;color:var(--p2b-muted)}.p2b-hold{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:10px;background:#ecf9f0;border-color:#bfe4ca;font-weight:700}.p2b-hold-label{font-size:.95rem}.p2b-time{font-size:1.45rem;line-height:1;color:#136b36;background:#fff;border:1px solid #ccebd6;border-radius:9px;padding:6px 9px;min-width:76px;text-align:center}.p2b-hold small{color:var(--p2b-muted);font-weight:600}.p2b-hold.p2b-warning .p2b-time{color:#8a4b00;border-color:#e8c66e}.p2b-attention{border-color:#e9cf8d;background:#fffaf0}.p2b-inline-note{font-size:.82rem;color:#8a4b00;background:#fff8e8;border-radius:9px;padding:9px 10px;margin:8px 0 0}.p2b-summary{box-shadow:0 10px 30px rgba(17,32,51,.08)}
@media(max-width:820px){.p2b-checkout-head{padding:0 3px}.p2b-hold{grid-template-columns:1fr auto;gap:6px 10px}.p2b-hold small{grid-column:1/3}.p2b-time{font-size:1.35rem}.p2b-summary{box-shadow:none}}

/* v0.2.7 editable checkout */
.p2b-head-row,.p2b-party-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.p2b-edit-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px 12px;border-radius:10px;background:#f4f1ff;color:var(--p2b-accent);font-weight:800;text-decoration:none;white-space:nowrap}.p2b-edit-link.small{min-height:38px;font-size:.9rem}.p2b-item{display:grid;grid-template-columns:74px minmax(0,1fr) auto}.p2b-remove{min-height:40px;border:1px solid #efc5c1;background:#fff7f6;color:#a62b20;border-radius:10px;padding:8px 11px;font-weight:800;cursor:pointer}.p2b-remove:disabled{opacity:.6;cursor:progress}.p2b-edit-help{margin:12px 0 0;color:var(--p2b-muted);font-size:.86rem}.p2b-center{max-width:620px}
@media(max-width:680px){.p2b-head-row{display:grid}.p2b-head-row .p2b-edit-link{justify-self:start}.p2b-party-card-head{align-items:center}.p2b-item{grid-template-columns:62px minmax(0,1fr) auto}.p2b-item img,.p2b-ph{width:62px;height:56px}.p2b-remove{min-width:72px;padding:8px}.p2b-edit-link.small{padding:7px 9px}}

/* 0.2.8: explicit last-minute edit controls; cache-proof asset. */
.p2b-item{grid-template-columns:64px minmax(0,1fr) auto!important;gap:14px!important;align-items:center!important}
.p2b-item-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.p2b-change,.p2b-remove{min-height:34px;padding:6px 10px;border-radius:9px;font-size:12px;font-weight:850;text-decoration:none;white-space:nowrap}
.p2b-change{border:1px solid #dcd9f6;background:#fff;color:#4f3bd0}.p2b-remove{border:1px solid #f0c8c4;background:#fff7f6;color:#a62b20;cursor:pointer}
.p2b-edit-link{font-weight:850!important;text-decoration:none!important;border:1px solid #dedcf2;border-radius:9px;padding:7px 10px;background:#fff;white-space:nowrap}
@media(max-width:620px){.p2b-item{grid-template-columns:52px minmax(0,1fr)!important}.p2b-item img,.p2b-ph{width:52px!important;height:52px!important}.p2b-item-actions{grid-column:2;justify-content:flex-start}.p2b-head-row{gap:10px;align-items:flex-start!important;flex-wrap:wrap}.p2b-head-row>.p2b-edit-link{order:2}}
\n\n/* v0.2.9: optional pickup help + faster checkout emphasis */\n.p2b-pickup-help{background:#fafbfc;border:1px solid var(--p2b-line);border-radius:14px;padding:13px 15px;margin:0 0 18px}.p2b-pickup-help summary{cursor:pointer;font-weight:850;color:#4f3bd0}.p2b-pickup-help[open] summary{margin-bottom:9px}.p2b-pickup-help .p2b-vehicles{margin-top:10px}.p2b-summary .p2b-primary{min-height:54px}.p2b-hold small:after{content:' 10-minute checkout hold.';font-weight:700;color:#4f596f}\n/* Phase 3A guest-first identity */
.p2b-formgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}.p2b-formgrid label{display:flex;flex-direction:column;gap:6px;font-weight:700;color:#17203a}.p2b-formgrid label small,.p2b-optional summary span{font-weight:500;color:#7b8497}.p2b-formgrid input,.p2b-formgrid select{width:100%;box-sizing:border-box;border:1px solid #dfe3ec;border-radius:12px;padding:12px 13px;background:#fff;color:#17203a;font:inherit}.p2b-formgrid input:focus,.p2b-formgrid select:focus{outline:2px solid #7c4dff33;border-color:#7c4dff}.p2b-optional{margin-top:16px;border-top:1px solid #eef0f5;padding-top:14px}.p2b-optional summary{cursor:pointer;font-weight:800;color:#4338ca}.p2b-check{display:flex;align-items:flex-start;gap:9px;margin:12px 0;color:#4d5568}.p2b-check input{margin-top:3px}.p2b-customer-actions{display:flex;align-items:center;gap:12px;margin-top:16px}.p2b-customer-actions .p2b-btn{width:auto;min-width:150px}.p2b-saved{font-weight:800;color:#16804c}.p2b-customer .p2b-muted{margin-bottom:0}@media(max-width:680px){.p2b-formgrid{grid-template-columns:1fr}.p2b-customer-actions{align-items:flex-start;flex-direction:column}.p2b-customer-actions .p2b-btn{width:100%}}

.p2b-schedule .p2b-formgrid{margin-top:12px}
.p2b-customer-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}

.p2b-extra-day{display:block;font-size:11px;font-weight:600;margin-top:3px}
.p2b-promo details summary{cursor:pointer;font-weight:800}
.p2b-promo-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px}
.p2b-promo-row input{min-width:220px;flex:1}

.p2b-policy{margin-top:12px;padding:12px;border:1px solid #ddd;border-radius:12px}
.p2b-promo details summary{cursor:pointer;font-weight:800}
.p2b-promo-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px}
.p2b-promo-row input{min-width:220px;flex:1}

.p2b-smart-id{max-width:680px}
.p2b-smart-id label{display:block;margin-top:12px}
.p2b-smart-id input{font-size:18px}
.p2b-welcome,.p2b-new-badge{padding:12px 14px;border-radius:12px;background:#f7f5ff;margin:10px 0 16px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.p2b-welcome span{font-size:13px;color:#666}
.p2b-backup{display:block;margin:14px 0}
.p2b-backup small,.p2b-address-block small,.p2b-sms-required small,.p2b-policy small{display:block;color:#6b7280;margin-top:4px;line-height:1.35}
.p2b-address-block{border-top:1px solid #eee;padding-top:14px;margin-top:14px}
.p2b-address-block h3{margin:0 0 10px;font-size:16px}
.p2b-address-head{display:flex;justify-content:space-between;gap:12px;align-items:center}
.p2b-mini-check{font-size:13px;display:flex;gap:6px;align-items:center}
.p2b-place{font-size:13px;font-weight:700;color:#29603a;margin-top:5px}
.p2b-hidden{display:none!important}
.p2b-smart-more{margin-top:14px;border-top:1px solid #eee;padding-top:12px}
.p2b-smart-more summary{cursor:pointer;font-weight:750}
.p2b-sms-required,.p2b-policy{display:flex!important;align-items:flex-start;gap:10px;padding:14px;border:1px solid #d9d5ff;border-radius:14px;margin-top:14px;background:#faf9ff}
.p2b-policy{border-width:2px;background:#fffdf4}
.p2b-sms-required input,.p2b-policy input{margin-top:3px;flex:none}
.p2b-autosave{font-size:13px;margin-top:12px;font-weight:650;color:#5f55a6}
@media(max-width:700px){.p2b-address-head{align-items:flex-start;flex-direction:column}.p2b-smart-id input{font-size:16px}}
.p2b-profile-refresh{display:block;margin:10px 0 14px;padding:12px;background:#fffdf4;border:1px solid #eadf9e;border-radius:12px}.p2b-profile-refresh small{display:block;color:#6b7280;margin-top:4px}.p2b-loyalty h2 small{font-size:13px;color:#6b7280}.p2b-loyalty-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:12px 0}.p2b-loyalty-row input{min-width:180px;flex:1}

.p2b-backup{margin-top:20px!important;margin-bottom:20px!important}
.p2b-backup-label{display:block;margin-bottom:9px}
.p2b-backup input{display:block;width:100%;margin-top:0}
.p2b-field-status{min-height:18px;margin-top:6px!important;font-weight:700}
.p2b-invalid{border-color:#b42318!important;box-shadow:0 0 0 2px rgba(180,35,24,.08)!important}
.p2b-checklist{display:grid;gap:8px;margin-top:12px}
.p2b-check-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:1px solid #e4e0ff;background:#faf9ff;border-radius:12px;padding:11px 12px;cursor:pointer;color:inherit}
.p2b-check-item:hover{background:#f3f0ff}
.p2b-check-item span{display:inline-flex;width:24px;height:24px;align-items:center;justify-content:center;border-radius:50%;background:#6d42ff;color:#fff;font-size:12px;font-weight:800;flex:none}
.p2b-check-item strong{flex:1}
.p2b-readiness.p2b-ready{border-color:#b8dfc2;background:#fbfffc}
.p2b-loyalty-row{margin-top:14px}
.p2b-loyalty .p2b-saved{margin:0}

.p2b-error-icon{display:inline-flex;width:48px;height:48px;border-radius:50%;align-items:center;justify-content:center;background:#fff1c7;font-size:26px;font-weight:900;margin-bottom:8px}

.p2b-cap-line{font-size:12px;color:#6b7280}
.p2b-loyalty-line{border-top:1px dashed #ddd;margin-top:5px;padding-top:8px}
#p2b-schedule-status{margin-top:8px}

.p2b-order-note{font-size:11px;color:#6b7280;margin-top:6px;line-height:1.35}

.p2b-form-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.p2b-admin-edit{font-size:12px;font-weight:700;text-decoration:none}
.p2b-phone-on-file{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 14px;margin:12px 0 16px;background:#f7f5ff;border-radius:12px}
.p2b-link-btn{border:0;background:transparent;color:#6842ff;font-weight:800;cursor:pointer;padding:4px 0}
#p2b-phone-edit-wrap{margin:-4px 0 16px}
.p2b-summary-section{font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#6b42ff;margin-top:10px;padding-top:8px;border-top:1px solid #eee}
.p2b-reward-heading{color:#326b46}

/* v0.6.0 clearer smart-form sectioning */
.p2b-customer .p2b-address-block,
.p2b-customer .p2b-smart-more,
.p2b-customer .p2b-backup,
.p2b-customer .p2b-phone-on-file{
  background:#faf9ff;border:1px solid #ebe7ff;border-radius:16px;padding:16px;margin:14px 0;
}
.p2b-customer .p2b-address-block:nth-of-type(even){background:#fbfdff;border-color:#e6eef8}
.p2b-customer .p2b-address-block h3{margin-top:0}
.p2b-customer .p2b-check.p2b-sms-required,
.p2b-customer .p2b-check.p2b-policy{
  border-radius:14px;padding:14px 16px;margin-top:12px;
}
.p2b-customer .p2b-smart-more>summary{padding:2px 0;font-weight:850}
.p2b-promo-note{display:grid;gap:7px;margin-top:12px;padding:12px 14px;border-radius:12px;background:#fff8e7;border:1px solid #f2dfaa}
.p2b-promo-note .p2b-btn{justify-self:start}
.p2b-summary-section{margin-top:12px}

.p2b-eligibility-card{
  margin:16px 0;padding:18px;border:1px solid #ded8ff;border-radius:18px;
  background:linear-gradient(180deg,#faf9ff 0%,#f7f5ff 100%);
  box-shadow:0 8px 24px rgba(75,55,150,.05)
}
.p2b-eligibility-head{display:flex;justify-content:space-between;gap:16px;margin-bottom:12px}
.p2b-eligibility-head h3{margin:2px 0 4px}
.p2b-mini-kicker{font-size:10px;font-weight:900;letter-spacing:.1em;color:#7770a8}
#p2b-org-extra{margin-top:14px;padding-top:14px;border-top:1px solid #e7e2ff}

/* v0.6.3: official bundle price lock + neutral rental eligibility wording. */

/* v0.6.4: official bundle savings row label = Bundle Discount. */

/* v0.6.5 */
.p2b-autosave{min-height:1.25em}.p2b-autosave:empty{display:none}
