/*
Theme Name:   Eve Theme
Theme URI:    https://example.com/eve
Description:  Tema universal em modo limpo: tela branca, sem cabeçalho nem rodapé visíveis. É a base de todos os produtos (vitrines de plugin, lojas, páginas de serviço e política). A mecânica fica nos plugins (Eve plugin etc.); o tema só dá a folha em branco, o sistema de design e os modelos de página.
Author:       Agência
Version:      0.1.0
Requires at least: 6.0
Requires PHP: 7.4
License:      GPL-2.0-or-later
Text Domain:  eve-theme
*/

/* ==========================================================================
   Sistema de design (tokens). Os plugins usam estas variáveis; trocar aqui
   (ou em Aparência > Personalizar) muda todos os produtos de uma vez.
   ========================================================================== */
:root {
	--eve-bg: #ffffff;
	--eve-surface: #f6f6f8;
	--eve-ink: #111114;
	--eve-soft: #6b6f76;
	--eve-line: rgba(17, 17, 20, .10);
	--eve-accent: #ff3d6e;
	--eve-accent-ink: #ffffff;
	--eve-radius: 16px;
	--eve-font: -apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	--eve-col: 720px;      /* coluna de leitura */
	--eve-col-wide: 1120px; /* coluna larga */
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
	margin: 0; background: var(--eve-bg); color: var(--eve-ink);
	font-family: var(--eve-font); font-size: 17px; line-height: 1.65;
	-webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility;
}
img, video, iframe { max-width: 100%; height: auto; }
a { color: var(--eve-ink); text-decoration-color: var(--eve-accent); text-underline-offset: 3px; }
a:hover { color: var(--eve-accent); }
:focus-visible { outline: 2px solid var(--eve-accent); outline-offset: 2px; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* ---- Estrutura ---- */
.eve-main { min-height: 100vh; }
.eve-wrap { width: 100%; max-width: var(--eve-col); margin: 0 auto; padding: 64px 22px 96px; }
.eve-wrap--wide { max-width: var(--eve-col-wide); }
.eve-wrap--free { max-width: none; padding: 0; }

/* ---- Tipografia ---- */
.eve-title { font-size: clamp(32px, 6vw, 52px); line-height: 1.08; letter-spacing: -.02em; margin: 0 0 .5em; font-weight: 750; }
h1, h2, h3, h4 { line-height: 1.2; letter-spacing: -.01em; }
h2 { font-size: clamp(24px, 3.6vw, 32px); margin: 2em 0 .5em; }
h3 { font-size: 20px; margin: 1.6em 0 .4em; }
p, ul, ol { margin: 0 0 1.1em; }
.eve-lead { font-size: clamp(18px, 2.4vw, 22px); color: var(--eve-soft); margin-bottom: 2em; }
.eve-meta { color: var(--eve-soft); font-size: 14px; }

/* ---- Conteúdo do editor ---- */
.eve-content > *:first-child { margin-top: 0; }
.eve-content img { border-radius: var(--eve-radius); }
.eve-content blockquote { margin: 1.6em 0; padding: 0 0 0 1.2em; border-left: 3px solid var(--eve-accent); color: var(--eve-soft); }
.eve-content table { width: 100%; border-collapse: collapse; margin: 0 0 1.4em; font-size: 15px; }
.eve-content th, .eve-content td { text-align: left; padding: 10px 12px; border-bottom: 1px solid var(--eve-line); }
.eve-content .alignwide { max-width: var(--eve-col-wide); }
.eve-content .alignfull { max-width: none; }

/* ---- Botões e cartões (usados pelos plugins) ---- */
.eve-btn, .wp-block-button__link, .button {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	padding: 12px 22px; border: 0; border-radius: 999px; cursor: pointer; text-decoration: none;
	background: var(--eve-ink); color: #fff; font: inherit; font-weight: 650; font-size: 15px;
	transition: transform .15s ease, background .15s ease;
}
.eve-btn:hover, .wp-block-button__link:hover, .button:hover { background: var(--eve-accent); color: var(--eve-accent-ink); transform: translateY(-1px); }
.eve-btn--ghost { background: transparent; color: var(--eve-ink); box-shadow: inset 0 0 0 1px var(--eve-line); }
.eve-card { background: var(--eve-surface); border-radius: var(--eve-radius); padding: 22px; }

/* ---- Lista de artigos / resultados ---- */
.eve-list { display: grid; gap: 18px; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); padding: 0; margin: 0; list-style: none; }
.eve-list__item a { display: block; text-decoration: none; }
.eve-list__img { aspect-ratio: 4 / 5; background: var(--eve-surface); border-radius: var(--eve-radius); object-fit: cover; width: 100%; display: block; }
.eve-list__t { margin: 10px 0 0; font-weight: 650; line-height: 1.3; }

/* ---- Paginação ---- */
.eve-pagination { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 40px; }
.eve-pagination .page-numbers { padding: 8px 14px; border-radius: 999px; box-shadow: inset 0 0 0 1px var(--eve-line); text-decoration: none; }
.eve-pagination .current { background: var(--eve-ink); color: #fff; box-shadow: none; }

/* ---- Modelos de página ---- */
.eve-tpl-servico .eve-hero { padding: 72px 22px 40px; text-align: center; background: var(--eve-surface); }
.eve-tpl-servico .eve-hero .eve-title { max-width: 18ch; margin-left: auto; margin-right: auto; }
.eve-tpl-politica .eve-wrap { font-size: 16px; }
.eve-tpl-politica h2 { font-size: 22px; margin-top: 1.8em; }

@media (prefers-reduced-motion: reduce) { * { transition: none !important; animation: none !important; } }
