.uk-range { accent-color: hsl(var(--primary)); }
.sim_save_title { font-size: .9rem !important; font-weight: 600; }

.sim_sticky { position: sticky; top: 1rem; }

.sim_cashflow_section {
    padding: 1.25rem 1.25rem 1rem;
    border-bottom: 1px solid hsl(var(--border));
}
.sim_cashflow_val {
    font-size: 1.9rem;
    font-weight: 700;
    font-family: var(--f-mono);
    line-height: 1.2;
    margin: .25rem 0;
}

.sim_kpi_row { border-bottom: 1px solid hsl(var(--border)); }

.sim_sticky .sim_tbl_head {
    padding: .35rem 1rem;
    font-size: .7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: hsl(var(--muted-foreground));
    background: hsl(var(--muted));
}

.sim_sticky .uk-table { margin-bottom: 0; }

.uk-card-header + .uk-card-body { padding-top: 1.25rem; }

.sim_form_grid > .uk-grid-margin { margin-top: 0.5rem; }

.sim_proj_chart_wrap  { position: relative; height: 280px; }
.sim_proj_kpis        { display: flex; flex-direction: column; gap: .5rem; border-top: 1px solid hsl(var(--border)); padding-top: .75rem; }
.sim_proj_kpi_item    { display: flex; justify-content: space-between; align-items: baseline; gap: .5rem; padding: .2rem 0; border-bottom: 1px solid hsl(var(--border) / .5); }
.sim_proj_kpi_item:last-child { border-bottom: none; }
.sim_proj_kpi_val     { font-size: .9rem; }

.sim_save_bar {
    padding: .75rem 1rem;
    border-top: 1px solid hsl(var(--border));
    display: flex;
    align-items: center;
    gap: .5rem;
}

@media (max-width: 959px) {
    .sim_sticky { position: static; }
    .sim_proj_chart_wrap { height: 220px; }
}

@media (max-width: 479px) {
    .sim_form_grid > * { width: 100%; }
    .sim_save_bar { flex-wrap: wrap; }
    .sim_save_bar .uk-input { width: 100%; flex-basis: 100%; }
}
