/* SoloOne Sync: una tarjeta, varios temas de fondo (rosa, azul, menta, crema). */
.soloone-seccion { --sl-bg: #f2f8fc; --sl-ink: #2a445e; --sl-gold: #d4af37;
  background: var(--sl-bg); padding: 2rem; border-radius: 12px; font-family: 'Montserrat', sans-serif; }
.soloone-tema-rosa  { --sl-bg: linear-gradient(to bottom, #fff8f3, #fbeee8); }
.soloone-tema-azul  { --sl-bg: #f2f8fc; }
.soloone-tema-menta { --sl-bg: linear-gradient(to bottom, #f1faf7, #e1f3ec); }
.soloone-tema-crema { --sl-bg: #faf6ee; }
.soloone-tema-malva { --sl-bg: #fffdfb; --sl-ink: #7c4e58; --sl-btn: #c49d8c; --sl-text: #5e4a48; }

.soloone-seccion h1 { text-align: center; font-size: 2rem; font-weight: 700; color: var(--sl-ink); margin: 0 0 2rem; }
.soloone-frase { background: linear-gradient(135deg, #e5f4f2, #c8e6dc); color: var(--sl-ink); font-family: 'Playfair Display', serif;
  font-weight: 700; font-size: 1.4rem; padding: 30px 20px; margin: 0 auto 2rem; max-width: 900px; text-align: center;
  border-radius: 16px; box-shadow: 0 6px 18px rgba(0,0,0,.05); }

.soloone-seccion .productos { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 2rem; }
.producto { background: #fff; border-radius: 1.5rem; padding: 1rem; box-shadow: 0 2px 12px rgba(0,0,0,.07);
  display: flex; flex-direction: column; transition: transform .3s ease; }
.producto:hover { transform: scale(1.03); }
.producto__link { display: flex; flex-direction: column; flex: 1; color: inherit; text-decoration: none; }
.producto__img { position: relative; aspect-ratio: 1 / 1; border-radius: 1rem; overflow: hidden; margin-bottom: 1rem; background: #f8f0e3; }
.producto__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.producto__noimg { display: flex; align-items: center; justify-content: center; height: 100%; font: 600 26px 'Playfair Display', serif; color: var(--sl-ink); }
.producto .info { display: flex; flex-direction: column; flex: 1; }
.producto h3 { font: 600 1.1rem/1.3 'Montserrat', sans-serif; color: var(--sl-ink); margin: 0 0 .5rem; }
.producto .precio { font: 700 1rem 'Montserrat', sans-serif; color: var(--sl-gold); margin-bottom: .5rem; }
.producto__meta { color: var(--sl-text, #555); font-size: .9rem; margin: 0 0 .5rem; }
.producto__btn { margin-top: auto; background: var(--sl-btn, var(--sl-ink)); color: #fff; padding: .5rem 1rem; border-radius: 1rem; text-align: center; font-weight: 600; font-size: .9rem; }
.producto__badge { position: absolute; top: 10px; left: 10px; background: var(--sl-ink); color: #fff; padding: 4px 10px;
  border-radius: 999px; font: 600 12px 'Montserrat', sans-serif; text-transform: uppercase; letter-spacing: .5px; }
.producto--vendido .producto__img img { filter: grayscale(.9); opacity: .55; }
.soloone-vacio { text-align: center; color: var(--sl-ink); padding: 40px 0; }
.soloone-pag { display: flex; gap: 8px; justify-content: center; margin-top: 30px; flex-wrap: wrap; }
.soloone-pag a, .soloone-pag .actual { padding: 8px 14px; border-radius: 999px; font: 600 14px 'Montserrat', sans-serif; text-decoration: none; }
.soloone-pag a { background: #fff; color: var(--sl-ink); box-shadow: 0 2px 8px rgba(0,0,0,.07); }
.soloone-pag .actual { background: var(--sl-ink); color: #fff; }

/* Ficha propia */
.soloone-ficha { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 40px; max-width: 1100px; margin: 0 auto; padding: 30px 20px; font-family: 'Montserrat', sans-serif; }
.soloone-ficha__main { display: flex; justify-content: center; background: rgba(0,0,0,.03); border-radius: 1.5rem; }
.soloone-ficha__main img { width: auto; max-width: 100%; height: auto; max-height: min(70vh, 620px); object-fit: contain; border-radius: 1.5rem; display: block; }
.soloone-ficha__thumbs { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 12px; }
.soloone-ficha__thumbs img { width: 76px; height: 76px; object-fit: cover; border-radius: 1rem; border: 2px solid transparent; }
.soloone-ficha__thumbs a:hover img { border-color: #2a445e; }
.soloone-ficha__cat { text-transform: uppercase; letter-spacing: 1px; font-size: 12px; color: #d4af37; font-weight: 700; margin: 0 0 8px; }
.soloone-ficha__desc { color: #2a445e; line-height: 1.6; margin-bottom: 18px; }
.soloone-ficha__dato { margin: 0 0 6px; color: #2a445e; }
.soloone-ficha__compra { display: flex; flex-direction: column; gap: 12px; margin: 24px 0 14px; }
.soloone-comprar { display: flex; justify-content: space-between; align-items: center; padding: 16px 22px; border-radius: 1rem;
  color: #fff !important; text-decoration: none; font-weight: 700; font-size: 16px; transition: filter .2s ease, transform .2s ease; }
.soloone-comprar, .soloone-comprar:hover, .soloone-comprar:focus, .soloone-comprar * { text-decoration: none !important; }
.soloone-comprar:hover { filter: brightness(1.1); transform: translateY(-2px); }
.soloone-comprar--vinted { background: #007782; }
.soloone-comprar--wallapop { background: #13c1ac; }
.soloone-comprar__precio { background: rgba(255,255,255,.2); padding: 4px 12px; border-radius: 20px; }
.soloone-ficha__nota { font-size: 12px; color: #5b6b78; }
.soloone-ficha__vendido { padding: 16px; background: #eef1f4; border-radius: 1rem; color: #2a445e; }
.producto__badge--ficha { position: static; display: inline-block; margin-bottom: 12px; }

/* Boton atras (igual que el actual) */
.soloone-boton-atras-flotante { position: fixed; right: 12px; bottom: 90px; z-index: 50; background: #111; color: #fff; padding: 10px 16px;
  border: 2px solid #f5c400; border-radius: 24px; font: 600 14px 'Montserrat', sans-serif; text-decoration: none; }

@media (max-width: 800px) { .soloone-ficha { grid-template-columns: 1fr; gap: 24px; } }
@media (max-width: 600px) { .soloone-seccion { padding: 1.2rem .8rem; } .soloone-seccion .productos { grid-template-columns: repeat(2, 1fr); gap: 1rem; }
  .producto { padding: .7rem; } .producto h3 { font-size: .95rem; } }

/* La ficha ya muestra su propia galeria: ocultar la imagen destacada y metadatos que repiten algunos temas */
.single-articulo .wp-block-post-featured-image, .single-articulo .wp-block-post-author, .single-articulo .wp-block-post-date,
.single-articulo .post-thumbnail, .single-articulo .entry-meta, .single-articulo .posted-on, .single-articulo .byline { display: none !important; }

/* Titulo propio de la ficha (algunos temas, como Hello Biz, no muestran el titulo del articulo) */
.soloone-ficha__titulo { font: 700 clamp(1.5rem, 3vw, 2.1rem)/1.2 'Playfair Display', serif; color: #2a445e; margin: 0 0 14px; }
.single-articulo .entry-title, .single-articulo .page-title, .single-articulo .wp-block-post-title, .single-articulo .page-header { display: none !important; }
.soloone-ficha { padding-bottom: 110px; }
@media (max-width: 600px) { .soloone-boton-atras-flotante { right: 8px; bottom: 16px; padding: 8px 12px; font-size: 13px; } }


/* Especificidad reforzada: los estilos globales de Elementor/temas (titulos, enlaces) no deben pisar las tarjetas */
.soloone-seccion .soloone-h1 { text-align: center; font: 700 2rem/1.2 'Playfair Display', serif !important; color: var(--sl-ink) !important; text-shadow: none !important;
  text-transform: none; letter-spacing: 0; margin: 0 0 2rem; }
.soloone-seccion .producto h3 { font: 600 1.05rem/1.3 'Montserrat', sans-serif !important; color: var(--sl-ink) !important; text-shadow: none !important;
  text-transform: none; letter-spacing: 0; margin: 0 0 .5rem; }
.soloone-seccion .producto .precio { color: var(--sl-gold) !important; }
.soloone-seccion .producto__link, .soloone-seccion .producto__link:hover, .soloone-seccion a { text-decoration: none !important; }
.soloone-seccion .producto__btn { color: #fff !important; background: var(--sl-btn, var(--sl-ink)) !important; display: block; }
.soloone-seccion .producto__meta { color: var(--sl-text, #555) !important; font: 400 .9rem 'Montserrat', sans-serif; }
.soloone-ficha .soloone-ficha__titulo { text-shadow: none !important; text-transform: none; }
.soloone-seccion img { max-width: 100%; }
