/* Diagnóstico de riscos empresariais — complementa site.css */
.dg{max-width:820px;margin:0 auto}
.dg-prog{height:6px;background:var(--line);border-radius:99px;overflow:hidden;margin-bottom:20px}
.dg-prog span{display:block;height:100%;background:var(--brand-ink);transition:width .3s}
.dg-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:clamp(20px,4vw,36px);box-shadow:0 24px 60px rgba(14,42,53,.08);display:flex;flex-direction:column;gap:18px}
.dg-card h2{font-size:clamp(1.4rem,3vw,1.9rem)}
.dg-sub{color:var(--ink-2)}
.dg-tipos{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.dg-tipos label{display:flex;flex-direction:column;gap:4px;border:1.5px solid var(--line);border-radius:12px;padding:16px 16px 16px 44px;cursor:pointer;position:relative}
.dg-tipos input{position:absolute;left:16px;top:19px;accent-color:var(--brand-ink);margin:0}
.dg-tipos b{font-family:var(--f-display);font-weight:500;font-size:1.1rem}
.dg-tipos small{color:var(--ink-2);font-size:.95rem;line-height:1.4}
.dg-tipos label:has(input:checked),.dg-opts label:has(input:checked){border-color:var(--brand-ink);background:var(--mist)}
.dg-q{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.dg-q legend{font-family:var(--f-display);font-weight:500;font-size:1.08rem;line-height:1.35;margin-bottom:10px;padding:0}
.dg-opts{display:flex;flex-direction:column;gap:8px}
.dg-opts label{display:flex;align-items:flex-start;gap:10px;border:1.5px solid var(--line);border-radius:10px;padding:11px 14px;cursor:pointer;line-height:1.4}
.dg-opts input{accent-color:var(--brand-ink);margin:3px 0 0;flex:none}
.dg-q + .dg-q{border-top:1px solid var(--line);padding-top:18px}
.dg-nav{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.dg-ghost{background:transparent;border-color:var(--line);color:var(--ink)}
.dg-ghost:hover{border-color:var(--brand-ink)}
.dg-erro{color:#A33A2B;font-weight:600}
.dg-nota{display:flex;gap:22px;align-items:center;flex-wrap:wrap;border-radius:14px;padding:20px;background:var(--mist)}
.dg-nota > div:last-child{flex:1 1 260px;display:flex;flex-direction:column;gap:6px}
.dg-num{width:118px;height:118px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;flex:none}
.dg-num b{font-family:var(--f-display);font-size:2.6rem;line-height:1}
.dg-num span{font-size:.85rem;opacity:.9}
.dg-nota.ok .dg-num{background:#2E7D4F}.dg-nota.meio .dg-num{background:#B86E12}.dg-nota.ruim .dg-num{background:#A33A2B}
.dg-h3{font-size:1.2rem;margin:22px 0 12px}
.dg-barras{display:flex;flex-direction:column;gap:10px}
.dg-barra{display:grid;grid-template-columns:minmax(120px,210px) 1fr 36px;gap:12px;align-items:center;font-size:.98rem}
.dg-barra b{text-align:right;font-family:var(--f-display)}
.dg-trilho{height:12px;background:var(--line);border-radius:99px;overflow:hidden}
.dg-trilho i{display:block;height:100%;border-radius:99px}
i.ok{background:#2E7D4F}i.meio{background:#D08A2E}i.ruim{background:#A33A2B}
.dg-prior{margin:0;padding-left:1.3em;display:flex;flex-direction:column;gap:16px}
.dg-prior li{padding-left:4px}
.dg-prior h4{font-family:var(--f-display);font-weight:500;font-size:1.05rem;margin-bottom:6px}
.dg-prior p{margin:4px 0;font-size:.98rem}
.dg-resp{color:var(--ink-2);font-style:italic}
.dg-lead{border-top:1px solid var(--line);padding-top:20px;display:flex;flex-direction:column;gap:14px}
.dg-lead h3{font-size:1.3rem}
.dg-campos{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.dg-ok{display:flex;gap:10px;align-items:flex-start;font-size:.95rem;color:var(--ink-2)}
.dg-ok input{margin-top:4px;accent-color:var(--brand-ink);flex:none}
.dg-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.dg-aviso{border-radius:12px;padding:14px 16px;background:#FFF4E5;margin-bottom:12px}
.dg-aviso.ok{background:#E8F5EC}
@media (max-width:560px){.dg-barra{grid-template-columns:1fr 36px}.dg-barra span{grid-column:1/-1}.dg-nav .btn{flex:1 1 auto}}

/* Calculadora de proteção da família */
.cf-linha{flex-direction:row;flex-wrap:wrap}
.cf-linha label{flex:1 1 150px}
.cf-ajuda{color:var(--ink-2);font-size:.88rem}
.cf-filho{border:1.5px solid var(--line);border-radius:12px;padding:14px 16px 16px;margin:0 0 12px;display:grid;grid-template-columns:110px 1fr;gap:12px 18px;align-items:start}
.cf-filho legend{font-family:var(--f-display);font-weight:500;padding:0 6px}
.cf-filho .cf-idade{grid-row:span 3}
.cf-pergunta{display:flex;flex-direction:column;gap:6px}
.cf-pergunta > span{font-family:var(--f-display);font-size:.95rem;font-weight:500}
.cf-pergunta .dg-opts label{padding:7px 12px}
.cf-qtd{max-width:320px}
.cf-qtd select{font:inherit;padding:12px 14px;border:1.5px solid var(--line);border-radius:8px;background:#fff;color:var(--ink)}
.cf-ref summary{cursor:pointer;color:var(--brand-ink);font-family:var(--f-display);margin-bottom:12px}
.cf-rot{font-family:var(--f-display);font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-ink)}
.cf-tabela{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.cf-tabela > div{display:flex;justify-content:space-between;gap:16px;padding:12px 16px;align-items:center}
.cf-tabela > div + div{border-top:1px solid var(--line)}
.cf-tabela span{display:flex;flex-direction:column}
.cf-tabela small{color:var(--ink-2);font-size:.9rem}
.cf-tabela strong{font-family:var(--f-display);white-space:nowrap}
@media (max-width:560px){.cf-filho{grid-template-columns:1fr}.cf-filho .cf-idade{grid-row:auto;max-width:140px}.cf-tabela > div{flex-direction:column;align-items:flex-start;gap:4px}}
.cf-tabela > div.cf-total{background:var(--mist,#EEF6F8);font-weight:600}.cf-tabela > div.cf-total strong{color:var(--brand-ink)}
/* Avaliação 360 da família: cenários com barras (ja = já tem, falta = o que falta) */
.cf-cenas{display:grid;gap:16px;margin:18px 0}
.cf-cena{border:1px solid var(--line);border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:10px;background:#fff}
.cf-cena h3{font-size:1.15rem;margin:0}
.cf-cena p{margin:0}
.cf-pilha{display:flex;height:22px;border-radius:99px;overflow:hidden;background:var(--line)}
.cf-pilha i{display:block;height:100%}
.cf-pilha .ja,.cf-leg .ja::before{background:#2E7D4F}
.cf-pilha .inss,.cf-leg .inss::before{background:#0B2330}
.cf-pilha .aluguel,.cf-leg .aluguel::before{background:#00AAD4}
.cf-pilha .invest,.cf-leg .invest::before{background:#7FC8DD}
.cf-pilha .falta,.cf-leg .falta::before{background:#A33A2B}
.cf-leg{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.92rem;color:var(--ink-2)}
.cf-leg span{display:inline-flex;align-items:center;gap:6px}
.cf-leg span::before{content:"";width:12px;height:12px;border-radius:3px;display:inline-block}
.cf-leg .falta{color:#A33A2B}
.cf-itens{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:.95rem}
.cf-itens li{display:flex;justify-content:space-between;gap:12px;border-top:1px dashed var(--line);padding-top:4px}
.cf-itens b{white-space:nowrap}
