/* valuation.css — Linde Valuation e Linde Avaliação (mesma régua do Risco). Carrega antes de linde-ui.css. */
:root{color-scheme:light;--teal:#2C9199;--teal-d:#1F6B72;--teal-x:#16494D;--bg:#F4F8F8;--panel:#FFFFFF;--line:#D5E9EB;--soft:#EAF4F5;--ink:#16494D;--ink2:#2E6167;--mut:#566E76;--green:#1E7A45;--red:#B0433A;--amber:#8A6A1F;--azul:#3A5A8C;
  --mono:ui-monospace,'SF Mono',SFMono-Regular,Menlo,Consolas,monospace;--sans:'Montserrat',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:14px}
.band{position:sticky;top:0;z-index:30;min-height:80px;display:flex;align-items:center;justify-content:center;padding:10px 96px;background:var(--teal-x);color:#fff;box-shadow:0 6px 22px rgba(0,0,0,.22)}
.band .logohome{position:absolute;left:18px;top:50%;transform:translateY(-50%);line-height:0}
.band p{font-size:13px;letter-spacing:.28em;text-transform:uppercase;color:#fff;margin:0;font-weight:400;text-indent:.28em;text-align:center}
.cr{position:absolute;right:16px;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.35);border-radius:20px;padding:6px 14px 6px 7px;display:flex;align-items:center;gap:8px;cursor:pointer;white-space:nowrap}
.cr .av{width:24px;height:24px;border-radius:50%;background:#fff;color:var(--teal-x);font:700 12px var(--sans);display:flex;align-items:center;justify-content:center}
.cr b{font-size:13px;font-weight:600}
.cr-menu{display:none;position:absolute;top:110%;right:0;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:9px;min-width:190px;box-shadow:0 12px 30px rgba(22,73,77,.22);padding:6px;z-index:40}
.cr-menu a{display:block;padding:9px 12px;border-radius:6px;color:var(--ink2);text-decoration:none;font-size:13px}.cr-menu a:hover{background:var(--soft)}
@media(max-width:640px){.band{justify-content:flex-start;padding-left:88px;min-height:64px}.band .logohome img{width:52px}}
main{max-width:1180px;margin:0 auto;padding:18px 18px 60px}
h2{font-size:16px;margin:22px 0 4px}h3{font-size:13.5px;margin:14px 0 6px;color:var(--teal-d)}
.sub{color:var(--mut);font-size:12.5px;margin:0 0 12px;line-height:1.5}
.cartao{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:16px 18px;margin-bottom:14px;box-shadow:0 8px 26px rgba(22,73,77,.07)}
.destaque{position:relative;overflow:hidden;color:#fff;border:none;background:var(--teal-d);box-shadow:0 14px 40px rgba(22,73,77,.28)}
.destaque h2{color:#fff;margin-top:0}.destaque .sub{color:rgba(255,255,255,.86)}.destaque .fld label{color:rgba(255,255,255,.7)}
.destaque input,.destaque select{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.3);color:#fff}
.destaque input::placeholder{color:rgba(255,255,255,.55)}.destaque select option{color:var(--ink)}
.destaque .btn{background:#fff;color:var(--teal-x)}.destaque .btn:hover{background:#EAF4F5}.destaque .btn.ghost{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.4)}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(172px,1fr));gap:10px;margin:8px 0}
.c{border:1px solid var(--line);border-radius:9px;padding:11px 13px;background:#fff;position:relative;box-shadow:0 3px 12px rgba(22,73,77,.05)}
.c small{display:block;font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--mut);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.c b{font-family:var(--mono);font-size:17px;font-weight:700;display:block;margin-top:2px;font-variant-numeric:tabular-nums}
.c .mini{display:block;font-family:var(--sans);font-size:9.5px;color:var(--mut);margin-top:3px;letter-spacing:.02em}
.c.forte{background:var(--teal-x);color:#fff;border-color:var(--teal-x)}.c.forte small,.c.forte .mini{color:rgba(255,255,255,.75)}
.pos{color:var(--green)}.neg{color:var(--red)}.amb{color:var(--amber)}
table{border-collapse:collapse;width:100%;font-size:12.5px}
th{font:600 10px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--mut);text-align:left;padding:7px 8px;border-bottom:2px solid var(--line);white-space:nowrap}
td{padding:6px 8px;border-bottom:1px solid var(--soft);white-space:nowrap}
td.num,th.num{text-align:right;font-family:var(--mono);font-variant-numeric:tabular-nums}
tr.tot td{font-weight:700;border-top:1px solid var(--line);background:#FAFDFD}tr.sec td{font:600 10px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--mut);padding-top:12px;border-bottom:none}
tr.chk td{font-family:var(--mono);font-size:11px;color:var(--mut)}
.rolagem{overflow-x:auto}
input,select,button,textarea{font-family:var(--sans);font-size:13.5px}
input,select,textarea{border:1px solid var(--line);border-radius:7px;padding:9px 10px;background:#fff;color:var(--ink)}
textarea{width:100%;min-height:64px;resize:vertical}
.btn{background:var(--teal);color:#fff;border:none;border-radius:7px;padding:10px 18px;font-weight:600;cursor:pointer}.btn:hover{background:var(--teal-d)}
.btn.ghost{background:#fff;color:var(--ink2);border:1px solid var(--line)}.btn.mini{padding:6px 10px;font-size:12px}
.linha{display:flex;gap:8px 12px;flex-wrap:wrap;align-items:flex-end;margin:6px 0}
.fld{display:flex;flex-direction:column;gap:4px}.fld label{font:600 9.5px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--mut);white-space:nowrap}
.fld input{width:118px}.fld input.larga{width:170px}.fld select{min-width:150px}
.grupo{border-top:1px dashed var(--line);padding:8px 0 2px;margin-top:6px}.grupo>b{display:block;font:700 10px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--mut);margin-bottom:4px}
.aviso{background:#FBF6E9;border:1px solid #E8C767;border-radius:8px;padding:10px 14px;color:#6E5514;font-size:12.5px;margin:10px 0;line-height:1.5}
.ok-box{background:#E3F3E8;border:1px solid #9CCFB0;border-radius:8px;padding:8px 12px;color:var(--green);font-size:12.5px;margin:8px 0}
.metodo{font-size:12px;color:var(--mut);line-height:1.7}
.abas{display:flex;gap:6px;flex-wrap:wrap;margin:4px 0 10px}.abas button{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.35);border-radius:20px;padding:7px 14px;cursor:pointer;font-weight:600;font-size:12.5px}
.abas button.on{background:#fff;color:var(--teal-x)}
.matriz td{font-family:var(--mono);font-size:11.5px;text-align:center;padding:5px 7px}.matriz td.eixo,.matriz th{text-align:center}.matriz td.base{background:var(--soft);font-weight:700}
.pill{display:inline-block;padding:2px 9px;border-radius:10px;font-size:11px;font-weight:700}.pill.a{background:#E3F3E8;color:#1E7A45}.pill.b{background:#EAF4F5;color:#16494D}.pill.c{background:#FBF6E9;color:#8A6A1F}.pill.d{background:#F8E9E2;color:#A0522D}.pill.e{background:#F6E1DF;color:#B0433A}
.nota-grande{font:700 44px var(--mono);line-height:1}
.rodape{font-size:10.5px;color:var(--mut);text-align:center;line-height:1.7;margin-top:22px}
.toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%);background:var(--teal-x);color:#fff;padding:10px 16px;border-radius:9px;font-size:13px;z-index:90;box-shadow:0 8px 24px rgba(0,0,0,.3);max-width:90vw}
.oculto{display:none}
@media print{.band,.btn,.abas,.no-print,.cr{display:none!important}body{background:#fff}.cartao{box-shadow:none;break-inside:avoid}main{padding:0}.destaque{color:var(--ink);background:#fff;border:1px solid var(--line)}.destaque h2,.destaque .sub{color:var(--ink)}}

/* ---------- histórico ano a ano: gráficos (paleta validada em valuation-historico.js) ---------- */
.hv-grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(430px,1fr));gap:14px;margin:10px 0}
@media(max-width:900px){.hv-grade{grid-template-columns:1fr}}
.hv-bloco{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 14px 6px}
.hv-tit{font-size:13.5px;font-weight:600;color:var(--ink);margin:0 0 2px}
.hv-tit .hv-sub{font-weight:400;font-size:11.5px;color:var(--mut)}
.hv-leg{display:flex;flex-wrap:wrap;gap:4px 14px;margin:4px 0 6px;font-size:11.5px;color:var(--mut)}
.hv-leg i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:5px;vertical-align:-1px}
.hv-cx{position:relative}
.hv-cx svg .hv-alvo{cursor:crosshair}
.hv-bal{position:absolute;top:0;background:var(--teal-x);color:#fff;border-radius:8px;padding:7px 10px;font-size:11.5px;
  line-height:1.5;pointer-events:none;box-shadow:0 8px 24px rgba(0,0,0,.25);white-space:nowrap;z-index:5}
.hv-bal .hv-ano{display:block;font-family:var(--mono);font-size:11px;opacity:.8;margin-bottom:2px}
.hv-bal i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:5px;vertical-align:0}
.hv-bal b{font-family:var(--mono);font-variant-numeric:tabular-nums}
.hv-nota{font-size:11px;color:var(--mut);line-height:1.6;margin:8px 0 0}

/* nota curta sob um campo: de onde vem o número, qual a convenção */
.fld .dica{display:block;margin-top:3px;font-size:10.5px;line-height:1.3;color:#6B7F82;max-width:200px}

/* aviso de conta barrada — texto para ler, não número para bater o olho */
.alt-aviso{background:#FDF6E6;border:1px solid #E6D2A2;border-left:4px solid #C89A2B;border-radius:10px;padding:14px 16px}
.alt-aviso .alt-tit{margin:0 0 6px;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:#8A6A1F;font-weight:700}
.alt-aviso .alt-msg{margin:0;font-size:13.5px;line-height:1.5;color:var(--ink)}
.alt-aviso .alt-msg b{font-family:var(--sans);font-weight:700}
.alt-aviso .alt-acao{margin:9px 0 0;font-size:12.5px;line-height:1.5;color:var(--ink2)}
.alt-aviso .alt-acao b{font-family:var(--sans);font-weight:700}
.alt-aviso button{margin-left:4px;border:1px solid #C89A2B;background:#fff;color:#8A6A1F;font:600 12px var(--sans);
  border-radius:7px;padding:5px 12px;cursor:pointer}
.alt-aviso button:hover{background:#F6ECD4}

/* "o que é a nota interna" — um bloco por critério, explicando antes de pontuar */
.crit-det{margin-top:14px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}
.crit-det>summary{cursor:pointer;padding:11px 14px;font-weight:600;color:var(--teal-d);font-size:13px;list-style:none}
.crit-det>summary::-webkit-details-marker{display:none}
.crit-det>summary::before{content:"▸ ";color:var(--teal)}
.crit-det[open]>summary::before{content:"▾ "}
.crit-det>.sub,.crit-det>.crit-grade{padding:0 14px}
.crit-det>.crit-grade{padding-bottom:14px}
.crit-grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:12px}
.crit-bloco{border:1px solid var(--line);border-radius:9px;padding:11px 13px;background:var(--bg)}
.crit-cab{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}
.crit-cab b{font-size:13px;color:var(--ink);line-height:1.3}
.crit-nota{flex:none;font:700 10.5px var(--mono);padding:3px 9px;border-radius:20px;background:var(--line);color:var(--ink2);white-space:nowrap}
.crit-nota.bom{background:#DCEFE2;color:#1E7A45}
.crit-nota.meio{background:#FBF0D8;color:#8A6A1F}
.crit-nota.ruim{background:#F7DEDB;color:#B0433A}
.crit-mede,.crit-porque{margin:0 0 5px;font-size:12px;line-height:1.5;color:var(--ink2)}
.crit-porque{color:var(--mut)}
.crit-res{margin:0 0 5px;font-size:11.5px;line-height:1.45;color:#8A6A1F;background:#FDF6E6;border-radius:6px;padding:6px 8px}
.crit-faixas{width:100%;border-collapse:collapse;font-size:11.5px;margin-top:4px}
.crit-faixas td{padding:3px 6px;border-top:1px solid var(--line);color:var(--mut);font-family:var(--mono)}
.crit-faixas tr.crit-aqui td{background:#EAF4F5;color:var(--ink);font-weight:700}
@media print{.crit-det{border:none}.crit-det>summary{display:none}.crit-bloco{break-inside:avoid}}

/* avaliação justa */
.j-h{font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--teal-d);margin:18px 0 8px;
  padding-bottom:5px;border-bottom:1px solid var(--line)}
.j-h:first-child{margin-top:4px}
.j-tab{width:100%;border-collapse:collapse;font-size:12.5px}
.j-tab th{text-align:left;font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--mut);
  font-weight:600;padding:6px 8px;border-bottom:1px solid var(--line);white-space:nowrap}
.j-tab th.num,.j-tab td.num{text-align:right;font-family:var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap}
.j-tab td{padding:6px 8px;border-bottom:1px solid var(--line);vertical-align:top}
.j-aviso{margin:8px 0 0;font-size:12px;line-height:1.5;color:#8A6A1F;background:#FDF6E6;
  border-left:3px solid #C89A2B;border-radius:0 6px 6px 0;padding:7px 10px}
#j-pesos .fld label{white-space:normal;max-width:130px}

/* título que muda entre a tela e o documento: na tela é pergunta, no PDF é rótulo de relatório */
.so-doc{display:none}
