/*
 * Painel de busca do cabeçalho (inc/busca.php e assets/js/busca.js), igual à prévia (previa-tema/html/estilo.css).
 * Abre sobre o cabeçalho com o campo já focado; no celular ocupa a tela inteira, com "Cancelar" no topo.
 */
html.ddv-painel-busca-aberta { overflow: hidden; }
.ddv-painel-busca { position: fixed; inset: 0; z-index: 200; }
.ddv-painel-busca[hidden] { display: none; }
.ddv-painel-busca__fundo { position: absolute; inset: 0; background: rgb(9 23 42 / 55%); backdrop-filter: blur(2px); opacity: 0; transition: opacity .2s ease; }
.ddv-painel-busca__caixa { position: relative; max-height: min(88vh, 760px); overflow-y: auto; overscroll-behavior: contain; background: #fff; border-radius: 0 0 24px 24px; box-shadow: 0 16px 48px rgb(9 23 42 / 25%); opacity: 0; transform: translateY(-12px); transition: opacity .2s ease, transform .2s ease; }
.ddv-painel-busca.aberto .ddv-painel-busca__fundo { opacity: 1; }
.ddv-painel-busca.aberto .ddv-painel-busca__caixa { opacity: 1; transform: none; }
.ddv-painel-busca__conteudo { width: min(100% - 32px, 760px); margin: 0 auto; padding-bottom: 24px; }
.ddv-painel-busca__form { position: sticky; top: 0; z-index: 1; display: flex; align-items: center; gap: 12px; padding: 20px 0 16px; background: #fff; }
.ddv-painel-busca__entrada { flex: 1; min-width: 0; display: flex; align-items: center; gap: 12px; height: 56px; padding: 0 8px 0 18px; border: 2px solid var(--wp--preset--color--border-subtle); border-radius: 16px; transition: border-color .15s ease; }
.ddv-painel-busca__entrada:focus-within { border-color: var(--wp--preset--color--surface-brand-strong); }
.ddv-painel-busca__entrada::before { content: ""; width: 22px; height: 22px; flex: none; background: var(--wp--preset--color--text-muted); -webkit-mask: url(../icons/busca.svg) center / contain no-repeat; mask: url(../icons/busca.svg) center / contain no-repeat; }
.ddv-painel-busca__campo { flex: 1; min-width: 0; height: 100%; border: 0; outline: 0; background: transparent; font: inherit; font-size: 18px; color: var(--wp--preset--color--text-primary); }
/* A borda da caixa já mostra o foco (:focus-within); sem o anel do navegador por dentro dela. */
.ddv-painel-busca .ddv-painel-busca__campo:focus, .ddv-painel-busca .ddv-painel-busca__campo:focus-visible { outline: 0; box-shadow: none; }
.ddv-painel-busca__campo::placeholder { color: var(--wp--preset--color--text-muted); }
.ddv-painel-busca__campo::-webkit-search-cancel-button { appearance: none; display: none; }
.ddv-painel-busca__limpar { width: 36px; height: 36px; flex: none; display: grid; place-items: center; border: 0; border-radius: 999px; background: var(--wp--preset--color--surface-neutral); color: var(--wp--preset--color--text-secondary); cursor: pointer; }
.ddv-painel-busca__limpar[hidden] { display: none; }
.ddv-painel-busca__limpar:hover { background: var(--wp--preset--color--border-subtle); }
.ddv-painel-busca__fechar { flex: none; border: 0; border-radius: 10px; background: transparent; cursor: pointer; padding: 8px 12px; color: var(--wp--preset--color--text-secondary); font: inherit; font-size: 15px; font-weight: 600; }
.ddv-painel-busca__fechar:hover { background: var(--wp--preset--color--surface-neutral); color: var(--wp--preset--color--text-primary); }
/* "Fechar" no computador; "Cancelar" no celular, o padrão do iPhone e do Android nessa tela. */
.ddv-painel-busca__fechar-cel { display: none; }
.ddv-painel-busca kbd { display: inline-block; min-width: 22px; padding: 3px 6px; border: 1px solid var(--wp--preset--color--border-subtle); border-bottom-width: 2px; border-radius: 6px; background: #fff; font-family: inherit; font-size: 12px; font-weight: 600; line-height: 1.2; text-align: center; color: var(--wp--preset--color--text-secondary); }
.ddv-painel-busca__fechar:focus-visible, .ddv-painel-busca__limpar:focus-visible, .ddv-painel-busca__apagar:focus-visible, .ddv-painel-busca__chips a:focus-visible { outline: 2px solid var(--wp--preset--color--surface-brand-strong); outline-offset: 2px; }

.ddv-painel-busca__inicio { display: grid; gap: 24px; padding-top: 4px; }
.ddv-painel-busca__inicio[hidden] { display: none; }
.ddv-painel-busca__inicio h2, .ddv-painel-busca__grupo { margin: 0 0 12px; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--wp--preset--color--text-muted); }
.ddv-painel-busca__titulo { display: flex; align-items: baseline; justify-content: space-between; }
.ddv-painel-busca__apagar { border: 0; background: none; padding: 4px; cursor: pointer; font: inherit; font-size: 13px; font-weight: 600; color: var(--wp--preset--color--text-link); }
.ddv-painel-busca__chips { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.ddv-painel-busca__chips a { display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 16px; border-radius: 999px; background: var(--wp--preset--color--surface-neutral); color: var(--wp--preset--color--text-primary); font-size: 15px; font-weight: 600; text-decoration: none; transition: background-color .15s ease; }
.ddv-painel-busca__chips a:hover { background: var(--wp--preset--color--surface-accent); }
.ddv-painel-busca__chips--recentes a { background: #fff; border: 1px solid var(--wp--preset--color--border-subtle); }
.ddv-painel-busca__chips--recentes a::before { content: "↺"; color: var(--wp--preset--color--text-muted); }

.ddv-painel-busca__sugestoes { list-style: none; margin: 0; padding: 0; }
.ddv-painel-busca__sugestoes[hidden] { display: none; }
.ddv-painel-busca__grupo { padding: 16px 12px 0; margin-bottom: 6px; }
.ddv-painel-busca__grupo:first-child { padding-top: 4px; }
.ddv-painel-busca__opcao a { display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 8px 12px; border-radius: 12px; color: inherit; text-decoration: none; }
.ddv-painel-busca__opcao a:hover, .ddv-painel-busca__opcao[aria-selected="true"] a { background: var(--wp--preset--color--surface-neutral); }
.ddv-painel-busca__icone { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 10px; background: var(--wp--preset--color--surface-neutral); font-size: 20px; line-height: 1; overflow: hidden; }
.ddv-painel-busca__opcao a:hover .ddv-painel-busca__icone, .ddv-painel-busca__opcao[aria-selected="true"] .ddv-painel-busca__icone { background: #fff; }
.ddv-painel-busca__texto strong, .ddv-painel-busca__texto small { display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.ddv-painel-busca__texto strong { font-size: 16px; font-weight: 600; color: var(--wp--preset--color--text-primary); }
/* Título longo (post) em até duas linhas: cortado numa só, perde o sentido no celular. */
.ddv-painel-busca__texto strong { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; white-space: normal; line-height: 1.3; }
.ddv-painel-busca__texto small { margin-top: 2px; font-size: 13px; color: var(--wp--preset--color--text-muted); }
.ddv-painel-busca__sugestoes mark { padding: 0; border-radius: 0; background: none; color: inherit; font-weight: 800; box-shadow: inset 0 -.35em 0 var(--wp--preset--color--surface-accent); }
.ddv-painel-busca__seta { opacity: 0; font-size: 16px; color: var(--wp--preset--color--text-muted); }
.ddv-painel-busca__opcao[aria-selected="true"] .ddv-painel-busca__seta { opacity: 1; }
.ddv-painel-busca__todos { margin-top: 8px; padding-top: 8px; border-top: 1px solid var(--wp--preset--color--border-subtle); }
.ddv-painel-busca__todos strong { font-weight: 700; color: var(--wp--preset--color--text-link); }
.ddv-painel-busca__nada { padding: 16px 12px 8px; font-size: 15px; color: var(--wp--preset--color--text-secondary); }

.ddv-painel-busca__dica { margin: 20px 0 0; padding-top: 16px; border-top: 1px solid var(--wp--preset--color--border-subtle); font-size: 13px; color: var(--wp--preset--color--text-muted); }

@media (max-width: 760px) {
	.ddv-painel-busca__caixa { position: absolute; inset: 0; max-height: none; border-radius: 0; transform: translateY(8px); }
	.ddv-painel-busca__conteudo { width: calc(100% - 32px); }
	.ddv-painel-busca__form { gap: 4px; padding: 12px 0; }
	.ddv-painel-busca__entrada { height: 48px; padding-left: 14px; border-radius: 14px; }
	/* 16 px no campo: abaixo disso o iPhone dá zoom ao focar. */
	.ddv-painel-busca__campo { font-size: 16px; }
	.ddv-painel-busca__fechar-pc { display: none; }
	.ddv-painel-busca__fechar-cel { display: inline; }
	.ddv-painel-busca__fechar { padding-inline: 8px; }
	.ddv-painel-busca__dica { display: none; }
	.ddv-painel-busca__opcao a { padding-inline: 8px; }
	.ddv-painel-busca__seta { display: none; }
}
@media (prefers-reduced-motion: reduce) {
	.ddv-painel-busca__fundo, .ddv-painel-busca__caixa { transition: none; transform: none; }
}

/* Miniatura da imagem destacada (posts) e logo do parceiro (cupons) no lugar do ícone. */
.ddv-painel-busca__icone img { width: 100%; height: 100%; object-fit: cover; }
/* Acima da barra do WordPress quando logado. */
.admin-bar .ddv-painel-busca { top: var(--wp-admin--admin-bar--height, 0px); }

/* ---------- Campo de busca no meio da página (bloco Pesquisar com a classe ddv-busca) ----------
 * A caixa e o campo estão em base.css; aqui, o que vem com a gaveta. No computador, a gaveta abre presa ao campo,
 * dentro da caixa branca, e o resto da página escurece; no celular, o toque abre o painel em tela cheia (busca.js).
 */
.ddv-busca__limpar { width: 32px; height: 32px; flex: none; display: grid; place-items: center; border: 0; border-radius: 999px; background: var(--wp--preset--color--surface-neutral); color: var(--wp--preset--color--text-secondary); cursor: pointer; }
.ddv-busca__limpar[hidden] { display: none; }
.ddv-busca__limpar:hover { background: var(--wp--preset--color--border-subtle); }
.ddv-busca__limpar:focus-visible { outline: 2px solid var(--wp--preset--color--surface-brand-strong); outline-offset: 2px; }
/* Aberta: acima do fundo escuro, e a gaveta continua a caixa branca para baixo. */
.ddv-busca.aberta { z-index: 160; box-shadow: 0 24px 64px rgb(9 23 42 / 35%); }
.ddv-busca__gaveta { margin-top: 12px; padding-top: 16px; border-top: 1px solid var(--wp--preset--color--border-subtle); max-height: min(56vh, 520px); overflow-y: auto; overscroll-behavior: contain; color: var(--wp--preset--color--text-primary); }
.ddv-busca__gaveta[hidden] { display: none; }
.ddv-busca__gaveta .ddv-painel-busca__dica { margin-top: 16px; }
.ddv-busca__gaveta kbd { display: inline-block; min-width: 22px; padding: 3px 6px; border: 1px solid var(--wp--preset--color--border-subtle); border-bottom-width: 2px; border-radius: 6px; background: #fff; font-family: inherit; font-size: 12px; font-weight: 600; line-height: 1.2; text-align: center; color: var(--wp--preset--color--text-secondary); }
.ddv-busca-fundo { position: fixed; inset: 0; z-index: 150; background: rgb(9 23 42 / 45%); opacity: 0; pointer-events: none; transition: opacity .2s ease; }
.ddv-busca-fundo.visivel { opacity: 1; }
@media (max-width: 760px) {
	.ddv-busca .ddv-busca__limpar { display: none; }
}
@media (prefers-reduced-motion: reduce) {
	.ddv-busca-fundo { transition: none; }
}
