.responsive-dialog{border:1px solid var(--border);width:min(38rem,100% - 3rem);max-height:calc(100dvh - 3rem);color:var(--text);overscroll-behavior:contain;background:#fff;border-radius:1rem;margin:auto;padding:0;overflow:hidden;box-shadow:0 20px 65px #031b6829}.responsive-dialog[open]{flex-direction:column;display:flex}.responsive-dialog::backdrop{background:#10233c80}.responsive-dialog-header{z-index:1;border-bottom:1px solid var(--border);background:#fff;flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.4rem 1.5rem 1rem;display:flex;position:relative}.responsive-dialog-header h2{color:var(--brand-navy);letter-spacing:-.025em;overflow-wrap:anywhere;margin:0;font-size:1.35rem}.responsive-dialog-header p{color:var(--text-muted);overflow-wrap:anywhere;margin:.4rem 0 0;font-size:.88rem;line-height:1.5}.responsive-dialog-header>div{min-width:0}.responsive-dialog>.responsive-dialog-header>.dialog-close.ms-button{width:44px;min-width:44px;height:44px;min-height:44px;color:var(--invoice-ink,var(--brand-deep));box-shadow:none;cursor:pointer;background:#f3f7fd;border:0;border-radius:.5rem;flex-shrink:0;justify-content:center;align-self:center;align-items:center;padding:0;line-height:1;display:inline-flex}.responsive-dialog>.responsive-dialog-header>.dialog-close.ms-button>.ms-button__label{justify-content:center;align-items:center;line-height:1;display:flex}.responsive-dialog>.responsive-dialog-header>.dialog-close.ms-button svg{pointer-events:none;flex-shrink:0;width:20px;height:20px;display:block}.responsive-dialog>.responsive-dialog-header>.dialog-close.ms-button:hover:not(:disabled){color:var(--brand-primary);background:#e5edf7}.responsive-dialog>.responsive-dialog-header>.dialog-close.ms-button:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.responsive-dialog>.responsive-dialog-header>.dialog-close.ms-button:disabled{opacity:.5;cursor:not-allowed}.responsive-dialog-body{overscroll-behavior:contain;scrollbar-gutter:stable;flex:1;min-width:0;min-height:0;padding:1.25rem 1.5rem 1.5rem;overflow-y:auto}.responsive-dialog .admin-form{max-width:none}.responsive-dialog .member-search{background:0 0;border:0;margin:0 0 1rem;padding:0}.responsive-dialog .admin-actions{border-top:1px solid var(--border);justify-content:flex-end;padding-top:1rem}.responsive-dialog-body:empty{display:none}.responsive-dialog>.responsive-dialog-body:has(>.responsive-dialog-form){scrollbar-gutter:auto;flex-direction:column;padding:0;display:flex;overflow:hidden}.responsive-dialog>.responsive-dialog-body>form.responsive-dialog-form{border:0;flex-direction:column;flex:1;gap:0;min-width:0;max-width:none;min-height:0;margin:0;padding:0;display:flex;overflow:hidden}.responsive-dialog-form-content{overscroll-behavior:contain;scrollbar-gutter:stable;flex:1;align-content:start;gap:1rem;min-width:0;min-height:0;display:grid;overflow-y:auto}.responsive-dialog .responsive-dialog-form-content{max-width:none;padding:1.25rem 1.5rem 1.5rem}.responsive-dialog-footer,.responsive-dialog-form-footer{border-top:1px solid var(--border);background:#fff;flex-shrink:0;gap:.65rem;min-width:0;padding:1rem 1.5rem;display:grid}.responsive-dialog :is(.responsive-dialog-footer,.responsive-dialog-form-footer)>:is(.admin-actions,.dialog-footer,.dialog-actions,.finance-form__footer,.student-availability-dialog__form-actions){background:0 0;border:0;flex-wrap:wrap;justify-content:flex-end;gap:.55rem;margin:0;padding:0;display:flex;position:static}.responsive-dialog :is(.responsive-dialog-footer,.responsive-dialog-form-footer)>:is(.admin-actions,.dialog-footer,.dialog-actions,.finance-form__footer,.student-availability-dialog__form-actions)>*{min-width:0;max-width:100%}.responsive-dialog :is(.responsive-dialog-footer,.responsive-dialog-form-footer) .ms-button{white-space:normal;overflow-wrap:anywhere}.responsive-dialog>.responsive-dialog-footer>.date-range-footer{border:0;min-width:0;margin:0;padding:0}.responsive-dialog--with-footer>.responsive-dialog-body:has(.user-combobox-popover--inline){flex-direction:column;display:flex}.responsive-dialog--with-footer .member-search:has(.user-combobox-popover--inline){flex:1;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);align-items:stretch;min-height:0;margin-bottom:0;display:grid}.responsive-dialog--with-footer .user-combobox-field:has(>.user-combobox-popover--inline){grid-template-rows:auto auto minmax(0,1fr);min-height:0}.responsive-dialog--with-footer .user-combobox-popover--inline{flex-direction:column;min-height:0;display:flex}.responsive-dialog--with-footer .user-combobox-popover--inline>.user-combobox-list{flex:1;min-height:0}@media (max-height:480px){.responsive-dialog>.responsive-dialog-header{padding:.65rem 1rem}.responsive-dialog>.responsive-dialog-header h2{font-size:1.15rem}.responsive-dialog>.responsive-dialog-header p{margin-top:.2rem}}.responsive-dialog :focus-visible{outline-offset:3px;outline:3px solid #286dc2}.responsive-dialog label{gap:.35rem;font-size:.85rem;font-weight:650;display:grid}.responsive-dialog input:not([type=checkbox]):not([type=radio]),.responsive-dialog select,.responsive-dialog textarea{border:1px solid var(--border);width:100%;min-width:0;min-height:44px;font:inherit;color:var(--text);background:#fff;border-radius:.5rem;padding:.65rem}.candidate-list{border:0;gap:.5rem;margin:1rem 0;padding:0;display:grid}.candidate-list legend{color:var(--text-muted);margin-bottom:.5rem;font-size:.8rem}.candidate-list label{border:1px solid var(--border);cursor:pointer;border-radius:.65rem;align-items:center;gap:.75rem;min-height:60px;padding:.75rem;display:flex}.candidate-list label:has(input:checked){border-color:var(--brand-primary);background:var(--surface-blue)}.candidate-list input{width:18px;height:18px;accent-color:var(--brand-primary);flex-shrink:0}.candidate-list span{overflow-wrap:anywhere;min-width:0;display:grid}.candidate-list small{color:var(--text-muted);font-weight:400}@media (max-width:640px){.responsive-dialog{border-bottom:0;border-radius:1rem 1rem 0 0;width:100%;max-width:100%;max-height:calc(100dvh - 1rem);margin:auto 0 0}.responsive-dialog-header{padding:1rem}.responsive-dialog-body{padding:1rem 1rem max(1.25rem,env(safe-area-inset-bottom))}.responsive-dialog .admin-actions{background:#fff;gap:.5rem;padding-bottom:1rem;position:sticky;bottom:-1rem}.responsive-dialog .admin-actions>button{flex:1;min-width:0}.responsive-dialog input,.responsive-dialog select,.responsive-dialog textarea{font-size:16px!important}}.responsive-dialog[open]{animation:dialog-enter var(--motion-reveal) var(--motion-ease-out) both}@media (max-width:640px){.responsive-dialog-footer,.responsive-dialog-form-footer{padding:1rem 1rem max(1rem,env(safe-area-inset-bottom))}.responsive-dialog .responsive-dialog-form-content{padding:1rem}.responsive-dialog :is(.responsive-dialog-footer,.responsive-dialog-form-footer)>:is(.admin-actions,.dialog-footer,.dialog-actions,.finance-form__footer,.student-availability-dialog__form-actions)>.ms-button{flex:1}}@media (max-height:480px){:is(.responsive-dialog>.responsive-dialog-body:not(:has(>.responsive-dialog-form)),.responsive-dialog .responsive-dialog-form-content){padding:.5rem 1rem}.responsive-dialog-footer,.responsive-dialog-form-footer{padding:.5rem 1rem max(.5rem,env(safe-area-inset-bottom))}}.responsive-dialog[open]::backdrop{animation:dialog-backdrop-enter var(--motion-standard) ease-out both}@keyframes dialog-enter{0%{opacity:0;transform:translateY(10px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes dialog-backdrop-enter{0%{opacity:0}to{opacity:1}}@media (max-width:640px){.responsive-dialog[open]{animation-name:dialog-sheet-enter}@keyframes dialog-sheet-enter{0%{opacity:.65;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}}@media (prefers-reduced-motion:reduce){.responsive-dialog[open],.responsive-dialog[open]::backdrop{animation:none}.responsive-dialog-body,.responsive-dialog-form-content{scroll-behavior:auto}}
