.login-wrap{background:var(--bg-base);min-height:100dvh;font-family:var(--font-sans), system-ui, sans-serif;place-items:center;display:grid}.login-card{gap:var(--space-2);width:min(380px,90vw);padding:var(--space-6);background:var(--surface-strong);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);flex-direction:column;display:flex}.login-card h1{font-family:var(--font-display), var(--font-sans), sans-serif;color:var(--text-1);margin:0;font-size:1.5rem}.login-sub{margin:0 0 var(--space-3);color:var(--text-2);font-size:.9rem}.login-card label{color:var(--text-1);margin-top:var(--space-2);font-size:.85rem}.login-card input{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-1);padding:10px 12px;font-size:1rem}.login-card input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.login-card button{margin-top:var(--space-4);border-radius:var(--radius-sm);background:var(--accent);color:var(--accent-fg);cursor:pointer;transition:filter var(--t-fast) var(--ease);border:0;padding:11px;font-size:1rem}.login-card button:hover{filter:brightness(.92)}.login-error{border-radius:var(--radius-sm);background:var(--danger-soft);color:var(--danger);margin:0;padding:10px 12px;font-size:.85rem}.login-success{border-radius:var(--radius-sm);background:var(--running-soft);color:var(--running);margin:0;padding:10px 12px;font-size:.85rem}.login-forgot{margin-top:var(--space-3);color:var(--text-2);text-align:center;font-size:.85rem}
