/* /Pages/BudgetDetail.razor.rz.scp.css */
/* ── Page shell ── */
.buddet-page[b-2mgp9wgg11] {
    padding: 20px 16px 90px;
}

/* ── Header ── */
.buddet-header[b-2mgp9wgg11] {
    display: flex;
    align-items: center;
    margin-bottom: 16px;
}

/* ── Mobile card list ── */
.buddet-list[b-2mgp9wgg11] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.buddet-card[b-2mgp9wgg11] {
    background: #fff;
    border-radius: 10px;
    padding: 12px 14px;
    box-shadow: 0 1px 3px rgba(0,0,0,.07);
    border: 1px solid rgba(0,0,0,.05);
}

.buddet-card--over[b-2mgp9wgg11] {
    border-color: rgba(192,57,43,.25);
}

.buddet-card-header[b-2mgp9wgg11] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.buddet-card-name[b-2mgp9wgg11] {
    flex: 1;
    font-size: .9rem;
    font-weight: 600;
    color: rgba(0,0,0,.85);
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.buddet-card-amounts[b-2mgp9wgg11] {
    font-size: .82rem;
    font-weight: 600;
    color: rgba(0,0,0,.55);
    white-space: nowrap;
    flex-shrink: 0;
}

/* ── Color helpers ── */
.buddet-amount--over[b-2mgp9wgg11] { color: #c0392b !important; }
.buddet-amount--ok[b-2mgp9wgg11]   { color: #2e7d63 !important; }

/* ── Empty state ── */
.buddet-empty[b-2mgp9wgg11] {
    text-align: center;
    padding: 48px 0;
    font-size: .85rem;
    color: rgba(0,0,0,.4);
}

/* ── Desktop table (hidden on mobile) ── */
.buddet-table-wrap[b-2mgp9wgg11] {
    display: none;
}

/* ══════════════════════════════════════════
   Desktop (≥ 768px)
   ══════════════════════════════════════════ */
@media (min-width: 768px) {
    .buddet-page[b-2mgp9wgg11] {
        padding: 28px 32px 32px;
    }

    .buddet-header[b-2mgp9wgg11] {
        margin-bottom: 20px;
    }

    .buddet-list[b-2mgp9wgg11] {
        display: none;
    }

    .buddet-table-wrap[b-2mgp9wgg11] {
        display: block;
        background: #fff;
        border-radius: 10px;
        box-shadow: 0 1px 3px rgba(0,0,0,.07);
        border: 1px solid rgba(0,0,0,.05);
        overflow: hidden;
    }

    .buddet-table[b-2mgp9wgg11] {
        width: 100%;
        border-collapse: collapse;
    }

    .buddet-th[b-2mgp9wgg11] {
        padding: 11px 14px;
        font-size: .68rem;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: .04em;
        color: rgba(0,0,0,.4);
        border-bottom: 1px solid rgba(0,0,0,.07);
        background: #fafafa;
        white-space: nowrap;
        text-align: left;
    }

    .buddet-th-cat[b-2mgp9wgg11]  { min-width: 180px; }
    .buddet-th-prog[b-2mgp9wgg11] { width: 200px; }
    .buddet-th-amt[b-2mgp9wgg11]  { width: 120px; text-align: right; }

    .buddet-tr[b-2mgp9wgg11] {
        border-bottom: 1px solid rgba(0,0,0,.05);
        transition: background .1s;
    }

    .buddet-tr:last-child[b-2mgp9wgg11] {
        border-bottom: none;
    }

    .buddet-tr:hover[b-2mgp9wgg11] {
        background: rgba(0,0,0,.02);
    }

    .buddet-tr--over[b-2mgp9wgg11] {
        background: rgba(192,57,43,.03);
    }

    .buddet-td[b-2mgp9wgg11] {
        padding: 11px 14px;
        font-size: .82rem;
        color: rgba(0,0,0,.75);
        vertical-align: middle;
    }

    .buddet-td-cat[b-2mgp9wgg11] {
        display: flex;
        align-items: center;
        gap: 10px;
    }

    .buddet-td-name[b-2mgp9wgg11] {
        font-weight: 600;
        color: rgba(0,0,0,.85);
    }

    .buddet-td-prog[b-2mgp9wgg11] {
        min-width: 200px;
    }

    .buddet-prog-wrap[b-2mgp9wgg11] {
        display: flex;
        align-items: center;
        gap: 8px;
    }

    .buddet-prog-wrap :global(.mud-progress-linear)[b-2mgp9wgg11] {
        flex: 1;
    }

    .buddet-prog-pct[b-2mgp9wgg11] {
        font-size: .72rem;
        font-weight: 600;
        color: rgba(0,0,0,.4);
        white-space: nowrap;
        min-width: 32px;
        text-align: right;
    }

    .buddet-td-amt[b-2mgp9wgg11] {
        text-align: right;
        font-variant-numeric: tabular-nums;
        white-space: nowrap;
        font-weight: 600;
    }
}
/* /Pages/BudgetForm.razor.rz.scp.css */
/* ── Page shell ── */
.budfrm-page[b-ee01gupt9f] {
    padding: 20px 16px 90px;
}

/* ── Inner container (full width on mobile, centered on desktop) ── */
.budfrm-inner[b-ee01gupt9f] {
    width: 100%;
}

/* ── Header ── */
.budfrm-header[b-ee01gupt9f] {
    display: flex;
    align-items: center;
    gap: 4px;
    margin-bottom: 20px;
}

/* ── Section label ── */
.budfrm-section-label[b-ee01gupt9f] {
    font-size: .68rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: rgba(0,0,0,.4);
    margin-bottom: 10px;
}

/* ── Category group (has children) ── */
.budfrm-group[b-ee01gupt9f] {
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid rgba(0,0,0,.07);
    background: #fff;
    box-shadow: 0 1px 2px rgba(0,0,0,.04);
}

.budfrm-group-header[b-ee01gupt9f] {
    display: flex;
    align-items: center;
    padding: 12px 14px;
    background: #f5f5f5;
    border-bottom: 1px solid rgba(0,0,0,.07);
}

.budfrm-group-children[b-ee01gupt9f] {
    padding: 4px 14px 8px 20px;
}

/* ── Single-category row (no children) ── */
.budfrm-solo[b-ee01gupt9f] {
    display: flex;
    align-items: center;
    background: #fff;
    border-radius: 8px;
    padding: 10px 14px;
    border: 1px solid rgba(0,0,0,.07);
    box-shadow: 0 1px 2px rgba(0,0,0,.04);
}

/* ── Child row inside a group ── */
.budfrm-row[b-ee01gupt9f] {
    display: flex;
    align-items: center;
    padding: 8px 0;
    border-bottom: 1px solid #f0f0f0;
}

.budfrm-row:last-child[b-ee01gupt9f] {
    border-bottom: none;
}

/* ══════════════════════════════════════════
   Desktop (≥ 768px)
   ══════════════════════════════════════════ */
@media (min-width: 768px) {
    .budfrm-page[b-ee01gupt9f] {
        padding: 28px 32px 32px;
    }

    .budfrm-inner[b-ee01gupt9f] {
        max-width: 600px;
    }
}
/* /Pages/Budgets.razor.rz.scp.css */
/* ── Page shell ── */
.bud-page[b-twkvlbip55] {
    padding: 20px 16px 90px;
}

/* ── Header ── */
.bud-header[b-twkvlbip55] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
}

/* ── Mobile card list ── */
.bud-list[b-twkvlbip55] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.bud-card[b-twkvlbip55] {
    background: #fff;
    border-radius: 10px;
    padding: 14px 14px 12px;
    box-shadow: 0 1px 3px rgba(0,0,0,.07);
    border: 1px solid rgba(0,0,0,.05);
    cursor: pointer;
    transition: box-shadow .15s;
}

.bud-card:hover[b-twkvlbip55] {
    box-shadow: 0 3px 8px rgba(0,0,0,.1);
}

.bud-card-top[b-twkvlbip55] {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin-bottom: 12px;
}

.bud-card-meta[b-twkvlbip55] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.bud-card-name-row[b-twkvlbip55] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

.bud-card-name[b-twkvlbip55] {
    font-size: .95rem;
    font-weight: 700;
    color: rgba(0,0,0,.85);
}

.bud-badge-active[b-twkvlbip55] {
    display: inline-block;
    font-size: .58rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: #2e7d63;
    background: #e8f5ef;
    border-radius: 4px;
    padding: 2px 6px;
    vertical-align: middle;
    line-height: 1.4;
    flex-shrink: 0;
}

.bud-card-period[b-twkvlbip55] {
    font-size: .72rem;
    color: rgba(0,0,0,.45);
}

.bud-card-actions[b-twkvlbip55] {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

/* ── Card summary bar ── */
.bud-card-summary[b-twkvlbip55] {
    display: flex;
    align-items: center;
    background: #f8f9fb;
    border-radius: 8px;
    padding: 10px 12px;
}

.bud-card-stat[b-twkvlbip55] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
}

.bud-card-stat-label[b-twkvlbip55] {
    font-size: .62rem;
    color: rgba(0,0,0,.4);
    text-transform: uppercase;
    letter-spacing: .04em;
    font-weight: 500;
}

.bud-card-stat-value[b-twkvlbip55] {
    font-size: .85rem;
    font-weight: 700;
}

.bud-card-stat-sep[b-twkvlbip55] {
    width: 1px;
    height: 26px;
    background: rgba(0,0,0,.08);
    flex-shrink: 0;
}

/* ── Color helpers ── */
.bud-amount--income[b-twkvlbip55]  { color: #2e7d63 !important; }
.bud-amount--expense[b-twkvlbip55] { color: #c0392b !important; }
.bud-amount--saving[b-twkvlbip55]  { color: #1565c0 !important; }

/* ── Empty state ── */
.bud-empty[b-twkvlbip55] {
    text-align: center;
    padding: 48px 0;
    font-size: .85rem;
    color: rgba(0,0,0,.4);
}

/* ── Desktop table (hidden on mobile) ── */
.bud-table-wrap[b-twkvlbip55] {
    display: none;
}

/* ══════════════════════════════════════════
   Desktop (≥ 768px)
   ══════════════════════════════════════════ */
@media (min-width: 768px) {
    .bud-page[b-twkvlbip55] {
        padding: 28px 32px 32px;
    }

    .bud-list[b-twkvlbip55] {
        display: none;
    }

    .bud-table-wrap[b-twkvlbip55] {
        display: block;
        background: #fff;
        border-radius: 10px;
        box-shadow: 0 1px 3px rgba(0,0,0,.07);
        border: 1px solid rgba(0,0,0,.05);
        overflow: hidden;
    }

    .bud-table[b-twkvlbip55] {
        width: 100%;
        border-collapse: collapse;
    }

    .bud-th[b-twkvlbip55] {
        padding: 11px 14px;
        font-size: .68rem;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: .04em;
        color: rgba(0,0,0,.4);
        border-bottom: 1px solid rgba(0,0,0,.07);
        background: #fafafa;
        white-space: nowrap;
        text-align: left;
    }

    .bud-th-name[b-twkvlbip55]   { min-width: 160px; }
    .bud-th-period[b-twkvlbip55] { min-width: 160px; }
    .bud-th-amt[b-twkvlbip55]    { width: 110px; text-align: right; }
    .bud-th-actions[b-twkvlbip55] { width: 80px; text-align: right; }

    .bud-tr[b-twkvlbip55] {
        border-bottom: 1px solid rgba(0,0,0,.05);
        transition: background .1s;
        cursor: pointer;
    }

    .bud-tr:last-child[b-twkvlbip55] {
        border-bottom: none;
    }

    .bud-tr:hover[b-twkvlbip55] {
        background: rgba(0,0,0,.02);
    }

    .bud-td[b-twkvlbip55] {
        padding: 12px 14px;
        font-size: .82rem;
        color: rgba(0,0,0,.75);
        vertical-align: middle;
    }

    .bud-td-name[b-twkvlbip55] {
        font-weight: 600;
        color: rgba(0,0,0,.85);
    }

    .bud-td-period[b-twkvlbip55] {
        color: rgba(0,0,0,.45);
        white-space: nowrap;
        font-size: .78rem;
    }

    .bud-td-amt[b-twkvlbip55] {
        text-align: right;
        font-variant-numeric: tabular-nums;
        white-space: nowrap;
        font-weight: 600;
    }

    .bud-td-actions[b-twkvlbip55] {
        text-align: right;
        white-space: nowrap;
    }
}
/* /Pages/Categories.razor.rz.scp.css */
/* ── Page shell ── */
.cat-page[b-3bfjg1zcof] {
    padding: 20px 16px 90px;
}

/* ── Header ── */
.cat-header[b-3bfjg1zcof] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
}

/* ── Filter bar (mirrors mov-filter) ── */
.cat-filter[b-3bfjg1zcof] {
    display: flex;
    border: 1px solid #2e7d63;
    border-radius: 6px;
    overflow: hidden;
    margin-bottom: 16px;
}

.cat-filter-item[b-3bfjg1zcof] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 8px 4px;
    font-size: .78rem;
    font-weight: 500;
    color: #2e7d63;
    cursor: pointer;
    border-right: 1px solid #2e7d63;
    transition: background .12s, color .12s;
    user-select: none;
}

.cat-filter-item:last-child[b-3bfjg1zcof] {
    border-right: none;
}

.cat-filter-item:hover[b-3bfjg1zcof] {
    background: rgba(46,125,99,.06);
}

.cat-filter-item.active[b-3bfjg1zcof] {
    background: #2e7d63;
    color: #fff;
}

/* ── Mobile card list ── */
.cat-list[b-3bfjg1zcof] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.cat-card[b-3bfjg1zcof] {
    display: flex;
    align-items: center;
    background: #fff;
    border-radius: 10px;
    padding: 10px 12px;
    box-shadow: 0 1px 3px rgba(0,0,0,.07);
    border: 1px solid rgba(0,0,0,.05);
}

.cat-card--sub[b-3bfjg1zcof] {
    margin-left: 20px;
    border-left: 3px solid #e0e0e0;
    border-radius: 0 8px 8px 0;
    box-shadow: none;
    background: rgba(0,0,0,.015);
}

.cat-card-info[b-3bfjg1zcof] {
    flex: 1;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.cat-card-name[b-3bfjg1zcof] {
    font-size: .88rem;
    color: rgba(0,0,0,.65);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.cat-card-name--root[b-3bfjg1zcof] {
    font-weight: 600;
    font-size: .9rem;
    color: rgba(0,0,0,.85);
}

.cat-card-actions[b-3bfjg1zcof] {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

/* ── Badges ── */
.cat-badge[b-3bfjg1zcof] {
    display: inline-block;
    font-size: .62rem;
    font-weight: 600;
    padding: 1px 7px;
    border-radius: 10px;
    text-transform: uppercase;
    letter-spacing: .04em;
    white-space: nowrap;
}

.cat-badge--active[b-3bfjg1zcof] {
    background: rgba(46,125,99,.12);
    color: #2e7d63;
}

.cat-badge--inactive[b-3bfjg1zcof] {
    background: rgba(0,0,0,.08);
    color: rgba(0,0,0,.45);
}

/* ── Empty state ── */
.cat-empty[b-3bfjg1zcof] {
    text-align: center;
    padding: 48px 0;
    font-size: .85rem;
    color: rgba(0,0,0,.4);
}

/* ── Desktop table (hidden on mobile) ── */
.cat-table-wrap[b-3bfjg1zcof] {
    display: none;
}

/* ══════════════════════════════════════════
   Desktop (≥ 768px)
   ══════════════════════════════════════════ */
@media (min-width: 768px) {
    .cat-page[b-3bfjg1zcof] {
        padding: 28px 32px 32px;
    }

    .cat-filter[b-3bfjg1zcof] {
        max-width: 360px;
        margin-bottom: 20px;
    }

    .cat-list[b-3bfjg1zcof] {
        display: none;
    }

    .cat-table-wrap[b-3bfjg1zcof] {
        display: block;
        background: #fff;
        border-radius: 10px;
        box-shadow: 0 1px 3px rgba(0,0,0,.07);
        border: 1px solid rgba(0,0,0,.05);
        overflow: hidden;
    }

    .cat-table[b-3bfjg1zcof] {
        width: 100%;
        border-collapse: collapse;
    }

    .cat-th[b-3bfjg1zcof] {
        padding: 11px 14px;
        font-size: .68rem;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: .04em;
        color: rgba(0,0,0,.4);
        border-bottom: 1px solid rgba(0,0,0,.07);
        background: #fafafa;
        white-space: nowrap;
        text-align: left;
    }

    .cat-th-name[b-3bfjg1zcof]    { min-width: 200px; }
    .cat-th-status[b-3bfjg1zcof]  { width: 90px; }
    .cat-th-actions[b-3bfjg1zcof] { width: 160px; text-align: right; }

    .cat-tr[b-3bfjg1zcof] {
        border-bottom: 1px solid rgba(0,0,0,.05);
        transition: background .1s;
    }

    .cat-tr:last-child[b-3bfjg1zcof] {
        border-bottom: none;
    }

    .cat-tr:hover[b-3bfjg1zcof] {
        background: rgba(0,0,0,.02);
    }

    .cat-tr--sub[b-3bfjg1zcof] {
        background: rgba(0,0,0,.015);
    }

    .cat-tr--sub:hover[b-3bfjg1zcof] {
        background: rgba(0,0,0,.03);
    }

    .cat-td[b-3bfjg1zcof] {
        padding: 10px 14px;
        font-size: .82rem;
        color: rgba(0,0,0,.75);
        vertical-align: middle;
    }

    .cat-td-name[b-3bfjg1zcof] {
        display: flex;
        align-items: center;
        gap: 10px;
    }

    .cat-td-name--sub[b-3bfjg1zcof] {
        padding-left: 42px;
    }

    .cat-td-label[b-3bfjg1zcof] {
        color: rgba(0,0,0,.65);
    }

    .cat-td-label--root[b-3bfjg1zcof] {
        font-weight: 600;
        color: rgba(0,0,0,.85);
    }

    .cat-td-actions[b-3bfjg1zcof] {
        text-align: right;
        white-space: nowrap;
    }
}
/* /Pages/Home.razor.rz.scp.css */
/* ── Page shell ── */
.home-page[b-3ntrf0i7r9] {
    padding: 20px 16px 90px;
}

/* ── Header ── */
.home-header[b-3ntrf0i7r9] {
    margin-bottom: 20px;
}

.home-header-title[b-3ntrf0i7r9] {
    display: flex;
    align-items: center;
    margin-bottom: 14px;
}

.home-header-title :global(.mud-typography)[b-3ntrf0i7r9] {
    flex: 1;
}

/* ── Summary bar ── */
.home-summary[b-3ntrf0i7r9] {
    display: flex;
    align-items: center;
    background: #fff;
    border-radius: 10px;
    padding: 14px 16px;
    margin-bottom: 10px;
    box-shadow: 0 1px 3px rgba(0,0,0,.07);
    border: 1px solid rgba(0,0,0,.05);
}

.home-summary-item[b-3ntrf0i7r9] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
}

.home-summary-label[b-3ntrf0i7r9] {
    font-size: .68rem;
    color: rgba(0,0,0,.45);
    text-transform: uppercase;
    letter-spacing: .04em;
    font-weight: 500;
}

.home-summary-value[b-3ntrf0i7r9] {
    font-size: .95rem;
    font-weight: 700;
    color: rgba(0,0,0,.85);
}

.home-summary-sep[b-3ntrf0i7r9] {
    width: 1px;
    height: 30px;
    background: rgba(0,0,0,.08);
    flex-shrink: 0;
}

.home-summary-progress[b-3ntrf0i7r9] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.home-summary-pct[b-3ntrf0i7r9] {
    font-size: .72rem;
    font-weight: 600;
    color: rgba(0,0,0,.4);
    white-space: nowrap;
    min-width: 32px;
    text-align: right;
}

/* ── Cards grid ── */
.home-grid[b-3ntrf0i7r9] {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
}

/* ── Card ── */
.home-card[b-3ntrf0i7r9] {
    background: #fff;
    border-radius: 10px;
    padding: 14px;
    box-shadow: 0 1px 3px rgba(0,0,0,.07);
    border: 1px solid rgba(0,0,0,.05);
}

.home-card--over[b-3ntrf0i7r9] {
    border-color: rgba(192,57,43,.25);
}

.home-card-header[b-3ntrf0i7r9] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
}

.home-card-name[b-3ntrf0i7r9] {
    flex: 1;
    font-weight: 700;
    font-size: .9rem;
    color: rgba(0,0,0,.85);
}

.home-card-progress[b-3ntrf0i7r9] {
    margin-bottom: 10px;
}

/* ── Amounts row ── */
.home-card-amounts[b-3ntrf0i7r9] {
    display: flex;
}

.home-card-amount[b-3ntrf0i7r9] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 1px;
}

.home-card-amount-label[b-3ntrf0i7r9] {
    font-size: .65rem;
    color: rgba(0,0,0,.4);
    text-transform: uppercase;
    letter-spacing: .03em;
}

.home-card-amount-value[b-3ntrf0i7r9] {
    font-size: .82rem;
    font-weight: 600;
    color: rgba(0,0,0,.8);
}

/* ── Children ── */
.home-card-children[b-3ntrf0i7r9] {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid rgba(0,0,0,.07);
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.home-card-child[b-3ntrf0i7r9] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.home-card-child-header[b-3ntrf0i7r9] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding-left: 12px;
}

.home-card-child-name[b-3ntrf0i7r9] {
    flex: 1;
    font-size: .8rem;
    color: rgba(0,0,0,.65);
}

.home-card-child .home-card-amount-value[b-3ntrf0i7r9] {
    font-weight: 400;
}

/* ── Color helpers ── */
.home-amount--over[b-3ntrf0i7r9] { color: #c0392b !important; }
.home-amount--ok[b-3ntrf0i7r9]   { color: #2e7d63 !important; }

/* ── Table (desktop only) ── */
.home-table-wrap[b-3ntrf0i7r9] {
    display: none;
}

/* ══════════════════════════════════════════
   Desktop (≥ 768px)
   ══════════════════════════════════════════ */
@media (min-width: 768px) {
    .home-page[b-3ntrf0i7r9] {
        padding: 28px 32px 32px;
    }

    .home-summary[b-3ntrf0i7r9] {
        padding: 18px 28px;
    }

    .home-summary-value[b-3ntrf0i7r9] {
        font-size: 1.15rem;
    }

    .home-summary-label[b-3ntrf0i7r9] {
        font-size: .72rem;
    }

    /* Hide cards, show table */
    .home-grid[b-3ntrf0i7r9] {
        display: none;
    }

    .home-table-wrap[b-3ntrf0i7r9] {
        display: block;
        background: #fff;
        border-radius: 10px;
        box-shadow: 0 1px 3px rgba(0,0,0,.07);
        border: 1px solid rgba(0,0,0,.05);
        overflow: hidden;
    }

    .home-table[b-3ntrf0i7r9] {
        width: 100%;
        border-collapse: collapse;
    }

    .home-th[b-3ntrf0i7r9] {
        padding: 11px 14px;
        font-size: .68rem;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: .04em;
        color: rgba(0,0,0,.4);
        border-bottom: 1px solid rgba(0,0,0,.07);
        background: #fafafa;
        white-space: nowrap;
    }

    .home-th-cat[b-3ntrf0i7r9]  { width: 200px; text-align: left; }
    .home-th-prog[b-3ntrf0i7r9] { width: 180px; text-align: left; }
    .home-th-amt[b-3ntrf0i7r9]  { text-align: right; }
    .home-th-actions[b-3ntrf0i7r9] { width: 72px; }

    .home-tr[b-3ntrf0i7r9] {
        border-bottom: 1px solid rgba(0,0,0,.05);
        transition: background .1s;
    }

    .home-tr:last-child[b-3ntrf0i7r9] {
        border-bottom: none;
    }

    .home-tr:hover[b-3ntrf0i7r9] {
        background: rgba(0,0,0,.02);
    }

    .home-tr--over[b-3ntrf0i7r9] {
        background: rgba(192,57,43,.03);
    }

    .home-tr-child[b-3ntrf0i7r9] {
        background: rgba(0,0,0,.015);
    }

    .home-tr-child:hover[b-3ntrf0i7r9] {
        background: rgba(0,0,0,.03);
    }

    .home-td[b-3ntrf0i7r9] {
        padding: 10px 14px;
        font-size: .82rem;
        color: rgba(0,0,0,.75);
        vertical-align: middle;
    }

    .home-td-cat[b-3ntrf0i7r9] {
        display: flex;
        align-items: center;
        gap: 10px;
    }

    .home-td-name[b-3ntrf0i7r9] {
        font-weight: 600;
        color: rgba(0,0,0,.85);
    }

    .home-td-child-name[b-3ntrf0i7r9] {
        display: flex;
        align-items: center;
        gap: 8px;
        padding-left: 38px;
        color: rgba(0,0,0,.55);
    }

    .home-td-prog[b-3ntrf0i7r9] {
        min-width: 180px;
    }

    .home-prog-wrap[b-3ntrf0i7r9] {
        display: flex;
        align-items: center;
        gap: 8px;
    }

    .home-prog-wrap :global(.mud-progress-linear)[b-3ntrf0i7r9] {
        flex: 1;
    }

    .home-prog-pct[b-3ntrf0i7r9] {
        font-size: .72rem;
        font-weight: 600;
        color: rgba(0,0,0,.4);
        white-space: nowrap;
        min-width: 32px;
        text-align: right;
    }

    .home-td-amt[b-3ntrf0i7r9] {
        text-align: right;
        font-variant-numeric: tabular-nums;
        white-space: nowrap;
    }

    .home-td-actions[b-3ntrf0i7r9] {
        text-align: right;
        white-space: nowrap;
    }
}
/* /Pages/Movements.razor.rz.scp.css */
/* ── Page shell ── */
.movements-page[b-0iak1rk40y] {
    padding: 20px 16px 90px;
}

/* ── Header ── */
.mov-header[b-0iak1rk40y] {
    margin-bottom: 16px;
}

.mov-nav[b-0iak1rk40y] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-bottom: 12px;
}

.mov-month-label[b-0iak1rk40y] {
    font-size: 1rem;
    font-weight: 600;
    color: rgba(0,0,0,.85);
    min-width: 150px;
    text-align: center;
}

/* ── Summary ── */
.mov-summary[b-0iak1rk40y] {
    display: flex;
    align-items: center;
    background: #fff;
    border-radius: 10px;
    padding: 14px 16px;
    box-shadow: 0 1px 3px rgba(0,0,0,.07);
    border: 1px solid rgba(0,0,0,.05);
}

.mov-summary-item[b-0iak1rk40y] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
}

.mov-summary-label[b-0iak1rk40y] {
    font-size: .68rem;
    color: rgba(0,0,0,.45);
    text-transform: uppercase;
    letter-spacing: .04em;
    font-weight: 500;
}

.mov-summary-value[b-0iak1rk40y] {
    font-size: .95rem;
    font-weight: 700;
    color: rgba(0,0,0,.85);
}

.mov-summary-sep[b-0iak1rk40y] {
    width: 1px;
    height: 30px;
    background: rgba(0,0,0,.08);
    flex-shrink: 0;
}

/* ── Filter ── */
.mov-filter[b-0iak1rk40y] {
    display: flex;
    border: 1px solid #2e7d63;
    border-radius: 6px;
    overflow: hidden;
    margin-bottom: 16px;
}

.mov-filter-item[b-0iak1rk40y] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 8px 4px;
    font-size: .78rem;
    font-weight: 500;
    color: #2e7d63;
    cursor: pointer;
    border-right: 1px solid #2e7d63;
    transition: background .12s, color .12s;
    user-select: none;
}

.mov-filter-item:last-child[b-0iak1rk40y] {
    border-right: none;
}

.mov-filter-item:hover[b-0iak1rk40y] {
    background: rgba(46,125,99,.06);
}

.mov-filter-item.active[b-0iak1rk40y] {
    background: #2e7d63;
    color: #fff;
}

/* ── Section labels ── */
.mov-section-label[b-0iak1rk40y] {
    font-size: .65rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .05em;
    padding: 0 4px 6px;
}

.mov-section-label--muted[b-0iak1rk40y] { color: rgba(0,0,0,.4); }
.mov-section-label--error[b-0iak1rk40y] { color: #c0392b; }

.mov-section-divider[b-0iak1rk40y] {
    height: 1px;
    background: rgba(0,0,0,.07);
    margin: 8px 0 16px;
}

/* ── Color helpers (used in summary) ── */
.mov-amount--income[b-0iak1rk40y]  { color: #2e7d63 !important; }
.mov-amount--expense[b-0iak1rk40y] { color: #c0392b !important; }
.mov-amount--saving[b-0iak1rk40y]  { color: #1565c0 !important; }

/* ── Empty state ── */
.mov-empty[b-0iak1rk40y] {
    text-align: center;
    padding: 48px 0;
    font-size: .85rem;
    color: rgba(0,0,0,.4);
}

/* ══════════════════════════════════════════
   Desktop (≥ 768px)
   ══════════════════════════════════════════ */
@media (min-width: 768px) {
    .movements-page[b-0iak1rk40y] {
        padding: 28px 32px 32px;
    }

    .mov-nav[b-0iak1rk40y] {
        justify-content: flex-start;
        margin-bottom: 16px;
    }

    .mov-summary[b-0iak1rk40y] {
        padding: 18px 28px;
        margin-bottom: 20px;
    }

    .mov-summary-value[b-0iak1rk40y] {
        font-size: 1.15rem;
    }

    .mov-filter[b-0iak1rk40y] {
        max-width: 360px;
        margin-bottom: 20px;
    }
}
/* /Shared/BudgetCategoryMovementsDialog.razor.rz.scp.css */
/* styles handled by MovementResponsiveList.razor.css */
/* /Shared/MovementResponsiveList.razor.rz.scp.css */
/* ── Mobile card list ── */
.mrl-list[b-ps1r0my4h0] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.mrl-item[b-ps1r0my4h0] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px;
    background: #fff;
    border-radius: 8px;
    border: 1px solid rgba(0,0,0,.05);
}

.mrl-item--processing[b-ps1r0my4h0] {
    opacity: .65;
    background: rgba(0,0,0,.03) !important;
}

.mrl-item--failed[b-ps1r0my4h0] {
    background: rgba(192,57,43,.04) !important;
    border-color: rgba(192,57,43,.15) !important;
}

.mrl-item-info[b-ps1r0my4h0] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 1px;
    overflow: hidden;
    min-width: 0;
}

.mrl-item-desc[b-ps1r0my4h0] {
    font-size: .85rem;
    font-weight: 500;
    color: rgba(0,0,0,.85);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.mrl-item-sub[b-ps1r0my4h0] {
    font-size: .72rem;
    color: rgba(0,0,0,.45);
}

.mrl-item-sub--error[b-ps1r0my4h0] {
    color: #c0392b;
}

.mrl-item-amount[b-ps1r0my4h0] {
    font-size: .85rem;
    white-space: nowrap;
}

.mrl-processing-clock[b-ps1r0my4h0] {
    color: rgba(0,0,0,.35);
    flex-shrink: 0;
    margin: 0 4px;
}

/* ── Color helpers ── */
.mrl-amount--income[b-ps1r0my4h0]  { color: #2e7d63 !important; }
.mrl-amount--expense[b-ps1r0my4h0] { color: #c0392b !important; }

/* ── Desktop table ── */
.mrl-table-wrap[b-ps1r0my4h0] {
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 1px 3px rgba(0,0,0,.07);
    border: 1px solid rgba(0,0,0,.05);
    overflow: hidden;
}

.mrl-table[b-ps1r0my4h0] {
    width: 100%;
    border-collapse: collapse;
}

.mrl-th[b-ps1r0my4h0] {
    padding: 11px 14px;
    font-size: .68rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: rgba(0,0,0,.4);
    border-bottom: 1px solid rgba(0,0,0,.07);
    background: #fafafa;
    white-space: nowrap;
}

.mrl-th-date[b-ps1r0my4h0]    { width: 130px; text-align: left; }
.mrl-th-cat[b-ps1r0my4h0]     { width: 220px; text-align: left; }
.mrl-th-desc[b-ps1r0my4h0]    { text-align: left; }
.mrl-th-amt[b-ps1r0my4h0]     { width: 110px; text-align: right; }
.mrl-th-actions[b-ps1r0my4h0] { width: 96px; }

.mrl-tr[b-ps1r0my4h0] {
    border-bottom: 1px solid rgba(0,0,0,.05);
    transition: background .1s;
}

.mrl-tr:last-child[b-ps1r0my4h0] {
    border-bottom: none;
}

.mrl-tr:hover[b-ps1r0my4h0] {
    background: rgba(0,0,0,.02);
}

.mrl-tr--processing[b-ps1r0my4h0] {
    opacity: .65;
}

.mrl-tr--failed[b-ps1r0my4h0] {
    background: rgba(192,57,43,.04);
}

.mrl-td[b-ps1r0my4h0] {
    padding: 10px 14px;
    font-size: .82rem;
    color: rgba(0,0,0,.75);
    vertical-align: middle;
}

.mrl-td-date[b-ps1r0my4h0] {
    color: rgba(0,0,0,.4);
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.mrl-td-cat[b-ps1r0my4h0] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.mrl-td-cat-name[b-ps1r0my4h0] {
    font-size: .8rem;
    color: rgba(0,0,0,.65);
}

.mrl-td-desc[b-ps1r0my4h0] {
    color: rgba(0,0,0,.85);
}

.mrl-td-amt[b-ps1r0my4h0] {
    text-align: right;
    font-weight: 400;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.mrl-td-actions[b-ps1r0my4h0] {
    text-align: right;
    white-space: nowrap;
}
