/**
 * Encabezado, pie, menú lateral y barra de abajo de las TIENDAS (inc/sitio-tienda.php y
 * template-parts/encabezado|pie/tienda*.php). En las tiendas reemplaza a styles-header.css,
 * styles-footer.css y menu-sitio.css (que siguen siendo del sitio principal).
 *
 * Colores: las variables del panel (--primary-color, --header-bg, --footer-*…) las imprime
 * tikitopro_tienda_estilos_en_linea(), con el texto que se lee sobre cada fondo ya calculado
 * (--primary-on, --header-fg, --footer-text).
 */

:root {
	--font-primary: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
	--font-secondary: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
	--tk-ancho: 1280px;
	--tk-mover: .28s cubic-bezier(.2, .8, .2, 1);
}

html { scroll-padding-top: calc(var(--tk-enc-alto, 64px) + 8px); }
html.tk-cajon-abierto { overflow: hidden; }

/* La página ocupa al menos la pantalla: el pie queda abajo aunque haya poco contenido. */
#page { display: flex; flex-direction: column; min-height: 100vh; min-height: 100dvh; }
#content { flex: 1 0 auto; padding-bottom: 30px; }

.tk-contenedor {
	box-sizing: border-box;
	width: 100%;
	max-width: var(--tk-ancho);
	margin-inline: auto;
	padding-inline: clamp(16px, 4vw, 32px);
}

.tk-enc a:focus-visible, .tk-enc button:focus-visible, .tk-cajon a:focus-visible, .tk-cajon button:focus-visible,
.tk-barra a:focus-visible, .tk-pie a:focus-visible, .tk-pie button:focus-visible, .tk-anuncio button:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

/* ═══════════ Barra de anuncios ═══════════ */

.tk-anuncio { background: var(--primary-color); color: var(--primary-on, #111827); font-size: .875rem; font-weight: 600; }
.tk-anuncio[hidden] { display: none; }
.tk-anuncio__in { position: relative; display: flex; align-items: center; justify-content: center; min-height: 38px; padding-block: 6px; padding-inline-end: 52px; }
.tk-anuncio__texto { margin: 0; color: inherit; line-height: 1.35; text-align: center; text-decoration: none; }
.tk-anuncio a.tk-anuncio__texto { color: inherit; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.tk-anuncio__cerrar {
	position: absolute; top: 50%; right: clamp(8px, 3vw, 24px); transform: translateY(-50%);
	display: grid; place-items: center; width: 32px; height: 32px; padding: 0;
	color: inherit; font-size: 18px; background: transparent; border: 0; border-radius: 8px; cursor: pointer; opacity: .85;
}
.tk-anuncio__cerrar:hover { opacity: 1; background: rgba(0, 0, 0, .08); }

/* ═══════════ Encabezado ═══════════ */

.tk-enc {
	position: sticky; top: 0; z-index: 1000;
	background: var(--header-bg, #fff); color: var(--header-fg, #111827);
	border-bottom: 1px solid rgba(15, 23, 42, .08);
	transition: transform var(--tk-mover), box-shadow .2s ease;
}
.tk-enc--scrolled { box-shadow: 0 6px 20px rgba(15, 23, 42, .08); }
.tk-enc--oculto { transform: translateY(-100%); }
body.admin-bar .tk-enc { top: 32px; }
@media (max-width: 782px) { body.admin-bar .tk-enc { top: 46px; } }
@media (max-width: 600px) { body.admin-bar .tk-enc { top: 0; } }

.tk-enc a { color: inherit; text-decoration: none; }
.tk-enc .site-branding { padding: 0; }

/* Teléfono y tablet: ☰ · marca · acciones. En Centrado la marca va al medio del espacio libre
   (columnas simétricas harían que un nombre largo se pise con los íconos). */
.tk-enc__barra {
	display: grid; align-items: center; column-gap: 8px; row-gap: 0; min-height: 56px;
	grid-template-columns: auto minmax(0, 1fr) auto;
	grid-template-areas: "menu marca acciones" "estado estado estado";
}

.tk-enc__menu { grid-area: menu; justify-self: start; margin-inline-start: -10px; }
.tk-enc__marca { grid-area: marca; display: flex; align-items: center; min-width: 0; }
.tk-enc--centrado .tk-enc__marca { justify-content: center; }
.tk-enc__acciones { grid-area: acciones; display: flex; align-items: center; justify-content: flex-end; gap: 2px; margin-inline-end: -8px; }
.tk-enc .tk-nav, .tk-enc .tk-enc__buscar { display: none; }

.tk-marca { display: inline-flex; align-items: center; min-width: 0; max-width: 100%; color: inherit; text-decoration: none; }
.tk-marca__logo { display: block; width: auto; height: 40px; max-width: min(200px, 46vw); object-fit: contain; }
.tk-marca__nombre {
	overflow: hidden; font-family: var(--font-secondary); font-size: 1.15rem; font-weight: 800; letter-spacing: -.01em;
	line-height: 1.2; text-overflow: ellipsis; white-space: nowrap;
}

.tk-enc__boton {
	position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	min-width: 44px; height: 44px; padding: 0 10px; box-sizing: border-box;
	color: inherit; font-size: 22px; line-height: 1; border-radius: 12px;
}
.tk-enc__boton:hover { background: rgba(127, 127, 127, .12); }

.tk-carrito__icono { position: relative; display: inline-flex; }
.tk-carrito .cart-contents-count {
	position: absolute; top: -6px; right: -9px; box-sizing: border-box; min-width: 18px; height: 18px; padding: 0 5px;
	color: var(--primary-on, #111827); background: var(--primary-color); border-radius: 999px;
	font-family: var(--font-primary); font-size: 11px; font-weight: 700; line-height: 18px; text-align: center;
}
.tk-carrito.empty .cart-contents-count { display: none; }
.tk-carrito .cart-total-amount { display: none; font-size: .9rem; font-weight: 700; line-height: 1; }
.cart-contents-count.updated, .cart-count.updated { animation: tk-latido .5s ease; }
@keyframes tk-latido { 50% { transform: scale(1.25); } }

.tk-enc__panel {
	display: none; align-items: center; height: 32px; padding: 0 12px; margin-inline-end: 6px;
	border: 1px solid currentColor; border-radius: 999px; font-size: .82rem; font-weight: 700; white-space: nowrap;
}

.tk-consultar {
	display: inline-flex; align-items: center; gap: 8px; height: 40px; padding: 0 14px; margin-inline-start: 4px;
	color: #fff; background: #1faa53; border-radius: 999px; font-size: .9rem; font-weight: 700; text-decoration: none; white-space: nowrap;
}
.tk-enc a.tk-consultar { color: #fff; }
.tk-consultar .tk-ico { font-size: 18px; }
.tk-consultar:hover { background: #178f45; }
@media (max-width: 399px) {
	.tk-consultar { width: 40px; padding: 0; justify-content: center; }
	.tk-consultar span { display: none; }
}

/* «Abierto ahora» */
.tk-estado {
	display: inline-flex; align-items: center; gap: 6px; width: max-content; max-width: 100%; margin: 0; padding: 4px 10px;
	border-radius: 999px; font-size: .78rem; font-weight: 700; line-height: 1.25;
}
.tk-estado[hidden] { display: none; }
.tk-estado::before { content: ""; flex: none; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.tk-estado--abierto { color: #166534; background: #dcfce7; }
.tk-estado--cerrado { color: #991b1b; background: #fee2e2; }
.tk-enc__estado { grid-area: estado; justify-self: start; margin: 0 0 8px; }
.tk-enc--centrado .tk-enc__estado { justify-self: center; }

/* Búsqueda */
.tk-buscar { position: relative; display: flex; align-items: center; margin: 0; }
.tk-buscar .tk-buscar__campo {
	box-sizing: border-box; width: 100%; height: 42px; margin: 0; padding: 0 46px 0 16px;
	color: #111827; background: #f8fafc; border: 1px solid rgba(15, 23, 42, .16); border-radius: 999px; box-shadow: none;
	font-family: var(--font-primary); font-size: 16px; line-height: normal; outline: none; -webkit-appearance: none; appearance: none;
}
.tk-buscar .tk-buscar__campo::placeholder { color: #64748b; opacity: 1; }
.tk-buscar .tk-buscar__campo:focus { background: #fff; border-color: var(--primary-color); box-shadow: 0 0 0 3px rgba(100, 116, 139, .18); }
.tk-buscar .tk-buscar__campo::-webkit-search-cancel-button { -webkit-appearance: none; }
.tk-buscar .tk-buscar__boton {
	position: absolute; top: 50%; right: 4px; transform: translateY(-50%);
	display: grid; place-items: center; width: 36px; height: 36px; padding: 0;
	color: #334155; background: transparent; border: 0; border-radius: 999px; font-size: 18px; cursor: pointer;
}
.tk-buscar .tk-buscar__boton:hover { color: #0f172a; background: rgba(15, 23, 42, .06); }

.tk-buscar-panel { display: none; padding-block: 10px; background: var(--header-bg, #fff); border-top: 1px solid rgba(15, 23, 42, .08); }
.tk-buscar-panel.is-abierto, .tk-buscar-panel:target { display: block; }
.tk-js .tk-buscar-panel:target:not(.is-abierto) { display: none; }
.tk-buscar-panel .tk-contenedor { display: flex; align-items: center; gap: 6px; }
.tk-buscar-panel .tk-buscar { flex: 1; }
.tk-buscar-panel__cerrar { display: grid; place-items: center; flex: none; width: 40px; height: 40px; color: inherit; font-size: 22px; border-radius: 10px; }

/* Menú de arriba (computadora) */
.tk-nav { grid-area: nav; min-width: 0; }
.tk-nav__lista { display: flex; flex-wrap: wrap; align-items: center; gap: 2px; margin: 0; padding: 0; list-style: none; }
.tk-nav__lista > li { position: relative; display: flex; align-items: center; margin: 0; }
.tk-nav__lista > li > a {
	display: block; padding: 10px 12px; color: inherit; border-radius: 10px;
	font-size: .95rem; font-weight: 600; line-height: 1.2; white-space: nowrap;
}
.tk-nav__lista > li > a:hover { background: rgba(127, 127, 127, .12); }
.tk-nav__lista > .current-menu-item > a,
.tk-nav__lista > .current-menu-ancestor > a,
.tk-nav__lista > .current_page_item > a { box-shadow: inset 0 -2px 0 var(--primary-color); border-radius: 10px 10px 0 0; }
.tk-nav a[href="#"] { cursor: default; }
.tk-nav .tk-sub__boton {
	display: inline-grid; place-items: center; width: 26px; height: 26px; margin-inline-start: -8px; padding: 0;
	color: inherit; background: transparent; border: 0; border-radius: 6px; font-size: 14px; cursor: pointer;
}
.tk-nav .tk-sub__boton svg { transition: transform .2s ease; }
.tk-nav .is-abierto > .tk-sub__boton svg { transform: rotate(180deg); }
.tk-nav .sub-menu {
	position: absolute; top: 100%; left: 0; z-index: 1001; display: none; min-width: 220px; margin: 0; padding: 8px;
	color: #111827; background: #fff; border: 1px solid rgba(15, 23, 42, .08); border-radius: 12px;
	box-shadow: 0 16px 40px rgba(15, 23, 42, .14); list-style: none;
}
.tk-nav li:hover > .sub-menu, .tk-nav li.is-abierto > .sub-menu { display: block; }
.tk-nav .sub-menu li { margin: 0; }
.tk-nav .sub-menu a { display: block; padding: 9px 12px; color: #111827; border-radius: 8px; font-size: .92rem; font-weight: 500; white-space: nowrap; }
.tk-nav .sub-menu a:hover, .tk-nav .sub-menu a:focus-visible { background: #f1f5f9; }
.tk-nav .sub-menu .current-menu-item > a { font-weight: 700; }
.tk-nav .sub-menu .tk-sub__boton, .tk-nav .sub-menu .sub-menu { display: none; }

/* Computadora. Clásico: marca · («Abierto ahora») · menú · (búsqueda) · acciones; las columnas
   que no hay no se arman, para que no quede un hueco. */
@media (min-width: 1024px) {
	.tk-enc__barra { min-height: 72px; column-gap: 20px; }
	.tk-enc--clasico .tk-enc__barra { grid-template-columns: auto minmax(0, 1fr) auto; grid-template-areas: "marca nav acciones"; }
	.tk-enc--clasico.tk-enc--estado .tk-enc__barra { grid-template-columns: auto auto minmax(0, 1fr) auto; grid-template-areas: "marca estado nav acciones"; }
	.tk-enc--centrado .tk-enc__barra {
		grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
		grid-template-areas: "buscar marca acciones" "estado estado estado" "nav nav nav";
		padding-top: 8px;
	}
	.tk-enc .tk-enc__menu { display: none; }
	.tk-enc .tk-nav { display: block; }
	.tk-enc--clasico .tk-nav__lista { justify-content: center; }
	.tk-enc--centrado .tk-nav__lista { justify-content: center; padding-block: 4px 8px; }
	.tk-enc__estado { margin: 0; }
	.tk-enc--centrado .tk-enc__estado { margin: 0 0 4px; }
	.tk-marca__logo { height: 48px; max-width: 240px; }
	.tk-marca__nombre { font-size: 1.35rem; }
	.tk-enc__panel { display: inline-flex; }
	.tk-carrito .cart-total-amount { display: inline-block; }
	.tk-enc__acciones { gap: 4px; }
	/* Centrado: la búsqueda a la izquierda desde que entra la computadora. */
	.tk-enc--centrado .tk-enc__buscar { display: flex; grid-area: buscar; justify-self: start; width: min(100%, 300px); }
	.tk-enc--centrado .tk-enc__lupa { display: none; }
	.tk-buscar-panel { display: none; }
	.tk-enc--clasico .tk-buscar-panel.is-abierto { display: block; }
	.tk-js .tk-enc--clasico .tk-buscar-panel:target:not(.is-abierto) { display: none; }
	.tk-enc--centrado .tk-buscar-panel, .tk-enc--centrado .tk-buscar-panel.is-abierto { display: none; }
}
@media (min-width: 1200px) {
	/* Clásico: el campo de búsqueda entra a partir de acá; antes, la lupa abre la capa. */
	.tk-enc--clasico.tk-enc--buscar .tk-enc__barra { grid-template-columns: auto minmax(0, 1fr) auto auto; grid-template-areas: "marca nav buscar acciones"; }
	.tk-enc--clasico.tk-enc--buscar.tk-enc--estado .tk-enc__barra { grid-template-columns: auto auto minmax(0, 1fr) auto auto; grid-template-areas: "marca estado nav buscar acciones"; }
	.tk-enc--clasico .tk-enc__buscar { display: flex; grid-area: buscar; width: clamp(200px, 20vw, 300px); }
	.tk-enc--clasico .tk-enc__lupa { display: none; }
	.tk-enc--clasico .tk-buscar-panel, .tk-enc--clasico .tk-buscar-panel.is-abierto { display: none; }
}

/* Teléfono: la cuenta está en la barra de abajo. */
@media (max-width: 767px) {
	body.tk-con-barra .tk-enc__cuenta { display: none; }
}

/* ═══════════ Menú lateral ═══════════ */

.tk-cajon { position: fixed; inset: 0; z-index: 10000; visibility: hidden; pointer-events: none; transition: visibility 0s linear .3s; }
.tk-cajon.is-abierto, .tk-cajon:target { visibility: visible; pointer-events: auto; transition-delay: 0s; }
.tk-js .tk-cajon:target:not(.is-abierto) { visibility: hidden; pointer-events: none; }
.tk-cajon__fondo { position: absolute; inset: 0; background: rgba(15, 23, 42, .5); opacity: 0; transition: opacity .3s ease; }
.tk-cajon.is-abierto .tk-cajon__fondo, .tk-cajon:target .tk-cajon__fondo { opacity: 1; }
.tk-cajon__panel {
	position: absolute; top: 0; bottom: 0; left: 0; display: flex; flex-direction: column;
	width: min(86vw, 360px); overflow-y: auto; overscroll-behavior: contain;
	color: #111827; background: #fff; box-shadow: 8px 0 32px rgba(15, 23, 42, .2);
	transform: translateX(-100%); transition: transform .3s cubic-bezier(.2, .8, .2, 1);
	padding-bottom: env(safe-area-inset-bottom);
}
.tk-cajon.is-abierto .tk-cajon__panel, .tk-cajon:target .tk-cajon__panel { transform: none; }
.tk-js .tk-cajon:target:not(.is-abierto) .tk-cajon__panel { transform: translateX(-100%); }
.tk-cajon a { color: #111827; text-decoration: none; }
.tk-cajon__cabecera {
	display: flex; align-items: center; justify-content: space-between; gap: 12px;
	min-height: 60px; padding: 8px 12px 8px 16px; border-bottom: 1px solid #eef2f7;
}
.tk-cajon .tk-marca__logo { height: 36px; max-width: 200px; }
.tk-cajon .tk-marca__nombre { font-size: 1.1rem; }
.tk-cajon__cerrar { display: grid; place-items: center; flex: none; width: 44px; height: 44px; font-size: 22px; border-radius: 10px; }
.tk-cajon__cerrar:hover { background: #f1f5f9; }
.tk-cajon__estado { margin: 12px 16px 0; }
.tk-cajon__lista { margin: 0; padding: 8px; list-style: none; }
.tk-cajon__lista li { position: relative; margin: 0; }
.tk-cajon__lista a { display: flex; align-items: center; gap: 12px; min-height: 48px; padding: 0 12px; border-radius: 10px; font-size: 1rem; font-weight: 600; }
.tk-cajon__lista a:hover { background: #f1f5f9; }
.tk-cajon__lista .current-menu-item > a { background: #f1f5f9; box-shadow: inset 3px 0 0 var(--primary-color); }
.tk-cajon__lista .menu-item-has-children > a { padding-right: 52px; }
.tk-cajon .tk-sub__boton {
	position: absolute; top: 4px; right: 4px; display: grid; place-items: center; width: 40px; height: 40px; padding: 0;
	color: #334155; background: transparent; border: 1px solid #e2e8f0; border-radius: 10px; font-size: 16px; cursor: pointer;
}
.tk-cajon .tk-sub__boton svg { transition: transform .2s ease; }
.tk-cajon .is-abierto > .tk-sub__boton svg { transform: rotate(180deg); }
.tk-cajon .sub-menu { display: none; margin: 0 0 6px 16px; padding: 0 0 0 10px; list-style: none; border-left: 2px solid var(--primary-color); }
.tk-cajon .is-abierto > .sub-menu { display: block; }
.tk-cajon .sub-menu a { min-height: 42px; font-size: .95rem; font-weight: 500; }
.tk-cajon__cuenta { margin-top: 4px; border-top: 1px solid #eef2f7; }
.tk-cajon__cuenta .tk-ico { color: #475569; font-size: 1.15em; }
.tk-cajon a.tk-cajon__wa {
	display: flex; align-items: center; justify-content: center; gap: 8px; margin: auto 16px 16px; padding: 13px 16px;
	color: #fff; background: #1faa53; border-radius: 12px; font-weight: 700;
}
.tk-cajon a.tk-cajon__wa:hover { background: #178f45; }

/* ═══════════ Barra de abajo (teléfono) ═══════════ */

.tk-barra { display: none; }
@media (max-width: 767px) {
	.tk-barra {
		position: fixed; right: 0; bottom: 0; left: 0; z-index: 999;
		display: grid; grid-auto-columns: 1fr; grid-auto-flow: column;
		padding-bottom: env(safe-area-inset-bottom);
		color: var(--header-fg, #111827); background: var(--header-bg, #fff);
		border-top: 1px solid rgba(15, 23, 42, .1); box-shadow: 0 -6px 20px rgba(15, 23, 42, .06);
		transition: transform var(--tk-mover);
	}
	.tk-barra--oculta { transform: translateY(100%); }
	.tk-barra .tk-barra__item {
		display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px;
		min-height: 58px; padding: 4px 2px; color: inherit; opacity: .72; font-size: 11px; font-weight: 600; line-height: 1.1;
		text-align: center; text-decoration: none;
	}
	.tk-barra .tk-barra__item .tk-ico { font-size: 22px; }
	.tk-barra .tk-barra__item.is-actual { opacity: 1; box-shadow: inset 0 2px 0 var(--primary-color); }
	.tk-barra__icono { position: relative; display: inline-flex; }
	.tk-barra .cart-count {
		position: absolute; top: -5px; right: -10px; box-sizing: border-box; min-width: 17px; height: 17px; padding: 0 4px;
		color: var(--primary-on, #111827); background: var(--primary-color); border-radius: 999px;
		font-size: 10px; font-weight: 700; line-height: 17px; text-align: center;
	}
	.tk-barra__carrito.empty .cart-count { display: none; }
	.tk-barra .tk-barra__consultar { opacity: 1; color: #178f45; }
	/* Lugar para la barra al final de la página. */
	body.tk-con-barra .site-footer { padding-bottom: calc(58px + env(safe-area-inset-bottom)); }
}

/* ═══════════ Pie ═══════════ */

.tk-pie {
	--tk-pie-bg: var(--footer-bg, #111);
	--tk-pie-txt: var(--footer-text, #fff);
	--tk-pie-titulo: var(--footer-text, #fff);
	--tk-pie-link: var(--footer-link, #ddd);
	--tk-pie-link-h: var(--footer-link-hover, #fff);
	--tk-pie-borde: rgba(127, 127, 127, .28);
	padding: 0; color: var(--tk-pie-txt); background: var(--tk-pie-bg); font-size: .95rem; line-height: 1.5;
}
@supports (color: color-mix(in srgb, red 50%, blue)) {
	.tk-pie { --tk-pie-borde: color-mix(in srgb, var(--tk-pie-txt) 16%, transparent); }
}
.tk-pie--claro {
	--tk-pie-bg: #f8fafc;
	--tk-pie-txt: #334155;
	--tk-pie-titulo: #0f172a;
	--tk-pie-link: #334155;
	--tk-pie-link-h: #0f172a;
	border-top: 1px solid #e2e8f0;
}
.tk-pie a { color: var(--tk-pie-link); text-decoration: none; }
.tk-pie a:hover { color: var(--tk-pie-link-h); text-decoration: underline; text-underline-offset: 3px; }
.tk-pie p { margin: 0; }

.tk-pie__cols {
	display: grid; gap: 32px;
	grid-template-columns: minmax(240px, 1.4fr) repeat(auto-fit, minmax(170px, 1fr));
	padding-block: 48px 32px;
}
.tk-pie .tk-marca { color: var(--tk-pie-titulo); }
.tk-pie .tk-marca:hover { text-decoration: none; }
.tk-pie .tk-marca__logo { height: 44px; max-width: 200px; }
.tk-pie .tk-marca__nombre { font-size: 1.3rem; }
.tk-pie__descripcion { max-width: 38ch; margin-top: 12px !important; opacity: .85; line-height: 1.55; }
.tk-pie__redes { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.tk-pie a.tk-pie__red {
	display: grid; place-items: center; width: 38px; height: 38px; color: var(--tk-pie-txt);
	border: 1px solid var(--tk-pie-borde); border-radius: 999px; font-size: 17px;
}
.tk-pie a.tk-pie__red:hover { color: var(--primary-on, #111827); background: var(--primary-color); border-color: var(--primary-color); text-decoration: none; }
.tk-pie__horario { margin-top: 22px; }
.tk-pie__horario .tk-estado { margin-bottom: 8px; }
.tk-pie__subtitulo {
	display: flex; align-items: center; gap: 6px; margin: 0 0 10px !important;
	font-size: .78rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; opacity: .75;
}
.tk-pie__horas { display: grid; gap: 4px; max-width: 280px; margin: 0; padding: 0; list-style: none; font-size: .9rem; }
.tk-pie__horas li { display: flex; justify-content: space-between; gap: 12px; }
.tk-pie__horas li span:first-child { opacity: .75; }

.tk-pie .tk-pie__titulo {
	margin: 0 0 14px; color: var(--tk-pie-titulo); font-family: var(--font-primary);
	font-size: .8rem; font-weight: 700; letter-spacing: .06em; line-height: 1.3; text-transform: uppercase;
}
.tk-pie__lista, .tk-pie__contacto { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.tk-pie__lista li, .tk-pie__contacto li { margin: 0; }
.tk-pie__contacto li { display: flex; align-items: flex-start; gap: 10px; line-height: 1.45; }
.tk-pie__contacto .tk-ico { flex: none; margin-top: 2px; font-size: 1.05em; opacity: .8; }
.tk-pie__contacto li > a, .tk-pie__contacto li > span { min-width: 0; overflow-wrap: anywhere; }
.tk-pie__col { min-width: 0; }

.tk-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0 0; padding: 0; list-style: none; }
.tk-chip {
	display: inline-flex; align-items: center; gap: 6px; margin: 0; padding: 6px 12px;
	border: 1px solid var(--tk-pie-borde); border-radius: 999px; font-size: .82rem; font-weight: 600; line-height: 1.2;
}
.tk-pie__pagos { padding-bottom: 28px; }
.tk-pie__pagos .tk-chips { margin-top: 0; }

.tk-pie__final { border-top: 1px solid var(--tk-pie-borde); }
.tk-pie__final-in { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; padding-block: 18px; font-size: .85rem; }
.tk-pie__copy { opacity: .8; }
.tk-pie a.tk-pie__wopy { color: inherit; font-size: .8rem; opacity: .75; }
.tk-pie a.tk-pie__wopy:hover { opacity: 1; }

/* Mínimo: una línea. */
.tk-pie--minimo .tk-pie__linea { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 24px; padding-block: 20px; font-size: .9rem; }
.tk-pie__enlaces { display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 0; padding: 0; list-style: none; }
.tk-pie__enlaces li { margin: 0; }
.tk-pie__enlaces a { display: inline-flex; align-items: center; gap: 6px; }
.tk-pie--minimo .tk-pie__redes { margin: 0; }
.tk-pie--minimo a.tk-pie__red { width: 34px; height: 34px; font-size: 15px; }

/* Pie en el teléfono: una columna, y las secciones en acordeón (js/tienda.js). */
@media (max-width: 767px) {
	.tk-pie__cols { grid-template-columns: 1fr; gap: 0; padding-block: 32px 8px; }
	.tk-pie__col--marca { padding-bottom: 24px; }
	.tk-pie__col[data-tk-acordeon] { border-top: 1px solid var(--tk-pie-borde); }
	.tk-pie__col[data-tk-acordeon] .tk-pie__titulo { margin: 0; padding: 16px 0; }
	.tk-js .tk-pie__col[data-tk-acordeon] .tk-pie__titulo { padding: 0; }
	.tk-pie .tk-pie__plegar {
		display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: 52px; margin: 0; padding: 0;
		color: inherit; background: transparent; border: 0; box-shadow: none;
		font: inherit; letter-spacing: inherit; text-align: left; text-transform: inherit; cursor: pointer;
	}
	.tk-pie__plegar svg { flex: none; font-size: 18px; transition: transform .2s ease; }
	.tk-pie__plegar[aria-expanded="true"] svg { transform: rotate(180deg); }
	.tk-pie__cuerpo { padding-bottom: 18px; }
	.tk-pie__cuerpo[hidden] { display: none; }
	.tk-pie__pagos { padding-top: 8px; }
	.tk-pie__final-in { flex-direction: column; justify-content: center; text-align: center; }
	.tk-pie--minimo .tk-pie__linea { flex-direction: column; justify-content: center; text-align: center; }
	.tk-pie--minimo .tk-pie__enlaces { justify-content: center; }
}

/* ═══════════ Mini-carrito ═══════════ */

/* Su CSS (woocommerce-mini-cart.css) no frena la página: hasta que llega, el cajón queda oculto. */
.mini-cart-container { position: fixed; inset: 0; z-index: 9999; visibility: hidden; pointer-events: none; }
.mini-cart-container.active { visibility: visible; pointer-events: auto; }
.mini-cart-close .tk-ico { font-size: 20px; }
.mini-cart-container.is-cargando .widget_shopping_cart_content:empty::before {
	content: "Cargando…"; display: block; padding: 2rem 0; color: #64748b; text-align: center;
}
.mini-cart-container.is-cargando .widget_shopping_cart_content:not(:empty) { opacity: .6; transition: opacity .2s ease; }

/* ═══════════ Página no encontrada (template-parts/tienda-404.php) ═══════════ */

.tk-404 { max-width: 560px; margin: 0 auto; padding: clamp(40px, 8vw, 96px) 0; text-align: center; }
.tk-404__codigo {
	margin: 0; color: var(--primary-color); font-family: var(--font-secondary);
	font-size: clamp(72px, 16vw, 128px); font-weight: 800; letter-spacing: -.04em; line-height: 1;
}
.tk-404__titulo { margin: 16px 0 8px; font-size: clamp(1.4rem, 3vw, 1.9rem); }
.tk-404__texto { margin: 0 0 24px; color: #475569; }
.tk-404__buscar { max-width: 440px; margin: 0 auto 24px; }
.tk-404__acciones { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 12px 20px; }
.tk-404__boton { display: inline-block; }
.tk-404__enlace { font-weight: 600; }

/* ═══════════ Modo sistema del POS (Mi cuenta sin encabezado ni pie) ═══════════ */

body.pos-cuenta-sistema .tk-anuncio,
body.pos-cuenta-sistema .tk-cajon,
body.pos-cuenta-sistema .tk-barra { display: none !important; }

@media (prefers-reduced-motion: reduce) {
	.tk-enc, .tk-barra, .tk-cajon, .tk-cajon__panel, .tk-cajon__fondo, .tk-nav .tk-sub__boton svg { transition: none; }
}
