/* The appointment editor uses the same workspace and full-height phone dialog. */
/* Keep the main edit action above long medication, photo, and intake content. */
#dialog .appointment-detail-head{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:14px 16px;z-index:4}
#dialog .appointment-detail-head>h2{min-width:0;grid-column:1;grid-row:1}
#dialog .appointment-detail-head>.icon-only{grid-column:2;grid-row:1;justify-self:end}
.appointment-detail-actions{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:14px;border-top:1px solid var(--line)}
.appointment-detail-actions p{min-width:0;flex:1;margin:0;color:var(--muted);font-size:12px;line-height:1.6}
.appointment-detail-actions .btn{flex-shrink:0;min-height:44px}
dialog:has(.appointment-edit){width:min(880px,calc(100vw - 32px))}
.appointment-edit{min-width:0}.edit-form-fields{border:0;padding:0;margin:0;min-width:0}
#appointment-edit-heading:focus,[data-edit-calendar-heading]:focus{outline:none}
.edit-context{padding-bottom:23px}.edit-context h3{font-size:22px;letter-spacing:-.4px;margin:7px 0}.edit-context p{color:var(--muted);font-size:13px;line-height:1.7}
.edit-time-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid var(--line);background:#f6f8fc;border-radius:10px;margin-top:19px;padding:16px 18px}.edit-time-summary>div{min-width:0;display:flex;flex-direction:column;gap:7px}.edit-time-summary strong{font-size:15px;line-height:1.6}.edit-time-summary span:not(.eyebrow){font-size:12px;color:var(--muted);line-height:1.6}.edit-time-summary .btn{flex-shrink:0}.edit-keep-time{margin:9px 0 0}
.appointment-edit .edit-calendar{margin-top:19px}.appointment-edit .booking-time-layout{grid-template-columns:minmax(0,1fr) minmax(210px,.8fr);gap:25px}.appointment-edit .slot-list{max-height:340px}.appointment-edit .time-group-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.appointment-edit .slot-button{width:100%;font-size:12px;min-height:44px}.appointment-edit .create-home-address>.btn{margin-top:12px}.edit-office-choice{margin-top:12px}.edit-office-choice .btn{margin-top:8px}.edit-meeting-notes{display:block;margin-top:16px}.edit-duration-choice{margin-top:10px}
.edit-contact-confirmation{border:1px solid #b8d3f8;background:#f3f8ff;border-radius:10px;padding:14px 15px;margin-top:18px}.edit-contact-confirmation .check{align-items:flex-start;line-height:1.6}.edit-contact-confirmation .check input{margin-top:4px}.edit-contact-confirmation .field-help{margin:8px 0 0 27px}.edit-contact-confirmation[hidden],[data-edit-sms-consent][hidden]{display:none!important}
.edit-intake{margin-top:25px}.edit-intake .intake-public{margin-bottom:0}.edit-review-retained{margin-top:20px;border-radius:9px;background:#f4f7fa;padding:13px 15px;color:var(--muted);font-size:12px;line-height:1.8}.edit-additional{margin-bottom:0;border-bottom:0;padding-bottom:0}.edit-footer{display:flex;justify-content:space-between;gap:12px;margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}
.appointment-edit .field-help{line-height:1.7}.appointment-edit .create-section>.field-help{margin-top:12px}.appointment-edit .create-section h3{font-size:16px}
@media(max-width:760px){
 .appointment-detail-actions{flex-direction:column;align-items:stretch;gap:10px}
 .appointment-detail-actions .btn{justify-content:center;white-space:normal;text-align:center}
 dialog:has(.appointment-edit){width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;border-radius:0;border:0}
 dialog:has(.appointment-edit) .dialog-head{padding:16px 18px;padding-top:max(16px,env(safe-area-inset-top));z-index:3}
 dialog:has(.appointment-edit) .dialog-body,body.abn-phone-workspace #dialog:has(.appointment-edit) .dialog-body{padding:18px;padding-bottom:max(24px,env(safe-area-inset-bottom));scroll-padding-bottom:110px}
 .edit-context h3{font-size:21px}.edit-context{padding-bottom:20px}.edit-time-summary{align-items:stretch;flex-direction:column;gap:14px;padding:15px}.edit-time-summary .btn{justify-content:center}
 .appointment-edit .booking-time-layout{grid-template-columns:1fr;gap:22px}.appointment-edit .slot-list{max-height:230px;display:block}.appointment-edit .time-group-slots{grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.appointment-edit .slot-button{min-width:0;font-size:12px}.appointment-edit .mini-day{max-width:48px;justify-self:center;width:100%}
 .edit-footer{margin-inline:-18px;padding-inline:18px;position:sticky;bottom:calc(-1 * max(24px,env(safe-area-inset-bottom)));background:#fff;z-index:2;padding:14px 18px max(15px,env(safe-area-inset-bottom));gap:10px}.edit-footer .btn{min-height:46px;white-space:normal;text-align:center}.edit-footer .btn[type=submit]{flex:1}.edit-contact-confirmation{padding:13px}.edit-contact-confirmation .field-help{margin-left:0}
}
@media(max-width:370px){.appointment-edit .time-group-slots{grid-template-columns:repeat(2,minmax(0,1fr))}.edit-footer{flex-wrap:wrap}.edit-footer .btn{flex:1}}
