/* Страница входа — в той же дизайн-системе (base.css), без боковой панели. */
body.login-page { align-items:center; justify-content:center; overflow:auto; }
.login-card { width:100%; max-width:380px; margin:1.5rem; background:var(--bg-card); border:1px solid var(--border); border-radius:16px; box-shadow:0 1px 3px rgba(0,0,0,0.04); padding:2rem; flex:0 0 auto !important; }
body.dark .login-card { box-shadow:0 1px 3px rgba(0,0,0,0.15); }
.login-brand { display:flex; align-items:center; gap:0.75rem; margin-bottom:1.5rem; }
.login-brand .sidebar-brand { font-size:15px; }
.login-brand-sub { font-size:10px; color:var(--text-muted-c); letter-spacing:0.3px; }
.login-title { font-size:1.25rem; font-weight:600; margin-bottom:0.25rem; }
.login-sub { font-size:0.8rem; color:var(--text-muted-c); margin-bottom:1.25rem; }
.login-label { font-size:0.8rem; font-weight:600; margin-bottom:0.35rem; display:block; color:var(--text-muted-c); }
.login-input { width:100%; padding:0.6rem 0.75rem; border:1px solid var(--border); border-radius:8px; font-size:0.85rem; background:transparent; margin-bottom:1rem; color:inherit; font-family:inherit; transition:border-color 0.15s; }
.login-input:focus { outline:none; border-color:var(--primary); box-shadow:0 0 0 3px rgba(59,130,246,0.1); }
body.light .login-input { background:#F8FAFC; }
body.dark .login-input { background:#0F172A; }
.login-btn { width:100%; justify-content:center; background:var(--primary); color:#fff; border:none; border-radius:8px; padding:0.6rem 1rem; font-size:0.875rem; font-weight:600; cursor:pointer; display:flex; align-items:center; gap:0.5rem; font-family:inherit; transition:background 0.15s; }
.login-btn:hover { background:var(--primary-hover); }
.login-error { display:flex; align-items:center; gap:0.4rem; background:rgba(239,68,68,0.08); color:var(--danger); border:1px solid rgba(239,68,68,0.2); border-radius:8px; padding:0.5rem 0.75rem; font-size:0.8rem; margin-bottom:1rem; }
.login-error .material-symbols-outlined { font-size:18px; }
.login-error[hidden] { display:none; }
