/* Curadoria de Cozinha — componentes. Cores e fontes vêm do theme.json. */
:root {
	--cc-papel: var(--wp--preset--color--papel);
	--cc-elevado: var(--wp--preset--color--papel-elevado);
	--cc-fundo: var(--wp--preset--color--papel-fundo);
	--cc-linha: var(--wp--preset--color--linha);
	--cc-tinta: var(--wp--preset--color--tinta);
	--cc-suave: var(--wp--preset--color--tinta-suave);
	--cc-louro: var(--wp--preset--color--louro);
	--cc-louro-suave: var(--wp--preset--color--louro-suave);
	--cc-sobre-louro: var(--wp--preset--color--sobre-louro);
	--cc-acafrao: var(--wp--preset--color--acafrao);
	--cc-acafrao-suave: var(--wp--preset--color--acafrao-suave);
	--cc-acafrao-texto: var(--wp--preset--color--acafrao-texto);
	--cc-pimenta: var(--wp--preset--color--pimenta);
	--cc-pimenta-suave: var(--wp--preset--color--pimenta-suave);
	--cc-titulo: var(--wp--preset--font-family--titulo);
	--cc-texto: var(--wp--preset--font-family--texto);
	--cc-r-md: 10px;
	--cc-r-lg: 16px;
}

body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
::selection { background: var(--cc-acafrao-suave); color: var(--cc-tinta); }
:where(a, button, input, summary):focus-visible { outline: 2px solid var(--cc-louro); outline-offset: 2px; }
.wp-site-blocks { overflow-x: clip; }

/* ---------- Cabeçalho ---------- */
.cc-header { border-bottom: 1px solid var(--cc-linha); position: sticky; top: 0; z-index: 50; }
.admin-bar .cc-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .cc-header { top: 0; position: relative; } }
.cc-logo img { display: block; height: 40px; width: auto; }
.cc-logo a { display: block; }
@media (max-width: 600px) { .cc-logo img { height: 32px; } }
.cc-header .wp-block-navigation__responsive-container.is-menu-open { background: var(--cc-papel); }
.cc-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item { font-size: 22px; font-weight: 800; }

/* ---------- Rodapé ---------- */
.cc-footer { color: #E9E3D8; border-top: 6px solid var(--cc-acafrao); }
.cc-footer a { color: #FFFFFF; text-decoration: none; }
.cc-footer a:hover { color: #F2B53A; text-decoration: underline; }
.cc-footer a:focus-visible { outline-color: #F2B53A; }
.cc-footer .cc-footer-colunas { gap: var(--wp--preset--spacing--60); margin-bottom: var(--wp--preset--spacing--50); }
.cc-footer .cc-footer-logo img { height: 64px; width: auto; display: block; }
.cc-footer .cc-footer-tagline { font-size: 16px; line-height: 1.65; color: #CFC8BC; max-width: 380px; margin-top: 20px; }
.cc-footer .cc-footer-titulo { font-family: var(--cc-titulo); font-size: 13px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: #F2B53A; margin: 6px 0 14px; }
.cc-footer ul.cc-footer-lista { list-style: none; padding: 0; margin: 0; display: grid; gap: 10px; }
.cc-footer ul.cc-footer-lista a { font-family: var(--cc-titulo); font-size: 17px; font-weight: 600; }
.cc-footer .cc-footer-transparencia { gap: 16px !important; align-items: flex-start; background: rgba(255,255,255,.06); border-radius: 16px; padding: 18px 22px; margin: 0 0 var(--wp--preset--spacing--40); }
.cc-footer .cc-footer-transparencia p { margin: 0; font-size: 15px; line-height: 1.6; color: #E9E3D8; }
.cc-footer .cc-footer-transparencia strong { color: #FFFFFF; font-family: var(--cc-titulo); }
.cc-footer .cc-footer-selo { flex: none; margin-top: 2px; }
.cc-footer .cc-footer-base { border-top: 1px solid rgba(255,255,255,.12); padding-top: 18px; gap: 8px 24px; }
.cc-footer .cc-footer-base p { margin: 0; font-size: 13.5px; color: #B4ADA2; }
.cc-footer .cc-footer-base a { font-family: var(--cc-titulo); font-weight: 600; color: #E9E3D8; }
@media (max-width: 781px) {
	.cc-footer .cc-footer-colunas { display: grid !important; grid-template-columns: 1fr 1fr; gap: var(--wp--preset--spacing--50) 24px; }
	.cc-footer .cc-footer-colunas > .wp-block-column:first-child { grid-column: 1 / -1; }
	.cc-footer ul.cc-footer-lista a { font-size: 16px; }
}

/* ---------- Chapéu (kicker) e termos ---------- */
p.is-style-kicker,
.is-style-kicker { font-family: var(--cc-titulo); font-size: 13px; line-height: 1.3; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--cc-louro); }
.wp-block-post-terms a { color: var(--cc-louro); }

/* ---------- Selos ---------- */
p[class*="is-style-selo-"] {
	display: inline-flex; width: fit-content; align-items: center; gap: 4px;
	font-family: var(--cc-titulo); font-size: 13px; line-height: 16px; font-weight: 800;
	letter-spacing: .04em; text-transform: uppercase;
	padding: 6px 12px; border-radius: 999px; margin-block: 0;
}
p.is-style-selo-escolha { background: var(--cc-acafrao); color: var(--cc-tinta); }
p.is-style-selo-custo { background: var(--cc-louro); color: var(--cc-sobre-louro); }
p.is-style-selo-evite { background: var(--cc-pimenta-suave); color: var(--cc-pimenta); }
p.is-style-selo-neutro { background: var(--cc-fundo); color: var(--cc-suave); }

/* ---------- Nota ---------- */
p.is-style-nota { font-family: var(--cc-titulo); font-size: 44px; line-height: 1; font-weight: 800; letter-spacing: -.02em; font-variant-numeric: tabular-nums; margin: 0; white-space: nowrap; color: var(--cc-tinta); }
p.is-style-nota span, p.is-style-nota em { font-size: 16px; font-weight: 600; letter-spacing: 0; color: var(--cc-suave); font-style: normal; margin-left: 2px; }

/* ---------- Botões ---------- */
.wp-block-button__link { transition: background-color .15s ease, color .15s ease; }
.wp-block-button.is-style-oferta .wp-block-button__link { background: var(--cc-acafrao); color: var(--cc-tinta); }
.wp-block-button.is-style-oferta .wp-block-button__link:hover { background: var(--cc-tinta); color: var(--cc-papel); }
.wp-block-button.is-style-secundario .wp-block-button__link,
.wp-block-button.is-style-outline .wp-block-button__link { background: transparent; color: var(--cc-tinta); border: 2px solid var(--cc-suave); }
.wp-block-button.is-style-secundario .wp-block-button__link:hover,
.wp-block-button.is-style-outline .wp-block-button__link:hover { border-color: var(--cc-tinta); background: var(--cc-tinta); color: var(--cc-papel); }
.wp-block-button__link { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; }

/* ---------- Card de produto ---------- */
.wp-block-group.is-style-card-produto {
	background: var(--cc-elevado); border: 1px solid var(--cc-linha); border-radius: var(--cc-r-lg);
	box-shadow: var(--wp--preset--shadow--card);
	padding: clamp(18px, 3vw, 28px);
	margin-block: var(--wp--preset--spacing--50);
	display: flex; flex-direction: column; gap: 16px;
}
.is-style-card-produto > * { margin-block: 0 !important; }
.is-style-card-produto .cc-produto-topo { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; }
.is-style-card-produto .cc-produto-topo > div:first-child { display: flex; flex-direction: column; gap: 10px; align-items: flex-start; }
.is-style-card-produto .cc-produto-nome,
.is-style-card-produto h3 { font-size: var(--wp--preset--font-size--titulo-p); margin: 0; }
.is-style-card-produto .cc-produto-resumo,
.is-style-card-produto > p:not([class*="is-style-"]):not(.cc-produto-preco) { font-size: 17px; line-height: 1.65; }
.is-style-card-produto .cc-produto-imagem { margin: 0; }
.is-style-card-produto .cc-produto-imagem img { width: 100%; max-height: 340px; object-fit: contain; background: var(--cc-papel); border-radius: 12px; }
.is-style-card-produto .cc-produto-listas,
.is-style-card-produto .wp-block-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 0; }
.is-style-card-produto .wp-block-column { margin: 0 !important; }
@media (max-width: 600px) {
	.is-style-card-produto .cc-produto-listas,
	.is-style-card-produto .wp-block-columns { grid-template-columns: 1fr; }
	p.is-style-nota { font-size: 36px; }
}
.cc-produto-preco, .is-style-card-produto p.cc-produto-preco { font-family: var(--cc-titulo); font-size: 15px; color: var(--cc-suave); margin: 0; }
.cc-produto-preco strong { color: var(--cc-tinta); font-size: 19px; }
.is-style-card-produto .wp-block-buttons { margin: 0; }
.is-style-card-produto .wp-block-button { width: 100%; }
.is-style-card-produto .wp-block-button__link { width: 100%; }

/* ---------- Prós e contras ---------- */
.wp-block-group.is-style-pros,
.wp-block-group.is-style-contras { border-radius: var(--cc-r-md); padding: 12px 16px; height: 100%; box-sizing: border-box; margin: 0; }
.wp-block-group.is-style-pros { background: var(--cc-louro-suave); }
.wp-block-group.is-style-contras { background: var(--cc-pimenta-suave); }
.is-style-pros > p:first-child, .is-style-contras > p:first-child { font-family: var(--cc-titulo); font-size: 13px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; margin: 0 0 8px; }
.is-style-pros > p:first-child { color: var(--cc-louro); }
.is-style-contras > p:first-child { color: var(--cc-pimenta); }
.is-style-pros ul, .is-style-contras ul, ul.is-style-checks { list-style: none; padding: 0; margin: 0; display: grid; gap: 8px; }
.is-style-pros li, .is-style-contras li, ul.is-style-checks li { position: relative; padding-left: 24px; font-size: 15.5px; line-height: 1.5; }
.is-style-pros li::before, .is-style-contras li::before, ul.is-style-checks li::before { position: absolute; left: 0; top: 0; font-family: var(--cc-titulo); font-weight: 800; }
.is-style-pros li::before, ul.is-style-checks li::before { content: "✓"; color: var(--cc-louro); }
.is-style-contras li::before { content: "✕"; color: var(--cc-pimenta); }

/* ---------- Aviso de afiliado ---------- */
.wp-block-group.is-style-aviso { background: var(--cc-fundo); border-radius: var(--cc-r-md); padding: 12px 16px; margin-block: var(--wp--preset--spacing--40); }
.is-style-aviso p { font-size: 15px; line-height: 1.6; color: var(--cc-suave); margin: 0; }
.is-style-aviso strong { color: var(--cc-tinta); font-family: var(--cc-titulo); }

/* ---------- Caixas de destaque ---------- */
.wp-block-group.is-style-destaque-louro,
.wp-block-group.is-style-destaque-acafrao { border-radius: var(--cc-r-lg); padding: clamp(18px, 3vw, 28px); margin-block: var(--wp--preset--spacing--50); }
.wp-block-group.is-style-destaque-louro { background: var(--cc-louro-suave); }
.wp-block-group.is-style-destaque-acafrao { background: var(--cc-acafrao-suave); }
.is-style-destaque-louro > :first-child, .is-style-destaque-acafrao > :first-child { margin-top: 0; }
.is-style-destaque-louro > :last-child, .is-style-destaque-acafrao > :last-child { margin-bottom: 0; }

/* Resumo "nossas escolhas" no topo do guia */
.cc-escolhas { display: grid; gap: 0 !important; }
.cc-escolhas > .wp-block-group { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px 16px; padding: 12px 0; border-top: 1px solid rgba(31,26,23,.12); margin: 0 !important; }
.cc-escolhas > .wp-block-group:first-of-type { border-top: 0; }
.cc-escolhas p { margin: 0; }
.cc-escolhas .cc-escolha-nome { font-family: var(--cc-titulo); font-weight: 700; font-size: 17px; }

/* ---------- Tabela de comparação ---------- */
.wp-block-table.is-style-comparacao { overflow-x: auto; }
.wp-block-table.is-style-comparacao table { border-collapse: collapse; width: 100%; font-size: 15.5px; background: var(--cc-elevado); border-radius: var(--cc-r-md); overflow: hidden; }
.wp-block-table.is-style-comparacao th, .wp-block-table.is-style-comparacao td { border: 0; border-bottom: 1px solid var(--cc-linha); padding: 12px 14px; text-align: left; }
.wp-block-table.is-style-comparacao thead th, .wp-block-table.is-style-comparacao thead { border-bottom: 2px solid var(--cc-tinta); font-family: var(--cc-titulo); font-size: 13px; letter-spacing: .06em; text-transform: uppercase; }
.wp-block-table.is-style-comparacao tbody tr:nth-child(even) { background: var(--cc-papel); }
.wp-block-table.is-style-comparacao td:first-child { font-family: var(--cc-titulo); font-weight: 700; }

/* ---------- Listagens ---------- */
.cc-grid .wp-block-post { display: flex; flex-direction: column; gap: 10px; }
.cc-grid .wp-block-post > * { margin: 0 !important; }
.cc-grid .wp-block-post-title { font-size: 21px; line-height: 1.25; }
.cc-grid .wp-block-post-featured-image img { transition: transform .3s ease; }
.cc-grid .wp-block-post-featured-image { overflow: hidden; }
.cc-grid .wp-block-post:hover .wp-block-post-featured-image img { transform: scale(1.03); }
.cc-sem-imagem .wp-block-post-featured-image:empty { display: none; }

/* ---------- Artigo ---------- */
.cc-meta { color: var(--cc-suave); font-size: 15px; }
.cc-meta p { margin: 0; }
.single .wp-block-post-content > p:first-of-type { font-size: var(--wp--preset--font-size--lead); line-height: 1.6; }
.wp-block-post-content h2 { scroll-margin-top: 96px; }
.wp-block-post-content ul:not([class*="is-style-"]) li::marker { color: var(--cc-louro); }

/* Hero da home */
.cc-hero h1 { font-size: var(--wp--preset--font-size--display); line-height: 1.04; letter-spacing: -.025em; }
.cc-pilares h3 { margin-top: 8px; }
.cc-pilar-num { font-family: var(--cc-titulo); font-weight: 800; font-size: 13px; color: var(--cc-louro); letter-spacing: .08em; }

/* Busca */
.wp-block-search__input { border: 2px solid var(--cc-suave); border-radius: var(--cc-r-md); padding: 10px 14px; font-size: 16px; background: var(--cc-elevado); color: var(--cc-tinta); }
.wp-block-search__button { border-radius: var(--cc-r-md); }

@media (max-width: 600px) {
	p[class*="is-style-selo-"] { font-size: 12px; padding: 5px 10px; white-space: nowrap; }
}

/* ---------- Logo ---------- */
.cc-logo img, .wp-block-site-logo.cc-logo img { display: block; height: 46px; width: auto; border-radius: 0 !important; }
@media (max-width: 600px) { .cc-logo img, .wp-block-site-logo.cc-logo img { height: 34px; } }

/* ---------- Hero verde da home ---------- */
.cc-hero h1 { color: var(--cc-papel); }
.cc-hero .cc-hero-kicker { color: #F2B53A; } /* açafrão claro: 5,3:1 sobre o verde */
.cc-hero mark.cc-marca { background: var(--cc-acafrao); color: var(--cc-tinta); padding: 0 .12em; border-radius: 6px; -webkit-box-decoration-break: clone; box-decoration-break: clone; }
.cc-hero .wp-block-buttons { margin-top: var(--wp--preset--spacing--40); }
.cc-hero-arte svg { width: 100%; height: auto; display: block; max-width: 420px; margin-left: auto; }
@media (max-width: 781px) { .cc-hero-arte { display: none; } }
.wp-block-button.is-style-claro .wp-block-button__link { background: var(--cc-papel); color: var(--cc-louro); }
.wp-block-button.is-style-claro .wp-block-button__link:hover { background: var(--cc-acafrao); color: var(--cc-tinta); }
.cc-hero a:focus-visible { outline-color: var(--cc-acafrao); }

/* ---------- Card de guia sem imagem: bloco da marca no lugar da foto ---------- */
.cc-grid .wp-block-post:not(:has(.wp-block-post-featured-image img))::before {
	content: ""; display: block; aspect-ratio: 4 / 3; border-radius: 16px;
	background: var(--cc-louro) url("../logos/curadoria-mark-branco.svg") center / 28% no-repeat;
}
.cc-grid .wp-block-post:nth-child(3n+2):not(:has(.wp-block-post-featured-image img))::before { background-color: var(--cc-acafrao); background-image: url("../logos/curadoria-mark-preto.svg"); }
.cc-grid .wp-block-post:nth-child(3n+3):not(:has(.wp-block-post-featured-image img))::before { background-color: var(--cc-tinta); }

.wp-site-blocks > main, .wp-site-blocks > .wp-block-group:first-of-type + main { margin-block-start: 0; }

/* ---------- Perguntas frequentes ---------- */
.wp-block-details.cc-faq { border-bottom: 1px solid var(--cc-linha); padding: 14px 0; margin: 0; }
.wp-block-details.cc-faq + .wp-block-details.cc-faq { margin-top: 0; }
.wp-block-details.cc-faq summary { font-family: var(--cc-titulo); font-weight: 700; font-size: 18px; line-height: 1.4; cursor: pointer; list-style: none; position: relative; padding-right: 32px; }
.wp-block-details.cc-faq summary::-webkit-details-marker { display: none; }
.wp-block-details.cc-faq summary::after { content: "+"; position: absolute; right: 4px; top: -2px; font-size: 24px; color: var(--cc-louro); font-weight: 800; }
.wp-block-details.cc-faq[open] summary::after { content: "–"; }
.wp-block-details.cc-faq > p { margin: 10px 0 4px; font-size: 17px; }
