

    body {
      font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, sans-serif;
      background: #0d1117;
      color: #e6edf3;
      min-height: 100vh;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 24px;
    }

    .page-wrapper {
      width: 100%;
      max-width: 420px;
    }

    /* Branding */
    .brand {
      text-align: center;
      margin-bottom: 32px;
    }

    .brand-icon {
      font-size: 48px;
      display: block;
      margin-bottom: 12px;
      filter: drop-shadow(0 0 12px rgba(79, 195, 247, 0.4));
    }

    .brand-title {
      font-size: 26px;
      font-weight: 700;
      background: linear-gradient(135deg, #4fc3f7, #00e676);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
      letter-spacing: -0.3px;
    }

    .brand-subtitle {
      font-size: 13px;
      color: #8b949e;
      margin-top: 4px;
      letter-spacing: 0.3px;
    }

    /* Card */
    .card {
      background: #161b22;
      border: 1px solid #30363d;
      border-radius: 14px;
      padding: 36px 32px;
    }

    .card-header {
      margin-bottom: 28px;
      text-align: center;
    }

    .card-title {
      font-size: 20px;
      font-weight: 700;
      color: #e6edf3;
      margin-bottom: 6px;
    }

    .card-subtitle {
      font-size: 13px;
      color: #8b949e;
    }

    /* Admin badge */
    .admin-badge {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      background: rgba(248, 81, 73, 0.12);
      border: 1px solid rgba(248, 81, 73, 0.3);
      color: #f85149;
      font-size: 11px;
      font-weight: 600;
      letter-spacing: 0.8px;
      text-transform: uppercase;
      padding: 4px 12px;
      border-radius: 20px;
      margin-bottom: 16px;
    }

    /* Error */
    .error-box {
      background: rgba(248, 81, 73, 0.1);
      border: 1px solid rgba(248, 81, 73, 0.35);
      border-radius: 8px;
      padding: 12px 16px;
      color: #f85149;
      font-size: 13.5px;
      margin-bottom: 22px;
      display: flex;
      align-items: center;
      gap: 8px;
    }

    /* Form */
    .form-group {
      margin-bottom: 20px;
    }

    label {
      display: block;
      font-size: 13px;
      font-weight: 600;
      color: #e6edf3;
      margin-bottom: 7px;
    }

    input[type="email"],
    input[type="password"],
    input[type="text"] {
      width: 100%;
      background: #0d1117;
      border: 1px solid #30363d;
      border-radius: 8px;
      color: #e6edf3;
      font-size: 14px;
      padding: 11px 14px;
      transition: border-color 0.2s, box-shadow 0.2s;
      outline: none;
    }

    input[type="email"]:focus,
    input[type="password"]:focus,
    input[type="text"]:focus {
      border-color: #4fc3f7;
      box-shadow: 0 0 0 3px rgba(79, 195, 247, 0.12);
    }

    .btn-primary {
      width: 100%;
      background: linear-gradient(135deg, #1565c0, #1976d2);
      border: 1px solid rgba(79, 195, 247, 0.25);
      color: #fff;
      font-size: 15px;
      font-weight: 600;
      padding: 12px;
      border-radius: 8px;
      cursor: pointer;
      transition: opacity 0.2s, transform 0.1s, box-shadow 0.2s;
      margin-top: 4px;
      letter-spacing: 0.2px;
    }

    .btn-primary:hover {
      opacity: 0.9;
      transform: translateY(-1px);
      box-shadow: 0 4px 16px rgba(79, 195, 247, 0.25);
    }

    .btn-primary:active { transform: translateY(0); }

    /* Footer link */
    .card-footer {
      text-align: center;
      margin-top: 24px;
      padding-top: 20px;
      border-top: 1px solid #21262d;
    }

    .card-footer p {
      font-size: 13px;
      color: #8b949e;
    }

    .card-footer a {
      color: #4fc3f7;
      text-decoration: none;
      font-weight: 500;
    }

    .card-footer a:hover { text-decoration: underline; }

    .security-note {
      text-align: center;
      margin-top: 20px;
      font-size: 11.5px;
      color: #484f58;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 5px;
    }
    .build-info {
      text-align: center; margin-top: 10px;
      font-size: 12.5px; font-weight: 700; color: #4fc3f7;
      font-family: 'SF Mono', 'Fira Mono', monospace; letter-spacing: .5px;
    }

/* ── Extracted from admin_login.html ── */

.admin-login-s1 {
  text-align: right;
  margin-bottom: 16px;
}
