[hidden]{display:none!important}.app{grid-template-columns:364px minmax(0,1fr)}
.side{padding:28px 20px;background:#101827}
.brand{font-size:29px;line-height:1.05;padding:12px 15px 24px;letter-spacing:-1.2px}
.brand small{font-size:15px;letter-spacing:0;margin-top:5px}
.user{padding:19px 17px;margin:0 8px 24px;border-radius:16px;background:#192337}
.user b{font-size:22px}.user span{font-size:15px;display:block;margin-top:8px}
.nav{font-size:19px;padding:16px 17px;margin:5px 0;border-radius:14px}
.nav.active{background:#202b3f}.disclosure{display:flex;justify-content:space-between;align-items:center}
.subnav{overflow:hidden;max-height:240px;transition:max-height .2s ease}.subnav.collapsed{max-height:0}
.nav.sub{font-size:15px;padding:10px 18px 10px 42px}.logout{margin-top:8px}
.main{padding:40px 38px 64px}.top{margin-bottom:30px}.top h1{font-size:40px;letter-spacing:-1px}.mut{font-size:18px}
.primary{font-size:18px;padding:15px 20px;border-radius:13px}.kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.card{border-radius:20px;padding:25px;border-color:#e0e5ee;box-shadow:0 9px 28px rgba(17,24,39,.045)}
.kpi{min-height:132px;padding:28px}.kpi small{font-size:15px}.kpi strong{font-size:39px;letter-spacing:-1px;margin-top:10px}
.kpi.income,.kpi.expense{border-top:1px solid var(--line)}
.dashboard-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:22px}.section-card{margin-top:24px;min-height:420px}
.section-card h2,.budget-card h2{font-size:25px;margin:18px 0 25px;letter-spacing:-.4px}
.section-card th{font-size:12px}.section-card td{font-size:15px;padding:14px 10px}
.budget-card{margin-top:22px;min-height:180px}.bars{margin-top:25px}.bar-row{display:grid;grid-template-columns:155px 1fr 110px;gap:12px;align-items:center;margin:18px 0;font-size:18px}.bar-track{height:15px;background:#eceff5;border-radius:999px;overflow:hidden}.bar-fill{height:100%;background:#6c63ff;border-radius:999px;min-width:3px}.bar-value{font-weight:800;text-align:right}.compare-empty{padding:20px 0;color:var(--muted)}
@media(max-width:1100px){.app{grid-template-columns:260px minmax(0,1fr)}.side{padding:20px 12px}.dashboard-grid{grid-template-columns:1fr}.main{padding:28px}.brand{font-size:23px}.kpi strong{font-size:30px}}
@media(max-width:780px){.app{grid-template-columns:1fr}.side{height:auto;position:relative}.kpis{grid-template-columns:1fr}.dashboard-grid{grid-template-columns:1fr}.main{padding:18px}.top h1{font-size:32px}.section-card{min-height:0}}
