/* Formulário de orçamento: erros, estados e resultado (usa os tokens de style.css) */
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hp-campo{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
textarea{background:#000;border:1px solid #777;border-radius:5px;width:100%;padding:12px;color:#fff;font:inherit;resize:vertical;min-height:84px}
textarea::placeholder{color:#bdbdbd}
textarea:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
form .opcional{font-weight:400;color:#c4c4c4}
.erro-campo{margin:-12px 0 16px;color:#ff8a92;font-size:13px;line-height:1.4}
.erro-campo[hidden]{display:none}
input[aria-invalid=true],select[aria-invalid=true]{border-color:#ff5964}
.contador{margin:6px 0 18px;text-align:right;color:#c4c4c4;font-size:12px}
.form-alerta{margin-bottom:16px;padding:12px 14px;border:1px solid #ff5964;border-radius:6px;background:#ff596422;color:#ffd5d8;font-size:14px}
.form-alerta[hidden]{display:none}
#form-enviar:disabled{opacity:.65;cursor:progress;transform:none}
form small a{color:#fff;text-decoration:underline}
.form-resultado{text-align:center;padding:12px 0;outline:none}
.form-resultado h3{font-size:24px;margin:0 0 4px}
.form-resultado .protocolo{font-size:15px;color:#c4c4c4}
.form-resultado .protocolo strong{color:#fff;letter-spacing:1px}
.form-resultado .aviso-email{padding:10px 12px;border:1px solid #777;border-radius:6px;font-size:13px;color:#ddd}
.form-resultado .btn{margin-top:14px}

/* Tema claro: o formulário fica branco, então campo de mensagem, dicas, erros e resultado precisam de texto escuro
   (os padrões acima são do tema escuro: fundo preto e texto claro). Mesmos valores de input/select em style.css. */
html[data-theme=light] textarea{background:#fafafa;border-color:#cdd0d3;color:#222}
html[data-theme=light] textarea::placeholder{color:#8a8e93}
html[data-theme=light] form .opcional,html[data-theme=light] .contador{color:#6b7076}
html[data-theme=light] .erro-campo{color:#c4121f}
html[data-theme=light] input[aria-invalid=true],html[data-theme=light] select[aria-invalid=true],html[data-theme=light] textarea[aria-invalid=true]{border-color:#c4121f}
html[data-theme=light] .form-alerta{border-color:#c4121f;background:#c4121f14;color:#8f1019}
html[data-theme=light] form small a{color:#17191b}
html[data-theme=light] .form-resultado .protocolo{color:#5b6066}
html[data-theme=light] .form-resultado .protocolo strong{color:#17191b}
html[data-theme=light] .form-resultado .aviso-email{border-color:#cdd0d3;color:#3d4247}
