:root{--bg:#eef4f8;--surface:#fff;--ink:#102235;--muted:#63778a;--primary:#0f5f96;--accent:#14b3a0;--line:#d8e2ea}
*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;background:linear-gradient(180deg,#f5f8fa,#eaf1f5);color:var(--ink)}
.page{min-height:100vh;display:grid;place-items:center;padding:28px}.card{width:min(100%,540px);background:#fff;border:1px solid var(--line);border-radius:24px;padding:38px;box-shadow:0 24px 60px rgba(20,49,72,.10)}
.brand{display:flex;align-items:center;gap:10px;font-weight:850;font-size:22px}.mark{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff}.brand span span{color:#1580bd}
h1{font-size:38px;line-height:1.05;letter-spacing:-.03em;margin:36px 0 8px}.sub{color:var(--muted);margin:0 0 26px}.field{display:grid;gap:7px;margin-top:16px}.field label{font-weight:750;font-size:14px}.field input{width:100%;border:1px solid #cbd8e2;border-radius:12px;padding:14px 15px;font-size:16px;outline:none}.field input:focus{border-color:#4d9ac4;box-shadow:0 0 0 3px rgba(77,154,196,.12)}
.btn{border:0;border-radius:12px;padding:14px 18px;background:linear-gradient(135deg,#0d6099,#117eb4);color:#fff;font-weight:800;font-size:15px;cursor:pointer}.actions{display:flex;align-items:center;gap:16px;margin-top:20px}.link{color:#0d6099;text-decoration:none;font-weight:750}.error,.ok{padding:13px 14px;border-radius:11px;margin:16px 0}.error{background:#fff0f0;border:1px solid #f0caca;color:#9d3434}.ok{background:#eaf8f4;border:1px solid #cbeade;color:#237263}.small{font-size:12px;color:var(--muted)}