/* ==========================================================================
   Neutralização global do Storefront
   --------------------------------------------------------------------------
   O Storefront injeta um <style> inline (gerado pelo Customizer, com a
   paleta padrão dele — roxo #7f54b3, cinzas claros, fundo de rodapé claro
   etc.) logo após sua própria folha de estilos. Este arquivo é carregado
   depois — e com seletores ao menos tão específicos — para substituir essa
   identidade visual pela linguagem "showroom" da Vruumy em toda a área de
   conteúdo, tabelas, widgets, paginação e comentários. Onde o Storefront usa
   seletores de maior especificidade (ex.: `table tbody tr:nth-child(2n) td`,
   `fieldset`, `.comment-text`), aplicamos !important pontual — sinalizado
   nos comentários — para garantir a sobreposição total.
   ========================================================================== */

/* Containers / estrutura de conteúdo */
.site-content,
.vruumy-site-content,
.content-area,
.widget-area {
	background: transparent;
	color: var(--vruumy-white);
}

.col-full {
	max-width: 100%;
	padding-left: 0;
	padding-right: 0;
	margin-left: 0;
	margin-right: 0;
	box-sizing: border-box;
}

.content-area,
.widget-area {
	width: 100%;
	float: none;
	margin: 0 0 2.5rem;
}

@media (min-width: 768px) {
	.right-sidebar .content-area,
	.left-sidebar .content-area,
	.right-sidebar .widget-area,
	.left-sidebar .widget-area {
		width: 100%;
		float: none;
		margin: 0;
	}
}

/* Tipografia de posts/páginas */
.entry-title,
.page-title {
	font-family: var(--vruumy-font-heading);
	letter-spacing: .03em;
	color: var(--vruumy-white) !important; /* sobrepõe heading_color do Customizer Storefront */
}
.entry-title a { color: inherit; }
.entry-title a:hover { color: var(--vruumy-blue); }

h1, h2, h3, h4, h5, h6,
.widget-title, .widgettitle {
	color: var(--vruumy-white) !important; /* sobrepõe heading_color do Customizer Storefront */
}

.entry-meta,
.entry-meta a,
.posted-on, .post-author, .post-comments, .byline,
.hentry .entry-header .posted-on a,
.hentry .entry-header .post-author a,
.hentry .entry-header .post-comments a,
.hentry .entry-header .byline a {
	color: var(--vruumy-text-muted) !important; /* sobrepõe text_color ajustado do Customizer Storefront */
	font-family: var(--vruumy-font-body);
}
.entry-meta a:hover,
.hentry .entry-header .posted-on a:hover { color: var(--vruumy-blue) !important; }

.entry-content,
.entry-summary,
.page-content,
.comment-content,
body {
	color: var(--vruumy-text-muted);
	font-family: var(--vruumy-font-body);
	line-height: 1.75;
}

.entry-content a,
.comment-content a,
.page-content a {
	color: var(--vruumy-blue);
	text-decoration: underline;
	text-decoration-color: rgba(0, 178, 255, .4);
}
.entry-content a:hover,
.comment-content a:hover,
.page-content a:hover {
	color: var(--vruumy-pink);
	text-decoration-color: rgba(255, 45, 142, .5);
}

hr { border-color: var(--vruumy-border); }

blockquote {
	border-left: 3px solid var(--vruumy-pink);
	background: var(--vruumy-gray);
	color: var(--vruumy-white);
	padding: 1.25rem 1.5rem;
	margin: 1.5rem 0;
	border-radius: 0 var(--vruumy-radius) var(--vruumy-radius) 0;
}

/* Imagens e legendas */
img { height: auto; max-width: 100%; }
.wp-caption-text, figcaption { color: var(--vruumy-text-muted); font-size: .8rem; }

/* Tabelas — incluindo o fundo listrado claro que o Storefront aplica via inline CSS */
table {
	color: var(--vruumy-white);
	border-color: var(--vruumy-border);
	width: 100%;
}
th {
	font-family: var(--vruumy-font-heading);
	letter-spacing: .06em;
	text-transform: uppercase;
	font-size: .76rem;
	color: var(--vruumy-white);
}
th, td { border-color: var(--vruumy-border) !important; }
table:not(.has-background) tbody tr:nth-child(2n) td {
	background-color: rgba(255, 255, 255, .025) !important; /* sobrepõe listras claras do Customizer Storefront */
}

fieldset {
	background: transparent !important; /* sobrepõe fundo claro aplicado pelo Customizer Storefront */
	border: 1px solid var(--vruumy-border) !important;
	border-radius: var(--vruumy-radius);
	padding: 1.5rem;
}
fieldset legend {
	background: transparent !important;
	color: var(--vruumy-white);
	font-family: var(--vruumy-font-heading);
	letter-spacing: .06em;
	text-transform: uppercase;
	font-size: .8rem;
	padding: 0 .5rem;
}

/* Widgets / sidebar */
.widget {
	background: var(--vruumy-gray);
	border: 1px solid var(--vruumy-border);
	border-radius: var(--vruumy-radius);
	padding: 1.75rem;
	margin-bottom: 2rem;
	color: var(--vruumy-white);
}
.widget-title, .widgettitle {
	font-family: var(--vruumy-font-heading);
	letter-spacing: .08em;
	text-transform: uppercase;
	font-size: .9rem;
	margin: 0 0 1.25rem;
	padding-bottom: .85rem;
	border-bottom: 1px solid var(--vruumy-border) !important; /* sobrepõe heading_color usado como borda no Storefront */
	position: relative;
}
.widget-title::after, .widgettitle::after {
	content: '';
	position: absolute;
	left: 0; bottom: -1px;
	width: 48px; height: 1px;
	background: var(--vruumy-gradient);
	box-shadow: var(--vruumy-glow-blue);
}
.widget a { color: var(--vruumy-text-muted); }
.widget a:hover { color: var(--vruumy-blue); }
.widget ul { margin: 0; padding: 0; list-style: none; }
.widget ul li { border-bottom: 1px solid var(--vruumy-border); padding: .65rem 0; }
.widget ul li:last-child { border-bottom: none; padding-bottom: 0; }
.widget select { width: 100%; }
.widget_search form,
.widget_product_search form { display: flex; gap: .6rem; }

/* Paginação (posts e loja) */
.pagination .page-numbers,
.woocommerce-pagination .page-numbers {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
	list-style: none;
	margin: 2.5rem 0 0;
	padding: 0;
	justify-content: center;
}
.pagination .page-numbers li .page-numbers,
.woocommerce-pagination .page-numbers li .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	height: 42px;
	padding: 0 .9rem;
	border-radius: 999px;
	border: 1px solid var(--vruumy-border);
	background: transparent;
	color: var(--vruumy-white);
	font-family: var(--vruumy-font-heading);
	font-size: .8rem;
	text-decoration: none;
	transition: all .25s var(--vruumy-ease);
}
.pagination .page-numbers li .page-numbers.current,
.woocommerce-pagination .page-numbers li .page-numbers.current,
.pagination .page-numbers li a.page-numbers:hover,
.woocommerce-pagination .page-numbers li a.page-numbers:hover {
	background: var(--vruumy-gradient) !important; /* sobrepõe cor "current" calculada pelo Customizer Storefront */
	border-color: transparent;
	color: var(--vruumy-white) !important;
	box-shadow: var(--vruumy-glow-blue);
}

/* Comentários */
#comments .comment-list .comment-content .comment-text {
	background-color: var(--vruumy-gray) !important; /* sobrepõe fundo claro calculado pelo Customizer Storefront */
	border: 1px solid var(--vruumy-border);
	border-radius: var(--vruumy-radius);
	color: var(--vruumy-text-muted);
	padding: 1.25rem 1.5rem;
}
.comment-reply-link {
	display: inline-block;
	font-family: var(--vruumy-font-heading);
	font-size: .68rem;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--vruumy-blue);
	text-decoration: none;
}
.comment-reply-link:hover { color: var(--vruumy-pink); }
.comment-form input,
.comment-form textarea { width: 100%; }

/* ==========================================================================
   Hero genérico de páginas internas
   (Minha Conta, Carrinho, Finalizar Compra, páginas comuns)
   ========================================================================== */
.vruumy-page__hero {
	padding: clamp(3rem, 7vw, 5rem) clamp(1.25rem, 3vw, 2.5rem) clamp(1.5rem, 3vw, 2rem);
	background:
		radial-gradient(circle at 20% 50%, rgba(0, 178, 255, .1), transparent 55%),
		radial-gradient(circle at 80% 50%, rgba(255, 45, 142, .09), transparent 55%),
		var(--vruumy-gray);
	border-bottom: 1px solid var(--vruumy-border);
}
.vruumy-page__hero-inner {
	max-width: 1320px;
	margin: 0 auto;
}
.vruumy-page__hero-eyebrow {
	display: block;
	margin-bottom: .6rem;
	font-family: var(--vruumy-font-heading);
	font-size: .68rem;
	letter-spacing: .3em;
	text-transform: uppercase;
	color: var(--vruumy-pink);
}
.vruumy-page__hero-title {
	margin: 0;
	font-size: clamp(1.6rem, 4vw, 2.8rem);
	letter-spacing: .03em;
}

/* Breadcrumbs */
.woocommerce-breadcrumb {
	font-family: var(--vruumy-font-body);
	font-size: .76rem;
	letter-spacing: .04em;
	text-transform: uppercase;
	color: var(--vruumy-text-muted);
	margin-bottom: 2rem;
}
.woocommerce-breadcrumb a { color: var(--vruumy-text-muted); text-decoration: none; }
.woocommerce-breadcrumb a:hover { color: var(--vruumy-blue); }
.woocommerce-breadcrumb .breadcrumb-separator { color: var(--vruumy-border); }
