.brand-xl{font-size:2.75rem}.auth-screen{background:var(--ground);justify-content:center;align-items:center;min-height:100dvh;padding:40px 24px;display:flex}.auth-wrap{flex-direction:column;gap:24px;width:100%;max-width:440px;display:flex}.auth-brand{flex-direction:column;align-items:center;gap:6px;display:flex}.auth-brand .tag{color:var(--slate);font-size:.875rem}.auth-card{background:var(--surface);border-radius:var(--radius-card);box-shadow:var(--shadow-card);flex-direction:column;gap:16px;padding:24px;display:flex}.auth-card h1{margin:0}.auth-card .note{color:var(--slate);margin:0;font-size:.875rem}.auth-card button[type=submit]{width:100%;min-height:48px;font-size:1.0625rem}.auth-alert{border:1px solid var(--danger-border);background:var(--danger-surface);color:var(--danger-ink);border-radius:10px;padding:12px 14px;animation:.18s ease-out auth-in}.auth-alert b{font-weight:700}.app-loading{flex-direction:column;gap:20px;animation:.24s ease-out auth-in}.app-loading .brand-xl{font-size:3rem}.app-loading .bar{background:var(--sunken);border-radius:3px;width:220px;height:6px;overflow:hidden}.app-loading .bar>span{background:var(--brand-blue);border-radius:3px;width:45%;height:100%;animation:1.2s ease-in-out infinite alternate app-loading-run;display:block}.app-loading .bar.timed>span{transform-origin:0;width:100%;animation:app-loading-fill var(--ms) cubic-bezier(.3, .1, .2, 1) forwards}.app-loading p{color:var(--slate);margin:0;font-size:.875rem}@keyframes auth-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes app-loading-fill{0%{transform:scaleX(.08)}to{transform:scaleX(1)}}@keyframes app-loading-run{0%{transform:translate(-60%)}to{transform:translate(160%)}}@media (prefers-reduced-motion:reduce){.auth-alert,.app-loading,.app-loading .bar>span{animation:none}.app-loading .bar.timed>span{transform:none}}@media (max-width:599px){.auth-screen{padding:24px 16px}.auth-card{padding:16px}.auth-card h1{letter-spacing:0;font-size:1.25rem}.brand-xl{font-size:2.5rem}.auth-card .field{margin-bottom:0}}
