/*
 * AAWP Modern Templates — CSS v1.2.5
 *
 * Strategia: rilevazione larghezza tramite JS (ResizeObserver in aawp-modern-resize.js).
 * Il JS applica classi .aawp-w-xs/sm/md/lg/xl al wrapper .aawp-modern in base alla
 * larghezza REALE del contenitore. Lo stile CSS reagisce a queste classi.
 *
 * NIENTE container queries CSS (problematiche cross-browser/cross-context).
 */

/* ============== RESET ============== */
.aawp-modern,
.aawp-modern * {
  box-sizing: border-box;
}

.aawp-modern {
  --aawp-bg: #ffffff;
  --aawp-bg-alt: #f7f7f7;
  --aawp-text: #1a1a1a;
  --aawp-text-muted: #5a5a5a;
  --aawp-text-light: #999999;
  --aawp-border: rgba(0, 0, 0, 0.12);
  --aawp-accent: #185FA5;
  --aawp-accent-bg: #E6F1FB;
  --aawp-accent-text: #0C447C;

  --aawp-cta-bg: #F5C871;
  --aawp-cta-bg-hover: #E8B14E;
  --aawp-cta-border: #D4A044;
  --aawp-cta-text: #1a1a1a;

  --aawp-secondary-bg: #ffffff;
  --aawp-secondary-bg-hover: #f5f5f5;
  --aawp-secondary-border: #1a1a1a;
  --aawp-secondary-text: #1a1a1a;

  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  color: var(--aawp-text) !important;
  line-height: 1.5 !important;
  margin: 1rem 0;
}

.aawp-modern h1, .aawp-modern h2, .aawp-modern h3,
.aawp-modern h4, .aawp-modern h5, .aawp-modern h6,
.aawp-modern p, .aawp-modern ul, .aawp-modern li,
.aawp-modern a, .aawp-modern span, .aawp-modern div {
  font-family: inherit !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  text-shadow: none !important;
  text-align: left;
}

.aawp-modern h1, .aawp-modern h2, .aawp-modern h3,
.aawp-modern h4, .aawp-modern h5, .aawp-modern h6 {
  margin: 0 !important;
  padding: 0 !important;
  font-weight: 500 !important;
  background: transparent !important;
  border: none !important;
}

.aawp-modern p {
  margin: 0 !important;
  padding: 0 !important;
}

.aawp-modern ul, .aawp-modern li {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  background: transparent !important;
}

.aawp-modern a,
.aawp-modern a:link,
.aawp-modern a:visited {
  color: inherit !important;
  text-decoration: none !important;
  background: transparent !important;
  border: none !important;
  border-bottom: none !important;
  box-shadow: none !important;
}

.aawp-modern a:hover,
.aawp-modern a:focus,
.aawp-modern a:active {
  color: inherit !important;
  text-decoration: none !important;
}

/* ============== COMPARISON TABLE ============== */

.aawp-modern .aawp-modern-scroll-wrap {
  position: relative !important;
  margin: 0 !important;
  padding: 12px 0 16px !important;
  overflow-x: auto !important;
  overflow-y: visible !important;
  scroll-snap-type: x mandatory !important; /* mandatory = ci si ferma solo su card INTERE (niente card a metà) */
  -webkit-overflow-scrolling: touch !important;
  /* Scrollbar nascosta sempre */
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
  /* Drag cursor */
  cursor: grab !important;
  user-select: none !important;
  -webkit-user-select: none !important;
}

.aawp-modern .aawp-modern-scroll-wrap.aawp-is-dragging {
  cursor: grabbing !important;
  scroll-snap-type: none !important;
}

.aawp-modern .aawp-modern-scroll-wrap::-webkit-scrollbar {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

.aawp-modern .aawp-modern-grid {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 14px !important;
  margin: 0 !important;
  padding: 4px !important;
  list-style: none !important;
  align-items: stretch !important;
}

.aawp-modern .aawp-modern-card {
  background: var(--aawp-bg) !important;
  border: 1px solid var(--aawp-border) !important;
  border-radius: 12px !important;
  padding: 14px !important;
  padding-bottom: 16px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  position: relative !important;
  margin: 0 !important;
  min-height: 420px !important;
  scroll-snap-align: start !important;
  scroll-snap-stop: always !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease !important;
  overflow: visible !important;
  /* Permette al testo della card di non essere selezionabile durante drag */
  user-select: none !important;
  -webkit-user-select: none !important;
}
/* L'ULTIMA card si aggancia al bordo DESTRO (end): così con mandatory resta raggiungibile per intero
   (gli snap-point "start" oltre il max-scroll erano irraggiungibili → ultima card tagliata). */
.aawp-modern .aawp-modern-card:last-child {
  scroll-snap-align: end !important;
}

.aawp-modern .aawp-modern-card:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.10), 0 2px 4px rgba(0, 0, 0, 0.04) !important;
}

.aawp-modern .aawp-modern-card--gold {
  border: 2px solid #D4A044 !important;
  background: linear-gradient(to bottom, #fffaef 0%, var(--aawp-bg) 80px) !important;
  box-shadow: 0 2px 6px rgba(212, 160, 68, 0.10) !important;
}

.aawp-modern .aawp-modern-card--silver {
  border: 2px solid #A8A8A8 !important;
  background: linear-gradient(to bottom, #f7f7f8 0%, var(--aawp-bg) 80px) !important;
  box-shadow: 0 2px 6px rgba(168, 168, 168, 0.10) !important;
}

.aawp-modern .aawp-modern-card--bronze {
  border: 2px solid #B87333 !important;
  background: linear-gradient(to bottom, #fbf3ec 0%, var(--aawp-bg) 80px) !important;
  box-shadow: 0 2px 6px rgba(184, 115, 51, 0.10) !important;
}

.aawp-modern .aawp-modern-card--gold:hover {
  box-shadow: 0 8px 20px rgba(212, 160, 68, 0.22) !important;
}

.aawp-modern .aawp-modern-card--silver:hover {
  box-shadow: 0 8px 20px rgba(168, 168, 168, 0.22) !important;
}

.aawp-modern .aawp-modern-card--bronze:hover {
  box-shadow: 0 8px 20px rgba(184, 115, 51, 0.22) !important;
}

/* Badge rank */
.aawp-modern .aawp-modern-rank {
  position: absolute !important;
  top: 10px !important;
  left: 10px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  background: var(--aawp-bg-alt) !important;
  color: var(--aawp-text-muted) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  padding: 4px 10px !important;
  border-radius: 999px !important;
  text-align: center !important;
  z-index: 2 !important;
  line-height: 1 !important;
  letter-spacing: 0.02em !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06) !important;
}

.aawp-modern .aawp-modern-rank.aawp-modern-medal--gold {
  background: linear-gradient(135deg, #fff8dc 0%, #ffd966 100%) !important;
  color: #6b4500 !important;
  box-shadow: 0 2px 4px rgba(212, 160, 68, 0.25) !important;
  animation: aawp-medal-pulse-gold 2.5s ease-in-out infinite !important;
}

.aawp-modern .aawp-modern-rank.aawp-modern-medal--silver {
  background: linear-gradient(135deg, #f5f5f5 0%, #d0d0d0 100%) !important;
  color: #3a3a3a !important;
  box-shadow: 0 2px 4px rgba(168, 168, 168, 0.25) !important;
}

.aawp-modern .aawp-modern-rank.aawp-modern-medal--bronze {
  background: linear-gradient(135deg, #fbe5d0 0%, #d89868 100%) !important;
  color: #5a2d00 !important;
  box-shadow: 0 2px 4px rgba(184, 115, 51, 0.25) !important;
}

@keyframes aawp-medal-pulse-gold {
  0%, 100% { box-shadow: 0 2px 4px rgba(212, 160, 68, 0.25); }
  50% { box-shadow: 0 2px 4px rgba(212, 160, 68, 0.25), 0 0 10px rgba(255, 193, 7, 0.4); }
}

.aawp-modern .aawp-modern-medal-emoji {
  font-size: 14px !important;
  line-height: 1 !important;
  display: inline-block !important;
}

.aawp-modern .aawp-modern-rank-num {
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
}

/* Immagine */
.aawp-modern .aawp-modern-img-wrap {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 130px !important;
  margin-top: 24px !important;
  margin-bottom: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
  transition: transform 0.25s ease !important;
}

.aawp-modern .aawp-modern-card:hover .aawp-modern-img-wrap {
  transform: scale(1.04) !important;
}

.aawp-modern .aawp-modern-img-wrap a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
}

.aawp-modern .aawp-modern-img-wrap img {
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  width: auto !important;
  height: auto !important;
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Titolo */
/* Titolo card comparison — ultra alta specificità per battere il tema */
.aawp-modern .aawp-modern-card h3.aawp-modern-title,
.entry-content .aawp-modern .aawp-modern-card h3.aawp-modern-title,
.single-product .aawp-modern .aawp-modern-card h3.aawp-modern-title,
.single-product .wpb_wrapper .aawp-modern .aawp-modern-card h3.aawp-modern-title,
.wpb_wrapper .aawp-modern .aawp-modern-card h3.aawp-modern-title {
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  color: var(--aawp-text) !important;
  display: block !important;
  overflow: hidden !important;
  min-height: 36px !important;
  max-height: 36px !important; /* fissa il titolo a 2 righe: neutralizza la riga extra che wpautop aggiunge in-article → spaziatura titolo→prezzo identica al wide */
  margin: 0 !important;
  padding: 0 !important;
  text-transform: none !important;
  text-align: center !important;
  background: transparent !important;
  border: none !important;
  letter-spacing: normal !important;
}

.aawp-modern .aawp-modern-card h3.aawp-modern-title a,
.aawp-modern .aawp-modern-card h3.aawp-modern-title a:link,
.aawp-modern .aawp-modern-card h3.aawp-modern-title a:visited,
.entry-content .aawp-modern .aawp-modern-card h3.aawp-modern-title a,
.single-product .wpb_wrapper .aawp-modern .aawp-modern-card h3.aawp-modern-title a {
  color: var(--aawp-text) !important;
  text-decoration: none !important;
  border-bottom: none !important;
  font-weight: 500 !important;
  font-size: 13px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  line-height: 1.35 !important;
  white-space: normal !important;
  word-break: break-word !important;
  overflow-wrap: break-word !important;
  text-align: center !important;
}

.aawp-modern .aawp-modern-card h3.aawp-modern-title a:hover,
.aawp-modern .aawp-modern-card h3.aawp-modern-title a:focus {
  color: var(--aawp-text) !important;
  text-decoration: underline !important;
}

/* Prezzo */
.aawp-modern .aawp-modern-price {
  font-size: 20px !important;
  font-weight: 600 !important;
  color: var(--aawp-text) !important;
  line-height: 1.2 !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important; /* prezzo centrato nella card */
}

.aawp-modern .aawp-modern-price-empty {
  font-size: 13px !important;
  color: var(--aawp-text-light) !important;
  font-style: italic !important;
}

/* Features */
.aawp-modern .aawp-modern-features {
  list-style: none !important;
  margin: 4px 0 7px !important;
  padding: 12px 0 0 !important;
  border-top: 0.5px solid var(--aawp-border) !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  flex-grow: 1 !important;
}

.aawp-modern .aawp-modern-features li {
  font-size: 11px !important;
  line-height: 1.4 !important;
  color: var(--aawp-text-muted) !important;
  display: block !important;
  position: relative !important;
  padding: 0 0 0 12px !important;
  margin: 0 !important;
  list-style: none !important;
  /* Ogni feature SEMPRE su una sola riga (desktop e mobile): niente a-capo, troncamento con … */
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.aawp-modern .aawp-modern-features li::before {
  content: "•" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  color: var(--aawp-text-light) !important;
  font-weight: 500 !important;
}

/* CTA */
/* CTA — Specificità MASSIMA per battere tema (Kingdom usa .entry-content a override) */
.aawp-modern a.aawp-modern-cta,
.aawp-modern a.aawp-modern-cta:link,
.aawp-modern a.aawp-modern-cta:visited,
.entry-content .aawp-modern a.aawp-modern-cta,
.entry-content .aawp-modern a.aawp-modern-cta:link,
.entry-content .aawp-modern a.aawp-modern-cta:visited,
.kd-content .aawp-modern a.aawp-modern-cta,
.kd-content .aawp-modern a.aawp-modern-cta:link,
.kd-content .aawp-modern a.aawp-modern-cta:visited {
  margin-top: auto !important;
  background: var(--aawp-cta-bg) !important;
  background-color: var(--aawp-cta-bg) !important;
  background-image: none !important;
  color: var(--aawp-cta-text) !important;
  font-weight: 500 !important;
  font-size: 13px !important;
  padding: 10px 12px !important;
  border-radius: 8px !important;
  text-align: center !important;
  border: 0.5px solid var(--aawp-cta-border) !important;
  border-bottom: 0.5px solid var(--aawp-cta-border) !important;
  text-decoration: none !important;
  text-transform: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  cursor: pointer !important;
  transition: background 0.2s ease, transform 0.15s ease !important;
  line-height: 1.3 !important;
  box-shadow: none !important;
  width: 100% !important;
  min-height: 38px !important;
  flex-shrink: 0 !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.aawp-modern a.aawp-modern-cta:hover,
.aawp-modern a.aawp-modern-cta:focus,
.entry-content .aawp-modern a.aawp-modern-cta:hover,
.entry-content .aawp-modern a.aawp-modern-cta:focus,
.kd-content .aawp-modern a.aawp-modern-cta:hover,
.kd-content .aawp-modern a.aawp-modern-cta:focus {
  background: var(--aawp-cta-bg-hover) !important;
  background-color: var(--aawp-cta-bg-hover) !important;
  color: var(--aawp-cta-text) !important;
  text-decoration: none !important;
}

.aawp-modern a.aawp-modern-cta::after {
  content: "↗" !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 500 !important;
  display: inline-block !important;
  color: var(--aawp-cta-text) !important;
}

/* ============================================================================
 * BREAKPOINT CLASSES — applicate dal JS aawp-modern-resize.js in base alla
 * larghezza REALE del wrapper .aawp-modern (non viewport).
 * ============================================================================ */

/* XL: ≥1180px → 5 card uniformi */
.aawp-modern.aawp-w-xl .aawp-modern-grid {
  width: 100% !important;
}
.aawp-modern.aawp-w-xl .aawp-modern-card {
  flex: 1 1 0 !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: 280px !important;
}
.aawp-modern.aawp-w-xl .aawp-modern-scroll-wrap {
  overflow-x: visible !important;
}

/* LG: 930-1179px → 4 card visibili */
.aawp-modern.aawp-w-lg .aawp-modern-card {
  flex: 0 0 calc((100% - 42px) / 4) !important;
  width: calc((100% - 42px) / 4) !important;
  min-width: 0 !important;
  max-width: 280px !important;
}

/* MD: 690-929px → 3 card visibili */
.aawp-modern.aawp-w-md .aawp-modern-card {
  flex: 0 0 calc((100% - 28px) / 3) !important;
  width: calc((100% - 28px) / 3) !important;
  min-width: 0 !important;
  max-width: 280px !important;
}

/* SM: 460-689px → 2 card */
.aawp-modern.aawp-w-sm .aawp-modern-card {
  flex: 0 0 calc((100% - 14px) / 2) !important;
  width: calc((100% - 14px) / 2) !important;
  min-width: 0 !important;
  max-width: 280px !important;
}

/* Centratura: si applica SOLO quando il JS rileva pochi item
   (meno del numero target per il breakpoint corrente) */
.aawp-modern.aawp-few-items .aawp-modern-grid {
  justify-content: center !important;
}

/* XS: <460px → 1 card grande + peek con effetto carosello */
.aawp-modern.aawp-w-xs .aawp-modern-scroll-wrap {
  margin: 0 -16px !important;
  padding: 12px 0 16px !important;
}
.aawp-modern.aawp-w-xs .aawp-modern-grid {
  gap: 12px !important;
  padding: 4px 16px !important;
}
.aawp-modern.aawp-w-xs .aawp-modern-card {
  flex: 0 0 85% !important;
  width: 85% !important;
  max-width: 320px !important;
  min-height: 420px !important;
  scroll-snap-align: center !important;
  /* Card laterali sfumate per dare profondità al carosello */
  opacity: 0.45 !important;
  transform: scale(0.95) !important;
  filter: saturate(0.7) !important;
  transition: opacity 0.35s ease, transform 0.35s ease, filter 0.35s ease, box-shadow 0.35s ease !important;
}
/* Card "attiva" centrale: piena opacità e dimensione normale */
.aawp-modern.aawp-w-xs .aawp-modern-card.aawp-card-active {
  opacity: 1 !important;
  transform: scale(1) !important;
  filter: saturate(1) !important;
}
.aawp-modern.aawp-w-xs .aawp-modern-card:hover {
  transform: scale(0.95) !important;
}
.aawp-modern.aawp-w-xs .aawp-modern-card.aawp-card-active:hover {
  transform: scale(1) !important;
}
.aawp-modern.aawp-w-xs .aawp-modern-scroll-wrap::-webkit-scrollbar {
  display: none !important;
}

/* Fallback prima che JS applichi la classe (no FOUC) */
.aawp-modern:not([class*="aawp-w-"]) .aawp-modern-card {
  flex: 1 1 220px !important;
  min-width: 220px !important;
}

/* ============== HORIZONTAL TABLE (my-table-modern) — COMPATTO ============== */
.aawp-modern .aawp-modern-list {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  border-top: 1px solid var(--aawp-border) !important;
}

/* Riga = riga di tabella: 5 colonne (posizione | immagine | titolo | prezzo | cta),
   separata dalle altre da una linea divisoria. NIENTE box / angoli arrotondati. */
.aawp-modern .aawp-modern-row {
  display: grid !important;
  grid-template-columns: 48px 72px 1fr auto auto !important;
  gap: 18px !important;
  align-items: center !important;
  padding: 14px 6px !important;
  border: none !important;
  border-bottom: 1px solid var(--aawp-border) !important;
  border-radius: 0 !important;
  background: transparent !important;
  margin: 0 !important;
  transition: background 0.15s ease !important;
}

.aawp-modern .aawp-modern-row:hover {
  background: var(--aawp-accent-bg) !important;
}

/* Riga #1: nessun box, l'evidenza e' data dal cerchio posizione blu */
.aawp-modern .aawp-modern-row--top {
  background: transparent !important;
}

.aawp-modern .aawp-modern-row--top:hover {
  background: var(--aawp-accent-bg) !important;
}

/* Colonna 1 — POSIZIONE: numero grande con "°", colori medaglia
 * (1=oro, 2=argento, 3=bronzo, dal 4° in poi grigio). NIENTE cerchio.
 * Selettori ad alta specificità per non farsi sovrascrivere dal tema. */
.aawp-modern .aawp-modern-row-rank,
.entry-content .aawp-modern .aawp-modern-row-rank,
.single-product .wpb_wrapper .aawp-modern .aawp-modern-row-rank,
.home .aawp-modern .aawp-modern-row-rank,
.page .aawp-modern .aawp-modern-row-rank {
  display: block !important;
  width: auto !important;
  height: auto !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  color: var(--aawp-text-muted) !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  text-align: left !important;
}

/* "°" come piccolo apice accanto al numero */
.aawp-modern .aawp-modern-row-rank .aawp-modern-row-rank-ord {
  font-size: 0.5em !important;
  font-weight: 700 !important;
  vertical-align: top !important;
  line-height: 1 !important;
  margin-left: 1px !important;
}

.aawp-modern .aawp-modern-row-rank.aawp-modern-row-rank--gold,
.entry-content .aawp-modern .aawp-modern-row-rank--gold,
.single-product .wpb_wrapper .aawp-modern .aawp-modern-row-rank--gold {
  color: #D9A441 !important;
}

.aawp-modern .aawp-modern-row-rank.aawp-modern-row-rank--silver,
.entry-content .aawp-modern .aawp-modern-row-rank--silver,
.single-product .wpb_wrapper .aawp-modern .aawp-modern-row-rank--silver {
  color: #A0A0A0 !important;
}

.aawp-modern .aawp-modern-row-rank.aawp-modern-row-rank--bronze,
.entry-content .aawp-modern .aawp-modern-row-rank--bronze,
.single-product .wpb_wrapper .aawp-modern .aawp-modern-row-rank--bronze {
  color: #B5651D !important;
}

/* Colonna 2 — IMMAGINE */
.aawp-modern .aawp-modern-row-img {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 72px !important;
  height: 70px !important;
  overflow: hidden !important;
  padding: 0 !important;
  margin: 0 !important;
}

.aawp-modern .aawp-modern-row-img a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
}

.aawp-modern .aawp-modern-row-img img {
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  width: auto !important;
  height: auto !important;
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

/* Colonna 3 — TITOLO
 * specificità ULTRA ALTA per battere .single-product .wpb_wrapper h3 (0,3,1)
 * che forza font-size: 28px !important + font-weight: bold !important. */
.aawp-modern .aawp-modern-row h3.aawp-modern-row-title,
.entry-content .aawp-modern .aawp-modern-row h3.aawp-modern-row-title,
.single-product .aawp-modern .aawp-modern-row h3.aawp-modern-row-title,
.single-product .wpb_wrapper .aawp-modern .aawp-modern-row h3.aawp-modern-row-title,
.wpb_wrapper .aawp-modern .aawp-modern-row h3.aawp-modern-row-title {
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  color: var(--aawp-text) !important;
  margin: 0 !important;
  padding: 0 !important;
  text-transform: none !important;
  text-align: left !important;
  width: 100% !important;
  min-width: 0 !important;
  display: block !important;
  overflow: hidden !important;
  background: transparent !important;
  border: none !important;
  letter-spacing: normal !important;
}

.aawp-modern .aawp-modern-row h3.aawp-modern-row-title a,
.aawp-modern .aawp-modern-row h3.aawp-modern-row-title a:link,
.aawp-modern .aawp-modern-row h3.aawp-modern-row-title a:visited,
.entry-content .aawp-modern .aawp-modern-row h3.aawp-modern-row-title a,
.single-product .wpb_wrapper .aawp-modern .aawp-modern-row h3.aawp-modern-row-title a {
  color: var(--aawp-text) !important;
  text-decoration: none !important;
  border-bottom: none !important;
  font-weight: 500 !important;
  font-size: 14px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  line-height: 1.35 !important;
}

.aawp-modern .aawp-modern-row h3.aawp-modern-row-title a:hover,
.aawp-modern .aawp-modern-row h3.aawp-modern-row-title a:focus {
  color: var(--aawp-text) !important;
  text-decoration: underline !important;
}

/* Colonna 4 — PREZZO (colonna a sé, larghezza al contenuto) */
.aawp-modern .aawp-modern-row-price {
  font-size: 18px !important;
  font-weight: 600 !important;
  color: var(--aawp-text) !important;
  line-height: 1.2 !important;
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  display: block !important;
  white-space: nowrap !important;
  text-align: left !important;
  float: none !important;
}

.aawp-modern a.aawp-modern-row-cta,
.aawp-modern a.aawp-modern-row-cta:link,
.aawp-modern a.aawp-modern-row-cta:visited,
.entry-content .aawp-modern a.aawp-modern-row-cta,
.entry-content .aawp-modern a.aawp-modern-row-cta:link,
.entry-content .aawp-modern a.aawp-modern-row-cta:visited,
.kd-content .aawp-modern a.aawp-modern-row-cta,
.kd-content .aawp-modern a.aawp-modern-row-cta:link,
.kd-content .aawp-modern a.aawp-modern-row-cta:visited {
  background: var(--aawp-cta-bg) !important;
  background-color: var(--aawp-cta-bg) !important;
  background-image: none !important;
  color: var(--aawp-cta-text) !important;
  font-weight: 500 !important;
  font-size: 13px !important;
  padding: 10px 18px !important;
  border-radius: 8px !important;
  text-align: center !important;
  border: 0.5px solid var(--aawp-cta-border) !important;
  border-bottom: 0.5px solid var(--aawp-cta-border) !important;
  text-decoration: none !important;
  text-transform: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  transition: background 0.15s ease, transform 0.15s ease !important;
  line-height: 1.3 !important;
  box-shadow: none !important;
  min-width: 150px !important;
}

.aawp-modern a.aawp-modern-row-cta:hover,
.aawp-modern a.aawp-modern-row-cta:focus,
.entry-content .aawp-modern a.aawp-modern-row-cta:hover,
.entry-content .aawp-modern a.aawp-modern-row-cta:focus,
.kd-content .aawp-modern a.aawp-modern-row-cta:hover,
.kd-content .aawp-modern a.aawp-modern-row-cta:focus {
  background: var(--aawp-cta-bg-hover) !important;
  background-color: var(--aawp-cta-bg-hover) !important;
  color: var(--aawp-cta-text) !important;
  text-decoration: none !important;
}

.aawp-modern a.aawp-modern-row-cta::after {
  content: "↗" !important;
  font-size: 13px !important;
  line-height: 1 !important;
  color: var(--aawp-cta-text) !important;
}

/* FIX wpautop: su alcune pagine (es. home) WordPress inietta <p>/<br> dentro
 * l'output AAWP, annidando la CTA in un <p> e rompendo la griglia della riga.
 * "Sciogliamo" i <p> parassiti (display:contents -> i figli tornano grid-item)
 * e nascondiamo i <br>, così la riga e' identica tra home e articolo. */
.aawp-modern .aawp-modern-row > p,
.aawp-modern .aawp-modern-list > p { display: contents !important; }
.aawp-modern .aawp-modern-row br,
.aawp-modern .aawp-modern-row-img br { display: none !important; }
.aawp-modern .aawp-modern-row > p:empty { display: none !important; }

/* ============== WIDGET VERTICAL ============== */
.aawp-modern.aawp-modern-widget {
  max-width: 320px;
  margin: 1rem 0;
}

.aawp-modern .aawp-modern-vbox {
  background: var(--aawp-bg) !important;
  border: 0.5px solid var(--aawp-border) !important;
  border-radius: 12px !important;
  padding: 16px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  margin: 0 !important;
  position: relative !important;
}

.aawp-modern .aawp-modern-vbox-img {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 160px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.aawp-modern .aawp-modern-vbox-img a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
}

.aawp-modern .aawp-modern-vbox-img img {
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  width: auto !important;
  height: auto !important;
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

/* Titolo widget vertical — specificità alta per battere il tema */
.aawp-modern .aawp-modern-vbox h3.aawp-modern-vbox-title,
.entry-content .aawp-modern .aawp-modern-vbox h3.aawp-modern-vbox-title,
.single-product .aawp-modern .aawp-modern-vbox h3.aawp-modern-vbox-title,
.single-product .wpb_wrapper .aawp-modern .aawp-modern-vbox h3.aawp-modern-vbox-title,
.wpb_wrapper .aawp-modern .aawp-modern-vbox h3.aawp-modern-vbox-title {
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  color: var(--aawp-text) !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
  display: block !important;
  overflow: hidden !important;
  background: transparent !important;
  border: none !important;
  text-transform: none !important;
  letter-spacing: normal !important;
}

.aawp-modern .aawp-modern-vbox h3.aawp-modern-vbox-title a,
.aawp-modern .aawp-modern-vbox h3.aawp-modern-vbox-title a:link,
.aawp-modern .aawp-modern-vbox h3.aawp-modern-vbox-title a:visited,
.entry-content .aawp-modern .aawp-modern-vbox h3.aawp-modern-vbox-title a,
.single-product .wpb_wrapper .aawp-modern .aawp-modern-vbox h3.aawp-modern-vbox-title a {
  color: var(--aawp-text) !important;
  text-decoration: none !important;
  border-bottom: none !important;
  font-weight: 500 !important;
  font-size: 16px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  line-height: 1.4 !important;
  white-space: normal !important;
  word-break: break-word !important;
  overflow-wrap: break-word !important;
}

.aawp-modern .aawp-modern-vbox h3.aawp-modern-vbox-title a:hover {
  text-decoration: underline !important;
}

.aawp-modern .aawp-modern-vbox-price {
  font-size: 22px !important;
  font-weight: 500 !important;
  color: var(--aawp-text) !important;
  line-height: 1.2 !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
}

.aawp-modern .aawp-modern-vbox-features {
  list-style: none !important;
  margin: 4px 0 0 !important;
  padding: 10px 0 0 !important;
  border-top: 0.5px solid var(--aawp-border) !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 5px !important;
}

.aawp-modern .aawp-modern-vbox-features li {
  font-size: 12px !important;
  line-height: 1.45 !important;
  color: var(--aawp-text-muted) !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 6px !important;
}

.aawp-modern .aawp-modern-vbox-features li::before {
  content: "•" !important;
  color: var(--aawp-text-light) !important;
  flex-shrink: 0 !important;
}

.aawp-modern a.aawp-modern-vbox-cta,
.aawp-modern a.aawp-modern-vbox-cta:link,
.aawp-modern a.aawp-modern-vbox-cta:visited {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  margin-top: 4px !important;
  background: var(--aawp-cta-bg) !important;
  color: var(--aawp-cta-text) !important;
  font-weight: 500 !important;
  font-size: 13px !important;
  padding: 11px 14px !important;
  border-radius: 8px !important;
  text-align: center !important;
  border: 0.5px solid var(--aawp-cta-border) !important;
  text-decoration: none !important;
  line-height: 1.3 !important;
  box-shadow: none !important;
  width: 100% !important;
}

.aawp-modern a.aawp-modern-vbox-cta:hover {
  background: var(--aawp-cta-bg-hover) !important;
  color: var(--aawp-cta-text) !important;
}

/* ============== DISCLAIMER GLOBALE ============== */

/* Paragrafo disclaimer dentro il footer del tema Kingdom (.disclaimer)
 * EREDITA lo stile esistente del footer (sfondo nero, testo grigio).
 * Aggiungiamo solo un piccolo margin-top per separarlo dal testo precedente. */
.col-md-12.disclaimer .aawp-modern-global-disclaimer-p,
.disclaimer .aawp-modern-global-disclaimer-p {
  margin-top: 14px !important;
  padding-top: 14px !important;
  border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
}

.col-md-12.disclaimer .aawp-modern-global-disclaimer-p strong,
.disclaimer .aawp-modern-global-disclaimer-p strong {
  color: inherit !important;
  font-weight: 600 !important;
}

/* Fallback wrapper standalone (se il footer Kingdom non è disponibile):
 * crea un blocco autonomo prima del footer con stile chiaro/neutro */
.aawp-modern-global-disclaimer {
  width: 100% !important;
  margin: 24px 0 0 !important;
  padding: 16px 0 !important;
  background: #f5f5f5 !important;
  border-top: 1px solid rgba(0, 0, 0, 0.08) !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
  color: #5a5a5a !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

.aawp-modern-global-disclaimer-inner {
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
}

.aawp-modern-global-disclaimer strong {
  color: #1a1a1a !important;
  font-weight: 600 !important;
}

/* ============== RESPONSIVE — solo my-table-modern ============== */
/* ============================================================================
 * RESPONSIVE — my-table-modern su mobile
 *
 * Layout mobile (CSS grid compatta, 1 box per prodotto):
 *   +------------------------------------------+
 *   | (1)  [img]   Titolo prodotto             |
 *   |              Prezzo                      |
 *   | [     Vedi su Amazon (full width)      ] |
 *   +------------------------------------------+
 *
 * grid-template-areas: "rank img title" / "rank img price" / "cta cta cta".
 * Posizione e immagine (compatte) a sinistra; titolo e prezzo impilati a
 * destra; il pulsante e' a tutta larghezza e tappabile sotto.
 * ============================================================================ */
@media (max-width: 600px) {
  /* Row -> tabella adattata:
   *   posizione | immagine | titolo      (riga 1)
   *   posizione | immagine | prezzo      (riga 2)
   *   [        Vedi su Amazon full       ] (riga 3)
   * Titolo e prezzo restano impilati a destra dell'immagine; CTA a tutta larghezza. */
  .aawp-modern .aawp-modern-row,
  .entry-content .aawp-modern .aawp-modern-row,
  .kd-content .aawp-modern .aawp-modern-row,
  .single-product .wpb_wrapper .aawp-modern .aawp-modern-row,
  .home .aawp-modern .aawp-modern-row,
  .page .aawp-modern .aawp-modern-row {
    display: grid !important;
    grid-template-columns: 36px 60px 1fr !important;
    grid-template-areas:
      "rank img title"
      "rank img price"
      "rank img cta" !important;
    column-gap: 12px !important;
    row-gap: 4px !important;
    align-items: center !important;
    padding: 14px 4px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    position: relative !important;
  }

  /* POSIZIONE */
  .aawp-modern .aawp-modern-row-rank,
  .entry-content .aawp-modern .aawp-modern-row-rank,
  .kd-content .aawp-modern .aawp-modern-row-rank,
  .single-product .wpb_wrapper .aawp-modern .aawp-modern-row-rank,
  .home .aawp-modern .aawp-modern-row-rank,
  .page .aawp-modern .aawp-modern-row-rank {
    grid-area: rank !important;
    align-self: center !important;
    position: static !important;
    width: auto !important;
    height: auto !important;
    font-size: 21px !important;
    margin: 0 !important;
    float: none !important;
    flex: 0 0 auto !important;
  }

  /* IMMAGINE */
  .aawp-modern .aawp-modern-row-img,
  .entry-content .aawp-modern .aawp-modern-row-img,
  .kd-content .aawp-modern .aawp-modern-row-img,
  .single-product .wpb_wrapper .aawp-modern .aawp-modern-row-img,
  .home .aawp-modern .aawp-modern-row-img,
  .page .aawp-modern .aawp-modern-row-img {
    grid-area: img !important;
    align-self: center !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 60px !important;
    max-width: 60px !important;
    height: 60px !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    flex: 0 0 auto !important;
  }

  /* TITOLO */
  .aawp-modern .aawp-modern-row h3.aawp-modern-row-title,
  .entry-content .aawp-modern .aawp-modern-row h3.aawp-modern-row-title,
  .single-product .wpb_wrapper .aawp-modern .aawp-modern-row h3.aawp-modern-row-title,
  .home .aawp-modern .aawp-modern-row h3.aawp-modern-row-title,
  .page .aawp-modern .aawp-modern-row h3.aawp-modern-row-title {
    grid-area: title !important;
    align-self: end !important;
    margin: 0 !important;
  }

  /* PREZZO */
  .aawp-modern .aawp-modern-row-price,
  .entry-content .aawp-modern .aawp-modern-row-price,
  .single-product .wpb_wrapper .aawp-modern .aawp-modern-row-price,
  .home .aawp-modern .aawp-modern-row-price,
  .page .aawp-modern .aawp-modern-row-price {
    grid-area: price !important;
    align-self: start !important;
    font-size: 17px !important;
    text-align: left !important;
  }

  /* CTA — compatta (non full-width), allineata al contenuto, sotto il prezzo */
  .aawp-modern a.aawp-modern-row-cta,
  .entry-content .aawp-modern a.aawp-modern-row-cta,
  .kd-content .aawp-modern a.aawp-modern-row-cta,
  .single-product .wpb_wrapper .aawp-modern a.aawp-modern-row-cta,
  .home .aawp-modern a.aawp-modern-row-cta,
  .page .aawp-modern a.aawp-modern-row-cta {
    grid-area: cta !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    justify-self: start !important;
    margin: 6px 0 0 !important;
    padding: 8px 16px !important;
    font-size: 12px !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
    position: relative !important;
    float: none !important;
  }

  /* Hover disabilitato su touch */
  .aawp-modern .aawp-modern-row:hover {
    background: transparent !important;
  }

  /* Disclaimer */
  .aawp-modern-global-disclaimer {
    padding: 12px 0 !important;
    font-size: 11px !important;
  }
  .aawp-modern-global-disclaimer-inner {
    padding: 0 16px !important;
  }
}

@media (max-width: 380px) {
  .aawp-modern .aawp-modern-row,
  .entry-content .aawp-modern .aawp-modern-row,
  .home .aawp-modern .aawp-modern-row,
  .page .aawp-modern .aawp-modern-row {
    grid-template-columns: 30px 52px 1fr !important;
    column-gap: 10px !important;
    padding: 14px 2px !important;
  }
  .aawp-modern .aawp-modern-row-img,
  .home .aawp-modern .aawp-modern-row-img,
  .page .aawp-modern .aawp-modern-row-img {
    width: 52px !important;
    max-width: 52px !important;
    height: 52px !important;
  }
  .aawp-modern .aawp-modern-row-rank,
  .home .aawp-modern .aawp-modern-row-rank,
  .page .aawp-modern .aawp-modern-row-rank {
    width: auto !important;
    height: auto !important;
    font-size: 18px !important;
  }
}

/* ============== AAWP COMPARISON TABLE (.aawp-tb) — MOBILE responsive ==============
 * La comparison table NATIVA di AAWP, in variante .aawp-tb--mobile, rendeva ogni
 * riga come tabella label(50%) | valore(50%): le barre punteggio (.rwp-scores)
 * restavano strette e i criteri venivano troncati.
 * Fix: ogni prodotto -> card; ogni riga impila mini-label sopra / valore a tutta
 * larghezza sotto -> barre/immagine/nome respirano. Solo .aawp-tb--mobile
 * (la variante desktop .aawp-tb--desktop NON viene toccata). */
.aawp-tb--mobile .aawp-tb__product{
  border:1px solid rgba(0,0,0,.12) !important;
  border-radius:12px !important;
  overflow:hidden !important;
  margin:0 0 16px !important;
  background:#fff !important;
  box-shadow:0 1px 2px rgba(0,0,0,.06) !important;
}
.aawp-tb--mobile .aawp-tb__row{
  display:block !important;
  width:100% !important;
  border-bottom:1px solid rgba(0,0,0,.08) !important;
  padding:10px 14px !important;
  box-sizing:border-box !important;
}
.aawp-tb--mobile .aawp-tb__product .aawp-tb__row:last-child{ border-bottom:0 !important; }
.aawp-tb--mobile .aawp-tb__head,
.aawp-tb--mobile .aawp-tb__data{
  display:block !important;
  width:100% !important;
  text-align:left !important;
}
.aawp-tb--mobile .aawp-tb__head{
  font-size:11px !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
  letter-spacing:.04em !important;
  color:#8a8a8a !important;
  margin:0 0 5px !important;
  padding:0 !important;
  background:transparent !important;
}
.aawp-tb--mobile .aawp-tb__head:empty{ display:none !important; }
.aawp-tb--mobile .aawp-tb__data--type-thumb{ text-align:center !important; }
.aawp-tb--mobile .aawp-tb__data--type-thumb img{ max-width:170px !important; height:auto !important; margin:0 auto !important; }
.aawp-tb--mobile .aawp-tb__data--type-title{ font-size:16px !important; font-weight:700 !important; line-height:1.3 !important; color:#1f2733 !important; }
.aawp-tb--mobile .rwp-scores,
.aawp-tb--mobile .rwp-criterion{ width:100% !important; max-width:100% !important; }

/* ===== AAWP COMPARISON TABLE — header a numeri medaglia + niente colonna label =====
 * Header: al posto di "Primo Posto/Secondo Posto..." mostra un badge numerico
 * a medaglia (1 oro, 2 argento, 3 bronzo, 4-6 navy), su desktop e mobile.
 * Desktop: nasconde la prima colonna (label di riga), ridondante nel confronto. */
.aawp-tb .aawp-tb__data--type-custom_html{ font-size:0 !important; }
.aawp-tb .aawp-tb__data--type-custom_html > *{ display:none !important; }
.aawp-tb .aawp-tb__data--type-custom_html::before{
  content:""; display:inline-flex; align-items:center; justify-content:center;
  min-width:38px; height:36px; padding:0 10px; border-radius:8px;
  color:#fff !important; font-weight:800 !important; font-size:16px !important; line-height:1 !important;
  box-shadow:0 1px 2px rgba(0,0,0,.18);
}
.aawp-tb-product-0.aawp-tb__data--type-custom_html::before,
.aawp-tb-product-0 .aawp-tb__data--type-custom_html::before{ content:"1°"; background:#eab308 !important; }
.aawp-tb-product-1.aawp-tb__data--type-custom_html::before,
.aawp-tb-product-1 .aawp-tb__data--type-custom_html::before{ content:"2°"; background:#94a3b8 !important; }
.aawp-tb-product-2.aawp-tb__data--type-custom_html::before,
.aawp-tb-product-2 .aawp-tb__data--type-custom_html::before{ content:"3°"; background:#b47a2e !important; }
.aawp-tb-product-3.aawp-tb__data--type-custom_html::before,
.aawp-tb-product-3 .aawp-tb__data--type-custom_html::before{ content:"4°"; background:#475569 !important; }
.aawp-tb-product-4.aawp-tb__data--type-custom_html::before,
.aawp-tb-product-4 .aawp-tb__data--type-custom_html::before{ content:"5°"; background:#475569 !important; }
.aawp-tb-product-5.aawp-tb__data--type-custom_html::before,
.aawp-tb-product-5 .aawp-tb__data--type-custom_html::before{ content:"6°"; background:#475569 !important; }
/* Desktop: via la colonna delle label di riga + header centrato */
.aawp-tb--desktop .aawp-tb__head{ display:none !important; }
.aawp-tb--desktop .aawp-tb__data--type-custom_html{ text-align:center !important; }

/* ===== AAWP COMPARISON TABLE — Prime row backup + compattezza mobile =====
 * Backup CSS (se il JS non gira): nasconde comunque le celle "Prime". Il JS
 * rimuove l'intera riga (label inclusa) ed e' il metodo primario. */
.aawp-tb__data--type-prime{ display:none !important; }

/* Mobile: tabella molto compatta e ben proporzionata */
.aawp-tb--mobile .aawp-tb__product{ margin:0 0 12px !important; }
.aawp-tb--mobile .aawp-tb__row{ padding:7px 12px !important; }
.aawp-tb--mobile .aawp-tb__head{ font-size:10px !important; margin:0 0 3px !important; letter-spacing:.03em !important; }
.aawp-tb--mobile .aawp-tb-thumb{ height:120px !important; }
.aawp-tb--mobile .aawp-tb__data--type-thumb img{ max-height:120px !important; }
.aawp-tb--mobile .aawp-tb__data--type-title{ font-size:14px !important; line-height:1.3 !important; }
.aawp-tb--mobile .rwp-criterion{ margin-bottom:3px !important; }
.aawp-tb--mobile .rwp-criterion-label{ font-size:12px !important; line-height:1.25 !important; }
.aawp-tb--mobile .rwp-criterion-score{ font-size:13px !important; line-height:1.25 !important; }
.aawp-tb--mobile .aawp-tb__data--type-custom_html::before{ min-width:32px !important; height:30px !important; font-size:14px !important; }

/* ===== AAWP COMPARISON TABLE — rinumerazione classifica + header senza bordi =====
 * Il JS, dopo aver nascosto i prodotti incompleti, rinumera quelli mostrati in
 * sequenza (data-rank "1°","2°"...) e assegna la classe medaglia. Queste regole
 * sovrascrivono i badge per-posizione (fallback) quando il JS ha girato. */
.aawp-tb .aawp-tb__data--type-custom_html[data-rank]::before{ content:attr(data-rank) !important; }
.aawp-tb .aawp-tb__data--type-custom_html.aawp-rank-g::before{ background:#eab308 !important; }
.aawp-tb .aawp-tb__data--type-custom_html.aawp-rank-s::before{ background:#94a3b8 !important; }
.aawp-tb .aawp-tb__data--type-custom_html.aawp-rank-b::before{ background:#b47a2e !important; }
.aawp-tb .aawp-tb__data--type-custom_html.aawp-rank-d::before{ background:#475569 !important; }
/* Prima riga (badge): nessun bordo cella, badge "liberi" */
.aawp-tb .aawp-tb__row .aawp-tb__data--type-custom_html{ border:0 !important; box-shadow:none !important; background:transparent !important; }

/* ===== AAWP COMPARISON TABLE — box per colonna (solo bordo esterno) + compattezza =====
 * Ogni prodotto = un box delimitato solo dal bordo esterno (dal titolo al pulsante
 * Amazon), senza divisori orizzontali interni tra le celle. Spazi ridotti, mobile compatto. */
/* DESKTOP: colonne come box, nessuna riga divisoria interna */
.aawp-tb--desktop{ border-collapse:collapse !important; }
.aawp-tb--desktop .aawp-tb__data{ border:0 !important; border-left:1px solid rgba(0,0,0,.12) !important; border-right:1px solid rgba(0,0,0,.12) !important; padding:8px 10px !important; }
.aawp-tb--desktop .aawp-tb__data--type-custom_html{ border:0 !important; }
.aawp-tb--desktop .aawp-tb__data--type-title{ border-top:1px solid rgba(0,0,0,.12) !important; }
.aawp-tb--desktop .aawp-tb__data--type-button{ border-bottom:1px solid rgba(0,0,0,.12) !important; }
/* MOBILE: solo bordo esterno del blocco, niente divisori tra celle, molto compatto */
.aawp-tb--mobile .aawp-tb__product{ margin:0 0 12px !important; padding:6px 2px !important; }
.aawp-tb--mobile .aawp-tb__row{ border-bottom:0 !important; padding:2px 12px !important; }
.aawp-tb--mobile .aawp-tb__head{ margin:0 0 1px !important; }
.aawp-tb--mobile .aawp-tb__data--type-thumb{ padding:2px 12px !important; }
.aawp-tb--mobile .aawp-tb-thumb{ height:92px !important; }
.aawp-tb--mobile .aawp-tb__data--type-thumb img{ max-height:92px !important; }
.aawp-tb--mobile .rwp-criterion{ margin-bottom:2px !important; }
.aawp-tb--mobile .rwp-scores{ margin:0 !important; }

/* ===== AAWP COMPARISON TABLE — fix bordi desktop + mobile centrato e compatto v2 =====
 * Desktop: le righe (aawp-tb__row) avevano ancora border-bottom -> rimosso.
 * Mobile: rimosso aawp-tb__head (label di sezione), tutto centrato, padding minimo. */
/* DESKTOP fix: elimina il border-bottom della riga (rimane solo il bordo esterno col) */
.aawp-tb--desktop .aawp-tb__row{ border:0 !important; }
/* MOBILE: niente label, centrato, molto compatto */
.aawp-tb--mobile .aawp-tb__head{ display:none !important; }
.aawp-tb--mobile .aawp-tb__product{ padding:8px !important; margin:0 0 14px !important; }
.aawp-tb--mobile .aawp-tb__row{ display:block !important; border:0 !important; padding:3px 0 !important; text-align:center !important; }
.aawp-tb--mobile .aawp-tb__data{ display:block !important; width:100% !important; text-align:center !important; padding:0 !important; }
.aawp-tb--mobile .aawp-tb__data--type-custom_html{ padding:2px 0 6px !important; }
.aawp-tb--mobile .aawp-tb__data--type-title{ font-size:14px !important; font-weight:700 !important; line-height:1.3 !important; color:#1f2733 !important; padding:0 0 4px !important; }
.aawp-tb--mobile .aawp-tb__data--type-thumb{ padding:2px 0 !important; }
.aawp-tb--mobile .aawp-tb-thumb{ height:100px !important; margin:0 auto !important; display:block !important; }
.aawp-tb--mobile .aawp-tb__data--type-thumb img{ max-height:100px !important; margin:0 auto !important; }
.aawp-tb--mobile .rwp-scores{ display:inline-block !important; text-align:left !important; width:100% !important; max-width:280px !important; margin:0 auto !important; }
.aawp-tb--mobile .rwp-criterion{ margin-bottom:2px !important; }
.aawp-tb--mobile .rwp-scores{ margin:0 auto !important; }

/* MOBILE: padding 0 su .aawp-tb__data + immagine prodotto più grande */
.aawp-tb--mobile .aawp .aawp-tb__data,
.aawp-tb--mobile .aawp-tb__data{ padding:0 !important; }
.aawp-tb--mobile .aawp-tb-thumb{ height:180px !important; width:100% !important; background-size:contain !important; background-repeat:no-repeat !important; background-position:center !important; }
.aawp-tb--mobile .aawp-tb__data--type-thumb img{ max-height:180px !important; max-width:90% !important; width:auto !important; margin:0 auto !important; }

@media only screen and (max-device-width: 520px) {
  .aawp-tb--mobile .aawp-tb__data {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
}

/* ===== AAWP COMPARISON TABLE — card compatta verticalmente (mobile + desktop) v3 =====
 * Riduce il padding verticale eccessivo (default AAWP 14px) nelle celle voto/Leggi/
 * Amazon/immagine e azzera i margini interni del plugin recensioni (rwp). Prototipato
 * live via DevTools su desktop 1280 e mobile 390 prima del commit. */
/* --- comune ai due varianti: margini interni rwp + bottoni --- */
.aawp-tb .rwp-scores{ margin:0 auto !important; }
.aawp-tb .rwp-criterion{ margin-bottom:3px !important; }
.aawp-tb .rwp-criterion:last-child{ margin-bottom:0 !important; }
.aawp-tb .rwp-overall-score,
.aawp-tb .rwp-overall-score-value{ margin:0 !important; padding:0 !important; line-height:1.1 !important; }
.aawp-tb .aawp-tb__data--type-button a,
.aawp-tb .aawp-button{ margin:0 !important; }
/* --- MOBILE: celle compatte --- */
.aawp-tb--mobile .aawp-tb__product{ padding:10px 8px !important; }
.aawp-tb--mobile .aawp-tb__row{ padding:0 !important; margin:0 !important; }
.aawp-tb--mobile .aawp-tb__data--type-custom_html{ padding:6px 0 2px !important; }
.aawp-tb--mobile .aawp-tb__data--type-title{ padding:0 10px 4px !important; text-align:center !important; }
.aawp-tb--mobile .aawp-tb__data--type-thumb{ padding:2px 10px !important; }
.aawp-tb--mobile .aawp-tb-thumb{ height:130px !important; }
.aawp-tb--mobile .aawp-tb__data--type-thumb img{ max-height:130px !important; }
.aawp-tb--mobile .aawp-tb__data--type-shortcode{ padding:3px 10px !important; }
.aawp-tb--mobile .aawp-tb__data--type-button{ padding:4px 10px 6px !important; }
/* --- DESKTOP: celle compatte --- */
.aawp-tb--desktop .aawp-tb__data{ padding:5px 10px !important; }
.aawp-tb--desktop .aawp-tb__data--type-thumb{ padding:4px 10px !important; }
.aawp-tb--desktop .aawp-tb-thumb{ height:120px !important; }
.aawp-tb--desktop .aawp-tb__data--type-thumb img{ max-height:120px !important; }
.aawp-tb--desktop .aawp-tb__data--type-button{ padding:5px 10px 8px !important; }

/* ===== AAWP GRID NATIVA ([amazon ... grid="N"]) — allineata allo stile modern =====
 * Lo shortcode con grid="N" (senza template=) usa il layout grid NATIVO di AAWP
 * (.aawp-grid > .aawp-product), che ha uno stile diverso dalle tabelle modern.
 * Qui lo restyliamo come card modern PLAIN: niente medaglie, niente bordi colorati
 * (quelli restano esclusivi di my-comparison-table-modern). Rimuoviamo i ribbon
 * "Bestseller" e "Offerta" e allineiamo il bottone Amazon al CTA modern.
 * Prototipato live via DevTools su desktop 1280 e mobile 390. */
/* rimuovi ribbon bestseller + offerta */
.aawp-grid .aawp-product__ribbon,
.aawp-grid .aawp-product__ribbon--bestseller,
.aawp-grid .aawp-product__ribbon--sale{ display:none !important; }
/* layout griglia responsive (3 col desktop → 2 tablet → 1 mobile) */
.aawp-grid.aawp-grid--col-3{ display:grid !important; grid-template-columns:repeat(3,1fr) !important; gap:16px !important; margin:1rem 0 !important; width:auto !important; max-width:100% !important; }
.aawp-grid__item{ display:flex !important; float:none !important; width:auto !important; padding:0 !important; margin:0 !important; }
@media (max-width:782px){ .aawp-grid.aawp-grid--col-3{ grid-template-columns:repeat(2,1fr) !important; } }
@media (max-width:520px){ .aawp-grid.aawp-grid--col-3{ grid-template-columns:1fr !important; } }
/* card modern plain (no medaglie, no bordi colorati) */
.aawp-grid .aawp-product{ background:#fff !important; border:0.5px solid rgba(0,0,0,.12) !important; border-radius:12px !important; padding:16px !important; display:flex !important; flex-direction:column !important; gap:10px !important; width:100% !important; box-shadow:none !important; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif !important; }
.aawp-grid .aawp-product br{ display:none !important; }
.aawp-grid .aawp-product > p{ margin:0 !important; padding:0 !important; }
/* immagine centrata, altezza contenuta */
.aawp-grid .aawp-product__image{ display:flex !important; align-items:center !important; justify-content:center !important; height:160px !important; margin:0 !important; }
.aawp-grid .aawp-product__image img{ max-width:100% !important; max-height:160px !important; width:auto !important; height:auto !important; object-fit:contain !important; margin:0 auto !important; }
/* contenuto centrato */
.aawp-grid .aawp-product__content{ text-align:center !important; padding:0 !important; }
.aawp-grid .aawp-product__title{ font-size:16px !important; font-weight:500 !important; line-height:1.4 !important; color:#1a1a1a !important; text-decoration:none !important; text-align:center !important; display:-webkit-box !important; -webkit-line-clamp:3 !important; -webkit-box-orient:vertical !important; overflow:hidden !important; }
.aawp-grid .aawp-product__meta,
.aawp-grid .aawp-product__meta p{ text-align:center !important; float:none !important; }
.aawp-grid .aawp-check-prime{ float:none !important; display:inline-block !important; }
/* prezzo centrato */
.aawp-grid .aawp-product__footer{ margin-top:auto !important; text-align:center !important; }
.aawp-grid .aawp-product__pricing,
.aawp-grid .aawp-product__pricing p{ text-align:center !important; float:none !important; }
.aawp-grid .aawp-product__price,
.aawp-grid .aawp-product__price--current{ float:none !important; display:inline-block !important; text-align:center !important; font-size:22px !important; font-weight:500 !important; color:#1a1a1a !important; }
/* bottone Amazon → stile CTA modern (oro) */
.aawp-grid .aawp-button--amazon{ background:#f5c871 !important; color:#1a1a1a !important; border:1px solid #d4a044 !important; border-radius:8px !important; padding:10px 12px !important; font-size:13px !important; font-weight:500 !important; box-shadow:none !important; text-shadow:none !important; text-decoration:none !important; display:inline-block !important; }
.aawp-grid .aawp-button--amazon:hover{ background:#e8b14e !important; }

/* ============================================================================
 *  SET MODERN — Badge sconto + Andamento prezzi (OPZIONALI, default OFF)
 *  Elementi NUOVI e additivi, SCOPED a .aawp-modern-card / .aawp-modern-vbox così
 *  non toccano mai il set B (.aawp-modern-b-*). Stile coerente col modern (font di
 *  sistema del tema, niente font/size del set B).
 * ========================================================================= */

/* --- Badge sconto % (in alto a destra) --- */
.aawp-modern .aawp-modern-card,
.aawp-modern .aawp-modern-vbox { position: relative !important; }

.aawp-modern .aawp-modern-card .aawp-discount,
.aawp-modern .aawp-modern-vbox .aawp-discount {
  position: absolute !important;
  top: 10px !important;
  right: 10px !important;
  z-index: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  margin: 0 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: .2px !important;
  color: #fff !important;
  white-space: nowrap !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .12) !important;
}
.aawp-modern .aawp-modern-card .aawp-discount--pill,
.aawp-modern .aawp-modern-vbox .aawp-discount--pill {
  padding: 4px 9px !important;
  border-radius: 999px !important;
}
.aawp-modern .aawp-modern-card .aawp-discount--tag,
.aawp-modern .aawp-modern-vbox .aawp-discount--tag {
  padding: 4px 11px 4px 8px !important;
  border-radius: 3px !important;
  clip-path: polygon(0 0, calc(100% - 6px) 0, 100% 50%, calc(100% - 6px) 100%, 0 100%) !important;
}
.aawp-modern .aawp-modern-card .aawp-discount .dot,
.aawp-modern .aawp-modern-vbox .aawp-discount .dot {
  width: 5px !important;
  height: 5px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, .92) !important;
  flex: none !important;
}
.aawp-modern .aawp-modern-card .aawp-discount--low,
.aawp-modern .aawp-modern-vbox .aawp-discount--low { background: #F59E0B !important; }
.aawp-modern .aawp-modern-card .aawp-discount--mid,
.aawp-modern .aawp-modern-vbox .aawp-discount--mid { background: #EA580C !important; }
.aawp-modern .aawp-modern-card .aawp-discount--high,
.aawp-modern .aawp-modern-vbox .aawp-discount--high { background: #DC2626 !important; }

/* --- Andamento prezzi compatto: sotto il prezzo, min (verde) a sx + max (rosso) a dx, con icona
   trend (linea spezzata). Niente etichette. Spaziatura verticale per armonia con prezzo/feature/CTA. --- */
.aawp-modern .aawp-modern-card .aawp-modern-history {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin: 12px 2px 14px !important;
  padding: 0 !important;
  list-style: none !important;
}
.aawp-modern .aawp-modern-card .aawp-modern-history-item {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}
.aawp-modern .aawp-modern-card .aawp-modern-trend-ico {
  width: 18px !important;
  height: 18px !important;
  flex: none !important;
  display: block !important;
}
.aawp-modern .aawp-modern-card .aawp-modern-history-min .aawp-modern-history-val { color: #16A34A !important; }
.aawp-modern .aawp-modern-card .aawp-modern-history-max .aawp-modern-history-val { color: #DC2626 !important; }

/* Placeholder discreto per le card SENZA storico (mentre le altre mostrano l'andamento). */
.aawp-modern .aawp-modern-card .aawp-modern-history--empty {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  margin: 12px 0 14px !important;
  min-height: 40px !important;
  color: #a1a1aa !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
}

/* --- Andamento prezzi: variante CHIP (min/max affiancati con etichette, come esempio 3).
   Usa il font corrente del modern; solo questo elemento è ripreso dall'esempio. --- */
.aawp-modern .aawp-modern-card .aawp-modern-history--chips {
  display: block !important;
  margin: 4px 0 14px !important;
  padding: 0 !important;
}
.aawp-modern .aawp-modern-card .aawp-modern-history-cap {
  font-size: 10px !important;
  color: #71717a !important;
  text-align: center !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
}
.aawp-modern .aawp-modern-card .aawp-modern-history-chips {
  display: flex !important;
  gap: 8px !important;
}
.aawp-modern .aawp-modern-card .aawp-modern-chip {
  flex: 1 !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  border-radius: 10px !important;
  padding: 6px 10px !important;
  margin: 0 !important;
}
.aawp-modern .aawp-modern-card .aawp-modern-chip--min { background: #DCFCE7 !important; }
.aawp-modern .aawp-modern-card .aawp-modern-chip--max { background: #FEE2E2 !important; }
.aawp-modern .aawp-modern-card .aawp-modern-chip svg {
  width: 18px !important;
  height: 18px !important;
  flex: none !important;
  display: block !important;
}
.aawp-modern .aawp-modern-card .aawp-modern-chip-c {
  display: flex !important;
  flex-direction: column !important;
  line-height: 1.2 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}
.aawp-modern .aawp-modern-card .aawp-modern-chip--min .aawp-modern-chip-c { color: #15803d !important; }
.aawp-modern .aawp-modern-card .aawp-modern-chip--max .aawp-modern-chip-c { color: #b91c1c !important; }
.aawp-modern .aawp-modern-card .aawp-modern-chip-t {
  font-size: 9px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: .03em !important;
  opacity: .7 !important;
}
/* Con la variante CHIP attiva: niente bordo-top sulle features (la chip fa già da separatore). */
.aawp-modern--trend-chips .aawp-modern-card .aawp-modern-features {
  border-top: 0 !important;
}
/* Se sotto la chip ci sono le features, avvicinale (margine negativo). Ogni device. */
.aawp-modern .aawp-modern-card .aawp-modern-history--chips:has(~ .aawp-modern-features li) {
  margin-bottom: -7px !important;
}
/* Variante LINE (inline): features senza bordo-top né padding-top. */
.aawp-modern--trend-line .aawp-modern-card .aawp-modern-features {
  border-top: 0 !important;
  padding-top: 0 !important;
}
/* Placeholder "Storico non disponibile" su UNA riga → stessa altezza dello storico inline. */
.aawp-modern--trend-line .aawp-modern-card .aawp-modern-history--empty {
  min-height: 18px !important;
  white-space: nowrap !important;
}

/* --- Mobile: titolo e features delle card modern più leggibili (font più grande). La doppia classe
   .aawp-modern.aawp-modern / .aawp-modern-title.aawp-modern-title alza la specificità quanto basta per
   superare le regole base del titolo in ogni contesto, senza dipendere da .entry-content/.wpb_wrapper. --- */
@media (max-width: 600px) {
  .aawp-modern.aawp-modern .aawp-modern-card h3.aawp-modern-title.aawp-modern-title,
  .aawp-modern.aawp-modern .aawp-modern-card h3.aawp-modern-title.aawp-modern-title a {
    font-size: 15px !important;
    line-height: 1.4 !important;
    text-align: center !important;
  }
  .aawp-modern.aawp-modern .aawp-modern-card h3.aawp-modern-title.aawp-modern-title {
    min-height: 42px !important;
    max-height: 42px !important;
  }
  .aawp-modern.aawp-modern .aawp-modern-card .aawp-modern-features li {
    font-size: 13px !important;
    line-height: 1.5 !important;
  }
}

/* ============================================================================
 *  AAWP COMPARISON TABLE (.aawp-tb) — MOBILE: card compatta + IMMAGINI UNIFORMI
 *  Override ad ALTA specificità (.aawp-tb__product) per battere tema/rwp. SOLO
 *  spaziature/dimensioni, nessun colore cambiato. Scoped .aawp-tb--mobile.
 * ========================================================================= */
.aawp-tb--mobile .aawp-tb__product { padding: 6px 8px !important; }
.aawp-tb--mobile .aawp-tb__product .aawp-tb__row { padding: 0 !important; margin: 0 !important; }
.aawp-tb--mobile .aawp-tb__product .aawp-tb__data { padding: 3px 10px !important; }
/* Posizione classifica (1°/2°/3°…): respiro sotto al badge */
.aawp-tb--mobile .aawp-tb__product .aawp-tb__data--type-custom_html { padding: 4px 0 10px !important; }
/* Titolo compatto */
.aawp-tb--mobile .aawp-tb__product .aawp-tb__data--type-title,
.aawp-tb--mobile .aawp-tb__product .aawp-tb__data--type-title * { font-size: 15px !important; line-height: 1.3 !important; }
.aawp-tb--mobile .aawp-tb__product .aawp-tb__data--type-title { padding: 2px 10px 4px !important; }
/* IMMAGINE UNIFORME tra i prodotti: stessa altezza fissa, contenuta e centrata
   (height fisso al posto di max-height → niente immagini più piccole/grandi) */
.aawp-tb--mobile .aawp-tb__product .aawp-tb__data--type-thumb { padding: 2px !important; text-align: center !important; }
.aawp-tb--mobile .aawp-tb__product .aawp-tb-thumb { height: 105px !important; }
.aawp-tb--mobile .aawp-tb__product .aawp-tb__data--type-thumb img {
  height: 105px !important;
  width: auto !important;
  max-width: 100% !important;
  object-fit: contain !important;
  margin: 0 auto !important;
  display: block !important;
}
/* Barre voti compatte */
.aawp-tb--mobile .aawp-tb__product .aawp-tb__data--type-shortcode { padding: 2px 10px !important; }
.aawp-tb--mobile .aawp-tb__product .aawp-tb__data--type-button { padding: 4px 10px !important; }

/* ============================================================================
 *  BARRE DI VALUTAZIONE (.rwp-criterion) — fix bug overflow + resa mobile
 *  Usate nella tabella AAWP e nella scheda prodotto. Solo dimensioni/spaziature.
 * ========================================================================= */
/* FIX BUG (TUTTI i device, TUTTI i colori): la fill colorata viene clippata alla
   forma arrotondata della base → niente angolo destro che "esce" dalla barra grigia. */
.rwp-criterion-bar-base { overflow: hidden !important; }

/* Tabella AAWP in modalità mobile: barre uniformi e slim, testo centrato in verticale,
   spaziatura uniforme tra le barre. */
.aawp-tb--mobile .aawp-tb__product .rwp-criterion { margin: 0 0 7px !important; }
.aawp-tb--mobile .aawp-tb__product .rwp-criterion:last-child { margin-bottom: 0 !important; }
.aawp-tb--mobile .aawp-tb__product .rwp-criterion-bar-base,
.aawp-tb--mobile .aawp-tb__product .rwp-criterion-bar-base .rwp-score-bar { height: 22px !important; }
.aawp-tb--mobile .aawp-tb__product .rwp-criterion-text {
  display: flex !important;
  align-items: center !important;
  top: 0 !important;
  bottom: 0 !important;
  height: auto !important;
}
.aawp-tb--mobile .aawp-tb__product .rwp-criterion-label,
.aawp-tb--mobile .aawp-tb__product .rwp-criterion-score { font-size: 13px !important; line-height: 1 !important; }

/* Altre barre rwp (es. scheda prodotto) su mobile: stesso stile compatto + testo centrato. */
@media (max-width: 640px) {
  .rwp-criterion { margin: 0 0 7px !important; }
  .rwp-review-wrap .rwp-review .rwp-scores .rwp-criterion .rwp-criterion-bar-base { margin-bottom: 10px !important; }
  .rwp-criterion-bar-base,
  .rwp-criterion-bar-base .rwp-score-bar { height: 22px !important; }
  .rwp-criterion-text {
    display: flex !important;
    align-items: center !important;
    top: 0 !important;
    bottom: 0 !important;
    height: auto !important;
  }
  .rwp-criterion-label,
  .rwp-criterion-score { font-size: 13px !important; line-height: 1 !important; }
}
