/**
 * GBF - Página de favoritos
 */

.gbf-favorites-summary,
.gbf-favorites-empty{
  font-family:"Roboto Clean", Roboto, sans-serif;
}

.gbf-favorites-summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  width:100%;
  margin:0 0 6px;
}

.gbf-favorites-summary__count{
  color:#3d3d3d;
  font-size:16px;
  font-weight:500;
  line-height:1.4;
}

.gbf-favorites-summary__clear{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  margin:0;
  padding:0 14px;
  border:1px solid #d7d7d7;
  border-radius:10px;
  background:#fff;
  color:#3d3d3d;
  font:inherit;
  font-size:14px;
  font-weight:500;
  line-height:1;
  cursor:pointer;
  appearance:none;
  -webkit-appearance:none;
  transition:border-color .16s ease, background-color .16s ease, color .16s ease;
}

.gbf-favorites-summary__clear:hover{
  border-color:#b7b7b7;
  background:#f7f7f7;
  color:#262626;
}

.gbf-favorites-summary__clear:focus-visible,
.gbf-favorites-empty__button:focus-visible{
  outline:3px solid rgba(19,123,214,.34);
  outline-offset:2px;
}

.gbf-favorites-storage-note{
  width:100%;
  margin:0 0 24px;
  color:#6b6b6b;
  font-family:"Roboto Clean", Roboto, sans-serif;
  font-size:13px;
  font-weight:400;
  line-height:1.45;
}

.gbf-favorites-storage-note.is-error,
.gbf-favorites-storage-error{
  color:#b42318;
}

.gbf-favorites-storage-error{
  max-width:460px;
  margin:0 0 20px;
  font-family:"Roboto Clean", Roboto, sans-serif;
  font-size:14px;
  font-weight:500;
  line-height:1.45;
  text-align:center;
}

.gbf-favorites-empty{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  width:100%;
  max-width:620px;
  min-height:360px;
  margin:20px auto 40px;
  padding:48px 28px;
  box-sizing:border-box;
  border:1px solid #e4e4e4;
  border-radius:16px;
  background:#fff;
  text-align:center;
}

.gbf-favorites-empty__icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:64px;
  height:64px;
  margin:0 0 22px;
  border-radius:50%;
  background:#f4f4f4;
  color:#626262;
}

.gbf-favorites-empty__icon svg{
  display:block;
  width:30px;
  height:30px;
}

.gbf-favorites-empty__title{
  margin:0;
  color:#262626;
  font-size:22px;
  font-weight:600;
  line-height:1.3;
}

.gbf-favorites-empty__text{
  max-width:460px;
  margin:12px 0 24px;
  color:#5a5a5a;
  font-size:16px;
  font-weight:400;
  line-height:1.55;
}

.gbf-favorites-empty__button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 18px;
  border-radius:10px;
  background:#262626;
  color:#fff !important;
  font-size:15px;
  font-weight:600;
  line-height:1;
  text-decoration:none !important;
  transition:background-color .16s ease, transform .16s ease;
}

.gbf-favorites-empty__button:hover{
  background:#111;
}

.gbf-favorites-empty__button:active{
  transform:scale(.98);
}

@media(max-width:767px){
  .gbf-favorites-summary{
    margin-bottom:6px;
  }

  .gbf-favorites-storage-note{
    margin-bottom:20px;
    font-size:12.5px;
  }

  .gbf-favorites-summary__count{
    font-size:15px;
  }

  .gbf-favorites-summary__clear{
    min-height:38px;
    padding:0 12px;
    font-size:13px;
  }

  .gbf-favorites-empty{
    min-height:320px;
    margin:12px auto 28px;
    padding:40px 22px;
    border-radius:14px;
  }

  .gbf-favorites-empty__title{
    font-size:20px;
  }

  .gbf-favorites-empty__text{
    font-size:15px;
  }
}

/* Integra a galeria do card ao Loop Grid da página de favoritos. */
#loop-favoritos .gbf-card-media .elementor-widget-shortcode,
#loop-favoritos .gbf-card-media .elementor-widget-container,
#loop-favoritos .gbf-card-media .elementor-shortcode,
#loop-favoritos .gbf-card-gallery{
  display:block;
  width:100%;
  min-width:0;
  margin:0;
  padding:0;
}

@media(max-width:767px){
  #loop-favoritos .gbf-card-media,
  #loop-favoritos .gbf-card-gallery,
  #loop-favoritos .gbf-card-gallery__media{
    aspect-ratio:4/3 !important;
  }
}

@media(prefers-reduced-motion:reduce){
  .gbf-favorites-summary__clear,
  .gbf-favorites-empty__button{
    transition:none !important;
  }
}
