.reschedule-dialog{width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid #dfe8e5;border-radius:14px;padding:0;background:#fff;color:#223632;box-shadow:0 24px 70px #122b2450}
.reschedule-dialog::backdrop{background:#102e2a80;backdrop-filter:blur(2px)}
.reschedule-form{display:grid;gap:16px;padding:24px}
.reschedule-form h3{margin:0;font-size:18px;color:#213a35}
.reschedule-form label{display:grid;gap:7px;color:#52625e;font-size:12px;font-weight:600}
.reschedule-form input{width:100%;min-height:44px;border:1px solid #dbe4e1;border-radius:8px;background:#fff;padding:10px 11px;color:#223632}
.reschedule-form input:focus{outline:2px solid var(--brand);outline-offset:1px}
.dialog-actions{display:flex;align-items:center;justify-content:flex-end;gap:18px;margin-top:4px}
@media(max-width:480px){.reschedule-form{padding:19px}.dialog-actions{justify-content:space-between}}
.edit-dialog{width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid #dfe8e5;border-radius:14px;padding:0;background:#fff;color:#223632;box-shadow:0 24px 70px #122b2450}
.edit-dialog::backdrop{background:#102e2a80;backdrop-filter:blur(2px)}
.edit-form{display:grid;gap:15px;padding:24px}
.edit-form h3{margin:0;font-size:18px;color:#213a35}
.edit-form label{display:grid;gap:7px;color:#52625e;font-size:12px;font-weight:600}
.edit-form input,.edit-form select,.edit-form textarea{width:100%;min-height:44px;border:1px solid #dbe4e1;border-radius:8px;background:#fff;padding:10px 11px;color:#223632}
.edit-form input:focus,.edit-form select:focus,.edit-form textarea:focus{outline:2px solid var(--brand);outline-offset:1px}
@media(max-width:480px){.edit-form{padding:19px}}
.signup-cta{border-top:1px solid #edf1ef;padding-top:16px;margin:15px 0 0;text-align:center;color:#71817e;font-size:12px}
.signup-cta a{color:var(--brand);font-weight:700}
.consent{display:flex!important;align-items:flex-start;gap:10px!important;font-weight:400!important;line-height:1.5}
.consent input[type="checkbox"]{width:17px;min-width:17px;height:17px;margin:2px 0 0;padding:0;accent-color:var(--brand)}
.sidebar nav .nav-group-label{display:block;margin:18px 10px 4px;color:#8ca9a2;font-size:11px;text-transform:uppercase;letter-spacing:.12em}
@media(max-width:680px){.sidebar nav .nav-group-label{align-self:center;margin:0 7px;font-size:10px;white-space:nowrap}}
.mini-form select{width:100%;border:1px solid #dbe4e1;border-radius:8px;background:#fff;padding:10px 11px;color:#223632}
