#family-home-publication-body[hidden] { display:none !important; }
#family-home-publication-body { display:grid; gap:12px; margin-top:0; padding-top:16px; border-top:0; font-size:14px; line-height:1.5; }
#family-home-publication-body:not([hidden]) + #family-access-body { margin-top:16px; padding-top:16px; border-top:1px solid var(--border); }
.family-home-publication-title { margin:0; color:var(--ink); font-size:14px; font-weight:650; }
.family-home-publication-note { margin:0; color:var(--muted); font-size:14px; line-height:1.5; overflow-wrap:anywhere; }
.family-home-publication-state { margin:0; color:var(--ink); font-size:14px; font-weight:650; }
.family-home-publication-warning,.family-home-publication-state.needs-review { margin:0; color:#81571b; font-size:14px; }
.family-home-publication-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:0; }
.family-home-publication-form .wide { grid-column:1/-1; }
.family-home-publication-field { display:grid; gap:6px; min-width:0; color:var(--ink); font-size:14px; font-weight:650; }
.family-home-publication-field input,.family-home-publication-field textarea,.family-home-publication-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-home-publication-field textarea { resize:vertical; }
.family-home-publication-field input[readonly] { background:var(--canvas,var(--paper,#fff)); cursor:default; }
.family-home-publication-logo { display:flex; align-items:center; min-width:0; }
.family-home-publication-logo img { display:block; width:auto; height:auto; max-width:160px; max-height:90px; object-fit:contain; }
.family-home-publication-logo img[hidden] { display:none; }
.family-home-publication-summary { display:grid; gap:8px; min-width:0; padding:12px; border:1px solid var(--border); border-radius:8px; background:var(--canvas,var(--paper,#fff)); }
.family-home-publication-summary-heading { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px; }
.family-home-publication-summary-content { display:flex; flex-wrap:wrap; align-items:center; gap:8px 16px; min-width:0; }
.family-home-publication-summary-content .family-home-publication-logo,.family-home-publication-summary-content > .family-home-publication-note { order:2; }
.family-home-publication-summary-content .family-home-publication-logo img { max-width:120px; max-height:64px; }
.family-home-publication-contacts { display:grid; gap:5px; margin:0; min-width:0; }
.family-home-publication-summary-content .family-home-publication-contacts { flex:1 1 220px; }
.family-home-publication-contacts > div { display:grid; grid-template-columns:64px minmax(0,1fr); gap:8px; }
.family-home-publication-contacts dt { color:var(--muted); font-weight:400; }
.family-home-publication-contacts dd { min-width:0; margin:0; color:var(--ink); overflow-wrap:anywhere; }
.family-home-publication-calendars { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; min-width:0; margin:8px 0 0; padding:16px 0 0; border:0; border-top:1px solid var(--border); }
.family-home-publication-calendars legend { float:left; width:100%; padding:0; margin:0; }
.family-home-publication-calendars > .family-home-publication-note,.family-home-publication-calendars > .family-home-publication-warning,.family-home-publication-calendar-choices { grid-column:1/-1; }
.family-home-publication-calendar-choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 14px; }
.family-home-publication-calendar-choice { display:flex; align-items:center; gap:9px; min-width:0; min-height:44px; padding:7px 10px; box-sizing:border-box; color:var(--ink); border:1px solid var(--border); border-radius:7px; font-size:14px; font-weight:400; cursor:pointer; }
.family-home-publication-calendar-choice input { flex:none; width:18px; height:18px; margin:0; accent-color:var(--navy); }
.family-home-publication-calendar-choice span { min-width:0; overflow-wrap:anywhere; }
.family-home-publication-warning[hidden] { display:none; }
.family-home-publication-confirm { display:flex; align-items:flex-start; gap:9px; color:var(--ink); font-size:14px; }
.family-home-publication-confirm input { flex:none; width:17px; height:17px; margin-top:3px; accent-color:var(--navy); }
.family-home-publication-actions { display:flex; flex-wrap:wrap; gap:10px; }
#family-home-publication-body .button { justify-self:start; font-size:14px; }
.family-home-publication-confirmation { display:grid; gap:10px; padding:13px; border:1px solid var(--border); border-radius:8px; }
.family-home-publication-confirmation p { margin:0; font-size:14px; }
.family-home-publication-status { margin:0; font-size:14px; }
.family-home-publication-status:empty { display:none; }
.family-home-publication-status[data-state=error] { color:#a93a31; }
#family-home-publication-body :disabled { cursor:not-allowed; opacity:.6; }
html[data-theme="dark"] .family-home-publication-field input,html[data-theme="dark"] .family-home-publication-field textarea,html[data-theme="dark"] .family-home-publication-field select { background:#171717; border-color:#494949; }
html[data-theme="dark"] .family-home-publication-warning,html[data-theme="dark"] .family-home-publication-state.needs-review { color:#e4bd80; }
html[data-theme="dark"] .family-home-publication-summary { background:var(--dark-surface,#171717); border-color:var(--dark-border,#494949); }
html[data-theme="dark"] .family-home-publication-status[data-state=error] { color:#ffb9ac; }
@media(max-width:700px) { .family-home-publication-form,.family-home-publication-calendars,.family-home-publication-calendar-choices { grid-template-columns:minmax(0,1fr); } #family-home-publication-body .button { min-height:44px; } }
