*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--navy:#0F2044;--blue:#1A5EA8;--sky:#E8F1FB;--border:#E2E8F0;--text:#1E293B;--muted:#64748B;--bg:#F8FAFC;--red:#B91C1C;--rbg:#FEE2E2}
body{font-family:system-ui,sans-serif;background:var(--bg);color:var(--text);font-size:15px;line-height:1.6}
.wrap{max-width:640px;margin:0 auto;padding:40px 20px 80px}
.hdr{background:var(--navy);color:#fff;border-radius:12px;padding:32px 36px;margin-bottom:24px}
.hdr h1{font-size:22px;font-weight:700}
.hdr .tagline{color:#BFD4EC;font-size:13px;font-weight:600;letter-spacing:.02em;margin-top:4px}
.hdr .sub{color:#94A3B8;font-size:13px;margin-top:8px}
.alert{background:var(--rbg);color:var(--red);border-radius:8px;padding:14px 18px;margin-bottom:20px;font-size:14px}
.card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:28px}
.form label{display:block;font-size:13px;font-weight:600;color:var(--muted);margin-bottom:18px}
.form input[type=text],.form input[type=password],.form input[type=file]{
  display:block;width:100%;margin-top:6px;padding:10px 12px;border:1px solid var(--border);
  border-radius:8px;font-size:14px;font-family:inherit}
.form .hint{display:block;font-weight:400;font-size:12px;color:var(--muted);margin-top:4px}
button,.btn{display:inline-block;background:var(--blue);color:#fff;border:none;padding:12px 20px;
  border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;text-decoration:none;text-align:center}
button:hover,.btn:hover{opacity:.9}
.btn.secondary{background:#fff;color:var(--blue);border:1px solid var(--blue)}
.footnote{margin-top:18px;font-size:13px;color:var(--muted);text-align:center}
.footnote a{color:var(--blue)}
.sc{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}
.card.stat{text-align:center;padding:20px 10px}
.card.stat .n{font-size:30px;font-weight:700;color:var(--navy)}
.card.stat .l{font-size:12px;color:var(--muted);margin-top:4px}
.card.downloads{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
