@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@500;600;700;800&family=Inter:wght@400;500;600&display=swap');

:root{
  --bg: #F7F7FB;
  --bg-soft: #EEEEF8;
  --surface: #FFFFFF;
  --ink: #1B1E2B;
  --ink-muted: #666B7A;
  --primary: #4F46E5;
  --primary-deep: #3730A3;
  --accent: #F59E0B;
  --border: rgba(27,30,43,0.10);
  --shadow: 0 30px 60px -25px rgba(27,30,43,0.20);
  --good: #16A34A;
  --bad: #DC2626;
}

*{ box-sizing:border-box; }
@media (prefers-reduced-motion: reduce){ *{ animation-duration:0.001ms !important; transition-duration:0.001ms !important; } }

html,body{ height:100%; }
body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:"Inter", "Segoe UI", sans-serif;
  -webkit-font-smoothing:antialiased;
}

h1,h2,h3{
  font-family:"Manrope", sans-serif;
  font-weight:800;
  margin:0;
  text-wrap:balance;
  letter-spacing:-0.01em;
}

.eyebrow{
  font-family:"Manrope", sans-serif;
  font-size:0.76rem;
  font-weight:700;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:var(--primary);
}

.btn{
  font-family:"Manrope", sans-serif;
  font-weight:700;
  font-size:0.95rem;
  text-decoration:none;
  border:none;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:0.55rem;
  padding:0.9rem 1.8rem;
  border-radius:0.8rem;
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease, opacity .15s ease;
}
.btn svg{ width:18px; height:18px; flex-shrink:0; }
.btn-primary{ background:var(--primary); color:#fff; }
.btn-primary:hover{ transform:translateY(-2px); box-shadow:0 16px 30px -12px rgba(79,70,229,0.5); background:var(--primary-deep); }
.btn-primary:disabled{ opacity:0.5; cursor:not-allowed; transform:none; box-shadow:none; }
.btn-ghost{ border:1.5px solid var(--border); color:var(--ink); background:transparent; }
.btn-ghost:hover{ border-color:var(--primary); color:var(--primary); transform:translateY(-2px); }
.btn-block{ width:100%; }
