*{box-sizing:border-box}
:root{--navy:#163152;--ink:#0f1f33;--muted:#6b7682;--line:#e6e9ed;--soft:#f7f8fa;--accent:#3186ad}
html,body{margin:0;background:#fff;color:var(--ink);font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--navy)}
.logo img{height:40px;display:block}
input,select{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:8px;font-size:15px;color:var(--ink);background:#fff;outline:none;transition:border-color .15s,box-shadow .15s;font-family:inherit}
input:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(22,49,82,.08)}
label{display:block;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 8px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:13px 18px;border-radius:8px;border:1px solid var(--navy);background:var(--navy);color:#fff;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;letter-spacing:.01em;transition:opacity .15s}
.btn:hover{opacity:.88}.btn:disabled{opacity:.5;cursor:wait}
.btn.ghost{background:#fff;color:var(--navy);border-color:var(--line)}
.btn.ghost:hover{border-color:var(--navy);opacity:1}
.btn.sm{padding:7px 11px;font-size:13px;font-weight:500}
.btn.danger{background:#fff;color:#b42318;border-color:#f1d0cc}
.err{display:none;background:#fef3f2;color:#b42318;border:1px solid #fcd9d5;border-radius:8px;padding:11px 13px;font-size:14px;margin-bottom:18px}
.ok{background:#f0f9f4;color:#1a7f4b;border-color:#cdebd9}
