/* Only Papelaria — redesign (Claude Design import) */

/* "Como funciona" step-number circles on the home page */
[class*="elementor-element-cf-num-"] {
	width: 26px !important;
	height: 26px !important;
	flex: 0 0 26px !important;
}

:root {
	--opp-ink: #262019;
	--opp-cream: #F1E9DC;
	--opp-surface: #FCF8F1;
	--opp-border: #EBE1D0;
	--opp-muted: #9a8d78;
	--opp-cream-text: #F4ECDE;
}

body.woocommerce,
body.single-product,
body.archive.woocommerce {
	font-family: 'Instrument Sans', system-ui, sans-serif;
	color: var(--opp-ink);
}

.woocommerce h1, .woocommerce h2, .woocommerce h3,
.woocommerce-page h1, .woocommerce-page h2 {
	font-family: 'Cormorant Garamond', serif;
	font-weight: 600;
}

/* ---------- category chips ---------- */
.opp-cat-chips {
	display: flex;
	gap: 8px;
	overflow-x: auto;
	padding: 4px 0 20px;
	-ms-overflow-style: none;
	scrollbar-width: none;
}
.opp-cat-chips::-webkit-scrollbar { display: none; }
.opp-cat-chip {
	flex: none;
	padding: 10px 18px;
	border-radius: 999px;
	border: 1px solid var(--opp-border);
	background: var(--opp-surface);
	color: var(--opp-ink);
	font-size: 13px;
	font-weight: 500;
	white-space: nowrap;
	text-decoration: none;
	transition: background .15s ease, color .15s ease;
}
.opp-cat-chip:hover,
.opp-cat-chip.is-active {
	background: var(--opp-ink);
	color: var(--opp-cream-text);
	border-color: var(--opp-ink);
}

/* ---------- product cards (shop loop) ---------- */
ul.products li.product {
	background: var(--opp-surface);
	border: 1px solid var(--opp-border);
	border-radius: 18px;
	padding: 10px;
	transition: border-color .15s ease;
}
ul.products li.product:hover {
	border-color: var(--opp-ink);
}
ul.products li.product img {
	border-radius: 12px;
}
ul.products li.product .woocommerce-loop-product__title {
	font-family: 'Instrument Sans', sans-serif;
	font-size: 14px;
	font-weight: 600;
	color: var(--opp-ink);
}
ul.products li.product .price {
	font-weight: 600;
	color: var(--opp-ink);
}
ul.products li.product .button {
	border-radius: 999px;
	background: var(--opp-ink);
	color: var(--opp-cream-text);
	border: none;
}
ul.products li.product .button:hover {
	background: #3a3226;
	color: var(--opp-cream-text);
}

/* ---------- single product ---------- */
.single-product div.product .product_title {
	font-family: 'Cormorant Garamond', serif;
	font-weight: 600;
	font-size: 1.9rem;
}
.single-product div.product p.price {
	font-family: 'Instrument Sans', sans-serif;
	font-weight: 600;
	font-size: 1.35rem;
	color: var(--opp-ink);
}
.single-product div.product .woocommerce-product-details__short-description {
	color: #6d6151;
	line-height: 1.55;
}
.single-product div.product form.cart .variations td.label,
.single-product div.product form.cart .variations td.value select {
	font-family: 'Instrument Sans', sans-serif;
}
.single-product div.product .single_add_to_cart_button {
	border-radius: 999px;
	background: var(--opp-ink);
	border-color: var(--opp-ink);
	color: var(--opp-cream-text);
	font-weight: 600;
	padding: 14px 28px;
}
.single-product div.product .single_add_to_cart_button:hover {
	background: #3a3226;
	border-color: #3a3226;
}
.single-product div.product div.images img {
	border-radius: 18px;
}

/* ---------- bottom tab bar (mobile) ---------- */
.opp-tabbar {
	display: none;
}

@media (max-width: 780px) {
	body { padding-bottom: 68px; }

	.opp-tabbar {
		display: flex;
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 9998;
		height: 64px;
		background: var(--opp-cream);
		border-top: 1px solid var(--opp-border);
	}
	.opp-tab {
		flex: 1;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 3px;
		color: var(--opp-muted);
		text-decoration: none;
	}
	.opp-tab:hover,
	.opp-tab:focus-visible {
		color: var(--opp-ink);
	}
	.opp-tab-icon {
		position: relative;
		display: flex;
	}
	.opp-tab-badge {
		position: absolute;
		top: -5px;
		right: -8px;
		min-width: 16px;
		height: 16px;
		padding: 0 3px;
		border-radius: 8px;
		background: var(--opp-ink);
		color: var(--opp-cream-text);
		font-size: 10px;
		font-weight: 600;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.opp-tab-label {
		font-size: 10.5px;
		font-weight: 600;
	}

	/* keep the floating WhatsApp button above the tab bar */
	.opp-whatsapp-float {
		bottom: 84px !important;
	}
}
