.dashboard-phase5-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:20px;align-items:start}.dashboard-budget-column{min-width:0}.dashboard-insights-column{display:grid;gap:14px;position:sticky;top:78px}.dashboard-widget{background:var(--card);border:1px solid var(--border);border-radius:18px;padding:18px;box-shadow:0 10px 30px rgba(45,38,28,.06)}.dashboard-widget-loading{min-height:150px}.dashboard-widget-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:16px}.dashboard-widget-head h3{margin:3px 0 0;font-size:17px}.dashboard-widget-head span,.analytics-eyebrow,.expense-chart-card header span{font-size:10px;letter-spacing:.09em;font-weight:800;color:var(--muted)}.dashboard-widget-link{border:0;background:transparent;color:var(--primary);font-weight:700;cursor:pointer;padding:4px}.dashboard-expense-total{font-size:30px;font-weight:800;letter-spacing:-.04em;margin-bottom:5px}.dashboard-expense-meta{color:var(--muted);font-size:12px}.dashboard-progress{height:8px;background:var(--bg);border-radius:999px;overflow:hidden;margin:15px 0 10px}.dashboard-progress>span{display:block;height:100%;border-radius:inherit;background:var(--primary);transition:width .3s ease}.dashboard-progress>span.over{background:#b85c50}.dashboard-widget-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px}.dashboard-widget-stat{background:var(--bg);border-radius:12px;padding:10px}.dashboard-widget-stat span{display:block;color:var(--muted);font-size:10px;margin-bottom:4px}.dashboard-widget-stat strong{font-size:13px}.dashboard-goal-mini{display:grid;grid-template-columns:1fr auto;gap:7px 10px;padding:11px 0;border-top:1px solid var(--border)}.dashboard-goal-mini:first-of-type{border-top:0;padding-top:0}.dashboard-goal-mini strong{font-size:13px}.dashboard-goal-mini>span{font-size:11px;color:var(--muted)}.dashboard-goal-mini .mini-progress{grid-column:1/-1;height:5px;background:var(--bg);border-radius:999px;overflow:hidden}.dashboard-goal-mini .mini-progress i{display:block;height:100%;background:var(--primary);border-radius:inherit}.dashboard-widget-empty{color:var(--muted);font-size:13px;line-height:1.5;padding:10px 0}
.expense-analytics-shell{display:grid;gap:16px;margin-bottom:26px}.expense-analytics-header{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;background:linear-gradient(135deg,var(--card),color-mix(in srgb,var(--primary) 8%,var(--card)));border:1px solid var(--border);border-radius:20px;padding:22px}.expense-analytics-header h2{font-size:26px;margin:5px 0}.expense-analytics-header p{color:var(--muted);margin:0;max-width:650px}.analytics-month-control{display:grid;gap:6px;font-size:11px;font-weight:700;min-width:180px}.analytics-month-control select{width:100%}.analytics-status:empty{display:none}.analytics-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.analytics-kpi{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:17px}.analytics-kpi span{font-size:11px;color:var(--muted);font-weight:700}.analytics-kpi strong{display:block;font-size:25px;letter-spacing:-.035em;margin:8px 0 3px}.analytics-kpi small{font-size:11px;color:var(--muted)}.analytics-kpi.positive strong{color:#3e7b60}.analytics-kpi.negative strong{color:#a64f47}.expense-chart-grid{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(420px,1.4fr);gap:14px}.expense-chart-card{background:var(--card);border:1px solid var(--border);border-radius:18px;padding:18px;min-width:0}.expense-chart-card header h3{margin:4px 0 0;font-size:16px}.expense-chart-canvas{height:300px;position:relative;margin-top:12px}.expense-chart-empty{display:grid;place-items:center;height:100%;color:var(--muted);text-align:center;font-size:13px}.budget-analysis-divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.08em;margin:28px 0 14px}.budget-analysis-divider::before,.budget-analysis-divider::after{content:"";height:1px;background:var(--border);flex:1}
@media(max-width:1120px){.dashboard-phase5-grid{grid-template-columns:1fr}.dashboard-insights-column{position:static;grid-template-columns:repeat(2,minmax(0,1fr));order:-1}.expense-chart-grid{grid-template-columns:1fr 1.35fr}}
@media(max-width:760px){.dashboard-insights-column,.analytics-kpi-grid,.expense-chart-grid{grid-template-columns:1fr}.expense-analytics-header{align-items:stretch;flex-direction:column;padding:17px}.analytics-month-control{min-width:0}.expense-chart-canvas{height:260px}.dashboard-widget{padding:15px}.dashboard-expense-total{font-size:26px}}
