/* Criado, desenvolvido, testado, abandonado, rejeitado, recuperado e testado fonte vozes da minha cabeça - William Tassi Moreira */
/* ACCTNN — Espaços de anúncio e criativos */
.espaco-anuncio { container-type: inline-size; position: relative; display: grid; gap: .3rem; max-width: 100%; }
.publicidade { font: 600 .66rem/1 var(--f-texto); text-transform: uppercase; letter-spacing: .14em; color: var(--tinta-2); }
.rodizio { display: grid; }
.rodizio__item { grid-area: 1 / 1; opacity: 0; visibility: hidden; transition: opacity .6s ease, visibility 0s linear .6s; min-width: 0; }
.rodizio__item.ativo { opacity: 1; visibility: visible; transition: opacity .6s ease; }
@media (prefers-reduced-motion: reduce) { .rodizio__item, .rodizio__item.ativo { transition: none; } }
.rodizio__pontos { display: flex; gap: .35rem; justify-content: center; }
.rodizio__pontos button { width: 22px; height: 6px; border-radius: 3px; border: 0; background: var(--linha); cursor: pointer; padding: 0; }
.rodizio__pontos button[aria-current="true"] { background: var(--urucum); }

/* Criativo gerado a partir do texto da campanha (quando o anunciante não manda imagem) */
.criativo { --c1: #0C6A5A; --c2: #E09A12; display: grid; align-content: center; gap: .25rem; text-decoration: none; color: #fff; background: var(--c1); border-radius: var(--raio); padding: .9rem 1.1rem; position: relative; overflow: hidden; min-width: 0; height: 100%; }
.criativo:hover { color: #fff; filter: brightness(1.06); }
.criativo::after { content: ""; position: absolute; right: -22px; bottom: -22px; width: 90px; height: 90px; border-radius: 50%; background: var(--c2); opacity: .9; }
.criativo > * { position: relative; z-index: 1; }
.criativo img { width: 100%; height: 100%; object-fit: cover; border-radius: inherit; }
.criativo__marca { font: 600 .68rem/1.2 var(--f-texto); text-transform: uppercase; letter-spacing: .1em; opacity: .85; }
.criativo__titulo { font: 900 1.45rem/1.02 var(--f-titulo); text-transform: uppercase; }
.criativo__texto { font-size: .86rem; line-height: 1.4; opacity: .92; max-width: 46ch; }
.criativo__botao { justify-self: start; margin-top: .3rem; background: var(--c2); color: #1C1408; font-weight: 700; font-size: .78rem; padding: .35rem .7rem; border-radius: 4px; }
.criativo--casa { background: var(--papel); color: var(--tinta); border: 2px dashed var(--linha); }
.criativo--casa:hover { color: var(--tinta); border-color: var(--urucum); }
.criativo--casa::after { background: var(--sol-claro); }
.criativo--casa .criativo__botao { background: var(--sol); }

/* Formatos */
.espaco-anuncio--faixa { width: 100%; max-width: 970px; margin-inline: auto; }
.criativo--faixa { min-height: 90px; grid-template-columns: auto minmax(0, 1fr) auto; column-gap: 1.2rem; align-items: center; padding-right: 5rem; }
.criativo--faixa .criativo__marca { grid-column: 1 / -1; }
.criativo--faixa .criativo__titulo { font-size: 1.35rem; }
.criativo--faixa .criativo__texto { grid-column: 2; }
.criativo--faixa .criativo__botao { grid-column: 3; grid-row: 2; margin: 0; }
.criativo--faixa .criativo__titulo { grid-column: 1; grid-row: 2; max-width: 22ch; }
@container (max-width: 700px) {
  .criativo--faixa { min-height: 100px; grid-template-columns: 1fr; padding-right: 3.5rem; }
  .criativo--faixa .criativo__texto { display: none; }
  .criativo--faixa .criativo__titulo, .criativo--faixa .criativo__botao { grid-column: 1; grid-row: auto; }
  .criativo--faixa .criativo__titulo { font-size: 1.15rem; }
}
@media (max-width: 700px) {
  .criativo--faixa { min-height: 100px; grid-template-columns: 1fr; padding-right: 3.5rem; }
  .criativo--faixa .criativo__texto { display: none; }
  .criativo--faixa .criativo__titulo, .criativo--faixa .criativo__botao { grid-column: 1; grid-row: auto; }
  .criativo--faixa .criativo__titulo { font-size: 1.15rem; }
}
.espaco-anuncio--retangulo { width: 100%; max-width: 336px; }
.criativo--retangulo { aspect-ratio: 300 / 250; align-content: end; padding: 1.1rem; max-width: 100%; }
.criativo--retangulo .criativo__marca { position: absolute; top: 1rem; left: 1.1rem; }
.criativo--retangulo::after { width: 150px; height: 150px; right: -40px; top: -40px; bottom: auto; }
.espaco-anuncio--lateral { width: 100%; max-width: 300px; }
.criativo--lateral { aspect-ratio: 300 / 600; align-content: end; padding: 1.3rem; max-width: 100%; }
.criativo--lateral .criativo__titulo { font-size: 2rem; }
.criativo--lateral .criativo__marca { position: absolute; top: 1.2rem; left: 1.3rem; right: 1.3rem; }
.criativo--lateral::after { width: 220px; height: 220px; right: -60px; top: 70px; bottom: auto; }
@media (max-width: 900px) { .espaco-anuncio--lateral { display: none; } }
.espaco-anuncio--rodape { width: 100%; max-width: 728px; margin-inline: auto; }
.criativo--rodape { min-height: 72px; grid-template-columns: minmax(0, 1fr) auto; column-gap: 1rem; align-items: center; padding: .6rem 4.5rem .6rem 1rem; }
.criativo--rodape .criativo__marca { grid-column: 1 / -1; }
.criativo--rodape .criativo__titulo { font-size: 1.05rem; }
.criativo--rodape .criativo__botao { margin: 0; }
.criativo--rodape::after { width: 60px; height: 60px; right: -14px; bottom: -14px; }
@media (max-width: 520px) { .criativo--rodape { min-height: 50px; } .criativo--rodape .criativo__marca { display: none; } }
/* Card patrocinado: mesmo desenho dos cards do diretório */
.criativo--destaque { background: var(--papel); color: var(--tinta); border: 1px solid var(--linha); border-radius: var(--raio-g); padding: var(--e-5); align-content: start; gap: .5rem; box-shadow: inset 0 4px 0 var(--c1); }
.criativo--destaque:hover { color: var(--tinta); border-color: var(--c1); filter: none; }
.criativo--destaque::after { width: 56px; height: 56px; right: 1rem; top: 1rem; bottom: auto; background: var(--c1); }
.criativo--destaque .criativo__marca { color: var(--c1); opacity: 1; padding-right: 4rem; }
.criativo--destaque .criativo__titulo { font: 700 1.05rem/1.3 var(--f-texto); text-transform: none; padding-right: 4rem; }
.criativo--destaque .criativo__texto { color: var(--tinta-2); }
.criativo--destaque .criativo__botao { background: var(--c1); color: #fff; }

/* Posicionamento nas telas */
.faixa-anuncio { padding-block: var(--e-5); }
.rodape-anuncio { padding-block: var(--e-5) 0; }

/* ---------- Página ANUNCIE ---------- */
.niveis { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--e-4); }
.nivel { display: grid; gap: .6rem; align-content: start; }
.nivel__alcance { display: flex; gap: 4px; flex-wrap: wrap; }
.nivel__alcance i { width: 14px; height: 14px; border-radius: 3px; background: var(--linha); }
.nivel__alcance i.on { background: var(--rio); }
.nivel h4 { font-size: 1.6rem; text-transform: uppercase; }
.nivel p { font-size: var(--t-sm); color: var(--tinta-2); }
@media (max-width: 860px) { .niveis { grid-template-columns: 1fr; } }
.formatos-lista { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: var(--e-4); }
.formato-card { display: grid; gap: .5rem; align-content: start; }
.formato-card__molde { background: var(--papel-2); border-radius: var(--raio); display: grid; place-items: center; height: 120px; }
.formato-card__molde span { background: var(--rio); border-radius: 3px; display: block; opacity: .85; }
.formato-card h4 { font-family: var(--f-texto); font-size: 1rem; font-weight: 700; }
.formato-card p { font-size: var(--t-xs); color: var(--tinta-2); }
.rodizio-explica { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--e-6); align-items: center; }
.rodizio-explica ol { margin: 0; padding-left: 1.2rem; display: grid; gap: .5rem; }
@media (max-width: 860px) { .rodizio-explica { grid-template-columns: 1fr; } }
.simulador { display: grid; grid-template-columns: minmax(0, 360px) minmax(0, 1fr); gap: var(--e-6); align-items: start; }
.simulador__previa { display: grid; gap: var(--e-4); justify-items: center; background: var(--papel-2); border-radius: var(--raio-g); padding: var(--e-5); min-width: 0; }
.simulador__onde { width: 100%; font-size: var(--t-sm); }
@media (max-width: 860px) { .simulador { grid-template-columns: 1fr; } }
.espaco-anuncio--destaque { grid-template-rows: auto 1fr auto; }
.espaco-anuncio--destaque .rodizio, .espaco-anuncio--destaque .rodizio__item { height: 100%; }
/* Card: lugar da logomarca (iniciais quando o anunciante não enviou logo) */
.criativo--destaque::after { display: none; }
.criativo__logo { position: absolute !important; right: 1rem; top: 1rem; width: 56px; height: 56px; border-radius: 50%; background: var(--c1); color: #fff; display: grid; place-items: center; font: 900 1.2rem/1 var(--f-titulo); overflow: hidden; }
.criativo__logo img { width: 100%; height: 100%; object-fit: cover; }

/* ---------- Receitas da entidade ---------- */
.sem-anuncios .faixa-anuncio, .sem-anuncios .rodape-anuncio, .sem-anuncios [data-espaco], .sem-anuncios #apoiadores, .sem-anuncios .site-agenda__lateral { display: none !important; }
.sem-anuncios .site-agenda { grid-template-columns: 1fr; }
.patrocinador-oficial { background: var(--papel); border-bottom: 1px solid var(--linha); box-shadow: inset 4px 0 0 var(--p); }
.patrocinador-oficial .env { display: flex; align-items: center; gap: .7rem; padding-block: .55rem; }
.patrocinador-oficial__selo { width: 34px; height: 34px; border-radius: 50%; background: var(--p); color: #fff; display: grid; place-items: center; font: 900 .85rem/1 var(--f-titulo); flex: none; }
.patrocinador-oficial small { display: block; font-size: .66rem; text-transform: uppercase; letter-spacing: .12em; color: var(--tinta-2); }
.patrocinador-oficial b { font-size: var(--t-sm); }
.cotas { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--e-4); }
.cota { border: 1px solid var(--linha); border-radius: var(--raio-g); background: var(--papel); padding: var(--e-4); display: grid; gap: .5rem; align-content: start; }
.cota__cab { display: flex; justify-content: space-between; align-items: baseline; padding-bottom: .5rem; border-bottom: 3px solid var(--cota); }
.cota__cab b { font: 900 1.4rem/1 var(--f-titulo); text-transform: uppercase; }
.cota__cab span { font-variant-numeric: tabular-nums; font-weight: 700; color: var(--tinta-2); }
.cota--ouro { --cota: #C9A227; } .cota--prata { --cota: #9AA3A8; } .cota--bronze { --cota: #A0663A; }
.cota__empresa { padding: .55rem .7rem; border-radius: var(--raio); background: var(--papel-2); font-weight: 600; font-size: var(--t-sm); }
.cota__livre { padding: .55rem .7rem; border-radius: var(--raio); border: 2px dashed var(--linha); background: none; color: var(--tinta-2); font-size: var(--t-sm); font-weight: 600; cursor: pointer; text-align: left; }
.cota__livre:hover { border-color: var(--urucum); color: var(--urucum); }
@media (max-width: 760px) { .cotas { grid-template-columns: 1fr; } }
.clube { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--e-3); }
.clube__item { display: grid; gap: .2rem; padding: var(--e-4); background: var(--papel); border: 1px solid var(--linha); border-radius: var(--raio-g); }
.clube__cat { font-size: .68rem; text-transform: uppercase; letter-spacing: .12em; color: var(--urucum); font-weight: 700; }
.clube__item b { font-size: 1rem; }
.clube__item span:last-child { font-size: var(--t-sm); color: var(--tinta-2); }
@media (max-width: 760px) { .clube { grid-template-columns: 1fr; } }
.classificados { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--e-3); }
.classificado { display: grid; gap: .3rem; padding: var(--e-4); border-left: 4px solid var(--sol); background: var(--papel); border-radius: 0 var(--raio) var(--raio) 0; }
.classificado .selo { justify-self: start; }
.classificado__preco { font-weight: 700; color: var(--rio); }
@media (max-width: 760px) { .classificados { grid-template-columns: 1fr; } }
.barra-meta { height: 8px; border-radius: 4px; background: var(--papel-2); overflow: hidden; margin-top: .3rem; }
.barra-meta i { display: block; height: 100%; background: var(--rio); }
.arte-analise { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: var(--e-5); align-items: start; }
.arte-analise__previa { background: var(--papel-2); border-radius: var(--raio); padding: var(--e-4); display: grid; justify-items: center; }
.arte-analise__dados { display: grid; gap: .5rem; align-content: start; }
.checagem { display: grid; gap: .35rem; padding: .6rem 0; }
@media (max-width: 900px) { .arte-analise { grid-template-columns: 1fr; } }

/* ---------- Anunciar (cadastro) ---------- */
.anunciar-grade { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: var(--e-6); align-items: start; }
.anunciar-previa { display: grid; gap: var(--e-4); background: var(--papel-2); border-radius: var(--raio-g); padding: var(--e-5); min-width: 0; position: sticky; top: 90px; }
@media (max-width: 960px) { .anunciar-grade { grid-template-columns: 1fr; } .anunciar-previa { position: static; } }
.preco-caixa { display: grid; gap: .45rem; background: var(--papel); border: 1px solid var(--linha); border-radius: var(--raio-g); padding: var(--e-4); }
.preco-caixa__linha { display: flex; justify-content: space-between; gap: 1rem; font-size: var(--t-sm); }
.preco-caixa__linha--desc { color: var(--ok); }
.preco-caixa__total { display: flex; justify-content: space-between; align-items: baseline; border-top: 1px solid var(--linha); padding-top: .5rem; }
.preco-caixa__total strong { font: 900 2rem/1 var(--f-titulo); }
.preco-caixa__extras { margin: 0; padding-left: 1.1rem; display: grid; gap: .3rem; font-size: var(--t-xs); color: var(--tinta-2); }
.passos-depois { margin: 0; padding-left: 1.2rem; display: grid; gap: .3rem; font-size: var(--t-sm); }
.tabela-precos td, .tabela-precos th { text-align: right; }
.tabela-precos td:first-child, .tabela-precos th:first-child { text-align: left; }
