/* Small shared workflow surfaces; the main mobile navigation stays in place. */
dialog:has(.agent-booking),dialog:has(.review-agent-editor){width:min(880px,calc(100vw - 32px))}
.agent-booking,.review-agent-editor,.review-client-card{min-width:0}
#create-appointment-heading:focus,#review-editor-heading:focus{outline:none}
.create-form-fields,.review-form-fields{border:0;padding:0;margin:0;min-width:0}
.create-agent-context h3,.review-agent-editor>h3{font-size:22px;letter-spacing:-.4px;margin:7px 0 0}
.create-steps{display:flex;list-style:none;gap:28px;padding:0;margin:21px 0 26px;color:var(--muted);font-size:13px}
.create-steps li{display:flex;align-items:center;gap:8px;white-space:nowrap}
.create-steps li>span{display:grid;place-items:center;width:27px;height:27px;border:1px solid var(--line);border-radius:50%;font-size:12px}
.create-steps .active{color:var(--teal);font-weight:700}.create-steps .active>span,.create-steps .complete>span{background:var(--teal);border-color:var(--teal);color:#fff}
.create-section{margin:22px 0;padding-bottom:23px;border-bottom:1px solid var(--line)}
.create-section:first-of-type{margin-top:0}.create-section h3{font-size:16px;margin-bottom:13px}
.create-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.create-location-choices{border:0;padding:0;margin:18px 0 0;min-width:0}.create-location-choices legend{font-size:12px;font-weight:650;margin-bottom:9px}
.create-location-choices>div{display:flex;gap:9px;flex-wrap:wrap}
.create-location{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 12px;background:#fff;border:1px solid var(--line);border-radius:9px;color:var(--ink);font:inherit;font-size:13px;font-weight:600}
.create-location.selected{border-color:var(--teal);background:var(--teal-soft);color:var(--teal)}.create-location .icon{width:17px;height:17px;flex-shrink:0}
.create-location-info{padding:13px 15px;border-radius:9px;background:#f4f7fa;margin-top:13px;font-size:13px;overflow-wrap:anywhere}.create-location-info p{margin-top:4px;white-space:pre-line}
.create-home-address{margin-top:14px}.create-home-address>.field-help{margin:10px 0}
.create-client-search{border:1px solid var(--line);border-radius:9px;padding:12px 14px;margin-bottom:18px}.create-client-search summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--teal)}
.create-search-row{display:flex;gap:8px;margin-top:13px}.create-search-row input{min-width:0;flex:1}.create-search-row .btn{flex-shrink:0}
.create-client-match{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;text-align:left;padding:11px;background:#fff;border:0;border-bottom:1px solid var(--line);border-radius:5px;font:inherit;font-size:13px;color:var(--ink)}.create-client-match:hover,.create-client-match:focus-visible{background:var(--teal-soft)}.create-client-match span{font-size:12px;color:var(--muted);overflow-wrap:anywhere}
.create-delivery{display:flex;gap:24px;flex-wrap:wrap;margin:14px 0}.create-permission{margin-top:15px}.create-permission .field-help{margin-left:27px}.create-permission .check{align-items:flex-start;line-height:1.6}.create-permission .check input{margin-top:4px}
.create-review-summary{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:20px;border:1px solid var(--line);border-radius:12px;background:#f7f9fc;margin-bottom:22px}.create-review-summary>div{display:flex;flex-direction:column;gap:5px;overflow-wrap:anywhere}.create-review-summary span{font-size:11px;font-weight:650;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}.create-review-summary strong{font-size:14px;line-height:1.55}.create-review-summary small{font-size:12px;color:var(--muted);line-height:1.6}
.create-notes{display:block;margin-bottom:22px}.create-notes textarea{margin-top:7px}.create-footer{justify-content:space-between;margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}
.agent-booking .booking-time-layout{grid-template-columns:minmax(0,1fr) minmax(210px,.8fr);gap:25px}.agent-booking .slot-list{max-height:350px}.agent-booking .time-group-slots{grid-template-columns:repeat(2,minmax(0,1fr))}.agent-booking .slot-button{width:100%;font-size:12px;min-height:44px}
.agent-booking .booking-calendar-panel{margin-top:14px}.agent-booking .booking-availability-note{line-height:1.7}
.create-empty{padding:20px 0}.create-success>p,.create-success>strong{display:block;margin:13px 0}.create-success h3{font-size:24px}.create-success .confirmation-mark{margin-top:4px}
.review-public-main{max-width:880px;margin:10px auto 0;padding:0 24px}.review-client-card{padding:30px}.review-client-card h1{font-size:27px;letter-spacing:-.6px}.review-client-card>p.muted{margin-top:15px;line-height:1.7}
.review-appointment-context{border:1px solid var(--line);background:#f6f8fb;border-radius:10px;padding:16px 18px;margin:19px 0}.review-appointment-context strong{display:block;font-size:15px;margin:6px 0}.review-appointment-context p{font-size:13px;line-height:1.65;color:var(--muted)}
.review-editor-intro{margin-bottom:15px;line-height:1.75}.review-agent-editor .medicare-saved-photos,.review-client-card .medicare-saved-photos{margin:23px 0}.review-agent-editor .medicare-saved-photos h3,.review-client-card .medicare-saved-photos h3{font-size:16px}.review-agent-editor .medicare-saved-photos .field-help,.review-client-card .medicare-saved-photos .field-help{margin:9px 0 15px}
.medicare-manual-editor{border:0;border-radius:0;background:transparent;padding:0;margin-top:22px}.medicare-manual-editor .medicare-section:first-child{margin-top:0}.review-form-footer{justify-content:space-between;margin-top:23px}.review-conflict{border:1px solid #e7bf74;background:#fffbf1;border-radius:10px;padding:16px;margin:18px 0}.review-conflict p{font-size:13px;line-height:1.65;margin:8px 0 12px}
.review-invite{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding-top:21px;margin-top:24px}.review-invite strong{font-size:14px}.review-invite .btn{flex-shrink:0}.review-invite .field-help{margin-top:6px}.review-contact{font-size:13px;line-height:1.8;margin-top:25px;border-top:1px solid var(--line);padding-top:19px;overflow-wrap:anywhere}
.review-detail-actions{border:1px solid var(--line);background:#f8fafc;border-radius:10px;padding:15px;margin:18px 0}.review-detail-actions p{font-size:12px;line-height:1.7;color:var(--muted);margin-bottom:10px}.review-detail-actions .actions{gap:9px;flex-wrap:wrap}
@media(max-width:760px){
  dialog:has(.agent-booking),dialog:has(.review-agent-editor){width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;border-radius:0;border:0}
  dialog:has(.agent-booking) .dialog-head,dialog:has(.review-agent-editor) .dialog-head{padding:16px 18px;padding-top:max(16px,env(safe-area-inset-top));z-index:3}
  dialog:has(.agent-booking) .dialog-body,dialog:has(.review-agent-editor) .dialog-body{padding:18px;padding-bottom:max(24px,env(safe-area-inset-bottom))}
  .create-agent-context h3,.review-agent-editor>h3{font-size:21px}.create-steps{gap:20px;font-size:12px;margin:18px 0 24px}
  .create-location-choices>div{gap:7px}.create-location{font-size:12px;padding:10px 7px;gap:5px}.create-location>.icon:last-child:not(:first-child){display:none}
  .create-section-heading{align-items:flex-start;flex-direction:column;gap:0}.create-section-heading .small{margin-top:-7px;margin-bottom:12px}
  .create-client-match{align-items:flex-start;flex-direction:column;gap:4px}.create-delivery{gap:22px}.create-review-summary{grid-template-columns:1fr;padding:16px;gap:17px}
  .agent-booking .booking-time-layout{grid-template-columns:1fr;gap:22px}.agent-booking .slot-list{max-height:230px;display:block}.agent-booking .time-group-slots{grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.agent-booking .slot-button{min-width:0;font-size:12px}
  .agent-booking .mini-day{max-width:48px;justify-self:center;width:100%}.create-footer,.review-form-footer{position:sticky;bottom:calc(-1 * max(24px,env(safe-area-inset-bottom)));background:#fff;z-index:2;padding:14px 0 max(15px,env(safe-area-inset-bottom));gap:10px}
  .create-footer .btn,.review-form-footer .btn{min-height:46px;white-space:normal;text-align:center}.create-footer .btn[type=submit]{flex:1}.create-footer .icon{flex-shrink:0}
  .review-public-main{padding:0 12px}.review-client-card{padding:22px 18px}.review-client-card h1{font-size:24px}.review-invite{align-items:stretch;flex-direction:column;gap:13px}.review-invite .btn{justify-content:center;min-height:46px}
  .review-client-card .review-form-footer{position:static;padding-bottom:0}
}
@media(max-width:370px){.create-steps{gap:15px}.create-location{flex-basis:100%;justify-content:flex-start}.create-location>.icon:last-child:not(:first-child){display:block;margin-left:auto}.agent-booking .time-group-slots{grid-template-columns:repeat(2,minmax(0,1fr))}.review-form-footer{flex-wrap:wrap}.review-form-footer .btn{flex:1}}
