.function-page {
    --function-radius: 1.2rem;
    --insights-muted: var(--bs-secondary-color);
    min-width: 0;
    padding-block: 1.5rem;
}
.function-page > :is(.container, .container-fluid, .insights-overview) { padding-top: 0 !important; }
.function-page > :is(.transaction-workspace, .reconciliation-workspace, #bills-workspace) { padding-inline: 0; }
.function-heading, .insights-heading { margin-bottom: 1.5rem; }
.function-heading { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 1rem 1.5rem; }
.function-heading > div:first-child { flex: 1 1 20rem; min-width: 0; max-width: 48rem; }
.function-heading .workspace-filters { flex: 1 1 18rem; max-width: 100%; }
.function-eyebrow, .insights-eyebrow { color: var(--bs-primary-text-emphasis); font-size: .72rem; text-transform: uppercase; letter-spacing: .1em; font-weight: 600; margin-bottom: .6rem; }
.function-heading h1, .insights-heading h1,
#main-content .function-page :where(h1, .workspace-heading h2, .container > h2, .container-fluid > h2, .container > h4) {
    font-size: clamp(1.7rem, 3vw, 2.3rem);
    font-weight: 700;
    letter-spacing: -.035em;
    overflow-wrap: anywhere;
    margin-bottom: .6rem;
}
.function-description, .insights-heading > p:last-child { color: var(--bs-secondary-color); line-height: 1.7; margin: 0; }
.function-intro, .insights-intro { display: flex; align-items: center; gap: 1rem; padding: 1.4rem; border: 1px solid var(--bs-border-color); border-radius: var(--function-radius); background: linear-gradient(110deg, var(--bs-primary-bg-subtle), var(--bs-body-bg)); margin-bottom: 1.5rem; }
.function-intro > div:not(.function-intro-icon), .insights-intro > div:nth-child(2) { min-width: 0; }
.function-intro-icon, .insights-intro-icon { display: grid; place-items: center; flex-shrink: 0; width: 3rem; height: 3rem; border-radius: .9rem; color: var(--bs-primary-text-emphasis); background: var(--theme-card-bg); font-size: 1.4rem; }
.function-intro h2, .insights-intro h2 { font-size: 1.05rem; font-weight: 600; margin: 0 0 .4rem; }
.function-intro p, .insights-intro p { font-size: .85rem; line-height: 1.6; color: var(--bs-secondary-color); margin: 0; }
.function-count, .insights-count { flex-shrink: 0; margin-left: auto; font-size: .75rem; padding: .5rem .75rem; border-radius: 2rem; background: var(--theme-card-bg); border: 1px solid var(--bs-border-color); color: var(--bs-secondary-color); }
#main-content .function-page .card {
    min-width: 0;
    border: 1px solid var(--bs-border-color) !important;
    border-radius: var(--function-radius);
    background: var(--theme-card-bg);
    box-shadow: none !important;
}
.function-page .insights-card { background: var(--theme-card-bg); }
#main-content .function-page :is(.category-panel, .category-metric, .health-filters, .calendar-grid-wrap, .calendar-upcoming, .meal-day, .meal-empty, .play-panel, .play-activity, .play-empty, .play-day-card, .play-week-nav) { border-radius: var(--function-radius); }
.function-page .card > .card-header { padding: 1.1rem 1.4rem; border-radius: calc(var(--function-radius) - 1px) calc(var(--function-radius) - 1px) 0 0; background: transparent !important; color: var(--bs-body-color) !important; }
.function-page .card > .card-header :is(h2, h3, h4, h5, h6) { font-size: 1.05rem; font-weight: 600; letter-spacing: -.02em; color: var(--bs-body-color) !important; }
.function-page .card > .card-body { padding: 1.4rem; }
.function-page .section-heading { flex-wrap: wrap; }
.function-page .section-heading h3 { font-size: 1rem; font-weight: 600; letter-spacing: -.02em; color: var(--bs-body-color); }
.function-page .card > :is(.table-responsive, .list-group):last-child { border-radius: 0 0 var(--function-radius) var(--function-radius); }
.function-page .card > .table-responsive:first-child { border-top-left-radius: var(--function-radius); border-top-right-radius: var(--function-radius); }
.function-page .finance-secondary > summary { font-size: .8rem; }
.function-page :is(.form-control, .form-select) { max-width: 100%; }
.function-page canvas { max-width: 100%; }
.function-page .form-label { font-weight: 500; }
.function-page .finance-tools { max-width: 100%; }
.function-page .transaction-toolbar { justify-content: flex-end; }
@media (max-width: 640px) {
    .function-page { padding-block: 1rem; }
    .function-heading .workspace-filters { justify-content: flex-start; }
    .function-intro, .insights-intro { flex-wrap: wrap; padding: 1rem; }
    .function-intro > div:not(.function-intro-icon), .insights-intro > div:nth-child(2) { flex: 1; min-width: min(10rem, 100%); }
    .function-count, .insights-count { margin-left: 0; }
    .function-page .card > :is(.card-body, .card-header) { padding: 1rem; }
}
