/* ---------- tokens ---------- */
:root {
  --fundo: #f5f2ec;
  --superficie: #ffffff;
  --superficie-2: #faf8f4;
  --texto: #1d1c1a;
  --texto-2: #5b5750;
  --texto-3: #8e887d;
  --borda: #e7e1d6;
  --borda-forte: #d6cebf;
  --ouro: #9a7440;
  --ouro-forte: #7c5c30;
  --ouro-fundo: #f4ecdf;
  --erro: #b3261e;
  --ok: #2e7d4f;
  --alerta: #b7791f;
  --destaque-fundo: #16211d;
  --destaque-texto: #f3efe6;
  --destaque-texto-2: #b9b3a6;
  --raio: 12px;
  --raio-p: 8px;
  --sombra: 0 1px 2px rgba(29, 28, 26, 0.04), 0 4px 16px rgba(29, 28, 26, 0.05);
  --fonte: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --fonte-titulo: "Cormorant Garamond", Georgia, "Times New Roman", serif;
}
@media (prefers-color-scheme: dark) {
  :root {
    --fundo: #0f0f0e;
    --superficie: #181816;
    --superficie-2: #1e1d1b;
    --texto: #eeeae2;
    --texto-2: #bdb7ab;
    --texto-3: #857f74;
    --borda: #2b2a27;
    --borda-forte: #3a3834;
    --ouro: #c9a66b;
    --ouro-forte: #dcbd86;
    --ouro-fundo: #2a2318;
    --erro: #f08a80;
    --ok: #6fcf97;
    --alerta: #e0b25c;
    --destaque-fundo: #0b1310;
    --sombra: 0 1px 2px rgba(0, 0, 0, 0.3), 0 4px 16px rgba(0, 0, 0, 0.25);
  }
}

/* ---------- base ---------- */
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--fundo);
  color: var(--texto);
  font: 15px/1.55 var(--fonte);
  font-feature-settings: "tnum" 1, "lnum" 1;
  -webkit-font-smoothing: antialiased;
}
h1, h2, h3 { margin: 0; font-weight: 600; }
h2 { font-family: var(--fonte-titulo); font-size: 24px; letter-spacing: 0.2px; }
h3 { font-size: 15px; }
a { color: var(--ouro); }
code { background: var(--ouro-fundo); color: var(--ouro-forte); padding: 1px 6px; border-radius: 4px; font-size: 13px; }
[hidden] { display: none !important; }

input, select, textarea, button, .botao {
  font: inherit;
  color: var(--texto);
  background: var(--superficie);
  border: 1px solid var(--borda-forte);
  border-radius: var(--raio-p);
  padding: 7px 11px;
  transition: border-color 0.15s, box-shadow 0.15s, background 0.15s;
}
input:focus, select:focus, textarea:focus {
  outline: none;
  border-color: var(--ouro);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--ouro) 22%, transparent);
}
input[type="checkbox"] { accent-color: var(--ouro); width: 16px; height: 16px; padding: 0; margin: 0; }
button, .botao { cursor: pointer; font-weight: 500; }
button:hover, .botao:hover { border-color: var(--ouro); }
button:disabled { opacity: 0.55; cursor: not-allowed; }
button.primario { background: var(--ouro); border-color: var(--ouro); color: #fff; }
button.primario:hover { background: var(--ouro-forte); border-color: var(--ouro-forte); }
button.secundario { background: transparent; }
button.pequeno { padding: 5px 12px; font-size: 14px; }
button.link { background: none; border: none; padding: 0; color: var(--ouro); font-size: 13px; font-weight: 500; }
button.link:hover { text-decoration: underline; }
button.icone, .botao.icone { padding: 4px 10px; font-size: 13px; background: var(--superficie-2); }

.msg { font-size: 14px; color: var(--texto-2); margin: 8px 0 0; min-height: 0; }
.msg:empty { display: none; }
.msg.erro, #onde-salvo.erro { color: var(--erro); }
.nota { font-size: 13px; color: var(--texto-3); margin: 6px 0 12px; }
.nota-inline { font-weight: 400; color: var(--texto-3); font-size: 13px; }
.vazio { color: var(--texto-3); font-size: 14px; padding: 12px 0; }

/* ---------- barra superior ---------- */
.barra { background: var(--destaque-fundo); color: var(--destaque-texto); border-bottom: 1px solid rgba(255, 255, 255, 0.06); }
.barra-conteudo { max-width: 1440px; margin: 0 auto; padding: 12px 24px; display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.marca { display: flex; align-items: center; gap: 10px; color: var(--destaque-texto); text-decoration: none; font-family: var(--fonte-titulo); font-size: 22px; font-weight: 600; letter-spacing: 0.4px; }
.marca-icone { width: 26px; height: 26px; color: #c9a66b; }
.marca-nome { font-size: 24px; letter-spacing: 0.6px; }
.marca-lema {
  font-family: var(--fonte); font-size: 12px; font-weight: 500; letter-spacing: 1.4px; text-transform: uppercase;
  color: var(--destaque-texto-2); padding-left: 12px; margin-left: 2px; border-left: 1px solid rgba(255, 255, 255, 0.18);
}
@media (max-width: 1200px) { .marca-lema { display: none; } }
.status {
  display: inline-flex; align-items: center; gap: 8px;
  background: rgba(255, 255, 255, 0.06); border: 1px solid rgba(255, 255, 255, 0.12);
  color: var(--destaque-texto-2); border-radius: 999px; padding: 5px 12px; font-size: 13px;
}
.status:hover { border-color: rgba(255, 255, 255, 0.3); }
.status-luz { width: 8px; height: 8px; border-radius: 50%; background: #8e887d; }
.status.ok .status-luz { background: #4ade80; box-shadow: 0 0 0 3px rgba(74, 222, 128, 0.18); }
.status.ausente .status-luz { background: #f5b64a; box-shadow: 0 0 0 3px rgba(245, 182, 74, 0.18); }

/* ---------- destaque (busca) ---------- */
.destaque {
  background:
    radial-gradient(1200px 400px at 85% -10%, rgba(201, 166, 107, 0.16), transparent 60%),
    var(--destaque-fundo);
  color: var(--destaque-texto);
}
.destaque-conteudo { max-width: 920px; margin: 0 auto; padding: 44px 24px 40px; }
.sobretitulo { text-transform: uppercase; letter-spacing: 2.4px; font-size: 12px; color: #c9a66b; margin: 0 0 10px; font-weight: 500; }
.destaque h1 { font-family: var(--fonte-titulo); font-size: clamp(30px, 4.2vw, 46px); line-height: 1.12; font-weight: 600; }
.destaque-texto { color: var(--destaque-texto-2); margin: 12px 0 26px; font-size: 16px; max-width: 680px; }
.busca-caixa {
  display: flex; gap: 8px; padding: 6px;
  background: #fff; border-radius: 14px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
}
.busca-caixa input.busca { flex: 1; min-width: 0; border: none; font-size: 17px; padding: 12px 14px; color: #1d1c1a; background: #fff; box-shadow: none; }
.busca-caixa button { padding: 10px 22px; font-size: 15px; border-radius: 10px; }
.busca-caixa button.secundario { color: #1d1c1a; border-color: #d6cebf; }
.busca-opcoes { display: flex; flex-wrap: wrap; gap: 10px 24px; margin-top: 14px; font-size: 14px; color: var(--destaque-texto-2); align-items: center; }
.busca-opcoes .caixa-marcar { color: var(--destaque-texto-2); }
.busca-opcoes input:not([type="checkbox"]) {
  background: rgba(255, 255, 255, 0.07); border-color: rgba(255, 255, 255, 0.16); color: var(--destaque-texto);
  padding: 5px 10px; margin-left: 6px;
}
.busca-opcoes input::placeholder { color: rgba(243, 239, 230, 0.45); }
#busca-andamento { display: flex; align-items: center; gap: 14px; margin-top: 18px; font-size: 14px; color: var(--destaque-texto-2); }
#busca-progresso { width: 260px; height: 6px; appearance: none; border: none; border-radius: 999px; background: rgba(255, 255, 255, 0.12); overflow: hidden; }
#busca-progresso::-webkit-progress-bar { background: rgba(255, 255, 255, 0.12); border-radius: 999px; }
#busca-progresso::-webkit-progress-value { background: #c9a66b; border-radius: 999px; }
#busca-progresso::-moz-progress-bar { background: #c9a66b; }
.destaque .msg { color: var(--destaque-texto-2); margin-top: 14px; }
.destaque .msg.erro { color: #f5a097; }
.aviso {
  margin-top: 18px; padding: 14px 16px; border-radius: var(--raio-p);
  background: rgba(245, 182, 74, 0.1); border: 1px solid rgba(245, 182, 74, 0.35);
  color: #f3e3c0; font-size: 14px;
}
.aviso ol { margin: 8px 0; padding-left: 20px; }
.aviso code { background: rgba(255, 255, 255, 0.1); color: #f3e3c0; }

/* ---------- painel ---------- */
.painel { max-width: 1440px; margin: 0 auto; padding: 24px; display: grid; grid-template-columns: 330px minmax(0, 1fr); gap: 24px; align-items: start; }
.lateral { position: sticky; top: 16px; max-height: calc(100vh - 32px); overflow-y: auto; display: flex; flex-direction: column; gap: 16px; padding-right: 2px; }
.conteudo { display: flex; flex-direction: column; gap: 20px; min-width: 0; }
.bloco { background: var(--superficie); border: 1px solid var(--borda); border-radius: var(--raio); padding: 18px 20px; box-shadow: var(--sombra); }
.bloco-topo { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.lateral h2 { font-size: 21px; }
.acoes { display: flex; gap: 6px; }
.contagem { font-family: var(--fonte); font-size: 13px; font-weight: 500; color: var(--texto-3); margin-left: 4px; }

/* coletas */
.filtro-lista { width: 100%; margin: 12px 0 6px; }
.selecao-rapida { display: flex; gap: 14px; margin-bottom: 8px; }
.lista-coletas { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 2px; }
.coleta {
  display: grid; grid-template-columns: 18px 10px minmax(0, 1fr) auto; align-items: center; gap: 8px;
  padding: 7px 8px; border-radius: var(--raio-p); transition: background 0.12s;
}
.coleta:hover { background: var(--superficie-2); }
.coleta.inativa .coleta-nome, .coleta.inativa .coleta-meta { opacity: 0.55; }
.coleta-cor { width: 10px; height: 10px; border-radius: 3px; }
.coleta-texto { min-width: 0; }
.coleta-nome {
  width: 100%; border: 1px solid transparent; background: transparent; padding: 1px 4px; margin-left: -4px;
  font-size: 13.5px; font-weight: 600; text-overflow: ellipsis;
}
.coleta-nome:hover { border-color: var(--borda); }
.coleta-meta { font-size: 12px; color: var(--texto-3); padding-left: 1px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.coleta-acoes { display: flex; gap: 2px; opacity: 0; transition: opacity 0.12s; }
.coleta:hover .coleta-acoes, .coleta:focus-within .coleta-acoes { opacity: 1; }
.coleta-acoes a, .coleta-acoes button {
  display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px;
  border-radius: 6px; border: none; background: none; color: var(--texto-3); text-decoration: none; padding: 0; font-size: 14px;
}
.coleta-acoes a:hover, .coleta-acoes button:hover { background: var(--ouro-fundo); color: var(--ouro-forte); }

/* filtros */
.campos { display: flex; flex-direction: column; gap: 12px; margin-top: 12px; }
.campos > label, .impostos label { display: flex; flex-direction: column; gap: 4px; font-size: 13px; color: var(--texto-2); font-weight: 500; }
.campos select, .campos input:not([type="checkbox"]) { width: 100%; color: var(--texto); font-weight: 400; }
.impostos { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.caixa-marcar { display: inline-flex !important; flex-direction: row !important; align-items: center; gap: 8px; font-weight: 400 !important; color: var(--texto-2); font-size: 14px; cursor: pointer; }
.campos .caixa-marcar { font-size: 13.5px; }

/* coleta manual */
#coleta-manual summary { cursor: pointer; font-family: var(--fonte-titulo); font-size: 19px; font-weight: 600; }
#coleta-manual[open] > summary { margin-bottom: 10px; }
#como-coletar summary { font-size: 14px; font-family: var(--fonte); color: var(--ouro); cursor: pointer; margin-bottom: 6px; }
#coleta-manual ol { padding-left: 18px; font-size: 13.5px; color: var(--texto-2); }
#coleta-manual textarea { width: 100%; font-family: ui-monospace, Consolas, monospace; font-size: 12px; margin: 8px 0; }
#coleta-manual > label { display: flex; flex-direction: column; gap: 4px; font-size: 13px; color: var(--texto-2); margin-bottom: 8px; }
#coleta-manual .nota input { width: 100%; margin: 6px 0; }
.botao-favorito {
  display: inline-block; background: var(--ouro); color: #fff; padding: 3px 12px; border-radius: 999px;
  text-decoration: none; font-weight: 600; font-size: 13px; cursor: grab; margin-top: 4px;
}

/* ---------- indicadores ---------- */
.kpis { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 14px; }
.kpi { background: var(--superficie); border: 1px solid var(--borda); border-radius: var(--raio); padding: 16px 18px; box-shadow: var(--sombra); }
.kpi-rotulo { font-size: 12px; text-transform: uppercase; letter-spacing: 1.2px; color: var(--texto-3); font-weight: 500; }
.kpi-valor { font-family: var(--fonte-titulo); font-size: 30px; font-weight: 600; line-height: 1.15; margin-top: 4px; }
.kpi-detalhe { font-size: 12.5px; color: var(--texto-2); margin-top: 2px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* ---------- cards por referência ---------- */
.cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(290px, 1fr)); gap: 16px; }
.ref-card {
  position: relative; background: var(--superficie); border: 1px solid var(--borda); border-radius: var(--raio);
  padding: 18px 20px 16px; box-shadow: var(--sombra); overflow: hidden;
}
.ref-card::before { content: ""; position: absolute; inset: 0 0 auto 0; height: 3px; background: var(--cor); }
.ref-card header { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }
.ref-card h3 { font-size: 13px; letter-spacing: 0.6px; text-transform: uppercase; color: var(--texto-2); font-weight: 600; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ref-data { font-size: 12px; color: var(--texto-3); white-space: nowrap; }
.ref-mediana { margin-top: 10px; }
.ref-mediana strong { display: block; font-family: var(--fonte-titulo); font-size: 36px; font-weight: 600; line-height: 1.1; }
.ref-mediana span { font-size: 12.5px; color: var(--texto-3); }
.faixa { margin: 18px 0 8px; }
.faixa-trilho { position: relative; height: 8px; border-radius: 999px; background: var(--superficie-2); border: 1px solid var(--borda); }
.faixa-caixa { position: absolute; top: -1px; bottom: -1px; border-radius: 999px; background: color-mix(in srgb, var(--cor) 45%, transparent); }
.faixa-mediana { position: absolute; top: -5px; width: 3px; height: 16px; margin-left: -1.5px; border-radius: 2px; background: var(--texto); }
.faixa-rotulos { display: flex; justify-content: space-between; font-size: 12px; color: var(--texto-3); margin-top: 6px; }
.faixa-rotulos b { color: var(--texto-2); font-weight: 600; }
.ref-numeros { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; margin: 14px 0 0; padding-top: 12px; border-top: 1px solid var(--borda); }
.ref-numeros div { min-width: 0; }
.ref-numeros dt { font-size: 11px; text-transform: uppercase; letter-spacing: 0.8px; color: var(--texto-3); }
.ref-numeros dd { margin: 2px 0 0; font-size: 14px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.cards .vazio-grande {
  grid-column: 1 / -1; text-align: center; padding: 48px 20px; color: var(--texto-3);
  background: var(--superficie); border: 1px dashed var(--borda-forte); border-radius: var(--raio);
}
.vazio-grande strong { display: block; font-family: var(--fonte-titulo); font-size: 24px; color: var(--texto-2); margin-bottom: 4px; }

/* ---------- gráficos ---------- */
.grafico { position: relative; height: 320px; }
.legenda-grafico { display: flex; align-items: center; gap: 8px; font-size: 12.5px; color: var(--texto-3); margin: 0; }
.leg-faixa { display: inline-block; width: 22px; height: 10px; border-radius: 3px; background: color-mix(in srgb, var(--ouro) 35%, transparent); }
.leg-mediana { display: inline-block; width: 3px; height: 14px; border-radius: 2px; background: var(--texto); margin-left: 10px; }

/* ---------- segmentos ---------- */
.segmentos { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 16px; }
.segmento { border: 1px solid var(--borda); border-radius: var(--raio-p); padding: 12px 14px; background: var(--superficie-2); }
.segmento h3 { font-size: 13px; text-transform: uppercase; letter-spacing: 0.5px; margin: 0 0 8px; display: flex; align-items: center; gap: 8px; }
.segmento table { width: 100%; border-collapse: collapse; font-size: 13px; margin-bottom: 10px; }
.segmento th, .segmento td { padding: 4px 6px; border-bottom: 1px solid var(--borda); text-align: right; }
.segmento th:first-child, .segmento td:first-child { text-align: left; }
.segmento th { color: var(--texto-3); font-weight: 500; font-size: 12px; }
.pos { color: #b0412e; }
.neg { color: var(--ok); }
@media (prefers-color-scheme: dark) { .pos { color: #f3a8a1; } }

/* ---------- tabela ---------- */
.rolagem { overflow: auto; max-height: 640px; border: 1px solid var(--borda); border-radius: var(--raio-p); }
.tabela { width: 100%; border-collapse: collapse; font-size: 13px; }
.tabela th, .tabela td { text-align: left; padding: 8px 10px; border-bottom: 1px solid var(--borda); vertical-align: middle; }
.tabela th {
  position: sticky; top: 0; z-index: 1; background: var(--superficie-2); color: var(--texto-2);
  font-weight: 600; font-size: 12px; text-transform: uppercase; letter-spacing: 0.5px;
  cursor: pointer; white-space: nowrap; user-select: none;
}
.tabela th:hover { color: var(--ouro); }
.tabela tbody tr:hover td, .tabela tr:hover td { background: var(--superficie-2); }
.tabela td:first-child { white-space: nowrap; font-weight: 500; }
.tabela td.num { text-align: right; white-space: nowrap; }
.tabela tr.excluido td { color: var(--texto-3); text-decoration: line-through; }
.tabela tr.excluido td.motivo { text-decoration: none; }
.tabela a { color: var(--texto); text-decoration: none; }
.tabela a:hover { color: var(--ouro); text-decoration: underline; }
.ponto { display: inline-block; width: 9px; height: 9px; border-radius: 3px; margin-right: 7px; vertical-align: 0; }

.selo { display: inline-block; padding: 2px 9px; border-radius: 999px; font-size: 12px; font-weight: 500; white-space: nowrap; }
.selo.otimo { background: #dcf2e3; color: #1b6a35; }
.selo.bom { background: #ebf6ee; color: #2f7a45; }
.selo.medio { background: #efece6; color: #5b5750; }
.selo.acima { background: #fbeedd; color: #8a4b0f; }
.selo.caro { background: #fbe3e0; color: #9b2a22; }
@media (prefers-color-scheme: dark) {
  .selo.otimo { background: #163a22; color: #9fe0b2; }
  .selo.bom { background: #1b3122; color: #b4dcbf; }
  .selo.medio { background: #2a2926; color: #c2bdb2; }
  .selo.acima { background: #3b2a15; color: #f0c08e; }
  .selo.caro { background: #3e1c19; color: #f3a8a1; }
}

/* ---------- navegação ---------- */
.navegacao { display: flex; gap: 4px; margin-left: auto; margin-right: 12px; }
.navegacao a {
  color: var(--destaque-texto-2); text-decoration: none; font-size: 14px; font-weight: 500;
  padding: 6px 12px; border-radius: 999px; transition: background 0.15s, color 0.15s;
}
.navegacao a:hover { color: var(--destaque-texto); background: rgba(255, 255, 255, 0.07); }
.barra { position: sticky; top: 0; z-index: 10; }
.lateral { top: 72px; max-height: calc(100vh - 88px); }
[id] { scroll-margin-top: 76px; }

/* ---------- ranking por país ---------- */
.seletor { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--texto-2); font-weight: 500; }
.seletor select { max-width: 280px; }
.ranking { display: flex; flex-direction: column; }
.ranking-cab, .ranking-linha {
  display: grid;
  grid-template-columns: 32px minmax(130px, 1.1fr) minmax(200px, 2fr) 110px 80px 64px 120px;
  align-items: center; gap: 12px; padding: 10px 8px;
}
.ranking-cab {
  font-size: 11.5px; text-transform: uppercase; letter-spacing: 0.6px; color: var(--texto-3); font-weight: 600;
  border-bottom: 1px solid var(--borda-forte); padding-top: 4px;
}
.ranking-linha { border-bottom: 1px solid var(--borda); font-size: 13.5px; }
.ranking-linha:hover { background: var(--superficie-2); }
.ranking-linha.primeiro { background: color-mix(in srgb, var(--ouro) 8%, transparent); }
.ranking-linha.poucos { opacity: 0.55; }
.ranking-pos { font-family: var(--fonte-titulo); font-size: 22px; font-weight: 600; color: var(--texto-3); text-align: center; }
.ranking-linha.primeiro .ranking-pos { color: var(--ouro); }
.ranking-pais { display: flex; flex-direction: column; min-width: 0; }
.ranking-pais strong { font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ranking-pais small { font-size: 12px; color: var(--texto-3); }
.ranking-barra { display: flex; align-items: center; gap: 10px; min-width: 0; }
.ranking-barra b { font-weight: 600; white-space: nowrap; }
.barra-fundo { flex: 1; height: 8px; border-radius: 999px; background: var(--superficie-2); border: 1px solid var(--borda); overflow: hidden; min-width: 60px; }
.barra-valor { display: block; height: 100%; border-radius: 999px; background: color-mix(in srgb, var(--cor) 70%, transparent); }
.ranking .num { text-align: right; white-space: nowrap; }
.ranking-oferta a {
  display: inline-block; padding: 3px 10px; border-radius: 999px; font-size: 12.5px; font-weight: 600;
  background: var(--ouro-fundo); color: var(--ouro-forte); text-decoration: none; white-space: nowrap;
}
.ranking-oferta a:hover { background: var(--ouro); color: #fff; }

/* ---------- rodapé ---------- */
.rodape { background: var(--destaque-fundo); color: var(--destaque-texto-2); margin-top: 24px; }
.rodape-conteudo {
  max-width: 1440px; margin: 0 auto; padding: 40px 24px 24px;
  display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: 32px;
}
.rodape-marca { font-family: var(--fonte-titulo); font-size: 24px; font-weight: 600; color: var(--destaque-texto); margin-bottom: 8px; }
.rodape-sobre p { max-width: 560px; margin: 0; font-size: 14px; }
.rodape-contato h3 { font-size: 12px; text-transform: uppercase; letter-spacing: 2px; color: #c9a66b; margin-bottom: 10px; }
.rodape-contato .email { font-size: 17px; color: var(--destaque-texto); text-decoration: none; border-bottom: 1px solid rgba(201, 166, 107, 0.5); }
.rodape-contato .email:hover { color: #c9a66b; }
.rodape-contato p { font-size: 13px; margin: 10px 0 0; }
.rodape-nota {
  max-width: 1440px; margin: 0 auto; padding: 16px 24px 32px; font-size: 12px; color: #857f74;
  border-top: 1px solid rgba(255, 255, 255, 0.07);
}

/* ---------- telas menores ---------- */
@media (max-width: 1200px) {
  .ranking-cab { display: none; }
  .ranking-linha { grid-template-columns: 32px minmax(0, 1fr) auto; grid-template-areas: "pos pais oferta" "pos barra barra"; row-gap: 6px; }
  .ranking-pos { grid-area: pos; }
  .ranking-pais { grid-area: pais; }
  .ranking-oferta { grid-area: oferta; }
  .ranking-barra { grid-area: barra; }
  .ranking-linha .num { display: none; }
}
@media (max-width: 1000px) {
  .navegacao { display: none; }
  .painel { grid-template-columns: 1fr; padding: 16px; }
  .lateral { position: static; max-height: none; overflow: visible; }
  .rodape-conteudo { grid-template-columns: 1fr; gap: 20px; }
  .lista-coletas { max-height: 320px; overflow-y: auto; }
  .coleta-acoes { opacity: 1; }
}
@media (max-width: 560px) {
  .barra-conteudo { padding: 10px 16px; }
  .marca span { font-size: 19px; }
  #status-texto { display: none; }
  .destaque-conteudo { padding: 30px 16px 28px; }
  .busca-caixa { flex-wrap: wrap; }
  .busca-caixa input.busca { flex-basis: 100%; }
  .busca-caixa button { flex: 1; }
  .ref-numeros { grid-template-columns: repeat(2, 1fr); }
  #busca-progresso { width: 140px; }
}
