:root {
  --bk-login-primary: #b45309;
  --bk-login-primary-dark: #92400e;
  --bk-login-accent: #f59e0b;
  --bk-login-bg1: #1c1917;
  --bk-login-bg2: #451a03;
}

* { box-sizing: border-box; }

body.bk-login-page {
  margin: 0;
  min-height: 100vh;
  font-family: 'Cairo', sans-serif;
  background: radial-gradient(circle at 20% 20%, rgba(245, 158, 11, 0.18), transparent 40%),
    radial-gradient(circle at 80% 0%, rgba(180, 83, 9, 0.25), transparent 35%),
    linear-gradient(145deg, var(--bk-login-bg1), var(--bk-login-bg2));
  color: #fff;
  overflow-x: hidden;
}

.bk-login-wrap {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 24px 16px;
  position: relative;
}

.bk-login-glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(60px);
  opacity: 0.35;
  pointer-events: none;
}
.bk-login-glow.g1 { width: 280px; height: 280px; background: #f59e0b; top: 10%; right: 8%; }
.bk-login-glow.g2 { width: 220px; height: 220px; background: #b45309; bottom: 12%; left: 6%; }

.bk-login-card {
  width: 100%;
  max-width: 440px;
  background: rgba(255, 255, 255, 0.98);
  color: #1e293b;
  border-radius: 20px;
  padding: 36px 32px 28px;
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.35);
  position: relative;
  z-index: 1;
  border: 1px solid rgba(255, 255, 255, 0.6);
}

.bk-login-logo {
  width: 72px;
  height: 72px;
  margin: 0 auto 16px;
  border-radius: 20px;
  background: linear-gradient(135deg, var(--bk-login-primary), var(--bk-login-accent));
  display: grid;
  place-items: center;
  color: #fff;
  font-size: 2rem;
  box-shadow: 0 12px 30px rgba(180, 83, 9, 0.35);
}

.bk-login-title {
  text-align: center;
  font-weight: 800;
  font-size: 1.45rem;
  margin: 0 0 4px;
  color: var(--bk-login-primary-dark);
}

.bk-login-sub {
  text-align: center;
  color: #64748b;
  font-size: 0.9rem;
  margin: 0 0 6px;
  line-height: 1.6;
}

.bk-login-code {
  display: block;
  text-align: center;
  margin-bottom: 22px;
  font-size: 0.78rem;
  color: #94a3b8;
  letter-spacing: 0.06em;
}

.bk-login-field {
  position: relative;
  margin-bottom: 14px;
}

.bk-login-field i {
  position: absolute;
  top: 50%;
  right: 14px;
  transform: translateY(-50%);
  color: #94a3b8;
}

.bk-login-field input {
  width: 100%;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 12px 42px 12px 14px;
  font-size: 1rem;
  font-family: inherit;
  transition: border-color .15s, box-shadow .15s;
}

.bk-login-field input:focus {
  outline: none;
  border-color: var(--bk-login-primary);
  box-shadow: 0 0 0 3px rgba(180, 83, 9, 0.15);
}

.bk-login-btn {
  width: 100%;
  border: 0;
  border-radius: 12px;
  padding: 13px 16px;
  font-weight: 800;
  font-size: 1.05rem;
  font-family: inherit;
  color: #fff;
  background: linear-gradient(135deg, var(--bk-login-primary), var(--bk-login-primary-dark));
  cursor: pointer;
  margin-top: 6px;
  box-shadow: 0 10px 24px rgba(180, 83, 9, 0.35);
  transition: transform .12s ease, box-shadow .12s ease;
}

.bk-login-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 14px 28px rgba(180, 83, 9, 0.42);
}

.bk-login-hint {
  text-align: center;
  margin-top: 18px;
  font-size: 0.82rem;
  color: #94a3b8;
}

.bk-login-hint code {
  background: #f1f5f9;
  padding: 2px 8px;
  border-radius: 6px;
  color: #475569;
}

.bk-login-alert {
  background: #fef2f2;
  border: 1px solid #fecaca;
  color: #b91c1c;
  border-radius: 10px;
  padding: 10px 12px;
  font-size: 0.9rem;
  margin-bottom: 14px;
}

.bk-login-footer {
  text-align: center;
  margin-top: 28px;
  color: rgba(255, 255, 255, 0.55);
  font-size: 0.8rem;
  position: relative;
  z-index: 1;
}

@media (max-width: 480px) {
  .bk-login-card { padding: 28px 20px 22px; border-radius: 16px; }
}
