/* =====================================================================
   CENTRAL WHATSAPP · a folha da página própria (/central.html)
   Do layout v3 aprovado em 12/10/2026 (D98; docs/maquetes/central-whatsapp-v3.html),
   com o prefixo atd- (módulo atendimento).

   OS TOKENS SÃO OS DO style.css (docs/19), carregado ANTES desta folha.
   Aqui só nascem os que a Central usa e o style.css não tem (a escala neutra,
   os fundos de estado, a sombra, a areia da nota interna), nos dois temas.
   Layout: barra de cima + trilho de ícones à esquerda + área de trabalho. A
   página nunca rola: só as listas rolam, com barra fina.
   ===================================================================== */
:root{
  --on-ink-muted:#a7b1b2;--ok-bg:#d9f3f0;--danger-bg:#fbe3dd;--cold:#4a555a;--cold-bg:#e3e8e9;
  --sh:0 3px 8px rgba(16,18,20,.05),0 14px 14px rgba(16,18,20,.04);--dots:#c9d1d1;
  --n1:#5f6b6c;--n2:#98a4a5;--n3:#c6cfcf;--n4:#e4e9e9;--grid:#e7ecec;--hero:#e9f4f2;--sand:#efe7da;--sand-ink:#6b5a3e;
  --rail:76px;--topo:60px}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --on-ink-muted:#9fabac;--ok-bg:#12312f;--danger-bg:#3d221c;--cold:#b3bfc4;--cold-bg:#283038;
  --sh:0 1px 2px rgba(0,0,0,.4),0 8px 20px rgba(0,0,0,.35);--dots:#3a4448;
  --n1:#b3bfc4;--n2:#7d8a8e;--n3:#4a555a;--n4:#2a3136;--grid:#232a2e;--hero:#13201f;--sand:#2b2721;--sand-ink:#e0d2bb}}
:root[data-theme="dark"]{
  --on-ink-muted:#9fabac;--ok-bg:#12312f;--danger-bg:#3d221c;--cold:#b3bfc4;--cold-bg:#283038;
  --sh:0 1px 2px rgba(0,0,0,.4),0 8px 20px rgba(0,0,0,.35);--dots:#3a4448;
  --n1:#b3bfc4;--n2:#7d8a8e;--n3:#4a555a;--n4:#2a3136;--grid:#232a2e;--hero:#13201f;--sand:#2b2721;--sand-ink:#e0d2bb}

html.central,html.central body{height:100%}
html.central body{margin:0;overflow:hidden;background:var(--bg);color:var(--text);font-size:14px;line-height:1.5}
.atd-app button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
.atd-app button:focus-visible,.atd-app a:focus-visible,.atd-app [tabindex]:focus-visible{outline:2px solid var(--mint);outline-offset:2px}
.atd-app .ic{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
[hidden]{display:none!important}

/* rolagem discreta */
.rol{overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:transparent transparent}
.rol:hover,.rol:focus-within{scrollbar-color:var(--n3) transparent}
.rol::-webkit-scrollbar{width:10px;height:10px}
.rol::-webkit-scrollbar-thumb{background-color:transparent;border:3px solid transparent;border-radius:10px;background-clip:padding-box}
.rol:hover::-webkit-scrollbar-thumb{background-color:var(--n3)}

/* ---------- carregando e sem acesso ---------- */
.atd-tela{position:fixed;inset:0;display:grid;place-items:center;padding:24px 16px;background:var(--bg);z-index:30}
.atd-tela .cx{width:min(100%,420px);display:grid;justify-items:center;gap:10px;text-align:center;color:var(--muted);font-size:13px}
.atd-tela .cx b{color:var(--text);font-size:16px;font-weight:700}
.atd-tela .logo{color:var(--text)}
.atd-tela .logo svg{width:110px;height:auto;fill:currentColor;display:block}

/* ---------- casca ---------- */
.atd-app{height:100%;display:grid;grid-template-columns:var(--rail) minmax(0,1fr);grid-template-rows:var(--topo) minmax(0,1fr);background:var(--bg)}
.atd-top{grid-column:1/-1;display:flex;align-items:center;gap:16px;padding-right:16px;background:var(--surface);border-bottom:1px solid var(--border);min-width:0}
.atd-brand{width:var(--rail);height:100%;display:grid;place-items:center;flex:none;color:var(--text)}
.atd-brand svg{width:52px;height:auto;fill:currentColor;display:block}
.atd-name{display:flex;align-items:center;gap:12px;min-width:0;padding-left:4px}
.atd-name b{font-size:15.5px;font-weight:700;letter-spacing:-.01em;white-space:nowrap}
.atd-name .sep{width:1px;height:22px;background:var(--border)}
.atd-busca{flex:1;max-width:460px;margin:0 auto;display:flex;align-items:center;gap:10px;height:38px;padding:0 14px;border-radius:100px;background:var(--surface-2);color:var(--faint);min-width:0}
.atd-busca .ic{width:16px;height:16px;flex:none}
.atd-busca input{flex:1;min-width:0;border:0;background:none;outline:0;font:inherit;font-size:13px;color:var(--text)}
.atd-busca input::placeholder{color:var(--faint)}
.atd-tr{display:flex;align-items:center;gap:6px;flex:none}
.atd-me{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 12px;border-radius:100px;border:1px solid var(--border);font-size:12.5px;font-weight:600;color:var(--text);background:var(--surface)}
.atd-user{display:flex;align-items:center;gap:10px;padding-left:6px}
.atd-user .tx{display:grid;line-height:1.2}
.atd-user b{font-size:12.5px;font-weight:600}
.atd-user small{font-size:11px;color:var(--muted)}

.atd-rail{display:flex;flex-direction:column;align-items:center;gap:2px;padding:14px 0 12px;background:var(--surface);border-right:1px solid var(--border)}
.atd-rail button{width:64px;display:grid;justify-items:center;gap:5px;padding:7px 0;border-radius:14px;color:var(--muted);font-size:10.5px;font-weight:600;position:relative}
.atd-rail .tile{width:44px;height:32px;border-radius:100px;display:grid;place-items:center;transition:background-color .15s}
.atd-rail .tile .ic{width:20px;height:20px}
.atd-rail button:hover{color:var(--text)}
.atd-rail button:hover .tile{background:var(--surface-2)}
.atd-rail button.on{color:var(--text)}
.atd-rail button.on .tile{background:var(--ink);color:var(--mint)}
.atd-rail .bd{position:absolute;top:3px;right:6px;min-width:18px;height:18px;padding:0 5px;border-radius:100px;background:var(--accent);color:var(--on-accent);font-size:10px;font-weight:700;display:grid;place-items:center;box-shadow:0 0 0 2px var(--surface)}
.atd-rail .fim{margin-top:auto}

.atd-main{min-width:0;min-height:0;position:relative}
.atd-view{display:none;height:100%;min-height:0}
.atd-view.on{display:block}
.atd-pg{height:100%}
.atd-in{max-width:1320px;margin:0 auto;padding:26px 32px 48px;display:grid;gap:20px}
.atd-ph{display:flex;align-items:flex-end;gap:12px 16px;flex-wrap:wrap}
.atd-ph .tt{flex:1;min-width:220px}
.atd-ph h1{margin:0;font-size:22px;font-weight:700;letter-spacing:-.015em}
.atd-ph p{margin:3px 0 0;font-size:13px;color:var(--muted)}

/* ---------- controles ---------- */
.atd-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:36px;padding:0 16px;border-radius:100px;font-size:12.5px;font-weight:600;border:1px solid var(--border)!important;background:var(--surface)!important;color:var(--text);white-space:nowrap;text-decoration:none}
.atd-btn:hover{background:var(--surface-2)!important}
.atd-btn .ic{width:15px;height:15px}
.atd-btn.p{background:var(--ink)!important;border-color:var(--ink)!important;color:var(--on-ink)}
.atd-btn.p:hover{background:var(--ink-2)!important}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .atd-btn.p{background:var(--mint)!important;border-color:var(--mint)!important;color:#0b0d0f}}
:root[data-theme="dark"] .atd-btn.p{background:var(--mint)!important;border-color:var(--mint)!important;color:#0b0d0f}
.atd-btn.sm{height:30px;padding:0 12px;font-size:12px}
.atd-btn.lk{border-color:transparent!important;background:none!important;color:var(--accent-deep);padding:0 8px}
.atd-btn.lk:hover{background:var(--accent-sub)!important}
.atd-btn.dg{color:var(--danger)}
.atd-btn[disabled]{opacity:.45;cursor:not-allowed}
.atd-ib{width:36px;height:36px;border-radius:100px;display:grid;place-items:center;color:var(--muted);flex:none;position:relative}
.atd-ib:hover{background:var(--surface-2)!important;color:var(--text)}
.atd-ib[disabled]{opacity:.4;cursor:not-allowed}
.atd-ib .ic{width:18px;height:18px}
.atd-seg{display:inline-flex;background:var(--surface-2);border-radius:100px;padding:3px;gap:2px}
.atd-seg button{padding:6px 13px;border-radius:100px;font-size:12.5px;font-weight:500;color:var(--muted);display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}
.atd-seg button.on{background:var(--surface)!important;color:var(--text);font-weight:600;box-shadow:0 1px 2px rgba(16,18,20,.1)}
.atd-seg i{font-style:normal;font-size:10.5px;color:var(--faint);font-variant-numeric:tabular-nums}
.atd-seg.full{display:grid;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column}
.atd-seg.full button{padding:6px 4px}
.atd-st{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;color:var(--muted);white-space:nowrap}
.atd-st::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}
.atd-st.ok{color:var(--ok)}.atd-st.wn{color:var(--warn)}.atd-st.dg{color:var(--danger)}.atd-st.cd{color:var(--cold)}
.atd-sw{width:36px;height:20px;border-radius:100px;background:var(--n3)!important;position:relative;flex:none;padding:0}
.atd-sw::after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.2);transition:transform .15s}
.atd-sw[aria-checked="true"]{background:var(--accent)!important}
.atd-sw[aria-checked="true"]::after{transform:translateX(16px)}
.atd-meter{display:block;height:6px;border-radius:100px;background:var(--surface-2);overflow:hidden}
.atd-meter i{display:block;height:100%;border-radius:100px;background:var(--ok)}
.atd-meter.wn i{background:var(--warn)}.atd-meter.dg i{background:var(--danger)}
.atd-kbd{font-family:ui-monospace,Consolas,monospace;font-size:10.5px;border:1px solid var(--border);border-bottom-width:2px;border-radius:5px;padding:0 5px;color:var(--muted);background:var(--surface);line-height:1.6}
.atd-mono{font-family:ui-monospace,Consolas,monospace;font-size:12.5px}
.atd-ring{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--muted);white-space:nowrap}
.atd-ring svg{width:20px;height:20px;transform:rotate(-90deg);flex:none}
.atd-ring circle{fill:none;stroke-width:2.6}
.atd-ring .bg{stroke:var(--surface-2)}
.atd-ring .fg{stroke:var(--accent);stroke-linecap:round}
.atd-ring.fechada .fg{stroke:var(--n3)}
.atd-ring b{color:var(--text);font-weight:600;font-variant-numeric:tabular-nums}

/* campos de formulário (ajustes, conexão, diálogos) */
.atd-inp{width:100%;height:38px;border:1px solid var(--border);border-radius:10px;padding:0 12px;font:inherit;font-size:13px;background:var(--surface);color:var(--text)}
textarea.atd-inp{height:auto;min-height:84px;padding:9px 12px;resize:vertical;line-height:1.5}
select.atd-inp{padding-right:30px}
.atd-inp:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-sub)}
.atd-lbl{display:grid;gap:6px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;font-weight:600;color:var(--muted)}
.atd-lbl small{text-transform:none;letter-spacing:0;font-weight:400;font-size:11.5px;color:var(--faint)}
.atd-form{display:grid;gap:14px}
.atd-form .acoes{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}
.atd-det>summary{list-style:none;cursor:pointer;width:max-content}
.atd-det>summary::-webkit-details-marker{display:none}
.atd-det[open]>summary{margin-bottom:14px}
.atd-erro{font-size:12.5px;color:var(--danger);font-weight:600}
.atd-ok{font-size:12.5px;color:var(--ok);font-weight:600}

/* avatar */
.atd-av{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-weight:600;font-size:13px;background:var(--t4);color:var(--accent-deep);position:relative;flex:none}
.atd-av.nv{background:var(--surface-2);color:var(--muted)}
.atd-av.lg{width:60px;height:60px;font-size:18px}
.atd-av.sm{width:30px;height:30px;font-size:11px}
.atd-av .src{position:absolute;right:-3px;bottom:-3px;width:18px;height:18px;border-radius:50%;background:var(--surface);display:grid;place-items:center;color:var(--accent);box-shadow:0 0 0 2px var(--surface)}
.atd-av .src .ic{width:11px;height:11px}

/* ---------- CONVERSAS: três painéis de ponta a ponta ---------- */
.atd-view.on.atd-cv{display:grid;grid-template-columns:330px minmax(0,1fr) 312px;position:relative}
.atd-view.on.atd-cv.ficha-off,.atd-view.on.atd-cv.sem-ficha{grid-template-columns:330px minmax(0,1fr)}
.atd-cv.ficha-off .atd-side,.atd-cv.sem-ficha .atd-side{display:none!important}
.atd-col{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--surface)}
.atd-col+.atd-col{border-left:1px solid var(--border)}
.atd-lh{padding:18px 16px 12px;display:grid;gap:12px}
.atd-lh .t{display:flex;align-items:center;gap:2px}
.atd-lh .t b{font-size:16px;font-weight:700;flex:1}
.atd-list{flex:1;padding:0 8px 14px}
.atd-gl{padding:14px 10px 6px;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;font-weight:600;color:var(--faint);display:flex;justify-content:space-between}
.atd-conv{display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px;padding:10px;border-radius:14px;width:100%;text-align:left;align-items:start}
.atd-conv:hover{background:var(--surface-2)!important}
.atd-conv.on{background:var(--accent-sub)!important;box-shadow:inset 0 0 0 1px var(--accent-soft)}
/* `minmax(0,1fr)` e não a coluna automática: sem ele a grade cresce até o texto
   inteiro (nowrap) e a lista ganha rolagem lateral em vez das reticências */
.atd-conv .tx{min-width:0;display:grid;grid-template-columns:minmax(0,1fr);gap:2px}
.atd-conv .l1{display:flex;align-items:baseline;gap:8px}
.atd-conv .l1 b{flex:1;min-width:0;font-weight:600;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.atd-conv .l1 small{font-size:11px;color:var(--faint);font-variant-numeric:tabular-nums}
.atd-conv .l2{display:flex;align-items:center;gap:8px}
.atd-conv .l2>span:first-child{flex:1;min-width:0;font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.atd-conv.nova .l2>span:first-child{color:var(--text);font-weight:500}
.atd-conv .l3{margin-top:4px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.atd-badge{min-width:18px;height:18px;padding:0 5px;border-radius:100px;background:var(--accent);color:var(--on-accent);font-size:10.5px;font-weight:700;display:grid;place-items:center;font-variant-numeric:tabular-nums}

.atd-th .atd-tb{display:flex;align-items:center;gap:12px;padding:0 16px 0 20px;height:68px;border-bottom:1px solid var(--border);flex:none}
.atd-tb .volta{display:none}
.atd-tb .q{flex:1;min-width:0;display:grid;grid-template-columns:minmax(0,1fr);gap:2px}
.atd-tb .q b{font-size:15px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.atd-tb .q>span{display:flex;gap:10px;align-items:center;font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden}
.atd-tb .ac{display:flex;align-items:center;gap:4px;flex:none}
.atd-tb .ac .atd-ring{margin-right:10px}
.atd-msgs{flex:1;background:var(--bg)}
.atd-msgs-in{max-width:760px;margin:0 auto;padding:12px 28px 24px;display:flex;flex-direction:column;gap:4px}
.atd-day{display:flex;align-items:center;gap:12px;margin:14px 0 10px;font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
.atd-day::before,.atd-day::after{content:"";flex:1;height:1px;background:var(--border)}
.atd-sys{align-self:center;max-width:460px;display:grid;grid-template-columns:18px 1fr;gap:8px;font-size:12px;line-height:1.5;color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:9px 12px;margin:2px 0 8px}
.atd-sys .ic{width:16px;height:16px;color:var(--accent);margin-top:1px}
.atd-grp{display:flex;flex-direction:column;gap:3px;max-width:min(72%,520px);margin-top:8px}
.atd-grp.in{align-self:flex-start}
.atd-grp.out{align-self:flex-end;align-items:flex-end}
.atd-by{font-size:11px;color:var(--faint);padding:0 6px;display:inline-flex;gap:5px;align-items:center;font-weight:500}
.atd-by .ic{width:12px;height:12px}
.atd-b{padding:8px 12px 7px;border-radius:18px;font-size:13.5px;line-height:1.5;overflow-wrap:anywhere;max-width:100%;white-space:pre-wrap}
.in .atd-b{background:var(--surface);border:1px solid var(--border);border-top-left-radius:6px}
.out .atd-b{background:var(--accent-soft);border-top-right-radius:6px}
.out.eco .atd-b{background:var(--surface);border:1px dashed var(--accent)}
.out.err .atd-b{background:var(--surface);border:1px solid var(--danger)}
.atd-b .m{float:right;display:inline-flex;align-items:center;gap:3px;margin:7px 0 -3px 12px;font-size:10.5px;color:var(--faint);font-variant-numeric:tabular-nums;white-space:nowrap}
.atd-b .m .ic{width:14px;height:14px;stroke-width:2}
.atd-b .m .ic.lida{color:var(--accent)}
.atd-b .apagada{font-style:italic;color:var(--faint)}
.atd-midia{display:block;max-width:250px;border-radius:12px;margin:-2px 0 8px}
.atd-midia.arq{display:inline-flex;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;background:var(--surface-2);color:var(--text);text-decoration:none;font-size:12.5px;font-weight:600;margin:0 0 6px}
audio.atd-midia{width:250px}
.atd-fail{display:inline-flex;gap:6px;align-items:center;font-size:11px;color:var(--danger);font-weight:600;padding:0 6px}
.atd-fail .ic{width:13px;height:13px}
.atd-note{align-self:center;width:min(100%,540px);margin:10px 0 2px;display:grid;grid-template-columns:18px 1fr;gap:8px;background:var(--sand);color:var(--sand-ink);border-radius:12px;padding:9px 12px;font-size:12.5px;line-height:1.5;white-space:pre-wrap}
.atd-note .ic{width:15px;height:15px;margin-top:2px}
.atd-note b{font-weight:600}
.atd-note small{display:block;opacity:.75;font-size:11px}

.atd-cmp{flex:none;border-top:1px solid var(--border);background:var(--surface);padding:12px 20px 12px}
.atd-cmp-in{max-width:760px;margin:0 auto;display:grid;gap:8px}
.atd-box{border:1px solid var(--border);border-radius:18px;display:grid;background:var(--surface)}
.atd-box:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-sub)}
.atd-box.nota{background:color-mix(in srgb,var(--sand) 55%,var(--surface));border-color:color-mix(in srgb,var(--sand-ink) 30%,transparent)}
.atd-box .hd{display:flex;align-items:center;gap:4px;padding:8px 8px 0 10px}
.atd-box .hd .atd-seg{padding:2px}
.atd-box .hd .atd-seg button{padding:4px 11px;font-size:12px}
.atd-box textarea{border:0;outline:0;resize:none;background:none;padding:8px 14px 6px;min-height:46px;max-height:180px;font:inherit;font-size:13.5px;color:var(--text);line-height:1.5}
.atd-box .tools{display:flex;align-items:center;gap:2px;padding:2px 6px 6px 6px}
/* o espaçador é `.vao`, nunca `.sp`: no style.css `.sp` é o spinner (borda que gira) */
.atd-box .tools .vao{flex:1}
.atd-box .tools .atd-ib{width:32px;height:32px}
.atd-hint{display:flex;justify-content:space-between;gap:6px 16px;flex-wrap:wrap;font-size:11px;color:var(--faint);padding:0 6px}
.atd-hint .wn{color:var(--warn);font-weight:600}
.atd-lock{border:1px solid var(--border);border-radius:16px;padding:10px 14px;display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;background:var(--surface-2)}
.atd-lock .h{flex:1 1 260px}
.atd-lock .h{display:grid;grid-template-columns:20px 1fr;gap:8px;font-size:12.5px;color:var(--muted)}
.atd-lock .h b{color:var(--text);font-weight:600;display:block}
.atd-lock .h .ic{width:17px;height:17px;margin-top:1px}
.atd-prontas{display:grid;gap:4px;max-height:200px;padding:4px}
.atd-prontas button{display:grid;gap:1px;text-align:left;padding:7px 10px;border-radius:10px}
.atd-prontas button:hover,.atd-prontas button.on{background:var(--surface-2)!important}
.atd-prontas b{font-family:ui-monospace,Consolas,monospace;font-size:12px}
.atd-prontas small{font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ficha da cliente */
.atd-side .atd-seg{margin:14px 16px 0}
.atd-sidebody{flex:1;padding:0 0 12px}
.atd-prof{padding:18px 18px 14px;display:grid;justify-items:center;text-align:center;gap:4px}
.atd-prof b{font-size:15.5px;font-weight:700;margin-top:6px;overflow-wrap:anywhere}
.atd-prof small{font-size:12px;color:var(--muted)}
.atd-sec{padding:12px 18px 14px;display:grid;gap:10px}
.atd-sec+.atd-sec{border-top:1px solid var(--border)}
.atd-sec h5{margin:0;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--faint);font-weight:600;display:flex;justify-content:space-between;align-items:center}
.atd-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.atd-tiles>div{background:var(--surface-2);border-radius:12px;padding:9px 11px;display:grid;gap:1px;min-width:0}
.atd-tiles span{font-size:11px;color:var(--muted)}
.atd-tiles b{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}
.atd-tl{display:grid}
.atd-tl>div{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;padding:0 0 14px;position:relative}
.atd-tl>div::before{content:"";position:absolute;left:10px;top:22px;bottom:0;width:1.5px;background:var(--border)}
.atd-tl>div:last-child::before{display:none}
.atd-tl i{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--surface-2);color:var(--accent)}
.atd-tl i .ic{width:12px;height:12px}
.atd-tl b{font-size:12.5px;font-weight:600;display:block}
.atd-tl small{font-size:11.5px;color:var(--muted)}
.atd-sug{display:grid;gap:10px;padding:12px;border-radius:14px;background:var(--accent-sub);border:1px solid var(--accent-soft);text-align:left}
.atd-sug .pp{display:flex;gap:10px;align-items:center}
.atd-sug b{font-weight:600;font-size:13px;display:block}
.atd-sug small{color:var(--muted);font-size:11.5px;line-height:1.45;display:block}
.atd-sug .bt{display:flex;gap:6px;flex-wrap:wrap}
.atd-sidefoot{flex:none;display:grid;grid-template-columns:1fr;gap:8px;padding:12px 16px;border-top:1px solid var(--border)}
.atd-empty{margin:auto;display:grid;justify-items:center;gap:8px;text-align:center;max-width:340px;color:var(--muted);font-size:12.5px;padding:28px}
.atd-empty>i{width:56px;height:56px;border-radius:50%;background:var(--accent-sub);color:var(--accent);display:grid;place-items:center;margin-bottom:4px}
.atd-empty>i .ic{width:24px;height:24px}
.atd-empty b{color:var(--text);font-size:14.5px;font-weight:600}

/* ---------- cartões e faixas ---------- */
.atd-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--border);border-radius:16px;overflow:hidden;box-shadow:var(--sh)}
.atd-kpis>div{background:var(--surface);padding:16px 20px 18px;display:grid;gap:3px;align-content:start;min-width:0}
.atd-kpis span{font-size:12px;color:var(--muted);font-weight:500;display:flex;align-items:center;gap:6px}
.atd-kpis b{font-size:26px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.2}
.atd-kpis small{font-size:12px;color:var(--muted)}
.atd-card{background:var(--surface);border-radius:16px;box-shadow:var(--sh);display:grid;align-content:start;min-width:0;overflow:hidden}
.atd-ch{display:flex;align-items:center;gap:10px 14px;padding:16px 20px;flex-wrap:wrap}
.atd-ch+*{border-top:1px solid var(--border)}
.atd-ch .tt{flex:1;min-width:160px}
.atd-ch h3{margin:0;font-size:15px;font-weight:600;display:flex;align-items:center;gap:8px}
.atd-ch p{margin:2px 0 0;font-size:12px;color:var(--muted)}
.atd-cb{padding:16px 20px 18px;display:grid;gap:14px;min-width:0}
.atd-rows>*{padding:12px 20px;border-top:1px solid var(--border)}
.atd-rows>*:first-child{border-top:0}
.atd-note2{margin:0;font-size:12px;color:var(--muted);line-height:1.5}
.atd-tbl{overflow-x:auto}
.atd-tbl table{border-collapse:collapse;width:100%;font-size:12.5px}
.atd-tbl th{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600;text-align:left;background:var(--surface-2);padding:9px 14px;white-space:nowrap}
.atd-tbl td{padding:12px 14px;border-bottom:1px solid var(--border);vertical-align:middle}
.atd-tbl tr:last-child td{border-bottom:0}
.atd-tbl th:first-child,.atd-tbl td:first-child{padding-left:20px}
.atd-tbl th:last-child,.atd-tbl td:last-child{padding-right:20px}

/* ---------- FILA: quadro ao vivo ---------- */
.atd-quadro{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}
.atd-k{display:grid;gap:10px;align-content:start;min-width:0}
.atd-kh{display:flex;align-items:center;gap:8px;padding:0 4px;font-size:12.5px;font-weight:600}
.atd-kh i{font-style:normal;font-size:11px;color:var(--muted);background:var(--surface);border-radius:100px;padding:1px 8px;box-shadow:var(--sh)}
.atd-kc{background:var(--surface);border-radius:14px;box-shadow:var(--sh);padding:12px 14px;display:grid;gap:10px;text-align:left;width:100%}
.atd-kc .h{display:flex;gap:10px;align-items:center}
.atd-kc .h .tx{flex:1;min-width:0;display:grid;grid-template-columns:minmax(0,1fr)}
.atd-kc .h b{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.atd-kc .h small{font-size:11.5px;color:var(--muted)}
.atd-kc p{margin:0;font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.atd-kc .sla{display:grid;gap:5px}
.atd-kc .sla>span:first-child{display:flex;justify-content:space-between;font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.atd-kc .sla b{color:var(--text);font-weight:600}
.atd-kc .sla.wn b{color:var(--warn)}.atd-kc .sla.dg b{color:var(--danger)}

/* ---------- AJUSTES ---------- */
.atd-set{display:grid;grid-template-columns:220px minmax(0,1fr);gap:28px;align-items:start}
.atd-snav{position:sticky;top:0;display:grid;gap:2px}
.atd-snav button{text-align:left;padding:9px 14px;border-radius:100px;font-size:13px;color:var(--muted);font-weight:500;display:flex;align-items:center;gap:10px}
.atd-snav button .ic{width:16px;height:16px}
.atd-snav button:hover{color:var(--text)}
.atd-snav button.on{background:var(--surface)!important;color:var(--text);font-weight:600;box-shadow:var(--sh)}
.atd-snav button.on .ic{color:var(--accent)}
.atd-sets{display:grid;gap:16px;min-width:0}
.atd-sets .atd-card{scroll-margin-top:24px}
.atd-row{display:grid;grid-template-columns:minmax(150px,210px) minmax(0,1fr) auto;gap:16px;align-items:center;font-size:13px}
.atd-row>span:first-child{color:var(--muted)}
.atd-row>span:first-child small{display:block;font-size:11.5px;color:var(--faint)}
.atd-row>b{font-weight:600;min-width:0;overflow-wrap:anywhere}
.atd-row>b small{display:block;font-weight:400;color:var(--muted);font-size:12px}
.atd-call{display:grid;grid-template-columns:20px 1fr;gap:10px;padding:12px 14px;border-radius:12px;background:var(--warn-bg);font-size:12.5px;line-height:1.5}
.atd-call .ic{width:17px;height:17px;color:var(--warn);margin-top:1px}
.atd-call b{font-weight:600}
.atd-rules{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.atd-rules li{display:grid;grid-template-columns:20px 1fr;gap:10px;font-size:13px;align-items:start}
.atd-rules i{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--accent-sub);color:var(--accent)}
.atd-rules i .ic{width:12px;height:12px;stroke-width:2.4}
.atd-faixas{display:grid;gap:8px}
.atd-faixa{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr) 36px;gap:8px;align-items:center}
.atd-membros{display:flex;flex-wrap:wrap;gap:6px}
.atd-membros label{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:100px;background:var(--surface-2);font-size:12.5px;cursor:pointer}
.atd-membros input{accent-color:var(--accent)}

/* ---------- diálogo e aviso ---------- */
.atd-dlg-fundo{position:fixed;inset:0;z-index:40;background:rgba(16,18,20,.38);display:grid;place-items:center;padding:16px}
.atd-dlg{width:min(100%,460px);max-height:calc(100% - 32px);overflow:auto;background:var(--surface);border-radius:20px;box-shadow:var(--sh);padding:22px 22px 18px;display:grid;gap:14px}
.atd-dlg h2{margin:0;font-size:17px;font-weight:700}
.atd-dlg p{margin:0;font-size:13px;color:var(--muted)}
.atd-opcs{display:grid;gap:6px}
/* o diálogo mora FORA do #app: o botão leva a própria base, senão herda o fundo do style.css */
.atd-dlg button{font:inherit;color:inherit;cursor:pointer}
.atd-opc{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;align-items:center;padding:10px 12px;border-radius:12px;border:1px solid var(--border)!important;background:var(--surface)!important;text-align:left;width:100%}
.atd-opc:hover{background:var(--surface-2)!important}
.atd-opc .rd{width:16px;height:16px;border-radius:50%;border:1.5px solid var(--n2);box-sizing:border-box}
.atd-opc.on{border-color:var(--accent)!important;box-shadow:0 0 0 3px var(--accent-sub)}
.atd-opc.on .rd{border:5px solid var(--accent)}
.atd-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:50;max-width:min(92vw,520px);background:var(--ink);color:var(--on-ink);border-radius:14px;padding:10px 16px;font-size:13px;box-shadow:var(--sh)}
.atd-toast.dg{background:var(--danger);color:#fff}

/* ---------- responsivo ---------- */
@media (max-width:1240px){
  .atd-view.on.atd-cv,.atd-view.on.atd-cv.ficha-off,.atd-view.on.atd-cv.sem-ficha{grid-template-columns:310px minmax(0,1fr)}
  .atd-cv .atd-side{display:none}
  .atd-cv.ficha-on .atd-side:not([hidden]){display:flex;position:absolute;top:0;right:0;bottom:0;width:320px;max-width:100%;z-index:4;box-shadow:-18px 0 36px rgba(16,18,20,.16)}
}
@media (max-width:1060px){
  .atd-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .atd-set{grid-template-columns:minmax(0,1fr)}
  .atd-snav{position:static;display:flex;flex-wrap:wrap}
  .atd-quadro{grid-template-columns:minmax(0,1fr)}
  .atd-busca{display:none}
}
@media (max-width:760px){
  :root{--rail:0px}
  html.central body{overflow:auto}
  .atd-app{grid-template-columns:minmax(0,1fr);grid-template-rows:56px minmax(0,1fr) 64px}
  .atd-brand{width:64px}
  .atd-name .sep,.atd-name .atd-st,.atd-me .tx,.atd-user .tx,.atd-tr .sistema span{display:none}
  .atd-rail{grid-row:3;flex-direction:row;justify-content:space-around;padding:4px 6px;border-right:0;border-top:1px solid var(--border)}
  .atd-rail .fim{margin-top:0}
  .atd-rail button{width:auto;flex:1}
  .atd-rail .bd{right:auto;left:calc(50% + 8px)}
  .atd-view.on.atd-cv,.atd-view.on.atd-cv.ficha-off,.atd-view.on.atd-cv.sem-ficha{grid-template-columns:minmax(0,1fr)}
  .atd-cv .atd-th{display:none}
  .atd-cv.aberta .atd-th{display:flex}
  .atd-cv.aberta>.atd-col:first-child{display:none}
  .atd-tb .volta{display:grid}
  .atd-tb .ac .atd-ring,.atd-tb .ac .so-largo{display:none}
  .atd-msgs-in{padding:10px 14px 18px}
  .atd-grp{max-width:86%}
  .atd-cmp{padding:10px 12px}
  .atd-in{padding:18px 16px 32px}
  .atd-row{grid-template-columns:minmax(0,1fr);gap:4px}
  .atd-faixa{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) 36px}
  .atd-kpis b{font-size:22px}
}
@media (prefers-reduced-motion:no-preference){.atd-btn,.atd-ib,.atd-conv,.atd-seg button{transition:background-color .15s,color .15s,box-shadow .15s}}
