/* Radar de Anuncios: tokens e estilos base (tema claro e escuro, iguais ao mockup) */
:root{
  --bg:#f3f5f8; --surface:#ffffff; --surface2:#eaeef4; --line:#d9dfe8;
  --fg:#17202e; --muted:#5d6b80; --accent:#0f5fd6; --accent-soft:#e3edfc;
  --meta:#1877f2; --google:#e8710a; --good:#12805c; --good-soft:#dff3ea;
  --warn:#a15c00; --warn-soft:#fdf0d5; --bad:#b42318; --bad-soft:#fde4e1;
  --f-display:'Sora',system-ui,sans-serif; --f-body:'IBM Plex Sans',system-ui,sans-serif; --f-mono:'IBM Plex Mono',ui-monospace,monospace;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#0e141d; --surface:#161e2a; --surface2:#1e2837; --line:#2a3647;
  --fg:#e6ebf3; --muted:#93a1b7; --accent:#6aa2ff; --accent-soft:#1a2c4d;
  --meta:#4c9bff; --google:#ff9a3d; --good:#4cc796; --good-soft:#12362b;
  --warn:#f0b24a; --warn-soft:#3a2d12; --bad:#ff7b6e; --bad-soft:#3d1a17; color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#0e141d; --surface:#161e2a; --surface2:#1e2837; --line:#2a3647;
  --fg:#e6ebf3; --muted:#93a1b7; --accent:#6aa2ff; --accent-soft:#1a2c4d;
  --meta:#4c9bff; --google:#ff9a3d; --good:#4cc796; --good-soft:#12362b;
  --warn:#f0b24a; --warn-soft:#3a2d12; --bad:#ff7b6e; --bad-soft:#3d1a17; color-scheme:dark}
:root[data-theme="light"]{color-scheme:light}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);font:14px/1.5 var(--f-body)}
h1,h2,h3{font-family:var(--f-display);margin:0;letter-spacing:-.01em}
.sub{color:var(--muted)}
.erro{background:var(--bad-soft);color:var(--bad);padding:8px 12px;border-radius:6px}
button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* login */
body.login{display:grid;place-items:center;min-height:100vh;padding:16px}
.login-caixa{width:min(380px,100%);background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:24px;display:flex;flex-direction:column;gap:12px}
.login-caixa form{display:flex;flex-direction:column;gap:8px}
.login-caixa label{font-weight:500}
.login-caixa input{padding:9px 10px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--fg);font:inherit}
.login-caixa button{margin-top:8px;padding:10px;border:0;border-radius:6px;background:var(--accent);color:#fff;font:600 14px var(--f-body);cursor:pointer}

/* pagina */
.pagina{max-width:1180px;margin:0 auto;padding:0 max(16px,env(safe-area-inset-left,0px)) 48px}
.topo{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:18px 0 14px}
.marca{display:flex;align-items:center;gap:10px;margin-right:auto}
.marca strong{font:700 18px var(--f-display)}
.sair{display:flex;align-items:center;gap:10px;margin:0}
.botao-leve{background:var(--surface);color:var(--fg);border:1px solid var(--line);border-radius:6px;padding:6px 12px;font:500 13px var(--f-body);cursor:pointer}
.filtros{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:end;margin-bottom:16px}
.campo{display:flex;flex-direction:column;gap:4px;min-width:0}
.campo label{font-size:12px;color:var(--muted)}
select{background:var(--surface);color:var(--fg);border:1px solid var(--line);border-radius:6px;padding:7px 10px;font:inherit;max-width:100%}
.intervalo{margin:0 0 0 auto;font-family:var(--f-mono)}
.aviso{background:var(--warn-soft);color:var(--warn);border:1px solid var(--warn);border-radius:6px;padding:8px 12px;margin:0 0 12px}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(172px,1fr));gap:12px;margin-bottom:16px}
.kpi{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:12px 14px;min-width:0}
.kpi .rotulo{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.kpi .valor{font:500 20px var(--f-mono);white-space:nowrap;font-variant-numeric:tabular-nums;margin-top:4px;overflow-wrap:anywhere}
.kpi .nota{font-size:11px;color:var(--muted)}
.graficos{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-bottom:16px}
.painel{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:16px;min-width:0;margin-bottom:16px}
.graficos .painel{margin-bottom:0}
.painel h3{font-size:15px;margin-bottom:8px}
svg.grafico{display:block;max-width:100%}
svg.grafico text{fill:var(--muted);font:10px var(--f-mono)}
svg.grafico .grade{stroke:var(--line);stroke-width:1}
svg.grafico text.sem-dados{font-size:12px}
.rolagem{overflow-x:auto}
table{border-collapse:collapse;width:100%;min-width:520px}
th{font:500 11.5px var(--f-body);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);text-align:left;padding:8px 10px;border-bottom:1px solid var(--line);white-space:nowrap}
td{padding:9px 10px;border-bottom:1px solid var(--line)}
tr:last-child td{border-bottom:0}
td.n,th.n{text-align:right;white-space:nowrap}
td.nome{max-width:360px;overflow-wrap:anywhere}
.mono{font-family:var(--f-mono);font-variant-numeric:tabular-nums}
.vazio{color:var(--muted);margin:8px 0 0}

/* navegacao e tema */
.menu{display:flex;gap:4px;margin-right:auto}
.menu a{color:var(--muted);text-decoration:none;padding:6px 12px;border-radius:6px;font-weight:500}
.menu a:hover{color:var(--fg);background:var(--surface2)}
.menu a[aria-current="page"]{color:var(--accent);background:var(--accent-soft)}
.marca{margin-right:0}
.login-caixa #tema{align-self:flex-start;margin-top:4px}

/* secoes, comparacao e filtros */
.secao{font-size:16px;margin:8px 0 10px;display:flex;align-items:baseline;gap:8px}
.secao .sub{font:400 13px var(--f-body)}
.kpi .nota{display:flex;gap:6px;flex-wrap:wrap;align-items:center;min-height:16px}
.delta{font:500 11.5px var(--f-mono)}
.delta.bom{color:var(--good)} .delta.ruim{color:var(--bad)} .delta.neutro{color:var(--muted)}
.intervalo{text-align:right}
.comparado{font:400 11.5px var(--f-body)}
.datas .par{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.datas[hidden]{display:none}
input[type="date"],.painel input:not([type="checkbox"]):not([type="hidden"]){background:var(--surface);color:var(--fg);border:1px solid var(--line);border-radius:6px;padding:7px 10px;font:inherit;min-width:0}
.nota-tabela{margin:0 0 8px;font-size:12.5px}

/* administracao */
.ok{background:var(--good-soft);color:var(--good);padding:8px 12px;border-radius:6px;margin:0 0 12px}
.form-linha{display:flex;flex-wrap:wrap;gap:12px;align-items:end}
.botao-primario{padding:8px 16px;border:0;border-radius:6px;background:var(--accent);color:#fff;font:600 14px var(--f-body);cursor:pointer}
.botao-primario:hover{filter:brightness(1.08)}
.tabela-usuarios{min-width:760px}
.tabela-usuarios td{vertical-align:middle}
.tabela-usuarios input:not([type="checkbox"]){width:100%}
.painel input[type="checkbox"]{width:18px;height:18px;accent-color:var(--accent)}

/* pagina Sites */
.abas{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.abas a{padding:7px 14px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--fg);text-decoration:none;font-weight:500}
.abas a[aria-current="page"]{background:var(--accent);border-color:var(--accent);color:#fff}
.migalha{margin:0 0 8px;color:var(--muted)}
.migalha a,td.nome a{color:var(--accent);text-decoration:none}
td.nome a:hover,.migalha a:hover{text-decoration:underline}
.paginacao{display:flex;gap:16px;align-items:center;justify-content:center;margin-top:12px}
.paginacao a{color:var(--accent);text-decoration:none;font-weight:500}
input[type="search"]{background:var(--surface);color:var(--fg);border:1px solid var(--line);border-radius:6px;padding:7px 10px;font:inherit;min-width:0}

/* pagina Campanhas */
.situacao{font-weight:500}
.situacao.bom{color:var(--good)} .situacao.ruim{color:var(--bad)} .situacao.neutro{color:var(--muted)}
.kpi.principal.dentro{border-color:var(--good);background:var(--good-soft)}
.kpi.principal.acima{border-color:var(--bad);background:var(--bad-soft)}
.diagnostico{margin-bottom:16px;opacity:.9}
.diagnostico h3{font-size:15px;margin-bottom:8px}
.diagnostico h3 .sub{font:400 12px var(--f-body);margin-left:6px}
.diagnostico.destaque{opacity:1;border:2px solid var(--bad);border-radius:8px;padding:12px;background:var(--bad-soft)}
.diagnostico .kpis{margin-bottom:0}
.kpi.diag.bom .valor{color:var(--good)}
.kpi.diag.ruim{border-color:var(--bad)} .kpi.diag.ruim .valor{color:var(--bad)}
.painel.bloqueado{border-style:dashed;background:var(--surface2)}
.painel.bloqueado h3 .sub{font:400 12px var(--f-body)}

/* painel de metas (campanhas) */
.painel-metas{padding:12px 16px}
.painel-metas summary{cursor:pointer;font-weight:600;color:var(--fg)}
.painel-metas summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.painel-metas select{background:var(--surface);color:var(--fg);border:1px solid var(--line);border-radius:6px;padding:7px 10px;font:inherit;min-width:0}
.painel-metas .form-linha{margin:12px 0}
.painel-metas h4{margin:16px 0 4px}
.historico-metas{margin:0 0 8px;padding-left:18px;color:var(--muted);font-size:13px}

/* Caixa de leads */
.contador{font:500 12px var(--f-mono);margin-left:4px;padding:0 6px;border-radius:10px;background:var(--surface2);color:var(--muted)}
.abas a[aria-current="page"] .contador{background:var(--accent-soft);color:var(--accent)}
.leads-layout{display:grid;grid-template-columns:minmax(260px,380px) minmax(0,1fr);gap:16px;align-items:start}
.leads-coluna{min-width:0}
.busca-leads{margin-bottom:12px}
.busca-leads .campo{flex:1}
.busca-leads input{width:100%}
.recolhivel{padding:10px 16px}
.recolhivel summary{cursor:pointer;font-weight:600}
.recolhivel[open] summary{margin-bottom:10px}
.form-coluna{display:flex;flex-direction:column;gap:10px}
.form-coluna input:not([type="hidden"]),.form-coluna select,.form-coluna textarea,.form-ficha input,.form-ficha select,.form-ficha textarea{width:100%}
textarea{background:var(--surface);color:var(--fg);border:1px solid var(--line);border-radius:6px;padding:7px 10px;font:inherit;min-width:0;resize:vertical}
.lista-painel{padding:6px}
.lista-leads{list-style:none;margin:0;padding:0}
.item-lead{display:flex;flex-direction:column;gap:2px;padding:10px;border-radius:6px;border-left:4px solid transparent;color:var(--fg);text-decoration:none}
.item-lead:hover{background:var(--surface2)}
.item-lead[aria-current="true"]{background:var(--accent-soft)}
.item-lead.espera-amarelo{border-left-color:var(--warn)}
.item-lead.espera-vermelho{border-left-color:var(--bad)}
.item-topo{display:flex;justify-content:space-between;gap:8px;align-items:baseline}
.item-topo strong{overflow-wrap:anywhere}
.item-meio{font-size:12.5px;overflow-wrap:anywhere}
.selo-espera{font:500 11.5px var(--f-mono);padding:1px 8px;border-radius:10px;white-space:nowrap}
.selo-espera.amarelo{background:var(--warn-soft);color:var(--warn)}
.selo-espera.vermelho{background:var(--bad-soft);color:var(--bad)}
.selo-dup{font:500 11.5px var(--f-body);padding:1px 8px;border-radius:10px;background:var(--warn-soft);color:var(--warn)}
.selo{font:500 12px var(--f-body);padding:2px 10px;border-radius:10px;background:var(--surface2);color:var(--muted)}
.selo.situacao-enviado{background:var(--good-soft);color:var(--good)}
.selo.situacao-aguardando{background:var(--accent-soft);color:var(--accent)}
.ficha-topo{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.ficha-topo h3{font-size:18px;overflow-wrap:anywhere}
.ficha-sub{margin:4px 0 12px}
.ficha-titulo{font:600 14px var(--f-display);margin:18px 0 8px}
.form-ficha{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}
.form-ficha .largo{grid-column:1 / -1}
.acoes{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
.botao-primario:disabled{opacity:.5;cursor:not-allowed;filter:none}
.dados{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:6px 14px;margin:0}
.dados dt{color:var(--muted)}
.dados dd{margin:0;overflow-wrap:anywhere}
.dados dd.quebra{white-space:pre-wrap}
.candidatos{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:8px}
.candidatos li{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:6px}
.candidatos li form{margin:0}
.historico-leads{list-style:none;margin:0;padding:0;font-size:13px;display:flex;flex-direction:column;gap:4px}
.historico-leads li{overflow-wrap:anywhere}
.campo.grande{flex:1;min-width:200px}
.campo.grande input{width:100%}
.chave-nova{border:2px solid var(--good);background:var(--good-soft)}
.url-chave{width:100%;padding:8px 10px}
.tabela-origens{min-width:980px}
.tabela-origens input:not([type="checkbox"]),.tabela-origens select{width:100%}
.acoes-linha{white-space:nowrap}
.acoes-linha .botao-leve{margin-right:4px}
@media (max-width:800px){
  .leads-layout{grid-template-columns:minmax(0,1fr)}
  .form-ficha{grid-template-columns:minmax(0,1fr)}
  .candidatos li{flex-direction:column;align-items:flex-start}
}

/* ---- Paginas e grupos ---- */
.cartoes-grupo{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;margin-bottom:16px}
.cartao-grupo{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:12px 14px;display:flex;flex-direction:column;gap:6px;min-width:0}
.cartao-grupo header{display:flex;align-items:center;justify-content:space-between;gap:8px}
.cartao-grupo h3{display:flex;align-items:center;gap:8px;font-size:14.5px;margin:0;overflow-wrap:anywhere}
.cartao-grupo.encerrado{opacity:.7}
.cartao-grupo .mini{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;font-size:12px;color:var(--muted)}
.cartao-grupo .mini b{display:block;font:500 15px var(--f-mono);color:var(--fg)}
.amostra{display:inline-block;width:10px;height:10px;border-radius:3px;flex:none}
.selo{display:inline-block;padding:1px 9px;border-radius:999px;font-size:12px;font-weight:500;background:var(--surface2);color:var(--muted);white-space:nowrap}
.bom-selo{background:var(--good-soft);color:var(--good)} .aviso-selo{background:var(--warn-soft);color:var(--warn)}
.etiqueta{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);background:var(--surface2);border-radius:999px;padding:1px 4px 1px 9px;font-size:12px;margin:1px 4px 1px 0}
.em-linha{display:inline;margin:0}
.etiqueta button{border:0;background:none;color:var(--muted);cursor:pointer;font-size:15px;line-height:1;padding:0 4px;border-radius:50%}
.etiqueta button:hover{color:var(--bad)}
.tabela-paginas{min-width:980px}
.tabela-paginas td{vertical-align:top}
.link-pagina{display:flex;gap:6px;align-items:center;margin-top:2px;flex-wrap:wrap}
.link-pagina a{color:var(--accent);font-size:12px;text-decoration:none;overflow-wrap:anywhere}
.botao-leve.pequeno{padding:1px 8px;font-size:12px}
.acoes-topo .form-linha{align-items:end}
.form-edicao{display:grid;gap:8px;min-width:260px;margin-top:8px}
.form-grupo{display:flex;flex-direction:column;gap:12px;margin:12px 0}
.paginas-do-grupo{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:4px 12px;border:1px solid var(--line);border-radius:6px;padding:8px 10px;max-height:240px;overflow:auto}
.paginas-do-grupo label{display:flex;gap:8px;font-size:13px;align-items:flex-start}
.cores{display:flex;gap:8px}
.cor{display:flex;align-items:center;gap:4px}
.cor i{display:inline-block;width:18px;height:18px;border-radius:4px}
.grupo-edicao,.novo-grupo{border-top:1px solid var(--line);padding:10px 0}
.grupo-edicao summary,.novo-grupo summary{cursor:pointer}
.botao-leve.perigo{color:var(--bad)}

/* ---- Criador de LP ---- */
.modos{display:flex;flex-direction:column;gap:8px;border:1px solid var(--line);border-radius:6px;padding:10px 12px;margin:12px 0}
.modos label{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.modos textarea{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--fg)}
.editor-lp{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:16px;align-items:start}
@media (max-width:1000px){.editor-lp{grid-template-columns:minmax(0,1fr)}}
.editor-form .campo{margin-bottom:12px}
.editor-form input:not([type=file]):not([type=checkbox]):not([type=radio]),.editor-form select,.editor-form textarea{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--fg);font:inherit}
.editor-form textarea.mono{font-size:12.5px}
.inserir{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-bottom:10px}
.previa-midia{display:block;margin:4px 0;border:1px solid var(--line);border-radius:4px;background:var(--surface2)}
.moldura{border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#fff;margin:8px 0}
.moldura iframe{display:block;width:100%;height:560px;border:0}
.moldura.celular{width:min(375px,100%);margin-left:auto;margin-right:auto}
.form-lp-nova .form-linha{margin-bottom:4px}

/* ---- Alertas das campanhas ---- */
.alertas{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.alertas li{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.ruim-selo{background:var(--bad-soft);color:var(--bad)}
