.booking-assistant-shell{--booking-blue:#2563eb;--booking-blue-dark:#1d4ed8;--booking-navy:#071327;--booking-navy-2:#0f172a;--booking-border:#d9e2f2;--booking-muted:#64748b;--booking-soft:#eff6ff;--booking-disabled:#f1f5f9;--booking-text:#0f172a;--booking-surface:#fff;width:100%;height:var(--visible-viewport-height);background:var(--booking-navy);color:var(--booking-text);font-family:var(--tool-font-family);grid-template-columns:minmax(360px,38vw) minmax(0,1fr);display:grid;overflow:hidden}.booking-assistant-shell,.booking-assistant-shell *,.booking-assistant-shell :before,.booking-assistant-shell :after{box-sizing:border-box}.booking-chat-pane{color:#fff;background:radial-gradient(circle at 15% 8%,#2563eb38,#0000 34%),linear-gradient(145deg,#08152c 0%,#071327 58%,#041023 100%);border-right:1px solid #ffffff1a;grid-template-rows:auto minmax(0,1fr) auto auto;gap:0;min-width:0;min-height:0;padding:22px;display:grid}.booking-chat-header{align-items:center;gap:14px;min-height:52px;padding-bottom:18px;display:flex}.booking-chat-logo,.booking-chat-avatar,.booking-sticky-icon,.booking-icon-card,.review-icon{flex:none;place-items:center;display:grid}.booking-chat-logo{width:48px;height:48px;color:var(--booking-blue);background:#eef4ff;border-radius:16px;box-shadow:0 10px 24px #2563eb2e}.booking-chat-logo svg,.booking-chat-avatar svg,.booking-chat-secure svg,.booking-chat-composer svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.booking-chat-header h1{color:#fff;margin:0;font-size:1.1rem;line-height:1.2}.booking-chat-header span{color:#93c5fd;font-size:.82rem}.booking-chat-toggle{display:none}.booking-chat-actions{align-items:center;gap:8px;display:flex}.booking-new-conversation-button{color:currentColor;background:#ffffff1a;border:0;border-radius:999px;place-items:center;width:44px;min-height:44px;display:grid}.booking-new-conversation-button svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.booking-mobile-controls,.booking-chat-preview-messages{display:none}.booking-chat-full{min-height:0;display:contents}.booking-chat-scroll{flex-direction:column;gap:18px;min-height:0;padding:22px 2px;display:flex;overflow-y:auto}.booking-chat-day{color:#dbeafe;background:#ffffff1a;border-radius:999px;align-self:center;padding:8px 16px;font-size:.82rem;font-weight:700}.booking-chat-message{align-items:flex-start;gap:12px;display:flex}.booking-chat-message-user{justify-content:flex-end}.booking-chat-avatar{width:44px;height:44px;color:var(--booking-blue);background:#fff;border-radius:999px;margin-top:6px}.booking-chat-bubble{color:#fff;background:#ffffff1f;border-radius:18px;max-width:min(320px,78%);padding:14px 16px;box-shadow:0 18px 50px #0000002e}.booking-chat-message-user .booking-chat-bubble{background:linear-gradient(135deg,#2563eb,#0b5cff);border-radius:18px 18px 4px}.booking-chat-bubble p{margin:0;line-height:1.5}.booking-chat-bubble time{color:#ffffffb8;margin-top:8px;font-size:.76rem;display:block}.booking-chat-composer{background:#ffffff14;border-radius:16px;grid-template-columns:minmax(0,1fr) 52px;gap:10px;padding:12px;display:grid}.booking-chat-composer input{color:#fff;min-width:0;min-height:52px;font:inherit;background:#ffffff14;border:1px solid #ffffff14;border-radius:12px;padding:0 16px}.booking-chat-composer input::placeholder{color:#cbd5e1}.booking-chat-composer input:focus{outline-offset:1px;outline:2px solid #60a5fab3}.booking-chat-composer button{background:var(--booking-blue);color:#fff;border:0;border-radius:12px;min-height:52px}.booking-chat-secure{color:#cbd5e1;background:#ffffff12;border-radius:12px;align-items:center;gap:8px;min-height:44px;margin-top:8px;padding:0 14px;font-size:.82rem;display:flex}.booking-chat-secure svg{width:16px;height:16px}.booking-flow-panel{background:radial-gradient(circle at 10% 0%, #2563eb14, transparent 32%), var(--booking-surface);grid-template-rows:minmax(0,1fr) auto;min-width:0;min-height:0;display:grid;position:relative}.booking-flow-scroll{min-height:0;padding:28px clamp(24px,5vw,64px) 150px;overflow-y:auto}.booking-stepper{max-width:900px;margin:0 auto 22px}.booking-stepper ol{grid-template-columns:repeat(5,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.booking-stepper-item{color:var(--booking-muted);justify-items:center;gap:8px;font-size:.84rem;font-weight:700;display:grid;position:relative}.booking-stepper-line{background:#e2e8f0;height:3px;position:absolute;top:17px;left:calc(28px - 50%);right:calc(50% + 28px)}.booking-stepper-item:first-child .booking-stepper-line{display:none}.booking-stepper-complete .booking-stepper-line,.booking-stepper-active .booking-stepper-line{background:var(--booking-blue)}.booking-stepper-dot{z-index:1;border:1px solid var(--booking-border);color:#1e293b;background:#fff;border-radius:999px;place-items:center;width:36px;height:36px;display:grid;box-shadow:0 2px 10px #0f172a14}.booking-stepper-active .booking-stepper-dot,.booking-stepper-complete .booking-stepper-dot{border-color:var(--booking-blue);background:var(--booking-blue);color:#fff}.booking-stepper-active .booking-stepper-label{color:#0f2f77}.booking-top-summary,.booking-accordion-list,.booking-complete-card{max-width:900px;margin-inline:auto}.booking-top-summary{color:#334155;background:linear-gradient(135deg,#f8fbff,#eff6ff);border:1px solid #bfdbfe;border-radius:12px;justify-content:center;align-items:center;gap:24px;min-height:56px;padding:10px 16px;font-weight:700;display:flex}.booking-status-item{justify-content:center;align-items:center;gap:9px;min-width:0;display:inline-flex}.booking-status-copy{gap:2px;min-width:0;display:grid}.booking-status-copy strong,.booking-status-copy small{text-overflow:ellipsis;min-width:0;overflow:hidden}.booking-status-copy strong{color:#0f172a;font-size:.9rem}.booking-status-copy small{color:#64748b;font-size:.78rem;font-weight:700}.booking-status-icon{border:2px solid #94a3b8;border-radius:7px;flex:none;width:24px;height:24px;position:relative}.booking-status-icon-treatment:before,.booking-status-icon-clinic:before,.booking-status-icon-time:before{content:"";color:#64748b;border:2px solid;border-radius:4px;position:absolute;inset:6px}.booking-status-icon-clinic:before{border-radius:2px;inset:5px 7px;box-shadow:6px 0 0 -3px}.booking-status-icon-time{border-radius:999px}.booking-status-icon-time:before{border-top-color:#0000;border-right-color:#0000;inset:5px}.booking-accordion-list{gap:10px;margin-top:14px;display:grid}.booking-accordion{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;box-shadow:0 6px 18px #0f172a0a}.booking-accordion-active{border-color:#c7d2fe;box-shadow:0 18px 50px #0f172a14}.booking-accordion-header{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:64px;padding:0 14px;display:grid;position:relative}.booking-accordion-main{min-width:0;min-height:56px;color:var(--booking-text);text-align:left;background:0 0;border:0;grid-template-columns:36px minmax(0,1fr) 28px;align-items:center;gap:12px;padding:0;display:grid}.booking-accordion-main:disabled{cursor:default}.booking-accordion-main:focus-visible,.booking-change-button:focus-visible,.booking-primary-action:focus-visible,.booking-secondary-action:focus-visible,.booking-sticky-cta:focus-visible,.booking-selection-row:focus-visible,.booking-summary-toggle:focus-visible,.booking-new-conversation-button:focus-visible,.booking-drawer-toggle:focus-visible,.treatment-ask-button:focus-visible,.booking-slot:focus-visible,.booking-date-picker button:focus-visible,.booking-tabs button:focus-visible{outline:2px solid var(--booking-blue);outline-offset:2px}.booking-accordion-status{border:1px solid var(--booking-border);color:#334155;background:#fff;border-radius:999px;place-items:center;width:32px;height:32px;font-weight:800;display:grid}.booking-accordion-complete .booking-accordion-status,.booking-accordion-active .booking-accordion-status{border-color:var(--booking-blue);background:var(--booking-blue);color:#fff}.booking-accordion-copy{gap:2px;min-width:0;display:grid}.booking-accordion-copy strong{color:#0f172a;font-size:1rem}.booking-accordion-copy span{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--booking-muted);font-size:.88rem;overflow:hidden}.booking-accordion-chevron{color:#0f2f77;font-size:1.3rem}.booking-change-button{min-height:44px;color:var(--booking-blue);background:0 0;border:0;padding:0 8px;font-weight:800}.booking-accordion-content{border-top:1px solid #edf2f7;padding:16px}.booking-widget-panel{gap:14px;display:grid}.booking-widget-heading{gap:4px;display:grid}.booking-widget-heading h2{color:#0f172a;margin:0;font-size:clamp(1.25rem,2vw,1.6rem);line-height:1.1}.booking-widget-heading p{color:var(--booking-muted);margin:0}.booking-tabs{flex-wrap:wrap;gap:8px;display:flex}.booking-tabs button{color:#334155;background:#f8fafc;border:1px solid #0000;border-radius:999px;min-height:40px;padding:0 14px;font-weight:800}.booking-tabs button.active{background:var(--booking-soft);color:var(--booking-blue);border-color:#bfdbfe}.treatment-list,.clinic-list,.treatment-type-groups,.clinic-area-groups{gap:10px;display:grid}.treatment-type-group,.clinic-area-group{gap:8px;display:grid}.treatment-type-group h3,.clinic-area-group h3{color:#0f172a;margin:2px 0;font-size:.92rem}.booking-selection-row{color:#0f172a;text-align:left;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:12px;grid-template-columns:30px 56px minmax(0,1fr) auto;align-items:center;gap:14px;width:100%;min-height:76px;padding:12px;transition:border-color .15s,background-color .15s,transform .15s;display:grid}.booking-selection-row:hover{background:#f8fbff;border-color:#93c5fd;transform:translateY(-1px)}.booking-selection-row.selected{border-color:var(--booking-blue);background:var(--booking-soft)}.booking-selection-row.compact{grid-template-columns:30px minmax(0,1fr);min-height:56px}.booking-radio{color:#fff;border:2px solid #94a3b8;border-radius:999px;place-items:center;width:22px;height:22px;font-size:.75rem;font-weight:900;display:grid}.selected .booking-radio{border-color:var(--booking-blue);background:var(--booking-blue)}.booking-icon-card{width:56px;height:56px;color:var(--booking-blue);background:#dbeafe;border-radius:14px;font-size:1.5rem;font-weight:900}.booking-selection-copy{gap:4px;min-width:0;display:grid}.booking-selection-copy strong{color:#0f172a}.booking-selection-copy span,.booking-selection-copy small{color:var(--booking-muted);line-height:1.35}.booking-selection-meta{color:#334155;white-space:nowrap;justify-items:end;gap:8px;display:grid}.booking-selection-meta strong{color:var(--booking-blue);font-size:1rem}.treatment-card-actions{justify-content:end;align-items:end;display:flex}.treatment-ask-button{min-height:38px;color:var(--booking-blue);white-space:nowrap;background:0 0;border:0;border-radius:999px;align-items:center;gap:6px;padding:0 8px;font-weight:850;display:inline-flex}.treatment-ask-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.booking-duration{align-items:center;gap:5px;display:inline-flex}.clinic-row{grid-template-columns:94px minmax(0,1fr) 76px}.clinic-thumb{background:linear-gradient(135deg,#0f172a1f,#2563eb1f),radial-gradient(circle at 18% 62%,#3f7d58 0 9px,#0000 10px),linear-gradient(90deg,#f5f1e8 0 46%,#b99b71 46% 51%,#fefbf4 51% 100%);border-radius:10px;width:94px;height:68px;box-shadow:inset 0 0 0 1px #0f172a14}.clinic-thumb-canary{background:linear-gradient(135deg,#0ea5e92e,#0f172a1a),radial-gradient(circle at 20% 70%,#7aa36f 0 10px,#0000 11px),linear-gradient(90deg,#edf7fb 0 46%,#c7d6db 46% 52%,#fff 52% 100%)}.clinic-thumb-camden{background:linear-gradient(135deg,#22c55e2e,#0f172a1f),radial-gradient(circle at 72% 62%,#44624a 0 14px,#0000 15px),linear-gradient(90deg,#d9c8a9 0 36%,#f2eee5 36% 100%)}.clinic-thumb-kings-cross{background:linear-gradient(135deg,#eab3081f,#0f172a29),radial-gradient(circle at 22% 70%,#386641 0 9px,#0000 10px),linear-gradient(90deg,#c89b58 0 50%,#2f241d 50% 100%)}.clinic-thumb-marylebone{background:linear-gradient(135deg,#2563eb14,#0f172a1a),radial-gradient(circle at 20% 65%,#4d7c57 0 10px,#0000 11px),linear-gradient(90deg,#fff8ee 0 48%,#d7c0a0 48% 54%,#fff 54% 100%)}.clinic-thumb-shoreditch{background:linear-gradient(135deg,#2563eb1f,#0f172a24),radial-gradient(circle at 78% 66%,#4b6f44 0 11px,#0000 12px),linear-gradient(90deg,#eceff3 0 45%,#9ca3af 45% 50%,#fbfbfb 50% 100%)}.clinic-thumb-kensington{background:linear-gradient(135deg,#10b9811f,#0f172a1a),radial-gradient(circle at 18% 68%,#517a57 0 12px,#0000 13px),linear-gradient(90deg,#efe3d0 0 42%,#fff 42% 100%)}.clinic-thumb-victoria{background:linear-gradient(135deg,#2563eb1a,#0f172a1a),radial-gradient(circle at 78% 60%,#58734f 0 12px,#0000 13px),linear-gradient(90deg,#f8fafc 0 48%,#d8c3a5 48% 54%,#fff 54% 100%)}.clinic-availability{align-items:center;gap:7px;display:inline-flex}.clinic-availability span{background:#10b981;border-radius:999px;flex:none;width:9px;height:9px}.clinic-card-side{color:#475569;align-content:space-between;align-self:stretch;justify-items:end;gap:8px;display:grid}.clinic-card-side small{font-weight:800}.booking-note,.booking-security-note{color:#475569;background:#eff6ff;border-radius:10px;margin:0;padding:10px 12px;font-size:.86rem}.treatment-scroll-sentinel,.clinic-scroll-sentinel{width:100%;height:1px}.treatment-scroll-indicator,.clinic-scroll-indicator{display:none}.booking-mini-summary{flex-wrap:wrap;gap:8px;display:flex}.booking-mini-summary span{color:#334155;background:#f8fafc;border-radius:999px;padding:8px 12px;font-weight:700}.booking-field{color:#0f172a;gap:6px;min-width:0;font-weight:800;display:grid}.booking-field.full-width{width:min(460px,100%)}.booking-field input,.booking-field select{color:#0f172a;width:100%;min-height:44px;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:0 12px;font-weight:600}.booking-field input:focus,.booking-field select:focus{border-color:var(--booking-blue);outline:2px solid #2563eb52}.booking-field-error{color:#be123c;font-weight:700}.booking-field-helper{color:#64748b;font-size:.82rem;font-weight:500}.booking-date-picker{grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:10px;display:grid}.booking-date-arrow{color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-radius:999px;min-height:44px;font-size:1.4rem}.booking-date-strip{grid-auto-columns:minmax(90px,1fr);grid-auto-flow:column;gap:10px;min-width:0;padding:2px;display:grid;overflow-x:auto}.booking-date-strip button{color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-radius:10px;place-items:center;min-height:60px;font-weight:800;display:grid}.booking-date-strip button.active{border-color:var(--booking-blue);background:var(--booking-blue);color:#fff}.booking-date-strip button span{font-size:.8rem}.booking-slot-section{gap:10px;display:grid}.booking-slot{color:#0f172a;background:#fff;border:1px solid #bfdbfe;border-radius:9px;min-height:44px;font-weight:800}.booking-slot.selected{border-color:var(--booking-blue);background:var(--booking-blue);color:#fff}.booking-slot:disabled{color:#94a3b8;cursor:not-allowed;background:#f1f5f9;border-color:#e2e8f0}.booking-legend{color:var(--booking-muted);flex-wrap:wrap;gap:18px;font-size:.86rem;display:flex}.booking-legend span{align-items:center;gap:7px;display:inline-flex}.booking-legend i{border-radius:999px;width:12px;height:12px;display:inline-block}.legend-available{background:var(--booking-blue)}.legend-selected{border:2px solid var(--booking-blue);background:#fff}.legend-unavailable{background:#e2e8f0}.patient-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.booking-primary-action,.booking-secondary-action{border-radius:12px;min-height:48px;padding:0 20px;font-weight:850}.booking-primary-action{background:var(--booking-blue);color:#fff;border:0}.booking-primary-action:hover:not(:disabled){background:var(--booking-blue-dark)}.booking-primary-action:disabled{opacity:.5;cursor:not-allowed}.booking-secondary-action{color:var(--booking-blue);background:#fff;border:1px solid #dbeafe}.review-list{gap:10px;display:grid}.review-row{border:1px solid #e2e8f0;border-radius:12px;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:72px;padding:10px;display:grid}.review-icon{color:#0f172a;background:#f1f5f9;border-radius:12px;width:46px;height:46px;font-weight:900}.review-copy{gap:2px;min-width:0;display:grid}.review-copy span,.review-copy small{color:var(--booking-muted)}.review-row button{min-height:40px;color:var(--booking-blue);background:#fff;border:1px solid #dbeafe;border-radius:9px;padding:0 12px;font-weight:800}.review-total{border:1px solid #e2e8f0;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:0 14px;display:flex}.review-total strong{font-size:1.45rem}.review-actions{justify-content:space-between;gap:12px;display:flex}.booking-complete-card{color:#166534;background:#ecfdf5;border-radius:14px;gap:4px;margin-top:16px;padding:18px;display:grid}.booking-sticky-summary{z-index:5;background:#fffffff5;border-top:1px solid #e2e8f0;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:92px;padding:16px clamp(24px,5vw,64px);display:grid;position:sticky;bottom:0;box-shadow:0 -18px 40px #0f172a14}.booking-sticky-icon{width:52px;height:52px;color:var(--booking-blue);background:#dbeafe;border-radius:16px;font-weight:900}.booking-sticky-copy{gap:4px;min-width:0;display:grid}.booking-sticky-copy strong,.booking-sticky-copy span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.booking-sticky-copy span{color:var(--booking-muted)}.booking-sticky-cta{background:var(--booking-blue);color:#fff;border:0;border-radius:12px;align-items:center;gap:16px;min-height:56px;padding:0 26px;font-size:1rem;font-weight:900;display:inline-flex}.booking-sticky-cta:disabled{color:#64748b;cursor:not-allowed;background:#cbd5e1}.booking-sticky-summary-disabled .booking-sticky-icon{color:#94a3b8;background:#f1f5f9}@media (width<=1023px){.booking-assistant-shell{background:#f8fafc;grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr;overflow-y:auto}.booking-chat-pane{border-right:0;min-height:360px;max-height:46dvh;padding:18px 16px}.booking-chat-scroll{padding:12px 0}.booking-flow-panel{border-radius:24px 24px 0 0;overflow:visible}.booking-flow-scroll{padding:18px 16px 132px;overflow:visible}.booking-sticky-summary{min-height:86px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));grid-template-columns:48px minmax(0,1fr) auto;position:fixed;bottom:0;left:0;right:0}.booking-sticky-cta{min-height:52px;padding:0 18px}}@media (width<=767px){.booking-assistant-shell{--booking-mobile-rail-height:116px;--booking-drawer-height:min(55dvh, calc(var(--visible-viewport-height) - var(--booking-mobile-rail-height) - 112px));min-height:var(--visible-viewport-height);height:var(--visible-viewport-height);background:var(--booking-navy);display:block;position:relative;overflow:hidden}.booking-chat-pane{z-index:1;min-height:0;height:var(--visible-viewport-height);color:#fff;grid-template-rows:var(--booking-mobile-rail-height) minmax(0, 1fr);max-height:none;box-shadow:none;background:radial-gradient(circle at 16% 6%,#2563eb47,#0000 34%),linear-gradient(145deg,#08152c 0%,#071327 62%,#041023 100%);border:0;border-radius:0;gap:0;margin:0;padding:0;display:grid;position:relative}.booking-chat-header,.booking-chat-preview-messages{display:none}.booking-mobile-controls{z-index:35;min-height:var(--booking-mobile-rail-height);background:#02061733;border-bottom:1px solid #ffffff1f;grid-template-columns:74px minmax(0,1fr);padding:0;display:grid;position:relative}.booking-mobile-rail-logo{border-right:1px solid #ffffff1f;place-items:center;display:grid}.booking-mobile-rail-logo .booking-chat-logo{width:54px;height:54px;color:var(--booking-blue);background:#f8fbff;border-radius:18px;box-shadow:0 16px 36px #0000003d}.booking-mobile-control-stack{align-content:center;min-width:0;padding:10px 12px;display:grid;position:relative}.booking-mobile-control-bar{grid-template-columns:auto minmax(0,1fr) auto 40px;align-items:center;gap:10px;min-width:0;display:grid}.booking-control-chip,.booking-summary-toggle{color:#e0f2fe;white-space:nowrap;cursor:pointer;background:#ffffff1a;border:0;border-radius:14px;align-items:center;gap:8px;min-width:0;min-height:44px;padding:0 12px;font-weight:850;display:inline-flex}.booking-control-chip span,.booking-summary-toggle span{text-overflow:ellipsis;min-width:0;overflow:hidden}.booking-summary-label-short{display:none}.booking-new-conversation-button-mobile{color:#bfdbfe;background:#ffffff1a;border-radius:999px;justify-self:end;width:40px;min-height:40px}.booking-chat-logo svg,.booking-chat-avatar svg,.booking-chat-secure svg,.booking-chat-composer svg,.booking-new-conversation-button svg,.booking-control-chip svg,.booking-summary-toggle svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.booking-chat-toggle:focus-visible{outline:2px solid var(--booking-blue);outline-offset:2px}.booking-mobile-controls .booking-stepper{min-width:0;max-width:none;margin:0}.booking-mobile-controls .booking-stepper ol{align-items:start}.booking-stepper-compact .booking-stepper-item{color:#94a3b8;gap:5px;font-size:.72rem}.booking-stepper-compact .booking-stepper-dot{color:#dbeafe;width:28px;height:28px;box-shadow:none;background:#02061773;border-color:#94a3b873}.booking-stepper-compact .booking-stepper-active .booking-stepper-dot,.booking-stepper-compact .booking-stepper-complete .booking-stepper-dot{background:var(--booking-blue);border-color:var(--booking-blue);color:#fff}.booking-stepper-compact .booking-stepper-line{background:#94a3b861;height:2px;top:13px;left:calc(21px - 50%);right:calc(50% + 21px)}.booking-stepper-compact .booking-stepper-complete .booking-stepper-line,.booking-stepper-compact .booking-stepper-active .booking-stepper-line{background:#60a5fab8}.booking-stepper-compact .booking-stepper-label{color:#cbd5e1;font-size:.66rem}.booking-stepper-compact .booking-stepper-active .booking-stepper-label{color:#fff}.booking-mobile-summary-drawer{z-index:45;background:#0f172af5;border:1px solid #ffffff1f;border-radius:14px;gap:8px;padding:10px;display:grid;position:absolute;top:calc(100% + 8px);left:0;right:48px;box-shadow:0 18px 40px #00000047}.booking-mobile-summary-row{color:#e2e8f0;grid-template-columns:26px minmax(0,1fr);align-items:center;gap:8px;display:grid}.booking-mobile-summary-icon{background:#ffffff1a;border-radius:999px;width:24px;height:24px;position:relative}.booking-mobile-summary-row span:last-child{gap:1px;min-width:0;display:grid}.booking-mobile-summary-row strong{color:#93c5fd;font-size:.72rem}.booking-mobile-summary-row small{color:#f8fafc;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.78rem;overflow:hidden}.booking-chat-full,.booking-chat-collapsed .booking-chat-full,.booking-chat-expanded .booking-chat-full{min-height:0;height:calc(var(--visible-viewport-height) - var(--booking-mobile-rail-height));padding:16px 16px calc(12px + env(safe-area-inset-bottom));grid-template-rows:minmax(0,1fr) auto auto;gap:10px;display:grid}.booking-chat-scroll,.booking-chat-expanded .booking-chat-scroll,.booking-assistant-booking-collapsed .booking-chat-expanded .booking-chat-scroll{flex-direction:column;gap:18px;min-height:0;max-height:none;padding:10px 0;display:flex;overflow-y:auto}.booking-chat-day{color:#dbeafe;background:#ffffff1a}.booking-chat-bubble{color:#fff;background:#ffffff1f;border:0;max-width:min(420px,78%);box-shadow:0 12px 30px #00000029}.booking-chat-message-user .booking-chat-bubble{color:#fff;background:linear-gradient(135deg,#2563eb,#0b5cff);border-color:#0000}.booking-chat-bubble time{color:#ffffffb8}.booking-chat-message-user .booking-chat-bubble time{color:#ffffffc7}.booking-chat-composer{background:#fff;border:1px solid #d9e2f2;border-radius:18px;grid-template-columns:minmax(0,1fr) 48px;padding:8px;box-shadow:0 16px 36px #0000002e}.booking-chat-composer input,.booking-chat-composer button{min-height:48px}.booking-chat-composer input{color:#0f172a;background:#fff;border-color:#d9e2f2}.booking-chat-secure{color:#cbd5e1;background:#ffffff14;margin-top:0}.booking-flow-panel{z-index:20;top:var(--booking-mobile-rail-height);height:var(--booking-drawer-height);background:#fff;border-radius:0 0 24px 24px;min-height:0;position:absolute;left:0;right:0;overflow:hidden;box-shadow:0 18px 48px #02061752}.booking-flow-scroll{flex-direction:column;height:100%;min-height:0;padding:0 14px;display:flex;overflow:hidden}.booking-mobile-active-step{flex:auto;min-height:0;margin-top:0;display:flex}.booking-flow-panel-mobile .booking-widget-panel{width:100%;min-height:0;padding:12px 0 calc(88px + env(safe-area-inset-bottom));flex-direction:column;flex:auto;gap:9px;display:flex;position:relative}.booking-flow-panel-mobile .booking-widget-heading h2{font-size:1.45rem;line-height:1.05}.booking-flow-panel-mobile .booking-widget-heading p,.booking-flow-active-treatment .booking-widget-heading{display:none}.booking-tabs{gap:10px}.booking-tabs button{min-height:38px;padding:0 16px}.booking-tabs button.active{border-color:var(--booking-blue);box-shadow:inset 0 0 0 1px var(--booking-blue);background:#fff}.treatment-list{gap:8px}.treatment-scroll-area{min-height:0;padding:2px 6px calc(50px + env(safe-area-inset-bottom));scrollbar-width:thin;flex:auto;align-content:start;gap:8px;display:grid;overflow-y:auto}.treatment-row{border-radius:12px;grid-template-columns:minmax(0,1fr);gap:3px;min-height:72px;padding:10px 112px 9px 12px;position:relative}.treatment-row .booking-radio,.treatment-row .booking-icon-card{display:none}.booking-selection-row:hover{transform:none}.booking-icon-card{border-radius:12px;width:48px;height:48px;font-size:1.25rem}.booking-selection-copy strong{font-size:.98rem;line-height:1.15}.booking-selection-copy small{color:#0f172a;font-size:.86rem;font-weight:850}.treatment-row .booking-selection-copy small{text-align:right;white-space:nowrap;position:absolute;top:10px;right:12px}.booking-selection-copy span{-webkit-line-clamp:1;-webkit-box-orient:vertical;font-size:.84rem;display:-webkit-box;overflow:hidden}.treatment-card-actions{justify-content:start;align-self:start}.treatment-ask-button{min-height:28px;padding:0;font-size:.8rem}.clinic-row{grid-template-columns:88px minmax(0,1fr) 44px;align-items:stretch;gap:12px;min-height:124px;padding:10px}.clinic-row .booking-selection-copy{align-content:center}.clinic-row .booking-selection-copy strong{font-size:1rem}.clinic-row .booking-selection-copy span,.clinic-row .booking-selection-copy small{font-size:.86rem}.clinic-card-side{justify-items:end}.clinic-card-side .booking-radio{width:24px;height:24px}.clinic-thumb{align-self:center;width:88px;height:72px}.clinic-area-groups{gap:16px}.clinic-area-group h3{color:var(--booking-blue);letter-spacing:.02em;font-size:.9rem}.treatment-scroll-indicator,.clinic-scroll-indicator{left:0;right:0;bottom:calc(90px + env(safe-area-inset-bottom));z-index:6;min-height:42px;color:var(--booking-blue);pointer-events:none;background:linear-gradient(#ffffff2e,#eff6ff),#eff6ff;border-radius:14px;justify-content:center;align-items:center;gap:9px;font-weight:900;display:flex;position:absolute;box-shadow:0 -12px 28px #2563eb1f}.treatment-widget-panel.no-selection .treatment-scroll-area{padding-bottom:calc(50px + env(safe-area-inset-bottom))}.treatment-widget-panel.no-selection .treatment-scroll-indicator{bottom:0}.booking-flow-panel-mobile .booking-note{display:none}.patient-form-grid{grid-template-columns:1fr}.booking-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.review-row{grid-template-columns:42px minmax(0,1fr)}.review-row button{grid-column:2;justify-self:start}.review-actions{display:grid}.booking-sticky-copy span{white-space:normal;line-height:1.25;display:block}.booking-sticky-cta{border-radius:14px;min-width:128px;padding:0 16px}.booking-sticky-summary{z-index:7;min-height:90px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-radius:0 0 22px 22px;grid-template-columns:58px minmax(0,1fr) auto;gap:10px;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -16px 38px #0f172a24}.booking-flow-active-treatment .booking-sticky-summary{min-height:72px;padding-top:10px;padding-bottom:calc(10px + env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr);justify-items:end}.booking-flow-active-treatment .booking-sticky-icon,.booking-flow-active-treatment .booking-sticky-copy{display:none}.booking-sticky-icon{border-radius:14px;width:48px;height:48px}.booking-sticky-thumb{border-radius:12px;width:58px;height:58px}}@media (width<=600px){.booking-assistant-shell{--booking-mobile-rail-height:132px;--booking-drawer-height:min(55dvh, calc(var(--visible-viewport-height) - var(--booking-mobile-rail-height) - 108px))}.booking-mobile-controls{grid-template-columns:64px minmax(0,1fr)}.booking-mobile-rail-logo .booking-chat-logo{border-radius:16px;width:48px;height:48px}.booking-mobile-control-stack{padding:8px 10px}.booking-mobile-control-bar{grid-template-columns:auto minmax(0,1fr) 40px;gap:8px}.booking-mobile-controls .booking-stepper{order:4;grid-column:1/-1}.booking-control-chip,.booking-summary-toggle{min-width:0;padding:0 10px;font-size:.84rem}.booking-summary-label-full{display:none}.booking-summary-label-short{display:inline}.booking-summary-toggle{justify-self:end}.booking-stepper-compact .booking-stepper-label{font-size:.64rem}.booking-flow-scroll{padding:0 10px}.treatment-row{padding-right:96px}.treatment-row .booking-selection-copy small{font-size:.8rem;right:10px}.treatment-ask-button{font-size:.78rem}.booking-sticky-summary{grid-template-columns:48px minmax(0,1fr) auto}.booking-sticky-cta{min-width:112px}}.chat-booking-shell{--chat-booking-blue:#2563eb;--chat-booking-navy:#071327;--chat-booking-border:#d9e2f2;--chat-booking-muted:#64748b;--chat-booking-soft:#eff6ff;width:100%;height:var(--visible-viewport-height);color:#fff;min-height:0;font-family:var(--tool-font-family);background:radial-gradient(circle at 18% 8%,#2563eb47,#0000 34%),linear-gradient(145deg,#08152c 0%,#071327 62%,#041023 100%);grid-template-rows:auto minmax(0,1fr) auto;display:grid;overflow:hidden}.chat-booking-header{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;gap:12px;min-height:72px;padding:12px clamp(14px,4vw,24px);display:flex}.chat-booking-brand{align-items:center;gap:12px;min-width:0;display:flex}.chat-booking-logo,.chat-message-avatar{color:var(--chat-booking-blue);background:#fff;flex:none;place-items:center;display:grid}.chat-booking-logo{border-radius:16px;width:46px;height:46px;box-shadow:0 14px 34px #0003}.chat-message-avatar{border-radius:999px;width:34px;height:34px}.chat-booking-logo svg,.chat-message-avatar svg,.chat-booking-reset svg,.chat-booking-composer svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.chat-booking-brand strong,.chat-booking-brand small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.chat-booking-brand strong{color:#fff;font-size:1rem;line-height:1.2}.chat-booking-brand small{color:#bfdbfe;margin-top:2px;font-size:.78rem}.chat-booking-reset{color:#dbeafe;background:#ffffff1a;border:0;border-radius:999px;place-items:center;width:44px;min-height:44px;display:grid}.chat-booking-scroll{flex-direction:column;gap:14px;min-height:0;padding:18px clamp(14px,4vw,24px);scroll-padding-bottom:16px;display:flex;overflow-y:auto}.chat-empty-state{opacity:.72;flex:auto;place-items:center;min-height:180px;display:grid}.chat-empty-state .chat-booking-logo{border-radius:22px;width:64px;height:64px}.chat-booking-message,.chat-widget-message{align-items:flex-start;gap:10px;width:min(760px,100%);margin-inline:auto;display:flex}.chat-booking-message-user{justify-content:flex-end}.chat-booking-bubble{color:#fff;background:#ffffff1f;border-radius:18px;max-width:min(540px,82%);padding:12px 14px;box-shadow:0 14px 32px #00000029}.chat-booking-message-user .chat-booking-bubble{background:linear-gradient(135deg,#2563eb,#0b5cff);border-radius:18px 18px 4px}.chat-booking-bubble p{margin:0;line-height:1.45}.chat-widget-message{align-items:flex-start}.chat-task-card{border:1px solid var(--chat-booking-border);color:#0f172a;background:#fff;border-radius:16px;flex-direction:column;gap:10px;width:min(620px,100% - 44px);min-height:0;max-height:55dvh;display:flex;overflow:hidden;box-shadow:0 24px 70px #02061738}.chat-task-header{justify-content:space-between;align-items:center;gap:10px;min-height:46px;padding:10px 12px 0;display:flex}.chat-task-header span{color:var(--chat-booking-blue);font-size:.78rem;font-weight:900}.chat-task-header strong{color:#0f172a;font-size:.92rem}.chat-task-filter-row{align-items:center;gap:8px;padding:0 12px;display:flex}.chat-task-filter-row label{color:var(--chat-booking-muted);font-size:.78rem;font-weight:850}.chat-task-filter-row select{color:#0f172a;min-width:0;min-height:34px;font:inherit;background:#f8fafc;border:1px solid #dbeafe;border-radius:999px;padding:0 10px;font-size:.84rem;font-weight:800}.chat-treatment-list{flex:auto;align-content:start;gap:6px;min-height:0;padding:0 8px 8px;display:grid;overflow-y:auto}.chat-treatment-option{text-align:left;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:12px;min-height:74px;padding:9px 104px 9px 10px;display:block;position:relative}.chat-treatment-option.selected{border-color:var(--chat-booking-blue);background:var(--chat-booking-soft);box-shadow:inset 3px 0 0 var(--chat-booking-blue)}.chat-treatment-main{gap:3px;min-width:0;display:grid}.chat-treatment-main strong{color:#0f172a;font-size:.92rem;line-height:1.2}.chat-treatment-main small{color:#475569;-webkit-line-clamp:1;-webkit-box-orient:vertical;font-size:.8rem;line-height:1.25;display:-webkit-box;overflow:hidden}.chat-treatment-meta{color:#0f172a;white-space:nowrap;font-size:.78rem;font-weight:900;position:absolute;top:10px;right:10px}.chat-treatment-info{width:fit-content;min-height:24px;color:var(--chat-booking-blue);background:0 0;border:0;border-radius:999px;padding:0;font-size:.78rem;font-weight:850}.chat-task-actions{background:#f8fafcf0;border-top:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:8px 10px 10px;display:flex}.chat-task-actions span{text-overflow:ellipsis;white-space:nowrap;color:#334155;min-width:0;font-size:.86rem;font-weight:850;overflow:hidden}.chat-task-actions button,.chat-confirm-button,.chat-patient-form button{background:var(--chat-booking-blue);color:#fff;border:0;border-radius:999px;min-height:40px;padding:0 16px;font-weight:900}.chat-compact-list,.chat-slot-strip,.chat-review-panel,.chat-patient-form,.chat-payment-panel{flex:auto;align-content:start;gap:8px;min-height:0;padding:0 10px 10px;display:grid;overflow-y:auto}.chat-clinic-time-step{flex:auto;grid-template-rows:minmax(0,1fr) auto;gap:8px;min-height:0;display:grid;overflow:hidden}.chat-compact-option,.chat-slot-strip button{color:#0f172a;text-align:left;background:#fff;border:1px solid #e2e8f0;border-radius:12px;gap:2px;min-height:54px;padding:9px 10px;display:grid}.chat-compact-option.selected,.chat-slot-strip button:hover{border-color:var(--chat-booking-blue);background:var(--chat-booking-soft)}.chat-compact-option strong,.chat-slot-strip strong{font-size:.9rem}.chat-compact-option span,.chat-slot-strip span{color:var(--chat-booking-muted);font-size:.78rem}.chat-patient-form{grid-template-columns:repeat(2,minmax(0,1fr))}.chat-patient-form label{color:#334155;gap:4px;font-size:.78rem;font-weight:850;display:grid}.chat-patient-form input{min-width:0;min-height:38px;font:inherit;border:1px solid #cbd5e1;border-radius:10px;padding:0 10px}.chat-patient-form button{grid-column:1/-1}.chat-patient-form button:disabled{color:#64748b;cursor:not-allowed;background:#cbd5e1}.chat-review-panel dl{gap:7px;margin:0;display:grid}.chat-review-panel dl div{border-bottom:1px solid #e2e8f0;grid-template-columns:82px minmax(0,1fr);gap:8px;padding-bottom:7px;display:grid}.chat-review-panel dt{color:var(--chat-booking-muted);font-size:.78rem;font-weight:850}.chat-review-panel dd{color:#0f172a;margin:0;font-size:.84rem;font-weight:750}.chat-payment-panel{gap:10px}.chat-payment-copy{color:#0f172a;gap:2px;display:grid}.chat-payment-copy strong{font-size:.94rem}.chat-payment-copy span{color:var(--chat-booking-muted);font-size:.82rem}.chat-payment-panel .payment-widget{color:#0f172a;background:#f8fafc;border:1px solid #dbeafe;border-radius:14px;width:100%;min-width:0;max-width:100%;margin:0;padding:12px}.chat-payment-panel .payment-widget-heading{font-family:inherit;font-size:.98rem}.chat-payment-panel .payment-widget-description,.chat-payment-panel .payment-widget-deposit-details,.chat-payment-panel .payment-widget-error,.chat-payment-panel .payment-widget-status{font-size:.84rem}.chat-payment-panel .payment-widget-amount{font-size:1.2rem}.chat-payment-panel .payment-widget-button{background:var(--chat-booking-blue);color:#fff;justify-content:center;width:100%}.chat-booking-success{color:#166534;background:#ecfdf5;border-radius:12px;gap:2px;margin:0 10px 10px;padding:10px 12px;display:grid}.chat-booking-success span{font-size:.84rem}.chat-booking-chip{color:#fff;text-align:left;background:#ffffff1f;border:1px solid #bfdbfe6b;border-radius:999px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;width:min(620px,100% - 44px);min-height:48px;margin-inline:auto;padding:0 14px;display:grid}.chat-booking-chip small{text-overflow:ellipsis;white-space:nowrap;color:#cbd5e1;min-width:0;overflow:hidden}.chat-booking-chip strong{color:#bfdbfe}.chat-booking-composer{padding:12px clamp(14px, 4vw, 24px) calc(12px + env(safe-area-inset-bottom));background:#0206173d;grid-template-columns:minmax(0,1fr) 52px;gap:10px;display:grid}.chat-booking-composer input{color:#0f172a;min-width:0;min-height:52px;font:inherit;background:#fff;border:1px solid #d9e2f2;border-radius:16px;padding:0 16px}.chat-booking-composer button{background:var(--chat-booking-blue);color:#fff;border:0;border-radius:16px;place-items:center;min-height:52px;display:grid}.chat-treatment-option:focus-visible,.chat-treatment-info:focus-visible,.chat-compact-option:focus-visible,.chat-slot-strip button:focus-visible,.chat-booking-composer input:focus,.chat-booking-composer button:focus-visible,.chat-booking-chip:focus-visible,.chat-booking-reset:focus-visible{outline-offset:2px;outline:2px solid #93c5fd}@media (width<=520px){.chat-booking-header{min-height:64px}.chat-booking-brand small{display:none}.chat-booking-scroll{padding:14px 10px}.chat-booking-message,.chat-widget-message{gap:8px}.chat-message-avatar{width:30px;height:30px}.chat-task-card{border-radius:14px;width:calc(100% - 38px)}.chat-task-header{min-height:42px}.chat-treatment-option{min-height:64px;padding-right:92px}.chat-treatment-meta{font-size:.74rem}.chat-patient-form{grid-template-columns:1fr}.chat-booking-composer{grid-template-columns:minmax(0,1fr) 48px;padding-inline:10px}.chat-booking-composer input,.chat-booking-composer button{min-height:48px}}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat.ttf)format("truetype");font-weight:100 900;font-style:normal;font-display:swap}:root{--visible-viewport-height:100dvh;--visible-viewport-width:100vw;--visible-viewport-offset-top:0px;--visible-viewport-offset-left:0px;--keyboard-inset-height:0px;--app-bg-color:#e8e8e8;--app-bg-image:none;--app-bg-size:cover;--app-bg-position:center;--app-bg-repeat:no-repeat;--app-bg-overlay:transparent;--max-width:1040px;--panel-radius:24px;--panel-shadow:0 24px 80px #00000047;--content-padding:24px;--layout-gap:18px;--font-family:Arial, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;--base-font-size:16px;--heading-weight:720;--body-weight:450;--appbar-bg:#8859a2;--appbar-text:#fff;--appbar-height:74px;--appbar-border:transparent;--chat-bg:#e8e8e8;--chat-border:transparent;--chat-text:#000;--msg-user-bg:#6e4280;--msg-user-text:#fff;--msg-user-border:transparent;--msg-user-radius:18px 18px 4px 18px;--msg-user-font-family:Arial, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;--msg-user-font-size:14px;--msg-user-font-weight:450;--msg-user-font-style:normal;--msg-user-text-decoration:none;--msg-assistant-bg:#6e4280;--msg-assistant-text:#fff;--msg-assistant-border:transparent;--msg-assistant-radius:18px 18px 18px 4px;--msg-assistant-font-family:Arial, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;--msg-assistant-font-size:14px;--msg-assistant-font-weight:450;--msg-assistant-font-style:normal;--msg-assistant-text-decoration:none;--assistant-name-color:#fff;--assistant-name-font-family:Arial, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;--assistant-name-font-size:18px;--assistant-name-font-weight:700;--assistant-name-font-style:normal;--assistant-name-text-decoration:none;--input-bg:#fffff5;--input-text:#000;--input-placeholder:#00000080;--input-border:#2563eb40;--input-focus-border:#8859a2;--input-font-style:normal;--input-font-family:Arial, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;--input-font-weight:450;--input-text-decoration:none;--input-radius:0;--button-primary-bg:#8859a2;--button-primary-text:#fff;--button-primary-hover:#6e4280;--button-primary-radius:999px;--button-secondary-bg:#6e4280;--button-secondary-text:#fff;--button-secondary-hover:#8859a2;--button-secondary-radius:999px;--tool-bg:#fff;--tool-text:#000;--tool-border:#6e428047;--tool-accent:#b388eb;--tool-font-family:var(--font-family);--tool-font-weight:700;--tool-font-style:normal;--tool-text-decoration:none;--booking-primary:var(--button-primary-bg);--booking-primary-hover:var(--button-primary-hover);--booking-primary-text:var(--button-primary-text);--booking-primary-surface:color-mix(in srgb, var(--booking-primary) 9%, #fff);--booking-primary-surface-strong:color-mix(in srgb, var(--booking-primary) 16%, #fff);--booking-primary-tint:color-mix(in srgb, var(--booking-primary) 18%, #fff);--booking-primary-border:color-mix(in srgb, var(--booking-primary) 34%, transparent);--booking-primary-border-strong:color-mix(in srgb, var(--booking-primary) 48%, transparent);--booking-primary-focus:color-mix(in srgb, var(--booking-primary) 28%, transparent);--booking-primary-shadow:color-mix(in srgb, var(--booking-primary) 22%, transparent);--booking-disabled-surface:color-mix(in srgb, var(--booking-primary) 18%, #cbd5e1);--booking-disabled-surface-strong:color-mix(in srgb, var(--booking-primary) 26%, #cbd5e1);--booking-disabled-text:color-mix(in srgb, var(--booking-primary) 46%, #64748b);--footer-text:#ffffffb8;--footer-link:#bfdbfe}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;overflow:hidden}body{min-height:var(--visible-viewport-height);font-family:var(--font-family);font-size:var(--base-font-size);font-weight:var(--body-weight);color:var(--chat-text);background-color:var(--app-bg-color);overflow:clip hidden}button,textarea{font:inherit}button{cursor:pointer}@media (pointer:coarse){input:not([type=checkbox]):not([type=radio]):not([type=range]),textarea,select{font-size:max(16px,1em)!important}}.debug-widget-gallery{background:var(--chat-bg);width:100%;height:100%;min-height:0;padding:16px 0 40px;overflow:hidden auto}.debug-widget-frame{width:100%;max-width:760px;margin:0 auto 24px}.debug-widget-frame>h1{color:#000;margin:0 0 10px;padding:0 16px;font-size:clamp(1.45rem,6vw,2rem);line-height:1.15}.app-shell{width:100%;max-width:none;height:var(--visible-viewport-height);background-color:var(--app-bg-color);background-image:var(--app-bg-image);background-size:var(--app-bg-size);background-position:var(--app-bg-position);background-repeat:var(--app-bg-repeat);position:relative;overflow:clip hidden}html.visual-keyboard-active,html.visual-keyboard-active body,html.visual-keyboard-active #root{height:var(--visible-viewport-height);min-height:0}html.visual-keyboard-active .app-shell{width:100%;max-width:none;height:var(--visible-viewport-height);min-height:0;transform:translateY(var(--visible-viewport-offset-top));position:fixed;inset:0 0 auto}html.visual-keyboard-active .background-overlay{position:absolute;inset:0}html.visual-keyboard-active.visual-keyboard-composer .thread-footer{z-index:3;background:var(--input-bg);position:fixed;bottom:0;left:0;right:0}html.visual-keyboard-active.visual-keyboard-composer .thread-viewport{padding-bottom:calc(64px + env(safe-area-inset-bottom,0px));scroll-padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))}html.visual-keyboard-active.visual-keyboard-composer .booking-workspace{max-height:calc(var(--visible-viewport-height) * .45)}html.visual-keyboard-active.visual-keyboard-widget .thread-footer{display:none}html.visual-keyboard-active.visual-keyboard-widget .booking-workspace{max-height:calc(var(--visible-viewport-height) - 104px)}html.visual-keyboard-active.visual-keyboard-widget .booking-workspace-body{-webkit-overflow-scrolling:touch;scroll-padding:12px;overflow-y:auto}html.visual-keyboard-active.visual-keyboard-widget .add-people-widget{max-height:none}.viewport-debug-overlay{z-index:99999;color:#7cfc98;white-space:pre;pointer-events:none;background:#080a14d1;border-bottom-right-radius:8px;max-width:100%;margin:0;padding:6px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,monospace;font-size:10px;line-height:1.35;position:fixed;top:0;left:0}@media (width<=720px){.booking-status-stack>.booking-workspace{max-height:calc(var(--visible-viewport-height) - var(--appbar-height) - 84px)}}.background-overlay{background:var(--app-bg-overlay);pointer-events:none;position:fixed;inset:0}.app-container{z-index:1;grid-template-rows:auto minmax(0,1fr);gap:0;width:100%;min-width:0;max-width:none;height:100%;margin:0 auto;padding:0;display:grid;position:relative}.app-bar{width:100%;min-height:var(--appbar-height);background:var(--appbar-bg);color:var(--appbar-text);box-shadow:none;border:0;border-radius:0;grid-template-columns:64px minmax(0,1fr) 64px;align-items:center;margin:0;padding:10px 12px;animation:.34s both panelEnter;display:grid}.app-bar-center{grid-column:2;justify-content:center;align-items:center;min-width:0;display:flex}.app-bar-title-group{place-items:center;width:min(190px,45vw);min-width:0;min-height:48px;display:grid}.app-bar-logo{object-fit:contain;grid-area:1/1;max-width:100%;max-height:48px;transition:opacity .42s;display:block}.app-bar-logo-visible{opacity:1}.app-bar-logo-hidden{opacity:0;pointer-events:none}.app-bar-branding-link{width:min(190px,45vw);height:48px;color:inherit;cursor:pointer;outline-offset:4px;touch-action:manipulation;grid-area:1/1;text-decoration:none;display:block}.app-bar-branding-animation,.app-bar-branding-animation-canvas,.app-bar-branding-fallback{width:100%;height:100%;display:block}.app-bar-branding-animation{animation:9.2s both ambientBrandingFrame}.app-bar-branding-animation-canvas{pointer-events:none}.app-bar-branding-fallback{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.app-bar-action{width:40px;height:40px;color:var(--appbar-control-color,#374151);cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;transition:background-color .16s,transform .16s;display:grid}.app-bar-refresh{grid-column:3;justify-self:end}.app-bar-close{grid-column:1;justify-self:start}.app-bar-action:hover{background:color-mix(in srgb, var(--appbar-control-color,#374151) 10%, transparent)}.app-bar-action:focus-visible{outline:2px solid var(--button-primary-bg);outline-offset:2px}.app-bar-action svg,.composer-button svg{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.app-bar-title{font-weight:var(--heading-weight);letter-spacing:0;white-space:nowrap;font-size:1.35rem}.chat-panel{isolation:isolate;background:var(--chat-bg);width:100%;min-height:0;box-shadow:none;color:var(--chat-text);border:0;border-radius:0;flex-direction:column;margin:0;animation:.38s 40ms both panelEnter;display:flex;position:relative;overflow:hidden}.chat-panel>.ambient-branding{--ambient-branding-top:clamp(10px, 2vw, 18px);z-index:0;position:absolute}.chat-panel-content{flex-direction:column;flex:auto;min-height:0;display:flex}.app-shell--splash{background:var(--splash-bg,#050307);background-image:none}.loading-screen{z-index:2;min-height:var(--visible-viewport-height);background:var(--splash-bg,#050307);width:100%;height:100%;position:relative;overflow:hidden}.splash-animation-stage{z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.splash-animation-canvas{width:100%;height:100%;display:block}.splash-static-logo{width:min(86vw,540px);height:auto;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ambient-branding{--ambient-branding-width:clamp(104px, 16vw, 148px);--ambient-branding-top:calc(var(--appbar-height) + clamp(10px, 2vw, 18px));--ambient-branding-side:clamp(10px, 2.2vw, 20px);--ambient-branding-bottom:clamp(76px, 12vh, 108px);--ambient-entry-x:-14px;z-index:4;width:var(--ambient-branding-width);aspect-ratio:603/200;pointer-events:none;opacity:0;contain:layout paint style;position:fixed}.ambient-branding-top-left{top:var(--ambient-branding-top);left:var(--ambient-branding-side);transform-origin:0}.ambient-branding-top-right{--ambient-entry-x:14px;top:var(--ambient-branding-top);right:var(--ambient-branding-side);transform-origin:100%}.ambient-branding-bottom-right{--ambient-entry-x:14px;right:var(--ambient-branding-side);bottom:var(--ambient-branding-bottom);transform-origin:100%}.ambient-branding-bottom-left{left:var(--ambient-branding-side);bottom:var(--ambient-branding-bottom);transform-origin:0}.ambient-branding-visible{pointer-events:auto;animation:9.2s both ambientBrandingFrame}.ambient-branding-hidden{opacity:0}.ambient-branding-animation-shell,.ambient-branding-link,.ambient-branding-animation,.ambient-branding-fallback{width:100%;height:100%;display:block}.ambient-branding-link{color:inherit;cursor:pointer;outline-offset:4px;touch-action:manipulation;text-decoration:none}.ambient-branding-animation{pointer-events:none}.ambient-branding-fallback{object-fit:contain;opacity:.42;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.ambient-branding-variant-white .ambient-branding-fallback{opacity:.7}.startup-error{z-index:2;color:#4f2222;background:#ffffffdb;border:1px solid #a02a2a3d;border-radius:8px;gap:8px;width:min(100% - 48px,520px);padding:16px 18px;display:grid;position:absolute;bottom:clamp(28px,8vh,72px);left:50%;transform:translate(-50%);box-shadow:0 18px 42px #1f1f1f1f}.startup-error strong{font-size:.92rem;line-height:1.2}.startup-error span{overflow-wrap:anywhere;font-size:.84rem;line-height:1.35}.chat-thread,.thread-viewport{min-width:0;max-width:100%;height:100%;min-height:0}.chat-thread{flex:auto}.booking-status-stack{z-index:1;flex-direction:column;flex:none;width:min(100% - 44px,980px);min-height:0;margin:0 auto;animation:.2s both bookingStatusStackEnter;display:flex;position:relative}.booking-status-stack-people,.booking-status-stack-treatment,.booking-status-stack-clinic,.booking-status-stack-time,.booking-status-stack-patientDetails,.booking-status-stack-review,.booking-status-stack-calendar{width:min(100% - 44px,760px)}.booking-status-stack-checkout{width:min(100% - 44px,640px)}.booking-status-stack>.booking-workspace{border-top:0;border-top-left-radius:0;border-top-right-radius:0;width:100%;margin:0}.booking-status-stack>.booking-workspace-treatment:before{display:none}.booking-status-strip{--booking-status-strip-bg:color-mix(in srgb, var(--booking-primary) 74%, #1f2937);--booking-status-strip-edge-bg:color-mix(in srgb, var(--booking-status-strip-bg) 20%, transparent);z-index:2;background:linear-gradient(90deg, var(--booking-status-strip-edge-bg) 0%, var(--booking-status-strip-bg) 15%, var(--booking-status-strip-bg) 85%, var(--booking-status-strip-edge-bg) 100%);color:#f1f5f9db;width:100%;height:22px;min-height:22px;font-size:.72rem;font-weight:var(--tool-font-weight);font-style:var(--tool-font-style);-webkit-text-decoration:var(--tool-text-decoration);text-decoration:var(--tool-text-decoration);letter-spacing:0;border:0;border-radius:4px;flex:none;align-items:center;gap:8px;padding:0 8px 0 0;display:flex;position:relative;overflow:hidden}.booking-status-strip-expanded{border-bottom-right-radius:0;border-bottom-left-radius:0}.booking-status-strip-collapsible,.booking-status-strip-expandable{cursor:grab;touch-action:none}button.booking-status-strip{appearance:none;text-align:left}.booking-status-strip-minimized{cursor:pointer;transition:background-color .16s}.booking-status-strip-minimized:hover{--booking-status-strip-bg:color-mix(in srgb, var(--booking-primary) 82%, #111827);--booking-status-strip-edge-bg:color-mix(in srgb, var(--booking-status-strip-bg) 20%, transparent)}.booking-status-strip-toggle-control{color:#fde047;background:0 0;border:1.5px solid #fff;border-radius:999px;flex:none;justify-content:center;align-items:center;width:20px;height:20px;margin-right:2px;transition:border-color .16s,transform .16s,box-shadow .16s;display:inline-flex;box-shadow:0 0 0 1px #2b123733,0 1px 4px #0f172a42}.booking-status-strip-collapsible:active,.booking-status-strip-expandable:active{cursor:grabbing}.booking-status-strip-minimized:hover .booking-status-strip-toggle-control,.booking-status-strip-collapsible:hover .booking-status-strip-toggle-control,.booking-status-strip-expandable:hover .booking-status-strip-toggle-control{border-color:#fff;transform:translateY(-.5px);box-shadow:0 0 0 1px #2b12374d,0 2px 7px #0f172a57}.booking-status-strip:focus-visible{outline:2px solid color-mix(in srgb, var(--booking-primary) 36%, #fff);outline-offset:2px}.booking-status-strip-viewport{flex:auto;min-width:0;overflow:hidden}.booking-status-strip-track{white-space:nowrap;align-items:center;gap:38px;width:max-content;min-width:200%;animation:18s linear infinite bookingStatusTicker;display:inline-flex}.booking-status-strip-copy{flex:none}.booking-status-strip-chevron{color:currentColor;fill:none;stroke:currentColor;stroke-width:2.8px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 1px #2b1237d1);width:13px;height:13px}.booking-transition-loader{background:radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--booking-primary) 12%, transparent), transparent 56%), #fff;color:var(--booking-primary);border:1px solid #d9e2f2e0;border-top:0;border-radius:0 0 16px 16px;justify-items:center;gap:9px;padding:18px 16px 20px;font-size:.82rem;font-weight:780;animation:.18s both bookingTransitionLoaderIn;display:grid;box-shadow:0 14px 32px #0f172a1c}@keyframes bookingTransitionLoaderIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes bookingStatusTicker{0%{transform:translate(0)}to{transform:translate(-50%)}}.booking-workspace{--workspace-drag-fold:0;--workspace-drag-progress:0;--workspace-drag-offset:0px;--workspace-opening-height:0px;--workspace-drag-translate:0px;--workspace-drag-clip:0px;--workspace-drag-space:0px;--workspace-drag-opacity:1;z-index:1;color:#0f172a;transform-origin:top;background:#fff;border:1px solid #d9e2f2eb;border-radius:20px;flex-direction:column;flex:none;width:min(100% - 44px,980px);min-height:0;max-height:min(55dvh,560px);margin:10px auto 0;display:flex;position:relative;overflow:hidden;box-shadow:0 16px 42px #0f172a2e}.booking-workspace-dragging,.booking-workspace-releasing,.booking-workspace-collapsing,.booking-workspace-opening{transform:translateY(var(--workspace-drag-translate));clip-path:inset(var(--workspace-drag-clip) 0 0 0);margin-bottom:var(--workspace-drag-space);opacity:var(--workspace-drag-opacity);will-change:transform, clip-path, margin-bottom}.booking-workspace-dragging{transition:none}.booking-workspace-releasing{transition:transform .16s cubic-bezier(.2,.8,.2,1),clip-path .16s cubic-bezier(.2,.8,.2,1),margin-bottom .16s cubic-bezier(.2,.8,.2,1)}.booking-workspace-collapsing{transition:transform .19s cubic-bezier(.22,1,.36,1),clip-path .19s cubic-bezier(.22,1,.36,1),margin-bottom .19s cubic-bezier(.22,1,.36,1)}.booking-workspace-opening{animation:.19s cubic-bezier(.22,1,.36,1) both bookingWorkspaceOpening}@keyframes bookingWorkspaceOpening{0%{transform:translateY(calc(-1 * var(--workspace-opening-height)));clip-path:inset(var(--workspace-opening-height) 0 0 0);margin-bottom:calc(-1 * var(--workspace-opening-height))}to{transform:translateY(var(--workspace-drag-translate));clip-path:inset(var(--workspace-drag-clip) 0 0 0);margin-bottom:var(--workspace-drag-space)}}.booking-workspace-header{border-bottom:1px solid #d9e2f2b8;flex:none;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px 8px;display:flex}.booking-workspace-header h2{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;margin:0;font-size:.98rem;line-height:1.15;overflow:hidden}.booking-workspace-back,.clinic-selector-back,.time-selector-back{width:38px;height:38px;min-height:38px;color:var(--booking-primary);background:#fff;border:1.5px solid #d9e2f2;border-radius:999px;flex:0 0 38px;justify-content:center;align-items:center;padding:0;display:inline-flex}.booking-workspace-back svg,.clinic-selector-back svg,.time-selector-back svg{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.booking-workspace-back:hover,.booking-workspace-back:focus-visible,.clinic-selector-back:hover,.clinic-selector-back:focus-visible,.time-selector-back:hover,.time-selector-back:focus-visible{background:var(--booking-primary-surface);outline:2px solid color-mix(in srgb, var(--booking-primary) 28%, transparent);outline-offset:2px}.booking-workspace-summary{border-bottom:1px solid #d9e2f2b8;flex-wrap:wrap;flex:none;gap:6px;padding:8px 16px;display:flex}.booking-workspace-summary span{text-overflow:ellipsis;white-space:nowrap;background:var(--booking-primary-surface);max-width:100%;color:var(--booking-primary-hover);border-radius:999px;padding:5px 9px;font-size:.76rem;font-weight:760;overflow:hidden}.booking-workspace-rows{border-bottom:1px solid #d9e2f2b8;flex:none;gap:6px;padding:8px 16px;display:grid}.booking-workspace-row{color:#64748b;grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:10px;font-size:.82rem;display:grid}.booking-workspace-row.active{color:#0f172a}.booking-workspace-row span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.booking-workspace-body{flex:auto;min-height:0;padding:8px 14px 14px;overflow-y:auto}.booking-workspace-bottom-drag-edge{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:#fff;border-top:1px solid #d9e2f2b8;flex:none;justify-content:center;align-items:center;padding:5px 0 8px;display:flex}.booking-workspace-bottom-drag-edge:active{cursor:grabbing}.booking-workspace-bottom-drag-handle{background:#cbd5e1;border-radius:999px;width:56px;height:4px}.booking-workspace .booking-widget,.booking-workspace .payment-widget,.booking-workspace .calendar-slot-picker{width:100%;min-width:0;max-width:none;box-shadow:none;background:0 0;border:0;border-radius:0;margin:0;padding:0}.booking-workspace-checkout{width:min(100% - 44px,640px);max-height:min(70dvh,540px);margin-top:4px}.booking-status-stack-checkout>.booking-workspace-checkout{opacity:.9}.booking-workspace-checkout>.booking-workspace-body{padding:6px 18px 14px}.booking-workspace-checkout .payment-element-form{gap:10px}.booking-workspace-checkout .payment-widget-header-row{display:none}.booking-workspace-checkout .payment-widget-heading{font-size:1.08rem}.booking-workspace-checkout .payment-widget-description{color:#334155;font-size:.95rem}.booking-workspace-checkout .payment-widget-deposit-details{color:#475569;gap:1px;margin-top:0;font-size:.82rem;line-height:1.3;display:grid}.booking-workspace-checkout .payment-widget-deposit-details span:first-child{color:#0f172a;font-weight:760}.booking-workspace-checkout .payment-widget-button{border-radius:12px;justify-content:center;width:100%;min-height:44px}.booking-workspace-review{background:0 0;border:0;width:min(100% - 44px,760px);max-height:min(76dvh,720px);box-shadow:0 24px 64px #02061747}.booking-workspace-review>.booking-workspace-header{display:none}.booking-workspace-review>.booking-workspace-body{padding:0;overflow:visible}.booking-workspace-review>.booking-workspace-bottom-drag-edge,.booking-workspace-people>.booking-workspace-bottom-drag-edge,.booking-workspace-clinic>.booking-workspace-bottom-drag-edge,.booking-workspace-time>.booking-workspace-bottom-drag-edge{border-radius:0 0 22px 22px}.booking-workspace .booking-widget-header{display:none}.booking-workspace-clinic{background:0 0;border:0;border-radius:0 0 22px 22px;width:min(100% - 44px,760px);max-height:none;box-shadow:0 18px 46px #0f172a38}.booking-workspace-clinic>.booking-workspace-header,.booking-workspace-clinic>.booking-workspace-summary,.booking-workspace-clinic>.booking-workspace-rows{display:none}.booking-workspace-clinic>.booking-workspace-body{padding:0;overflow:visible}.booking-workspace-time{background:0 0;border:0;border-radius:0 0 22px 22px;width:min(100% - 44px,760px);max-height:min(72dvh,680px);overflow:visible;box-shadow:0 18px 46px #0f172a38}.booking-workspace-time>.booking-workspace-header,.booking-workspace-time>.booking-workspace-summary,.booking-workspace-time>.booking-workspace-rows{display:none}.booking-workspace-time>.booking-workspace-body{padding:0;overflow:visible}.booking-workspace-complete{background:#fff;border:0;border-radius:0 0 22px 22px;width:min(100% - 44px,760px);max-height:min(72dvh,680px);box-shadow:0 18px 46px #0f172a38}.booking-workspace-complete:before{content:"";background:#cbd5e1;border-radius:999px;flex:none;width:64px;height:6px;margin:10px auto 8px}.booking-workspace-complete>.booking-workspace-header{border-bottom:1px solid #e2e8f0;gap:12px;padding:0 28px 10px}.booking-workspace-complete>.booking-workspace-header h2{color:#0f172a;letter-spacing:0;font-size:1.38rem;font-weight:850;line-height:1.08}.booking-workspace-complete>.booking-workspace-body{padding:22px 28px 28px}.booking-workspace-people{background:0 0;border:0;border-radius:0 0 22px 22px;width:min(100% - 44px,760px);max-height:min(60dvh,560px);box-shadow:0 18px 46px #0f172a38}.booking-workspace-people>.booking-workspace-header,.booking-workspace-people>.booking-workspace-summary,.booking-workspace-people>.booking-workspace-rows{display:none}.booking-workspace-people>.booking-workspace-body{padding:0;overflow:visible}.booking-workspace-empty,.booking-complete-summary{color:#475569;background:#f8fafc;border-radius:14px;gap:4px;padding:14px;font-size:.9rem;display:grid}.booking-complete-summary{gap:12px}.booking-complete-summary .review-appointment-card{background:linear-gradient(135deg,#fff 0%,#f8fbff 100%)}.booking-complete-summary>div:first-child{gap:4px;display:grid}.booking-complete-summary strong{color:#334155}.booking-complete-summary>div:first-child span{color:#64748b}.booking-complete-actions{grid-template-columns:minmax(112px,.42fr) minmax(0,1fr);gap:12px;display:grid}.booking-complete-ok,.booking-complete-special{border-radius:12px;justify-content:center;align-items:center;gap:10px;min-height:44px;font-size:.9rem;font-weight:850;display:inline-flex}.booking-complete-ok{background:var(--booking-primary);color:var(--booking-primary-text);box-shadow:0 14px 28px color-mix(in srgb, var(--booking-primary) 22%, transparent);border:0}.booking-complete-ok:hover{background:var(--booking-primary-hover)}.booking-complete-special{border:1.5px solid var(--booking-primary-border-strong);color:var(--booking-primary);background:#fff}.booking-complete-special:hover{background:var(--booking-primary-surface)}.booking-complete-ok svg,.booking-complete-special svg{flex:0 0 20px;width:20px;height:20px}.booking-complete-ok:focus-visible,.booking-complete-special:focus-visible{outline:3px solid color-mix(in srgb, var(--booking-primary) 28%, transparent);outline-offset:3px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.thread-viewport{scrollbar-gutter:stable;flex-direction:column;gap:14px;padding:18px 0 0;display:flex;overflow:hidden auto}.welcome-screen{flex-direction:column;flex:auto;justify-content:flex-end;gap:32px;min-height:0;padding:18px 0 6px;display:flex}.welcome-message-row{align-self:stretch}.welcome-bubble{max-width:min(440px,100% - 80px);padding:16px 22px}.welcome-bubble p{margin:4px 0 0}.quick-prompts{z-index:1;flex-wrap:wrap;justify-content:center;gap:8px;width:min(100%,980px);margin:0 auto;padding:0 20px;display:flex;position:relative}.quick-prompt{background:var(--button-primary-bg);color:var(--button-primary-text);min-width:136px;font-family:var(--tool-font-family);font-size:12px;font-weight:var(--tool-font-weight);font-style:var(--tool-font-style);-webkit-text-decoration:var(--tool-text-decoration);text-decoration:var(--tool-text-decoration);border:0;border-radius:999px;padding:10px 18px;transition:transform .16s,background-color .16s}.quick-prompt:hover{background:var(--button-primary-hover);transform:translateY(-1px)}.message-row{align-items:flex-start;gap:10px;width:min(100% - 44px,980px);min-width:0;max-width:100%;margin-inline:auto;display:flex}.user-row{justify-content:flex-end}.assistant-row,.system-row{justify-content:flex-start}.avatar{z-index:1;color:#fff;background:0 0;border-radius:999px;flex:none;place-items:center;width:34px;height:34px;margin-top:3px;font-size:.76rem;font-weight:800;display:grid;position:relative;overflow:hidden}.avatar img{object-fit:contain;width:100%;height:100%}.avatar span{background:var(--button-primary-bg);border-radius:999px;place-items:center;width:100%;height:100%;display:grid}.message-bubble,.system-bubble{z-index:1;overflow-wrap:anywhere;min-width:0;max-width:min(760px,82%);box-shadow:none;padding:13px 15px;line-height:1.55;position:relative}.user-bubble{background:var(--msg-user-bg);color:var(--msg-user-text);border:1px solid var(--msg-user-border);border-radius:var(--msg-user-radius);font-family:var(--msg-user-font-family);font-size:var(--msg-user-font-size);font-weight:var(--msg-user-font-weight);font-style:var(--msg-user-font-style);-webkit-text-decoration:var(--msg-user-text-decoration);text-decoration:var(--msg-user-text-decoration)}.assistant-bubble{background:var(--msg-assistant-bg);color:var(--msg-assistant-text);border:1px solid var(--msg-assistant-border);border-radius:var(--msg-assistant-radius);font-family:var(--msg-assistant-font-family);font-size:var(--msg-assistant-font-size);font-weight:var(--msg-assistant-font-weight);font-style:var(--msg-assistant-font-style);-webkit-text-decoration:var(--msg-assistant-text-decoration);text-decoration:var(--msg-assistant-text-decoration)}.assistant-bubble:has(.veyna-product-widget){width:min(760px,100% - 44px);max-width:calc(100% - 44px)}.assistant-bubble:has(.veyna-product-widget-list){width:min(980px,100% - 44px);max-width:calc(100% - 44px)}.yes-no-actions{font-family:var(--tool-font-family);flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.yes-no-action{border:1px solid color-mix(in srgb, var(--button-primary-bg) 28%, var(--msg-assistant-border));background:color-mix(in srgb, var(--button-primary-bg) 10%, #fff);min-width:74px;min-height:34px;color:var(--button-primary-bg);font:inherit;cursor:pointer;border-radius:999px;padding:6px 14px;font-size:.92rem;font-weight:780;line-height:1.2}.yes-no-action:hover:not(:disabled),.yes-no-action:focus-visible{background:var(--button-primary-bg);color:var(--button-primary-text);outline:2px solid color-mix(in srgb, var(--button-primary-bg) 32%, transparent);outline-offset:2px}.yes-no-action:disabled{cursor:not-allowed;opacity:.62}.treatment-gallery-action{font-family:var(--tool-font-family);margin-top:10px}.treatment-gallery-open{border:1px solid color-mix(in srgb, var(--button-primary-bg) 28%, var(--msg-assistant-border));background:color-mix(in srgb, var(--button-primary-bg) 10%, #fff);min-height:34px;color:var(--button-primary-bg);font:inherit;border-radius:999px;padding:6px 14px;font-size:.9rem;font-weight:780;line-height:1.2}.treatment-gallery-open:hover,.treatment-gallery-open:focus-visible{background:var(--button-primary-bg);color:var(--button-primary-text);outline:2px solid color-mix(in srgb, var(--button-primary-bg) 32%, transparent);outline-offset:2px}.suggested-answer-actions{font-family:var(--tool-font-family);gap:10px;margin-top:12px;display:grid}.suggested-answer-list{gap:8px;display:grid}.suggested-answer-option{border:1px solid color-mix(in srgb, var(--button-primary-bg) 28%, var(--msg-assistant-border));background:color-mix(in srgb, var(--button-primary-bg) 8%, #fff);min-height:38px;color:var(--button-primary-bg);font:inherit;text-align:left;cursor:pointer;border-radius:12px;grid-template-columns:26px minmax(0,1fr);align-items:center;gap:10px;padding:7px 11px;font-size:.9rem;font-weight:780;line-height:1.2;display:grid}.suggested-answer-option:hover:not(:disabled),.suggested-answer-option:focus-visible{background:var(--button-primary-bg);color:var(--button-primary-text);outline:2px solid color-mix(in srgb, var(--button-primary-bg) 32%, transparent);outline-offset:2px}.suggested-answer-option:disabled{cursor:not-allowed;opacity:.62}.suggested-answer-index{background:color-mix(in srgb, currentColor 12%, transparent);border-radius:999px;justify-content:center;align-items:center;width:24px;height:24px;font-size:.78rem;font-weight:860;display:inline-flex}.suggested-answer-label{overflow-wrap:anywhere;min-width:0}.suggested-answer-custom{grid-template-columns:minmax(0,1fr) 38px;gap:8px;display:grid}.suggested-answer-custom input{border:1px solid color-mix(in srgb, var(--button-primary-bg) 24%, var(--msg-assistant-border));color:#0f172a;min-width:0;min-height:38px;font:inherit;background:#fff;border-radius:12px;padding:0 12px;font-size:.9rem}.suggested-answer-custom input:focus{outline:2px solid color-mix(in srgb, var(--button-primary-bg) 32%, transparent);outline-offset:2px}.suggested-answer-custom button{background:var(--button-primary-bg);min-height:38px;color:var(--button-primary-text);border:0;border-radius:12px;justify-content:center;align-items:center;display:inline-flex}.suggested-answer-custom button:disabled{cursor:not-allowed;opacity:.58}.suggested-answer-custom svg{width:18px;height:18px}.assistant-name{color:var(--assistant-name-color);font-family:var(--assistant-name-font-family);font-size:var(--assistant-name-font-size);font-weight:var(--assistant-name-font-weight);font-style:var(--assistant-name-font-style);-webkit-text-decoration:var(--assistant-name-text-decoration);text-decoration:var(--assistant-name-text-decoration);line-height:1.2}.message-bubble.welcome-bubble{max-width:min(440px,100% - 80px)}.system-bubble{color:#9a3412;background:#fff7ed;border-radius:14px}.message-markdown>:first-child{margin-top:0}.message-markdown>:last-child{margin-bottom:0}.message-markdown a{color:var(--tool-accent)}.message-markdown ul,.message-markdown ol{margin:8px 0 0;padding-left:1.2rem}.message-markdown li+li{margin-top:4px}.message-markdown img{object-fit:contain;object-position:center;border-radius:10px;width:auto;max-width:100%;height:auto;max-height:min(62dvh,560px);display:block}.message-markdown code,.message-markdown pre,.reasoning-card pre,.tool-card pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.message-markdown pre,.reasoning-card pre,.tool-card pre{white-space:pre-wrap;overflow-x:auto}.reasoning-card,.tool-card{border:1px solid var(--tool-border);background:var(--tool-bg);color:var(--tool-text);font-family:var(--tool-font-family);font-weight:var(--tool-font-weight);font-style:var(--tool-font-style);-webkit-text-decoration:var(--tool-text-decoration);text-decoration:var(--tool-text-decoration);border-radius:14px;margin:8px 0}.reasoning-card summary,.tool-card summary{align-items:center;gap:8px;padding:10px 12px;font-weight:700;list-style:none;display:flex}.reasoning-card summary::-webkit-details-marker{display:none}.tool-card summary::-webkit-details-marker{display:none}.reasoning-card pre,.tool-card pre{margin:0;padding:0;font-size:.82rem}.tool-card-body{border-top:1px solid var(--tool-border);gap:8px;padding:12px;display:grid}.tool-dot{background:var(--tool-accent);width:8px;height:8px;box-shadow:0 0 0 4px color-mix(in srgb, var(--tool-accent) 16%, transparent);border-radius:999px}.tool-card small{opacity:.65;margin-left:auto;font-weight:600}.tool-query{margin:0;font-weight:650}.payment-widget{border:1px solid color-mix(in srgb, var(--msg-assistant-text) 8%, transparent);background:color-mix(in srgb, var(--msg-assistant-bg) 94%, #fff);min-width:min(440px,74vw);max-width:min(520px,100%);color:var(--msg-assistant-text);font-family:var(--tool-font-family);border-radius:18px;gap:12px;margin:2px 0;padding:16px;display:grid;box-shadow:0 10px 28px #0f172a12}.payment-widget-header-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.payment-widget-kicker{color:color-mix(in srgb, var(--msg-assistant-text) 58%, transparent);letter-spacing:.04em;text-transform:uppercase;margin-bottom:4px;font-size:.72rem;font-weight:800}.payment-widget-amount-pill{border:1px solid color-mix(in srgb, var(--msg-assistant-text) 14%, transparent);background:color-mix(in srgb, #fff 66%, var(--msg-assistant-bg));white-space:nowrap;border-radius:999px;align-items:baseline;gap:6px;padding:6px 11px;font-size:1.08rem;font-weight:840;display:inline-flex}.payment-widget-price-stack{flex-direction:column;align-items:flex-end;gap:4px;display:inline-flex}.payment-widget-info{border:1px solid color-mix(in srgb, var(--msg-assistant-text) 16%, transparent);width:22px;height:22px;min-height:22px;color:color-mix(in srgb, var(--msg-assistant-text) 58%, transparent);background:#ffffff94;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex}.payment-widget-info svg{width:13px;height:13px}.payment-widget-info:hover,.payment-widget-info:focus-visible{color:var(--booking-primary);border-color:color-mix(in srgb, var(--booking-primary) 42%, transparent);outline:2px solid color-mix(in srgb, var(--booking-primary) 20%, transparent);outline-offset:2px}.payment-widget-heading{font-family:var(--tool-font-family);font-size:var(--assistant-name-font-size);font-weight:800;line-height:1.2}.payment-widget-description{margin:0;line-height:1.45}.payment-widget-deposit-details{color:color-mix(in srgb, var(--msg-assistant-text) 68%, transparent);gap:3px;margin-top:-2px;font-size:.86rem;line-height:1.35;display:grid}.payment-widget-deposit-details span:first-child{color:var(--msg-assistant-text);font-weight:760}.payment-widget-amount{align-items:baseline;gap:8px;font-size:1.5rem;font-weight:850;display:flex}.payment-widget-amount span{opacity:.7;letter-spacing:.04em;font-size:.78rem}.payment-widget-button{background:var(--button-primary-bg);width:100%;min-height:40px;color:var(--button-primary-text);border:0;border-radius:999px;padding:0 18px;font-weight:760;transition:background-color .16s,transform .16s}.payment-widget-button-content{justify-content:center;align-items:center;gap:8px;min-width:0;display:inline-flex}.payment-widget-button:hover:not(:disabled){background:var(--button-primary-hover);transform:translateY(-1px)}.payment-widget-button:disabled{cursor:not-allowed;background:var(--booking-disabled-surface);color:var(--booking-disabled-text);opacity:1}.payment-widget-error,.payment-widget-status{border-radius:12px;padding:10px 12px;font-size:.9rem}.payment-widget-error{color:#9f1239;background:#fff1f2}.payment-widget-status{color:#166534;background:#f0fdf4}.payment-element-form{gap:12px;position:relative}.payment-express-checkout{min-height:44px}.payment-express-checkout-pending{pointer-events:none;width:100%;height:0;min-height:0;position:absolute;top:0;left:0;overflow:hidden}.payment-express-checkout-unavailable{background:color-mix(in srgb, var(--msg-assistant-text) 5%, #fff);color:color-mix(in srgb, var(--msg-assistant-text) 62%, transparent);border-radius:12px;padding:9px 11px;font-size:.82rem;font-weight:680}.payment-widget-divider{color:color-mix(in srgb, var(--msg-assistant-text) 52%, transparent);align-items:center;gap:10px;font-size:.78rem;font-weight:720;line-height:1;display:flex}.payment-widget-divider:before,.payment-widget-divider:after{content:"";background:color-mix(in srgb, var(--msg-assistant-text) 12%, transparent);flex:1;height:1px}.payment-card-fallback{gap:10px;display:grid}.payment-widget-loader{justify-items:center;gap:10px;margin:2px 0 4px;display:grid}.payment-element-shell{border:1px solid color-mix(in srgb, var(--msg-assistant-text) 12%, transparent);background:#fff;border-radius:12px;padding:10px}.payment-widget-field{color:color-mix(in srgb, var(--msg-assistant-text) 72%, transparent);gap:6px;font-size:.84rem;font-weight:720;display:grid}.payment-widget-field input{border:1px solid color-mix(in srgb, var(--msg-assistant-text) 14%, transparent);width:100%;min-height:42px;color:var(--msg-assistant-text);font:inherit;text-transform:uppercase;background:#fff;border-radius:12px;padding:0 12px;font-weight:650}.payment-widget-field input:focus{border-color:color-mix(in srgb, var(--button-primary-bg) 58%, transparent);box-shadow:0 0 0 3px color-mix(in srgb, var(--button-primary-bg) 18%, transparent);outline:none}.payment-widget-field input:disabled{cursor:not-allowed;opacity:.68}.veyna-product-widget{border:1px solid color-mix(in srgb, var(--msg-assistant-text) 8%, transparent);background:color-mix(in srgb, var(--msg-assistant-bg) 96%, #fff);width:100%;min-width:0;color:var(--msg-assistant-text);font-family:var(--tool-font-family);font-weight:var(--tool-font-weight);font-style:var(--tool-font-style);-webkit-text-decoration:var(--tool-text-decoration);text-decoration:var(--tool-text-decoration);border-radius:10px;gap:10px;margin:2px 0;padding:12px;display:grid}.veyna-product-empty{color:color-mix(in srgb, var(--msg-assistant-text) 70%, transparent);font-size:.9rem;font-weight:650}.veyna-product-header{gap:2px;display:grid}.veyna-product-header strong{font-family:var(--tool-font-family);font-size:.96rem;line-height:1.25}.veyna-product-kicker{color:color-mix(in srgb, var(--msg-assistant-text) 58%, transparent);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;font-weight:800}.veyna-product-list{gap:8px;display:grid}.veyna-product-table{color:#2f4059;background:#fff;border:1px solid #142033;border-radius:7px;overflow:hidden}.veyna-product-table-head,.veyna-product-row{grid-template-columns:minmax(92px,.9fr) 70px minmax(104px,1fr) minmax(76px,.72fr) minmax(76px,.72fr) minmax(112px,1fr) minmax(78px,.72fr) minmax(106px,.95fr);align-items:center;display:grid}.veyna-product-table-head{color:#f8fafc;letter-spacing:0;background:#111827;min-height:38px;font-size:.72rem;font-weight:760}.veyna-product-table-head span{overflow-wrap:anywhere;min-width:0;padding:9px 8px}.veyna-product-table-body{display:grid}.veyna-product-row{color:#2f4059;width:100%;min-height:88px;font:inherit;text-align:left;background:#fff;border:0;border-bottom:1px solid #1e2a44;border-radius:0;transition:background-color .16s,box-shadow .16s}.veyna-product-row:last-child{border-bottom:0}.veyna-product-row:hover,.veyna-product-row:focus-visible{box-shadow:inset 3px 0 0 var(--button-primary-bg);background:#f8fafc;outline:none}.veyna-product-row-cell{overflow-wrap:anywhere;min-width:0;padding:10px 8px;font-size:.8rem;line-height:1.28}.veyna-product-row-model{gap:4px;display:grid}.veyna-product-row-model strong{color:#111827;font-size:.92rem;font-weight:860;line-height:1.15}.veyna-product-row-model small{color:#8da0bd;font-family:var(--tool-font-family);letter-spacing:.02em;font-size:.68rem;font-weight:760}.veyna-product-row-thumb{place-items:center;display:grid}.veyna-product-thumbnail{aspect-ratio:.68;background:#f8fafc;border:1px solid #dbe4f0;border-radius:7px;place-items:center;width:50px;min-width:50px;display:grid;overflow:hidden;box-shadow:0 8px 22px #1f29371a}.veyna-product-row-measure{color:#26384f;font-family:var(--tool-font-family);font-size:.82rem}.veyna-product-glazing-badge{color:#0073b5;background:#eef8ff;border-radius:6px;justify-content:center;min-width:50px;padding:3px 7px;font-weight:820;line-height:1.15;display:inline-flex}.veyna-product-row-finish{align-items:center;gap:8px;display:inline-flex}.veyna-product-finish-swatch{background:#d8d2bf;border:1px solid #d8e1ed;border-radius:999px;flex:none;width:17px;height:17px;box-shadow:0 1px 4px #0f172a29}.veyna-product-showcase{color:#152033;background:#fff;border:1px solid #e0e7f0;border-radius:8px;overflow:hidden;box-shadow:0 18px 42px #1f293714}.veyna-product-showcase-visual{background:#fbfcff;justify-items:center;gap:10px;padding:18px 18px 0;display:grid;position:relative}.veyna-product-showcase-badges{z-index:1;flex-wrap:wrap;gap:8px;display:flex;position:absolute;top:12px;left:14px}.veyna-product-showcase-index,.veyna-product-showcase-type{color:#fff;border-radius:6px;align-items:center;min-height:26px;padding:0 9px;font-size:.76rem;font-weight:800;line-height:1;display:inline-flex}.veyna-product-showcase-index{background:#3b4252}.veyna-product-showcase-type{background:#4b8cff}.veyna-product-showcase-media{aspect-ratio:.64;filter:drop-shadow(0 18px 28px #1f293724);background:#e8eef7;border-radius:8px;place-items:center;width:min(220px,72%);display:grid;overflow:hidden}.veyna-product-zoom-hint{color:#91a2bd;border-top:1px solid #e5ebf3;place-items:center;width:calc(100% + 44px);min-height:38px;font-size:.8rem;font-weight:650;display:grid}.veyna-product-showcase-info{border-top:1px solid #edf1f7;gap:12px;padding:18px;display:grid}.veyna-product-showcase-title{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:12px;display:grid}.veyna-product-showcase-title h3{color:#152033;overflow-wrap:anywhere;margin:0;font-size:1.08rem;font-weight:860;line-height:1.2}.veyna-product-showcase-title span{color:#61718b;font-family:var(--tool-font-family);white-space:nowrap;font-size:.86rem;font-weight:720}.veyna-product-showcase-info>p{color:#8a9ab5;margin:0;font-size:.84rem;line-height:1.45}.veyna-product-showcase-specs{border-top:1px solid #edf1f7;border-bottom:1px solid #edf1f7;gap:7px;margin:0;padding:12px 0;display:grid}.veyna-product-showcase-specs div{grid-template-columns:minmax(150px,.7fr) minmax(0,1fr);gap:12px;display:grid}.veyna-product-showcase-specs dt,.veyna-product-showcase-specs dd{overflow-wrap:anywhere;min-width:0;margin:0;font-size:.8rem;line-height:1.35}.veyna-product-showcase-specs dt{color:#8a9ab5;font-weight:680}.veyna-product-showcase-specs dd{color:#26384f;text-align:right;font-weight:800}.veyna-product-showcase-actions{grid-template-columns:minmax(0,1fr) auto;gap:12px;display:grid}.product-card{border:1px solid color-mix(in srgb, var(--tool-border) 82%, transparent);background:color-mix(in srgb, var(--tool-bg) 78%, #fff);color:#152033;border-radius:8px;grid-template-columns:88px minmax(0,1fr);gap:12px;padding:10px;display:grid}.veyna-product-widget-single .product-card{grid-template-columns:128px minmax(0,1fr)}.product-card-media{aspect-ratio:1;background:#e8eef7;border-radius:8px;width:88px;min-width:88px;overflow:hidden}.veyna-product-widget-single .product-card-media{width:128px;min-width:128px}.product-card-media img,.veyna-product-thumbnail img,.veyna-product-mobile-thumbnail img,.veyna-product-showcase-media img,.veyna-product-details-media img,.veyna-product-details-mobile-media img,.product-card-image-placeholder{width:100%;height:100%}.product-card-media img,.veyna-product-thumbnail img,.veyna-product-mobile-thumbnail img,.veyna-product-showcase-media img,.veyna-product-details-media img,.veyna-product-details-mobile-media img{object-fit:contain;display:block}.veyna-product-zoomable img,.veyna-product-zoomable .product-card-image-placeholder{transform-origin:var(--veyna-product-zoom-x,50%) var(--veyna-product-zoom-y,50%);will-change:transform;cursor:zoom-in;transition:transform .22s}@media (hover:hover){.veyna-product-zoomable.is-zooming img,.veyna-product-zoomable.is-zooming .product-card-image-placeholder{transform:scale(2.25)}}@media (prefers-reduced-motion:reduce){.veyna-product-zoomable img,.veyna-product-zoomable .product-card-image-placeholder{transition:none}.veyna-product-zoomable.is-zooming img,.veyna-product-zoomable.is-zooming .product-card-image-placeholder{transform:none}}.product-card-image-placeholder{color:#40516d;letter-spacing:0;text-align:center;overflow-wrap:anywhere;place-items:center;padding:8px;font-size:.9rem;font-weight:840;display:grid}.veyna-door-preview{filter:drop-shadow(0 12px 18px #0f172a2e);width:100%;height:100%;display:block}.product-card-body{align-content:start;gap:8px;min-width:0;display:grid}.product-card-title-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;display:grid}.veyna-product-index{color:#40516d;font-family:var(--tool-font-family);overflow-wrap:anywhere;background:#e8eef7;border-radius:6px;margin-bottom:4px;padding:2px 6px;font-size:.72rem;font-weight:820;line-height:1.2;display:inline-flex}.product-card h3{overflow-wrap:anywhere;margin:0;font-size:.98rem;line-height:1.25}.product-card p{color:#52627a;margin:0;font-size:.86rem;line-height:1.4}.veyna-product-subtitle{background:color-mix(in srgb, var(--button-primary-bg) 10%, #fff);color:var(--button-primary-bg);overflow-wrap:anywhere;border-radius:999px;padding:4px 8px;font-size:.76rem;font-weight:820;line-height:1.2}.veyna-product-summary,.veyna-product-detail-list{gap:6px;margin:0;display:grid}.veyna-product-summary{border-top:1px solid #e2e8f0;padding-top:8px}.veyna-product-summary div,.veyna-product-detail-list div{grid-template-columns:minmax(84px,.35fr) minmax(0,1fr);gap:8px;display:grid}.veyna-product-summary dt,.veyna-product-summary dd,.veyna-product-detail-list dt,.veyna-product-detail-list dd{overflow-wrap:anywhere;min-width:0;margin:0;font-size:.8rem;line-height:1.35}.veyna-product-summary dt,.veyna-product-detail-list dt{color:#8798b2;font-weight:760}.veyna-product-summary dd{color:#152033;font-weight:680}.product-card-actions{flex-wrap:wrap;gap:8px;margin-top:2px;display:flex}.product-card-link{border:1px solid color-mix(in srgb, var(--button-secondary-text) 16%, transparent);background:var(--button-secondary-bg);min-height:32px;color:var(--button-secondary-text);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;padding:0 12px;font-size:.78rem;font-weight:780;text-decoration:none;display:inline-flex}.veyna-product-details-button{border-color:color-mix(in srgb, var(--button-primary-bg) 24%, transparent);background:color-mix(in srgb, var(--button-primary-bg) 10%, #fff);color:var(--button-primary-bg)}.product-card-link:hover,.product-card-link:focus-visible{border-color:color-mix(in srgb, var(--button-secondary-text) 30%, transparent)}.veyna-product-details-button:hover,.veyna-product-details-button:focus-visible{border-color:color-mix(in srgb, var(--button-primary-bg) 40%, transparent);outline:2px solid color-mix(in srgb, var(--button-primary-bg) 22%, transparent);outline-offset:2px}.veyna-product-details-backdrop{z-index:3500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172a94;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.veyna-product-details-modal{color:#152033;background:#fff;border:1px solid #e2e8f0e6;border-radius:16px;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(330px,.92fr) minmax(400px,1fr);width:min(1060px,100vw - 44px);max-height:min(740px,100svh - 36px);display:grid;overflow:hidden;box-shadow:0 30px 90px #0f172a57}.veyna-product-details-lab{background:#f8fafc;border-right:1px solid #e2e8f0;flex-direction:column;gap:16px;min-width:0;min-height:0;padding:24px;display:flex;overflow-y:auto}.veyna-product-lab-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.veyna-product-lab-header div{color:#64748b;min-width:0;font-family:var(--tool-font-family);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:8px;font-size:.68rem;font-weight:840;display:inline-flex}.veyna-product-lab-header strong{color:#047857;min-height:26px;font-family:var(--tool-font-family);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:6px;align-items:center;padding:0 10px;font-size:.64rem;font-weight:900;display:inline-flex}.veyna-product-lab-icon{border:3px solid #2563eb;border-radius:999px;flex:none;width:19px;height:19px;box-shadow:inset 7px 0 0 -4px #2563eb,inset -5px 5px 0 -4px #2563eb,inset 1px -7px 0 -4px #2563eb}.veyna-product-lab-preview{background:#fff;border:1px solid #dbe4f0;border-radius:12px;flex:none;overflow:hidden;box-shadow:0 8px 22px #0f172a14}.veyna-product-details-header{border-bottom:1px solid #e8eef6;justify-content:space-between;align-items:center;gap:12px;padding-bottom:14px;display:flex}.veyna-product-details-header div{min-width:0}.veyna-product-details-header h2{color:#152033;letter-spacing:0;overflow-wrap:anywhere;margin:0;font-size:1.08rem;font-weight:860;line-height:1.2}.veyna-product-details-header p{color:#91a2bd;margin:6px 0 0;font-size:.82rem;line-height:1.2}.veyna-product-details-header p strong{color:#40516d;font-family:var(--tool-font-family);font-weight:860}.veyna-product-details-close{color:#64748b;background:#f1f5f9;border:0;border-radius:10px;flex:none;place-items:center;width:36px;height:36px;display:grid}.veyna-product-details-close svg{width:20px;height:20px}.veyna-product-details-close:hover,.veyna-product-details-close:focus-visible{color:#334155;outline-offset:2px;background:#e2e8f0;outline:2px solid #2563eb3d}.veyna-product-details-sheet{background:#fff;grid-template-rows:auto minmax(0,1fr) auto;gap:16px;min-height:0;padding:24px 24px 22px;display:grid;overflow:hidden}.veyna-product-details-scroll{gap:16px;min-width:0;padding-right:4px;display:grid;overflow-y:auto}.veyna-product-details-media{background:#f8fafc;border-radius:10px 10px 0 0;width:100%;height:clamp(180px,30vh,300px);display:block;overflow:hidden}.veyna-product-details-media img{object-fit:contain;width:100%;height:100%}.veyna-product-details-media .product-card-image-placeholder{aspect-ratio:.64;width:auto;max-width:100%;height:100%;margin:0 auto;padding:0}.veyna-product-finish-panel{background:#eef3f9;border:1px solid #dbe4f0;border-radius:12px;gap:10px;padding:12px;display:grid}.veyna-product-finish-panel h3,.veyna-product-layer-card h3,.veyna-product-spec-summary-card h3{color:#91a2bd;letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.68rem;font-weight:860;line-height:1.2}.veyna-product-finish-panel h3{color:#2f4059;letter-spacing:0;text-transform:none;font-size:.76rem}.veyna-product-finish-options{flex-wrap:wrap;gap:6px;display:flex}.veyna-product-finish-option{color:#40516d;background:#fff;border:1px solid #dbe4f0;border-radius:8px;align-items:center;gap:8px;min-height:28px;padding:0 9px;font-size:.7rem;font-weight:680;line-height:1.2;display:inline-flex}.veyna-product-finish-option.selected{color:#fff;background:#0f172a;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb2e}.veyna-product-spec-summary-card{background:#fbfcff;border:1px solid #40516d;border-radius:12px;gap:12px;padding:14px;display:grid}.veyna-product-spec-summary-card>p{color:#40516d;margin:0;font-size:.82rem;line-height:1.45}.veyna-product-dimension-grid{border-top:1px solid #e8eef6;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;padding-top:12px;display:grid}.veyna-product-dimension-grid div{gap:4px;display:grid}.veyna-product-dimension-grid span{color:#91a2bd;letter-spacing:.04em;text-transform:uppercase;font-size:.66rem;font-weight:860}.veyna-product-dimension-grid strong,.veyna-product-dimension-grid p{color:#26384f;font-family:var(--tool-font-family);margin:0;font-size:.82rem;font-weight:780;line-height:1.35}.veyna-product-technical-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 24px;margin:0;display:grid}.veyna-product-technical-grid div{gap:5px;min-width:0;display:grid}.veyna-product-technical-grid dt{color:#91a2bd;letter-spacing:.04em;text-transform:uppercase;font-size:.66rem;font-weight:860;line-height:1.2}.veyna-product-technical-grid dd{color:#26384f;overflow-wrap:anywhere;margin:0;font-size:.8rem;font-weight:680;line-height:1.45}.veyna-product-technical-grid dd a{color:#1d4ed8}.veyna-product-layer-card{border-top:1px solid #e8eef6;gap:9px;padding-top:14px;display:grid}.veyna-product-layer-card dl{background:#fbfcff;border:1px solid #dbe4f0;border-radius:10px;gap:6px;margin:0;padding:10px 12px;display:grid}.veyna-product-layer-card div{grid-template-columns:minmax(132px,.65fr) minmax(0,1fr);gap:12px;display:grid}.veyna-product-layer-card dt,.veyna-product-layer-card dd{min-width:0;margin:0;font-size:.78rem;line-height:1.35}.veyna-product-layer-card dt{color:#91a2bd;font-weight:680}.veyna-product-layer-card dd{color:#26384f;text-align:right;font-weight:820}.veyna-product-details-footer{border-top:1px solid #e8eef6;justify-content:flex-start;padding-top:14px;display:flex}.veyna-product-close-preview{color:#2f4059;background:#eef2f7;border:0;border-radius:10px;min-height:36px;padding:0 18px;font-size:.8rem;font-weight:820}.veyna-product-close-preview:hover,.veyna-product-close-preview:focus-visible{outline-offset:2px;background:#e2e8f0;outline:2px solid #2563eb33}.veyna-product-variant-swatch{background:linear-gradient(135deg,#e5e7eb,#fff);border:1px solid #cbd5e1;border-radius:999px;flex:none;width:14px;height:14px}@media (width<=1080px){.veyna-product-lab-header{flex-direction:column;align-items:flex-start}}.booking-widget{background:color-mix(in srgb, var(--msg-assistant-bg) 96%, #fff);width:min(560px,100%);min-width:min(440px,74vw);color:var(--msg-assistant-text);font-family:var(--tool-font-family);font-weight:var(--tool-font-weight);font-style:var(--tool-font-style);-webkit-text-decoration:var(--tool-text-decoration);text-decoration:var(--tool-text-decoration);border-radius:16px;gap:12px;margin:2px 0;padding:14px;display:grid}.booking-widget-header{gap:2px;display:grid}.booking-widget-header strong,.booking-widget-single strong{font-family:var(--tool-font-family);font-size:1rem;line-height:1.25}.booking-widget-kicker{color:color-mix(in srgb, var(--msg-assistant-text) 58%, transparent);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;font-weight:800}.booking-option-list{gap:8px;display:grid}.booking-option-scroll{overscroll-behavior:contain;min-height:0;max-height:min(34dvh,324px);padding-right:4px;overflow-y:auto}.booking-option-scroll::-webkit-scrollbar{width:6px}.booking-option-scroll::-webkit-scrollbar-thumb{background:#94a3b880;border-radius:999px}.booking-option-button,.booking-slot-button{border:1px solid color-mix(in srgb, var(--tool-border) 80%, transparent);background:color-mix(in srgb, var(--tool-bg) 78%, #fff);width:100%;color:var(--msg-assistant-text);text-align:left;border-radius:12px;transition:border-color .16s,transform .16s,background-color .16s}.booking-option-card{border:1px solid color-mix(in srgb, var(--tool-border) 80%, transparent);background:color-mix(in srgb, var(--tool-bg) 78%, #fff);border-radius:12px;transition:border-color .16s,transform .16s,background-color .16s;display:block;position:relative;overflow:hidden}.booking-option-card:hover,.booking-option-card:focus-within{border-color:var(--tool-accent);background:color-mix(in srgb, var(--tool-accent) 8%, #fff);transform:translateY(-1px)}.booking-option-button{justify-content:space-between;align-items:center;gap:14px;padding:11px 12px;display:flex}.booking-option-card .booking-option-button{background:0 0;border:0;border-radius:0;width:100%;min-width:0;transform:none}.treatment-option-button{min-height:62px;padding:8px 88px 8px 12px}.booking-option-button:hover,.booking-slot-button:hover{border-color:var(--tool-accent);background:color-mix(in srgb, var(--tool-accent) 8%, #fff);transform:translateY(-1px)}.booking-option-card .booking-option-button:hover{background:0 0;transform:none}.booking-option-main{gap:3px;min-width:0;display:grid}.booking-option-title-row{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:10px;min-width:0;display:grid}.booking-option-button strong,.booking-option-button small,.booking-widget-single small,.booking-muted{display:block}.booking-option-button small,.booking-widget-single small,.booking-muted{color:color-mix(in srgb, var(--msg-assistant-text) 64%, transparent);margin-top:2px;font-size:.8rem;line-height:1.25}.treatment-option-button small{-webkit-line-clamp:1;-webkit-box-orient:vertical;margin-top:0;display:-webkit-box;overflow:hidden}.booking-option-meta{color:var(--tool-accent);white-space:nowrap;justify-content:flex-end;gap:5px;font-size:.8rem;font-weight:800;display:inline-flex}.booking-option-info{color:var(--tool-accent);background:0 0;border:0;padding:0;font-size:.76rem;font-weight:800;position:absolute;bottom:9px;right:12px}.booking-option-info:hover,.booking-option-info:focus-visible{background:color-mix(in srgb, var(--tool-accent) 9%, transparent)}.booking-option-more-indicator{background:linear-gradient(180deg, #eff6ffb8, var(--booking-primary-surface));color:var(--booking-primary);pointer-events:none;border-radius:999px;justify-content:center;align-items:center;gap:6px;margin-top:8px;padding:6px 10px;font-size:.78rem;font-weight:820;display:flex}.booking-option-more-indicator span{font-size:.88rem}.booking-widget-single{grid-template-columns:minmax(0,1fr) auto;align-items:center}.booking-inline-button,.booking-primary-button,.booking-secondary-button{border-radius:999px;min-height:38px;padding:0 14px;font-weight:780}.booking-inline-button,.booking-primary-button{background:var(--button-primary-bg);color:var(--button-primary-text);border:0}.booking-secondary-button{border:1px solid color-mix(in srgb, var(--button-secondary-text) 16%, transparent);background:var(--button-secondary-bg);color:var(--button-secondary-text)}.booking-inline-button:hover,.booking-primary-button:hover{background:var(--button-primary-hover)}.booking-field{gap:5px;min-width:0;display:grid}.booking-field span{font-size:.78rem;font-weight:800}.booking-field input,.booking-field select,.booking-field textarea{border:1px solid color-mix(in srgb, var(--input-focus-border) 22%, transparent);background:var(--input-bg);width:100%;min-height:38px;color:var(--input-text);font:inherit;border-radius:10px;padding:0 10px}.booking-field textarea{resize:vertical;min-height:58px;padding:9px 10px}.booking-field input:focus,.booking-field select:focus,.booking-field textarea:focus{outline:2px solid color-mix(in srgb, var(--input-focus-border) 28%, transparent);outline-offset:1px}.booking-slot-grid{grid-template-columns:repeat(auto-fit,minmax(138px,1fr));gap:8px;display:grid}.booking-slot-button{text-align:center;min-height:42px;padding:9px 10px;font-weight:760}.booking-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.booking-field-full{width:100%}.booking-checkbox-field{align-items:center;gap:8px;min-height:38px;font-size:.82rem;font-weight:760;display:flex}.booking-checkbox-field input{width:16px;height:16px}.booking-field-note{color:var(--muted-text);margin:-2px 0 0;font-size:.78rem;line-height:1.35}.booking-form{align-items:start}.booking-input-error{border-color:#be123c!important}.booking-error{color:#9f1239;background:#fff1f2;border-radius:10px;padding:9px 10px;font-size:.86rem}.booking-summary-list{gap:7px;margin:0;display:grid}.booking-summary-list div{grid-template-columns:96px minmax(0,1fr);align-items:baseline;gap:10px;display:grid}.booking-summary-list dt{color:color-mix(in srgb, var(--msg-assistant-text) 58%, transparent);font-size:.78rem;font-weight:800}.booking-summary-list dd{min-width:0;margin:0}.booking-price{color:var(--tool-accent);font-size:1.35rem;font-weight:850}.booking-price small{color:color-mix(in srgb, var(--msg-assistant-text) 64%, transparent);margin-top:2px;font-size:.82rem;font-weight:650;display:block}.booking-action-row{flex-wrap:wrap;gap:8px;display:flex}.booking-workspace .review-booking-card{color:#0f172a;background:#fff;border:1px solid #dbe6f5;border-radius:28px;gap:14px;width:100%;min-width:0;padding:22px 24px 20px;display:grid;box-shadow:0 18px 48px #0f172a2e}.review-booking-header{border-bottom:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding-bottom:0;display:grid}.review-booking-header h2{color:#0f172a;min-width:0;font-family:var(--tool-font-family);margin:0;font-size:clamp(1.2rem,4.4vw,1.62rem);font-weight:880;line-height:1.12}.review-booking-controls{flex:none;justify-content:flex-end;align-items:center;gap:10px;display:inline-flex}.review-booking-back{width:42px;height:42px;color:var(--booking-primary);box-shadow:0 3px 10px color-mix(in srgb, var(--booking-primary) 8%, transparent);background:#fff;border:1px solid #d7e3f4;border-radius:999px;flex:none;place-items:center;display:inline-grid}.review-booking-back svg{width:22px;height:22px}.review-booking-status{border:1.5px solid var(--booking-primary);min-height:32px;color:var(--booking-primary);white-space:nowrap;border-radius:999px;align-items:center;gap:7px;padding:0 10px 0 7px;font-size:.84rem;font-weight:820;display:inline-flex}.review-booking-status svg{background:var(--booking-primary);width:20px;height:20px;color:var(--booking-primary-text);border-radius:999px;padding:3px}.review-appointment-list{gap:8px;display:grid}.review-appointment-card{background:linear-gradient(135deg,#fff 0%,#f8fbff 100%);border:1px solid #dbe6f5;border-radius:14px;min-width:0;padding:10px 12px}.review-appointment-card.expanded{background:#fff}.review-appointment-compact-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;display:grid}.review-appointment-avatar{background:var(--booking-primary-tint);width:36px;height:36px;color:var(--booking-primary-hover);letter-spacing:0;border-radius:999px;place-items:center;font-size:.76rem;font-weight:900;display:inline-grid}.review-appointment-card:nth-child(2n) .review-appointment-avatar{color:#4f46e5;background:#e5ddff}.review-appointment-compact-copy{min-width:0}.review-appointment-compact-copy h3{color:#0f172a;overflow-wrap:anywhere;margin:0;font-size:.9rem;font-weight:880;line-height:1.16}.review-appointment-compact-copy p{color:#475569;overflow-wrap:anywhere;margin:3px 0 0;font-size:.78rem;font-weight:720;line-height:1.22}.review-appointment-expanded-row{gap:9px;display:grid}.review-appointment-expanded-heading{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;display:grid}.review-appointment-expanded-copy{min-width:0}.review-appointment-expanded-copy h3{color:#0f172a;overflow-wrap:anywhere;margin:0;font-size:.94rem;font-weight:880;line-height:1.16}.review-appointment-expanded-copy p{color:var(--booking-primary);overflow-wrap:anywhere;margin:3px 0 0;font-size:.82rem;font-weight:780;line-height:1.2}.review-appointment-expand{border:1.5px solid var(--booking-primary-border-strong);width:34px;height:34px;color:var(--booking-primary);background:#fff;border-radius:999px;place-items:center;padding:0;display:inline-grid}.review-appointment-expand:hover{background:var(--booking-primary-surface)}.review-appointment-expand svg{width:17px;height:17px}.review-appointment-full-details{color:#334155;border-top:1px solid #dbe6f5;gap:6px;padding-top:9px;font-size:.8rem;line-height:1.25;display:grid}.review-appointment-full-details span{overflow-wrap:anywhere;align-items:center;gap:5px;min-width:0;display:inline-flex}.review-appointment-full-details svg{color:#334155;flex:0 0 15px;width:15px;height:15px}.review-total-row{border-top:1px solid #dbe6f5;justify-content:space-between;align-items:baseline;gap:14px;padding-top:10px;display:flex}.review-total-row span{color:#0f172a;font-size:.95rem;font-weight:850}.review-total-row strong{color:#0f172a;white-space:nowrap;font-size:clamp(1.55rem,7vw,2.05rem);font-weight:920;line-height:1}.review-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.review-primary-action,.review-secondary-action{white-space:nowrap;border-radius:12px;justify-content:center;align-items:center;min-width:0;min-height:44px;padding:0 12px;font-size:.9rem;font-weight:850;line-height:1.1;display:inline-flex}.review-primary-action{background:var(--booking-primary);color:var(--booking-primary-text);box-shadow:0 14px 28px color-mix(in srgb, var(--booking-primary) 26%, transparent);border:0;gap:10px}.review-primary-action:hover{background:var(--booking-primary-hover)}.review-primary-action svg{flex:0 0 20px;width:20px;height:20px}.review-secondary-action{border:1.5px solid var(--booking-primary-border-strong);color:var(--booking-primary);background:#fff}.review-secondary-action:hover{background:var(--booking-primary-surface)}.review-booking-back:focus-visible,.review-appointment-expand:focus-visible,.review-primary-action:focus-visible,.review-secondary-action:focus-visible{outline:3px solid color-mix(in srgb, var(--booking-primary) 28%, transparent);outline-offset:3px}@media (width<=720px){.review-appointment-full-details{row-gap:7px}}@media (width<=520px){.booking-workspace-review{width:calc(100% - 28px);max-height:none}.booking-workspace .review-booking-card{border-radius:24px;gap:12px;padding:16px}.review-booking-header{grid-template-columns:auto minmax(0,1fr) auto;gap:12px}.review-booking-header h2{font-size:1.12rem}.review-booking-back{width:40px;height:40px}.review-booking-controls{gap:8px}.review-booking-status{gap:6px;min-height:30px;padding:0 9px 0 6px;font-size:.78rem}.review-appointment-card{border-radius:14px;padding:9px 10px}.review-appointment-compact-row,.review-appointment-expanded-heading{grid-template-columns:auto minmax(0,1fr) auto;gap:8px}.review-appointment-avatar{width:32px;height:32px;font-size:.7rem}.review-appointment-compact-copy h3{font-size:.82rem}.review-appointment-compact-copy p{font-size:.73rem}.review-appointment-expanded-copy h3{font-size:.84rem}.review-appointment-expanded-copy p{font-size:.75rem}.review-appointment-expand{width:30px;height:30px}.review-appointment-expand svg{width:15px;height:15px}.review-appointment-full-details{font-size:.76rem}.review-total-row strong{font-size:1.55rem}.review-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.booking-complete-actions{grid-template-columns:minmax(78px,.56fr) minmax(0,1.44fr);gap:8px}.review-primary-action,.review-secondary-action{min-height:40px;padding:0 8px;font-size:.72rem}.review-primary-action{gap:6px}.review-primary-action svg{flex-basis:16px;width:16px;height:16px}.booking-complete-ok,.booking-complete-special{white-space:nowrap;gap:6px;min-height:40px;padding:0 8px;font-size:.72rem}.booking-complete-ok svg,.booking-complete-special svg{flex-basis:16px;width:16px;height:16px}}.booking-widget-disabled,.booking-widget-empty{border:1px dashed color-mix(in srgb, var(--tool-border) 88%, transparent);background:color-mix(in srgb, var(--tool-bg) 72%, #fff);gap:4px}.add-people-widget{color:#0f172a;background:#fff;border:1px solid #d9e2f2eb;border-radius:22px;flex-direction:column;gap:0;width:100%;min-width:0;max-height:min(70dvh,640px);display:flex;overflow:hidden;box-shadow:0 18px 54px #0f172a2e}.booking-workspace .add-people-widget{background:#fff;border:1px solid #d9e2f2eb;border-radius:22px;max-height:min(60dvh,560px);margin:0;padding:0;box-shadow:0 18px 54px #0f172a2e}.add-people-drag-edge{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;flex:none;justify-content:center;align-items:center;padding:8px 0 4px;display:flex}.add-people-drag-edge:active{cursor:grabbing}.add-people-handle{background:#cbd5e1;border-radius:999px;width:64px;height:4px;margin:0}.add-people-header{gap:6px;padding:2px 28px 8px;display:grid}.add-people-heading-row{justify-content:space-between;align-items:center;gap:16px;min-width:0;display:flex}.add-people-heading-row h2{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;margin:0;font-size:clamp(1.22rem,4.8vw,1.55rem);font-weight:850;line-height:1.08;overflow:hidden}.add-people-actions{flex:none;justify-content:flex-end;display:flex}.add-people-step-controls{flex:none;align-items:center;gap:10px;display:flex}.add-people-step-pill,.appointment-type-step-pill{border:1.5px solid var(--booking-primary);color:var(--booking-primary);white-space:nowrap;border-radius:999px;flex:none;padding:4px 12px;font-size:.88rem;font-weight:760;line-height:1}.add-people-minimize{color:#0f172a;background:#fff;border:1.5px solid #d9e2f2;border-radius:999px;flex:0 0 42px;justify-content:center;align-items:center;width:42px;height:42px;min-height:42px;padding:0;display:inline-flex}.add-people-minimize svg{width:22px;height:22px}.add-people-add-person{border:1.5px solid var(--booking-primary);min-height:40px;color:var(--booking-primary);white-space:nowrap;background:#fff;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:.94rem;font-weight:800;display:inline-flex}.add-people-add-person:hover{background:var(--booking-primary-surface)}.add-people-add-person svg{width:18px;height:18px}.add-people-person-toolbar{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.selected-people-section{flex:0 75%;width:75%;min-width:0;max-width:calc(100% - 154px);position:relative;overflow:hidden}.selected-people-scroll{scrollbar-width:thin;scrollbar-color:#94a3b88c transparent;min-width:0;padding:1px 14px 2px 1px;overflow:auto hidden}.selected-people-scroll::-webkit-scrollbar{height:4px}.selected-people-scroll::-webkit-scrollbar-track{background:0 0}.selected-people-scroll::-webkit-scrollbar-thumb{background:#94a3b873;border-radius:999px}.selected-people-grid{flex-wrap:nowrap;align-items:center;gap:8px;width:max-content;min-width:max-content;display:flex}.selected-people-section.has-overflow:after{content:"";pointer-events:none;background:linear-gradient(90deg,#fff0,#fff 68%);width:36px;position:absolute;top:3px;bottom:6px;right:0}.selected-people-section.has-overflow:before{content:"";z-index:1;pointer-events:none;border-top:1.5px solid #94a3b8;border-right:1.5px solid #94a3b8;width:8px;height:8px;position:absolute;top:50%;right:3px;transform:translateY(-50%)rotate(45deg)}.person-chip{border:2px solid var(--booking-primary-border);color:#0f172a;background:#fff;border-radius:999px;flex:0 0 66px;justify-content:center;align-items:center;width:66px;height:66px;padding:0;font-size:.78rem;font-weight:760;transition:border-color .16s,background .16s,box-shadow .16s;display:inline-flex;box-shadow:0 2px 5px #0f172a0a}.person-chip:hover{border-color:var(--booking-primary-border-strong);background:#fff;box-shadow:0 8px 18px #0f172a14}.person-chip.active{border-color:var(--booking-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--booking-primary) 14%, transparent), 0 10px 22px color-mix(in srgb, var(--booking-primary) 12%, transparent);background:#fff}.avatar-wrap{flex:0 0 62px;justify-content:center;align-items:center;width:62px;height:62px;display:inline-flex;position:relative}.person-chip-avatar{width:100%;height:100%;color:var(--booking-primary);background:#fff;border-radius:999px;flex-direction:column;justify-content:center;align-items:center;gap:1px;font-weight:850;line-height:1.05;display:inline-flex;overflow:hidden}.person-chip-initials{color:var(--booking-primary);font-size:.96rem;font-weight:900;line-height:1}.selected-tick{color:#fff;background:#22c55e;border:2px solid #fff;border-radius:999px;justify-content:center;align-items:center;width:16px;height:16px;display:inline-flex;position:absolute;top:2px;right:2px;box-shadow:0 2px 6px #22c55e52}.selected-tick svg{stroke-width:3px;width:10px;height:10px}.person-chip-label{max-width:52px;color:var(--booking-primary-hover);text-overflow:ellipsis;white-space:nowrap;font-size:.55rem;font-weight:820;line-height:1.05;overflow:hidden}.add-people-form-card{border:1px solid #d9e2f2;border-radius:14px;flex-direction:column;flex:auto;gap:8px;min-height:0;margin:0 28px 8px;padding:10px 12px;display:flex;overflow-y:auto}.add-people-desktop-fields{flex-direction:column;gap:8px;min-width:0;display:flex}.add-people-mobile-detail-flow{display:none}.add-people-field-row{gap:10px;width:100%;display:flex}.add-people-field{color:#0f172a;flex:1 1 0;gap:4px;min-width:0;font-size:.82rem;font-weight:740;display:grid}.add-people-field input{color:#0f172a;width:100%;min-width:0;min-height:38px;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:0 12px;font-weight:620}.add-people-consent{color:#0f172a;align-items:center;gap:8px;font-size:.82rem;font-weight:700;display:inline-flex}.add-people-consent input{width:16px;height:16px;accent-color:var(--booking-primary)}.add-people-date-control{min-width:0;display:flex;position:relative}.add-people-date-control input{padding-right:42px}.add-people-date-button{color:#64748b;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;min-height:34px;padding:0;display:inline-flex;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.add-people-date-button svg{width:19px;height:19px}.add-people-date-field .MuiFormControl-root{width:100%}.add-people-date-field .MuiInputBase-root{color:#0f172a;min-height:38px;font:inherit;background:#fff;border-radius:10px;font-weight:620}.add-people-date-field .MuiInputBase-input{min-height:0;color:inherit;font:inherit;background:0 0;border:0;border-radius:0;padding:8px 0 8px 12px;font-weight:620}.add-people-date-field .MuiOutlinedInput-notchedOutline{border-color:#cbd5e1}.add-people-date-field .MuiOutlinedInput-root:hover .MuiOutlinedInput-notchedOutline,.add-people-date-field .MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline{border-width:1px;border-color:var(--booking-primary)!important}.add-people-date-field .MuiOutlinedInput-root.Mui-focused{outline-offset:2px;outline:3px solid color-mix(in srgb, var(--booking-primary) 25%, transparent)!important}.add-people-date-field .MuiIconButton-root{color:#64748b;padding:6px}.add-people-date-popper{z-index:1700}.add-people-date-paper{border-radius:16px!important;box-shadow:0 22px 64px #0f172a38!important}.add-people-date-paper.MuiDialog-paper{width:min(320px,100dvw - 32px)!important;min-width:0!important;max-width:calc(100dvw - 32px)!important;max-height:calc(100dvh - 32px)!important;margin:16px!important;overflow:hidden!important}.add-people-date-paper.MuiDialog-paper .MuiPickersLayout-root{width:100%;min-width:0;grid-template-columns:minmax(0,1fr)!important;grid-auto-columns:minmax(0,1fr)!important}.add-people-date-paper.MuiDialog-paper .MuiPickersToolbar-root,.add-people-date-paper.MuiDialog-paper .MuiPickersLayout-contentWrapper,.add-people-date-paper.MuiDialog-paper .MuiPickersLayout-actionBar{width:100%;min-width:0;grid-column:1/-1!important}.add-people-date-paper.MuiDialog-paper .MuiPickersToolbar-root{max-width:100%;padding-inline:20px}.add-people-date-paper.MuiDialog-paper .MuiDateCalendar-root{width:100%;min-width:0;max-width:320px}.add-people-date-paper.MuiDialog-paper .MuiPickersCalendarHeader-root{padding:0 10px 0 16px}.add-people-date-paper.MuiDialog-paper .MuiDayCalendar-header,.add-people-date-paper.MuiDialog-paper .MuiDayCalendar-weekContainer{justify-content:space-between;margin:0;padding:0 16px}.add-people-date-paper.MuiDialog-paper .MuiPickersDay-root,.add-people-date-paper.MuiDialog-paper .MuiPickerDay-root{margin:0}.add-people-date-paper.MuiDialog-paper .MuiDialogActions-root{flex-wrap:nowrap;gap:8px;padding:8px 12px 12px}.add-people-date-paper.MuiDialog-paper .MuiButton-root{min-width:64px;padding-inline:8px;font-weight:760;color:var(--booking-primary)!important}.add-people-date-paper.MuiDialog-paper .MuiDialogActions-root .MuiButton-root:hover,.add-people-date-paper.MuiDialog-paper .MuiDialogActions-root .MuiButton-root:focus-visible{background-color:var(--booking-primary-surface)!important;color:var(--booking-primary)!important}.add-people-date-paper .MuiPickersCalendarHeader-label,.add-people-date-paper .MuiPickersArrowSwitcher-button,.add-people-date-paper .MuiPickersCalendarHeader-switchViewButton,.add-people-date-paper .MuiIconButton-root{color:color-mix(in srgb, var(--chat-text) 72%, var(--booking-primary))!important}.add-people-date-paper .MuiPickersArrowSwitcher-button:hover,.add-people-date-paper .MuiPickersCalendarHeader-switchViewButton:hover,.add-people-date-paper .MuiIconButton-root:hover{background-color:var(--booking-primary-surface)!important;color:var(--booking-primary)!important}.add-people-date-paper .MuiPickersDay-root.MuiPickersDay-today,.add-people-date-paper .MuiPickerDay-root.MuiPickerDay-today{border-color:var(--booking-primary)!important}.add-people-date-paper .MuiPickersDay-root:not(.Mui-selected):hover,.add-people-date-paper .MuiPickersDay-root:not(.Mui-selected):focus,.add-people-date-paper .MuiPickerDay-root:not(.Mui-selected):hover,.add-people-date-paper .MuiPickerDay-root:not(.Mui-selected):focus,.add-people-date-paper .MuiPickersYear-yearButton:hover,.add-people-date-paper .MuiPickersYear-yearButton:focus,.add-people-date-paper .MuiPickersMonth-monthButton:hover,.add-people-date-paper .MuiPickersMonth-monthButton:focus{background-color:var(--booking-primary-surface)!important}.add-people-date-paper .MuiPickersDay-root.Mui-selected,.add-people-date-paper .MuiPickersDay-root.Mui-selected:hover,.add-people-date-paper .MuiPickersDay-root.Mui-selected:focus,.add-people-date-paper .MuiPickerDay-root.Mui-selected,.add-people-date-paper .MuiPickerDay-root.Mui-selected:hover,.add-people-date-paper .MuiPickerDay-root.Mui-selected:focus,.add-people-date-paper .MuiPickersYear-yearButton.Mui-selected,.add-people-date-paper .MuiPickersYear-yearButton.Mui-selected:hover,.add-people-date-paper .MuiPickersYear-yearButton.Mui-selected:focus,.add-people-date-paper .MuiPickersMonth-monthButton.Mui-selected,.add-people-date-paper .MuiPickersMonth-monthButton.Mui-selected:hover,.add-people-date-paper .MuiPickersMonth-monthButton.Mui-selected:focus{background-color:var(--booking-primary)!important;color:var(--booking-primary-text)!important}.add-people-date-paper .MuiPickersDay-root:focus-visible,.add-people-date-paper .MuiPickerDay-root:focus-visible,.add-people-date-paper .MuiPickersYear-yearButton:focus-visible,.add-people-date-paper .MuiPickersMonth-monthButton:focus-visible{outline-offset:2px;outline:2px solid color-mix(in srgb, var(--booking-primary) 34%, transparent)!important}.add-people-save{border:1.5px solid var(--booking-primary);min-height:40px;color:var(--booking-primary);white-space:nowrap;background:#fff;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-size:.92rem;font-weight:820;display:inline-flex}.add-people-save:hover{background:var(--booking-primary-surface)}.add-people-save svg{flex:none;width:18px;height:18px}.add-people-save span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.add-people-save:disabled{cursor:not-allowed;color:#94a3b8;background:#fff;border-color:#cbd5e1}.add-people-footer{border-top:1px solid #d9e2f2;flex-wrap:nowrap;flex:none;justify-content:flex-start;align-items:center;gap:12px;padding:8px 28px 10px;display:flex}.add-people-footer-actions{flex:0 auto;justify-content:flex-end;align-items:center;gap:10px;min-width:0;margin-left:auto;display:flex}.add-people-cancel,.add-people-add-another,.add-people-continue{border-radius:10px;min-height:40px;font-size:.98rem;font-weight:820}.add-people-cancel{color:var(--booking-primary);background:0 0;border:0;flex:none;padding:0 16px}.add-people-add-another{border:1.5px solid var(--booking-primary);color:var(--booking-primary);white-space:nowrap;background:#fff;justify-content:center;align-items:center;gap:8px;padding:0 16px;display:inline-flex}.add-people-add-another:hover{background:var(--booking-primary-surface)}.add-people-add-another svg{width:18px;height:18px}.add-people-continue{background:var(--booking-primary);min-width:168px;color:var(--booking-primary-text);box-shadow:0 10px 22px color-mix(in srgb, var(--booking-primary) 22%, transparent);border:0;padding:0 24px}.add-people-continue-wrapper{flex:none;display:inline-flex}.add-people-continue:disabled{cursor:not-allowed;background:var(--booking-disabled-surface);color:var(--booking-disabled-text);box-shadow:none}.add-people-minimize:focus-visible,.add-people-add-person:focus-visible,.person-chip:focus-visible,.add-people-field input:focus-visible,.add-people-date-button:focus-visible,.add-people-save:focus-visible,.add-people-cancel:focus-visible,.add-people-add-another:focus-visible,.add-people-continue:focus-visible{outline:3px solid color-mix(in srgb, var(--booking-primary) 25%, transparent);outline-offset:2px}.clinic-selector-widget{color:#0f172a;background:#fff;border:1px solid #d9e2f2eb;border-radius:0 0 22px 22px;flex-direction:column;gap:0;width:100%;min-width:0;display:flex;overflow:hidden;box-shadow:0 16px 42px #0f172a2e}.booking-workspace .clinic-selector-widget{background:#fff;border-radius:0 0 22px 22px;margin:0;padding:0}.clinic-selector-handle{background:#cbd5e1;border-radius:999px;width:64px;height:6px;margin:10px auto 8px}.clinic-selector-header{align-items:center;gap:12px;padding:0 28px 8px;display:flex}.clinic-selector-header h2{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;margin:0;font-size:clamp(1.1rem,4.7vw,1.45rem);font-weight:850;line-height:1.08;overflow:hidden}.clinic-selector-title-copy{font-weight:650}.clinic-selector-title-person{font-weight:850}.clinic-selector-step-pill{border:1.5px solid var(--booking-primary);color:var(--booking-primary);white-space:nowrap;border-radius:999px;flex:none;padding:4px 12px;font-size:.88rem;font-weight:760;line-height:1}.clinic-selector-helper{color:#64748b;align-items:center;gap:10px;padding:0 28px 10px;font-size:.95rem;font-weight:720;display:flex}.clinic-selector-helper svg{width:20px;height:20px;color:var(--booking-primary);flex:none}.clinic-selector-context-row{justify-content:space-between;align-items:center;gap:12px;padding:0 28px 10px;display:flex}.clinic-selector-person-strip{flex:auto}.clinic-selector-same-clinic{color:#475569;white-space:nowrap;background:#fff;border:1px solid #d9e2f2;border-radius:999px;flex:none;align-items:center;gap:7px;min-height:30px;padding:0 10px;font-size:.74rem;font-weight:760;display:inline-flex}.clinic-selector-same-clinic input{width:15px;height:15px;accent-color:var(--booking-primary);margin:0}.clinic-selector-same-clinic:focus-within{outline:3px solid color-mix(in srgb, var(--booking-primary) 22%, transparent);outline-offset:2px}.clinic-selector-list{gap:8px;padding:0 28px 14px;display:grid}.clinic-selector-row{background:#fff;border:1px solid #d9e2f2;border-radius:12px;align-items:center;gap:12px;width:100%;min-height:74px;transition:border-color .16s,background-color .16s,box-shadow .16s;display:flex;position:relative}.booking-info-panel{z-index:24;background:#fff;border:1px solid #d9e2f2;border-radius:12px;align-items:stretch;gap:10px;padding:10px 36px 10px 10px;display:flex;box-shadow:0 16px 34px #0f172a29}.clinic-selector-info-panel,.time-selector-practitioner-info-panel{width:min(360px,100% - 64px);position:absolute;right:52px}.clinic-selector-info-panel{top:calc(100% - 4px)}.time-selector-practitioner-info-panel{width:min(360px,100% - 16px);top:calc(100% + 8px);right:8px}.booking-info-photo{background:var(--booking-primary-surface);width:74px;height:64px;color:var(--booking-primary);object-fit:cover;border-radius:10px;flex:0 0 74px;overflow:hidden}.booking-info-photo-fallback{justify-content:center;align-items:center;display:inline-flex}.booking-info-photo-fallback svg{width:30px;height:30px}.booking-info-copy{align-content:start;gap:5px;min-width:0;display:grid}.booking-info-copy strong,.booking-info-copy span{text-overflow:ellipsis;min-width:0;overflow:hidden}.booking-info-copy strong{color:#0f172a;white-space:nowrap;font-size:.9rem;font-weight:840;line-height:1.15}.booking-info-copy span{color:#475569;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.78rem;font-weight:620;line-height:1.3;display:-webkit-box}.booking-info-learn-more{background:var(--booking-primary-surface);min-height:28px;color:var(--booking-primary);border:0;border-radius:999px;justify-self:start;padding:0 10px;font-size:.74rem;font-weight:820}.booking-info-learn-more:hover,.booking-info-learn-more:focus-visible{background:var(--booking-primary-tint);outline:2px solid color-mix(in srgb, var(--booking-primary) 28%, transparent);outline-offset:2px}.booking-info-close{color:#64748b;background:0 0;border:0;border-radius:999px;place-items:center;width:24px;height:24px;min-height:24px;padding:0;display:grid;position:absolute;top:6px;right:6px}.booking-info-close:hover,.booking-info-close:focus-visible{color:#0f172a;outline:2px solid color-mix(in srgb, var(--booking-primary) 28%, transparent);outline-offset:2px;background:#f1f5f9}.booking-info-close svg{width:16px;height:16px}.clinic-selector-row.selected{border-color:var(--booking-primary);background:var(--booking-primary-surface);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--booking-primary) 18%, transparent)}.clinic-selector-row-main{min-width:0;min-height:72px;color:inherit;text-align:left;background:0 0;border:0;flex:auto;align-items:center;gap:12px;padding:10px 0 10px 14px;display:flex}.clinic-selector-icon-slot{width:44px;height:44px;color:var(--booking-primary);border-radius:999px;flex:0 0 44px;justify-content:center;align-items:center;display:inline-flex}.clinic-selector-icon-slot svg{width:32px;height:32px}.clinic-selector-content-slot{flex:auto;gap:4px;min-width:0;display:grid}.clinic-selector-content-slot strong,.clinic-selector-content-slot small{text-overflow:ellipsis;min-width:0;overflow:hidden}.clinic-selector-content-slot strong{color:#0f172a;white-space:nowrap;font-size:1rem;font-weight:840;line-height:1.18}.clinic-selector-content-slot small{color:#64748b;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.9rem;font-weight:620;line-height:1.25;display:-webkit-box}.clinic-selector-actions-slot{flex:none;align-items:center;gap:10px;padding-right:14px;display:flex}.clinic-selector-info-button,.clinic-selector-radio{background:0 0;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex}.clinic-selector-info-button{width:36px;height:36px;min-height:36px;color:var(--booking-primary);border:0;flex:0 0 36px}.clinic-selector-info-button svg{width:25px;height:25px}.clinic-selector-radio{border:2px solid #94a3b8;flex:0 0 32px;width:32px;height:32px;min-height:32px}.clinic-selector-radio span{background:0 0;border-radius:999px;width:15px;height:15px}.clinic-selector-radio.selected{border-color:var(--booking-primary)}.clinic-selector-radio.selected span{background:var(--booking-primary)}.clinic-selector-row-main:focus-visible,.clinic-selector-info-button:focus-visible,.clinic-selector-radio:focus-visible,.clinic-selector-cancel:focus-visible,.clinic-selector-continue:focus-visible{outline:3px solid color-mix(in srgb, var(--booking-primary) 25%, transparent);outline-offset:2px}.clinic-selector-footer{border-top:1px solid #d9e2f2;justify-content:space-between;align-items:center;gap:16px;padding:12px 28px 16px;display:flex}.clinic-selector-cancel,.clinic-selector-continue{border-radius:10px;min-height:44px;font-size:.98rem;font-weight:820}.clinic-selector-cancel{color:var(--booking-primary);background:0 0;border:0;padding:0 16px}.clinic-selector-continue{background:var(--booking-primary);min-width:168px;color:var(--booking-primary-text);box-shadow:0 10px 22px color-mix(in srgb, var(--booking-primary) 22%, transparent);border:0;padding:0 24px}.clinic-selector-continue:disabled{cursor:not-allowed;background:var(--booking-disabled-surface);color:var(--booking-disabled-text);box-shadow:none}.time-selector-widget{color:#0f172a;background:#fff;border:1px solid #d9e2f2eb;border-radius:0 0 22px 22px;flex-direction:column;gap:0;width:100%;min-width:0;display:flex;overflow:hidden;box-shadow:0 16px 42px #0f172a2e}.booking-workspace .time-selector-widget{background:#fff;border-radius:0 0 22px 22px;margin:0;padding:0}.time-selector-handle{background:#cbd5e1;border-radius:999px;width:64px;height:6px;margin:10px auto 8px}.time-selector-header{border-bottom:1px solid #e2e8f0;align-items:center;gap:12px;padding:0 28px 10px;display:flex}.time-selector-header h2{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;margin:0;font-size:clamp(1.1rem,4.7vw,1.45rem);font-weight:850;line-height:1.08;overflow:hidden}.time-selector-step-pill{border:1.5px solid var(--booking-primary);color:var(--booking-primary);white-space:nowrap;border-radius:999px;flex:none;padding:4px 12px;font-size:.88rem;font-weight:760;line-height:1}.time-selector-helper{color:#0f172a;align-items:center;gap:10px;padding:12px 28px 10px;font-size:.95rem;font-weight:720;display:flex}.time-selector-helper svg{width:20px;height:20px;color:var(--booking-primary);flex:none}.time-selector-section{gap:7px;padding:0 28px 10px;display:grid}.time-selector-label{color:#0f172a;font-size:.92rem;font-weight:840;line-height:1.2}.time-selector-practitioner-row{border:1.5px solid var(--booking-primary-border);background:#fff;border-radius:12px;align-items:center;gap:12px;width:100%;min-height:60px;padding:8px 12px;display:flex;position:relative}.time-selector-avatar{background:var(--booking-primary-surface);width:44px;height:44px;color:var(--booking-primary);border-radius:999px;flex:0 0 44px;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.time-selector-avatar svg{width:28px;height:28px}.time-selector-avatar img{object-fit:cover;width:100%;height:100%}.time-selector-practitioner-select{appearance:none;color:#0f172a;min-width:0;font:inherit;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;flex:auto;padding:0;font-size:1rem;font-weight:820;line-height:1.2;overflow:hidden}.time-selector-practitioner-select:focus{outline:0}.time-selector-practitioner-info{color:#64748b;background:0 0;border:0;border-radius:999px;flex:0 0 32px;justify-content:center;align-items:center;width:32px;height:32px;min-height:32px;padding:0;display:inline-flex}.time-selector-practitioner-info svg{width:21px;height:21px}.time-selector-select-chevron{color:#0f172a;pointer-events:none;flex:0 0 24px;width:24px;height:24px}.time-selector-date-row{align-items:center;gap:10px;padding:10px 28px 14px;display:flex}.time-selector-date-nav,.time-selector-go-date,.time-selector-date-pill,.time-selector-slot-nav,.time-selector-slot{color:#0f172a;background:#fff;border:1px solid #d9e2f2;border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.time-selector-date-nav{color:#0f172a;flex:0 0 52px;width:52px;height:42px;min-height:42px}.time-selector-date-nav svg,.time-selector-slot-nav svg{width:22px;height:22px}.time-selector-date-nav:disabled,.booking-date-calendar-nav-button:disabled,.booking-date-calendar-day:disabled{opacity:.42;cursor:not-allowed}.time-selector-date-pill{background:var(--booking-primary-surface);min-width:0;height:42px;color:var(--booking-primary);border-color:#0000;flex:auto;gap:8px;padding:0 14px;font-weight:760}.time-selector-date-pill span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.time-selector-date-pill svg,.time-selector-go-date svg{flex:none;width:20px;height:20px}.time-selector-go-date{border-color:var(--booking-primary);height:42px;color:var(--booking-primary);flex:none;gap:8px;padding:0 16px;font-weight:780}.time-selector-slots-section{padding-bottom:14px}.time-selector-slot-browser{align-items:center;gap:10px;width:100%;display:flex}.time-selector-slot-nav{color:#0f172a;flex:0 0 44px;width:44px;height:52px;min-height:52px}.time-selector-slot-nav:disabled{cursor:default;opacity:.32}.time-selector-slot-viewport{scrollbar-width:none;flex:auto;min-width:0;min-height:52px;position:relative;overflow:auto hidden}.time-selector-slot-viewport::-webkit-scrollbar{display:none}.time-selector-slot-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.time-selector-slot{color:#0f172a;white-space:nowrap;min-width:0;height:40px;min-height:40px;padding:0 8px;font-size:.95rem;font-weight:720}.time-selector-slot.selected{border-color:var(--booking-primary);background:var(--booking-primary-surface);color:var(--booking-primary);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--booking-primary) 12%, transparent)}.time-selector-slot.recommended{color:#047857;background:#ecfdf5;border-color:#10b981;box-shadow:inset 0 0 0 1px #10b98138,0 0 0 3px #10b9811a}.time-selector-slot.recommended.selected{border-color:var(--booking-primary);background:linear-gradient(135deg, var(--booking-primary-surface) 0%, #ecfdf5 100%);color:var(--booking-primary-hover)}.time-selector-slot:disabled{cursor:not-allowed;opacity:.46}.time-selector-slot-state{color:#334155;text-align:center;background:#f8fafc;border:1px solid #d7dfec;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:52px;padding:0 14px;font-size:.92rem;font-weight:760;line-height:1.25;display:flex}.time-selector-empty{color:#334155;box-shadow:inset 0 0 0 1px #0f172a08}.time-selector-loading-dots{align-items:center;gap:4px;min-width:28px;display:inline-flex}.time-selector-loading-dots span{background:var(--booking-primary);opacity:.38;border-radius:999px;width:6px;height:6px;animation:.9s ease-in-out infinite timeSelectorLoadingDot}.time-selector-loading-dots span:nth-child(2){animation-delay:.14s}.time-selector-loading-dots span:nth-child(3){animation-delay:.28s}.time-selector-loading-copy{--shimmer-base:#64748b;--shimmer-mid:color-mix(in srgb, var(--booking-primary) 42%, #64748b);--shimmer-highlight:color-mix(in srgb, var(--booking-primary) 30%, #fff)}.time-selector-footer{border-top:1px solid #d9e2f2;justify-content:space-between;align-items:center;gap:16px;padding:12px 28px 16px;display:flex}.time-selector-cancel,.time-selector-continue{border-radius:10px;min-height:44px;font-size:.98rem;font-weight:820}.time-selector-cancel{color:var(--booking-primary);background:0 0;border:0;padding:0 16px}.time-selector-continue{background:var(--booking-primary);min-width:168px;color:var(--booking-primary-text);box-shadow:0 10px 22px color-mix(in srgb, var(--booking-primary) 22%, transparent);border:0;padding:0 24px}.time-selector-continue:disabled{cursor:not-allowed;background:var(--booking-disabled-surface);color:var(--booking-disabled-text);box-shadow:none}.time-selector-person-chip:focus-visible,.time-selector-mode:focus-visible,.time-selector-clinic-chip:focus-visible,.time-selector-practitioner-row:focus-within,.time-selector-practitioner-info:focus-visible,.time-selector-date-nav:focus-visible,.time-selector-go-date:focus-visible,.time-selector-date-pill:focus-visible,.time-selector-slot-nav:focus-visible,.time-selector-slot:focus-visible,.time-selector-cancel:focus-visible,.time-selector-continue:focus-visible{outline:3px solid color-mix(in srgb, var(--booking-primary) 25%, transparent);outline-offset:2px}.time-selector-people-strip{scrollbar-width:none;align-items:center;gap:9px;padding:12px 28px 8px;display:flex;overflow-x:auto}.time-selector-people-strip::-webkit-scrollbar{display:none}.time-selector-person-chip{color:#0f172a;background:#fff;border:1px solid #d9e2f2;border-radius:12px;flex:none;align-items:center;gap:8px;max-width:150px;min-height:36px;padding:4px 10px 4px 5px;font-size:.9rem;font-weight:760;display:inline-flex}.time-selector-person-chip:not(.active){width:32px;max-width:32px;min-height:32px;box-shadow:none;background:0 0;border:0;justify-content:center;gap:0;padding:0}.time-selector-person-chip.active{border-color:var(--booking-primary);background:var(--booking-primary-surface);color:#0f172a;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--booking-primary) 8%, transparent)}.time-selector-person-chip.complete{color:#64748b;background:#f8fafc}.time-selector-person-avatar-wrap{flex:0 0 28px;place-items:center;width:28px;height:28px;display:inline-grid;position:relative}.time-selector-person-avatar{background:var(--booking-primary-tint);width:28px;height:28px;color:var(--booking-primary);border-radius:999px;place-items:center;font-size:.68rem;font-weight:860;line-height:1;display:inline-grid}.time-selector-person-complete-badge{color:#fff;background:#22c55e;border:1.5px solid #fff;border-radius:999px;place-items:center;width:13px;height:13px;display:inline-grid;position:absolute;top:-3px;right:-3px;box-shadow:0 1px 4px #22c55e4d}.time-selector-person-complete-badge svg{stroke-width:3px;width:8px;height:8px}.time-selector-person-chip.active .time-selector-person-avatar{background:var(--booking-primary);color:var(--booking-primary-text)}.time-selector-person-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.time-selector-person-check{color:#94a3b8;flex:0 0 18px;width:18px;height:18px}.time-selector-mode-control{background:#fff;border:1px solid #d9e2f2;border-radius:12px;margin:8px 28px 10px;display:flex;overflow:hidden}.time-selector-mode{color:#0f172a;background:#fff;border:0;border-right:1px solid #d9e2f2;flex:1 1 0;justify-content:center;align-items:center;gap:8px;min-width:0;min-height:40px;padding:0 8px;font-size:.86rem;font-weight:740;display:inline-flex}.time-selector-mode:last-child{border-right:0}.time-selector-mode.active{background:var(--booking-primary);color:var(--booking-primary-text)}.time-selector-mode:disabled{cursor:not-allowed;background:var(--booking-disabled-surface);color:var(--booking-disabled-text)}.time-selector-mode svg{flex:0 0 18px;width:18px;height:18px}.time-selector-mode span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.time-selector-clinic-date-row{align-items:center;gap:8px;padding:0 28px 10px;display:flex}.time-selector-clinic-chip{color:#0f172a;background:#fff;border:1px solid #d9e2f2;border-radius:10px;flex:auto;align-items:center;gap:8px;min-width:0;height:42px;padding:0 10px;font-size:.9rem;font-weight:720;display:inline-flex}.time-selector-clinic-chip>svg:first-child{width:22px;height:22px;color:var(--booking-primary);flex:0 0 22px}.time-selector-clinic-chip span{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.time-selector-chip-info{color:#64748b;flex:0 0 18px;width:18px;height:18px}.time-selector-clinic-date-row .time-selector-date-pill{background:var(--booking-primary-surface);border-color:#d9e2f2;flex:0 190px}.time-selector-widget>.time-selector-practitioner-row{width:auto;min-height:48px;margin:0 28px 10px;padding:6px 10px}.time-selector-widget>.time-selector-practitioner-row .time-selector-avatar{flex-basis:34px;width:34px;height:34px}.time-selector-widget>.time-selector-practitioner-row .time-selector-avatar svg{width:22px;height:22px}.time-selector-widget>.time-selector-slot-browser{padding:0 28px 10px}.time-selector-slot-list{align-items:center;gap:8px;min-width:max-content;display:flex}.time-selector-slot-list>.time-selector-slot{flex:0 0 72px;min-width:72px;display:inline-flex}.time-selector-slot-tooltip{z-index:3000;color:#fff;letter-spacing:0;text-align:center;pointer-events:none;background:#0f172a;border-radius:8px;width:max-content;padding:8px 10px;font-size:.78rem;font-weight:650;line-height:1.35;animation:.12s both slotTooltipIn;position:fixed;box-shadow:0 12px 30px #0f172a47}.time-selector-slot-tooltip.top{transform:translate(-50%,-100%)}.time-selector-slot-tooltip.bottom{transform:translate(-50%)}.time-selector-slot-tooltip:after{content:"";background:#0f172a;width:10px;height:10px;position:absolute;left:50%;transform:translate(-50%)rotate(45deg)}.time-selector-slot-tooltip.top:after{bottom:-4px}.time-selector-slot-tooltip.bottom:after{top:-4px}.time-selector-widget>.time-selector-slot-browser .time-selector-slot-nav{height:44px;min-height:44px}.time-selector-selected-summary{border:1px solid var(--booking-primary-border);background:var(--booking-primary-surface);color:#0f172a;border-radius:10px;align-items:center;gap:8px;min-height:42px;margin:0 28px 10px;padding:0 10px;font-size:.84rem;display:flex}.time-selector-summary-label{color:var(--booking-primary);flex:none;font-weight:780}.time-selector-summary-content{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-weight:650;overflow:hidden}.time-selector-summary-status{border:6px solid var(--booking-primary);border-radius:999px;flex:0 0 20px;width:20px;height:20px;box-shadow:inset 0 0 0 3px #fff}.time-selector-validation{color:#b91c1c;margin:0 28px 10px;font-size:.82rem;font-weight:720}@media (width<=720px){.booking-workspace-people{border-radius:22px;width:100%;max-height:min(68dvh,520px);margin-top:0}.add-people-widget,.booking-workspace .add-people-widget{max-height:min(68dvh,520px)}.add-people-header{gap:12px;padding:2px 18px 14px}.add-people-heading-row{flex-wrap:wrap;gap:10px}.add-people-heading-row h2{font-size:1.18rem}.add-people-actions{justify-content:flex-end;width:auto}.add-people-step-controls{gap:8px;margin-left:auto}.add-people-step-pill,.appointment-type-step-pill{padding:4px 9px;font-size:.78rem}.add-people-minimize{flex-basis:40px;width:40px;height:40px;min-height:40px}.add-people-add-person{min-height:38px;padding:0 13px;font-size:.88rem}.add-people-person-toolbar{gap:6px}.selected-people-section{flex-basis:75%;width:75%;max-width:calc(100% - 132px)}.selected-people-scroll{padding:2px 16px 5px 1px}.selected-people-grid{gap:8px}.person-chip{flex-basis:68px;width:68px;height:68px;font-size:.74rem}.avatar-wrap,.person-chip-avatar{flex-basis:64px;width:64px;height:64px}.person-chip-initials{font-size:.95rem}.person-chip-label{max-width:52px;font-size:.5rem}.add-people-form-card{gap:10px;margin:0 18px 12px;padding:12px}.add-people-field-row{gap:10px}.add-people-field{font-size:.8rem}.add-people-field input{border-radius:9px;min-height:38px;padding-inline:10px}.add-people-date-field .MuiInputBase-root{border-radius:9px;min-height:38px}.add-people-date-field .MuiInputBase-input{padding:8px 0 8px 10px}.add-people-save{flex:0 auto;min-width:0;max-width:156px;min-height:38px;padding:0 12px;font-size:.86rem}.add-people-footer{padding:10px 18px calc(12px + env(safe-area-inset-bottom));flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:8px}.add-people-footer-actions{flex:auto;justify-content:flex-end;gap:8px;width:auto;min-width:0;margin-left:auto}.add-people-cancel{order:0}.add-people-add-another{flex:auto;min-width:0;max-width:170px;min-height:38px;padding:0 12px;font-size:.88rem}.add-people-add-another span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.add-people-continue{flex:0 0 128px;order:0;min-width:128px}.booking-workspace-clinic,.booking-workspace-time{border-radius:0 0 22px 22px;width:100%;margin-top:0}.clinic-selector-header{gap:8px;padding:0 18px 8px}.clinic-selector-header h2{font-size:1.12rem}.clinic-selector-step-pill{padding:4px 9px;font-size:.78rem}.clinic-selector-helper{padding:0 18px 8px;font-size:.86rem}.clinic-selector-context-row{gap:8px;padding:0 18px 8px}.clinic-selector-same-clinic{min-height:28px;padding-inline:8px;font-size:.68rem}.clinic-selector-list{gap:8px;padding:0 18px 12px}.clinic-selector-row{gap:8px;min-height:68px}.clinic-selector-row-main{gap:10px;min-height:66px;padding:9px 0 9px 12px}.clinic-selector-icon-slot{flex-basis:38px;width:38px;height:38px}.clinic-selector-icon-slot svg{width:28px;height:28px}.clinic-selector-content-slot strong{font-size:.92rem}.clinic-selector-content-slot small{font-size:.8rem}.clinic-selector-actions-slot{gap:6px;padding-right:12px}.clinic-selector-info-button{flex-basis:32px;width:32px;height:32px;min-height:32px}.clinic-selector-info-button svg{width:22px;height:22px}.clinic-selector-radio{flex-basis:28px;width:28px;height:28px;min-height:28px}.clinic-selector-radio span{width:13px;height:13px}.clinic-selector-info-panel,.time-selector-practitioner-info-panel{width:calc(100% - 20px);right:10px}.booking-info-panel{gap:8px;padding:9px 32px 9px 9px}.booking-info-photo{flex-basis:58px;width:58px;height:56px}.booking-info-copy strong{font-size:.84rem}.booking-info-copy span{font-size:.72rem}.clinic-selector-footer{padding:10px 18px calc(12px + env(safe-area-inset-bottom))}.clinic-selector-continue{min-width:142px}.time-selector-header,.booking-workspace-complete>.booking-workspace-header{gap:8px;padding:0 18px 8px}.time-selector-header h2,.booking-workspace-complete>.booking-workspace-header h2{font-size:1.12rem}.time-selector-step-pill{padding:4px 9px;font-size:.78rem}.booking-workspace-complete>.booking-workspace-body{padding:18px}.time-selector-helper{padding:10px 18px 8px;font-size:.86rem}.time-selector-people-strip{padding:10px 18px 6px}.time-selector-person-chip{max-width:128px;min-height:34px;font-size:.82rem}.time-selector-person-chip:not(.active){width:30px;max-width:30px}.time-selector-person-avatar-wrap{flex-basis:26px;width:26px;height:26px}.time-selector-person-avatar{width:26px;height:26px;font-size:.64rem}.time-selector-mode-control{margin:7px 18px 9px}.time-selector-mode{gap:5px;min-height:38px;padding-inline:6px;font-size:.78rem}.time-selector-mode svg{width:16px;height:16px}.time-selector-section{padding:0 18px 8px}.time-selector-practitioner-row{gap:10px;min-height:56px;padding:7px 10px}.time-selector-avatar{flex-basis:38px;width:38px;height:38px}.time-selector-practitioner-select{font-size:.92rem}.time-selector-date-row{gap:8px;padding:8px 18px 12px}.time-selector-clinic-date-row{gap:7px;padding:0 18px 9px}.time-selector-clinic-chip{height:40px;padding-inline:9px;font-size:.82rem}.time-selector-clinic-chip>svg:first-child{flex-basis:19px;width:19px;height:19px}.time-selector-date-nav{flex-basis:44px;width:44px;height:40px}.time-selector-date-pill{height:40px;padding:0 10px;font-size:.88rem}.time-selector-clinic-date-row .time-selector-date-pill{flex-basis:156px}.time-selector-go-date{padding:0 12px;font-size:.88rem}.time-selector-slot-browser{gap:8px}.time-selector-widget>.time-selector-practitioner-row{margin:0 18px 9px}.time-selector-slot-nav{flex-basis:40px;width:40px;height:42px;min-height:42px}.time-selector-widget>.time-selector-slot-browser{padding:0 18px 9px}.time-selector-slot-list{gap:7px}.time-selector-slot{height:38px;min-height:38px;font-size:.86rem}.time-selector-selected-summary{min-height:40px;margin:0 18px 9px;font-size:.78rem}.time-selector-footer{padding:10px 18px calc(12px + env(safe-area-inset-bottom))}.time-selector-continue{min-width:142px}}@media (width<=640px){.booking-workspace-people,.add-people-widget,.booking-workspace .add-people-widget{max-height:min(54dvh,430px)}.add-people-header{gap:8px;padding:2px 16px 8px}.add-people-heading-row{flex-wrap:nowrap;gap:8px}.add-people-heading-row h2{font-size:1.26rem}.add-people-step-controls{gap:7px}.add-people-minimize{flex-basis:38px;width:38px;height:38px;min-height:38px}.add-people-form-card{border:0;border-radius:0;gap:8px;margin:0 16px 4px;padding:0}.add-people-mobile-detail-flow{gap:9px;min-width:0;display:grid}.add-people-desktop-fields{display:none}.person-detail-chip-row{scrollbar-width:none;align-items:center;gap:8px;min-width:0;padding:2px max(1px,50% - 54px) 4px 1px;display:flex;overflow:auto hidden}.person-detail-chip-row::-webkit-scrollbar{display:none}.person-detail-chip{color:#5f6877;white-space:nowrap;background:#fff;border:1px solid #d8dde5;border-radius:999px;flex:none;justify-content:center;align-items:center;gap:7px;max-width:180px;height:40px;min-height:40px;padding:0 12px;font-size:.86rem;font-weight:680;line-height:1;display:inline-flex;box-shadow:0 1px 3px #0f172a0a}.person-detail-chip.completed:not(.active){border-color:var(--booking-primary-border-strong);color:color-mix(in srgb, var(--booking-primary) 78%, #0f172a);font-weight:780}.person-detail-chip.active{border:2px solid var(--booking-primary);background:var(--booking-primary-surface);color:var(--booking-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--booking-primary) 10%, transparent);padding-inline:11px;font-weight:900}.person-detail-chip svg{flex:0 0 17px;width:17px;height:17px}.person-detail-chip span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.person-detail-active-panel{gap:9px;min-width:0;padding:0 0 2px;display:grid}.person-detail-field-row{flex-direction:column;gap:9px}.person-detail-active-panel .add-people-field{font-size:.82rem}.person-detail-active-panel .add-people-field>span{font-weight:860}.person-detail-active-panel[data-person-detail-panel=postcode] .add-people-field>span{color:var(--booking-primary);font-weight:920}.person-detail-active-panel .add-people-field input,.person-detail-active-panel .add-people-date-field .MuiInputBase-root{border-radius:9px;min-height:42px}.person-detail-active-panel .add-people-date-field .MuiInputBase-input{padding-block:10px}.person-detail-active-panel .add-people-consent{font-size:.78rem}.add-people-footer{padding:6px 16px calc(10px + env(safe-area-inset-bottom));border-top:0}.add-people-cancel{min-height:38px;padding-inline:8px}.add-people-continue{border-radius:10px;flex:none;min-width:104px;min-height:40px;padding-inline:18px}}@media (width<=430px){.add-people-field-row{flex-direction:column;gap:8px}.appointment-type-widget .appointment-type-footer{gap:8px;margin-inline:0;padding-inline:14px}.appointment-type-cancel{min-width:0;padding-inline:8px}.appointment-type-continue{flex:none;min-width:124px;padding-inline:16px}.appointment-type-row{grid-template-columns:30px minmax(0,1fr) auto}.appointment-type-row .booking-option-info.booking-more-info-button{min-width:62px;margin-right:6px;padding-inline:6px}.time-selector-go-date span{display:none}.time-selector-go-date{width:44px;padding:0}.time-selector-mode span{text-align:center;text-overflow:clip;white-space:normal;font-size:.72rem;line-height:1.05;overflow:visible}.time-selector-clinic-chip .time-selector-chip-info{display:none}.time-selector-clinic-date-row{flex-wrap:wrap;align-items:stretch}.time-selector-clinic-chip{flex-basis:100%;width:100%}.time-selector-clinic-date-row .time-selector-date-nav{flex:0 0 42px;width:42px}.time-selector-clinic-date-row .time-selector-date-pill{flex:calc(100% - 100px);min-width:0}.time-selector-date-pill svg{width:17px;height:17px}.time-selector-date-pill span{font-size:.78rem}.time-selector-slot-list>.time-selector-slot{flex-basis:66px;min-width:66px}}.activity-row{margin-top:2px}.activity-avatar{opacity:.72}.thinking-indicator,.search-activity{align-items:center;gap:9px;min-height:34px;display:inline-flex}.thinking-indicator{max-width:min(760px,82%);padding:2px 0}.search-activity{border:1px solid color-mix(in srgb, var(--tool-border) 72%, transparent);background:color-mix(in srgb, var(--tool-bg) 82%, transparent);width:fit-content;color:var(--tool-text);border-radius:999px;margin:3px 0;padding:6px 10px;font-size:.9rem;font-weight:720}.search-activity-complete .activity-pulse{box-shadow:none;opacity:.72;animation:none}.activity-pulse{background:var(--tool-accent);width:7px;height:7px;box-shadow:0 0 0 0 color-mix(in srgb, var(--tool-accent) 30%, transparent);border-radius:999px;flex:none;animation:1.5s ease-out infinite activityPulse}.activity-phrases{color:#64748b;align-items:center;min-width:min(260px,68vw);min-height:1.35em;font-weight:720;line-height:1.35;display:inline-grid;position:relative}.activity-phrase{opacity:0;white-space:nowrap;animation-name:activityPhraseCycle,shimmerSweep;animation-timing-function:ease,linear;animation-iteration-count:infinite,infinite;animation-duration:inherit, 1.55s;grid-area:1/1}.shimmer-text{color:#0000;--shimmer-base:#64748b;--shimmer-mid:#94a3b8;--shimmer-highlight:#cbd5e1;background:linear-gradient(100deg, var(--shimmer-base) 0%, var(--shimmer-mid) 34%, var(--shimmer-highlight) 50%, var(--shimmer-mid) 66%, var(--shimmer-base) 100%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;animation:1.55s linear infinite shimmerSweep}.activity-phrase.shimmer-text{animation-name:activityPhraseCycle,shimmerSweep;animation-timing-function:ease,linear;animation-iteration-count:infinite,infinite;animation-fill-mode:none,none}.tool-card .shimmer-text{--shimmer-base:var(--tool-text);--shimmer-mid:color-mix(in srgb, var(--tool-text) 64%, #fff);--shimmer-highlight:var(--tool-accent)}@keyframes shimmerSweep{0%{background-position:140% 0}to{background-position:-80% 0}}@keyframes ambientBrandingFrame{0%{opacity:0}5%,86.9565%{opacity:1}to{opacity:0}}@keyframes sessionTypeLoop{0%,8%{width:0}36%,92%{width:100%}to{width:0}}@keyframes sessionCursorLoop{0%,36%{border-color:currentColor}37%,to{border-color:#0000}}@keyframes sessionShimmerVisibility{0%,36%{opacity:0}42%,92%{opacity:1}to{opacity:0}}@keyframes activityPhraseCycle{0%,24%{opacity:1;transform:translateY(0)}30%,to{opacity:0;transform:translateY(-4px)}}@keyframes activityPulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--tool-accent) 30%, transparent);transform:scale(.92)}70%,to{transform:scale(1);box-shadow:0 0 0 8px #0000}}.thread-footer{z-index:1;margin-inline:auto;background:0 0;width:100%;margin-top:auto;padding-top:0;position:sticky;bottom:0}.firebase-quick-replies{background:0 0;flex-wrap:wrap;justify-content:center;gap:8px;padding:10px 16px 8px;display:flex}.firebase-quick-reply{color:#fff;min-height:34px;font-family:var(--input-font-family);font-size:var(--base-font-size);font-weight:var(--input-font-weight);font-style:var(--input-font-style);-webkit-text-decoration:var(--input-text-decoration);text-decoration:var(--input-text-decoration);border:0;border-radius:999px;padding:7px 14px;line-height:1.2;box-shadow:0 1px 2px #10182829}.firebase-quick-reply:hover,.firebase-quick-reply:focus-visible{filter:brightness(1.06);outline:2px solid color-mix(in srgb, var(--button-primary-bg) 34%, transparent);outline-offset:2px}.firebase-quick-reply:disabled{cursor:not-allowed;opacity:.64}.composer{background:var(--input-bg);min-height:56px;box-shadow:none;border:0;border-radius:0;grid-template-columns:1fr auto;align-items:center;gap:6px;padding:0 16px;display:grid}.composer:focus-within{box-shadow:inset 0 1px 0 color-mix(in srgb, var(--input-focus-border) 28%, transparent)}.composer-input{resize:none;width:100%;min-height:56px;max-height:180px;color:var(--input-text);font-style:var(--input-font-style);font-family:var(--input-font-family);font-weight:var(--input-font-weight);-webkit-text-decoration:var(--input-text-decoration);text-decoration:var(--input-text-decoration);font-size:var(--base-font-size);background:0 0;border:0;border-radius:0;outline:0;padding:17px 4px}.composer-input::placeholder{color:var(--input-placeholder)}.composer-actions{gap:6px;display:flex}.composer-button{border:0;place-items:center;width:44px;min-height:44px;padding:0;font-weight:760;transition:background-color .16s,color .16s,transform .16s;display:grid}.composer-button:hover{transform:translateY(-1px)}.primary-button{color:var(--button-primary-bg);border-radius:var(--button-primary-radius);background:0 0}.primary-button:hover{background:color-mix(in srgb, var(--button-primary-bg) 10%, transparent);color:var(--button-primary-hover)}.secondary-button{color:var(--button-secondary-text);border-radius:var(--button-secondary-radius);background:0 0}.secondary-button:hover{background:color-mix(in srgb, var(--button-secondary-bg) 24%, transparent)}.app-footer{display:none}.app-footer a{color:var(--footer-link);text-decoration:none}.loading-shell{place-items:center;display:grid}.loading-card{box-shadow:var(--panel-shadow);background:#ffffffeb;border-radius:18px;padding:20px 24px}@media (width<=720px){.app-container{gap:0;padding:0}.app-bar{border-radius:0;min-height:64px}.chat-panel{border-radius:0}.booking-status-stack,.booking-status-stack-people,.booking-status-stack-treatment,.booking-status-stack-clinic,.booking-status-stack-time,.booking-status-stack-patientDetails,.booking-status-stack-review,.booking-status-stack-checkout{width:100%}.thread-viewport{padding:14px}.message-bubble,.system-bubble{max-width:90%}.assistant-bubble:has(.veyna-product-widget){width:min(100%,100vw - 48px);max-width:calc(100vw - 48px)}.booking-widget,.veyna-product-widget,.payment-widget{width:100%;min-width:0}.product-card,.veyna-product-widget-single .product-card{grid-template-columns:1fr}.product-card-media,.veyna-product-widget-single .product-card-media{width:100%;min-width:0;max-height:240px}.product-card-title-row,.veyna-product-summary div,.veyna-product-detail-list div{grid-template-columns:1fr}.veyna-product-table{border-color:#dbe4f0}.veyna-product-table-head{display:none}.veyna-product-table-body{background:#f8fafc;gap:10px;padding:10px}.veyna-product-row{background:#fff;border:1px solid #dbe4f0;border-radius:10px;align-items:start;gap:6px 12px;min-height:0;padding:10px;grid-template-columns:68px minmax(0,1fr)!important}.veyna-product-row-cell{padding:0;font-size:.82rem}.veyna-product-row-thumb{grid-area:1/1/span 7;place-items:start center}.veyna-product-row-model{grid-column:2;gap:2px}.veyna-product-row-cell:not(.veyna-product-row-model):not(.veyna-product-row-thumb){grid-column:2;grid-template-columns:1fr;align-items:baseline;gap:3px;display:grid}.veyna-product-row-cell:not(.veyna-product-row-model):not(.veyna-product-row-thumb):before{content:attr(data-label);color:#91a2bd;font-size:.7rem;font-weight:820;line-height:1.2}.veyna-product-row-finish{display:grid}.veyna-product-showcase-visual{padding:20px 16px 0}.veyna-product-showcase-media{width:min(210px,82%)}.veyna-product-showcase-title,.veyna-product-showcase-specs div,.veyna-product-showcase-actions{grid-template-columns:1fr}.veyna-product-showcase-specs dd{text-align:left}.veyna-product-details-backdrop{padding:12px}.veyna-product-details-modal{border-radius:12px;grid-template-columns:1fr;width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.veyna-product-details-lab,.veyna-product-details-sheet{padding:20px}.veyna-product-details-lab{border-bottom:1px solid #111827;border-right:0;gap:16px;max-height:none}.veyna-product-lab-header{flex-direction:column;align-items:flex-start}.veyna-product-details-sheet{min-height:0}.veyna-product-details-header h2{font-size:1.15rem}.veyna-product-dimension-grid,.veyna-product-technical-grid,.veyna-product-layer-card div{grid-template-columns:1fr}.veyna-product-details-media{height:250px}.veyna-product-details-media .product-card-image-placeholder{height:220px}.veyna-product-layer-card dd{text-align:left}.booking-option-button,.booking-widget-single,.booking-summary-list div{grid-template-columns:1fr}.booking-option-button:not(.treatment-option-button){justify-items:start;display:grid}.booking-option-meta{justify-content:flex-start}.booking-option-info{min-height:0;bottom:8px;right:12px}.booking-form-grid{grid-template-columns:1fr}.composer{grid-template-columns:1fr auto}}.booking-workspace-treatment{border-top:0;border-radius:0 0 22px 22px;width:min(100% - 44px,760px);max-height:min(45dvh,420px);margin-top:0;animation:.22s both bookingSheetEnter;box-shadow:0 18px 54px #02061757}.booking-workspace-treatment:before{content:"";background:#cbd5e1;border-radius:999px;flex:none;width:58px;height:5px;margin:10px auto 2px}.booking-workspace-treatment .booking-workspace-header{border-bottom-color:#e2e8f0;padding:10px 28px 12px}.booking-workspace-treatment .booking-workspace-header h2{letter-spacing:0;margin:0;font-size:clamp(1.25rem,3vw,1.55rem);font-weight:820}.booking-workspace-treatment .booking-workspace-body{flex-direction:column;flex:auto;min-height:0;padding:0 28px;display:flex;overflow:hidden}.appointment-type-widget{flex-direction:column;flex:auto;min-height:0;display:flex;position:relative}.appointment-type-controls{border-bottom:1px solid #e2e8f0;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px 0 12px;display:grid}.appointment-type-helper{color:#64748b;align-items:center;gap:10px;min-width:0;font-size:.93rem;font-weight:650;display:inline-flex}.appointment-type-helper-icon{background:var(--booking-primary);width:22px;height:22px;color:var(--booking-primary-text);border-radius:999px;flex:none;place-items:center;font-size:.78rem;font-weight:900;line-height:1;display:inline-grid}.appointment-type-filter{min-width:132px;min-height:38px;color:var(--booking-primary);background:#fff;border:1px solid #cbd5e1;border-radius:14px;grid-template-columns:18px auto 18px;align-items:center;gap:8px;padding:0 12px;font-size:.92rem;font-weight:720;display:inline-grid;position:relative;overflow:hidden}.appointment-type-filter svg{fill:none;stroke:currentColor;stroke-width:2.25px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.appointment-type-filter-copy{color:#64748b;text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.appointment-type-filter-select{cursor:pointer;opacity:0;width:100%;min-height:100%;position:absolute;inset:0}.appointment-type-list{flex:auto;min-height:0;max-height:none;margin:12px -2px 0 0;padding:0 6px 12px 0;overflow-y:auto}.appointment-type-row{background:#fff;border-color:#d9e2f2;border-radius:12px;min-height:58px}.appointment-type-row:hover,.appointment-type-row:focus-within{transform:none}.appointment-type-row.selected{border-color:var(--booking-primary);background:var(--booking-primary-surface);box-shadow:inset 0 0 0 1px var(--booking-primary)}.appointment-type-row .treatment-option-button{min-height:58px;padding:9px 94px 9px 66px;position:relative}.appointment-type-icon{width:34px;height:34px;color:var(--booking-primary);place-items:center;display:grid;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.appointment-type-icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:32px;height:32px}.appointment-type-row .booking-option-title-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:16px}.appointment-type-row .booking-option-button strong{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:820;overflow:hidden}.appointment-type-row .booking-option-button small{color:#64748b;-webkit-line-clamp:1;-webkit-box-orient:vertical;max-width:100%;margin-top:2px;font-size:.8rem;line-height:1.22;display:-webkit-box;overflow:hidden}.appointment-type-row .booking-option-meta{color:#0f172a;white-space:nowrap;grid-template-columns:auto auto;align-items:baseline;gap:14px;font-size:.9rem;font-weight:780;display:grid}.appointment-type-duration{color:var(--booking-primary)}.appointment-type-price{color:#0f172a}.appointment-type-row .booking-option-info{border:2px solid var(--booking-primary);width:28px;min-width:28px;height:28px;min-height:28px;color:var(--booking-primary);background:#fff;border-radius:999px;place-items:center;font-size:.82rem;font-weight:900;line-height:1;display:grid;top:50%;bottom:auto;right:48px;transform:translateY(-50%)}.appointment-type-row .booking-option-info:hover,.appointment-type-row .booking-option-info:focus-visible{background:var(--booking-primary-surface);outline:2px solid color-mix(in srgb, var(--booking-primary) 30%, transparent);outline-offset:2px}.appointment-type-radio{background:#fff;border:3px solid #94a3b8;border-radius:999px;width:26px;height:26px;display:block;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.appointment-type-info-panel{color:#475569;background:#f8fafc;border-radius:10px;margin:0 12px 10px 66px;padding:8px 10px;font-size:.78rem;line-height:1.35}.appointment-type-empty{color:#64748b;background:#f8fafc;border-radius:12px;padding:14px;font-size:.86rem}.appointment-type-scroll-hint{z-index:2;pointer-events:none;color:#64748b;background:linear-gradient(#fff0,#fff 72%);justify-content:center;align-items:flex-end;gap:4px;height:42px;padding-bottom:2px;display:flex;position:absolute;bottom:66px;left:0;right:0}.appointment-type-scroll-hint svg{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:20px;height:20px}.appointment-type-scroll-hint-label{color:#475569a3;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;max-width:min(46vw,260px);font-size:.72rem;font-weight:520;line-height:1.15;overflow:hidden;transform:translateY(-2px)}.appointment-type-footer{background:#fff;border-top:1px solid #e2e8f0;flex:none;justify-content:space-between;align-items:center;gap:12px;margin:0 -28px;padding:12px 28px 14px;display:flex;box-shadow:0 -8px 24px #0f172a14}.appointment-type-cancel{min-height:42px;color:var(--booking-primary);background:0 0;border:0;border-radius:999px;padding:0 2px;font-size:.95rem;font-weight:700}.appointment-type-cancel:hover,.appointment-type-cancel:focus-visible{background:var(--booking-primary-surface);outline:0;padding-inline:12px}.appointment-type-continue{background:var(--booking-primary);min-width:170px;min-height:44px;color:var(--booking-primary-text);box-shadow:0 10px 22px color-mix(in srgb, var(--booking-primary) 22%, transparent);border:0;border-radius:10px;padding:0 26px;font-size:.96rem;font-weight:820}.appointment-type-continue:hover:not(:disabled),.appointment-type-continue:focus-visible:not(:disabled){background:var(--booking-primary-hover);outline:2px solid color-mix(in srgb, var(--booking-primary) 32%, transparent);outline-offset:2px}.appointment-type-continue:disabled{cursor:not-allowed;background:var(--booking-disabled-surface);color:var(--booking-disabled-text);box-shadow:none}@media (width<=720px){.booking-workspace-treatment{border-left:0;border-right:0;width:100%;max-height:min(45dvh,390px)}.booking-workspace-treatment .booking-workspace-header{padding:8px 18px 10px}.booking-workspace-treatment .booking-workspace-header h2{font-size:1.13rem}.booking-workspace-treatment .booking-workspace-body{padding:0 18px}.appointment-type-controls{padding:8px 0 10px}.appointment-type-helper{font-size:.82rem}.appointment-type-filter{gap:6px;min-width:108px;min-height:34px;padding:0 10px;font-size:.82rem}.appointment-type-list{margin-top:8px;padding-bottom:10px}.appointment-type-row{min-height:54px}.appointment-type-row .treatment-option-button{min-height:54px;padding:8px 82px 8px 48px}.appointment-type-icon{width:28px;height:28px;left:10px}.appointment-type-icon svg{width:27px;height:27px}.appointment-type-row .booking-option-button strong{font-size:.86rem}.appointment-type-row .booking-option-button small{font-size:.73rem}.appointment-type-row .booking-option-meta{grid-template-columns:1fr;justify-items:end;gap:0;font-size:.78rem;display:grid}.appointment-type-row .booking-option-info{border-width:2px;width:24px;min-width:24px;height:24px;min-height:24px;font-size:.72rem;right:42px}.appointment-type-radio{border-width:2px;width:22px;height:22px;right:10px}.appointment-type-row.selected .appointment-type-radio{box-shadow:inset 0 0 0 4px #fff}.appointment-type-info-panel{margin-left:48px}.appointment-type-footer{padding:10px 18px calc(10px + env(safe-area-inset-bottom));margin:0 -18px}.appointment-type-continue{border-radius:10px;min-width:138px;min-height:42px;padding:0 18px}}.booking-workspace-treatment:before{height:4px;margin-top:8px}.booking-workspace-treatment .booking-workspace-header{padding-block:8px 10px}.booking-workspace-treatment .booking-workspace-header h2{font-size:clamp(1.12rem,2.6vw,1.38rem)}.booking-workspace-treatment .booking-workspace-body{overflow:hidden}.appointment-type-controls{padding-block:8px 9px}.appointment-type-list{gap:6px;margin-top:8px;padding-bottom:8px}.appointment-type-row{grid-template-columns:minmax(0,1fr) 32px 34px;align-items:stretch;min-height:52px;display:grid;overflow:hidden}.appointment-type-select-button{color:#0f172a;text-align:left;background:0 0;border:0;align-items:center;gap:12px;min-width:0;min-height:52px;padding:7px 0 7px 12px;display:flex}.appointment-type-select-button:focus-visible{outline:2px solid var(--booking-primary);outline-offset:-3px}.appointment-type-icon{width:34px;height:34px;color:var(--booking-primary);flex:0 0 34px;place-items:center;display:grid;position:static;transform:none}.appointment-type-icon svg{width:30px;height:30px}.appointment-type-row .booking-option-main{flex:auto;gap:1px;min-width:0;display:grid}.appointment-type-row .booking-option-button strong,.appointment-type-row .booking-option-main strong{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:820;overflow:hidden}.appointment-type-row .booking-option-button small,.appointment-type-row .booking-option-main small{color:#64748b;-webkit-line-clamp:1;-webkit-box-orient:vertical;margin:0;font-size:.74rem;line-height:1.18;display:-webkit-box;overflow:hidden}.appointment-type-row .booking-option-meta{color:#0f172a;white-space:nowrap;flex:0 0 72px;justify-items:end;gap:2px 4px;font-size:.78rem;font-weight:820;line-height:1.12;display:grid}.appointment-type-row .booking-option-info,.appointment-type-radio-button{min-height:52px;color:var(--booking-primary);background:0 0;border:0;place-items:center;padding:0;display:grid;position:static;transform:none}.appointment-type-row .booking-option-info svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:23px;height:23px}.appointment-type-row .booking-option-info:hover,.appointment-type-row .booking-option-info:focus-visible,.appointment-type-radio-button:hover,.appointment-type-radio-button:focus-visible{background:var(--booking-primary-surface);outline:0}.appointment-type-radio{background:#fff;border:3px solid #94a3b8;border-radius:999px;width:23px;height:23px;display:block;position:static;transform:none}.appointment-type-row.selected .appointment-type-radio{border-color:var(--booking-primary);background:var(--booking-primary);box-shadow:inset 0 0 0 4px #fff}.appointment-type-info-panel{grid-column:1/-1;margin:0 12px 9px 58px}.appointment-type-footer{min-height:58px;padding-block:8px 10px}.appointment-type-cancel,.appointment-type-continue{min-height:40px}.appointment-type-scroll-hint{height:32px;bottom:58px}@media (width<=720px){.booking-workspace-treatment .booking-workspace-header{padding-block:7px 8px}.appointment-type-controls{grid-template-columns:minmax(0,1fr) auto;padding-block:7px 8px}.appointment-type-step-pill{display:none}.appointment-type-row{grid-template-columns:minmax(0,1fr) 30px 32px;min-height:50px}.appointment-type-select-button{gap:9px;min-height:50px;padding:6px 0 6px 10px}.appointment-type-icon{flex-basis:30px;width:30px;height:30px}.appointment-type-icon svg{width:27px;height:27px}.appointment-type-row .booking-option-main strong{font-size:.82rem}.appointment-type-row .booking-option-main small{font-size:.7rem}.appointment-type-row .booking-option-meta{flex-basis:58px;font-size:.72rem}.appointment-type-row .booking-option-info,.appointment-type-radio-button{min-height:50px}.appointment-type-row .booking-option-info svg{width:21px;height:21px}.appointment-type-radio{border-width:2px;width:21px;height:21px}.appointment-type-info-panel{margin-left:50px}.appointment-type-footer{min-height:54px;padding-block:7px calc(7px + env(safe-area-inset-bottom))}.appointment-type-scroll-hint{bottom:54px}}.appointment-type-row{flex-wrap:wrap;align-items:stretch;min-height:48px;display:flex;position:relative;overflow:visible}.appointment-type-select-button{flex:0 0 83.3333%;gap:0;width:83.3333%;min-height:48px;padding:5px 0}.appointment-type-icon{flex:0 0 10%;width:10%;min-width:0;max-width:none}.appointment-type-row .booking-option-main{flex:0 70%;width:70%;padding-right:8px}.appointment-type-row .booking-option-main strong{font-size:.86rem;line-height:1.15}.appointment-type-row .booking-option-main small{display:none}.appointment-type-row .booking-option-meta{flex:0 0 20%;align-content:center;justify-items:end;width:20%;font-size:.76rem}.appointment-type-row .booking-option-info,.appointment-type-radio-button{flex:0 0 8.3333%;width:8.3333%;min-height:48px}.appointment-type-info-panel{z-index:8;background:#fff;border:1px solid #d9e2f2;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:8px;width:min(380px,100% - 54px);margin:0;padding:9px 34px 9px 10px;display:flex;position:absolute;top:calc(100% - 5px);right:42px;box-shadow:0 10px 24px #0f172a1a}.appointment-type-info-copy{max-width:100%;line-height:1.35;display:block}.appointment-type-info-actions{flex-wrap:wrap;flex:none;justify-content:flex-start;align-items:center;gap:7px;width:100%;display:inline-flex}.appointment-type-learn-more,.appointment-type-gallery-button{background:var(--booking-primary-surface);color:var(--booking-primary);border:0;border-radius:999px;padding:5px 8px;font-size:.74rem;font-weight:820}.appointment-type-learn-more:hover,.appointment-type-learn-more:focus-visible,.appointment-type-gallery-button:hover,.appointment-type-gallery-button:focus-visible{background:var(--booking-primary-tint);outline:2px solid color-mix(in srgb, var(--booking-primary) 28%, transparent);outline-offset:2px}.appointment-type-gallery-button{background:color-mix(in srgb, var(--booking-primary) 14%, #fff)}.appointment-type-info-close{color:#64748b;background:0 0;border:0;border-radius:999px;place-items:center;width:24px;height:24px;padding:0;display:grid;position:absolute;top:5px;right:5px}.appointment-type-info-close svg{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.appointment-type-info-close:hover,.appointment-type-info-close:focus-visible{color:#0f172a;outline:2px solid color-mix(in srgb, var(--booking-primary) 26%, transparent);outline-offset:1px;background:#f1f5f9}.treatment-gallery-backdrop{z-index:80;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172a6b;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.treatment-gallery-modal{width:min(920px,100vw - 34px);max-height:min(760px, calc(var(--visible-viewport-height) - 42px));border:1px solid color-mix(in srgb, var(--booking-primary) 24%, #ffffffc7);color:#0f172a;font-family:var(--tool-font-family);background:#fff;border-radius:20px;grid-template-rows:auto minmax(0,1fr) auto;display:grid;overflow:hidden;box-shadow:0 30px 90px #0f172a57}.treatment-gallery-header,.treatment-gallery-footer{justify-content:space-between;align-items:center;gap:14px;padding:15px 18px;display:flex}.treatment-gallery-header{border-bottom:1px solid #e2e8f0}.treatment-gallery-header h2{color:#0f172a;letter-spacing:0;margin:0;font-size:1rem;font-weight:860;line-height:1.2}.treatment-gallery-header span,.treatment-gallery-footer span{color:#64748b;font-size:.82rem;font-weight:650;line-height:1.35}.treatment-gallery-close,.treatment-gallery-nav{background:color-mix(in srgb, var(--booking-primary) 10%, #fff);color:var(--booking-primary);border:0;border-radius:999px;place-items:center;display:grid}.treatment-gallery-close{width:38px;height:38px}.treatment-gallery-close svg,.treatment-gallery-nav svg{width:19px;height:19px}.treatment-gallery-close:hover,.treatment-gallery-close:focus-visible,.treatment-gallery-nav:hover:not(:disabled),.treatment-gallery-nav:focus-visible{background:var(--booking-primary);color:var(--booking-primary-text);outline:2px solid color-mix(in srgb, var(--booking-primary) 30%, transparent);outline-offset:2px}.treatment-gallery-stage{background:#f8fafc;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:10px;min-height:0;padding:16px;display:grid}.treatment-gallery-nav{width:42px;height:42px}.treatment-gallery-nav:disabled{opacity:.42;cursor:not-allowed}.treatment-gallery-figure{gap:10px;min-width:0;min-height:0;margin:0;display:grid}.treatment-gallery-figure.single,.treatment-gallery-figure.comparison{width:100%;height:clamp(220px,58dvh,520px);max-height:calc(var(--visible-viewport-height) - 230px);background:#e2e8f0;border-radius:16px;place-items:center;min-height:0;display:grid;overflow:hidden}.treatment-gallery-figure.single img,.treatment-gallery-compare-wrap{width:min(100%, var(--gallery-media-width,100%));height:min(100%, var(--gallery-media-height,100%));max-width:100%;max-height:100%;aspect-ratio:var(--gallery-media-aspect-ratio,auto);object-fit:contain;display:block}.treatment-gallery-compare-wrap{position:relative;overflow:hidden}.treatment-gallery-compare-slider{width:100%;height:100%}.treatment-gallery-compare-slider img{object-fit:contain}.treatment-gallery-compare-slider:focus-within{outline:2px solid color-mix(in srgb, var(--booking-primary) 34%, transparent);outline-offset:3px}.comparison-label{z-index:4;color:#fff;pointer-events:none;background:#0f172ab8;border-radius:999px;padding:5px 9px;font-size:.76rem;font-weight:840;position:absolute;top:14px}.comparison-label.before{left:14px}.comparison-label.after{right:14px}.treatment-gallery-footer{border-top:1px solid #e2e8f0}.treatment-gallery-footer>div{gap:3px;min-width:0;display:grid}.treatment-gallery-footer strong{color:#0f172a;font-size:.84rem;font-weight:850}.treatment-gallery-source{flex:none}@media (width<=720px){.treatment-gallery-backdrop{padding:12px}.treatment-gallery-modal{width:calc(100vw - 24px);max-height:calc(var(--visible-viewport-height) - 24px);border-radius:16px}.treatment-gallery-stage{grid-template-columns:38px minmax(0,1fr) 38px;gap:6px;padding:10px}.treatment-gallery-nav{width:34px;height:34px}.treatment-gallery-figure.single,.treatment-gallery-figure.comparison{height:clamp(200px,52dvh,380px);max-height:calc(var(--visible-viewport-height) - 210px)}.message-markdown img{max-height:min(40dvh,320px)}.appointment-type-row{min-height:46px}.appointment-type-select-button{min-height:46px;padding-block:4px}.appointment-type-icon svg{width:24px;height:24px}.appointment-type-row .booking-option-main strong{font-size:.78rem}.appointment-type-row .booking-option-meta{flex-basis:20%;width:20%;font-size:.68rem}.appointment-type-row .booking-option-info,.appointment-type-radio-button{min-height:46px}.appointment-type-row .booking-option-info svg,.appointment-type-radio{width:19px;height:19px}.appointment-type-info-panel{align-items:flex-start;font-size:.7rem}}.appointment-type-controls{justify-content:space-between;align-items:center;gap:10px;display:flex}.appointment-type-person-strip{scrollbar-width:none;flex:auto;align-items:center;gap:7px;min-width:0;display:flex;overflow-x:auto}.appointment-type-person-strip::-webkit-scrollbar{display:none}.appointment-type-person-chip{border:1px solid var(--booking-primary-border);background:var(--booking-primary-surface);min-width:30px;height:30px;color:var(--booking-primary);white-space:nowrap;border-radius:999px;flex:none;justify-content:center;align-items:center;gap:7px;display:inline-flex;overflow:hidden}.appointment-type-person-chip.active{border-color:var(--booking-primary);background:var(--booking-primary);max-width:min(180px,44vw);color:var(--booking-primary-text);box-shadow:0 0 0 3px color-mix(in srgb, var(--booking-primary) 12%, transparent);justify-content:flex-start;padding-right:10px}.appointment-type-person-avatar{width:30px;height:30px;color:inherit;white-space:nowrap;background:0 0;border-radius:999px;flex:0 0 30px;place-items:center;font-size:.72rem;font-weight:860;line-height:1;display:inline-grid}.appointment-type-person-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.76rem;font-weight:820;overflow:hidden}.appointment-type-person-fallback{color:#64748b;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.84rem;font-weight:720;overflow:hidden}.appointment-type-filter{flex:none}.appointment-type-filter .MuiInputBase-root{width:100%;color:inherit;font:inherit;font-weight:inherit}.appointment-type-filter .appointment-type-filter-select{opacity:1;width:100%;min-height:0;position:static;inset:auto}.appointment-type-filter .MuiSelect-select.appointment-type-filter-select,.appointment-type-filter .MuiSelect-select{cursor:pointer;align-items:center;display:flex;min-height:0!important;padding:0 22px 0 0!important}.appointment-type-filter .MuiSelect-icon{width:18px;height:18px;color:var(--booking-primary);right:0}.appointment-type-filter-value{align-items:center;gap:8px;min-width:0;display:inline-flex}.appointment-type-row .booking-option-meta{white-space:nowrap;flex-direction:row;justify-content:flex-end;align-items:baseline;gap:5px;display:inline-flex}.appointment-type-info-panel,.clinic-selector-info-panel,.time-selector-practitioner-info-panel{z-index:3000;box-sizing:border-box;max-width:calc(100vw - 32px);position:fixed;bottom:auto;right:auto;transform:translateY(-100%)}.appointment-type-info-panel{width:min(320px,100vw - 32px)}.clinic-selector-info-panel,.time-selector-practitioner-info-panel{width:min(360px,100vw - 32px)}.appointment-type-info-panel.info-panel-bottom,.clinic-selector-info-panel.info-panel-bottom,.time-selector-practitioner-info-panel.info-panel-bottom{transform:none}.time-selector-practitioner-control{flex:auto;min-width:0}.time-selector-practitioner-control .MuiInputBase-root{color:#0f172a;width:100%;font:inherit;font-weight:820}.time-selector-practitioner-control .time-selector-practitioner-select{opacity:1;width:100%;position:static}.time-selector-practitioner-control .MuiSelect-select.time-selector-practitioner-select,.time-selector-practitioner-control .MuiSelect-select{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden;min-height:0!important;padding:0 26px 0 0!important}.time-selector-practitioner-control .MuiSelect-icon{color:#0f172a;width:20px;height:20px;right:0}.booking-mui-menu .MuiMenuItem-root{color:#0f172a;min-height:38px;font-size:.92rem;font-weight:650}.booking-mui-menu .MuiMenuItem-root:hover,.booking-mui-menu .MuiMenuItem-root.Mui-focusVisible{background-color:var(--booking-primary-surface)!important}.booking-mui-menu .MuiMenuItem-root.Mui-selected{color:#0f172a;background-color:var(--booking-primary-tint)!important}.booking-mui-menu .MuiMenuItem-root.Mui-selected:hover,.booking-mui-menu .MuiMenuItem-root.Mui-selected.Mui-focusVisible{background-color:var(--booking-primary-surface-strong)!important}.booking-date-calendar-popover{border:1px solid #d9e2f2;overflow:hidden;border-radius:16px!important;box-shadow:0 18px 42px #0f172a2e!important}.booking-date-calendar{color:#0f172a;background:#fff;width:320px;max-width:calc(100vw - 32px);padding:18px 22px 20px}.booking-date-calendar-header,.booking-date-calendar-nav{align-items:center;display:flex}.booking-date-calendar-header{justify-content:space-between;min-height:36px;margin-bottom:10px}.booking-date-calendar-label{font-size:16px;font-weight:700}.booking-date-calendar-nav{gap:4px}.booking-date-calendar-nav-button{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.booking-date-calendar-nav-button:hover,.booking-date-calendar-nav-button:focus-visible{color:#0f172a;background:#f1f5f9}.booking-date-calendar-nav-button:disabled:hover{color:#64748b;background:0 0}.booking-date-calendar-nav-button:focus-visible,.booking-date-calendar-day:focus-visible{outline:2px solid color-mix(in srgb, var(--booking-primary) 34%, transparent);outline-offset:2px}.booking-date-calendar-weekdays,.booking-date-calendar-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.booking-date-calendar-weekdays{color:#64748b;text-align:center;margin-bottom:8px;font-size:12px;font-weight:700}.booking-date-calendar-weekdays span,.booking-date-calendar-empty,.booking-date-calendar-day{width:34px;height:34px}.booking-date-calendar-weekdays span,.booking-date-calendar-empty{justify-content:center;align-items:center;display:inline-flex}.booking-date-calendar-day{color:#0f172a;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;font-size:13px;font-weight:650}.booking-date-calendar-day:hover{background:#f1f5f9}.booking-date-calendar-day.disabled,.booking-date-calendar-day:disabled{color:#94a3b8;background:0 0;border-color:#0000}.booking-date-calendar-day.disabled:hover,.booking-date-calendar-day:disabled:hover{background:0 0}.booking-date-calendar-day.available:not(.selected){background:color-mix(in srgb, var(--brand-primary,var(--booking-primary)) 13%, transparent);border-color:color-mix(in srgb, var(--brand-primary,var(--booking-primary)) 34%, transparent)}.booking-date-calendar-day.available:not(.selected):hover,.booking-date-calendar-day.available:not(.selected):focus-visible{background:color-mix(in srgb, var(--brand-primary,var(--booking-primary)) 20%, transparent)}.booking-date-calendar-day.selected,.booking-date-calendar-day.selected:hover,.booking-date-calendar-day.selected:focus-visible{background:var(--brand-primary,var(--booking-primary));color:var(--booking-primary-text);border-color:var(--brand-primary,var(--booking-primary));box-shadow:0 0 0 3px color-mix(in srgb, var(--brand-primary,var(--booking-primary)) 14%, transparent)}.booking-date-calendar-day.today:not(.selected){border-color:var(--booking-primary-border-strong)}.booking-date-calendar-popover .booking-calendar-day-available:not(.Mui-selected){background:color-mix(in srgb, var(--brand-primary,var(--booking-primary)) 13%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--brand-primary,var(--booking-primary)) 34%, transparent);color:#0f172a;font-weight:750}.booking-date-calendar-popover .booking-calendar-day-available:not(.Mui-selected):hover,.booking-date-calendar-popover .booking-calendar-day-available:not(.Mui-selected):focus-visible{background:color-mix(in srgb, var(--brand-primary,var(--booking-primary)) 20%, transparent)}.booking-date-calendar-popover .MuiPickersDay-root.Mui-selected,.booking-date-calendar-popover .MuiPickersDay-root.Mui-selected:hover,.booking-date-calendar-popover .MuiPickersDay-root.Mui-selected:focus{background-color:var(--booking-primary)!important;color:var(--booking-primary-text)!important}.booking-date-calendar-popover .MuiPickersDay-root.Mui-selected:hover{background-color:var(--booking-primary-hover)!important}.booking-date-calendar-popover .MuiPickersDay-root.MuiPickersDay-today{border-color:var(--booking-primary-border-strong)!important}.booking-date-calendar-popover .MuiPickersDay-root:focus-visible{outline-offset:2px;outline:2px solid color-mix(in srgb, var(--booking-primary) 34%, transparent)!important}.chat-task-filter-control,.booking-practitioner-control{min-width:180px}.chat-task-filter-control .MuiInputBase-root,.booking-practitioner-control .MuiInputBase-root{border:1px solid color-mix(in srgb, var(--input-focus-border,var(--booking-primary)) 22%, transparent);background:var(--input-bg,#fff);width:100%;min-height:38px;color:var(--input-text,#0f172a);font:inherit;border-radius:10px}.chat-task-filter-control .MuiSelect-select,.booking-practitioner-control .MuiSelect-select{align-items:center;display:flex;min-height:38px!important;padding:0 34px 0 10px!important}.booking-more-info-button,.clinic-selector-info-button,.time-selector-practitioner-info,.time-selector-chip-more-info{border:1px solid color-mix(in srgb, var(--booking-primary) 62%, #fff);min-height:30px;color:var(--booking-primary);white-space:nowrap;background:#fff;border-radius:999px;justify-content:center;align-items:center;padding:0 10px;font-size:.72rem;font-weight:820;line-height:1;display:inline-flex}.booking-more-info-button:hover,.booking-more-info-button:focus-visible,.clinic-selector-info-button:hover,.clinic-selector-info-button:focus-visible,.time-selector-practitioner-info:hover,.time-selector-practitioner-info:focus-visible,.time-selector-clinic-chip:hover .time-selector-chip-more-info,.time-selector-clinic-chip:focus-visible .time-selector-chip-more-info{background:var(--booking-primary-surface);color:var(--booking-primary);outline:2px solid color-mix(in srgb, var(--booking-primary) 24%, transparent);outline-offset:2px}.appointment-type-row{flex-wrap:nowrap;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;min-height:48px;display:grid}.appointment-type-row .appointment-type-radio-button{grid-column:1;width:100%;min-height:48px;padding:0}.appointment-type-select-button{flex:auto;grid-column:2;gap:0;width:100%;min-width:0;padding:5px 0;display:flex}.appointment-type-icon{flex:0 0 42px;width:42px}.appointment-type-row .booking-option-main{flex:auto;width:auto;min-width:0}.appointment-type-row .booking-option-meta{flex:none;width:auto;min-width:62px;padding-right:10px}.appointment-type-row .booking-option-info.booking-more-info-button{border:1px solid color-mix(in srgb, var(--booking-primary) 62%, #fff);width:auto;min-width:78px;min-height:30px;color:var(--booking-primary);background:#fff;border-radius:999px;grid-column:3;margin-right:8px;padding:0 10px}.clinic-selector-row{gap:10px;padding-left:12px}.clinic-selector-row .clinic-selector-radio{flex:0 0 30px;order:0;width:30px;height:30px;min-height:30px}.clinic-selector-row-main{order:1;padding-left:0}.clinic-selector-actions-slot{order:2}.clinic-selector-info-button{flex:none;width:auto;min-width:78px;height:30px}.time-selector-practitioner-row{padding-right:10px}.time-selector-practitioner-info{z-index:1;width:auto;min-width:78px;height:30px;min-height:30px;position:absolute;top:50%;right:34px;transform:translateY(-50%)}.time-selector-practitioner-control .MuiSelect-select.time-selector-practitioner-select,.time-selector-practitioner-control .MuiSelect-select{padding-right:118px!important}.time-selector-practitioner-control .MuiSelect-icon{right:4px}.time-selector-clinic-chip .time-selector-chip-more-info{flex:none;min-width:76px;height:28px;min-height:28px;margin-left:2px;padding:0 8px;font-size:.7rem}@media (width<=720px){.appointment-type-row{grid-template-columns:32px minmax(0,1fr) auto}.appointment-type-row .appointment-type-radio-button{min-height:46px}.appointment-type-icon{flex-basis:32px;width:32px}.appointment-type-row .booking-option-meta{min-width:52px;padding-right:6px}.appointment-type-row .booking-option-info.booking-more-info-button,.clinic-selector-info-button,.time-selector-practitioner-info{min-width:70px;height:28px;min-height:28px;padding-inline:8px;font-size:.68rem}.clinic-selector-row{padding-left:10px}.clinic-selector-row .clinic-selector-radio{flex-basis:28px;width:28px;height:28px;min-height:28px}.clinic-selector-row-main{padding-left:0}.time-selector-practitioner-info{right:32px}.time-selector-practitioner-control .MuiSelect-select.time-selector-practitioner-select,.time-selector-practitioner-control .MuiSelect-select{padding-right:106px!important}.time-selector-clinic-chip .time-selector-chip-more-info{min-width:68px;height:26px;min-height:26px;padding-inline:7px;font-size:.66rem}}.payment-widget-loading{gap:6px}@media (width<=720px){.appointment-type-controls{display:flex}.appointment-type-person-chip{min-width:28px;height:28px}.appointment-type-person-chip.active{max-width:min(170px,50vw)}.appointment-type-person-avatar{flex-basis:28px;width:28px;height:28px;font-size:.68rem}}.booking-step-jump,.booking-step-jump-static{flex:none;position:relative}.booking-step-jump-trigger,.booking-step-jump-static{border:1.5px solid var(--booking-primary);min-height:28px;color:var(--booking-primary);font:inherit;white-space:nowrap;background:#fff;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:4px 11px;font-size:.88rem;font-weight:760;line-height:1;display:inline-flex}.booking-step-jump-trigger svg{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.booking-step-jump-trigger:hover,.booking-step-jump-trigger:focus-visible{background:var(--booking-primary-surface);outline:2px solid color-mix(in srgb, var(--booking-primary) 28%, transparent);outline-offset:2px}.booking-step-jump-menu{z-index:40;background:#fff;border:1px solid #d9e2f2;border-radius:12px;width:max-content;min-width:218px;padding:6px;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 18px 48px #0f172a2e}.booking-step-jump-option{color:#0f172a;text-align:left;background:#fff;border:0;border-radius:8px;grid-template-columns:62px minmax(0,1fr);align-items:center;gap:10px;width:100%;min-height:38px;padding:0 9px;display:grid}.booking-step-jump-option:hover:not(:disabled),.booking-step-jump-option:focus-visible:not(:disabled){background:var(--booking-primary-surface);outline:0}.booking-step-jump-option:disabled{cursor:default;color:#94a3b8}.booking-step-jump-option.current{background:#f8fafc}.booking-step-jump-option-step{color:var(--booking-primary);white-space:nowrap;font-size:.72rem;font-weight:840}.booking-step-jump-option-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.84rem;font-weight:780;overflow:hidden}.add-people-heading-row h2,.clinic-selector-header h2,.time-selector-header h2,.booking-workspace-treatment .booking-workspace-header h2,.review-booking-header h2{letter-spacing:0;font-family:inherit;font-size:1.38rem;font-weight:850;line-height:1.08}.clinic-selector-title-copy,.clinic-selector-title-person{font-weight:inherit}.appointment-type-person-chip:not(.active),.time-selector-person-chip:not(.active){border:1.5px solid var(--booking-primary-border);width:32px;min-width:32px;max-width:32px;min-height:32px;color:var(--booking-primary);background:#fff;border-radius:999px;padding:0;box-shadow:0 2px 5px #0f172a0a}.appointment-type-person-chip.active,.time-selector-person-chip.active{border-color:var(--booking-primary);background:var(--booking-primary);min-height:32px;color:var(--booking-primary-text)}.appointment-type-person-chip.active{padding:0 10px 0 0}.time-selector-person-chip.active{padding:4px 10px 4px 5px}.appointment-type-person-avatar,.time-selector-person-avatar{width:30px;height:30px;color:var(--booking-primary);background:#fff;border-radius:999px;flex-basis:30px;font-size:.72rem;font-weight:900;line-height:1}.appointment-type-person-chip.active .appointment-type-person-avatar,.time-selector-person-chip.active .time-selector-person-avatar{color:var(--booking-primary);background:#fff}.time-selector-person-avatar-wrap{flex-basis:30px;width:30px;height:30px}.time-selector-person-chip:not(.active).complete{color:var(--booking-primary);background:#fff}.time-selector-person-name,.appointment-type-person-name{font-weight:820}.review-appointment-avatar,.review-appointment-card:nth-child(2n) .review-appointment-avatar{border:2px solid var(--booking-primary-border);color:var(--booking-primary);background:#fff;font-weight:900}@media (width<=720px){.booking-step-jump-trigger,.booking-step-jump-static{min-height:26px;padding:4px 9px;font-size:.78rem}.booking-step-jump-menu{min-width:204px}.add-people-heading-row h2,.clinic-selector-header h2,.time-selector-header h2,.booking-workspace-treatment .booking-workspace-header h2,.review-booking-header h2{font-size:1.12rem}.appointment-type-person-chip:not(.active),.time-selector-person-chip:not(.active){width:30px;min-width:30px;max-width:30px;min-height:30px}.appointment-type-person-avatar,.time-selector-person-avatar,.time-selector-person-avatar-wrap{flex-basis:28px;width:28px;height:28px;font-size:.68rem}}@keyframes bookingSheetEnter{0%{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:translateY(0)}}@keyframes panelEnter{0%{opacity:0;transform:translateY(8px)scale(.995)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes slotTooltipIn{0%{opacity:0}to{opacity:1}}@keyframes timeSelectorLoadingDot{0%,80%,to{opacity:.34;transform:translateY(0)scale(.86)}40%{opacity:1;transform:translateY(-2px)scale(1)}}@keyframes bookingStatusStackEnter{0%{opacity:0;transform:translateY(-8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.activity-pulse,.activity-phrase,.shimmer-text,.session-loading-typewriter,.session-loading-shimmer,.ambient-branding,.ambient-branding-animation,.ambient-branding-fallback,.app-bar-branding-animation,.app-bar-branding-animation-canvas,.app-bar-branding-fallback,.app-bar,.chat-panel,.booking-status-stack,.booking-status-strip-track,.booking-transition-loader,.booking-workspace-treatment,.time-selector-loading-dots span{animation:none}.booking-status-strip-minimized{transition:none}.activity-phrase{opacity:0}.activity-phrase:first-child{opacity:1}.session-loading-typewriter{border-right:0;width:100%}.session-loading-shimmer,.ambient-branding,.app-bar-branding-link{display:none}.app-bar-logo-hidden{opacity:1}.splash-animation-canvas{display:none}.loading-screen:before{content:"";background:url(/powered_by_multibot_white.png) 50%/min(86vw,540px) no-repeat;position:absolute;inset:clamp(32px,10vw,96px)}}.veyna-product-list-responsive{min-width:0}.veyna-product-mobile-list{display:none}.veyna-product-mobile-card{color:#152033;text-align:left;background:#fff;border:0;border-bottom:1px solid #e2e8f0;grid-template-columns:54px minmax(0,1fr) 18px;align-items:center;gap:10px;width:100%;min-width:0;padding:10px 12px;transition:background-color .16s,border-color .16s;display:grid}.veyna-product-mobile-card:last-child{border-bottom:0}.veyna-product-mobile-card:hover,.veyna-product-mobile-card:focus-visible{outline:2px solid color-mix(in srgb, var(--button-primary-bg) 26%, transparent);outline-offset:-2px;background:#f8fafc}.veyna-product-mobile-thumbnail{background:#f8fafc;border:1px solid #dbe4f0;border-radius:8px;place-items:center;width:54px;height:72px;display:grid;overflow:hidden;box-shadow:0 8px 18px #0f172a14}.veyna-product-mobile-card-main{gap:4px;min-width:0;display:grid}.veyna-product-mobile-title-row{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:8px;min-width:0;display:grid}.veyna-product-mobile-title-row strong{color:#111827;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.9rem;font-weight:880;line-height:1.1;overflow:hidden}.veyna-product-mobile-dimension{color:#43536d;font-family:var(--tool-font-family);white-space:nowrap;background:#f8fafc;border:1px solid #dbe4f0;border-radius:6px;padding:2px 5px;font-size:.68rem;font-weight:760;line-height:1.1}.veyna-product-mobile-subtitle{color:#8a9ab5;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.72rem;font-weight:650;line-height:1.18;overflow:hidden}.veyna-product-mobile-pills,.veyna-product-details-mobile-pills,.veyna-product-details-mobile-finishes{flex-wrap:wrap;gap:4px;min-width:0;display:flex}.veyna-product-mobile-pill,.veyna-product-mobile-spec-pill,.veyna-product-mobile-finish{color:#2f4059;text-overflow:ellipsis;white-space:nowrap;background:#f8fbff;border:1px solid #dbe4f0;border-radius:6px;align-items:center;gap:5px;min-width:0;max-width:112px;padding:3px 6px;font-size:.66rem;font-weight:740;line-height:1.1;display:inline-flex;overflow:hidden}.veyna-product-mobile-finish span:last-child{text-overflow:ellipsis;min-width:0;overflow:hidden}.veyna-product-mobile-arrow{color:#91a2bd;font-size:1.25rem;font-weight:500;line-height:1}.veyna-product-details-mobile-hero,.veyna-product-details-mobile-topbar{display:none}:is(body:has(.veyna-product-details-backdrop) .app-bar,body:has(.veyna-product-details-backdrop) .composer){visibility:hidden;pointer-events:none}:is(body:has(.veyna-product-details-backdrop) .chat-panel,body:has(.veyna-product-details-backdrop) .thread-viewport){overflow:visible;transform:none}.veyna-product-details-mobile-media{--veyna-product-mobile-media-height:172px;width:100%;height:var(--veyna-product-mobile-media-height);background:#f8fafc;border:1px solid #dbe4f0;border-radius:12px;place-items:center;display:grid;overflow:hidden}.veyna-product-details-mobile-media img{width:auto;max-width:100%;height:var(--veyna-product-mobile-media-height);max-height:var(--veyna-product-mobile-media-height)}.veyna-product-details-mobile-headline{gap:2px;display:grid}.veyna-product-details-mobile-headline span{color:#91a2bd;text-transform:uppercase;font-size:.68rem;font-weight:820;line-height:1.1}.veyna-product-details-mobile-headline strong{color:#152033;font-size:1.05rem;font-weight:880;line-height:1.1}.veyna-product-details-mobile-headline p{color:#40516d;font-family:var(--tool-font-family);margin:0;font-size:.78rem;font-weight:760}@media (width<=720px){.assistant-bubble:has(.veyna-product-widget){width:min(100%,100% - 44px);max-width:calc(100% - 44px)}.veyna-product-widget{border-radius:10px;gap:8px;padding:8px}.veyna-product-header{padding:0 2px}.veyna-product-header strong{font-size:.9rem}.veyna-product-widget-list .veyna-product-table{display:none}.veyna-product-mobile-list{background:#fff;border:1px solid #dbe4f0;border-radius:9px;display:grid;overflow:hidden}.veyna-product-mobile-card{grid-template-columns:48px minmax(0,1fr) 14px;gap:8px;padding:8px 9px}.veyna-product-mobile-thumbnail{border-radius:7px;width:48px;height:64px}.veyna-product-mobile-card-main{gap:3px}.veyna-product-mobile-subtitle{display:none}.veyna-product-mobile-dimension{padding:2px 4px;font-size:.62rem}.veyna-product-mobile-pills{gap:3px}.veyna-product-mobile-pill,.veyna-product-mobile-spec-pill,.veyna-product-mobile-finish{max-width:82px;padding:2px 5px;font-size:.62rem}.veyna-product-mobile-finish{justify-content:center;max-width:24px}.veyna-product-mobile-finish span:last-child{display:none}.veyna-product-showcase{box-shadow:none}.veyna-product-showcase-visual{padding:12px 12px 0}.veyna-product-showcase-media{width:min(164px,72%)}.veyna-product-showcase-info{gap:9px;padding:12px}.veyna-product-showcase-title{grid-template-columns:1fr;gap:4px}.veyna-product-showcase-title span{justify-self:start}.veyna-product-showcase-info>p{font-size:.78rem;line-height:1.35}.veyna-product-showcase-specs{border:0;flex-wrap:wrap;gap:5px;padding:0;display:flex}.veyna-product-showcase-specs div{background:#f8fbff;border:1px solid #dbe4f0;border-radius:6px;max-width:100%;padding:4px 6px;display:inline-flex}.veyna-product-showcase-specs dt{display:none}.veyna-product-showcase-specs dd{color:#2f4059;text-align:left;text-overflow:ellipsis;white-space:nowrap;max-width:210px;font-size:.7rem;overflow:hidden}.veyna-product-showcase-actions{grid-template-columns:1fr;gap:8px}.veyna-product-details-backdrop{place-items:end stretch;padding:0 6px 6px}.veyna-product-details-modal{border-radius:18px 18px 0 0;grid-template-columns:1fr;width:100%;max-height:calc(100dvh - 10px)}.veyna-product-details-lab{display:none}.veyna-product-details-sheet{gap:10px;min-height:0;padding:12px}.veyna-product-details-header{display:none}.veyna-product-details-scroll{gap:10px;padding-right:0}.veyna-product-details-mobile-hero{gap:10px;display:grid}.veyna-product-details-mobile-topbar{z-index:2;background:#fff;justify-content:space-between;align-items:center;gap:10px;margin:-2px 0 0;padding:2px 0 6px;display:flex;position:sticky;top:0}.veyna-product-details-mobile-topbar div{gap:2px;min-width:0;display:grid}.veyna-product-details-mobile-topbar span{color:#91a2bd;text-transform:uppercase;font-size:.62rem;font-weight:840;line-height:1.1}.veyna-product-details-mobile-topbar strong{color:#152033;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.98rem;font-weight:880;line-height:1.1;overflow:hidden}.veyna-product-details-mobile-close{color:#64748b;background:#f1f5f9;border:0;border-radius:10px;flex:none;place-items:center;width:34px;height:34px;display:grid}.veyna-product-details-mobile-close svg{width:20px;height:20px}.veyna-product-details-mobile-close:hover,.veyna-product-details-mobile-close:focus-visible{color:#334155;outline-offset:2px;background:#e2e8f0;outline:2px solid #2563eb3d}.veyna-product-details-mobile-finishes .veyna-product-finish-option{max-width:150px;min-height:28px;padding:0 8px}.veyna-product-spec-summary-card{padding:12px}.veyna-product-spec-summary-card p{font-size:.78rem;line-height:1.36}.veyna-product-dimension-grid,.veyna-product-technical-grid,.veyna-product-layer-card div{grid-template-columns:1fr;gap:8px}.veyna-product-technical-grid{gap:8px}.veyna-product-technical-grid div{padding:0 0 8px}.veyna-product-technical-grid dd{font-size:.78rem;line-height:1.3}.veyna-product-layer-card{padding:10px}.veyna-product-details-footer{background:#fff;padding-top:8px;position:sticky;bottom:0}.veyna-product-close-preview{width:100%;min-height:40px}}.calendar-slot-picker{border:1px solid var(--booking-primary-border,#0000001f);background:var(--booking-primary-surface,#fff);font-family:var(--font-family);border-radius:12px;flex-direction:column;gap:12px;max-width:420px;padding:14px;display:flex}.calendar-slot-picker-empty{color:var(--text-muted,#6b7280);font-size:.9rem}.calendar-slot-picker-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.calendar-slot-picker-heading{flex-direction:column;gap:2px;min-width:0;display:flex}.calendar-slot-picker-title{font-weight:600}.calendar-slot-picker-timezone{color:var(--text-muted,#6b7280);font-size:.75rem}.calendar-slot-picker-date-row{align-items:center;gap:8px;display:flex}.calendar-slot-picker-date-nav,.calendar-slot-picker-date-pill{border:1px solid var(--booking-primary-border,#00000029);color:inherit;cursor:pointer;font:inherit;background:#fff;border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.calendar-slot-picker-date-nav{flex:0 0 42px;width:42px;height:38px}.calendar-slot-picker-date-nav svg{width:18px;height:18px}.calendar-slot-picker-date-pill{background:var(--booking-primary-tint,#f3f4f6);min-width:0;height:38px;color:var(--booking-primary,#111827);border-color:#0000;flex:auto;gap:8px;padding:0 14px;font-size:.9rem;font-weight:600}.calendar-slot-picker-date-pill svg{flex:none;width:18px;height:18px}.calendar-slot-picker-date-pill span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.calendar-slot-picker-date-nav:disabled,.calendar-slot-picker-date-pill:disabled{opacity:.42;cursor:not-allowed}.calendar-slot-picker-slots{flex-wrap:wrap;gap:8px;display:flex}.calendar-slot-picker-slot{border:1px solid var(--booking-primary-border,#00000029);cursor:pointer;font:inherit;background:#fff;border-radius:8px;padding:8px 14px;font-size:.9rem}.calendar-slot-picker-slot:hover:not(:disabled){background:var(--booking-primary-tint,#f3f4f6)}.calendar-slot-picker-slot:disabled{opacity:.45;cursor:default}.calendar-slot-picker-slot-selected{background:var(--booking-primary,#111827);border-color:var(--booking-primary,#111827);color:var(--booking-primary-text,#fff)}.calendar-slot-picker-summary{border:1px solid var(--booking-primary-border,#0000001f);background:var(--booking-primary-tint,#f3f4f6);border-radius:10px;flex-wrap:wrap;align-items:baseline;gap:4px 8px;padding:9px 12px;display:flex}.calendar-slot-picker-summary-slot{font-size:.92rem}.calendar-slot-picker-summary-timezone{color:var(--text-muted,#6b7280);font-size:.75rem}.calendar-slot-picker-footer{border-top:1px solid #d9e2f2;flex-wrap:nowrap;flex:none;justify-content:flex-start;align-items:center;gap:12px;padding-top:12px;display:flex}.calendar-slot-picker-footer-actions{flex:0 auto;justify-content:flex-end;align-items:center;gap:10px;min-width:0;margin-left:auto;display:flex}.calendar-slot-picker-edit-details{min-height:40px;color:var(--booking-primary,#111827);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:10px;flex:none;padding:0 16px;font-size:.98rem;font-weight:820}.calendar-slot-picker-edit-details:disabled{opacity:.45;cursor:default}.calendar-slot-picker-form{gap:10px;display:grid}.calendar-slot-picker-confirmation{color:var(--text-muted,#6b7280);font-size:.88rem}.calendar-booking-confirmation{border:1px solid var(--booking-primary-border,#0000001f);background:var(--booking-primary-surface,#fff);font-family:var(--font-family);border-radius:12px;flex-direction:column;gap:10px;max-width:420px;padding:14px;display:flex}.calendar-booking-confirmation-header{align-items:center;gap:8px;display:flex}.calendar-booking-confirmation-check{background:var(--accent-color,#16a34a);color:#fff;border-radius:999px;justify-content:center;align-items:center;width:22px;height:22px;font-size:.8rem;font-weight:700;display:inline-flex}.calendar-booking-confirmation-heading{font-weight:600}.calendar-booking-confirmation-badge{background:var(--booking-primary-soft,#16a34a1f);color:var(--accent-color,#16a34a);white-space:nowrap;border-radius:999px;margin-left:auto;padding:2px 8px;font-size:.72rem;font-weight:600}.calendar-booking-confirmation-title{font-size:1.02rem;font-weight:600}.calendar-booking-confirmation-when{color:var(--text-muted,#6b7280);align-items:center;gap:8px;font-size:.9rem;display:flex}.calendar-booking-confirmation-when svg{flex-shrink:0;width:16px;height:16px}.calendar-booking-confirmation-guest{color:var(--text-muted,#6b7280);overflow-wrap:anywhere;font-size:.85rem}.calendar-booking-confirmation-actions{flex-wrap:wrap;gap:8px;display:flex}.calendar-booking-confirmation-link{text-align:center;text-decoration:none}
