/* Don Websend · folha única do painel.
   Identidade do DESIGN.md (tokens, Mona Sans, números em Instrument Serif, faixa escura no topo,
   navegação em pílulas). Tudo é servido pelo próprio site: fontes em /fonts, nenhum CDN (a CSP do
   painel só permite 'self'). Ordem: fontes, tokens, apelidos antigos, base, shell, componentes,
   telas, kit de página, celular. */

/* ================================ Fontes ================================ */
@font-face{font-family:"Mona Sans";font-style:normal;font-display:swap;font-weight:200 900;src:url("/fonts/mona-sans-latin-wght-normal.woff2") format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Mona Sans";font-style:normal;font-display:swap;font-weight:200 900;src:url("/fonts/mona-sans-latin-ext-wght-normal.woff2") format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Instrument Serif";font-style:normal;font-display:swap;font-weight:400;src:url("/fonts/instrument-serif-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Instrument Serif";font-style:normal;font-display:swap;font-weight:400;src:url("/fonts/instrument-serif-latin-ext-400-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Instrument Serif";font-style:italic;font-display:swap;font-weight:400;src:url("/fonts/instrument-serif-latin-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Instrument Serif";font-style:italic;font-display:swap;font-weight:400;src:url("/fonts/instrument-serif-latin-ext-400-italic.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

/* ================================ Tokens (DESIGN.md) ================================ */
:root{
/* rampas */
--blue-50:#EFF7FF;--blue-100:#D7EBFF;--blue-200:#AED6FF;--blue-300:#7CBDFF;--blue-400:#3D9DFF;--blue-500:#0080FF;--blue-600:#0066CC;--blue-700:#0B4FA3;--blue-800:#0B3B73;
--navy-700:#0A3A66;--navy-800:#062E52;--navy-900:#04223F;--navy-950:#011426;
--indigo-500:#3B2FD6;--indigo-700:#1B1F8F;--indigo-900:#0E1155;
--violet-50:#F1EFFD;--violet-300:#A79BF5;--violet-500:#5A4BE0;--violet-700:#4034B5;
--teal-200:#9FEDE4;--teal-400:#35C6C6;--teal-500:#17A8A8;
--amber-100:#FBEBC4;--amber-300:#F5CC63;--amber-500:#EDAE1A;--amber-700:#B37F06;
--green-50:#E7F8F0;--green-500:#12B76A;--green-700:#0A7C48;
--red-50:#FDECEC;--red-500:#E5484D;--red-700:#B4282C;
--neutral-0:#FFFFFF;--neutral-25:#FCFCFD;--neutral-50:#F5F6F7;--neutral-100:#EFF1F3;--neutral-200:#E6E8EB;--neutral-300:#D3D7DD;--neutral-400:#B4BAC2;
--ink-400:#98A2B1;--ink-500:#667085;--ink-700:#39414C;--ink-900:#0D1117;
--night-950:#05080C;--night-900:#0B1620;--night-800:#111D29;--night-700:#1A2735;--night-600:#263445;--night-500:#3A4A5D;
--white-a10:rgba(255,255,255,.10);--white-a12:rgba(255,255,255,.12);--white-a16:rgba(255,255,255,.16);--white-a18:rgba(255,255,255,.18);
--white-a22:rgba(255,255,255,.22);--white-a28:rgba(255,255,255,.28);--white-a55:rgba(255,255,255,.55);--white-a60:rgba(255,255,255,.6);
--white-a70:rgba(255,255,255,.7);--white-a72:rgba(255,255,255,.72);--white-a88:rgba(255,255,255,.88);
--blue-a18:rgba(0,128,255,.18);--blue-a22:rgba(0,128,255,.22);--blue-a28:rgba(0,128,255,.28);
--ink-a04:rgba(13,17,23,.04);--ink-a10:rgba(13,17,23,.10);

/* superfície, texto, borda, status */
--surface-page:var(--neutral-50);--surface-card:var(--neutral-0);--surface-sunken:var(--neutral-100);--surface-hover:var(--neutral-50);
--surface-inverse:var(--navy-900);--surface-inverse-soft:#0A3055;--surface-accent-soft:var(--blue-50);
--surface-scrim:rgba(4,34,63,.55);--surface-glass:rgba(255,255,255,.72);--surface-strong:var(--ink-900);--surface-on-strong:var(--white-a22);
--text-primary:var(--ink-900);--text-secondary:var(--ink-700);--text-muted:var(--ink-500);--text-faint:var(--ink-400);
--text-inverse:var(--neutral-0);--text-inverse-muted:var(--white-a72);--text-accent:var(--blue-600);--text-display:var(--indigo-700);
--text-positive:var(--green-700);--text-negative:var(--red-700);--text-link:var(--blue-600);--text-link-hover:var(--blue-700);
--text-warning:var(--amber-700);--text-on-strong:var(--neutral-0);--text-accent-on-dark:var(--blue-300);--text-on-dark-soft:var(--white-a88);
--border-subtle:var(--neutral-200);--border-strong:var(--neutral-300);--border-inverse:var(--white-a16);--border-accent:var(--blue-500);--border-dashed:var(--neutral-300);
--accent-primary:var(--blue-500);--accent-primary-hover:var(--blue-600);--accent-primary-press:var(--blue-700);--accent-secondary:var(--amber-500);
--status-positive:var(--green-500);--status-positive-bg:var(--green-50);--status-warning:var(--amber-500);--status-warning-bg:var(--amber-100);
--status-critical:var(--red-500);--status-critical-bg:var(--red-50);--status-neutral:var(--ink-500);--status-neutral-bg:var(--neutral-100);
--control-track-off:var(--neutral-300);--control-knob:var(--neutral-0);
--chart-completed:var(--blue-500);--chart-created:var(--amber-500);--chart-projects:var(--teal-400);--chart-productivity:var(--violet-500);
--chart-grid:var(--neutral-200);--chart-track:var(--neutral-100);--chart-highlight:var(--ink-a04);
--chart-hatch-line:var(--neutral-200);--chart-hatch-gap:var(--neutral-0);--chart-node-fill:var(--neutral-0);

/* tipografia */
--font-sans:"Mona Sans",-apple-system,"Segoe UI",Helvetica,Arial,sans-serif;
--font-display:var(--font-sans);
--font-metric:"Instrument Serif",Georgia,"Times New Roman",serif;
--font-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace;
--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-extrabold:800;
--text-2xs:11px;--text-xs:12px;--text-sm:13px;--text-base:14px;--text-md:15px;--text-lg:17px;--text-xl:20px;--text-2xl:24px;--text-3xl:30px;--text-4xl:38px;--text-5xl:48px;--text-6xl:64px;
--leading-tight:1.08;--leading-snug:1.2;--leading-normal:1.45;--leading-relaxed:1.6;
--tracking-display:-0.022em;--tracking-heading:-0.014em;--tracking-tight:-0.005em;--tracking-eyebrow:0.08em;--tracking-label:0.06em;
--type-hero:var(--weight-medium) var(--text-6xl)/var(--leading-tight) var(--font-display);
--type-display:var(--weight-medium) var(--text-5xl)/var(--leading-tight) var(--font-display);
--type-h1:var(--weight-semibold) var(--text-3xl)/var(--leading-snug) var(--font-display);
--type-h2:var(--weight-semibold) var(--text-2xl)/var(--leading-snug) var(--font-display);
--type-h3:var(--weight-semibold) var(--text-xl)/var(--leading-snug) var(--font-sans);
--type-section:var(--weight-semibold) var(--text-lg)/var(--leading-snug) var(--font-sans);
--type-body:var(--weight-regular) var(--text-base)/var(--leading-normal) var(--font-sans);
--type-body-strong:var(--weight-semibold) var(--text-base)/var(--leading-normal) var(--font-sans);
--type-small:var(--weight-regular) var(--text-sm)/var(--leading-normal) var(--font-sans);
--type-caption:var(--weight-regular) var(--text-xs)/var(--leading-normal) var(--font-sans);
--type-label:var(--weight-medium) var(--text-sm)/1.2 var(--font-sans);
--type-metric-lg:var(--weight-regular) var(--text-4xl)/1 var(--font-metric);
--type-metric:var(--weight-regular) var(--text-3xl)/1 var(--font-metric);
--type-metric-sm:var(--weight-regular) var(--text-2xl)/1 var(--font-metric);

/* espaço, raio, sombra, movimento, camadas */
--space-0:0px;--space-1:2px;--space-2:4px;--space-3:6px;--space-4:8px;--space-5:10px;--space-6:12px;--space-7:14px;--space-8:16px;--space-10:20px;--space-12:24px;--space-14:28px;--space-16:32px;--space-20:40px;--space-24:48px;--space-32:64px;--space-40:80px;--space-48:96px;
--pad-card:20px;--pad-card-sm:16px;--pad-card-lg:24px;--pad-control-x:16px;--pad-control-y:10px;
--gap-grid:16px;--gap-section:24px;--gap-inline:8px;--gap-stack:12px;
--stroke-1:1px;--stroke-2:2px;--stroke-3:3px;
--radius-xs:6px;--radius-sm:8px;--radius-md:10px;--radius-lg:14px;--radius-xl:18px;--radius-2xl:24px;--radius-3xl:32px;--radius-pill:999px;--radius-circle:50%;
--radius-card:14px;--radius-panel:18px;--radius-folder:24px;--radius-control:10px;--radius-button:999px;--radius-chip:999px;--radius-avatar:999px;--radius-media:18px;--radius-folder-tab:12px;
--shadow-xs:0 1px 2px rgba(16,24,40,.05);
--shadow-sm:0 1px 2px rgba(16,24,40,.06),0 1px 3px rgba(16,24,40,.04);
--shadow-md:0 2px 4px rgba(16,24,40,.04),0 8px 20px rgba(16,24,40,.06);
--shadow-lg:0 4px 8px rgba(16,24,40,.04),0 18px 40px rgba(16,24,40,.08);
--shadow-pop:0 12px 32px rgba(16,24,40,.14);
--shadow-accent:0 8px 20px var(--blue-a28);
--shadow-focus:0 0 0 3px var(--blue-a22);
--shadow-none:0 0 0 0 transparent;
--hairline-inner:inset 0 0 0 1px var(--white-a60);
--blur-glass:blur(18px);--blur-sheet:blur(2px);
--ease-out:cubic-bezier(.22,.61,.36,1);--ease-spring:cubic-bezier(.34,1.32,.64,1);
--dur-fast:140ms;--dur-base:200ms;--dur-slow:320ms;
--transition-control:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),filter var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out);
--press-scale:.97;--hover-brighten:brightness(1.05);--press-darken:brightness(.94);--opacity-disabled:.45;
--gradient-button:linear-gradient(100deg,#8CC6FF 0%,#0080FF 58%,#0A63D6 100%);
--gradient-hero-dark:linear-gradient(180deg,#0B1620 0%,#05080C 100%);
--gradient-hero-sheen:radial-gradient(60% 120% at 78% -10%,rgba(120,150,190,.28),rgba(0,0,0,0) 60%),radial-gradient(40% 90% at 20% 120%,rgba(70,110,160,.18),rgba(0,0,0,0) 70%);
--gradient-mesh:radial-gradient(90% 70% at 8% 0%,#EAF6FF 0%,rgba(234,246,255,0) 60%),radial-gradient(70% 60% at 98% 12%,#EDE9FF 0%,rgba(237,233,255,0) 62%),radial-gradient(80% 70% at 60% 108%,#DFF6F2 0%,rgba(223,246,242,0) 60%),linear-gradient(180deg,#FBFCFD 0%,#F5F6F7 100%);
--gradient-folder:linear-gradient(155deg,#2D95FF 0%,#0069E0 52%,#7FC6EA 100%);
--nav-height:60px;--mobile-nav-height:56px;--mobile-tabbar-height:64px;--container-max:1440px;
--content-gutter:20px;--content-gutter-lg:28px;--content-gutter-sm:14px;--touch-min:44px;
--z-sticky:100;--z-nav:200;--z-dropdown:300;--z-overlay:400;--z-modal:500;--z-toast:600;

/* medidas próprias do painel (fora da escala, com nome) */
--pn-pilula-h:34px;--pn-drop-w:300px;--pn-logo:30px;--pn-saudacao:40px;--pn-saudacao-sm:26px;
--pn-modal-w:580px;--pn-confirma-w:440px;--pn-login-w:420px;--pn-gaveta-w:320px;
}
@media (prefers-reduced-motion:reduce){:root{--dur-fast:0ms;--dur-base:0ms;--dur-slow:0ms}}

/* ================================ Apelidos antigos ================================
   O app.js escreve 1.400 estilos inline com estes nomes (var(--texto2), var(--verde)...).
   Eles passam a apontar para o sistema novo, então tudo que já existe muda junto.
   Nome com "texto" em cor (verde/amarelo/vermelho) usa o tom de texto (contraste AA);
   os -500 continuam sendo o tom de preenchimento. */
:root{
--bg-app:var(--surface-page);--bg-sidebar:var(--surface-card);
--surface:var(--surface-card);--surface-2:var(--neutral-25);--surface-3:var(--surface-sunken);
--border:var(--border-subtle);--borda-forte:var(--border-strong);
--text:var(--text-primary);--text-1:var(--text-primary);--text-2:var(--text-muted);--text-3:var(--text-muted);
--brand-50:var(--blue-50);--brand-100:var(--blue-100);--brand-300:var(--blue-300);--brand-500:var(--blue-500);--brand-600:var(--blue-600);--brand-700:var(--blue-700);--brand:var(--blue-600);
--ok-50:var(--green-50);--ok-500:var(--green-500);--ok-600:var(--green-500);--ok-700:var(--green-700);
--warn-50:var(--amber-100);--warn-500:var(--amber-500);--warn-700:var(--amber-700);
--err-50:var(--red-50);--err-500:var(--red-500);--err-600:var(--red-700);--err-700:var(--red-700);
--auto-50:var(--violet-50);--auto-500:var(--violet-500);--auto-700:var(--violet-700);
--r-sm:var(--radius-sm);--r-md:var(--radius-control);--r-lg:var(--radius-card);--r-pill:var(--radius-pill);
--sh-1:var(--shadow-xs);--sh-2:var(--shadow-sm);--sh-3:var(--shadow-pop);
--ease:var(--ease-out);--t-fast:var(--dur-fast);--t-base:var(--dur-base);--t-slow:var(--dur-slow);
--fonte:var(--font-sans);--fonte-titulo:var(--font-display);
--bg:var(--surface-page);--bg-2:var(--surface-sunken);--card:var(--surface-card);--fundo2:var(--surface-sunken);
--borda:var(--border-subtle);--texto:var(--text-primary);--texto2:var(--text-muted);
--roxo:var(--blue-600);--roxo-escuro:var(--blue-700);--roxo-claro:var(--blue-50);--azul:var(--blue-500);--cyan:var(--teal-400);
--verde:var(--green-700);--verde-claro:var(--green-50);--amarelo:var(--amber-700);--vermelho:var(--red-700);--cinza:var(--text-muted);
--grad:var(--gradient-button);--grad-suave:var(--gradient-button);
--sombra:var(--shadow-sm);--sombra-forte:var(--shadow-lg);--anel:var(--shadow-focus);
}

/* ================================ Base ================================ */
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{min-height:100vh;min-height:100dvh;font:var(--type-body);color:var(--text-primary);background-color:var(--surface-page);background-image:var(--gradient-mesh);background-repeat:no-repeat;background-attachment:fixed;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
button,input,textarea,select{font-family:inherit}
h1,h2,h3,h4,h5{font-family:var(--font-display);letter-spacing:var(--tracking-heading);color:var(--text-primary)}
a{color:var(--text-link);text-decoration:none}
a:hover{color:var(--text-link-hover);text-decoration:underline}
img,video,svg{max-width:100%}
::selection{background:var(--blue-a22)}
*{scrollbar-width:thin;scrollbar-color:var(--neutral-300) transparent}
*::-webkit-scrollbar{width:9px;height:9px}
*::-webkit-scrollbar-thumb{background:var(--neutral-300);border-radius:20px;border:2px solid transparent;background-clip:content-box}
*::-webkit-scrollbar-thumb:hover{background:var(--neutral-400);background-clip:content-box}
button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:none;box-shadow:var(--shadow-focus)}
.tabular,.num{font-variant-numeric:tabular-nums}
.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}
[hidden]{display:none !important}
/* select nativo que ganhou o select custom (melhorarSelects) fica sempre escondido */
select[data-enh]{display:none !important}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms !important;transition-duration:.001ms !important}}

/* ================================ Shell ================================ */
.ui-skip{position:fixed;top:-80px;left:var(--space-7);z-index:1000;padding:var(--space-6) var(--space-8);background:var(--surface-card);border-radius:var(--radius-control);box-shadow:var(--shadow-lg);font-weight:var(--weight-semibold)}
.ui-skip:focus{top:var(--space-6)}

.area{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;min-width:0}

/* faixa escura: barra do app + título da tela (ou saudação na Visão geral) */
.faixa{position:relative;isolation:isolate;color:var(--text-inverse);background:var(--gradient-hero-dark);z-index:var(--z-nav)}
.faixa::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--gradient-hero-sheen);pointer-events:none}
.barra-topo{display:flex;align-items:center;gap:var(--space-8);height:var(--nav-height);max-width:var(--container-max);margin:0 auto;padding:0 var(--content-gutter-lg)}
.barra-dir{display:flex;align-items:center;gap:var(--space-5);margin-left:auto;flex:0 0 auto}

.btn-menu{display:none;align-items:center;justify-content:center;width:var(--touch-min);height:var(--touch-min);flex:0 0 auto;padding:0;border:0;border-radius:var(--radius-circle);background:transparent;color:var(--text-inverse);cursor:pointer;transition:var(--transition-control)}
.btn-menu:hover{background:var(--white-a10)}
.btn-menu svg{width:22px;height:22px}

.marca{display:inline-flex;align-items:center;gap:var(--space-4);flex:0 0 auto;padding:var(--space-2);margin:0;border:0;border-radius:var(--radius-control);background:transparent;color:var(--text-inverse);cursor:pointer}
.marca img{width:var(--pn-logo);height:var(--pn-logo);border-radius:var(--radius-sm);object-fit:contain}
.wordmark{font:var(--weight-semibold) var(--text-xl)/1 var(--font-sans);letter-spacing:var(--tracking-display);white-space:nowrap}
.wordmark span{font-weight:var(--weight-regular);color:var(--text-accent-on-dark)}
.wordmark--claro{color:var(--text-display)}
.wordmark--claro span{color:var(--accent-primary)}

/* pílulas com submenu */
.pilulas{display:flex;align-items:center;gap:var(--space-2);flex:1 1 auto;min-width:0}
.pilula-grupo{position:relative;flex:0 0 auto}
.pilula{display:inline-flex;align-items:center;gap:var(--space-3);height:var(--pn-pilula-h);padding:0 var(--space-7);margin:0;font:var(--weight-medium) var(--text-base)/1 var(--font-sans);white-space:nowrap;color:var(--text-on-dark-soft);background:transparent;border:1px solid transparent;border-radius:var(--radius-pill);cursor:pointer;transition:var(--transition-control)}
.pilula:hover{background:var(--white-a10);color:var(--text-inverse)}
.pilula:active{background:var(--white-a16);transform:scale(var(--press-scale))}
.pilula-grupo.atual > .pilula,.pilula.item-nav.ativo{background:var(--blue-a18);color:var(--text-accent-on-dark);border-color:var(--blue-a28)}
.pilula[aria-expanded="true"]{background:var(--white-a16);color:var(--text-inverse)}
.pilula .seta{display:inline-flex;opacity:.6;transition:transform var(--dur-fast) var(--ease-out)}
.pilula .seta svg{width:14px;height:14px}
.pilula[aria-expanded="true"] .seta{transform:rotate(180deg)}

.drop{position:absolute;left:0;top:calc(100% + var(--space-4));z-index:var(--z-dropdown);display:flex;flex-direction:column;gap:var(--space-1);width:var(--pn-drop-w);padding:var(--space-3);color:var(--text-primary);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);animation:surgir var(--dur-fast) var(--ease-out)}
.drop--direita{left:auto;right:0;width:260px}
.drop-titulo{padding:var(--space-3) var(--space-4) var(--space-2);font:var(--weight-semibold) var(--text-2xs)/1.2 var(--font-sans);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-muted)}
.drop .item-nav{display:flex;align-items:center;gap:var(--space-5);width:100%;min-height:var(--touch-min);padding:var(--space-3) var(--space-4);margin:0;border:0;border-radius:var(--radius-md);background:transparent;color:var(--text-primary);text-align:left;cursor:pointer;transition:var(--transition-control)}
.drop .item-nav:hover{background:var(--surface-hover)}
.drop .item-nav .ico{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex:0 0 32px;border-radius:var(--radius-md);background:var(--surface-sunken);color:var(--text-accent)}
.drop .item-nav .ico svg{width:16px;height:16px}
.drop .item-nav .rot{display:flex;flex-direction:column;min-width:0;flex:1;font:var(--weight-semibold) var(--text-sm)/var(--leading-snug) var(--font-sans)}
.drop .item-nav .rot small{font:var(--type-caption);color:var(--text-muted)}
.drop .item-nav.ativo{background:var(--surface-accent-soft)}
.drop .item-nav.ativo .ico{background:var(--accent-primary);color:var(--text-inverse)}
@keyframes surgir{from{opacity:0;transform:translateY(-4px)}}

/* conta, usuário e versão */
#box-conta-sidebar{display:flex;align-items:center;gap:var(--space-4);min-width:0}
.conta-rot{font:var(--weight-semibold) var(--text-2xs)/1.2 var(--font-sans);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-muted);white-space:nowrap}
.barra-dir .conta-rot{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.barra-dir #box-conta-sidebar .sel{width:190px}
.barra-dir #box-conta-sidebar .sel-btn{min-height:34px;color:var(--text-inverse);background:var(--white-a10);border-color:var(--border-inverse);box-shadow:none}
.barra-dir #box-conta-sidebar .sel-btn:hover{background:var(--white-a16);border-color:var(--white-a28)}
.barra-dir #box-conta-sidebar .sel-chev{color:var(--text-inverse-muted)}
.usuario-btn{display:inline-flex;align-items:center;gap:var(--space-4);padding:var(--space-1) var(--space-5) var(--space-1) var(--space-1);margin:0;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--text-inverse);cursor:pointer;transition:var(--transition-control)}
.usuario-btn:hover,.usuario-btn[aria-expanded="true"]{background:var(--white-a10)}
.avatar-ini{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex:0 0 34px;border-radius:var(--radius-circle);background:var(--gradient-folder);color:var(--text-inverse);font:var(--weight-semibold) var(--text-xs)/1 var(--font-sans);box-shadow:0 0 0 2px var(--navy-900)}
.usuario-txt{display:flex;flex-direction:column;text-align:left;line-height:var(--leading-snug)}
.usuario-txt b{font:var(--weight-semibold) var(--text-sm)/var(--leading-snug) var(--font-sans);white-space:nowrap;max-width:160px;overflow:hidden;text-overflow:ellipsis}
.usuario-txt small{font:var(--type-caption);color:var(--text-inverse-muted);white-space:nowrap}
#usuario-atual{padding:var(--space-4) var(--space-4) var(--space-2);font:var(--type-small);color:var(--text-primary)}
#usuario-atual small{color:var(--text-muted)}
#app-versao{display:inline-block;margin:0 var(--space-4) var(--space-4);padding:var(--space-1) var(--space-5);font:var(--weight-semibold) var(--text-2xs)/1.4 var(--font-sans);color:var(--text-muted);background:var(--surface-sunken);border-radius:var(--radius-pill);align-self:flex-start}
.drop-sep{height:1px;margin:var(--space-2) 0;background:var(--border-subtle)}
#btn-sair{display:flex}

/* título da tela e KPIs da faixa */
.faixa-conteudo{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-8);flex-wrap:wrap;max-width:var(--container-max);margin:0 auto;padding:var(--space-6) var(--content-gutter-lg) var(--space-10)}
.faixa-titulo{min-width:0}
.faixa-grupo{font:var(--weight-semibold) var(--text-2xs)/1.2 var(--font-sans);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-inverse-muted)}
#titulo-view{margin:var(--space-2) 0 0;font:var(--weight-medium) var(--text-3xl)/var(--leading-tight) var(--font-display);letter-spacing:var(--tracking-display);color:var(--text-inverse);outline:none}
#titulo-view em{display:block;margin-top:var(--space-1);font:italic var(--weight-regular) var(--text-4xl)/var(--leading-snug) var(--font-metric);letter-spacing:0}
.faixa-sub{margin-top:var(--space-4);font:var(--type-body);color:var(--text-inverse-muted)}
.faixa-sub:empty{display:none}
.faixa-kpis{display:flex;flex-wrap:wrap;gap:var(--space-3)}
.kpi{display:inline-flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-6);margin:0;border:1px solid var(--border-inverse);border-radius:var(--radius-pill);background:var(--white-a10);color:var(--text-on-dark-soft);font:var(--type-small);cursor:pointer;transition:var(--transition-control);-webkit-backdrop-filter:var(--blur-glass);backdrop-filter:var(--blur-glass)}
.kpi:hover{background:var(--white-a16);color:var(--text-inverse)}
.kpi .ico{display:inline-flex}
.kpi .ico svg{width:15px;height:15px}
.kpi b{font:var(--weight-semibold) var(--text-md)/1 var(--font-sans);color:var(--text-inverse);font-variant-numeric:tabular-nums}
.kpi.kpi-erro .ico,.kpi.kpi-erro b{color:var(--amber-300)}
/* "Conta: X" — só aparece quando o dono está vendo a conta de outra pessoa. Cursor normal: é aviso,
   não botão. Destaque em âmbar para não passar batido na faixa escura. */
.kpi.kpi-conta{cursor:default;color:var(--amber-300);border-color:var(--amber-300);font:var(--weight-semibold) var(--text-sm)/1 var(--font-sans)}
.kpi.kpi-conta:hover{background:var(--white-a10);color:var(--amber-300)}
.kpi.kpi-conta[hidden]{display:none}
/* Visão geral: saudação grande e KPIs em cartões de vidro */
.faixa--home .faixa-conteudo{padding-top:var(--space-10);padding-bottom:var(--space-14);gap:var(--space-12)}
.faixa--home #titulo-view{font-size:var(--pn-saudacao)}
.faixa--home .faixa-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4);min-width:min(560px,100%)}
.faixa--home .kpi{flex-direction:column;align-items:flex-start;gap:var(--space-2);padding:var(--space-6) var(--space-7);border-radius:var(--radius-lg)}
.faixa--home .kpi b{font:var(--type-metric);color:var(--text-inverse)}
.faixa--home .kpi.kpi-erro b{color:var(--amber-300)}

/* avisos globais entre a faixa e o conteúdo */
.alerta-global{display:none;align-items:center;gap:var(--space-6);flex-wrap:wrap;padding:var(--space-6) var(--content-gutter-lg);font:var(--type-small);border-bottom:1px solid transparent}
.alerta-global .btn{margin-left:auto}
#aviso-seguranca{background:var(--status-critical-bg);color:var(--text-negative);border-color:var(--red-50)}
#alerta-perfis{background:var(--red-700);color:var(--text-inverse);font-weight:var(--weight-semibold)}
#alerta-perfis .btn{background:var(--surface-card);color:var(--red-700);border-color:transparent;box-shadow:none}
/* versão nova do painel: fica colada no topo enquanto a página rola, por cima da faixa escura; gaveta, modais e toasts ficam por cima dela */
#aviso-versao{position:sticky;top:0;z-index:calc(var(--z-nav) + 1);flex-wrap:nowrap;background:var(--surface-accent-soft);color:var(--text-accent);border-color:var(--blue-a18)}
#aviso-versao > span{flex:1 1 auto;min-width:0}
#aviso-versao .btn{flex:none}

main{flex:1 0 auto;width:100%;max-width:var(--container-max);margin:0 auto;padding:var(--space-12) var(--content-gutter-lg) var(--space-24)}
.view{display:none}
.view.visivel{display:block;animation:aparecerView var(--dur-base) var(--ease-out) both}
@keyframes aparecerView{from{opacity:0}}

/* gaveta do celular (mesmos itens do menu, em lista) */
body > aside{display:none}
#overlay-menu{display:none;position:fixed;inset:0;z-index:calc(var(--z-overlay) - 1);background:var(--surface-scrim);-webkit-backdrop-filter:var(--blur-sheet);backdrop-filter:var(--blur-sheet)}
#overlay-menu.aberto{display:block;animation:escurecer var(--dur-base) var(--ease-out)}
.gaveta-topo{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding-bottom:var(--space-4)}
.gaveta-topo .marca{color:var(--text-primary)}
.ui-close-menu{display:inline-flex;align-items:center;justify-content:center;width:var(--touch-min);height:var(--touch-min);border:0;border-radius:var(--radius-circle);background:transparent;color:var(--text-muted);cursor:pointer}
.ui-close-menu:hover{background:var(--surface-hover);color:var(--text-primary)}
.ui-close-menu svg{width:20px;height:20px}
.gaveta-conta:empty{display:none}
.gaveta-conta #box-conta-sidebar{flex-direction:column;align-items:stretch;gap:var(--space-2)}
.gaveta-conta .conta-rot{color:var(--text-muted)}
.secao-nav{padding:var(--space-8) var(--space-4) var(--space-2);font:var(--weight-semibold) var(--text-2xs)/1.2 var(--font-sans);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-muted)}
body > aside .item-nav{display:flex;align-items:center;gap:var(--space-5);width:100%;min-height:var(--touch-min);padding:0 var(--space-4);margin:0;border:0;border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font:var(--weight-medium) var(--text-base)/1.2 var(--font-sans);text-align:left;cursor:pointer}
body > aside .item-nav:hover{background:var(--surface-hover);color:var(--text-primary)}
body > aside .item-nav .ico{display:inline-flex;color:var(--text-muted)}
body > aside .item-nav .ico svg{width:18px;height:18px}
body > aside .item-nav.ativo{background:var(--surface-accent-soft);color:var(--text-accent);font-weight:var(--weight-semibold)}
body > aside .item-nav.ativo .ico{color:var(--text-accent)}
@keyframes escurecer{from{opacity:0}}
@keyframes deslizar{from{transform:translateX(-100%)}}

/* barra de abas do celular */
.abas-celular{display:none}

/* ================================ Botões ================================ */
.btn{--_bg:var(--gradient-button);--_fg:var(--text-inverse);--_bd:var(--white-a55);--_sh:var(--shadow-accent),var(--hairline-inner);
  display:inline-flex;align-items:center;justify-content:center;gap:var(--space-4);min-height:38px;padding:0 18px;margin:0;
  font:var(--weight-semibold) var(--text-sm)/1.2 var(--font-sans);letter-spacing:var(--tracking-tight);white-space:nowrap;text-decoration:none;
  color:var(--_fg);background:var(--_bg);border:1px solid var(--_bd);border-radius:var(--radius-pill);box-shadow:var(--_sh);cursor:pointer;transition:var(--transition-control);-webkit-tap-highlight-color:transparent}
.btn:hover:not(:disabled){filter:var(--hover-brighten);transform:translateY(-1px);text-decoration:none}
.btn:active:not(:disabled){transform:scale(var(--press-scale));filter:var(--press-darken)}
.btn:focus-visible{outline:none;box-shadow:var(--_sh),var(--shadow-focus)}
.btn:disabled{opacity:var(--opacity-disabled);cursor:not-allowed;transform:none;filter:none}
.btn svg{width:16px;height:16px;flex-shrink:0}
.btn .ico{display:inline-flex;align-items:center}
.btn.sec{--_bg:var(--surface-card);--_fg:var(--text-primary);--_bd:var(--border-subtle);--_sh:var(--shadow-xs)}
.btn.ghost{--_bg:transparent;--_fg:var(--text-secondary);--_bd:transparent;--_sh:var(--shadow-none)}
.btn.sec:hover:not(:disabled),.btn.ghost:hover:not(:disabled){--_bg:var(--surface-hover);filter:none;transform:none}
.btn.sec:active:not(:disabled),.btn.ghost:active:not(:disabled){--_bg:var(--surface-sunken);filter:none}
.btn.perigo{--_bg:var(--status-critical-bg);--_fg:var(--text-negative);--_bd:transparent;--_sh:var(--shadow-none)}
.btn.perigo:hover:not(:disabled){filter:none;transform:none;--_bd:var(--red-500)}
.btn.ok{--_bg:var(--green-700);--_fg:var(--text-inverse);--_bd:transparent;--_sh:var(--shadow-xs)}
.btn.comentario-ativo{--_bg:var(--status-positive-bg);--_fg:var(--text-positive);--_bd:var(--green-500);--_sh:var(--shadow-none)}
.btn.escuro{--_bg:var(--surface-strong);--_fg:var(--text-on-strong);--_bd:transparent;--_sh:var(--shadow-sm)}
.btn.mini{min-height:32px;padding:0 var(--space-7);font-size:var(--text-xs);gap:var(--space-3)}
.btn.grande{min-height:46px;padding:0 var(--space-12);font-size:var(--text-md)}
.btn.bloco{display:flex;width:100%}
.btn-icone{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:1px solid transparent;border-radius:var(--radius-circle);background:transparent;color:var(--text-muted);cursor:pointer;transition:var(--transition-control)}
.btn-icone:hover{background:var(--surface-hover);color:var(--text-primary)}
.btn-icone svg{width:16px;height:16px}

/* ================================ Formulários ================================ */
input,select,textarea{width:100%;min-height:40px;padding:var(--space-4) var(--space-6);font:var(--weight-regular) var(--text-base)/var(--leading-snug) var(--font-sans);color:var(--text-primary);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-control);box-shadow:var(--shadow-xs);transition:var(--transition-control)}
textarea{min-height:88px;line-height:var(--leading-normal);resize:vertical}
input:hover:not(:focus):not(:disabled),select:hover:not(:focus),textarea:hover:not(:focus){border-color:var(--border-strong)}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--border-accent);box-shadow:var(--shadow-focus)}
input:disabled,textarea:disabled,select:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}
input[readonly]{background:var(--surface-sunken)}
input::placeholder,textarea::placeholder{color:var(--text-muted);opacity:1}
input[type=checkbox],input[type=radio]{width:auto;min-height:0;padding:0;box-shadow:none;accent-color:var(--accent-primary);cursor:pointer}
input[type=checkbox]{width:16px;height:16px}
input[type=radio]{width:16px;height:16px}
input[type=color]{padding:var(--space-1);min-height:34px}
input[type=file]{padding:var(--space-3);box-shadow:none}
label{display:block;margin:var(--space-7) 0 var(--space-3);font:var(--type-label);color:var(--text-secondary)}
label:first-child{margin-top:0}
.check-linha{display:flex;align-items:center;gap:var(--space-4);margin:0;font:var(--type-small);color:var(--text-primary);cursor:pointer}
.check-linha input{width:auto}
details > summary{cursor:pointer}

/* select custom (o nativo continua por baixo) */
.sel{position:relative;display:inline-block;width:100%}
.sel-btn{display:flex;align-items:center;gap:var(--space-4);width:100%;min-height:40px;padding:0 var(--space-6);font:var(--weight-regular) var(--text-base)/1.2 var(--font-sans);color:var(--text-primary);text-align:left;background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-control);box-shadow:var(--shadow-xs);cursor:pointer;transition:var(--transition-control)}
.sel-btn:hover{border-color:var(--border-strong)}
.sel-btn:disabled{opacity:var(--opacity-disabled);cursor:not-allowed;background:var(--surface-sunken)}
.sel.aberto .sel-btn{border-color:var(--border-accent);box-shadow:var(--shadow-focus)}
.sel-btn .sel-txt{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sel-btn .sel-chev{flex:0 0 16px;display:inline-flex;color:var(--text-muted);transition:transform var(--dur-fast) var(--ease-out)}
.sel-btn .sel-chev svg{width:16px;height:16px}
.sel.aberto .sel-btn .sel-chev{transform:rotate(180deg)}
.sel-pop{position:fixed;z-index:620;display:none;max-height:320px;padding:var(--space-3);overflow:auto;overscroll-behavior:contain;background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop)}
.sel.aberto .sel-pop{display:block;animation:surgir var(--dur-fast) var(--ease-out) both}
.sel-busca{margin-bottom:var(--space-3);min-height:34px;font-size:var(--text-sm)}
.sel-op{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-radius:var(--radius-sm);font:var(--type-small);color:var(--text-primary);cursor:pointer}
.sel-op:hover,.sel-op.foco{background:var(--surface-hover)}
.sel-op.sel-op-sel{color:var(--text-accent);font-weight:var(--weight-semibold);background:var(--surface-accent-soft)}
.sel-op.oculto{display:none}
.sel-vazio{padding:var(--space-5);text-align:center;color:var(--text-muted);font:var(--type-caption)}

/* abas claras (NavTabs light) */
.tabs{display:inline-flex;flex-wrap:nowrap;gap:var(--space-2);max-width:100%;padding:var(--space-2);margin-bottom:var(--space-5);overflow-x:auto;background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.tabs button{flex:0 0 auto;min-height:32px;padding:0 var(--space-7);border:1px solid transparent;border-radius:var(--radius-pill);background:none;color:var(--text-secondary);font:var(--weight-medium) var(--text-sm)/1 var(--font-sans);white-space:nowrap;cursor:pointer;transition:var(--transition-control)}
.tabs button:hover{background:var(--surface-hover);color:var(--text-primary)}
.tabs button.ativo,.tabs button[aria-pressed="true"],.tabs button[aria-selected="true"]{background:var(--surface-accent-soft);color:var(--text-accent);font-weight:var(--weight-semibold)}

.modo-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}
.modo-cards-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.modo-card{padding:var(--space-6) var(--space-7);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-xs);cursor:pointer;transition:var(--transition-control)}
.modo-card:hover{border-color:var(--border-strong)}
.modo-card.ativo{border-color:var(--border-accent);background:var(--surface-accent-soft);box-shadow:inset 0 0 0 1px var(--border-accent)}
.modo-card b{display:block;font:var(--weight-semibold) var(--text-sm)/1.3 var(--font-sans)}
.modo-card small{display:block;margin-top:var(--space-1);font:var(--type-caption);color:var(--text-muted)}
.preset-hora{min-height:32px;padding:0 var(--space-6);font:var(--weight-semibold) var(--text-sm)/1 var(--font-sans);color:var(--text-primary);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);cursor:pointer;transition:var(--transition-control)}
.preset-hora:hover{border-color:var(--border-accent)}
.preset-hora.ativo{background:var(--accent-primary);color:var(--text-inverse);border-color:var(--accent-primary)}
.chip-hora{display:inline-flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3) var(--space-2) var(--space-6);font:var(--weight-semibold) var(--text-sm)/1.3 var(--font-sans);color:var(--text-accent);background:var(--surface-accent-soft);border-radius:var(--radius-pill)}
.chip-hora button{width:18px;height:18px;border:0;border-radius:var(--radius-circle);background:var(--blue-a18);color:var(--text-accent);font-size:12px;line-height:1;cursor:pointer}
.chip{display:inline-flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-6);font:var(--weight-medium) var(--text-xs)/1.3 var(--font-sans);color:var(--text-secondary);background:var(--surface-sunken);border-radius:var(--radius-pill)}
.chip b{color:var(--text-primary);font-weight:var(--weight-semibold)}

/* ================================ Cartões ================================ */
.card{position:relative;min-width:0;padding:var(--pad-card);color:var(--text-primary);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);transition:var(--transition-control)}
.card h4{margin-bottom:var(--space-2);font:var(--type-section);letter-spacing:var(--tracking-heading)}
.card .sub{margin-bottom:var(--space-4);font:var(--type-small);color:var(--text-muted)}
.card .acoes{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-top:var(--space-7)}
.card-perfil{margin-bottom:var(--space-10)}
.card-perfil + .card-perfil{margin-top:0}
.card-perfil:hover{border-color:var(--border-strong)}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(330px,100%),1fr));gap:var(--gap-grid)}
#lista-conexoes{grid-template-columns:repeat(auto-fill,minmax(min(400px,100%),1fr))}
.barra{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-5);margin-bottom:var(--space-10)}
.barra h3{margin-right:auto;font:var(--type-h3);letter-spacing:var(--tracking-heading)}
.sub{color:var(--text-muted)}

/* ================================ Selos ================================ */
.tag{display:inline-flex;align-items:center;gap:var(--space-2);padding:3px 9px;font:var(--weight-semibold) var(--text-xs)/1.3 var(--font-sans);letter-spacing:var(--tracking-tight);white-space:nowrap;color:var(--text-secondary);background:var(--status-neutral-bg);border-radius:var(--radius-pill);vertical-align:middle}
.tag svg{width:12px;height:12px}
.tag-ok{background:var(--status-positive-bg);color:var(--text-positive)}
.tag-warn{background:var(--status-warning-bg);color:var(--text-warning)}
.tag-err{background:var(--status-critical-bg);color:var(--text-negative)}
.tag-auto{background:var(--violet-50);color:var(--violet-700)}
.tag-brand{background:var(--surface-accent-soft);color:var(--text-accent)}
.tag-dot::before{content:"";width:6px;height:6px;flex:0 0 6px;border-radius:var(--radius-circle);background:currentColor}
.badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:3px 9px;font:var(--weight-semibold) var(--text-xs)/1.3 var(--font-sans);white-space:nowrap;color:var(--text-inverse);background:var(--surface-strong);border-radius:var(--radius-pill)}
.badge-app{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-5);font:var(--weight-semibold) var(--text-2xs)/1.4 var(--font-sans);color:var(--text-accent);background:var(--surface-accent-soft);border-radius:var(--radius-pill)}
.badge-conectada,.badge-off{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-5);font:var(--weight-semibold) var(--text-2xs)/1.4 var(--font-sans);white-space:nowrap;border-radius:var(--radius-pill)}
.badge-conectada{background:var(--status-positive-bg);color:var(--text-positive)}
.badge-off{background:var(--status-neutral-bg);color:var(--text-secondary)}
.badge-tipo{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-5);font:var(--weight-semibold) var(--text-2xs)/1.4 var(--font-sans);border-radius:var(--radius-pill)}
.badge-tipo.reel{background:var(--violet-50);color:var(--violet-700)}
.badge-tipo.img{background:var(--blue-50);color:var(--blue-700)}
.badge-tipo.misto{background:var(--status-warning-bg);color:var(--text-warning)}
.tag-info{display:inline-block;margin:3px var(--space-2) 0 0;padding:var(--space-1) var(--space-4);font:var(--weight-semibold) var(--text-2xs)/1.4 var(--font-sans);border-radius:var(--radius-pill)}
.tag-info.falta{background:var(--status-critical-bg);color:var(--text-negative)}
.tag-info.aviso{background:var(--status-warning-bg);color:var(--text-warning)}
.pg-chips{display:flex;flex-wrap:wrap;gap:var(--space-3);margin:var(--space-2) 0 var(--space-5)}
.pg-chip{display:inline-flex;align-items:center;gap:var(--space-3);max-width:190px;padding:3px var(--space-6) 3px 3px;font:var(--weight-semibold) var(--text-xs)/1.3 var(--font-sans);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-pill)}
.pg-chip img,.pg-chip .pg-chip-av{width:22px;height:22px;flex-shrink:0;border-radius:var(--radius-circle);object-fit:cover;background:var(--surface-accent-soft)}
.pg-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
mark{padding:0 var(--space-1);color:var(--text-warning);background:var(--status-warning-bg);border-radius:3px}

/* ================================ Tabelas ================================ */
.envelope-tabela{overflow:auto;background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-sm)}
.ui-table-scroll{max-width:100%;overflow-x:auto;border-radius:var(--radius-sm)}
.ui-table-scroll table{min-width:100%}
table{width:100%;border-collapse:collapse}
th,td{padding:var(--space-6) var(--space-7);text-align:left;font:var(--type-small);white-space:nowrap;border-bottom:1px solid var(--border-subtle)}
th{font-weight:var(--weight-regular);color:var(--text-muted);background:none;vertical-align:bottom}
tr:last-child td{border-bottom:none}
tbody tr{transition:background-color var(--dur-fast) var(--ease-out)}
tbody tr:hover{background:var(--surface-hover)}

/* ================================ Modal e confirmação ================================ */
#fundo-modal{display:none;position:fixed;inset:0;z-index:var(--z-modal);align-items:flex-start;justify-content:center;overflow-y:auto;padding:var(--space-24) var(--space-8);background:var(--surface-scrim);-webkit-backdrop-filter:var(--blur-sheet);backdrop-filter:var(--blur-sheet)}
#fundo-modal.aberto{display:flex;animation:escurecer var(--dur-base) var(--ease-out)}
#modal{width:100%;max-width:var(--pn-modal-w);padding:var(--space-12);background:var(--surface-card);border-radius:var(--radius-panel);box-shadow:var(--shadow-pop);animation:surgir var(--dur-base) var(--ease-out)}
#modal h3{margin-bottom:var(--space-3);font:var(--type-h3)}
#modal .sub-modal,#confirma .sub-modal{margin-bottom:var(--space-7);font:var(--type-small);color:var(--text-muted)}
#fundo-confirma{display:none;position:fixed;inset:0;z-index:calc(var(--z-modal) + 10);align-items:center;justify-content:center;padding:var(--space-12);background:var(--surface-scrim);-webkit-backdrop-filter:var(--blur-sheet);backdrop-filter:var(--blur-sheet)}
#fundo-confirma.aberto{display:flex;animation:escurecer var(--dur-base) var(--ease-out)}
#confirma{width:100%;max-width:var(--pn-confirma-w);padding:var(--space-12);background:var(--surface-card);border-radius:var(--radius-panel);box-shadow:var(--shadow-pop);animation:surgir var(--dur-base) var(--ease-out)}
#confirma h3{margin-bottom:var(--space-4);font:var(--type-section)}
#confirma .sub-modal{line-height:var(--leading-relaxed);margin-bottom:0}
.modal-acoes{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-5);margin-top:var(--space-10)}
.caixa-check{max-height:240px;overflow-y:auto;padding:var(--space-5);background:var(--surface-hover);border:1px solid var(--border-subtle);border-radius:var(--radius-control)}
.caixa-check .check-linha{padding:var(--space-3) var(--space-2)}

/* ================================ Toast ================================ */
#toasts{position:fixed;right:var(--space-12);bottom:var(--space-12);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-5);max-width:min(380px,calc(100vw - 32px))}
.toast{position:relative;display:flex;align-items:flex-start;gap:var(--space-5);padding:var(--space-6) var(--space-7) var(--space-7);font:var(--type-small);color:var(--text-primary);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);overflow:hidden;cursor:pointer;animation:toastIn var(--dur-base) var(--ease-out) both}
@keyframes toastIn{from{opacity:0;transform:translateY(12px)}}
.toast.saindo{animation:toastOut 180ms var(--ease-out) both}
@keyframes toastOut{to{opacity:0;transform:translateY(6px)}}
.toast .t-ico{flex:0 0 18px;width:18px;height:18px;margin-top:1px;color:var(--status-positive)}
.toast .t-ico svg{width:18px;height:18px}
.toast .t-msg{flex:1;min-width:0;line-height:var(--leading-normal)}
.toast .t-msg b{font-weight:var(--weight-semibold)}
.toast .t-prog{position:absolute;left:0;bottom:0;width:100%;height:3px;background:currentColor;color:var(--status-positive);opacity:.5;transform-origin:left;animation:toastProg linear forwards}
@keyframes toastProg{from{transform:scaleX(1)}to{transform:scaleX(0)}}
.toast.erro .t-ico,.toast.erro .t-prog{color:var(--status-critical)}
.toast.aviso .t-ico,.toast.aviso .t-prog{color:var(--status-warning)}
.toast.info .t-ico,.toast.info .t-prog{color:var(--accent-primary)}

/* ================================ Menu "⋯", vazio, dica ================================ */
.menu-acoes{position:relative;display:inline-block}
.menu-acoes .menu-btn{padding:0 var(--space-4)}
.menu-acoes .menu-pop{position:absolute;right:0;top:calc(100% + var(--space-2));z-index:var(--z-dropdown);display:none;flex-direction:column;gap:var(--space-1);min-width:210px;padding:var(--space-3);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);animation:surgir var(--dur-fast) var(--ease-out) both}
.menu-acoes.aberto .menu-pop{display:flex}
.menu-acoes .menu-pop .btn{--_bg:transparent;--_fg:var(--text-primary);--_bd:transparent;--_sh:var(--shadow-none);width:100%;justify-content:flex-start;min-height:36px;border-radius:var(--radius-md);font-weight:var(--weight-medium)}
.menu-acoes .menu-pop .btn:hover{--_bg:var(--surface-hover);filter:none;transform:none}
.menu-acoes .menu-pop .btn.perigo{--_fg:var(--text-negative)}
.menu-acoes .menu-pop .btn.perigo:hover{--_bg:var(--status-critical-bg)}
.vazio{padding:var(--space-24) var(--space-12);text-align:center;font:var(--type-small);line-height:var(--leading-relaxed);color:var(--text-muted);background:var(--surface-card);border:1px dashed var(--border-dashed);border-radius:var(--radius-card)}
.dica{margin-top:var(--space-8);padding:var(--space-7) var(--space-8);font:var(--type-small);line-height:var(--leading-relaxed);color:var(--text-secondary);background:var(--surface-accent-soft);border:1px solid var(--blue-100);border-radius:var(--radius-control)}
.dica b,.dica strong{color:var(--text-primary)}

/* ================================ Utilitários ================================ */
.svg16,.svg18{display:inline-flex;align-items:center}
.svg16 svg{width:16px;height:16px}
.svg18 svg{width:18px;height:18px}
.girando svg{animation:girar .9s linear infinite;transform-origin:center}
@keyframes girar{to{transform:rotate(360deg)}}
.ic-in{display:inline-flex;align-items:center;vertical-align:-0.15em}
.ic-in svg{width:1em;height:1em}
.ic-dot{display:inline-block;width:.55em;height:.55em;border-radius:var(--radius-circle);background:currentColor;vertical-align:.08em}
.scan-spark{display:inline-block;color:var(--accent-primary);animation:scanSpark 1.6s ease-in-out infinite;will-change:transform,opacity}
@keyframes scanSpark{0%{transform:scale(.8) rotate(0deg);opacity:.4}50%{transform:scale(1.18) rotate(180deg);opacity:1}100%{transform:scale(.8) rotate(360deg);opacity:.4}}
.skel{background:linear-gradient(90deg,var(--surface-sunken) 25%,var(--neutral-50) 37%,var(--surface-sunken) 63%);background-size:400% 100%;border-radius:var(--radius-sm);animation:skel 1.4s ease infinite}
@keyframes skel{0%{background-position:100% 0}100%{background-position:0 0}}

/* ================================ Kit de página (telas) ================================
   Peças que as telas usam no lugar dos componentes da biblioteca: cabeçalho da tela, painel,
   número de destaque, aviso, grade, filtros, anel de progresso e interruptor. */
.cab-tela{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-6) var(--space-12);margin-bottom:var(--gap-section)}
.cab-tela__txt{min-width:0}
.cab-tela h2{margin:0;font:var(--type-h2);letter-spacing:var(--tracking-heading)}
.cab-tela p{margin-top:var(--space-2);max-width:72ch;font:var(--type-small);color:var(--text-muted)}
.cab-tela__acoes{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}
.pilha{display:flex;flex-direction:column;gap:var(--gap-grid);min-width:0}
.pilha-secoes{display:flex;flex-direction:column;gap:var(--gap-section);min-width:0}
.linha{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);min-width:0}
.grade{display:grid;gap:var(--gap-grid);min-width:0}
.grade > *{min-width:0}
.grade-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grade-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grade-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.grade-auto{grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr))}
.grade-lateral{grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:start}
.filtros{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-8)}
.filtros > input,.filtros > .sel{flex:1 1 220px;max-width:360px;width:auto}

.painel{display:flex;flex-direction:column;min-width:0;background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-panel);box-shadow:var(--shadow-sm)}
.painel__cab{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:var(--space-6);padding:var(--pad-card) var(--pad-card) 0}
.painel__cab h3,.painel__cab h4{margin:0;font:var(--type-section);letter-spacing:var(--tracking-heading)}
.painel__cab small,.painel__sub{display:block;margin-top:3px;font:var(--type-caption);color:var(--text-muted)}
.painel__acoes{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}
.painel__corpo{flex:1;min-width:0;padding:var(--space-7) var(--pad-card) var(--pad-card)}
.painel__rodape{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-5);padding:var(--space-7) var(--pad-card);border-top:1px solid var(--border-subtle)}

.stat{display:flex;flex-direction:column;gap:var(--space-4);min-width:0;padding:var(--pad-card);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-sm)}
.stat__rot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);font:var(--weight-semibold) var(--text-md)/var(--leading-snug) var(--font-sans);color:var(--text-primary)}
.stat__rot svg{width:18px;height:18px;color:var(--text-muted)}
.stat__num{font:var(--type-metric-lg);color:var(--text-primary);font-variant-numeric:lining-nums}
.stat__num--vazio{color:var(--text-faint)}
.stat__leg{font:var(--type-small);color:var(--text-muted)}
.stat--compacto .stat__num{font:var(--type-metric)}
.num-serif{font-family:var(--font-metric);font-weight:var(--weight-regular);font-variant-numeric:lining-nums}

.aviso{display:flex;align-items:flex-start;gap:var(--space-5);padding:var(--space-6) var(--space-7);font:var(--type-small);border:1px solid transparent;border-radius:var(--radius-control)}
.aviso > .ic-in,.aviso > svg{margin-top:var(--space-1);flex:0 0 auto}
.aviso__txt{flex:1;min-width:0}
.aviso--info{background:var(--surface-accent-soft);color:var(--text-accent);border-color:var(--blue-a18)}
.aviso--ok{background:var(--status-positive-bg);color:var(--text-positive)}
.aviso--atencao{background:var(--status-warning-bg);color:var(--text-warning)}
.aviso--erro{background:var(--status-critical-bg);color:var(--text-negative)}
.aviso b,.aviso strong{color:inherit}

.selo{display:inline-flex;align-items:center;gap:var(--space-2);padding:3px 9px;font:var(--weight-semibold) var(--text-xs)/1.3 var(--font-sans);white-space:nowrap;border-radius:var(--radius-pill);color:var(--text-secondary);background:var(--status-neutral-bg);vertical-align:middle}
.selo--ok{color:var(--text-positive);background:var(--status-positive-bg)}
.selo--atencao{color:var(--text-warning);background:var(--status-warning-bg)}
.selo--erro{color:var(--text-negative);background:var(--status-critical-bg)}
.selo--destaque{color:var(--text-accent);background:var(--surface-accent-soft)}
.selo--escuro{color:var(--text-on-strong);background:var(--surface-strong)}
.selo--sm{padding:var(--space-1) 7px;font-size:var(--text-2xs)}

.tabela{width:100%;border-collapse:separate;border-spacing:0}
.tabela th{padding:0 var(--space-7) var(--space-6);font:var(--weight-regular) var(--text-sm)/var(--leading-snug) var(--font-sans);color:var(--text-muted);border-bottom:1px solid var(--border-subtle);white-space:nowrap}
.tabela td{padding:var(--space-6) var(--space-7);font:var(--type-body);color:var(--text-primary);border-bottom:1px solid var(--border-subtle);white-space:normal;vertical-align:middle}
.tabela tr:last-child td{border-bottom:0}
.tabela .dir{text-align:right}
.tabela--densa td{padding-top:var(--space-5);padding-bottom:var(--space-5)}
.tabela tr.clicavel{cursor:pointer}
.tabela tr.selecionada{background:var(--surface-accent-soft)}
.rolagem-x{max-width:100%;overflow-x:auto}

.anel{--_p:0;--_cor:var(--chart-completed);position:relative;display:inline-grid;place-items:center;width:56px;height:56px;flex:0 0 auto;border-radius:var(--radius-circle);background:conic-gradient(var(--_cor) calc(var(--_p) * 1%),var(--chart-track) 0)}
.anel::before{content:"";position:absolute;inset:6px;border-radius:inherit;background:var(--surface-card)}
.anel > span{position:relative;font:var(--weight-semibold) var(--text-xs)/1 var(--font-sans);color:var(--text-primary)}
.anel--atencao{--_cor:var(--status-warning)}
.anel--erro{--_cor:var(--status-critical)}
.anel--ok{--_cor:var(--status-positive)}
.barra-prog{height:6px;width:100%;overflow:hidden;background:var(--chart-track);border-radius:var(--radius-pill)}
.barra-prog > span{display:block;height:100%;background:var(--accent-primary);border-radius:inherit}

.switch{position:relative;display:inline-flex;align-items:center;gap:var(--space-5);margin:0;font:var(--type-small);color:var(--text-primary);cursor:pointer}
.switch input{position:absolute;opacity:0;width:1px;height:1px}
.switch__trilho{position:relative;width:40px;height:22px;flex:0 0 auto;border-radius:var(--radius-pill);background:var(--control-track-off);transition:var(--transition-control)}
.switch__trilho::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:var(--radius-circle);background:var(--control-knob);box-shadow:var(--shadow-sm);transition:transform var(--dur-base) var(--ease-spring)}
.switch input:checked + .switch__trilho{background:var(--accent-primary)}
.switch input:checked + .switch__trilho::after{transform:translateX(18px)}
.switch input:focus-visible + .switch__trilho{box-shadow:var(--shadow-focus)}
.switch input:disabled + .switch__trilho{opacity:var(--opacity-disabled)}

.lista-linhas > *{padding:var(--space-6) 0;border-bottom:1px solid var(--border-subtle)}
.lista-linhas > *:last-child{border-bottom:0}
.texto-muted{color:var(--text-muted)}
.texto-sm{font:var(--type-small)}
.texto-xs{font:var(--type-caption)}

/* ================================ Telas: conexões, apps, páginas ================================ */
.perfil-cab{display:flex;align-items:center;gap:var(--space-6);margin-bottom:var(--space-5)}
.perfil-cab .avatar{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 44px;border-radius:var(--radius-circle);background:var(--gradient-folder);color:var(--text-inverse);font:var(--weight-semibold) var(--text-md)/1 var(--font-sans)}
.pagina-item{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-5) var(--space-2);font:var(--type-small);border-top:1px solid var(--border-subtle)}
.pagina-item img,.pagina-item .foto-vazia{width:30px;height:30px;flex-shrink:0;border-radius:var(--radius-circle);object-fit:cover;background:var(--surface-sunken)}
.pagina-item .nome-pag{flex:1;min-width:0;overflow-wrap:break-word;word-break:break-word}
.pagina-item .nome-pag small{display:block;font:var(--type-caption);color:var(--text-muted)}
.pagina-item .camp-linha{display:block;margin-top:var(--space-1);font:var(--type-caption);color:var(--text-muted)}
.pagina-item .pag-acoes{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-3)}
.campo-copiar{display:flex;align-items:center;gap:var(--space-4);margin-top:var(--space-3)}
.campo-copiar code{flex:1;min-width:0;padding:var(--space-4) var(--space-6);overflow-x:auto;white-space:nowrap;font:var(--weight-regular) var(--text-xs)/1.5 var(--font-mono);background:var(--surface-sunken);border-radius:var(--radius-sm)}
.app-linha{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-5) var(--space-2);font:var(--type-small);border-top:1px solid var(--border-subtle)}
.app-linha .info-app{flex:1;min-width:0}
.app-linha .info-app small{display:block;font:var(--type-caption);color:var(--text-muted)}
.coluna-config{display:flex;flex-direction:column;gap:var(--gap-grid)}

/* galeria */
#grade-pastas{display:grid;grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:var(--gap-grid);margin-bottom:var(--space-12)}
.pasta-card{position:relative;overflow:hidden;background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);cursor:pointer;transition:var(--transition-control)}
.pasta-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--border-strong)}
.pasta-mosaico{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:1px;aspect-ratio:1/1;overflow:hidden;background:var(--surface-sunken)}
.pasta-mosaico.uma{grid-template-columns:1fr;grid-template-rows:1fr}
.pasta-mosaico img{display:block;width:100%;height:100%;object-fit:cover;transition:transform var(--dur-slow) var(--ease-out)}
.pasta-card:hover .pasta-mosaico img{transform:scale(1.04)}
.pasta-mosaico .vazia{display:flex;align-items:center;justify-content:center;background:var(--gradient-folder);color:var(--white-a88)}
.pasta-mosaico .vazia svg{width:26px;height:26px}
.pasta-card .qtd{position:absolute;top:var(--space-4);right:var(--space-4);padding:var(--space-1) var(--space-4);font:var(--weight-semibold) var(--text-2xs)/1.4 var(--font-sans);color:var(--text-inverse);background:rgba(13,17,23,.72);border-radius:var(--radius-pill)}
.pasta-card .corpo-pasta{padding:var(--space-5) var(--space-6) var(--space-5)}
.pasta-card .nome{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:var(--weight-semibold) var(--text-sm)/1.3 var(--font-sans)}
.pasta-card .rodape-pasta{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-4);font:var(--type-caption);color:var(--text-muted)}
.pasta-card .rodape-pasta button{display:inline-flex;padding:var(--space-2);border:0;border-radius:var(--radius-xs);background:none;color:var(--text-muted);opacity:0;cursor:pointer;transition:var(--transition-control)}
.pasta-card:hover .rodape-pasta button,.pasta-card:focus-within .rodape-pasta button,.pasta-card .rodape-pasta button:focus-visible{opacity:1}
.pasta-card .rodape-pasta button svg{width:15px;height:15px}
.pasta-card .rodape-pasta button:hover{background:var(--surface-sunken);color:var(--text-accent)}
.pasta-card .rodape-pasta .excluir:hover{color:var(--text-negative)}
#grade-midia{display:grid;grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:var(--gap-grid)}
.midia-card{position:relative;overflow:hidden;background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-sm)}
.midia-card.sel{border-color:var(--border-accent);box-shadow:inset 0 0 0 2px var(--border-accent)}
.midia-card img,.midia-card video{display:block;width:100%;height:150px;object-fit:cover;background:var(--ink-900)}
.midia-card .info{padding:var(--space-5) var(--space-6);font:var(--type-caption);color:var(--text-muted)}
.midia-card .info .leg{display:block;margin-bottom:var(--space-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:var(--type-small);color:var(--text-primary)}
.sel-check{position:absolute;top:var(--space-3);left:var(--space-3);z-index:2;display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--surface-glass);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);cursor:pointer}
.sel-check input{width:16px;height:16px}
.barra-selecao{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-5);margin-bottom:var(--space-6);padding:var(--space-4) var(--space-7);background:var(--surface-accent-soft);border:1px solid var(--blue-100);border-radius:var(--radius-control)}
.migalha{display:flex;align-items:center;gap:var(--space-4);font:var(--type-small)}
.migalha a{font-weight:var(--weight-semibold);text-decoration:none;cursor:pointer}

/* planner (fora do menu, ainda acessível pelo endereço) */
#grade-planner{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--space-5)}
.dia-col{min-height:340px;padding:var(--space-5);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-xs)}
.dia-col.hoje{border-color:var(--border-accent);box-shadow:inset 0 0 0 1px var(--border-accent)}
.dia-cab{position:relative;margin-bottom:var(--space-5);padding-bottom:var(--space-4);text-align:center;font:var(--weight-semibold) var(--text-2xs)/1.3 var(--font-sans);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border-subtle)}
.dia-cab b{display:block;margin-top:var(--space-1);font:var(--type-metric-sm);color:var(--text-primary);letter-spacing:0;text-transform:none}
.dia-cab .dia-total{position:absolute;top:0;right:0;padding:1px 7px;font-size:10px;color:var(--text-accent);background:var(--surface-accent-soft);border-radius:var(--radius-pill)}
.dia-col.hoje .dia-cab b{color:var(--text-accent)}
.post-card{margin-bottom:var(--space-3);padding:var(--space-3) var(--space-4);font:var(--type-caption);background:var(--surface-hover);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-control)}
.post-card:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}
.post-card .hora{display:flex;align-items:center;gap:var(--space-2);font-weight:var(--weight-semibold)}
.post-card .pag{display:block;margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted)}
.post-card .ponto-st{display:inline-block;width:7px;height:7px;flex-shrink:0;border-radius:var(--radius-circle)}
.post-card.tp-reel{background:var(--violet-50)}
.post-card.tp-reel .hora{color:var(--violet-700)}
.post-card.tp-img{background:var(--blue-50)}
.post-card.tp-img .hora{color:var(--blue-700)}
.btn-expandir{width:100%;margin-top:var(--space-1);padding:var(--space-3);font:var(--weight-semibold) var(--text-2xs)/1.3 var(--font-sans);color:var(--text-muted);background:none;border:1px dashed var(--border-dashed);border-radius:var(--radius-sm);cursor:pointer}
.btn-expandir:hover{border-color:var(--border-accent);color:var(--text-accent)}
#grade-mes{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--space-4)}
.mes-cab{padding-bottom:var(--space-1);text-align:center;font:var(--weight-semibold) var(--text-2xs)/1.3 var(--font-sans);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted)}
.mes-dia{display:flex;flex-direction:column;min-height:92px;padding:var(--space-4);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-xs);cursor:pointer;transition:var(--transition-control)}
.mes-dia:hover{transform:translateY(-2px);border-color:var(--border-accent)}
.mes-dia.fora{opacity:.45}
.mes-dia.hoje{border-color:var(--border-accent);box-shadow:inset 0 0 0 1px var(--border-accent)}
.mes-dia .num{font:var(--type-metric-sm)}
.mes-dia.hoje .num{color:var(--text-accent)}
.mes-dia .qtd{margin-top:var(--space-1);font:var(--type-caption);color:var(--text-muted)}
.mes-bar{display:flex;height:6px;margin-top:auto;overflow:hidden;background:var(--chart-track);border-radius:var(--radius-pill)}
.mes-bar .seg-reel{background:var(--violet-500)}
.mes-bar .seg-img{background:var(--blue-500)}
#legenda-status{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-8);margin-top:var(--space-7);font:var(--type-caption);color:var(--text-muted)}
.ponto{display:inline-block;width:9px;height:9px;margin-right:5px;border-radius:var(--radius-circle)}
.quad{display:inline-block;width:12px;height:12px;margin-right:5px;vertical-align:middle;border-radius:3px}

/* criar post / prévia do Facebook (fora do menu) */
.duas-colunas{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:var(--space-10);align-items:start}
.picker-midias{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:var(--space-4);max-height:240px;overflow-y:auto;padding:var(--space-4);background:var(--surface-hover);border:1px solid var(--border-subtle);border-radius:var(--radius-control)}
.picker-item{position:relative;height:88px;overflow:hidden;background:var(--ink-900);border:2px solid transparent;border-radius:var(--radius-sm);cursor:pointer}
.picker-item img,.picker-item video{display:block;width:100%;height:100%;object-fit:cover}
.picker-item.selecionada{border-color:var(--border-accent)}
.picker-item .tag-tipo{position:absolute;top:4px;right:4px;padding:1px var(--space-3);font-size:10px;color:var(--text-inverse);background:rgba(13,17,23,.6);border-radius:var(--radius-xs)}
.fb-preview{overflow:hidden;background:var(--neutral-0);border:1px solid var(--border-subtle);border-radius:var(--radius-card)}
.fb-cab{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-6) var(--space-7)}
.fb-cab img,.fb-cab .avatar-vazio{width:40px;height:40px;object-fit:cover;background:var(--surface-sunken);border-radius:var(--radius-circle)}
.fb-cab b{display:block;font-size:var(--text-base)}
.fb-cab small{font:var(--type-caption);color:var(--text-muted)}
.fb-texto{padding:0 var(--space-7) var(--space-5);white-space:pre-wrap;word-break:break-word}
.fb-midia{display:flex;align-items:center;justify-content:center;min-height:220px;color:var(--text-muted);background:var(--neutral-100)}
.fb-midia img,.fb-midia video{display:block;width:100%;max-height:420px;object-fit:contain}
.fb-cta{display:none;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-7);background:var(--neutral-100);border-top:1px solid var(--border-subtle)}
.fb-cta .cta-nome b{display:block;font-size:var(--text-sm)}
.fb-cta .cta-nome small{font:var(--type-caption);color:var(--text-muted)}
.fb-cta .cta-botao{padding:var(--space-4) var(--space-7);font:var(--weight-semibold) var(--text-sm)/1 var(--font-sans);background:var(--neutral-200);border-radius:var(--radius-sm)}
.fb-rodape{display:flex;border-top:1px solid var(--border-subtle)}
.fb-rodape span{flex:1;padding:var(--space-5);text-align:center;font:var(--weight-semibold) var(--text-sm)/1 var(--font-sans);color:var(--text-muted)}
.stepper{display:flex;gap:var(--space-3);margin:var(--space-3) 0 var(--space-8)}
.stepper .step{display:flex;flex:1;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-control);cursor:pointer;transition:var(--transition-control)}
.stepper .step:hover{border-color:var(--blue-300)}
.stepper .step .num{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex:0 0 20px;font:var(--weight-bold) var(--text-2xs)/1 var(--font-sans);color:var(--text-secondary);background:var(--surface-sunken);border-radius:var(--radius-circle)}
.stepper .step.ok .num{color:var(--text-inverse);background:var(--status-positive)}
.stepper .step .rot{font:var(--weight-semibold) var(--text-xs)/1.3 var(--font-sans);color:var(--text-secondary)}
.stepper .step.ok .rot{color:var(--text-primary)}

/* fluxos: prévia do Messenger */
.fx-phone{padding:var(--space-6) var(--space-5);background:var(--neutral-100);border:1px solid var(--border-subtle);border-radius:var(--radius-xl)}
.fx-phone-top{padding:var(--space-1) 0 var(--space-6);text-align:center;font:var(--weight-semibold) var(--text-2xs)/1.3 var(--font-sans);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted)}
.fx-phone-chat{display:flex;flex-direction:column;gap:var(--space-2)}
.fx-bolha{align-self:flex-start;max-width:84%;padding:9px 13px;font:var(--type-small);color:var(--text-primary);word-break:break-word;background:var(--neutral-0);border-radius:16px 16px 16px 5px;box-shadow:var(--shadow-xs)}
.fx-btns-preview{align-self:flex-start;display:flex;flex-direction:column;gap:var(--space-2);width:84%;margin:1px 0 var(--space-3)}
.fx-btn-preview{padding:var(--space-4);text-align:center;font:var(--weight-semibold) var(--text-xs)/1.3 var(--font-sans);color:var(--text-accent);background:var(--neutral-0);border:1px solid var(--border-subtle);border-radius:16px}
.fx-img-preview{display:flex;align-items:center;justify-content:center;align-self:flex-start;width:84%;aspect-ratio:1.3;color:var(--text-muted);background:var(--neutral-200);border-radius:var(--radius-card)}
.fx-img-preview svg{width:30px;height:30px}
.fx-delay-preview{display:flex;align-items:center;justify-content:center;gap:5px;margin:5px 0;font:var(--type-caption);color:var(--text-muted)}

/* logs */
#caixa-logs{max-height:70vh;overflow-y:auto;padding:var(--space-6) var(--space-8);font:var(--weight-regular) var(--text-xs)/1.5 var(--font-mono);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-sm)}
#caixa-logs > div{padding:var(--space-3) 0;border-bottom:1px solid var(--border-subtle)}
#caixa-logs > div:last-child{border-bottom:0}

/* ================================ Donzap ================================ */
.dz-config-grid{display:grid;grid-template-columns:minmax(240px,1.2fr) minmax(240px,1fr);gap:var(--space-6);align-items:end}
.dz-config-grid label{margin:0 0 var(--space-3)}
.dz-readonly{display:inline-flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-5);font:var(--weight-semibold) var(--text-2xs)/1.4 var(--font-sans);white-space:nowrap;color:var(--text-accent);background:var(--surface-accent-soft);border-radius:var(--radius-pill)}
.dz-status{display:none;margin-top:var(--space-5);padding:var(--space-5) var(--space-6);font:var(--type-small);border-radius:var(--radius-control)}
.dz-status.aberto{display:block}
.dz-status.ok{color:var(--text-positive);background:var(--status-positive-bg)}
.dz-status.erro{color:var(--text-negative);background:var(--status-critical-bg)}
.dz-status.info{color:var(--text-accent);background:var(--surface-accent-soft)}
.dz-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap-grid);margin:0 0 var(--space-8)}
.dz-kpi{min-width:0;padding:var(--pad-card);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-sm)}
.dz-kpi span{display:block;font:var(--weight-semibold) var(--text-md)/var(--leading-snug) var(--font-sans);color:var(--text-primary)}
.dz-kpi strong{display:block;margin-top:var(--space-5);font:var(--type-metric-lg);color:var(--text-primary);font-variant-numeric:lining-nums}
.dz-kpi small{display:block;margin-top:var(--space-4);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:var(--type-small);color:var(--text-muted)}
.dz-section-title{display:flex;align-items:center;gap:var(--space-5);margin-bottom:var(--space-6)}
.dz-section-title h4{margin:0}
.dz-section-title .sub{margin:0 0 0 auto}
.dz-connection{display:inline-flex;align-items:center;gap:var(--space-3);font:var(--weight-semibold) var(--text-xs)/1.3 var(--font-sans);color:var(--text-negative)}
.dz-connection::before{content:"";width:8px;height:8px;border-radius:var(--radius-circle);background:var(--status-critical)}
.dz-connection.ok{color:var(--text-positive)}
.dz-connection.ok::before{background:var(--status-positive);box-shadow:0 0 0 3px var(--status-positive-bg)}
.dz-campaigns{display:grid;gap:var(--gap-grid);margin-top:var(--space-7)}
.dz-campaign{padding:var(--pad-card);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-card)}
.dz-campaign-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-7);margin-bottom:var(--space-7)}
.dz-campaign-head h4{margin:0 0 var(--space-2);font:var(--type-section)}
.dz-campaign-head p{margin:0;font:var(--type-small);color:var(--text-muted)}
.dz-campaign-state{flex:0 0 auto;padding:var(--space-2) var(--space-5);font:var(--weight-semibold) var(--text-2xs)/1.4 var(--font-sans);color:var(--text-secondary);background:var(--status-neutral-bg);border-radius:var(--radius-pill)}
.dz-campaign-state.ok{color:var(--text-positive);background:var(--status-positive-bg)}
.dz-campaign-metrics{display:grid;grid-template-columns:1.35fr repeat(4,minmax(100px,1fr))}
.dz-campaign-metrics > div{min-width:0;padding:3px var(--space-7);border-left:1px solid var(--border-subtle)}
.dz-campaign-metrics > div:first-child{padding-left:0;border-left:0}
.dz-campaign-metrics strong{display:block;font:var(--type-metric-sm);color:var(--text-primary)}
.dz-campaign-metrics small{display:block;margin-top:var(--space-2);font:var(--type-caption);color:var(--text-muted)}
.dz-campaign-metrics .ok strong{color:var(--text-positive)}
.dz-campaign-metrics .danger strong{color:var(--text-negative)}

/* ================================ Visão geral e Central de envios (saas-ui.js) ================================ */
.ui-intro{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-6) var(--space-12);margin-bottom:var(--gap-section)}
.ui-intro h3{margin:0 0 var(--space-2);font:var(--type-h2);letter-spacing:var(--tracking-heading)}
.ui-intro p,.ui-muted{font:var(--type-small);color:var(--text-muted)}
.ui-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}
.ui-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap-grid);margin-bottom:var(--gap-grid)}
.ui-kpi{display:flex;flex-direction:column;gap:var(--space-4);min-width:0;padding:var(--pad-card);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-sm)}
.ui-kpi-label{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);font:var(--weight-semibold) var(--text-md)/var(--leading-snug) var(--font-sans);color:var(--text-primary)}
.ui-icon{display:inline-flex;width:18px;height:18px;flex-shrink:0;color:var(--text-muted)}
.ui-icon svg{width:100%;height:100%}
.ui-value{display:block;font:var(--type-metric-lg);color:var(--text-primary);font-variant-numeric:lining-nums}
.ui-kpi small{font:var(--type-small);color:var(--text-muted)}
.ui-good{color:var(--text-positive)}
.ui-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr);gap:var(--gap-grid);margin-bottom:var(--gap-grid)}
.ui-panel{min-width:0;background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-panel);box-shadow:var(--shadow-sm)}
.ui-panel-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--pad-card) var(--pad-card) var(--space-5)}
.ui-panel-heading h4{margin:0;font:var(--type-section)}
.ui-panel-heading small{font:var(--type-caption);color:var(--text-muted)}
.ui-period{display:inline-flex;gap:var(--space-1);padding:var(--space-1);background:var(--surface-sunken);border-radius:var(--radius-pill)}
.ui-period button{min-height:28px;padding:0 var(--space-6);font:var(--weight-medium) var(--text-xs)/1 var(--font-sans);color:var(--text-secondary);background:transparent;border:0;border-radius:var(--radius-pill);cursor:pointer}
.ui-period button[aria-pressed=true]{background:var(--surface-card);color:var(--text-accent);font-weight:var(--weight-semibold);box-shadow:var(--shadow-xs)}
/* Filtro de período da Visão geral: vale para todo número com data da tela. */
.ui-home-filtro{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);margin-bottom:var(--space-5)}
/* O filtro gruda nos cartões que ele manda: a margem de cima deles sai quando vem logo depois. */
.ui-home-filtro + .ui-mini-metrics{margin-top:0}
.ui-home-filtro .ui-muted{font:var(--type-caption)}
.ui-home-periodo{background:var(--surface-sunken)}
@media (max-width:640px){.ui-home-periodo{flex-wrap:wrap;justify-content:center;width:100%;border-radius:var(--radius-card)}.ui-home-periodo button{flex:1 1 auto;min-height:var(--touch-min)}}
.ui-chart-number{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-4);padding:0 var(--pad-card)}
.ui-chart-number strong{font:var(--type-metric-lg);font-variant-numeric:lining-nums}
.ui-chart{display:block;width:100%;height:218px}
.ui-chart text{font-family:var(--font-sans);font-size:11px;fill:var(--text-muted)}
.ui-chart .ui-bar{fill:var(--accent-primary)}
.ui-chart-details{margin:0 var(--pad-card) var(--pad-card);font:var(--type-caption);color:var(--text-muted)}
.ui-chart-data{display:flex;flex-wrap:wrap;gap:7px 18px;padding-top:9px;list-style:none}
.ui-health{padding:var(--space-2) var(--pad-card) var(--pad-card)}
.ui-health-state{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:var(--space-5);margin-top:var(--space-4);padding:var(--space-5) var(--space-6);border:1px solid var(--border-subtle);border-radius:var(--radius-control)}
.ui-health-state > span:nth-child(2){display:flex;flex-direction:column;min-width:0}
.ui-health-state b{font:var(--weight-semibold) var(--text-sm)/1.3 var(--font-sans);color:var(--text-primary)}
.ui-health-state small{margin-top:1px;font:var(--type-caption);color:var(--text-muted)}
.ui-health-state strong{font:var(--type-metric-sm);color:var(--text-primary)}
.ui-health-state-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:var(--radius-circle);font:var(--weight-bold) var(--text-sm)/1 var(--font-sans)}
.ui-health-state-ok .ui-health-state-icon{color:var(--text-positive);background:var(--status-positive-bg)}
.ui-health-state-danger .ui-health-state-icon{color:var(--text-negative);background:var(--status-critical-bg)}
.ui-health-state-recovered .ui-health-state-icon{color:var(--text-accent);background:var(--surface-accent-soft)}
.ui-callout{margin-top:var(--space-7);padding:var(--space-5) var(--space-6);font:var(--type-small);overflow-wrap:anywhere;color:var(--text-warning);background:var(--status-warning-bg);border-radius:var(--radius-control)}
.ui-callout.ui-clear{color:var(--text-positive);background:var(--status-positive-bg)}
.ui-health-link{display:inline-flex;align-items:center;gap:var(--space-3);min-height:32px;margin-top:var(--space-7);padding:0;font:var(--weight-semibold) var(--text-sm)/1 var(--font-sans);color:var(--text-link);background:none;border:0;cursor:pointer}
.ui-health-link:hover{color:var(--text-link-hover)}
.ui-health-link .ui-icon{width:14px;height:14px;color:inherit}
.ui-mini-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap-grid);margin:var(--gap-grid) 0}
.ui-mini-metric{display:flex;flex-direction:column;gap:var(--space-3);min-width:0;padding:var(--pad-card);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-sm)}
.ui-mini-metric span{font:var(--weight-semibold) var(--text-sm)/var(--leading-snug) var(--font-sans);color:var(--text-primary)}
.ui-mini-metric strong{display:block;font:var(--type-metric);color:var(--text-primary);font-variant-numeric:lining-nums}
.ui-mini-metric small{font:var(--type-caption);color:var(--text-muted)}
.ui-oper-strip{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-8);margin:var(--gap-grid) 0;padding:var(--pad-card);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-panel);box-shadow:var(--shadow-sm)}
.ui-oper-strip h4{margin-bottom:var(--space-2);font:var(--type-section)}
.ui-panel-body{padding:var(--space-2) var(--pad-card) var(--pad-card);font:var(--type-small)}
.ui-ranking-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-5);padding:var(--space-5) 0;border-bottom:1px solid var(--border-subtle)}
.ui-ranking-row:last-child{border:0}
.ui-ranking-row strong{font-weight:var(--weight-medium);overflow-wrap:anywhere}
/* nome da página vira link pro feed no Facebook: parece o texto normal, revela-se link ao passar o mouse */
.ui-page-link{color:inherit;text-decoration:none;cursor:pointer}
.ui-page-link:hover,.ui-page-link:focus-visible{color:var(--text-accent);text-decoration:underline}
.ui-ranking-row span{text-align:right;color:var(--text-muted)}
.ui-status-groups{display:grid;gap:var(--space-7);margin-top:var(--space-7)}
.ui-status-group{overflow:hidden;border:1px solid var(--border-subtle);border-radius:var(--radius-control)}
.ui-status-group-title{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);padding:var(--space-5) var(--space-6);font:var(--weight-semibold) var(--text-xs)/1.3 var(--font-sans);letter-spacing:var(--tracking-label);text-transform:uppercase}
.ui-status-group-title span{display:flex;align-items:center;gap:var(--space-4)}
.ui-status-group-title i,.ui-status-dot{display:block;width:8px;height:8px;flex:0 0 auto;border-radius:var(--radius-circle)}
.ui-status-group-title strong{min-width:25px;padding:var(--space-1) 7px;text-align:center;font-size:var(--text-2xs);border-radius:var(--radius-pill)}
.ui-status-group-danger .ui-status-group-title{color:var(--text-negative);background:var(--status-critical-bg)}
.ui-status-group-danger .ui-status-group-title i,.ui-status-group-danger .ui-status-dot{background:var(--status-critical)}
.ui-status-group-danger .ui-status-group-title strong,.ui-status-group-danger .ui-status-badge{color:var(--text-negative);background:var(--status-critical-bg)}
.ui-status-group-ok .ui-status-group-title{color:var(--text-positive);background:var(--status-positive-bg)}
.ui-status-group-ok .ui-status-group-title i,.ui-status-group-ok .ui-status-dot{background:var(--status-positive)}
.ui-status-group-ok .ui-status-group-title strong,.ui-status-group-ok .ui-status-badge{color:var(--text-positive);background:var(--status-positive-bg)}
.ui-status-row{display:grid;grid-template-columns:10px minmax(150px,1fr) auto auto;align-items:center;gap:var(--space-5);min-height:45px;padding:var(--space-4) var(--space-6);border-top:1px solid var(--border-subtle)}
.ui-status-row strong{font:var(--weight-medium) var(--text-sm)/1.3 var(--font-sans);overflow-wrap:anywhere}
.ui-status-time{text-align:right;font:var(--type-caption);color:var(--text-muted)}
.ui-status-badge{min-width:93px;padding:var(--space-2) var(--space-4);text-align:center;white-space:nowrap;font:var(--weight-semibold) var(--text-2xs)/1.3 var(--font-sans);border-radius:var(--radius-pill)}
.ui-feature-name{margin:var(--space-4) 0 var(--space-2);font:var(--type-section);overflow-wrap:anywhere}
.ui-insights{margin-top:var(--gap-section);padding-top:var(--gap-section);border-top:1px solid var(--border-subtle)}
.ui-insights > summary{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-6);padding:var(--space-2) 0 var(--space-7);font:var(--type-h3);list-style:none;cursor:pointer}
.ui-insights > summary::-webkit-details-marker{display:none}
.ui-insights > summary::after{content:"Abrir";display:inline-flex;align-items:center;min-height:32px;padding:0 var(--space-7);font:var(--weight-semibold) var(--text-xs)/1 var(--font-sans);color:var(--text-primary);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);box-shadow:var(--shadow-xs)}
.ui-insights[open] > summary::after{content:"Recolher"}
.ui-insights .ui-details-intro{max-width:760px;margin-bottom:var(--space-8);font:var(--type-small);color:var(--text-muted)}
.ui-empty{padding:var(--space-12) var(--space-10);text-align:center;font:var(--type-small);color:var(--text-muted)}
.ui-error{padding:var(--space-7);font:var(--type-small);color:var(--text-negative);background:var(--status-critical-bg);border-radius:var(--radius-control)}
.ui-error .btn{margin-top:var(--space-5)}
.ui-update{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:var(--space-7) 0 0;font:var(--type-caption);color:var(--text-muted)}
.ui-update::before{content:"";width:6px;height:6px;border-radius:var(--radius-circle);background:var(--status-positive)}
.ui-ops-summary .ui-mini-metrics{margin-top:0}
.ui-campaign-card{content-visibility:auto;contain-intrinsic-size:auto 150px}
.ui-campaign-card[data-status=enviando]{border-color:var(--green-500);box-shadow:inset 0 0 0 1px var(--green-500),var(--shadow-sm)}
.ui-campaign-card[data-status=agendada]{border-color:var(--amber-300)}
.ui-campaign-main{display:grid !important;grid-template-columns:18px minmax(0,1fr);gap:var(--space-6) !important}
.ui-campaign-title{min-width:0 !important}
.ui-campaign-title > b{display:block;margin-bottom:var(--space-2);font:var(--type-section)}
.ui-campaign-actions{grid-column:2;gap:var(--space-3) !important;margin-top:var(--space-2)}
.ui-campaign-progress{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);margin-top:var(--space-6);padding-top:var(--space-6);font:var(--type-caption);color:var(--text-muted);border-top:1px solid var(--border-subtle)}
.ui-campaign-progress strong{font-weight:var(--weight-semibold);color:var(--text-primary)}
.ui-progress-track{width:100%;height:6px;overflow:hidden;background:var(--chart-track);border-radius:var(--radius-pill)}
.ui-progress-track span{display:block;height:100%;background:var(--status-positive);border-radius:inherit}
.ui-campaign-meta{margin-left:auto}
.ui-load-more{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-6);padding:var(--space-8) var(--space-6) var(--space-2);font:var(--type-caption);color:var(--text-muted)}
@media (min-width:1350px){.ui-campaign-main{grid-template-columns:18px minmax(0,1fr) minmax(250px,auto)}.ui-campaign-actions{grid-column:3;max-width:440px;justify-content:flex-end;margin:0}}

/* ================================ Stories com link ================================ */
.st-resumo{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:var(--gap-grid);margin:0 0 var(--gap-section)}
.st-kpi{display:flex;flex-direction:column-reverse;gap:var(--space-4);padding:var(--pad-card);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-sm)}
.st-kpi b{display:block;font:var(--type-metric);color:var(--text-primary)}
.st-kpi span{font:var(--weight-semibold) var(--text-sm)/1.3 var(--font-sans);color:var(--text-primary)}
.st-card{display:flex;flex-direction:column;gap:var(--space-7)}
.st-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-6)}
.st-head h4{margin:0;font:var(--type-section)}
.st-head .sub{margin:var(--space-1) 0 0}
.st-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:3px 9px;font:var(--weight-semibold) var(--text-xs)/1.3 var(--font-sans);white-space:nowrap;color:var(--text-secondary);background:var(--status-neutral-bg);border-radius:var(--radius-pill)}
.st-badge.ok{color:var(--text-positive);background:var(--status-positive-bg)}
.st-badge.warn{color:var(--text-warning);background:var(--status-warning-bg)}
.st-badge.error{color:var(--text-negative);background:var(--status-critical-bg)}
.st-bar{display:flex;height:8px;overflow:hidden;background:var(--chart-track);border-radius:var(--radius-pill)}
.st-bar i{display:block;height:100%}
.st-bar .ok{background:var(--accent-primary)}
.st-bar .err{background:var(--status-critical)}
.st-bar .pend{background:var(--blue-200)}
.st-legenda{display:flex;flex-wrap:wrap;gap:var(--space-6);font:var(--type-caption);color:var(--text-muted)}
.st-legenda i{display:inline-block;width:9px;height:9px;margin-right:5px;vertical-align:middle;border-radius:2px}
.st-fatos{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:var(--space-5) var(--space-8);margin:0}
.st-fatos div{font:var(--type-small);color:var(--text-primary)}
.st-fatos small{display:block;margin-bottom:3px;font:var(--weight-semibold) var(--text-2xs)/1.3 var(--font-sans);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted)}
.st-chips{display:flex;flex-wrap:wrap;gap:var(--space-3)}
.st-chip{padding:3px var(--space-5);font:var(--weight-semibold) var(--text-xs)/1.3 var(--font-sans);color:var(--text-accent);background:var(--surface-accent-soft);border-radius:var(--radius-pill)}
.st-erro{padding:var(--space-4) var(--space-5);font:var(--weight-regular) var(--text-2xs)/1.5 var(--font-mono);overflow-wrap:anywhere;color:var(--text-negative);background:var(--status-critical-bg);border-radius:var(--radius-sm)}
.st-lotes summary{font:var(--weight-semibold) var(--text-sm)/1.3 var(--font-sans);color:var(--text-secondary)}
.st-lote{display:grid;grid-template-columns:1fr auto;align-items:center;gap:var(--space-3) var(--space-6);padding:var(--space-5) 0;font:var(--type-small);border-top:1px solid var(--border-subtle)}
.st-lote .st-bar{grid-column:1/-1}
.st-lote .sub{margin:0}
.st-grade{align-items:start}
.st-perfil{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-5)}
.st-perfil img{width:40px;height:40px;flex:none;border-radius:var(--radius-circle);object-fit:cover}
.st-avatar{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex:none;border-radius:var(--radius-circle);background:var(--gradient-folder);color:var(--text-inverse);font:var(--weight-semibold) var(--text-sm)/1 var(--font-sans)}
.st-perfil-info{flex:1 1 150px;min-width:0}
.st-perfil-info b{font:var(--type-section);overflow-wrap:anywhere}
.st-perfil-info .sub{margin:1px 0 0;font:var(--type-caption)}
select.st-papel{font-size:var(--text-xs);min-height:34px}
.st-pag{display:flex;flex-direction:column;gap:var(--space-6);padding-top:var(--space-7);border-top:1px solid var(--border-subtle)}
.st-pag .st-head{flex-wrap:wrap}
.st-pag h5{margin:0;font:var(--weight-semibold) var(--text-md)/1.3 var(--font-sans);overflow-wrap:anywhere}
.st-pcard .st-fatos{grid-template-columns:repeat(2,minmax(0,1fr))}
.st-sem-lote{margin:0;padding-top:var(--space-6);border-top:1px solid var(--border-subtle)}
.st-pcard .st-fatos.st-sem-lote{grid-template-columns:1fr}
.st-pcard.st-fora{border-color:var(--amber-300)}
.stories-notice{margin-top:var(--space-6);padding:var(--space-5) var(--space-6);font:var(--type-small);color:var(--text-warning);background:var(--status-warning-bg);border-radius:var(--radius-control)}
.stories-notice.error{color:var(--text-negative);background:var(--status-critical-bg)}
#stories-root [hidden]{display:none !important}

/* ================================ Login ================================ */
#tela-login{display:none;position:fixed;inset:0;z-index:calc(var(--z-modal) + 50);flex-direction:column;overflow-y:auto;background-color:var(--surface-page);background-image:var(--gradient-mesh);background-repeat:no-repeat}
#tela-login.aberta{display:flex}
.login-faixa{position:relative;isolation:isolate;padding:var(--space-6) var(--content-gutter-lg) 120px;color:var(--text-inverse);background:var(--gradient-hero-dark)}
.login-faixa::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--gradient-hero-sheen)}
.login-faixa .marca{cursor:default}
.login-faixa h1{max-width:var(--pn-login-w);margin:var(--space-16) auto 0;font:var(--weight-medium) var(--text-4xl)/var(--leading-tight) var(--font-display);letter-spacing:var(--tracking-display);color:var(--text-inverse)}
.login-faixa p{max-width:var(--pn-login-w);margin:var(--space-4) auto 0;font:var(--type-body);color:var(--text-inverse-muted)}
.login-cartao{position:relative;z-index:1;width:calc(100% - 2 * var(--content-gutter-sm));max-width:var(--pn-login-w);margin:-88px auto var(--space-24);padding:var(--space-12);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-panel);box-shadow:var(--shadow-lg)}
.login-cartao label{margin-top:var(--space-8)}
.login-cartao label:first-child{margin-top:0}
.login-cartao input{min-height:46px}
.login-dica{margin-top:var(--space-3);font:var(--type-caption);color:var(--text-muted)}
.login-cartao .btn{margin-top:var(--space-12)}

/* ================================ Larguras ================================ */
@media (max-width:1320px){.usuario-txt{display:none}.usuario-btn{padding:var(--space-1)}}
@media (max-width:1400px){.barra-topo{gap:var(--space-6)}.barra-dir #box-conta-sidebar .sel{width:170px}}
@media (max-width:1220px){.pilula{padding:0 var(--space-5);font-size:var(--text-sm)}.barra-dir #box-conta-sidebar .sel{width:150px}.marca .wordmark{font-size:var(--text-lg)}}
@media (min-width:901px) and (max-width:1040px){.barra-topo .marca .wordmark{display:none}}
@media (max-width:1180px){.dz-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.grade-4{grid-template-columns:repeat(2,minmax(0,1fr))}.grade-3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:1150px){.ui-dashboard-grid{grid-template-columns:minmax(0,1.4fr) minmax(215px,1fr)}.faixa:not(.faixa--home) .kpi:not(.essencial):not(.kpi-erro){display:none}}
@media (max-width:1100px){.duas-colunas{grid-template-columns:1fr}.grade-lateral{grid-template-columns:minmax(0,1fr)}}
@media (max-width:1000px){#grade-planner{grid-template-columns:repeat(2,1fr)}#grade-mes{gap:var(--space-2)}.mes-dia{min-height:64px;padding:5px}}

/* navegação vira gaveta + barra de abas (900px = --bp-nav) */
@media (max-width:900px){
  .barra-topo{height:var(--mobile-nav-height);padding:0 var(--space-3) 0 var(--space-2);gap:var(--space-3)}
  .btn-menu{display:inline-flex}
  .pilulas,.barra-dir .slot-conta{display:none}
  .marca .wordmark{font-size:var(--text-lg)}
  .faixa-conteudo{padding:var(--space-2) var(--content-gutter-sm) var(--space-8)}
  #titulo-view{font-size:var(--text-2xl)}
  .faixa:not(.faixa--home) .faixa-kpis{display:none}
  .faixa--home .faixa-conteudo{padding:var(--space-4) var(--content-gutter-sm) var(--space-10);gap:var(--space-8)}
  .faixa--home #titulo-view{font-size:var(--pn-saudacao-sm)}
  .faixa--home #titulo-view em{font-size:var(--text-2xl)}
  .faixa--home .faixa-kpis{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;width:100%}
  .alerta-global{padding:var(--space-6) var(--content-gutter-sm)}
  main{padding:var(--content-gutter-sm) var(--content-gutter-sm) calc(var(--mobile-tabbar-height) + var(--space-16))}
  body > aside{display:flex;position:fixed;top:0;bottom:0;left:0;z-index:var(--z-overlay);flex-direction:column;gap:var(--space-1);width:min(var(--pn-gaveta-w),calc(100vw - 40px));padding:var(--space-6) var(--space-6) var(--space-8);overflow-y:auto;overscroll-behavior:contain;background:var(--surface-card);box-shadow:var(--shadow-pop);visibility:hidden;transform:translateX(-100%);transition:transform var(--dur-slow) var(--ease-out),visibility 0s linear var(--dur-slow)}
  body > aside.aberto{visibility:visible;transform:none;transition:transform var(--dur-slow) var(--ease-out)}
  .abas-celular{position:fixed;left:0;right:0;bottom:0;z-index:var(--z-nav);display:flex;gap:var(--space-2);min-height:calc(var(--mobile-tabbar-height) + env(safe-area-inset-bottom));padding:var(--space-3) var(--space-3) calc(var(--space-3) + env(safe-area-inset-bottom));background:var(--surface-card);border-top:1px solid var(--border-subtle)}
  .abas-celular .item-nav{display:flex;flex:1 1 0;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);min-width:0;min-height:var(--touch-min);margin:0;padding:var(--space-1) 0;font:var(--weight-medium) var(--text-2xs)/1 var(--font-sans);color:var(--text-muted);background:transparent;border:0;border-radius:var(--radius-control);cursor:pointer;-webkit-tap-highlight-color:transparent}
  .abas-celular .item-nav .ico{display:inline-flex;padding:var(--space-1) var(--space-6);border-radius:var(--radius-pill)}
  .abas-celular .item-nav .ico svg{width:20px;height:20px}
  .abas-celular .item-nav .rot{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .abas-celular .item-nav.ativo{color:var(--text-accent);font-weight:var(--weight-semibold)}
  .abas-celular .item-nav.ativo .ico{background:var(--surface-accent-soft)}
  #toasts{right:var(--space-6);bottom:calc(var(--mobile-tabbar-height) + var(--space-6) + env(safe-area-inset-bottom))}
  .cards,#lista-conexoes{grid-template-columns:1fr}
  #grade-planner{grid-template-columns:1fr}
  .barra h3{margin-right:0}
  #fundo-modal{padding:var(--space-8) var(--space-5)}
  #modal{padding:var(--space-10) var(--space-8);max-width:100%}
  .duas-colunas{gap:var(--space-7)}
  .dz-campaign-metrics{grid-template-columns:repeat(2,minmax(120px,1fr));gap:var(--space-6) 0}
  .dz-campaign-metrics > div:nth-child(odd){padding-left:0;border-left:0}
  .login-faixa{padding:var(--space-4) var(--content-gutter-sm) 110px}
  .login-faixa h1{font-size:var(--text-3xl)}
}
@media (max-width:820px){.fx-grid{grid-template-columns:1fr !important}}
@media (max-width:640px){
  .modo-cards-3{grid-template-columns:1fr}
  .grade-2,.grade-3,.grade-4{grid-template-columns:minmax(0,1fr)}
  .grade-4.grade-celular-2,.grade-3.grade-celular-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .card{padding:var(--pad-card-sm)}
  .pagina-item{flex-wrap:wrap}
  .pagina-item .pag-acoes{flex-basis:100%;justify-content:flex-start;margin-top:5px}
  .modo-cards{grid-template-columns:1fr}
  [style*="grid-template-columns:1fr 1fr"]{grid-template-columns:1fr !important}
  .barra{gap:var(--space-4)}
  .card .acoes{gap:var(--space-3)}
  .cab-tela__acoes,.ui-actions{width:100%}
  .cab-tela__acoes .btn,.ui-actions .btn{flex:1 1 auto}
  .ui-kpis{grid-template-columns:1fr;gap:var(--space-5)}
  .ui-kpi{padding:var(--pad-card-sm)}
  .ui-value{font-size:var(--text-3xl)}
  .ui-dashboard-grid{grid-template-columns:1fr}
  .ui-mini-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5)}
  .ui-mini-metric{padding:var(--pad-card-sm)}
  .ui-panel-heading{padding:var(--pad-card-sm) var(--pad-card-sm) var(--space-5)}
  .ui-chart-number,.ui-health,.ui-panel-body{padding-left:var(--pad-card-sm);padding-right:var(--pad-card-sm)}
  .ui-status-row{grid-template-columns:10px minmax(0,1fr) auto;gap:var(--space-4);padding:var(--space-5)}
  .ui-status-time{grid-column:2;text-align:left}
  .ui-status-badge{grid-column:3;grid-row:1/span 2;min-width:80px}
  .ui-oper-strip .btn{width:100%}
  .ui-campaign-actions{grid-column:1/-1}
  .ui-campaign-actions .btn{flex:1 1 auto}
  .ui-campaign-meta{margin-left:0}
  .ui-campaign-title .sub{overflow-wrap:anywhere}
  .ui-campaign-main > input[type=checkbox]{width:20px !important;height:20px !important}
  .btn,.btn.mini,.sel-btn,.menu-btn,.preset-hora,.ui-period button{min-height:var(--touch-min)}
  input:not([type=checkbox]):not([type=radio]),select,textarea,.sel-btn,.sel-busca{font-size:16px !important}
  input:not([type=checkbox]):not([type=radio]),select,.sel-btn{min-height:var(--touch-min)}
  .sel{max-width:100%;min-width:0 !important}
  .sel-txt{white-space:normal}
  .sel-op{min-height:var(--touch-min);padding:var(--space-6)}
  .view .card,.view .painel{max-width:100%;min-width:0}
  .view [style*="display:grid"],#modal [style*="display:grid"]{grid-template-columns:minmax(0,1fr) !important}
  .view [style*="min-width:200px"],.view [style*="min-width:180px"],.view [style*="min-width:300px"]{min-width:0 !important;max-width:100%}
  #modal{padding:var(--space-10) var(--space-8);border-radius:var(--radius-card)}
  #fundo-modal{padding:var(--space-5)}
  .modal-acoes .btn{flex:1}
  #grade-pastas,#grade-midia{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5)}
  .pasta-card .rodape-pasta button{opacity:1;min-width:34px;min-height:34px}
  .tabs{width:100%}
  .tabs button{min-height:40px}
  .campo-copiar{flex-wrap:wrap}
  .stepper{flex-wrap:wrap}
  .stepper .step{flex:1 1 44%}
  .dz-config-grid,.dz-kpis{grid-template-columns:1fr}
  .dz-section-title{flex-wrap:wrap;align-items:flex-start}
  .dz-section-title .sub{width:100%;margin-left:0}
  .dz-campaign-head{flex-direction:column}
  .dz-campaign-metrics{grid-template-columns:1fr 1fr}
  .dz-campaign-metrics > div{padding:3px var(--space-5)}
  .dz-campaign-metrics > div:first-child{grid-column:1/-1;padding-bottom:var(--space-6);border-bottom:1px solid var(--border-subtle)}
  #view-donzap .ui-actions,#view-donzap .ui-actions .btn{width:100%}
  .login-cartao{padding:var(--space-10) var(--space-8)}
}
@media (max-width:360px){.marca img{display:none}}
@media (pointer:coarse){.ui-health-link{min-height:var(--touch-min)}.pasta-card .rodape-pasta button{opacity:1}}

/* ===== Telas: lote-a ===== */
/* Visão geral (só "Desempenho por página"), Central de envios, Nova campanha e Leads.
   Só tokens; as medidas fora da escala ficam nas variáveis abaixo. */
#view-insights,#view-campanhas-mutil,#view-shortcode,#view-leads{
  --t-lote-a-traco:1px;
  --t-lote-a-ico:16px;
  --t-lote-a-foto:30px;
  --t-lote-a-av:28px;
  --t-lote-a-ck:18px;
  --t-lote-a-busca-min:220px;
  --t-lote-a-busca-max:360px;
  --t-lote-a-nome-max:260px;
}
#view-insights{--t-insights-grade-max:420px;--t-insights-post-min:220px;--t-insights-capa-h:150px}
#view-campanhas-mutil{--t-campanhas-mutil-intrinseca:190px}
#view-shortcode{--t-shortcode-coluna-a:1.1fr;--t-shortcode-area-min:96px;--t-shortcode-area-alta:120px;--t-shortcode-area-baixa:64px;--t-shortcode-paginas-max:460px;--t-shortcode-hora-larg:150px;--t-shortcode-dt-larg:88px;--t-shortcode-puxar-min:200px}
#view-leads{--t-leads-grid-max:420px;--t-leads-grafico-h:150px;--t-leads-barra-larg:58%;--t-leads-hachura:3px;--t-leads-cinco-min:180px;--t-leads-anel:40px}

/* busca com ícone (as quatro telas) */
:is(#view-insights,#view-campanhas-mutil,#view-shortcode,#view-leads) .t-busca{position:relative;flex:1 1 var(--t-lote-a-busca-min);max-width:var(--t-lote-a-busca-max);min-width:0}
:is(#view-insights,#view-campanhas-mutil,#view-shortcode,#view-leads) .t-busca > svg,
:is(#view-insights,#view-campanhas-mutil,#view-shortcode,#view-leads) .t-busca__ic{position:absolute;left:var(--space-6);top:50%;display:inline-flex;width:var(--t-lote-a-ico);height:var(--t-lote-a-ico);color:var(--text-muted);transform:translateY(-50%);pointer-events:none}
:is(#view-insights,#view-campanhas-mutil,#view-shortcode,#view-leads) .t-busca__ic svg{width:100%;height:100%}
:is(#view-insights,#view-campanhas-mutil,#view-shortcode,#view-leads) .t-busca input{padding-left:calc(var(--space-6) + var(--t-lote-a-ico) + var(--space-4))}
:is(#view-insights,#view-campanhas-mutil,#view-shortcode,#view-leads) .t-busca__limpar{position:absolute;right:var(--space-2);top:50%;transform:translateY(-50%)}
:is(#view-insights,#view-campanhas-mutil,#view-shortcode,#view-leads) .t-busca:has(.t-busca__limpar) input{padding-right:calc(var(--space-16) + var(--space-2))}
:is(#view-shortcode,#view-leads) .pilha > .filtros{margin-bottom:0}

/* ---------- Visão geral · Desempenho por página ---------- */
#view-insights .t-insights-intro{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-6);margin-bottom:var(--space-8)}
#view-insights .t-insights-intro .ui-details-intro{flex:1 1 var(--t-lote-a-busca-max);margin:0}
#view-insights #cont-insights:empty{display:none}
#view-insights .t-insights-grade{max-height:var(--t-insights-grade-max);overflow:auto}
#view-insights .t-insights-grade thead th{position:sticky;top:0;z-index:1;padding-top:var(--space-4);background:var(--surface-card)}
#view-insights .t-insights-grupo th{padding:var(--space-5) var(--space-7);text-align:left;white-space:normal;font:var(--type-caption);color:var(--text-muted);background:var(--surface-sunken)}
#view-insights .t-insights-grupo th b{font-weight:var(--weight-semibold);color:var(--text-primary)}
#view-insights .t-insights-grade tr.clicavel:focus-visible{outline:none;background:var(--surface-accent-soft)}
#view-insights .t-insights-grade tr.clicavel:focus-visible td{box-shadow:inset 0 calc(-1 * var(--t-lote-a-traco)) 0 var(--border-accent),inset 0 var(--t-lote-a-traco) 0 var(--border-accent)}
#view-insights .t-insights-pag{display:flex;align-items:center;gap:var(--space-5);min-width:0}
#view-insights .t-insights-foto{position:relative;display:inline-grid;place-items:center;flex:0 0 auto;width:var(--t-lote-a-foto);height:var(--t-lote-a-foto);overflow:hidden;font:var(--weight-semibold) var(--text-2xs)/1 var(--font-sans);color:var(--text-accent);background:var(--surface-accent-soft);border-radius:var(--radius-circle)}
#view-insights .t-insights-foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
#view-insights .t-insights-pag__txt{display:flex;flex-direction:column;min-width:0}
#view-insights .t-insights-pag__txt b{max-width:var(--t-lote-a-nome-max);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:var(--type-body-strong)}
#view-insights .t-insights-pag__txt small,#view-insights .t-insights-sub{display:block;font:var(--type-caption);color:var(--text-muted);white-space:nowrap}
#view-insights .t-insights-grade td.dir{white-space:nowrap}
#view-insights .t-insights-periodo{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4) var(--space-6);min-width:0}
#view-insights .t-insights-rotulo{font:var(--type-label);color:var(--text-secondary)}
#view-insights .t-insights-periodo__op{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);min-width:0;max-width:100%}
#view-insights .t-insights-periodo__op .tabs{margin-bottom:0}
#view-insights .t-insights-datas{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}
#view-insights .t-insights-data{display:flex;align-items:center;gap:var(--space-3);margin:0;font:var(--type-small);color:var(--text-muted)}
#view-insights .t-insights-data input{width:auto}
#view-insights .t-insights-det-cab{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--gap-grid)}
#view-insights .t-insights-det-tit{min-width:0}
#view-insights .t-insights-det-tit h3{margin:0;font:var(--type-section);overflow-wrap:anywhere}
#view-insights .t-insights-det-tit small{display:block;margin-top:var(--space-1);font:var(--type-caption);color:var(--text-muted)}
#view-insights .t-insights-nums{margin-bottom:var(--gap-section)}
#view-insights .t-insights-posts-barra{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-8)}
#view-insights .t-insights-posts-cab{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-4)}
#view-insights .t-insights-posts-cab h4{margin:0;font:var(--type-section)}
#view-insights .t-insights-posts-barra > .sel{width:auto;flex:0 0 auto}
#view-insights .t-insights-posts{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(var(--t-insights-post-min),100%),1fr));gap:var(--gap-grid)}
#view-insights .t-insights-post{display:flex;flex-direction:column;min-width:0;overflow:hidden;background:var(--surface-card);border:var(--t-lote-a-traco) solid var(--border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-xs)}
#view-insights .t-insights-capa{position:relative;height:var(--t-insights-capa-h);margin:var(--space-3);overflow:hidden;background:var(--surface-sunken);border-radius:var(--radius-media)}
#view-insights .t-insights-capa img{display:block;width:100%;height:100%;object-fit:cover}
#view-insights .t-insights-tipo{position:absolute;top:var(--space-4);left:var(--space-4)}
#view-insights .t-insights-post__corpo{display:flex;flex:1;flex-direction:column;gap:var(--space-3);padding:var(--space-2) var(--space-7) var(--space-7)}
#view-insights .t-insights-post__quando{font:var(--type-caption);color:var(--text-muted)}
#view-insights .t-insights-post__texto{display:-webkit-box;min-height:calc(2 * var(--text-sm) * var(--leading-normal));margin:0;overflow:hidden;font:var(--type-small);color:var(--text-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical}
#view-insights .t-insights-post__nums{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-6);padding-top:var(--space-4);font:var(--type-caption);color:var(--text-secondary);border-top:var(--t-lote-a-traco) solid var(--border-subtle)}
#view-insights .t-insights-post__nums b{font-weight:var(--weight-semibold);color:var(--text-primary)}
#view-insights .t-insights-link{display:inline-flex;align-items:center;gap:var(--space-2);width:fit-content;font:var(--type-label);color:var(--text-link)}
#view-insights .t-insights-link:hover{color:var(--text-link-hover)}

/* ---------- Central de envios ---------- */
#view-campanhas-mutil .t-campanhas-mutil-resumo{margin-bottom:var(--gap-section)}
#view-campanhas-mutil .t-campanhas-mutil-barra{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4) var(--space-6);margin-bottom:var(--space-6)}
#view-campanhas-mutil .t-campanhas-mutil-barra .tabs{margin-bottom:0}
#view-campanhas-mutil .t-campanhas-mutil-barra > .sel{width:auto;flex:0 0 auto}
#view-campanhas-mutil .t-campanhas-mutil-distrib-sw{margin-left:auto}
#view-campanhas-mutil .t-campanhas-mutil-distrib{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);padding:var(--space-4) var(--space-6);font:var(--type-small);color:var(--text-muted);background:var(--surface-sunken);border-radius:var(--radius-control)}
#view-campanhas-mutil .t-campanhas-mutil-distrib__txt{flex:1 1 var(--t-lote-a-busca-min);min-width:0}
#view-campanhas-mutil .t-campanhas-mutil-massa{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4) var(--space-6);margin-bottom:var(--gap-grid);padding:var(--space-5) var(--space-6);background:var(--surface-card);border:var(--t-lote-a-traco) solid var(--border-subtle);border-radius:var(--radius-control)}
#view-campanhas-mutil .t-campanhas-mutil-todas{font-weight:var(--weight-semibold)}
#view-campanhas-mutil .t-campanhas-mutil-camp{display:flex;flex-direction:column;gap:var(--space-5);margin-bottom:var(--space-6);contain-intrinsic-size:auto var(--t-campanhas-mutil-intrinseca)}
/* o status fica no selo: sem borda colorida no cartão (DESIGN.md) */
#view-campanhas-mutil .t-campanhas-mutil-camp[data-status]{border-color:var(--border-subtle);box-shadow:var(--shadow-sm)}
/* content-visibility recorta o que sai do cartão: com o menu "..." aberto, o cartão desenha normal */
#view-campanhas-mutil .t-campanhas-mutil-camp:has(.menu-acoes.aberto){content-visibility:visible}
#view-campanhas-mutil .t-campanhas-mutil-camp__topo{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-6)}
#view-campanhas-mutil .t-campanhas-mutil-camp__topo > input[type=checkbox]{width:var(--t-lote-a-ck);height:var(--t-lote-a-ck)}
#view-campanhas-mutil .t-campanhas-mutil-camp__titulo{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2) var(--space-4);min-width:0}
#view-campanhas-mutil .t-campanhas-mutil-camp__titulo > .t-campanhas-mutil-camp__nome{display:inline;margin:0;font:var(--type-section);color:var(--text-primary);overflow-wrap:anywhere}
#view-campanhas-mutil .t-campanhas-mutil-camp__acoes{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-3)}
#view-campanhas-mutil .t-campanhas-mutil-selos{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-4)}
#view-campanhas-mutil .t-campanhas-mutil-linha{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);min-width:0;font:var(--type-small);color:var(--text-secondary)}
#view-campanhas-mutil .t-campanhas-mutil-linha__ic{display:inline-flex;flex:0 0 auto;width:var(--t-lote-a-ico);height:var(--t-lote-a-ico);color:var(--text-muted)}
#view-campanhas-mutil .t-campanhas-mutil-linha__ic svg{width:100%;height:100%}
#view-campanhas-mutil .t-campanhas-mutil-linha__txt{display:flex;flex:1 1 auto;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3);min-width:0}
/* "Meta segurando" com várias páginas: uma linha por página (antes o <br> não quebrava dentro do flex) */
#view-campanhas-mutil .t-campanhas-mutil-linha__parte{min-width:0}
#view-campanhas-mutil .t-campanhas-mutil-linha__txt:has(.t-campanhas-mutil-linha__parte + .t-campanhas-mutil-linha__parte) .t-campanhas-mutil-linha__parte{flex-basis:100%}
/* O texto longo não pode empurrar o ícone para uma linha só dele: ícone fixo à esquerda, texto ocupa o resto */
#view-campanhas-mutil .t-campanhas-mutil-linha--segurando{flex-wrap:nowrap;align-items:flex-start}
#view-campanhas-mutil .t-campanhas-mutil-linha--segurando .t-campanhas-mutil-linha__txt{flex:1 1 0}
#view-campanhas-mutil .t-campanhas-mutil-linha__txt b{color:var(--text-primary)}
#view-campanhas-mutil .t-campanhas-mutil-rot{font:var(--type-label);color:var(--text-muted)}
#view-campanhas-mutil .t-campanhas-mutil-alerta{font-weight:var(--weight-semibold);color:var(--text-warning)}
#view-campanhas-mutil .t-campanhas-mutil-prog{display:flex;align-items:center;gap:var(--space-6);padding-top:var(--space-5);border-top:var(--t-lote-a-traco) solid var(--border-subtle)}
#view-campanhas-mutil .t-campanhas-mutil-prog__txt{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}
#view-campanhas-mutil .t-campanhas-mutil-prog__num{font:var(--type-body);color:var(--text-secondary)}
#view-campanhas-mutil .t-campanhas-mutil-prog__num b{font:var(--type-metric-sm);color:var(--text-primary)}
#view-campanhas-mutil .t-campanhas-mutil-prog__erro{color:var(--text-negative);overflow-wrap:anywhere}
#view-campanhas-mutil .t-campanhas-mutil-vazio-btn{margin-top:var(--space-6)}
/* diálogos (log, editar, trocar horários): vivem no #modal, fora da seção */
.t-campanhas-mutil-modal-sub{display:block;margin-top:var(--space-1);font:var(--type-small);color:var(--text-muted)}
.t-campanhas-mutil-log{--t-lote-a-traco:1px;--t-campanhas-mutil-log-max:420px;--t-campanhas-mutil-lead-max:180px;--t-campanhas-mutil-msg-min:180px;max-height:var(--t-campanhas-mutil-log-max);margin-top:var(--space-6);overflow:auto}
.t-campanhas-mutil-disparo{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:var(--space-4) var(--space-6);padding:var(--space-6) var(--space-4);border-bottom:var(--t-lote-a-traco) solid var(--border-subtle);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-control)}
.t-campanhas-mutil-disparo:last-child{border-bottom:0}
.t-campanhas-mutil-disparo:hover{background:var(--surface-hover)}
.t-campanhas-mutil-disparo__txt{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}
.t-campanhas-mutil-disparo__txt b{font:var(--type-body-strong);overflow-wrap:anywhere}
.t-campanhas-mutil-disparo__txt small{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3);font:var(--type-caption);color:var(--text-muted)}
.t-campanhas-mutil-disparo__selos{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-3)}
.t-campanhas-mutil-disparo__seta{display:inline-flex;width:var(--space-8);color:var(--text-muted)}
.t-campanhas-mutil-log-topo,.t-campanhas-mutil-motivos{margin-bottom:var(--space-6)}
.t-campanhas-mutil-motivos{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}
.t-campanhas-mutil-log td:first-child{white-space:nowrap}
.t-campanhas-mutil-lead{display:inline-block;max-width:var(--t-campanhas-mutil-lead-max);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}
.t-campanhas-mutil-msg{min-width:var(--t-campanhas-mutil-msg-min);font:var(--type-small);color:var(--text-secondary)}
.t-campanhas-mutil-log-nav{margin-top:var(--space-6)}
.t-campanhas-mutil-status{margin-top:var(--space-5);font:var(--type-small)}
.t-campanhas-mutil-status:empty{display:none}

/* ---------- Nova campanha ---------- */
#view-shortcode code{padding:0 var(--space-2);font:var(--weight-regular) var(--text-xs)/1.5 var(--font-mono);color:var(--text-secondary);background:var(--surface-sunken);border-radius:var(--radius-xs)}
#view-shortcode .t-shortcode-layout{display:grid;grid-template-columns:minmax(0,var(--t-shortcode-coluna-a)) minmax(0,1fr);align-items:start;gap:var(--gap-grid)}
#view-shortcode .t-shortcode-col{display:flex;flex-direction:column;gap:var(--gap-grid);min-width:0}
#view-shortcode .t-shortcode-campo{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}
#view-shortcode .t-shortcode-campo label,#view-shortcode .t-shortcode-rot{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2) var(--space-4);margin:0;font:var(--type-label);color:var(--text-secondary)}
#view-shortcode .t-shortcode-campo__cab{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-3) var(--space-6)}
#view-shortcode .t-shortcode-dica{margin:0;font:var(--type-caption);color:var(--text-muted)}
#view-shortcode .t-shortcode-puxar{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);color:var(--text-muted)}
#view-shortcode .t-shortcode-puxar > .sel{width:auto;min-width:min(var(--t-shortcode-puxar-min),100%)}
#view-shortcode .t-shortcode-campo textarea{min-height:var(--t-shortcode-area-min)}
#view-shortcode .t-shortcode-campo textarea.t-shortcode-area-alta{min-height:var(--t-shortcode-area-alta)}
#view-shortcode .t-shortcode-campo textarea.t-shortcode-area-baixa{min-height:var(--t-shortcode-area-baixa)}
#view-shortcode .t-shortcode-campo > .aviso{margin-top:var(--space-2)}
#view-shortcode .modo-card b{display:flex;align-items:center;gap:var(--space-3)}
#view-shortcode .t-shortcode-validador{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}
#view-shortcode .t-shortcode-validador:empty{display:none}
#view-shortcode .t-shortcode-botoes{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-4)}
#view-shortcode .t-shortcode-botao{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto;align-items:center;gap:var(--space-4);width:100%}
#view-shortcode .t-shortcode-horas{display:flex;flex-wrap:wrap;gap:var(--space-3)}
#view-shortcode #sc-horarios-chips:empty{display:none}
#view-shortcode .t-shortcode-outra{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}
#view-shortcode .t-shortcode-outra input[type=time]{flex:0 0 auto;width:var(--t-shortcode-hora-larg)}
#view-shortcode .t-shortcode-paginas{display:flex;flex-direction:column;gap:var(--space-8);max-height:var(--t-shortcode-paginas-max);min-width:0;overflow:auto}
#view-shortcode .t-shortcode-grupo{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}
#view-shortcode .t-shortcode-grupo__cab{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);font:var(--type-small);color:var(--text-primary)}
#view-shortcode .t-shortcode-grupo__cab b{font:var(--type-body-strong)}
#view-shortcode .t-shortcode-av,#view-shortcode .t-shortcode-foto{display:inline-grid;place-items:center;flex:0 0 auto;font:var(--weight-semibold) var(--text-2xs)/1 var(--font-sans);color:var(--text-accent);background:var(--surface-accent-soft);border-radius:var(--radius-circle);object-fit:cover}
#view-shortcode .t-shortcode-av{width:var(--t-lote-a-av);height:var(--t-lote-a-av)}
#view-shortcode .t-shortcode-foto{width:var(--t-lote-a-foto);height:var(--t-lote-a-foto)}
#view-shortcode .t-shortcode-ck{width:var(--t-lote-a-ck);padding-right:0}
#view-shortcode .t-shortcode-pag{display:flex;align-items:center;gap:var(--space-5);min-width:0}
#view-shortcode .t-shortcode-pag__txt{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1);min-width:0}
#view-shortcode .t-shortcode-pag__txt b{max-width:var(--t-lote-a-nome-max);overflow:hidden;text-overflow:ellipsis;font:var(--type-body-strong);white-space:nowrap}
#view-shortcode .t-shortcode-paginas td.dir{white-space:nowrap}
/* a coluna das páginas é estreita: células mais justas para as cinco colunas caberem sem rolagem */
@media (min-width:641px){#view-shortcode .t-shortcode-paginas .tabela :is(td,th){padding-left:var(--space-5);padding-right:var(--space-5)}}
#view-shortcode .t-shortcode-ativos{font:var(--type-body-strong);color:var(--text-positive)}
#view-shortcode .t-shortcode-cats{display:inline-flex;flex-wrap:wrap;gap:var(--space-2)}
#view-shortcode .t-shortcode-vazio-btn{margin-top:var(--space-6)}
#view-shortcode .t-shortcode-passo .painel__rodape{justify-content:space-between}
#view-shortcode #sc-resumo{display:flex;flex-direction:column;gap:var(--space-6)}
#view-shortcode .t-shortcode-resumo{display:flex;flex-direction:column;gap:var(--space-4);margin:0}
#view-shortcode .t-shortcode-resumo__item{display:grid;grid-template-columns:var(--t-shortcode-dt-larg) minmax(0,1fr);gap:var(--space-4);padding-bottom:var(--space-4);border-bottom:var(--t-lote-a-traco) solid var(--border-subtle)}
#view-shortcode .t-shortcode-resumo__item:last-child{padding-bottom:0;border-bottom:0}
#view-shortcode .t-shortcode-resumo__item dt{font:var(--type-label);color:var(--text-muted)}
#view-shortcode .t-shortcode-resumo__item dd{margin:0;font:var(--type-body-strong);color:var(--text-primary);overflow-wrap:anywhere}
#view-shortcode .t-shortcode-ir{align-self:flex-start}

/* ---------- Leads ---------- */
#view-leads .t-leads-auto{margin:0}
#view-leads .t-leads-lista{margin-top:var(--gap-grid)}
#view-leads .t-leads-scan h3{display:flex;align-items:center;gap:var(--space-3)}
#view-leads .t-leads-barra > span{transition:width var(--dur-slow) var(--ease-out)}
#view-leads .t-leads-agora{display:flex;flex-direction:column;gap:var(--space-5);min-width:0}
#view-leads .t-leads-agora-total{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);font:var(--type-small);color:var(--text-secondary)}
#view-leads .t-leads-periodo{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-6);padding-top:var(--space-8);border-top:var(--t-lote-a-traco) solid var(--border-subtle)}
#view-leads .t-leads-periodo__cab{display:flex;flex-direction:column;gap:var(--space-1)}
#view-leads .t-leads-periodo__cab h4{margin:0;font:var(--type-body-strong)}
#view-leads .t-leads-periodo__ctl{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);min-width:0;max-width:100%}
#view-leads .t-leads-periodo__ctl .tabs{margin-bottom:0}
#view-leads .t-leads-datas{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);min-width:0}
#view-leads .t-leads-data{display:flex;align-items:center;gap:var(--space-3);margin:0;font:var(--type-small);color:var(--text-muted)}
#view-leads .t-leads-data input{width:auto}
#view-leads .t-leads-cinco{grid-template-columns:repeat(5,minmax(0,1fr))}
#view-leads .t-leads-grid{display:flex;flex-direction:column;gap:var(--space-8);max-height:var(--t-leads-grid-max);min-width:0;overflow:auto}
#view-leads .t-leads-grupo{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}
#view-leads .t-leads-grupo__cab{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);font:var(--type-small);color:var(--text-primary)}
#view-leads .t-leads-grupo__cab b{font:var(--type-body-strong)}
#view-leads .t-leads-av,#view-leads .t-leads-foto{display:inline-grid;place-items:center;flex:0 0 auto;font:var(--weight-semibold) var(--text-2xs)/1 var(--font-sans);color:var(--text-accent);background:var(--surface-accent-soft);border-radius:var(--radius-circle);object-fit:cover}
#view-leads .t-leads-av{width:var(--t-lote-a-av);height:var(--t-lote-a-av)}
#view-leads .t-leads-foto{width:var(--t-lote-a-foto);height:var(--t-lote-a-foto)}
#view-leads .t-leads-ck{width:var(--t-lote-a-ck);padding-right:0}
#view-leads .t-leads-pag,#view-leads .t-leads-lead{display:flex;align-items:center;gap:var(--space-5);min-width:0}
#view-leads .t-leads-pag b,#view-leads .t-leads-lead b{max-width:var(--t-lote-a-nome-max);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:var(--type-body-strong)}
#view-leads .t-leads-lead b.t-leads-sem-nome{font-weight:var(--weight-regular);font-style:italic;color:var(--text-muted)}
#view-leads .t-leads-num{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-3)}
#view-leads .t-leads-ativos{font:var(--type-body-strong);color:var(--text-positive);white-space:nowrap}
#view-leads .t-leads-escan__tit{display:inline-flex;align-items:center;gap:var(--space-3);font:var(--type-body-strong)}
#view-leads .t-leads-escan > .texto-muted{flex-basis:100%}
#view-leads .t-leads-vazio-btn{margin-top:var(--space-6)}
#view-leads .t-leads-par{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr)}
#view-leads .t-leads-origem{text-transform:capitalize}
#view-leads .t-leads-parte{display:inline-flex;justify-content:flex-end}
#view-leads .t-leads-parte .anel{width:var(--t-leads-anel);height:var(--t-leads-anel)}
#view-leads .t-leads-parte .anel::before{inset:var(--space-2)}
#view-leads .t-leads-parte .anel > span{font-size:var(--text-2xs)}
#view-leads .t-leads-colunas{display:flex;align-items:stretch;gap:var(--space-2);min-width:0}
#view-leads .t-leads-col{display:flex;flex:1 1 0;flex-direction:column;align-items:center;gap:var(--space-2);min-width:0;font:var(--type-caption);color:var(--text-faint)}
#view-leads .t-leads-col__valor{min-height:calc(var(--text-2xs) * var(--leading-normal));font-size:var(--text-2xs);white-space:nowrap;color:var(--text-muted)}
#view-leads .t-leads-col__trilho{display:flex;align-items:flex-end;justify-content:center;width:100%;height:var(--t-leads-grafico-h);border-bottom:var(--t-lote-a-traco) solid var(--chart-grid)}
#view-leads .t-leads-col__barra{display:block;width:var(--t-leads-barra-larg);border-top:var(--t-leads-hachura) solid var(--chart-productivity);border-radius:var(--radius-xs) var(--radius-xs) 0 0;background:repeating-linear-gradient(0deg,var(--chart-grid) 0 var(--t-lote-a-traco),var(--surface-card) var(--t-lote-a-traco) var(--t-leads-hachura))}
#view-leads .t-leads-col--atual .t-leads-col__barra{background:var(--chart-productivity);border-top-width:0}
#view-leads .t-leads-col--atual .t-leads-col__valor,#view-leads .t-leads-col--atual .t-leads-col__dia{font-weight:var(--weight-semibold);color:var(--text-primary)}
#view-leads .t-leads-col__dia{white-space:nowrap}
#view-leads .t-leads-nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4);margin-top:var(--space-6);padding-top:var(--space-6);border-top:var(--t-lote-a-traco) solid var(--border-subtle)}

/* abas de período e de filtro: quando não cabem, quebram linha em vez de rolar escondidas */
#view-insights #ins-periodo .tabs,#view-campanhas-mutil .t-campanhas-mutil-barra .tabs,#view-leads .t-leads-periodo .tabs,.t-campanhas-mutil-log-tabs{flex-wrap:wrap;overflow-x:visible}

/* larguras */
@media (max-width:1280px){#view-leads .t-leads-cinco{grid-template-columns:repeat(auto-fill,minmax(min(var(--t-leads-cinco-min),100%),1fr))}}
@media (max-width:1100px){
  #view-shortcode .t-shortcode-layout{display:flex;flex-direction:column}
  #view-shortcode .t-shortcode-col{display:contents}
  #view-shortcode .t-shortcode-passo--1{order:1}
  #view-shortcode .t-shortcode-passo--2{order:2}
  #view-shortcode .t-shortcode-passo--3{order:3}
  #view-shortcode .t-shortcode-passo--4{order:4}
  #view-leads .t-leads-par{grid-template-columns:minmax(0,1fr)}
  #view-leads .t-leads-lead b{max-width:calc(var(--t-lote-a-nome-max) * .7)}
}
@media (max-width:640px){
  :is(#view-insights,#view-campanhas-mutil,#view-shortcode,#view-leads) .t-busca{flex-basis:100%;max-width:none}
  #view-insights .t-insights-intro .btn{flex:1 1 auto}
  #view-campanhas-mutil .t-campanhas-mutil-distrib-sw{margin-left:0}
  #view-campanhas-mutil .t-campanhas-mutil-camp__topo{grid-template-columns:auto minmax(0,1fr)}
  #view-campanhas-mutil .t-campanhas-mutil-camp__acoes{grid-column:1 / -1;justify-content:flex-start}
  #view-campanhas-mutil .t-campanhas-mutil-prog{gap:var(--space-5)}
  .t-campanhas-mutil-disparo{grid-template-columns:minmax(0,1fr) auto}
  .t-campanhas-mutil-disparo__selos{grid-row:2;grid-column:1;justify-content:flex-start}
  .t-campanhas-mutil-disparo__seta{grid-row:1 / span 2;grid-column:2}
  #view-shortcode .t-shortcode-botao{grid-template-columns:minmax(0,1fr) auto}
  #view-shortcode .t-shortcode-botao > :nth-child(2){grid-row:2;grid-column:1}
  #view-shortcode .t-shortcode-botao > :nth-child(3){grid-row:1 / span 2;grid-column:2}
  #view-shortcode .t-shortcode-puxar{width:100%}
  #view-shortcode .t-shortcode-puxar > .sel{flex:1 1 auto}
  #view-leads .t-leads-cinco{grid-template-columns:repeat(2,minmax(0,1fr))}
  #view-leads .t-leads-colunas{gap:var(--space-1)}
  #view-leads .t-leads-periodo__ctl,#view-insights .t-insights-periodo__op{width:100%}
  #view-insights #ins-periodo .tabs,#view-campanhas-mutil .t-campanhas-mutil-barra .tabs,#view-leads .t-leads-periodo .tabs,.t-campanhas-mutil-log-tabs{border-radius:var(--radius-lg)}
  /* tabelas das telas viram blocos: a linha principal em cima e o resto embaixo, sem rolagem lateral */
  :is(#view-insights,#view-shortcode,#view-leads) .t-lote-a-blocos,
  :is(#view-insights,#view-shortcode,#view-leads) .t-lote-a-blocos tbody{display:block;width:100%}
  :is(#view-insights,#view-shortcode,#view-leads) .t-lote-a-blocos thead{display:none}
  :is(#view-insights,#view-shortcode,#view-leads) .t-lote-a-blocos tr{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-5);padding:var(--space-5) var(--space-4);border-bottom:var(--t-lote-a-traco) solid var(--border-subtle)}
  :is(#view-insights,#view-shortcode,#view-leads) .t-lote-a-blocos tr:last-child{border-bottom:0}
  :is(#view-insights,#view-shortcode,#view-leads) .t-lote-a-blocos td{display:block;min-width:0;padding:0;text-align:left;border:0}
  :is(#view-insights,#view-shortcode,#view-leads) .t-lote-a-blocos td.t-cel-cheia{flex:1 1 100%}
  :is(#view-insights,#view-shortcode,#view-leads) .t-lote-a-blocos td.t-cel-meio{flex:1 1 0}
  :is(#view-insights,#view-shortcode,#view-leads) .t-lote-a-blocos td.t-cel-quebra{flex-basis:calc(100% - var(--t-lote-a-ck) - var(--space-5))}
  :is(#view-insights,#view-shortcode,#view-leads) .t-lote-a-blocos td.t-cel-recuo{margin-left:calc(var(--t-lote-a-ck) + var(--space-5))}
  :is(#view-insights,#view-shortcode,#view-leads) .t-lote-a-blocos td.t-cel-linha{flex:1 1 100%;padding-left:calc(var(--t-lote-a-ck) + var(--space-5))}
  :is(#view-insights,#view-shortcode,#view-leads) .t-lote-a-blocos td.dir:last-child{margin-left:auto}
  :is(#view-insights,#view-shortcode,#view-leads) .t-lote-a-blocos td[data-rot]{font:var(--type-small)}
  :is(#view-insights,#view-shortcode,#view-leads) .t-lote-a-blocos td[data-rot]::before{content:attr(data-rot) " ";color:var(--text-muted)}
  #view-insights .t-lote-a-blocos tr.t-insights-grupo{padding:0}
  #view-insights .t-lote-a-blocos tr.t-insights-grupo th{flex:1 1 100%}
  #view-insights .t-lote-a-blocos .t-insights-sub{display:inline;margin-left:var(--space-2)}
  #view-insights .t-insights-grade tr.clicavel:focus-visible td{box-shadow:none}
  #view-insights .t-insights-grade tr.clicavel:focus-visible{box-shadow:inset 0 0 0 var(--t-lote-a-traco) var(--border-accent)}
  /* Leads: o nome da página ocupa a linha toda e o último scan desce para baixo dele, alinhado ao nome */
  #view-leads .t-lote-a-blocos td.dir.t-cel-recuo{margin-left:calc(var(--t-lote-a-ck) + var(--space-5) + var(--t-lote-a-foto) + var(--space-5))}
  #view-leads .t-lote-a-blocos td.t-cel-recuo .t-leads-num{justify-content:flex-start}
}

/* ===== Telas: lote-b ===== */
/* Templates, Conexões (Broadcast), Fluxos e Postagem · Make. Só tokens; medida fora da escala vira
   variável com nome no topo de cada tela. As quebras de @media repetem as do kit (640 / 900), porque
   var() não vale dentro de @media. O modal de imagem ampliada dos Templates fica fora da tela, então
   a classe dele (t-templates-ampliada) é prefixada e traz a própria medida. */

/* ---------- peças comuns às quatro telas ---------- */
#view-templates,#view-conexoes-dev,#view-fluxos,#view-make{--t-loteb-fio:1px;--t-loteb-fio-2:2px;--t-loteb-ico:16px;--t-loteb-ico-sm:12px}
/* a rolagem da tabela vira o bloco de referência: o .t-sr (absoluto) fica preso nela e não alarga a página */
#view-templates .rolagem-x,#view-conexoes-dev .rolagem-x,#view-fluxos .rolagem-x,#view-make .rolagem-x{position:relative}
/* texto só para leitor de tela (cabeçalho de coluna de seleção e de ações) */
#view-templates .t-sr,#view-conexoes-dev .t-sr,#view-fluxos .t-sr,#view-make .t-sr{position:absolute;width:var(--t-loteb-fio);height:var(--t-loteb-fio);margin:calc(-1 * var(--t-loteb-fio));padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
/* menu "⋯" de linha de tabela: abre em posição fixa (a rolagem lateral da tabela cortaria a lista) */
#view-templates .t-menu-tabela .menu-pop,#view-conexoes-dev .t-menu-tabela .menu-pop,#view-fluxos .t-menu-tabela .menu-pop,#view-make .t-menu-tabela .menu-pop{position:fixed;top:auto;right:auto;z-index:var(--z-dropdown)}
/* svg solto dentro de selo (categoria, tipo) ganha o tamanho do texto */
#view-templates .selo svg,#view-conexoes-dev .selo svg,#view-fluxos .selo svg,#view-make .selo svg{width:1em;height:1em;flex:0 0 auto}
#view-templates code,#view-conexoes-dev code,#view-fluxos code,#view-make code{padding:0 var(--space-2);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-primary);background:var(--surface-sunken);border-radius:var(--radius-xs)}
#view-templates .tabela td,#view-conexoes-dev .tabela td,#view-fluxos .tabela td,#view-make .tabela td{font:var(--type-small)}
/* ações do painel ficam sempre à direita, mesmo quando o cabeçalho quebra linha no celular:
   o menu "⋯" abre para a esquerda e sairia da tela se o botão caísse no canto esquerdo */
#view-templates .painel__acoes,#view-conexoes-dev .painel__acoes,#view-fluxos .painel__acoes,#view-make .painel__acoes{margin-left:auto}

/* ---------- Templates ---------- */
#view-templates{
  --t-templates-col:300px;
  --t-templates-lista-h:320px;
  --t-templates-busca:180px;
  --t-templates-campo-min:140px;
  --t-templates-curto:220px;
  --t-templates-num:160px;
  --t-templates-thumb:48px;
  --t-templates-msg-min:260px;
  --t-templates-msg:420px;
  --t-templates-pag-nome:180px;
  --t-templates-porpag:150px;
}
#view-templates .t-templates-resultado:empty,#view-templates #tpl-auto-painel:empty{display:none}
#view-templates .t-templates-modos{margin-bottom:var(--space-10)}
#view-templates .t-templates-colunas{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(var(--t-templates-col),100%),1fr));gap:var(--gap-section);align-items:start;min-width:0}
#view-templates .t-templates-campos{display:flex;flex-direction:column;gap:var(--space-8);min-width:0}
#view-templates .t-templates-campos > .aviso{margin:0}
#view-templates .t-templates-campo{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}
#view-templates .t-templates-campo > label{margin:0}
#view-templates .t-templates-campo--curto{max-width:var(--t-templates-curto)}
#view-templates .t-templates-rot{font:var(--type-label);color:var(--text-secondary)}
#view-templates .t-templates-dica{margin:0;font:var(--type-caption);color:var(--text-muted)}
#view-templates .t-templates-dica b{color:var(--text-secondary)}
#view-templates .t-templates-obrig{color:var(--text-negative)}
#view-templates .t-templates-opc{font-weight:var(--weight-regular);color:var(--text-muted)}
#view-templates .t-templates-link{font-weight:var(--weight-semibold);text-decoration:underline;cursor:pointer}

/* botões do template (modo manual) */
#view-templates .t-templates-botoes{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}
#view-templates .t-templates-botoes:empty{display:none}
#view-templates .t-templates-botao{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:var(--surface-sunken);border-radius:var(--radius-control);min-width:0}
#view-templates .t-templates-botao > input,#view-templates .t-templates-botao > select,#view-templates .t-templates-botao > .sel{flex:1 1 var(--t-templates-campo-min);width:auto;min-width:0}

/* seletor de páginas (os dois modos) */
#view-templates .t-templates-seletor{display:flex;flex-direction:column;gap:var(--space-5);min-width:0}
#view-templates .t-templates-seletor-topo{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}
#view-templates .t-templates-seletor-topo > input{flex:1 1 var(--t-templates-busca);width:auto;min-width:0}
#view-templates .t-templates-paginas{max-height:var(--t-templates-lista-h);overflow:auto;padding:var(--space-4) var(--space-6);background:var(--surface-card);border:var(--t-loteb-fio) solid var(--border-subtle);border-radius:var(--radius-control)}
#view-templates .t-templates-grupo + .t-templates-grupo{margin-top:var(--space-6);padding-top:var(--space-5);border-top:var(--t-loteb-fio) solid var(--border-subtle)}
#view-templates .t-templates-grupo-rot{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-2) 0 var(--space-3);font:var(--weight-semibold) var(--text-2xs)/var(--leading-snug) var(--font-sans);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-muted)}
#view-templates .t-templates-pag{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-5);margin:0;padding:var(--space-3) 0 var(--space-3) var(--space-5);font:var(--type-small);color:var(--text-primary);cursor:pointer}
#view-templates .t-templates-pag--off{color:var(--text-muted);cursor:not-allowed}
#view-templates .t-templates-selos{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}

/* rodapé do formulário com a ação principal */
#view-templates .t-templates-rodape{justify-content:space-between}
#view-templates .t-templates-rodape > span{flex:1 1 var(--t-templates-col)}

/* agendamento automático */
#view-templates .t-templates-agenda{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--space-8)}
#view-templates .t-templates-agenda > .t-templates-campo{width:var(--t-templates-num);max-width:100%}
#view-templates .t-templates-agendadas{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-6);font:var(--type-small);color:var(--text-secondary);background:var(--surface-sunken);border-radius:var(--radius-control)}
#view-templates .t-templates-agendadas b{color:var(--text-primary)}

/* lista consolidada */
#view-templates .t-templates-carregando{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-8) 0}
#view-templates .t-templates-pag-nome{display:block;min-width:var(--t-templates-busca);max-width:var(--t-templates-pag-nome);font:var(--type-body-strong)}
#view-templates .t-templates-thumb{display:grid;place-items:center;width:var(--t-templates-thumb);height:var(--t-templates-thumb);padding:0;overflow:hidden;color:var(--text-muted);background:var(--surface-sunken);border:var(--t-loteb-fio) solid var(--border-subtle);border-radius:var(--radius-md);cursor:zoom-in;transition:var(--transition-control)}
#view-templates .t-templates-thumb:hover{border-color:var(--border-strong)}
#view-templates .t-templates-thumb:focus-visible{outline:none;box-shadow:var(--shadow-focus)}
#view-templates .t-templates-thumb img{display:block;width:100%;height:100%;object-fit:cover}
#view-templates .t-templates-thumb svg{width:var(--space-10);height:var(--space-10)}
#view-templates .t-templates-thumb--vazio{cursor:default}
#view-templates .t-templates-msg{display:flex;flex-direction:column;gap:var(--space-2);min-width:var(--t-templates-msg-min);max-width:var(--t-templates-msg)}
#view-templates .t-templates-msg-txt{font:var(--type-small);color:var(--text-primary);overflow-wrap:anywhere}
#view-templates .t-templates-msg-bts{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-6);font:var(--type-caption);color:var(--text-muted)}
#view-templates .t-templates-bt{display:inline-flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);overflow-wrap:anywhere}
#view-templates .t-templates-bt b{color:var(--text-secondary);font-weight:var(--weight-semibold)}
#view-templates .t-templates-paginacao{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-5);margin-top:var(--space-6);padding-top:var(--space-6);border-top:var(--t-loteb-fio) solid var(--border-subtle)}
#view-templates .t-templates-paginacao > .sel,#view-templates .t-templates-paginacao > select{width:var(--t-templates-porpag)}
#view-templates .t-templates-paginacao-nav{display:flex;align-items:center;gap:var(--space-4);margin-left:auto}
#view-templates .t-templates-paginacao-nav .btn{padding:0 var(--space-5)}
/* modal "ampliar imagem" (fora da tela, aberto pelos Templates) */
.t-templates-ampliada{--t-templates-ampliada-h:70vh;display:block;width:100%;max-height:var(--t-templates-ampliada-h);object-fit:contain;background:var(--surface-sunken);border-radius:var(--radius-card)}

/* ---------- Conexões (Broadcast) ---------- */
#view-conexoes-dev{
  --t-conexoes-dev-texto:72ch;
  --t-conexoes-dev-sel:320px;
  --t-conexoes-dev-avatar:40px;
  --t-conexoes-dev-foto:24px;
  --t-conexoes-dev-pag-min:200px;
}
#view-conexoes-dev .t-conexoes-dev-texto{margin:0;max-width:var(--t-conexoes-dev-texto);font:var(--type-small);color:var(--text-secondary)}
#view-conexoes-dev .t-conexoes-dev-dica{margin:0;max-width:var(--t-conexoes-dev-texto);font:var(--type-caption);color:var(--text-muted)}
#view-conexoes-dev .t-conexoes-dev-conectar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-5)}
#view-conexoes-dev .t-conexoes-dev-conectar > .sel,#view-conexoes-dev .t-conexoes-dev-conectar > select{flex:0 1 var(--t-conexoes-dev-sel);width:auto;min-width:0}
#view-conexoes-dev .t-conexoes-dev-link{font-weight:var(--weight-semibold);text-decoration:underline;cursor:pointer}
#view-conexoes-dev .t-conexoes-dev-titulo{margin:0;font:var(--type-section);letter-spacing:var(--tracking-heading)}
#view-conexoes-dev .t-conexoes-dev-cont{align-self:center;margin-left:auto;white-space:nowrap}
#view-conexoes-dev .filtros{margin-bottom:0;align-items:center}
#view-conexoes-dev .t-conexoes-dev-perfil{display:flex;align-items:center;gap:var(--space-5);min-width:0}
#view-conexoes-dev .t-conexoes-dev-perfil h3{overflow-wrap:anywhere}
#view-conexoes-dev .t-conexoes-dev-avatar{width:var(--t-conexoes-dev-avatar);height:var(--t-conexoes-dev-avatar);flex:0 0 var(--t-conexoes-dev-avatar);object-fit:cover;border-radius:var(--radius-circle);background:var(--surface-sunken)}
#view-conexoes-dev .t-conexoes-dev-avatar--ini{display:inline-flex;align-items:center;justify-content:center;font:var(--weight-semibold) var(--text-md)/1 var(--font-sans);color:var(--text-inverse);background:var(--gradient-folder)}
#view-conexoes-dev .t-conexoes-dev-pagina{display:inline-flex;align-items:center;gap:var(--space-4);min-width:var(--t-conexoes-dev-pag-min);font:var(--type-body-strong);color:var(--text-primary)}
#view-conexoes-dev .t-conexoes-dev-pagina img,#view-conexoes-dev .t-conexoes-dev-pagina-ini{width:var(--t-conexoes-dev-foto);height:var(--t-conexoes-dev-foto);flex:0 0 var(--t-conexoes-dev-foto);object-fit:cover;border-radius:var(--radius-circle);background:var(--surface-sunken)}
#view-conexoes-dev .t-conexoes-dev-pagina-ini{display:inline-flex;align-items:center;justify-content:center;font-size:var(--text-xs);color:var(--text-muted)}
#view-conexoes-dev .t-conexoes-dev-tabela td .nome-pag{overflow-wrap:anywhere}

/* ---------- Fluxos ---------- */
#view-fluxos{
  --t-fluxos-nome:420px;
  --t-fluxos-curto:220px;
  --t-fluxos-blocos-min:340px;
  --t-fluxos-fone:300px;
  --t-fluxos-campo-min:140px;
  --t-fluxos-midia:52px;
  --t-fluxos-col:260px;
  --t-fluxos-caixa-h:230px;
  --t-fluxos-chip-h:32px;
  --t-fluxos-pag-min:160px;
  --t-fluxos-palavras:200px;
}
#view-fluxos .t-fluxos-abas{align-self:flex-start;margin-bottom:0}
#view-fluxos .t-fluxos-abas button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3)}
#view-fluxos .t-fluxos-abas .ico{display:inline-flex}
#view-fluxos .t-fluxos-abas svg{width:var(--t-loteb-ico);height:var(--t-loteb-ico);flex:0 0 auto}
#view-fluxos #fx-editor:empty{display:none}
#view-fluxos .t-fluxos-link{font-weight:var(--weight-semibold);text-decoration:underline;cursor:pointer}
#view-fluxos .t-fluxos-campo{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}
#view-fluxos .t-fluxos-campo > label{margin:0}
#view-fluxos .t-fluxos-campo--nome{max-width:var(--t-fluxos-nome)}
#view-fluxos .t-fluxos-campo--curto{max-width:var(--t-fluxos-curto)}
#view-fluxos .t-fluxos-rot{font:var(--type-label);color:var(--text-secondary)}
#view-fluxos .t-fluxos-dica{display:block;margin:0;font:var(--type-caption);color:var(--text-muted)}
#view-fluxos .t-fluxos-dica b{color:var(--text-secondary)}
#view-fluxos .t-fluxos-opc{font-weight:var(--weight-regular);color:var(--text-muted)}

/* painel em edição: borda de destaque, como o cartão de borda azul de antes */
#view-fluxos .t-fluxos-editando{border-color:var(--border-accent);box-shadow:var(--shadow-sm),inset 0 0 0 var(--t-loteb-fio) var(--border-accent)}

/* construtor: blocos à esquerda, prévia do Messenger ao lado (embaixo no celular) */
#view-fluxos .t-fluxos-editor{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--gap-section);min-width:0}
#view-fluxos .t-fluxos-coluna{flex:999 1 var(--t-fluxos-blocos-min);display:flex;flex-direction:column;gap:var(--space-6);min-width:0}
#view-fluxos .t-fluxos-previa{flex:1 1 var(--t-fluxos-fone);position:sticky;top:var(--space-8);min-width:0}
#view-fluxos .t-fluxos-blocos{display:flex;flex-direction:column;gap:var(--space-5);min-width:0}
#view-fluxos .t-fluxos-bloco{min-width:0;padding:var(--space-6) var(--space-7) var(--space-7);background:var(--surface-card);border:var(--t-loteb-fio) solid var(--border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-xs)}
#view-fluxos .t-fluxos-bloco-cab{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-5);font:var(--type-small);color:var(--text-secondary)}
#view-fluxos .t-fluxos-bloco-cab strong{font-weight:var(--weight-semibold);color:var(--text-primary)}
#view-fluxos .t-fluxos-num{display:inline-grid;place-items:center;width:var(--space-12);height:var(--space-12);flex:0 0 var(--space-12);border-radius:var(--radius-circle);font:var(--weight-semibold) var(--text-2xs)/1 var(--font-sans);color:var(--text-on-strong);background:var(--surface-strong)}
#view-fluxos .t-fluxos-bloco-acoes{display:inline-flex;align-items:center;gap:var(--space-1);margin-left:auto}
#view-fluxos .btn-icone:disabled{opacity:var(--opacity-disabled);cursor:not-allowed;background:transparent;color:var(--text-muted)}
#view-fluxos .t-fluxos-bloco-corpo{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}
#view-fluxos .t-fluxos-botoes{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}
#view-fluxos .t-fluxos-botoes:empty{display:none}
#view-fluxos .t-fluxos-botao{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:var(--surface-sunken);border-radius:var(--radius-control);min-width:0}
#view-fluxos .t-fluxos-linha{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);min-width:0}
#view-fluxos .t-fluxos-linha > input,#view-fluxos .t-fluxos-linha > select,#view-fluxos .t-fluxos-linha > .sel{flex:1 1 var(--t-fluxos-campo-min);width:auto;min-width:0}
#view-fluxos .t-fluxos-destino-rot{display:inline-flex;align-items:center;gap:var(--space-2);white-space:nowrap}
#view-fluxos .t-fluxos-midias{display:flex;flex-wrap:wrap;gap:var(--space-4)}
#view-fluxos .t-fluxos-midias:empty{display:none}
#view-fluxos .t-fluxos-midia{width:var(--t-fluxos-midia);height:var(--t-fluxos-midia);padding:0;overflow:hidden;background:var(--surface-sunken);border:var(--t-loteb-fio-2) solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-control)}
#view-fluxos .t-fluxos-midia img{display:block;width:100%;height:100%;object-fit:cover}
#view-fluxos .t-fluxos-midia:hover{border-color:var(--border-strong)}
#view-fluxos .t-fluxos-midia[aria-pressed="true"]{border-color:var(--border-accent);box-shadow:var(--shadow-focus)}
#view-fluxos .t-fluxos-midia:focus-visible{outline:none;box-shadow:var(--shadow-focus)}
#view-fluxos .t-fluxos-add{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}
#view-fluxos .t-fluxos-rodape{justify-content:flex-end}

/* prévia do Messenger (as peças fx-* são do kit; aqui só o que é desta tela) */
#view-fluxos .fx-phone-top{display:flex;align-items:center;justify-content:center;gap:var(--space-3)}
#view-fluxos .t-fluxos-fone-vazio{color:var(--text-muted)}
#view-fluxos .t-fluxos-fone-dica{display:inline-flex;align-items:center;gap:var(--space-1);font:var(--type-caption);color:var(--text-muted)}
#view-fluxos .t-fluxos-fone-centro{padding:var(--space-12) var(--space-4);text-align:center;font:var(--type-caption);color:var(--text-muted)}

/* listas em tabela */
#view-fluxos .t-fluxos-acoes{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-2)}
#view-fluxos .t-fluxos-tabela td:first-child .nome-pag{overflow-wrap:anywhere}

/* gatilho: formulário */
#view-fluxos .t-fluxos-form-grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(var(--t-fluxos-col),100%),1fr));gap:var(--space-8);align-items:start}
#view-fluxos .t-fluxos-radios{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-8);min-height:var(--touch-min)}
#view-fluxos .t-fluxos-eventos{display:flex;flex-direction:column;gap:var(--space-5)}
#view-fluxos .t-fluxos-gt-caixa{display:flex;flex-direction:column;gap:var(--space-6);max-height:var(--t-fluxos-caixa-h);overflow:auto;padding:var(--space-6);background:var(--surface-card);border:var(--t-loteb-fio) solid var(--border-subtle);border-radius:var(--radius-control)}
#view-fluxos .t-fluxos-gt-grupo{display:flex;flex-direction:column;gap:var(--space-4)}
#view-fluxos .t-fluxos-gt-grupo-cab{flex-wrap:wrap;font-weight:var(--weight-semibold)}
#view-fluxos .t-fluxos-gt-pags{display:flex;flex-wrap:wrap;gap:var(--space-3);padding-left:var(--space-12)}
#view-fluxos .t-fluxos-chip{display:inline-flex;align-items:center;gap:var(--space-3);max-width:100%;min-height:var(--t-fluxos-chip-h);padding:var(--space-2) var(--space-6);font:var(--weight-medium) var(--text-sm)/var(--leading-snug) var(--font-sans);text-align:left;color:var(--text-secondary);background:var(--surface-card);border:var(--t-loteb-fio) solid var(--border-subtle);border-radius:var(--radius-pill);cursor:pointer;transition:var(--transition-control)}
#view-fluxos .t-fluxos-chip:hover{border-color:var(--border-strong)}
#view-fluxos .t-fluxos-chip .ic-dot{flex:0 0 auto;color:var(--text-faint)}
/* nome longo quebra linha dentro do chip (nada de reticências: o nome inteiro fica à vista) */
#view-fluxos .t-fluxos-chip .nome-pag{min-width:0;overflow-wrap:anywhere}
#view-fluxos .t-fluxos-chip[aria-pressed="true"]{color:var(--text-accent);background:var(--surface-accent-soft);border-color:var(--border-accent)}
#view-fluxos .t-fluxos-chip[aria-pressed="true"] .ic-dot{color:var(--status-positive)}

/* gatilho: lista por página */
#view-fluxos .t-fluxos-massa{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-5);padding:var(--space-4) var(--space-6);background:var(--surface-sunken);border-radius:var(--radius-control)}
#view-fluxos .t-fluxos-massa-todos{font-weight:var(--weight-semibold)}
#view-fluxos .t-fluxos-todas{display:flex;flex-direction:column;gap:var(--space-3)}
#view-fluxos .t-fluxos-todas-item{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}
#view-fluxos .t-fluxos-gt-perfil{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}
#view-fluxos .t-fluxos-gt-perfil + .t-fluxos-gt-perfil{padding-top:var(--space-8);border-top:var(--t-loteb-fio) solid var(--border-subtle)}
#view-fluxos .t-fluxos-gt-perfil-cab{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);font:var(--type-body-strong);color:var(--text-primary)}
#view-fluxos .t-fluxos-pag{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);min-width:var(--t-fluxos-pag-min)}
#view-fluxos .t-fluxos-pag-nome{font:var(--type-body-strong);color:var(--text-primary);overflow-wrap:anywhere}
#view-fluxos .t-fluxos-sem .t-fluxos-pag-nome{font-weight:var(--weight-regular);color:var(--text-secondary)}
#view-fluxos .t-fluxos-gt-tabela td:nth-child(5){min-width:var(--t-fluxos-palavras)}
#view-fluxos .t-fluxos-disparos{display:flex;flex-direction:column;gap:var(--space-1);white-space:nowrap}

/* ---------- Postagem · Make ---------- */
#view-make{
  --t-make-texto:72ch;
  --t-make-busca:240px;
  --t-make-busca-max:360px;
  --t-make-sel:170px;
  --t-make-x:28px;
  --t-make-avatar:42px;
  --t-make-foto:30px;
  --t-make-col-sel:36px;
  --t-make-pag-min:200px;
  --t-make-hoje-min:130px;
  --t-make-and-min:220px;
  --t-make-andamento:320px;
  --t-make-acoes-min:210px;
  --t-make-btn-ico:32px;
}
#view-make #mk-filtro-badge:empty{display:none}
/* "⋯" do cabeçalho: fica na ponta direita quando as ações quebram linha (o menu abre para a esquerda) */
#view-make .cab-tela__acoes > .menu-acoes{margin-left:auto}
#view-make .t-make-aviso-acao{flex:0 0 auto;align-self:center}

/* textos das caixas de aviso e do passo a passo */
#view-make .t-make-caixa{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}
#view-make .t-make-caixa p,#view-make .t-make-caixa-txt{margin:0}
#view-make .t-make-nota{margin:0;max-width:var(--t-make-texto);font:var(--type-caption);color:var(--text-muted)}
#view-make .t-make-passos{display:flex;flex-direction:column;gap:var(--space-3);margin:0;padding-left:var(--space-10);font:var(--type-small);color:var(--text-secondary)}
#view-make .t-make-passos b{color:var(--text-primary)}
#view-make .t-make-passos .t-make-forte-erro,#view-make .t-make-forte-erro{color:var(--text-negative)}
#view-make .t-make-dica{padding:var(--space-5) var(--space-6);font:var(--type-small);color:var(--text-secondary);background:var(--surface-card);border-radius:var(--radius-sm)}
#view-make .t-make-dica b{color:var(--text-primary)}
#view-make .t-make-tecnico summary{font:var(--type-caption);color:var(--text-muted)}
#view-make .t-make-tecnico summary:focus-visible{outline:none;border-radius:var(--radius-xs);box-shadow:var(--shadow-focus)}
#view-make .t-make-pre{margin-top:var(--space-3);padding:var(--space-5) var(--space-6);font:var(--weight-regular) var(--text-xs)/var(--leading-normal) var(--font-mono);white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text-secondary);background:var(--surface-card);border-radius:var(--radius-sm)}

/* painel "Conectar um perfil novo": recolhido, o cabeçalho fecha o painel sozinho */
#view-make .t-make-como .painel__cab{padding-bottom:var(--pad-card)}
#view-make .t-make-como .painel__corpo{padding-top:0}

/* resumo, busca, filtros e seleção em massa */
#view-make .t-make-titulo{margin:0;font:var(--type-section);letter-spacing:var(--tracking-heading)}
#view-make .t-make-filtros{align-items:center;margin-bottom:0}
#view-make .t-make-filtros > .sel,#view-make .t-make-filtros > select{flex:1 1 var(--t-make-sel);max-width:var(--t-make-busca);width:auto}
#view-make .t-make-busca{position:relative;flex:1 1 var(--t-make-busca);max-width:var(--t-make-busca-max);min-width:0}
#view-make .t-make-busca input{padding-left:var(--space-16);padding-right:var(--space-16)}
#view-make .t-make-busca-ico{position:absolute;top:50%;left:var(--space-6);display:inline-flex;color:var(--text-muted);transform:translateY(-50%);pointer-events:none}
#view-make .t-make-busca-ico svg{width:var(--t-loteb-ico);height:var(--t-loteb-ico)}
#view-make .t-make-busca-x{position:absolute;top:50%;right:var(--space-3);width:var(--t-make-x);height:var(--t-make-x);padding:0;line-height:0;text-align:center;color:var(--text-muted);background:transparent;border:0;border-radius:var(--radius-circle);transform:translateY(-50%);cursor:pointer}
#view-make .t-make-busca-x:hover{color:var(--text-primary);background:var(--surface-hover)}
#view-make .t-make-busca-x svg{display:inline-block;width:var(--t-loteb-ico);height:var(--t-loteb-ico)}
#view-make .t-make-lido{margin-left:auto;font:var(--type-caption);color:var(--text-muted);white-space:nowrap}
#view-make .t-make-selecao{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-5);padding:var(--space-4) var(--space-6);background:var(--surface-sunken);border-radius:var(--radius-control)}
#view-make .t-make-selecao-acoes{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);margin-left:auto}
#view-make .t-make-stat-alerta{border-color:var(--status-critical)}
#view-make .t-make-stat-alerta .stat__num{color:var(--text-negative)}
#view-make .t-make-stat-alerta .stat__rot svg{color:var(--status-critical)}

/* um painel por perfil */
#view-make .t-make-perfil-id{display:flex;align-items:center;gap:var(--space-5);min-width:0}
#view-make .t-make-perfil-id h3{overflow-wrap:anywhere}
#view-make .t-make-avatar{width:var(--t-make-avatar);height:var(--t-make-avatar);flex:0 0 var(--t-make-avatar);object-fit:cover;border-radius:var(--radius-circle);background:var(--surface-sunken)}
#view-make .t-make-avatar--ini{display:inline-flex;align-items:center;justify-content:center;font:var(--weight-semibold) var(--text-md)/1 var(--font-sans);color:var(--text-secondary)}
#view-make .t-make-selos{gap:var(--space-3)}
/* Visão por página: foto da página na primeira coluna e os botões da linha sem quebrar no celular */
#view-make .t-make-pag{display:flex;align-items:center;gap:var(--space-4);min-width:0}
#view-make .t-make-pag-foto{display:inline-flex;align-items:center;justify-content:center;overflow:hidden;
  width:var(--t-make-avatar);height:var(--t-make-avatar);flex:0 0 var(--t-make-avatar);border-radius:var(--radius-circle);
  background:var(--surface-sunken);font:var(--weight-semibold) var(--text-sm)/1 var(--font-sans);color:var(--text-secondary)}
#view-make .t-make-pag-foto img{width:100%;height:100%;object-fit:cover}
#view-make .t-make-pag-acoes{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);justify-content:flex-end}
#view-make .t-make-desligadas > summary{list-style:none;align-self:flex-start}
#view-make .t-make-desligadas > summary::-webkit-details-marker{display:none}
#view-make .t-make-desligadas[open] > summary{margin-bottom:var(--space-4)}

/* tabela de páginas: seleção | Página | Hoje | Andamento | Situação | Ações */
#view-make .t-make-tabela td{vertical-align:top}
#view-make .t-make-col-sel{width:var(--t-make-col-sel)}
#view-make td.t-make-col-sel input{margin-top:var(--space-2)}
/* criar campanhas em massa por perfil: a barra fica no cartão, logo abaixo dos selos */
#view-make .t-make-novas{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}
#view-make .t-make-novas:empty{display:none}
#view-make .t-make-novas__n{font:var(--type-body-strong);color:var(--text-accent)}
/* barra da seleção de páginas (visão Por página): escolher as pastas de várias de uma vez */
#view-make .t-make-sel-pag{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4) var(--space-5);margin:0 0 var(--space-4);padding:var(--space-4) var(--space-6);background:var(--surface-sunken);border:0;border-radius:var(--radius-md)}
#view-make .t-make-sel-pag__n{font:var(--type-body-strong);color:var(--text-accent)}
#view-make .t-make-sel-pag__dica{font:var(--type-caption);color:var(--text-muted)}
#view-make .t-make-pagina{display:flex;align-items:flex-start;gap:var(--space-5);min-width:var(--t-make-pag-min)}
#view-make .t-make-foto{display:inline-block;width:var(--t-make-foto);height:var(--t-make-foto);flex:0 0 var(--t-make-foto);object-fit:cover;border-radius:var(--radius-circle);background:var(--surface-sunken)}
#view-make .t-make-pagina-txt{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}
#view-make .t-make-nome{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);font:var(--type-body-strong);color:var(--text-primary)}
#view-make .t-make-nome > .nome-pag{overflow-wrap:anywhere}
#view-make .t-make-cat .nome-pag{max-width:var(--t-make-hoje-min);overflow:hidden;text-overflow:ellipsis}
#view-make .t-make-bloco{display:flex;flex-direction:column;gap:var(--space-2);min-width:var(--t-make-hoje-min)}
#view-make .t-make-andamento{min-width:var(--t-make-and-min);max-width:var(--t-make-andamento)}
#view-make .t-make-linha{display:block;font:var(--type-caption);color:var(--text-muted)}
#view-make .t-make-linha a{font-weight:var(--weight-medium)}
#view-make .t-make-forte{color:var(--text-primary);font-weight:var(--weight-medium)}
#view-make .t-make-tom-ok{color:var(--text-positive)}
#view-make .t-make-tom-info{color:var(--text-accent)}
#view-make .t-make-tom-atencao{color:var(--text-warning)}
#view-make .t-make-tom-erro{color:var(--text-negative);font-weight:var(--weight-medium)}
/* motivo da pausa: a dica e o "Ver erro técnico" ficam abaixo do título, visíveis também no celular */
#view-make .t-make-motivo-dica{display:block;margin-top:var(--space-2);color:var(--text-muted);font-weight:var(--weight-regular)}
#view-make .t-make-motivo-btn{margin-top:var(--space-2)}
#view-make .t-make-acoes{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-2);min-width:var(--t-make-acoes-min)}
#view-make .t-make-ico{min-width:var(--t-make-btn-ico);padding:0 var(--space-4)}
#view-make tr.t-make-off > td:not(:last-child){opacity:var(--opacity-disabled)}

/* proteção de créditos */
#view-make .t-make-protecao{gap:var(--space-4)}
#view-make .t-make-switch-off{color:var(--text-muted);cursor:not-allowed}
#view-make .t-make-switch-rot{display:inline-flex;align-items:center;gap:var(--space-3)}

/* janelas abertas pela Make (nova campanha, histórico, perfil certo, Conexão): ficam fora da tela,
   então só levam o prefixo t-make-mod- e trazem as próprias medidas */
.t-make-mod{--t-make-mod-col:210px;--t-make-mod-fio:1px;display:flex;flex-direction:column;gap:var(--space-6);min-width:0}
.t-make-mod > .aviso,.t-make-mod > .dica{margin:0}
.t-make-mod-grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(var(--t-make-mod-col),100%),1fr));gap:var(--space-6);min-width:0}
.t-make-mod-grade--3{--t-make-mod-col:145px}
/* Hora em 24h: campo de texto com máscara (o input nativo de hora vira AM/PM quando o Chrome do
   dono está em inglês). Tabular para os dígitos não dançarem enquanto digita. */
.t-hora24{width:100%;font-variant-numeric:tabular-nums}
.t-hora24:invalid{border-color:var(--text-negative)}
.t-make-mod-caixa{min-width:0;padding:var(--space-6);border:var(--t-make-mod-fio) solid var(--border-subtle);border-radius:var(--radius-control)}
.t-make-mod-forte{font-weight:var(--weight-semibold)}
.t-make-mod-previa{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-6) var(--space-7);font:var(--type-small);color:var(--text-secondary);background:var(--surface-accent-soft);border-radius:var(--radius-control)}
.t-make-mod-previa b{color:var(--text-primary)}
.t-make-mod-seq{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-6);font:var(--type-body);color:var(--text-primary)}
.t-make-mod-hora{display:inline-flex;align-items:center;gap:var(--space-2)}
.t-make-mod-nota{margin:0;font:var(--type-caption);color:var(--text-muted)}
.t-make-mod-opc{font-weight:var(--weight-regular);color:var(--text-muted)}
.t-make-mod-passos{display:flex;flex-direction:column;gap:var(--space-3);margin:var(--space-5) 0 0;padding-left:var(--space-10);font:var(--type-small);color:var(--text-secondary)}
.t-make-mod-passos b{color:var(--text-primary)}
.t-make-mod-hist{--t-make-mod-hist-h:60vh;--t-make-mod-fio:1px;max-height:var(--t-make-mod-hist-h);overflow:auto}
.t-make-mod-post{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-4) 0;border-bottom:var(--t-make-mod-fio) solid var(--border-subtle)}
.t-make-mod-post-txt{display:flex;flex-direction:column;gap:var(--space-1);flex:1;min-width:0}
.t-make-mod-legenda{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:var(--type-small);color:var(--text-primary)}
.t-make-mod-meta{font:var(--type-caption);color:var(--text-muted)}
.t-make-mod-dot{flex:0 0 auto;color:var(--text-faint)}
.t-make-mod-dot--ok{color:var(--status-positive)}
.t-make-mod-dot--erro{color:var(--status-critical)}
.t-make-mod-atencao{color:var(--text-warning)}
.t-make-mod-ok{color:var(--text-positive)}
.t-make-mod-erro{color:var(--text-negative)}
/* erro da entrega no histórico: título em português, dica e o erro técnico recolhido (fundo afundado,
   porque a janela já é da cor do cartão) */
.t-make-mod-erro-tit{font:var(--type-small);color:var(--text-negative);overflow-wrap:anywhere}
.t-make-mod-tecnico summary{font:var(--type-caption);color:var(--text-muted);cursor:pointer}
.t-make-mod-tecnico summary:focus-visible{outline:none;border-radius:var(--radius-xs);box-shadow:var(--shadow-focus)}
.t-make-mod-pre{margin-top:var(--space-3);padding:var(--space-5) var(--space-6);font:var(--weight-regular) var(--text-xs)/var(--leading-normal) var(--font-mono);white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text-secondary);background:var(--surface-sunken);border-radius:var(--radius-sm)}
.t-make-mod-conexao .aviso{margin-top:var(--space-6)}
.t-make-mod-conexao .t-make-mod-nota{margin-top:var(--space-3)}
.t-make-mod-status{margin-top:var(--space-6);font:var(--type-small)}
.t-make-mod-status:empty{display:none}

/* abas internas (modo do formulário em Templates, Fluxos | Gatilhos): quebram linha em vez de rolar escondidas */
#view-templates .t-templates-modos,#view-fluxos .t-fluxos-abas{flex-wrap:wrap;overflow-x:visible}

/* ---------- celular ---------- */
@media (max-width:900px){
  #view-fluxos .t-fluxos-previa{position:static}
}
@media (max-width:640px){
  #view-make{--t-make-btn-ico:44px}
  #view-make .t-make-busca,#view-make .t-make-filtros > .sel,#view-make .t-make-filtros > select{flex-basis:100%;max-width:none}
  #view-make .t-make-lido{margin-left:0}
  #view-make .t-make-selecao-acoes{margin-left:0}
  #view-templates .t-templates-rodape .btn,#view-fluxos .t-fluxos-rodape .btn{flex:1 1 auto}
  #view-templates .t-templates-paginacao-nav{margin-left:0}
  #view-templates .t-templates-seletor-topo > input{flex-basis:100%}
  #view-conexoes-dev .t-conexoes-dev-conectar > .sel,#view-conexoes-dev .t-conexoes-dev-conectar > select,#view-conexoes-dev .t-conexoes-dev-conectar > .btn{flex:1 1 100%}
  #view-conexoes-dev .t-conexoes-dev-cont{margin-left:0}
  #view-fluxos .t-fluxos-gt-pags{padding-left:0}
  #view-fluxos .t-fluxos-abas{align-self:stretch}
  #view-templates .t-templates-modos,#view-fluxos .t-fluxos-abas{border-radius:var(--radius-control)}
  #view-templates .t-templates-modos button,#view-fluxos .t-fluxos-abas button{flex:1 1 auto}
}

/* Até 1240 px as tabelas destas telas não cabem inteiras (a da Make pede ~1.120 px de conteúdo):
   em vez de rolar de lado escondendo situação, ações e o "⋯", viram blocos que quebram linha. */
@media (max-width:1240px){
  /* tabelas das telas viram blocos: cada linha quebra e mostra tudo (situação, ações e o "⋯")
     sem rolagem lateral, como os cartões e chips de antes. O cabeçalho sai da vista mas fica para o leitor
     de tela; a célula que perde o sentido sem ele traz o próprio rótulo (data-rot). */
  :is(#view-templates .t-templates-tabela,#view-conexoes-dev .t-conexoes-dev-tabela,#view-fluxos .t-fluxos-tabela,#view-fluxos .t-fluxos-gt-tabela,#view-make .t-make-tabela),
  :is(#view-templates .t-templates-tabela,#view-conexoes-dev .t-conexoes-dev-tabela,#view-fluxos .t-fluxos-tabela,#view-fluxos .t-fluxos-gt-tabela,#view-make .t-make-tabela) tbody{display:block;width:100%}
  :is(#view-templates .t-templates-tabela,#view-conexoes-dev .t-conexoes-dev-tabela,#view-fluxos .t-fluxos-tabela,#view-fluxos .t-fluxos-gt-tabela,#view-make .t-make-tabela) thead{position:absolute;width:var(--t-loteb-fio);height:var(--t-loteb-fio);overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  :is(#view-templates .t-templates-tabela,#view-conexoes-dev .t-conexoes-dev-tabela,#view-fluxos .t-fluxos-tabela,#view-fluxos .t-fluxos-gt-tabela,#view-make .t-make-tabela) tr{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-5);padding:var(--space-6) 0;border-bottom:var(--t-loteb-fio) solid var(--border-subtle)}
  :is(#view-templates .t-templates-tabela,#view-conexoes-dev .t-conexoes-dev-tabela,#view-fluxos .t-fluxos-tabela,#view-fluxos .t-fluxos-gt-tabela,#view-make .t-make-tabela) tr:last-child{border-bottom:0}
  :is(#view-templates .t-templates-tabela,#view-conexoes-dev .t-conexoes-dev-tabela,#view-fluxos .t-fluxos-tabela,#view-fluxos .t-fluxos-gt-tabela,#view-make .t-make-tabela) td{display:block;width:auto;min-width:0;padding:0;text-align:left;border:0}
  :is(#view-templates .t-templates-tabela,#view-conexoes-dev .t-conexoes-dev-tabela,#view-fluxos .t-fluxos-tabela,#view-fluxos .t-fluxos-gt-tabela,#view-make .t-make-tabela) td:empty{display:none}
  :is(#view-templates .t-templates-tabela,#view-conexoes-dev .t-conexoes-dev-tabela,#view-fluxos .t-fluxos-tabela,#view-fluxos .t-fluxos-gt-tabela,#view-make .t-make-tabela) td.dir{margin-left:auto}
  :is(#view-conexoes-dev .t-conexoes-dev-tabela,#view-fluxos .t-fluxos-gt-tabela) td[data-rot]{flex:1 1 100%}
  :is(#view-conexoes-dev .t-conexoes-dev-tabela,#view-fluxos .t-fluxos-gt-tabela) td[data-rot]::before{content:attr(data-rot) ": ";color:var(--text-muted)}
  /* Templates: página | imagem + mensagem | situação e "⋯" */
  #view-templates .t-templates-tabela td:first-child{flex:1 1 100%}
  #view-templates .t-templates-tabela td:nth-child(2){align-self:flex-start}
  #view-templates .t-templates-tabela td:nth-child(3){flex:1 1 calc(100% - var(--t-templates-thumb) - var(--space-5))}
  #view-templates .t-templates-pag-nome,#view-templates .t-templates-msg{min-width:0;max-width:none}
  /* Conexões (Broadcast): página | campanha | situação e "⋯" */
  #view-conexoes-dev .t-conexoes-dev-tabela td:first-child{flex:1 1 100%}
  #view-conexoes-dev .t-conexoes-dev-pagina{min-width:0}
  /* Fluxos: nome | blocos e ações; Gatilhos: seleção e página | evento | fluxo | palavras | disparos, situação e ações */
  #view-fluxos .t-fluxos-tabela td:first-child{flex:1 1 100%}
  #view-fluxos .t-fluxos-gt-tabela td:has(> .t-fluxos-pag){flex:1 1 calc(100% - var(--t-loteb-ico) - var(--space-5))}
  #view-fluxos .t-fluxos-gt-tabela td:nth-child(5),#view-fluxos .t-fluxos-pag{min-width:0}
  /* Make: seleção e página | hoje | andamento | situação e ações */
  #view-make .t-make-tabela td:nth-child(2){flex:1 1 calc(100% - var(--t-loteb-ico) - var(--space-5))}
  #view-make .t-make-tabela td:nth-child(3),#view-make .t-make-tabela td:nth-child(4){flex:1 1 100%}
  #view-make .t-make-tabela td:has(> .t-make-andamento:empty){display:none}
  #view-make .t-make-pagina,#view-make .t-make-bloco,#view-make .t-make-andamento,#view-make .t-make-acoes{min-width:0;max-width:none}
}

/* ===== Telas: lote-c ===== */
/* Stories com link, Donzap, Galeria e Legendas. Só tokens; medida fora da escala vira variável com
   nome no topo de cada tela. As quebras de @media repetem as do kit (640 / 900 / 1100), porque var()
   não vale dentro de @media. Os modais da Galeria e das Legendas ficam fora das telas, então as
   classes deles (t-galeria-*, t-legendas-*) trazem as próprias variáveis. */
#view-stories,#view-donzap,#view-galeria,#view-legendas{--t-lotec-fio:1px}

/* ---------- Stories com link ---------- */
#view-stories{
  --t-stories-card-min:520px;
  --t-stories-lotes-min:400px;
  --t-stories-avatar:40px;
  --t-stories-pag-foto:32px;
  --t-stories-anel:22px;
  --t-stories-papel-w:230px;
  --t-stories-giro:90deg;
  --t-stories-giro-dur:.9s;
}
#view-stories .t-stories-auto{display:inline-flex;align-items:center;gap:var(--space-3);font:var(--type-caption);color:var(--text-muted)}
#view-stories .t-stories-atualizando .ico svg{animation:girar var(--t-stories-giro-dur) linear infinite;transform-origin:center}
#view-stories #stories-root{display:flex;flex-direction:column;gap:var(--gap-section);min-width:0}

/* resumo: 6 números, 3 por linha (2 abaixo de 1100) */
#view-stories .t-stories-resumo{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap-grid);min-width:0}
#view-stories .t-stories-resumo > *{min-width:0}

/* um painel por perfil */
#view-stories .t-stories-perfis{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(var(--t-stories-card-min),100%),1fr));gap:var(--gap-grid);align-items:start;min-width:0}
#view-stories .t-stories-perfis > *{min-width:0}
#view-stories .t-stories-perfil{display:flex;align-items:center;gap:var(--space-6);flex:1 1 auto;min-width:0}
#view-stories .t-stories-avatar{display:inline-flex;align-items:center;justify-content:center;width:var(--t-stories-avatar);height:var(--t-stories-avatar);flex:0 0 var(--t-stories-avatar);border-radius:var(--radius-circle);object-fit:cover;background:var(--gradient-folder);color:var(--text-inverse);font:var(--weight-semibold) var(--text-sm)/var(--leading-tight) var(--font-sans)}
#view-stories .t-stories-perfil__info{min-width:0}
#view-stories .t-stories-perfil__titulo{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-4)}
#view-stories .t-stories-perfil__nome{overflow-wrap:anywhere}
#view-stories .t-stories-acoes{display:flex;align-items:center;gap:var(--space-3);flex:0 1 auto;min-width:0}
#view-stories .t-stories-papel{flex:0 1 auto;width:var(--t-stories-papel-w);max-width:100%;min-width:0}
#view-stories .t-stories-menu{flex:0 0 auto}
#view-stories .t-stories-card__corpo{display:flex;flex-direction:column;gap:var(--space-8);min-width:0}
#view-stories .t-stories-nada{margin:0;font:var(--type-small);color:var(--text-muted)}

/* uma Página dentro do perfil */
#view-stories .t-stories-pag{display:flex;flex-direction:column;gap:var(--space-6);min-width:0;padding-top:var(--space-8);border-top:var(--t-lotec-fio) solid var(--border-subtle)}
#view-stories .t-stories-card__corpo > .t-stories-pag:first-child{padding-top:0;border-top:0}
#view-stories .t-stories-pag__cab{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4)}
#view-stories .t-stories-pag__quem{display:flex;align-items:center;gap:var(--space-5);min-width:0}
#view-stories .t-stories-pag__foto{position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--t-stories-pag-foto);height:var(--t-stories-pag-foto);flex:0 0 var(--t-stories-pag-foto);overflow:hidden;border-radius:var(--radius-circle);background:var(--surface-sunken);color:var(--text-muted);font:var(--weight-semibold) var(--text-2xs)/1 var(--font-sans)}
#view-stories .t-stories-pag__foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
#view-stories .t-stories-pag__nome{margin:0;font:var(--weight-semibold) var(--text-md)/var(--leading-snug) var(--font-sans);color:var(--text-primary);overflow-wrap:anywhere}
#view-stories .t-stories-chips{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}

/* barra empilhada: confirmados, falha e por agendar sobre o trilho */
#view-stories .t-stories-barra{display:flex;height:var(--space-4);overflow:hidden;background:var(--chart-track);border-radius:var(--radius-pill)}
#view-stories .t-stories-barra > span{display:block;height:100%}
#view-stories .t-stories-barra__ok{background:var(--chart-completed)}
#view-stories .t-stories-barra__erro{background:var(--status-critical)}
#view-stories .t-stories-barra__pend{background:var(--chart-created)}
#view-stories .t-stories-legenda{display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-8);margin:0;padding:0;list-style:none;font:var(--type-caption);color:var(--text-muted)}
#view-stories .t-stories-legenda li{display:inline-flex;align-items:center;gap:var(--space-3)}
#view-stories .t-stories-ponto{flex:none;width:var(--space-4);height:var(--space-4);border-radius:var(--radius-circle)}
#view-stories .t-stories-ponto--ok{background:var(--chart-completed)}
#view-stories .t-stories-ponto--pend{background:var(--chart-created)}
#view-stories .t-stories-ponto--erro{background:var(--status-critical)}

/* fatos em 2 colunas */
#view-stories .t-stories-fatos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6) var(--space-8);margin:0}
#view-stories .t-stories-fato{min-width:0}
#view-stories .t-stories-fato dt,#view-stories .t-stories-rotulo{display:block;margin-bottom:var(--space-2);font:var(--weight-semibold) var(--text-2xs)/var(--leading-snug) var(--font-sans);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-muted)}
#view-stories .t-stories-fato dd{margin:0;font:var(--type-small);color:var(--text-primary);overflow-wrap:anywhere}
#view-stories .t-stories-erro{font:var(--weight-regular) var(--text-xs)/var(--leading-normal) var(--font-mono);overflow-wrap:anywhere}

/* lotes recolhidos, em tabela */
#view-stories .t-stories-lotes{padding-top:var(--space-5);border-top:var(--t-lotec-fio) solid var(--border-subtle)}
#view-stories .t-stories-lotes__resumo{display:inline-flex;align-items:center;gap:var(--space-3);min-height:var(--touch-min);padding:0 var(--space-4) 0 var(--space-2);border-radius:var(--radius-sm);list-style:none;font:var(--type-label);color:var(--text-secondary);cursor:pointer;transition:var(--transition-control)}
#view-stories .t-stories-lotes__resumo::-webkit-details-marker{display:none}
#view-stories .t-stories-lotes__resumo:hover{color:var(--text-primary);background:var(--surface-hover)}
#view-stories .t-stories-lotes__seta{transition:transform var(--dur-base) var(--ease-out)}
#view-stories .t-stories-lotes[open] .t-stories-lotes__seta{transform:rotate(var(--t-stories-giro))}
#view-stories .t-stories-lotes-tabela{margin-top:var(--space-4)}
#view-stories .t-stories-lotes-tabela table{min-width:var(--t-stories-lotes-min)}
#view-stories .t-stories-lotes-tabela th:first-child,#view-stories .t-stories-lotes-tabela td:first-child{padding-left:0}
#view-stories .t-stories-lotes-tabela th:last-child,#view-stories .t-stories-lotes-tabela td:last-child{padding-right:0}
#view-stories .t-stories-lote{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}
#view-stories .t-stories-lote__periodo{font:var(--type-body-strong);color:var(--text-primary)}
#view-stories .t-stories-lote__sub{font:var(--type-caption);color:var(--text-muted)}
#view-stories .t-stories-lote__erro{font:var(--type-caption);color:var(--text-negative)}
#view-stories .t-stories-conf{display:inline-flex;align-items:center;gap:var(--space-4);font:var(--weight-semibold) var(--text-sm)/var(--leading-tight) var(--font-sans);font-variant-numeric:tabular-nums;white-space:nowrap}
#view-stories .t-stories-anel{width:var(--t-stories-anel);height:var(--t-stories-anel)}
#view-stories .t-stories-anel::before{inset:var(--space-2)}
#view-stories .t-stories-anel--cheio{--_cor:var(--chart-projects)}
#view-stories .t-stories-semlote{display:flex;flex-direction:column;gap:var(--space-2);padding-top:var(--space-6);border-top:var(--t-lotec-fio) solid var(--border-subtle)}

/* ---------- Donzap ---------- */
#view-donzap{
  --t-donzap-camp-min:520px;
  --t-donzap-conexao-min:300px;
  --t-donzap-tabela-min:720px;
}
#view-donzap .t-donzap-titulo{gap:var(--space-4) var(--space-5)}
#view-donzap .dz-status.aberto{display:flex;margin:0 0 var(--gap-grid);padding:var(--space-6) var(--space-7);border-radius:var(--radius-control)}

/* resumo em cima; campanhas largas à esquerda e a conexão ao lado (desce quando não cabe) */
#view-donzap .t-donzap-corpo{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--gap-grid);min-width:0}
#view-donzap #dz-conteudo{display:contents}
#view-donzap .t-donzap-kpis{flex:1 1 100%}
#view-donzap .t-donzap-campanhas,#view-donzap #dz-conteudo > .vazio{flex:2 1 var(--t-donzap-camp-min);min-width:0}
#view-donzap #dz-config-card{flex:1 1 var(--t-donzap-conexao-min);min-width:0}
#view-donzap .t-donzap-conexao{display:flex;flex-direction:column;gap:var(--space-7)}
#view-donzap .t-donzap-conexao p{margin:0}
#view-donzap .t-donzap-dica{display:block;margin-top:var(--space-2);font:var(--type-caption);color:var(--text-muted)}
#view-donzap .t-donzap-dica:empty{display:none}
#view-donzap .t-donzap-so-admin{display:inline-flex;align-items:center;gap:var(--space-3);font:var(--type-caption);color:var(--text-muted)}

/* campanhas: tabela no desktop */
#view-donzap .t-donzap-tabela table{min-width:var(--t-donzap-tabela-min)}
#view-donzap .t-donzap-tabela th:first-child,#view-donzap .t-donzap-tabela td:first-child{padding-left:0}
#view-donzap .t-donzap-tabela th:last-child,#view-donzap .t-donzap-tabela td:last-child{padding-right:0}
#view-donzap .t-donzap-camp{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}
#view-donzap .t-donzap-camp__nome{font:var(--type-body-strong);color:var(--text-primary);overflow-wrap:anywhere}
#view-donzap .t-donzap-camp__prox{font:var(--type-caption);color:var(--text-muted)}
#view-donzap .t-donzap-camp__prox b{font-weight:var(--weight-semibold);color:var(--text-secondary)}
#view-donzap .t-donzap-camp__prox b.t-donzap-camp__nenhum{font-weight:var(--weight-regular);font-style:italic;color:var(--text-muted)}
#view-donzap .t-donzap-num{display:block;font:var(--weight-semibold) var(--text-md)/var(--leading-tight) var(--font-sans);font-variant-numeric:tabular-nums;color:var(--text-primary);white-space:nowrap}
#view-donzap .t-donzap-num--mais{color:var(--text-positive)}
#view-donzap .t-donzap-num--menos{color:var(--text-negative)}
#view-donzap .t-donzap-leg{display:block;margin-top:var(--space-1);font:var(--type-caption);color:var(--text-muted);white-space:nowrap}
#view-donzap .t-donzap-vazio{border:0;padding:var(--space-16) var(--space-8)}

/* campanhas: um cartão por campanha no celular */
#view-donzap .t-donzap-cartoes{display:none;flex-direction:column;gap:var(--space-6)}
#view-donzap .t-donzap-cartao{display:flex;flex-direction:column;gap:var(--space-6);padding:var(--pad-card-sm);background:var(--surface-sunken);border-radius:var(--radius-card)}
#view-donzap .t-donzap-cartao__topo{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-5)}
#view-donzap .t-donzap-metricas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6)}
#view-donzap .t-donzap-metrica{min-width:0}
#view-donzap .t-donzap-metrica .t-donzap-leg{white-space:normal}
#view-donzap .t-donzap-metrica--larga{grid-column:1 / -1;padding-bottom:var(--space-6);border-bottom:var(--t-lotec-fio) solid var(--border-subtle)}

/* ---------- Galeria ---------- */
#view-galeria{
  --t-galeria-pasta-min:220px;
  --t-galeria-pasta-min-celular:140px;
  --t-galeria-midia-min:180px;
  --t-galeria-midia-min-celular:140px;
  --t-galeria-aba-recuo:22px;
  --t-galeria-aba-h:30px;
  --t-galeria-folder-min-h:120px;
  --t-galeria-aba-opacidade:.92;
  --t-galeria-meta-opacidade:.9;
  --t-galeria-subida:-1px;
  --t-galeria-ico-sm:14px;
  --t-galeria-ico:18px;
  --t-galeria-capa-proporcao:4 / 3;
  --t-galeria-ordem-w:190px;
  --t-galeria-tam-w:180px;
  --t-galeria-aviso-min:220px;
  --t-galeria-busca-base:240px;
  --t-galeria-busca-max:360px;
}
#view-galeria .t-galeria-pilha{gap:var(--gap-grid)}

/* caminho de pastas */
#view-galeria .migalha{flex-wrap:wrap;gap:var(--space-2);min-width:0}
#view-galeria .migalha .btn{max-width:100%;white-space:normal;text-align:left}
#view-galeria .t-galeria-migalha__sep{display:inline-flex;color:var(--text-faint)}
#view-galeria .t-galeria-migalha__sep svg{width:var(--t-galeria-ico-sm);height:var(--t-galeria-ico-sm)}
#view-galeria .t-galeria-migalha__atual{display:inline-flex;align-items:center;gap:var(--space-3);min-width:0;padding:0 var(--space-4);font:var(--type-body-strong);color:var(--text-primary);overflow-wrap:anywhere}

/* aviso de páginas sem pasta */
#view-galeria #aviso-sem-pasta{align-items:center;flex-wrap:wrap}
#view-galeria #aviso-sem-pasta .aviso__txt{flex:1 1 var(--t-galeria-aviso-min)}

/* painel de pastas: busca, ordem e contagem numa linha */
#view-galeria #painel-pastas .painel__corpo{display:flex;flex-direction:column;gap:var(--space-8)}
#view-galeria #controles-pastas{align-items:center;margin:0}
#view-galeria .t-galeria-busca{position:relative;flex:1 1 var(--t-galeria-busca-base);max-width:var(--t-galeria-busca-max);min-width:0}
#view-galeria .t-galeria-busca > .ic-in{position:absolute;top:50%;left:var(--space-6);transform:translateY(-50%);color:var(--text-muted);pointer-events:none}
#view-galeria .t-galeria-busca input{padding-left:var(--space-16)}
#view-galeria .t-galeria-ordem{flex:0 0 var(--t-galeria-ordem-w);min-width:0}
#view-galeria .t-galeria-contagem{margin-left:auto;font:var(--type-caption);color:var(--text-muted)}
#view-galeria #grade-pastas{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(var(--t-galeria-pasta-min),100%),1fr));gap:var(--gap-grid);margin:0}
#view-galeria #grade-pastas:empty{display:none}
#view-galeria #grade-pastas > .vazio{grid-column:1 / -1}

/* cartão-pasta: aba com a contagem encaixada no canto, corpo em gradiente (cinza quando vazia).
   O elemento clicável mantém a classe .pasta-card (os testes procuram por ela); a caixa antiga dela
   (fundo, borda, sombra, corte) é zerada aqui para não aparecer atrás da aba. */
#view-galeria .t-galeria-pasta{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}
#view-galeria .t-galeria-folder{--_bg:var(--gradient-folder);--_fg:var(--text-inverse);--_elev:var(--shadow-md);position:relative;display:flex;flex-direction:column;flex:1;min-width:0;overflow:visible;padding-top:var(--t-galeria-aba-recuo);background:none;border:0;border-radius:var(--radius-2xl);box-shadow:none;cursor:pointer;transition:var(--transition-control);-webkit-tap-highlight-color:transparent}
#view-galeria .t-galeria-folder--vazia{--_bg:var(--surface-sunken);--_fg:var(--text-primary);--_elev:var(--shadow-xs)}
#view-galeria .t-galeria-folder:hover{--_elev:var(--shadow-lg);transform:translateY(var(--t-galeria-subida));filter:var(--hover-brighten)}
#view-galeria .t-galeria-folder:active{transform:scale(var(--press-scale));filter:var(--press-darken)}
#view-galeria .t-galeria-folder:focus-visible{outline:none;box-shadow:none}
#view-galeria .t-galeria-folder:focus-visible .t-galeria-folder__corpo{box-shadow:var(--_elev),var(--shadow-focus)}
#view-galeria .t-galeria-folder__aba{position:absolute;top:0;left:var(--space-12);display:flex;align-items:flex-start;height:var(--t-galeria-aba-h);padding:var(--space-3) var(--space-10) 0;border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--_bg);color:var(--_fg);font:var(--weight-medium) var(--text-xs)/var(--leading-snug) var(--font-sans);white-space:nowrap;opacity:var(--t-galeria-aba-opacidade)}
#view-galeria .t-galeria-folder__corpo{position:relative;display:flex;flex-direction:column;flex:1;gap:var(--space-8);min-height:var(--t-galeria-folder-min-h);padding:var(--pad-card-sm);border-radius:var(--radius-2xl);background:var(--_bg);color:var(--_fg);box-shadow:var(--_elev);transition:var(--transition-control)}
#view-galeria .t-galeria-folder__cab{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);min-width:0}
#view-galeria .t-galeria-folder__nome{display:-webkit-box;min-width:0;overflow:hidden;white-space:normal;text-overflow:clip;-webkit-line-clamp:2;-webkit-box-orient:vertical;font:var(--weight-medium) var(--text-lg)/var(--leading-snug) var(--font-display);letter-spacing:var(--tracking-heading);overflow-wrap:anywhere}
#view-galeria .t-galeria-folder__seta{display:inline-flex;flex:0 0 auto;opacity:var(--t-galeria-meta-opacidade)}
#view-galeria .t-galeria-folder__seta svg{width:var(--t-galeria-ico);height:var(--t-galeria-ico)}
#view-galeria .t-galeria-mosaico{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2);margin-top:auto}
#view-galeria .t-galeria-mini{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--radius-sm);background:var(--white-a16);box-shadow:var(--hairline-inner)}
#view-galeria .t-galeria-pasta__vazia{display:inline-flex;align-items:center;gap:var(--space-3);margin-top:auto;font:var(--type-small);opacity:var(--t-galeria-meta-opacidade)}
#view-galeria .t-galeria-folder--vazia .t-galeria-pasta__vazia{color:var(--text-muted);opacity:1}
#view-galeria .t-galeria-pasta__rodape{position:relative;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-width:0;padding-left:var(--space-6)}
#view-galeria .t-galeria-pasta__info{min-width:0;font:var(--type-caption);color:var(--text-muted);overflow-wrap:anywhere}
#view-galeria .t-galeria-pasta__rodape .menu-acoes{position:static}
#view-galeria .t-galeria-pasta__rodape .menu-pop{left:0;right:0;min-width:0}
/* modo "Selecionar" das pastas (excluir em massa): caixa no canto, pasta marcada com anel de foco,
   a do administrador (não marcável) apagada */
#view-galeria #barra-sel-pastas{gap:var(--space-4) var(--space-5);margin:0 0 var(--space-6);padding:var(--space-4) var(--space-6);background:var(--surface-sunken);border:0}
#view-galeria #barra-sel-pastas[hidden]{display:none}
#view-galeria .t-galeria-pasta__check{top:calc(var(--t-galeria-aba-recuo) + var(--space-3));left:auto;right:var(--space-3);pointer-events:none}
#view-galeria .t-galeria-pasta.sel .t-galeria-folder__corpo{box-shadow:var(--_elev),var(--shadow-focus)}
#view-galeria .t-galeria-pasta--fora{opacity:var(--opacity-disabled)}
#view-galeria .t-galeria-pasta--fora .t-galeria-folder{cursor:default}

/* painel de mídias */
#view-galeria #titulo-midias:empty{display:none}
#view-galeria .t-galeria-tam{width:var(--t-galeria-tam-w)}
#view-galeria .t-galeria-midias-corpo{display:flex;flex-direction:column;gap:var(--space-8)}
#view-galeria #barra-selecao{gap:var(--space-4) var(--space-5);margin:0;padding:var(--space-4) var(--space-6);background:var(--surface-sunken);border:0}
#view-galeria .t-galeria-selecao__n{font:var(--type-body-strong);color:var(--text-accent)}
#view-galeria .t-galeria-selecao__dica{font:var(--type-caption);color:var(--text-muted)}
#view-galeria #barra-selecao .menu-pop{left:0;right:auto}
#view-galeria #grade-midia{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(var(--t-galeria-midia-min),100%),1fr));gap:var(--gap-grid)}
#view-galeria #grade-midia:empty{display:none}
#view-galeria #grade-midia > .vazio{grid-column:1 / -1;padding:var(--space-16) var(--space-8);border:0}

/* cartão de mídia: miniatura com seleção e tipo, legenda, origem e o "⋯" */
#view-galeria .midia-card.t-galeria-midia{display:flex;flex-direction:column;min-width:0;overflow:visible}
#view-galeria .t-galeria-midia__capa{position:relative;margin:var(--space-3);overflow:hidden;aspect-ratio:var(--t-galeria-capa-proporcao);border-radius:var(--radius-media);background:var(--surface-sunken)}
#view-galeria .t-galeria-midia__capa img,#view-galeria .t-galeria-midia__capa video{display:block;width:100%;height:100%;object-fit:cover;background:var(--surface-sunken)}
#view-galeria .t-galeria-midia .sel-check{top:var(--space-4);left:var(--space-4)}
#view-galeria .t-galeria-midia__tipo{position:absolute;left:var(--space-4);bottom:var(--space-4)}
#view-galeria .t-galeria-midia__info{position:relative;display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-2) var(--space-3) var(--space-5) var(--space-6)}
#view-galeria .t-galeria-midia__texto{display:flex;flex:1;flex-direction:column;gap:var(--space-2);min-width:0}
#view-galeria .t-galeria-midia .info .leg{margin:0;font:var(--weight-medium) var(--text-sm)/var(--leading-snug) var(--font-sans)}
#view-galeria .t-galeria-midia .info .t-galeria-midia__sem{font-style:italic;font-weight:var(--weight-regular);color:var(--text-muted)}
#view-galeria .t-galeria-midia__meta{display:inline-flex;align-items:center;gap:var(--space-2);font:var(--type-caption);color:var(--text-muted)}
#view-galeria .t-galeria-midia__info .menu-acoes{position:static}
#view-galeria .t-galeria-midia__info .menu-pop{left:var(--space-3);right:var(--space-3);min-width:0}
/* o "⋯" da pasta e da mídia tem a largura do cartão: rótulo comprido quebra linha em vez de vazar */
#view-galeria .t-galeria-pasta__rodape .menu-pop .btn,#view-galeria .t-galeria-midia__info .menu-pop .btn{padding:var(--space-3) var(--space-5);white-space:normal;text-align:left}

/* paginação no rodapé do painel */
#view-galeria .t-galeria-paginacao{justify-content:center;gap:var(--space-4)}
#view-galeria .t-galeria-paginacao__txt{font:var(--type-small);color:var(--text-muted);font-variant-numeric:tabular-nums}

/* modal Associar páginas (fica fora da tela, no #modal) */
.t-galeria-assoc-campos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6);align-items:end}
.t-galeria-assoc-campos label{margin-top:0}
.t-galeria-assoc-lista{--t-galeria-fio:1px;--t-galeria-lista-max:300px;max-height:var(--t-galeria-lista-max);margin-top:var(--space-6);padding:var(--space-2) var(--space-6);overflow:auto;border:var(--t-galeria-fio) solid var(--border-subtle);border-radius:var(--radius-control)}
.t-galeria-assoc-linha{display:flex;align-items:center;gap:var(--space-4);min-width:0;padding:var(--space-3) 0;border-bottom:var(--t-galeria-fio) solid var(--border-subtle)}
.t-galeria-assoc-linha:last-child{border-bottom:0}
.t-galeria-assoc-nome{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:var(--type-small);color:var(--text-primary)}
.t-galeria-assoc-todas .t-galeria-assoc-nome{font-weight:var(--weight-semibold)}
.t-galeria-assoc-perfil{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:var(--type-caption);color:var(--text-muted)}
.t-galeria-assoc-vazio{padding:var(--space-6) 0;font:var(--type-small);color:var(--text-muted)}
.t-galeria-assoc-ja{margin-top:var(--space-5);padding-top:var(--space-4);border-top:var(--t-galeria-fio) solid var(--border-strong)}
.t-galeria-assoc-titulo{display:block;font:var(--weight-semibold) var(--text-xs)/var(--leading-snug) var(--font-sans);color:var(--text-secondary)}
.t-galeria-assoc-status{margin-top:var(--space-5);font:var(--type-small);color:var(--text-secondary)}
.t-galeria-assoc-status:empty{display:none}
.t-galeria-assoc-status--erro{color:var(--text-negative)}

/* ---------- Legendas ---------- */
#view-legendas{
  --t-legendas-col-pastas:minmax(0,1fr);
  --t-legendas-col-conteudo:minmax(0,1.6fr);
  --t-legendas-lista-max:420px;
  --t-legendas-num-w:40px;
  --t-legendas-knob:18px;
}
#view-legendas .t-legendas-colunas{display:grid;grid-template-columns:var(--t-legendas-col-pastas) var(--t-legendas-col-conteudo);gap:var(--gap-grid);align-items:start;min-width:0}
#view-legendas .t-legendas-colunas > *{min-width:0}
#view-legendas .t-legendas-oculto{position:absolute;width:var(--t-lotec-fio);height:var(--t-lotec-fio);overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* tabela de pastas: a aberta fica marcada. O saas-ui.js embrulha a tabela num .ui-table-scroll
   (overflow auto), que cortaria o menu "⋯" das últimas linhas; aqui a tabela cabe sem rolar. */
#view-legendas .t-legendas-tabela-caixa > .ui-table-scroll{overflow:visible}
#view-legendas .t-legendas-tabela th:first-child,#view-legendas .t-legendas-tabela td:first-child{padding-left:var(--space-4)}
#view-legendas .t-legendas-tabela th:last-child,#view-legendas .t-legendas-tabela td:last-child{padding-right:var(--space-2)}
#view-legendas .t-legendas-tabela tr.clicavel:focus-visible{outline:none;box-shadow:inset var(--shadow-focus)}
#view-legendas .t-legendas-pasta{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}
#view-legendas .t-legendas-pasta__nome{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);font:var(--type-body-strong);color:var(--text-primary);overflow-wrap:anywhere}
#view-legendas .t-legendas-pasta small{font:var(--type-caption);color:var(--text-muted)}
#view-legendas .t-legendas-tabela tr.selecionada .t-legendas-pasta__nome{color:var(--text-accent)}

/* Compartilhar: cara de interruptor, mas é o botão de sempre (muda depois da resposta) */
#view-legendas .t-legendas-share{display:inline-flex;align-items:center;gap:var(--space-4);min-height:var(--space-16);padding:0;border:0;background:none;color:var(--text-secondary);font:var(--type-small);white-space:nowrap;cursor:pointer}
#view-legendas .t-legendas-share[aria-checked="true"]{color:var(--text-accent)}
#view-legendas .t-legendas-share[aria-checked="true"] .switch__trilho{background:var(--accent-primary)}
#view-legendas .t-legendas-share[aria-checked="true"] .switch__trilho::after{transform:translateX(var(--t-legendas-knob))}
#view-legendas .t-legendas-share:focus-visible{outline:none;box-shadow:none}
#view-legendas .t-legendas-share:focus-visible .switch__trilho{box-shadow:var(--shadow-focus)}

/* conteúdo da pasta aberta */
#view-legendas #conteudo-legendas{display:flex;flex-direction:column;gap:var(--space-8);min-width:0}
#view-legendas .t-legendas-campo{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}
#view-legendas .t-legendas-campo label{margin:0}
#view-legendas .t-legendas-dica{margin:0;font:var(--type-caption);color:var(--text-muted)}
#view-legendas .t-legendas-campo__acoes{display:flex;justify-content:flex-end}
#view-legendas .t-legendas-rolagem{max-height:var(--t-legendas-lista-max);min-width:0;overflow:auto}
#view-legendas .t-legendas-lista td{vertical-align:top}
#view-legendas .t-legendas-lista th:first-child,#view-legendas .t-legendas-lista td:first-child{padding-left:0}
#view-legendas .t-legendas-lista th:last-child,#view-legendas .t-legendas-lista td:last-child{padding-right:0}
#view-legendas .t-legendas-num{width:var(--t-legendas-num-w);font:var(--type-caption);font-variant-numeric:tabular-nums;color:var(--text-muted)}
#view-legendas .t-legendas-texto{white-space:pre-line;overflow-wrap:anywhere;font:var(--type-small);color:var(--text-primary)}
#view-legendas .t-legendas-nada{padding:var(--space-8) 0;text-align:center;font:var(--type-small);color:var(--text-muted)}

/* modal Nova pasta de legendas (fica fora da tela, no #modal) */
.t-legendas-modos{--t-legendas-fio:1px;margin-top:var(--space-2)}
.t-legendas-modo{display:flex;align-items:flex-start;gap:var(--space-5);margin:0}
.t-legendas-modo input{margin-top:var(--space-1);flex:0 0 auto}
.t-legendas-modo:has(input:checked){border-color:var(--border-accent);background:var(--surface-accent-soft);box-shadow:inset 0 0 0 var(--t-legendas-fio) var(--border-accent)}

/* modal Gerar com a Claude (cérebro) — a lista de frases recém-geradas, antes de salvar */
.t-cerebro-lista{--t-cerebro-lista-h:46vh;margin:0;padding-left:var(--space-14);max-height:var(--t-cerebro-lista-h);overflow-y:auto;display:grid;gap:var(--space-2)}
.t-cerebro-lista li{font:var(--type-small);color:var(--text-primary);overflow-wrap:anywhere}
.t-cerebro-lista li::marker{color:var(--text-muted);font-variant-numeric:tabular-nums}

/* ---------- larguras ---------- */
@media (max-width:1100px){
  #view-stories .t-stories-resumo{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  #view-legendas .t-legendas-colunas{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:640px){
  /* no celular a tabela de lotes cabe no cartão: o período quebra linha e a Situação fica à vista */
  #view-stories{--t-stories-card-min:100%;--t-stories-lotes-min:0}
  #view-stories .t-stories-auto{width:100%}
  #view-stories .t-stories-acoes{width:100%}
  #view-stories .t-stories-acoes .t-stories-papel{flex:1 1 auto;width:auto}
  #view-stories .t-stories-resumo{gap:var(--space-5)}
  #view-stories .t-stories-resumo .stat{padding:var(--pad-card-sm)}
  #view-stories .t-stories-resumo .stat__num{font:var(--type-metric-sm)}

  #view-donzap .t-donzap-tabela{display:none}
  #view-donzap .t-donzap-cartoes{display:flex}
  #view-donzap .t-donzap-kpis .stat{padding:var(--pad-card-sm)}

  #view-galeria{--t-galeria-pasta-min:var(--t-galeria-pasta-min-celular);--t-galeria-midia-min:var(--t-galeria-midia-min-celular)}
  #view-galeria #grade-pastas,#view-galeria #grade-midia{gap:var(--space-5)}
  #view-galeria .t-galeria-busca{flex-basis:100%;max-width:none}
  #view-galeria .t-galeria-ordem{flex:1 1 auto}
  #view-galeria .t-galeria-tam{width:100%}
  #view-galeria .t-galeria-folder__aba{left:var(--space-8);padding:var(--space-3) var(--space-6) 0}
  #view-galeria .t-galeria-folder__corpo{gap:var(--space-6);padding:var(--space-6)}
  #view-galeria .t-galeria-folder__nome{font-size:var(--text-md)}
  #view-galeria .t-galeria-pasta__rodape{padding-left:var(--space-3)}
  #view-galeria #barra-selecao .check-linha,#view-galeria #barra-sel-pastas .check-linha{min-height:var(--touch-min)}
  .t-galeria-assoc-campos{grid-template-columns:minmax(0,1fr)}
  .t-galeria-assoc-linha{min-height:var(--touch-min)}

  #view-legendas .t-legendas-share{min-height:var(--touch-min)}
  #view-legendas .t-legendas-share__txt{display:none}
  #view-legendas .t-legendas-remover{width:var(--touch-min);height:var(--touch-min)}
  #view-legendas .t-legendas-campo__acoes .btn{flex:1 1 auto}
}

/* ===== Telas: lote-d ===== */
/* Telas do lote D: Comprar chips, Caixa de email, Conexões do Post e Gerentes (extensão).
   Tudo escopado por #view-<tela>; só tokens. Medidas fora da escala ficam nas variáveis --t-<tela>-*.
   As quebras de @media repetem as do painel (640 / 900 / 1100), porque var() não vale em @media. */

/* ---------- Comprar chips ---------- */
#view-chips{--t-chips-col-saldo:minmax(0,1fr);--t-chips-col-compra:minmax(0,1.8fr);--t-chips-col-lista:minmax(0,1.6fr);--t-chips-col-gasto:minmax(0,1fr);--t-chips-anel:var(--space-12);--t-chips-dia:var(--space-24);--t-chips-valor:88px;--t-chips-barra-h:var(--space-5)}
#view-chips .t-chips-abas{flex-wrap:wrap;overflow:visible;margin-bottom:0}
#view-chips .t-chips-topo{grid-template-columns:var(--t-chips-col-saldo) var(--t-chips-col-compra);align-items:stretch}
#view-chips .t-chips-opcoes{gap:var(--space-6)}
#view-chips .t-chips-opcao{display:flex;flex-direction:column;gap:var(--space-4);min-width:0;padding:var(--pad-card-sm);background:var(--surface-sunken);border-radius:var(--radius-card)}
#view-chips .t-chips-opcao h4{margin:0;font:var(--type-body-strong);color:var(--text-primary)}
#view-chips .t-chips-opcao p{flex:1;margin:0;font:var(--type-small);color:var(--text-muted)}
#view-chips .t-chips-ativos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6)}
#view-chips .t-chips-chip{display:flex;flex-direction:column;gap:var(--space-5);padding:var(--pad-card-sm);box-shadow:none}
#view-chips .t-chips-chip__selos{gap:var(--space-3)}
#view-chips .t-chips-chip__numero{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-5)}
#view-chips .t-chips-chip__fone{font:var(--type-metric-sm);letter-spacing:var(--tracking-label);color:var(--text-primary);font-variant-numeric:tabular-nums lining-nums;overflow-wrap:anywhere}
#view-chips .t-chips-chip__expira{display:inline-flex;align-items:center;gap:var(--space-4);margin-left:auto;font:var(--type-small);color:var(--text-muted)}
#view-chips .t-chips-chip__expira b{color:var(--text-primary);font-variant-numeric:tabular-nums}
#view-chips .t-chips-anel{width:var(--t-chips-anel);height:var(--t-chips-anel)}
#view-chips .t-chips-anel::before{inset:var(--space-2)}
#view-chips .t-chips-chip__nota{margin:0;font:var(--type-small);color:var(--text-muted)}
#view-chips .t-chips-chip__acoes{gap:var(--space-4)}
#view-chips .t-chips-chip__acoes > .menu-acoes{margin-left:auto}
#view-chips .t-chips-codigos{display:flex;flex-direction:column;gap:var(--space-3);margin:0;padding:var(--space-4) var(--space-6);list-style:none;background:var(--surface-sunken);border-radius:var(--radius-control)}
#view-chips .t-chips-codigo{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4);color:var(--text-muted)}
#view-chips .t-chips-codigo__ordem{min-width:var(--space-12);font:var(--type-caption)}
#view-chips .t-chips-codigo__num{font:var(--type-section);letter-spacing:var(--tracking-label);font-variant-numeric:tabular-nums;color:var(--text-secondary)}
#view-chips .t-chips-codigo--ultimo .t-chips-codigo__num{font:var(--type-metric);letter-spacing:var(--tracking-label);color:var(--text-primary);font-variant-numeric:tabular-nums lining-nums}
#view-chips .t-chips-codigo__sms{flex:1 1 100%;font:var(--type-caption);overflow-wrap:anywhere}
#view-chips .t-chips-rodape{grid-template-columns:var(--t-chips-col-lista) var(--t-chips-col-gasto);align-items:start}
#view-chips .t-chips-tabela td{white-space:nowrap}
#view-chips .t-chips-tabela td.mono{font-family:var(--font-mono);font-size:var(--text-sm)}
#view-chips .t-chips-fraco{color:var(--text-muted)}
#view-chips .t-chips-vazio{margin:0;padding:var(--space-8) 0;text-align:center;font:var(--type-small);color:var(--text-muted)}
#view-chips .t-chips-gasto{display:flex;flex-direction:column;gap:var(--space-4);margin:0;padding:0;list-style:none}
#view-chips .t-chips-gasto__linha{display:grid;grid-template-columns:var(--t-chips-dia) minmax(0,1fr) var(--t-chips-valor);align-items:center;gap:var(--space-5);font:var(--type-caption);color:var(--text-muted)}
#view-chips .t-chips-gasto__dia{font-variant-numeric:tabular-nums}
#view-chips .t-chips-gasto__trilho{display:block;height:var(--t-chips-barra-h);overflow:hidden;background:var(--chart-track);border-radius:var(--radius-pill)}
#view-chips .t-chips-gasto__trilho > span{display:block;height:100%;min-width:var(--space-1);background:var(--border-strong);border-radius:inherit}
#view-chips .t-chips-gasto__valor{text-align:right;white-space:nowrap;font:var(--weight-regular) var(--text-xs)/var(--leading-snug) var(--font-mono);color:var(--text-secondary)}
#view-chips .t-chips-gasto__linha--hoje{font-weight:var(--weight-semibold);color:var(--text-primary)}
#view-chips .t-chips-gasto__linha--hoje .t-chips-gasto__trilho > span{background:var(--chart-completed)}
#view-chips .t-chips-gasto__linha--hoje .t-chips-gasto__valor{font-weight:var(--weight-semibold);color:var(--text-primary)}
#view-chips #chips-ativo .aviso{align-items:center;flex-wrap:wrap}
/* aviso "sem chave" (linha de renderChips mantida como está para a fusão): ganha a moldura de aviso */
#view-chips #chips-ativo > div:not(.painel):not(.aviso){padding:var(--space-6) var(--space-7);font:var(--type-small);background:var(--status-warning-bg);border-radius:var(--radius-control)}
@media (max-width:1100px){#view-chips .t-chips-rodape{grid-template-columns:minmax(0,1fr)}}
@media (max-width:900px){#view-chips .t-chips-topo,#view-chips .t-chips-ativos{grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px){#view-chips .t-chips-chip__expira{margin-left:0}#view-chips .t-chips-abas button{flex:1 1 auto}}

/* ---------- Caixa de email ---------- */
#view-email{--t-email-campo-min:240px;--t-email-campo-max:420px;--t-email-ico-pad:34px}
#view-email .t-email-rot{margin:0 0 var(--space-3)}
#view-email .t-email-linha{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}
#view-email .t-email-input{position:relative;flex:1 1 var(--t-email-campo-min);max-width:var(--t-email-campo-max);min-width:0}
#view-email .t-email-input input{padding-left:var(--t-email-ico-pad)}
#view-email .t-email-input__ico{position:absolute;left:var(--space-6);top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}
#view-email .t-email-dica{margin:var(--space-3) 0 0;font:var(--type-caption);color:var(--text-muted)}
#view-email .t-email-dominios{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin-top:var(--space-7);font:var(--type-caption);color:var(--text-muted)}
#view-email .t-email-dominios:empty{display:none}
#view-email .t-email-dominios code{padding:var(--space-1) var(--space-4);font:var(--weight-regular) var(--text-xs)/var(--leading-snug) var(--font-mono);color:var(--text-secondary);background:var(--surface-sunken);border-radius:var(--radius-xs)}
#view-email .t-email-vazio{margin:0;padding:var(--space-10) 0;text-align:center;font:var(--type-small);color:var(--text-muted)}
#view-email .t-email-tabela td{vertical-align:top}
#view-email .t-email-msg{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}
#view-email .t-email-msg__assunto{font:var(--type-body-strong);color:var(--text-primary)}
#view-email .t-email-msg__de{font:var(--type-caption);color:var(--text-muted);overflow-wrap:anywhere}
#view-email .t-email-msg__previa{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font:var(--type-caption);color:var(--text-secondary)}
#view-email .t-email-data{white-space:nowrap;font:var(--type-small);color:var(--text-muted);font-variant-numeric:tabular-nums}
#view-email .t-email-fraco{color:var(--text-faint)}
/* modal da mensagem (vive fora da seção, por isso as classes t-email-) */
.t-email-codigo{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);margin-bottom:var(--space-7);padding:var(--space-5) var(--space-7);color:var(--text-accent);background:var(--surface-accent-soft);border-radius:var(--radius-control)}
.t-email-codigo__rot{font:var(--type-label)}
.t-email-codigo__num{margin-left:auto;font:var(--type-metric);letter-spacing:var(--tracking-label);color:var(--text-primary);font-variant-numeric:tabular-nums lining-nums}
.t-email-corpo{--t-email-corpo-max:55vh;max-height:var(--t-email-corpo-max);overflow:auto;padding:var(--space-7);white-space:pre-wrap;overflow-wrap:anywhere;font:var(--type-body);line-height:var(--leading-relaxed);color:var(--text-primary);background:var(--surface-sunken);border:1px solid var(--border-subtle);border-radius:var(--radius-control)}
.t-email-corpo:focus-visible{outline:none;box-shadow:var(--shadow-focus)}
@media (max-width:640px){
  #view-email .t-email-input{flex-basis:100%;max-width:none}
  #view-email .t-email-linha .btn{flex:1 1 auto}
  #view-email .t-email-data{white-space:normal}
  #view-email .t-email-tabela th,#view-email .t-email-tabela td{padding-left:var(--space-3);padding-right:var(--space-3)}
  #view-email .t-email-tabela .btn.mini{padding:0 var(--space-4)}
  #view-email .t-email-msg__assunto{overflow-wrap:anywhere}
  .t-email-codigo__num{margin-left:0}
}

/* ---------- Conexões do Post ---------- */
#view-conexoes{--t-conexoes-ponto:var(--space-4);--t-conexoes-anel:2px;--t-conexoes-pag-min:170px;--t-conexoes-busca-pad:34px;--t-conexoes-mini:30px;--t-conexoes-foto:28px;--t-conexoes-busca-base:220px;--t-conexoes-busca-max:360px}
#view-conexoes .t-conexoes-saude{margin-bottom:var(--gap-grid)}
#view-conexoes .t-conexoes-saude .aviso{align-items:center;flex-wrap:wrap}
#view-conexoes .t-conexoes-gestao{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:var(--gap-grid);margin-bottom:var(--gap-grid)}
#view-conexoes .t-conexoes-perfis{display:flex;flex-direction:column;gap:var(--gap-grid);min-width:0}
#view-conexoes .t-conexoes-filtros{margin-bottom:0}
#view-conexoes .t-conexoes-busca{position:relative;flex:1 1 var(--t-conexoes-busca-base);max-width:var(--t-conexoes-busca-max);min-width:0}
#view-conexoes .t-conexoes-busca input{padding-left:var(--t-conexoes-busca-pad)}
#view-conexoes .t-conexoes-busca__ico{position:absolute;left:var(--space-6);top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}
#view-conexoes .t-conexoes-selecao{flex-wrap:wrap;align-items:center;gap:var(--space-4) var(--space-6);padding:var(--space-5) var(--space-7);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-card)}
#view-conexoes .t-conexoes-sel-cont{margin-right:auto;font:var(--type-small);color:var(--text-muted)}
#view-conexoes #lista-conexoes{grid-template-columns:minmax(0,1fr)}
#view-conexoes .t-conexoes-rodizio-geral{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--pad-card-sm);background:var(--surface-sunken);border-radius:var(--radius-card)}
#view-conexoes .t-conexoes-rodizio-geral .switch{font-weight:var(--weight-semibold)}
#view-conexoes .t-conexoes-rodizio-geral p{margin:0;font:var(--type-small);color:var(--text-muted)}
/* cartão de perfil */
#view-conexoes .t-conexoes-perfil{display:flex;flex-direction:column;gap:var(--space-7);margin:0}
#view-conexoes .t-conexoes-perfil--fs{background:var(--surface-sunken)}
#view-conexoes .t-conexoes-perfil--caido{box-shadow:0 0 0 var(--t-conexoes-anel) var(--status-critical),var(--shadow-sm)}
#view-conexoes .t-conexoes-perfil__cab{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-6)}
#view-conexoes .t-conexoes-perfil .perfil-cab{align-items:flex-start;flex:1;min-width:0;margin:0}
#view-conexoes .t-conexoes-perfil .perfil-cab .ck-conn{margin-top:var(--space-6);flex:0 0 auto}
#view-conexoes .t-conexoes-perfil .avatar{overflow:hidden}
#view-conexoes .t-conexoes-perfil .avatar img{width:100%;height:100%;object-fit:cover}
#view-conexoes .t-conexoes-perfil .avatar svg{width:var(--space-10);height:var(--space-10)}
#view-conexoes .t-conexoes-perfil__txt{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}
#view-conexoes .t-conexoes-perfil__txt h4{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-4);margin:0;font:var(--type-section)}
#view-conexoes .t-conexoes-perfil__nome{overflow-wrap:anywhere}
#view-conexoes .t-conexoes-perfil__contagens{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-5);font:var(--type-caption);color:var(--text-muted)}
#view-conexoes .t-conexoes-pos{font-weight:var(--weight-semibold);color:var(--text-positive)}
#view-conexoes .t-conexoes-aten{font-weight:var(--weight-semibold);color:var(--text-warning)}
#view-conexoes .t-conexoes-clicavel{cursor:pointer}
#view-conexoes .t-conexoes-rodizio{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-7);padding:var(--space-4) var(--space-6);font:var(--type-small);color:var(--text-secondary);background:var(--surface-sunken);border-radius:var(--radius-control)}
#view-conexoes .t-conexoes-perfil--fs .t-conexoes-rodizio{background:var(--surface-card)}
#view-conexoes .t-conexoes-rodizio__rot{display:inline-flex;align-items:center;gap:var(--space-3);font:var(--type-label);color:var(--text-primary)}
#view-conexoes .t-conexoes-rodizio__item{display:inline-flex;align-items:center;gap:var(--space-2)}
#view-conexoes .t-conexoes-mini{width:var(--t-conexoes-mini);height:var(--t-conexoes-mini)}
#view-conexoes .t-conexoes-controles{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4) var(--space-6)}
#view-conexoes .t-conexoes-controles .sel,#view-conexoes .t-conexoes-papel .sel{width:auto;max-width:100%}
#view-conexoes .t-conexoes-controles .check-linha b{font-weight:var(--weight-semibold);color:var(--text-muted)}
/* tabela de páginas do perfil (a linha continua sendo .pagina-item, que a busca e a ordenação usam) */
#view-conexoes .t-conexoes-paginas tr.pagina-item{display:table-row;padding:0;border-top:0;font:inherit}
#view-conexoes .t-conexoes-paginas td{vertical-align:middle}
#view-conexoes .t-conexoes-pag{display:flex;align-items:center;gap:var(--space-5);min-width:var(--t-conexoes-pag-min)}
#view-conexoes .t-conexoes-pag img,#view-conexoes .t-conexoes-pag .foto-vazia{display:block;width:var(--t-conexoes-foto);height:var(--t-conexoes-foto);flex:0 0 auto;border-radius:var(--radius-circle);object-fit:cover;background:var(--surface-sunken)}
#view-conexoes .t-conexoes-pag .nome-pag{font:var(--type-body-strong);color:var(--text-primary)}
#view-conexoes .t-conexoes-pag--off .nome-pag{font-weight:var(--weight-regular);color:var(--text-muted)}
#view-conexoes .t-conexoes-cats{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5)}
#view-conexoes .t-conexoes-rotulo{display:inline-flex;align-items:center;gap:var(--space-3);white-space:nowrap;font:var(--type-small);color:var(--text-secondary)}
#view-conexoes .t-conexoes-ponto{flex:0 0 auto;width:var(--t-conexoes-ponto);height:var(--t-conexoes-ponto);border-radius:var(--radius-circle);background:var(--t-cor,var(--text-faint))}
#view-conexoes .t-conexoes-selo-btn{border:0;font-family:var(--font-sans);cursor:pointer}
#view-conexoes .t-conexoes-selo-btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}
#view-conexoes .t-conexoes-acoes-linha{display:inline-flex;align-items:center;justify-content:flex-end;gap:var(--space-1)}
#view-conexoes .t-conexoes-remover:hover{color:var(--text-negative);background:var(--status-critical-bg)}
#view-conexoes .t-conexoes-vazio{text-align:center;color:var(--text-muted)}
#view-conexoes .t-conexoes-fraco{margin:0;font:var(--type-small);color:var(--text-muted)}
/* a rolagem da tabela é o bloco de contenção do texto só para leitor de tela (senão ele escapa e alarga a página) */
#view-conexoes .t-conexoes-tabela-env{position:relative}
#view-conexoes .t-conexoes-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
#view-conexoes .t-conexoes-perfil__rodape{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-6);padding-top:var(--space-7);border-top:1px solid var(--border-subtle)}
#view-conexoes .t-conexoes-papel{gap:var(--space-6)}
#view-conexoes .t-conexoes-switch{font:var(--type-small)}
/* cards Categorias e Apps de broadcast */
#view-conexoes .t-conexoes-texto{max-width:80ch;margin:0 0 var(--space-6);font:var(--type-small);color:var(--text-muted)}
#view-conexoes .t-conexoes-chips{display:flex;flex-wrap:wrap;gap:var(--space-4);margin:0 0 var(--space-8);padding:0;list-style:none}
#view-conexoes .t-conexoes-chip{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2) var(--space-1) var(--space-5);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-pill)}
#view-conexoes .t-conexoes-chip--orfao{border-style:dashed;border-color:var(--status-warning)}
#view-conexoes .t-conexoes-chip__nome{display:inline-flex;align-items:center;gap:var(--space-3);padding:0 var(--space-2) 0 0;font:var(--type-label);color:var(--text-primary);background:transparent;border:0;border-radius:var(--radius-pill);cursor:pointer}
#view-conexoes .t-conexoes-chip__nome:focus-visible{outline:none;box-shadow:var(--shadow-focus)}
#view-conexoes .t-conexoes-orfaos{margin-bottom:var(--space-8)}
#view-conexoes .t-conexoes-orfaos .aviso{align-items:center;flex-wrap:wrap}
#view-conexoes .t-conexoes-criar{margin-bottom:0}
@media (max-width:1100px){
  /* até 1100 px (a tabela pede ~900 px) cada página vira uma linha que quebra (como a .pagina-item de antes): nome em cima,
     selos e ações embaixo, tudo à vista sem rolagem lateral */
  #view-conexoes .t-conexoes-paginas,#view-conexoes .t-conexoes-paginas tbody{display:block;width:100%}
  #view-conexoes .t-conexoes-paginas thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  #view-conexoes .t-conexoes-paginas tr.pagina-item{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-4);padding:var(--space-5) 0;border-bottom:1px solid var(--border-subtle)}
  #view-conexoes .t-conexoes-paginas tr.pagina-item:last-child{border-bottom:0}
  #view-conexoes .t-conexoes-paginas tr.pagina-item > td{display:block;min-width:0;padding:0;border:0}
  #view-conexoes .t-conexoes-paginas tr.pagina-item > td:first-child{flex:1 1 100%}
  #view-conexoes .t-conexoes-paginas tr.pagina-item > td:last-child{margin-left:auto}
  #view-conexoes .t-conexoes-paginas tr.pagina-item > td:has(> .t-conexoes-fraco),#view-conexoes .t-conexoes-paginas tr.pagina-item > td:has(> .t-conexoes-cats > .t-conexoes-fraco){display:none}
  #view-conexoes .t-conexoes-pag{min-width:0}
  #view-conexoes .t-conexoes-paginas tbody > tr:not(.pagina-item),#view-conexoes .t-conexoes-paginas td.t-conexoes-vazio{display:block}
}
@media (max-width:900px){#view-conexoes .t-conexoes-gestao{grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px){
  #view-conexoes .t-conexoes-busca{flex-basis:100%;max-width:none}
  #view-conexoes .t-conexoes-perfil{gap:var(--space-6)}
  #view-conexoes .t-conexoes-perfil__rodape{flex-direction:column;align-items:stretch}
  #view-conexoes .t-conexoes-papel .sel{width:100%}
  #view-conexoes .t-conexoes-controles > .sel{flex:1 1 100%;width:100%}
  #view-conexoes .t-conexoes-mini,#view-conexoes .t-conexoes-paginas .btn-icone{width:var(--touch-min);height:var(--touch-min)}
}

/* ---------- Gerentes (extensão) ---------- */
#view-gerente-ext{--t-gerente-ext-av:32px;--t-gerente-ext-av-sm:28px;--t-gerente-ext-av-lg:44px;--t-gerente-ext-mini:14px;--t-gerente-ext-icone:28px;--t-gerente-ext-sinc-min:460px;--t-gerente-ext-grupo-min:200px;--t-gerente-ext-select-min:200px;--t-gerente-ext-txt-base:160px;--t-gerente-ext-busca-max:420px;--t-gerente-ext-busca-pad:34px;--t-gerente-ext-numero-min:96px;--t-gerente-ext-pag-min:170px;--t-gerente-ext-tabela-min:720px}
#view-gerente-ext .t-gerente-ext-menu{display:inline-flex}
#view-gerente-ext .t-gerente-ext-menu:empty{display:none}
#view-gerente-ext #ger-ext-pareamento:empty{display:none}
#view-gerente-ext #lista-gerente-ext{display:flex;flex-direction:column;gap:var(--gap-section);min-width:0}
#view-gerente-ext .t-gerente-ext-titulo{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}
#view-gerente-ext .t-gerente-ext-texto{max-width:80ch;margin:0 0 var(--space-6);font:var(--type-small);color:var(--text-muted)}
#view-gerente-ext .t-gerente-ext-fraco{color:var(--text-muted)}
#view-gerente-ext .t-gerente-ext-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
/* avatar (foto ou iniciais) */
#view-gerente-ext .t-gerente-ext-avatar{display:inline-flex;align-items:center;justify-content:center;width:var(--t-gerente-ext-av);height:var(--t-gerente-ext-av);flex:0 0 auto;overflow:hidden;border-radius:var(--radius-circle);background:var(--gradient-folder);color:var(--text-inverse);font:var(--weight-semibold) var(--text-xs)/1 var(--font-sans)}
#view-gerente-ext .t-gerente-ext-avatar--sm{width:var(--t-gerente-ext-av-sm);height:var(--t-gerente-ext-av-sm);font-size:var(--text-2xs)}
#view-gerente-ext .t-gerente-ext-avatar--lg{width:var(--t-gerente-ext-av-lg);height:var(--t-gerente-ext-av-lg);font-size:var(--text-md)}
#view-gerente-ext .t-gerente-ext-avatar img{display:block;width:100%;height:100%;object-fit:cover;border-radius:0;background:none}
/* perfis sincronizados */
#view-gerente-ext .t-gerente-ext-sinc{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(var(--t-gerente-ext-sinc-min),100%),1fr));gap:0 var(--space-12);margin:0;padding:0;list-style:none}
#view-gerente-ext .t-gerente-ext-sinc__item{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-5);min-width:0;padding:var(--space-5) 0;border-top:1px solid var(--border-subtle)}
#view-gerente-ext .t-gerente-ext-sinc__txt{display:flex;flex-direction:column;flex:1 1 var(--t-gerente-ext-txt-base);min-width:0}
#view-gerente-ext .t-gerente-ext-sinc__txt b{font:var(--type-body-strong);color:var(--text-primary);overflow-wrap:anywhere}
#view-gerente-ext .t-gerente-ext-sinc__txt span{font:var(--type-caption);color:var(--text-muted)}
#view-gerente-ext .t-gerente-ext-sinc__papel{flex:0 1 var(--t-gerente-ext-select-min);min-width:0}
/* filtros por situação */
#view-gerente-ext .t-gerente-ext-busca{position:relative;max-width:var(--t-gerente-ext-busca-max)}
#view-gerente-ext .t-gerente-ext-busca input{padding-left:var(--t-gerente-ext-busca-pad)}
#view-gerente-ext .t-gerente-ext-busca__ico{position:absolute;left:var(--space-6);top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}
#view-gerente-ext .t-gerente-ext-todas[aria-pressed="true"]{--_bg:var(--surface-accent-soft);--_fg:var(--text-accent)}
#view-gerente-ext .t-gerente-ext-detalhes{margin-top:var(--space-7)}
#view-gerente-ext .t-gerente-ext-detalhes__titulo{display:flex;align-items:center;min-height:var(--touch-min);margin:0;font:var(--type-label);color:var(--text-primary)}
#view-gerente-ext .t-gerente-ext-grupos{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(var(--t-gerente-ext-grupo-min),100%),1fr));gap:var(--space-6);margin-top:var(--space-2)}
#view-gerente-ext .t-gerente-ext-grupo{display:flex;flex-direction:column;gap:var(--space-2);min-width:0;padding:var(--space-5) var(--space-4);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-card)}
#view-gerente-ext .t-gerente-ext-grupo__nome{padding:0 var(--space-3) var(--space-2);font:var(--weight-semibold) var(--text-2xs)/var(--leading-snug) var(--font-sans);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-muted)}
#view-gerente-ext .t-gerente-ext-grupo__lista{display:flex;flex-direction:column;gap:var(--space-1);margin:0;padding:0;list-style:none}
#view-gerente-ext .t-gerente-ext-filtro{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);width:100%;min-height:var(--space-16);padding:var(--space-2) var(--space-3);font:var(--type-small);color:var(--text-secondary);text-align:left;background:transparent;border:0;border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-control)}
#view-gerente-ext .t-gerente-ext-filtro:hover{background:var(--surface-hover);color:var(--text-primary)}
#view-gerente-ext .t-gerente-ext-filtro:focus-visible{outline:none;box-shadow:var(--shadow-focus)}
#view-gerente-ext .t-gerente-ext-filtro[aria-pressed="true"]{font-weight:var(--weight-semibold);color:var(--text-accent);background:var(--surface-accent-soft)}
#view-gerente-ext .t-gerente-ext-filtro__rot{min-width:0}
#view-gerente-ext .t-gerente-ext-aviso{margin-top:var(--space-7)}
#view-gerente-ext .t-gerente-ext-aviso .aviso{flex-wrap:wrap;align-items:center}
/* vincular pasta às marcadas */
#view-gerente-ext .t-gerente-ext-vincular{gap:var(--space-6);padding:var(--pad-card-sm);background:var(--surface-sunken);border-color:transparent;box-shadow:none}
#view-gerente-ext .t-gerente-ext-vincular__txt h3{display:flex;align-items:center;gap:var(--space-4);margin:0 0 var(--space-2);font:var(--type-body-strong);color:var(--text-primary)}
#view-gerente-ext .t-gerente-ext-vincular__txt p{max-width:80ch;margin:0;font:var(--type-caption);color:var(--text-muted)}
#view-gerente-ext .t-gerente-ext-vincular__campos{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-5)}
#view-gerente-ext .t-gerente-ext-vincular__pasta{flex:0 1 var(--t-gerente-ext-select-min);min-width:var(--t-gerente-ext-select-min)}
#view-gerente-ext .t-gerente-ext-marcar{gap:var(--space-2) var(--space-4)}
/* cartão do gerente */
#view-gerente-ext .t-gerente-ext-gerente{display:flex;flex-direction:column;gap:var(--space-8);margin:0}
#view-gerente-ext .t-gerente-ext-gerente__cab{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-6)}
#view-gerente-ext .t-gerente-ext-gerente__id{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-5);min-width:0}
#view-gerente-ext .t-gerente-ext-gerente__id h3{margin:0;font:var(--type-section);letter-spacing:var(--tracking-heading);overflow-wrap:anywhere}
#view-gerente-ext .t-gerente-ext-gerente__acoes{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}
#view-gerente-ext .t-gerente-ext-gerente__acoes .sel{width:var(--t-gerente-ext-select-min);max-width:100%}
#view-gerente-ext .t-gerente-ext-numeros{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-6)}
#view-gerente-ext .t-gerente-ext-numeros__lista{display:flex;flex-wrap:wrap;gap:var(--space-4) var(--space-12);margin:0;padding:0;list-style:none}
#view-gerente-ext .t-gerente-ext-numero{display:flex;flex-direction:column;gap:var(--space-2);min-width:var(--t-gerente-ext-numero-min)}
#view-gerente-ext .t-gerente-ext-numero__valor{font:var(--type-metric-sm);color:var(--text-primary);font-variant-numeric:lining-nums}
#view-gerente-ext .t-gerente-ext-numero__rot{font:var(--type-caption);color:var(--text-muted)}
#view-gerente-ext .t-gerente-ext-numero--ok .t-gerente-ext-numero__rot{color:var(--text-positive)}
#view-gerente-ext .t-gerente-ext-numero--atencao .t-gerente-ext-numero__rot{color:var(--text-warning)}
#view-gerente-ext .t-gerente-ext-numero--erro .t-gerente-ext-numero__rot{color:var(--text-negative)}
#view-gerente-ext .t-gerente-ext-vazio{margin:0;padding:var(--space-8) 0;text-align:center;font:var(--type-small);color:var(--text-muted)}
/* grupos por app de broadcast e tabela de páginas (a linha continua sendo .pagina-item) */
#view-gerente-ext .t-gerente-ext-bloco{min-width:0}
#view-gerente-ext .t-gerente-ext-bloco__titulo{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);margin:0 0 var(--space-4);font:var(--type-label);color:var(--text-primary)}
#view-gerente-ext .t-gerente-ext-bloco__titulo > .ic-in{color:var(--text-muted)}
#view-gerente-ext .t-gerente-ext-bloco .rolagem-x{position:relative}
#view-gerente-ext .t-gerente-ext-tabela{min-width:var(--t-gerente-ext-tabela-min)}
#view-gerente-ext .t-gerente-ext-tabela tr.pagina-item{display:table-row;padding:0;border-top:0;font:inherit}
#view-gerente-ext .t-gerente-ext-tabela td{vertical-align:middle}
#view-gerente-ext .t-gerente-ext-col-marca{width:var(--space-12);padding-right:0}
#view-gerente-ext .t-gerente-ext-pag{display:flex;align-items:center;gap:var(--space-5);min-width:var(--t-gerente-ext-pag-min)}
#view-gerente-ext .t-gerente-ext-pag .nome-pag{font:var(--type-body-strong);color:var(--text-primary)}
#view-gerente-ext .t-gerente-ext-selos{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}
#view-gerente-ext .t-gerente-ext-mini-foto{display:inline-block;width:var(--t-gerente-ext-mini);height:var(--t-gerente-ext-mini);flex:0 0 auto;border-radius:var(--radius-circle);object-fit:cover}
#view-gerente-ext .t-gerente-ext-motor{display:inline-flex;align-items:center;gap:var(--space-2)}
#view-gerente-ext .t-gerente-ext-selo-btn{border:0;font-family:var(--font-sans);cursor:pointer}
#view-gerente-ext .t-gerente-ext-selo-btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}
#view-gerente-ext .t-gerente-ext-icone{width:var(--t-gerente-ext-icone);height:var(--t-gerente-ext-icone)}
@media (max-width:640px){
  #view-gerente-ext .t-gerente-ext-busca{max-width:none}
  #view-gerente-ext .t-gerente-ext-sinc__item > .menu-acoes{order:1}
  #view-gerente-ext .t-gerente-ext-sinc__papel{order:2;flex:1 1 100%}
  #view-gerente-ext .t-gerente-ext-vincular__campos > .btn{width:100%}
  #view-gerente-ext .t-gerente-ext-vincular__pasta{flex:1 1 100%;min-width:0}
  #view-gerente-ext .t-gerente-ext-gerente__acoes{width:100%}
  #view-gerente-ext .t-gerente-ext-gerente__acoes .sel{flex:1 1 auto;width:auto}
  #view-gerente-ext .t-gerente-ext-numeros__lista{gap:var(--space-4) var(--space-8)}
  #view-gerente-ext .t-gerente-ext-numero{flex:1 1 40%;min-width:0}
  #view-gerente-ext .t-gerente-ext-icone{width:var(--touch-min);height:var(--touch-min)}
  /* no celular cada página vira uma linha que quebra (como a .pagina-item de antes): marcação e nome em cima,
     mídia, quem posta e campanha embaixo, tudo à vista sem rolagem lateral */
  #view-gerente-ext .t-gerente-ext-tabela{min-width:0}
  #view-gerente-ext .t-gerente-ext-tabela,#view-gerente-ext .t-gerente-ext-tabela tbody{display:block;width:100%}
  #view-gerente-ext .t-gerente-ext-tabela thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  #view-gerente-ext .t-gerente-ext-tabela tr.pagina-item{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-4);padding:var(--space-5) 0;border-bottom:1px solid var(--border-subtle)}
  #view-gerente-ext .t-gerente-ext-tabela tr.pagina-item:last-child{border-bottom:0}
  #view-gerente-ext .t-gerente-ext-tabela tr.pagina-item > td{display:block;flex:1 1 100%;min-width:0;padding:0;border:0}
  #view-gerente-ext .t-gerente-ext-tabela tr.pagina-item > td.t-gerente-ext-col-marca{flex:0 0 auto;width:auto}
  #view-gerente-ext .t-gerente-ext-tabela tr.pagina-item > td.t-gerente-ext-col-marca + td{flex:1 1 0}
  #view-gerente-ext .t-gerente-ext-tabela tr.pagina-item > td:has(> .t-gerente-ext-selos > .t-gerente-ext-fraco:only-child){display:none}
  #view-gerente-ext .t-gerente-ext-pag{min-width:0}
}

/* ===== Telas: lote-e ===== */
/* Servidor, Logs e Configurações. Só tokens; medida fora da escala vira variável com nome no topo de
   cada tela. Todo seletor fica preso a #view-<id> ou a uma classe t-<id>- (os modais de app e de
   usuário moram em #modal, por isso usam só a classe). */

/* ---------- Servidor ---------- */
#view-servidor{
  --t-servidor-cartao-min:calc(var(--space-20) * 5.5);
  --t-servidor-coluna-min:calc(var(--space-24) * 10);
  --t-servidor-texto-max:72ch;
}
#view-servidor .t-servidor-alertas{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:0;list-style:none}
#view-servidor .t-servidor-cartoes{display:grid;gap:var(--gap-grid);grid-template-columns:repeat(auto-fit,minmax(min(var(--t-servidor-cartao-min),100%),1fr));min-width:0}
#view-servidor .t-servidor-cartoes > *{min-width:0}
#view-servidor .t-servidor-cartoes--coluna{grid-template-columns:minmax(0,1fr)}
#view-servidor .t-servidor-stat{box-shadow:var(--shadow-none)}
#view-servidor .t-servidor-stat__meio{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);min-width:0}
#view-servidor .t-servidor-stat__meio .stat__num{min-width:0;overflow-wrap:anywhere}
/* o número em serifa já está ao lado do anel: o texto de dentro dele sairia repetido */
#view-servidor .t-servidor-stat .anel > span{display:none}
#view-servidor .t-servidor-stat__leg{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}
#view-servidor .t-servidor-nota{max-width:var(--t-servidor-texto-max);margin:var(--space-8) 0 0;font:var(--type-small);color:var(--text-muted)}
#view-servidor .t-servidor-duas{display:grid;gap:var(--gap-grid);grid-template-columns:repeat(auto-fit,minmax(min(var(--t-servidor-coluna-min),100%),1fr));align-items:start;min-width:0}
#view-servidor .t-servidor-duas > *{min-width:0}
@media (max-width:640px){
  #view-servidor .t-servidor-auto{flex:1 1 100%;min-height:var(--touch-min)}
}

/* ---------- Logs ---------- */
#view-logs{
  --t-logs-altura:70vh;
  --t-logs-busca-min:calc(var(--space-20) * 5);
  --t-logs-busca-max:calc(var(--space-20) * 9);
  --t-logs-busca-recuo:calc(var(--space-5) + var(--space-8) + var(--space-4));
}
#view-logs .t-logs-filtros{align-items:center;margin-bottom:var(--space-7)}
#view-logs .t-logs-busca{position:relative;flex:1 1 var(--t-logs-busca-min);max-width:var(--t-logs-busca-max);min-width:0}
#view-logs .t-logs-busca .svg16{position:absolute;top:50%;left:var(--space-5);transform:translateY(-50%);color:var(--text-muted);pointer-events:none}
#view-logs .t-logs-busca input{padding-left:var(--t-logs-busca-recuo)}
/* os filtros de nível quebram linha em vez de rolar de lado escondidos: todos ficam à vista */
#view-logs .t-logs-niveis{flex-wrap:wrap;overflow-x:visible;margin-bottom:0}
#view-logs .t-logs-niveis b{font-weight:var(--weight-semibold)}
#view-logs #caixa-logs{max-height:var(--t-logs-altura);overflow:auto;padding:0;font:var(--type-small);background:none;border:0;border-radius:var(--radius-sm);box-shadow:var(--shadow-none)}
#view-logs #caixa-logs:focus-visible{box-shadow:var(--shadow-focus)}
#view-logs #caixa-logs > .vazio{padding:var(--space-24) var(--space-12);border:1px dashed var(--border-dashed)}
#view-logs #caixa-logs > .aviso{padding:var(--space-6) var(--space-7);border-bottom:0}
#view-logs .t-logs-tabela thead th{position:sticky;top:0;z-index:1;padding-top:var(--space-2);background:var(--surface-card)}
#view-logs .t-logs-tabela td{vertical-align:top}
#view-logs .t-logs-quando{width:1%;white-space:nowrap;font:var(--weight-regular) var(--text-xs)/var(--leading-normal) var(--font-mono);color:var(--text-muted);font-variant-numeric:tabular-nums}
#view-logs .t-logs-nivel{width:1%;white-space:nowrap}
#view-logs .t-logs-msg{font:var(--type-small);color:var(--text-primary);overflow-wrap:anywhere}
#view-logs .t-logs-msg--erro{color:var(--text-negative)}
@media (max-width:640px){
  #view-logs .t-logs-busca{flex:1 1 100%;max-width:none}
  #view-logs .t-logs-niveis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-radius:var(--radius-card)}
  #view-logs .t-logs-niveis button{min-height:var(--touch-min)}
  /* celular: cada registro vira um bloco (nível e hora em cima, mensagem embaixo), sem rolar de lado */
  #view-logs .t-logs-tabela thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  #view-logs .t-logs-tabela,#view-logs .t-logs-tabela tbody{display:block;width:100%}
  #view-logs .t-logs-tabela tr{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4);padding:var(--space-6) 0;border-bottom:1px solid var(--border-subtle)}
  #view-logs .t-logs-tabela tr:last-child{border-bottom:0}
  #view-logs .t-logs-tabela td{display:block;width:auto;padding:0;border:0}
  #view-logs .t-logs-tabela .t-logs-nivel{order:-1}
  #view-logs .t-logs-tabela .t-logs-msg{flex:1 1 100%}
}

/* ---------- Configurações ---------- */
#view-config{
  --t-config-lateral-min:calc(var(--space-20) * 8);
  --t-config-painel-min:calc(var(--space-20) * 11.5);
  --t-config-campo-min:calc(var(--space-24) * 5);
  --t-config-estreita-max:calc(var(--space-20) * 20);
  --t-config-select-w:calc(var(--space-24) * 5);
  --t-config-hora:calc(var(--space-20) * 4);
  --t-config-alvo-nome:calc(var(--space-20) * 3.5);
  --t-config-alvo-url:calc(var(--space-20) * 5.5);
  --t-config-texto-max:72ch;
}
/* as abas quebram linha em vez de rolar de lado escondidas: no celular todas ficam à vista */
#view-config .t-config-abas{flex-wrap:wrap;overflow-x:visible;margin-bottom:var(--gap-section)}
#view-config .t-config-abas button{display:inline-flex;align-items:center;gap:var(--space-3)}
#view-config .t-config-abas .ico{display:inline-flex}
#view-config .t-config-abas .ico svg{width:var(--space-8);height:var(--space-8)}
#view-config .t-config-duas{display:grid;grid-template-columns:minmax(0,3fr) minmax(var(--t-config-lateral-min),2fr);gap:var(--gap-grid);align-items:start}
#view-config .t-config-grade{display:grid;gap:var(--gap-grid);grid-template-columns:repeat(auto-fit,minmax(min(var(--t-config-painel-min),100%),1fr));align-items:start}
#view-config .t-config-grade > *,#view-config .t-config-duas > *{min-width:0}
#view-config .t-config-estreita{max-width:var(--t-config-estreita-max)}
#view-config .painel__cab > div:first-child{flex:1 1 var(--t-config-campo-min);min-width:0}
#view-config .painel__acoes .selo{white-space:normal}
#view-config .t-config-pilha{display:flex;flex-direction:column;gap:var(--space-8)}
#view-config .t-config-texto{max-width:var(--t-config-texto-max);margin:0;font:var(--type-small);color:var(--text-muted)}
#view-config .t-config-texto b{font-weight:var(--weight-semibold);color:var(--text-secondary)}
#view-config .t-config-texto code,#view-config .t-config-passos code,#view-config .t-config-status code{padding:0 var(--space-2);font:var(--weight-regular) var(--text-xs)/var(--leading-normal) var(--font-mono);color:var(--text-secondary);background:var(--surface-sunken);border-radius:var(--radius-xs);overflow-wrap:anywhere}
#view-config .t-config-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* campos de formulário com rótulo em cima e dica embaixo */
#view-config .t-config-campos{display:grid;gap:var(--space-8);grid-template-columns:repeat(auto-fit,minmax(min(var(--t-config-campo-min),100%),1fr))}
#view-config .t-config-campo{display:flex;flex-direction:column;min-width:0}
#view-config .t-config-campo > label{margin:0 0 var(--space-3)}
#view-config .t-config-campo > small{margin-top:var(--space-2);font:var(--type-caption);color:var(--text-muted)}
#view-config .t-config-status{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin-top:var(--space-3);font:var(--type-caption);color:var(--text-muted)}
#view-config .t-config-status:empty{display:none}

/* Aplicativos Meta: filtro, ações em massa, tabela e app padrão */
#view-config .t-config-barra-apps{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);margin-bottom:var(--space-7)}
#view-config .t-config-filtro{margin-bottom:0}
#view-config .t-config-filtro b{font-weight:var(--weight-semibold)}
#view-config .t-config-massa{display:flex;align-items:center;gap:var(--space-4);margin-left:auto}
#view-config #apps-sel-cont{font:var(--type-small);color:var(--text-muted)}
/* o menu "⋯" das linhas abre para fora da tabela: a caixa da tabela não pode cortar */
#view-config .t-config-tabela{overflow:visible}
#view-config tr.app-linha{display:table-row;padding:0;font:inherit;border:0}
#view-config .t-config-col-check{width:var(--space-16);padding-right:0}
#view-config .t-config-ck{display:inline-flex;align-items:center;justify-content:center;margin:0;cursor:pointer}
#view-config .t-config-app,#view-config .t-config-pessoa{display:flex;align-items:center;gap:var(--space-5);min-width:0}
#view-config .t-config-app__ico,#view-config .t-config-avatar{display:inline-grid;place-items:center;flex:0 0 auto;width:var(--space-16);height:var(--space-16);border-radius:var(--radius-circle);background:var(--surface-sunken);color:var(--text-secondary)}
#view-config .t-config-app__ico svg{width:var(--space-8);height:var(--space-8)}
#view-config .t-config-avatar{font:var(--weight-semibold) var(--text-xs)/1 var(--font-sans);color:var(--text-accent);background:var(--surface-accent-soft)}
#view-config .t-config-app__txt,#view-config .t-config-pessoa__txt{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}
#view-config .t-config-app__txt b,#view-config .t-config-pessoa__txt b{font:var(--type-body-strong);color:var(--text-primary);overflow-wrap:anywhere}
#view-config .t-config-app__txt .mono{font-size:var(--text-xs);color:var(--text-muted)}
#view-config .t-config-pessoa__txt span{font:var(--type-small);color:var(--text-muted);overflow-wrap:anywhere}
#view-config .t-config-donzap{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}
#view-config .t-config-acoes-linha{display:inline-flex;align-items:center;justify-content:flex-end;gap:var(--space-2)}
#view-config .t-config-lista{margin-top:var(--space-7)}
#view-config .t-config-padrao{justify-content:space-between}
#view-config .t-config-padrao__txt{display:flex;flex:1 1 var(--t-config-campo-min);flex-direction:column;gap:var(--space-1);min-width:0;font:var(--type-small);color:var(--text-muted)}
#view-config .t-config-padrao__txt b{font:var(--type-body-strong);color:var(--text-primary)}
#view-config .t-config-padrao > select,#view-config .t-config-padrao > .sel{width:var(--t-config-select-w);max-width:100%}

/* passo a passo na Meta e campos de copiar */
#view-config .t-config-passos{display:flex;flex-direction:column;gap:var(--space-3);margin:0;padding-left:var(--space-10);font:var(--type-small);color:var(--text-secondary)}
#view-config .t-config-grupo{display:flex;flex-direction:column;gap:var(--space-7);margin-top:var(--space-10);padding-top:var(--space-10);border-top:1px solid var(--border-subtle)}
#view-config .t-config-grupo__titulo{margin:0;font:var(--weight-semibold) var(--text-2xs)/var(--leading-snug) var(--font-sans);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-muted)}
#view-config .t-config-aviso{margin-top:var(--space-10)}
#view-config .t-config-copiar{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}
#view-config .t-config-copiar__rot{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1) var(--space-4)}
#view-config .t-config-copiar__rot span{font:var(--type-label);color:var(--text-primary)}
#view-config .t-config-copiar__rot small{font:var(--type-caption);color:var(--text-muted)}
#view-config .campo-copiar{flex-wrap:nowrap;gap:var(--space-2);margin-top:0;padding:var(--space-1);background:var(--surface-sunken);border-radius:var(--radius-control)}
#view-config .campo-copiar code{padding:var(--space-3) var(--space-4);background:none}
#view-config .campo-copiar .btn{flex:0 0 auto;padding:0 var(--space-4)}
#view-config .t-config-comando{margin-top:var(--space-3)}
#view-config .t-config-comando code{white-space:normal;overflow-wrap:anywhere}

/* extensão: "Como instalar ou atualizar" */
#view-config .t-config-detalhes{padding-top:var(--space-6);border-top:1px solid var(--border-subtle)}
#view-config .t-config-detalhes > summary{display:flex;align-items:center;gap:var(--space-3);min-height:var(--touch-min);font:var(--type-label);color:var(--text-secondary);list-style:none;border-radius:var(--radius-sm)}
#view-config .t-config-detalhes > summary::-webkit-details-marker{display:none}
#view-config .t-config-detalhes__seta{display:inline-flex;transition:transform var(--dur-base) var(--ease-out)}
#view-config .t-config-detalhes__seta svg{width:var(--space-8);height:var(--space-8)}
#view-config .t-config-detalhes[open] .t-config-detalhes__seta{transform:rotate(90deg)}
#view-config .t-config-detalhes > .t-config-passos{margin:var(--space-4) 0 var(--space-6)}

/* alertas: resumo do dia, URLs vigiadas e rodapé de salvar */
#view-config .t-config-linha-fim{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-6)}
#view-config .t-config-hora{flex:0 1 var(--t-config-hora)}
#view-config .t-config-alvo{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}
#view-config .t-config-alvo + .t-config-alvo{margin-top:var(--space-4)}
#view-config .t-config-alvo > input:first-child{flex:1 1 var(--t-config-alvo-nome);width:auto;min-width:0}
#view-config .t-config-alvo > input:nth-child(2){flex:2 1 var(--t-config-alvo-url);width:auto;min-width:0}
#view-config .t-config-rodape{display:flex;flex-direction:column;gap:var(--space-4)}

/* modais de app e de usuário (continuam modais; só o conteúdo foi repaginado) */
.t-config-modal-dica{display:block;margin-top:var(--space-2);font:var(--type-caption);color:var(--text-muted)}
.switch.t-config-modal-opcao{display:flex;align-items:flex-start;margin-top:var(--space-10);padding:var(--space-6);border:1px solid var(--border-subtle);border-radius:var(--radius-control)}
.t-config-modal-opcao .switch__trilho{margin-top:var(--space-1)}
.t-config-modal-opcao small{display:block;margin-top:var(--space-1);font:var(--type-caption);color:var(--text-muted)}

@media (max-width:1100px){
  #view-config .t-config-duas{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:900px){
  /* tabelas de apps e de usuários viram blocos: nada rola de lado e o "⋯" não é cortado */
  #view-config .t-config-tabela thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  #view-config .t-config-tabela table,#view-config .t-config-tabela tbody{display:block;width:100%}
  #view-config .t-config-tabela tbody tr{display:grid;align-items:center;gap:var(--space-3) var(--space-5);padding:var(--space-6) 0;border-bottom:1px solid var(--border-subtle)}
  #view-config .t-config-tabela tbody tr:last-child{border-bottom:0}
  #view-config .t-config-tabela td{display:block;width:auto;min-width:0;padding:0;border:0}
  #view-config .t-config-tabela td[data-rot]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4);grid-column:1 / -1}
  #view-config .t-config-tabela td[data-rot]::before{content:attr(data-rot);font:var(--type-caption);color:var(--text-muted)}
  #view-config .t-config-apps tbody tr{grid-template-columns:auto minmax(0,1fr) auto}
  #view-config .t-config-usuarios tbody tr{grid-template-columns:minmax(0,1fr) auto}
  #view-config .t-config-tabela .t-config-cel-acoes{grid-row:1;grid-column:-2 / -1}
}
@media (max-width:640px){
  #view-config .t-config-abas{border-radius:var(--radius-card)}
  #view-config .t-config-abas button{flex:1 1 auto;justify-content:center}
  #view-config .t-config-abas button,#view-config .t-config-filtro button{min-height:var(--touch-min)}
  #view-config .t-config-massa{margin-left:0}
  #view-config .t-config-padrao > select,#view-config .t-config-padrao > .sel{width:100%}
  #view-config .t-config-hora{flex:1 1 100%}
  #view-config .t-config-linha-fim > .btn,#view-config .t-config-rodape .btn{flex:1 1 auto}
  #view-config .ck-app{width:var(--space-10);height:var(--space-10)}
  #view-config .t-config-ck,#view-config .painel__acoes .switch{min-width:var(--touch-min);min-height:var(--touch-min)}
}
