/* Sistema ECF V4 · base visual (a mesma identidade do protótipo: Inter, branco, azul-marinho, gradiente ECF como detalhe) */
:root{
  --f:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
  --bg:#FFFFFF;--s2:#F7F7F5;--line:#E8E8E4;--line2:#F0F0EC;--fg:#1B1C1F;--fg2:#3A3B40;--muted:#6B6C70;
  --navy:#0E1A2E;--run:#2F5FC4;--run-bg:#EAF0FC;--ok:#15723F;--ok-bg:#E6F4EC;--warn:#8F5400;--warn-bg:#FBF1DE;--bad:#B42318;--bad-bg:#FBE8E8;
  --grad:linear-gradient(90deg,#F9CB15 0%,#F78314 22%,#F2623F 40%,#EA4883 58%,#8250C3 78%,#325BE9 100%);
  --r:10px;color-scheme:light
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--fg);font:15px/1.55 var(--f)}
body::before{content:"";position:fixed;inset:0 0 auto;height:3px;background:var(--grad);z-index:50}
h1,h2,h3{margin:0;line-height:1.2;text-wrap:balance}
button,input,select{font:inherit;color:inherit}
a{color:var(--run)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 14px;border-radius:9px;border:1px solid var(--line);background:var(--bg);font-weight:600;font-size:14px;cursor:pointer;white-space:nowrap}
.btn:hover{border-color:var(--muted)}
.btn.pri{background:var(--navy);border-color:var(--navy);color:#fff}
.btn.pri:hover{background:#1c2c48}
.btn.link{border:0;background:none;color:var(--run);padding:4px 2px}
.btn[disabled]{opacity:.45;cursor:not-allowed}
.btn:focus-visible,.inp:focus-visible,.sel:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--run);outline-offset:2px}
.inp,.sel{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:var(--bg)}
.inp:focus,.sel:focus{border-color:var(--run);outline:none;box-shadow:0 0 0 3px var(--run-bg)}
label.fld{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:var(--fg2)}
.msg{font-size:13.5px;border-radius:9px;padding:10px 12px}
.msg.erro{background:var(--bad-bg);color:var(--bad)}
.msg.ok{background:var(--ok-bg);color:var(--ok)}
.muted{color:var(--muted)}.small{font-size:13px}
.marca{display:inline-flex;align-items:baseline;gap:8px;font-weight:800;letter-spacing:-.02em;font-size:20px;color:var(--navy);text-decoration:none}
.marca small{font-weight:600;font-size:13px;letter-spacing:0;color:var(--muted)}
/* login */
.acesso{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:24px 16px}
.acesso-cx{width:min(400px,100%);display:flex;flex-direction:column;gap:18px}
.acesso-cx h1{font-size:26px;font-weight:800;letter-spacing:-.02em}
.acesso-cx form{display:flex;flex-direction:column;gap:14px}
.amb{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;padding:3px 10px;border-radius:99px;background:var(--warn-bg);color:var(--warn);width:max-content}
.amb.prod{background:var(--ok-bg);color:var(--ok)}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
