/** Shopify CDN: Minification failed

Line 385:0 Unexpected "}"

**/
/* ——— Layer stelle dentro la wishlist ——— */
.page-wishlist{
  position: relative;
}

.starfield{
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  overflow: hidden;
}

.page-wishlist > *:not(.starfield){
  position: relative;
  z-index: 1;
}

/* Base stars (uguali su tutti i device) */
#wishlist-stars .star {
  position: absolute;
  background: #fff;
  width: 1px;
  height: 1px;
  opacity: .18;
  animation: twinkle 6s linear infinite both;
}

/* Mobile default: big stars un po’ più piccole */
#wishlist-stars .star.big {
  width: 1.2px;
  height: 1.2px;
  opacity: .28;
}

/* ⭐ Boost desktop: big stars più visibili */
@media (min-width: 1024px) {
  .star.big {
    width: 1.8px;
    height: 1.8px;
    opacity: .4;
  }
}

@keyframes twinkle {
  0%, 100% { opacity: .15; transform: scale(1); }
  50%      { opacity: 1;   transform: scale(1.7); }
}

.layout-toggle-checkbox{display:none}
.layout-toggle-label{--knob:30px;--pad:3px;--ico:18px;display:inline-flex;align-items:center;position:relative;width:80px;height:36px;background:#ccc;border-radius:18px;padding:0 var(--pad);cursor:pointer;transition:background .3s}
.layout-toggle-label .toggle-knob{position:absolute;top:var(--pad);left:var(--pad);width:var(--knob);height:var(--knob);background:#C8EFFD;border:2px solid #0075E3;border-radius:50%;transition:left .3s,background .3s;z-index:1;display:flex;align-items:center;justify-content:center}
.layout-toggle-label .toggle-icon{position:absolute;top:50%;transform:translateY(-50%);width:var(--ico);height:var(--ico);opacity:.35;pointer-events:none;background-repeat:no-repeat;background-position:center;background-size:contain;z-index:2}
.layout-toggle-label .toggle-icon:first-child{left:calc(var(--pad) + (var(--knob) - var(--ico))/2)}
.layout-toggle-label .toggle-icon:last-child{left:calc(100% - var(--knob) - var(--pad) + (var(--knob) - var(--ico))/2)}
.layout-toggle-checkbox:checked + .layout-toggle-label .toggle-knob{left:calc(100% - var(--knob) - var(--pad))}
.layout-toggle-checkbox:not(:checked) + .layout-toggle-label .toggle-icon:first-child{opacity:1}
.layout-toggle-checkbox:checked + .layout-toggle-label .toggle-icon:last-child{opacity:1}
/* Icone 1–4 colonne via SVG */
.icon-1{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18"><rect x="7" y="2" width="4" height="14" rx="2" fill="%23000"/></svg>')}
.icon-2{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18"><rect x="2" y="2" width="4" height="14" rx="2" fill="%23282828"/><rect x="12" y="2" width="4" height="14" rx="2" fill="%23282828"/></svg>')}
.icon-3{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18"><rect x="1" y="2" width="4" height="14" rx="2" fill="%23000"/><rect x="7" y="2" width="4" height="14" rx="2" fill="%23000"/><rect x="13" y="2" width="4" height="14" rx="2" fill="%23000"/></svg>')}
.icon-4{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18"><rect x="0" y="2" width="3.5" height="14" rx="1.75" fill="%23000"/><rect x="4.5" y="2" width="3.5" height="14" rx="1.75" fill="%23000"/><rect x="9" y="2" width="3.5" height="14" rx="1.75" fill="%23000"/><rect x="13.5" y="2" width="3.5" height="14" rx="1.75" fill="%23000"/></svg>')}
@media(min-width:1024px){.layout-toggle-label{width:86px} }

.icon-1,.icon-3{margin-left: 6px !important}

/* sempre, non solo se wishlist vuota */
.wishlist-quote {
  position: relative;
  z-index: 1;
  padding: 20px;
  border-radius: 25px;
  background: #000;
  color: #fff;
  overflow: visible;
}

/* glow esterno */
.wishlist-quote::before {
  content: "";
  position: absolute;
  top: -8px; left: -8px; right: -8px; bottom: -8px;
  border-radius: 25px;
  background-image: conic-gradient(
    from var(--angle),
    #5B8DEF,
    #8E6FEB,
    #E5515F,
    #5B8DEF
  );
  filter: blur(12px);
  animation: spin 3s linear infinite;
  z-index: -3;
  pointer-events: none;
}
/* sfondo nero interno */
.wishlist-quote::after {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: #000;
  border-radius: 25px;
  z-index: -2;
  pointer-events: none;
}

/* typewriter spans */
.typewriter-char {
  opacity: 0;
  display: inline;
  transition: opacity 0.05s linear;
}
.typewriter-char.visible {
  opacity: 1;
}

  
/* cursore lampeggiante */
.typewriter-cursor {
  display: inline;
  color: #fff;
  animation: blink-caret 0.8s step-end infinite;
   font-weight: normal !important;
}

@keyframes blink-caret {
  from, to { opacity: 0; }
  50% { opacity: 1; }
}
/* keyframes glow */
@property --angle { syntax: "<angle>"; initial-value: 0deg; inherits: false; }
@keyframes spin { from { --angle: 0deg; } to { --angle: 360deg; } }



  /* SFONDO NOTTE QUANDO LA WISHLIST È VUOTA */
.page-wishlist.wishlist-empty-bg {
    background: url('/cdn/shop/files/Dream-night.jpg?v=1746182027') center center no-repeat;
  background-size: cover;
}

/* Quando piena, sfondo bianco di default */
.page-wishlist {
  background: url('/cdn/shop/files/Dream-night.jpg?v=1746182027') center center repeat;
  background-size: cover;
}

  /* Titolo bianco quando la wishlist è vuota */
.page-wishlist.wishlist-empty-bg .wishlist-title {
  color: #fff !important;
}

/* ---------------------------------------
   QUICK BUY BUTTON
--------------------------------------- */

.quick-buy-btn {
    background-color: #0861ce;
    letter-spacing: 0.01rem;
    color: white;
    padding: 9px;
    border-radius: 50px;
    border: none;
    cursor: pointer;
    text-align: center;
    font-size: 11px !important;
    font-weight: bold;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;
    width: auto;
    min-width: 100px;
    max-width: 160px;
    line-height: 1;
    box-sizing: border-box;
    margin-top: 4px;
    margin-bottom: 3px;
}
 
.wishlist-container li:hover .quick-buy-btn {
    background-color: #ffcc00 !important;
    color: #000 !important;
}

/* ---------------------------------------
   STILI GENERALI
--------------------------------------- */
.page-wishlist {
    margin: 0 auto;
    padding: 18px;
    text-align: center;
    box-sizing: border-box;
}

    /* ———————————————————————————————
   FULL‑WIDTH HERO BACKGROUND SOLO DESKTOP
   ——————————————————————————————— */
@media (min-width: 1024px){
  /* 1️⃣   estendi il wrapper */
  .page-wishlist{
    max-width: none;     /* toglie il tappo a 1200px */
    width: 100vw;
    padding-left: 0;
    padding-right: 0;
    /* lo sfondo lo vogliamo che “copra” tutto */
    background-repeat: no-repeat;
    background-size: cover;     /*  (già era cover quando vuota) */
    background-position: center top;
  }

  /* 2️⃣   ricrei il “gutter” e max‑width sui contenuti
         (tutti i figli diretti del wrapper)            */
  .page-wishlist > *{
    margin-left: auto;
    margin-right: auto;
    padding-left: 18px;   /* lo stesso che usavi prima */
    padding-right: 18px;
  }

  /* opzionale: togli il padding ai blocchi che non lo devono avere */
  .page-wishlist > #wishlist-items{
    padding-left: 300px;   /* le tue regole originali */
    padding-right: 300px;
  }

  .page-wishlist.wishlist-empty-bg{ min-height: 380px; }
}

.wishlist-title {
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    margin-top: 10px;
    margin-bottom: 20px;
    color: white;
}
.wishlist-empty-text {
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    color: #333;
    max-width: 500px;
    margin: 0 auto 20px;
}

.hidden {
    display: none;
}

/* ---------------------------------------
   CONTAINER GRID PER I PRODOTTI
--------------------------------------- */
#wishlist-items {
  display: grid !important;
  gap: 14px;
  width: 100%;
  padding-inline: 10px;
  box-sizing: border-box;
}

@media (max-width: 767px) {
  #wishlist-items {
    /* 2 colonne “larghe” ma comprimibili: niente overflow con testi lunghi */
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 4px !important;
    padding: 0 !important;
    width: 103%;
    margin-left: -6px;
    box-sizing: border-box;
  }

    .card-inner .quick-buy-btn{
    display: block !important;          /* niente flex: ellissi più affidabile */
    width: 100% !important;
    max-width: 100% !important;

    height: 36px !important;            /* compatto */
    line-height: 36px !important;       /* testo centrato in verticale */
    padding: 0 9px !important;         /* distanza reale dai bordi */
    box-sizing: border-box !important;

    white-space: nowrap !important;     /* una sola riga */
    overflow: hidden !important;
    text-overflow: ellipsis !important; /* mostra … */
    text-align: center !important;      /* resta centrato */
  }

  /* se dentro il bottone c’è uno span/wrapper, tronca anche quello */
  .card-inner .quick-buy-btn > *{
    display: block !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    line-height: inherit !important;    /* evita disallineamenti verticali */
  }
  #wishlist-items.layout-1col-mobile .card-inner .quick-buy-btn{
  width: 50% !important;              /* scegli 80–90% a gusto */
  max-width: 420px !important;        /* opzionale: limite superiore */
  margin: 8px auto 10px !important;   /* centrato nella card */
}
}

  .wishlist-container li {
    width: 100%;
    margin-top: 3px !important;
    box-sizing: border-box;
    /* consente il truncation dentro la card */
    min-width: 0 !important;
  }

  .glow-wrapper {
    position: relative;
    box-sizing: border-box;
    background: transparent;
    width: 100%;
    padding: 1.5px; /* spazio interno per il glow */
    /* consente al contenuto di comprimersi senza spingere i bordi */
    min-width: 0 !important;
  }

  .card-inner {
    width: 100%;
    background: white;
    border-radius: 10px;
    position: relative;
    z-index: 1;
    padding: 10px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 100%;
    /* evita che gli elementi interni allarghino la colonna */
    min-width: 0 !important;
  }

.product-option{display:flex;flex-direction:column;align-items:stretch;gap:6px;margin:7px 0 4px;padding:0 5px;box-sizing:border-box}
.wl-select-wrap{position:relative;display:block;width:100%;max-width:70%;margin:0 auto;background:#f1f1f1;border:1px solid #d8d5cf;border-radius:6px;box-sizing:border-box}
.wl-select-wrap:hover,.wl-select-wrap:focus-within{ border-color:#3F9FF4;background: #F0FBFF!important; box-shadow:0 0 0 3px rgba(63,159,244,.18)}
.wl-select-wrap .product-option-select{display:block;width:100%!important;margin:0!important;padding:6px;padding-left:26px!important;font-size:14px!important;font-weight:normal;box-sizing:border-box;vertical-align:baseline!important;border:0!important;outline:none;appearance:none;-webkit-appearance:none;-moz-appearance:none;background:transparent!important;box-shadow:none!important;text-align:center !important;}
.wl-select-wrap .wl-select-chevron{position:absolute;right:.8em;top:50%;transform:translateY(-50%);pointer-events:none;display:flex;align-items:center;justify-content:center}
.wl-select-wrap .wl-select-chevron svg{width:12px;height:12px;display:block}
.layout-2col-mobile .product-option .wl-select-wrap{max-width:99%!important}
/* 1 COLonna: più largo + NO ellipsis */
.layout-1col-mobile .product-option .wl-select-wrap{max-width:92%!important}
.layout-1col-mobile .wl-select-wrap .product-option-select{overflow:visible!important;text-overflow:clip!important;white-space:nowrap!important}
/* 2 COLonne: ellipsis ON (solo qui) */
.layout-2col-mobile .wl-select-wrap .product-option-select{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}

  .glow-wrapper::before {
    content: "";
    position: absolute;
    top: 4px;
    left: 4px;
    right: 4px;
    bottom: 4px;
    border-radius: 16px;
    background-image: conic-gradient(
      from var(--angle),
      #ff4545,
      #00ff99,
      #006aff,
      #ff0095,
      #ff4545
    );
    z-index: -1;
    opacity: 0;
    transition: opacity 0.3s;
    animation: spin 3s linear infinite;
    filter: blur(8px);
    pointer-events: none;
  }

  .glow-wrapper:hover::before {
    opacity: 1;
  }
}

#wishlist-items,
.wishlist-container li,
.glow-wrapper,
.card-inner {
  transition: all 0.3s ease-in-out;
}

/* ---------------------------------------
   ELEMENTI DELLA WISHLIST
--------------------------------------- */
.wishlist-container ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
}

.wishlist-container li {
  position: relative;
  border-radius: 8px;
  background: transparent;
  transition: transform 0.3s ease;
  margin: 0;
  box-sizing: border-box;
  padding: 4px;
  max-width: 100%;
}

.wishlist-container li:hover {
  transform: translateY(-5px);
}

.wishlist-container li.wl-removing{pointer-events:none;animation:wl-ghost-out .28s ease forwards}
@keyframes wl-ghost-out{to{opacity:0;transform:translateY(10px) scale(.96);filter:blur(2.5px)}}


/* ---------------------------------------
   GLOW WRAPPER EFFETTO LUMINOSO
--------------------------------------- */

.glow-wrapper {
    position: relative;
    border-radius: 13px;
    background: #f5f5f5;
    box-shadow: 15px 20px 30px rgba(0, 0, 0, 0.15);
    z-index: 0;
    padding: 2.5px !important;
    overflow-wrap: break-word;
}
.glow-wrapper::before {
    content: "";
    position: absolute;
    top: -3px;
    left: -3px;
    right: -3px;
    bottom: -3px;
    border-radius: 16px;
    background-image: conic-gradient(
        from var(--angle),
        #ff4545,
        #00ff99,
        #006aff,
        #ff0095,
        #ff4545
    );
    z-index: -1;
    opacity: 0;
    transition: opacity 0.3s;
    animation: spin 3s linear infinite;
    filter: blur(8px);
}
.glow-wrapper:hover::before {
    opacity: 1;
}
@property --angle {
    syntax: "<angle>";
    initial-value: 0deg;
    inherits: false;
}
@keyframes spin {
    from { --angle: 0deg; }
    to   { --angle: 360deg; }
}

/* ---------------------------------------
   CONTENUTO DELLA CARD (.card-inner)
--------------------------------------- */
.card-inner {
    background: #ffffff;
    border-radius: 10px;
    padding: 10px;
    position: relative;
    z-index: 1;
    box-sizing: border-box;
  min-height: 100%; /* Stira in verticale */
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

/* ---------------------------------------
   CONTENUTI INTERNI (immagini, titoli, etc.)
--------------------------------------- */
.wishlist-container li a {
    display: block;
    text-align: center;
    padding: 5px;
    margin-bottom: 5px;
    box-sizing: border-box;
}
.wishlist-container li img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
    display: block;
    margin: 0 auto;
    box-sizing: border-box;
}
.wishlist-container li h3 {
  margin: 4px auto 9px;
    font-size: 13px;
    line-height: 1.2;
   white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
  max-width: 100% !important;
    max-width: 150px;
    box-sizing: border-box;
}

#wishlist-items.layout-4col-desktop li h3,
#wishlist-items.layout-2col-mobile li h3 {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  max-width: 100px !important;
} 

/* OPZIONI PRODOTTO: label sopra al select, sempre */
/* OPZIONI PRODOTTO: label sopra + SELECT centrato */
.product-option{
  display: flex;
  flex-direction: column;
  align-items: stretch;         /* lasciamo la label a piena larghezza */
  gap: 6px;
  margin: 7px 0 4px;
  padding: 0 5px;
  box-sizing: border-box;
}

/* ⬇️ il SELECT è centrato e con una larghezza massima */
.product-option .product-option-select{
  background: #f1f1f1!important;
  display:block!important;
  width:100%!important;
  max-width:70%!important;
  margin:0 auto!important;
  padding:6px 2.6em 6px 10px;
  font-size:14px;
  font-weight:normal;
  white-space:nowrap;
  border-radius:5px;
  overflow:hidden;
  text-overflow:ellipsis;
  box-sizing:border-box;
  vertical-align:baseline!important;
  border:1px solid #d8d5cf;
  outline:none;
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  background-color:#fff;
  background-repeat:no-repeat;
  background-position:right .8em center;
  background-size:1em;
  transition:border-color .15s ease, box-shadow .15s ease;
}

.product-option .product-option-select:hover,
.product-option .product-option-select:focus,
.product-option .product-option-select:focus-visible,
.product-option .product-option-select:active{
  border-color:#3F9FF4;
  background: #F0FBFF!important;
  box-shadow:0 0 0 3px rgba(63,159,244,.18);
}

/* (opzionale) se vuoi più larghi in 2 colonne */
#wishlist-items.layout-2col-mobile .product-option .product-option-select{
  max-width: 90% !important;
}

.wishlist-container .product-options {
    margin-bottom: 8px;
}

 #wishlist-items.layout-2col-mobile .product-option .product-option-select{
    width: 99% !important;      /* più pieno in colonna stretta */
    max-width: 99% !important;
    margin: 0 auto !important;  /* sempre centrato */
    box-sizing: border-box; 
 }

/* ---------------------------------------
   ALTRI ELEMENTI
--------------------------------------- */
.wishlist-container li > span {
    display: block;
    font-size: 14px;
    font-weight: bold;
    margin-top: 10px;
    box-sizing: border-box;
}
.wishlist-container .remove-wishlist{
  position:absolute;
  top:10px;
  right:10px;
  width:34px;
  height:34px;
  padding:0;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,.82);
  -webkit-backdrop-filter:blur(6px);
  backdrop-filter:blur(6px);
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  line-height:1;
  font-size:18px;
  box-shadow:0 6px 18px rgba(0,0,0,.18);
  z-index:20;
  transition:transform .12s ease,background .12s ease,box-shadow .12s ease;
}
.wishlist-container .remove-wishlist:hover{
  transform:scale(1.06);
  background:rgba(255,255,255,.92);
  box-shadow:0 8px 22px rgba(0,0,0,.22);
}
.wishlist-container .remove-wishlist:active{ transform:scale(.96); }
.wishlist-container .remove-wishlist:focus-visible{
  outline:2px solid rgba(0,117,227,.65);
  outline-offset:2px;
}
@media (max-width: 767px){
  .wishlist-container .remove-wishlist{
    top:6px;
    right:6px;
    width:26px;
    height:26px;
    font-size:13px;
    line-height:0;
    background:rgba(255,255,255,.72);
    box-shadow:0 4px 12px rgba(0,0,0,.16);
  }
  .wishlist-container .remove-wishlist:hover{transform:none;}
}


/* ---------------------------------------
   WISHLIST BUTTON
--------------------------------------- */

  .wishlist-start-btn {
    display: inline-block;
    margin-top: 10px;
    padding: 10px 20px;
    background: #000;
    color: #fff;
    text-decoration: none;
    font-size: 16px;
    box-shadow: rgba(0, 0, 0, 0.4) 0px 2px 7px 0px;
    transition: background-color 0.3s ease, transform 0.2s ease;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.4);
}
.wishlist-start-btn:hover {
    background: #444;
    transform: scale(1.10);  
}
  
.wishlist-start-btn {
    margin-top: 6px !important;
    margin: 15px;
    position: relative;
    display: inline-block;
    text-align: center;
    border: none;
    outline: none;
    color: #fff;
    background: linear-gradient(90deg, #03a9f4, #f441a5, #ffeb3b, #03a9f4);
    background-size: 400%;
    padding: 15px 20px;
    padding-top: 15px;
    z-index: 1;
    border-radius: 50px;
    cursor: pointer;
    box-sizing: border-box;
    text-decoration: none;
    font-weight: bold;
    font-style: Montserrat;
}
.wishlist-start-btn:hover {
    animation: animate 8s linear infinite;
}
@keyframes animate {
    0% { background-position: 0%; }
    100% { background-position: 400%; }
}
.wishlist-start-btn::before {
    content: "";
    position: absolute;
    top: -5px;
    left: -5px;
    right: -5px;
    bottom: -5px;
    z-index: -1;
    background: linear-gradient(90deg, #03a9f4, #f441a5, #ffeb3b, #03a9f4);
    background-size: 400%;
    border-radius: 50px;
    opacity: 0;
    transition: opacity 0.5s;
}
.wishlist-start-btn:hover::before {
    filter: blur(20px);
    opacity: 1;
    animation: animate 8s linear infinite;
}

  /* === animazione automatica mobile ===================== */
.wishlist-start-btn.auto-animate {
 background: #444;
  }
  .wishlist-start-btn.auto-animate,
.wishlist-start-btn.auto-animate::before{
  animation: animate 8s linear infinite;   /* stesso keyframe del :hover */
  opacity: 1;                  
    transition: opacity 0.3s;
}

  /* === glow attivo anche su mobile === */
.wishlist-start-btn.auto-animate::before {
  filter: blur(25px);
}

/* LAYOUT SWITCHING (FORZATO) */
#wishlist-items.layout-1col-mobile {
  grid-template-columns: repeat(1, 1fr) !important;
}
#wishlist-items.layout-2col-mobile {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

@media (min-width: 1024px) {
  #wishlist-items.layout-3col-desktop {
    grid-template-columns: repeat(3, 1fr) !important;
  }
  #wishlist-items.layout-4col-desktop {
    grid-template-columns: repeat(4, 1fr) !important;
  }
}

/* Nasconde SEMPRE i pulsanti, poi li mostra solo nei casi specifici */
.layout-switch-mobile,
.layout-switch-desktop {
  display: none !important;
  visibility: hidden;
  height: 0;
  overflow: hidden;
}

@media (max-width: 450px) {
   .layout-2col-mobile .wl-select-wrap .product-option-select{font-size:13px!important}
  /* 2 colonne: lascia sempre “aria” a destra per il chevron */
 .layout-2col-mobile .wl-select-wrap{
    --chev-space: 2.1em; /* spazio riservato al chevron (tweak: 2.4–3em) */
  }
   .layout-2col-mobile .wl-select-wrap .product-option-select{
   text-align: left !important;
    padding: 6px var(--chev-space) 6px 8px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    min-width: 0 !important; /* evita che “pretenda” spazio */
  }
}

/* ✅ Solo su MOBILE: mostra 1-2 colonne */
@media screen and (max-width: 767px) {
  .layout-switch-mobile {
    display: flex !important;
    visibility: visible;
    height: auto;
    justify-content: center;
    gap: 8px;
    margin-bottom: 15px;
  }
}

/* ✅ Solo su DESKTOP: mostra 3-4 colonne */
@media screen and (min-width: 1024px) {
  .layout-switch-desktop {
    display: flex !important;
    visibility: visible;
    height: auto;
    justify-content: center;
    gap: 8px;
    margin-bottom: 15px;
  }
}


@media (max-width: 740px) {
.card-inner .quick-buy-btn {
align-self: center;

}
}
@media (min-width: 1024px) {
.card-inner .quick-buy-btn {
 align-self: center;
 width: 60% !important; 
 max-width: 200% !important; 
 font-size: 13.5px !important;
 padding: 15px; 
}
}
/* Gradient solo se wishlist piena */
.gradient-title {
    background: linear-gradient(to right, #5B8DEF, #8E6FEB, #E5515F);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
}
  @media (min-width: 768px) {
  .gradient-title {
    background-size: 30%; /* Allarga il gradient SOLO su desktop */
    background-position: center;
    font-size: 29px;
  }
}

  /* Titolo e prezzo più compatti */
.card-inner h3 {
  margin-top: 0.25em;    /* riduce lo spazio sopra il titolo */
  margin-bottom: 0.25em; /* riduce lo spazio sotto il titolo */
}

/* Prezzi su un’unica riga */
.price-container {
  display: flex;
  justify-content: center;
  gap: 0.5em;           /* spazio fra list-price e actual-price */
  margin-bottom: 0.5em; /* riduce lo spazio sotto i prezzi */
}

/* Listino sbarrato leggermente più piccolo e grigio */
.price-container .list-price {
  color: #666;
  text-decoration: line-through;
  opacity: 0.7;
  margin: 0;            /* niente margini aggiuntivi */
}

/* Prezzo scontato in rosso */
.price-container .actual-price {
  font-weight: bold;
  color: rgb(var(--product-price-highlight));
  margin: 0;            /* niente margini aggiuntivi */
}
/* evidenzia solo se c'è listino barrato */
.price-container:has(.list-price:not(:empty)) .actual-price{color: #E34851}
/* fallback per browser senza :has() */
.price-container.is-discount .actual-price{color: #E34851}

/* ============================
   NASCONDI TOGGLE + SORT QUANDO LA WISHLIST È VUOTA
   ============================ */
.page-wishlist.wishlist-empty-bg .layout-switch-mobile,
.page-wishlist.wishlist-empty-bg .layout-switch-desktop,
.page-wishlist.wishlist-empty-bg .wishlist-sort {
  display: none !important;
}

   .badge-stack {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: -7px;
    margin-bottom: 8px;
  }

  .custom-badge {
    display: inline-flex !important;
    align-items: center;
    gap: 6px;
    padding: 5px 9px;
    margin-top: 10px;
    font-weight: bold;
    text-transform: uppercase;
    text-shadow:0 1px 3px rgba(0,0,0,.6);
    color: #fff;
    border-radius: 66px;
    border:1px solid var(--badge-border,rgba(255,255,255,.35))!important;
    white-space: nowrap;
    box-shadow: 0 0 6px rgba(255, 255, 255, 0.2), 0 0 12px var(--badge-color);
  }

    .custom-badge__text {
    display: inline-block;
    font-size: 9px !important;
    font-weight: bold;
    line-height: 1;
    margin: 0 !important;
  }

  .badge-stack .custom-badge svg {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
    filter: drop-shadow(0 2px 1px rgba(0, 0, 0, 0.3));
  }

 @keyframes db-bestseller-shine{
  0%{background-position:0% 50%}
  50%{background-position:100% 50%}
  100%{background-position:0% 50%}
}

.custom-badge--bestseller-top1{
  color:#fff;
  text-shadow:0 1px 2.5px rgba(0,0,0,.9);
  border:1px solid #b38728;
  background-image:linear-gradient(135deg,#bf953f,#fcf6ba,#b38728,#fbf5b7,#aa771c);
  background-size:200% 200%;
  animation:db-bestseller-shine 4s ease infinite;
}

 /* ===== FIX SORT SELECT (wishlist) ===== */
.wl-sort-wrap{
  position: relative;
  display: inline-flex;
  align-items: center;
  max-width: 100%;
}

/* il select torna “normale”: padding/radius/altezza OK */
.wl-sort-wrap .wishlist-sort{
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: .5em 2.6em .5em 1em !important;
  border-radius: 6px !important;
  border: 1px solid #d8d5cf !important;
  background: #fff !important;
  font-weight: 500;
  font-size: 1.1rem;
  line-height: 1.2;
}

.wl-sort-wrap .wishlist-sort:hover,
.wl-sort-wrap .wishlist-sort:focus,
.wl-sort-wrap .wishlist-sort:focus-visible,
.wl-sort-wrap .wishlist-sort:active{
  border: 1.8px solid #0075E3!important;
  border-color:#3F9FF4 !important;
  box-shadow:none !important;
}

/* chevron centrato davvero */
.wl-sort-wrap .wl-sort-chevron{
  position: absolute;
  right: .85em;
  top: 52%;
  transform: translateY(-50%);
  pointer-events: none;

  display: flex;
  align-items: center;
  justify-content: center;

  line-height: 0; /* evita baseline/descender che “spinge giù” */
}

.wl-sort-wrap .wl-sort-chevron svg{
  display: block;   /* IMPORTANTISSIMO per non “toccare sotto” */
  width: 12px;
  height: 12px;
}


.wl-skeleton .skeleton-box,
.wl-skeleton .skeleton-text{ 
  background: #eee;
  border-radius:4px;
  height: 16px;
  margin: 8px 0;
  position:relative;
  overflow:hidden;
}
.wl-skeleton .skeleton-box{ aspect-ratio:1/1; height:auto; }
.wl-skeleton .skeleton-text.small{ height:12px; width:60%; }
.wl-skeleton .skeleton-box::after,
.wl-skeleton .skeleton-text::after{
  content:"";
  position:absolute; inset:0;
  transform:translateX(-100%);
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.5), transparent);
  animation:wl-shimmer 1.2s infinite;
}
@keyframes wl-shimmer{100%{transform:translateX(100%);}}

/* Fade-in per le immagini già decodificate */
.img-fade{ opacity:0; transition:opacity .25s ease; }
.img-fade[src]{ opacity:1; }


  /* desktop / tablet */
@media (min-width: 600px) {
  .wishlist-quote{
    max-width: clamp(420px, 60%, 700px); /* scegli tu i limiti */
    margin-inline: auto;                 /* centro orizzontalmente */
  }
}

/* opzionale: su widescreen >1600px la puoi stringere ancora */
@media (min-width: 1000px){
  .wishlist-quote{
    max-width: 550px;
  }
}
/* ===== Wishlist notices — centrati, compatti, width = contenuto ===== */
/* Layout a colonna, tutto centrato; niente SVG separato: icona inline nel titolo */
#wl-login-notice .wl-icon{ display:none !important; }

.wl-login-notice{
  display:grid !important;
  grid-template-columns: 1fr;
  row-gap:8px;
  justify-items:center;              /* centra il contenuto nella griglia */
  align-items:center;
}

.wl-login-notice .wl-text{
  color:#111; font-size:15px; line-height:1.35;
  text-align:center !important;
  overflow-wrap:anywhere; min-width:0;
}
.wl-login-notice .wl-text strong{
  display:inline; font-weight:800;
  font-size:clamp(14px, 3.6vw, 18px);
  line-height:1.15; margin:0;
  position:relative;
}

/* ===== Box “login” ===== */
/* CTA sotto — larghe quanto il box (niente restringimenti) */
.wl-login-notice .wl-actions{
  display:flex !important; flex-direction:column !important;
  align-items:stretch !important;    /* prende tutta la larghezza del box */
  justify-content:center !important;
  width:100%;
}
.wl-btn-create {
  margin-top: 10px;
display:block;width:100%;box-sizing:border-box;padding:15px 15px;border-radius:999px;font-weight:800;font-size:14px;text-align:center; letter-spacing:0.1em;text-transform: uppercase;
border:2px solid transparent!important;
text-shadow:0 2px 3px rgba(0,0,0,.9)!important;
  background:#E63946!important;color: #fff; border:1.5px solid #001E44!important; /* Crea account */
}
.wl-login-notice .wl-btn{
      display:block;width:100%;box-sizing:border-box;padding:15px 15px;border-radius:999px;font-weight:800;font-size:14px;text-align:center; letter-spacing:0.1em;text-transform: uppercase;
border:2px solid transparent!important;
text-shadow:0 2px 3px rgba(0,0,0,.9)!important;
  background:#006FCF!important; color: #fff; border:1.5px solid #001E44!important; /* Crea account */
}
.wl-login-notice .wl-btn--ghost{
  margin: 5px 0px;
    display:block;width:100%;box-sizing:border-box;padding:15px 15px;border-radius:999px;font-weight:800;font-size:14px;text-align:center; letter-spacing:0.1em;text-transform: uppercase;color:#fff;text-shadow:0 2px 3px rgba(0,0,0,.9)!important;background:linear-gradient(135deg,#f6cce4 0%,#f6cce4 30%,#eccfef 35%,#dfd2f8 40%,#d0d7fd 50%,#c1dbff 60%,#bce0ff 70%,#b8e5ff 80%,#b6e9fe 88%,#beeffd 94%,#c7f4fc 97%,#d2f9fb 99%,#ddfefc 100%) padding-box,linear-gradient(135deg,#E71D4F 0%,#0075E3 100%) border-box!important;border:2px solid transparent!important;
}
.wl-login-notice .wl-btn:hover{ transform:translateY(-1px); }

/* Titolo pagina vicino al box */
.wishlist-title{
  line-height:1.15;
  margin-bottom:8px;
}

/* Visibilità gestita da JS / classi */
#wl-empty-notice, #wl-login-notice { display: none !important; }
.page-wishlist.wl--show-empty  #wl-empty-notice { display: block !important; }
.page-wishlist.wl--show-login  #wl-login-notice { display: grid !important; }

.page-wishlist.wl--boot #wl-share-global,.page-wishlist.wl--boot #clear-wishlist-btn,.page-wishlist.wl--boot #wishlist-layout-switch{display:none!important}
.page-wishlist.wl--show-empty #wl-share-global,.page-wishlist.wl--show-empty #clear-wishlist-btn,.page-wishlist.wl--show-empty #wishlist-layout-switch,.page-wishlist.wl--show-empty #wishlist-items{display:none!important}
.page-wishlist.wl--show-empty #empty-wishlist-content{display:block!important}

/* Base comune (box stretto quanto il contenuto, sempre centrato) */
.wl-empty-notice,
.wl-login-notice{
  --notice-max: 700px;
  width: fit-content;                /* si stringe al contenuto */
  max-width: calc(100% - 24px);    /* mai oltre schermo su mobile */
  margin: 8px auto 14px;
  padding: 12px 14px;                /* padding interno sobrio */
  background:#f1f2f4;
  border-radius:12px;
  box-sizing:border-box;
  text-align:center !important;      /* TUTTO centrato */
}

/* ===== Box “wishlist vuota” ===== */
#wl-empty-notice .wl-icon{ display:none !important; }   /* usi l’emoji nel testo */
.wl-empty-notice .wl-text{
  color:#111; font-size:15px; line-height:1.35;
  overflow-wrap:anywhere; min-width:0;
}
.wl-empty-notice .wl-text strong{
  display:inline; font-weight:800;
  font-size:clamp(14px, 3.6vw, 18px);
  line-height:1.15; margin:0;
}

.wl-login-notice {
margin-top: 24px;
}

/* ===== Box “login” ===== */
/* Layout a colonna, tutto centrato; niente SVG separato: icona inline nel titolo */
#wl-login-notice .wl-icon{ display:none !important; }

.wl-login-notice{
  display:grid !important;
  grid-template-columns: 1fr;
  row-gap:8px;
  justify-items:center;              /* centra il contenuto nella griglia */
  align-items:center;
}

.wl-login-notice .wl-text{
  color:#111; font-size:15px; line-height:1.35;
  text-align:center !important;
  overflow-wrap:anywhere; min-width:0;
}
.wl-login-notice .wl-text strong{
  display:inline; font-weight:800;
  font-size:clamp(14px, 3.6vw, 18px);
  line-height:1.15; margin:0;
  position:relative;
}


/* CTA sotto — larghe quanto il box (niente restringimenti) */
.wl-login-notice .wl-actions{
  display:flex !important; flex-direction:column !important;
  align-items:stretch !important;    /* prende tutta la larghezza del box */
  justify-content:center !important;
  gap:10px; margin-top:6px !important;
  width:100%;
}
/* Titolo pagina vicino al box */
.wishlist-title{
  line-height:1.15;
  margin-bottom:8px;
}
#empty-wishlist-content{ margin-top:8px; }

/* Desktop: un filo di respiro senza fare “box gigante” */
@media (min-width:1024px){
  .wl-empty-notice,
  .wl-login-notice{
    max-width: var(--notice-max);
    padding:14px 16px;
  }
}

/* Telefoni molto piccoli */
@media (max-width:380px){
  .wl-empty-notice .wl-text strong,
  .wl-login-notice .wl-text strong{ font-size:13px; }
}

/* Share read-only: niente rimozione/svuota */
.page-wishlist.is-shared #clear-wishlist-btn,
.page-wishlist.is-shared .remove-wishlist{display:none!important}
/* Allineamento share globale */
#wl-share-global .wl-btn{border-radius:28px;padding:10px 18px;font-weight:800}

.page-wishlist.is-shared #wl-login-notice{display:none!important}
/* Collapsible share (loggati) */
.wl-share-box{margin:10px auto 14px;max-width:700px}
.wl-collapsible{border:1.5px solid #000;border-radius:12px;background:#fff;overflow:hidden}
.wl-collapsible__summary{
  position:relative;display:flex;align-items:center;justify-content:center;
  padding:12px 16px;font-weight:800;cursor:pointer;user-select:none;text-align:center
}
.wl-collapsible__summary::-webkit-details-marker{display:none}
.wl-caret{position:absolute;right:16px;top:50%;transform:translateY(-50%);transition:.2s}
.wl-collapsible[open] .wl-caret{transform:translateY(-50%) rotate(180deg)}
.wl-collapsible__content{padding:10px 16px 16px}
.wl-share-copy{margin:6px 0 12px;font-size:14px;line-height:1.35}

/* Pulsanti share */
#wl-share-global .wl-btn,#wl-share-panel .wl-btn{
  border:0;border-radius:28px;padding:10px 18px;font-weight:800;
  background:#006FCF;color:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center
}
#wl-share-global .wl-btn:hover,#wl-share-panel .wl-btn:hover{background:#E63946}

/* Nascondi tab se wishlist vuota o condivisa */
.page-wishlist.wishlist-empty-bg #wl-share-global,
.page-wishlist.is-shared #wl-share-global{display:none!important}

.last-one-flag{
  display:inline-flex !important;
  justify-content:center !important;
  align-items:center;
  align-self:center !important;   /* ✅ centrato nella card */
  flex:0 0 auto !important;
  width:auto !important;
  gap:6px;
  padding:6px 10px;
  border-radius:999px;
  background:#ffe9e6;
  color:#b80000;
  border:1px solid #ffb5ac;
  font-weight:700;
  font-size:12px;
  line-height:1;
  margin:4px auto 8px !important; /* ✅ auto = centrato orizzontalmente */
  box-sizing:border-box;
  pointer-events:none;
  z-index:9;
}
.last-one-flag[hidden]{display:none!important}

.card-inner{ position:relative; }
.last-one-flag{ pointer-events:none; z-index:9999; }
.card-inner > a{ position:static !important; } /* solo se il link copre la card */
/* =========================================
   ANIMAZIONI ORDINAMENTO (SORTING)
   ========================================= */

/* Classe di stato (utile se vuoi bloccare i click) */
#wishlist-items.is-sorting {
  pointer-events: none; 
}

/* Animazione di entrata per le card VERE (dopo lo skeleton) */
@keyframes sortFadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Classe applicata alle li dopo l'ordinamento */
.wl-item-animating {
  animation: sortFadeIn 0.4s cubic-bezier(0.2, 0.8, 0.2, 1) backwards;
}