:root{
  /* LynxNow palette: Neon Mint / Violet / Sakura over Graphite */
  --bg-0:#070A12;
  --bg-1:#0B1022;
  --bg-2:#0F1630;
  --ink:#EAF2FF;
  --muted:#A3B1D1;

  --primary:#2EF2C8;   /* neon mint */
  --secondary:#7B61FF; /* electric violet */
  --accent:#FF4FB6;    /* sakura neon */
  --amber:#FFD166;     /* warm highlight */

  --line:rgba(234,242,255,.12);
  --card:rgba(255,255,255,.06);
  --card2:rgba(255,255,255,.08);
  --shadow: 0 18px 60px rgba(0,0,0,.55);

  --radius-xl:22px;
  --radius-lg:18px;
  --radius-md:14px;

  --focus: 0 0 0 .25rem rgba(46,242,200,.22);

  --grad-hero: radial-gradient(1200px 500px at 20% 15%, rgba(46,242,200,.18), transparent 60%),
               radial-gradient(900px 420px at 80% 20%, rgba(123,97,255,.16), transparent 62%),
               radial-gradient(800px 380px at 70% 80%, rgba(255,79,182,.10), transparent 60%);

  --grad-card: linear-gradient(135deg, rgba(46,242,200,.14), rgba(123,97,255,.10) 45%, rgba(255,79,182,.08));
  --grad-edge: linear-gradient(90deg, rgba(46,242,200,.70), rgba(123,97,255,.70), rgba(255,79,182,.70));
}

.bg-app{ background: var(--bg-0); }
.text-app{ color: var(--ink); }

.link-soft{ color: rgba(234,242,255,.86); text-decoration: none; }
.link-soft:hover{ color: var(--primary); text-decoration: underline; }

.badge-soft{
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.10);
  color: rgba(234,242,255,.90);
  font-weight: 600;
}

.btn-primary{
  background: linear-gradient(135deg, rgba(46,242,200,1), rgba(123,97,255,1));
  border: 0;
  color: #071018;
}
.btn-primary:hover{ filter: brightness(1.02); }

.btn-outline-light{
  border-color: rgba(234,242,255,.22);
  color: rgba(234,242,255,.92);
}
.btn-outline-light:hover{
  background: rgba(234,242,255,.10);
  border-color: rgba(234,242,255,.30);
  color: rgba(234,242,255,.96);
}

.btn-ghost{
  border: 1px solid rgba(234,242,255,.18);
  background: rgba(255,255,255,.06);
  color: rgba(234,242,255,.90);
}
.btn-ghost:hover{
  background: rgba(255,255,255,.10);
  border-color: rgba(46,242,200,.35);
  color: rgba(234,242,255,.96);
}

.form-control, .form-select{
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(234,242,255,.16);
  color: rgba(234,242,255,.92);
}
.form-control:focus{
  border-color: rgba(46,242,200,.55);
  box-shadow: var(--focus);
  background: rgba(255,255,255,.07);
}
.form-check-input{
  background-color: rgba(255,255,255,.08);
  border: 1px solid rgba(234,242,255,.20);
}
.form-check-input:focus{ box-shadow: var(--focus); border-color: rgba(46,242,200,.55); }
.form-check-input:checked{
  background-color: var(--primary);
  border-color: rgba(46,242,200,.65);
}
