:root{
  --turquesa:#1BB8C1;--turquesa-dark:#149097;--marinho:#0B1838;--marinho-claro:#1E2A52;
  --cinza-bg:#F5F7F8;--cinza-linha:#E3E7EB;--texto:#1A1F2B;--texto-claro:#555E70;
  --tint:#E8F8F9;--tint-forte:#CFF0F2;--preencher:#FFFFFF;--preencher-borda:#B9C7CC;
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{overflow-x:hidden;font-family:'Segoe UI',Tahoma,Arial,sans-serif;color:var(--texto);line-height:1.5;background:var(--cinza-bg);font-size:15px}
.wrap{max-width:1180px;margin:0 auto;padding:0 16px;min-width:0}
main.wrap{width:100%}
.topo{background:var(--marinho);color:#fff;border-bottom:3px solid var(--turquesa)}
.topo .wrap{display:flex;justify-content:space-between;align-items:center;min-height:64px;gap:12px}
.logo{font-size:22px;font-weight:800;letter-spacing:-.5px;line-height:1.1}
.logo span{color:var(--turquesa)}
.logo small{display:block;font-size:9px;letter-spacing:3px;font-weight:600;color:#C8E9EC;margin-top:2px}
.topo-tag{font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:#C8E9EC;text-align:right}

main.wrap{padding-top:22px;padding-bottom:40px}
section{background:#fff;border:1px solid var(--cinza-linha);border-radius:4px;padding:20px;margin-bottom:18px}
h1{font-size:24px;color:var(--marinho);letter-spacing:-.3px;line-height:1.25}
h2{font-size:19px;color:var(--marinho);margin-bottom:4px}
.sub{color:var(--turquesa-dark);font-weight:600;margin:4px 0 14px}
.condicoes .sub{color:var(--texto-claro);font-weight:400}

.campos{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}
.campo,.linha>div,.cond>div{min-width:0}
input[type=text],input[type=date],select,textarea{min-width:0;max-width:100%}
.campo label{display:block;font-size:12px;font-weight:700;color:var(--texto-claro);text-transform:uppercase;letter-spacing:.6px;margin-bottom:4px}
.campo .valor{min-height:38px;padding:8px 10px;border-bottom:2px solid var(--marinho);font-weight:600}
input[type=text],input[type=date],select,textarea{
  width:100%;font:inherit;font-size:15px;color:var(--texto);background:var(--preencher);
  border:1px solid var(--preencher-borda);border-radius:3px;padding:8px 10px;min-height:38px
}
textarea{resize:vertical;min-height:38px}
input:focus,select:focus,textarea:focus{outline:2px solid var(--turquesa);outline-offset:0;border-color:var(--turquesa)}
.instrucao{background:var(--tint);border-left:4px solid var(--turquesa);padding:10px 14px;border-radius:0 3px 3px 0;margin-bottom:12px}
.progresso{display:flex;gap:10px;flex-wrap:wrap;font-size:13px}
.chip{background:var(--marinho);color:#fff;border-radius:20px;padding:4px 12px;font-weight:600}
.chip.ok{background:var(--turquesa-dark)}

/* tabela de itens */
.tabela{padding:0;overflow:hidden}
.linha{display:grid;grid-template-columns:2.3fr 150px 2fr 2fr;gap:0;border-bottom:1px solid var(--cinza-linha)}
.linha>div{padding:10px 12px}
.linha.cab{background:var(--marinho);color:#fff;font-weight:600;letter-spacing:.3px;font-size:14px}
.linha.cab>div{padding:11px 12px}
.linha:nth-child(even):not(.cab){background:#FAFBFC}
.linha.adefinir{background:var(--tint)}
.linha.adefinir .item::before{content:'A definir';display:inline-block;font-size:10px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:#fff;background:var(--turquesa-dark);border-radius:3px;padding:1px 6px;margin-right:8px;vertical-align:middle}
.linha .item{font-weight:600}
.linha .obs{color:var(--texto-claro);font-size:14px}
.linha .rotulo{display:none}
.linha .valor-ro{font-weight:600}
.linha .valor-ro.vazio{color:#A6AEBA;font-weight:400;font-style:italic}

/* condições */
.cond{display:grid;grid-template-columns:1fr 300px;gap:14px;padding:14px 0;border-bottom:1px solid var(--cinza-linha)}
.cond:last-child{border-bottom:none}
.cond .num{display:inline-block;width:26px;height:26px;border-radius:50%;background:var(--marinho);color:#fff;font-weight:700;font-size:13px;text-align:center;line-height:26px;margin-right:8px}
.cond .texto{font-size:14px;color:var(--texto-claro);margin-top:4px}
.cond .texto b{color:var(--texto)}
.cond.pendente{background:var(--tint);margin:0 -20px;padding:14px 20px}
.cond .opcoes{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center}
.cond .opcoes label{display:inline-flex;align-items:center;gap:5px;font-weight:600;cursor:pointer}
.cond .opcoes input[type=radio]{width:17px;height:17px;accent-color:var(--turquesa-dark)}
.cond .prazo{margin-top:8px}
.cond .prazo input{max-width:190px}
.cond textarea{margin-top:8px}

/* rodapé */
.aviso{background:var(--marinho);color:#E8ECF2;padding:14px 16px;border-radius:3px;margin-bottom:18px}
.assin{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;margin-bottom:16px}
.assin .campo .valor{border-bottom:1px solid var(--marinho);min-height:46px;display:flex;align-items:flex-end}
.aceite{display:flex;gap:10px;align-items:flex-start;background:var(--tint);padding:12px 14px;border-radius:3px;margin-bottom:16px}
.aceite input{width:20px;height:20px;margin-top:2px;accent-color:var(--turquesa-dark);flex:none}
.acoes{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.btn{font:inherit;font-weight:700;border:none;border-radius:4px;padding:12px 22px;cursor:pointer;background:var(--turquesa-dark);color:#fff;font-size:16px}
.btn:hover{background:var(--turquesa)}
.btn.sec{background:#fff;color:var(--marinho);border:2px solid var(--marinho)}
.btn:disabled{opacity:.6;cursor:wait}
.erro{color:#A4232B;font-weight:600}
.banner{background:var(--turquesa-dark);color:#fff;padding:14px 16px;border-radius:4px;margin-bottom:18px;font-weight:600}
.banner a{color:#fff}
.ro-aviso{background:var(--tint);border-left:4px solid var(--turquesa);padding:10px 14px;margin-bottom:18px;color:var(--texto-claro);font-size:14px}
.fim{text-align:center;color:var(--texto-claro);font-size:12px;letter-spacing:.5px;margin-top:10px}

@media (max-width: 860px){
  .campos{grid-template-columns:1fr 1fr}
  .linha{grid-template-columns:1fr;border-bottom:4px solid var(--cinza-linha)}
  .linha.cab{display:none}
  .linha>div{padding:6px 14px}
  .linha>div:first-child{padding-top:14px}
  .linha>div:last-child{padding-bottom:14px}
  .linha .rotulo{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--texto-claro);margin-bottom:3px}
  .cond{grid-template-columns:1fr}
  .cond.pendente{margin:0 -16px;padding:14px 16px}
  section{padding:16px}
  .assin{grid-template-columns:1fr}
}
@media (max-width: 480px){ .campos{grid-template-columns:1fr} .topo-tag{display:none} }

@media print{
  body{background:#fff;font-size:12px}
  .topo{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  section{border:none;padding:8px 0;margin-bottom:8px;break-inside:auto}
  .linha,.cond{break-inside:avoid}
  .acoes,.banner,.ro-aviso{display:none}
  .linha.cab{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .linha.adefinir,.cond.pendente,.aviso,.aceite{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  input,select,textarea{border:none;border-bottom:1px solid #999;background:#fff;padding:2px 4px;min-height:0}
  textarea{resize:none}
}
