/* 1.71.0 (Philippe, 29/09/2026): gráficos do Cérebro (web/cerebro-graficos.js), o detalhe de cada recomendação
   (web/recomendacoes.js) e o portal do Cérebro (web/cerebro-portal.js). Tokens do Hub; claro e escuro; celular sem
   rolagem para o lado.
   1.72.0: o portal virou as seções "Visão geral" e "iFood x Cérebro" do Cérebro único (web/cerebro.js, .cu), na tela
   Cérebro e na folha de qualquer tela. Padrão Apple: conteúdo em material sólido (sem vidro), texto colorido pelas
   tintas --ink-* (o azul do sistema como texto dava 3,3:1; --sys-green-ink não existia), letra mínima de 11 pt pela
   escala --f-*, alvos de 44 pt, números em colunas alinhadas. */

/* ------------------------------------------------------------------ gráficos */
.gr{margin:0;padding:14px 16px 12px;border-radius:var(--r-card,16px);background:var(--cu-cartao,var(--surface,#fff));box-shadow:0 0 0 .5px var(--sep,rgba(58,42,30,.14));min-width:0;color:var(--label,#3A2A1E)}
.gr figcaption{display:flex;flex-direction:column;gap:2px;margin:0 0 8px}
.gr figcaption strong{font-size:var(--f-subhead,15px);font-weight:600;letter-spacing:-.01em;line-height:1.3}
.gr figcaption span{font-size:var(--f-caption1,max(11px, calc(12px * var(--dt,1))));color:var(--label2,#6B5A4C)}
.gr-svg{display:block;width:100%;height:190px;overflow:visible}
.gr-grade{stroke:var(--sep,rgba(58,42,30,.14));stroke-width:1}
.gr-eixo{fill:var(--label2,#6B5A4C);font-size:var(--f-caption2,max(11px, calc(11px * var(--dt,1))));font-family:inherit}
.gr-linha{fill:none;stroke-width:2.4;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}
.gr-linha.tracejada{stroke-dasharray:5 4;stroke-width:1.8}
.gr-ponto{stroke:var(--surface,#fff);stroke-width:2}
.gr-faixa-merc{fill:var(--sys-green,#34C759);opacity:.13}
.gr-meta{stroke:var(--sys-orange,#FF8D28);stroke-width:1.6;stroke-dasharray:6 4;vector-effect:non-scaling-stroke}
.gr-banda{fill:var(--sys-blue,#0088FF);opacity:.14}
.gr-barras{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.gr-barra{display:grid;grid-template-columns:minmax(90px,34%) minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0}
.gr-rot{font-size:var(--f-footnote,13px);color:var(--label2,#6B5A4C);min-width:0;overflow-wrap:anywhere;line-height:1.3}
.gr-trilho{position:relative;height:12px;border-radius:999px;background:var(--fill,rgba(90,65,45,.08));min-width:0}
.gr-cheio{position:absolute;left:0;top:0;bottom:0;border-radius:999px;background:var(--c,var(--sys-blue,#0088FF));opacity:.85;min-width:3px}
.gr-barra.destaque .gr-cheio{background:var(--sys-orange,#FF8D28);opacity:1}
.gr-barra.destaque .gr-rot{color:var(--label,#3A2A1E);font-weight:600}
.gr-ref{position:absolute;top:-3px;bottom:-3px;width:3px;margin-left:-1.5px;border-radius:2px;background:var(--sys-orange,#FF8D28);box-shadow:0 0 0 1.5px var(--surface,#fff)}
.gr-intervalo{position:absolute;top:3px;bottom:3px;border-radius:999px;background:var(--label3,#7E6A59);opacity:.22}
.gr-val{font-size:var(--f-footnote,13px);font-weight:600;white-space:nowrap;text-align:right;display:flex;flex-direction:column;align-items:flex-end;line-height:1.25;font-variant-numeric:tabular-nums}
.gr-val small{font-size:var(--f-caption2,max(11px, calc(11px * var(--dt,1))));font-weight:500;color:var(--label2,#6B5A4C)}
.gr-val small.neg{color:var(--ink-red,#B42318)}
.gr-val small.pos{color:var(--ink-green,#1B7A34)}
.gr-comp .gr-cheio{opacity:.9}
.gr-reguas{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.gr-reguas li{display:flex;flex-direction:column;gap:6px}
.gr-reg-cab{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.gr-reg-cab span{font-size:var(--f-footnote,13px);color:var(--label2,#6B5A4C);flex:1;min-width:0}
.gr-reg-cab b{font-size:var(--f-subhead,15px)}
.gr-reg-cab em{font-style:normal;font-size:var(--f-caption1,max(11px, calc(12px * var(--dt,1))));padding:2px 8px;border-radius:999px;background:var(--fill,rgba(90,65,45,.08));color:var(--ink-red,#B42318);font-weight:600}
.gr-reguas li.ok .gr-reg-cab em{color:var(--ink-green,#1B7A34)}
.gr-reguas li.ok .gr-cheio{background:var(--sys-green,#34C759)}
.gr-reguas li.fora .gr-cheio{background:var(--sys-orange,#FF8D28)}
.gr-leg{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:4px 14px}
.gr-leg li{display:flex;align-items:center;gap:6px;font-size:var(--f-caption1,max(11px, calc(12px * var(--dt,1))));color:var(--label2,#6B5A4C)}
.gr-leg i{display:inline-block;flex:none;width:14px;height:4px;border-radius:2px;background:var(--c)}
.gr-leg i.gr-leg-tracejada{height:0;border-top:2px dashed var(--c);background:none}
.gr-leg i.gr-leg-faixa{height:10px;opacity:.25;border-radius:3px}
.gr-leg i.gr-leg-ponto{width:9px;height:9px;border-radius:50%}
.gr-leg i.gr-leg-marca{width:3px;height:12px}
.gr-leg i.gr-leg-barra{height:8px;border-radius:4px}
.gr-nota{margin:6px 0 0;font-size:var(--f-caption1,max(11px, calc(12px * var(--dt,1))));color:var(--label2,#6B5A4C)}
.gr-fonte{margin:8px 0 0;font-size:var(--f-caption2,max(11px, calc(11px * var(--dt,1))));color:var(--label2,#6B5A4C);line-height:1.35;overflow-wrap:anywhere}
.gr-num{margin-top:6px}
.gr-num summary{cursor:pointer;font-size:var(--f-footnote,13px);color:var(--ink-blue,#1F5FA8);font-weight:600;list-style:none;min-height:44px;display:inline-flex;align-items:center}
.gr-num summary::-webkit-details-marker{display:none}
.gr-num summary:focus-visible{outline:var(--foco-largura,3px) solid var(--foco-cor,var(--ink-blue,#2F7CF6));outline-offset:2px;border-radius:8px}
.gr-tab-rola{max-width:100%;overflow-x:auto}
.gr-num table{border-collapse:collapse;width:100%;margin-top:4px;font-size:var(--f-caption1,max(11px, calc(12px * var(--dt,1))));font-variant-numeric:tabular-nums}
.gr-num th,.gr-num td{padding:4px 6px;border-bottom:.5px solid var(--sep,rgba(58,42,30,.14));text-align:left;white-space:nowrap}
.gr-num td{text-align:right}
/* 1.72.0: séries por unidade e a rede em destaque. As cores das unidades vêm da configuração; a da rede foi validada
   (daltonismo e contraste) contra as superfícies do Hub no claro e no escuro. Nome de cada barra ao lado dela. */
.gr,.cp,.hr-folha{--gr-rede:#8E3BA8}
body.dark :is(.gr,.cp,.hr-folha){--gr-rede:#D06BB8}
.gr-linha.rede{stroke-width:3.6}
.gr-ponto.rede{stroke-width:2.5}
.gr-banda.rede{fill:var(--gr-rede,#8E3BA8);opacity:.12}
.gr-leg i.gr-leg-linha-grossa{height:5px;border-radius:3px}
.gr-leg li.gr-leg-rede{font-weight:700;color:var(--label,#3A2A1E)}
.gr-agrupadas{gap:12px}
.gr-grupo{display:flex;flex-direction:column;gap:4px;min-width:0;padding-left:8px;box-shadow:inset 2px 0 0 transparent}
.gr-grupo.destaque{box-shadow:inset 2px 0 0 var(--sys-orange,#FF8D28)}
.gr-grupo-rot{font-size:var(--f-footnote,13px);font-weight:600;color:var(--label,#3A2A1E);overflow-wrap:anywhere;line-height:1.3}
.gr-grupo-rot small{font-weight:500;color:var(--label2,#6B5A4C);font-size:var(--f-caption2,max(11px, calc(11px * var(--dt,1))))}
.gr-gb{display:grid;grid-template-columns:minmax(72px,26%) minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0}
.gr-gb-nome{font-size:var(--f-caption1,max(11px, calc(12px * var(--dt,1))));color:var(--label2,#6B5A4C);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gr-gb.rede .gr-gb-nome{font-weight:700;color:var(--label,#3A2A1E)}
.gr-gb .gr-trilho{height:10px}
.gr-gb.rede .gr-trilho{height:14px}
.gr-gb .gr-cheio{opacity:1}
.gr-gb .gr-val{font-size:var(--f-caption1,max(11px, calc(12px * var(--dt,1))))}
.gr-gb.rede .gr-val{font-size:var(--f-footnote,13px)}

/* ------------------------------------------------------------------ detalhe da recomendação (página empilhada do Cérebro) */
.hr-det{display:flex;flex-direction:column;gap:16px}
.hr-det-topo{display:flex;flex-direction:column;gap:6px}
.hr-det-topo h2{margin:0;font-size:var(--f-title2,22px);font-weight:700;letter-spacing:-.015em;line-height:1.25}
.hr-det-topo>p{margin:0;font-size:var(--f-body,17px);line-height:1.45;color:var(--label2,#6B5A4C)}
.hr-det h3{margin:0 0 8px;font-size:var(--f-headline,17px);font-weight:600}
.hr-det section{min-width:0}
.hr-det-ctx p{margin:0 0 8px;font-size:var(--f-body,17px);line-height:1.5;color:var(--label,#3A2A1E)}
.hr-det-passos ol{margin:0;padding:0;list-style:none;counter-reset:p;display:flex;flex-direction:column;gap:10px}
.hr-det-passos li{counter-increment:p;display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;align-items:start;font-size:var(--f-body,17px);line-height:1.45}
.hr-det-passos li::before{content:counter(p);display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--fill2,rgba(90,65,45,.12));color:var(--label,#3A2A1E);font-weight:700;font-size:var(--f-footnote,13px)}
.hr-det-impacto{padding:12px 14px;border-radius:14px;background:color-mix(in srgb,var(--sys-green,#34C759) 12%,var(--cu-cartao,var(--surface,#fff)));font-size:var(--f-subhead,15px);line-height:1.45;color:var(--label,#3A2A1E)}
.hr-det-impacto b{display:block;margin-bottom:2px}
.hr-det-impacto em{font-style:normal;color:var(--label2,#6B5A4C)}
.hr-det-graf{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:12px}
.hr-det-fontes{font-size:var(--f-footnote,13px);color:var(--label2,#6B5A4C);line-height:1.45}
.hr-det-fontes ul{margin:4px 0 0;padding-left:18px}
.hr-det-acoes{display:flex;gap:8px;flex-wrap:wrap}
.hr-det .hr-tag{white-space:normal}

/* ------------------------------------------------------------------ visão geral (seção do Cérebro único) */
.cp-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.cp-card{display:flex;flex-direction:column;gap:6px;padding:16px;border-radius:var(--r-card,16px);min-width:0;border:0;text-align:left;font:inherit;color:inherit;cursor:pointer;background:var(--cu-cartao,var(--surface,#fff));box-shadow:0 0 0 .5px var(--sep,rgba(58,42,30,.14));transition:transform var(--dur-rapida,.12s) ease}
.cp-card:active{transform:scale(var(--apertado-escala,.98))}
.cp-card:focus-visible{outline:var(--foco-largura,3px) solid var(--foco-cor,var(--ink-blue,#2F7CF6));outline-offset:2px}
.cp-card small{font-size:var(--f-caption1,max(11px, calc(12px * var(--dt,1))));font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--label2,#6B5A4C)}
.cp-card b{font-size:var(--f-title1,28px);font-weight:700;letter-spacing:-.02em;line-height:1.15;display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-variant-numeric:tabular-nums}
.cp-card .cp-var{font-size:var(--f-footnote,13px);font-weight:700;padding:0;background:transparent;color:var(--ink-green,#1B7A34)} /* texto verde ou vermelho ao lado do valor, como nas Ações do iOS (a pílula cinza tirava o contraste abaixo de 4,5:1) */
.cp-card .cp-var.neg{color:var(--ink-red,#B42318)}
.cp-card p{margin:0;font-size:var(--f-footnote,13px);line-height:1.45;color:var(--label2,#6B5A4C)}
.cp-card .cp-ver{margin-top:auto;padding-top:4px;color:var(--ink-blue,#1F5FA8);font-size:var(--f-footnote,13px);font-weight:600}
.cp-visao{padding:16px;border-radius:var(--r-card,16px);background:var(--cu-cartao,var(--surface,#fff));box-shadow:0 0 0 .5px var(--sep,rgba(58,42,30,.14))}
.cp-visao h3{margin:0 0 8px;font-size:var(--f-headline,17px);font-weight:600}
.cp-visao p{margin:0 0 8px;font-size:var(--f-body,17px);line-height:1.5}
.cp-visao p:last-child{margin-bottom:0}
.cp-graf{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.cp-un{list-style:none;margin:2px 0 4px;padding:0;display:flex;flex-direction:column;gap:2px;font-size:var(--f-footnote,13px)}
.cp-un li{display:flex;justify-content:space-between;gap:8px;color:var(--label2,#6B5A4C);font-variant-numeric:tabular-nums}
.cp-un li b,.cp-card .cp-un li b{display:inline;font-size:var(--f-footnote,13px);font-weight:600;letter-spacing:0;line-height:1.35;color:var(--label,#3A2A1E);white-space:nowrap}
.cp-un li span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cp-un li.rede b,.cp-card .cp-un li.rede b{font-weight:800}
.cp-un li.rede{border-top:.5px solid var(--sep,rgba(58,42,30,.14));padding-top:2px;font-weight:700;color:var(--label,#3A2A1E)}
.cp-criticas{display:flex;flex-direction:column;gap:8px;margin-top:8px}
.cp-criticas>h3{margin:8px 0 0;font-size:var(--f-headline,17px);font-weight:600}
.cp-conc{width:100%;border-collapse:collapse;font-size:var(--f-footnote,13px);font-variant-numeric:tabular-nums}
.cp-conc th,.cp-conc td{padding:8px 10px;border-bottom:.5px solid var(--sep,rgba(58,42,30,.14));text-align:left;vertical-align:top}
.cp-conc td.n{text-align:right;white-space:nowrap}
.cp-conc th small{font-weight:400}
.cp-conc-rola{overflow-x:auto;border-radius:var(--r-card,16px);background:var(--cu-cartao,var(--surface,#fff));box-shadow:0 0 0 .5px var(--sep,rgba(58,42,30,.14));overscroll-behavior-x:contain}
.cp-ifood{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:12px}
.cp-ifood-loja{padding:14px 16px;border-radius:var(--r-card,16px);background:var(--cu-cartao,var(--surface,#fff));box-shadow:inset 3px 0 0 #EA1D2C,0 0 0 .5px var(--sep,rgba(58,42,30,.14))}
.cp-ifood-loja h3{margin:0 0 8px;font-size:var(--f-subhead,15px);font-weight:600}
.cp-ifood-loja dl{margin:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;font-size:var(--f-footnote,13px);font-variant-numeric:tabular-nums}
.cp-ifood-loja dt{color:var(--label2,#6B5A4C)}
.cp-ifood-loja dd{margin:0;font-weight:600;text-align:right}
.cp-nota{font-size:var(--f-caption1,max(11px, calc(12px * var(--dt,1))));color:var(--label2,#6B5A4C);margin:0}
@media (max-width:1099px){ .cp-cards{grid-template-columns:repeat(2,minmax(0,1fr))} .cp-graf{grid-template-columns:minmax(0,1fr)} }
@media (max-width:759px){
  .cp-cards{gap:8px}
  .cp-card{padding:12px}
  .cp-card b{font-size:var(--f-title2,22px)}
  .gr-barra{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"rot val" "tri tri";gap:4px 8px}
  .gr-barra .gr-rot{grid-area:rot}.gr-barra .gr-val{grid-area:val}.gr-barra .gr-trilho{grid-area:tri}
  .gr-svg{height:170px}
  .hr-det-graf{grid-template-columns:minmax(0,1fr)}
}
@media (prefers-reduced-motion:reduce){ .cp-card{transition:none} }
