/* Housafe — marca laranja do site atual (housafe.com.br): #FC5412 / #FF7F00, DM Sans */
:root{
  --laranja:#FC5412; --laranja-claro:#FF7F00; --escuro:#161b22; --grafite:#3d4550;
  --cinza:#7a7a7a; --linha:#e6e8ec; --fundo:#f7f8fa; --branco:#fff;
  --verde:#1f9d55; --vermelho:#d64545; --ambar:#b7791f;
}
*{box-sizing:border-box}
body{margin:0;font-family:'DM Sans',-apple-system,Segoe UI,Roboto,sans-serif;background:var(--fundo);color:var(--escuro);line-height:1.5}
a{color:var(--laranja);text-decoration:none}
.topo{background:var(--branco);border-bottom:1px solid var(--linha);padding:14px 22px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.logo{display:inline-flex;align-items:center;text-decoration:none;color:var(--escuro)}
.logo img{height:38px;width:auto;display:block}
.logo-texto{font-size:1.5rem;font-weight:800;letter-spacing:-.02em}
.logo-texto b{color:var(--laranja)}
.logo-texto small{display:block;font-size:.6rem;letter-spacing:.22em;color:var(--cinza);font-weight:600;margin-top:-4px}
.topo nav{margin-left:auto;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.caixa{max-width:960px;margin:0 auto;padding:26px 20px 60px}
.painel{background:var(--branco);border:1px solid var(--linha);border-radius:14px;padding:22px;margin-bottom:18px}
h1{font-size:1.9rem;margin:0 0 6px} h2{font-size:1.15rem;margin:0 0 14px}
.mudo{color:var(--cinza);font-size:.92rem}
label{display:block;font-size:.78rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--grafite);margin:14px 0 5px}
input,select,textarea{width:100%;padding:11px 13px;border:1px solid var(--linha);border-radius:9px;font:inherit;background:var(--branco)}
input:focus,select:focus{outline:2px solid var(--laranja);border-color:transparent}
.linha{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.linha3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}
@media(max-width:620px){.linha,.linha3{grid-template-columns:1fr}}
.btn{display:inline-block;background:var(--laranja);color:#fff;border:0;border-radius:999px;padding:13px 26px;font:inherit;font-weight:700;cursor:pointer}
.btn:hover{background:var(--laranja-claro)}
.btn.fantasma{background:transparent;color:var(--laranja);border:2px solid var(--laranja)}
.btn.cheio{width:100%}
.btn:disabled{opacity:.5;cursor:not-allowed}
.marca{display:inline-block;padding:4px 11px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.03em}
.marca.ok{background:#e7f6ed;color:var(--verde)} .marca.espera{background:#fdf3e0;color:var(--ambar)}
.marca.nao{background:#fdecec;color:var(--vermelho)} .marca.neutra{background:#eef0f3;color:var(--grafite)}
.aviso{border-radius:10px;padding:13px 15px;margin:10px 0;font-size:.93rem}
.aviso.bloqueio{background:#fdecec;border-left:4px solid var(--vermelho)}
.aviso.alerta{background:#fdf6e7;border-left:4px solid var(--ambar)}
.aviso.dica{background:#eef4fb;border-left:4px solid #3b7dd8}
.aviso.bom{background:#e9f7ef;border-left:4px solid var(--verde)}
table{width:100%;border-collapse:collapse;font-size:.92rem}
th,td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--linha)}
th{font-size:.74rem;text-transform:uppercase;letter-spacing:.05em;color:var(--cinza)}
.abas{display:flex;gap:6px;border-bottom:1px solid var(--linha);margin-bottom:20px;flex-wrap:wrap}
.aba{padding:11px 18px;border:0;background:transparent;font:inherit;font-weight:700;color:var(--cinza);cursor:pointer;border-bottom:3px solid transparent}
.aba.viva{color:var(--laranja);border-bottom-color:var(--laranja)}
.numerao{font-size:2rem;font-weight:800;color:var(--laranja);line-height:1.1}
.cartoes{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}
.check{display:flex;gap:9px;align-items:flex-start;padding:10px;border:1px solid var(--linha);border-radius:9px;margin-bottom:8px;cursor:pointer}
.check input{width:auto;margin-top:3px}
.check b{display:block;font-size:.92rem} .check span{font-size:.8rem;color:var(--cinza)}
.erro{color:var(--vermelho);font-size:.9rem;min-height:20px;margin:8px 0}
.hero{background:linear-gradient(120deg,#fff 55%,#ffefe7);padding:52px 20px}
.hero .caixa{padding-bottom:20px}
.hero h1{font-size:2.5rem;max-width:640px;line-height:1.15}
.hero h1 em{font-style:normal;color:var(--laranja)}

/* Campo de senha com o olhinho de conferir o que foi digitado */
.com-olho{position:relative}
.com-olho input{padding-right:44px}
.olho{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:0;
  cursor:pointer;font-size:1.05rem;line-height:1;padding:8px;border-radius:8px;color:var(--cinza)}
.olho:hover{background:var(--fundo)}
