.booking-appointment-selection{min-width:0;max-width:42rem;color:var(--ink);font-family:var(--brava-font-body);margin:auto;padding:.5rem 1.1rem 1.5rem}.booking-appointment-selection>.customer-service-card{width:100%}.booking-appointment-selection-extras{color:var(--muted);margin:.4rem 0 .65rem;font-size:.85rem;line-height:1.5}.booking-appointment-selection-professional{margin:.25rem 0 .5rem;position:relative}.booking-appointment-selection-professional>.professional-choice-avatar{pointer-events:none;z-index:1;width:48px;height:48px;color:var(--accent);background:var(--soft);position:absolute;top:16px;left:16px}.booking-appointment-selection-professional .brava-accordion[data-density] .brava-accordion-header>button{min-height:80px;padding:1rem 1rem 1rem 4.75rem}.booking-appointment-selection-professional .brava-accordion-title{font-size:.9rem}.booking-appointment-selection .booking-step--professional[data-presentation=proposed]{border:0;min-width:0;margin:0;padding:0}.booking-appointment-selection .booking-step--professional>legend{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.booking-appointment-selection .professional-choice-intro{display:none}.booking-appointment-selection .professional-choice-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:.5rem}.booking-appointment-selection .professional-choice-option{border:1px solid var(--line);background:#fff;border-radius:18px;min-width:0;position:relative}.booking-appointment-selection .professional-choice-option:has(input:checked){background:var(--soft);border-color:var(--accent)}.booking-appointment-selection .professional-choice-option>.professional-choice-avatar{pointer-events:none;background:var(--paper);width:32px;height:32px;color:var(--accent);position:absolute;top:50%;left:.85rem;transform:translateY(-50%)}.booking-appointment-selection .professional-choice-option .brava-selection-option{border-radius:inherit;align-items:center;gap:.65rem;min-height:56px;margin:0;padding:.5rem .75rem .5rem 3.5rem}.booking-appointment-selection .professional-choice-option .brava-choice-control{order:2;margin:0}.booking-appointment-selection .professional-choice-option .brava-selection-copy>span:first-child{font-weight:600}.booking-appointment-selection .professional-choice-option .brava-selection-copy>span+span{font-size:.8rem}.booking-appointment-selection .professional-choice-skeleton{min-height:72px;padding:.75rem .85rem}.booking-appointment-selection .professional-choice-skeleton>span{width:32px;height:32px}.booking-appointment-selection .professional-choice-message{gap:.75rem;display:grid}.booking-appointment-selection-region{min-width:0;margin-top:.65rem}.booking-appointment-selection-region>h2{font:600 1rem/1.5 var(--brava-font-body);color:var(--accent);justify-content:space-between;align-items:baseline;gap:.5rem;margin:0 0 .35rem;display:flex}.booking-appointment-selection-region>h2>small{color:var(--muted);font-size:.8rem;font-weight:400}.booking-appointment-selection .booking-date-carousel-heading{padding:0}.booking-appointment-selection-message{gap:.75rem;margin-block:.5rem;display:grid}.booking-appointment-selection-message>button{justify-self:start}.booking-appointment-selection-times{margin-top:.35rem}.booking-appointment-selection-times .booking-appointment-content{min-height:max(44px, var(--booking-time-height,44px))}.booking-availability-status{min-height:1.5rem;color:var(--muted);font-size:.75rem;line-height:1.5rem}:is(.booking-appointment-selection,.customer-approved-reschedule) .appointment-time-grid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:.5rem;display:grid}:is(.booking-appointment-selection,.customer-approved-reschedule) .appointment-time-grid .brava-selection-option{border:1px solid var(--line);background:#fff;border-radius:12px;align-items:center;gap:.4rem;min-height:52px;padding:.6rem .5rem}:is(.booking-appointment-selection,.customer-approved-reschedule) .appointment-time-grid .brava-selection-option:has(input:checked){border-color:var(--accent);background:var(--soft)}:is(.booking-appointment-selection,.customer-approved-reschedule) .appointment-time-grid .brava-selection-copy>span:first-child{font-size:.9rem}.booking-appointment-selection-actions{bottom:var(--booking-actions-bottom,calc(4.4rem + env(safe-area-inset-bottom)));z-index:10;background:var(--paper);border-top:1px solid var(--line);gap:.5rem;margin-top:.75rem;padding:.65rem 0;display:grid;position:static}.booking-appointment-selection-actions .booking-extras-total{margin:0;line-height:1.25}.booking-appointment-selection-actions .booking-extras-total strong{font-size:1rem}.booking-appointment-selection-chosen{color:var(--muted);font-size:.75rem;line-height:1.4}@media (min-width:761px){.booking-appointment-selection-actions{bottom:0}}.booking-appointment-selection{--ink:var(--brava-ink);--muted:var(--brava-text-secondary);--accent:var(--brava-burgundy)}.booking-day-preview--proposed.booking-appointment-selection{min-height:0;padding-bottom:calc(4.4rem + env(safe-area-inset-bottom));background:0 0;border-radius:0;margin-top:0}.booking-appointment-service-summary{background:#fff;border-radius:16px;margin-bottom:.75rem;overflow:hidden}.booking-appointment-service-summary>.customer-service-card.featured-service--compact{background:0 0;border:0;border-radius:16px;grid-template-columns:48px minmax(0,1fr);width:100%;padding:1rem}.booking-appointment-service-summary .customer-service-card.featured-service--compact .featured-service-photo{width:48px;height:48px}.booking-appointment-service-summary:has(.booking-appointment-extras) .featured-service-copy{align-self:start}.booking-appointment-extras{margin:-2.5rem 1rem .75rem 4.75rem;position:relative}.booking-appointment-extras .brava-accordion-item{background:0 0;border:0;border-radius:0}.booking-appointment-extras .brava-accordion-header>button{gap:.4rem;min-height:32px;padding:.2rem 0}.booking-appointment-extras .brava-accordion-title{color:var(--muted);font-size:12px;font-weight:400}.booking-appointment-extras .brava-accordion-header>button>svg{flex-basis:14px;width:14px;height:14px}.booking-appointment-extras .brava-accordion-copy{padding:.3rem 0 .35rem}.booking-appointment-extras-names{color:var(--muted);gap:.25rem;font-size:12px;line-height:1.5;display:grid}.booking-appointment-selection-professional .brava-accordion-item{background:#fff;border:0;border-radius:16px}.booking-appointment-selection-professional .brava-accordion-copy{padding:.75rem 1rem 1rem}.booking-appointment-selection .booking-appointment-selection-region{background:#fff;border-radius:16px;margin-top:.75rem;padding:1rem}.booking-appointment-selection .booking-appointment-selection-actions{background:#fff;border:0;border-radius:16px;padding:1rem;position:static;inset:auto}:is(.booking-appointment-selection,.customer-approved-reschedule) .appointment-time-grid{grid-template-columns:repeat(3,minmax(0,1fr))}:is(.booking-appointment-selection,.customer-approved-reschedule) .appointment-time-grid .brava-selection-option{justify-content:center;align-items:center;min-height:44px;padding:.5rem;display:flex}:is(.booking-appointment-selection,.customer-approved-reschedule) .appointment-time-grid .brava-choice-control{flex:0 0 22px;width:22px;height:22px;margin:0}:is(.booking-appointment-selection,.customer-approved-reschedule) .appointment-time-grid .brava-selection-copy{flex:0 auto;margin:0}.booking-time-loading>.brava-region-loading>span{clip-path:inset(50%);width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.booking-time-loading .brava-skeleton{border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;padding:0;display:grid}.booking-time-loading .brava-skeleton>:is(i,span){width:100%;height:44px}@media (max-width:340px){:is(.booking-appointment-selection,.customer-approved-reschedule) .appointment-time-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.booking-appointment-selection .booking-appointment-selection-professional>.professional-choice-avatar{width:48px;height:48px;top:16px;left:16px}.booking-appointment-selection .booking-appointment-selection-professional .brava-accordion[data-density] .brava-accordion-header>button{min-height:80px;padding:1rem 1rem 1rem 4.75rem}.booking-appointment-selection .booking-appointment-selection-professional .brava-accordion-copy{padding:.75rem 1rem 1rem}.booking-appointment-selection .booking-appointment-selection-times .booking-appointment-content{min-height:max(44px, var(--booking-time-height,44px))}.booking-appointment-actions-reserve{margin-top:.75rem}.booking-appointment-selection .booking-appointment-selection-actions.brava-booking-fixed-actions{z-index:15;box-sizing:border-box;border:0;border-top:1px solid var(--line);background:#fff;border-radius:16px 16px 0 0;max-width:42rem;margin:0 auto;padding:.65rem 1.1rem;position:fixed;inset:auto 0 4.4rem;box-shadow:0 -4px 20px #5b1d2d08}.booking-appointment-extras.brava-accordion{background:0 0;border:0;border-radius:0}.booking-appointment-extras.brava-accordion[data-density] .brava-accordion-item>.brava-accordion-header>button{background:0 0;justify-content:flex-start;min-height:28px;padding:.1rem 0}
