.appointmentModal{z-index:20;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modalBackdrop{background:#1b14128c;border:0;width:100%;height:100%;position:absolute;inset:0}.appointmentModal>section{background:var(--admin-card);border:1px solid var(--admin-line);width:min(680px,100%);max-height:90vh;padding:28px;position:relative;overflow:auto;box-shadow:0 24px 70px #00000038}.appointmentModal>section>header{border-bottom:1px solid var(--admin-line);justify-content:space-between;gap:18px;padding-bottom:18px;display:flex}.appointmentModal h3{margin:5px 0;font:500 30px Georgia,serif}.appointmentModal header>button{background:0 0;border:0;align-self:start;font-size:27px}.appointmentDetailGrid{grid-template-columns:1fr 1fr;gap:18px;padding:22px 0;display:grid}.appointmentDetailGrid>div{gap:5px;display:grid}.appointmentDetailGrid .wide{grid-column:1/-1}.appointmentDetailGrid span,.rescheduleControls label{color:#766861;text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:700}.appointmentDetailGrid a{color:var(--admin-wine);text-decoration:underline}.appointmentDetailGrid p{white-space:pre-wrap;margin:0;line-height:1.5}.rescheduleControls{background:#f5f0eb;grid-template-columns:1fr 1fr auto;align-items:end;gap:12px;padding:20px;display:grid}.rescheduleControls input{border:1px solid var(--admin-line);background:#fff;width:100%;margin-top:6px;padding:11px;display:block}.rescheduleControls button,.appointmentActions button{background:var(--admin-wine);color:#fff;text-transform:uppercase;letter-spacing:.07em;border:0;padding:13px 16px;font-size:10px;font-weight:700}.rescheduleControls button:disabled,.appointmentActions button:disabled{opacity:.45}.appointmentActions{justify-content:flex-end;gap:9px;padding-top:20px;display:flex}.appointmentActions .dangerButton{background:#8c3434}.appointmentModal [role=status]{min-height:18px;margin:12px 0 0;font-size:12px}@media (max-width:760px){.appointmentDetailGrid{grid-template-columns:1fr}.appointmentDetailGrid .wide{grid-column:auto}.rescheduleControls{grid-template-columns:1fr}.appointmentActions{display:grid}.appointmentModal>section{padding:20px}}.appointmentWorkspace{min-height:620px;position:relative}.appointmentCalendarHeader{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.appointmentCalendarHeader h3{margin:5px 0 4px;font:600 34px/1 Georgia,serif}.appointmentCalendarHeader p{color:#71645d;margin:0;font-size:12px}.calendarHeaderActions{border:1px solid var(--admin-line);background:#fff;display:flex}.calendarHeaderActions button{border:0;border-right:1px solid var(--admin-line);min-height:38px;color:var(--admin-wine);cursor:pointer;background:0 0;padding:0 13px;font-size:11px;font-weight:700}.calendarHeaderActions button:last-child{border-right:0}.calendarDateSummary{border:1px solid var(--admin-line);background:#f5eee8;justify-content:space-between;align-items:center;gap:18px;margin-top:22px;padding:16px 18px;display:flex}.calendarDateSummary>div:first-child{gap:4px;display:grid}.calendarDateSummary strong{font:600 23px Georgia,serif}.calendarDateSummary span{color:#71645d;font-size:11px}.calendarViewSwitch{background:#fff;border:1px solid #d6c5bd;display:flex}.calendarViewSwitch button{color:#5e514b;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;background:0 0;border:0;border-right:1px solid #d6c5bd;padding:10px 14px;font-size:10px;font-weight:700}.calendarViewSwitch button:last-child{border-right:0}.calendarViewSwitch button.active{background:var(--admin-wine);color:#fff}.calendarWeekStrip{border:1px solid var(--admin-line);background:#fff;border-top:0;grid-template-columns:repeat(7,1fr);display:grid}.calendarWeekStrip button{border:0;border-right:1px solid var(--admin-line);color:#665851;cursor:pointer;background:0 0;place-items:center;gap:6px;min-height:67px;display:grid;position:relative}.calendarWeekStrip button:last-child{border-right:0}.calendarWeekStrip span{text-transform:uppercase;letter-spacing:.08em;font-size:9px}.calendarWeekStrip strong{border-radius:50%;place-items:center;width:30px;height:30px;font:600 17px Georgia,serif;display:grid}.calendarWeekStrip button.today strong{color:var(--admin-wine);background:#f3d9d5}.calendarWeekStrip button.active{box-shadow:inset 0 -3px var(--admin-wine)}.calendarTools{align-items:flex-end;gap:14px;margin:18px 0 12px;display:flex}.calendarTools>label{color:#6f625c;letter-spacing:.09em;text-transform:uppercase;gap:5px;min-width:170px;font-size:9px;font-weight:700;display:grid}.calendarTools select{border:1px solid var(--admin-line);min-height:38px;color:var(--admin-ink);background:#fff;padding:0 10px}.calendarTools>small{color:#776a63}.calendarTools .appointmentFilters{flex-wrap:wrap;justify-content:flex-end;gap:5px;margin-left:auto;display:flex}.calendarTimeline{border:1px solid var(--admin-line);background:#ebe5df;grid-template-columns:66px minmax(0,1fr);display:grid;overflow:hidden}.calendarTimeLabels{border-right:1px solid var(--admin-line);background:#f9f6f2;position:relative}.calendarTimeLabels span{color:#81736c;font-size:9px;position:absolute;right:9px;transform:translateY(-7px)}.calendarColumns{grid-template-columns:repeat(var(--calendar-columns,1),minmax(0,1fr));display:grid;overflow:auto}.calendarTimeline.week .calendarColumns{--calendar-columns:7}.calendarColumn{border-right:1px solid var(--admin-line);background:#eee8e2;min-width:0}.calendarColumn:last-child{border-right:0}.calendarColumn>header{border-bottom:1px solid var(--admin-line);background:#fff;place-items:center;gap:1px;height:42px;display:grid}.calendarColumn>header span{text-transform:uppercase;letter-spacing:.09em;color:#75675f;font-size:8px}.calendarColumn>header strong{font:600 15px Georgia,serif}.calendarColumnBody{background:repeating-linear-gradient(135deg,#eee9e4 0 7px,#f5f1ed 7px 14px);position:relative;overflow:hidden}.calendarAvailability{z-index:1;background:#fff;position:absolute;left:0;right:0}.calendarHourLine{z-index:2;background:#e6ddd7;height:1px;position:absolute;left:0;right:0}.calendarBreak{z-index:3;color:#74675f;text-transform:uppercase;letter-spacing:.1em;background:repeating-linear-gradient(135deg,#e5dcd4 0 6px,#f1ebe6 6px 12px);border-top:1px solid #d6cac1;border-bottom:1px solid #d6cac1;place-items:center;font-size:8px;display:grid;position:absolute;left:0;right:0}.calendarOpenSlot{z-index:4;cursor:pointer;background:0 0;border:0;border-top:1px dashed #eee6e1;width:100%;position:absolute;left:0;right:0}.calendarOpenSlot:hover,.calendarOpenSlot:focus-visible{outline:2px solid var(--admin-wine);outline-offset:-2px;background:#f5e8e3}.calendarAppointment{z-index:8;color:#fff;text-align:left;cursor:pointer;background:#793545;border:1px solid #6d2c39aa;border-radius:3px;width:calc(100% - 14px);padding:8px 10px;position:absolute;left:7px;right:7px;overflow:hidden;box-shadow:0 4px 12px #39221d1a}.calendarAppointment time{font-size:10px;font-weight:800;display:block}.calendarAppointment strong{text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:12px;display:block;overflow:hidden}.calendarAppointment span,.calendarAppointment small{text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:9px;display:block;overflow:hidden}.calendarAppointment.requested{color:#2d2116;background:#d9ae47;border-color:#b4892e}.calendarAppointment.confirmed{background:#647e5e;border-color:#4f694b}.calendarAppointment.completed{background:#6d7080;border-color:#565968}.calendarAppointment.no_show{background:#8b7469;border-color:#715c53}.calendarAppointment.cancelled{color:#4f433d;background:#c7bbb4;border-color:#a89a92;text-decoration:line-through}.calendarTimeline.week .calendarAppointment{width:calc(100% - 6px);padding:5px;left:3px;right:3px}.calendarTimeline.week .calendarAppointment time{font-size:8px}.calendarTimeline.week .calendarAppointment strong{font-size:9px}.calendarTimeline.week .calendarAppointment span{font-size:8px}.calendarNow{z-index:10;pointer-events:none;background:#bb2737;height:2px;position:absolute;left:0;right:0}.calendarNow:before{content:"";background:#bb2737;border-radius:50%;width:8px;height:8px;position:absolute;top:-3px;left:-2px}.calendarClosedLabel{z-index:3;color:#796c65;text-transform:uppercase;letter-spacing:.1em;background:#fffc;padding:5px 8px;font-size:9px;font-weight:700;position:absolute;top:24px;left:50%;transform:translate(-50%)}.appointmentAddButton{z-index:20;float:right;color:#fff;cursor:pointer;background:#211d1b;border:0;border-radius:50%;place-items:center;width:62px;height:62px;margin:-68px 22px 10px auto;display:grid;position:sticky;bottom:24px;right:26px;box-shadow:0 12px 35px #211d1b55}.appointmentAddButton span{font:300 35px/1 Arial}.appointmentAddButton small{color:#fff;text-transform:uppercase;letter-spacing:.08em;opacity:0;background:#211d1b;width:max-content;padding:7px 9px;font-size:8px;transition:all .2s;position:absolute;right:72px;transform:translate(5px)}.appointmentAddButton:hover small,.appointmentAddButton:focus-visible small{opacity:1;transform:none}.ownerBookingModal{z-index:120;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.ownerBookingModal .modalBackdrop{background:#211b18aa;border:0;position:absolute;inset:0}.ownerBookingModal form{background:var(--admin-card);width:min(780px,100%);max-height:calc(100vh - 40px);padding:25px;position:relative;overflow:auto;box-shadow:0 28px 90px #211b1866}.ownerBookingModal form>header{justify-content:space-between;gap:20px;display:flex}.ownerBookingModal form>header h3{margin:5px 0;font:600 29px Georgia,serif}.ownerBookingModal form>header p{color:#71645d;max-width:580px;margin:0;font-size:11px;line-height:1.55}.ownerBookingModal form>header>button{color:#665a54;cursor:pointer;background:0 0;border:0;font-size:28px}.ownerBookingGrid{grid-template-columns:repeat(3,1fr);gap:13px;margin-top:22px;display:grid}.ownerBookingGrid label{color:#6c5e57;letter-spacing:.07em;text-transform:uppercase;align-content:start;gap:6px;font-size:9px;font-weight:700;display:grid}.ownerBookingGrid input,.ownerBookingGrid select,.ownerBookingGrid textarea{border:1px solid var(--admin-line);width:100%;min-height:42px;color:var(--admin-ink);text-transform:none;letter-spacing:normal;background:#fff;padding:10px;font:13px Arial,sans-serif}.ownerBookingGrid textarea{resize:vertical}.ownerBookingGrid .wide{grid-column:1/-1}.ownerBookingAddOns{border:1px solid var(--admin-line);margin:16px 0 0;padding:14px}.ownerBookingAddOns legend{color:#6c5e57;text-transform:uppercase;letter-spacing:.08em;padding:0 6px;font-size:9px;font-weight:700}.ownerBookingAddOns label{align-items:center;gap:7px;margin:4px 18px 4px 0;font-size:11px;display:inline-flex}.ownerBookingSummary{background:#f4ede8;gap:28px;margin-top:14px;padding:13px 15px;display:flex}.ownerBookingSummary span{color:#786a63;text-transform:uppercase;letter-spacing:.08em;gap:3px;font-size:9px;display:grid}.ownerBookingSummary strong{color:var(--admin-ink);letter-spacing:0;text-transform:none;font-size:14px}.ownerNotifyChoice{background:#fff;border:1px solid #d9c6bd;align-items:flex-start;gap:10px;margin-top:14px;padding:13px 15px;display:flex}.ownerNotifyChoice input{margin-top:3px}.ownerNotifyChoice span{gap:4px;display:grid}.ownerNotifyChoice strong{font-size:12px}.ownerNotifyChoice small{color:#71645d;font-size:10px;line-height:1.45}.ownerBookingModal footer{justify-content:flex-end;align-items:center;gap:9px;margin-top:18px;display:flex}.ownerBookingModal footer p{flex:1;margin:0}.ownerBookingModal footer button{border:1px solid var(--admin-wine);background:var(--admin-wine);color:#fff;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;padding:11px 14px;font-size:9px;font-weight:800}.ownerBookingModal footer .secondaryAction{color:var(--admin-wine);background:#fff}.ownerBookingModal footer button:disabled{opacity:.45;cursor:not-allowed}@media (max-width:900px){.appointmentCalendarHeader{align-items:flex-end}.calendarDateSummary{align-items:flex-start}.calendarTools{flex-direction:column;align-items:stretch}.calendarTools .appointmentFilters{justify-content:flex-start;margin-left:0}.calendarTimeline.week{overflow-x:auto}.ownerBookingGrid{grid-template-columns:repeat(2,1fr)}}@media (max-width:650px){.appointmentWorkspace{margin:0 -4px}.appointmentCalendarHeader{display:grid}.appointmentCalendarHeader h3{font-size:30px}.calendarHeaderActions{justify-self:stretch}.calendarHeaderActions button{flex:1}.calendarDateSummary{margin-top:14px;padding:13px;display:grid}.calendarDateSummary strong{font-size:21px}.calendarViewSwitch{width:100%}.calendarViewSwitch button{flex:1}.calendarWeekStrip button{min-height:61px}.calendarWeekStrip strong{font-size:15px}.calendarTools{margin-top:12px}.appointmentFilters{padding-bottom:4px;overflow-x:auto;flex-wrap:nowrap!important}.appointmentFilters button{flex:none}.calendarTimeline{grid-template-columns:48px minmax(0,1fr)}.calendarTimeLabels span{font-size:8px;right:6px}.calendarTimeline.week .calendarColumns{min-width:720px!important}.calendarAppointment{width:calc(100% - 8px);padding:7px;left:4px;right:4px}.appointmentAddButton{width:58px;height:58px;margin:0;position:fixed;bottom:78px;right:17px}.ownerBookingModal{align-items:end;padding:0}.ownerBookingModal form{border-radius:18px 18px 0 0;width:100%;max-height:92vh;padding:21px}.ownerBookingGrid{grid-template-columns:1fr}.ownerBookingGrid .wide{grid-column:auto}.ownerBookingSummary{justify-content:space-between}.ownerBookingModal footer{background:var(--admin-card);border-top:1px solid var(--admin-line);margin:18px -21px -21px;padding:13px 21px;position:sticky;bottom:-21px}.ownerBookingModal footer p{display:none}.ownerBookingModal footer button{flex:1}.appointmentModal>section{border-radius:18px 18px 0 0;width:100%;max-height:92vh}.appointmentModal{align-items:end;padding:0}}.calendarAppointment.compact{grid-template-rows:13px 12px;grid-template-columns:auto minmax(0,1fr);align-content:start;gap:1px 6px;padding:2px 5px;line-height:1.1;display:grid}.calendarAppointment.compact time{white-space:nowrap;font-size:10px;line-height:13px}.calendarAppointment.compact strong{margin:0;font-size:11px;line-height:13px}.calendarAppointment.compact span{grid-column:1/-1;margin:0;font-size:10px;line-height:12px}.calendarAppointment.compact small{display:none}.appointmentWorkspace .calendarTools{min-width:0}.appointmentWorkspace .appointmentFilters{justify-content:flex-start;gap:8px;max-width:100%;display:flex;overflow:visible;flex-wrap:wrap!important}.appointmentWorkspace .appointmentFilters button{border:1px solid var(--admin-line);min-height:44px;color:var(--admin-wine);cursor:pointer;background:#fff;border-radius:20px;padding:9px 13px;font:600 12px/1.3 Arial,sans-serif}.appointmentWorkspace .appointmentFilters button.active{background:var(--admin-wine);color:#fff}.appointmentWorkspace .calendarAgenda{gap:24px;min-width:0;margin-top:20px;display:grid}.appointmentWorkspace .calendarDay{border-top:1px solid var(--admin-line);grid-template-columns:150px minmax(0,1fr);gap:16px;min-width:0;padding-top:16px;display:grid}.appointmentWorkspace .calendarDay>header{place-content:start;gap:5px;display:grid}.appointmentWorkspace .calendarDay>header span{color:#71645d;font-size:12px}.appointmentWorkspace .calendarDay>header strong{font:600 19px/1.4 Georgia,serif}.appointmentWorkspace .calendarDay>div{gap:12px;min-width:0;display:grid}.appointmentWorkspace .appointmentCard{box-sizing:border-box;text-align:left;border:1px solid var(--admin-line);width:100%;min-width:0;color:var(--admin-ink);cursor:pointer;background:#fff;border-radius:12px;grid-template-columns:90px minmax(0,1fr);align-items:start;gap:10px 14px;padding:16px;display:grid}.appointmentWorkspace .appointmentCard time{color:var(--admin-wine);font:700 13px/1.5 Arial,sans-serif}.appointmentWorkspace .appointmentCard>span:nth-child(2){overflow-wrap:anywhere;gap:5px;min-width:0;display:grid}.appointmentWorkspace .appointmentCard strong{font-size:15px;line-height:1.4}.appointmentWorkspace .appointmentCard small{color:#71645d;font-size:13px;line-height:1.5}.appointmentWorkspace .appointmentCard .status{white-space:normal;background:#eee7df;border-radius:12px;grid-column:2;justify-self:start;max-width:100%;padding:5px 9px;font-size:12px;line-height:1.4}.appointmentWorkspace .appointmentCard .status.confirmed,.appointmentWorkspace .appointmentCard .status.completed{color:#305c39;background:#e5efe4}.appointmentWorkspace .appointmentCard .status.cancelled,.appointmentWorkspace .appointmentCard .status.no_show{color:#783b35;background:#f4e4e0}.appointmentWorkspace .appointmentCard .paymentStatus{letter-spacing:0;text-transform:none;overflow-wrap:anywhere;color:#71645d;grid-column:2;font-size:12px;line-height:1.5}.appointmentWorkspace .appointmentCard:focus-visible,.appointmentWorkspace .appointmentFilters button:focus-visible{outline:3px solid var(--admin-wine);outline-offset:3px}.appointmentWorkspace .appointmentAddButton{float:none;margin:18px 0 0 auto;position:relative;bottom:auto;right:auto}.appointmentWorkspace .calendarAddMenu{margin-top:18px;position:relative;bottom:auto;right:auto}@media (max-width:700px){.appointmentWorkspace .calendarDay,.appointmentWorkspace .appointmentCard{grid-template-columns:minmax(0,1fr)}.appointmentWorkspace .appointmentCard .status,.appointmentWorkspace .appointmentCard .paymentStatus{grid-column:1}}.calendarAddMenu{z-index:35;background:var(--admin-card);border:1px solid var(--admin-line);gap:6px;padding:12px;display:grid;position:fixed;bottom:150px;right:20px;box-shadow:0 8px 28px #0003}.calendarAddMenu button,.calendarBreakList button{border:1px solid var(--admin-line);background:var(--admin-card);min-height:44px;color:var(--admin-wine);cursor:pointer;padding:10px 16px}.calendarOneOffBreak{z-index:5}.calendarBreakList{justify-content:space-between;align-items:center;gap:12px;margin:10px 0;font-size:12px;display:flex}.appointmentWorkspace .calendarServiceLegend{color:var(--admin-ink);margin:12px 0}.appointmentWorkspace .calendarServiceLegend summary{cursor:pointer;min-height:44px;padding:12px 0;font-size:13px;font-weight:600}.appointmentWorkspace .calendarServiceLegend p{color:#615550;margin:0 0 10px;font-size:12px;line-height:1.5}.appointmentWorkspace .calendarServiceLegend ul{flex-wrap:wrap;gap:8px 16px;max-height:160px;margin:0;padding:3px;list-style:none;display:flex;overflow:auto}.appointmentWorkspace .calendarServiceLegend li{overflow-wrap:anywhere;align-items:center;gap:7px;min-width:0;max-width:100%;font-size:12px;display:flex}.appointmentWorkspace .calendarServiceSwatch{border:1px solid #49403b;border-radius:3px;flex:0 0 13px;width:13px;height:13px;display:inline-block;box-shadow:0 0 0 1px #fff}.appointmentWorkspace .calendarDetailService{align-items:center;gap:8px;display:flex}.appointmentWorkspace .calendarServiceAccent{pointer-events:none;border:1px solid #49403b;border-radius:3px;width:6px;position:absolute;top:3px;bottom:3px;right:3px;box-shadow:0 0 0 1px #fff}.appointmentWorkspace .calendarAppointment.hasServiceColor{padding-right:14px}.appointmentWorkspace .appointmentCard.hasServiceColor{padding-right:25px;position:relative}.appointmentWorkspace .calendarAppointment .calendarServiceLine{align-items:center;gap:5px;min-width:0;display:flex}.appointmentWorkspace .calendarAppointment .calendarServiceName{text-overflow:ellipsis;min-width:0;margin:0;display:block;overflow:hidden}.appointmentWorkspace .calendarAppointment .calendarInlineStatus{display:none}.appointmentWorkspace .calendarAppointment.compact .calendarServiceLine{grid-column:1/-1;margin:0}.appointmentWorkspace .calendarAppointment.compact .calendarServiceName{flex:1}.appointmentWorkspace .calendarAppointment.compact .calendarInlineStatus{border-left:1px solid;flex-shrink:0;max-width:55%;margin:0;padding-left:4px;font-size:9px;font-weight:700;display:block}.appointmentWorkspace .calendarServiceLegend summary:focus-visible{outline:3px solid var(--admin-wine);outline-offset:2px}.appointmentServiceEditor{margin-top:1rem}.appointmentServiceEditor .rescheduleControls{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid}.appointmentServiceEditor .rescheduleControls label:first-child{grid-column:1/-1}.appointmentServiceEditor select{color:#342a27;width:100%;min-height:44px;font:inherit;background:#fff;border:1px solid #b8aaa1;border-radius:.75rem;padding:.75rem}.serviceCorrectionHint,.serviceCorrectionWarning{overflow-wrap:anywhere;font-size:.9rem;line-height:1.5}.serviceCorrectionWarning{color:#6b260d;background:#fff2df;border-radius:.6rem;padding:.8rem}.serviceCorrectionReview{color:#342a27;background:#fffaf2;border:1px solid #c9b18d;border-radius:.8rem;margin-top:1rem;padding:1rem}.serviceCorrectionReview h4{margin:0 0 .6rem;font-size:1.15rem}.serviceCorrectionReview dl{gap:.7rem;margin:1rem 0;display:grid}.serviceCorrectionReview dl>div{flex-wrap:wrap;justify-content:space-between;gap:.3rem .8rem;display:flex}.serviceCorrectionReview dt{font-weight:600}.serviceCorrectionReview dd{overflow-wrap:anywhere;margin:0}.serviceCorrectionActions{flex-wrap:wrap;gap:.75rem;display:flex}.serviceCorrectionActions button{white-space:normal;min-height:44px}.appointmentServiceEditor :focus-visible{outline-offset:3px;outline:3px solid #704b25}@media (max-width:480px){.appointmentServiceEditor .rescheduleControls{grid-template-columns:1fr}.serviceCorrectionActions button{width:100%}}.ownerBookingModal .calendarBreakSave{color:#fff;cursor:pointer;background:#532936;border:1px solid #532936;border-radius:6px;justify-content:center;align-items:center;min-height:44px;padding:12px 20px;font-size:12px;font-weight:700;line-height:1.3;display:inline-flex}.ownerBookingModal .calendarBreakSave:hover:not(:disabled){background:#3e1d27}.ownerBookingModal .calendarBreakSave:focus-visible{outline-offset:3px;outline:3px solid #a86937}.ownerBookingModal .calendarBreakSave:disabled{color:#fff;opacity:1;cursor:wait;background:#65555a;border-color:#65555a}.ownerBookingExtras{color:#332a26;background:#fff;border:1px solid #bca89e;border-radius:8px;min-width:0}.ownerBookingExtras>summary{cursor:pointer;color:#332a26;min-height:48px;padding:12px 14px;font-size:14px}.ownerBookingExtras>summary strong{margin-right:12px}.ownerBookingExtras>summary span{color:#66574f;font-size:12px}.ownerBookingExtras>summary:focus-visible,.ownerBookingExtrasSetup a:focus-visible{outline-offset:3px;outline:3px solid #895d32}.ownerBookingExtrasContent{padding:0 14px 14px}.ownerBookingExtrasContent p{color:#66574f;margin:8px 0;font-size:12px;line-height:1.5}.ownerBookingExtrasContent fieldset{border:0;min-width:0;padding:0}.ownerBookingExtrasContent legend{margin-bottom:6px;font-size:12px;font-weight:700}.ownerBookingExtrasContent label{text-transform:none;letter-spacing:normal;cursor:pointer;align-items:center;gap:10px;min-height:44px;padding:8px 0;font-size:14px;display:flex}.ownerBookingExtrasContent input[type=checkbox]{accent-color:#532936;flex:0 0 20px;width:20px;height:20px;min-height:20px;padding:0}.ownerBookingExtrasContent label span{gap:4px;display:grid}.ownerBookingExtrasContent small{font-size:12px;font-weight:400}.ownerBookingExtrasContent fieldset:disabled{opacity:.65}.ownerBookingExtrasSetup{border-top:1px solid #dfd2ca;margin-top:12px;padding-top:12px}.ownerBookingExtrasSetup a{color:#532936;align-items:center;min-height:44px;font-size:13px;font-weight:700;text-decoration:underline;display:inline-flex}.ownerBookingFields{border:0;min-width:0;margin:0;padding:0}.ownerAddService{color:#fff;background:#532936;border-radius:8px;min-height:44px}.ownerMultiReview{border:1px solid #bca89e;border-radius:8px;margin:12px 0;padding:16px}.ownerMultiReview small{display:block}.ownerMultiReview button{min-height:44px}.ownerBookingModal footer p.saveError{white-space:normal;overflow-wrap:anywhere;flex-basis:100%;display:block}.ownerBookingModal footer{flex-wrap:wrap}.appointmentModal{z-index:120;isolation:isolate;overscroll-behavior:contain}.appointmentModal>section{box-sizing:border-box;overscroll-behavior:contain;scrollbar-gutter:stable;min-width:0;max-height:calc(100dvh - 40px);color:var(--admin-ink,#30262a)}.appointmentModal header>button{cursor:pointer;border-radius:8px;min-width:44px;min-height:44px}.appointmentDetailGrid>div{overflow-wrap:anywhere;min-width:0}.appointmentActions{flex-wrap:wrap;gap:12px}.appointmentActions button,.rescheduleControls button{cursor:pointer;border-radius:8px;min-height:44px;line-height:1.4}.appointmentActions button:disabled,.rescheduleControls button:disabled{cursor:not-allowed}.appointmentModal button:focus-visible,.appointmentModal a:focus-visible{outline:3px solid var(--admin-wine,#522e37);outline-offset:3px;box-shadow:0 0 0 2px #fff}@media (max-width:760px){.appointmentModal{align-items:center;padding:12px}.appointmentModal>section{border-radius:16px;width:min(680px,100%);max-height:calc(100dvh - 24px);padding:20px 16px}.appointmentActions{grid-template-columns:1fr}.appointmentActions button{width:100%}.appointmentDetailGrid{gap:16px}}.teamWorkspace.managerPolished.workspacePageCustom .managerPanel .appointmentModal .appointmentDetailGrid a{color:var(--admin-wine,#522e37);text-decoration:underline}
