.authGate{
  position:fixed; inset:0; z-index:1000; display:grid; place-items:center;
  background:
    radial-gradient(circle at 20% 10%,rgba(108,71,245,.16),transparent 30%),
    radial-gradient(circle at 80% 15%,rgba(59,130,246,.11),transparent 25%),
    rgba(247,248,253,.98);
  padding:20px;
}
.authGate.hidden{display:none}
.authCard{
  width:min(440px,100%); background:#fff; border:1px solid var(--line);
  border-radius:24px; padding:24px; box-shadow:0 28px 85px rgba(44,38,98,.16)
}
.authBrand{display:flex;align-items:center;gap:10px;font-weight:950;font-size:22px;margin-bottom:18px}
.authCard h1{font-size:30px;line-height:1.05;letter-spacing:-.04em;margin:0 0 8px}
.authCard>p{color:var(--muted);font-size:12px;line-height:1.6}
.authTabs{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:18px 0 12px}
.authTabs button{border:1px solid var(--line);background:#f8f9fd;padding:9px;border-radius:10px;font-weight:800}
.authForm{display:grid;gap:9px}.authForm.hidden{display:none}
.authForm input{
  width:100%;border:1px solid var(--line);background:#fbfcff;padding:11px 12px;
  border-radius:11px;outline:0
}
.authForm input:focus,.liveField input:focus,.liveField textarea:focus,.liveField select:focus{
  border-color:#8e79f7;box-shadow:0 0 0 3px rgba(106,71,245,.1)
}
.authSubmit{border:0;background:linear-gradient(135deg,#7658ff,#5f3df0);color:#fff;padding:11px;border-radius:11px;font-weight:850}
.authLink{border:0;background:transparent;color:#6047da;font-size:10px;font-weight:800;padding:2px;justify-self:start}
#authMessage{min-height:18px;font-size:10px;color:#735fd5;margin-top:10px}
.liveField{display:grid;gap:5px;margin:9px 0;text-align:left}
.liveField span{font-size:10px;font-weight:800;color:#344054}
.liveField input,.liveField textarea,.liveField select{
  width:100%;border:1px solid var(--line);background:#fbfcff;padding:9px 10px;border-radius:9px;outline:0
}
.liveField textarea{min-height:86px;resize:vertical}
.liveToast{
  position:fixed;right:18px;bottom:18px;z-index:1200;background:#101828;color:#fff;
  border-radius:11px;padding:10px 13px;font-size:11px;font-weight:750;box-shadow:0 18px 45px rgba(17,24,39,.25);
  opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s
}
.liveToast.show{opacity:1;transform:translateY(0)}
.liveToast.error{background:#b42318}
.liveRoomImage{
  width:100%;height:70px;border-radius:10px;border:1px solid #e8eaf0;
  background:linear-gradient(135deg,#e7ebff,#efeaff 55%,#e4f6ef);
  display:grid;place-items:center;font-size:26px
}
.liveEmpty{font-size:9px;color:var(--muted);line-height:1.5;padding:8px 0}
.liveNotif{display:block;border-bottom:1px solid var(--line);padding:9px 0}
.liveNotif:last-child{border-bottom:0}
.liveNotif b{display:block;font-size:11px}
.liveNotif small{display:block;color:var(--muted);font-size:9px;margin-top:3px}
.liveDetailGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:10px 0 14px}
.liveDetailGrid>div{border:1px solid var(--line);background:#fafbfe;border-radius:10px;padding:8px}
.liveDetailGrid b{display:block;font-size:10px}.liveDetailGrid small{display:block;color:var(--muted);font-size:9px;margin-top:2px}
.liveActionRow{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}
.liveActionGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:12px}
#modalText code{display:block;background:#f6f7fb;border:1px solid var(--line);border-radius:9px;padding:9px;font-size:10px}
#modalText h4{margin:14px 0 7px;font-size:11px}
@media(max-width:640px){.authCard{padding:20px;border-radius:20px}.liveDetailGrid{grid-template-columns:1fr 1fr}.liveActionGrid{grid-template-columns:1fr}}
