/* BudgetScaler FinPilot AI */
:root{
  --bg:#0b1020;
  --panel:#141b34;
  --muted:#9fb0d1;
  --text:#f4f7ff;
  --primary:#4f8cff;
  --accent:#35d39d;
  --danger:#ff6b6b;
  --radius:14px;
}
*{box-sizing:border-box}
body{
  margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  background:linear-gradient(180deg,#0b1020,#0f1630);color:var(--text);line-height:1.6;
}
a{color:var(--primary);text-decoration:none}
.container{width:min(1100px,92%);margin:2rem auto}
.narrow{max-width:560px}
.topbar{
  position:sticky;top:0;z-index:20;background:rgba(11,16,32,.9);backdrop-filter:blur(6px);
  display:flex;justify-content:space-between;align-items:center;padding:0.8rem 4%;
  border-bottom:1px solid #253055;
}
.brand{display:flex;gap:.6rem;align-items:center;color:var(--text);font-weight:700}
nav a{margin-left:1rem;font-size:.95rem}
.hero{padding:3rem 0}
.hero h1{font-size:clamp(1.8rem,4vw,3rem);line-height:1.2}
.hero p{color:var(--muted);max-width:70ch}
.grid{display:grid;gap:1rem}
.grid.three{grid-template-columns:repeat(3,1fr)}
.grid.two{grid-template-columns:repeat(2,1fr)}
.card,.metric{
  background:var(--panel);border:1px solid #243056;padding:1rem 1.1rem;border-radius:var(--radius);
}
.metric h2{margin:.2rem 0;font-size:1.7rem}
.btn{
  border:none;border-radius:10px;padding:.65rem 1rem;cursor:pointer;font-weight:600;display:inline-block
}
.btn-primary{background:var(--primary);color:white}
.btn-secondary{background:#253055;color:#dce7ff}
.cta-row{display:flex;gap:.8rem;flex-wrap:wrap}
label{display:block;margin:.6rem 0}
input,select,textarea{
  width:100%;padding:.7rem;border-radius:10px;border:1px solid #334270;background:#0c1430;color:#fff
}
.footer{padding:2rem 4%;color:var(--muted);text-align:center}
.chart-box{height:280px;border:1px dashed #3b4a78;border-radius:12px;display:grid;place-items:center;color:var(--muted)}
pre{white-space:pre-wrap;background:#0c1430;padding:1rem;border-radius:10px;border:1px solid #334270}
@media (max-width: 900px){
  .grid.three,.grid.two{grid-template-columns:1fr}
  nav{display:flex;flex-wrap:wrap;justify-content:flex-end}
  nav a{margin:.25rem .5rem}
}
