/* ==========================================================================
   Vestido de la tienda con el diseño de psicojuridicamente.com
   Se aplica solo a producto, carrito, finalizar compra y mi cuenta.
   ========================================================================== */

body.pj-tienda {
  --pj-bg:        #050b18;
  --pj-primary:   #0b1220;
  --pj-soft:      #111827;
  --pj-accent:    #f4c15a;
  --pj-accent-2:  #ffd76f;
  --pj-text:      #f9fafb;
  --pj-muted:     #9ca3af;
  --pj-card:      #020617;
  --pj-border:    rgba(148, 163, 184, 0.3);
  --pj-radius:    18px;
  --pj-radius-lg: 26px;
  --pj-shadow:    0 18px 40px rgba(15, 23, 42, 0.7);

  background: radial-gradient(circle at top, #111827 0, #020617 50%, #000 100%) !important;
  background-attachment: fixed;
  color: var(--pj-text);
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

body.pj-tienda h1, body.pj-tienda h2, body.pj-tienda h3,
body.pj-tienda h4, body.pj-tienda p, body.pj-tienda li,
body.pj-tienda label, body.pj-tienda span, body.pj-tienda td, body.pj-tienda th {
  color: var(--pj-text);
}
body.pj-tienda a { color: var(--pj-accent); }
body.pj-tienda a:hover { color: var(--pj-accent-2); }

/* ---------- CABECERA (igual que la barra del resto de la web) ---------- */
body.pj-tienda .site-header {
  background: rgba(2, 6, 23, 0.95);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  position: sticky; top: 0; z-index: 999;
  box-shadow: none;
}
body.pj-tienda .site-header .header-inner {
  max-width: 1200px; margin: 0 auto; padding: 0.8rem 1.5rem;
}
body.pj-tienda .site-logo img { height: 38px; width: auto; object-fit: contain; }
body.pj-tienda .site-description { color: var(--pj-muted); }
body.pj-tienda .site-navigation ul.menu > li > a {
  position: relative;
  color: #e5e7eb;
  font-size: 0.85rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  padding: 0.4rem 0;
  transition: color 0.25s ease;
}
body.pj-tienda .site-navigation ul.menu > li > a::after {
  content: ""; position: absolute; left: 0; bottom: -6px;
  width: 0; height: 2px;
  background: linear-gradient(90deg, var(--pj-accent), var(--pj-accent-2));
  transition: width 0.3s ease;
}
body.pj-tienda .site-navigation ul.menu > li > a:hover { color: var(--pj-accent-2); }
body.pj-tienda .site-navigation ul.menu > li > a:hover::after { width: 100%; }
body.pj-tienda .site-navigation-dropdown { background: rgba(2, 6, 23, 0.98); }
body.pj-tienda .site-navigation-toggle { background: transparent; color: var(--pj-accent); }

/* ---------- ZONA DE CONTENIDO ---------- */
body.pj-tienda #primary,
body.pj-tienda .site-main {
  max-width: 1140px;
  margin: 0 auto;
  padding: 2.5rem 1.5rem 4.5rem;
  width: 100%;
}
body.pj-tienda .woocommerce-breadcrumb {
  color: var(--pj-muted); font-size: 0.82rem;
  letter-spacing: 0.06em; margin-bottom: 1.6rem;
}
body.pj-tienda .woocommerce-breadcrumb a { color: var(--pj-muted); }
body.pj-tienda .woocommerce-breadcrumb a:hover { color: var(--pj-accent); }

/* ---------- FICHA DEL PRODUCTO ---------- */
body.pj-tienda div.product { display: grid; gap: 2.4rem; }
@media (min-width: 900px) {
  body.pj-tienda div.product {
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    align-items: start;
  }
  body.pj-tienda div.product .woocommerce-tabs { grid-column: 1 / -1; }
}
body.pj-tienda .woocommerce-product-gallery img {
  border-radius: var(--pj-radius-lg);
  border: 1px solid var(--pj-border);
  box-shadow: var(--pj-shadow);
  display: block; width: 100%; height: auto;
}
body.pj-tienda .woocommerce-product-gallery__trigger { display: none; }

body.pj-tienda .product_title {
  font-size: clamp(1.7rem, 3vw, 2.4rem);
  line-height: 1.2; letter-spacing: -0.01em; margin-bottom: 0.9rem;
}
body.pj-tienda .summary p.price,
body.pj-tienda .summary .woocommerce-Price-amount {
  color: var(--pj-accent) !important;
  font-size: 1.9rem; font-weight: 700; letter-spacing: -0.01em;
}
body.pj-tienda .summary p.price { margin-bottom: 1.1rem; }
body.pj-tienda .woocommerce-product-details__short-description {
  color: #d1d5db; font-size: 1.02rem; margin-bottom: 1.4rem;
}
body.pj-tienda .product_meta { display: none; }

/* El formulario de compra, como una tarjeta */
body.pj-tienda form.cart {
  background: linear-gradient(145deg, rgba(15, 23, 42, 0.98), #020617);
  border: 1px solid var(--pj-border);
  border-radius: var(--pj-radius);
  box-shadow: var(--pj-shadow);
  padding: 1.5rem;
}
body.pj-tienda form.cart .quantity { display: none; }

body.pj-tienda .single_add_to_cart_button,
body.pj-tienda .wc-block-components-button:not(.is-link),
body.pj-tienda .wc-block-cart__submit-button,
body.pj-tienda .woocommerce-button,
body.pj-tienda .button.alt {
  background: linear-gradient(135deg, var(--pj-accent), var(--pj-accent-2)) !important;
  color: #020617 !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 0.85rem 1.7rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em;
  box-shadow: 0 10px 24px rgba(244, 193, 90, 0.18);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  width: 100%;
  justify-content: center;
}
body.pj-tienda .single_add_to_cart_button:hover,
body.pj-tienda .wc-block-components-button:not(.is-link):hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 30px rgba(244, 193, 90, 0.28);
}

/* Pestañas de descripción */
body.pj-tienda .woocommerce-tabs ul.tabs {
  border-bottom: 1px solid var(--pj-border); padding: 0; margin-bottom: 1.4rem;
}
body.pj-tienda .woocommerce-tabs ul.tabs::before { display: none; }
body.pj-tienda .woocommerce-tabs ul.tabs li {
  background: transparent !important; border: none !important;
  border-radius: 0 !important; margin: 0 1.4rem 0 0 !important; padding: 0 !important;
}
body.pj-tienda .woocommerce-tabs ul.tabs li::before,
body.pj-tienda .woocommerce-tabs ul.tabs li::after { display: none !important; }
body.pj-tienda .woocommerce-tabs ul.tabs li a {
  color: var(--pj-muted) !important; text-transform: uppercase;
  letter-spacing: 0.12em; font-size: 0.8rem; padding: 0.7rem 0 !important;
  display: inline-block; border-bottom: 2px solid transparent;
}
body.pj-tienda .woocommerce-tabs ul.tabs li.active a {
  color: var(--pj-accent) !important; border-bottom-color: var(--pj-accent);
}
body.pj-tienda .woocommerce-Tabs-panel h2 { display: none; }
body.pj-tienda .woocommerce-Tabs-panel p { color: #d1d5db; }

/* ---------- SELECTOR DE CITA EN OSCURO ---------- */
body.pj-tienda .pj-agenda {
  background: rgba(148, 163, 184, 0.06);
  border-color: rgba(244, 193, 90, 0.4);
  margin: 0 0 1.3rem;
}
body.pj-tienda .pj-agenda__titulo { color: var(--pj-text); }
body.pj-tienda .pj-agenda__label,
body.pj-tienda .pj-agenda__nota,
body.pj-tienda .pj-agenda__aviso { color: var(--pj-muted); opacity: 1; }
body.pj-tienda .pj-agenda input[type="date"] {
  background: var(--pj-primary); color: var(--pj-text);
  border: 1px solid var(--pj-border); color-scheme: dark;
}
body.pj-tienda .pj-hora {
  color: #e5e7eb; border-color: var(--pj-border); background: rgba(2, 6, 23, 0.6);
}
body.pj-tienda .pj-hora:hover { border-color: var(--pj-accent); color: var(--pj-accent-2); }
body.pj-tienda .pj-hora[aria-pressed="true"] {
  background: linear-gradient(135deg, var(--pj-accent), var(--pj-accent-2));
  color: #020617; border-color: var(--pj-accent);
}

/* ---------- CARRITO Y FINALIZAR COMPRA (bloques) ---------- */
body.pj-tienda .wc-block-components-title,
body.pj-tienda .wc-block-components-product-name,
body.pj-tienda .wc-block-components-totals-item__label,
body.pj-tienda .wc-block-components-totals-item__value,
body.pj-tienda .wc-block-components-order-summary-item__description,
body.pj-tienda .wc-block-components-checkout-step__title,
body.pj-tienda .wc-block-cart__submit-container,
body.pj-tienda .wp-block-woocommerce-cart-order-summary-block { color: var(--pj-text); }

body.pj-tienda .wc-block-components-product-name { color: var(--pj-text) !important; }
body.pj-tienda .wc-block-components-product-metadata__description,
body.pj-tienda .wc-block-components-product-details,
body.pj-tienda .wc-block-components-checkout-step__description { color: var(--pj-muted); }

body.pj-tienda .wp-block-woocommerce-cart-order-summary-block,
body.pj-tienda .wc-block-components-sidebar .wc-block-components-panel,
body.pj-tienda .wc-block-checkout__sidebar .wc-block-components-panel,
body.pj-tienda .wc-block-components-order-summary {
  background: linear-gradient(145deg, rgba(15, 23, 42, 0.98), #020617);
  border: 1px solid var(--pj-border);
  border-radius: var(--pj-radius);
  padding: 1.3rem;
  box-shadow: var(--pj-shadow);
}
body.pj-tienda .wc-block-components-totals-wrapper { border-color: var(--pj-border); }
body.pj-tienda .wc-block-cart-items__row,
body.pj-tienda .wc-block-components-order-summary-item { border-color: var(--pj-border) !important; }
body.pj-tienda table.wc-block-cart-items,
body.pj-tienda table.wc-block-cart-items th,
body.pj-tienda table.wc-block-cart-items td { background: transparent; color: var(--pj-text); border-color: var(--pj-border); }
body.pj-tienda .wc-block-cart-items__header { color: var(--pj-muted); border-bottom-color: var(--pj-border); }
body.pj-tienda .wc-block-cart-item__image img {
  border-radius: 12px; border: 1px solid var(--pj-border);
}

/* Campos de formulario */
body.pj-tienda .wc-block-components-text-input input,
body.pj-tienda .wc-block-components-textarea,
body.pj-tienda .wc-block-components-select__container,
body.pj-tienda .wc-block-components-select select,
body.pj-tienda input[type="text"], body.pj-tienda input[type="email"],
body.pj-tienda input[type="tel"], body.pj-tienda input[type="password"],
body.pj-tienda input[type="number"], body.pj-tienda textarea, body.pj-tienda select {
  background: var(--pj-primary) !important;
  color: var(--pj-text) !important;
  border: 1px solid var(--pj-border) !important;
  border-radius: 10px !important;
  color-scheme: dark;
}
body.pj-tienda .wc-block-components-text-input input:focus,
body.pj-tienda input:focus, body.pj-tienda textarea:focus, body.pj-tienda select:focus {
  border-color: var(--pj-accent) !important;
  box-shadow: 0 0 0 3px rgba(244, 193, 90, 0.18) !important;
  outline: none;
}
body.pj-tienda .wc-block-components-text-input label,
body.pj-tienda .wc-block-components-checkbox__label,
body.pj-tienda .wc-block-components-radio-control__label { color: var(--pj-muted) !important; }
body.pj-tienda .wc-block-components-text-input.is-active label { color: var(--pj-accent) !important; }
body.pj-tienda .wc-block-components-checkbox__input { accent-color: var(--pj-accent); }

/* Métodos de pago */
body.pj-tienda .wc-block-components-radio-control-accordion-option,
body.pj-tienda .wc-block-components-radio-control__option {
  background: rgba(148, 163, 184, 0.06);
  border: 1px solid var(--pj-border);
  border-radius: 12px; margin-bottom: 0.6rem;
}
body.pj-tienda .wc-block-components-radio-control-accordion-content { color: var(--pj-muted); }

/* Avisos */
body.pj-tienda .woocommerce-message,
body.pj-tienda .woocommerce-info,
body.pj-tienda .wc-block-components-notice-banner {
  background: rgba(148, 163, 184, 0.08) !important;
  border: 1px solid var(--pj-border) !important;
  border-left: 4px solid var(--pj-accent) !important;
  border-radius: 12px; color: var(--pj-text) !important;
}
body.pj-tienda .woocommerce-error {
  background: rgba(220, 38, 38, 0.12) !important;
  border: 1px solid rgba(220, 38, 38, 0.5) !important;
  border-radius: 12px; color: #fecaca !important;
}
body.pj-tienda .woocommerce-message a.button {
  background: transparent !important; color: var(--pj-accent) !important;
  border: 1px solid var(--pj-accent) !important; box-shadow: none;
  width: auto; padding: 0.5rem 1.1rem !important;
}

/* Carrito vacío */
body.pj-tienda .wp-block-woocommerce-empty-cart-block { text-align: center; }

/* Mi cuenta */
body.pj-tienda .woocommerce-MyAccount-navigation ul { list-style: none; padding: 0; }
body.pj-tienda .woocommerce-MyAccount-navigation li {
  border-bottom: 1px solid var(--pj-border);
}
body.pj-tienda .woocommerce-MyAccount-navigation li a {
  display: block; padding: 0.7rem 0; color: #e5e7eb;
  text-transform: uppercase; letter-spacing: 0.1em; font-size: 0.8rem;
}
body.pj-tienda .woocommerce-MyAccount-navigation li.is-active a { color: var(--pj-accent); }

/* ---------- PIE ---------- */
body.pj-tienda .site-footer {
  background: rgba(2, 6, 23, 0.6);
  border-top: 1px solid rgba(148, 163, 184, 0.18);
  padding: 2rem 1.5rem;
}
body.pj-tienda .site-footer .footer-inner {
  max-width: 1200px; margin: 0 auto;
}
body.pj-tienda .site-footer .copyright,
body.pj-tienda .site-footer .site-description { color: var(--pj-muted); font-size: 0.85rem; }

/* ---------- CELULAR ---------- */
@media (max-width: 640px) {
  body.pj-tienda #primary, body.pj-tienda .site-main { padding: 1.6rem 1rem 3rem; }
  body.pj-tienda .product_title { font-size: 1.5rem; }
  body.pj-tienda .summary p.price,
  body.pj-tienda .summary .woocommerce-Price-amount { font-size: 1.55rem; }
  body.pj-tienda form.cart { padding: 1.1rem; }
}

/* ---------- MIENTRAS CARGA (evita el destello blanco) ---------- */
body.pj-tienda .wp-block-woocommerce-cart.is-loading,
body.pj-tienda .wp-block-woocommerce-checkout.is-loading,
body.pj-tienda .wc-block-components-skeleton,
body.pj-tienda .wc-block-components-skeleton__element {
  background: rgba(148, 163, 184, 0.08) !important;
  border-radius: 12px;
  color: var(--pj-muted);
}
body.pj-tienda .wc-block-components-loading-mask__children { opacity: 0.5; }
body.pj-tienda .wc-block-components-spinner::before { border-top-color: var(--pj-accent); }

/* ---------- DETALLES FINOS ---------- */
/* Columnas del finalizar compra */
@media (min-width: 1000px) {
  body.pj-tienda .wc-block-checkout__main { padding-right: 2rem; }
}
/* Cantidad y botón de borrar del carrito */
body.pj-tienda .wc-block-components-quantity-selector {
  background: var(--pj-primary); border: 1px solid var(--pj-border); border-radius: 999px;
}
body.pj-tienda .wc-block-components-quantity-selector__input,
body.pj-tienda .wc-block-components-quantity-selector__button { color: var(--pj-text) !important; background: transparent !important; }
body.pj-tienda .wc-block-cart-item__remove-link { color: var(--pj-muted) !important; }
body.pj-tienda .wc-block-cart-item__remove-link:hover { color: var(--pj-accent) !important; }

/* Los datos de la cita dentro del carrito y del pedido */
body.pj-tienda .wc-block-components-product-details__cita,
body.pj-tienda .wc-block-components-product-details li { color: var(--pj-muted); }
body.pj-tienda .wc-block-components-product-details__name { color: var(--pj-accent); }

/* Enlaces "volver a la tienda" y similares */
body.pj-tienda .wc-block-components-button.is-link,
body.pj-tienda .wc-block-cart__submit-container a { color: var(--pj-accent) !important; }

/* Precio total, que resalte */
body.pj-tienda .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
  color: var(--pj-accent) !important; font-size: 1.35rem; font-weight: 700;
}

/* En celular el fondo fijo da tirones */
@media (max-width: 900px) {
  body.pj-tienda { background-attachment: scroll; }
}

/* Que nunca quede texto oscuro sobre fondo oscuro por descuido del tema */
body.pj-tienda .wc-block-components-checkout-step,
body.pj-tienda .wc-block-components-address-form,
body.pj-tienda .wc-block-checkout__form { color: var(--pj-text); }

/* ==========================================================================
   CORRECCIONES tras ver la página renderizada
   ========================================================================== */

/* 1. El menú salía todo pegado: "HOMESERVICIOSTIENDACONTACTO" */
body.pj-tienda .site-navigation ul.menu {
  display: flex;
  align-items: center;
  gap: 2rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
body.pj-tienda .site-navigation ul.menu li { margin: 0; }
body.pj-tienda .site-navigation-dropdown ul.menu {
  flex-direction: column; align-items: flex-start; gap: 0.2rem; padding: 0.8rem 1.2rem;
}

/* 2. Quitar el "Camilo Martinez" suelto bajo el logo (arriba y abajo) */
body.pj-tienda .site-description { display: none !important; }
body.pj-tienda .site-header .header-inner,
body.pj-tienda .site-footer .footer-inner {
  display: flex; align-items: center; justify-content: space-between; gap: 1.5rem;
}

/* 3. WooCommerce forzaba sus columnas al 48% y descuadraba todo */
body.pj-tienda div.product .woocommerce-product-gallery,
body.pj-tienda div.product div.images,
body.pj-tienda div.product .summary,
body.pj-tienda div.product .woocommerce-tabs {
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
  max-width: none !important;
}

/* 4. La foto salía en miniatura: que ocupe toda su columna */
body.pj-tienda .woocommerce-product-gallery__wrapper,
body.pj-tienda .woocommerce-product-gallery__image { width: 100%; }
body.pj-tienda .woocommerce-product-gallery__image img,
body.pj-tienda .woocommerce-product-gallery img {
  width: 100% !important; height: auto !important; max-width: none !important;
  aspect-ratio: 1 / 1; object-fit: cover;
}

/* 5. Había una caja dentro de otra caja: el selector va suelto dentro de la tarjeta */
body.pj-tienda form.cart .pj-agenda {
  background: transparent;
  border: none;
  padding: 0;
  margin: 0 0 1.2rem;
}
body.pj-tienda form.cart .pj-agenda__titulo {
  font-size: 1.05rem; margin-bottom: 0.9rem;
}

/* 6. El símbolo del peso salía en blanco y la cifra en dorado */
body.pj-tienda .summary p.price,
body.pj-tienda .summary p.price *,
body.pj-tienda .summary .woocommerce-Price-currencySymbol {
  color: var(--pj-accent) !important;
}

/* 7. Fuera el rastro de migas con "Uncategorized" */
body.pj-tienda .woocommerce-breadcrumb { display: none; }

/* 8. Menos hueco entre la tarjeta de compra y la descripción */
body.pj-tienda div.product { gap: 2rem 2.6rem; }
body.pj-tienda .woocommerce-tabs { margin-top: 0.5rem; }
body.pj-tienda .summary { align-self: start; }

/* 9. El calendario, más ancho y legible */
body.pj-tienda .pj-agenda input[type="date"] { max-width: 260px; }
body.pj-tienda .pj-agenda__horas { gap: 8px; }

/* El botón "Finalizar compra" del carrito salía subrayado */
body.pj-tienda .wc-block-cart__submit-button,
body.pj-tienda .wc-block-cart__submit-container a,
body.pj-tienda .wc-block-components-button { text-decoration: none !important; }

/* La burbujita con la cantidad salía como un punto blanco */
body.pj-tienda .wc-block-components-order-summary-item__quantity {
  background: var(--pj-accent) !important;
  color: #020617 !important;
  border: 2px solid var(--pj-card) !important;
  font-weight: 700;
}

/* Miniatura del resumen, con borde suave */
body.pj-tienda .wc-block-components-order-summary-item__image img {
  border-radius: 10px; border: 1px solid var(--pj-border);
}

/* Enlaces legales del pie del checkout */
body.pj-tienda .wc-block-checkout__terms { color: var(--pj-muted); font-size: 0.82rem; }
body.pj-tienda .wc-block-checkout__terms a { color: var(--pj-accent); }

/* Títulos de sección del checkout, algo más marcados */
body.pj-tienda .wc-block-components-checkout-step__title {
  font-size: 1.15rem; letter-spacing: -0.01em;
}
body.pj-tienda .wc-block-components-title.wc-block-cart__totals-title {
  color: var(--pj-muted) !important; letter-spacing: 0.12em;
}

/* ==========================================================================
   SEGUNDA REVISIÓN: detalles que desentonaban con el resto de la web
   ========================================================================== */

/* --- Colocar la franja de contacto justo debajo de la cabecera ---
   Se imprime al principio del <body>, así que se recoloca con el orden
   de las cajas. Sin JavaScript, sin saltos al cargar. */
body.pj-tienda {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
body.pj-tienda > .skip-link  { order: -1; }
body.pj-tienda > .site-header { order: 0; }
body.pj-tienda > .pj-franja   { order: 1; }
body.pj-tienda > #primary     { order: 2; flex: 1 0 auto; }
body.pj-tienda > .site-footer { order: 3; }
body.pj-tienda > .pswp        { order: 4; }

.pj-franja {
  background: rgba(15, 23, 42, 0.75);
  border-bottom: 1px solid rgba(148, 163, 184, 0.14);
  padding: 0.7rem 1.5rem;
  font-size: 0.82rem;
}
.pj-franja__inner {
  max-width: 1200px; margin: 0 auto;
  display: flex; flex-wrap: wrap; align-items: center;
  justify-content: space-between; gap: 0.6rem 1.2rem;
}
.pj-franja__izq { display: flex; align-items: center; gap: 0.8rem; flex-wrap: wrap; }
.pj-franja__pill {
  padding: 0.3rem 0.85rem; border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.35); color: #e5e7eb;
}
.pj-franja__texto { color: var(--pj-muted); }
.pj-franja__der { display: flex; gap: 1.2rem; flex-wrap: wrap; }
.pj-franja__der a { color: var(--pj-muted) !important; text-decoration: none; }
.pj-franja__der a strong { color: #e5e7eb; font-weight: 600; }
.pj-franja__der a:hover strong { color: var(--pj-accent) !important; }
@media (max-width: 780px) {
  .pj-franja { font-size: 0.76rem; padding: 0.6rem 1rem; }
  .pj-franja__inner { justify-content: flex-start; }
  .pj-franja__texto { display: none; }
}

/* --- CONTACTO como botón dorado, igual que en el resto de la web --- */
body.pj-tienda .site-navigation ul.menu > li:last-child > a {
  padding: 0.55rem 1.2rem;
  border-radius: 999px;
  border: 1px solid var(--pj-accent);
  color: var(--pj-accent);
}
body.pj-tienda .site-navigation ul.menu > li:last-child > a::after { display: none; }
body.pj-tienda .site-navigation ul.menu > li:last-child > a:hover {
  background: linear-gradient(135deg, var(--pj-accent), var(--pj-accent-2));
  color: #020617;
}

/* --- El botón de menú en celular salía en blanco --- */
body.pj-tienda .site-navigation-toggle,
body.pj-tienda .site-navigation-toggle-icon,
body.pj-tienda .site-navigation-toggle i,
body.pj-tienda .site-navigation-toggle svg { color: var(--pj-accent) !important; fill: var(--pj-accent) !important; }
body.pj-tienda .site-navigation-toggle-icon span,
body.pj-tienda .site-navigation-toggle-icon::before,
body.pj-tienda .site-navigation-toggle-icon::after { background-color: var(--pj-accent) !important; }
body.pj-tienda .site-navigation-dropdown ul.menu li a { color: #e5e7eb; padding: 0.6rem 0; }

/* --- Carrito vacío --- */
body.pj-tienda .wc-block-cart__empty-cart__title {
  font-size: 1.6rem; margin-bottom: 0.6rem;
}
body.pj-tienda .wc-block-cart__empty-cart__title::before { content: none !important; }
body.pj-tienda .wp-block-woocommerce-empty-cart-block { padding: 2.5rem 0 3.5rem; }
body.pj-tienda .wp-block-woocommerce-empty-cart-block p { color: var(--pj-muted); margin-bottom: 1.6rem; }
body.pj-tienda .wp-block-woocommerce-empty-cart-block .wp-block-button__link {
  background: linear-gradient(135deg, var(--pj-accent), var(--pj-accent-2)) !important;
  color: #020617 !important; border-radius: 999px !important;
  padding: 0.85rem 1.9rem !important; font-weight: 700; text-decoration: none;
  box-shadow: 0 10px 24px rgba(244, 193, 90, 0.18);
}

/* --- Mi cuenta: el formulario ocupaba todo el ancho --- */
body.pj-tienda .woocommerce-account .woocommerce {
  max-width: 480px; margin-inline: auto;
}
body.pj-tienda .woocommerce form.login,
body.pj-tienda .woocommerce form.register {
  background: linear-gradient(145deg, rgba(15, 23, 42, 0.98), #020617);
  border: 1px solid var(--pj-border) !important;
  border-radius: var(--pj-radius); padding: 1.6rem; box-shadow: var(--pj-shadow);
}
body.pj-tienda .woocommerce-form__label-for-checkbox { display: flex; align-items: center; gap: 0.5rem; }
body.pj-tienda input[type="checkbox"] {
  appearance: none; -webkit-appearance: none;
  width: 18px; height: 18px; border-radius: 5px;
  border: 1px solid var(--pj-border); background: var(--pj-primary);
  display: inline-grid; place-content: center; cursor: pointer; flex: none;
}
body.pj-tienda input[type="checkbox"]:checked {
  background: linear-gradient(135deg, var(--pj-accent), var(--pj-accent-2));
  border-color: var(--pj-accent);
}
body.pj-tienda input[type="checkbox"]:checked::after {
  content: "✓"; color: #020617; font-size: 12px; font-weight: 700; line-height: 1;
}
body.pj-tienda .woocommerce-LostPassword a { font-size: 0.85rem; }
body.pj-tienda .required { color: #f87171; }

/* --- Que la cabecera respire igual que en el resto de la web --- */
body.pj-tienda .site-header { padding: 0; }

/* --- El contenedor del contenido no se llama igual en todas las páginas ---
   En el producto es #primary y en el carrito es <main id="content">.
   Hay que contemplar los dos, o la franja se va al final. */
body.pj-tienda > #primary,
body.pj-tienda > #content,
body.pj-tienda > main.site-main {
  order: 2;
  flex: 1 0 auto;
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
  padding: 2.5rem 1.5rem 4.5rem;
}
/* Y que no se duplique el margen cuando uno va dentro del otro */
body.pj-tienda > #primary .site-main,
body.pj-tienda > #content .site-main {
  max-width: none; margin: 0; padding: 0;
}
@media (max-width: 640px) {
  body.pj-tienda > #primary,
  body.pj-tienda > #content,
  body.pj-tienda > main.site-main { padding: 1.6rem 1rem 3rem; }
}

/* --- El bloque del carrito traía "alignwide" y se salía 64px por la izquierda --- */
body.pj-tienda .wp-block-woocommerce-cart,
body.pj-tienda .wp-block-woocommerce-checkout,
body.pj-tienda .alignwide,
body.pj-tienda .alignfull {
  max-width: 100% !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
body.pj-tienda .wc-block-components-notices__snackbar { left: auto !important; right: 1rem; }

/* --- Mi cuenta: el formulario ocupaba todo el ancho (la clase va en <body>) --- */
body.pj-tienda.woocommerce-account .woocommerce {
  max-width: 480px;
  margin-inline: auto;
}
body.pj-tienda.woocommerce-account h2 { text-align: center; }

/* --- Fondo a prueba de huecos blancos --- */
html.pj-tienda-html { background-color: #020617; }
html.pj-tienda-html body.pj-tienda { background-color: #020617; }

/* --- La línea de la cita en el pedido salía descolgada --- */
body.pj-tienda .wc-item-meta {
  list-style: none; margin: 0.35rem 0 0; padding: 0;
}
body.pj-tienda .wc-item-meta li { margin: 0; }
body.pj-tienda .wc-item-meta strong { color: var(--pj-accent); font-weight: 600; }
body.pj-tienda .wc-item-meta p { display: inline; margin: 0; color: var(--pj-muted); }

/* --- Tabla del pedido recibido --- */
body.pj-tienda .woocommerce-table--order-details,
body.pj-tienda .woocommerce-table--order-details th,
body.pj-tienda .woocommerce-table--order-details td {
  border-color: var(--pj-border) !important; background: transparent;
}
body.pj-tienda .woocommerce-table--order-details thead th { color: var(--pj-muted); }
body.pj-tienda .woocommerce-order-overview {
  list-style: none; padding: 0;
}
body.pj-tienda .woocommerce-order-overview li { border-color: var(--pj-border) !important; }
body.pj-tienda .woocommerce-order-overview strong { color: var(--pj-text); }
