:root{--page:#f7faf8;--text:#26313b;--text-strong:#101820;--text-muted:#66727d;--border:#dde5e9;--focus:#235d83;color:var(--text);background:var(--page);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,textarea{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #235d833d}h1,h2,h3,p{margin-top:0}strong{color:inherit}.customer-app{background:linear-gradient(180deg, var(--tenant-soft) 0, #f7faf800 210px), var(--page);min-height:100vh;padding-bottom:136px}.chooser-page{background:var(--page);place-items:center;min-height:100vh;padding:22px;display:grid}.chooser-card{border:1px solid var(--border);background:#fff;border-radius:8px;width:min(100%,460px);padding:22px}.app-badge{min-height:34px;color:var(--text-strong);background:#eef5f1;border-radius:999px;align-items:center;gap:8px;padding:0 11px;font-weight:800;display:inline-flex}.chooser-card h1{margin:18px 0 8px;font-size:30px;line-height:1.05}.chooser-card p{color:var(--text-muted);margin:0 0 18px}.chooser-list{gap:10px;display:grid}.chooser-link{border:1px solid var(--border);min-height:68px;color:var(--text);border-radius:8px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px;text-decoration:none;display:grid}.chooser-icon,.business-mark,.service-icon,.success-icon{justify-content:center;align-items:center;display:inline-flex}.chooser-icon{color:#176f5d;background:#e7f4ef;border-radius:8px;width:38px;height:38px}.chooser-link strong,.chooser-link small{display:block}.chooser-link strong{color:var(--text-strong)}.chooser-link small{color:var(--text-muted)}.business-header{grid-template-columns:auto 1fr;align-items:center;gap:14px;width:min(100%,720px);margin:0 auto;padding:18px 16px 12px;display:grid}.business-mark{width:52px;height:52px;color:var(--tenant-accent-strong);background:#fff;border-radius:8px;box-shadow:0 8px 20px #19303914}.business-copy span{color:var(--tenant-accent-strong);text-transform:uppercase;margin-bottom:3px;font-size:13px;font-weight:900;display:block}.business-copy h1{color:var(--text-strong);margin:0;font-size:28px;line-height:1.08}.business-copy p{color:var(--text-muted);align-items:center;gap:6px;margin:8px 0 0;font-size:14px;display:flex}.flow-shell{width:min(100%,720px);margin:0 auto;padding:0 12px 20px}.phone-gate,.customer-booking-card{border:1px solid var(--border);background:#fff;border-radius:8px;margin-top:12px;padding:16px;box-shadow:0 10px 24px #1f36420f}.phone-gate{gap:12px;display:grid}.phone-icon{width:44px;height:44px;color:var(--tenant-accent-strong);background:var(--tenant-soft);border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.phone-gate h2,.customer-booking-heading h2{color:var(--text-strong);margin:0;font-size:21px}.phone-gate label{display:grid}.phone-heading-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.phone-heading-row button{min-height:auto;color:var(--tenant-accent-strong);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:900}.phone-gate input{width:100%;min-height:48px;color:var(--text-strong);font:inherit;background:#fff;border:1px solid #cbd7df;border-radius:8px;padding:0 12px}.phone-gate>button{color:#fff;background:var(--tenant-accent);min-height:44px;font:inherit;cursor:pointer;border:0;border-radius:8px;font-weight:900}.phone-gate>button:disabled{cursor:not-allowed;color:#71808a;background:#d8e1e7}.customer-booking-card{border-color:#176f5d38;gap:12px;display:grid}.customer-booking-list{gap:10px;display:grid}.customer-booking-heading{grid-template-columns:auto 1fr;align-items:center;gap:10px;display:grid}.customer-booking-heading>span{width:38px;height:38px;color:var(--tenant-accent-strong);background:var(--tenant-soft);border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.customer-booking-heading p,.booking-action-message{color:var(--text-muted);margin:3px 0 0}.customer-booking-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.customer-booking-actions button{min-height:40px;color:var(--text-strong);font:inherit;cursor:pointer;background:#fff;border:1px solid #cbd7df;border-radius:8px;font-weight:900}.customer-booking-actions button:disabled,.ghost-button:disabled{cursor:wait;color:#71808a;background:#eef3f5}.booking-action-message{color:var(--tenant-accent-strong);background:var(--tenant-soft);border-radius:8px;padding:10px;font-weight:800}.standalone-action-message{margin:12px 0 0}.flow-section{border:1px solid var(--border);background:#fff;border-radius:8px;margin-top:12px;padding:16px;box-shadow:0 10px 24px #1f36420f}.section-header{margin-bottom:13px}.section-header h2{color:var(--text-strong);margin:0;font-size:21px;line-height:1.16}.service-list,.day-list,.contact-fields{gap:10px;display:grid}.service-card{border:1px solid var(--border);width:100%;min-height:68px;color:var(--text);text-align:left;cursor:pointer;background:#fff;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:12px;display:grid}.service-card.selected{border-color:var(--tenant-accent);background:var(--tenant-soft)}.service-icon{width:36px;height:36px;color:var(--tenant-accent-strong);background:var(--tenant-soft);border-radius:8px}.service-main{min-width:0}.service-main strong,.service-meta strong,.service-meta small{display:block}.service-main strong{color:var(--text-strong);font-size:16px}.service-meta{color:var(--text-muted);grid-column:2;align-items:center;gap:8px;display:flex}.service-meta strong{color:var(--tenant-accent-strong)}.day-card{border:1px solid var(--border);background:#fff;border-radius:8px;overflow:hidden}.day-card>header{border-bottom:1px solid var(--border);background:#f7fafb;justify-content:space-between;gap:10px;padding:12px;display:flex}.day-card header strong{color:var(--text-strong);display:block}.day-card header span{color:var(--text-muted);font-size:13px}.slot-group{padding:12px}.slot-group+.slot-group{border-top:1px solid var(--border)}.professional-label{color:var(--text-strong);align-items:flex-start;gap:7px;margin-bottom:9px;font-weight:900;display:flex}.professional-label svg{color:var(--tenant-accent);margin-top:2px}.slot-buttons{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.slot-button,.ghost-button,.more-times,.bottom-summary button{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:42px;font-weight:900;display:inline-flex}.slot-button{color:var(--text-strong);background:#fff;border:1px solid #cbd7df}.slot-button.selected{border-color:var(--tenant-accent);color:#fff;background:var(--tenant-accent)}.more-times{width:calc(100% - 24px);color:var(--tenant-accent-strong);background:#fff;border:1px dashed #bac8d0;margin:0 12px 12px}.ghost-button{border:1px solid var(--tenant-accent);width:100%;color:var(--tenant-accent-strong);background:var(--tenant-soft);margin-top:10px}.inline-status,.flow-error{color:var(--text-muted);margin:0;font-weight:800}.inline-status.error,.flow-error{color:#9b4b22}.flow-error{margin:12px 4px 0}.text-field{gap:6px;display:grid}.name-override-button{border:1px solid var(--border);width:100%;min-height:42px;color:var(--tenant-accent-strong);font:inherit;cursor:pointer;background:#fff;border-radius:8px;font-weight:900}.text-field span,.soft-box h3{color:var(--text-strong);font-weight:900}.text-field input{width:100%;color:var(--text-strong);font:inherit;background:#fff;border:1px solid #cbd7df;border-radius:8px;min-height:46px;padding:0 12px}.text-field input:focus{border-color:var(--tenant-accent);outline:3px solid #235d8329}.text-field input:disabled{color:var(--text-muted);background:#eef3f5}.soft-box{border:1px solid var(--border);background:#fbfcfd;border-radius:8px;gap:10px;padding:12px;display:grid}.soft-box h3{margin:0;font-size:16px}.check-line{color:var(--text-strong);grid-template-columns:auto 1fr;align-items:center;gap:9px;font-weight:800;display:grid}.check-line input{width:20px;height:20px;accent-color:var(--tenant-accent)}.insurance-fields{gap:10px;display:grid}.bottom-summary{z-index:30;padding:12px 12px max(12px, env(safe-area-inset-bottom));border-top:1px solid var(--border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff5;gap:10px;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -14px 26px #1e303a1f}.bottom-summary>div{gap:2px;display:grid}.bottom-summary strong{color:var(--text-strong)}.bottom-summary span,.bottom-summary small{color:var(--text-muted)}.bottom-summary small{font-size:12px}.bottom-summary button{color:#fff;background:var(--tenant-accent);border:0;width:100%}.bottom-summary button:disabled{cursor:not-allowed;color:#71808a;background:#d8e1e7}.confirmation-card{text-align:center;background:#fff;border:1px solid #176f5d3d;border-radius:8px;margin-top:12px;padding:22px 16px;box-shadow:0 10px 24px #1f36420f}.success-icon{width:58px;height:58px;color:var(--tenant-accent-strong);background:var(--tenant-soft);border-radius:50%;margin:0 auto 14px}.confirmation-card h2{color:var(--text-strong);margin:0 0 8px;font-size:25px}.confirmation-card p{color:var(--text-muted);margin:0 0 16px}.confirmation-card dl{text-align:left;gap:0;margin:0;display:grid}.confirmation-card dl div{border-top:1px solid var(--border);gap:3px;padding:11px 0;display:grid}.confirmation-card dt{color:var(--text-muted);text-transform:uppercase;font-size:12px;font-weight:900}.confirmation-card dd{color:var(--text-strong);margin:0;font-weight:900}.browser-alert-card{border-top:1px solid var(--border);text-align:left;gap:10px;margin-top:14px;padding-top:14px;display:grid}.confirmation-card .customer-booking-actions{margin-top:14px}.confirmation-card .booking-action-message{text-align:left;margin-top:14px}.customer-booking-card .browser-alert-card{margin-top:0}.browser-alert-card strong,.browser-alert-card span{display:block}.browser-alert-card strong{color:var(--text-strong)}.browser-alert-card span{color:var(--text-muted);margin-top:2px;font-size:13px}.browser-alert-card button{border:1px solid var(--tenant-accent);width:100%;min-height:44px;color:var(--tenant-accent-strong);background:var(--tenant-soft);font:inherit;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;font-weight:900;display:inline-flex}.browser-alert-card button.enabled{color:#fff;background:var(--tenant-accent)}.browser-alert-card button:disabled{cursor:not-allowed}.browser-alert-status{color:var(--text-muted);margin:0;font-size:13px;font-weight:800}.browser-alert-status.subscribed{color:var(--tenant-accent-strong)}.browser-alert-status.denied,.browser-alert-status.needs_https,.browser-alert-status.unsupported,.browser-alert-status.error{color:#9b4b22}@media (width>=760px){.customer-app{padding-bottom:116px}.business-header{padding-top:28px}.business-copy h1{font-size:36px}.flow-section{padding:20px}.service-card{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.service-meta{white-space:nowrap;grid-column:auto;justify-items:end;gap:2px;display:grid}.slot-buttons{grid-template-columns:repeat(5,minmax(82px,1fr))}.bottom-summary{border:1px solid var(--border);border-radius:8px 8px 0 0;grid-template-columns:1fr auto;align-items:center;width:min(720px,100% - 24px);left:50%;right:50%;transform:translate(-50%)}.bottom-summary button{width:220px}}@media (width<=390px){.business-copy h1{font-size:24px}.slot-buttons{grid-template-columns:repeat(2,1fr)}}
