/* Axis Margem: base visual compartilhada pela landing e pelo app.
 * Identidade da marca-mãe AXIS (preto/grafite, ouro, Unbounded + Sora).
 * Regra de contraste: sobre ouro o texto é SEMPRE var(--preto). testes/contraste.js lê estes tokens. */
:root{
  --preto:#0A0A0B;--grafite:#141518;--grafite2:#1B1C20;--grafite3:#24262B;
  --linha:rgba(201,162,74,.22);--linha-neutra:#2C2E34;
  --ouro:#C9A24A;--ouro-claro:#E8C77A;--ouro-brilho:#FFF1C9;--ouro-escuro:#9E7A2C;
  --marfim:#F3EEE4;--texto2:#CFC8BA;--texto3:#9A9385;--tinta-marfim:#3A352C;--ouro-sobre-marfim:#7A5C1C;
  --ok:#3DD68C;--aviso:#E8C77A;--alerta:#FF8A7A;
  --fundo-ok:#10241B;--fundo-aviso:#241F12;--fundo-alerta:#2A1614;
  --display:'Unbounded','Arial Black',system-ui,sans-serif;--corpo:'Sora',system-ui,-apple-system,'Segoe UI',sans-serif;
  --max:1240px;--raio:24px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:clip;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--preto);color:var(--marfim);font-family:var(--corpo);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg{max-width:100%}
img{display:block}
a{color:var(--ouro-claro)}
a:hover{color:var(--marfim)}
h1,h2,h3{font-family:var(--display);letter-spacing:-.02em;line-height:1.1;margin:0}
p{margin:0}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
.eyebrow{font-size:12px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--ouro-claro)}
.num{font-family:var(--display);font-variant-numeric:tabular-nums}
:focus-visible{outline:3px solid var(--ouro-claro);outline-offset:3px;border-radius:6px}
button{font:inherit;cursor:pointer}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:14px 28px;border-radius:999px;font-weight:700;font-size:15px;text-decoration:none;border:1px solid transparent;transition:transform .25s,box-shadow .25s,background .25s;font-family:var(--corpo);line-height:1.2;text-align:center}
.btn:hover{transform:translateY(-2px)}
.btn[disabled]{opacity:.55;cursor:not-allowed;transform:none}
.btn-ouro{background:linear-gradient(135deg,var(--ouro-brilho),var(--ouro-claro) 32%,var(--ouro) 68%,var(--ouro-escuro));color:var(--preto);box-shadow:0 10px 36px rgba(201,162,74,.3)}
.btn-ouro:hover{color:var(--preto);box-shadow:0 16px 52px rgba(201,162,74,.5)}
.btn-linha{border-color:rgba(243,238,228,.34);color:var(--marfim);background:transparent}
.btn-linha:hover{border-color:var(--ouro-claro);color:var(--ouro-brilho)}
.btn-sm{min-height:40px;padding:8px 18px;font-size:14px}
.lnk{background:none;border:0;color:var(--ouro-claro);text-decoration:underline;padding:0;font-weight:600;font-family:inherit;font-size:inherit;cursor:pointer}
.lnk:hover{color:var(--marfim)}

/* formulários */
.campo{display:flex;flex-direction:column;gap:6px;margin:0}
.campo label,.rotulo-campo{font-size:13px;font-weight:600;color:var(--texto2)}
.aj{font-size:13px;color:var(--texto3);font-weight:400}
input[type=text],input[type=email],input[type=tel],input[type=search],input[type=number],select,textarea{width:100%;min-height:46px;font:inherit;font-size:16px;color:var(--marfim);background:var(--preto);border:1.5px solid var(--linha-neutra);border-radius:12px;padding:10px 14px;transition:border-color .2s,box-shadow .2s}
input::placeholder{color:var(--texto3)}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--ouro-claro);box-shadow:0 0 0 3px rgba(232,199,122,.2)}
input.erro{border-color:var(--alerta)}
select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--texto2) 50%),linear-gradient(135deg,var(--texto2) 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;background-size:6px 6px;background-repeat:no-repeat;padding-right:36px}
option{background:var(--grafite);color:var(--marfim)}
.pre,.suf{display:flex;align-items:stretch;min-width:0}
.pre span,.suf span{display:flex;align-items:center;padding:0 12px;background:var(--grafite3);color:var(--texto2);font-size:14px;border:1.5px solid var(--linha-neutra)}
.pre span{border-right:0;border-radius:12px 0 0 12px}
.pre input{border-radius:0 12px 12px 0;min-width:0}
.suf span{border-left:0;border-radius:0 12px 12px 0}
.suf input{border-radius:12px 0 0 12px;min-width:0}
input[type=checkbox]{width:20px;height:20px;accent-color:var(--ouro);flex:none}

/* avisos de estado (classes devolvidas por CmvCore.faixa: st-ok, st-at, st-al; st-ne = neutro) */
.status{border-radius:14px;padding:14px 16px;font-size:15px;border:1px solid var(--linha-neutra);background:var(--grafite2);color:var(--texto2)}
.status b{display:block;color:var(--marfim);font-weight:700;margin-bottom:2px}
.status.st-ok{background:var(--fundo-ok);border-color:#1F5A3E}
.status.st-ok b{color:var(--ok)}
.status.st-at{background:var(--fundo-aviso);border-color:#5C4A1C}
.status.st-at b{color:var(--aviso)}
.status.st-al{background:var(--fundo-alerta);border-color:#6B2E27}
.status.st-al b{color:var(--alerta)}
.etq{display:inline-block;font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;border:1px solid currentColor;line-height:1.4}
.etq.st-ok{color:var(--ok)}.etq.st-at{color:var(--aviso)}.etq.st-al{color:var(--alerta)}.etq.st-ne{color:var(--texto3)}

/* movimento: tudo desliga com .sem-movimento (reduced-motion, webdriver, ?print=1) */
.sem-movimento *,.sem-movimento *::before,.sem-movimento *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
[hidden]{display:none!important}

/* selo de texto jurídico ainda não aprovado */
.provisorio{display:inline-block;margin:6px 0 0;padding:4px 12px;border:1px solid rgba(232,184,75,.55);border-radius:999px;background:rgba(232,184,75,.08);color:#E8B84B;font-size:12px;font-weight:600;letter-spacing:.04em}
