
    :root{
      --brand:#4a56a6;          
      --brand-dark:#2b2b6d;     
      --brand-accent:#FFB703;   
    }

    html,body{height:100%}
    body{
      font-family: 'Poppins', system-ui, -apple-system, Segoe UI, Roboto, 'Helvetica Neue', Arial;
      background: radial-gradient(1200px 800px at 10% -10%, rgba(255,255,255,.15), transparent 60%),
                  radial-gradient(900px 600px at 110% 10%, rgba(255,255,255,.12), transparent 60%),
                  linear-gradient(135deg, #3f4eac 0%, #1f2a75 35%, #0e143e 100%);
      color:#0e0f13;
    }

    .bg-blur{ position: fixed; inset: 0; pointer-events: none; z-index: 0; }
    .blob{ position:absolute; filter: blur(70px); opacity:.35; }
    .blob.b1{ width:420px; height:420px; background:#8aa2ff; top:-80px; left:-60px; }
    .blob.b2{ width:520px; height:520px; background:#8bd3ff; right:-120px; top:10%; }
    .blob.b3{ width:380px; height:380px; background:#a29bfe; bottom:-120px; left:10%; }

    .card-glass{
      backdrop-filter: blur(8px);
      background: rgba(255,255,255,0.92);
      border: 1px solid rgba(255,255,255,0.6);
      border-radius: 22px;
      box-shadow: 0 20px 50px rgba(0,0,0,.25);
    }

    .brand-badge{
      display:inline-flex; align-items:center; gap:.6rem;
      padding:.5rem 1rem; border-radius: 999px;
      background:#fff; border:2px solid var(--brand-dark);
      font-weight:600; color:var(--brand-dark);
    }

    .title{ color: var(--brand-dark); font-weight:700; }

    .form-control{ border-radius: 16px; border: 2px solid var(--brand-dark); }
    .form-control:focus{ border-color: var(--brand); box-shadow: 0 0 0 .25rem rgba(74,86,166,.15); }

    .input-group-text{
      border:2px solid var(--brand-dark); border-right:0; border-radius:16px 0 0 16px;
      background:#f8f9ff; color:var(--brand-dark); font-weight:600;
    }
    .input-group .form-control{ border-left:0; border-radius:0 16px 16px 0; }

    .form-check-input{ border:2px solid var(--brand-dark); }
    .form-check-input:checked{ background-color: var(--brand-dark); border-color: var(--brand-dark); }

    .btn-brand{
      --bs-btn-padding-x: 2rem; --bs-btn-padding-y: .75rem; border-radius: 999px;
      border:2px solid var(--brand-dark); background:#fff; color:var(--brand-dark); font-weight:700;
      transition: transform .2s ease, background .2s ease, color .2s ease, box-shadow .2s ease;
    }
    .btn-brand:hover{ background: var(--brand-dark); color:#fff; transform: translateY(-1px); box-shadow: 0 10px 25px rgba(0,0,0,.2); }

    .link-minor{ color:var(--brand-dark); text-decoration:none; font-weight:600; }
    .link-minor:hover{ text-decoration:underline; }

    footer{ color:#dfe7ff; font-size:.9rem; }
