/* version: 2026-11-02.R19
   protivo.css — R19 (02/11, onda 4 — T-E26 "Privacidade e LGPD", T-E27/T-E28 "Plano e faturas", T-E31 "Transparência";
   docs/protivo/tarefas/FASE-4.md). Backup do estado anterior: BACK UP CENTRAL/02-11-2026-19-12-protivo.css. SÓ
   ACRÉSCIMO: seção 20 nova (no fim do arquivo), TODA dentro de .cfg2 (privacidade.html R1, plano.html R5,
   transparencia.html R13, _coleta_titular.html R4) e das janelas dialog.cfg2-dlg / gaveta dialog.cfg2-lat. Portado do
   protótipo aprovado (privacidade.html, plano.html, transparencia.html e assets/app.css: .pill, .kgrid/.kc, .tb, .kv2,
   .infox, .k26, .rl, .pc, .sumx, .perde, .dif, .grp31, .itx, .accx, .prot) COM AS CORES DO PROTÓTIPO; nenhum laranja
   (o laranja segue só no .btn.pri). Abaixo de 900 px as colunas viram uma; nenhum min-width acima de 300 px. Nada das
   seções 1–19 mudou.
   R18 (02/11, onda 4 — T-E24 "Impressões" e T-E25 "Pen drives"; docs/protivo/tarefas/FASE-4.md).
   Backup do estado anterior: BACK UP CENTRAL/02-11-2026-19-01-protivo.css. SÓ ACRÉSCIMO: seção 19 nova (no fim do
   arquivo), TODA dentro de .ipd (impressoes.html R2 e usb_copias.html R3) e das janelas .ipd-dlg/.ipd-det. Cores do
   protótipo; nenhum laranja. Nada das seções 1–18 mudou.
   R17 (02/11, CONFORMIDADE COM O PROTÓTIPO — decisão do dono 02/11: "o protótipo do Alexandre vale").
   Backup do estado anterior: BACK UP CENTRAL/02-11-2026-17-14-protivo.css. SÓ ACRÉSCIMO: seção 18 nova (no fim do
   arquivo): Política (politica.html R37 — "Voltar para esta versão" na 3ª coluna do histórico e a janela .pol-cf-dlg de
   confirmação ao aumentar coleta sensível), Produtividade (produtividade.html R9 — o porquê na linha que o gestor não
   classifica) e Ponto (ponto.html R2 — a faixa "ponto esquecido", "ponto aberto" e o selo "ajuste" com as CORES DO
   PROTÓTIPO, âmbar da .warnc: #FFFBEB/#FDE68A/#FEF3C7/#92400E, e a coluna "Situação"). As regras do Ponto SOBREPÕEM as
   da seção 16 (a divergência "faixa azul / marinho / contorno cinza" declarada na R15 deixou de valer). Nenhum laranja
   novo: o ponto da "Situação" usa #92400E (o protótipo usa #B45309, que a regra "laranja só em ação" da casa — tests/
   test_menu_novo_onda3 — trata como laranja). Nada das seções 1–17 foi apagado.
   R16 (02/11, onda 4 — T-E21/T-E22/T-E23 "Computadores")
   protivo.css — R16 (02/11, onda 4 — T-E21/T-E22/T-E23 "Computadores"; docs/protivo/tarefas/FASE-4.md).
   Backup do estado anterior: BACK UP CENTRAL/02-11-2026-16-17-protivo.css.
   R16 — SÓ ACRÉSCIMO: seção 17 nova (no fim do arquivo), TODA dentro de .comp-tela (app/templates/computadores.html R1)
   e das janelas que moram fora do contêiner (dialog.comp-dlg — renomear, como desinstalar — e a gaveta
   dialog.comp-ficha do inventário) — nenhuma outra tela é afetada. Portado do protótipo aprovado
   (docs/protivo/prototipo/computadores.html, <style> local: .sit3, .cnm, .dots5, .dmenu, .grpp, .steps, .sbx, .dlb,
   .waitx/.spx, .okx, .avs/.nw, .codev, .dbar2, .spec, .srch, .hist; e assets/app.css: .kgrid/.kc, .tb, .pill, .warnx,
   .two, .notec, .crumb), COM AS CORES DO PROTÓTIPO (decisão do dono, 02/11: o protótipo vale): ponto verde de
   "Funcionando", cinza de "Sem contato", faixa e selo "sem suporte" em amarelo/âmbar, selo do antivírus ativo em verde,
   "Instalado" em verde, barra de disco azul e magenta abaixo de 10 % livre, linhas novas do aviso em amarelo. UMA
   divergência obrigatória: o "!" da faixa não usa o âmbar #F59E0B do protótipo (é laranja — a regra aprovada "laranja
   só em ação" e tests/test_menu_novo_onda3 o barram); usa o amarelo da própria faixa com o marrom do selo. Laranja só no
   .btn.pri. Sem JavaScript, a ficha e a janela de renomear aparecem na própria página (html:not(.js)). Abaixo de
   900 px os passos e os cartões viram uma coluna; as tabelas rolam dentro do cartão; nenhum min-width acima de 300 px.
   Nada das seções 1–16 mudou.
   R15 (02/11, onda 4 — T-E19 "Tela: Jornada → Ponto"; docs/protivo/tarefas/FASE-4.md).
   Backup do estado anterior: BACK UP CENTRAL/02-11-2026-15-29-protivo.css.
   R15 — SÓ ACRÉSCIMO: seção 16 nova (no fim do arquivo), TODA dentro de .ponto-tela (app/templates/ponto.html R1) e da
   gaveta dialog.ponto-dia (o dia da pessoa mora fora do contêiner) — nenhuma outra tela é afetada. A página usa também
   .painel-hoje (cabeçalho, controle segmentado do período, tabela .team com avatar, .who, .lk/.lk-a da linha clicável,
   .st de "Agora" — a MESMA etiqueta do Painel —, .empty1, .trans-note — seção 4) e o painel lateral da seção 3.
   Portado do protótipo aprovado (docs/protivo/prototipo/assets/app.css: .ptool, .dnav2, .warnc, .pt, .tm, .pcomp,
   .difp, .gps/.net, .mtab, .drh, .cmpb, .bat/.adj, .frm2, .fe), com as cores SÓ pelos tokens --p-*. Divergências
   declaradas do protótipo: a faixa do ponto esquecido é AZUL de informação (o âmbar do .warnc não existe nos tokens e
   fica perto do laranja de ação); o selo "ajuste" e a batida ajustada vão em contorno tracejado cinza (no protótipo,
   âmbar); "Ponto aberto desde…" em marinho forte (no protótipo, âmbar); colunas sem caixa alta (a .team da seção 2 usa
   caixa alta; aqui volta ao normal). NENHUM laranja novo (o laranja continua só no .btn.pri — "Incluir batida", dentro
   do painel). Sem JavaScript, o dia da pessoa aparece na própria página (html:not(.js)). Abaixo de 760 px o horário
   desce para a linha de baixo, a faixa quebra, os blocos e o formulário do painel viram uma coluna; a tabela rola
   dentro do cartão; nenhum min-width acima de 300 px. Nada das seções 1–15 mudou.
   R14 (02/11, onda 4 — T-E16 "Tela: Política de coleta"; docs/protivo/tarefas/FASE-4.md).
   Backup do estado anterior: BACK UP CENTRAL/02-11-2026-14-31-protivo.css.
   R14 — SÓ ACRÉSCIMO: seção 15 nova (no fim do arquivo), TODA dentro de .politica-tela (app/templates/politica.html
   R36) e das janelas dialog.pol-hist (histórico de versões), dialog.pol-hor-dlg (horário) e do aviso .pol-toast, que
   moram fora do contêiner — nenhuma outra tela é afetada. O <style> local que a página tinha (classes .pol-*, sobre o
   app.css antigo) saiu; o que sobrou veio para cá, redesenhado pelo protótipo aprovado (docs/protivo/prototipo/
   assets/app.css: .vline/.vtag, .warnb, .sum/.sg/.lvl/.it/.yes/.no, .never/.nl, .tg/.sw3, .tsec/.hsum/.mrow,
   .hr2/.chgs), com as cores SÓ pelos tokens --p-*. Divergências declaradas do protótipo: as faixas de atenção são o
   .banner.info AZUL que a página já usava (o âmbar do .warnb não existe nos tokens e fica perto do laranja de ação);
   o interruptor é o PRÓPRIO <input type=checkbox role=switch> (o envio do formulário não muda), com o estado escrito
   ao lado ("ligado"/"desligado" — nunca só cor); os níveis em letra normal ("Básico", "Sensível", "Muito sensível").
   No histórico, rosa = aumentou a coleta e verde = diminuiu (pedido explícito da auditoria). NENHUM laranja novo (o
   laranja continua só no .btn.pri — "Salvar horário", dentro da janela). Sem JavaScript, a janela do horário aparece
   aberta na página (html:not(.js)). Abaixo de 760 px o Resumo vira uma coluna e as linhas de opção quebram; nenhum
   min-width acima de 300 px. Nada das seções 1–14 mudou.
   R13 (02/11, onda 4 — T-E15 "Tela: Classificação"; docs/protivo/tarefas/FASE-4.md).
   Backup do estado anterior: BACK UP CENTRAL/02-11-2026-13-36-protivo.css.
   R13 — SÓ ACRÉSCIMO: seção 14 nova (no fim do arquivo), TODA dentro de .classif (app/templates/classificacao.html R12)
   e das janelas dialog.nr-dlg ("+ Nova regra") e dialog.cl-info ("O que cada categoria faz"), que moram fora do
   contêiner — nenhuma outra tela é afetada. A página usa também .painel-hoje (cabeçalho, .card-h, .lnk, .sr, .att-vazio,
   faixa de transparência — seção 4) e os componentes da seção 3 (abas, selos, janela de confirmação). Portado do
   protótipo aprovado (docs/protivo/prototipo/assets/app.css: .ccomp/.cleg2, .ctabs, .chint, .crow/.kch/.cls3, .cgrp/.ic2,
   .rtool/.sbox/.fch, .rev, .rhead/.rrow/.csel, .dots/.pmenu, .seg2, .fe, .prev2), com as cores SÓ pelos tokens --p-*:
   a divisão do tempo com as MESMAS 4 partes da Produtividade (sem classificação tracejado); a sugestão do catálogo com
   contorno AZUL (no protótipo, verde — verde é só "produtivo" nesta casa); "regras para revisar" em azul suave (o
   âmbar do protótipo fica perto do laranja de ação e não existe nos tokens); erro do campo em magenta. NENHUM laranja
   novo (o laranja continua só no .btn.pri — "+ Nova regra"). Colunas sem maiúsculas (a tabela .team da seção 2 usa
   caixa alta; aqui volta ao normal). Abaixo de 760 px a linha da fila e a das regras viram blocos; nenhum min-width
   acima de 300 px. Nada das seções 1–13 mudou.
   R12 (02/11, onda 4 — T-E13 "Tela ao vivo" e T-E14 "Parede de telas"; docs/protivo/tarefas/FASE-4.md).
   Backup do estado anterior: BACK UP CENTRAL/02-11-2026-12-45-protivo.css.
   R12 — SÓ ACRÉSCIMO: seção 13 nova (no fim do arquivo), TODA dentro de .aovivo (app/templates/liveview.html R12) e
   .parede-tela (app/templates/parede.html R9) — nenhuma outra tela é afetada. O estilo que as duas páginas tinham no
   próprio <style> (prefixos lv-/pw-) veio para cá, redesenhado pelo protótipo aprovado (docs/protivo/prototipo/assets/
   app.css: .lvw/.plist/.pit, .viewer2/.vh, .live2/.rec, .vscreen/.stamp/.nosound/.vmsg/.vidle, .vbar, .recs, .wtool/
   .chipset/.sizes, .winfo, .wgrid/.wt, .out/.outl, .stbox, .ckl, .wov/.ovbox/.navb e o :fullscreen), com as cores SÓ
   pelos tokens --p-*. Divergência declarada do protótipo: o selo "Ao vivo" e o ponto de "online" são AZUIS (no
   protótipo, verdes) — verde é só "produtivo" nesta casa (seções 7–9); "imagem parada" e "conectando" em CINZA (o
   âmbar do protótipo não existe nos tokens e fica perto do laranja de ação); "Gravando" em magenta suave (o .rec do
   protótipo). NENHUM laranja novo (o laranja continua só no .btn.pri — uma ação principal por tela). Abaixo de 900 px
   a Tela ao vivo vira uma coluna e a grade da parede perde colunas; nenhum min-width acima de 300 px.
   Nada das seções 1–12 mudou.
   R11 (02/11, onda 4 — T-E12 "Tela: Alertas"; docs/protivo/tarefas/FASE-4.md).
   Backup do estado anterior: BACK UP CENTRAL/02-11-2026-12-00-protivo.css.
   R11 — SÓ ACRÉSCIMO: seção 12 nova (no fim do arquivo), TODA dentro de .alertas-tela (app/templates/alertas.html R8) e
   da janela dialog.al-dlg (a janela "Nova regra"/"Editar regra" mora fora do contêiner) — nenhuma outra tela é afetada.
   A página usa também a classe .painel-hoje (cabeçalho, controle segmentado do período, .card-h, .who, .lnk, .att-vazio,
   faixa de transparência — os MESMOS da seção 4). Portado do protótipo aprovado (docs/protivo/prototipo/assets/app.css:
   .acards/.acard, .tdot, .tchip, .abar/.alab, .qfil, .al, .dchips, .trat/.why2, .qempty, .rule, .sw2, .lock, .typs/.typ,
   .inp, .ck2, .prev), com as cores SÓ pelos tokens --p-*: marca por regra — produtividade baixa em MAGENTA, jornada longa
   em AZUL, ocioso/técnico em CINZA; barras do gráfico em MARINHO e o dia escolhido em azul; números em marinho (nada de
   vermelho no zero); o motivo escolhido e o interruptor em marinho/azul. NENHUM laranja novo (o laranja continua só no
   .btn.pri). Abaixo de 760 px a linha da fila e a das regras viram uma coluna; nenhum min-width acima de 300 px.
   Nada das seções 1–11 mudou.
   R10 (02/11, onda 4 — T-E11 "Tela: Produtividade"; docs/protivo/tarefas/FASE-4.md).
   Backup do estado anterior: BACK UP CENTRAL/02-11-2026-11-21-protivo.css.
   R10 — SÓ ACRÉSCIMO: seção 11 nova (no fim do arquivo), TODA dentro de .produtiv (app/templates/produtividade.html R7)
   — nenhuma outra tela é afetada. A página usa também a classe .painel-hoje, então cabeçalho, controle segmentado do
   período, indicadores, cartões, tabela .team com avatar e barra empilhada, legenda, ferramentas de busca/ordenação e a
   faixa de transparência são OS MESMOS da seção 4 (Painel). Aqui só o que é desta tela: linha de filtros (equipe +
   período + "comparado com"), a 4ª parte "sem classificação" (tracejado — nunca cor de categoria) na barra empilhada e
   na barra de 4 partes "Como o tempo foi usado", a fila "Programas e sites sem classificação" (borda AZUL suave —
   laranja é só ação), os grupos recolhidos da fila, o bloco "Sem dados no período", os filtros por classificação dos
   programas (botões com aria-pressed, marinho quando ligados) e as duas colunas (uma só abaixo de 1100 px). Nenhum
   laranja novo; nenhum min-width acima de 300 px. Nada das seções 1–10 mudou.
   R9 (02/11, onda 4 — T-E10 "Vídeo do dia" + T-P17).
   protivo.css — R9 (02/11, onda 4 — T-E10 "Vídeo do dia" + T-P17 "mesma linha do dia e pular os períodos parados";
   docs/protivo/tarefas/FASE-4.md). Backup do estado anterior: BACK UP CENTRAL/02-11-2026-10-40-protivo.css.
   R9 — SÓ ACRÉSCIMO: seção 10 nova (no fim do arquivo), TODA dentro de .vdia (app/templates/video_dia.html R4) — nenhuma
   outra tela é afetada. A página usa também a classe .capt, então a faixa do dia, a hachura, as barrinhas de atividade,
   o controle de arrastar, a dica, a legenda e o interruptor são OS MESMOS da seção 9 (mesmas cores das Capturas). Aqui só
   o que é do vídeo: cabeçalho com a pessoa e as setas de dia, aviso, a tela escura com "Sem áudio" e o relógio, a barra
   de controles (Reproduzir/Pausar — o único laranja, o .btn.pri de sempre —, velocidade em botões, "Pular períodos
   parados"), a faixa do PERÍODO GRAVADO por baixo da linha do dia (azul; imagem parada em azul claro listrado; gravação
   indisponível em cinza — nunca laranja) e a faixa de dias. Nenhum min-width acima de 300 px; abaixo de 640 px os
   controles empilham. Nada das seções 1–9 mudou. (A página do vídeo NÃO aceita atributo style nem <style> — CSP estrita
   do player: tudo o que ela desenha está aqui.)
   R8 (02/11, onda 4 — T-E09 "Capturas de tela" + T-P16 "Player de arrastar"; docs/protivo/tarefas/FASE-4.md).
   protivo.css — R8 (02/11, onda 4 — T-E09 "Capturas de tela" + T-P16 "Player de arrastar"; docs/protivo/tarefas/FASE-4.md).
   Backup do estado anterior: BACK UP CENTRAL/02-11-2026-09-52-protivo.css.
   R8 — SÓ ACRÉSCIMO: seção 9 nova (no fim do arquivo), TODA dentro de .capt (app/templates/screenshots.html R16) —
   nenhuma outra tela é afetada. Portado do protótipo aprovado (docs/protivo/prototipo/assets/app.css, "Player de
   capturas"), com as cores SÓ pelos tokens --p-*: filtros numa linha (painel de pessoas com avatar, nome e equipe;
   Hoje/Ontem/Escolher; interruptor "Esconder capturas sem atividade" em AZUL, nunca laranja), linha por pessoa (com ou
   sem capturas), player (imagem/quadro + painel lateral, faixa pela classificação — verde só em produtivo —, trechos
   sem capturas hachurados, barrinhas CINZA de atividade, controle de arrastar com foco visível, dica, legenda). Abaixo
   de 900 px o player vira uma coluna; nenhum min-width acima de 300 px (sem rolagem lateral no celular). Nenhum
   laranja novo (o laranja continua só no .btn.pri). Nada das seções 1–8 mudou.
   R7 (02/11, onda 4 — área EQUIPE: T-E08/T-E17/T-E18; docs/protivo/tarefas/FASE-4.md).
   Backup do estado anterior: BACK UP CENTRAL/02-11-2026-08-22-protivo.css.
   R7 — SÓ ACRÉSCIMO: seção 8 nova (no fim do arquivo), TODA dentro de .equipe-area (app/templates/equipe.html R1) e
   .cadastro (usuarios_editar.html R6) — nenhuma outra tela é afetada. Faixa da situação dos agentes, avisos de cadastro,
   tabela de equipes e de pessoas (a .team da seção 2), equipe aberta na página, filtros, menu "⋯" (<details>, abre NA
   célula — nada absoluto que a rolagem da tabela corte), situação do agente e do acesso (o TEXTO informa; a cor só
   reforça: azul = funcionando/ativo, magenta suave = sem conexão, cinza vazado = não instalado/desativado — verde é só
   "produtivo" e NENHUM laranja novo: o laranja continua só no .btn.pri), cadastro com abas (custo em vigor, histórico,
   zona de risco). Nenhum min-width acima de 300 px. Nada das seções 1–7 mudou.
   R6 (02/11, onda 4 — T-E07 "Programas e sites do colaborador" + T-P11; docs/protivo/tarefas/FASE-4.md).
   Backup do estado anterior: BACK UP CENTRAL/02-11-2026-07-43-protivo.css.
   R6 — SÓ ACRÉSCIMO: seção 7 nova (no fim do arquivo), TODA dentro de .prog-sites (app/templates/aplicativos.html R6;
   nenhuma outra tela é afetada). A tela reaproveita a seção 6 (.colab-det) e só acrescenta: setas do período com texto,
   a frase do topo (azul de informação), a tabela de 7 colunas (barra + tempo, horário sem quebra), a dica (?) do
   cabeçalho abrindo para baixo (a tabela rola dentro do cartão), "Classificar" com os botões abrindo DENTRO da célula
   (nada absoluto que a rolagem corte) e a linha dos títulos de janela. Só tokens; NENHUM laranja novo. Nada das
   seções 1–6 mudou.
   R5 (02/11, onda 4 — T-E06 "Detalhe do colaborador" + T-P04/T-P12; docs/protivo/tarefas/FASE-4.md).
   Backup do estado anterior: BACK UP CENTRAL/02-11-2026-06-59-protivo.css.
   R5 — SÓ ACRÉSCIMO: seção 6 nova (no fim do arquivo), TODA dentro de .colab-det (app/templates/timeline.html R12;
   nenhuma outra tela é afetada). Portado do protótipo aprovado (docs/protivo/prototipo/assets/base.css — .crumb,
   .prof, .days/.day, .arrow, .tl-track/.tl-ax, .hours, .thumbs/.th, .ev, .bar1, .sw), com as cores SÓ pelos tokens
   --p-*: bolinha de "com registros" em AZUL (verde é só "produtivo"), pen drive conectado em azul e removido em cinza,
   trechos pela cor da categoria, intervalo sem registro hachurado, hora extra listrada. Nenhum laranja novo (o laranja
   continua só no .btn.pri). Nenhum min-width acima de 300 px; a faixa de dias rola DENTRO do cartão em tela estreita.
   R4 (02/11, onda 4 — T-E29/T-E30 "Ajuda e suporte"; docs/protivo/tarefas/FASE-4.md).
   Backup do estado anterior: BACK UP CENTRAL/02-11-2026-05-48-protivo.css.
   R4 — SÓ ACRÉSCIMO: seção 5 nova (no fim do arquivo) com os estilos da área "Ajuda e suporte" — item do menu como
   link (base.html R21), botão principal que abre o formulário (<details>), barra de filtros, lista de chamados/sugestões
   (ponto azul de "Nova resposta"), conversa ("Isso resolveu?") e os cartões + busca dos tutoriais (a busca só aparece
   com JavaScript: html.js). Só tokens; NENHUM laranja novo (o laranja continua só no .btn.pri do app.css — e o botão de
   abrir o formulário perde o laranja quando ele está aberto). Nada das seções 1 a 4 mudou.
   R3 (02/11, onda 4 — T-E03 "Painel › Hoje" + T-P09; docs/protivo/tarefas/FASE-4.md).
   Backup do estado anterior: BACK UP CENTRAL/02-11-2026-05-27-protivo.css.
   R3 — seção 4 NOVA (no fim do arquivo), TODA dentro de .painel-hoje (a tela do Painel; nenhuma outra tela é afetada).
   Nada das seções 1–3 mudou. Portado do protótipo aprovado (docs/protivo/prototipo/assets/base.css — .summary, .live,
   .cols, .st, .stack, .leg, .att-i, .chart, .trans-note), com as cores SÓ pelos tokens --p-*: presença em azul/cinza/
   magenta suave (nunca laranja), barra empilhada pelas cores de categoria, controle segmentado com "Escolher datas"
   (<details>), duas colunas que viram uma abaixo de 1100 px, busca/ordenação da lista e texto só para leitor de tela
   (.sr). Nenhum min-width acima de 300 px.
   R2 (02/11, onda 3 — T-M03 "Formatos e componentes de base", 2ª parte; docs/protivo/tarefas/FASE-4.md).
   Backup do estado anterior: BACK UP CENTRAL/02-11-2026-04-31-protivo.css.
   R2 — seção 3 nova (no fim do arquivo), os estilos dos componentes de app/templates/_janela_confirmar.html e
   _componentes.html — nada das seções 1 e 2 mudou, exceto o .dlg ganhar teto de altura com rolagem (vale também para
   os <dialog class="dlg"> de usuarios.html; o `display` continua o nativo):
     • janela de confirmação: .dlg-confirmar (texto do efeito), .dlg-digitar (campo do nome a digitar), botão de
       perigo CHEIO .btn.perigo.cheio (MAGENTA --p-improdutivo, texto branco — nunca laranja) e botão desabilitado
       dentro da janela;
     • painel lateral de detalhe: dialog.painel-lat (gaveta à direita, desliza ao abrir; sem animação para quem pede
       menos movimento) com .pl-cab / .pl-corpo;
     • abas na página: sem JavaScript a barra some e os painéis ficam todos visíveis (html.js liga o modo abas);
       foco visível nas abas;
     • selos de situação .selo.selo-{produtivo|neutro|improdutivo|sem-classificacao|info|erro|ok} — só tokens; verde só
       em produtivo, magenta em improdutivo/erro, azul em info/ok; NENHUM laranja;
     • avatar ilustrado (.av.av-ilustrado: o desenho ocupa o círculo inteiro) e o sprite escondido (.sprite-av).
   R1 (02/11, onda 3 da auditoria de UX — T-M02 "Menu novo" e base da T-M03 "Formatos e componentes de
   base"; docs/protivo/tarefas/FASE-4.md). ARQUIVO NOVO.
   O QUE É: a CASCA do painel (menu lateral marinho + topo branco + área de conteúdo) e os COMPONENTES de base das telas
   novas, PORTADOS do protótipo aprovado (docs/protivo/prototipo/assets/base.css, linhas 66–240, e app.css) — não
   copiados: sem a largura mínima de 1300 px do protótipo, sem as cores fixas dele (tudo pelos tokens --p-* do app.css
   R9) e sem nenhum JavaScript dele (o protivo.js R1 é próprio e mínimo).
   COMO CONVIVE COM AS 58 TELAS ANTIGAS (que só serão refeitas na onda 4):
   • Carregado SÓ pelo base.html, DEPOIS do app.css. O /sa (sa/base_sa.html) não o carrega e segue com o layout de
     sempre — por isso as regras antigas .top/.nav/.main (fixas) do app.css ficaram intactas e AQUI são reajustadas
     apenas DENTRO de .app (a casca nova).
   • A casca NÃO usa a classe .nav nos itens (no app.css ela é a barra fixa do /sa): os itens são .nav-item.
   • Componentes que JÁ EXISTEM no app.css com outro desenho NÃO são redefinidos de forma global: o visual novo do
     indicador vale só dentro de .kpis (as telas antigas usam .row > .kpi); o cabeçalho de cartão é a classe NOVA
     .card-h, que encosta nas bordas do .card antigo sem tirar o padding dele; a janela .dlg não mexe em `display`
     (o <dialog class="dlg"> de usuarios.html depende do display nativo para ficar fechado).
   • Largura: cabe em 1280 px sem rolagem horizontal (menu 224 px + conteúdo fluido, min-width:0); abaixo de 1024 px o
     menu vira gaveta recolhível (botão "Menu" do topo, protivo.js). Sem JavaScript, o menu aparece empilhado acima do
     conteúdo (nada fica inacessível).
   • Laranja de ação SÓ no contador (.bdg) — o botão principal laranja é o .btn.pri do app.css. Nenhum status em laranja.
   • Fonte: a do app.css (Plus Jakarta Sans auto-hospedada). Nenhuma chamada externa. */

/* ═════════════════════════════════════ 1. CASCA ═════════════════════════════════════ */
body.p-casca{margin:0;background:var(--p-fundo);color:var(--p-texto);line-height:1.45}
.pular{position:absolute;left:-9999px;top:8px;z-index:300;background:var(--p-cartao);color:var(--p-azul);
  padding:8px 12px;border-radius:8px;font-weight:700}
.pular:focus{left:8px}
.app{display:grid;grid-template-columns:224px minmax(0,1fr);min-height:100vh;background:var(--p-fundo);color:var(--p-texto)}
.app.app-sem-sessao{grid-template-columns:minmax(0,1fr)}

/* ── menu lateral (marinho) ── */
.side{position:sticky;top:0;height:100vh;overflow-y:auto;background:var(--p-marinho);color:#C9D4E8;padding:18px 12px;
  display:flex;flex-direction:column;gap:16px;scrollbar-width:thin;scrollbar-color:#2A3F66 transparent}
.side a{text-decoration:none}
.side .brand{display:flex;align-items:center;gap:9px;padding:2px 8px;color:#fff;font-size:22px;line-height:1}
.side .brand-ico{width:26px;height:26px;flex:none}
.side .brand-ico .b1{fill:#FFFFFF}.side .brand-ico .b2{fill:var(--p-azul-claro)}.side .brand-ico .b3{fill:var(--p-laranja-acao)}
.side .brand-nome{font-weight:800;font-size:22px;letter-spacing:-.02em;color:#fff}
/* marca própria de agência (white-label): logo/ponto + nome + " · Protivo" */
.side .brand.marca{flex-wrap:wrap;gap:6px 8px;font-size:15px;font-weight:800;line-height:1.25}
.side .brand .wl-logo{height:24px;width:auto;max-width:150px;display:block;border-radius:4px;background:#fff}
.side .brand .dot{width:14px;height:14px;border-radius:5px;background:var(--p-azul-claro);flex:none}
.side .brand .marca-nome{color:#fff;overflow-wrap:anywhere}
.side .brand .muted{color:#93A3C2;font-weight:600}
.org{background:#13274D;border-radius:10px;padding:9px 12px;font-size:13px;color:#fff;overflow-wrap:anywhere}
.org b{font-weight:600}
.org small{display:block;color:#93A3C2;font-size:11px}
.menu-principal{display:flex;flex-direction:column;gap:14px;flex:1 0 auto}
.side .grp{display:grid;gap:2px}
.side .grp-t{font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#7F91B3;padding:0 10px 4px}
.side .nav-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;color:#C9D4E8;font-weight:500;
  font-size:13.5px;line-height:1.3;cursor:pointer}
.side .nav-item:hover{background:rgba(255,255,255,.06);color:#fff}
.side .nav-item.on{background:#13274D;color:#fff;font-weight:600;box-shadow:inset 3px 0 0 var(--p-azul-claro)}
.side .nav-item .ico{width:18px;height:18px;stroke-width:1.8;flex:none}
.side .nav-item .rot{min-width:0}
.side .nav-item .cadeado{display:block;font-size:11px;font-weight:600;color:#93A3C2;margin-top:1px}
.app .side a:focus-visible,.app .side summary:focus-visible{outline:2px solid var(--p-azul-claro);outline-offset:1px}
/* contador (o ÚNICO laranja fora do botão principal — manual §2.2) */
.bdg{margin-left:auto;background:var(--p-laranja-acao);color:var(--p-marinho);font-size:11px;font-weight:800;
  border-radius:999px;padding:1px 7px;font-variant-numeric:tabular-nums}
/* rodapé do menu: Configurações / Ajuda e suporte (<details> — abre e fecha sem JavaScript) */
.side-foot{margin-top:auto;display:grid;gap:2px;border-top:1px solid #13274D;padding-top:12px}
.grp-rodape>summary{list-style:none}
.grp-rodape>summary::-webkit-details-marker{display:none}
.grp-rodape>summary .seta{margin-left:auto;display:inline-flex;transition:transform .15s}
.grp-rodape>summary .seta .ico{width:16px;height:16px}
.grp-rodape[open]>summary .seta{transform:rotate(180deg)}
.side .nav-item.contem{color:#fff}
.side .sub{display:grid;gap:1px;padding:2px 0 6px 28px}
.side .sub.sub2{padding:0 0 2px 14px}
.side .nav-item.sub-item{padding:6px 10px;font-size:13px}

/* ── coluna principal: topo + conteúdo (reajusta, SÓ na casca, as regras fixas .main/.top do app.css) ── */
.app>.main{margin:0;padding:0;width:auto;min-width:0;display:flex;flex-direction:column}
.app .top{position:sticky;top:0;left:auto;right:auto;height:auto;min-height:56px;z-index:20;background:var(--p-cartao);
  border-bottom:1px solid var(--p-linha);display:flex;align-items:center;gap:12px;padding:10px 24px}
.top-t{font-size:15px;font-weight:700;color:var(--p-marinho);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.app .top .sp{flex:1}
.top .chip.ctx{background:var(--p-azul-suave);color:var(--p-azul);font-size:11.5px}
.trans{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--p-azul);
  background:var(--p-azul-suave);border-radius:999px;padding:5px 11px;text-decoration:none;white-space:nowrap}
.trans .ico{width:15px;height:15px}
.trans:hover,.trans.on{background:#DCE5FB}
.menu-btn{display:none;align-items:center;gap:6px;font-family:inherit;font-size:13px;font-weight:700;color:var(--p-marinho);
  background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:8px;padding:7px 12px;cursor:pointer}
/* menu do usuário (<details>; o protivo.js só fecha ao clicar fora / Esc) */
.user{position:relative}
.user>summary{list-style:none;display:flex;align-items:center;gap:9px;cursor:pointer;padding:4px 6px;border-radius:10px;
  font-size:13px;color:var(--p-texto)}
.user>summary::-webkit-details-marker{display:none}
.user>summary:hover{background:var(--p-neutro-suave)}
.user>summary>.ico{width:16px;height:16px;color:var(--p-texto-sec)}
.user .quem{display:grid;line-height:1.25;min-width:0;max-width:240px}
.user .quem b{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.user .quem small{color:var(--p-texto-sec);font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.menu{position:absolute;right:0;top:calc(100% + 8px);background:var(--p-cartao);border:1px solid var(--p-linha);
  border-radius:10px;box-shadow:0 10px 28px rgba(11,27,58,.16);padding:6px;display:grid;min-width:240px;max-width:340px;
  z-index:40;font-size:13px}
.menu .mh{padding:8px 10px 6px;font-weight:700;color:var(--p-texto);overflow-wrap:anywhere}
.menu .mi{padding:8px 10px;border-radius:7px;display:flex;align-items:center;gap:8px;color:var(--p-texto);text-decoration:none}
.menu .mi:hover{background:var(--p-neutro-suave)}
.menu .mi .ico{width:16px;height:16px}
.menu hr{border:0;border-top:1px solid var(--p-linha);margin:4px 0}
/* área de conteúdo: BLOCO (as telas antigas contam com o fluxo normal e com as próprias margens) */
.content{padding:20px 24px 28px;min-width:0}

/* ── telas estreitas (< 1024 px): menu vira gaveta (com JS) ou fica empilhado acima do conteúdo (sem JS) ── */
@media (max-width:1023.98px){
  .app{grid-template-columns:minmax(0,1fr)}
  .side{position:static;height:auto}
  html.js .menu-btn{display:inline-flex}
  html.js .side{position:fixed;top:0;left:0;bottom:0;height:auto;width:min(280px,86vw);z-index:100;
    transform:translateX(-105%);transition:transform .2s;box-shadow:0 0 40px rgba(11,27,58,.35)}
  html.js body.menu-aberto .side{transform:none}
  html.js body.menu-aberto .app::before{content:"";position:fixed;inset:0;background:rgba(11,27,58,.45);z-index:90}
  .app .top{padding:10px 16px;flex-wrap:wrap}
  .content{padding:16px}
  .user .quem{max-width:150px}
}
@media (prefers-reduced-motion:reduce){html.js .side{transition:none}}
@media print{.side,.app .top,.pular{display:none}.app{display:block}.content{padding:0}}

/* ═════════════════════════ 2. COMPONENTES DE BASE (prontos para a onda 4) ═════════════════════════ */
/* cabeçalho da página: título + subtítulo à esquerda, ações à direita */
.ph{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}
.ph h1,.ph h2{margin:0;font-size:26px;font-weight:800;letter-spacing:-.02em;color:var(--p-marinho)}
.ph p{margin:2px 0 0;color:var(--p-texto-sec);font-size:13.5px}

/* indicadores (o visual novo vale SÓ dentro de .kpis; o .kpi solto das telas antigas não muda) */
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-bottom:18px}
.kpis>.kpi{min-width:0;flex:none;margin:0;background:var(--p-cartao);border:1px solid var(--p-linha);
  border-radius:var(--p-raio-cartao);padding:14px 16px;display:grid;gap:4px;align-content:start}
.kpis>.kpi .l{font-size:12.5px;color:var(--p-texto-sec);font-weight:600}
.kpis>.kpi .v{margin:0;font-size:28px;font-weight:800;letter-spacing:-.02em;line-height:1.1;color:var(--p-marinho);
  font-variant-numeric:tabular-nums}
.kpis>.kpi .v small{font-size:15px;color:var(--p-texto-sec);font-weight:600}
.kpis>.kpi .c{font-size:12.5px;color:var(--p-texto-sec)}
.kpis>.kpi.att{background:var(--p-marinho);border-color:var(--p-marinho);color:#fff}
.kpis>.kpi.att .l,.kpis>.kpi.att .c{color:#B9C6DD}
.kpis>.kpi.att .v{color:#fff}
.meter{height:6px;background:var(--p-linha);border-radius:3px;overflow:hidden;margin-top:4px}
.meter>i{display:block;height:100%;background:var(--p-azul)}

/* cabeçalho de cartão: encosta nas bordas do .card (que mantém o padding das telas antigas) */
.card>.card-h{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:-14px -16px 14px;
  padding:13px 16px;border-bottom:1px solid var(--p-linha)}
.card .card-h h2,.card .card-h h3,.card .card-h h5{margin:0;font-size:15px;font-weight:700;letter-spacing:-.01em}
.card-h>span,.card-h>.r{font-size:12.5px;color:var(--p-texto-sec)}
.card.flush{padding:0}
.card.flush>.card-h{margin:0}

/* tabela de pessoas/equipe */
table.team{width:100%;border-collapse:collapse;font-size:13.5px}
.team th{font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--p-texto-sec);
  text-align:left;padding:10px 12px;border-bottom:1px solid var(--p-linha)}
.team td{padding:10px 12px;border-bottom:1px solid var(--p-linha);vertical-align:middle;font-variant-numeric:tabular-nums}
.team tr:last-child td{border-bottom:0}
.team tbody tr:hover td{background:#F5F8FD}
.team .r,.team .num{text-align:right}
.who{display:flex;align-items:center;gap:10px;min-width:0}
.who b{display:block;font-weight:600}
.who small{color:var(--p-texto-sec);font-size:12px}

/* botões: .btn / .btn.pri (laranja, app.css) / .btn.sm (app.css) + secundário */
.btn.sec{background:var(--p-cartao);color:var(--p-marinho);border-color:var(--p-linha)}
.btn.sec:hover{background:#F8FAFC}
.btn .ico{width:15px;height:15px}
.app .btn:focus-visible,.app a:focus-visible,.app [tabindex]:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:2px}
.app .btn:disabled{opacity:.5;cursor:not-allowed}

/* selos por CATEGORIA (sempre pela cor da categoria — nunca laranja) */
.chip.p,.pill.produtivo{background:var(--p-produtivo-suave);color:var(--p-produtivo-texto)}
.chip.n,.pill.neutro{background:var(--p-neutro-suave);color:var(--p-neutro-texto)}
.chip.x,.pill.improdutivo{background:var(--p-improdutivo-suave);color:var(--p-improdutivo-texto)}
.chip.u,.pill.semclass{background:transparent;color:var(--p-neutro-texto);border:1px dashed #94A3B8}
.chip.b{background:var(--p-azul-suave);color:var(--p-azul)}

/* abas (links do servidor ou botões): a ativa leva .on / aria-current / aria-selected */
.tabs2{display:flex;gap:22px;border-bottom:1px solid var(--p-linha);margin-bottom:16px;flex-wrap:wrap}
.tabs2>a,.tabs2>button,.tabs2>span{padding:8px 2px;font-family:inherit;font-size:14px;font-weight:600;color:var(--p-texto-sec);
  background:none;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;text-decoration:none}
.tabs2>.on,.tabs2>[aria-current="page"],.tabs2>[aria-selected="true"]{color:var(--p-marinho);border-bottom-color:var(--p-marinho)}
.tabs2 em{font-style:normal;font-size:11.5px;font-weight:700;background:var(--p-neutro-suave);color:var(--p-texto-sec);
  border-radius:999px;padding:1px 7px;margin-left:6px}

/* controle segmentado (Hoje / Ontem / 7 dias …) */
.seg{display:inline-flex;background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:10px;padding:3px;gap:2px}
.seg>a,.seg>button,.seg>span{padding:6px 13px;border-radius:7px;font-family:inherit;font-weight:600;font-size:13px;
  color:var(--p-texto-sec);display:inline-flex;align-items:center;gap:6px;background:none;border:0;cursor:pointer;text-decoration:none}
.seg>.on,.seg>[aria-pressed="true"],.seg>[aria-current]{background:var(--p-marinho);color:#fff}
.seg .ico{width:15px;height:15px}

/* janela na página (NUNCA confirm()/alert()/prompt()): <dialog class="dlg"> com showModal(), ou .ovl > .dlg */
.dlg{background:var(--p-cartao);color:var(--p-texto);border:0;border-radius:var(--p-raio-janela);padding:22px;
  width:min(460px,calc(100vw - 32px));box-shadow:0 20px 50px rgba(11,27,58,.3)}
dialog.dlg::backdrop{background:rgba(11,27,58,.45)}
.dlg .dlg-t{margin:0 0 8px;font-size:18px;font-weight:800}
.dlg .acts{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;margin-top:14px}
.ovl{position:fixed;inset:0;background:rgba(11,27,58,.45);display:none;align-items:center;justify-content:center;
  z-index:150;padding:16px}
.ovl.on{display:flex}
.ovl>.dlg{display:grid;gap:14px;max-height:calc(100vh - 32px);overflow:auto}

/* aviso flutuante (protivo.js: Protivo.aviso(texto)) */
.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);background:var(--p-marinho);color:#fff;
  padding:11px 18px;border-radius:10px;font-size:13px;box-shadow:0 10px 30px rgba(11,27,58,.3);opacity:0;
  pointer-events:none;transition:opacity .2s,transform .2s;z-index:200;max-width:min(560px,calc(100vw - 32px));text-align:center}
.toast.on{opacity:1;transform:translate(-50%,0)}
@media (prefers-reduced-motion:reduce){.toast{transition:none}}

/* estado vazio dentro da página */
.empty1{background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:var(--p-raio-cartao);padding:28px;
  display:grid;gap:10px;justify-items:start}
.empty1 .ic{width:44px;height:44px;border-radius:10px;background:var(--p-azul-suave);color:var(--p-azul);display:grid;place-items:center}
.empty1 .ic .ico{width:22px;height:22px}
.empty1 h2,.empty1 h3,.empty1 h5{margin:0;font-size:18px;font-weight:800}
.empty1 p{margin:0;color:var(--p-texto-sec);max-width:60ch}

/* aviso informativo: o .banner.info do app.css; aqui só o ícone dentro dele */
.banner .ico{width:18px;height:18px;flex:none}

/* "só administradores veem" — rótulo de informação sensível (o gate de verdade é no servidor) */
.so-admin{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;color:var(--p-texto-sec);
  background:var(--p-neutro-suave);border:1px dashed #A9B6C9;border-radius:999px;padding:3px 10px;white-space:nowrap}
.so-admin .ico{width:14px;height:14px}

/* avatar (círculo; recebe o ícone de pessoa ou, na onda 4, a ilustração — nunca foto nem iniciais) */
.av{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;overflow:hidden;flex:none;
  background:var(--p-azul-suave);color:var(--p-azul)}
.av svg{display:block}
.av .ico{width:18px;height:18px}
.av.lg{width:52px;height:52px}
.av.sm{width:24px;height:24px}
.av.sm .ico{width:14px;height:14px}

/* ═════════════════════════ 3. COMPONENTES DA T-M03 (R2) — _janela_confirmar.html e _componentes.html ═════════════════════════ */
/* janela de confirmação na página */
dialog.dlg{max-height:calc(100vh - 32px);overflow:auto}
.dlg-confirmar .dlg-x{margin:0;font-size:14px;line-height:1.55;color:var(--p-texto)}
.dlg-digitar{display:grid;gap:6px;margin-top:14px;font-size:13px;font-weight:600;color:var(--p-texto-sec);overflow-wrap:anywhere}
.dlg-digitar b{color:var(--p-texto)}
.dlg-digitar input{font:inherit;font-size:14px;font-weight:500;color:var(--p-texto);background:var(--p-cartao);
  border:1px solid var(--p-linha);border-radius:8px;padding:8px 10px}
.dlg-digitar input:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:1px}
.btn.perigo.cheio{background:var(--p-improdutivo);border-color:var(--p-improdutivo);color:#fff}
.btn.perigo.cheio:hover{filter:brightness(1.06)}
.dlg .btn:disabled{opacity:.5;cursor:not-allowed;filter:none}
.dlg .btn,.painel-lat .btn{font-family:inherit}

/* painel lateral de detalhe (gaveta à direita; <dialog> com showModal) */
dialog.painel-lat{margin:0 0 0 auto;padding:0;border:0;border-radius:0;width:min(560px,100vw);max-width:100vw;
  height:100vh;max-height:100vh;background:var(--p-cartao);color:var(--p-texto);box-shadow:-12px 0 40px rgba(11,27,58,.25)}
dialog.painel-lat[open]{display:flex;flex-direction:column;animation:painel-entra .2s ease-out}
dialog.painel-lat::backdrop{background:rgba(11,27,58,.45)}
.painel-lat .pl-cab{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid var(--p-linha);flex:none}
.painel-lat .pl-cab h2{margin:0;flex:1;min-width:0;font-size:17px;font-weight:800;letter-spacing:-.01em;overflow-wrap:anywhere}
.painel-lat .pl-corpo{flex:1;overflow:auto;padding:16px 18px;display:grid;gap:14px;align-content:start}
@keyframes painel-entra{from{transform:translateX(100%)}to{transform:none}}
@media (prefers-reduced-motion:reduce){dialog.painel-lat[open]{animation:none}}

/* abas na página: sem JS, barra escondida e todos os painéis visíveis; com JS, só o painel da aba ativa */
.tabs2[data-abas="painel"]{display:none}
html.js .tabs2[data-abas="painel"]{display:flex}
html.js .aba-painel.aba-inativa{display:none}
.tabs2>[role="tab"]:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:2px;border-radius:4px}

/* selos de situação (o texto informa; a cor só reforça) — nunca laranja */
.selo{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;line-height:1.3;border-radius:999px;
  padding:3px 10px;white-space:nowrap}
.selo-produtivo{background:var(--p-produtivo-suave);color:var(--p-produtivo-texto)}
.selo-neutro{background:var(--p-neutro-suave);color:var(--p-neutro-texto)}
.selo-improdutivo{background:var(--p-improdutivo-suave);color:var(--p-improdutivo-texto)}
.selo-sem-classificacao{background:transparent;color:var(--p-neutro-texto);border:1px dashed #94A3B8;padding:2px 9px}
.selo-info{background:transparent;color:var(--p-azul);border:1px solid #BFDBFE;padding:2px 9px}
.selo-erro{background:var(--p-improdutivo-suave);color:var(--p-improdutivo-texto);border:1px solid var(--p-improdutivo-borda);padding:2px 9px}
.selo-ok{background:var(--p-azul-suave);color:var(--p-azul)}
.selo-ok::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}

/* avatar ilustrado: o desenho (símbolo do sprite) ocupa o círculo inteiro */
.av.av-ilustrado{background:none}
.av.av-ilustrado svg{width:100%;height:100%}
.sprite-av{position:absolute;width:0;height:0;overflow:hidden}

/* ═════════════════════════ 4. PAINEL › HOJE (R3 — onda 4, T-E03/T-P09) — só dentro de .painel-hoje ═════════════════════════ */
.painel-hoje{display:grid;gap:16px}
.painel-hoje [hidden]{display:none!important}
.painel-hoje .ph{margin-bottom:0}
.painel-hoje .tabs2{margin-bottom:0}
.painel-hoje .sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);
  white-space:nowrap;border:0}
.painel-hoje .ico{width:16px;height:16px;flex:none}
.painel-hoje .lnk{font-size:12.5px;font-weight:600;color:var(--p-azul);text-decoration:none;white-space:nowrap}
.painel-hoje .lnk:hover{text-decoration:underline}
.painel-hoje h2{letter-spacing:-.01em}

/* período num só controle: atalhos + "Escolher datas" (<details>, abre sem JavaScript) */
.seg-periodo{flex-wrap:wrap;position:relative}
.seg-periodo>details{position:relative}
.seg-periodo>details>summary{list-style:none;padding:6px 13px;border-radius:7px;font-weight:600;font-size:13px;
  color:var(--p-texto-sec);display:inline-flex;align-items:center;gap:6px;cursor:pointer;white-space:nowrap}
.seg-periodo>details>summary::-webkit-details-marker{display:none}
.seg-periodo>details.on>summary{background:var(--p-marinho);color:#fff}
.seg-periodo>details>summary:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:2px}
.seg-form{position:absolute;right:0;top:calc(100% + 8px);z-index:30;background:var(--p-cartao);border:1px solid var(--p-linha);
  border-radius:10px;box-shadow:0 10px 28px rgba(11,27,58,.16);padding:12px;display:grid;gap:8px;width:min(280px,86vw)}
.seg-form label{display:grid;gap:4px;font-size:12.5px;font-weight:600;color:var(--p-texto-sec)}
.seg-form input[type="date"]{font:inherit;font-size:14px;color:var(--p-texto);background:var(--p-cartao);
  border:1px solid var(--p-linha);border-radius:8px;padding:7px 9px}
.seg-form input[type="date"]:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:1px}
.seg-dica{margin:0;font-size:12px;color:var(--p-texto-sec)}

/* frase-resumo do topo + aviso de "abrimos no último dia com registros" */
.painel-hoje .summary{background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:var(--p-raio-cartao);
  padding:14px 18px;display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:15px}
.painel-hoje .summary p{margin:0;flex:1 1 320px;min-width:0;line-height:1.5}
.painel-hoje .summary b{font-weight:700;color:var(--p-marinho)}
.painel-hoje .live{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--p-azul);
  background:var(--p-azul-suave);border-radius:999px;padding:4px 10px;flex:none;white-space:nowrap}
.painel-hoje .live .dot{width:8px;height:8px;border-radius:50%;background:var(--p-azul);display:inline-block}
.painel-hoje .aviso-aberto{margin:0;flex-wrap:wrap}
.painel-hoje .aviso-aberto>span{flex:1 1 300px}
.painel-hoje .aviso-aberto .acts{display:flex;gap:8px;flex:0 0 auto;flex-wrap:wrap}
.painel-hoje .sem-class{margin:0}
.painel-hoje .sem-class a{color:inherit;font-weight:700}
.painel-hoje .painel-vazio .acts{display:flex;gap:8px;flex-wrap:wrap}
.painel-hoje .kpis{margin-bottom:0}

/* duas colunas: equipe | atenção + gráfico (uma coluna em tela estreita) */
.cols-painel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,340px);gap:16px;align-items:start}
.col-dir{display:grid;gap:16px;min-width:0}
@media (max-width:1099.98px){.cols-painel{grid-template-columns:minmax(0,1fr)}}
.painel-hoje .card.flush>.card-h{flex-wrap:wrap}
.painel-hoje .card-h h2{margin:0;font-size:15px;font-weight:700}

/* lista da equipe */
.tabela-rola{overflow-x:auto}
.painel-hoje .team th:first-child,.painel-hoje .team td:first-child{padding-left:16px}
.painel-hoje .team .who small{display:block}
.painel-hoje .team a.lk-a{color:var(--p-marinho);font-weight:600;text-decoration:none}
.painel-hoje .team a.lk-a:hover{text-decoration:underline}
html.js .painel-hoje tbody.clicavel tr.lk{cursor:pointer}
.painel-hoje .team tbody tr.lk:focus-within td{background:#F5F8FD}
.painel-hoje .team .fora-j{display:block;font-size:11.5px;color:var(--p-texto-sec)}
.painel-hoje .team .pct{font-weight:700}
.painel-hoje .team .pct.low{color:var(--p-improdutivo-texto)}
.painel-hoje .team .go{color:#9AA8BF;width:28px;text-align:right}
.painel-hoje .team .go .ico{width:16px;height:16px}
.eq-ferr{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.eq-ferr .busca{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--p-linha);border-radius:8px;
  padding:4px 8px;background:var(--p-cartao);color:var(--p-texto-sec)}
.eq-ferr .busca input{font:inherit;font-size:13px;border:0;outline:0;background:transparent;color:var(--p-texto);width:150px}
.eq-ferr .busca:focus-within{outline:3px solid rgba(29,78,216,.45);outline-offset:1px}
.eq-ferr .ordem{font-size:12.5px;font-weight:600;color:var(--p-texto-sec);display:inline-flex;align-items:center;gap:6px}
.eq-ferr select{font:inherit;font-size:13px;font-weight:600;color:var(--p-texto);background:var(--p-cartao);
  border:1px solid var(--p-linha);border-radius:8px;padding:4px 6px}

/* etiqueta de presença (o TEXTO informa; a cor só reforça — nunca laranja) */
.painel-hoje .st{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;border-radius:999px;
  padding:3px 10px;white-space:nowrap}
.painel-hoje .st .dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex:none;background:currentColor}
.painel-hoje .st-on{background:var(--p-azul-suave);color:var(--p-azul)}
.painel-hoje .st-idle,.painel-hoje .st-fora,.painel-hoje .st-extra,.painel-hoje .st-sem{background:var(--p-neutro-suave);color:var(--p-neutro-texto)}
.painel-hoje .st-off{background:var(--p-improdutivo-suave);color:var(--p-improdutivo-texto)}
.painel-hoje .st-nunca{background:transparent;color:var(--p-neutro-texto);border:1px dashed #A9B6C9;padding:2px 9px}
.painel-hoje .st-nunca .dot{background:transparent;border:1.5px solid currentColor}

/* barra empilhada produtivo / neutro / improdutivo (cores da categoria) */
.painel-hoje .stack{display:flex;height:10px;border-radius:5px;overflow:hidden;background:var(--p-linha);width:min(170px,100%)}
.painel-hoje .stack>i{display:block;height:100%}
.painel-hoje .stack>i.p,.painel-hoje .leg i.p{background:var(--p-produtivo)}
.painel-hoje .stack>i.n,.painel-hoje .leg i.n{background:var(--p-neutro)}
.painel-hoje .stack>i.x,.painel-hoje .leg i.x{background:var(--p-improdutivo)}
.painel-hoje .leg{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--p-texto-sec);padding:12px 16px;
  border-top:1px solid var(--p-linha)}
.painel-hoje .leg span{display:inline-flex;align-items:center;gap:6px}
.painel-hoje .leg i{width:10px;height:10px;border-radius:3px;display:inline-block}
.painel-hoje .leg .leg-dir{margin-left:auto}

/* "Precisa de atenção": itens acionáveis */
.att-list{display:grid}
.att-i{display:grid;gap:6px;padding:14px 16px;border-bottom:1px solid var(--p-linha)}
.att-i:last-child{border-bottom:0}
.att-i b{font-weight:700;color:var(--p-marinho);overflow-wrap:anywhere}
.att-i p{margin:0;color:var(--p-texto-sec);font-size:13px;line-height:1.45}
.att-i .btn{justify-self:start;font-family:inherit}
.att-vazio{margin:0;padding:14px 16px;color:var(--p-texto-sec);font-size:13px}
.att-mais{padding:10px 16px 14px;font-size:12.5px;color:var(--p-texto-sec);border-top:1px solid var(--p-linha)}

/* gráfico de horas */
.painel-hoje .chart{padding:10px 14px 4px}
.painel-hoje .chart .gf-svg{max-width:100%}
.painel-hoje .chart-nota{margin:4px 0 6px;font-size:11.5px;color:var(--p-texto-sec)}

/* faixa de transparência do rodapé */
.painel-hoje .trans-note{display:flex;gap:12px;align-items:flex-start;background:var(--p-cartao);border:1px solid var(--p-linha);
  border-radius:var(--p-raio-cartao);padding:14px 18px;font-size:13px;color:var(--p-texto-sec)}
.painel-hoje .trans-note .ico{color:var(--p-azul);width:20px;height:20px}
.painel-hoje .trans-note p{margin:0;line-height:1.5}
.painel-hoje .trans-note b{color:var(--p-texto)}
@media (max-width:640px){.painel-hoje .ph{align-items:flex-start}.seg-form{right:auto;left:0}}

/* ═════════════ 5. AJUDA E SUPORTE (R4 — onda 4, T-E29/T-E30: ajuda.html, suporte/*, sugestoes/*, tutoriais/index) ═════════════ */
/* menu (base.html R21): "Ajuda e suporte" é link; os sub-itens aparecem embaixo só dentro da área */
.side .grp-ajuda{display:grid;gap:1px}

/* cabeçalho da área; o botão principal abre o formulário (<details> — sem JavaScript) */
.ajuda-ph{align-items:flex-start}
details.novo-ajuda>summary{list-style:none}
details.novo-ajuda>summary::-webkit-details-marker{display:none}
details.novo-ajuda[open]{flex-basis:100%;display:grid;gap:12px}
details.novo-ajuda[open]>summary{justify-self:end}
/* aberto, o botão de abrir deixa de ser laranja: o laranja fica só no botão de enviar (um principal por vez) */
details.novo-ajuda[open]>summary.btn.pri{background:var(--p-cartao);color:var(--p-marinho);border-color:var(--p-linha)}
.novo-form{display:grid;gap:12px;margin:0}
.novo-form h2{margin:0;font-size:17px;font-weight:800;letter-spacing:-.01em;color:var(--p-marinho)}
.novo-form label,.responder>label{display:grid;gap:5px;font-size:13px;font-weight:600;color:var(--p-texto)}
.novo-form label .muted{font-weight:500}
.novo-form input[name],.novo-form select,.novo-form textarea,.responder textarea{width:100%;box-sizing:border-box}
.novo-form input[type="file"]{width:auto}
.novo-form textarea,.responder textarea{resize:vertical;font-size:13.5px}
.novo-linha{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.novo-form .small,.responder .small{margin:0}
.novo-acoes{display:flex;justify-content:flex-end;gap:8px}

/* barra de filtros (situação + período) e nota de quem vê */
.ajuda-barra{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:8px}
.ajuda-barra .seg{flex-wrap:wrap}
.ajuda-nota{margin:0 0 12px;font-size:12.5px;color:var(--p-texto-sec)}
.ajuda-pag{display:flex;gap:8px;margin-top:12px}

/* lista de chamados / sugestões (a tabela é a .team da seção 2); em tela estreita ela rola DENTRO do cartão */
.ajuda-lista{overflow-x:auto}
.ajuda-tab td{vertical-align:top}
.ajuda-tab td:first-child{min-width:170px}
.ajuda-tab td:nth-child(3){white-space:nowrap}
.ajuda-tab small{display:block;margin-top:2px;font-size:12px;color:var(--p-texto-sec)}
.ajuda-tab .selo+small{margin-top:4px}
.ajuda-assunto{font-weight:600;color:var(--p-marinho);text-decoration:none;overflow-wrap:anywhere}
.ajuda-assunto:hover{text-decoration:underline}
.ajuda-tab tr.nova .ajuda-assunto{font-weight:800}
.ponto-novo{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--p-azul);margin-right:7px;
  vertical-align:1px}
.ajuda-resposta{max-width:360px}
.ajuda-resposta .trecho{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
  overflow-wrap:anywhere}

/* conversa de um chamado / sugestão */
.ajuda-voltar{margin:0 0 10px;font-size:13px}
.conversa{display:grid;gap:14px}
.conversa-cab{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
.conversa-cab h2{margin:0;font-size:19px;font-weight:800;letter-spacing:-.01em;color:var(--p-marinho);overflow-wrap:anywhere}
.conversa-cab p{margin:3px 0 0;font-size:12.5px;color:var(--p-texto-sec)}
.conversa .banner{margin-bottom:0}
.msgs{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.msg{border:1px solid var(--p-linha);border-radius:10px;padding:10px 12px;font-size:13.5px;background:var(--p-cartao)}
.msg>small{display:block;margin-bottom:4px;font-size:12px;color:var(--p-texto-sec)}
.msg.sup{border-left:3px solid var(--p-azul);background:#F8FAFF}
.msg-corpo{white-space:pre-wrap;overflow-wrap:anywhere}
.msg-anexos{margin-top:8px;font-size:12.5px}
.ask{display:flex;flex-wrap:wrap;align-items:center;gap:10px;background:var(--p-fundo);border:1px solid var(--p-linha);
  border-radius:10px;padding:10px 12px;font-size:13.5px}
.ask form{margin:0}
.ask-t{font-weight:700}
.ask small{flex-basis:100%;font-size:12px;color:var(--p-texto-sec)}
.responder{display:grid;gap:10px;border-top:1px solid var(--p-linha);padding-top:14px}

/* tutoriais: cartões por tarefa/tela agrupados por área + busca (só com JavaScript) */
.tut-topo{display:grid;gap:10px;margin-bottom:14px}
.tut-sub{margin:0;font-size:13.5px;color:var(--p-texto-sec)}
.tut-busca{display:none;align-items:center;gap:8px;max-width:520px;background:var(--p-cartao);border:1px solid var(--p-linha);
  border-radius:10px;padding:4px 12px;color:var(--p-texto-sec)}
html.js .tut-busca{display:flex}
.tut-busca .ico{width:16px;height:16px;flex:none}
.app .tut-busca input{flex:1;min-width:0;border:0;padding:6px 0;background:transparent}
.tut-busca:focus-within{outline:3px solid rgba(29,78,216,.45);outline-offset:1px}
.tut-status{margin:0;font-size:12.5px;color:var(--p-texto-sec)}
.tut-grupo{margin-bottom:16px}
.tut-grupo-t{margin:0 0 8px;font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--p-texto-sec)}
.tut-lista{display:grid;gap:8px}
.tut-item{background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:var(--p-raio-cartao)}
.tut-item[hidden],.tut-grupo[hidden],.tut-vazio[hidden]{display:none}
.tut-det>summary{list-style:none;display:flex;align-items:center;gap:10px;padding:12px 16px;cursor:pointer;
  font-size:14px;font-weight:700;color:var(--p-marinho)}
.tut-det>summary::-webkit-details-marker{display:none}
.tut-det>summary:hover{background:#F8FAFC}
.tut-det>summary:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:-3px;border-radius:var(--p-raio-cartao)}
.tut-t{flex:1;min-width:0}
.tut-seta{display:inline-flex;color:var(--p-texto-sec);transition:transform .15s}
.tut-seta .ico{width:16px;height:16px}
.tut-det[open] .tut-seta{transform:rotate(180deg)}
.tut-corpo{padding:4px 16px 14px;border-top:1px solid var(--p-linha);font-size:13.5px}
.tut-corpo h4{margin:14px 0 6px;font-size:13px}
.tut-corpo p,.tut-corpo li{line-height:1.6}
.tut-corpo ul,.tut-corpo ol{margin:0 0 10px 18px}
.tut-corpo table{margin:6px 0 10px}
.tut-item:target{border-color:var(--p-azul)}
@media (prefers-reduced-motion:reduce){.tut-seta{transition:none}}

/* ═════════════ 6. DETALHE DO COLABORADOR (R5 — onda 4, T-E06/T-P04/T-P12: timeline.html R12) — só dentro de .colab-det ═════════════ */
.colab-det{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;min-width:0}
.colab-det>*{min-width:0}
.colab-det [hidden]{display:none!important}
.colab-det .ph{margin-bottom:0;align-items:center}
.colab-det .ico{width:16px;height:16px;flex:none}
.colab-det .sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);
  white-space:nowrap;border:0}
.colab-det .lnk{font-size:12.5px;font-weight:600;color:var(--p-azul);text-decoration:none;white-space:nowrap}
.colab-det .lnk:hover{text-decoration:underline}
.colab-det h2,.colab-det h3{letter-spacing:-.01em}
.colab-det .card-h h3{margin:0;font-size:15px;font-weight:700}
.colab-det .card.flush>.card-h{flex-wrap:wrap}

/* trilha de navegação + pessoa anterior / próxima */
.colab-det .crumb{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:12.5px;color:var(--p-texto-sec)}
.colab-det .crumb a{color:var(--p-texto-sec);font-weight:600;text-decoration:none}
.colab-det .crumb a:hover{color:var(--p-azul);text-decoration:underline}
.colab-det .crumb b{color:var(--p-texto);font-weight:600;overflow-wrap:anywhere}
.colab-det .crumb .ico{width:14px;height:14px}
.colab-det .crumb-nav{margin-left:auto;display:inline-flex;gap:6px;flex-wrap:wrap}

/* cabeçalho da pessoa: avatar, nome, cargo · equipe, situação de agora; ações à direita */
.colab-det .prof{display:flex;align-items:center;gap:14px;min-width:0}
.colab-det .prof h1{margin:0;font-size:24px;font-weight:800;letter-spacing:-.02em;color:var(--p-marinho);overflow-wrap:anywhere}
.colab-det .prof p{margin:3px 0 0;display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13px;color:var(--p-texto-sec)}
.colab-det .st{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;border-radius:999px;
  padding:3px 10px;white-space:nowrap}
.colab-det .st .dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex:none;background:currentColor}
.colab-det .st-on{background:var(--p-azul-suave);color:var(--p-azul)}
.colab-det .st-idle,.colab-det .st-fora,.colab-det .st-extra{background:var(--p-neutro-suave);color:var(--p-neutro-texto)}
.colab-det .st-off{background:var(--p-improdutivo-suave);color:var(--p-improdutivo-texto)}
.colab-det .st-nunca{background:transparent;color:var(--p-neutro-texto);border:1px dashed #A9B6C9;padding:2px 9px}
.colab-det .st-nunca .dot{background:transparent;border:1.5px solid currentColor}
.colab-det .acoes{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.colab-det .mais-acoes{position:relative}
.colab-det .mais-acoes>summary{list-style:none}
.colab-det .mais-acoes>summary::-webkit-details-marker{display:none}
.colab-det .mais-acoes[open]>summary{background:#F8FAFC}
.colab-det .mais-acoes .menu{right:0;top:calc(100% + 6px);min-width:220px}

/* aviso "abrimos no último dia com registros" */
.colab-det .aviso-aberto{margin:0;flex-wrap:wrap}
.colab-det .aviso-aberto>span{flex:1 1 300px}
.colab-det .aviso-aberto .acts{display:flex;gap:8px;flex:0 0 auto;flex-wrap:wrap}

/* barra do período: Dia / Semana / 30 dias, setas e faixa de dias com bolinha */
.colab-det .barra-dias{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 14px;margin:0}
.colab-det .seta{width:32px;height:32px;border-radius:8px;border:1px solid var(--p-linha);display:inline-grid;place-items:center;
  background:var(--p-cartao);color:var(--p-marinho);flex:none}
.colab-det .seta.ant .ico{transform:rotate(180deg)}
.colab-det .seta.off{opacity:.35}
.colab-det .seta:hover:not(.off){background:#F8FAFC}
.colab-det .dias{display:flex;gap:4px;list-style:none;margin:0;padding:0 0 2px;overflow-x:auto;min-width:0;
  flex:1 1 240px;scrollbar-width:thin}
.colab-det .dias a{display:grid;justify-items:center;gap:3px;padding:6px 8px;border-radius:9px;font-size:11px;
  color:var(--p-texto-sec);text-decoration:none;min-width:38px}
.colab-det .dias a b{font-size:14px;color:var(--p-texto)}
.colab-det .dias a:hover{background:var(--p-neutro-suave)}
.colab-det .dias a.fds:not(.on){color:#94A3B8}
.colab-det .dias a.fds:not(.on) b{color:#94A3B8}
.colab-det .dias a.on{background:var(--p-marinho);color:#B9C6DD}
.colab-det .dias a.on b{color:#fff}
.colab-det .d{width:6px;height:6px;border-radius:50%;background:var(--p-azul);display:inline-block}
.colab-det .d.no{background:transparent;border:1px solid #CBD5E1}
.colab-det .dias a.on .d{background:#93B4FA}
.colab-det .dias a.on .d.no{background:transparent;border-color:#5B6B85}
.colab-det .leg-dias{margin-left:auto;font-size:12px;color:var(--p-texto-sec);display:inline-flex;align-items:center;gap:6px;
  flex-wrap:wrap}
.colab-det .escolher-dia{position:relative}
.colab-det .escolher-dia>summary{list-style:none;padding:6px 10px;border-radius:8px;font-weight:600;font-size:13px;
  color:var(--p-texto-sec);display:inline-flex;align-items:center;gap:6px;cursor:pointer;white-space:nowrap}
.colab-det .escolher-dia>summary::-webkit-details-marker{display:none}
.colab-det .escolher-dia>summary:hover,.colab-det .escolher-dia[open]>summary{background:var(--p-neutro-suave)}
.colab-det .escolher-dia .seg-form{left:0;right:auto}
.colab-det .dia-t{margin:0;font-size:18px;font-weight:800;color:var(--p-marinho)}

/* frase-resumo e indicadores */
.colab-det .summary{background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:var(--p-raio-cartao);
  padding:14px 18px;font-size:15px}
.colab-det .summary p{margin:0;line-height:1.5}
.colab-det .summary b{font-weight:700;color:var(--p-marinho)}
.colab-det .kpis{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin-bottom:0}
.colab-det .sw{width:10px;height:10px;border-radius:3px;display:inline-block;margin-right:6px;vertical-align:-1px}
.colab-det .sw.p{background:var(--p-produtivo)}
.colab-det .sw.n{background:var(--p-neutro)}
.colab-det .sw.x{background:var(--p-improdutivo)}
.colab-det .empty1 .acts{display:flex;gap:8px;flex-wrap:wrap}
.colab-det .empty1 h3{margin:0;font-size:18px;font-weight:800}

/* linha do tempo no eixo real de horas (T-P04) */
.colab-det .lt{padding:16px 16px 8px;display:grid;gap:6px}
.colab-det .lt-track{position:relative;height:36px;border-radius:6px;background:var(--p-fundo);border:1px solid var(--p-linha);
  overflow:hidden}
.colab-det .lt-track>i{position:absolute;top:0;bottom:0;min-width:1px}
.colab-det .lt-track>i:hover{box-shadow:inset 0 0 0 2px var(--p-marinho);z-index:1}
.colab-det .lt-track>i.p,.colab-det .leg i.p{background-color:var(--p-produtivo)}
.colab-det .lt-track>i.n,.colab-det .leg i.n{background-color:var(--p-neutro)}
.colab-det .lt-track>i.x,.colab-det .leg i.x{background-color:var(--p-improdutivo)}
.colab-det .lt-track>i.o,.colab-det .leg i.o{background-color:#C9D3E0}
.colab-det .lt-track>i.sr,.colab-det .leg i.sr{background:repeating-linear-gradient(45deg,#F1F4F8 0 3px,#AEB9CA 3px 5px)}
.colab-det .lt-track>i.he,.colab-det .leg i.he{background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.6) 0 3px,
  transparent 3px 7px)}
.colab-det .lt-ax{position:relative;height:16px;font-size:11px;color:var(--p-texto-sec)}
.colab-det .lt-ax span{position:absolute;top:0;transform:translateX(-50%);white-space:nowrap}
.colab-det .lt-ax span:first-child{transform:none}
.colab-det .lt-ax span:last-child{transform:translateX(-100%)}
.colab-det .lt-dica{margin:2px 0 0;font-size:12.5px;color:var(--p-texto-sec);min-height:1.4em}
.colab-det .leg{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--p-texto-sec);padding:12px 16px;
  border-top:1px solid var(--p-linha)}
.colab-det .leg span{display:inline-flex;align-items:center;gap:6px}
.colab-det .leg i{width:10px;height:10px;border-radius:3px;display:inline-block}
.colab-det .como-ler{border-top:1px solid var(--p-linha)}
.colab-det .como-ler>summary{padding:12px 16px;font-size:13px;font-weight:700;color:var(--p-azul);cursor:pointer}
.colab-det .como-ler>summary:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:-3px}
.colab-det .como-ler ul{margin:0;padding:0 16px 14px 34px;font-size:13px;color:var(--p-texto-sec);line-height:1.55}
.colab-det .como-ler b{color:var(--p-texto)}

/* duas colunas: programas | capturas + pen drives (uma coluna em tela estreita) */
.colab-det .cols-det{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}
.colab-det .col-dir-det{display:grid;gap:16px;min-width:0}
@media (max-width:1099.98px){.colab-det .cols-det{grid-template-columns:minmax(0,1fr)}}
.colab-det .vazio-card{margin:0;padding:14px 16px;color:var(--p-texto-sec);font-size:13px}
.colab-det .nota{margin:0;padding:10px 16px 12px;font-size:12.5px;color:var(--p-texto-sec);display:flex;gap:8px;
  align-items:flex-start;border-top:1px solid var(--p-linha)}
.colab-det .nota .ico{color:var(--p-azul)}

/* programas e sites do dia */
.colab-det .tabela-rola{overflow-x:auto}
.colab-det .progs td:first-child{padding-left:16px}
.colab-det .progs td:last-child{padding-right:16px}
.colab-det .progs td small{display:block;font-size:12px;color:var(--p-texto-sec);overflow-wrap:anywhere}
.colab-det .bar1{height:8px;border-radius:4px;background:var(--p-linha);overflow:hidden;width:min(110px,100%)}
.colab-det .bar1>i{display:block;height:100%}
.colab-det .bar1>i.p{background:var(--p-produtivo)}
.colab-det .bar1>i.n{background:var(--p-neutro)}
.colab-det .bar1>i.x{background:var(--p-improdutivo)}
.colab-det .bar1>i.u{background:#CBD5E1}
.colab-det .mais-itens{margin:0;padding:10px 16px 12px;font-size:12.5px;color:var(--p-texto-sec);border-top:1px solid var(--p-linha)}

/* capturas: filtro por hora em botões, quadros com "09:05 · Excel" (T-P12), páginas */
.colab-det .horas{margin:12px 16px 0;flex-wrap:wrap}
.colab-det .horas>a{padding:5px 10px;font-size:12px}
.colab-det .thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;padding:14px 16px}
.colab-det .thumb{display:grid;border:1px solid var(--p-linha);border-radius:8px;overflow:hidden;background:var(--p-cartao);
  text-decoration:none;color:inherit;min-width:0}
.colab-det a.thumb:hover{border-color:var(--p-azul)}
.colab-det .thumb .img{display:block;height:auto;aspect-ratio:16/10;filter:none;
  background:linear-gradient(160deg,#C7D2E3,#E6EBF3 45%,#D4DDEA)}
.colab-det .thumb .img::after{inset:10px}
.colab-det .thumb .cap{display:block;padding:6px 8px;font-size:12px;color:var(--p-texto-sec);white-space:nowrap;overflow:hidden;
  text-overflow:ellipsis}
.colab-det .thumb .cap b{color:var(--p-texto);font-variant-numeric:tabular-nums}
.colab-det .cap-pag{display:flex;gap:8px;flex-wrap:wrap;padding:0 16px 12px}

/* pen drives e discos externos: conectado em azul, removido em cinza (nunca laranja) */
.colab-det .ev{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 16px;
  border-bottom:1px solid var(--p-linha);font-size:13px}
.colab-det .ev b{font-variant-numeric:tabular-nums}

/* faixa de transparência do rodapé */
.colab-det .trans-note{display:flex;gap:12px;align-items:flex-start;background:var(--p-cartao);border:1px solid var(--p-linha);
  border-radius:var(--p-raio-cartao);padding:14px 18px;font-size:13px;color:var(--p-texto-sec)}
.colab-det .trans-note .ico{color:var(--p-azul);width:20px;height:20px}
.colab-det .trans-note p{margin:0;line-height:1.5}
.colab-det .trans-note b{color:var(--p-texto)}
@media (max-width:640px){
  .colab-det .crumb-nav{margin-left:0}
  .colab-det .leg-dias{margin-left:0}
  .colab-det .prof h1{font-size:20px}
}

/* ═════════════ 7. PROGRAMAS E SITES (R6 — onda 4, T-E07/T-P11: aplicativos.html R6) — só dentro de .prog-sites ═════════════ */
/* A tela usa também .colab-det (seção 6: trilha, cabeçalho, barra do período, barra .bar1, legenda, faixa). */
.prog-sites .barra-per{gap:8px 10px}
.prog-sites .per-seta .ico{width:14px;height:14px}
.prog-sites .per-seta.ant .ico{transform:rotate(180deg)}

/* frase do topo (programa ou site fora do padrão) — azul de informação, nunca laranja */
.prog-sites .destaque{margin:0;align-items:flex-start}
.prog-sites .destaque>.ico{color:var(--p-azul);margin-top:2px}
.prog-sites .destaque p{margin:0;line-height:1.5}
.prog-sites .destaque b{color:var(--p-marinho)}
.prog-sites .destaque .criterio{margin-top:4px;font-size:12.5px;color:var(--p-texto-sec)}

/* tabela de 7 colunas */
.prog-sites .ps td.nome b{font-weight:700;overflow-wrap:anywhere}
.prog-sites .ps .tit-lnk{display:inline-block;margin-top:3px;font-size:12px}
.prog-sites .ps td.r,.prog-sites .ps td.hor,.prog-sites .ps th.hor{white-space:nowrap}
.prog-sites .ps td:first-child,.prog-sites .ps th:first-child{padding-left:16px}
.prog-sites .ps td:last-child,.prog-sites .ps th:last-child{padding-right:16px}
.prog-sites .bar-cel{display:flex;align-items:center;gap:8px;white-space:nowrap}
.prog-sites .bar-cel .bar1{flex:none;width:110px}
/* dica (?) do cabeçalho abre PARA BAIXO e alinhada à coluna (a tabela rola dentro do cartão: para cima seria cortada) */
.prog-sites .ps th .ajuda::after{bottom:auto;top:calc(100% + 7px);left:0;transform:none}
.prog-sites .ps th.r .ajuda::after,.prog-sites .ps th.hor .ajuda::after{left:auto;right:0}

/* classificação: selo + "Classificar" (administrador: botões na própria linha; abrem DENTRO da célula) */
.prog-sites .cl-cel{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
.prog-sites details.classif>summary{list-style:none;cursor:pointer;display:inline}
.prog-sites details.classif>summary::-webkit-details-marker{display:none}
.prog-sites details.classif>summary:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:2px;border-radius:4px}
.prog-sites .classif-menu{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px}
.prog-sites .classif-menu .btn{font-family:inherit}
.prog-sites .classif-msg{display:block;margin-top:4px;font-size:12px;color:var(--p-texto-sec)}
.prog-sites .classif-msg:empty{display:none}

/* títulos de janela de UMA linha (só com a caixa "titulos" da Política de coleta) */
.prog-sites .tit-linha td{background:#F8FAFC}
.prog-sites .tit-tab{width:100%;margin-top:6px;border-collapse:collapse;font-size:12.5px}
.prog-sites .tit-tab th{text-transform:none;letter-spacing:normal;font-size:12px;padding:5px 8px}
.prog-sites .tit-tab td{padding:5px 8px;overflow-wrap:anywhere}
.prog-sites .tit-linha p{margin:6px 0 0;font-size:12.5px;color:var(--p-texto-sec)}

.prog-sites .leg .leg-dir{margin-left:auto}
@media (max-width:640px){.prog-sites .leg .leg-dir{margin-left:0}}

/* ═════════════ 8. ÁREA EQUIPE (R7 — onda 4, T-E08/T-E17/T-E18: equipe.html R1, usuarios_editar.html R6) — só dentro de .equipe-area / .cadastro ═════════════ */
/* a coluna da grade NUNCA cresce com a tabela (ela rola dentro do cartão): sem rolagem lateral da página no celular */
.equipe-area,.cadastro{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;min-width:0}
.equipe-area [hidden],.cadastro [hidden]{display:none!important}
.equipe-area .ph,.cadastro .ph{margin-bottom:0}
.equipe-area .tabs2,.cadastro .tabs2{margin-bottom:0}
.equipe-area .banner,.cadastro .banner{margin-bottom:0}
.equipe-area .sr,.cadastro .sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);
  white-space:nowrap;border:0}
.equipe-area .ico,.cadastro .ico{width:16px;height:16px;flex:none}
.equipe-area .lnk,.cadastro .lnk{font-size:12.5px;font-weight:600;color:var(--p-azul);text-decoration:none}
.equipe-area .lnk:hover,.cadastro .lnk:hover{text-decoration:underline}
.equipe-area .card-h h2,.cadastro .card-h h2{margin:0;font-size:15px;font-weight:700}
.equipe-area .card-h small{display:block;font-size:12.5px;color:var(--p-texto-sec);font-weight:500}
.equipe-area .small,.cadastro .small{font-size:12.5px}
.equipe-area .bloco,.cadastro .bloco{display:block;font-size:11.5px;color:var(--p-texto-sec);font-weight:500;margin-top:2px}

/* cabeçalho: título + botão principal; o formulário abre embaixo (<details>, sem JavaScript) */
.eq-ph{align-items:flex-start}
.eq-acoes{display:flex;gap:8px;align-items:flex-start;flex-wrap:wrap;justify-content:flex-end}
details.eq-novo>summary{list-style:none}
details.eq-novo>summary::-webkit-details-marker{display:none}
details.eq-novo[open]{flex-basis:100%;display:grid;gap:12px}
details.eq-novo[open]>summary{justify-self:end}
/* aberto, o botão de abrir deixa de ser laranja: o laranja fica só no botão de enviar (um principal por vez) */
details.eq-novo[open]>summary.btn.pri{background:var(--p-cartao);color:var(--p-marinho);border-color:var(--p-linha)}
.equipe-area .novo-form{width:min(720px,100%);justify-self:end}

/* campos com rótulo em cima (cadastro, nova equipe, filtros) */
.equipe-area label.campo,.cadastro label.campo{display:grid;gap:5px;font-size:12.5px;font-weight:600;color:var(--p-texto-sec)}
.equipe-area label.campo input,.equipe-area label.campo select,.cadastro label.campo input,.cadastro label.campo select{
  width:100%;box-sizing:border-box;font-weight:500;color:var(--p-texto)}
.equipe-area .com-erro input,.equipe-area .com-erro select,.cadastro .com-erro input,.cadastro .com-erro select{
  border-color:var(--p-improdutivo);box-shadow:0 0 0 1px var(--p-improdutivo)}
.equipe-area .campo-erro,.cadastro .campo-erro{font-size:12px;font-weight:600;color:var(--p-improdutivo-texto)}
.eq-convite{display:grid;gap:8px}
.eq-convite p{margin:0}

/* faixa da situação dos agentes */
.ag-faixa{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.ag-card{background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:var(--p-raio-cartao);padding:12px 14px;
  display:grid;gap:4px;align-content:start}
.ag-card>b{font-size:24px;font-weight:800;color:var(--p-marinho);font-variant-numeric:tabular-nums;line-height:1.15}
.ag-card>b small{font-size:13px;font-weight:600;color:var(--p-texto-sec)}
.ag-card>small{font-size:12px;color:var(--p-texto-sec)}
.ag-links{font-size:12.5px}

/* situação do agente e do acesso: bolinha + TEXTO (a cor só reforça; nunca laranja) */
.ag,.acesso{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;white-space:nowrap}
.ag>i,.acesso>i{width:8px;height:8px;border-radius:50%;display:inline-block;flex:none}
.ag-funcionando{color:var(--p-azul)}.ag-funcionando>i{background:var(--p-azul)}
.ag-sem_conexao{color:var(--p-improdutivo-texto)}.ag-sem_conexao>i{background:var(--p-improdutivo)}
.ag-nao_instalado{color:var(--p-neutro-texto)}.ag-nao_instalado>i{background:transparent;border:1.5px solid currentColor;box-sizing:border-box}
.ac-ativo{color:var(--p-azul)}.ac-ativo>i{background:var(--p-azul)}
.ac-pendente{color:var(--p-neutro-texto)}.ac-pendente>i{background:var(--p-neutro)}
.ac-desativado{color:var(--p-neutro-texto)}.ac-desativado>i{background:transparent;border:1.5px solid currentColor;box-sizing:border-box}

/* avisos de cadastro (2 equipes, sem gestor) */
.eq-alerta{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center}
.eq-alerta-t{display:grid;gap:2px;min-width:0}
.eq-alerta-acoes{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.eq-alerta-acoes form{margin:0}
@media (max-width:760px){.eq-alerta{grid-template-columns:auto minmax(0,1fr)}.eq-alerta-acoes{grid-column:1/-1;justify-content:flex-start}}

/* tabelas (a .team da seção 2) */
/* a rolagem da tabela também contém o texto só para leitor de tela (.sr é absoluto) — senão ele alarga a página */
.equipe-area .tabela-rola,.cadastro .tabela-rola{position:relative}
.equipe-area .team th:first-child,.equipe-area .team td:first-child{padding-left:16px}
.equipe-area .team td{vertical-align:top}
.equipe-area .team .r{text-align:right}
.eq-tab .eq-nome a{color:var(--p-marinho);text-decoration:none}
.eq-tab .eq-nome a:hover{text-decoration:underline}
.eq-tab .eq-nome small,.eq-tab .hor small{display:block;font-size:12px;color:var(--p-texto-sec);font-weight:500}
.eq-tab tr.aberta td{background:var(--p-azul-suave)}
.gst{display:flex;align-items:center;gap:8px;font-size:13px}
.avs{display:inline-flex;align-items:center}
.avs .av{margin-right:-6px;box-shadow:0 0 0 2px var(--p-cartao)}
.pes-tab .who small{display:block}
.pes-nome{font-weight:700;color:var(--p-marinho);text-decoration:none}
.pes-nome:hover{text-decoration:underline}
.acesso-cel small,.custo-cel small{display:block;font-size:11.5px;color:var(--p-texto-sec);font-weight:500;margin-top:2px}
.custo-cel{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}
.form-inline{display:inline;margin:0}
.lnk-btn{font:inherit;font-size:12px;font-weight:700;color:var(--p-azul);background:none;border:0;padding:2px 0;cursor:pointer}
.lnk-btn:hover{text-decoration:underline}
.lnk-btn:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:2px;border-radius:4px}

/* ação principal da linha + menu "⋯" (<details>; abre DENTRO da célula — a rolagem da tabela não corta) */
.acoes-linha{white-space:nowrap}
.acoes-linha>.btn{vertical-align:top}
details.mais-acoes{display:inline-block;vertical-align:top;text-align:left;white-space:normal}
details.mais-acoes>summary{list-style:none;cursor:pointer;font-weight:800;color:var(--p-texto-sec);border:1px solid var(--p-linha);
  border-radius:6px;line-height:26px;width:32px;text-align:center;background:var(--p-cartao);margin-left:6px}
details.mais-acoes>summary::-webkit-details-marker{display:none}
details.mais-acoes>summary:hover,details.mais-acoes[open]>summary{background:var(--p-neutro-suave)}
details.mais-acoes>summary:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:2px}
.menu-acoes{display:grid;gap:1px;margin-top:6px;padding:6px;border:1px solid var(--p-linha);border-radius:10px;background:var(--p-cartao);
  box-shadow:0 6px 18px rgba(11,27,58,.10);width:min(260px,70vw);font-size:13px}
.menu-acoes>a,.menu-acoes .mi{display:block;width:100%;text-align:left;padding:7px 10px;border-radius:7px;color:var(--p-texto);
  text-decoration:none;font:inherit;font-size:13px;background:none;border:0;cursor:pointer}
.menu-acoes>a:hover,.menu-acoes .mi:hover{background:var(--p-neutro-suave)}
.menu-acoes .mi.perigo-txt{color:var(--p-improdutivo-texto)}
.menu-acoes hr{border:0;border-top:1px solid var(--p-linha);margin:4px 0}
.menu-acoes form{margin:0}
.menu-acoes .menu-rot{display:block;padding:6px 10px 2px;font-size:11.5px;font-weight:700;color:var(--p-texto-sec)}
.menu-acoes .mover-form .mi{padding-left:20px}
.menu-acoes .desligado{display:block;padding:7px 10px;color:var(--p-texto-sec);cursor:not-allowed}
.menu-acoes .desligado small{display:block;font-size:11.5px;margin-top:2px}

/* filtros e busca da lista */
.eq-filtros{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;padding:12px 16px;border-bottom:1px solid var(--p-linha)}
.eq-filtros .busca{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--p-linha);border-radius:8px;padding:2px 8px;
  background:var(--p-cartao);color:var(--p-texto-sec);flex:1 1 220px;min-width:0}
.eq-filtros .busca input{border:0;outline:0;box-shadow:none;background:transparent;width:100%;min-width:0;font:inherit;font-size:13px}
.eq-filtros .busca:focus-within{outline:3px solid rgba(29,78,216,.45);outline-offset:1px}
.eq-filtros .sel{display:grid;gap:4px;font-size:12px;font-weight:600;color:var(--p-texto-sec)}
.eq-filtros .sel select{font-size:13px;max-width:230px}
.equipe-area th .ico{display:inline-block;width:13px;height:13px;vertical-align:-2px}
.equipe-area .pes-tab th{white-space:nowrap}
.eq-vazio{padding:20px 16px;display:grid;gap:10px;justify-items:start}
.eq-vazio p{margin:0;color:var(--p-texto-sec)}
.pag-eq{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px 16px;font-size:12.5px;color:var(--p-texto-sec);
  border-top:1px solid var(--p-linha)}
.eq-nota{margin:0;padding:10px 16px 14px;font-size:12px;color:var(--p-texto-sec)}
.so-admin-nota{display:flex;flex-wrap:wrap;gap:8px;align-items:center}

/* a equipe aberta na página */
.eq-aberta{scroll-margin-top:70px}
.eq-sec{padding:14px 16px;border-bottom:1px solid var(--p-linha);display:grid;gap:10px}
.eq-sec:last-child{border-bottom:0}
.eq-sec h3{margin:0;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--p-texto-sec)}
.eq-sec p{margin:0}
.eq-linha{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;margin:0}
.eq-linha .campo{flex:1 1 240px;min-width:0}
.hsum{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px}
.hsum small{display:block;color:var(--p-texto-sec);font-size:12px;font-weight:500}
.hsum form{margin:0}
.eq-form{display:grid;gap:10px;margin:8px 0 0}
.eq-dias{display:flex;flex-wrap:wrap;gap:6px 12px;border:0;padding:0;margin:0}
.eq-dias legend{font-size:12.5px;font-weight:600;color:var(--p-texto-sec);padding:0;margin-bottom:4px}
.eq-dias .par{display:inline-flex;align-items:center;gap:4px;font-size:13px;white-space:nowrap}
.eq-horas{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}
.eq-horas .campo{flex:0 1 150px}
.eq-transp{display:flex;gap:10px;align-items:flex-start;background:var(--p-azul-suave);border-radius:var(--p-raio-cartao);
  padding:12px 14px;color:var(--p-marinho);font-size:13px}
.eq-transp p{margin:0}
.eq-transp .ico{color:var(--p-azul);margin-top:2px}

/* cadastro da pessoa (usuarios_editar.html R6) */
.cadastro .crumb{margin:0;font-size:12.5px;color:var(--p-texto-sec)}
.cadastro .crumb a{color:var(--p-azul);text-decoration:none}
.cadastro .crumb a:hover{text-decoration:underline}
.cad-cab{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.cad-quem{flex:1 1 240px;min-width:0}
.cad-quem h1{margin:0;font-size:24px;font-weight:800;letter-spacing:-.02em;color:var(--p-marinho);overflow-wrap:anywhere}
.cad-quem p{margin:2px 0 0;color:var(--p-texto-sec);font-size:13.5px}
.cad-form{display:contents}
.cadastro .card{display:grid;gap:12px}
.cadastro .novo-acoes{display:flex;justify-content:flex-end;gap:8px}
.cadastro .papeis-ajuda ul{margin:6px 0 0;padding-left:18px;display:grid;gap:4px;color:var(--p-texto)}
.cadastro .sub-h{margin:6px 0 0;font-size:14px;font-weight:800;color:var(--p-marinho)}
.custo-topo{margin:0}
.curc{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}
.curc>div{background:var(--p-fundo);border:1px solid var(--p-linha);border-radius:10px;padding:10px 12px;display:grid;gap:2px}
.curc span{font-size:12px;color:var(--p-texto-sec);font-weight:600}
.curc b{font-size:17px;font-weight:800;color:var(--p-marinho);font-variant-numeric:tabular-nums}
.custo-campos{border:1px solid var(--p-linha);border-radius:10px;padding:12px;margin:0;display:grid;gap:10px;min-width:0}
.custo-campos legend{font-size:13px;font-weight:700;color:var(--p-marinho);padding:0 4px}
.custo-campos p{margin:0}
.custo-grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}
.custo-calc{margin:0;background:var(--p-neutro-suave);border-radius:8px;padding:8px 10px;font-weight:700;color:var(--p-marinho);
  font-variant-numeric:tabular-nums}
details.custo-det>summary{cursor:pointer;font-size:12.5px;font-weight:700;color:var(--p-azul)}
details.custo-det[open]>summary{margin-bottom:8px}
.cadastro .team .r{text-align:right}
.cadastro .team td{vertical-align:top}
.cadastro .sub-linha td{background:#F8FAFC}
.drow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;font-size:13px}
.drow small{display:block;color:var(--p-texto-sec);font-size:12px;margin-top:2px}
.drow form{margin:0}
.zona-risco{border:1px solid var(--p-improdutivo-borda);border-radius:12px;padding:14px;display:grid;gap:12px}
.zona-risco .sub-h{margin:0;color:var(--p-improdutivo-texto)}
@media (max-width:640px){.drow{grid-template-columns:minmax(0,1fr)}}

/* ═════════════ 9. CAPTURAS DE TELA (R8 — onda 4, T-E09/T-P16: screenshots.html R16) — só dentro de .capt ═════════════ */
.capt{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;min-width:0}
.capt>*{min-width:0}
.capt [hidden]{display:none!important}
.capt .ph{margin-bottom:0;align-items:flex-end}
.capt .ph .tabs2{margin-bottom:0;border-bottom:0}
.capt .ico{width:16px;height:16px;flex:none}
.capt .sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.capt .lnk{font-size:12.5px;font-weight:600;color:var(--p-azul);text-decoration:none;white-space:nowrap}
.capt .lnk:hover{text-decoration:underline}
.capt .banner{margin-bottom:0}
.capt .cap-aviso{flex-wrap:wrap}
.capt .cap-aviso>span{flex:1 1 280px}
.capt .cap-aviso .acts{flex:0 0 auto;display:flex;gap:8px}
.capt .empty1 .acts{display:flex;gap:8px;flex-wrap:wrap}

/* filtros numa linha: Pessoas ▾ · Hoje / Ontem / Escolher · Esconder capturas sem atividade */
.capt .cap-filtros{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;margin:0;padding:10px 14px}
.capt .cap-sel{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:8px;flex:1 1 280px;min-width:0}
.capt .cap-rot{font-size:12.5px;font-weight:700;color:var(--p-texto-sec)}
.capt .cap-sel-btn{display:inline-flex;align-items:center;gap:8px;max-width:100%;min-height:34px;padding:6px 10px;
  border:1px solid var(--p-linha);border-radius:9px;background:var(--p-cartao);color:var(--p-texto);font:inherit;font-size:13px;
  font-weight:600;cursor:pointer;text-align:left}
.capt .cap-sel-btn span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.capt .cap-sel-btn:hover,.capt .cap-sel-btn[aria-expanded="true"]{border-color:var(--p-azul)}
.capt .cap-sel-btn:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:2px}
.capt .cap-sel-painel{flex:1 1 100%;display:grid;gap:8px;min-width:0}
.capt .cap-filtros.cap-js .cap-sel-painel{position:absolute;left:0;top:calc(100% + 6px);z-index:40;width:min(420px,calc(100vw - 64px));
  padding:12px;border:1px solid var(--p-linha);border-radius:12px;background:var(--p-cartao);box-shadow:0 10px 28px rgba(11,27,58,.16)}
.capt .cap-busca{display:flex;align-items:center;gap:6px;border:1px solid var(--p-linha);border-radius:8px;padding:2px 8px;
  color:var(--p-texto-sec);background:var(--p-cartao)}
.capt .cap-busca input{border:0;outline:0;box-shadow:none;background:transparent;width:100%;min-width:0;font:inherit;font-size:13px;padding:6px 0}
.capt .cap-busca:focus-within{outline:3px solid rgba(29,78,216,.45);outline-offset:1px}
.capt .cap-grupo{margin:2px 0 0;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--p-texto-sec)}
.capt .cap-eqs{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.capt .cap-eq,.capt .cap-op{display:flex;align-items:center;gap:9px;padding:6px 8px;border-radius:8px;color:var(--p-texto);
  text-decoration:none;font-size:13px;cursor:pointer;min-width:0}
.capt .cap-eq:hover,.capt .cap-op:hover{background:var(--p-neutro-suave)}
.capt .cap-eq.on{background:var(--p-azul-suave);color:var(--p-marinho)}
.capt .cap-eq .ico{color:var(--p-azul)}
.capt .cap-op-nome{flex:1 1 auto;min-width:0;font-weight:600;overflow-wrap:anywhere}
.capt .cap-eq small,.capt .cap-op small{flex:0 1 auto;font-size:12px;color:var(--p-texto-sec);white-space:nowrap;overflow:hidden;
  text-overflow:ellipsis;max-width:45%}
.capt .cap-op input{margin:0;width:15px;height:15px;flex:none;accent-color:var(--p-azul)}
.capt .cap-op:has(input:checked){background:var(--p-azul-suave)}
.capt .cap-pessoas{display:grid;gap:1px;max-height:300px;overflow-y:auto;scrollbar-width:thin;contain:content}
.capt .cap-pessoas .cap-op{content-visibility:auto;contain-intrinsic-size:auto 36px}
.capt .cap-sem-res,.capt .cap-sel-vazio{margin:0;padding:8px;font-size:12.5px;color:var(--p-texto-sec)}
.capt .cap-sel-acoes{display:flex;justify-content:flex-end}
.capt .cap-dias>label{padding:4px 10px;border-radius:7px;font-weight:600;font-size:13px;color:var(--p-texto-sec);display:inline-flex;
  align-items:center;gap:6px;cursor:pointer}
.capt .cap-dias>label.on{background:var(--p-marinho);color:#fff}
.capt .cap-dias input[type="date"]{font:inherit;font-size:12.5px;border:1px solid var(--p-linha);border-radius:6px;padding:2px 6px;
  background:var(--p-cartao);color:var(--p-texto);max-width:150px}
.capt .cap-tog{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--p-texto);cursor:pointer;
  position:relative}
.capt .cap-tog input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.capt .cap-tog i{position:relative;width:34px;height:18px;border-radius:999px;background:#CBD5E1;flex:none;transition:background .15s}
.capt .cap-tog i::after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;
  transition:left .15s}
.capt .cap-tog input:checked+i{background:var(--p-azul)}
.capt .cap-tog input:checked+i::after{left:18px}
.capt .cap-tog input:focus-visible+i{outline:3px solid rgba(29,78,216,.45);outline-offset:2px}
@media (prefers-reduced-motion:reduce){.capt .cap-tog i,.capt .cap-tog i::after{transition:none}}

/* cabeçalho do dia e linhas por pessoa */
.capt .cap-dia-cab{display:flex;align-items:baseline;gap:6px 14px;flex-wrap:wrap}
.capt .dia-t{margin:0;font-size:18px;font-weight:800;color:var(--p-marinho)}
.capt .cap-resumo,.capt .cap-zip small{font-size:12.5px;color:var(--p-texto-sec)}
.capt .cap-zip{margin-left:auto}
.capt .cap-pessoa{margin:0}
.capt .cap-pessoa>.card-h{flex-wrap:wrap}
.capt .who small{display:block}
.capt .cap-p-acoes{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.capt .cap-linha{margin:0;display:flex;align-items:center;gap:10px 16px;flex-wrap:wrap;padding:12px 16px}
.capt .cap-linha .who{flex:0 1 260px}
.capt .cap-linha-txt{margin:0;flex:1 1 280px;font-size:13px;color:var(--p-texto)}
.capt .cap-linha-txt span{color:var(--p-texto-sec)}
.capt .cap-nota-vid,.capt .cap-noscript{margin:0;font-size:12.5px;color:var(--p-texto-sec)}
.capt .cap-pag{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12.5px;color:var(--p-texto-sec)}
.capt .trans-note{display:flex;gap:12px;align-items:flex-start;background:var(--p-cartao);border:1px solid var(--p-linha);
  border-radius:var(--p-raio-cartao);padding:14px 18px;font-size:13px;color:var(--p-texto-sec)}
.capt .trans-note .ico{color:var(--p-azul);width:20px;height:20px}
.capt .trans-note p{margin:0;line-height:1.5}
.capt .trans-note b{color:var(--p-texto)}

/* player: imagem (ou o quadro com horário/programa) + painel lateral */
.capt .pl-main{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr)}
.capt .pl-img{position:relative;background:#0F1B33;min-width:0}
.capt .pl-quadro{position:relative;aspect-ratio:16/9;display:grid;place-items:center;overflow:hidden}
.capt .pl-foto{width:100%;height:100%;object-fit:contain;display:block}
.capt .pl-tela{display:grid;justify-items:center;gap:6px;padding:18px;text-align:center;color:#E2E8F2}
.capt .pl-tela b{font-size:30px;font-weight:800;letter-spacing:-.02em;color:#fff;font-variant-numeric:tabular-nums}
.capt .pl-tela span{font-size:14px;overflow-wrap:anywhere}
.capt .pl-tela small{font-size:12px;color:#B9C6DD;max-width:44ch}
.capt .pl-estado{position:absolute;left:0;right:0;bottom:0;margin:0;padding:8px 12px;font-size:12px;color:#E2E8F2;
  background:linear-gradient(transparent,rgba(11,27,58,.75))}
.capt .pl-estado:empty{display:none}
.capt .pl-chip{position:absolute;right:12px;top:12px;background:rgba(11,27,58,.78);color:#fff;font-size:11.5px;font-weight:600;
  padding:4px 9px;border-radius:999px}
.capt .pl-side{padding:16px 18px;display:grid;gap:12px;align-content:start;border-left:1px solid var(--p-linha);min-width:0}
.capt .pl-tit{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.capt .pl-tit h3{margin:0;font-size:15px;font-weight:700;font-variant-numeric:tabular-nums}
.capt .pl-nav{font-size:12.5px;color:var(--p-texto-sec);white-space:nowrap}
.capt .pl-kv{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 12px;margin:0;font-size:13px}
.capt .pl-kv dt{color:var(--p-texto-sec);font-weight:600}
.capt .pl-kv dd{margin:0;overflow-wrap:anywhere}
.capt .pl-regra{margin:0;font-size:12.5px;color:var(--p-texto-sec);line-height:1.5}

/* faixa do dia: barrinhas cinza de atividade + faixa pela classificação + controle de arrastar + horas */
.capt .pl-scrub{position:relative;padding:62px 18px 4px;border-top:1px solid var(--p-linha);user-select:none;-webkit-user-select:none;
  touch-action:none;cursor:pointer}
.capt .pl-act{position:relative;height:24px}
.capt .pl-act>i{position:absolute;bottom:0;background:#CBD5E1;border-radius:1px 1px 0 0;min-width:1px}
.capt .pl-track{position:relative;height:14px;margin-top:3px;border-radius:6px;background:var(--p-neutro-suave);overflow:hidden}
.capt .pl-track>i{position:absolute;top:0;bottom:0;min-width:1px}
.capt .pl-act>i.esc,.capt .pl-track>i.esc{opacity:.3}
.capt .c-produtivo{background:var(--p-produtivo)}
.capt .c-neutro{background:var(--p-neutro)}
.capt .c-improdutivo{background:var(--p-improdutivo)}
.capt .c-sem-classificacao{background:#94A3B8}
.capt .c-ocioso{background:#C9D3E0}
.capt .c-sem-registro,.capt .pl-lac,.capt .pl-hachura{background:repeating-linear-gradient(45deg,#F1F4F8 0 3px,#AEB9CA 3px 5px)}
.capt .pl-lac{position:absolute;top:0;bottom:0;display:grid;place-items:center;overflow:hidden}
.capt .pl-lac em{font-style:normal;font-size:10px;font-weight:700;color:var(--p-neutro-texto);background:rgba(255,255,255,.85);
  border-radius:4px;padding:0 4px;white-space:nowrap}
.capt .pl-knob{position:absolute;top:54px;width:22px;height:54px;margin-left:-11px;outline:none;cursor:grab;touch-action:none}
.capt .pl-knob::before{content:"";position:absolute;left:10px;top:0;bottom:0;width:2px;background:var(--p-marinho);border-radius:1px}
.capt .pl-knob::after{content:"";position:absolute;left:3px;top:31px;width:16px;height:16px;border-radius:50%;background:#fff;
  border:3px solid var(--p-marinho);box-sizing:border-box;box-shadow:0 1px 4px rgba(11,27,58,.3)}
.capt .pl-knob:focus-visible::after{box-shadow:0 0 0 4px rgba(29,78,216,.45)}
.capt .pl-horas{position:relative;height:22px;font-size:11px;color:var(--p-texto-sec)}
.capt .pl-horas span{position:absolute;top:6px;transform:translateX(-50%);white-space:nowrap}
.capt .pl-dica{position:absolute;top:4px;width:180px;margin-left:-90px;background:var(--p-marinho);color:#fff;border-radius:10px;
  padding:6px 9px;display:grid;gap:1px;font-size:12px;line-height:1.3;pointer-events:none;z-index:5;box-shadow:0 6px 18px rgba(11,27,58,.25)}
.capt .pl-dica b{font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.capt .pl-dica span{color:#C7D2E6}
.capt .pl-leg{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;padding:10px 18px 14px;font-size:12px;color:var(--p-texto-sec)}
.capt .pl-leg>span{display:inline-flex;align-items:center;gap:6px}
.capt .pl-leg i{display:inline-block;width:10px;height:10px;border-radius:3px}
.capt .pl-leg i.pl-barra{width:4px;height:12px;border-radius:1px;background:#CBD5E1}
.capt .pl-teclas{margin-left:auto}
.capt kbd{font:600 11px var(--p-fonte);border:1px solid var(--p-linha);border-bottom-width:2px;border-radius:4px;padding:0 5px;
  background:#F8FAFC;color:var(--p-texto)}
@media (max-width:899.98px){
  .capt .pl-main{grid-template-columns:minmax(0,1fr)}
  .capt .pl-side{border-left:0;border-top:1px solid var(--p-linha)}
  .capt .pl-teclas{margin-left:0}
  .capt .cap-zip{margin-left:0}
}

/* ═════════════ 10. VÍDEO DO DIA (R9 — onda 4, T-E10/T-P17: video_dia.html R4) — só dentro de .vdia ═════════════ */
.vdia .vd-voltar{margin:0}
.vdia .vd-player{margin:0;overflow:hidden}
.vdia .vd-cab{flex-wrap:wrap;gap:10px 16px;align-items:center}
.vdia .vd-cab .who b{font-size:15px}
.vdia .vd-dnav{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-left:auto}
.vdia .vd-escolher{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--p-texto-sec);
  cursor:pointer}
.vdia .vd-escolher input{font:inherit;font-size:12.5px;border:1px solid var(--p-linha);border-radius:6px;padding:4px 6px;
  background:var(--p-cartao);color:var(--p-texto);max-width:150px}
.vdia .vd-escolher input:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:1px}
.vdia .vd-aviso{margin:0;padding:10px 18px;font-size:12.5px;line-height:1.5;color:var(--p-texto-sec);
  border-bottom:1px solid var(--p-linha)}

/* a tela: imagem do horário (canvas) sobre fundo marinho, "Sem áudio" e o relógio por cima */
.vdia .vd-tela{position:relative;background:#0F1B33;aspect-ratio:16/9;max-height:70vh;width:100%;display:grid;
  place-items:center;overflow:hidden}
.vdia .vd-tela canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block}
.vdia .vd-poster{position:relative;display:grid;justify-items:center;gap:6px;padding:18px;text-align:center;color:#E2E8F2}
.vdia .vd-poster b{font-size:30px;font-weight:800;letter-spacing:-.02em;color:#fff;font-variant-numeric:tabular-nums}
.vdia .vd-poster span{font-size:14px;max-width:44ch}
.vdia .vd-poster small{font-size:12px;color:#B9C6DD}
.vdia .vd-chip{position:absolute;top:12px;display:inline-flex;align-items:center;gap:6px;background:rgba(11,27,58,.78);
  color:#fff;font-size:11.5px;font-weight:600;padding:4px 9px;border-radius:999px;z-index:2}
.vdia .vd-chip .ico{width:14px;height:14px}
.vdia .vd-audio{left:12px}
.vdia .vd-relogio{right:12px;font-size:13px;font-variant-numeric:tabular-nums}
.vdia .vd-estado{position:absolute;left:0;right:0;bottom:0;margin:0;padding:8px 12px;font-size:12.5px;color:#fff;z-index:2;
  background:linear-gradient(transparent,rgba(11,27,58,.82))}
.vdia .vd-estado:empty{display:none}

/* controles: Reproduzir/Pausar · horário + programa · velocidade · pular · monitor · tecla */
.vdia .vd-ctrl{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;padding:12px 18px;border-top:1px solid var(--p-linha)}
.vdia .vd-play{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:136px;font-family:inherit}
.vdia .vd-play svg{width:16px;height:16px;fill:currentColor}
.vdia .vd-agora{display:grid;line-height:1.2;min-width:0;flex:0 1 220px}
.vdia .vd-agora b{font-size:22px;font-weight:800;letter-spacing:-.01em;color:var(--p-marinho);font-variant-numeric:tabular-nums}
.vdia .vd-agora small{font-size:12.5px;color:var(--p-texto-sec);overflow-wrap:anywhere}
.vdia .vd-vel{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;color:var(--p-texto-sec)}
.vdia .vd-vel .seg>button{padding:5px 10px;font-variant-numeric:tabular-nums}
.vdia .vd-vel .seg>button:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:1px}
.vdia .vd-pular{display:grid;gap:2px;min-width:0}
.vdia .vd-pular small{font-size:12px;color:var(--p-texto-sec)}
.vdia .vd-mon{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--p-texto-sec)}
.vdia .vd-mon select{font:inherit;font-size:12.5px;border:1px solid var(--p-linha);border-radius:6px;padding:3px 6px;
  background:var(--p-cartao);color:var(--p-texto)}
.vdia .vd-teclas{margin-left:auto;font-size:12px;color:var(--p-texto-sec)}

/* o período gravado, por baixo da linha do dia (a faixa do dia é a da seção 9) */
.vdia .pl-scrub{padding-bottom:4px}
.vdia .vd-grav{position:relative;height:8px;margin-top:3px;border-radius:4px;background:var(--p-neutro-suave);overflow:hidden}
.vdia .vd-grav>i{position:absolute;top:0;bottom:0;min-width:1px}
.vdia .vd-grav>i.g,.vdia .pl-leg i.vd-l-g{background:var(--p-azul)}
.vdia .vd-grav>i.p,.vdia .pl-leg i.vd-l-p{background:repeating-linear-gradient(45deg,#9DB8EA 0 3px,#DCE6F8 3px 5px)}
.vdia .vd-grav>i.x,.vdia .pl-leg i.vd-l-x{background:#94A3B8}
.vdia .pl-knob{height:65px}
.vdia .vd-noscript{margin:0;padding:10px 18px;font-size:12.5px;color:var(--p-texto-sec)}

/* dia sem vídeo (dentro do cartão do player) */
.vdia .vd-vazio{border:0;border-radius:0;margin:0}
.vdia .vd-vazio .acts{display:flex;gap:8px;flex-wrap:wrap}

/* faixa de dias: período gravado de cada dia, ou "Sem vídeo" + o motivo */
.vdia .vd-dias{display:flex;gap:8px;overflow-x:auto;padding:12px 18px 16px;border-top:1px solid var(--p-linha);
  scrollbar-width:thin}
.vdia .vd-dia{flex:0 0 auto;display:grid;gap:2px;min-width:118px;max-width:200px;padding:8px 10px;border:1px solid var(--p-linha);
  border-radius:10px;text-decoration:none;color:var(--p-texto);font-size:12px;background:var(--p-cartao)}
.vdia .vd-dia b{font-size:13px;font-weight:700}
.vdia .vd-dia span{color:var(--p-texto-sec);overflow-wrap:anywhere}
.vdia .vd-dia:hover{border-color:var(--p-azul)}
.vdia .vd-dia.sem{background:var(--p-neutro-suave)}
.vdia .vd-dia.on{border-color:var(--p-marinho);box-shadow:inset 0 0 0 1px var(--p-marinho)}
@media (max-width:640px){
  .vdia .vd-dnav{margin-left:0}
  .vdia .vd-teclas{margin-left:0}
  .vdia .vd-agora{flex-basis:100%}
  .vdia .pl-leg>span.pl-teclas{display:block;line-height:2}
}

/* ═════════════ 11. PRODUTIVIDADE (R10 — onda 4, T-E11: produtividade.html R7) — só dentro de .produtiv ═════════════ */
/* filtros numa linha: equipe · período · "comparado com" */
.produtiv .prod-filtros{display:flex;align-items:center;gap:10px 14px;flex-wrap:wrap}
.produtiv .prod-eq{display:inline-flex;align-items:center;gap:8px;margin:0}
.produtiv .prod-eq select{font:inherit;font-size:13px;font-weight:600;color:var(--p-texto);background:var(--p-cartao);
  border:1px solid var(--p-linha);border-radius:10px;padding:7px 10px;max-width:min(260px,100%)}
.produtiv .prod-eq select:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:1px}
.produtiv .prod-per{margin-left:auto;font-size:12.5px;color:var(--p-texto-sec)}
.produtiv .aviso-aberto{margin:0}
.produtiv .delta{font-size:12.5px;font-weight:700;color:var(--p-marinho)}
.produtiv .kpis>.kpi .c a{color:var(--p-azul);font-weight:600;text-decoration:none}
.produtiv .kpis>.kpi .c a:hover{text-decoration:underline}

/* a 4ª parte "sem classificação": tracejado (nunca cor de categoria) */
.produtiv .stack>i.u,.produtiv .leg i.u,.produtiv .comp4>i.u,.produtiv .sw.u{
  background:repeating-linear-gradient(45deg,var(--p-linha) 0 3px,var(--p-cartao) 3px 6px);box-shadow:inset 0 0 0 1px #94A3B8}
.produtiv .comp4{display:flex;height:16px;border-radius:8px;overflow:hidden;margin:16px 16px 6px;background:var(--p-linha)}
.produtiv .comp4>i{display:block;height:100%}
.produtiv .comp4>i.p,.produtiv .sw.p{background:var(--p-produtivo)}
.produtiv .comp4>i.n,.produtiv .sw.n{background:var(--p-neutro)}
.produtiv .comp4>i.x,.produtiv .sw.x{background:var(--p-improdutivo)}
.produtiv .sw{width:10px;height:10px;border-radius:3px;display:inline-block;flex:none}
.produtiv .cleg{display:flex;flex-wrap:wrap;gap:6px 18px;padding:6px 16px 10px;font-size:13px;color:var(--p-texto-sec)}
.produtiv .cleg span{display:inline-flex;align-items:center;gap:6px}
.produtiv .cleg b{color:var(--p-marinho);font-variant-numeric:tabular-nums}
.produtiv .cleg small{font-size:12px}
.produtiv .prod-nota{margin:0;padding:0 16px 12px;font-size:12px;color:var(--p-texto-sec);line-height:1.45}

/* fila "Programas e sites sem classificação" (azul suave — laranja é só ação) */
.produtiv .fila{border-color:#C7D5F5}
.produtiv .fila-txt{margin:0;padding:12px 16px 0;font-size:13px;color:var(--p-texto-sec);line-height:1.5}
.produtiv .fila-fim{padding-bottom:12px}
.produtiv .fila-lista{display:grid;gap:8px;padding:12px 16px}
.produtiv .qrow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;align-items:center;background:var(--p-cartao);
  border:1px solid var(--p-linha);border-radius:10px;padding:9px 12px;font-size:13.5px}
.produtiv .qrow.ok{background:var(--p-neutro-suave)}
.produtiv .q-nome{min-width:0}
.produtiv .q-nome b{font-weight:700;color:var(--p-marinho);overflow-wrap:anywhere}
.produtiv .q-nome small{display:block;font-size:12px;color:var(--p-texto-sec);overflow-wrap:anywhere}
.produtiv .q-acoes{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.produtiv .cls,.produtiv .q-feito{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}
.produtiv .cls .btn,.produtiv .q-feito .btn{font-family:inherit}
.produtiv .q-msg{grid-column:1/-1;font-size:12.5px;color:var(--p-texto-sec)}
.produtiv .q-msg:empty{display:none}
.produtiv .fila-mais,.produtiv .fila-grupo{border-top:1px solid var(--p-linha)}
.produtiv .fila-mais>summary,.produtiv .fila-grupo>summary{cursor:pointer;padding:10px 16px;font-size:13px;font-weight:600}
.produtiv .fila-mais>summary{color:var(--p-azul)}
.produtiv .fila-grupo>summary{color:var(--p-marinho)}
.produtiv .fila-mais>summary:focus-visible,.produtiv .fila-grupo>summary:focus-visible{outline:3px solid rgba(29,78,216,.45);
  outline-offset:-3px;border-radius:6px}
.produtiv .fila-mais>.fila-lista{padding-top:0}
.produtiv .fila-grupo p{margin:0;padding:0 16px 8px;font-size:12.5px;color:var(--p-texto-sec);line-height:1.5}
.produtiv .fila-grupo ul{margin:0 0 10px;padding:0 16px 0 34px;display:grid;gap:4px;font-size:13px;overflow-wrap:anywhere}
.produtiv .fila-grupo li small{color:var(--p-texto-sec)}

/* duas colunas: por pessoa | programas e sites (uma só em tela estreita) */
.produtiv .prod-cols{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:16px;align-items:start}
@media (max-width:1099.98px){.produtiv .prod-cols{grid-template-columns:minmax(0,1fr)}}
.produtiv .prod-baixo{margin:0;padding:10px 16px;font-size:13px;color:var(--p-texto-sec);border-bottom:1px solid var(--p-linha)}
.produtiv .team .pct small.abaixo{display:block;font-size:11px;font-weight:600;color:var(--p-improdutivo-texto);white-space:nowrap}

/* "Sem dados no período" (nunca 0%) */
.produtiv .semdados{padding:12px 16px 14px;border-top:1px solid var(--p-linha);display:grid;gap:8px}
.produtiv .semdados h3{margin:0;font-size:13.5px;font-weight:700;color:var(--p-marinho)}
.produtiv .semdados p{margin:0;font-size:12.5px;color:var(--p-texto-sec)}
.produtiv .semdados ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.produtiv .semdados li{display:flex;align-items:center;gap:6px 8px;flex-wrap:wrap;font-size:13px}
.produtiv .semdados .sd-q a{color:var(--p-marinho);font-weight:600;text-decoration:none}
.produtiv .semdados .sd-q a:hover{text-decoration:underline}
.produtiv .semdados .sd-q small{color:var(--p-texto-sec);font-size:12px;margin-left:6px}
.produtiv .semdados .sd-m{color:var(--p-texto-sec)}
.produtiv .semdados .sd-m::before{content:"· "}

/* programas e sites: busca + filtro pela classificação + "Ver todos" */
.produtiv .prog-ferr{padding:12px 16px 4px}
.produtiv .chips{display:flex;gap:6px;flex-wrap:wrap}
.produtiv .chip-f{font-family:inherit;font-size:12px;font-weight:600;border:1px solid var(--p-linha);border-radius:999px;
  padding:4px 10px;color:var(--p-texto-sec);background:var(--p-cartao);cursor:pointer}
.produtiv .chip-f[aria-pressed="true"]{background:var(--p-marinho);border-color:var(--p-marinho);color:#fff}
.produtiv .chip-f:focus-visible,.produtiv .lnk-btn:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:2px}
.produtiv .prog-tab td small{display:block;color:var(--p-texto-sec);font-size:12px;font-weight:500;overflow-wrap:anywhere}
.produtiv .prog-tab td b{font-weight:600;color:var(--p-marinho);overflow-wrap:anywhere}
.produtiv .prog-tab .cl{white-space:nowrap}
.produtiv .prog-tab .cl .lnk{margin-left:8px}
.produtiv .prog-mais{padding:10px 16px;border-top:1px solid var(--p-linha)}
.produtiv .lnk-btn{font-family:inherit;font-size:12.5px;font-weight:600;color:var(--p-azul);background:none;border:0;padding:0;
  cursor:pointer}
.produtiv .lnk-btn:hover{text-decoration:underline}
.produtiv .prog-nota{margin:0;padding:8px 16px;font-size:12px;color:var(--p-texto-sec);border-top:1px solid var(--p-linha)}
@media (max-width:640px){
  .produtiv .prod-per{margin-left:0;flex-basis:100%}
  .produtiv .qrow{grid-template-columns:minmax(0,1fr)}
  .produtiv .q-acoes{justify-content:flex-start}
}

/* ═════════════ 12. ALERTAS (R11 — onda 4, T-E12: alertas.html R8) — só dentro de .alertas-tela e da janela .al-dlg ═════════════ */
/* filtros numa linha: equipe · período · o período escrito */
.alertas-tela .al-filtros{display:flex;align-items:center;gap:10px 14px;flex-wrap:wrap}
.alertas-tela .al-eq{display:inline-flex;align-items:center;gap:8px;margin:0}
.alertas-tela .al-eq select{font:inherit;font-size:13px;font-weight:600;color:var(--p-texto);background:var(--p-cartao);
  border:1px solid var(--p-linha);border-radius:10px;padding:7px 10px;max-width:min(260px,100%)}
.alertas-tela .al-eq select:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:1px}
.alertas-tela .al-per{margin-left:auto;font-size:12.5px;color:var(--p-texto-sec)}

/* marca de cor por regra (a cor só reforça: o NOME da regra está sempre escrito) — nunca laranja */
.alertas-tela .tdot,.al-dlg .tdot{width:9px;height:9px;border-radius:50%;display:inline-block;flex:none}
.alertas-tela .t-prod,.al-dlg .t-prod{background:var(--p-improdutivo)}
.alertas-tela .t-jor,.al-dlg .t-jor{background:var(--p-azul)}
.alertas-tela .t-oci,.al-dlg .t-oci{background:var(--p-neutro)}
.alertas-tela .t-age,.al-dlg .t-age{background:#94A3B8}
.alertas-tela .t-lk,.al-dlg .t-lk{background:var(--p-linha)}
.alertas-tela .tchip{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;border-radius:999px;
  padding:2px 9px;white-space:nowrap;background:var(--p-neutro-suave);color:var(--p-texto)}

/* cartões: "Em aberto no período" (marinho) + um por regra; são links que filtram a fila */
.alertas-tela .acards{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}
.alertas-tela .acard{background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:var(--p-raio-cartao);
  padding:12px 14px;display:grid;gap:2px;align-content:start;text-decoration:none;color:var(--p-texto);min-width:0}
.alertas-tela .acard:hover{border-color:#A9B6C9}
.alertas-tela .acard .l{font-size:12.5px;color:var(--p-texto-sec);font-weight:600;display:flex;align-items:center;gap:6px}
.alertas-tela .acard .v{font-size:26px;font-weight:800;letter-spacing:-.02em;color:var(--p-marinho);font-variant-numeric:tabular-nums}
.alertas-tela .acard .c{font-size:12px;color:var(--p-texto-sec)}
.alertas-tela .acard.on{border-color:var(--p-marinho);box-shadow:0 0 0 1px var(--p-marinho) inset}
.alertas-tela .acard.tot{background:var(--p-marinho);border-color:var(--p-marinho)}
.alertas-tela .acard.tot .l,.alertas-tela .acard.tot .c{color:#B9C6DD}
.alertas-tela .acard.tot .v{color:#fff}
.alertas-tela .acard.tot.on{box-shadow:0 0 0 3px rgba(29,78,216,.35)}
.alertas-tela .acard:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:2px}

/* "Alertas por dia": barras em MARINHO (o dia escolhido em azul); cada barra é um link que filtra a fila */
.alertas-tela .abar{display:grid;gap:6px;align-items:end;padding:14px 16px 0}
.alertas-tela .abar>a{display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px;height:96px;
  border-radius:6px;text-decoration:none;min-width:0}
.alertas-tela .abar>a:hover i{filter:brightness(1.25)}
.alertas-tela .abar>a:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:1px}
.alertas-tela .abar i{display:block;width:100%;max-width:48px;background:#C7D2E3;border-radius:4px 4px 0 0}
.alertas-tela .abar>a.tem i{background:var(--p-marinho)}
.alertas-tela .abar>a.sel i{background:var(--p-azul)}
.alertas-tela .abar b{font-size:11.5px;color:var(--p-marinho);min-height:14px;font-variant-numeric:tabular-nums}
.alertas-tela .alab{display:grid;gap:6px;padding:4px 16px 12px;font-size:11px;color:var(--p-texto-sec);text-align:center}
.alertas-tela .alab span{white-space:nowrap;overflow:hidden;text-overflow:clip}
.alertas-tela .alab .sel{color:var(--p-azul);font-weight:700}

/* fila: abas Em aberto / Tratados, filtros ativos, linhas por pessoa + regra */
.alertas-tela .al-fila .card-h .tabs2{margin:0;border-bottom:0}
.alertas-tela .qfil-linha{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:10px 16px 0;font-size:12.5px;
  color:var(--p-texto-sec)}
.alertas-tela .qfil{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--p-azul);
  background:var(--p-azul-suave);border-radius:999px;padding:4px 10px;text-decoration:none}
.alertas-tela .qfil:hover{text-decoration:underline}
.alertas-tela .al-expl{margin:0;padding:10px 16px 0;font-size:12.5px;color:var(--p-texto-sec);line-height:1.5}
.alertas-tela .al-lista{display:grid;margin-top:8px}
.alertas-tela .al{display:grid;grid-template-columns:minmax(0,230px) minmax(0,1fr) auto;gap:10px 16px;align-items:start;
  padding:14px 16px;border-top:1px solid var(--p-linha)}
.alertas-tela .al .who a.al-nome{color:var(--p-marinho);font-weight:600;text-decoration:none;overflow-wrap:anywhere}
.alertas-tela .al .who a.al-nome:hover{text-decoration:underline}
.alertas-tela .al .who small{display:block}
.alertas-tela .al .what{display:grid;gap:6px;font-size:13.5px;min-width:0}
.alertas-tela .al .what-t b{font-weight:700;color:var(--p-marinho);margin-left:4px}
.alertas-tela .al .what-t small{color:var(--p-texto-sec);font-size:12.5px}
.alertas-tela .al .what p{margin:0;color:var(--p-texto-sec);font-size:12.5px;line-height:1.5;overflow-wrap:anywhere}
.alertas-tela .dchips{display:flex;gap:4px;flex-wrap:wrap}
.alertas-tela .dchips span{font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:6px;background:var(--p-neutro-suave);
  color:var(--p-texto);font-variant-numeric:tabular-nums}
.alertas-tela .dchips span.hit{background:var(--p-azul-suave);color:var(--p-marinho)}
.alertas-tela .al .acts{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.alertas-tela .al .acts form{margin:0}
.alertas-tela .al.done .who,.alertas-tela .al.done .what-t{opacity:.8}
/* "Marcar como tratado": abre na própria linha (<details>, sem JavaScript) e ocupa a linha inteira quando aberto */
.alertas-tela .al .tratar{grid-column:3;grid-row:2;justify-self:end}
.alertas-tela .al .tratar>summary{list-style:none}
.alertas-tela .al .tratar>summary::-webkit-details-marker{display:none}
.alertas-tela .al .tratar[open]{grid-column:1/-1;justify-self:stretch;display:grid;gap:10px}
.alertas-tela .al .tratar[open]>summary{justify-self:end;background:var(--p-neutro-suave)}
.alertas-tela .trat{background:#F8FAFC;border:1px solid var(--p-linha);border-radius:10px;padding:12px 14px;display:grid;
  gap:10px;font-size:13px;margin:0}
.alertas-tela .why2{border:0;margin:0;padding:0;display:flex;gap:6px;flex-wrap:wrap;min-width:0}
.alertas-tela .why2 legend{font-weight:700;color:var(--p-marinho);padding:0;margin-bottom:6px;font-size:13px}
.alertas-tela .why2 label{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--p-linha);background:var(--p-cartao);
  border-radius:999px;padding:4px 10px;font-size:12.5px;font-weight:600;cursor:pointer}
.alertas-tela .why2 label small{font-weight:500;color:var(--p-texto-sec)}
.alertas-tela .why2 label:has(input:checked){border-color:var(--p-marinho);box-shadow:0 0 0 1px var(--p-marinho) inset}
.alertas-tela .why2 input{accent-color:var(--p-marinho);margin:0}
.alertas-tela .why2 label:focus-within{outline:3px solid rgba(29,78,216,.45);outline-offset:1px}
.alertas-tela .nota-c{display:grid;gap:5px;font-weight:600;color:var(--p-texto)}
.alertas-tela .nota-c input{font:inherit;font-size:13px;font-weight:500;border:1px solid var(--p-linha);border-radius:8px;padding:7px 10px;
  background:var(--p-cartao);color:var(--p-texto)}
.alertas-tela .trat-acts{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.alertas-tela .trat-acts small{font-size:12px;color:var(--p-texto-sec)}
.alertas-tela .qempty{padding:22px 16px;color:var(--p-texto-sec);font-size:13px;display:grid;gap:4px;border-top:1px solid var(--p-linha);
  margin-top:10px}
.alertas-tela .qempty b{color:var(--p-texto);font-size:14px}
.alertas-tela .al-pag{display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap;padding:12px 16px;
  border-top:1px solid var(--p-linha);font-size:12.5px;color:var(--p-texto-sec)}

/* regras: as desta página, as personalizadas (liga/desliga) e as que o plano não libera */
.alertas-tela .rules-t{margin:0;padding:12px 16px 0;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  color:var(--p-texto-sec)}
.alertas-tela .rules-x{margin:0;padding:6px 16px 0;font-size:12.5px;color:var(--p-texto-sec);line-height:1.5}
.alertas-tela .rules{display:grid;padding:4px 0 6px}
.alertas-tela .rule{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:6px 12px;align-items:center;
  padding:10px 16px;border-bottom:1px solid var(--p-linha);font-size:13px}
.alertas-tela .rules .rule:last-child{border-bottom:0}
.alertas-tela .rule small{color:var(--p-texto-sec);font-size:12px}
.alertas-tela .rule.off>span:first-of-type{opacity:.7}
.alertas-tela .rule.lk{color:var(--p-texto-sec)}
.alertas-tela .rule-acts{display:inline-flex;gap:8px;align-items:center}
.alertas-tela .rule-acts form{margin:0;display:inline-flex}
.alertas-tela .sw2{width:34px;height:20px;border-radius:10px;background:var(--p-azul);position:relative;display:inline-block;
  cursor:pointer;border:0;padding:0;flex:none}
.alertas-tela .sw2::after{content:"";position:absolute;right:3px;top:3px;width:14px;height:14px;border-radius:50%;background:#fff}
.alertas-tela .sw2.off{background:#CBD5E1}
.alertas-tela .sw2.off::after{right:auto;left:3px}
.alertas-tela .sw2:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:2px}
.alertas-tela .lock{font-size:11px;font-weight:700;color:var(--p-texto-sec);border:1px dashed #A9B6C9;border-radius:999px;
  padding:2px 8px;white-space:nowrap}
.alertas-tela .al-err{margin:12px 16px 0}

/* avisos enviados pelas regras (recolhido) */
.alertas-tela .al-hist>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 16px;
  cursor:pointer;list-style:none}
.alertas-tela .al-hist>summary::-webkit-details-marker{display:none}
.alertas-tela .al-hist>summary h2{margin:0;font-size:15px;font-weight:700}
.alertas-tela .al-hist>summary span{font-size:12.5px;color:var(--p-texto-sec)}
.alertas-tela .al-hist[open]>summary{border-bottom:1px solid var(--p-linha)}
.alertas-tela .al-hist>summary:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:-3px;border-radius:6px}

/* janela "Nova regra" / "Editar regra" (fora do contêiner da tela: escopo .al-dlg) */
dialog.al-dlg{width:min(640px,calc(100vw - 32px))}
.al-dlg form{display:grid;gap:14px;margin:0}
.al-dlg .dlg-t{margin:0}
.al-dlg .al-err{margin:0}
.al-dlg .fld{display:grid;gap:6px;border:0;margin:0;padding:0;min-width:0;font-size:13px;font-weight:600;color:var(--p-texto)}
.al-dlg .fld legend{padding:0;margin-bottom:6px;font-weight:600}
.al-dlg .fld>small{font-weight:500;color:var(--p-texto-sec);font-size:12px}
.al-dlg .fld[hidden]{display:none}
.al-dlg .typs{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}
.al-dlg .typ{border:1px solid var(--p-linha);border-radius:10px;padding:10px 12px;display:grid;grid-template-columns:auto 1fr;
  gap:2px 8px;align-items:center;font-size:13px;font-weight:700;color:var(--p-texto);cursor:pointer}
.al-dlg .typ input{grid-row:1/3;accent-color:var(--p-marinho);margin:0}
.al-dlg .typ span{display:flex;align-items:center;gap:6px}
.al-dlg .typ small{font-weight:500;color:var(--p-texto-sec);font-size:12px}
.al-dlg .typ:has(input:checked){border-color:var(--p-marinho);box-shadow:0 0 0 1px var(--p-marinho) inset}
.al-dlg .typ:has(input:disabled){opacity:.6;cursor:not-allowed}
.al-dlg .typ:focus-within{outline:3px solid rgba(29,78,216,.45);outline-offset:1px}
.al-dlg .inp{display:flex;align-items:center;gap:8px;border:1px solid var(--p-linha);border-radius:8px;padding:6px 10px;
  background:var(--p-cartao);max-width:340px}
.al-dlg .inp input{font:inherit;font-size:14px;font-weight:700;color:var(--p-texto);border:0;outline:0;background:transparent;width:80px}
.al-dlg .inp em{font-style:normal;color:var(--p-texto-sec);font-weight:500;font-size:13px}
.al-dlg .inp:focus-within{outline:3px solid rgba(29,78,216,.45);outline-offset:1px}
.al-dlg .ck2{display:flex;gap:8px 16px;flex-wrap:wrap;font-weight:500}
.al-dlg .ck2 label{display:inline-flex;align-items:center;gap:6px;cursor:pointer}
.al-dlg .ck2 input{accent-color:var(--p-marinho);margin:0}
.al-dlg .prev{margin:0;background:var(--p-neutro-suave);border-radius:10px;padding:10px 12px;font-size:13px;color:var(--p-texto)}
.al-dlg .prev:empty{display:none}

@media (max-width:760px){
  .alertas-tela .al-per{margin-left:0;flex-basis:100%}
  .alertas-tela .al{grid-template-columns:minmax(0,1fr)}
  .alertas-tela .al .acts{justify-content:flex-start}
  .alertas-tela .al .tratar,.alertas-tela .al .tratar[open]{grid-column:1;grid-row:auto;justify-self:start}
  .alertas-tela .al .tratar[open]{justify-self:stretch}
  .alertas-tela .rule{grid-template-columns:auto minmax(0,1fr)}
  .alertas-tela .rule>small,.alertas-tela .rule>.selo,.alertas-tela .rule>.lock,.alertas-tela .rule>.rule-acts{grid-column:2}
}

/* ═════════════ 13. TELA AO VIVO e PAREDE DE TELAS (R12 — onda 4, T-E13/T-E14: liveview.html R12, parede.html R9) — só dentro de .aovivo e .parede-tela ═════════════ */
/* comum às duas: o atributo hidden sempre vence (.banner e .btn têm display próprio) e a nota de transparência */
.aovivo [hidden],.parede-tela [hidden]{display:none !important}
.aovivo,.parede-tela{display:grid;gap:14px;min-width:0}
.aovivo .ph,.parede-tela .ph{margin-bottom:0}
.aovivo .ph p,.parede-tela .ph p{max-width:90ch}
.aovivo .banner,.parede-tela .banner{margin:0}
.aovivo .trans-note,.parede-tela .trans-note{display:flex;gap:12px;align-items:flex-start;background:var(--p-cartao);border:1px solid var(--p-linha);
  border-radius:var(--p-raio-cartao);padding:12px 16px;font-size:13px;color:var(--p-texto-sec)}
.aovivo .trans-note .ico,.parede-tela .trans-note .ico{color:var(--p-azul);width:20px;height:20px;flex:none}
.aovivo .trans-note p,.parede-tela .trans-note p{margin:0;line-height:1.5}
.aovivo .trans-note b,.parede-tela .trans-note b{color:var(--p-texto)}

/* ── Tela ao vivo: lista por situação à esquerda, tela à direita ── */
.lv-cols{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:14px;align-items:start}
.lv-cols.lv-so-lista{grid-template-columns:minmax(0,1fr)}
.lv-lista{padding-bottom:6px}
.lv-grupo{margin:0;padding:12px 16px 6px;font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--p-texto-sec)}
.lv-pessoas{list-style:none;margin:0;padding:0}
.lv-pit{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 16px;font-size:13px}
.lv-quem{min-width:0}
.lv-quem b{display:block;font-weight:600;color:var(--p-texto);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lv-quem small{display:block;color:var(--p-texto-sec);font-size:12px;overflow-wrap:anywhere}
.lv-pit.on{background:var(--p-azul-suave);box-shadow:inset 3px 0 0 var(--p-azul)}
.lv-pit.lv-sugerido{box-shadow:inset 3px 0 0 var(--p-azul)}
.lv-pit.dis .av{opacity:.7}
.lv-pit.dis .lv-quem b{color:var(--p-texto-sec)}
.lv-inst{font-size:12.5px;font-weight:700}
.lv-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:0;box-sizing:border-box}
.lv-dot-online{background:var(--p-azul)}
.lv-dot-offline{border:1.5px solid #94A3B8}
.lv-dot-sem_agente{display:none}
.lv-vazio{margin:0;padding:2px 16px 8px;font-size:12.5px;color:var(--p-texto-sec)}
.lv-vazio-g{padding:18px 16px;display:grid;gap:6px;justify-items:start}
.lv-vazio-g p{margin:0;color:var(--p-texto-sec);font-size:13px}
.lv-viewer{position:sticky;top:12px;overflow:hidden;padding:0}
.lv-vh{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;padding:12px 16px;border-bottom:1px solid var(--p-linha);min-height:62px}
.lv-vh .who b{font-size:15px}
.lv-vh .who small:empty{display:none}
.lv-av:empty{display:none}
.lv-selo{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;border-radius:999px;padding:4px 10px;white-space:nowrap}
.lv-selo::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}
.lv-selo.lv-live{background:var(--p-azul-suave);color:var(--p-azul)}
.lv-selo.lv-con,.lv-selo.lv-par,.lv-selo.lv-off{background:var(--p-neutro-suave);color:var(--p-neutro-texto)}
.lv-selo.lv-off::before{border-radius:2px}
.lv-tempo{font-size:12.5px;font-weight:700;color:var(--p-azul);font-variant-numeric:tabular-nums}
.lv-rec{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--p-improdutivo-texto);
  background:var(--p-improdutivo-suave);border-radius:999px;padding:4px 10px;white-space:nowrap;font-variant-numeric:tabular-nums}
.lv-rec::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--p-improdutivo)}
.lv-rec.pausada{color:var(--p-neutro-texto);background:var(--p-neutro-suave)}
.lv-rec.pausada::before{background:var(--p-neutro)}
.lv-aviso-col{flex:1 1 220px;font-size:12px;color:var(--p-texto-sec);text-align:right}
.lv-palco{background:var(--p-marinho)}
.lv-idle{min-height:280px;display:grid;place-items:center;align-content:center;gap:8px;text-align:center;color:#C7D2E6;font-size:13.5px;padding:24px}
.lv-idle .ico{width:30px;height:30px;color:var(--p-azul-claro)}
.lv-idle b{color:#fff;font-size:16px}
.lv-idle .lnk{color:var(--p-azul-claro)}
.lv-tela{position:relative;display:flex;align-items:center;justify-content:center;min-height:280px;padding:12px;background:var(--p-marinho)}
.lv-tela canvas{display:block;max-width:100%;max-height:68vh;height:auto;border-radius:6px;transition:opacity .3s}
.lv-tela.lv-parada canvas{opacity:.4;filter:grayscale(1)}
.lv-tela:fullscreen{background:#000;padding:0}
.lv-tela:fullscreen canvas{max-width:100vw;max-height:100vh;border-radius:0}
.lv-nosom,.lv-stamp{position:absolute;background:rgba(11,27,58,.82);color:#fff;font-size:12px;padding:4px 10px;border-radius:999px}
.lv-nosom{left:22px;top:22px;font-weight:600}
.lv-stamp{right:22px;bottom:22px;font-weight:700;font-variant-numeric:tabular-nums}
.lv-msg{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:rgba(11,27,58,.92);color:#fff;padding:12px 16px;
  border-radius:10px;font-size:13.5px;font-weight:600;text-align:center;width:max-content;max-width:min(460px,86%)}
.lv-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 16px;border-top:1px solid var(--p-linha)}
.lv-bar .lv-enc{margin-left:auto}
.lv-taxa{font-size:12.5px;color:var(--p-texto-sec)}
.aovivo .btn.lv-recb{border-color:var(--p-improdutivo-borda);color:var(--p-improdutivo-texto)}
.aovivo .lv-naosuporta{margin:0 16px 12px;font-size:12.5px}
.lv-recs{border-top:1px solid var(--p-linha);padding:10px 16px 14px;display:grid;gap:8px}
.lv-recs h3{margin:0;font-size:13px;font-weight:700}
.lv-recs ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.lv-recit{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--p-neutro-suave);border:1px solid var(--p-linha);
  border-radius:10px;padding:8px 12px;font-size:13px}
.lv-recit>div{flex:1 1 200px;min-width:0}
.lv-recit small{display:block;color:var(--p-texto-sec)}
.lv-recnota{margin:0;font-size:12px;color:var(--p-texto-sec)}
.lv-confirm{margin:0 16px 14px;padding:14px 16px;border:1px solid var(--p-improdutivo-borda);border-radius:12px;background:var(--p-cartao);display:grid;gap:8px}
.lv-confirm p{margin:0;font-size:13.5px;color:var(--p-texto-sec)}
.lv-confirm-acts{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}

/* ── Parede de telas ── */
.pw-ferr{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.pw-chips{display:flex;gap:6px;flex-wrap:wrap}
.pw-chip{font:inherit;font-size:12.5px;font-weight:700;padding:6px 12px;border-radius:999px;border:1px solid var(--p-linha);
  background:var(--p-cartao);color:var(--p-texto-sec);cursor:pointer}
.pw-chip[aria-pressed="true"]{background:var(--p-marinho);border-color:var(--p-marinho);color:#fff}
.pw-pessoas{position:relative}
.pw-pessoas>summary{list-style:none;cursor:pointer}
.pw-pessoas>summary::-webkit-details-marker{display:none}
.pw-pessoas-caixa{position:absolute;z-index:40;top:calc(100% + 6px);left:0;background:var(--p-cartao);border:1px solid var(--p-linha);
  border-radius:12px;box-shadow:0 12px 30px rgba(11,27,58,.18);padding:10px;width:min(300px,calc(100vw - 32px));max-height:320px;
  overflow:auto;display:grid;gap:2px}
.pw-pessoas-caixa label{display:flex;align-items:center;gap:8px;font-size:13px;padding:5px 6px;border-radius:8px;cursor:pointer}
.pw-pessoas-caixa label:hover{background:var(--p-neutro-suave)}
.pw-pessoas-caixa small{color:var(--p-texto-sec)}
.pw-pessoas-caixa input{accent-color:var(--p-marinho);margin:0}
.pw-pessoas-caixa .lnk-btn{justify-self:start;margin:4px 6px 0}
.pw-tam-rot{margin-left:auto;font-size:12.5px;color:var(--p-texto-sec)}
.pw-sizes{display:inline-flex;border:1px solid var(--p-linha);border-radius:8px;overflow:hidden;background:var(--p-cartao)}
.pw-sizes button{font:inherit;font-size:12px;font-weight:700;color:var(--p-texto-sec);background:none;border:0;
  border-left:1px solid var(--p-linha);padding:6px 11px;cursor:pointer}
.pw-sizes button:first-child{border-left:0}
.pw-sizes button[aria-pressed="true"]{background:var(--p-marinho);color:#fff}
.pw-stt{margin:0;font-size:12.5px;color:var(--p-texto-sec)}
.pw-stbox{background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:var(--p-raio-cartao);padding:24px;display:grid;gap:10px;
  justify-items:start;max-width:620px}
.pw-stbox h2{margin:0;font-size:18px;font-weight:800;color:var(--p-marinho)}
.pw-stbox p{margin:0;color:var(--p-texto-sec);font-size:13.5px}
.pw-stbox-acts{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.pw-avs{display:flex}
.pw-avs:empty{display:none}
.pw-avs .av{margin-right:-6px;box-shadow:0 0 0 2px var(--p-cartao)}
.pw-direto{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:var(--p-texto-sec);cursor:pointer}
.pw-direto input{accent-color:var(--p-marinho);margin:0}
.pw-wall{display:grid;gap:12px;min-width:0}
.pw-wall:fullscreen{background:var(--p-fundo);padding:16px;overflow:auto;align-content:start}
.pw-info{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;font-size:13px;color:var(--p-texto-sec)}
.pw-live{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--p-azul);background:var(--p-azul-suave);
  border-radius:999px;padding:4px 10px;white-space:nowrap}
.pw-live::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}
.pw-pag{display:inline-flex;align-items:center;gap:6px;font-weight:600;color:var(--p-texto)}
.pw-wall-acoes{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}
.pw-grade{display:grid;gap:14px}
.pw-g-sm{grid-template-columns:repeat(4,minmax(0,1fr))}
.pw-g-md{grid-template-columns:repeat(3,minmax(0,1fr))}
.pw-g-lg{grid-template-columns:repeat(2,minmax(0,1fr))}
.pw-tile{background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;min-width:0}
.pw-tile:hover{border-color:var(--p-azul)}
.pw-tcab{display:flex;align-items:center;gap:8px;padding:8px 10px;min-width:0;font-size:13px}
.pw-tcab .av{width:26px;height:26px}
.pw-tnome{min-width:0;flex:1 1 auto;display:flex;align-items:baseline;gap:6px}
.pw-tnome b{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.pw-tnome small{color:var(--p-texto-sec);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.pw-g-sm .pw-tnome small{display:none}
.pw-x{flex:none;font:inherit;font-size:12px;line-height:1;color:var(--p-texto-sec);background:var(--p-cartao);border:1px solid var(--p-linha);
  border-radius:6px;padding:4px 7px;cursor:pointer}
.pw-x:hover{background:var(--p-neutro-suave);color:var(--p-texto)}
.pw-quadro{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:16/9;margin:0;padding:6px;border:0;
  background:var(--p-marinho);color:inherit;font:inherit;cursor:zoom-in}
.pw-quadro canvas{display:block;max-width:100%;max-height:100%;border-radius:4px;transition:opacity .3s}
.pw-tpe{display:flex;align-items:center;gap:8px;padding:7px 10px;font-size:12px;color:var(--p-texto-sec);min-width:0}
.pw-tst{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pw-tst.pw-vivo{color:var(--p-azul);font-weight:700}
.pw-tst.pw-vivo::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:currentColor;margin-right:5px}
.pw-tst.pw-alerta{color:var(--p-neutro-texto);font-weight:700}
.pw-tpe .lnk-btn{margin-left:auto;flex:none}
.pw-parado{opacity:.4;filter:grayscale(1)}
.pw-fora{background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:var(--p-raio-cartao);padding:12px 16px;display:grid;gap:8px}
.pw-fora h2{margin:0;font-size:13px;font-weight:700;color:var(--p-texto)}
.pw-fora ul{list-style:none;margin:0;padding:0;display:flex;gap:8px;flex-wrap:wrap}
.pw-fora li{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:12px;color:var(--p-texto-sec);background:var(--p-neutro-suave);
  border:1px solid var(--p-linha);border-radius:999px;padding:3px 10px 3px 4px;max-width:100%}
.pw-fora li .av{width:22px;height:22px}
.pw-fora li b{color:var(--p-texto);font-weight:600}
.pw-fora p{margin:0;font-size:12px;color:var(--p-texto-sec)}
/* tela ampliada (uma janela só, sobre a parede — também na tela cheia) */
.pw-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:clamp(12px,2.5vmin,28px);
  background:rgba(11,27,58,.86)}
.pw-modal :focus-visible{outline:3px solid var(--p-azul-claro);outline-offset:2px}
.pw-caixa{display:flex;flex-direction:column;gap:8px;width:100%;height:100%;min-width:0;min-height:0}
.pw-topo{flex:0 0 auto;display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;padding:10px 14px;background:var(--p-cartao);border-radius:10px}
.pw-topo h2{flex:0 1 auto;min-width:0;margin:0;font-size:15px;font-weight:700;color:var(--p-texto);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pw-pos{font-size:12.5px;color:var(--p-texto-sec)}
.pw-selo{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;
  color:var(--p-azul);background:var(--p-azul-suave)}
.pw-selo::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}
.pw-selo.pw-con,.pw-selo.pw-par,.pw-selo.pw-off{color:var(--p-neutro-texto);background:var(--p-neutro-suave)}
.pw-selo.pw-off::before{border-radius:2px}
.pw-status{flex:0 0 auto;font-size:12px;color:var(--p-texto-sec);font-variant-numeric:tabular-nums}
.pw-topo-acoes{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}
.pw-nota{flex:0 0 100%;margin:0;font-size:11.5px;color:var(--p-texto-sec)}
.pw-palco{position:relative;flex:1 1 0;min-width:0;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden}
.pw-palco canvas{flex:0 0 auto;display:block;border-radius:6px}
.pw-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:40px;height:40px;border-radius:50%;border:0;
  background:rgba(255,255,255,.92);color:var(--p-marinho);font:inherit;font-size:20px;font-weight:800;line-height:1;cursor:pointer;
  box-shadow:0 2px 8px rgba(0,0,0,.25)}
.pw-nav:hover{background:#fff}
.pw-nav-ant{left:12px}
.pw-nav-prox{right:12px}
.pw-fim{max-width:560px;padding:16px 20px;border-radius:10px;background:var(--p-marinho);color:#fff;font-size:14px;line-height:1.5;text-align:center}

@media (max-width:1100px){
  .pw-g-sm{grid-template-columns:repeat(3,minmax(0,1fr))}
  .pw-g-md{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .lv-cols{grid-template-columns:minmax(0,1fr)}
  .lv-viewer{position:static}
  .lv-aviso-col{text-align:left}
}
@media (max-width:640px){
  .pw-g-sm{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pw-g-md,.pw-g-lg{grid-template-columns:minmax(0,1fr)}
  .pw-tam-rot{margin-left:0}
  .pw-wall-acoes,.pw-topo-acoes{margin-left:0}
  .lv-bar .lv-enc{margin-left:0}
}

/* ═════════════ 14. CLASSIFICAÇÃO (R13 — onda 4, T-E15: classificacao.html R12) — só dentro de .classif e das janelas .nr-dlg/.cl-info ═════════════ */
.classif{min-width:0}
.classif .crumb{font-size:12.5px;color:var(--p-texto-sec);margin-bottom:2px}
.classif .crumb b{color:var(--p-texto);font-weight:600}
.classif .card-h .lnk-btn{font-size:12.5px;font-weight:600}
/* topo: a divisão do TEMPO ativo — as 4 partes da Produtividade (sem classificação tracejado, nunca cor de categoria) */
.classif .comp4{display:flex;height:14px;border-radius:7px;overflow:hidden;margin:14px 16px 6px;background:var(--p-linha)}
.classif .comp4>i{display:block;height:100%}
.classif .comp4>i.p,.classif .sw.p{background:var(--p-produtivo)}
.classif .comp4>i.n,.classif .sw.n{background:var(--p-neutro)}
.classif .comp4>i.x,.classif .sw.x{background:var(--p-improdutivo)}
.classif .comp4>i.u,.classif .sw.u{background:repeating-linear-gradient(45deg,var(--p-linha) 0 3px,var(--p-cartao) 3px 6px);
  box-shadow:inset 0 0 0 1px #94A3B8}
.classif .sw{width:10px;height:10px;border-radius:3px;display:inline-block;flex:none}
.classif .cleg{display:flex;flex-wrap:wrap;gap:6px 18px;padding:6px 16px 12px;font-size:13px;color:var(--p-texto-sec);align-items:center}
.classif .cleg span{display:inline-flex;align-items:center;gap:6px}
.classif .cleg b{color:var(--p-marinho);font-variant-numeric:tabular-nums}
.classif .cleg small{font-size:12px}
.classif .cleg .cleg-dir{margin-left:auto}
.classif .cl-status{display:flex;gap:8px 14px;align-items:center;flex-wrap:wrap;padding:10px 16px;border-top:1px solid var(--p-linha);
  font-size:12.5px;color:var(--p-texto-sec)}
.classif .cl-status form{margin:0 0 0 auto}
.classif .cl-status .btn,.classif .cls3 .btn,.classif .rtool .btn,.classif .cl-pag .btn{font-family:inherit}
/* abas dentro do cartão */
.classif .cl-abas>.tabs2{padding:0 16px;margin:0}
.classif .aba-painel{outline:0;padding-bottom:4px}
.classif .aba-painel:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:-3px}
.classif .chint{margin:0;padding:12px 16px 4px;font-size:12.5px;color:var(--p-texto-sec);line-height:1.5}
.classif .cl-aviso,.classif .cl-sug{margin:10px 16px 0}
.classif .cl-sug{display:flex;gap:8px 12px;align-items:center;flex-wrap:wrap;padding:10px 12px;border:1px solid #C7D5F5;
  background:var(--p-azul-suave);border-radius:10px;font-size:12.5px;color:var(--p-texto);line-height:1.45}
.classif .cl-vazio{margin:12px 16px;padding:16px;border:1px dashed var(--p-linha);border-radius:10px;font-size:13px;
  color:var(--p-texto-sec);line-height:1.5}
.classif .cl-vazio b{display:block;color:var(--p-texto);font-size:14px;margin-bottom:2px}
/* fila "Para classificar" */
.classif .clista{list-style:none;margin:8px 0 0;padding:0}
.classif .crow{display:grid;grid-template-columns:minmax(0,1fr) 72px 92px auto;gap:6px 14px;align-items:center;padding:11px 16px;
  border-top:1px solid var(--p-linha);font-size:13.5px}
.classif .crow.ok{background:#F8FAFC}
.classif .c-nome{min-width:0}
.classif .c-nome b{font-weight:700;color:var(--p-marinho);overflow-wrap:anywhere}
.classif .c-nome small{display:block;font-size:12px;color:var(--p-texto-sec);overflow-wrap:anywhere}
.classif .c-nome small.sugestao{color:var(--p-azul)}
.classif .kch{display:inline-block;font-size:10.5px;font-weight:700;color:var(--p-texto-sec);border:1px solid var(--p-linha);
  border-radius:5px;padding:0 5px;margin-left:4px;vertical-align:1px}
.classif .c-t{font-weight:700;text-align:right;font-variant-numeric:tabular-nums;color:var(--p-marinho)}
.classif .c-p{color:var(--p-texto-sec);font-size:12px;text-align:right}
.classif .c-acoes{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.classif .cls3{display:inline-flex;border:1px solid var(--p-linha);border-radius:8px;overflow:hidden}
.classif .cls3 form{margin:0;display:flex}
.classif .cls3 .btn{border:0;border-left:1px solid var(--p-linha);border-radius:0;font-weight:600;color:var(--p-texto)}
.classif .cls3 form:first-child .btn{border-left:0}
.classif .cls3 .btn:hover{background:#F1F5F9}
.classif .cls3 .btn.sg{box-shadow:inset 0 0 0 2px var(--p-azul);color:var(--p-azul);background:var(--p-azul-suave)}
.classif .cls3 .btn:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:-3px}
.classif .c-feito{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12.5px;color:var(--p-texto-sec)}
.classif .c-msg{grid-column:1/-1;font-size:12.5px;color:var(--p-texto-sec)}
.classif .c-msg:empty{display:none}
/* grupos recolhidos da fila */
.classif .cgrp{border-top:1px solid var(--p-linha);background:#FBFCFE}
.classif .cgrp>summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 16px;
  cursor:pointer;list-style:none;font-size:13px}
.classif .cgrp>summary::-webkit-details-marker{display:none}
.classif .cgrp>summary b{color:var(--p-marinho)}
.classif .cgrp>summary small{display:block;color:var(--p-texto-sec);font-size:12px;line-height:1.45}
.classif .cgrp>summary:focus-visible,.classif .rev>summary:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:-3px;border-radius:6px}
.classif .cgrp .lnk,.classif .rev .lnk{font-size:12.5px;font-weight:600;color:var(--p-azul);white-space:nowrap}
.classif details[open]>summary .lnk .abre,.classif details:not([open])>summary .lnk .fecha{display:none}
.classif .ic2{width:28px;height:28px;border-radius:8px;background:#EEF1F6;display:grid;place-items:center;color:var(--p-texto-sec);
  font-weight:800;font-size:13px}
.classif .ic2 .ico{width:15px;height:15px}
.classif .cgrp p{margin:0;padding:0 16px 8px 56px;font-size:12.5px;color:var(--p-texto-sec);line-height:1.5}
.classif .cgrp ul{margin:0 0 10px;padding:0 16px 0 74px;display:grid;gap:4px;font-size:13px;overflow-wrap:anywhere}
.classif .cgrp li small{color:var(--p-texto-sec)}
/* aba Regras: busca e filtros (links que aplicam na hora) */
.classif .rtool{display:flex;gap:8px 12px;align-items:center;flex-wrap:wrap;padding:12px 16px 0;margin:0}
.classif .rtool form{margin:0}
.classif .rtool label.xs{display:inline-flex;align-items:center;gap:6px;font-weight:600;color:var(--p-texto-sec)}
.classif .rtool select,.classif .cl-pag select{font:inherit;font-size:12.5px;color:var(--p-texto);background:var(--p-cartao);
  border:1px solid var(--p-linha);border-radius:8px;padding:4px 6px}
.classif .sbox{display:flex;align-items:center;gap:8px;border:1px solid var(--p-linha);border-radius:8px;padding:6px 10px;
  width:min(280px,100%);color:var(--p-texto-sec);background:var(--p-cartao)}
.classif .sbox .ico{width:15px;height:15px}
.classif .sbox input{border:0;outline:0;font:inherit;font-size:13px;color:var(--p-texto);width:100%;background:transparent;min-width:0}
.classif .sbox:focus-within{outline:3px solid rgba(29,78,216,.45);outline-offset:1px}
.classif .fch{display:inline-flex;gap:6px;flex-wrap:wrap;align-items:center}
.classif .fch a{font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;border:1px solid var(--p-linha);
  color:var(--p-texto-sec);background:var(--p-cartao);text-decoration:none;white-space:nowrap}
.classif .fch a:hover{border-color:#A9B6C9}
.classif .fch a[aria-current="true"]{background:var(--p-marinho);border-color:var(--p-marinho);color:#fff}
.classif .fch a:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:2px}
/* "regras para revisar" (azul suave; o âmbar do protótipo fica perto do laranja de ação) */
.classif .rev{margin:12px 16px 0;border:1px solid #C7D5F5;background:var(--p-azul-suave);border-radius:10px}
.classif .rev>summary{display:flex;gap:6px 10px;align-items:center;flex-wrap:wrap;padding:10px 14px;cursor:pointer;list-style:none;
  font-size:13px;color:var(--p-texto-sec)}
.classif .rev>summary::-webkit-details-marker{display:none}
.classif .rev>summary b{color:var(--p-marinho)}
.classif .rev>summary .lnk{margin-left:auto}
.classif .rev-corpo{padding:0 14px 12px;display:grid;gap:8px;font-size:13px;background:var(--p-cartao);border-top:1px solid #C7D5F5;
  border-radius:0 0 10px 10px}
.classif .rev-corpo p{margin:8px 0 0;color:var(--p-texto-sec);font-size:12.5px;line-height:1.5}
.classif .rev-corpo h3{margin:8px 0 0;font-size:13px;font-weight:700;color:var(--p-marinho)}
.classif .rev-corpo form{margin:0}
.classif .rev-grupo{border:1px solid var(--p-linha);border-radius:8px;padding:8px 10px;display:grid;gap:6px}
.classif .rev-grupo small{color:var(--p-texto-sec)}
.classif .rev-linha{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
/* tabelas de regras e de bloqueios (colunas sem caixa alta) */
.classif table.team{margin-top:12px}
.classif .team th{text-transform:none;letter-spacing:0;font-size:12px}
.classif .team td:first-child,.classif .team th:first-child{padding-left:16px;overflow-wrap:anywhere}
.classif .team td:last-child,.classif .team th:last-child{padding-right:16px}
.classif .cl-tab tr.inativa td:first-child{color:var(--p-texto-sec)}
.classif .f-cat{display:inline-flex;gap:6px;align-items:center;margin:0}
.classif .csel{border:1px solid var(--p-linha);border-radius:8px;padding:4px 8px;font:inherit;font-size:12.5px;font-weight:600;
  background:var(--p-cartao);color:var(--p-texto);cursor:pointer}
.classif .csel:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:1px}
html.js .classif .f-salvar{display:none}
.classif .bloqueio-estado{max-width:300px;line-height:1.45}
.classif .bloqueio-estado form{margin:3px 0 0}
.classif .bloqueio-estado .pill.r{background:var(--p-improdutivo-suave);color:var(--p-improdutivo-texto)}
.classif .estado-nao-aplicado,.classif .bloqueado-omitido{color:var(--p-improdutivo-texto);margin:4px 0}
.classif .mais-eq>summary{cursor:pointer;font-weight:600;color:var(--p-marinho)}
/* "⋯": um menu por linha (Desativar, Remover, Bloquear acesso) */
.classif .mais{position:relative;display:inline-block}
.classif .mais>summary{list-style:none;font-weight:800;color:var(--p-texto-sec);text-align:center;border:1px solid var(--p-linha);
  border-radius:6px;line-height:24px;width:30px;cursor:pointer;background:var(--p-cartao)}
.classif .mais>summary::-webkit-details-marker{display:none}
.classif .mais>summary:hover{background:#F1F5F9}
.classif .mais>summary:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:2px}
.classif .mais .menu{position:absolute;right:0;top:calc(100% + 4px);background:var(--p-cartao);border:1px solid var(--p-linha);
  border-radius:10px;box-shadow:0 10px 28px rgba(11,27,58,.16);padding:6px;display:grid;min-width:190px;z-index:30;text-align:left}
.classif .mais .menu form{margin:0}
.classif .mais .mi{display:block;width:100%;text-align:left;font:inherit;font-size:13px;padding:7px 10px;border-radius:7px;border:0;
  background:none;color:var(--p-texto);cursor:pointer}
.classif .mais .mi:hover{background:#F1F5F9}
.classif .mais .mi.perigo{color:var(--p-improdutivo-texto)}
.classif .mais .mi:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:-2px}
/* paginação (a mesma das listas antigas, com o botão "Ir" só sem JavaScript) */
.classif .cl-pag{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:10px 16px}
.classif .cl-pag-f{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin:0}
.classif .cl-pag [aria-disabled="true"]{opacity:.45;pointer-events:none}
html.js .classif .cl-ir{display:none}
/* aba Bloqueios: a situação real no topo */
.classif .cl-bloq-sit{display:flex;gap:8px 12px;align-items:center;flex-wrap:wrap;padding:12px 16px 0;font-size:12.5px;color:var(--p-texto-sec)}
.classif #faixa-bloqueio{margin:12px 16px 0}
.classif .cl-rodape{padding-bottom:12px}
/* janela "+ Nova regra" (fora do contêiner da tela) */
dialog.nr-dlg{width:min(600px,calc(100vw - 32px))}
.nr-dlg form{display:grid;gap:14px;margin:0}
.nr-dlg .dlg-t{margin:0}
.nr-dlg .fld{display:grid;gap:6px;border:0;margin:0;padding:0;min-width:0;font-size:13px;font-weight:600;color:var(--p-texto)}
.nr-dlg .fld legend{padding:0;margin-bottom:6px;font-weight:600}
.nr-dlg .fld small{font-weight:500;color:var(--p-texto-sec);font-size:12px;line-height:1.45}
.nr-dlg input[type="text"]{font:inherit;font-size:14px;font-weight:500;color:var(--p-texto);background:var(--p-cartao);
  border:1px solid var(--p-linha);border-radius:8px;padding:8px 10px;min-width:0}
.nr-dlg input[type="text"]:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:1px}
.nr-dlg input[aria-invalid="true"]{border-color:var(--p-improdutivo)}
.nr-dlg .campo-erro{margin:0;font-size:12.5px;font-weight:600;color:var(--p-improdutivo-texto);line-height:1.45}
.nr-dlg .seg2{display:inline-flex;flex-wrap:wrap;border:1px solid var(--p-linha);border-radius:8px;overflow:hidden;justify-self:start}
.nr-dlg .seg2 label{display:inline-flex;align-items:center;cursor:pointer;border-left:1px solid var(--p-linha);position:relative}
.nr-dlg .seg2 label:first-child{border-left:0}
.nr-dlg .seg2 input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.nr-dlg .seg2 span{padding:6px 12px;font-size:12.5px;font-weight:700;color:var(--p-texto-sec)}
.nr-dlg .seg2 input:checked+span{background:var(--p-marinho);color:#fff}
.nr-dlg .seg2 input:focus-visible+span{outline:3px solid rgba(29,78,216,.45);outline-offset:-3px}
.nr-dlg .prev2{margin:0;background:var(--p-neutro-suave);border-radius:10px;padding:10px 12px;font-size:13px;color:var(--p-texto);line-height:1.45}
.nr-dlg .nr-nota{margin:0;font-size:12px;color:var(--p-texto-sec)}
/* janela "O que cada categoria faz" */
dialog.cl-info{width:min(560px,calc(100vw - 32px))}
.cl-info p{margin:0 0 8px;font-size:13.5px;line-height:1.5}
.cl-info p.muted{color:var(--p-texto-sec);font-size:12.5px}
.cl-info dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px 12px;margin:10px 0 12px;font-size:13.5px;align-items:start}
.cl-info dt,.cl-info dd{margin:0}
.cl-info dd{line-height:1.5}
@media (max-width:760px){
  .classif .crow{grid-template-columns:minmax(0,1fr) auto}
  .classif .c-p{text-align:left}
  .classif .c-acoes{grid-column:1/-1;justify-content:flex-start}
  .classif .cleg .cleg-dir{margin-left:0;flex-basis:100%}
  .classif .cl-status form{margin-left:0}
  .classif .cgrp p{padding-left:16px}
  .classif .cgrp ul{padding-left:34px}
  .classif .cl-tab thead{display:none}
  .classif .cl-tab tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;padding:10px 16px;border-bottom:1px solid var(--p-linha)}
  .classif .cl-tab td{display:block;padding:0;border:0}
  .classif .cl-tab td:first-child{grid-column:1/-1;font-weight:600;padding-left:0}
  .classif .cl-tab td:last-child{padding-right:0}
  .classif .bloqueio-estado{grid-column:1/-1;max-width:none}
}

/* ═════════════ 15. POLÍTICA DE COLETA (R14 — onda 4, T-E16: politica.html R36) — só dentro de .politica-tela e das janelas .pol-hist/.pol-hor-dlg e do aviso .pol-toast ═════════════ */
.politica-tela{min-width:0}
.politica-tela .crumb{font-size:12.5px;color:var(--p-texto-sec);margin-bottom:2px}
.politica-tela .crumb b{color:var(--p-texto);font-weight:600}
.politica-tela .pol-pilha{display:grid;gap:14px}
.politica-tela .aba-painel{outline:0}
.politica-tela .aba-painel:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:2px;border-radius:8px}
.politica-tela .banner{margin-bottom:0}
/* linha de versão */
.politica-tela .vline{display:flex;gap:6px 12px;align-items:center;flex-wrap:wrap;font-size:13px;color:var(--p-texto-sec)}
.politica-tela .vline b{color:var(--p-texto)}
.politica-tela .vtag{font-size:12px;font-weight:800;background:var(--p-marinho);color:#fff;border-radius:6px;padding:2px 8px}
.politica-tela .vtag.vtag-nada{background:var(--p-neutro-suave);color:var(--p-neutro-texto)}
.politica-tela .ph>div{flex:1 1 480px;min-width:0}
.politica-tela .pol-status{margin:0;font-size:12.5px;line-height:1.45;color:var(--p-texto-sec);min-height:0}
.politica-tela .pol-status:empty{display:none}
/* "Aplicando…" só para leitor de tela (o retorno visível é o aviso flutuante); a recusa aparece na linha */
.politica-tela .pol-status.sal{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;
  clip:rect(0 0 0 0);white-space:nowrap;border:0}
.politica-tela .pol-status.erro{color:var(--p-improdutivo-texto);font-weight:600;background:var(--p-improdutivo-suave);
  border:1px solid var(--p-improdutivo-borda);border-radius:9px;padding:9px 12px}
/* faixas de atenção: o .banner.info azul (texto + botão de ação secundário) */
.politica-tela .pol-faixa{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center}
.politica-tela .pol-faixa-ic{width:28px;height:28px;border-radius:8px;background:var(--p-cartao);color:var(--p-azul);
  display:grid;place-items:center;font-weight:800;border:1px solid #C7D5F5}
.politica-tela .pol-faixa-t{font-size:13px;color:var(--p-texto);line-height:1.45}
.politica-tela .pol-faixa-t small{display:block;color:var(--p-texto-sec);font-size:12.5px;margin-top:2px}
.politica-tela .pol-faixa .btn{font-family:inherit;white-space:nowrap}
/* níveis de sensibilidade (letra normal, nunca caixa alta) */
.politica-tela .lvl,.pol-hist .lvl{font-size:11px;font-weight:700;border-radius:999px;padding:2px 9px;white-space:nowrap}
.politica-tela .lvl.l1{background:var(--p-neutro-suave);color:var(--p-neutro-texto)}
.politica-tela .lvl.l2{background:var(--p-azul-suave);color:var(--p-azul)}
.politica-tela .lvl.l3{background:var(--p-improdutivo-suave);color:var(--p-improdutivo-texto)}
/* Resumo: 4 grupos, ✓/✕ */
.politica-tela .sum{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.politica-tela .sg{padding:14px 18px;border-top:1px solid var(--p-linha);display:grid;gap:8px;align-content:start;min-width:0}
.politica-tela .sg:nth-child(-n+2){border-top:0}
.politica-tela .sg:nth-child(odd){border-right:1px solid var(--p-linha)}
.politica-tela .card .sg h3{margin:0 0 2px;font-size:13.5px;font-weight:800;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.politica-tela .sg-mudar{margin-left:auto}
.politica-tela .it{display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;align-items:start;font-size:13px;line-height:1.4}
.politica-tela .it small{display:block;color:var(--p-texto-sec);font-size:12px}
.politica-tela .yes{color:var(--p-produtivo);font-weight:800}
.politica-tela .no{color:#94A3B8;font-weight:800}
.politica-tela .never{border:1px solid var(--p-linha);background:var(--p-neutro-suave);border-radius:var(--p-raio-cartao);
  padding:14px 18px;display:grid;gap:8px}
.politica-tela .never h2{margin:0;font-size:14px;font-weight:800}
.politica-tela .nl{display:flex;flex-wrap:wrap;gap:6px}
.politica-tela .nl>span{font-size:12.5px;font-weight:600;background:var(--p-cartao);border:1px solid var(--p-linha);
  border-radius:999px;padding:4px 10px;overflow-wrap:anywhere}
.politica-tela .nl>span small{font-weight:500;color:var(--p-texto-sec)}
/* linha de opção: título + texto do risco à esquerda, interruptor à direita */
.politica-tela .tg{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 18px;
  border-top:1px solid var(--p-linha);font-size:13px;cursor:pointer;margin:0}
.politica-tela .card-h+.tg,.politica-tela .card-h+.pol-intro{border-top:0}
.politica-tela .tg.so-ler{cursor:default}
.politica-tela .tg-txt{display:grid;gap:3px;min-width:0}
.politica-tela .tg-cab{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.politica-tela .tg-t{font-size:13.5px;line-height:1.35}
.politica-tela .tg-t label{cursor:pointer}
.politica-tela .tg-i{display:grid;gap:4px}
.politica-tela .tg-i small{display:block;color:var(--p-texto-sec);font-size:12.5px;line-height:1.45;max-width:780px}
.politica-tela .tg-efeito{display:block;font-size:12.5px;line-height:1.45;color:var(--p-improdutivo-texto);
  background:var(--p-improdutivo-suave);border-radius:8px;padding:7px 10px;max-width:780px}
.politica-tela .tg-ctl{display:flex;align-items:center;gap:8px;justify-content:flex-end}
.politica-tela .tg-sel select{font-family:inherit;font-size:13px;min-width:170px;max-width:260px}
.politica-tela .pol-nunca-txt{font-size:12px;font-weight:700;color:var(--p-texto-sec)}
.politica-tela .pol-intro{margin:0;padding:12px 18px;font-size:12.5px;color:var(--p-texto-sec);line-height:1.5}
/* interruptor = o MESMO <input type=checkbox> (o envio do formulário não muda), só com outra aparência */
.politica-tela .pol-sw{-webkit-appearance:none;appearance:none;display:inline-block;flex:none;width:36px;height:20px;margin:0;
  border:0;border-radius:999px;cursor:inherit;background:#CBD5E1 radial-gradient(circle at 10px 50%,#fff 0 7px,transparent 7.5px) no-repeat;
  transition:background-color .15s}
.politica-tela .pol-sw:checked{background:var(--p-azul) radial-gradient(circle at 26px 50%,#fff 0 7px,transparent 7.5px) no-repeat}
.politica-tela .pol-sw:disabled{opacity:.5;cursor:not-allowed}
.politica-tela .pol-sw:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:2px}
.politica-tela .pol-sw-est{min-width:62px;font-size:12px;font-weight:700;color:var(--p-texto-sec);text-align:right;order:-1}
.politica-tela .pol-sw-est::after{content:"desligado"}
.politica-tela .pol-sw:checked+.pol-sw-est{color:var(--p-azul)}
.politica-tela .pol-sw:checked+.pol-sw-est::after{content:"ligado"}
@media (forced-colors:active){.politica-tela .pol-sw{-webkit-appearance:auto;appearance:auto;width:auto;height:auto;background:none}}
/* notas: etiqueta (forma + texto) + o texto da nota */
.politica-tela .pol-nota{display:flex;align-items:flex-start;flex-wrap:wrap;gap:4px 8px;font-size:12.5px;line-height:1.45;color:var(--p-texto)}
.politica-tela .pol-tag{display:inline-flex;align-items:center;font-size:11px;font-weight:700;line-height:1.4;border:1px solid;
  border-radius:6px;padding:1px 7px;white-space:nowrap}
.politica-tela .pol-tag.plano{color:var(--p-azul);background:var(--p-azul-suave);border-color:#C7D5F5}
.politica-tela .pol-tag.aviso{color:var(--p-neutro-texto);background:var(--p-neutro-suave);border-color:#CBD5E1}
.politica-tela .pol-tag.alerta{color:var(--p-improdutivo-texto);background:var(--p-improdutivo-suave);border-color:var(--p-improdutivo-borda)}
.politica-tela .pol-tag.auditado{color:var(--p-azul);background:var(--p-azul-suave);border-color:#C7D5F5}
/* blocos internos (horário, exclusões, bloqueio) */
.politica-tela .tsec{padding:14px 18px;border-top:1px solid var(--p-linha);display:grid;gap:10px}
.politica-tela .card-h+.tsec{border-top:0}
.politica-tela .card .tsec h3{margin:0;font-size:12.5px;font-weight:700;color:var(--p-texto-sec);display:flex;align-items:center;gap:8px}
.politica-tela .pol-cont{font-size:11px;font-weight:700;background:var(--p-neutro-suave);color:var(--p-texto-sec);border-radius:999px;padding:1px 7px}
.politica-tela .hsum{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px;flex-wrap:wrap}
.politica-tela .hsum b{font-size:14px}
.politica-tela .hsum small{display:block;color:var(--p-texto-sec);font-size:12.5px;line-height:1.45;margin-top:2px;max-width:640px}
.politica-tela .hsum .btn{font-family:inherit}
.politica-tela .pol-cat{display:grid;grid-template-columns:minmax(120px,170px) minmax(0,1fr);gap:10px;align-items:start;font-size:13px}
.politica-tela .pol-cat-n small{display:block;font-size:11.5px;color:var(--p-texto-sec);line-height:1.4;margin-top:2px}
.politica-tela .pol-lista{display:grid;max-height:360px;overflow:auto;border:1px solid var(--p-linha);border-radius:10px}
.politica-tela .mrow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;font-size:13px;
  padding:8px 12px;border-top:1px solid var(--p-linha)}
.politica-tela .mrow:first-child{border-top:0}
.politica-tela .mrow b{overflow-wrap:anywhere}
.politica-tela .mrow small{display:block;color:var(--p-texto-sec);font-size:12px}
.politica-tela .mrow form{margin:0}
.politica-tela .mrow .btn,.politica-tela .pol-add .btn{font-family:inherit}
.politica-tela .pol-situacao{font-size:13px;color:var(--p-texto-sec)}
.politica-tela .pol-situacao b{color:var(--p-texto)}
.politica-tela .pol-add{display:flex;align-items:flex-end;gap:10px 12px;flex-wrap:wrap;margin:0}
.politica-tela .pol-campo{display:grid;gap:4px;font-size:12.5px;font-weight:600;color:var(--p-texto-sec);flex:1 1 260px;min-width:0}
.politica-tela .pol-campo.estreito{flex:0 1 160px}
.politica-tela .pol-campo input,.politica-tela .pol-campo select{font:inherit;font-size:13.5px;font-weight:500;color:var(--p-texto);
  border:1px solid var(--p-linha);border-radius:8px;padding:7px 10px;background:var(--p-cartao);width:100%;box-sizing:border-box}
.politica-tela .pol-dica{margin:0;font-size:12.5px;line-height:1.5;color:var(--p-texto-sec);max-width:780px}
.politica-tela .pol-vazio{margin:0;padding:12px 14px;border:1px dashed var(--p-linha);border-radius:10px;font-size:12.5px;
  line-height:1.5;color:var(--p-texto-sec)}
.politica-tela .pol-filtro{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600}
.politica-tela .pol-filtro input{font:inherit;font-size:13px;border:1px solid var(--p-linha);border-radius:8px;padding:6px 10px;
  width:100%;max-width:280px}
.politica-tela .tg noscript p,.politica-tela .card>noscript p{padding:10px 18px}
/* histórico de versões (painel lateral) */
.pol-hist .pl-corpo{display:grid;gap:10px}
.pol-hist .pol-dica{margin:0;font-size:12.5px;line-height:1.5;color:var(--p-texto-sec)}
.pol-hist .hr2{display:grid;grid-template-columns:52px minmax(0,1fr);gap:12px;align-items:start;padding:10px 0;
  border-top:1px solid var(--p-linha);font-size:13px}
.pol-hist .hr2 b{font-variant-numeric:tabular-nums}
.pol-hist .chgs{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
.pol-hist .chg{font-size:11.5px;font-weight:600;border-radius:6px;padding:1px 7px;background:var(--p-neutro-suave);color:var(--p-neutro-texto)}
.pol-hist .chg.up{background:var(--p-improdutivo-suave);color:var(--p-improdutivo-texto)}
.pol-hist .chg.dn{background:var(--p-produtivo-suave);color:var(--p-produtivo-texto)}
.pol-hist .pol-vazio{margin:0;padding:12px 14px;border:1px dashed var(--p-linha);border-radius:10px;font-size:12.5px;color:var(--p-texto-sec)}
.pol-hist .pol-hist-pag{display:flex;gap:8px;justify-content:space-between;flex-wrap:wrap}
.pol-hist .btn,.pol-hist a.btn{font-family:inherit;text-decoration:none}
/* janela do horário */
dialog.pol-hor-dlg{box-sizing:border-box;width:min(520px,calc(100vw - 32px));max-width:calc(100vw - 32px)}
.pol-hor-dlg form{display:grid;gap:12px;margin:0;min-width:0}
.pol-hor-dlg input[type="time"],.pol-hor-dlg select{width:100%;box-sizing:border-box;min-width:0}
.pol-hor-dlg .dlg-t{margin:0}
.pol-hor-dlg label{display:grid;gap:4px;font-size:12.5px;font-weight:600;color:var(--p-texto-sec)}
.pol-hor-dlg input[type="time"],.pol-hor-dlg select{font:inherit;font-size:14px;color:var(--p-texto);border:1px solid var(--p-linha);
  border-radius:8px;padding:8px 10px;background:var(--p-cartao)}
.pol-hor-dlg .pol-hor-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pol-hor-dlg .pol-dias{border:0;margin:0;padding:0;min-width:0}
.pol-hor-dlg .pol-dias legend{padding:0;margin:0 0 6px;font-size:12.5px;font-weight:600;color:var(--p-texto-sec)}
.pol-hor-dlg .pol-dias-lista{display:flex;flex-wrap:wrap;gap:6px}
.pol-hor-dlg label.pol-dia{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border:1px solid var(--p-linha);
  border-radius:8px;background:var(--p-cartao);font-size:13px;font-weight:600;color:var(--p-texto);cursor:pointer}
.pol-hor-dlg label.pol-dia input{margin:0;accent-color:var(--p-marinho)}
.pol-hor-dlg label.pol-dia:has(input:checked){background:var(--p-azul-suave);border-color:#C7D5F5}
.pol-hor-dlg .pol-dica{margin:0;font-size:12.5px;color:var(--p-texto-sec)}
.pol-hor-dlg .pol-erro{margin:0;font-size:13px;font-weight:600;color:var(--p-improdutivo-texto);background:var(--p-improdutivo-suave);
  border:1px solid var(--p-improdutivo-borda);border-radius:9px;padding:9px 12px}
.pol-hor-dlg .pol-erro[hidden]{display:none}
.pol-hor-dlg .acts .btn{font-family:inherit}
/* sem JavaScript: a janela do horário aparece aberta na página (o formulário envia direto) */
html:not(.js) dialog.pol-hor-dlg{display:block;position:static;margin:16px 0;width:auto;max-width:100%;box-shadow:none;
  border:1px solid var(--p-linha)}
html:not(.js) dialog.pol-hor-dlg [data-fecha-janela]{display:none}
/* aviso "Versão N em vigor · … · Desfazer" (o .toast da seção 2, com um botão) */
.pol-toast{visibility:hidden}
.pol-toast.on{visibility:visible;pointer-events:auto}
.pol-toast .pol-desfazer{font:inherit;font-weight:700;color:#93C5FD;background:none;border:0;padding:0 0 0 10px;cursor:pointer}
.pol-toast .pol-desfazer[hidden]{display:none}
.pol-toast .pol-desfazer:focus-visible{outline:2px solid #93C5FD;outline-offset:2px;border-radius:4px}
@media (max-width:760px){
  .politica-tela .sum{grid-template-columns:minmax(0,1fr)}
  .politica-tela .sg:nth-child(odd){border-right:0}
  .politica-tela .sg:nth-child(2){border-top:1px solid var(--p-linha)}
  .politica-tela .pol-faixa{grid-template-columns:auto minmax(0,1fr)}
  .politica-tela .pol-faixa .btn{grid-column:1/-1;justify-self:start}
  .politica-tela .tg{grid-template-columns:minmax(0,1fr)}
  .politica-tela .tg-ctl{justify-content:flex-start}
  .politica-tela .pol-sw-est{order:0;text-align:left;min-width:0}
  .politica-tela .pol-cat{grid-template-columns:minmax(0,1fr)}
  .pol-hor-dlg .pol-hor-grid{grid-template-columns:minmax(0,1fr)}
}

/* ═════════════ 16. PONTO (R15 — onda 4, T-E19: ponto.html R1) — só dentro de .ponto-tela e da gaveta dialog.ponto-dia ═════════════ */
.ponto-tela .ph{margin-bottom:0}
.ponto-tela .ph .btn{font-family:inherit;text-decoration:none}
/* barra: período · data com setas · equipe · horário numa linha */
.ponto-tela .pt-ferr{display:flex;gap:10px 14px;align-items:center;flex-wrap:wrap}
.ponto-tela .pt-dnav{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:700;color:var(--p-marinho)}
.ponto-tela .pt-dnav .b{width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--p-linha);border-radius:8px;
  background:var(--p-cartao);color:var(--p-texto-sec);text-decoration:none;font-size:16px;line-height:1}
.ponto-tela .pt-dnav a.b:hover{background:#F8FAFC;color:var(--p-marinho)}
.ponto-tela .pt-dnav .b.off{visibility:hidden}
.ponto-tela .pt-eq{margin:0}
.ponto-tela .pt-eq select{font:inherit;font-size:13px;font-weight:600;color:var(--p-texto);background:var(--p-cartao);
  border:1px solid var(--p-linha);border-radius:8px;padding:6px 8px;max-width:260px}
.ponto-tela .pt-hor{margin:0 0 0 auto;font-size:12.5px;color:var(--p-texto-sec);line-height:1.45}
/* faixa "ponto esquecido" — azul de informação (o âmbar do protótipo não existe nos tokens) */
.ponto-tela .pt-faixa{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;
  background:var(--p-azul-suave);border:1px solid #C7D5F5;border-radius:var(--p-raio-cartao);padding:12px 16px;font-size:13px}
.ponto-tela .pt-faixa-ic{width:28px;height:28px;border-radius:8px;background:var(--p-cartao);color:var(--p-azul);
  display:grid;place-items:center;font-weight:800;border:1px solid #C7D5F5}
.ponto-tela .pt-faixa-t b{color:var(--p-marinho);font-weight:700;overflow-wrap:anywhere}
.ponto-tela .pt-faixa-t small{display:block;color:var(--p-texto-sec);font-size:12.5px;margin-top:2px}
.ponto-tela .pt-faixa .btn{font-family:inherit;white-space:nowrap;text-decoration:none}
.ponto-tela .pt-faixa-mais,.ponto-tela .pt-fora{margin:0;font-size:13px;color:var(--p-texto-sec)}
.ponto-tela .pt-fora b{color:var(--p-marinho)}
.ponto-tela .pt-erro,.ponto-dia .pt-erro{margin:0;font-size:13px;font-weight:600;color:var(--p-improdutivo-texto);
  background:var(--p-improdutivo-suave);border:1px solid var(--p-improdutivo-borda);border-radius:9px;padding:9px 12px}
/* tabela do dia / da semana / do mês (colunas sem caixa alta) */
.ponto-tela .team th{text-transform:none;letter-spacing:0;font-size:12px}
.ponto-tela .team td{vertical-align:middle}
.ponto-tela .tm b{font-weight:700}
.ponto-tela .tm small,.ponto-tela .pcomp small,.ponto-tela .pt-mes td small,.ponto-tela .pt-semana td small{display:block;
  color:var(--p-texto-sec);font-size:11.5px;font-weight:500}
.ponto-tela .pcomp{color:var(--p-texto-sec);font-size:12.5px;white-space:nowrap}
.ponto-tela .pt-sem{color:var(--p-texto-sec)}
.ponto-tela .pt-aberto{color:var(--p-marinho);font-weight:700}
.ponto-tela .difp{font-weight:700;color:var(--p-azul)}
.ponto-tela .difn{color:var(--p-texto-sec)}
.ponto-tela .pt-selo,.ponto-dia .pt-selo{display:inline-flex;align-items:center;font-size:11px;font-weight:700;border-radius:6px;
  padding:1px 6px;margin-left:4px;vertical-align:1px}
.ponto-tela .pt-selo.gps{color:var(--p-azul);background:var(--p-azul-suave)}
.ponto-tela .pt-selo.net{color:var(--p-neutro-texto);background:var(--p-neutro-suave)}
.ponto-tela .pt-selo.aj{color:var(--p-neutro-texto);background:var(--p-cartao);border:1px dashed #A9B6C9;padding:0 5px}
.ponto-tela .pt-semana th:not(:first-child),.ponto-tela .pt-semana td:not(:first-child){text-align:center}
.ponto-tela .pt-semana th a{color:inherit;text-decoration:none}
.ponto-tela .pt-semana th a:hover{text-decoration:underline}
.ponto-tela .pt-semana th.hoje{color:var(--p-azul)}
.ponto-tela .pt-semana td.fds{background:#FAFBFD}
.ponto-tela .pt-semana td.vazio{color:#A9B6C9}
.ponto-tela .chint{margin:0;padding:12px 16px 14px;font-size:12.5px;color:var(--p-texto-sec);border-top:1px solid var(--p-linha);line-height:1.5}
.ponto-tela .pt-pag{display:flex;gap:10px;align-items:center;justify-content:flex-end;font-size:12.5px;color:var(--p-texto-sec);flex-wrap:wrap}
.ponto-tela .pt-pag .btn{font-family:inherit;text-decoration:none}
.ponto-tela .trans-note>div{display:grid;gap:6px}
.ponto-tela .pt-cred{font-size:12px}
.ponto-tela .pt-cred a{color:inherit}
/* gaveta do dia da pessoa */
dialog.ponto-dia{width:min(640px,100vw)}
.ponto-dia .pl-cab .av.lg{width:42px;height:42px}
.ponto-dia .pd-tit{flex:1;min-width:0}
.ponto-dia .pd-tit h2{margin:0;font-size:16px;font-weight:800;letter-spacing:-.01em;overflow-wrap:anywhere}
.ponto-dia .pd-tit small{display:block;color:var(--p-texto-sec);font-size:12.5px;margin-top:2px}
.ponto-dia .pl-cab .btn{font-family:inherit;text-decoration:none}
.ponto-dia .pt-ok{margin:0;font-size:13px;font-weight:600;color:var(--p-azul);background:var(--p-azul-suave);
  border:1px solid #C7D5F5;border-radius:9px;padding:9px 12px}
.ponto-dia .cmpb{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ponto-dia .cmpb>div{background:#F8FAFC;border:1px solid var(--p-linha);border-radius:10px;padding:10px 12px;display:grid;gap:2px;align-content:start}
.ponto-dia .cmpb span{font-size:12px;color:var(--p-texto-sec);font-weight:600}
.ponto-dia .cmpb b{font-size:17px;font-weight:800;color:var(--p-marinho);font-variant-numeric:tabular-nums}
.ponto-dia .cmpb small{font-size:11.5px;color:var(--p-texto-sec)}
.ponto-dia .pd-sec{display:grid;gap:8px;margin:0}
.ponto-dia .pd-sec h3{margin:0;font-size:12.5px;font-weight:700;color:var(--p-texto-sec)}
.ponto-dia .pd-vazio{margin:0;font-size:12.5px;color:var(--p-texto-sec)}
.ponto-dia .bat{display:grid;grid-template-columns:52px 64px minmax(0,1fr) auto;gap:4px 10px;align-items:center;font-size:13px;
  padding:8px 10px;border:1px solid var(--p-linha);border-radius:10px}
.ponto-dia .bat .h{font-size:15px;font-weight:800;color:var(--p-marinho);font-variant-numeric:tabular-nums}
.ponto-dia .bat small{display:block;color:var(--p-texto-sec);font-size:12px;overflow-wrap:anywhere}
.ponto-dia .bat .o{min-width:0}
.ponto-dia .bat .a{justify-self:end}
.ponto-dia .bat.adj{background:#F8FAFC;border-style:dashed;border-color:#A9B6C9}
.ponto-dia .bat.subst .h,.ponto-dia .bat.subst .t{text-decoration:line-through;opacity:.6}
.ponto-dia .bat .lnk{font-size:12.5px;font-weight:600;color:var(--p-azul);text-decoration:none;white-space:nowrap}
.ponto-dia .bat .lnk:hover{text-decoration:underline}
.ponto-dia .pt-ajustar{grid-column:1/-1}
.ponto-dia .pt-ajustar>summary{cursor:pointer;font-size:12.5px;font-weight:600;color:var(--p-azul);width:max-content}
.ponto-dia .pt-frm{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;margin-top:8px}
.ponto-dia .pt-frm label,.ponto-dia .frm2 label{display:grid;gap:4px;font-size:12.5px;font-weight:600;color:var(--p-texto-sec);min-width:0}
.ponto-dia input[type="text"],.ponto-dia input[type="datetime-local"]{font:inherit;font-size:13.5px;font-weight:500;color:var(--p-texto);
  background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:8px;padding:7px 10px;width:100%;box-sizing:border-box;min-width:0}
.ponto-dia input[aria-invalid="true"]{border-color:var(--p-improdutivo)}
.ponto-dia input:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:1px}
.ponto-dia .fe{display:block;font-size:12px;font-weight:600;color:var(--p-improdutivo-texto);grid-column:1/-1}
.ponto-dia .pt-frm-acts{display:flex;gap:10px;align-items:center;flex-wrap:wrap;grid-column:1/-1}
.ponto-dia .pt-frm-acts small{font-size:12.5px;color:var(--p-texto-sec)}
.ponto-dia .pt-frm-acts .btn{font-family:inherit}
.ponto-dia .pt-incluir{border-top:1px solid var(--p-linha);padding-top:14px}
.ponto-dia .frm2{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,1.3fr);gap:10px;align-items:start}
.ponto-dia .pt-tipo{border:0;margin:0;padding:0;min-width:0;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.ponto-dia .pt-tipo legend{padding:0;margin:0 0 4px;font-size:12.5px;font-weight:600;color:var(--p-texto-sec);width:100%}
.ponto-dia .pt-tipo label{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border:1px solid var(--p-linha);
  border-radius:8px;background:var(--p-cartao);font-size:13px;font-weight:600;color:var(--p-texto);cursor:pointer}
.ponto-dia .pt-tipo label:has(input:checked){background:var(--p-marinho);border-color:var(--p-marinho);color:#fff}
.ponto-dia .pt-tipo input{margin:0;accent-color:var(--p-marinho)}
/* sem JavaScript: o dia da pessoa aparece na própria página (o "Fechar" é um link que volta para a lista) */
html:not(.js) dialog.ponto-dia{display:block;position:static;margin:16px 0;width:auto;max-width:100%;height:auto;
  max-height:none;box-shadow:none;border:1px solid var(--p-linha);border-radius:var(--p-raio-cartao)}
@media (max-width:760px){
  .ponto-tela .pt-hor{margin-left:0;flex-basis:100%}
  .ponto-tela .pt-faixa{grid-template-columns:auto minmax(0,1fr)}
  .ponto-tela .pt-faixa .btn{grid-column:1/-1;justify-self:start}
  .ponto-dia .cmpb,.ponto-dia .frm2,.ponto-dia .pt-frm{grid-template-columns:minmax(0,1fr)}
  .ponto-dia .bat{grid-template-columns:52px minmax(0,1fr)}
  .ponto-dia .bat .o,.ponto-dia .bat .a{grid-column:1/-1;justify-self:start}
}

/* ═════════════ 17. COMPUTADORES (R16 — onda 4, T-E21/T-E22/T-E23: computadores.html R1) — só dentro de .comp-tela e das janelas .comp-dlg/.comp-ficha ═════════════ */
.comp-tela{display:grid;gap:16px}
.comp-tela .ph{margin-bottom:0}
.comp-tela .ph .btn{font-family:inherit;text-decoration:none}
.comp-tela .tabs2{margin-bottom:0}
.comp-tela [hidden]{display:none!important}
.comp-crumb{font-size:12.5px;color:var(--p-texto-sec);margin-bottom:2px}
.comp-crumb b{color:var(--p-texto);font-weight:600}
.comp-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.comp-tela .notec,.comp-ficha .notec,.comp-dlg .notec{font-size:12.5px;color:var(--p-texto-sec);margin:0;line-height:1.5}
.comp-tela .lnk,.comp-ficha .lnk{font-size:12.5px;font-weight:600;color:var(--p-azul);text-decoration:none;cursor:pointer}
.comp-tela .lnk:hover,.comp-ficha .lnk:hover{text-decoration:underline}
.comp-ok{margin:0;font-size:13px;font-weight:600;color:var(--p-azul);background:var(--p-azul-suave);border:1px solid #C7D5F5;
  border-radius:9px;padding:9px 12px}
.comp-ok.comp-aviso{font-weight:500;color:var(--p-texto)}
.comp-erro{margin:0;font-size:12.5px;font-weight:600;color:var(--p-improdutivo-texto)}
/* indicadores (.kgrid/.kc do protótipo) */
.comp-kgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.comp-kgrid .kc{background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:12px;padding:12px 14px;display:grid;gap:2px;align-content:start}
.comp-kgrid .kc .l{font-size:12.5px;color:var(--p-texto-sec);font-weight:600}
.comp-kgrid .kc .v{font-size:22px;font-weight:800;color:var(--p-marinho);font-variant-numeric:tabular-nums}
.comp-kgrid .kc .c{font-size:12px;color:var(--p-texto-sec)}
/* cartão + tabela (.tb do protótipo) */
.comp-tela .comp-card,.comp-ficha .comp-card{padding:0;overflow:visible}
.comp-tela .comp-card>.card-h{margin:0;padding:14px 18px;border-bottom:1px solid var(--p-linha)}
.comp-tela .comp-card>.card-h h2{margin:0;font-size:15px;font-weight:700}
.comp-tb{width:100%;border-collapse:collapse;font-size:13px}
.comp-tb th{font-size:11.5px;font-weight:700;color:var(--p-texto-sec);text-align:left;padding:9px 16px;border-bottom:1px solid var(--p-linha);white-space:nowrap}
.comp-tb td{padding:10px 16px;border-bottom:1px solid var(--p-linha);vertical-align:middle}
.comp-tb tr:last-child td{border-bottom:0}
.comp-tb small{display:block;color:var(--p-texto-sec);font-size:11.5px;font-weight:500}
.comp-tb .r{text-align:right}
.comp-tb .who{gap:8px}
.comp-tb .who .av{width:26px;height:26px}
.comp-tb-mini td,.comp-tb-mini th{padding:7px 10px}
.comp-tela tr.clk{cursor:pointer}
.comp-tela tr.clk:hover td{background:#F8FAFC}
.comp-lk{color:var(--p-marinho);text-decoration:none}
.comp-lk:hover{text-decoration:underline}
.comp-vazio{color:var(--p-texto-sec);font-size:13px}
.comp-sem{color:var(--p-texto-sec)}
/* uma situação por computador (.sit3 do protótipo: ponto verde = funcionando, cinza = sem contato/removido) */
.sit3{display:inline-flex;gap:6px;align-items:center;font-weight:700;font-size:12.5px}
.sit3 i{width:8px;height:8px;border-radius:50%;background:#15803D;flex:none}
.sit3.off i{background:#94A3B8}
.cnm{display:flex;gap:8px;align-items:center}
/* "⋯" da linha (<details>: abre sem JavaScript) */
.comp-menu{position:relative;display:inline-block}
.comp-menu>summary{list-style:none}
.comp-menu>summary::-webkit-details-marker{display:none}
.dots5{border:1px solid var(--p-linha);background:var(--p-cartao);border-radius:8px;padding:2px 9px;cursor:pointer;font-weight:800;color:var(--p-texto-sec)}
.comp-menu .dmenu{position:absolute;right:0;top:calc(100% + 4px);background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:10px;
  box-shadow:0 10px 28px rgba(11,27,58,.16);padding:6px;display:grid;min-width:190px;z-index:30;text-align:left;font-weight:500}
.comp-menu .dmenu a,.comp-menu .dmenu button{display:block;width:100%;padding:7px 10px;border-radius:7px;font:inherit;font-size:13px;
  color:var(--p-texto);text-decoration:none;background:none;border:0;text-align:left;cursor:pointer}
.comp-menu .dmenu a:hover,.comp-menu .dmenu button:hover{background:#F8FAFC}
.comp-menu .dmenu .dng{color:#BE185D}
.comp-menu .dmenu hr{border:0;border-top:1px solid var(--p-linha);margin:4px 0}
.comp-menu .dmenu form{margin:0}
/* instaladores não usados (.grpp) */
.grpp{display:flex;gap:6px 12px;align-items:center;flex-wrap:wrap;padding:10px 16px;border-top:1px solid var(--p-linha);font-size:12.5px;
  color:var(--p-texto-sec);background:#FBFCFE;border-radius:0 0 12px 12px}
.grpp b{color:var(--p-texto)}
.comp-pend{flex-basis:100%}
.comp-pend>summary{list-style:none;width:max-content}
.comp-pend>summary::-webkit-details-marker{display:none}
.comp-pend[open]>summary{margin-bottom:6px}
.comp-pend form{margin:0}
.comp-lnkbtn{background:none;border:0;padding:0;font:inherit;font-size:12.5px;font-weight:600;color:var(--p-azul);cursor:pointer}
.comp-filtro{display:flex;gap:14px;align-items:center;font-size:13.5px}
.comp-pag{display:flex;gap:10px;align-items:center;justify-content:flex-end;font-size:12.5px;color:var(--p-texto-sec);flex-wrap:wrap}
.comp-pag .btn{font-family:inherit;text-decoration:none}
/* faixa de atenção (.warnx do protótipo: amarelo; o "!" sem o âmbar laranja) */
.comp-tela .warnx{display:flex;gap:12px;align-items:flex-start;background:#FFFBEB;border:1px solid #FDE68A;border-radius:12px;padding:12px 16px;font-size:13px}
.comp-tela .warnx .ix{width:24px;height:24px;border-radius:50%;background:#FDE68A;color:#92400E;display:grid;place-items:center;font-weight:800;flex:none}
.comp-tela .warnx b{color:var(--p-texto)}
.comp-tela .warnx p{margin:2px 0 0;color:var(--p-texto-sec)}
.comp-tela .warnx .btn{margin-left:auto;flex:none;font-family:inherit;text-decoration:none}
/* selos (.pill do protótipo) — só aqui dentro (o .pill antigo do app.css não muda) */
.comp-tela .pill,.comp-ficha .pill{font-size:11.5px;font-weight:700;border-radius:999px;padding:2px 9px;white-space:nowrap;display:inline-block}
.comp-tela .pill.ok,.comp-ficha .pill.ok{background:#DCFCE7;color:#15803D}
.comp-tela .pill.warn,.comp-ficha .pill.warn{background:#FEF3C7;color:#92400E}
/* barra do disco (.dbar2): azul; magenta abaixo de 10 % livre */
.dbar2{height:6px;border-radius:3px;background:#E2E8F0;overflow:hidden;margin-top:4px;width:120px;max-width:100%}
.dbar2 i{display:block;height:100%;background:var(--p-azul)}
.dbar2.low i{background:#BE185D}
/* aba Instalar: três passos (.steps/.sbx) */
.comp-tela .steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}
.comp-tela .sbx{background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:12px;padding:16px;display:grid;gap:10px;align-content:start}
.comp-tela .sbx.dim{opacity:.5}
.comp-tela .sbx h2{margin:0;font-size:14.5px;font-weight:800;display:flex;gap:8px;align-items:center}
.comp-tela .sbx .n{width:22px;height:22px;border-radius:50%;background:var(--p-marinho);color:#fff;display:grid;place-items:center;font-size:12px;flex:none}
.comp-tela .sbx p{margin:0;font-size:12.5px;color:var(--p-texto-sec)}
.comp-gerar{display:grid;gap:10px}
.comp-gerar select{font:inherit;font-size:13.5px;border:1px solid var(--p-linha);border-radius:8px;padding:8px 10px;background:var(--p-cartao);color:var(--p-texto);min-width:0}
.comp-gerar .btn{font-family:inherit;justify-self:start}
.comp-so{display:inline-flex;align-self:start;justify-self:start;padding:6px 13px;border-radius:7px;background:var(--p-marinho);color:#fff;font-weight:600;font-size:13px}
.comp-tela .dlb{background:#F8FAFC;border:1px solid var(--p-linha);border-radius:10px;padding:12px;display:grid;gap:6px}
.comp-tela .dlb small{color:var(--p-texto-sec);font-size:12px}
.comp-tela .dlb .btn{justify-self:start;font-family:inherit;text-decoration:none}
.comp-manual>summary{list-style:none;width:max-content}
.comp-manual>summary::-webkit-details-marker{display:none}
.comp-manual[open]{display:grid;gap:8px}
.comp-manual .btn{justify-self:start;font-family:inherit}
.comp-codigo{display:block;word-break:break-all;background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:8px;padding:8px 10px;
  font-family:ui-monospace,Consolas,monospace;font-size:12px;line-height:1.4}
.comp-tela .waitx{display:flex;gap:10px;align-items:center;font-size:13px}
.comp-tela .spx{width:18px;height:18px;border-radius:50%;border:3px solid #DBE6FD;border-top-color:var(--p-azul);animation:comp-gira 1s linear infinite;flex:none}
@keyframes comp-gira{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.comp-tela .spx{animation:none}}
.comp-tela .okx{display:flex;gap:10px;align-items:flex-start;background:#F0FDF4;border:1px solid #BBF7D0;border-radius:10px;padding:10px 12px;font-size:13px}
.comp-tela .okx>span:first-child{color:#15803D;font-weight:800}
/* prévia do aviso (.avs/.nw) */
.comp-tela .avs{font-size:13px;padding:14px 18px 6px;display:grid;gap:6px}
.comp-tela .avs ul{margin:0;padding-left:18px;display:grid;gap:3px}
.comp-tela .avs .nw{background:#FEF3C7;color:inherit;border-radius:4px;padding:0 3px}
.comp-avs-nota{padding:0 18px 14px}
/* aba Código (.two/.codev) */
.comp-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.comp-tela .comp-cartao{padding:18px;display:grid;gap:12px;align-content:start}
.comp-tela .comp-cartao h2{margin:0;font-size:16px;font-weight:800}
.comp-tela .codev{display:flex;gap:10px;align-items:center;background:#F8FAFC;border:1px solid var(--p-linha);border-radius:10px;padding:12px 14px;
  font-family:ui-monospace,Consolas,monospace;font-size:18px;letter-spacing:.08em;overflow-wrap:anywhere}
.comp-acts{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.comp-acts form{margin:0}
.comp-acts .btn{font-family:inherit}
.comp-perm{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0;font-size:13px}
.comp-perm label{display:inline-flex;gap:8px;align-items:center;cursor:pointer}
.comp-perm input{accent-color:var(--p-marinho);width:16px;height:16px;margin:0}
.comp-perm .btn{font-family:inherit}
.comp-ul{margin:0;padding-left:18px;font-size:13px;color:var(--p-texto-sec);display:grid;gap:3px}
/* janelas da tela (renomear, como desinstalar) */
dialog.comp-dlg .comp-ren{display:grid;gap:10px}
dialog.comp-dlg label{display:grid;gap:4px;font-size:12.5px;font-weight:600;color:var(--p-texto-sec)}
dialog.comp-dlg input[type="text"],dialog.comp-dlg input:not([type]){font:inherit;font-size:14px;color:var(--p-texto);background:var(--p-cartao);
  border:1px solid var(--p-linha);border-radius:8px;padding:8px 10px}
dialog.comp-dlg .acts .btn{text-decoration:none}
/* gaveta: ficha do computador (.spec/.srch/.hist) */
dialog.comp-ficha{width:min(600px,100vw)}
.comp-ficha .pl-cab .btn{font-family:inherit;text-decoration:none}
.comp-ficha-tit{flex:1;min-width:0}
.comp-ficha-tit h2{margin:0;font-size:17px;font-weight:800;overflow-wrap:anywhere}
.comp-ficha-tit small{display:block;color:var(--p-texto-sec);font-size:12.5px;margin-top:2px;overflow-wrap:anywhere}
.comp-ficha .spec{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.comp-ficha .spec>div{background:#F8FAFC;border:1px solid var(--p-linha);border-radius:10px;padding:10px 12px;display:grid;gap:2px;
  font-size:12.5px;color:var(--p-texto-sec);align-content:start}
.comp-ficha .spec b{color:var(--p-texto);font-size:13.5px;overflow-wrap:anywhere}
.comp-ficha .spec .pill{justify-self:start}
.comp-ficha .comp-progs{display:grid;gap:8px;margin:0}
.comp-ficha .comp-progs h3{margin:0;font-size:13px;font-weight:700;color:var(--p-texto)}
.comp-ficha .srch{display:flex;gap:8px;align-items:center;border:1px solid var(--p-linha);border-radius:8px;padding:6px 10px;background:var(--p-cartao);font-size:13px}
.comp-ficha .srch input:not([type="hidden"]){border:0;outline:none;font:inherit;flex:1;min-width:0}
.comp-ficha .srch .btn{font-family:inherit}
.comp-ficha .hist{display:grid;gap:4px;font-size:12.5px}
.comp-ficha .hist span{color:var(--p-texto-sec);display:inline-block;width:48px}
/* sem JavaScript: a ficha e a janela de renomear aparecem na própria página (o "Fechar"/"Cancelar" é um link) */
html:not(.js) dialog.comp-ficha,html:not(.js) dialog.comp-dlg[open]{display:block;position:static;margin:16px 0;width:auto;max-width:100%;
  height:auto;max-height:none;box-shadow:none;border:1px solid var(--p-linha);border-radius:var(--p-raio-cartao)}
@media (max-width:1100px){.comp-kgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){
  .comp-tela .steps,.comp-two,.comp-ficha .spec{grid-template-columns:minmax(0,1fr)}
  .comp-tela .warnx{flex-wrap:wrap}
  .comp-tela .warnx .btn{margin-left:0}
}
@media (max-width:560px){.comp-kgrid{grid-template-columns:minmax(0,1fr)}}

/* ═════════════ 18. CONFORMIDADE COM O PROTÓTIPO (R17 — 02/11; decisão do dono: o protótipo vale) ═════════════ */
/* Política (politica.html R37): "Voltar para esta versão" na 3ª coluna da linha do histórico (protótipo .hr2) e a
   janela de confirmação ao aumentar coleta sensível (protótipo: <ul> com os três itens, letra 13 px, cor secundária) */
.pol-hist .hr2.com-voltar{grid-template-columns:52px minmax(0,1fr) auto}
.pol-hist .pol-voltar{margin:0}
.pol-hist .pol-voltar .lnk-btn{font-size:12.5px;font-weight:600;white-space:nowrap}
.pol-hist .pol-voltou{color:var(--p-texto);font-weight:600}
dialog.pol-cf-dlg{box-sizing:border-box;width:min(480px,calc(100vw - 32px));max-width:calc(100vw - 32px)}
.pol-cf-dlg .dlg-t{overflow-wrap:anywhere}
.pol-cf-dlg .pol-cf-lista{margin:0;padding-left:18px;display:grid;gap:4px;font-size:13px;line-height:1.5;color:var(--p-texto-sec)}
.pol-cf-dlg .pol-cf-lista b{color:var(--p-texto)}
@media (max-width:560px){
  .pol-hist .hr2.com-voltar{grid-template-columns:44px minmax(0,1fr)}
  .pol-hist .hr2.com-voltar .pol-voltar{grid-column:2}
}
/* Produtividade (produtividade.html R9): a linha da fila que o gestor não pode classificar diz por quê */
.produtiv .q-so-admin{font-size:12px;color:var(--p-texto-sec);max-width:260px;text-align:right}
/* Ponto (ponto.html R2): as cores do protótipo — faixa .warnc (âmbar claro; "!" âmbar escuro), "ponto aberto" e o
   selo "ajuste" em âmbar, e a coluna "Situação" (.sit) do dia passado. Âmbar ≠ laranja de ação: nenhum dos hexas abaixo
   está na lista de laranjas da casa (tests/test_menu_novo_onda3) — o laranja continua só no .btn.pri. Sobrepõe a
   seção 16. */
.ponto-tela .pt-faixa{background:#FFFBEB;border:1px solid #FDE68A;border-radius:12px}
.ponto-tela .pt-faixa-ic{width:30px;height:30px;background:#FEF3C7;color:#92400E;border:0}
.ponto-tela .pt-faixa-t b{color:var(--p-texto)}
.ponto-tela .pt-aberto{color:#92400E;font-weight:700}
.ponto-tela .pt-selo.aj{color:#92400E;background:#FEF3C7;border:0;padding:1px 6px}
.ponto-tela .pt-sit{font-size:12.5px;font-weight:600;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;
  color:var(--p-texto-sec)}
.ponto-tela .pt-sit i{width:8px;height:8px;border-radius:50%;display:inline-block;background:#CBD5E1}
.ponto-tela .pt-sit-ponto{color:#92400E}
.ponto-tela .pt-sit-ponto i{background:#92400E}

/* ═════════════ 19. IMPRESSÕES e PEN DRIVES (R18 — onda 4, T-E24/T-E25: impressoes.html R2, usb_copias.html R3) — só dentro de .ipd e das janelas .ipd-dlg/.ipd-det ═════════════
   R18 (02/11) — SÓ ACRÉSCIMO, no fim (backup: BACK UP CENTRAL/02-11-2026-19-01-protivo.css). Portado do protótipo aprovado
   (docs/protivo/prototipo/impressoes.html e pendrives.html, <style> local: .safe, .rep, .bars3, .sbx2, .conn, .ch, .ic4,
   .sumc, .dir/.d-out/.d-in, .sys; e assets/app.css: .infox, .fch, .kgrid/.kc, .tb, tr.dia, .pill, .tagx, .two, .kv2,
   .mono, .notec) COM AS CORES DO PROTÓTIPO; tudo com prefixo próprio (.ipd-*, .pen-*) — nenhuma outra tela muda.
   Nenhum laranja: "fora do expediente" usa o âmbar escuro #92400E/#FEF3C7 já aceito na seção 17. Sem JavaScript, o
   detalhe do arquivo e a janela da cópia aparecem na própria página. Abaixo de 700 px as linhas das tabelas viram
   blocos (nenhuma rolagem lateral); nenhum min-width acima de 300 px. Nada das seções 1–18 mudou. */
.ipd{display:grid;gap:16px}
.ipd .ph{margin-bottom:0}
.ipd .ph .btn{font-family:inherit;text-decoration:none}
.ipd-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.ipd .lnk,.ipd-det .lnk,.ipd-dlg .lnk{font-size:12.5px;font-weight:600;color:var(--p-azul);text-decoration:none;cursor:pointer}
.ipd .lnk:hover,.ipd-det .lnk:hover,.ipd-dlg .lnk:hover{text-decoration:underline}
/* "Pela Política de coleta: …" (.infox do protótipo) */
.ipd-pol{margin:0;display:flex;gap:6px 10px;align-items:center;flex-wrap:wrap;background:#EEF3FF;border:1px solid #C7D7FE;
  border-radius:10px;padding:9px 14px;font-size:13px;color:#1E3A8A}
.ipd-pol b{color:#1E3A8A}
/* filtros: período (.seg-periodo da seção 4), seletores e busca (.sbx2), chips (.fch) */
.ipd-filtros{display:flex;align-items:center;gap:10px 14px;flex-wrap:wrap}
.ipd-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0}
.ipd-form label{margin:0}
.ipd-form select{font:inherit;font-size:13px;font-weight:600;color:var(--p-texto);background:var(--p-cartao);border:1px solid var(--p-linha);
  border-radius:8px;padding:6px 10px;max-width:240px}
.ipd-form .btn{font-family:inherit}
.ipd-busca{display:flex;align-items:center;gap:8px;border:1px solid var(--p-linha);border-radius:8px;padding:5px 10px;
  background:var(--p-cartao);font-size:13px}
.ipd-busca .ico{width:15px;height:15px;color:var(--p-texto-sec);flex:none}
.ipd-busca input{border:0;outline:none;font:inherit;width:170px;min-width:0;background:transparent;color:var(--p-texto);padding:0}
.ipd-form select:focus-visible,.ipd-busca:focus-within{outline:3px solid rgba(29,78,216,.45);outline-offset:1px}
.ipd-per{font-size:12.5px;color:var(--p-texto-sec)}
.ipd-chips{display:flex;gap:6px;flex-wrap:wrap}
.ipd-chips a{font-size:12px;font-weight:700;padding:5px 11px;border-radius:999px;border:1px solid var(--p-linha);color:var(--p-texto-sec);
  background:var(--p-cartao);text-decoration:none}
.ipd-chips a.on{background:var(--p-marinho);color:#fff;border-color:var(--p-marinho)}
.ipd-hist{margin:0;font-size:13px;overflow-wrap:anywhere}
/* totais (.kgrid/.kc) */
.ipd-kgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ipd-kgrid.pen-k{grid-template-columns:repeat(4,minmax(0,1fr))}
.ipd-kgrid .kc{background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:12px;padding:12px 14px;display:grid;gap:2px;align-content:start}
.ipd-kgrid .kc .l{font-size:12.5px;color:var(--p-texto-sec);font-weight:600}
.ipd-kgrid .kc .v{font-size:22px;font-weight:800;color:var(--p-marinho);font-variant-numeric:tabular-nums}
.ipd-kgrid .kc .c{font-size:12px;color:var(--p-texto-sec)}
/* cartão + tabela (.tb e tr.dia do protótipo) — o texto quebra dentro da célula (sem rolagem lateral) */
.ipd .ipd-card{padding:0;overflow:hidden}
.ipd .ipd-card>.card-h{margin:0;padding:14px 18px;border-bottom:1px solid var(--p-linha)}
.ipd .ipd-card>.card-h h2{margin:0;font-size:15px;font-weight:700}
.ipd-tb{width:100%;border-collapse:collapse;font-size:13px}
.ipd-tb th{font-size:11.5px;font-weight:700;color:var(--p-texto-sec);text-align:left;padding:9px 14px;border-bottom:1px solid var(--p-linha);white-space:nowrap}
.ipd-tb td{padding:10px 14px;border-bottom:1px solid var(--p-linha);vertical-align:middle;overflow-wrap:anywhere}
.ipd-tb tr:last-child td{border-bottom:0}
.ipd-tb small{display:block;color:var(--p-texto-sec);font-size:11.5px;font-weight:500}
.ipd-tb .r{text-align:right;white-space:nowrap}
.ipd-tb tr.dia th{background:#F8FAFC;font-size:12px;font-weight:700;color:var(--p-texto-sec);padding:6px 14px}
.ipd-tb .who{gap:8px}
.ipd-tb .who .av{width:26px;height:26px}
.ipd-tb tr.clk{cursor:pointer}
.ipd-tb tr.clk:hover td{background:#F8FAFC}
.ipd-mudo{color:var(--p-texto-sec)}
.ipd-doc{font-weight:600}
.ipd-tb small.ipd-fora{font-weight:600}
.ipd-rep{font-size:11px;font-weight:700;color:var(--p-azul);text-decoration:none}
a.ipd-rep:hover{text-decoration:underline}
.ipd-tag{font-size:11px;font-weight:700;color:var(--p-texto-sec);border:1px solid var(--p-linha);border-radius:5px;padding:0 5px;white-space:nowrap}
.ipd-pill{font-size:11.5px;font-weight:700;border-radius:999px;padding:2px 9px;white-space:nowrap;display:inline-block;background:#F1F5F9;
  color:var(--p-texto-sec)}
.ipd-pill.pdf,.ipd-pill.info{background:#EEF3FF;color:#1D4ED8}
.ipd-pill.warn{background:#FEF3C7;color:#92400E}
.ipd-cofre{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:var(--p-azul);white-space:nowrap}
.ipd-cofre .ico{width:14px;height:14px}
.ipd-cofre.pend{color:var(--p-texto-sec)}
.ipd-cofre-c{white-space:nowrap}
.ipd-vazio{color:var(--p-texto-sec);font-size:13px}
.ipd-pad{padding:14px 18px;margin:0}
.ipd-pag{display:flex;gap:10px;align-items:center;justify-content:flex-end;font-size:12.5px;color:var(--p-texto-sec);flex-wrap:wrap}
.ipd-pag .btn{font-family:inherit;text-decoration:none}
/* folhas por pessoa (.bars3) e "Como esta tela conta" (.two) */
.ipd-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.ipd-barras{display:grid;gap:8px;padding:12px 18px 16px}
.ipd-barras>div{display:grid;grid-template-columns:minmax(0,150px) minmax(0,1fr) 56px;gap:10px;align-items:center;font-size:12.5px}
.ipd-barras>div>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ipd-barras i{display:block;height:10px;border-radius:5px;background:var(--p-azul);min-width:2px}
.ipd-barras i.outros{background:#CBD5E1}
.ipd-barras b{text-align:right;font-variant-numeric:tabular-nums}
.ipd-como ul{margin:0;padding:12px 18px 16px 34px;display:grid;gap:6px;font-size:12.5px;color:var(--p-texto-sec);line-height:1.5}
.ipd-como b{color:var(--p-texto)}
.ipd-nota,.ipd-notas p{margin:0;font-size:12.5px;color:var(--p-texto-sec);line-height:1.5}
.ipd-notas{display:grid;gap:6px}
.ipd .trans-note{display:flex;gap:12px;align-items:flex-start;background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:12px;
  padding:12px 16px;font-size:13px}
.ipd .trans-note .ico{color:var(--p-azul);width:20px;height:20px;flex:none}
.ipd .trans-note p{margin:0;line-height:1.5;color:var(--p-texto-sec)}
.ipd .trans-note b{color:var(--p-texto)}
/* Pen drives: uma caixa por conexão aproximada (.conn/.ch/.ic4/.sumc/.dir/.sys do protótipo) */
.pen-lista{display:grid;gap:12px}
.pen-con{background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:12px;overflow:hidden}
.pen-ch{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 16px;border-bottom:1px solid var(--p-linha)}
.pen-ic{width:36px;height:36px;border-radius:9px;background:#EEF1F6;display:grid;place-items:center;color:var(--p-texto-sec)}
.pen-ic .ico{width:18px;height:18px}
.pen-cq small{display:block;color:var(--p-texto-sec);font-size:12.5px;margin-top:2px;overflow-wrap:anywhere}
.pen-sum{display:flex;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--p-texto-sec);align-items:center}
.pen-sum b{color:var(--p-texto)}
.pen-cont{margin:0;padding:6px 16px;font-size:12px;color:var(--p-texto-sec);background:#FBFCFE;border-bottom:1px solid var(--p-linha)}
.pen-dir{font-size:11.5px;font-weight:700;border-radius:6px;padding:1px 7px;white-space:nowrap;display:inline-block}
.pen-dir.out{background:#EEF3FF;color:#1D4ED8}
.pen-dir.in{background:#F1F5F9;color:var(--p-texto-sec)}
.pen-lk{color:var(--p-marinho);text-decoration:none}
.pen-lk:hover{text-decoration:underline}
.pen-tb th:nth-child(1),.pen-tb td:nth-child(1){width:56px}
.pen-tb th:nth-child(2),.pen-tb td:nth-child(2){width:170px}
.pen-tb th:nth-child(5),.pen-tb td:nth-child(5){width:84px}
.pen-dp{font-size:12.5px;color:var(--p-texto-sec)}
.pen-sis{border-top:1px solid var(--p-linha);background:#FBFCFE;font-size:12.5px;color:var(--p-texto-sec)}
.pen-sis>summary{list-style:none;display:flex;gap:10px;align-items:center;padding:10px 16px;cursor:pointer}
.pen-sis>summary::-webkit-details-marker{display:none}
.pen-sis>summary .ico{width:14px;height:14px;vertical-align:-2px;margin-right:4px}
.pen-sis>summary b{color:var(--p-texto)}
.pen-sis>summary:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:-3px}
.pen-sis .pen-mostrar{margin-left:auto;flex:none}
.pen-sis ul{margin:0;padding:0 16px 10px 32px;display:grid;gap:4px;overflow-wrap:anywhere}
.pen-sis a{color:var(--p-texto)}
.pen-vazio{background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:12px;padding:20px;font-size:13px;color:var(--p-texto-sec)}
/* detalhe do arquivo (gaveta .kv2) e janela da cópia guardada */
dialog.ipd-det{width:min(600px,100vw)}
.ipd-det .pl-cab .btn{font-family:inherit;text-decoration:none}
.ipd-det-tit{flex:1;min-width:0}
.ipd-det-tit h2{margin:0;font-size:17px;font-weight:800;overflow-wrap:anywhere}
.ipd-det-tit small{display:block;color:var(--p-texto-sec);font-size:12.5px;margin-top:2px;overflow-wrap:anywhere}
.ipd-kv{display:grid;grid-template-columns:150px minmax(0,1fr);gap:7px 12px;font-size:13px;margin:0}
.ipd-kv dt{color:var(--p-texto-sec);font-weight:600}
.ipd-kv dd{margin:0;overflow-wrap:anywhere}
.ipd-mono{font-family:ui-monospace,Consolas,monospace;font-size:12px}
.ipd-cofre-box{border-top:1px solid var(--p-linha);padding-top:12px;display:grid;gap:8px}
.ipd-cofre-box h3{margin:0;font-size:14.5px;font-weight:800}
.ipd-cofre-form{display:grid;gap:10px;margin:0}
.ipd-cofre-form label{display:grid;gap:4px;font-size:12.5px;font-weight:600;color:var(--p-texto-sec)}
.ipd-cofre-form textarea{font:inherit;font-size:13.5px;color:var(--p-texto);background:var(--p-cartao);border:1px solid var(--p-linha);
  border-radius:8px;padding:8px 10px;resize:vertical;min-height:84px}
.ipd-cofre-form textarea:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:1px}
.ipd-cofre-form .btn,.ipd-dlg .btn{font-family:inherit;text-decoration:none}
.ipd-ul{margin:0;padding-left:18px;display:grid;gap:3px;font-size:12.5px;color:var(--p-texto-sec);line-height:1.5}
dialog.ipd-dlg{box-sizing:border-box;width:min(500px,calc(100vw - 32px));max-width:calc(100vw - 32px)}
.ipd-dlg-quem{margin:0 0 10px;font-size:13px;overflow-wrap:anywhere}
.ipd-dlg .ipd-nota{margin:0 0 6px}
html:not(.js) dialog.ipd-det,html:not(.js) dialog.ipd-dlg[open]{display:block;position:static;margin:16px 0;width:auto;max-width:100%;
  height:auto;max-height:none;box-shadow:none;border:1px solid var(--p-linha);border-radius:var(--p-raio-cartao)}
@media (max-width:1100px){.ipd-kgrid,.ipd-kgrid.pen-k{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){
  .ipd-two{grid-template-columns:minmax(0,1fr)}
  .pen-ch{grid-template-columns:auto minmax(0,1fr)}
  .pen-sum{grid-column:1/-1}
}
@media (max-width:700px){
  .ipd-tb thead{display:none}
  .ipd-tb,.ipd-tb tbody,.ipd-tb tr,.ipd-tb td,.ipd-tb tr.dia th{display:block;width:auto!important}
  .ipd-tb tr{padding:8px 0;border-bottom:1px solid var(--p-linha)}
  .ipd-tb td{border:0;padding:2px 16px}
  .ipd-tb .r{text-align:left}
  .ipd-kv{grid-template-columns:minmax(0,1fr)}
  .ipd-busca input{width:120px}
}
@media (max-width:560px){.ipd-kgrid,.ipd-kgrid.pen-k{grid-template-columns:minmax(0,1fr)}}

/* ═════════════ 20. PRIVACIDADE E LGPD · PLANO E FATURAS · TRANSPARÊNCIA (R19 — onda 4, T-E26/T-E27/T-E28/T-E31: privacidade.html R1, plano.html R5, transparencia.html R13, _coleta_titular.html R4) — só dentro de .cfg2 e das janelas .cfg2-dlg/.cfg2-lat ═════════════ */
/* base comum das três telas */
.cfg2{display:grid;gap:16px}
.cfg2 .ph{margin-bottom:0}
.cfg2 .ph h1{margin:0;font-size:26px;font-weight:800;letter-spacing:-.02em;color:var(--p-marinho)}
.cfg2 .tabs2{margin-bottom:0}
.cfg2 [hidden],.cfg2-lat [hidden]{display:none!important}
.cfg2 .btn,.cfg2-dlg .btn,.cfg2-lat .btn{font-family:inherit;text-decoration:none}
.cfg2-crumb{font-size:12.5px;color:var(--p-texto-sec);margin-bottom:2px}
.cfg2-crumb b{color:var(--p-texto);font-weight:600}
.cfg2-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.cfg2 .notec,.cfg2-dlg .notec,.cfg2-lat .notec{font-size:12.5px;color:var(--p-texto-sec);margin:0;line-height:1.5}
.cfg2 .lnk,.cfg2-dlg .lnk,.cfg2-lat .lnk{font-size:12.5px;font-weight:600;color:var(--p-azul);text-decoration:none;cursor:pointer}
.cfg2 .lnk:hover,.cfg2-dlg .lnk:hover,.cfg2-lat .lnk:hover{text-decoration:underline}
.cfg2-ok{margin:0;font-size:13px;font-weight:600;color:var(--p-azul);background:var(--p-azul-suave);border:1px solid #C7D5F5;border-radius:9px;padding:9px 12px}
.cfg2-erro{font-size:12.5px;font-weight:600;color:var(--p-improdutivo-texto);margin:0}
.cfg2-erro-faixa{margin:0;font-size:13px;font-weight:600;color:#9D174D;background:#FCE7F3;border:1px solid #FBCFE8;border-radius:9px;padding:9px 12px}
.cfg2-aviso{margin:0;font-size:13px;color:var(--p-texto);background:#F8FAFC;border:1px solid var(--p-linha);border-radius:10px;padding:10px 14px}
.cfg2-aviso.warn{background:#FFFBEB;border-color:#FDE68A;color:#92400E}
.cfg2-aviso.bad{background:#FCE7F3;border-color:#FBCFE8;color:#9D174D}
.cfg2-aviso.info{background:#EEF3FF;border-color:#C7D7FE;color:#1E3A8A}
.cfg2 .cfg2-card{padding:0;overflow:visible}
.cfg2 .cfg2-card>.card-h{margin:0;padding:14px 18px;border-bottom:1px solid var(--p-linha);flex-wrap:wrap}
.cfg2 .cfg2-card>.card-h h2{margin:0;font-size:15px;font-weight:700}
.cfg2-vazio{color:var(--p-texto-sec);font-size:13px}
.priv-pad{padding:10px 18px 14px}
.cfg2-tb{width:100%;border-collapse:collapse;font-size:13px}
.cfg2-tb th{font-size:11.5px;font-weight:700;color:var(--p-texto-sec);text-align:left;padding:9px 16px;border-bottom:1px solid var(--p-linha);white-space:nowrap}
.cfg2-tb td{padding:10px 16px;border-bottom:1px solid var(--p-linha);vertical-align:middle}
.cfg2-tb tr:last-child td{border-bottom:0}
.cfg2-tb small{display:block;color:var(--p-texto-sec);font-size:11.5px;font-weight:500}
.cfg2-tb .r{text-align:right}
/* selos (.pill do protótipo) — só aqui dentro */
.cfg2 .pill,.cfg2-lat .pill{font-size:11.5px;font-weight:700;border-radius:999px;padding:2px 9px;white-space:nowrap;display:inline-block;background:#F1F5F9;color:var(--p-texto-sec)}
.cfg2 .pill.ok,.cfg2-lat .pill.ok{background:#DCFCE7;color:#15803D}
.cfg2 .pill.warn,.cfg2-lat .pill.warn{background:#FEF3C7;color:#92400E}
.cfg2 .pill.bad,.cfg2-lat .pill.bad{background:#FCE7F3;color:#9D174D}
.cfg2 .pill.info{background:#EEF3FF;color:#1D4ED8}
.cfg2 .pill.navy{background:#0B1B3A;color:#fff}
.cfg2 .pill.produtivo{background:var(--p-produtivo-suave);color:var(--p-produtivo-texto)}
.cfg2 .pill.improdutivo{background:var(--p-improdutivo-suave);color:var(--p-improdutivo-texto)}
.cfg2 .pill.neutro{background:var(--p-neutro-suave);color:var(--p-neutro-texto)}
/* indicadores (.kgrid/.kc) */
.cfg2-kgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.cfg2-kgrid.c3{grid-template-columns:repeat(3,minmax(0,1fr))}
.cfg2-kgrid .kc{background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:12px;padding:12px 14px;display:grid;gap:2px;align-content:start}
.cfg2-kgrid .kc .l{font-size:12.5px;color:var(--p-texto-sec);font-weight:600}
.cfg2-kgrid .kc .v{font-size:22px;font-weight:800;color:var(--p-marinho);font-variant-numeric:tabular-nums}
.cfg2-kgrid .kc .v.sm{font-size:15px;padding-top:4px}
.cfg2-kgrid .kc .c{font-size:12px;color:var(--p-texto-sec)}
/* barra de filtros, rodapé de lista, etiqueta de tipo (.k26) */
.cfg2-fbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0}
.cfg2-fbar select{font:inherit;font-size:13px;font-weight:600;color:var(--p-texto);background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:8px;padding:6px 8px;max-width:220px}
.cfg2-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 16px;font-size:12.5px;color:var(--p-texto-sec);border-top:1px solid var(--p-linha)}
.k26{font-size:11.5px;font-weight:700;border-radius:6px;padding:1px 7px;background:#F1F5F9;color:var(--p-texto-sec);white-space:nowrap}
.k26.img{background:#EEF3FF;color:#1D4ED8}
/* janelas (.dlg) e gaveta de detalhe */
.cfg2-ul{margin:0;padding-left:18px;display:grid;gap:6px;font-size:13.5px;line-height:1.5;color:var(--p-texto)}
dialog.cfg2-dlg{box-sizing:border-box;width:min(520px,calc(100vw - 32px));max-width:calc(100vw - 32px)}
dialog.cfg2-dlg .dlg-t{overflow-wrap:anywhere}
dialog.cfg2-dlg form{display:grid;gap:10px;margin-top:14px}
dialog.cfg2-dlg label{display:grid;gap:6px;font-size:13px;font-weight:600;color:var(--p-texto-sec);overflow-wrap:anywhere}
dialog.cfg2-dlg label b{color:var(--p-texto)}
dialog.cfg2-dlg input[type="text"]{font:inherit;font-size:14px;font-weight:500;color:var(--p-texto);background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:8px;padding:8px 10px}
dialog.cfg2-dlg .acts{margin-top:4px}
dialog.cfg2-lat .pl-cab .pill{flex:none}
.cfg2-lat .kv2{display:grid;grid-template-columns:150px minmax(0,1fr);gap:7px 12px;font-size:13px;margin:0}
.cfg2-lat .kv2 dt{color:var(--p-texto-sec);font-weight:600}
.cfg2-lat .kv2 dd{margin:0;overflow-wrap:anywhere}
.cfg2-lat .acts{display:flex;gap:8px;flex-wrap:wrap}
/* sem JavaScript: a janela e a gaveta abertas pelo servidor aparecem na própria página (o "Cancelar"/"Fechar" é um link) */
html:not(.js) dialog.cfg2-dlg[open],html:not(.js) dialog.cfg2-lat[open]{display:block;position:static;margin:16px 0;width:auto;max-width:100%;
  height:auto;max-height:none;box-shadow:none;border:1px solid var(--p-linha);border-radius:var(--p-raio-cartao)}

/* ── Privacidade e LGPD ── */
.priv-g26{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:16px;align-items:start}
.priv-rl{display:grid}
.priv-rl>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;padding:11px 18px;border-bottom:1px solid var(--p-linha);align-items:center;font-size:13.5px}
.priv-rl>div:last-child{border-bottom:0}
.priv-rl>div>small{font-size:12px;color:var(--p-texto-sec)}
.priv-rl .v{grid-row:1/3;grid-column:2;font-size:13px;font-weight:700;text-align:right}
.priv-rl .v small{display:block;font-weight:500;font-size:12px;color:var(--p-texto-sec);max-width:220px}
.priv-dpo{padding:14px 18px;display:grid;gap:10px;margin:0}
.priv-dpo label{display:grid;gap:4px;font-size:12.5px;font-weight:600;color:var(--p-texto-sec)}
.priv-dpo input{font:inherit;font-size:13.5px;border:1px solid var(--p-linha);border-radius:8px;padding:8px 10px;color:var(--p-texto);background:var(--p-cartao)}
.priv-dpo input[aria-invalid="true"]{border-color:var(--p-improdutivo)}
.priv-acts{display:flex;justify-content:flex-end}
.priv-ferr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:14px 18px;border-bottom:1px solid var(--p-linha)}
.priv-f{display:grid;gap:6px;margin:0;align-content:start}
.priv-f>label{font-size:12.5px;font-weight:700;color:var(--p-texto)}
.priv-f-l{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.priv-f select,.priv-f input:not([type="hidden"]){font:inherit;font-size:13.5px;border:1px solid var(--p-linha);border-radius:8px;padding:7px 10px;background:var(--p-cartao);color:var(--p-texto);min-width:0;flex:1 1 160px}
.priv-f small{font-size:12px;color:var(--p-texto-sec)}
.priv-busca{grid-column:1/-1}
.btn.sec.priv-perigo{color:#BE185D}
.priv-acc-h{gap:10px}

/* ── Plano e faturas ── */
.plf-cur{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 20px;padding:16px 18px;align-items:center}
.plf-cur h2{margin:0;font-size:18px;font-weight:800;color:var(--p-texto)}
.plf-cur p{margin:0;font-size:13px;color:var(--p-texto-sec)}
.plf-cur .tot{font-size:22px;font-weight:800;text-align:right;color:var(--p-marinho);font-variant-numeric:tabular-nums}
.plf-cur .tot small{display:block;font-size:12px;color:var(--p-texto-sec);font-weight:500}
.plf-ativo{margin:0;padding:0 18px 10px;font-size:13px;color:var(--p-texto-sec)}
.plf-ativo b{color:var(--p-texto)}
.plf-uso{display:flex;gap:6px 18px;flex-wrap:wrap;padding:10px 18px 14px;font-size:12.5px;color:var(--p-texto-sec);border-top:1px solid var(--p-linha)}
.plf-uso b{color:var(--p-texto)}
.plf-ag{display:flex;gap:12px;align-items:center;flex-wrap:wrap;background:#FFFBEB;border:1px solid #FDE68A;border-radius:12px;padding:10px 14px;font-size:13px}
.plf-ag>span{flex:1 1 300px}
.plf-ag form{margin:0}
.plf-lay{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:16px;align-items:start}
.plf-col{display:grid;gap:14px;margin:0;min-width:0}
.plf-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;border:0;padding:0;margin:0;min-width:0}
.plf-plans .pc{position:relative;background:var(--p-cartao);border:1.5px solid var(--p-linha);border-radius:12px;padding:14px;display:grid;gap:6px;align-content:start;cursor:pointer;font-size:13px}
.plf-plans .pc:hover{border-color:#94A3B8}
.plf-plans .pc.sel{border-color:var(--p-marinho);box-shadow:0 0 0 3px #E2E8F0}
.plf-plans .pc:focus-within{outline:3px solid rgba(29,78,216,.45);outline-offset:2px}
.plf-plans .pc>input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.plf-plans .pc-t{font-size:15px;font-weight:800;display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.plf-plans .pr{font-size:18px;font-weight:800;color:var(--p-marinho)}
.plf-plans .pr small,.plf-plans .pc-an{font-size:12px;font-weight:500;color:var(--p-texto-sec)}
.plf-plans ul{margin:4px 0 0;padding-left:16px;font-size:12.5px;color:var(--p-texto-sec);display:grid;gap:2px}
.plf-ad .row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 18px;border-bottom:1px solid var(--p-linha);font-size:13px;cursor:pointer}
.plf-ad .row:last-child{border-bottom:0}
.plf-ad .row small{display:block;font-size:12px;color:var(--p-texto-sec)}
.plf-ad .row.dis{opacity:.55;cursor:not-allowed}
.plf-ad .row input[type="checkbox"]{accent-color:var(--p-marinho);width:16px;height:16px;margin:0}
.plf-ad fieldset.row{display:block;border:0;border-bottom:1px solid var(--p-linha);margin:0;cursor:default}
.plf-ret legend{float:left;width:100%;padding:0;font-size:13px}
.plf-ret legend small{display:block}
.plf-ret .rad{clear:both;display:flex;gap:6px;flex-wrap:wrap;padding-top:6px}
.plf-ret .rad label{position:relative;cursor:pointer}
.plf-ret .rad input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.plf-ret .rad span{display:inline-block;font-size:12px;font-weight:700;padding:5px 10px;border-radius:999px;border:1px solid var(--p-linha);color:var(--p-texto-sec);background:var(--p-cartao)}
.plf-ret .rad input:checked+span{background:var(--p-marinho);color:#fff;border-color:var(--p-marinho)}
.plf-ret .rad input:focus-visible+span{outline:3px solid rgba(29,78,216,.45);outline-offset:2px}
.plf-sum{background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:12px;padding:16px;display:grid;gap:10px;position:sticky;top:72px}
.plf-sum h2{margin:0;font-size:15px;font-weight:800}
.plf-sum dl{margin:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;font-size:13px}
.plf-sum dt{color:var(--p-texto-sec)}
.plf-sum dd{margin:0;font-weight:700;text-align:right}
.plf-sum dd.big{font-size:20px;color:var(--p-marinho)}
.plf-dif{font-size:12.5px;font-weight:700}
.plf-dif.menos{color:#15803D}
.plf-dif.mais{color:#92400E}
.plf-perde{margin:0;font-size:12.5px;background:#FEF3C7;color:#92400E;border-radius:8px;padding:8px 10px}
.plf-conf{margin:0;display:grid}
.plf-conf .btn,.plf-sum>.btn{justify-content:center}
.plf-sum-acts{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;font-size:12.5px}
.plf-acts2{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap}
.plf-li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;font-size:13px}
.plf-li span:nth-child(even){text-align:right;font-weight:600}
.plf-li .t{border-top:1px solid var(--p-linha);padding-top:8px;font-weight:800}

/* ── Transparência ("O que é coletado de mim") ── */
.trp-prev{display:flex;gap:10px;align-items:center;background:#EEF3FF;border:1px solid #C7D7FE;border-radius:10px;padding:9px 14px;font-size:13px;color:#1E3A8A;flex-wrap:wrap}
.trp-troca{display:flex;gap:6px;align-items:center;margin:0}
.trp-troca select,.trp-troca input{font:inherit;font-size:13px;border:1px solid #C7D7FE;border-radius:8px;padding:5px 8px;background:#fff;color:var(--p-texto);max-width:240px}
.cfg2 .trp-volta{margin-left:auto}
.trp-hello{background:var(--p-cartao);border:1px solid var(--p-linha);border-radius:12px;padding:14px 18px;font-size:13.5px;display:grid;gap:4px}
.trp-hello b.t{font-size:16px}
.trp-hello small{font-size:12.5px;color:var(--p-texto-sec)}
.trp-g31{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px;align-items:start}
.trp-col{display:grid;gap:16px;min-width:0}
.trp-grp{padding:12px 18px;border-bottom:1px solid var(--p-linha);display:grid;gap:8px}
.trp-grp:last-of-type{border-bottom:0}
.trp-grp h3{margin:0;font-size:13px;font-weight:800}
.trp-itx{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;font-size:13px;align-items:center}
.trp-itx small{display:block;color:var(--p-texto-sec);font-size:12px}
.trp-desl{font-size:12.5px;color:var(--p-texto-sec);padding:0 18px 12px;margin:0}
.trp-acc>div{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:10px 18px;border-bottom:1px solid var(--p-linha);font-size:13px;align-items:center}
.trp-acc>div:last-child{border-bottom:0}
.trp-acc small{display:block;color:var(--p-texto-sec);font-size:12px}
.trp-dir{padding:14px 18px;display:grid;gap:10px}
.trp-dir-b{display:flex;gap:8px;flex-wrap:wrap}
.trp-dir-b form{margin:0}
.trp-nunca{padding:12px 18px;display:grid;gap:8px}
.trp-prot{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.trp-prot .c{font-size:12px;font-weight:600;border:1px solid var(--p-linha);border-radius:999px;padding:3px 10px;background:#F8FAFC;color:var(--p-texto)}
.trp-lista{flex-basis:100%}
.trp-lista>summary{list-style:none;width:max-content;font-size:12.5px;font-weight:600;color:var(--p-azul);cursor:pointer}
.trp-lista>summary::-webkit-details-marker{display:none}
.trp-lista[open]>summary{margin-bottom:6px}
.trp-lista p{margin:0 0 6px;font-size:13px;overflow-wrap:anywhere}

@media (max-width:1100px){.plf-lay{grid-template-columns:minmax(0,1fr)}.plf-sum{position:static}}
@media (max-width:900px){
  .priv-g26,.trp-g31,.priv-ferr,.plf-plans{grid-template-columns:minmax(0,1fr)}
  .cfg2-kgrid,.cfg2-kgrid.c3{grid-template-columns:minmax(0,1fr)}
  .plf-cur{grid-template-columns:minmax(0,1fr)}
  .plf-cur .tot{text-align:left}
  .cfg2 .trp-volta{margin-left:0}
}
