/* Экран входа */
.auth{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:20px 16px;overflow:hidden;background:radial-gradient(90% 70% at 50% 0%,#1a2030,var(--bg))}
.auth-rain{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.auth-wrap{position:relative;width:min(400px,100%);display:flex;flex-direction:column;align-items:center}
.auth-mark{font:400 clamp(52px,15vw,104px)/1 var(--f-display);letter-spacing:.02em;color:rgba(232,226,210,.13);margin-bottom:calc(40px - .16em);white-space:nowrap;pointer-events:none;user-select:none;text-shadow:0 0 40px rgba(232,226,210,.06)}
.auth-card{position:relative;width:100%;background:rgba(19,23,31,.88);backdrop-filter:blur(3px);border:1px solid var(--line2);border-radius:18px;padding:26px 26px 22px;box-shadow:0 24px 70px rgba(0,0,0,.6);display:flex;flex-direction:column;gap:12px}
.auth-brand h1{margin:0 0 4px;font:400 26px var(--f-display)}
.auth-f{display:flex;flex-direction:column;gap:5px;font:500 12px var(--f-body);color:var(--muted)}
.auth-f input{background:var(--panel);color:var(--ink);border:1px solid var(--line2);border-radius:9px;padding:10px 12px;font:14px var(--f-body)}
.auth-f input:focus{outline:none;border-color:var(--accent)}
.auth-err{min-height:18px;color:#e48a8a;font-size:13px}
.auth-go{background:var(--accent);color:#1a1405;border:0;border-radius:10px;padding:11px;font:600 14px var(--f-body);cursor:pointer}
.auth-go:disabled{opacity:.6;cursor:wait}
.boot{position:fixed;inset:0;z-index:100;background:var(--bg);display:flex;align-items:center;justify-content:center;color:var(--muted)}
.boot-in{display:flex;flex-direction:column;align-items:center;gap:14px}
.spin{width:30px;height:30px;border-radius:50%;border:3px solid var(--line2);border-top-color:var(--accent);animation:bs .8s linear infinite}
@keyframes bs{to{transform:rotate(360deg)}}
