/*
Theme Name: Kiosko Child
Theme URI: https://viareggio.cl
Author: Viareggio
Description: Child theme for Kiosko — preserves customizations across parent theme updates.
Template: kiosko
Version: 1.0.7
Text Domain: kiosko-child
*/

/* Header categories flyout next to product search */
.kiosko-header-search-categorias {
	min-width: 260px;
	width: 100%;
}

.kiosko-header-search-categorias > .wp-block-group {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	min-width: 0;
}

.kiosko-header-search-categorias .wp-block-search {
	flex: 1 1 auto;
	margin: 0;
}

.kiosko-header-search-categorias .wp-block-shortcode {
	flex: 0 0 auto;
	margin: 0;
}

.kiosko-header-search-categorias .kiosko-categorias-flyout {
	flex: 0 0 auto;
}

.kiosko-categorias-flyout {
	position: relative;
	margin: 0;
}

.kiosko-categorias-trigger {
	list-style: none !important;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	min-height: 48px;
	min-width: 170px;
	padding: 11px 18px;
	border: 1px solid #d4d8de;
	border-radius: 10px;
	background: #fff;
	color: #4a5568;
	font-size: 1.04rem;
	font-weight: 500;
	line-height: 1.2;
	cursor: pointer;
	white-space: nowrap;
}

.kiosko-categorias-trigger::after {
	content: "";
	width: 9px;
	height: 9px;
	margin-top: -2px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg);
	transition: transform 0.2s ease, margin-top 0.2s ease;
}

.kiosko-categorias-flyout[open] .kiosko-categorias-trigger {
	color: #394659;
	background: #f7f8fa;
}

.kiosko-categorias-flyout[open] .kiosko-categorias-trigger::after {
	transform: rotate(-135deg);
	margin-top: 4px;
}

.kiosko-categorias-trigger::-webkit-details-marker {
	display: none;
}

.kiosko-categorias-panel {
	position: absolute;
	top: calc(100% + 14px);
	right: 0;
	width: clamp(260px, 30vw, 500px);
	max-height: min(62vh, 460px);
	overflow: auto;
	background: #fff;
	border: 1px solid #e1e4ea;
	border-radius: 10px;
	box-shadow: 0 14px 34px rgba(19, 30, 54, 0.14);
	z-index: 30;
}

.kiosko-categorias-panel::before {
	content: "";
	position: absolute;
	top: -7px;
	right: 28px;
	width: 14px;
	height: 14px;
	background: #fff;
	border-left: 1px solid #e1e4ea;
	border-top: 1px solid #e1e4ea;
	transform: rotate(45deg);
}

.kiosko-categorias-list {
	list-style: none !important;
	margin: 0 !important;
	padding: 10px 0;
}

.kiosko-categorias-list ul {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.kiosko-categorias-list li {
	margin: 0;
	padding: 0;
}

.kiosko-categorias-list a {
	display: block;
	padding: 13px 18px;
	border-radius: 0;
	text-decoration: none;
	color: #4a5568;
	font-size: 1.02rem;
	line-height: 1.25;
	transition: background-color 0.16s ease, color 0.16s ease;
}

.kiosko-categorias-list a:hover {
	background: #f1f4f8;
	color: #2f4f76;
}

.kiosko-categorias-list .children {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border-left: 0;
}

.kiosko-categorias-list .children a {
	padding-left: 34px;
	font-size: 0.96rem;
	color: #5f6877;
}

/* Move home category navigation to top dropdown: hide old sidebar list */
.home main > .wp-block-columns.alignwide > .wp-block-column:first-child {
	display: none;
}

.home main > .wp-block-columns.alignwide > .wp-block-column:last-child {
	flex-basis: 100% !important;
}

/* Header layout: search + horizontal nav links under search */
.kiosko-header-rightstack {
	width: min(820px, 100%);
}

.kiosko-header-rightstack .kiosko-header-search-categorias {
	width: 100%;
	min-width: 0;
}

.kiosko-header-rightstack .wp-block-navigation {
	width: 100%;
}

.kiosko-header-rightstack .wp-block-navigation__container {
	flex-wrap: nowrap !important;
}

/* Keep "Mi Cuenta" and similar header nav labels on one line */
.wp-site-blocks > header.wp-block-template-part .wp-block-navigation {
	flex-shrink: 0;
}

.wp-site-blocks > header.wp-block-template-part .wp-block-navigation .wp-block-navigation-item__content,
.wp-site-blocks > header.wp-block-template-part .wp-block-navigation .wp-block-navigation-item__label {
	white-space: nowrap;
	word-break: normal;
	overflow-wrap: normal;
}

@media (max-width: 1024px) {
	.kiosko-header-rightstack .wp-block-navigation__container {
		flex-wrap: wrap !important;
	}

	.kiosko-categorias-trigger {
		min-width: 156px;
		padding: 10px 14px;
	}

	.kiosko-categorias-panel {
		width: min(430px, 82vw);
	}
}

@media (max-width: 782px) {
	.wp-site-blocks > header .wp-block-group.alignwide.is-content-justification-space-between.is-nowrap.is-layout-flex {
		flex-wrap: wrap !important;
		row-gap: 15px;
		align-items: center;
		justify-content: center !important;
	}

	.wp-site-blocks > header .wp-block-group.alignwide.is-content-justification-left.is-layout-flex {
		flex: 1 1 100%;
		min-width: 0;
		justify-content: center !important;
	}

	.wp-site-blocks > header .wp-block-group.alignwide.is-content-justification-left.is-layout-flex .wp-block-image {
		margin: 0 auto;
	}

	.wp-site-blocks > header .wp-block-group.alignwide.is-content-justification-left.is-layout-flex .wp-block-image img {
		max-width: min(70vw, 240px);
		height: auto;
		display: block;
		margin: 0 auto;
	}

	.wp-site-blocks > header.wp-block-template-part .wp-block-woocommerce-customer-account,
	.wp-site-blocks > header.wp-block-template-part .wp-block-navigation {
		flex: 0 0 auto;
	}

	.kiosko-header-rightstack {
		flex: 1 1 100%;
		width: 100%;
	}

	.kiosko-header-search-categorias > .wp-block-group {
		flex-wrap: wrap;
		gap: 10px;
		align-items: center;
	}

	.kiosko-header-search-categorias .wp-block-search {
		order: 1;
		flex: 1 1 100%;
		min-width: 0;
	}

	.kiosko-header-search-categorias .wp-block-shortcode {
		order: 2;
		flex: 0 0 auto;
		min-width: 0;
	}

	.kiosko-header-search-categorias .kiosko-categorias-flyout {
		order: 2;
		flex: 0 0 auto;
		width: auto;
	}

	.kiosko-header-search-categorias .wp-block-woocommerce-mini-cart {
		order: 3;
		flex: 0 0 auto;
		margin-left: auto;
	}

	.kiosko-categorias-flyout {
		display: inline-block;
		width: auto;
		margin-right: 0;
	}

	.kiosko-categorias-trigger {
		min-width: 136px;
		width: auto;
		padding: 9px 12px;
		font-size: 0.95rem;
		justify-content: flex-start;
	}

	.kiosko-categorias-panel::before {
		left: 20px;
		right: auto;
	}

	.kiosko-categorias-panel {
		left: 0;
		right: auto;
		width: min(92vw, 360px);
		max-height: 62vh;
	}

	/* Tighten intro text band spacing on mobile */
	.home main > .wp-block-group.alignwide.has-primary-color.has-text-color.has-link-color {
		padding-top: 22px !important;
		padding-bottom: 22px !important;
	}

	.home main > .wp-block-group.alignwide.has-primary-color.has-text-color.has-link-color > .wp-block-group.alignwide {
		margin-top: 0 !important;
	}

	.home main > .wp-block-group.alignwide.has-primary-color.has-text-color.has-link-color p {
		margin-top: 0;
		margin-bottom: 14px;
	}

	.home main > .wp-block-group.alignwide.has-primary-color.has-text-color.has-link-color p:last-child {
		margin-bottom: 0;
	}
}

@media (min-width: 783px) {
	/* Match tightened intro text band spacing on desktop */
	.home main > .wp-block-group.alignwide.has-primary-color.has-text-color.has-link-color {
		padding-top: 22px !important;
		padding-bottom: 22px !important;
	}

	.home main > .wp-block-group.alignwide.has-primary-color.has-text-color.has-link-color > .wp-block-group.alignwide {
		margin-top: 0 !important;
	}

	.home main > .wp-block-group.alignwide.has-primary-color.has-text-color.has-link-color p {
		margin-top: 0;
		margin-bottom: 14px;
	}

	.home main > .wp-block-group.alignwide.has-primary-color.has-text-color.has-link-color p:last-child {
		margin-bottom: 0;
	}
}

/* Mobile header ordering for current block markup (iPhone + Android, portrait + landscape) */
@media (max-width: 920px), (max-width: 1024px) and (orientation: landscape) {
	.wp-site-blocks > header.wp-block-template-part .wp-block-group.alignwide.is-nowrap.is-layout-flex {
		flex-wrap: wrap !important;
		align-items: flex-start;
		row-gap: 12px;
		column-gap: 10px;
	}

	/* Row 1: logo */
	.wp-site-blocks > header.wp-block-template-part .wp-block-group.alignwide.is-content-justification-left.is-layout-flex {
		order: 1;
		flex: 1 1 100%;
		min-width: 0;
		justify-content: flex-start !important;
	}

	.wp-site-blocks > header.wp-block-template-part .wp-block-group.alignwide.is-content-justification-left.is-layout-flex .wp-block-image {
		display: block;
		margin: 0;
	}

	.wp-site-blocks > header.wp-block-template-part .wp-block-group.alignwide.is-content-justification-left.is-layout-flex .wp-block-image img {
		display: block;
		width: auto;
		height: auto;
		max-width: min(72vw, 260px);
		object-fit: contain !important;
	}

	/* Row 2: search + categories */
	.wp-site-blocks > header.wp-block-template-part .kiosko-header-rightstack {
		order: 2;
		flex: 1 1 100%;
		width: 100%;
	}

	.wp-site-blocks > header.wp-block-template-part .kiosko-header-search-categorias > .wp-block-group {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 10px;
	}

	.wp-site-blocks > header.wp-block-template-part .kiosko-header-search-categorias .wp-block-search {
		order: 1;
		flex: 1 1 100%;
		min-width: 0;
		margin: 0;
		justify-content: center !important;
	}

	.wp-site-blocks > header.wp-block-template-part .kiosko-header-search-categorias .wp-block-search .wp-block-search__inside-wrapper {
		margin: 0 auto;
		max-width: 100%;
	}

	.wp-site-blocks > header.wp-block-template-part .kiosko-header-search-categorias .wp-block-shortcode,
	.wp-site-blocks > header.wp-block-template-part .kiosko-header-search-categorias .kiosko-categorias-flyout {
		order: 2;
		flex: 0 0 auto;
	}

	/* Mini-cart: appears after search (order:1) and categorias (order:2), not before (default order:0) */
	.wp-site-blocks > header.wp-block-template-part .kiosko-header-search-categorias .wp-block-woocommerce-mini-cart {
		order: 3;
		flex: 0 0 auto;
		margin-left: auto;
	}

	/* Row 3: links below search */
	.wp-site-blocks > header.wp-block-template-part nav.wp-block-navigation {
		order: 3;
		flex: 1 1 100%;
		width: 100%;
		margin-top: 2px;
	}

	.wp-site-blocks > header.wp-block-template-part nav.wp-block-navigation .wp-block-navigation__responsive-container-open,
	.wp-site-blocks > header.wp-block-template-part nav.wp-block-navigation .wp-block-navigation__responsive-container-close {
		display: none !important;
	}

	.wp-site-blocks > header.wp-block-template-part nav.wp-block-navigation .wp-block-navigation__responsive-container {
		display: block !important;
		position: static !important;
		inset: auto !important;
		width: 100% !important;
		height: auto !important;
		max-width: none !important;
		background: transparent !important;
		transform: none !important;
	}

	.wp-site-blocks > header.wp-block-template-part nav.wp-block-navigation .wp-block-navigation__responsive-close,
	.wp-site-blocks > header.wp-block-template-part nav.wp-block-navigation .wp-block-navigation__responsive-dialog,
	.wp-site-blocks > header.wp-block-template-part nav.wp-block-navigation .wp-block-navigation__responsive-container-content {
		display: block !important;
		position: static !important;
		width: 100% !important;
		height: auto !important;
		padding: 0 !important;
	}

	.wp-site-blocks > header.wp-block-template-part nav.wp-block-navigation .wp-block-navigation__container {
		display: flex !important;
		flex-direction: row;
		flex-wrap: wrap;
		gap: 12px;
		justify-content: center !important;
	}

	.wp-site-blocks > header.wp-block-template-part .wp-block-woocommerce-customer-account {
		order: 4;
		flex: 0 0 auto;
		margin-left: 0;
	}

	.wp-site-blocks > header.wp-block-template-part .kiosko-categorias-panel {
		left: 0;
		right: auto;
		width: min(92vw, 360px);
		max-height: 62vh;
	}

	.wp-site-blocks > header.wp-block-template-part .kiosko-categorias-panel::before {
		left: 20px;
		right: auto;
	}
}

/* Google Places Autocomplete dropdown z-index fix */
.pac-container { z-index: 999999 !important; }

/* ── Mobile: prevent iOS Safari auto-zoom on search input (must be >= 16px) ── */
@media (max-width: 782px) {
    .wp-block-search__input {
        font-size: 16px !important;
    }
}

/* ── Mobile: product archive/search grid 3-4 cols -> 2 cols on phones ── */
@media (max-width: 640px) {
    .wp-block-post-template.is-layout-grid.columns-3,
    .wp-block-post-template.is-layout-grid.columns-4,
    .wc-block-grid.has-3-columns .wc-block-grid__products,
    .wc-block-grid.has-4-columns .wc-block-grid__products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

/* ── Mobile: header icon tap targets + visual size (mini-cart, customer account, nav links) ── */
@media (max-width: 920px) {
    /* Tap targets >= 44px */
    .wp-site-blocks > header.wp-block-template-part .wp-block-woocommerce-customer-account a,
    .wp-site-blocks > header.wp-block-template-part .wp-block-woocommerce-mini-cart .wc-block-mini-cart__button {
        min-height: 44px;
        min-width: 44px;
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
    }

    /* Mini-cart icon: bump from x-small (~12px) to a clearly visible size */
    .wp-site-blocks > header.wp-block-template-part .wp-block-woocommerce-mini-cart {
        font-size: 1.4rem !important;
    }

    /* Customer account icon */
    .wp-site-blocks > header.wp-block-template-part .wp-block-woocommerce-customer-account {
        font-size: 1.4rem !important;
    }

    /* Mi Cuenta / Carrito nav link text */
    .wp-site-blocks > header.wp-block-template-part nav.wp-block-navigation .wp-block-navigation-item__label {
        font-size: 1rem;
    }
}

/* ── Footer: widen Informacion column so long links don't wrap (desktop) ── */
@media (min-width: 782px) {
    .wp-site-blocks > footer.wp-block-template-part .wp-block-columns.alignwide > .wp-block-column:first-child {
        flex-basis: 33% !important;
    }
    .wp-site-blocks > footer.wp-block-template-part .wp-block-columns.alignwide > .wp-block-column:last-child {
        flex-basis: 27% !important;
    }
}

.woocommerce form.woocommerce-form-login .kiosko-legacy-login-note {
	text-align: left;
	margin: 0 0 1rem;
	font-family: var(--heading--font-family);
	font-size: inherit;
	line-height: 1.5;
}


/* ── Mobile portrait: header Categorías width + account icon row ── */
@media (max-width: 640px) {

    /* 1. Categorías trigger: stretch to match search bar width */
    .wp-site-blocks > header.wp-block-template-part .kiosko-header-search-categorias .kiosko-categorias-flyout {
        flex: 1 1 0;
        min-width: 0;
    }
    .wp-site-blocks > header.wp-block-template-part .kiosko-header-search-categorias .kiosko-categorias-trigger {
        width: 100%;
        box-sizing: border-box;
    }

    /* 2. Pull person icon up to the same row as Mi Cuenta / Carrito.
       Customer account appears before nav in DOM → renders on the left. */
    .wp-site-blocks > header.wp-block-template-part .wp-block-woocommerce-customer-account {
        order: 3; /* was order: 4 */
    }
    .wp-site-blocks > header.wp-block-template-part nav.wp-block-navigation {
        flex: 0 0 auto; /* was flex: 1 1 100% → release full-width claim */
        width: auto;
    }
}

/* ── Mobile portrait: fix nav inner width so account icon shares the row ── */
@media (max-width: 640px) {
    /* Nav inner containers default to width:100% and expand nav to full width;
       override to auto so account icon and nav fit on the same flex row */
    .wp-site-blocks > header.wp-block-template-part nav.wp-block-navigation .wp-block-navigation__responsive-container,
    .wp-site-blocks > header.wp-block-template-part nav.wp-block-navigation .wp-block-navigation__responsive-dialog,
    .wp-site-blocks > header.wp-block-template-part nav.wp-block-navigation .wp-block-navigation__responsive-container-content {
        width: auto !important;
        min-width: 0 !important;
    }
    /* Vertically center account icon with the nav link text */
    .wp-site-blocks > header.wp-block-template-part .wp-block-woocommerce-customer-account {
        align-self: center;
    }
}

/* ── Mobile portrait: reduce product/category page top margin (was 3.5rem) ── */
@media (max-width: 640px) {
    body.single-product .wp-site-blocks > .wp-block-group,
    body.tax-product_cat .wp-site-blocks > .wp-block-group,
    body.post-type-archive-product .wp-site-blocks > .wp-block-group {
        margin-top: 1.25rem !important;
    }
}

/* ── Mobile portrait: fix nav width (max-content breaks flex circular dependency) ── */
@media (max-width: 640px) {
    .wp-site-blocks > header.wp-block-template-part nav.wp-block-navigation {
        width: max-content !important;
    }
}

/* ── Mobile portrait: reduce large top gap on product/shop/category pages ── */
@media (max-width: 640px) {
    .wp-site-blocks > .wp-block-group[style*="--spacing--70"],
    .wp-site-blocks > main[style*="--spacing--70"],
    body.single-product .wp-site-blocks > .wp-block-group > .wp-block-group[style*="--spacing--70"] {
        margin-top: 1.25rem !important;
    }
}

/* ── Mobile portrait: grid layout for header — reliable account icon + nav alignment ── */
/* Replaces flex-wrap approach which has circular width issues inside the nav block */
@media (max-width: 640px) {
    /* Switch parent from flex-wrap to an explicit 2-column grid */
    .wp-site-blocks > header.wp-block-template-part .wp-block-group.alignwide.is-nowrap.is-layout-flex {
        display: grid !important;
        grid-template-columns: auto 1fr;
        grid-template-rows: auto auto auto;
        row-gap: 12px;
        column-gap: 10px;
        align-items: center;
    }
    /* Row 1: logo — spans both columns */
    .wp-site-blocks > header.wp-block-template-part .wp-block-group.alignwide.is-content-justification-left.is-layout-flex {
        grid-column: 1 / -1;
        grid-row: 1;
    }
    /* Row 2: search + categories rightstack — spans both columns */
    .wp-site-blocks > header.wp-block-template-part .kiosko-header-rightstack {
        grid-column: 1 / -1;
        grid-row: 2;
    }
    /* Row 3, col 1: account icon */
    .wp-site-blocks > header.wp-block-template-part .wp-block-woocommerce-customer-account {
        grid-column: 1;
        grid-row: 3;
    }
    /* Row 3, col 2: Mi Cuenta / Carrito nav — fills remaining width */
    .wp-site-blocks > header.wp-block-template-part nav.wp-block-navigation {
        grid-column: 2;
        grid-row: 3;
        width: auto !important;
    }
}

/* Touch target: product title links must meet 24x24px minimum (WCAG 2.5.5) */
h3.wp-block-post-title > a {
    display: inline-block;
    min-height: 44px;
    padding-top: 6px;
    padding-bottom: 6px;
}

/* ── Tablet portrait (641px–919px): compact row with categorias + account + nav + cart ── */
/*    display:contents dissolves the 3 intermediate containers so search, categorias,
      and mini-cart participate directly in the outer header flex alongside account/nav.
      Flex ordering then produces: [Logo] / [Search] / [Categorías 40%][👤][Nav][🛒]   */
@media (min-width: 641px) and (max-width: 919px) and (orientation: portrait) {

    /* Dissolve intermediate layout wrappers — children join the outer header flex */
    .wp-site-blocks > header.wp-block-template-part .kiosko-header-rightstack,
    .wp-site-blocks > header.wp-block-template-part .kiosko-header-search-categorias,
    .wp-site-blocks > header.wp-block-template-part .kiosko-header-search-categorias > .wp-block-group {
        display: contents;
    }

    /* Row 1 — Logo: already order:1 flex:1 1 100% from 920px block (fills row alone) */

    /* Row 2 — Search: order:1 flex:1 1 100% (same group as logo, wraps to its own row) */
    .wp-site-blocks > header.wp-block-template-part .kiosko-header-search-categorias .wp-block-search {
        order: 1;
        flex: 1 1 100%;
        min-width: 0;
        margin: 0;
    }
    .wp-site-blocks > header.wp-block-template-part .kiosko-header-search-categorias .wp-block-search .wp-block-search__inside-wrapper {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
    }

    /* Row 3 — Categorias: order:2 starts row 3 at ~40% width ("half size").
       Account and nav (order:3) fit in the remaining 60%; mini-cart (order:4) anchors right. */
    .wp-site-blocks > header.wp-block-template-part .kiosko-categorias-flyout {
        order: 2;
        flex: 0 0 40%;
        min-width: 0;
    }
    .wp-site-blocks > header.wp-block-template-part .kiosko-categorias-trigger {
        width: 100%;
        box-sizing: border-box;
    }

    /* Row 3 — Account icon: order:3 fits after categorias on the same row */
    .wp-site-blocks > header.wp-block-template-part .wp-block-woocommerce-customer-account {
        order: 3;
        flex: 0 0 auto;
        align-self: center;
        margin-left: 0;
    }

    /* Row 3 — Nav links: order:3 fits after account icon on the same row */
    .wp-site-blocks > header.wp-block-template-part nav.wp-block-navigation {
        order: 3;
        flex: 0 0 auto;
        width: max-content !important;
        margin-top: 0;
    }
    /* Inner nav containers default to width:100%!important — break circular sizing */
    .wp-site-blocks > header.wp-block-template-part nav.wp-block-navigation .wp-block-navigation__responsive-container,
    .wp-site-blocks > header.wp-block-template-part nav.wp-block-navigation .wp-block-navigation__responsive-dialog,
    .wp-site-blocks > header.wp-block-template-part nav.wp-block-navigation .wp-block-navigation__responsive-container-content {
        width: auto !important;
        min-width: 0 !important;
    }

    /* Row 3 — Mini-cart: order:4 anchored to far right via margin-left:auto */
    .wp-site-blocks > header.wp-block-template-part .kiosko-header-search-categorias .wp-block-woocommerce-mini-cart {
        order: 4;
        flex: 0 0 auto;
        margin-left: auto;
    }
}

/* ── Mobile: checkout site-title (store logo) +30% ── */
@media (max-width: 782px) {
    .woocommerce-checkout .wp-block-site-title {
        font-size: calc(var(--wp--preset--font-size--large) * 1.3) !important;
    }
}


/* Compact product pagination */
.kiosko-compact-pagination {
	margin-top: 2.25rem;
}

.kiosko-compact-pagination__inner {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0.65rem;
	flex-wrap: wrap;
}

.kiosko-compact-pagination__inner > p {
	margin: 0;
	display: flex;
}

.kiosko-compact-pagination__numbers {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	flex-wrap: wrap;
}

.kiosko-compact-pagination__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.65rem;
	height: 2.65rem;
	padding: 0 0.95rem;
	border: 1px solid #d6dbe3;
	border-radius: 999px;
	background: #fff;
	color: #2f4f76;
	text-decoration: none !important;
	font-size: 0.96rem;
	font-weight: 500;
	line-height: 1;
	transition: background-color 0.16s ease, border-color 0.16s ease, color 0.16s ease, box-shadow 0.16s ease;
}

.kiosko-compact-pagination__link:hover {
	background: #f3f6fa;
	border-color: #bfc9d8;
	color: #1f3654;
	box-shadow: 0 4px 14px rgba(34, 52, 79, 0.08);
}

.kiosko-compact-pagination__link.is-current {
	background: #2f4f76;
	border-color: #2f4f76;
	color: #fff;
	box-shadow: none;
}

.kiosko-compact-pagination__prev,
.kiosko-compact-pagination__next {
	padding: 0 1.15rem;
}

@media (max-width: 782px) {
	.kiosko-compact-pagination__inner {
		gap: 0.45rem;
	}

	.kiosko-compact-pagination__numbers {
		gap: 0.22rem;
		flex-wrap: nowrap;
	}

	.kiosko-compact-pagination__numbers .kiosko-compact-pagination__link {
		min-width: 1.7rem;
		height: 2.05rem;
		padding: 0 0.45rem;
		font-size: 0.82rem;
	}

	.kiosko-compact-pagination__prev,
	.kiosko-compact-pagination__next {
		padding: 0 0.9rem;
	}
}


/* ── Product description (inline, under price): match excerpt block font ── */
.wc-block-product-description p,
.wc-block-product-description li,
.wc-block-product-description td {
	font-family: var(--wp--preset--font-family--roboto);
	font-size: var(--wp--preset--font-size--medium);
	line-height: 1.555556;
}
