:root{--l-bg: #f7f7f5;--l-surface: #ffffff;--l-text: #37352f;--l-muted: #787774;--l-border: #e3e2df;--l-accent: #6366f1;--l-accent-soft: rgba(99, 102, 241, .16);--l-error-bg: #fdecea;--l-error: #b42318;--l-shadow: 0 1px 2px rgba(15, 15, 15, .05), 0 12px 32px rgba(15, 15, 15, .08);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--l-text)}@media(prefers-color-scheme:dark){:root{--l-bg: #191919;--l-surface: #252525;--l-text: #e3e2e0;--l-muted: #9b9a97;--l-border: #343434;--l-accent: #818cf8;--l-accent-soft: rgba(129, 140, 248, .25);--l-error-bg: #4a2420;--l-error: #f6c3bb;--l-shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 12px 32px rgba(0, 0, 0, .45);color-scheme:dark}}html{touch-action:manipulation;-webkit-tap-highlight-color:transparent}body{margin:0;background:var(--l-bg);user-select:none;-webkit-user-select:none;overscroll-behavior-y:contain}input,textarea{user-select:text;-webkit-user-select:text}@media(pointer:coarse){input{font-size:16px!important}}@keyframes login-rise{0%{opacity:0;translate:0 8px}}.login{min-height:100dvh;display:grid;place-items:center;background:var(--l-bg);padding:1rem}.login__form{width:100%;max-width:370px;display:flex;flex-direction:column;gap:1rem;padding:2rem 1.75rem 1.75rem;background:var(--l-surface);border:1px solid var(--l-border);border-radius:14px;box-shadow:var(--l-shadow);animation:login-rise .32s cubic-bezier(.2,.8,.2,1) backwards}.login__brand{display:flex;flex-direction:column;align-items:center;gap:.35rem;margin-bottom:.4rem;text-align:center}.login__logo{width:56px;height:56px;border-radius:14px;box-shadow:0 0 0 1px var(--l-border);margin-bottom:.35rem}.login__title{margin:0;font-size:1.25rem;letter-spacing:-.01em}.login__subtitle{margin:0;color:var(--l-muted);font-size:.875rem}.login__label{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;font-weight:500;color:var(--l-muted)}.login__label input{padding:.6rem .75rem;border:1px solid var(--l-border);border-radius:8px;background:var(--l-surface);color:var(--l-text);font:inherit;font-size:1rem;font-weight:400;transition:border-color .12s,box-shadow .12s}.login__label input:focus{outline:none;border-color:var(--l-accent);box-shadow:0 0 0 3px var(--l-accent-soft)}.login__password-wrap{position:relative}.login__password-wrap input{width:100%;padding-right:2.75rem;box-sizing:border-box}.login__toggle-pw{position:absolute;right:.4rem;top:50%;transform:translateY(-50%);background:none;border:0;border-radius:6px;padding:.3rem;cursor:pointer;color:var(--l-muted);display:flex;align-items:center;transition:color .12s,background .12s}.login__toggle-pw:hover{color:var(--l-text);background:var(--l-accent-soft)}.login__toggle-pw svg[hidden]{display:none}.login__error{margin:0;padding:.6rem .75rem;background:var(--l-error-bg);color:var(--l-error);border-radius:8px;font-size:.85rem}.login button[type=submit]{margin-top:.25rem;padding:.7rem;border:0;border-radius:8px;background:var(--l-accent);color:#fff;font:inherit;font-size:1rem;font-weight:600;cursor:pointer;box-shadow:0 1px 2px #0f0f0f26;transition:filter .12s,scale .12s}.login button[type=submit]:hover:not(:disabled){filter:brightness(1.07)}.login button[type=submit]:active:not(:disabled){scale:.98}.login button[type=submit]:focus-visible{outline:2px solid var(--l-accent);outline-offset:2px}.login button[type=submit]:disabled{opacity:.6;cursor:progress}@media(prefers-reduced-motion:reduce){.login__form{animation:none}}
