 body { background: #0a0a0a; color: #e0e0e0; }
    .login-page {
      display: flex;
      align-items: center;
      justify-content: center;
      min-height: calc(100vh - 160px);
      padding: 60px 20px;
    }
    .login-card {
      background: #111;
      border: 1px solid rgba(255, 255, 255, 0.06);
      border-radius: 20px;
      padding: 40px 32px;
      max-width: 440px;
      width: 100%;
      box-shadow: 0 20px 40px rgba(0, 0, 0, 0.5);
    }
    .login-card h1 {
      font-size: 1.8rem;
      font-weight: 700;
      color: #f5f5f5;
      margin-bottom: 6px;
    }
    .login-card .sub {
      color: #a0a0a0;
      font-size: 0.95rem;
      margin-bottom: 32px;
    }
    .form-label {
      color: #c0c0c0;
      font-size: 0.85rem;
      font-weight: 600;
      margin-bottom: 6px;
    }
    .form-control {
      background: #1a1a1a;
      border: 1px solid #2a2a2a;
      color: #f0f0f0 !important;
      padding: 12px 16px;
      border-radius: 10px;
      transition: all 0.3s ease;
    }
    .form-control:focus {
      border-color: #c9a050;
      box-shadow: 0 0 0 2px rgba(201, 160, 80, 0.25);
      background: #1e1e1e;
    }
    .btn-recover {
      background: linear-gradient(135deg, #c9a050, #b8892e);
      border: none;
      color: #0a0a0a;
      font-weight: 700;
      padding: 12px 28px;
      border-radius: 10px;
      width: 100%;
      font-size: 1rem;
      margin-top: 8px;
      transition: all 0.3s ease;
    }
    .btn-recover:hover {
      background: linear-gradient(135deg, #d4b860, #c9a050);
      color: #000;
      box-shadow: 0 10px 24px rgba(201, 160, 80, 0.35);
    }
    .login-links {
      text-align: center;
      margin-top: 20px;
    }
    .login-links a {
      color: #888;
      font-size: 0.85rem;
      text-decoration: none;
      transition: color 0.2s;
    }
    .login-links a:hover {
      color: #d4b860;
    }
    .alert-success {
      background: rgba(25, 135, 84, 0.15);
      border: 1px solid rgba(25, 135, 84, 0.3);
      color: #5cdb95;
      font-size: 0.85rem;
      border-radius: 8px;
    }
    .alert-danger {
      background: rgba(220, 53, 69, 0.15);
      border: 1px solid rgba(220, 53, 69, 0.3);
      color: #f28b82;
      font-size: 0.85rem;
      border-radius: 8px;
    }