/* Knoxlink premium standalone login — aligned with creator guest gate */
body[data-page="login-premium"]{
  background:
    radial-gradient(780px 520px at 72% 22%, rgba(126,78,244,.11), transparent 68%),
    radial-gradient(620px 420px at 22% 78%, rgba(88,106,255,.055), transparent 70%),
    #070a13;
}
body[data-page="login-premium"] .knox-layout{
  display:block;
  min-height:calc(100vh - 76px);
  padding:0;
}
body[data-page="login-premium"] #knox-sidebar{display:none!important}
body[data-page="login-premium"] .knox-content{
  width:100%;
  min-height:calc(100vh - 76px);
}
body[data-page="login-premium"] .site-main{padding:0}
body[data-page="login-premium"] .site-header{
  border-bottom:1px solid rgba(255,255,255,.055);
  background:rgba(6,8,16,.76);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
body[data-page="login-premium"] .top-actions{display:none}
body[data-page="login-premium"] .site-footer{margin-top:0}

.knox-login-page{
  position:relative;
  min-height:calc(100vh - 76px);
  display:grid;
  place-items:center;
  overflow:hidden;
  padding:56px 22px 72px;
}
.knox-login-page:before,
.knox-login-page:after{
  content:"";
  position:absolute;
  border-radius:50%;
  pointer-events:none;
  filter:blur(80px);
}
.knox-login-page:before{
  width:420px;height:420px;
  right:12%;top:4%;
  background:rgba(126,78,244,.10);
}
.knox-login-page:after{
  width:320px;height:320px;
  left:18%;bottom:2%;
  background:rgba(75,98,255,.045);
}
.knox-login-card{
  position:relative;
  z-index:1;
  width:min(100%,470px);
  overflow:hidden;
  border:1px solid rgba(255,255,255,.13);
  border-radius:25px;
  background:linear-gradient(155deg,rgba(27,28,42,.98),rgba(13,14,22,.99));
  box-shadow:0 35px 110px rgba(0,0,0,.55),0 0 0 1px rgba(119,83,238,.08);
  padding:31px;
}
.knox-login-card:before{
  content:"";
  position:absolute;
  width:230px;height:230px;
  right:-90px;top:-105px;
  border-radius:50%;
  background:rgba(126,78,244,.25);
  filter:blur(55px);
  pointer-events:none;
}
.knox-login-brand{
  position:relative;
  display:flex;
  align-items:center;
  gap:0;
  margin-bottom:24px;
  color:#fff;
  font-weight:850;
  font-size:.95rem;
}
.knox-login-brand img{display:block;width:150px;height:auto;max-height:38px;object-fit:contain}
.knox-login-kicker{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin-bottom:10px;
  color:#a98bff;
  font-size:.69rem;
  font-weight:850;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.knox-login-card h1{
  position:relative;
  margin:0;
  color:#fff;
  font-size:clamp(1.65rem,5vw,2.15rem);
  line-height:1.08;
  letter-spacing:-.035em;
}
.knox-login-sub{
  position:relative;
  margin:11px 0 22px;
  color:#aeb3c2;
  font-size:.88rem;
  line-height:1.58;
}
.knox-login-alert{
  position:relative;
  margin:0 0 16px;
  padding:11px 12px;
  border-radius:12px;
  font-size:.78rem;
  line-height:1.45;
}
.knox-login-alert--success{
  color:#c9f8da;
  background:rgba(50,205,116,.075);
  border:1px solid rgba(74,222,128,.18);
}
.knox-login-alert--error{
  color:#ffd0d5;
  background:rgba(244,63,94,.075);
  border:1px solid rgba(251,113,133,.20);
}
.knox-login-alert a{color:inherit;font-weight:800}
.knox-login-form{position:relative;display:grid;gap:13px}
.knox-login-field{display:grid;gap:7px}
.knox-login-field label{color:#dfe2eb;font-size:.75rem;font-weight:700}
.knox-login-field input{
  width:100%;
  box-sizing:border-box;
  border:1px solid rgba(255,255,255,.12);
  border-radius:12px;
  background:rgba(255,255,255,.055);
  padding:12px 13px;
  color:#fff;
  outline:none;
  font:inherit;
  font-size:.86rem;
  transition:border-color .17s ease,box-shadow .17s ease,background .17s ease;
}
.knox-login-field input:focus{
  border-color:rgba(151,112,255,.65);
  background:rgba(255,255,255,.07);
  box-shadow:0 0 0 3px rgba(126,78,244,.13);
}
.knox-login-field input::placeholder{color:#707687}
.knox-login-passrow{display:flex;justify-content:flex-end;margin-top:-4px}
.knox-login-passrow a{color:#9d91c9;text-decoration:none;font-size:.69rem}
.knox-login-passrow a:hover{color:#c4aeff}
.knox-login-submit{
  width:100%;
  border:0;
  border-radius:12px;
  padding:12px 15px;
  background:linear-gradient(135deg,#7047e9,#9b5cff);
  color:#fff;
  font:inherit;
  font-weight:850;
  cursor:pointer;
  box-shadow:0 13px 30px rgba(112,71,233,.27);
  transition:transform .16s ease,filter .16s ease,box-shadow .16s ease;
}
.knox-login-submit:hover{filter:brightness(1.07);box-shadow:0 16px 36px rgba(112,71,233,.34);transform:translateY(-1px)}
.knox-login-submit:active{transform:translateY(0)}
.knox-login-divider{
  position:relative;
  display:flex;
  align-items:center;
  gap:12px;
  margin:20px 0;
  color:#777d8f;
  font-size:.67rem;
}
.knox-login-divider:before,.knox-login-divider:after{content:"";height:1px;flex:1;background:rgba(255,255,255,.08)}
.knox-login-register{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  text-align:center;
  color:#b5bac7;
  font-size:.78rem;
}
.knox-login-register a{color:#c4aeff;font-weight:800;text-decoration:none}
.knox-login-register a:hover{text-decoration:underline}
.knox-login-back{position:relative;display:flex;justify-content:center;margin-top:18px}
.knox-login-back a{color:#777e8f;font-size:.68rem;text-decoration:none}
.knox-login-back a:hover{color:#b7bdc9}

@media(max-width:560px){
  .knox-login-page{min-height:calc(100vh - 64px);padding:28px 14px 38px;align-items:end}
  .knox-login-card{border-radius:23px;padding:25px 20px 22px}
  .knox-login-brand{margin-bottom:18px}
  .knox-login-sub{margin-bottom:18px}
}
