/* PRIME TV — css/login74128.css */

.login-body{ min-height:100vh; position:relative; overflow-x:hidden; display:flex; flex-direction:column; }
.login-body::before{
  content:''; position:fixed; inset:0; z-index:-1;
  background: radial-gradient(60% 50% at 50% -10%, rgba(255,255,255,.08), transparent 60%);
}
.login-brand{ padding:26px 30px; }

.login-stage{ flex:1; display:flex; align-items:center; justify-content:center; padding:20px 20px 60px; }
.login-card{ width:100%; max-width:430px; padding:40px 36px 32px; }

.login-head h1{ font-size:27px; margin:12px 0 8px; }
.login-head p{ color:var(--ink-2); font-size:14px; line-height:1.5; }

.mode-switch{
  display:flex; margin:26px 0 20px; padding:4px;
  background: var(--surface); border:1px solid var(--line-1); border-radius:12px;
}
.mode-btn{
  flex:1; padding:10px; border:none; background:none; color:var(--ink-3);
  font-size:13.5px; font-weight:600; border-radius:9px; cursor:pointer; transition:all .25s var(--ease);
}
.mode-btn.active{ background: var(--glass-fill-strong); color:var(--ink-0); box-shadow: inset 0 1px 0 rgba(255,255,255,.08); }

.google-btn{ margin-top:6px; gap:12px; }

.divider{ display:flex; align-items:center; gap:14px; margin:24px 0; }
.divider::before, .divider::after{ content:''; flex:1; height:1px; background:var(--line-1); }
.divider span{ font-size:11.5px; color:var(--ink-3); font-family:var(--f-mono); text-transform:uppercase; letter-spacing:.08em; white-space:nowrap; }

.field{ display:block; margin-bottom:16px; }
.field-label{ display:block; font-size:12.5px; color:var(--ink-2); font-weight:600; margin-bottom:7px; }
.field-input{
  display:flex; align-items:center; gap:10px; padding:0 14px; height:48px;
  background:var(--surface); border:1px solid var(--line-0); border-radius:12px;
  transition:border-color .2s var(--ease), box-shadow .2s var(--ease);
}
.field-input:focus-within{ border-color: rgba(255,255,255,.3); box-shadow: 0 0 0 3px var(--glass-fill-strong); }
.field-input svg{ width:18px; height:18px; color:var(--ink-3); flex-shrink:0; }
.field-input input{ flex:1; height:100%; border:none; background:none; color:var(--ink-0); font-size:14.5px; font-family:var(--f-body); outline:none; }
.field-input input::placeholder{ color:var(--ink-3); }
.field-toggle{ background:none; border:none; cursor:pointer; padding:2px; color:var(--ink-3); display:flex; }
.field-toggle:hover{ color:var(--ink-1); }

.form-msg{
  display:none; font-size:13px; color:#ff9c92; background:rgba(226,104,92,.1);
  border:1px solid rgba(226,104,92,.28); border-radius:10px; padding:10px 14px; margin-bottom:16px;
}
.form-msg.show{ display:block; }
.form-msg.ok{ color:var(--ok); background:rgba(56,214,138,.1); border-color:rgba(56,214,138,.28); }

.login-fineprint{ text-align:center; font-size:11.5px; color:var(--ink-3); margin-top:22px; line-height:1.5; }

@media (max-width:480px){ .login-card{ padding:32px 22px 26px; } }
