@font-face{font-family:Manrope;src:url('/assets/fonts/manrope-latin.woff2') format('woff2');font-display:swap;font-weight:200 800}
:root{--ink:#132d27;--deep:#0b3028;--mint:#a9e9d4;--cream:#f7f4ec;--line:#e6e6df;--muted:#71807a;--error:#854533}
*{box-sizing:border-box}
html{background:var(--cream);color:var(--ink);font-family:Manrope,Arial,sans-serif}
body{margin:0;min-height:100vh;display:grid;place-items:center;padding:24px}
.login{width:100%;max-width:380px;padding:32px;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:0 20px 50px rgba(15,48,40,.07)}
.kicker{margin:0;color:#84928c;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
h1{margin:6px 0 20px;font-size:24px;letter-spacing:-.035em}
form{display:grid;gap:14px}
label{display:grid;gap:6px;color:#526961;font-size:12px;font-weight:700}
input{width:100%;height:40px;padding:0 12px;border:1px solid #dfe4df;border-radius:9px;color:var(--ink);background:#fff;font:inherit;font-size:14px;outline:none}
input:focus{border-color:#67bca2;box-shadow:0 0 0 3px rgba(78,188,152,.15)}
button{height:42px;border:0;border-radius:9px;color:#effff9;background:var(--deep);font:inherit;font-size:14px;font-weight:800;cursor:pointer}
button:hover{background:#0f3c32}
.error{margin:0 0 14px;padding:10px 12px;border-radius:9px;color:var(--error);background:#ffe8df;font-size:13px;font-weight:700}
.hint{margin:18px 0 0;color:var(--muted);font-size:12px;line-height:1.5}
code{padding:1px 5px;border-radius:5px;background:#eef1ed;font-size:11px}
