/* Final cascade guard for the compact household shell. */
.household-header-strip {
    position: relative;
    z-index: 60;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    margin-bottom: 14px;
    overflow: visible;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
}

/* The measured header wrapper must shrink with the shell, including its
   horizontally scrolling tab rail. An auto grid track kept it at 1280px. */
.household-header-strip > div { min-width: 0; }

/* No z-index here. `position: relative` alone creates no stacking context, and
   that is the point: the header strip already claims z-index 60, so it sits
   above the body without this element trapping anything. A z-index on this
   wrapper made it a stacking context, which capped every overlay rendered
   inside the household body -- the policy editor's fixed .folio-scrim (z 110),
   selectbox lists (130), popovers (110), tooltips (120) -- at the wrapper's own
   level, so the header strip and the sticky topbar painted over the modal. */
#household-detail-view > .household-detail {
    position: relative;
}

.household-settings-actions {
    z-index: 1;
}

.household-tabs-root .household-subtabs-nav {
    display: flex;
    grid-template-columns: none;
    flex-wrap: nowrap;
    gap: 0;
    margin: 0;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 0 8px;
    border: 1px solid var(--book-line);
    border-top: 0;
    border-radius: 0 0 6px 6px;
    background: #fffdf8;
}

.household-tabs-root .household-subtabs-nav .household-tab {
    flex: 1 0 auto;
    width: auto;
    min-width: max-content;
    min-height: 42px;
    padding: 9px 13px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--book-muted);
    font-size: 12px;
    white-space: nowrap;
}

.household-tabs-root .household-subtabs-nav .household-tab.active,
.household-tabs-root .household-subtabs-nav .household-tab:hover {
    border: 0;
    background: #fbf5e9;
    color: #725424;
}

@media (max-width: 720px) {
    .household-tabs-root .household-subtabs-nav .household-tab {
        flex: 0 0 auto;
        padding: 9px 11px;
        font-size: 11px;
    }

}
/* Review helpers use native controls and keep their evidence readable. */
.cashflow-review-dialog { width:min(520px, calc(100vw - 32px)); border:1px solid var(--f-line, #b8b7ad); border-radius:12px; background:var(--f-paper, #fffdf8); color:var(--f-ink, #243b30); padding:24px; }
.cashflow-review-dialog::backdrop { background:rgba(16,35,28,.45); }
.cashflow-review-dialog label { display:grid; gap:6px; margin:16px 0; }
.cashflow-review-dialog select,.cashflow-review-dialog textarea { width:100%; padding:10px; box-sizing:border-box; }
.funding-starter-choices { display:grid; gap:12px; max-width:420px; }
.funding-starter-choices label { display:grid; gap:8px; }
.funding-starter-choices select { padding:10px; }

/* Compact review links sit below the household roster. */
.folio .household-attention { display:flex; flex-wrap:wrap; align-items:center; gap:8px 20px; padding:12px 16px; margin:0 0 24px; border:1px solid var(--f-line); border-radius:8px; background:var(--f-paper); }
.folio .household-attention > strong { font:600 12px/1.4 var(--f-font-ui); color:var(--f-muted); }
.folio .household-attention__items { display:flex; flex-wrap:wrap; gap:8px 20px; }
.folio .household-attention .folio-cardlink { font-size:12px; }
