:root {
      --bg-a: #0f1a34;
      --bg-b: #153e6f;
      --card: #ffffff;
      --text: #1a2845;
      --muted: #60749a;
      --border: #cad8ee;
      --primary: #1563db;
      --primary-2: #0f4fad;
      --error: #b91c1c;
    }
    * { box-sizing: border-box; }
    body {
      margin: 0;
      min-height: 100vh;
      display: grid;
      place-items: center;
      padding: 20px;
      font-family: "Segoe UI", Tahoma, sans-serif;
      color: var(--text);
      background:
        radial-gradient(1100px 500px at -10% -10%, #3e71dd 0%, transparent 50%),
        radial-gradient(900px 500px at 110% 100%, #0b8d95 0%, transparent 60%),
        linear-gradient(130deg, var(--bg-a), var(--bg-b));
    }
    .card {
      width: 100%;
      max-width: 420px;
      background: var(--card);
      border: 1px solid var(--border);
      border-radius: 16px;
      padding: 24px;
      box-shadow: 0 18px 42px rgba(6, 13, 30, 0.4);
    }
    .logo-wrap {
      display: grid;
      place-items: center;
      margin-bottom: 14px;
    }
    .logo-vnt {
      width: 100px;
      height: 100px;
      border-radius: 50%;
      object-fit: cover;
      display: block;
      background: transparent;
      border: 0;
      box-shadow: 0 10px 20px rgba(15, 115, 191, 0.22);
    }
    h1 { margin: 0; font-size: 30px; }
    .sub { margin: 8px 0 18px; color: var(--muted); font-size: 14px; }
    label { display: block; margin-bottom: 6px; color: var(--muted); font-size: 13px; }
    input {
      width: 100%;
      border: 1px solid var(--border);
      background: #ffffff;
      color: var(--text);
      border-radius: 10px;
      padding: 10px 12px;
      margin-bottom: 12px;
      font-size: 14px;
    }
    input:focus {
      outline: none;
      border-color: #6f9df2;
      box-shadow: 0 0 0 3px rgba(21, 99, 219, 0.16);
    }
    button {
      width: 100%;
      border: 0;
      border-radius: 10px;
      padding: 11px;
      font-size: 14px;
      font-weight: 700;
      color: #fff;
      cursor: pointer;
      background: linear-gradient(180deg, var(--primary), var(--primary-2));
    }
    button:disabled { opacity: 0.75; cursor: not-allowed; }
    .error { min-height: 18px; margin-top: 12px; color: var(--error); font-size: 13px; }
