/* Login page: navbar Login/Daftar buttons — set text black */
.navbar .lp-btn{
  display:inline-flex; align-items:center; gap:.4rem;
  padding:.5rem 1rem; border-radius:999px;
  border:1px solid rgba(255,255,255,.25) !important;
  box-shadow:0 6px 18px rgba(0,0,0,.35), 0 0 0 3px rgba(255,255,255,.06) inset;
  background:rgba(255,255,255,.08); backdrop-filter:blur(6px);
  transition:transform .2s ease, box-shadow .25s ease, background .25s ease;
  color:#000 !important; text-shadow:none !important;
}
.navbar .lp-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 28px rgba(0,0,0,.4), 0 0 0 3px rgba(255,255,255,.12) inset;
  background:rgba(255,255,255,.12);
  color:#000 !important; text-shadow:none !important;
}
.navbar .lp-btn.lp-btn--accent{
  border-color:#34d399 !important;
  background:linear-gradient(135deg, rgba(52,211,153,.18), rgba(59,130,246,.18));
  box-shadow:0 10px 30px rgba(52,211,153,.35);
}
.navbar .lp-btn.lp-btn--accent:hover{
  background:linear-gradient(135deg, rgba(52,211,153,.24), rgba(59,130,246,.24));
  box-shadow:0 14px 36px rgba(52,211,153,.45);
}
.navbar .lp-btn.lp-btn--ghost{
  border-color:rgba(255,255,255,.35) !important;
  background:rgba(255,255,255,.06);
  box-shadow:0 4px 10px rgba(239,68,68,.35), 0 2px 4px rgba(0,0,0,.08);
}
.navbar .lp-btn.lp-btn--ghost:hover{
  background:rgba(255,255,255,.12);
  box-shadow:0 6px 14px rgba(239,68,68,.45), 0 3px 6px rgba(0,0,0,.1);
}

/* Inline prompt below form */
.lp-login-buttons{ display:flex; gap:.5rem; align-items:center; flex-wrap:wrap }
.lp-login-buttons .lp-btn{
  display:inline-flex; align-items:center; gap:.4rem;
  padding:.35rem .75rem; border-radius:999px;
  border:1px solid rgba(255,255,255,.25);
  background:rgba(255,255,255,.08);
  color:#000 !important; text-shadow:none !important;
}
.lp-login-buttons .lp-btn:hover{
  transform:translateY(-1px);
  background:rgba(255,255,255,.12);
  text-shadow:none !important;
}
.lp-login-buttons .lp-btn.lp-btn--accent{
  border-color:#34d399; background:linear-gradient(135deg, rgba(52,211,153,.18), rgba(59,130,246,.18));
}

/* Login page text: ensure black for requested items */
#loginPage .form-label{ color:#000000 !important; font-weight:700 }
#loginPage .form-frame{ color:#000000 !important }
#loginPage .invalid-feedback{ color:#cc0000 !important; font-weight:600 }
#loginPage .small.text-muted{ color:#000000 !important; text-shadow:none !important }
#loginPage p.small.text-muted{ color:#000000 !important; text-shadow:none !important }
#loginPage .lp-login-buttons{ color:#000000 !important }
#loginPage a.toolbar-action{ color:#000000 !important; font-weight:700; text-decoration:none }
#loginPage a.toolbar-action:hover{ color:#000000 !important; text-shadow:none !important }
/* =====================================================
   Global text-to-black override for the login page
   ===================================================== */
/* Ensure base text defaults to black on the login page */
html, body { color: #000 !important; }

/* Scope: main login container */
#loginPage, #loginPage * {
  color: #000 !important;
  text-shadow: none !important;
}

/* Header/navigation text on login page (this CSS is only loaded on login page) */
.navbar, .navbar *,
.navbar .nav-link,
.navbar .navbar-text,
.navbar .btn,
.navbar .dropdown-item,
.navbar-brand {
  color: #000 !important;
  text-shadow: none !important;
}
.navbar .navbar-brand .brand-white { color:#FFFFFF !important; -webkit-text-fill-color:#FFFFFF !important; }

/* Links and buttons states */
a, a:visited, a:hover, a:focus, a:active,
.nav-link, .nav-link:hover, .nav-link:focus {
  color: #000 !important;
  text-shadow: none !important;
}

/* Common text elements */
.form-label, .form-text, label,
p, h1, h2, h3, h4, h5, h6,
.small, .text-muted, span, li, th, td {
  color: #000 !important;
  text-shadow: none !important;
}

/* Placeholder text in inputs */
::placeholder {
  color: #000 !important;
  opacity: 1 !important;
}

/* LP-style buttons used on login header */
.lp-btn {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  padding: .6rem 1.1rem;
  border-radius: 999px;
  font-family: 'Poppins','Open Sans','Inter','Segoe UI',system-ui,-apple-system,sans-serif;
  font-weight: 700;
  text-decoration: none;
  border: 1px solid rgba(0,0,0,.15);
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(6px);
  transition: transform .2s ease, box-shadow .25s ease, background .25s ease, color .25s ease, border-color .25s ease;
  color: #003366;
}
.lp-btn:hover { transform: translateY(-2px); box-shadow: 0 10px 28px rgba(0,0,0,.15); }
.lp-btn--accent {
  border-color: #34d399;
  background: linear-gradient(135deg, rgba(52,211,153,.20), rgba(59,130,246,.20));
  color: #FFFFFF !important;
}
.lp-btn--ghost {
  border-color: rgba(0,0,0,.35);
  background: rgba(255,255,255,.08);
  color: #003366 !important;
}
#loginPage .lp-login-buttons .lp-btn { margin-left: .5rem; }
/* Centering register prompt under login form */
#loginPage .lp-login-buttons {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: .5rem;
  text-align: center;
}

/* Primary login button style */
#loginPage .btn.btn-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .4rem;
  padding: .7rem 1.2rem;
  border-radius: 999px;
  font-family: 'Poppins','Open Sans','Inter','Segoe UI',system-ui,-apple-system,sans-serif;
  font-weight: 700;
  border: 2px solid #34d399;
  background: linear-gradient(135deg, #34d399 0%, #3b82f6 100%) !important;
  color: #FFFFFF !important;
  box-shadow: 0 10px 30px rgba(52,211,153,.35);
}
#loginPage .btn.btn-primary:hover { filter: none; transform: translateY(-2px); box-shadow: 0 14px 36px rgba(52,211,153,.45); }

/* Login form: center and white strong text */
#loginPage #loginForm { text-align: center !important; margin-left: auto !important; margin-right: auto !important; }
#loginPage #loginForm .form-label,
#loginPage #loginForm label { color: #000000 !important; font-weight: 700 !important; }
#loginPage #loginForm .btn { display: inline-block; margin: 0 auto !important; }

/* Inline actions row beside login button */
#loginPage #loginForm .login-actions { display:flex; justify-content:center; align-items:center; gap:.5rem; }
#loginPage #loginForm .login-actions .btn { margin: 0 !important; }

/* Register button beside Login: blue rectangular frame, white text */
#loginPage #loginForm .login-actions .lp-login-buttons .lp-btn.lp-btn--accent {
  display: inline-block;
  padding: .5rem 1rem;
  border-radius: .375rem; /* rectangular */
  background: #0d6efd !important; /* Bootstrap primary blue */
  border: 2px solid #0d6efd !important;
  color: #FFFFFF !important;
  box-shadow: none !important;
  text-shadow: none !important;
}
#loginPage #loginForm .login-actions .lp-login-buttons .lp-btn.lp-btn--accent:hover {
  filter: brightness(1.05);
  transform: translateY(-1px);
}

/* New: explicit green login button with white text */
#loginPage #loginForm .btn.btn-success {
  background: #22c55e !important; /* Emerald */
  border-color: #22c55e !important;
  color: #FFFFFF !important;
  box-shadow: 0 10px 24px rgba(34, 197, 94, .35);
}
#loginPage #loginForm .btn.btn-success:hover {
  filter: brightness(1.05);
  transform: translateY(-1px);
}
