
    :root {
      --bg: #0f172a;
      --card: #111827;
      --accent: #38bdf8;
      --text: #e5e7eb;
      --muted: #94a3b8;
      --danger: #f87171;
      font-family: system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
    }

    body {
      margin: 0;
      min-height: 100vh;
      background: linear-gradient(135deg, #020617, #0f172a);
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--text);
    }

    .container {
      width: 100%;
      max-width: 420px;
      padding: 1.2rem;
    }

    .card {
      background: var(--card);
      border-radius: 16px;
      padding: 1.6rem;
      box-shadow: 0 20px 40px rgba(0,0,0,.4);
    }

    h1 {
      margin: 0 0 0.3rem;
      font-size: 1.6rem;
      text-align: center;
    }

    .subtitle {
      text-align: center;
      color: var(--muted);
      font-size: 0.95rem;
      margin-bottom: 1.4rem;
    }

    label {
      display: block;
      margin-top: 1rem;
      margin-bottom: 0.3rem;
      font-size: 0.9rem;
      color: var(--muted);
    }

    select,
    input {
      width: 100%;
      padding: 0.75rem;
      border-radius: 10px;
      border: none;
      background: #020617;
      color: var(--text);
      font-size: 1rem;
    }

    input:focus,
    select:focus {
      outline: 2px solid var(--accent);
    }

    .actions {
      margin-top: 1.6rem;
      display: flex;
      flex-direction: column;
      gap: 0.6rem;
    }

    button {
      padding: 0.8rem;
      border-radius: 12px;
      border: none;
      font-size: 1rem;
      cursor: pointer;
      transition: transform .05s ease, opacity .2s;
    }

    button:active {
      transform: scale(0.98);
    }

    .login {
      background: var(--accent);
      color: #020617;
      font-weight: 600;
    }

    .help {
      background: transparent;
      color: var(--muted);
    }

    .help:hover {
      color: var(--text);
    }

    .error {
      margin-top: 1rem;
      color: var(--danger);
      text-align: center;
      display: none;
    }

    /* Desktop enhancement */
    @media (min-width: 768px) {
      h1 {
        font-size: 1.8rem;
      }
      .card {
        padding: 2rem;
      }
    }

    .quiz-container {
  max-width: 700px;
  margin: auto;
  padding: 1rem;
}

.card {
  background: #111827;
  border-radius: 14px;
  padding: 1.2rem;
  margin-bottom: 1rem;
}

.answer {
  display: block;
  margin: 0.6rem 0;
}

textarea {
  width: 100%;
  border-radius: 10px;
  padding: 0.6rem;
}

.hidden {
  display: none;
}