:root{
  --ink:#191414; --brown-deep:#60371f; --brown:#64473b; --gold:#96825E; --gold-mid:#ae9a6e;
  --champagne:#ecda9a; --paper:#fdfaf0; --stone:#eee8da; --white:#fff;
  --ok:#2f6b3a; --erro:#9b2c2c;
}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:var(--paper);color:var(--ink);font:16px/1.55 -apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
h1,h2{font-family:Georgia,"Times New Roman",serif;color:var(--brown-deep);margin:0 0 12px;font-weight:600}
h1{font-size:28px;margin-bottom:18px} h2{font-size:20px}
a{color:var(--brown-deep)}
.topo{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:12px 20px;background:var(--ink)}
.marca img{height:38px;display:block}
.topo nav{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.topo nav a,.topo nav .link{color:var(--stone);text-decoration:none;font-size:14px;letter-spacing:.04em}
.topo nav a:hover,.topo nav .link:hover{color:var(--champagne)}
.inline{display:inline;margin:0}
.link{background:none;border:0;padding:0;cursor:pointer;font:inherit}
main{flex:1;width:100%;max-width:860px;margin:0 auto;padding:28px 16px 60px}
body.centro main{max-width:480px;padding-top:60px}
.card{background:var(--white);border:1px solid var(--stone);border-radius:10px;padding:22px;margin-bottom:18px}
.card.destaque{border-color:var(--gold);background:#fffaf0}
.card.texto h2{margin-top:24px}.card.texto h2:first-of-type{margin-top:8px}
label{display:block;margin:0 0 14px;font-weight:500}
label small{font-weight:400;color:var(--brown)}
input[type=text],input[type=email],input[type=password],select{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid #cfc6b2;border-radius:8px;font:inherit;background:#fff}
input:focus,select:focus{outline:2px solid var(--gold);outline-offset:1px}
label.check{display:flex;gap:10px;align-items:flex-start;font-weight:400}
label.check input{margin-top:5px}
.btn{display:inline-block;background:var(--brown-deep);color:#fff;border:0;border-radius:8px;padding:12px 22px;font:inherit;font-weight:600;cursor:pointer;text-decoration:none}
.btn:hover{background:var(--ink)}
.btn.sec{background:transparent;color:var(--brown-deep);border:1px solid var(--brown-deep)}
.btn.sec:hover{background:var(--stone)}
.btn.peq{padding:7px 12px;font-size:14px}
.aviso{padding:12px 14px;border-radius:8px;margin-bottom:16px;border:1px solid}
.aviso.ok{background:#eef7ef;border-color:#b9d9bd;color:var(--ok)}
.aviso.erro{background:#fbefef;border-color:#e3b8b8;color:var(--erro)}
.nota{color:var(--brown);font-size:14px}
.grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.atalho{display:block;background:var(--white);border:1px solid var(--stone);border-radius:10px;padding:18px;text-decoration:none;color:var(--ink)}
.atalho:hover{border-color:var(--gold)}
.atalho strong{display:block;color:var(--brown-deep);font-family:Georgia,serif;font-size:18px}
.atalho span{font-size:14px;color:var(--brown)}
.linha{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid var(--stone)}
.linha:last-child{border-bottom:0}.linha.inativo{opacity:.6}
.linha small{color:var(--brown)}
.acoes{display:flex;gap:8px;flex-wrap:wrap}
.tag{display:inline-block;font-size:12px;padding:2px 8px;border-radius:99px;background:var(--stone);color:var(--brown-deep);margin-left:6px}
.tag.off{background:#eadada;color:var(--erro)}.tag.pend{background:#f5ecc8;color:#7a5d00}
.chave{display:block;margin:8px 0;padding:12px;background:var(--stone);border-radius:8px;font-size:18px;letter-spacing:.08em;word-break:break-all}
.passos li{margin-bottom:8px}
.paginas a{margin-right:16px}
.rodape{margin-top:auto;text-align:center;color:var(--brown);font-size:13px;padding:20px 16px}
.estreito h1{font-size:24px}
@media (max-width:560px){main{padding:20px 12px 50px}.card{padding:16px}}

/* Fase 2: clientes */
.cabeca{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:6px}
.cabeca h1{margin-bottom:12px}
.busca{display:flex;gap:10px;margin-bottom:12px}
.busca input{margin:0;flex:1}
.abas{margin:0 0 8px}.abas a{margin-right:16px;text-decoration:none;color:var(--brown);padding-bottom:4px}
.abas a.on{color:var(--brown-deep);font-weight:600;border-bottom:2px solid var(--gold)}
a.item{text-decoration:none;color:inherit}a.item:hover{background:#fbf7ec}
.seta{font-size:24px;color:var(--gold)}
.dados{display:grid;grid-template-columns:140px 1fr;gap:8px 12px;margin:0}
.dados dt{color:var(--brown);font-size:14px}.dados dd{margin:0}
.preserva{white-space:pre-wrap}
fieldset{border:0;padding:0;margin:0 0 8px}
legend{font-family:Georgia,serif;font-size:20px;color:var(--brown-deep);margin-bottom:12px;padding:0}
textarea{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid #cfc6b2;border-radius:8px;font:inherit;background:#fff;resize:vertical}
input[type=date]{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid #cfc6b2;border-radius:8px;font:inherit;background:#fff}
.dupla{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.progresso{margin:0 0 14px;color:var(--brown);font-size:14px;letter-spacing:.04em}
.passos-form:not(.wiz) .progresso{display:none}
.botoes-passo{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.passos-form.wiz .botoes-passo a{margin-left:auto}
[hidden]{display:none!important}
.perigo{margin:14px 0}.perigo summary{cursor:pointer;color:var(--erro)}
.perigo-btn{background:var(--erro)}.perigo-btn:hover{background:#6e1d1d}
.aniv{list-style:none;margin:0;padding:0}.aniv li{padding:10px 0;border-bottom:1px solid var(--stone);display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.aniv li:last-child{border-bottom:0}.aniv .hoje{color:var(--brown-deep);font-weight:600}
@media (max-width:560px){.dados{grid-template-columns:1fr}.dupla{grid-template-columns:1fr}}
