:root{--primary: #5b21b6;--primary-dark: #3b0764;--secondary: #111827;--accent: #f59e0b;--surface: #ffffff;--surface-elevated: #ffffff;--background: #faf7ff;--text: #211338;--muted: #6b5d7e;--border: #e9d5ff;--hero-text: #ffffff;--body-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--display-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--on-primary: #ffffff;--radius: 8px;--app-canvas: #160b2d;--glass: rgba(255, 255, 255, .94);--glass-strong: #ffffff;--shadow-soft: 0 18px 48px rgba(8, 18, 16, .12);--shadow-lift: 0 26px 70px rgba(8, 18, 16, .18);--keyboard-viewport-height: 100vh;--keyboard-viewport-top: 0px;--keyboard-inset: 0px;color:var(--text);background:radial-gradient(circle at 18% 0%,color-mix(in srgb,var(--primary) 28%,transparent),transparent 31rem),linear-gradient(180deg,var(--app-canvas) 0,#10201c 32rem,var(--background) 32rem);font-family:var(--body-font);line-height:1.4}:root[data-storefront-mode=dark]{--surface: #111827;--surface-elevated: #182235;--glass: rgba(15, 23, 42, .9);--glass-strong: #111827;--text: #f8fafc;--muted: #cbd5e1;--border: #334155;--app-canvas: #030712;background:radial-gradient(circle at 18% 0%,color-mix(in srgb,var(--primary) 24%,transparent),transparent 31rem),linear-gradient(180deg,#030712 0,#111827 32rem,var(--background) 32rem)}:root[data-storefront-font=warm]{--display-font: "Avenir Next", Avenir, Inter, ui-sans-serif, system-ui, sans-serif}:root[data-storefront-font=classic]{--display-font: Charter, "Iowan Old Style", Georgia, serif}:root[data-storefront-font=playful]{--display-font: "Avenir Next", Inter, ui-rounded, system-ui, sans-serif}@supports (height: 100dvh){:root{--keyboard-viewport-height: 100dvh}}html,body,#root{max-width:100%;overflow-x:hidden}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden}button,input,textarea,select{font:inherit}button{border:0;cursor:pointer;touch-action:manipulation}button:disabled{cursor:not-allowed;opacity:.55}img{max-width:100%;display:block}.app-shell{min-height:100vh;overflow-x:hidden;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--background) 82%,transparent) 520px),radial-gradient(circle at 92% 16%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 24rem),var(--background)}.resolve-screen{min-height:100vh;width:min(720px,calc(100% - 32px));margin:0 auto;display:grid;place-items:center;padding:48px 0}.resolve-card{width:100%;display:grid;justify-items:start;gap:12px;padding:28px;border-radius:calc(var(--radius) + 12px);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-soft)}.resolve-card h1{margin:0;color:var(--text);font-size:clamp(32px,6vw,56px);line-height:1;letter-spacing:0;overflow-wrap:anywhere}.resolve-card p{margin:0;color:var(--muted);font-size:16px;max-width:540px}.resolve-card.not-found svg{color:#b45309}.business-hero{min-height:560px;color:#fff;position:relative;overflow:hidden;isolation:isolate}.hero-image,.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0}.hero-image{width:100%;height:100%;object-fit:cover;transform:scale(1.03)}.hero-overlay{background:radial-gradient(circle at 78% 20%,color-mix(in srgb,var(--accent) 24%,transparent),transparent 22rem),linear-gradient(90deg,#020617f0,#02061785 52%,#020617d1),linear-gradient(0deg,#020617f5,#02061714 64%)}.business-hero:after{content:"";position:absolute;inset:auto 0 0;height:42%;z-index:0;background:linear-gradient(180deg,transparent,var(--background))}.topbar,.hero-content,main{position:relative;z-index:1;width:min(1180px,calc(100% - 32px));margin:0 auto}.topbar{display:flex;justify-content:space-between;align-items:center;padding:18px 0;gap:16px}.brand-lockup,.top-actions,.hero-meta,.cart-float,.nav-chip,.primary-action,.secondary-action,.availability-pill,.label-row,.state-warning,.success-box,.warning-box,.profile-card,.metric-list span{display:flex;align-items:center}.brand-lockup{gap:12px;color:inherit;background:#ffffff1c;border:1px solid rgba(255,255,255,.18);border-radius:calc(var(--radius) + 8px);padding:8px 12px 8px 8px;text-align:left;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 12px 38px #0000002e}.logo-mark{width:48px;height:48px;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--primary) 35%,#fff));color:#111816;font-weight:900;border-radius:calc(var(--radius) + 6px);box-shadow:inset 0 1px #ffffff8c;overflow:hidden}.logo-mark img{width:100%;height:100%;object-fit:contain;padding:5px}.brand-lockup strong,.brand-lockup small{display:block}.brand-lockup strong{font-size:18px}.brand-lockup small{color:#ffffffc2;font-size:13px}.top-actions{gap:8px;flex-wrap:wrap;justify-content:flex-end}.nav-chip{gap:7px;padding:11px 14px;border-radius:calc(var(--radius) + 8px);color:#fff;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transition:transform .16s ease,background .16s ease,border-color .16s ease}.nav-chip:hover{transform:translateY(-1px);background:#ffffff2b}.nav-chip.active{background:#fff;color:var(--primary-dark);box-shadow:0 16px 38px #0000002e}.hero-content{min-height:360px;display:grid;grid-template-columns:minmax(0,1fr) 310px;align-items:end;gap:28px;padding:58px 0 112px}.eyebrow{margin:0 0 8px;color:color-mix(in srgb,var(--accent) 78%,#fff);font-size:12px;font-weight:900;letter-spacing:0;text-transform:uppercase}.hero-content h1{color:var(--hero-text);font-family:var(--display-font);max-width:840px;margin:0;font-size:clamp(54px,7vw,96px);line-height:.94;letter-spacing:0;text-wrap:balance;overflow-wrap:anywhere}.hero-content p:not(.eyebrow){max-width:660px;color:#ffffffd6;font-size:20px}.hero-meta{gap:10px;flex-wrap:wrap;margin-top:20px}.visit-panel{width:min(100%,760px);margin-top:16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.2)}.visit-summary{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(180px,.6fr);gap:12px}.visit-detail{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;min-width:0;padding:0;border-radius:0;background:transparent;color:#ffffffe0}.visit-detail svg{width:38px;height:38px;padding:9px;border-radius:var(--radius);background:#ffffff24;color:#fff}.visit-detail span,.hours-strip span{min-width:0}.visit-detail strong,.visit-detail span{display:block}.visit-detail strong{margin-bottom:2px;color:#fff;font-size:12px;text-transform:uppercase;letter-spacing:0}.hero-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.hours-strip{display:grid;grid-template-columns:repeat(7,minmax(74px,1fr));gap:6px;margin-top:10px}.hero-links a{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:8px 11px;border-radius:calc(var(--radius) + 4px);background:#ffffffeb;border:1px solid rgba(255,255,255,.24);color:var(--primary-dark);text-decoration:none;font-size:12px;font-weight:800}.hours-strip span{display:grid;gap:3px;min-height:48px;padding:7px 0;border-radius:0;background:transparent;border:0;border-top:1px solid rgba(255,255,255,.14);color:#ffffffe6;font-size:12px;font-weight:800}.hours-strip small{color:#ffffffad;font-size:11px;font-weight:700;line-height:1.2}.hero-meta span,.cart-float{gap:8px;padding:11px 13px;background:#ffffff1f;border:1px solid rgba(255,255,255,.19);border-radius:calc(var(--radius) + 10px);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:inset 0 1px #ffffff1f}.cart-float{justify-content:space-between;color:#fff;min-height:74px;padding:16px;background:linear-gradient(135deg,#fff3,#ffffff14),color-mix(in srgb,var(--primary) 30%,transparent);box-shadow:0 24px 64px #00000038;transition:transform .16s ease}.cart-float:hover{transform:translateY(-2px)}.mobile-cart-bar{display:none}main{margin-top:-48px;padding:0 0 76px}.public-footer{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:0 0 34px;display:flex;align-items:center;justify-content:space-between;gap:14px;color:var(--muted);font-size:13px}.public-footer div,.public-footer nav{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.public-footer strong{color:var(--text)}.public-footer a,.public-footer button{color:var(--primary);background:transparent;padding:0;font-weight:900;text-decoration:none}.public-footer button:hover,.public-footer a:hover{text-decoration:underline}.feedback-screen{min-height:100vh;width:min(720px,calc(100% - 32px));margin:0 auto;display:grid;align-items:center;padding:34px 0}.feedback-panel{width:100%;display:grid;gap:18px;padding:24px;border:1px solid var(--border);border-radius:calc(var(--radius) + 10px);background:var(--surface);box-shadow:var(--shadow-soft)}.feedback-header{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;align-items:center}.feedback-header img,.feedback-header>span{width:64px;height:64px;border-radius:calc(var(--radius) + 6px);border:1px solid var(--border);background:color-mix(in srgb,var(--primary) 10%,var(--surface))}.feedback-header img{object-fit:cover}.feedback-header>span{display:grid;place-items:center;color:var(--primary);font-size:24px;font-weight:900}.feedback-header h1{margin:0;color:var(--text);font-size:30px;line-height:1.05;overflow-wrap:anywhere}.feedback-header p:not(.eyebrow){margin:6px 0 0;color:var(--muted)}.feedback-field{display:grid;gap:8px;color:var(--text);font-weight:850}.feedback-field input,.feedback-field textarea{width:100%;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);padding:12px 13px;outline:none}.feedback-field input:focus,.feedback-field textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 14%,transparent)}.feedback-star-row{display:flex;flex-wrap:nowrap;align-items:center;gap:6px;justify-content:flex-start;white-space:nowrap}.feedback-star-row button{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;flex:0 0 40px;border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in srgb,var(--surface) 90%,#fff);color:color-mix(in srgb,var(--muted) 28%,#e2e8f0);padding:0;line-height:1}.feedback-star-row button.active{border-color:color-mix(in srgb,var(--accent) 70%,var(--primary));background:color-mix(in srgb,var(--accent) 16%,var(--surface));color:var(--primary)}.feedback-star-row button:hover{color:var(--primary)}.feedback-item .feedback-star-row button{width:32px;height:32px;flex-basis:32px}.feedback-item-list{display:grid;gap:10px}.feedback-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--border);border-radius:var(--radius)}.feedback-item img{width:44px;height:44px;border-radius:var(--radius);object-fit:cover}.feedback-item span{min-width:0;overflow-wrap:anywhere}.feedback-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.feedback-hidden{display:none}.feedback-metrics,.feedback-response-box,.feedback-owner-box,.feedback-discount-box{display:grid;gap:14px;padding:16px;border:1px solid var(--border);border-radius:calc(var(--radius) + 8px);background:color-mix(in srgb,var(--surface) 90%,var(--background))}.feedback-metric-row{display:flex;justify-content:space-between;align-items:center;gap:14px}.feedback-metric-row .feedback-star-row{flex:0 0 auto}.feedback-metric-row>div:not(.feedback-star-row){display:grid;gap:3px;min-width:0}.feedback-metric-row span,.feedback-help,.feedback-discount-box span{color:var(--muted);font-size:13px}.feedback-metric-row strong{color:var(--text);font-size:14px;text-transform:uppercase}.feedback-overall{display:grid;gap:12px;justify-items:center;padding:8px 0 10px;text-align:center}.feedback-overall label{color:var(--text);font-weight:900}.feedback-overall .feedback-star-row{justify-content:center}.feedback-overall .feedback-star-row button{width:54px;height:54px;flex-basis:54px}.feedback-discount-box{grid-template-columns:auto minmax(0,1fr);background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff}.feedback-discount-box>svg{margin-top:2px}.feedback-discount-box strong,.feedback-discount-box span{display:block;color:#fff}.feedback-discount-box span{color:#ffffffc7}.feedback-phone-row{grid-column:1 / -1;display:grid;grid-template-columns:minmax(112px,.32fr) minmax(0,1fr);gap:8px}.feedback-phone-row select,.feedback-phone-row input,.feedback-item-note{width:100%;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);padding:11px 12px;outline:none}.feedback-item-note{grid-column:1 / -1}.feedback-owner-box{background:linear-gradient(135deg,var(--primary),var(--primary-dark));border-color:transparent;color:#fff}.feedback-owner-box h2,.feedback-owner-box p{margin:0;text-align:center}.feedback-owner-box h2{font-size:22px}.feedback-owner-box p{color:#ffffffd1;font-weight:800}.feedback-owner-box .feedback-field,.feedback-owner-box .feedback-field span{color:#fff}.discount-code-panel{justify-items:center;text-align:center}.discount-code-panel img{width:min(300px,100%);border:1px solid var(--border);border-radius:var(--radius)}@media (max-width: 640px){.feedback-screen{width:min(100% - 20px,720px);align-items:start;padding:10px 0 calc(20px + env(safe-area-inset-bottom))}.feedback-panel{padding:18px}.feedback-header{grid-template-columns:54px minmax(0,1fr)}.feedback-header img,.feedback-header>span{width:54px;height:54px}.feedback-header h1{font-size:24px}.feedback-contact-grid,.feedback-item,.feedback-phone-row{grid-template-columns:minmax(0,1fr)}.feedback-metric-row{display:grid;justify-items:start}.feedback-metric-row .feedback-star-row{justify-content:flex-start}}:root[data-storefront-mode=dark] .public-footer{color:var(--muted)}:root[data-storefront-mode=dark] .public-footer strong,:root[data-storefront-mode=dark] .section-title h2,:root[data-storefront-mode=dark] .booking-time-head h3{color:var(--text)}:root[data-storefront-mode=dark] .public-footer a,:root[data-storefront-mode=dark] .public-footer button{color:var(--primary)}.legal-modal{position:relative;width:min(560px,calc(100% - 28px));max-height:min(680px,calc(var(--keyboard-viewport-height, 100vh) - 36px));overflow:auto;scroll-padding-bottom:calc(var(--keyboard-inset, 0px) + 120px);padding:24px;border-radius:calc(var(--radius) + 14px);background:var(--surface);box-shadow:var(--shadow-lift)}.legal-modal h2{margin:4px 0 12px}.legal-modal p{color:var(--muted);line-height:1.65}.workspace,.booking-grid,.account-grid,.tracking-grid{display:grid;grid-template-columns:320px minmax(0,1fr);gap:22px;min-width:0}.rail{display:grid;align-content:start;gap:16px;min-width:0;position:sticky;top:18px}.panel,.menu-surface{background:var(--glass);border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:calc(var(--radius) + 14px);box-shadow:var(--shadow-soft);min-width:0;color:var(--text)}.panel{padding:20px}.panel.wide{grid-column:span 1}.panel h2,.panel h3,.section-title h2{color:var(--text);font-family:var(--display-font);margin:0;letter-spacing:0}.panel h2{font-size:18px;margin-bottom:14px}.category-list,.field-stack,.checkout-pane,.resource-list,.metric-list{display:grid;gap:10px}.active-menu-list{display:flex;flex-wrap:wrap;gap:8px;min-width:0;max-width:100%;margin:-2px 0 12px}.active-menu-pill{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:7px 10px;border:1px solid color-mix(in srgb,var(--primary) 18%,#fff);border-radius:calc(var(--radius) + 8px);background:color-mix(in srgb,var(--primary) 9%,#fff);color:var(--primary-dark);font-size:12px;font-weight:900;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}button.active-menu-pill:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--primary) 36%,#fff)}.active-menu-pill.active{background:linear-gradient(135deg,var(--primary),var(--primary-dark));border-color:var(--primary);color:#fff}.active-menu-pill small{color:var(--muted);font-size:11px;font-weight:800}.category,.resource,.modifier,.history-row{width:100%;text-align:left;padding:13px;border-radius:calc(var(--radius) + 8px);background:var(--surface-elevated);border:1px solid color-mix(in srgb,var(--border) 72%,transparent);color:var(--text);box-shadow:0 8px 24px color-mix(in srgb,var(--app-canvas) 10%,transparent);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease}:root[data-storefront-category=tabs] .category-list{display:flex;flex-wrap:wrap}:root[data-storefront-category=tabs] .category{width:auto;flex:1 1 120px;text-align:center;border-radius:var(--radius)}:root[data-storefront-category=tabs] .category small{display:none}:root[data-storefront-category=list] .category{border-radius:var(--radius);box-shadow:none;border-left:4px solid transparent}:root[data-storefront-category=list] .category.active{border-left-color:var(--accent)}.category:hover,.resource:hover,.modifier:hover,.history-row:hover{transform:translateY(-1px);box-shadow:0 14px 34px #0812101a}.category span,.category small,.resource span,.resource small{display:block}.category small,.resource small,.history-row small,.profile-card small,.payment-card small,.booking-payment-head small{color:var(--muted);margin-top:3px}.category.active,.resource.active,.modifier.selected,.date-row button.active,.slot-grid button.active,.segmented button.active,.tip-row button.active{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 16%,var(--surface-elevated));box-shadow:0 12px 30px color-mix(in srgb,var(--primary) 16%,transparent)}.checklist{gap:10px;display:grid}.checklist span,.metric-list span{gap:8px;color:var(--muted)}.menu-surface{padding:22px;background:var(--glass-strong)}.section-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.section-title h2{font-size:clamp(28px,3vw,42px);line-height:1}.search-box{min-width:280px;display:flex;gap:8px;align-items:center;background:var(--surface-elevated);border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:calc(var(--radius) + 10px);padding:12px 14px;box-shadow:0 10px 30px color-mix(in srgb,var(--app-canvas) 8%,transparent)}.search-box input,input,textarea,select{width:100%;min-width:0;border:1px solid color-mix(in srgb,var(--border) 70%,#fff);border-radius:calc(var(--radius) + 8px);padding:12px 13px;color:var(--text);background:color-mix(in srgb,var(--surface-elevated) 90%,transparent);outline:none;scroll-margin-bottom:calc(var(--keyboard-inset, 0px) + 96px)}.order-mode-switch{display:flex;flex-wrap:wrap;gap:8px;margin:-4px 0 18px}.order-mode-switch button{min-height:42px;border:1px solid color-mix(in srgb,var(--primary) 18%,#fff);border-radius:calc(var(--radius) + 8px);padding:10px 14px;background:#fff;color:var(--primary-dark);font-weight:900}.order-mode-switch button.active{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;box-shadow:0 14px 28px color-mix(in srgb,var(--primary) 22%,transparent)}.checkout-mode-field{display:grid;gap:8px}.checkout-mode-field>span{font-size:13px;font-weight:900;color:var(--primary-dark)}.order-mode-switch.compact{margin:0}.order-mode-switch.compact button{flex:1 1 112px}input:focus,textarea:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 14%,transparent)}.search-box input{border:0;padding:0;outline:none}textarea{min-height:78px;resize:vertical}label{display:grid;gap:7px;color:var(--muted);font-size:13px;font-weight:700}.item-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.all-categories-menu{display:grid;gap:34px}.menu-category-head{display:grid;gap:5px;margin-bottom:16px}.menu-category-head h3{margin:0;color:var(--text);font-size:clamp(22px,2.4vw,30px);line-height:1.1}.menu-category-head p{margin:0;color:var(--muted);font-size:15px}.item-card{overflow:hidden;background:var(--surface-elevated);border:1px solid color-mix(in srgb,var(--border) 68%,transparent);border-radius:calc(var(--radius) + 14px);min-height:468px;display:grid;grid-template-rows:230px 1fr;position:relative;box-shadow:0 18px 46px color-mix(in srgb,var(--app-canvas) 13%,transparent);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}:root[data-storefront-card=bordered] .panel,:root[data-storefront-card=bordered] .menu-surface,:root[data-storefront-card=bordered] .item-card,:root[data-storefront-card=bordered] .drawer,:root[data-storefront-card=bordered] .success-hero,:root[data-storefront-card=bordered] .tracking-card,:root[data-storefront-card=bordered] .booking-manage-card,:root[data-storefront-card=bordered] .booking-payment-panel{box-shadow:none;border-color:color-mix(in srgb,var(--primary) 28%,var(--border))}:root[data-storefront-card=elevated] .panel,:root[data-storefront-card=elevated] .menu-surface,:root[data-storefront-card=elevated] .item-card,:root[data-storefront-card=elevated] .drawer,:root[data-storefront-card=elevated] .success-hero,:root[data-storefront-card=elevated] .tracking-card,:root[data-storefront-card=elevated] .booking-manage-card,:root[data-storefront-card=elevated] .booking-payment-panel{box-shadow:var(--shadow-lift)}.item-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--primary) 35%,#fff);box-shadow:var(--shadow-lift)}.item-card img{width:100%;height:230px;object-fit:cover;grid-row:1;transition:transform .28s ease}.item-thumbnail-button{grid-row:1;min-width:0;min-height:0;padding:0;border-radius:0;background:transparent;overflow:hidden}.item-thumbnail-button img{height:100%}.item-card:hover img{transform:scale(1.035)}.item-card.unavailable img{filter:grayscale(.25) saturate(.85);opacity:.78}.item-body{position:relative;z-index:1;grid-row:2;padding:18px;display:grid;align-content:start;gap:13px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface-elevated) 94%,transparent),var(--surface-elevated) 38%),var(--surface-elevated);color:var(--text);box-shadow:0 -1px color-mix(in srgb,var(--border) 45%,transparent)}.item-title{display:flex;justify-content:space-between;gap:10px}.item-title h3,.detail-body h2{margin:0}.item-title h3{color:var(--text);font-size:22px;line-height:1.08}.item-title strong{color:var(--primary);font-size:17px;white-space:nowrap}.item-body p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}.item-body .item-extra-copy{font-size:12px;font-weight:800;color:color-mix(in srgb,var(--primary-dark) 72%,var(--muted))}.label-row{gap:6px;flex-wrap:wrap}.label-badge{display:inline-flex;align-items:center;gap:4px;padding:6px 9px;background:color-mix(in srgb,var(--primary) 12%,var(--surface-elevated));border:1px solid color-mix(in srgb,var(--primary) 18%,transparent);border-radius:999px;font-size:12px;color:var(--primary);font-weight:800}.label-badge svg{flex:0 0 auto}.label-badge.red{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.label-badge.blue{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.label-badge.amber{background:#fffbeb;border-color:#fde68a;color:#b45309}.label-badge.purple{background:#f5f3ff;border-color:#ddd6fe;color:#6d28d9}.label-badge.pink{background:#fdf2f8;border-color:#fbcfe8;color:#be185d}.label-badge.slate{background:#f8fafc;border-color:#cbd5e1;color:#475569}:root[data-storefront-mode=dark] .label-badge,:root[data-storefront-mode=dark] .label-badge.red,:root[data-storefront-mode=dark] .label-badge.blue,:root[data-storefront-mode=dark] .label-badge.amber,:root[data-storefront-mode=dark] .label-badge.purple,:root[data-storefront-mode=dark] .label-badge.pink,:root[data-storefront-mode=dark] .label-badge.slate{background:color-mix(in srgb,var(--primary) 14%,var(--surface-elevated));border-color:color-mix(in srgb,var(--primary) 22%,transparent);color:var(--text)}.item-body button,.primary-action,.secondary-action,.history-row button{justify-content:center;gap:8px;min-height:46px;border-radius:calc(var(--radius) + 10px);font-weight:900;transition:transform .16s ease,box-shadow .16s ease,filter .16s ease}.item-body button,.primary-action{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:var(--on-primary);box-shadow:0 14px 28px color-mix(in srgb,var(--primary) 24%,transparent)}:root[data-storefront-button=soft] .item-body button,:root[data-storefront-button=soft] .primary-action,:root[data-storefront-button=soft] .booking-manage-actions .receipt-link,:root[data-storefront-button=soft] .booking-manage-actions .secondary-action,:root[data-storefront-button=soft] .cart-float,:root[data-storefront-button=soft] .mobile-cart-bar{background:color-mix(in srgb,var(--primary) 14%,var(--surface-elevated));color:var(--primary-dark);border:1px solid color-mix(in srgb,var(--primary) 20%,var(--border))}:root[data-storefront-button=outline] .item-body button,:root[data-storefront-button=outline] .primary-action,:root[data-storefront-button=outline] .booking-manage-actions .receipt-link,:root[data-storefront-button=outline] .booking-manage-actions .secondary-action,:root[data-storefront-button=outline] .cart-float,:root[data-storefront-button=outline] .mobile-cart-bar{background:transparent;color:var(--primary-dark);border:2px solid var(--primary);box-shadow:none}.item-body button:hover,.primary-action:hover{transform:translateY(-1px);filter:saturate(1.08)}.secondary-action,.history-row button{background:var(--surface-elevated);border:1px solid color-mix(in srgb,var(--border) 72%,transparent);color:var(--primary)}.full{width:100%}.state-warning,.warning-box{gap:8px;color:#92400e}.receipt-link{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:14px;min-height:44px;padding:10px 12px;border-radius:calc(var(--radius) + 8px);background:color-mix(in srgb,var(--primary) 10%,var(--surface-elevated));border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border));color:var(--primary-dark);font-weight:900;text-decoration:none}.booking-manage-card{display:grid;gap:14px;padding:16px;border-radius:calc(var(--radius) + 12px);border:1px solid color-mix(in srgb,var(--primary) 16%,var(--border));background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 8%,var(--surface-elevated)),color-mix(in srgb,var(--surface) 82%,transparent)),var(--surface);box-shadow:0 18px 42px color-mix(in srgb,var(--app-canvas) 14%,transparent)}.booking-manage-area{width:100%}.booking-manage-area .booking-manage-card{padding:18px}.booking-manage-header{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center}.booking-manage-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:calc(var(--radius) + 8px);background:linear-gradient(135deg,var(--primary-dark),var(--primary));color:#fff;box-shadow:0 12px 28px color-mix(in srgb,var(--primary) 26%,transparent)}.booking-manage-header small,.booking-contact-strip,.booking-note{color:var(--muted)}.booking-manage-header small,.booking-manage-header strong{display:block}.booking-manage-header small{font-size:13px;font-weight:700}.booking-manage-header strong{color:var(--text);font-size:18px}.booking-status{justify-self:end;padding:7px 9px;border-radius:999px;background:color-mix(in srgb,var(--primary) 12%,var(--surface-elevated));border:1px solid color-mix(in srgb,var(--primary) 20%,var(--border));color:var(--primary-dark);font-size:12px;font-style:normal;font-weight:900;text-transform:uppercase;white-space:nowrap}.booking-status.status-cancelled,.booking-status.status-no_show{background:#fff1f2;border-color:#fecdd3;color:#9f1239}.booking-status.status-completed{background:#f1f5f9;border-color:#cbd5e1;color:#334155}.booking-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.booking-summary span{display:flex;align-items:center;gap:8px;min-height:38px;padding:9px 10px;border-radius:calc(var(--radius) + 8px);background:color-mix(in srgb,var(--surface-elevated) 84%,transparent);border:1px solid color-mix(in srgb,var(--border) 68%,transparent);color:var(--text);font-weight:800}.booking-summary svg{color:var(--primary-dark);flex:0 0 auto}.booking-contact-strip{display:flex;flex-wrap:wrap;gap:6px;font-size:13px;font-weight:800}.booking-contact-strip span{padding:6px 8px;border-radius:999px;background:color-mix(in srgb,var(--surface-elevated) 76%,transparent);border:1px solid color-mix(in srgb,var(--border) 64%,transparent)}.booking-note{margin:0;padding:10px;border-left:3px solid var(--accent);border-radius:var(--radius);background:color-mix(in srgb,var(--surface-elevated) 72%,transparent);font-size:13px;font-weight:700}.booking-manage-actions{display:grid;grid-template-columns:repeat(2,minmax(0,max-content));gap:10px;align-items:center}.booking-manage-actions .receipt-link{margin-top:0}.booking-layout,.account-layout,.tracking-layout{display:grid;gap:18px}.availability-pill{gap:8px;padding:11px 13px;background:color-mix(in srgb,var(--primary) 12%,#fff);border:1px solid color-mix(in srgb,var(--primary) 18%,#fff);border-radius:999px;color:var(--primary-dark);font-weight:800}:root[data-storefront-mode=dark] .availability-pill,:root[data-storefront-mode=dark] .booking-time-head span{background:color-mix(in srgb,var(--primary) 18%,var(--surface-elevated));border-color:color-mix(in srgb,var(--primary) 28%,transparent);color:var(--primary)}:root[data-storefront-mode=dark] .booking-status.status-cancelled,:root[data-storefront-mode=dark] .booking-status.status-no_show{background:color-mix(in srgb,#e11d48 16%,var(--surface-elevated));border-color:color-mix(in srgb,#fb7185 32%,transparent);color:#fecdd3}:root[data-storefront-mode=dark] .booking-status.status-completed{background:color-mix(in srgb,#94a3b8 16%,var(--surface-elevated));border-color:color-mix(in srgb,#cbd5e1 28%,transparent);color:#e2e8f0}.booking-grid{grid-template-columns:minmax(0,1fr);align-items:start}.booking-time-panel{padding:16px}.booking-time-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.booking-time-head h3{font-size:16px}.booking-time-head span{color:var(--primary-dark);font-size:12px;font-weight:900;padding:7px 10px;border-radius:999px;background:color-mix(in srgb,var(--primary) 10%,#fff)}.booking-time-body{display:grid;grid-template-columns:minmax(0,420px) minmax(260px,1fr);gap:18px;align-items:start}.booking-guest-panel{grid-column:1 / -1}.booking-guest-panel .field-stack{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-guest-panel label:has(textarea),.booking-guest-panel .legal-disclosure,.booking-guest-panel .warning-box,.booking-guest-panel .success-box,.booking-submit{grid-column:1 / -1}.segmented,.date-row,.slot-grid,.tip-row{display:grid;gap:8px}.segmented{grid-template-columns:repeat(4,minmax(0,1fr));margin:14px 0}.date-row{grid-template-columns:repeat(7,48px);justify-content:start}.slot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,max-content));align-content:start;margin:0}.slot-grid .empty-state{grid-column:1 / -1}.booking-submit{margin-top:20px}.booking-payment-panel{grid-column:1 / -1;display:grid;gap:18px;padding:22px;background:color-mix(in srgb,var(--surface) 78%,transparent);border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border));border-radius:calc(var(--radius) + 16px);box-shadow:var(--shadow-soft)}.booking-payment-head{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:center}.booking-payment-head h3{margin:2px 0 4px;font-size:clamp(20px,2vw,28px)}.booking-payment-head small{line-height:1.45}.booking-payment-head>strong{color:var(--primary-dark);font-size:24px;white-space:nowrap}.booking-payment-icon{width:48px;height:48px;display:grid;place-items:center;color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,var(--surface-elevated));border-radius:calc(var(--radius) + 8px)}.booking-payment-panel .stripe-payment-box{width:100%;max-width:none}.segmented button,.date-row button,.slot-grid button,.tip-row button{min-height:44px;border:1px solid color-mix(in srgb,var(--border) 68%,transparent);background:color-mix(in srgb,var(--surface-elevated) 82%,transparent);border-radius:calc(var(--radius) + 8px);color:var(--text);font-weight:800}.booking-time-panel .date-row button,.booking-time-panel .slot-grid button{min-height:36px;padding:7px 8px;font-size:13px}.booking-time-panel .date-row button{display:grid;gap:2px;width:48px;min-height:48px;place-items:center}.booking-time-panel .date-row button small{color:var(--muted);font-size:11px;font-weight:900;margin:0}.booking-time-panel .date-row button strong{color:inherit;font-size:15px;line-height:1}.booking-time-panel .slot-grid button{min-width:70px}.resource{display:flex;justify-content:space-between;gap:14px}.resource em{color:var(--primary-dark);font-style:normal;font-weight:800;white-space:nowrap}.private-assignment{display:flex;gap:12px;align-items:flex-start;padding:14px;border-radius:calc(var(--radius) + 8px);background:color-mix(in srgb,var(--primary) 9%,var(--surface-elevated));border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border))}.private-assignment strong,.private-assignment small{display:block}.private-assignment small{color:var(--muted);margin-top:4px}.success-box{gap:9px;padding:12px;background:color-mix(in srgb,var(--primary) 12%,var(--surface-elevated));border:1px solid var(--primary);border-radius:calc(var(--radius) + 8px)}.success-box.compact,.warning-box.compact{padding:10px 12px;font-size:13px}.reward-card{border:1px solid var(--border);border-radius:var(--radius);display:grid;gap:6px;margin-bottom:14px;padding:16px}.reward-card.muted{background:color-mix(in srgb,var(--border) 24%,var(--surface-elevated))}.reward-card span,.reward-card small{color:var(--muted)}.reward-card strong{color:var(--text);font-size:32px;line-height:1}.modal-backdrop{position:fixed;top:var(--keyboard-viewport-top, 0px);right:0;bottom:auto;left:0;width:100%;height:var(--keyboard-viewport-height, 100vh);z-index:10;background:radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--primary) 24%,transparent),transparent 26rem),#030807b8;display:grid;place-items:center;padding:18px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.detail-modal{width:min(980px,100%);height:min(800px,calc(var(--keyboard-viewport-height, 100vh) - 36px));max-height:min(800px,calc(var(--keyboard-viewport-height, 100vh) - 36px));overflow:hidden;background:var(--surface);border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:calc(var(--radius) + 18px);display:grid;grid-template-columns:42% 1fr;position:relative;box-shadow:0 38px 90px #00000057}.detail-modal>img{width:100%;height:100%;min-height:0;object-fit:cover}.detail-body{min-height:0;overflow:hidden;padding:0;display:grid;grid-template-rows:minmax(0,1fr) auto}.detail-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scroll-padding-bottom:120px;display:grid;gap:16px;padding:28px}.close{position:absolute;top:12px;right:12px;z-index:2}.icon-button{width:42px;height:42px;display:grid;place-items:center;border-radius:999px;background:#ffffffd6;border:1px solid rgba(255,255,255,.82);color:var(--text);box-shadow:0 12px 30px #0812101f}.modifier-group{display:grid;gap:8px}.info-list{display:grid;gap:8px;padding:12px;border-radius:calc(var(--radius) + 4px);background:color-mix(in srgb,var(--primary) 7%,#fff);border:1px solid color-mix(in srgb,var(--primary) 14%,#fff)}.info-list h3,.info-list p,.info-list ul{margin:0}.info-list ul{padding-left:18px;color:var(--muted);font-weight:700}.allergen-list{background:#eff6ff;border-color:#bfdbfe}.bundle-component-list{display:grid;gap:10px}.bundle-component-list h3{margin:0;font-size:16px}.bundle-components{display:grid;gap:10px}.bundle-choice-group{display:grid;gap:8px}.bundle-choice-group h4{margin:0;color:var(--text)}.bundle-component{display:grid;grid-template-columns:74px 1fr;gap:10px;align-items:center;text-align:left;padding:10px;border:1px solid var(--border);border-radius:calc(var(--radius) + 4px);background:#fff}.bundle-component.no-image{grid-template-columns:minmax(0,1fr)}.bundle-component>div{min-width:0}.bundle-component.selected{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,#fff)}.bundle-component img{width:74px;height:74px;object-fit:cover;border-radius:var(--radius)}.bundle-component small{display:block;color:var(--primary);font-size:11px;font-weight:900;text-transform:uppercase}.bundle-component strong{display:block;color:var(--text)}.bundle-component em{display:block;color:var(--primary-dark);font-style:normal;font-weight:900;margin-top:2px}.bundle-component p{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.45;overflow-wrap:anywhere}.suggestion-list{display:grid;gap:10px;padding:12px;border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border));border-radius:calc(var(--radius) + 8px);background:color-mix(in srgb,var(--primary) 6%,#fff)}.suggestion-list h3,.suggestion-list small{margin:0}.suggestion-list small{color:var(--muted);font-weight:700}.suggestion-grid{display:grid;gap:8px}.suggestion-card{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:10px;align-items:center;text-align:left;padding:9px;border:1px solid var(--border);border-radius:calc(var(--radius) + 4px);background:#fff}.suggestion-card.selected{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,#fff)}.suggestion-card img{width:52px;height:52px;object-fit:cover;border-radius:var(--radius)}.suggestion-card span{min-width:0}.suggestion-card strong,.suggestion-card small{display:block;overflow-wrap:anywhere}.suggestion-card em{color:var(--primary-dark);font-style:normal;font-weight:900}.modifier-group h3{margin:0;font-size:16px}.modifier{display:flex;justify-content:space-between}.detail-footer,.drawer-header,.history-row,.receipt-line{display:flex;align-items:center;justify-content:space-between;gap:12px}.detail-body>.detail-footer{flex-direction:row;flex:0 0 auto;padding:14px 28px calc(18px + env(safe-area-inset-bottom));border-top:1px solid color-mix(in srgb,var(--border) 74%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--surface-elevated) 94%,transparent),var(--surface-elevated)),var(--surface);box-shadow:0 -14px 34px #08121014}.detail-body>.detail-footer .primary-action{flex:1 1 auto;min-width:0}.quantity-stepper{display:inline-grid;grid-template-columns:38px 40px 38px;align-items:center;border:1px solid rgba(255,255,255,.82);border-radius:999px;background:#ffffffc7;overflow:hidden;box-shadow:0 10px 26px #08121014}.quantity-stepper button{height:38px;background:transparent;display:grid;place-items:center;color:var(--text)}.quantity-stepper strong{text-align:center}.quantity-stepper.compact{grid-template-columns:30px 32px 30px;margin-top:8px}.quantity-stepper.compact button{height:30px}.drawer{position:fixed;z-index:12;top:var(--keyboard-viewport-top, 0px);right:0;bottom:auto;height:var(--keyboard-viewport-height, 100vh);max-height:var(--keyboard-viewport-height, 100vh);width:min(480px,100%);overflow:auto;-webkit-overflow-scrolling:touch;scroll-padding-bottom:calc(var(--keyboard-inset, 0px) + 140px);background:var(--surface);border-left:1px solid color-mix(in srgb,var(--border) 72%,transparent);padding:20px;box-shadow:-28px 0 80px #00000038;color:var(--text)}.drawer-header{margin-bottom:18px}.drawer-header h2{margin:0}.cart-lines{display:grid;gap:12px;margin-bottom:14px}.cart-line{display:grid;grid-template-columns:72px 1fr auto;gap:12px;align-items:start;padding:11px;border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:calc(var(--radius) + 10px);background:var(--surface-elevated);color:var(--text);box-shadow:0 10px 28px color-mix(in srgb,var(--app-canvas) 9%,transparent)}.cart-line img{width:72px;height:72px;object-fit:cover;border-radius:calc(var(--radius) + 8px)}.cart-line small{display:block;color:var(--muted);margin-top:2px}.cart-suggestions{display:grid;gap:10px;margin:14px 0;padding:12px;border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border));border-radius:calc(var(--radius) + 8px);background:color-mix(in srgb,var(--primary) 10%,var(--surface))}.cart-suggestions>div:first-child{display:flex;gap:8px;align-items:center}.cart-suggestions strong,.cart-suggestions small{display:block}.cart-suggestions small{color:var(--muted);font-weight:700}.cart-suggestion-list{display:grid;gap:8px}.cart-suggestion{display:grid;grid-template-columns:46px minmax(0,1fr) 30px;gap:10px;align-items:center;text-align:left;padding:8px;border:1px solid var(--border);border-radius:calc(var(--radius) + 4px);background:var(--surface-elevated);color:var(--text)}.cart-suggestion img{width:46px;height:46px;object-fit:cover;border-radius:var(--radius)}.cart-suggestion span{min-width:0}.totals{display:grid;gap:8px;margin:16px 0}.totals div{display:flex;justify-content:space-between;gap:12px}.totals dt{color:var(--muted)}.totals dd{margin:0;font-weight:800}.total-row{padding-top:10px;border-top:1px solid color-mix(in srgb,var(--border) 70%,transparent);font-size:19px}.warning-box{padding:12px;border-radius:calc(var(--radius) + 8px);background:#fffbeb;border:1px solid #fde68a}:root[data-storefront-mode=dark] .warning-box{background:color-mix(in srgb,#f59e0b 14%,var(--surface-elevated));border-color:color-mix(in srgb,#fbbf24 34%,transparent);color:#fde68a}:root[data-storefront-mode=dark] .success-box{background:color-mix(in srgb,var(--primary) 16%,var(--surface-elevated));border-color:color-mix(in srgb,var(--primary) 30%,transparent);color:var(--text)}.warning-box.large{align-items:flex-start}.checkbox-line{display:flex;flex-direction:row;align-items:flex-start;gap:12px;font-weight:700;line-height:1.45;padding:6px 0;cursor:pointer}.checkbox-line input[type=checkbox]{flex:0 0 22px;width:22px;height:22px;min-width:22px;margin:1px 0 0;padding:0;accent-color:var(--primary);cursor:pointer}.checkbox-line.required{color:var(--text)}.field-hint{margin:-4px 0 4px 34px;color:var(--muted);font-size:.82rem;font-weight:700;line-height:1.45}.checkout-account-toggle{display:grid;grid-template-columns:22px 1fr;align-items:start;gap:12px;border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in srgb,var(--primary) 10%,var(--surface));padding:13px;cursor:pointer}.checkout-account-toggle input{width:22px;height:22px;margin:1px 0 0;accent-color:var(--primary)}.checkout-account-toggle strong,.checkout-account-toggle small{display:block}.checkout-account-toggle small{color:var(--muted);font-size:13px;font-weight:600;line-height:1.45;margin-top:3px}.legal-disclosure{border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in srgb,var(--surface-elevated) 78%,transparent);padding:12px;color:var(--muted);font-size:13px}.legal-disclosure summary{cursor:pointer;color:var(--text);font-weight:900}.legal-disclosure p{margin:8px 0 12px}.payment-card,.success-hero,.empty-state{display:grid;place-items:center;text-align:center;gap:10px;min-height:150px;padding:20px;border:1px dashed color-mix(in srgb,var(--primary) 28%,var(--border));border-radius:calc(var(--radius) + 14px);background:color-mix(in srgb,var(--surface-elevated) 74%,transparent);color:var(--muted)}.stripe-payment-box{display:grid;gap:14px;padding:16px;border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border));border-radius:calc(var(--radius) + 12px);background:color-mix(in srgb,var(--surface-elevated) 82%,transparent);box-shadow:0 12px 30px color-mix(in srgb,var(--app-canvas) 10%,transparent)}.payment-preparing{display:flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:14px;border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border));border-radius:calc(var(--radius) + 12px);background:color-mix(in srgb,var(--surface-elevated) 82%,transparent);color:var(--muted);font-weight:800}.express-checkout{display:grid;gap:10px}.express-checkout.pending{min-height:0}.payment-divider{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.payment-divider:before,.payment-divider:after{content:"";flex:1;height:1px;background:var(--border)}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.account-grid{grid-template-columns:minmax(260px,.6fr) minmax(0,1fr)}.profile-card{gap:12px;padding:14px;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:calc(var(--radius) + 10px);background:color-mix(in srgb,var(--surface-elevated) 76%,transparent);margin:14px 0;box-shadow:0 10px 26px color-mix(in srgb,var(--app-canvas) 9%,transparent)}.history-row{margin-top:10px}.tracking-grid{grid-template-columns:minmax(0,1fr) 340px}.timeline{display:grid;gap:14px}.timeline-step{display:grid;grid-template-columns:36px 1fr;gap:6px 12px;align-items:center;color:var(--muted)}.timeline-step span{width:36px;height:36px;display:grid;place-items:center;background:var(--surface-elevated);border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:50%;font-weight:900;box-shadow:0 8px 22px color-mix(in srgb,var(--app-canvas) 9%,transparent)}.timeline-step small{grid-column:2}.timeline-step.active{color:var(--text)}.timeline-step.active span{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:var(--on-primary)}.receipt-line{padding:9px 0;border-bottom:1px solid color-mix(in srgb,var(--border) 70%,transparent)}.pickup-code{margin-top:16px;padding:16px;text-align:center;border-radius:calc(var(--radius) + 10px);background:linear-gradient(135deg,var(--primary-dark),var(--primary));color:var(--on-primary);font-weight:900;box-shadow:0 14px 36px color-mix(in srgb,var(--primary) 24%,transparent)}@media (max-width: 920px){.resolve-screen{margin-left:16px;margin-right:auto;width:min(360px,calc(100% - 32px))}.resolve-card h1{font-size:32px}.business-hero{min-height:auto}.topbar,.hero-content,main,.public-footer{width:min(100% - 24px,720px)}.topbar,.section-title,.detail-footer{align-items:stretch;flex-direction:column}.hero-content,.workspace,.booking-grid,.account-grid,.tracking-grid{grid-template-columns:1fr}.hero-content{padding-top:36px;padding-bottom:68px}.cart-float{display:none}.mobile-cart-bar{position:fixed;left:12px;right:12px;bottom:calc(14px + env(safe-area-inset-bottom) + var(--keyboard-inset, 0px));z-index:9;display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:56px;padding:12px 14px;border-radius:calc(var(--radius) + 10px);background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;box-shadow:0 18px 44px #08121047}.mobile-cart-bar span{display:inline-flex;align-items:center;gap:8px;font-weight:900}main{padding-bottom:calc(126px + env(safe-area-inset-bottom))}.keyboard-open .mobile-cart-bar{display:none}.visit-summary,.hours-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.rail{position:static}.booking-manage-header{grid-template-columns:42px minmax(0,1fr)}.booking-summary,.booking-manage-actions,.booking-guest-panel .field-stack,.booking-time-body,.booking-payment-head{grid-template-columns:1fr}.booking-time-panel{overflow:hidden}.booking-time-body{gap:14px}.booking-time-panel .date-row{display:flex;grid-template-columns:none;gap:8px;margin:0 -4px;padding:2px 4px 10px;overflow-x:auto;overscroll-behavior-x:contain;scroll-padding-inline:4px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.booking-time-panel .date-row button{flex:0 0 52px;width:52px;scroll-snap-align:start}.booking-time-panel .slot-grid{grid-template-columns:repeat(auto-fit,minmax(82px,1fr))}.booking-payment-head>strong{justify-self:start}.booking-status{grid-column:1 / -1;justify-self:start}.category-list{grid-template-columns:repeat(2,minmax(0,1fr))}.item-grid{grid-template-columns:1fr}.search-box{min-width:0}.resource{display:grid;gap:8px}.resource em{white-space:normal}.public-footer{align-items:flex-start;flex-direction:column}.detail-modal{grid-template-columns:1fr;grid-template-rows:240px minmax(0,1fr);border-radius:calc(var(--radius) + 14px)}.detail-modal>img{min-height:240px;height:240px}}@media (max-width: 560px){.modal-backdrop{padding:9px}main{margin-top:-34px}.brand-lockup{width:100%}.top-actions,.hero-meta{display:grid;grid-template-columns:1fr}.visit-panel{padding:12px}.visit-summary{grid-template-columns:1fr}.hours-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.hours-strip span{display:flex;min-height:38px;align-items:center;justify-content:space-between;gap:8px;padding:7px 9px;border:1px solid rgba(255,255,255,.14);border-radius:calc(var(--radius) + 4px);background:#ffffff12}.hours-strip small{font-size:10px;text-align:right;white-space:nowrap}.hero-content h1{font-size:clamp(40px,12vw,52px);line-height:.95}.hero-content p:not(.eyebrow){font-size:17px}.category-list,.segmented,.slot-grid{grid-template-columns:1fr 1fr}.booking-time-head{align-items:flex-start}.booking-time-head span{flex:0 0 auto;max-width:46%;text-align:center}.booking-time-panel .date-row button{flex-basis:58px;width:58px;min-height:54px}.booking-time-panel .slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-title h2{font-size:clamp(26px,9vw,34px)}.menu-surface,.panel,.drawer,.detail-scroll{padding:16px}.workspace{grid-template-columns:minmax(0,1fr);gap:14px}.rail{gap:0}.menu-navigation{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.menu-navigation h2,.rail .checklist{display:none}.active-menu-list{flex-wrap:nowrap;overflow-x:auto;margin:0 0 12px;width:100%;max-width:100%;padding:0 0 2px;scrollbar-width:none}.active-menu-list::-webkit-scrollbar,.category-list::-webkit-scrollbar{display:none}.active-menu-pill{flex:0 0 auto;min-height:38px;padding:8px 12px;border-radius:999px;font-size:14px;line-height:1;white-space:nowrap}.category-list{display:flex;grid-template-columns:none;gap:8px;width:100%;max-width:100%;min-width:0;margin:0;padding:0 0 5px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch}.category{flex:0 0 auto;width:auto;min-height:38px;padding:8px 12px;border-radius:999px;box-shadow:none;font-size:14px;font-weight:850;line-height:1;white-space:nowrap;scroll-snap-align:start}.category:hover{transform:none;box-shadow:none}.category small{display:none}.category.active{border-color:var(--primary);background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff}.menu-surface{min-width:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.section-title{gap:14px;margin-bottom:16px}.all-categories-menu{gap:26px}.menu-category-head{gap:4px;margin-bottom:12px}.menu-category-head h3{font-size:24px}.menu-category-head p{font-size:14px}.item-grid{grid-template-columns:minmax(0,1fr);min-width:0;width:100%;gap:0;overflow:hidden;border:1px solid color-mix(in srgb,var(--border) 80%,#fff);border-radius:calc(var(--radius) + 10px);background:#fff}.drawer{padding-bottom:calc(22px + env(safe-area-inset-bottom))}.item-title{display:grid}.detail-modal{height:calc(var(--keyboard-viewport-height, 100vh) - 18px);max-height:calc(var(--keyboard-viewport-height, 100vh) - 18px);border-radius:calc(var(--radius) + 8px)}input,textarea,select{font-size:16px}.detail-body>.detail-footer{padding:12px 16px calc(14px + env(safe-area-inset-bottom))}.cart-line{grid-template-columns:58px 1fr}.cart-line>strong{grid-column:2}.cart-line img{width:58px;height:58px}.resource,.history-row{display:grid}.item-card{--thumb-button-edge-gap: 4px;--thumb-button-inset: 8px;--thumb-button-size: 30px;--thumb-button-overlap: 15px;--thumb-offset: 12px;--thumb-size: 118px;--thumb-top: 14px;min-width:0;min-height:156px;grid-template-columns:minmax(0,1fr) calc(var(--thumb-size) + var(--thumb-offset));grid-template-rows:auto;border:0;border-bottom:1px solid color-mix(in srgb,var(--border) 80%,#fff);border-radius:0;box-shadow:none}.item-card:last-child{border-bottom:0}.item-card:hover{transform:none;border-color:color-mix(in srgb,var(--border) 80%,#fff);box-shadow:none}.item-thumbnail-button,.item-card>img{grid-column:2;grid-row:1;width:var(--thumb-size);height:var(--thumb-size);margin:var(--thumb-top) var(--thumb-offset) 14px 0;border-radius:calc(var(--radius) + 5px)}.item-thumbnail-button img{width:100%;height:100%}.item-card>img{width:var(--thumb-size);height:var(--thumb-size);object-fit:cover}.item-card:hover img{transform:none}.item-body{position:static;grid-column:1;grid-row:1;min-width:0;gap:7px;padding:15px 9px 15px 15px;background:#fff;box-shadow:none}.item-title{gap:4px}.item-title h3{font-size:18px;line-height:1.18}.item-title strong{font-size:16px}.item-body p{font-size:13px;line-height:1.42;overflow-wrap:anywhere}.label-row{gap:5px}.label-badge{padding:4px 7px;font-size:11px}.item-body .item-add-button{position:absolute;top:calc(var(--thumb-top) + var(--thumb-size) - var(--thumb-button-overlap));right:calc(var(--thumb-offset) + var(--thumb-button-inset));z-index:1;display:grid;place-items:center;width:var(--thumb-button-size);height:var(--thumb-button-size);min-height:var(--thumb-button-size);padding:0;border-radius:999px;box-shadow:0 10px 24px color-mix(in srgb,var(--primary) 26%,transparent)}.item-body .item-add-button svg{width:15px;height:15px}.item-add-button span{display:none}}
