:root{
  --abp-azure:#2276FF;
  --abp-spring:#34D399;
  --abp-tangerine:#FF8A3D;
  --abp-cloud:#F7FAFC;
  --abp-graphite:#1F2937;
  --abp-muted:#6B7280;
}

html,body{
  background:var(--abp-cloud);
  color:var(--abp-graphite);
  font-family:Inter, system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, sans-serif;
}

.bg-cloud{ background:var(--abp-cloud)!important; }
.bg-white{ background:#fff!important; }
.text-graphite{ color:var(--abp-graphite)!important; }
.text-muted{ color:var(--abp-muted)!important; }

a{ color:var(--abp-azure); }
a:hover{ color:#4b91ff; }

.fw-extrabold{ font-weight:800; }

.light-hero{
  background:
    radial-gradient(700px 340px at 15% -10%, rgba(34,118,255,0.12), transparent),
    radial-gradient(700px 340px at 85% -15%, rgba(52,211,153,0.12), transparent),
    var(--abp-cloud);
}

.card-soft{
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:1rem;
  box-shadow:0 8px 28px rgba(31,41,55,0.06);
}

.card-outline{
  background:#fff;
  border:1px dashed rgba(34,118,255,0.45);
  border-radius:1rem;
  box-shadow:0 8px 28px rgba(31,41,55,0.06);
}

.card-highlight{
  background:linear-gradient(180deg, rgba(52,211,153,0.18), rgba(34,118,255,0.12));
  border:1px solid rgba(52,211,153,0.35);
  border-radius:1rem;
  box-shadow:0 10px 32px rgba(31,41,55,0.10);
}

.card-dashed{
  background:#fff;
  border:1px dashed rgba(34,118,255,0.45);
  border-radius:1rem;
}

.btn-spring{
  background:var(--abp-spring);
  color:#063a2b;
  border:none;
}
.btn-spring:hover{ filter:brightness(1.05); color:#04281e; }

.text-azure{ color:var(--abp-azure)!important; }
.text-spring{ color:var(--abp-spring)!important; }
.text-tangerine{ color:var(--abp-tangerine)!important; }

.navbar .nav-link{ color:var(--abp-muted); }
.navbar .nav-link.active, .navbar .nav-link:hover{ color:var(--abp-graphite); }

.hp-field{ position:absolute; left:-10000px; opacity:0; }
