#family-access-panel[hidden] { display:none !important; }
.ministry-homepage-button { justify-self:start; max-width:100%; white-space:normal; text-align:left; }
.ministry-homepage-button[hidden] { display:none; }
#family-access-body .button { font-size:14px; }
#family-access-title { min-width:0; overflow-wrap:anywhere; }
.registered-users-homepage-dialog { width:min(760px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); overflow-y:auto; }
.registered-users-homepage-dialog .edit-dialog-header { margin-bottom:8px; }
.registered-users-homepage-dialog .edit-dialog-header h2 { min-width:0; font-size:22px; line-height:1.25; }
.registered-users-homepage-dialog .close-dialog { flex:none; }
.registered-users-homepage-access { display:grid; gap:12px; }
.registered-users-access-accordion { margin-top:20px; }
.registered-users-access-accordion:not([open]) > .registered-users-homepage-access { display:none; }
.registered-users-homepage-footer { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; margin-top:24px; padding-top:18px; border-top:1px solid var(--border); }
.registered-users-homepage-footer .family-preview-entry { margin:0; }
.registered-users-homepage-footer-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:10px; margin-left:auto; }
@media(max-width:700px) { .registered-users-homepage-dialog { width:calc(100vw - 24px); max-height:calc(100dvh - 24px); } .registered-users-homepage-footer .button { min-height:44px; white-space:normal; } }
#family-access-body { font-size:14px; line-height:1.5; }
.family-access-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:0; }
.family-access-field { display:grid; gap:6px; min-width:0; color:var(--ink); font-size:14px; font-weight:650; }
.family-access-field input,.family-access-field select { box-sizing:border-box; width:100%; min-width:0; min-height:42px; padding:9px 10px; color:var(--ink); background:var(--paper,#fff); border:1px solid var(--border); border-radius:7px; font:400 14px var(--font-ui); }
.family-access-field input[readonly] { color:var(--muted); }
.family-access-verification { display:flex; grid-column:1/-1; align-items:flex-start; gap:9px; font-size:14px; }
.family-access-verification input { flex:none; width:17px; height:17px; margin-top:3px; accent-color:var(--navy); }
.family-access-form > .button { justify-self:start; grid-column:1/-1; }
#family-access-body > .family-access-note,.family-access-note { margin:0; color:var(--muted); font-size:14px; line-height:1.5; }
.family-access-warning { margin:0; color:#81571b; font-size:14px; }
.family-access-created,.family-access-confirmation { display:grid; gap:10px; padding:13px; border:1px solid var(--border); border-radius:8px; }
.family-access-created > .button,.family-access-confirmation > .button { justify-self:start; }
.family-access-confirmation p { margin:0; }
.family-access-list { padding-top:12px; border-top:1px solid var(--border); }
.family-access-list h4 { margin:0 0 10px; color:var(--ink); font-size:14px; }
.family-access-list ul { display:grid; gap:10px; margin:0; padding:0; list-style:none; }
.family-access-list li { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:3px 12px; overflow-wrap:anywhere; }
.family-access-list li > span,.family-access-list li > small { grid-column:1; color:var(--muted); font-size:14px; }
.family-access-list li > .button { grid-column:2; grid-row:1/4; align-self:center; }
.family-access-status { margin:0; font-size:14px; }
.family-access-status:empty { display:none; }
.family-access-status[data-state=error] { color:#a93a31; }
#family-access-body > .button { justify-self:start; }
#family-access-body :disabled { cursor:not-allowed; opacity:.6; }
html[data-theme="dark"] .family-access-field input,html[data-theme="dark"] .family-access-field select { background:#171717; border-color:#494949; }
html[data-theme="dark"] .family-access-warning { color:#e4bd80; }
html[data-theme="dark"] .family-access-status[data-state=error] { color:#ffb9ac; }
@media(max-width:700px) {
  .family-access-form { grid-template-columns:minmax(0,1fr); }
  .family-access-list li { grid-template-columns:minmax(0,1fr); }
  .family-access-list li > .button { grid-column:1; grid-row:auto; justify-self:start; margin-top:5px; }
  #family-access-body .button { min-height:44px; }
}
