.customer-form .customer-focus-target{scroll-margin-top:110px}.customer-form .field input,.customer-form .field select,.customer-form .field textarea{font-size:16px}.customer-form .slot-button,.customer-form .photo-preview button{min-width:44px;min-height:44px}.customer-form .customer-category-fieldset{border:0;min-width:0;margin:0;padding:0}.customer-form .customer-category-fieldset legend{color:#173955;margin-bottom:10px;padding:0;font-size:16px;font-weight:700}.customer-form .customer-category-fieldset>p{color:#41556d;margin:0 0 12px;font-size:14px;line-height:1.65}.customer-form .customer-category-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.customer-form .customer-category-option{color:#173955;cursor:pointer;background:#fff;border:1px solid #9aaabd;border-radius:7px;align-items:center;gap:10px;min-height:52px;padding:12px;font-size:16px;font-weight:700;line-height:1.5;display:flex}.customer-form .customer-category-option.selected{background:#edf4fa;border-color:#173955;box-shadow:inset 0 0 0 1px #173955}.customer-form .customer-category-option:focus-within{outline-offset:3px;outline:3px solid #3a7099}.customer-form .customer-category-option input{accent-color:#173955;flex:0 0 22px;width:22px;height:22px;margin:0}.customer-form .customer-category-option span{overflow-wrap:anywhere;min-width:0}.customer-form .customer-category-fieldset .customer-category-selection{margin:12px 0 0;font-weight:700}.customer-form .customer-category-fieldset.has-error .customer-category-options{border-left:3px solid #a12828;padding-left:10px}.customer-form .customer-category-fieldset .customer-category-error{color:#a12828;margin:8px 0 0;font-weight:700}.customer-form .photo-preview button{justify-content:center;align-items:center;display:inline-flex}.customer-form .customer-focus-target:focus{outline:2px solid var(--navy);outline-offset:5px}.customer-form .customer-slot-feedback p{margin-bottom:12px}.customer-form .customer-booking-picker{gap:14px;min-width:0;display:grid}.customer-form .slot-days{max-height:none;overflow:visible}.customer-form .customer-booking-picker .field{gap:8px}.customer-form .customer-booking-picker select{width:100%;min-height:48px}.customer-form .customer-booking-help,.customer-form .customer-booking-empty-day{color:#41556d;margin:0;font-size:14px;line-height:1.65}.customer-form .customer-booking-day-navigation{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.customer-form .customer-booking-day-navigation .slot-date{text-align:center;margin:0;font-size:16px}.customer-form .customer-booking-day-button{color:#16395a;min-width:44px;min-height:44px;font:inherit;cursor:pointer;background:#fff;border:1px solid #9aaabd;border-radius:6px;padding:8px 12px;font-size:14px;font-weight:700}.customer-form .customer-booking-day-button:disabled{cursor:default;color:#6b7785;background:#f4f6f8;border-color:#d1d9e0}.customer-form .customer-booking-time-field>p{margin:0 0 10px;font-weight:700}.customer-form .customer-booking-picker .slot-buttons{grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:8px;display:grid}.customer-form .customer-booking-picker .slot-button{min-height:46px;padding:10px 8px;font-size:16px}.customer-form .customer-booking-selection{color:#153a5b;background:#eef5fb;border:1px solid #c4d5e6;border-radius:6px;margin:0;padding:12px;font-size:14px;font-weight:700;line-height:1.65}.customer-form .customer-booking-alternative{border-top:1px solid #d6dfe7;padding-top:8px;font-size:14px}.customer-form .customer-booking-alternative summary{cursor:pointer;color:#153a5b;align-items:center;min-height:44px;font-weight:700;display:flex}.customer-form .customer-booking-alternative summary:before{content:"＋";margin-right:8px}.customer-form .customer-booking-alternative[open] summary:before{content:"−"}.customer-form .customer-receipt-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:24px;display:flex}.customer-form .customer-receipt-actions .button{min-height:48px;padding:12px 18px}.customer-form .customer-receipt-feedback{min-height:1.5em;color:var(--navy);font-size:13px}@media (max-width:560px){.customer-form .customer-category-options{grid-template-columns:minmax(0,1fr)}.customer-form .slot-days{padding:12px}.customer-form .customer-booking-day-navigation{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-form .customer-booking-day-navigation .slot-date{grid-area:1/1/auto/-1}.customer-form .customer-receipt-actions .button{width:100%}}
