/* AXIS Systems Firebase Auth Session V1 */
.auth-status-message{min-height:1.25rem;color:var(--muted);font-size:.86rem;font-weight:850}
.auth-status-message.is-error{color:#ffb4b4}
.auth-status-message.is-success{color:var(--neon)}
.auth-status-message.is-loading{color:#dfffe9}
.auth-submit[disabled],.auth-open-btn[disabled],.nxts-user-trigger[disabled]{cursor:not-allowed;opacity:.72}
.auth-submit--google{margin-top:.15rem;background:linear-gradient(135deg,rgba(245,245,245,.98),rgba(216,220,226,.92));color:#0f172a;box-shadow:0 18px 44px rgba(15,23,42,.18)}
.auth-submit--google:hover,.auth-submit--google:focus-visible{border-color:rgba(229,231,235,.92);box-shadow:0 20px 44px rgba(15,23,42,.24)}
.auth-field input[aria-invalid="true"]{border-color:rgba(255,180,180,.72);box-shadow:0 0 0 4px rgba(255,110,110,.1)}
.auth-reset-panel{display:none;border:1px solid rgba(57,255,136,.16);border-radius:12px;background:rgba(57,255,136,.05);padding:.8rem;gap:.7rem}
.auth-reset-panel.is-open{display:grid}
.nxts-auth-shell{display:flex;align-items:center;gap:.55rem;min-width:0}
.nxts-auth-shell.is-loading .nxts-user-trigger{pointer-events:none}
.nxts-user-trigger span{max-width:132px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nxts-user-panel{transform-origin:top right}
.nxts-user-panel a,.nxts-user-panel button{text-decoration:none}
.nxts-user-panel button{width:100%}
.nxts-user-menu.is-open .nxts-user-panel{animation:nxts-auth-menu-in .16s ease}
.mobile-panel .nxts-auth-shell{display:grid;width:100%;gap:.5rem}
.mobile-panel .nxts-user-trigger{width:100%;justify-content:flex-start}
.mobile-panel .nxts-user-trigger span{max-width:none}
.mobile-panel [data-auth-open][hidden],.header-actions [data-auth-open][hidden]{display:none!important}
.auth-open-btn[hidden],.nxts-user-menu[hidden],.auth-hidden{display:none!important}
.route-guard-card{border:1px solid rgba(57,255,136,.22);border-radius:12px;background:radial-gradient(circle at 20% 20%,rgba(57,255,136,.14),transparent 18rem),rgba(245,255,248,.045);padding:1rem;color:var(--muted)}
.route-guard-card strong{display:block;color:#fff;font-size:1.05rem;margin-bottom:.35rem}
@keyframes nxts-auth-menu-in{from{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:640px){.nxts-auth-shell{width:100%}.header-actions .nxts-auth-shell{width:auto}.nxts-user-trigger span{max-width:104px}.auth-reset-panel{padding:.7rem}.auth-status-message{font-size:.82rem}}
@media(prefers-reduced-motion:reduce){.nxts-user-menu.is-open .nxts-user-panel{animation:none!important}}
