.booking-catalog{width:100%;max-width:none;margin:0;padding-bottom:32px}.doctor-online-booking-modal{width:min(1120px,100vw - 40px)}.responsive-modal-content.doctor-online-booking-modal{gap:16px;max-height:calc(100dvh - 40px);padding:24px}.doctor-online-booking-modal .responsive-modal-header h2{font-size:20px;line-height:1.3}.responsive-modal-content.booking-result-modal{width:min(840px,100vw - 40px)}.booking-embedded .booking-success-inline{box-shadow:none;background:0 0;border:0;grid-template-columns:minmax(0,1fr) minmax(220px,.7fr);place-items:start stretch;gap:20px 24px;padding:0;display:grid}.booking-embedded .booking-success-head{grid-column:1/-1;grid-template-columns:minmax(0,1fr);gap:12px;width:100%}.doctor-online-booking-modal .booking-result-icon{width:36px;height:36px}.doctor-online-booking-modal .booking-result-icon svg{width:20px;height:20px}.booking-catalog-controls{border:0;min-width:0;margin:0;padding:0}.booking-direct-action{border:0;border-top:1px solid var(--border-soft);gap:12px;min-width:0;margin:16px 0 0;padding:16px 0 0;display:grid}.booking-direct-action:focus,.booking-embedded:focus{outline:none}.booking-direct-action__selection{gap:4px;margin:0;display:grid}.booking-direct-action__selection span{color:var(--muted);font-size:14px;line-height:1.4}.booking-direct-action>.ui-button{justify-self:start;min-width:180px}.doctor-online-booking-modal .booking-direct-action{border:0;gap:8px;width:100%;margin:0;padding:0}.doctor-online-booking-modal .responsive-modal-footer{border-top:1px solid var(--border-soft);flex-shrink:0;padding-top:12px}.booking-embedded .booking-success-head{order:0}.booking-embedded .booking-success-summary{order:1}.booking-embedded .booking-success-note{order:2}.booking-embedded .booking-success-actions{order:3}.booking-embedded .booking-success-head .booking-page-heading{margin:0;font-size:20px;line-height:1.3}.booking-embedded .booking-success-head p{margin-top:4px;font-size:14px;line-height:1.4}.booking-embedded .booking-success-icon{width:36px;height:36px}.booking-embedded .booking-success-icon svg{width:20px;height:20px}.booking-success-summary{gap:12px;min-width:0;display:grid}.booking-embedded .booking-success-doctor{gap:12px;display:flex}.booking-embedded .booking-success-doctor .booking-doctor-photo{flex:0 0 44px;width:44px;height:44px}.booking-embedded .booking-success-doctor img{object-fit:cover;border-radius:50%;width:44px;height:44px}.booking-embedded .booking-success-doctor h3{margin:0;font-size:16px;line-height:1.3}.booking-embedded .booking-success-doctor p{color:var(--muted);margin:4px 0 0;font-size:14px}.booking-embedded .booking-success-details div{grid-template-columns:24px minmax(80px,.45fr) minmax(0,1fr);gap:8px;padding:8px 0;font-size:14px;line-height:1.35}.booking-embedded .booking-success-details svg{border-radius:6px;width:24px;height:24px;padding:4px}.booking-embedded .booking-success-details strong{overflow-wrap:anywhere}.booking-embedded .booking-success-note{background:var(--brand-soft);border-color:var(--border-soft);border-radius:12px;width:100%;margin:0;padding:16px;font-size:14px;line-height:1.45}.booking-embedded .booking-success-note:empty{display:none}.booking-embedded .booking-success-note li+li{margin-top:8px}.booking-embedded .booking-success-actions{grid-column:1/-1;justify-content:stretch;margin:0}.booking-embedded .booking-success-actions a{width:100%;color:var(--brand-dark);text-align:center;background:0 0;border-radius:0;padding:12px 20px;font-size:14px;display:block}.booking-embedded .booking-success-actions a:hover,.booking-embedded .booking-success-actions a:focus-visible{text-underline-offset:3px;background:0 0;text-decoration:underline}.booking-header-back{white-space:normal;min-width:0;color:var(--brand-dark);background:0 0}.booking-header-back:hover,.booking-header-back:focus-visible{text-underline-offset:3px;background:0 0;text-decoration:underline}.booking-mobile-back{display:none}.booking-embedded .booking-callback-content__head .booking-page-heading{font-size:20px;line-height:1.3}.booking-embedded.booking-reference-page{width:100%;margin:0;padding:0}.booking-embedded .booking-catalog-card{grid-template-columns:100px minmax(0,1fr) minmax(0,380px)}.booking-embedded .booking-catalog-card:last-child{margin-bottom:0}.booking-embedded .booking-appointment-summary-card{position:static;top:auto}@media (max-width:900px){.booking-embedded .booking-catalog-card{grid-template-columns:72px minmax(0,1fr)}.booking-embedded .booking-catalog-card__schedule{grid-column:1/-1}}@media (max-width:767px){.responsive-modal-content.doctor-online-booking-modal{width:100%;height:100dvh;max-height:100dvh;padding:max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));border-radius:0;gap:12px;position:fixed;inset:0}.doctor-online-booking-modal .responsive-modal-header{flex-shrink:0}.booking-embedded .booking-success-inline{grid-template-columns:minmax(0,1fr);gap:20px}.booking-embedded .booking-success-details div{grid-template-columns:24px minmax(0,1fr);gap:4px 8px}.booking-embedded .booking-success-details strong{grid-column:2}.booking-embedded .booking-success-actions a{text-align:center;width:100%}.booking-direct-action>.ui-button{width:100%}}.booking-catalog-filters{background:var(--surface);border:1px solid var(--border-soft);border-radius:20px;grid-template-columns:1.4fr 1fr 1fr .65fr;align-items:end;gap:12px;margin-top:24px;margin-bottom:20px;padding:20px;display:grid}.booking-catalog-count{align-items:center;gap:16px;margin:20px 0 12px;display:flex}.booking-catalog-count button{color:var(--brand-dark);text-decoration:underline}.booking-catalog-card{background:var(--surface);border:1px solid var(--border-soft);box-shadow:0 8px 24px color-mix(in srgb, var(--brand-dark) 5%, transparent);border-radius:24px;grid-template-columns:148px minmax(0,1fr) minmax(0,380px);gap:24px;margin-bottom:20px;padding:24px;display:grid}.booking-catalog-card__photo{min-width:0}.booking-catalog-card__photo img{aspect-ratio:1;object-fit:cover;border-radius:16px;width:100%;height:auto;display:block}.booking-catalog-card__main,.booking-catalog-card__schedule,.booking-catalog-card__identity,.booking-catalog-card__fields{min-width:0}.booking-catalog-card__identity{align-content:start;gap:4px;display:grid}.booking-catalog-card__main h2{overflow-wrap:anywhere;margin:0;font-size:18px;font-weight:600;line-height:1.3}.booking-catalog-card__main h2 a{color:var(--brand-dark);transition:color .18s,text-decoration-color .18s}.booking-catalog-card__main h2 a:hover,.booking-catalog-card__main h2 a:focus-visible{color:var(--brand);text-underline-offset:3px;text-decoration:underline}.booking-catalog-card__main p{margin:0}.booking-catalog-card__experience{color:var(--muted);font-weight:500}.booking-catalog-card__fields{align-content:start;gap:12px;margin-top:18px;display:grid}.booking-catalog-card__fact{color:var(--text);grid-template-columns:22px minmax(0,1fr);align-items:start;gap:10px;display:grid}.booking-catalog-card__fact>svg{color:var(--brand-dark);margin-top:2px}.booking-catalog-card__fact div{gap:3px;min-width:0;display:grid}.booking-catalog-card__fact span{color:var(--muted);font-size:13px}.booking-catalog-card__fact strong{font-size:16px;font-weight:500;line-height:1.3}.booking-catalog-card__fact small{color:var(--muted);line-height:1.35}.booking-catalog-card__locations{align-items:start}.booking-catalog-card__locations>svg{margin-top:0}.booking-catalog-card__locations>div{gap:6px}.booking-catalog-card__locations a{width:fit-content;color:var(--brand-dark);font-size:16px;font-weight:500;line-height:1.3}.booking-catalog-card__locations a:hover,.booking-catalog-card__locations a:focus-visible{color:var(--brand);text-underline-offset:3px;text-decoration:underline}.booking-catalog-card__phone{width:fit-content;color:var(--brand-dark)}.booking-catalog-card__phone span{color:inherit;font-size:15px}.booking-catalog-card__price{margin-top:2px}.booking-catalog-card__price strong{font-size:16px;font-weight:500}.booking-catalog-dates-shell{box-sizing:border-box;padding-inline:10px;position:relative}.booking-catalog-dates{scrollbar-width:none;scroll-snap-type:x proximity;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:pan-y;gap:4px;padding:2px 0 6px;display:flex;overflow-x:auto}.booking-catalog-dates::-webkit-scrollbar{display:none}.booking-catalog-dates[data-dragging=true]{cursor:grabbing}.booking-catalog-dates button{border:1px solid var(--border-soft);scroll-snap-align:start;text-align:left;background:var(--surface);min-height:44px;color:var(--text);border-radius:10px;flex:0 0 68px;padding:4px 6px;font-size:13px;line-height:1.2;transition:border-color .16s,background-color .16s,color .16s,transform .16s}.booking-catalog-dates button small{margin-top:2px;font-size:11px;line-height:1.2;display:block}.booking-catalog-dates button[aria-pressed=true]{border-color:var(--brand);background:var(--brand-soft);color:var(--brand-dark)}.booking-catalog-dates button[data-available=false]{color:color-mix(in srgb, var(--text) 65%, transparent)}.booking-catalog-dates button:focus-visible{border-color:var(--brand);outline:2px solid color-mix(in srgb, var(--brand) 38%, transparent);outline-offset:2px}@media (hover:hover) and (pointer:fine){.booking-catalog-dates button:hover:not(:disabled){border-color:var(--brand);background:var(--brand-soft);color:var(--brand-dark);transform:translateY(-1px)}}.booking-catalog-dates__arrow.slider-arrow{z-index:60;width:32px;min-width:32px;height:32px;min-height:32px;position:absolute;top:calc(50% - 3px);transform:translateY(-50%)}.booking-catalog-dates__arrow--previous{left:-24px}.booking-catalog-dates__arrow--next{right:-24px}.booking-catalog-dates__arrow:active:not(:disabled){transform:translateY(-50%)scale(.96)}@media (hover:hover){.booking-catalog-dates__arrow{opacity:0;pointer-events:none;transition:opacity .18s,transform .16s}.booking-catalog-dates-shell:hover .booking-catalog-dates__arrow,.booking-catalog-dates-shell:focus-within .booking-catalog-dates__arrow{opacity:1;pointer-events:auto}}@media (max-width:540px){.booking-catalog-dates__arrow{opacity:1;pointer-events:auto}}.booking-catalog-slots{flex-wrap:wrap;gap:6px;display:flex}.booking-catalog-slots button{border:1px solid var(--border-soft);background:var(--surface);min-width:54px;min-height:30px;color:var(--text);font:inherit;cursor:pointer;border-radius:999px;padding:3px 8px;font-size:13px;font-weight:500;line-height:1.2;transition:border-color .18s,color .18s,box-shadow .18s}.booking-catalog button:focus-visible{outline:2px solid var(--brand-dark);outline-offset:3px}.booking-catalog-slots button:hover{border-color:var(--brand);color:var(--brand-dark)}.booking-catalog-slots button[aria-pressed=true]{border-color:var(--brand);background:var(--brand-soft);color:var(--brand-dark)}.booking-catalog-slots button:focus-visible{border-color:var(--brand);color:var(--brand-dark);box-shadow:0 0 0 3px var(--focus-ring);outline:none}.booking-catalog-card__empty{background:var(--surface-soft);border-radius:16px;padding:16px}.booking-catalog-card__empty p{margin:0 0 12px}.booking-catalog-card__empty>a{color:var(--brand-dark);margin-top:12px;display:block}.booking-catalog-card__empty-actions{flex-wrap:wrap;gap:8px;display:flex}.booking-catalog-clinic-groups{gap:8px;margin-top:8px;display:grid}.booking-catalog-clinic-group{border:1px solid var(--border-soft);background:var(--surface);border-radius:14px;gap:8px;padding:9px;display:grid}.booking-catalog-clinic-group>header{align-items:center;min-height:20px;display:flex}.booking-catalog-clinic-group>header strong{overflow-wrap:anywhere;font-weight:500}.booking-catalog-clinic-group .booking-catalog-card__empty{padding:12px}.booking-catalog-clinic-group>.booking-catalog-callback-button{background:var(--surface-soft);border-color:var(--border-soft);width:100%}@media (max-width:540px){.booking-catalog-card__main{display:contents}.booking-catalog-card__identity{grid-column:2}.booking-catalog-card__identity h2{font-size:18px;line-height:1.3}.booking-catalog-card__identity p{margin:0}.booking-catalog-card__fields{grid-column:1/-1}.booking-catalog-card__fields .form-field{min-width:0}.booking-catalog-slots button{min-height:38px;padding:5px 10px}}@media (min-width:541px) and (max-width:1024px){.dropdown-portal.select-combobox-panel.booking-catalog-dropdown[data-mobile-sheet=false]{inset:auto!important;left:var(--select-panel-left)!important;right:var(--select-panel-right)!important;top:var(--select-panel-top)!important;bottom:var(--select-panel-bottom)!important;width:var(--select-panel-width)!important;max-width:var(--select-panel-max-width)!important;height:auto!important;min-height:0!important;max-height:var(--select-panel-max-height)!important;z-index:1190!important;background:#fff!important;border:1px solid #d6e3dd!important;border-radius:22px!important;gap:0!important;padding:12px!important;display:flex!important;position:fixed!important;overflow:hidden!important;transform:none!important;box-shadow:0 24px 70px #1426212e!important}.dropdown-portal.select-combobox-panel.booking-catalog-dropdown[data-mobile-sheet=false] .select-combobox-list{flex:auto;max-height:min(440px,100dvh - 140px)!important;padding:0!important}.dropdown-portal.select-combobox-panel.booking-catalog-dropdown[data-mobile-sheet=false] .select-combobox-list button{min-height:44px;padding:10px 12px}}.dropdown-portal.select-combobox-panel.booking-catalog-dropdown[data-mobile-sheet=false] .select-combobox-item-content{align-items:baseline;gap:8px;width:100%;min-width:0;display:flex}.dropdown-portal.select-combobox-panel.booking-catalog-dropdown[data-mobile-sheet=false] .select-combobox-list{scrollbar-gutter:auto;padding:0}.dropdown-portal.select-combobox-panel.booking-catalog-dropdown[data-mobile-sheet=false] .select-combobox-search-actions{padding-top:8px}.dropdown-portal.select-combobox-panel.booking-catalog-dropdown[data-mobile-sheet=false] .select-combobox-list button{grid-template-columns:minmax(0,1fr) 20px;gap:6px;padding-inline:12px}.dropdown-portal.select-combobox-panel.booking-catalog-dropdown[data-mobile-sheet=false] .select-combobox-item-content>span,.dropdown-portal.select-combobox-panel.booking-catalog-dropdown[data-mobile-sheet=false] .select-combobox-item-content>small{white-space:nowrap}@media (max-width:1100px){.booking-catalog-card{grid-template-columns:120px minmax(0,1fr) minmax(0,320px);gap:20px;padding:20px}}@media (max-width:900px){.booking-catalog-card{grid-template-columns:112px minmax(0,1fr)}.booking-catalog-card__schedule{grid-column:1/-1}.booking-catalog-filters{grid-template-columns:1fr 1fr}}@media (max-width:540px){.booking-catalog-card{border-radius:20px;grid-template-columns:80px minmax(0,1fr);gap:16px;padding:16px}.booking-catalog-card__main h2{font-size:18px}.booking-catalog-filters{gap:12px;padding:16px}.booking-catalog-filters>:first-child{grid-column:1/-1}.booking-catalog>header h2{font-size:var(--text-2xl)}}@media (max-width:767px){.booking-page.booking-reference-page:not(.booking-embedded){padding-top:20px}.booking-reference-page .booking-scenario-tabs.system-tabs{border-radius:16px;margin:0 0 16px;padding:4px}.booking-reference-page .booking-scenario-tabs.system-tabs button{border-radius:12px;min-height:56px;padding:8px 12px;font-weight:600;line-height:1.35;font-size:14px!important}.booking-reference-page .technical-booking-notice--booking:not(.has-responsive-banner-style){border-radius:12px;margin-bottom:16px;padding:12px}.booking-reference-page .technical-booking-notice--booking:not(.has-responsive-banner-style) p{padding-right:32px;font-size:14px;font-weight:500;line-height:1.45}.booking-reference-page .booking-catalog-filters{border-radius:16px;gap:12px;margin-top:16px;margin-bottom:16px;padding:16px}.booking-reference-page .booking-catalog-filters .field-label{font-size:14px;line-height:1.35}.booking-reference-page .booking-catalog-filters .select-combobox-trigger{border-radius:12px;height:auto;min-height:52px;padding:12px 14px}.booking-reference-page .booking-catalog-filters .select-combobox-value{white-space:normal;text-overflow:clip;overflow-wrap:anywhere;-webkit-line-clamp:unset;line-height:1.35;overflow:visible}.booking-reference-page .booking-catalog-filters .app-search-input{border-radius:12px;min-height:52px}.booking-reference-page .booking-catalog-card{box-shadow:none;border-radius:16px;gap:16px;padding:16px}.booking-reference-page .booking-catalog-card__main h2{font-size:18px;line-height:1.35}.booking-reference-page .booking-catalog-card__fields{gap:10px;margin-top:16px}.booking-patient-modal .responsive-modal-header-actions{display:none}.booking-patient-modal .booking-mobile-back{margin-top:8px;display:block}.booking-patient-modal .booking-mobile-back .booking-header-back{justify-content:center;width:100%;min-height:48px;font-size:14px!important}.booking-patient-modal .booking-form-copy{font-size:14px;line-height:1.5}.booking-patient-modal .booking-guest-form,.booking-embedded .booking-success-inline{gap:16px}}@media (max-width:540px){.booking-reference-page .booking-catalog-filters{grid-template-columns:minmax(0,1fr)}.booking-reference-page .booking-catalog-card{grid-template-columns:64px minmax(0,1fr)}}
