@import url("/paleta.css");
/* 1.72.0 (Philippe, 29/09/2026): A INTERFACE ÚNICA DO CÉREBRO (web/cerebro.js, section.cu).

   O MESMO componente na tela "Cérebro" do menu (página cheia) e em qualquer outra tela (a folha que sobe a 95%, como a
   ficha do pedido, e no computador um painel centralizado de até 1000 px e 90% da altura).
   Padrão Apple (iOS 26 e macOS, Liquid Glass):
   - camadas: o conteúdo em material sólido (a folha em --vidro-solido, os cartões em superfície); o vidro só no que
     flutua (o campo "Pergunte ao Cérebro");
   - tipografia só pelos tokens --f-* (nada abaixo de 11 pt), texto colorido pelas tintas --ink-* e --on-* (contraste
     AA no claro e no escuro);
   - alvos de 44 pt, margens de 16 pt (20 pt a partir de 768 px), grade de 8, cantos concêntricos;
   - folha: sobe com a mola das folhas do iOS (--curva-folha, --dur-folha), fecha puxando (web/folha.js), alça, véu,
     respeita env(safe-area-inset-*) e a Dynamic Island; no app as peças nativas somem enquanto ela está aberta;
   - "reduzir movimento", "reduzir transparência" e "aumentar contraste"; sem rolagem para o lado. */

/* .sr-only (rótulo só para o leitor de tela) é o global do Hub (index.html, 10.2); aqui não se repete */

/* ------------------------------------------------------------------ tokens */
.cu,.cu-folha{--cu-margem:16px;--cu-fundo:var(--surface);--cu-cartao:var(--surface);--cu-raio:22px;--cu-sep:var(--sep);--gr-rede:var(--d-magenta)}
body.dark :is(.cu,.cu-folha){--cu-fundo:var(--surface);--cu-cartao:var(--surface2);--gr-rede:var(--d-magenta)}
@media (min-width:768px){.cu,.cu-folha{--cu-margem:20px}}
:root{--cu-topo:max(calc(env(safe-area-inset-top,0px) + 10px), 5dvh)}
html.app-nativo{--cu-topo:calc(var(--app-status,env(safe-area-inset-top,0px)) + 10px)}
/* 1.74.0 (Philippe, 06/10/2026, conferência das barras do aplicativo): a barra de dentro da folha (o campo de perguntar)
   guardava embaixo o lugar da barra de abas nativa, que a folha esconde ao abrir: sobravam de 53 a 84 px vazios no pé.
   Na folha o pé é só a área segura (na tela Cérebro, com a barra de abas à vista, continua valendo o rodapé do aplicativo) */
html.app-nativo .cu-fundo{--bf-rodape:env(safe-area-inset-bottom,0px)}

/* ------------------------------------------------------------------ a folha */
.cu-fundo{position:fixed;inset:0;z-index:1290;display:none}
.cu-fundo.montada{display:block}
/* 1.74.0 (Philippe, 06/10/2026, quinta rodada, segunda fase, C2): a folha fechada solta o toque na hora. A moldura fica na
   tela os 0,4 s da saída (a folha descendo, o véu clareando) e segurava o toque: quem tocava logo depois de fechar o
   Cérebro não era atendido. Vale também para as peças de dentro que pedem o toque para si (a conversa, o campo). */
.cu-fundo:not(.aberta),.cu-fundo:not(.aberta) *{pointer-events:none!important}
.cu-veu{position:absolute;inset:0;background:var(--vidro-veu,rgba(58,42,30,.22));opacity:0;transition:opacity var(--dur-folha,.38s) var(--curva-folha,cubic-bezier(.32,.72,0,1))}
.cu-fundo.aberta .cu-veu{opacity:var(--veu,1)}
.cu-fundo.arrastando .cu-veu,.cu-fundo.hub-folha-arrastando .cu-veu{transition:none}
.cu-folha{position:absolute;left:0;right:0;top:var(--cu-topo);bottom:var(--ws-viewport-inset,0px);display:flex;flex-direction:column;overflow:hidden;background:var(--cu-fundo);color:var(--label,#3A2A1E);border-radius:var(--cu-raio) var(--cu-raio) 0 0;box-shadow:0 -8px 40px rgba(0,0,0,.18),var(--vidro-brilho,none);transform:translate3d(0,100%,0);transition:transform var(--dur-folha,.38s) var(--curva-folha,cubic-bezier(.32,.72,0,1));overscroll-behavior:contain;touch-action:pan-y}
.cu-fundo.aberta .cu-folha{transform:none}
.cu-folha>.cu{flex:1 1 auto;min-height:0}
/* computador e tablet: painel grande centralizado, com a mesma entrada curta das folhas (web/folha.js) */
@media (min-width:761px){
  .cu-folha{top:max(5dvh, calc(env(safe-area-inset-top,0px) + 16px));bottom:auto;left:0;right:0;margin:0 auto;width:min(1000px,calc(100vw - 48px));height:min(90dvh, calc(100dvh - 2 * max(5dvh, calc(env(safe-area-inset-top,0px) + 16px))));border-radius:26px;box-shadow:var(--vidro-sombra-alta,0 18px 46px rgba(40,25,12,.2)),0 0 0 .5px var(--cu-sep);opacity:0;transform:translate3d(0,14px,0) scale(.985);transition:transform var(--dur-folha,.38s) var(--curva-folha,cubic-bezier(.32,.72,0,1)),opacity .22s ease}
  .cu-fundo.aberta .cu-folha{opacity:1;transform:none}
  html.app-nativo .cu-folha{top:max(5dvh, var(--cu-topo))}
}
html.cu-folha-aberta body{overflow:hidden}
/* com a folha aberta, o que ficou atrás não pulsa nem desfoca (a folha é o foco) */
html.cu-folha-aberta body.ai-on main,html.cu-folha-aberta body.ai-on .top{transform:none!important;filter:none!important}
html.cu-folha-aberta body.ai-on::after,html.cu-folha-aberta body.ai-on::before{display:none!important}
html.cu-folha-aberta body.ai-on .aiframe{display:none!important}
html.cu-folha-aberta #app-lojas-web,html.cu-folha-aberta #acao-faixa{visibility:hidden}

/* ------------------------------------------------------------------ o componente */
.cu{position:relative;min-width:0;color:var(--label,#3A2A1E);font-size:var(--f-body,1.0625rem)}
.cu.cu-folha-modo{display:grid;grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);height:100%}
.cu :is(button,select){font-family:inherit}
.cu-ico{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;flex:none}

/* cabeçalho */
.cu-cab{grid-row:1;grid-column:1;position:relative;z-index:2;display:flex;flex-direction:column;gap:8px;min-width:0;padding:0 var(--cu-margem) 12px;background:var(--cu-fundo);transition:box-shadow .2s ease}
.cu.cu-rolado .cu-cab{box-shadow:0 .5px 0 var(--cu-sep)}
.cu-alca{display:none;flex:none;width:36px;height:5px;border-radius:3px;background:var(--folha-alca,rgba(60,60,67,.3));margin:6px auto 0}
@media (max-width:760px){.cu-folha-modo .cu-alca{display:block}}
.cu-titulo-linha{display:flex;align-items:center;gap:12px;min-width:0;min-height:52px;padding-top:8px}
.cu-marca{flex:none;width:32px;height:35px}
.cu-titulos{flex:1;min-width:0}
/* título da folha = Headline, como o título de toda folha do Hub (index.html, 10.3); na página do menu, Large Title */
.cu-titulo{margin:0;font-size:var(--f-headline,1.0625rem);line-height:var(--lh-headline,1.375rem);font-weight:700;letter-spacing:-.01em}
.cu-contexto{margin:2px 0 0;font-size:var(--f-footnote,0.8125rem);line-height:1.35;color:var(--label2,#6B5A4C);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* o X é o botão de fechar do sistema (.hub-x, index.html 10.4): 44 pt no toque, 32 pt com mouse, xmark em traço, --fill */
.cu-x{flex:none;transition:transform var(--dur-rapida,.12s) ease,background-color var(--dur-rapida,.12s) ease}
.cu-x:active{transform:scale(var(--apertado-escala,.94))}
.cu-titulo-linha .cu-marca.ativo{animation:philippe-brain-breathe 3.6s ease-in-out infinite}
.cu.cu-ouvindo .cu-titulo-linha .cu-marca{transform:scale(calc(1 + var(--voice-level,0) * .18));filter:drop-shadow(0 0 4px rgba(255,207,83,.9)) drop-shadow(0 0 9px rgba(224,52,46,.35))}
.cu-msg .philippe-brain,.cu-vazio .philippe-brain,.cu-vazio-linha .philippe-brain{animation:none!important}

/* unidade (controle segmentado) e período (menu) */
.cu-filtros{display:flex;align-items:center;gap:8px;min-width:0}
.cu-filtros:empty{display:none}
.cu-seg{display:flex;min-width:0;border-radius:999px;background:var(--fill2,rgba(90,65,45,.12))}
.cu-seg button{flex:1 1 0;min-width:0;min-height:44px;margin:0;padding:3px;border:0;background:transparent;color:var(--label,#3A2A1E);font-size:var(--f-footnote,0.8125rem);font-weight:500;line-height:1.2;cursor:pointer;border-radius:999px;-webkit-tap-highlight-color:transparent}
.cu-seg button>span{display:flex;align-items:center;justify-content:center;min-height:38px;padding:0 12px;border-radius:999px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background-color var(--dur-media,.2s) ease,box-shadow var(--dur-media,.2s) ease}
.cu-seg button:is([aria-checked="true"],[aria-selected="true"])>span{background:var(--cu-cartao);box-shadow:0 1px 3px rgba(0,0,0,.12),0 0 0 .5px rgba(0,0,0,.05);font-weight:600}
body.dark .cu-seg button:is([aria-checked="true"],[aria-selected="true"])>span{background:rgba(255,255,255,.2);box-shadow:none}
.cu-seg button:focus-visible{outline:none}
.cu-seg button:focus-visible>span{outline:var(--foco-largura,3px) solid var(--foco-cor,var(--ink-blue,#2F7CF6));outline-offset:-3px}
.cu-seg-unidade{flex:1 1 auto}
/* celular: cada unidade do tamanho do nome (Rede é curta, Cidade Nova é longa), para caber sem reticências ao lado do período */
@media (max-width:520px){.cu-filtros{flex-wrap:wrap}.cu-seg-unidade button{flex:1 1 auto}.cu-seg-unidade button>span{padding:0 8px}.cu-periodo{margin-left:auto}} /* se ainda não couber (letra maior, mais unidades), o período desce para a linha de baixo em vez de cortar o nome */
/* o período: botão de menu (pop-up) com a mesma altura, cápsula, letra e peso do controle segmentado ao lado (antes o select
   tinha 16 px em negrito ao lado de um controle de 13 pt); o select nativo fica por cima, transparente, com 16 px para o iOS
   não aproximar a tela ao tocar, e abre o seletor do sistema */
.cu-periodo{position:relative;flex:none;display:flex;align-items:center;min-height:44px;padding:0 32px 0 14px;border-radius:999px;background:var(--fill2,rgba(90,65,45,.12));color:var(--label,#3A2A1E);font-size:var(--f-footnote,0.8125rem);font-weight:600;line-height:1.2;cursor:pointer;box-sizing:border-box}
.cu-periodo-rot{white-space:nowrap;pointer-events:none}
.cu-periodo select{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;border:0;border-radius:inherit;opacity:0;-webkit-appearance:none;appearance:none;font-size:max(1rem, var(--f-footnote,0.8125rem));color:var(--label,#3A2A1E);background:transparent;cursor:pointer}
.cu-periodo:focus-within:has(select:focus-visible){outline:var(--foco-largura,3px) solid var(--foco-cor,var(--ink-blue,#2F7CF6));outline-offset:2px}
.cu-periodo .cu-chev{position:absolute;right:10px;top:50%;width:16px;height:16px;margin-top:-8px;pointer-events:none;color:var(--label2,#6B5A4C);stroke-width:2.4}
.cu-unidade-fixa{margin:0;min-height:32px;display:flex;align-items:center;font-size:var(--f-subhead,0.9375rem);font-weight:600;color:var(--label2,#6B5A4C)}
/* seções: controle segmentado; rola para o lado dentro dele quando não cabe (a página nunca rola) */
.cu-secoes{min-width:0;margin:0 calc(-1 * var(--cu-margem));padding:0 var(--cu-margem);overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior-x:contain;scroll-padding:0 var(--cu-margem)}
.cu-secoes::-webkit-scrollbar{display:none}
/* o que passa para a margem ao rolar some aos poucos (como as fileiras que rolam de lado no iOS), em vez de ser cortado seco
   na borda da tela ("Sala dos a"); a fileira que cabe inteira não é tocada (o esmaecido fica só na margem) */
.cu-secoes,.cu-sug{-webkit-mask-image:linear-gradient(to right,transparent 0,#000 var(--cu-margem),#000 calc(100% - var(--cu-margem)),transparent 100%);mask-image:linear-gradient(to right,transparent 0,#000 var(--cu-margem),#000 calc(100% - var(--cu-margem)),transparent 100%)}
.cu-seg-secoes{width:max-content;min-width:100%}
.cu-seg-secoes button{flex:1 0 auto}
.cu-seg-secoes button>span{padding:0 14px}

/* corpo */
.cu-corpo{grid-row:2;grid-column:1;min-height:0;min-width:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:4px var(--cu-margem) 24px}
.cu-sec{display:flex;flex-direction:column;gap:16px;min-width:0;outline:none}
.cu-sec[hidden]{display:none}
.cu-sec-conteudo{display:flex;flex-direction:column;gap:16px;min-width:0;container-type:inline-size;container-name:cu}
/* os cartões e gráficos do portal medem o espaço do Cérebro (folha, painel ou página), não a janela */
.cu .cp-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.cu .cp-graf{grid-template-columns:repeat(2,minmax(0,1fr))}
@container cu (max-width:760px){.cu .cp-graf{grid-template-columns:minmax(0,1fr)}}
@container cu (max-width:520px){.cu .cp-cards{grid-template-columns:minmax(0,1fr)}}
.cu .cp-un li{flex-wrap:wrap}
.cu .cp-un li b{white-space:normal;text-align:right}
.cu-grupo{display:flex;align-items:baseline;justify-content:space-between;gap:4px 12px;flex-wrap:wrap;margin:8px 0 0;font-size:var(--f-title3,1.25rem);font-weight:700;letter-spacing:-.015em;line-height:1.25}
.cu-grupo span{font-size:var(--f-footnote,0.8125rem);font-weight:500;letter-spacing:0;color:var(--label2,#6B5A4C)}
.cu-bloco{display:flex;flex-direction:column;gap:12px;min-width:0;scroll-margin-top:12px}
.cu-intro{margin:0;font-size:var(--f-subhead,0.9375rem);line-height:1.45;color:var(--label2,#6B5A4C)}
.cu-nota{margin:0;font-size:var(--f-caption1,max(0.6875rem, calc(0.75rem * var(--dt,1))));color:var(--label2,#6B5A4C);line-height:1.4}
.cu-erro{margin:0;padding:12px 16px;border-radius:var(--r-card,16px);background:var(--cu-cartao);box-shadow:0 0 0 .5px var(--cu-sep);font-size:var(--f-subhead,0.9375rem);color:var(--label2,#6B5A4C);display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.cu-link{border:0;background:transparent;color:var(--ink-blue,#1F5FA8);font-size:var(--f-subhead,0.9375rem);font-weight:600;min-height:44px;padding:0 10px;border-radius:12px;cursor:pointer}
@media (hover:hover){.cu-link:hover{background:var(--fill,rgba(90,65,45,.08))}}
.cu-link:focus-visible,.cu-bt:focus-visible,.cu-chip:focus-visible,.cu-mic:focus-visible,.cu-enviar:focus-visible,.cu-x:focus-visible,.cu-voltar:focus-visible,.cu-atalho:focus-visible{outline:var(--foco-largura,3px) solid var(--foco-cor,var(--ink-blue,#2F7CF6));outline-offset:2px}
.cu-rodape-sec{margin:0;display:flex;justify-content:center}
.cu-recs{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,400px),1fr));gap:12px;min-width:0}
.cu-vazio-linha{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:var(--r-card,16px);background:var(--cu-cartao);box-shadow:0 0 0 .5px var(--cu-sep)}
.cu-vazio-linha .cu-marca{width:28px;height:31px}
.cu-vazio-linha p{margin:0;font-size:var(--f-subhead,0.9375rem);color:var(--label2,#6B5A4C);line-height:1.4}
.cu-bt{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border:0;border-radius:999px;background:var(--fill2,rgba(90,65,45,.12));color:var(--label,#3A2A1E);font-size:var(--f-subhead,0.9375rem);font-weight:600;cursor:pointer}
.cu-bt.pri{background:var(--on-blue,#0062BD);color:#fff}
.cu-bt:active,.cu-chip:active,.cu-mic:active,.cu-enviar:active{transform:scale(var(--apertado-escala,.96))}
/* carregando */
.cu-carregando{display:flex;flex-direction:column;gap:12px}
.cu-esqueleto{height:132px;border-radius:var(--r-card,16px);background:linear-gradient(100deg,var(--fill,rgba(90,65,45,.06)) 30%,var(--fill2,rgba(90,65,45,.12)) 50%,var(--fill,rgba(90,65,45,.06)) 70%) 0 0/300% 100%;animation:hr-brilho 1.4s ease-in-out infinite}

/* ------------------------------------------------------------------ a conversa (o motor de sempre: web/philippe.js e os
   cartões do web/ai-workspace.js, dentro dela, em coluna) */
.cu-conversa-host{min-width:0;display:flex;flex-direction:column;gap:12px}
.cu-vazio{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:24px 8px 8px}
.cu-vazio .cu-marca{width:56px;height:61px}
.cu-vazio h3{margin:4px 0 0;font-size:var(--f-title2,1.375rem);font-weight:700;letter-spacing:-.015em}
.cu-vazio p{margin:0;max-width:460px;font-size:var(--f-subhead,0.9375rem);line-height:1.45;color:var(--label2,#6B5A4C)}
.cu-atalho{display:flex;align-items:center;gap:12px;margin-top:12px;width:min(100%,460px);min-height:56px;padding:8px 16px;border:0;border-radius:var(--r-card,16px);background:var(--cu-cartao);box-shadow:0 0 0 .5px var(--cu-sep);color:var(--label,#3A2A1E);font-size:var(--f-subhead,0.9375rem);text-align:left;cursor:pointer}
.cu-atalho>span{flex:1;display:flex;flex-direction:column;gap:2px}
.cu-atalho b{font-weight:600}
.cu-atalho>span{color:var(--label2,#6B5A4C)}
.cu-atalho b{color:var(--label,#3A2A1E)}
.cu-atalho .cu-ico{color:var(--label3,#7E6A59)}
.cu-log{display:flex;flex-direction:column;gap:12px;min-width:0}
.cu-log:empty{display:none}
.cu-msg{display:flex;align-items:flex-end;gap:8px;min-width:0;scroll-margin-top:12px}
.cu-msg p{margin:0}
.cu-msg.eu{align-self:flex-end;max-width:min(82%,560px);padding:10px 14px;border-radius:20px 20px 6px 20px;background:var(--on-blue,#0062BD);color:#fff;font-size:var(--f-body,1.0625rem);line-height:1.4;overflow-wrap:anywhere}
.cu-msg.cerebro{align-self:flex-start;max-width:min(92%,720px)}
.cu-msg.cerebro .cu-marca{width:26px;height:28px;margin-bottom:4px}
.cu-balao{min-width:0;padding:10px 14px;border-radius:20px 20px 20px 6px;background:var(--cu-cartao);box-shadow:0 0 0 .5px var(--cu-sep);font-size:var(--f-body,1.0625rem);line-height:1.45;overflow-wrap:anywhere;white-space:pre-line}
.cu-msg-acoes{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;white-space:normal}
.cu-pontos{display:inline-flex;gap:5px;padding:6px 2px}
.cu-pontos i{width:7px;height:7px;border-radius:50%;background:var(--label2,#6B5A4C);opacity:.35;animation:cu-ponto 1.2s ease-in-out infinite}
.cu-pontos i:nth-child(2){animation-delay:.15s}.cu-pontos i:nth-child(3){animation-delay:.3s}
@keyframes cu-ponto{0%,80%,100%{opacity:.25;transform:none}40%{opacity:.9;transform:translateY(-3px)}}
/* o #aiz do ai-workspace embutido: sem posição própria, sem modo herói, cartões em coluna (o app e o KDS têm regras
   fortes para o #aiz solto; aqui ganham pelo peso do seletor) */
html body .cu #aiz.ws-root.ws-root{position:static;inset:auto;top:auto;right:auto;bottom:auto;left:auto;width:auto;max-width:none;height:auto;max-height:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px;transform:none;pointer-events:auto;z-index:auto;background:transparent;border:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;overflow:visible;animation:none;color:var(--label,#3A2A1E);align-content:normal;justify-items:stretch;grid-template-rows:none}
html body .cu #aiz.ws-root.ws-root.hidden,html body .cu #aiz.ws-root.ws-root.cu-oculto{display:none}
html body .cu #aiz.ws-root.ws-root :is(.ws-hero,.ws-controls,#ws-reply,.aisug){display:none!important}
html body .cu #aiz.ws-root.ws-root .ws-board{display:flex;flex-direction:column;gap:12px;order:0;grid-row:auto;width:100%;height:auto;max-height:none;margin:0;align-self:stretch;justify-self:stretch;pointer-events:auto}
html body .cu #aiz.ws-root.ws-root.ws-empty .ws-board{display:none}
html body .cu #aiz.ws-root.ws-root .ws-toolbar{min-height:44px;pointer-events:auto}
html body .cu #aiz.ws-root.ws-root .ws-topic{box-shadow:none;background:var(--fill,rgba(90,65,45,.08));-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--label,#3A2A1E)}
html body .cu #aiz.ws-root.ws-root .ws-topic i{background:var(--sys-green,#34C759)}
html body .cu #aiz.ws-root.ws-root .ws-grid{display:flex;flex-direction:column;gap:12px;width:100%;max-width:none;height:auto;max-height:none;pointer-events:auto;justify-self:stretch}
html body .cu #aiz.ws-root.ws-root .ws-grid>*{grid-column:auto!important;grid-row:auto!important}
html body .cu #aiz.ws-root.ws-root .ws-widget{height:auto!important;max-height:none!important;padding:16px;border-radius:var(--r-card,16px);background:var(--cu-cartao);box-shadow:0 0 0 .5px var(--cu-sep)!important;color:var(--label,#3A2A1E);-webkit-backdrop-filter:none;backdrop-filter:none}
html body .cu #aiz.ws-root.ws-root .ws-widget-body{max-height:none!important;overflow:visible}
html body .cu #aiz.ws-root.ws-root .ws-widget-title{font-size:var(--f-title3,1.25rem)}
html body .cu #aiz.ws-root.ws-root .ws-eyebrow{font-size:var(--f-caption1,max(0.6875rem, calc(0.75rem * var(--dt,1))));color:var(--label2,#6B5A4C)}
html body .cu #aiz.ws-root.ws-root .ws-btn{min-height:44px;padding:8px 16px;box-shadow:none;background:var(--fill2,rgba(90,65,45,.12));color:var(--label,#3A2A1E)}
html body .cu #aiz.ws-root.ws-root .ws-btn.ws-icon{padding:0}
html body .cu #aiz.ws-root.ws-root .ws-btn.ws-icon{min-width:44px;width:44px;height:44px}
html body .cu #aiz.ws-root.ws-root .ws-btn.ws-primary{background:var(--on-green,#1E7F3A);color:#fff}
html body .cu #aiz.ws-root.ws-root .ws-filters button{min-height:44px;font-size:var(--f-footnote,0.8125rem)}
html body .cu #aiz.ws-root.ws-root .ws-chart-legend button{min-height:44px;padding:4px 12px;font-size:var(--f-footnote,0.8125rem)}
/* "Mais indicadores" e os itens do relatório abrem com o dedo: 44 pt, como todo alvo do Cérebro (tinham 36) */
html body .cu #aiz.ws-root.ws-root :is(.ws-secondary-metrics,.ws-report-items details)>summary{display:flex;align-items:center;min-height:44px}
/* o número grande do cartão na escala da Apple (Title 1; era 23 a 34 px pela largura da janela) e o título com o peso do sistema */
html body .cu #aiz.ws-root.ws-root .ws-metric{container-type:inline-size}
html body .cu #aiz.ws-root.ws-root .ws-metric strong{font-size:min(var(--f-title1,1.75rem), calc(100cqi / 7));letter-spacing:-.02em} /* em coluna estreita encolhe até caber (não passa da coluna) */
html body .cu #aiz.ws-root.ws-root .ws-comparison-card .ws-metric strong{font-size:min(var(--f-title2,1.375rem), calc(100cqi / 7))}
html body .cu #aiz.ws-root.ws-root .ws-widget-title{font-weight:700}
html body .cu #aiz.ws-root.ws-root :is(.ws-comparison-context small,.ws-metric small,.ws-notice,.ws-source,.ws-chart-readout,.ws-table){font-size:var(--f-caption1,max(0.6875rem, calc(0.75rem * var(--dt,1))))}
html body .cu #aiz.ws-root.ws-root :is(.ws-metric span,.ws-eyebrow,.ws-notice,.ws-source,.ws-chart-readout){color:var(--label2,#6B5A4C)}
html body .cu #aiz.ws-root.ws-root .ws-see-all{display:none}
@media (min-width:601px){html body .cu #aiz.ws-root.ws-root :is(.ws-filters-more,.ws-toolbar-more){display:none}}
/* o campo: o #ws-composer do ai-workspace, sem o vidro dele (o vidro é o da cápsula) */
html body .cu .ws-composer{width:100%;display:block;pointer-events:auto}
html body .cu .ws-composer .ws-input{min-height:44px!important;padding:0 6px 0 12px!important;border-radius:22px!important;background:transparent!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
html body .cu .ws-composer .ws-brain{display:none!important}
html body .cu .ws-composer #aiinput{width:100%;min-height:44px!important;font-size:max(1rem, var(--f-body,1.0625rem))!important;color:var(--label,#3A2A1E)!important;background:transparent!important}
html body .cu .ws-composer #aiinput::placeholder{color:var(--label2,#6B5A4C)!important;opacity:1}

/* ------------------------------------------------------------------ Visão da operação */
.cu-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.cu-kpi{display:flex;flex-direction:column;gap:2px;min-width:0;padding:12px;border-radius:14px;background:var(--cu-cartao);box-shadow:0 0 0 .5px var(--cu-sep)}
.cu-kpi small{font-size:var(--f-caption1,max(0.6875rem, calc(0.75rem * var(--dt,1))));font-weight:600;color:var(--label2,#6B5A4C)}
.cu-kpi b{font-size:var(--f-title2,1.375rem);font-weight:700;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.cu-cartao{padding:4px 12px 8px;border-radius:var(--r-card,16px);background:var(--cu-cartao);box-shadow:0 0 0 .5px var(--cu-sep);min-width:0}
@media (max-width:480px){.cu-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ------------------------------------------------------------------ o pé: sugestões e o campo com o microfone */
.cu-pe{grid-row:3;grid-column:1;position:relative;z-index:3;display:flex;flex-direction:column;gap:8px;min-width:0;padding:8px var(--cu-margem) calc(12px + env(safe-area-inset-bottom,0px));background:linear-gradient(to top,var(--cu-fundo) 72%,transparent)}
.cu-folha-modo .cu-pe{padding-bottom:calc(12px + max(env(safe-area-inset-bottom,0px), 0px))}
.cu-sug{display:flex;gap:8px;min-width:0;margin:0 calc(-1 * var(--cu-margem));padding:2px var(--cu-margem);overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain}
.cu-sug::-webkit-scrollbar{display:none}
.cu-sug:empty{display:none}
.cu-chip{flex:none;min-height:44px;padding:0 16px;border:0;border-radius:999px;background:var(--cu-cartao);box-shadow:0 0 0 .5px var(--cu-sep);color:var(--label,#3A2A1E);font-size:var(--f-subhead,0.9375rem);font-weight:500;white-space:nowrap;cursor:pointer}
@media (hover:hover){.cu-chip:hover{background:color-mix(in srgb,var(--cu-cartao) 92%,var(--label,#3A2A1E))}}
.cu-compor{display:flex;align-items:center;gap:4px;min-width:0;padding:4px;border-radius:26px;background:var(--vidro-grosso,rgba(252,250,247,.86));-webkit-backdrop-filter:blur(var(--vidro-desfoque,24px)) saturate(var(--vidro-saturacao,180%));backdrop-filter:blur(var(--vidro-desfoque,24px)) saturate(var(--vidro-saturacao,180%));box-shadow:var(--vidro-brilho,none),var(--vidro-sombra,0 8px 28px rgba(40,25,12,.14)),0 0 0 .5px var(--cu-sep)}
.cu-compor:focus-within{box-shadow:var(--vidro-brilho,none),var(--vidro-sombra,0 8px 28px rgba(40,25,12,.14)),0 0 0 2px color-mix(in srgb,var(--sys-blue,#0088FF) 45%,transparent)}
.cu-campo{flex:1 1 auto;min-width:0}
.cu-mic,.cu-enviar{flex:none;width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:50%;cursor:pointer;transition:transform var(--dur-rapida,.12s) ease,background-color var(--dur-media,.2s) ease,box-shadow .12s linear}
.cu-mic{background:var(--fill2,rgba(90,65,45,.12));color:var(--label,#3A2A1E)}
.cu-mic.ligado{background:color-mix(in srgb,var(--sys-red,#FF3B30) 16%,var(--cu-cartao));color:var(--ink-red,#B42318)}
.cu-mic.ouvindo{box-shadow:0 0 0 calc(2px + var(--voice-level,0) * 8px) color-mix(in srgb,var(--sys-red,#FF3B30) 30%,transparent)}
.cu-enviar{background:var(--on-blue,#0062BD);color:#fff}
.cu-enviar .cu-ico{stroke-width:2.6}
@media (max-width:760px){.cu-pe:focus-within .cu-sug{display:none}}

/* ------------------------------------------------------------------ páginas empilhadas (detalhe, Sala, dispensadas) */
.cu-pilha{grid-row:1 / 3;grid-column:1;z-index:4;min-height:0;min-width:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:var(--cu-fundo);display:flex;flex-direction:column}
.cu-pilha[hidden]{display:none}
.cu-folha-modo.cu-empilhado>:is(.cu-cab,.cu-corpo){visibility:hidden}
.cu-pilha.entra{animation:cu-empurra .34s var(--curva-folha,cubic-bezier(.32,.72,0,1))}
@keyframes cu-empurra{from{transform:translate3d(28%,0,0);opacity:.35}to{transform:none;opacity:1}}
.cu-nav{position:sticky;top:0;z-index:2;flex:none;display:flex;flex-direction:column;padding:0 var(--cu-margem) 8px;background:var(--cu-fundo);box-shadow:0 .5px 0 var(--cu-sep)}
.cu-nav-linha{display:flex;align-items:center;gap:8px;min-height:52px;padding-top:8px}
.cu-voltar{flex:none;display:inline-flex;align-items:center;gap:0;min-height:44px;max-width:40%;padding:0 10px 0 0;border:0;border-radius:12px;background:transparent;color:var(--ink-blue,#1F5FA8);font-size:var(--f-body,1.0625rem);font-weight:500;cursor:pointer}
.cu-voltar span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cu-voltar .cu-ico{width:24px;height:24px;stroke-width:2.6}
.cu-nav-tit{flex:1;min-width:0;margin:0;text-align:center;font-size:var(--f-headline,1.0625rem);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cu-pilha-corpo{flex:1 0 auto;padding:16px var(--cu-margem) 32px;outline:none;min-width:0}
.cu-pilha-corpo .hr-folha-lista{margin-top:12px}
.cu-sala{min-width:0}

/* ------------------------------------------------------------------ a tela Cérebro do menu (página cheia) */
#view-cer{padding:0}
.cu.cu-pagina{display:block;max-width:1180px;margin:0 auto;padding:4px 0 0}
.cu-pagina .cu-cab{padding-top:4px;background:transparent}
/* na página não há o que fechar: o X é o .hub-x do sistema, cuja regra tem peso de id (index.html 10.4), então o id aqui */
#cerebro-unico.cu-pagina .cu-x.hub-x{display:none}
.cu-pagina .cu-titulo{font-size:var(--f-largetitle,2.125rem);font-weight:700;letter-spacing:-.02em;line-height:1.15}
.cu-pagina .cu-marca{width:40px;height:44px}
.cu-pagina .cu-titulo-linha{min-height:56px}
.cu-pagina .cu-contexto{white-space:normal}
.cu-pagina .cu-corpo{overflow:visible;padding-bottom:16px}
.cu-pagina .cu-pe{position:sticky;bottom:calc(12px + env(safe-area-inset-bottom,0px));max-width:760px;margin:8px auto 0;padding:8px;border-radius:30px;background:var(--vidro-grosso,rgba(252,250,247,.86));-webkit-backdrop-filter:blur(var(--vidro-desfoque,24px)) saturate(var(--vidro-saturacao,180%));backdrop-filter:blur(var(--vidro-desfoque,24px)) saturate(var(--vidro-saturacao,180%));box-shadow:var(--vidro-brilho,none),var(--vidro-sombra-alta,0 18px 46px rgba(40,25,12,.2)),0 0 0 .5px var(--cu-sep)}
.cu-pagina .cu-sug{margin:0;padding:0 2px;-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 24px),transparent 100%);mask-image:linear-gradient(to right,#000 calc(100% - 24px),transparent 100%)}
.cu-pagina .cu-compor{background:var(--cu-cartao);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:0 0 0 .5px var(--cu-sep)}
@media (max-width:760px){.cu-pagina .cu-pe{margin:8px 8px 0}}
html.app-nativo .cu-pagina .cu-pe{bottom:calc(var(--rodape-app,0px) + 8px)}
/* o painel flutuante da página: vidro mais denso (o texto que passa por baixo não compete com as sugestões) */
.cu-pagina .cu-pe{background:rgba(251,248,244,.95)}
body.dark .cu-pagina .cu-pe{background:rgba(30,27,24,.95)}
.cu-pagina .cu-pilha{display:block;overflow:visible;background:transparent}
.cu-pagina .cu-pilha[hidden]{display:none}
.cu-pagina.cu-empilhado>:is(.cu-cab,.cu-corpo){display:none}
.cu-pagina .cu-nav{position:relative;background:transparent;box-shadow:none}
.cu-pagina .cu-nav .cu-alca{display:none}
/* no celular, o painel que flutua sobre a página fica só com o campo (as sugestões cobriam um terço da tela por cima dos
   cartões); as sugestões aparecem na Conversa, onde a pergunta acontece. Na folha elas continuam (o pé é uma linha própria,
   não fica por cima do conteúdo) */
.cu-pagina:not([data-secao="conversa"]) .cu-sug{display:none} /* 1.72.0: também no computador (as sugestões passavam por cima do texto da Visão geral) */

/* ------------------------------------------------------------------ o Suporte, um jeito do mesmo Cérebro (web/suporte.js) */
.cu-suporte-host{display:flex;flex-direction:column;min-height:0;min-width:0;flex:1 1 auto}
.cu-suporte-host[hidden]{display:none}
.cu-folha-modo.cu-jeito-suporte[data-secao="conversa"] .cu-corpo{overflow:hidden;display:flex;flex-direction:column;padding-bottom:0}
.cu-folha-modo.cu-jeito-suporte[data-secao="conversa"] #cu-sec-conversa{flex:1 1 auto;min-height:0}
.cu-jeito-suporte[data-secao="conversa"] .cu-pe{display:none}
.cu-jeito-suporte :is(.cu-conversa-vazia,.cu-conversa-host){display:none}
html body #suporte-raiz.sup-embutido{position:relative;inset:auto;z-index:auto;pointer-events:auto;display:flex;flex-direction:column;flex:1 1 auto;min-height:0}
html body #suporte-raiz.sup-embutido[hidden]{display:none}
html body #suporte-raiz.sup-embutido .sup-veu{display:none}
html body #suporte-raiz.sup-embutido .sup-painel{position:relative;inset:auto;top:auto;right:auto;bottom:auto;left:auto;width:auto;flex:1 1 auto;min-height:0;transform:none!important;opacity:1!important;transition:none;border-radius:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--label,#3A2A1E)}
html body #suporte-raiz.sup-embutido .sup-painel::before{display:none}
html body #suporte-raiz.sup-embutido .sup-topo{padding:0 0 8px;border:0;justify-content:flex-end;gap:8px}
html body #suporte-raiz.sup-embutido .sup-topo :is(.sup-marca-cerebro,.sup-titulos,[data-sup-fechar]){display:none}
html body #suporte-raiz.sup-embutido .sup-rolagem{padding:8px 0}
html body #suporte-raiz.sup-embutido .sup-compor{align-items:center;gap:4px;margin:4px 0 calc(12px + env(safe-area-inset-bottom,0px));padding:4px;border:0;border-radius:26px;background:var(--vidro-grosso,rgba(252,250,247,.86));-webkit-backdrop-filter:blur(var(--vidro-desfoque,24px)) saturate(var(--vidro-saturacao,180%));backdrop-filter:blur(var(--vidro-desfoque,24px)) saturate(var(--vidro-saturacao,180%));box-shadow:var(--vidro-brilho,none),var(--vidro-sombra,0 8px 28px rgba(40,25,12,.14)),0 0 0 .5px var(--cu-sep)}
html body #suporte-raiz.sup-embutido .sup-compor textarea{min-height:44px;padding:11px 12px;background:transparent;box-shadow:none;font-size:max(1rem, var(--f-body,1.0625rem))}
html body #suporte-raiz.sup-embutido .sup-enviar{background:var(--on-blue,#0062BD)}
html body #suporte-raiz.sup-embutido .sup-pessoa .sup-bolha{background:var(--on-blue,#0062BD)}
html body #suporte-raiz.sup-embutido .sup-assistente .sup-bolha{background:var(--cu-cartao)}
.cu-pagina #suporte-raiz.sup-embutido{min-height:70dvh}

/* ------------------------------------------------------------------ acessibilidade do sistema */
@media (prefers-reduced-motion:reduce){
  .cu-folha,.cu-veu,.cu-seg button>span,.cu-x,.cu-mic,.cu-enviar{transition:none}
  .cu-pilha.entra,.cu-esqueleto,.cu-pontos i,.cu-titulo-linha .cu-marca.ativo{animation:none}
  .cu.cu-ouvindo .cu-titulo-linha .cu-marca{transform:none}
}
@media (prefers-reduced-transparency:reduce){
  .cu-compor{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--cu-cartao)}
}
@media (prefers-contrast:more){
  .cu-seg{box-shadow:inset 0 0 0 1px var(--label3,#7E6A59)}
  .cu-chip,.cu-atalho,.cu-balao,.cu-kpi,.cu-cartao,.cu-vazio-linha{box-shadow:0 0 0 1px var(--label3,#7E6A59)}
}

/* 1.74.0 (Philippe, 03/10/2026): o Cérebro em carrossel (web/hub-carrossel.js). Visão geral: cada peça (resumo, texto, cada
   gráfico, as pizzarias do raio) é um cartão da faixa .cu-car; "Para esta tela": uma recomendação por cartão (.cu-recs). */
.cu-car>*{margin:0;min-width:0}
.cu-car>.cu-bloco{padding:14px 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))}
.cu-car>.cu-bloco .cu-cartao{box-shadow:none;padding:0;background:transparent}
.cu-car-resumo .cp-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.cu-car-conc>.cu-grupo{margin-top:0}
/* computador: o Resumo ocupa a largura de dois cartões, com os quatro números lado a lado */
.cu-car.hcar-pc>.cu-car-resumo{flex-basis:calc(var(--hcar-w,24rem) * 2 + var(--hcar-vao,.75rem))}
.cu-car.hcar-pc>.cu-car-resumo .cp-cards{grid-template-columns:repeat(4,minmax(0,1fr))}
/* a recomendação na altura da tela: o texto rola por dentro do cartão e os botões ficam presos no pé dele, sempre à vista */
.cu-recs.hcar-tela>li>.hr-botoes{position:sticky;bottom:-10px;margin:auto -16px -10px;padding:8px 16px 10px;background:var(--cu-cartao,var(--surface,#fff));box-shadow:0 -.5px 0 var(--sep,rgba(58,42,30,.14));border-radius:0 0 var(--r-card,16px) var(--r-card,16px)}
.cu-recs>li[data-cu-outra]>.hr-tag::after{content:"De outra tela";margin-left:auto;padding:1px 8px;border-radius:999px;background:var(--fill,rgba(90,65,45,.08));color:var(--label2,#6B5A4C);font-weight:600;white-space:nowrap}
.cu:has(.cu-car.hcar-tela) .cu-corpo{padding-bottom:4px}
@media (max-width:420px){.cu-car-resumo .cp-cards{grid-template-columns:minmax(0,1fr)}}
/* P1: reserva imediata de conteúdo até a montagem da vitrine, sem animação ou JS. */
.cu-unico [data-cu-parte="vitrine"]:empty::before {
  content: "Carregando recomendações…";
  display: block;
  min-height: 88px;
  padding: 20px;
  border-radius: 20px;
  color: var(--label2, #666);
  background: color-mix(in srgb, currentColor 5%, transparent);
  font-size: 15px;
}
.cu-p1-peca { min-height: 80px; padding: 20px; font-size: 15px; }
