html, body {
  min-height: 100%;
  background:
    radial-gradient(circle at top, rgba(245,197,66,.18), transparent 34%),
    linear-gradient(135deg, #050505 0%, #111 42%, #050505 100%) !important;
  color: #fff !important;
  font-family: Inter, Arial, sans-serif !important;
}

.login-pf-page {
  background: transparent !important;
  padding-top: 48px !important;
}

#kc-header-wrapper {
  font-size: 0 !important;
  padding: 0 !important;
}

.beehive-brand {
  text-align: center;
  margin-bottom: 24px;
}

.beehive-title {
  color: #f5c542;
  font-size: 32px;
  letter-spacing: .26em;
  font-weight: 800;
}

.beehive-subtitle {
  color: #fff;
  opacity: .82;
  letter-spacing: .18em;
  text-transform: uppercase;
  margin-top: 8px;
  font-size: 12px;
}

.card-pf {
  max-width: 520px !important;
  margin: 0 auto !important;
  background: linear-gradient(180deg, rgba(24,24,24,.98), rgba(8,8,8,.98)) !important;
  border: 1px solid rgba(245,197,66,.26) !important;
  border-radius: 28px !important;
  box-shadow: 0 24px 80px rgba(0,0,0,.68) !important;
  color: #fff !important;
  padding: 34px !important;
}

.beehive-form-title {
  color: #fff !important;
  text-align: center;
  font-size: 30px !important;
  font-weight: 800 !important;
  margin: 8px 0 24px !important;
}

label {
  color: #d7d7d7 !important;
  font-weight: 700 !important;
}

.form-control,
.pf-c-form-control {
  background: #151515 !important;
  border: 1px solid rgba(245,197,66,.24) !important;
  border-radius: 14px !important;
  color: #fff !important;
  min-height: 46px !important;
  box-shadow: none !important;
}

.form-control:focus,
.pf-c-form-control:focus {
  border-color: #f5c542 !important;
  box-shadow: 0 0 0 3px rgba(245,197,66,.18) !important;
}

.beehive-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin: 16px 0 22px;
}

.beehive-row-center {
  justify-content: center;
}

.beehive-check {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #d7d7d7 !important;
  font-weight: 500 !important;
}

.beehive-link,
a {
  color: #f5c542 !important;
  font-weight: 700;
}

.beehive-submit,
.btn-primary,
.pf-c-button.pf-m-primary {
  background: linear-gradient(135deg, #f5c542, #ffe489) !important;
  color: #050505 !important;
  border: 0 !important;
  border-radius: 16px !important;
  font-weight: 900 !important;
  min-height: 48px !important;
}

.beehive-error {
  background: rgba(220,38,38,.16);
  border: 1px solid rgba(248,113,113,.38);
  color: #fecaca;
  border-radius: 14px;
  padding: 12px;
  margin: 14px 0;
}

.beehive-help {
  color: #cfcfcf !important;
  line-height: 1.65;
  text-align: center;
  margin-bottom: 22px;
}

.beehive-error-card {
  text-align: center;
  color: #fff;
}

.beehive-button-link {
  display: inline-block;
  margin-top: 18px;
  text-decoration: none !important;
  border-radius: 16px;
  padding: 14px 18px;
  background: linear-gradient(135deg, #f5c542, #ffe489);
  color: #050505 !important;
  font-weight: 900;
}
