/* ============================================================
   Tema claro/escuro do app + efeitos do menu lateral
   O modo claro é o padrão do shell; o escuro remapeia os tokens.
   O painel e a caixa de entrada nasceram escuros; aqui ganham a versão clara.
   ============================================================ */

/* ---------- tokens do modo escuro ---------- */
:root[data-theme="dark"]{
  --ink:#eaf4ef;--body:#adc6c0;--muted:#8fb0a9;--muted-2:#6d8e87;--line:rgba(255,255,255,.09);--line-soft:rgba(255,255,255,.06);
  --bg:#0a1e1b;--white:#102925;--green-soft:rgba(200,246,83,.14);--green-tint:rgba(200,246,83,.08);
  --danger-soft:rgba(226,87,74,.16);--warn-soft:rgba(200,133,15,.16);
  --shadow-xs:0 1px 2px rgba(0,0,0,.3);--shadow-sm:0 4px 14px rgba(0,0,0,.3);--shadow-md:0 10px 28px rgba(0,0,0,.4);
  --shadow-lg:0 24px 56px rgba(0,0,0,.55);--shadow-card:0 2px 6px rgba(0,0,0,.3);--shadow-card-hover:0 8px 22px rgba(0,0,0,.45);
  --glow:0 0 0 4px rgba(200,246,83,.16);
  color-scheme:dark;
}
:root[data-theme="light"]{color-scheme:light}
.theme-switching,.theme-switching *{transition:background-color .35s ease,color .35s ease,border-color .35s ease,box-shadow .35s ease !important}

/* ---------- shell no escuro: o que tinha branco fixo ---------- */
[data-theme="dark"] body{background:#0a1e1b}
[data-theme="dark"] .sidebar{background:#0c1f1c;border-color:var(--line)}
[data-theme="dark"] .main-topbar{background:rgba(12,31,28,.85);backdrop-filter:blur(10px);border-color:var(--line)}
[data-theme="dark"] .brand{color:#fff}
[data-theme="dark"] .nav-item{color:var(--muted)}
[data-theme="dark"] .nav-item:hover{color:#fff;background:rgba(255,255,255,.05)}
[data-theme="dark"] .nav-item.active{color:var(--green-bright);background:rgba(200,246,83,.12)}
[data-theme="dark"] .company-switch{background:rgba(255,255,255,.04)}
[data-theme="dark"] .company-switch:hover{border-color:rgba(200,246,83,.4)}
[data-theme="dark"] .company-logo{background:rgba(200,246,83,.16);color:var(--green-bright)}
[data-theme="dark"] .company-logo.add{background:rgba(255,255,255,.06);color:var(--muted)}
[data-theme="dark"] :is(.company-menu button,.profile-menu button):hover{background:rgba(255,255,255,.06)}
[data-theme="dark"] .profile-role-badge{background:rgba(200,246,83,.16);color:var(--green-bright)}
[data-theme="dark"] :is(.icon-btn,.filter-btn,.secondary,.btn.secondary,.stat,.card,.team-card,.role-select,.table,.modal,.agent-card,.agent-editor-top,.agent-editor-nav,.agent-editor-content,.agent-toggle-pair button,.agent-choice-group button,.agent-choice-card,.agent-switch-row,.agent-chip,.feature-list,.connection-delete,.connections-empty,.qr-image,.resolve){background:var(--white);color:var(--ink);border-color:var(--line)}
[data-theme="dark"] .secondary:hover:not(:disabled),[data-theme="dark"] .btn.secondary:hover:not(:disabled){background:var(--green-tint);color:var(--green-bright);border-color:rgba(200,246,83,.45)}
[data-theme="dark"] .table th{background:rgba(255,255,255,.03);color:var(--muted)}
[data-theme="dark"] .table tbody tr:hover td{background:var(--green-tint)}
[data-theme="dark"] :is(.field input,.field select,.field textarea){background:rgba(255,255,255,.05);border-color:var(--line);color:var(--ink)}
[data-theme="dark"] :is(.field input,.field textarea)::placeholder{color:var(--muted-2)}
[data-theme="dark"] .field select option{background:#0f2421;color:var(--ink)}
[data-theme="dark"] .modal-backdrop{background:rgba(0,0,0,.65)}
[data-theme="dark"] .sheet-icon{background:rgba(200,246,83,.16);color:var(--green-bright)}
[data-theme="dark"] .sheet-close{color:var(--muted)}
[data-theme="dark"] .status{background:rgba(200,246,83,.14);color:var(--green-bright)}
[data-theme="dark"] .tag{background:rgba(242,138,81,.16);color:#ffb98a}
[data-theme="dark"] .tag.green{background:rgba(200,246,83,.14);color:var(--green-bright)}
[data-theme="dark"] .stat small{color:var(--green-bright)}
[data-theme="dark"] .picker-row:hover{background:rgba(255,255,255,.06)}
[data-theme="dark"] .picker-row.active{color:var(--green-bright)}
[data-theme="dark"] .details-tabs button.active{color:var(--green-bright)}
[data-theme="dark"] .generic-head-eyebrow,[data-theme="dark"] .client-settings-head>div>span{color:var(--green-bright)}
[data-theme="dark"] .connections-empty>span{background:rgba(200,246,83,.14);color:var(--green-bright)}
[data-theme="dark"] .avatar{box-shadow:0 2px 8px rgba(0,0,0,.4)}
[data-theme="dark"] ::selection{background:rgba(200,246,83,.35);color:#fff}

/* ---------- botão de alternar tema ---------- */
.theme-toggle{position:relative;width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:var(--white);color:var(--muted);cursor:pointer;display:grid;place-items:center;overflow:hidden;transition:transform .2s,border-color .2s,color .2s,box-shadow .2s}
.theme-toggle:hover{transform:translateY(-1px) rotate(-12deg);border-color:var(--green);color:var(--green-dark);box-shadow:var(--glow)}
[data-theme="dark"] .theme-toggle:hover{color:var(--green-bright)}
.theme-toggle:focus-visible{outline:2px solid var(--green);outline-offset:2px}
.theme-toggle svg{position:absolute;width:18px;height:18px;transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .3s}
.theme-toggle .sun{opacity:0;transform:translateY(14px) rotate(90deg)}
.theme-toggle .moon{opacity:1;transform:none}
[data-theme="dark"] .theme-toggle .sun{opacity:1;transform:none}
[data-theme="dark"] .theme-toggle .moon{opacity:0;transform:translateY(-14px) rotate(-90deg)}
.inbox-topbar .theme-toggle{background:rgba(255,255,255,.05);border-color:var(--ib-line);color:var(--ib-muted)}
[data-theme="light"] .inbox-topbar .theme-toggle{background:#fff}

/* ---------- efeitos do menu lateral ---------- */
.sidebar nav{position:relative}
.nav-indicator{position:absolute;left:0;top:0;width:3px;height:0;border-radius:3px;background:var(--brand-gradient);opacity:0;pointer-events:none;z-index:1}
.nav-indicator.show{opacity:1}
.nav-item{position:relative}
.nav-item.active{box-shadow:none}
.sidebar .brand-mark{transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.sidebar .brand:hover .brand-mark{transform:rotate(-10deg) scale(1.1);box-shadow:0 10px 26px rgba(47,138,124,.55),inset 0 1px 0 rgba(255,255,255,.25)}
.sidebar .brand-dot{display:inline-block;animation:dot-bounce 3s ease-in-out infinite}
.company-switch{position:relative;overflow:hidden}
.company-switch::after{content:'';position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(110deg,transparent,rgba(200,246,83,.18),transparent);transform:skewX(-20deg);transition:left .6s ease}
.company-switch:hover::after{left:130%}
.main-topbar .icon-btn{transition:transform .2s,color .2s}
.main-topbar .icon-btn:hover{transform:translateY(-1px) rotate(-8deg)}
.main-topbar .icon-btn.notification i{animation:badge-pulse 2.6s ease-in-out infinite}
@keyframes badge-pulse{0%,100%{box-shadow:0 2px 6px rgba(39,112,101,.32)}50%{box-shadow:0 2px 6px rgba(39,112,101,.32),0 0 0 5px rgba(200,246,83,.14)}}
@keyframes dot-bounce{0%,80%,100%{transform:translateY(0)}90%{transform:translateY(-4px)}}

/* ---------- painel no modo claro ---------- */
[data-theme="light"] .dash{--dash-ink:#131a19;--dash-muted:#6f7b74;--dash-line:rgba(19,26,25,.08);color:var(--dash-ink);background:radial-gradient(900px 500px at 85% -10%,rgba(39,112,101,.08),transparent 60%),radial-gradient(600px 400px at 0% 100%,rgba(47,138,124,.10),transparent 60%),linear-gradient(160deg,#f6f8f8,#eef3f2)}
[data-theme="light"] .dash::before{background-image:radial-gradient(rgba(19,26,25,.10) 1px,transparent 1.4px)}
[data-theme="light"] .dash :is(h1,h2,h3,.dash-kpi-value,.dash-row-main strong,.dash-cell strong,.dash-op strong,.dash-empty h3,.dash-hero-copy p strong,.dash-kpi){color:var(--ink)}
[data-theme="light"] .dash-hero-copy h1 em{color:var(--green-dark);text-shadow:none}
[data-theme="light"] .dash-hero-copy p,[data-theme="light"] .dash-kpi small{color:#5f6d66}
[data-theme="light"] :is(.dash-kpi,.dash-card,.dash-op,.dash-row,.dash-connection){background:#fff;border-color:rgba(19,26,25,.08);box-shadow:0 2px 6px rgba(13,31,28,.05);color:var(--ink)}
[data-theme="light"] .dash-card{box-shadow:0 12px 32px rgba(13,31,28,.08)}
[data-theme="light"] :is(.dash-kpi:hover,.dash-op:hover,.dash-row:hover){background:var(--green-tint);border-color:rgba(39,112,101,.35);box-shadow:0 12px 28px rgba(13,31,28,.10)}
[data-theme="light"] .dash-kpi::after{background:radial-gradient(220px circle at 100% 0%,rgba(39,112,101,.08),transparent 70%)}
[data-theme="light"] :is(.dash-kpi-icon,.dash-empty>span){background:var(--green-soft);color:var(--green-dark)}
[data-theme="light"] .dash-op>svg{color:var(--green-dark)}
[data-theme="light"] .dash-ghost{background:#fff;border-color:rgba(19,26,25,.12);color:var(--ink)}
[data-theme="light"] .dash-ghost:hover{background:var(--green-tint);border-color:rgba(39,112,101,.4)}
[data-theme="light"] .dash-badge{background:var(--green-soft);color:var(--green-dark);border-color:#c9ddd5}
[data-theme="light"] .dash-badge i{background:var(--green)}
[data-theme="light"] .dash-link,[data-theme="light"] .dash-pill{color:var(--green-dark)}
[data-theme="light"] .dash-pill{background:var(--green-soft);border-color:#c9ddd5}
[data-theme="light"] .dash-status{background:#f1f4f4;border-color:rgba(19,26,25,.08);color:#5f6d66}
[data-theme="light"] .dash-status.open{background:#fff0e7;color:#c56b36;border-color:#f6d8c6}
[data-theme="light"] .dash-status.assigned{background:#ebe9ff;color:#5b4fc4;border-color:#d7d2ff}
[data-theme="light"] .dash-status.done{background:var(--green-soft);color:var(--green-dark);border-color:#c9ddd5}
[data-theme="light"] .dash-search{background:#fff;border-color:rgba(19,26,25,.12);color:var(--muted)}
[data-theme="light"] .dash-search input{color:var(--ink)}
[data-theme="light"] .dash-search input::placeholder{color:#a3aea7}
[data-theme="light"] .dash-table td{color:var(--ink);border-color:rgba(19,26,25,.06)}
[data-theme="light"] .dash-table tbody tr:hover td{background:var(--green-tint)}
[data-theme="light"] .dash-bar-value{fill:var(--ink)}
[data-theme="light"] .dash-chart .dash-grid{stroke:rgba(19,26,25,.08)}
[data-theme="light"] .dash-dot.on{box-shadow:0 0 0 4px rgba(39,112,101,.12)}


@media(prefers-reduced-motion:reduce){.nav-item,.badge:not(.hidden),.sidebar .brand-dot,.main-topbar .icon-btn.notification i{animation:none}.nav-indicator,.theme-toggle svg,.nav-item svg{transition:none}}

/* ---------- gerado: tudo que tinha fundo branco fixo vira painel escuro ---------- */
[data-theme="dark"] :is(.icon-btn,.filter-btn,.icon-circle,.secondary,.btn.secondary,.btn.danger,.resolve,.stat,.card,.team-card,.team-card-delete,.team-manage-toggle,.role-select,.table,.modal,.modal-backdrop.sheet .modal-actions,.agent-card,.agent-card-menu,.agent-editor-top,.agent-editor-nav,.agent-editor-content,.agent-toggle-pair button,.agent-choice-group button,.agent-choice-card,.agent-switch-row,.agent-chip,.settings-back,.settings-catalog>button,.provider-grid>*,.connections-toolbar,.connection-row,.connections-empty,.evolution-tenant-card,.integration-key-saved button,.feature-list,.connection-delete,.admin-input,.admin-dashboard-grid article){background:var(--white);color:var(--ink);border-color:var(--line)}
[data-theme="dark"] .provider-grid h3,[data-theme="dark"] .connection-row h3,[data-theme="dark"] .team-card h3,[data-theme="dark"] .agent-card h3{color:var(--ink)}
[data-theme="dark"] .provider-grid>*>span{background:rgba(255,255,255,.08);color:var(--muted)}
[data-theme="dark"] .provider-grid .provider-ready,[data-theme="dark"] .provider-ready{background:rgba(200,246,83,.16);color:var(--green-bright)}
[data-theme="dark"] .provider-grid b{color:var(--green-bright)}
[data-theme="dark"] .provider-logo.purple{background:rgba(124,108,240,.18);color:#b3a8ff}
[data-theme="dark"] .provider-logo.official{background:rgba(20,101,201,.2);color:#7cc0f5}
[data-theme="dark"] .connection-state{filter:brightness(1.4)}

/* ---------- reset global: o atributo hidden sempre vence, mesmo com display:flex/grid no seletor ---------- */
[hidden]{display:none!important}

/* ---------- Contatos no modo claro (contacts.css nasceu escuro) ---------- */
[data-theme="light"] .dash-contacts{--ct-glass:#fff;--ct-line:rgba(19,26,25,.12)}
[data-theme="light"] .ct-selects select{color:var(--ink);background-color:#fff}
[data-theme="light"] .ct-selects select option{background:#fff;color:var(--ink)}
[data-theme="light"] .ct-chip{color:#5f6d66;background:#fff}
[data-theme="light"] .ct-chip:hover{color:var(--ink);border-color:rgba(19,26,25,.25);background:var(--bg)}
[data-theme="light"] .ct-chip.active{color:var(--green-dark);border-color:rgba(39,112,101,.4);background:var(--green-soft)}
[data-theme="light"] .ct-chip-kind .ct-chip.active{color:#5b4fc4;border-color:#d7d2ff;background:#ebe9ff}
[data-theme="light"] .ct-chip.clear{color:#c56b36}
[data-theme="light"] .ct-sort:hover,[data-theme="light"] .ct-sort.active{color:var(--ink)}
[data-theme="light"] .ct-tag{color:hsl(var(--h) 55% 32%);background:hsl(var(--h) 60% 50% / .14);border-color:hsl(var(--h) 50% 45% / .35)}
[data-theme="light"] .ct-tag button:hover{background:rgba(0,0,0,.08)}
[data-theme="light"] .ct-name .ct-kind{color:#5b4fc4}
[data-theme="light"] .ct-table tbody tr.selected td{background:var(--green-tint)}
[data-theme="light"] .ct-table tbody tr.current td{background:var(--green-soft);box-shadow:inset 3px 0 0 var(--green)}
[data-theme="light"] .ct-table input[type=checkbox]{accent-color:var(--green)}
[data-theme="light"] .ct-tag-editor{border-color:rgba(19,26,25,.14);background:#fff}
[data-theme="light"] .ct-tag-editor input{color:var(--ink)}
[data-theme="light"] .ct-tag-editor input::placeholder{color:#a3aea7}
[data-theme="light"] .ct-panel{color:var(--ink);background:linear-gradient(170deg,#ffffff,#f4f8f7 55%,#eef3f2);border:1px solid rgba(19,26,25,.1);box-shadow:0 30px 80px rgba(13,31,28,.28)}
[data-theme="light"] .ct-panel-backdrop{background:rgba(19,26,25,.35)}
[data-theme="light"] .ct-panel-title h2,[data-theme="light"] .ct-panel h3,[data-theme="light"] .ct-panel strong{color:var(--ink)}
[data-theme="light"] .ct-panel-phone{color:#5f6d66}
[data-theme="light"] .ct-panel-close{border-color:rgba(19,26,25,.12);background:#fff;color:var(--muted)}
[data-theme="light"] .ct-panel-close:hover{color:var(--ink);background:var(--bg)}
[data-theme="light"] .ct-panel .dash-ghost{background:#fff;border-color:rgba(19,26,25,.12);color:var(--ink)}
[data-theme="light"] .ct-panel .dash-ghost.danger{color:#b8443d;border-color:rgba(226,87,74,.35)}
[data-theme="light"] .ct-panel input,[data-theme="light"] .ct-panel textarea,[data-theme="light"] .ct-panel select{color:var(--ink);background:#fff;border-color:rgba(19,26,25,.14)}
[data-theme="light"] .ct-panel input::placeholder,[data-theme="light"] .ct-panel textarea::placeholder{color:#a3aea7}
[data-theme="light"] .ct-bulk{background:rgba(255,255,255,.96);border-color:rgba(39,112,101,.35);box-shadow:0 20px 50px rgba(13,31,28,.18)}
[data-theme="light"] .ct-bulk strong,[data-theme="light"] .ct-bulk button{color:var(--ink)}
[data-theme="light"] .ct-bulk button{background:var(--bg)}
[data-theme="light"] .ct-bulk button:hover{background:var(--green-soft);color:var(--green-dark)}
[data-theme="dark"] .agent-editor-top{background:rgba(12,31,28,.88)}
[data-theme="dark"] :is(.agent-field input,.agent-field textarea){background:rgba(255,255,255,.05);border-color:var(--line);color:var(--ink)}
[data-theme="dark"] .agent-editor-nav button.active,[data-theme="dark"] .agent-choice-card.active,[data-theme="dark"] .agent-choice-group button.active,[data-theme="dark"] .agent-switch-row:hover,[data-theme="dark"] .agent-choice-card:hover,[data-theme="dark"] .agent-choice-group button:hover,[data-theme="dark"] .agent-chip:hover{background:rgba(200,246,83,.1)}
[data-theme="dark"] .agent-editor-nav button strong em{background:rgba(255,255,255,.06);border-color:var(--line)}
[data-theme="dark"] .agent-preview-bubble{background:rgba(200,246,83,.08);border-color:rgba(200,246,83,.2);color:var(--dark-body,#a9c4c0)}
[data-theme="dark"] .agent-choice-check{border-color:var(--line)}
[data-theme="dark"] .agent-save-state.is-saved{color:var(--green-bright)}
[data-theme="dark"] .agent-choice-card.active small{color:var(--dark-body,#a9c4c0)}
