/*! favorites */

.fave-icon {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  z-index: 2;
  width: 20px;
  height: 20px;
  display: block;
  /* if you change the svg color, use html named colors */
  background-image: url("data:image/svg+xml,%3Csvg width='20px' height='20px' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M11.9694 22C12.5756 22 12.9181 21.4709 13.8945 20.435C15.115 19.1402 16.2918 17.9336 17.1462 17.0272C19.6691 14.3511 20.661 13.3356 21.3649 12.5433C23.2357 10.4378 23.4784 7.51229 22.2097 5.29142C20.6101 2.49159 18.2247 2 16.9421 2C15.6594 2 14.7421 2.49159 13.1221 3.75703L11.9989 4.8084L10.9063 3.75703C9.1489 2.25488 7.87646 2 7.05939 2C6.37842 2 3.5339 2.00043 1.70086 5.29142C0.363371 7.6927 1.0623 10.6507 2.76628 12.5433C3.07139 12.8822 4.32884 14.1998 6.51094 16.572C7.3895 17.5272 8.63263 18.8407 9.54781 19.8382C10.0663 20.4034 11.3631 22 11.9694 22Z' stroke='LightGray' stroke-width='1.5'/%3E%3C/svg%3E");
}

.fave-icon:hover,
.fave-icon.active {
  background-image: url("data:image/svg+xml,%3Csvg width='20px' height='20px' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M11.9694 22C12.5756 22 12.9181 21.4709 13.8945 20.435C15.115 19.1402 16.2918 17.9336 17.1462 17.0272C19.6691 14.3511 20.661 13.3356 21.3649 12.5433C23.2357 10.4378 23.4784 7.51229 22.2097 5.29142C20.6101 2.49159 18.2247 2 16.9421 2C15.6594 2 14.7421 2.49159 13.1221 3.75703L11.9989 4.8084L10.9063 3.75703C9.1489 2.25488 7.87646 2 7.05939 2C6.37842 2 3.5339 2.00043 1.70086 5.29142C0.363371 7.6927 1.0623 10.6507 2.76628 12.5433C3.07139 12.8822 4.32884 14.1998 6.51094 16.572C7.3895 17.5272 8.63263 18.8407 9.54781 19.8382C10.0663 20.4034 11.3631 22 11.9694 22Z' stroke='Crimson' fill='Crimson' stroke-width='1.5'/%3E%3C/svg%3E");
}

/*! livesearch */

#live-search-modal {
  position: absolute;
  opacity: 0;
  top: 0;
  padding: 1rem 0 0 0;
  z-index: -1;
}

#live-search-modal.active {
  top: 1rem;
  z-index: 11;
  width: 100dvw;
  background-color: transparent;
  opacity: 1;
  transition: opacity 0.3s cubic-bezier(.7,.16,.2,.9), top 0.3s cubic-bezier(.7,.16,.2,.9);
}

body:has(header.sticky) #live-search-modal.active {
  position: fixed;
  top: 160px;
}

body:has(header.sticky.is-stuck) #live-search-modal.active {
  top: 120px;
}

@media screen and (max-width:640px) {
  body:has(header.sticky) #live-search-modal.active {
    top: 50px;
  }

  body:has(header.sticky.is-stuck) #live-search-modal.active {
    top: 100px;
  }
}

#live-search-modal #search-form {
  max-width: 80dvw;
  width: 0;
  margin: 0 auto;
  transition: width 0.5s cubic-bezier(.7,.16,.2,.9) 0.1s;
}

#live-search-modal.active #search-form {
  max-width: 80dvw;
  width: 100%;
  margin: 0 auto;
}

#live-search-modal #live-search-form-wrapper {
  max-width: 82dvw;
  margin: 0 auto;
  background-color: #f9fafb;
  border-radius: 12px;
  border: 1px solid #eee8e8;
  padding: 1rem 0;
  width: 0;
  transition: width 0.3s cubic-bezier(.7,.16,.2,.9) 0.1s;
}

#live-search-modal.active #live-search-form-wrapper {
  width: 100%;
}

#live-search-modal #search-input {
  border: 1px solid #bdbdbd;
  padding: 0.5rem 1rem;
  border-radius: 8px;
}

#live-search-form-wrapper #search-input:focus-visible {
  outline: 2px solid #222;
}

.livesearch-autocomplete {
  position: absolute;
  color: #999;
  width: 100%
}

.livesearch-suggestions {
  display: none;
  border: 1px solid #ccc;
  position: relative;
  background: #fff;
  border-radius: 8px;
  margin: 1rem 0 0 0;
  max-height: 60dvh;
  overflow: scroll;
}

.livesearch-result {
  color: #000;
  font-size: 13px;
  padding: 0 11px;
  border-bottom: 1px solid #eee;
  white-space: nowrap
}

.livesearch-result .show-results-page {
  padding: 10px 0;
  display: block
}

.livesearch-result:last-child {
  border: none
}

.livesearch-result:hover {
  border-color: #eee;
  background: #f3f0ef;
  color: #000;
  cursor: pointer
}

.livesearch-result.selected {
  background: #333;
  color: #fff
}

#nav .livesearch-result a:link {
  color: #111;
  text-decoration: none
}

#nav .livesearch-result .livesearch-item-add:link {
  color: #fff
}

#nav .livesearch-result:hover .livesearch-item-title,
#nav .livesearch-result:hover .show-results-page {
  color: #000
}

.livesearch-result img,
.menu-item-image img {
  max-width: 42px;
  float: left;
  margin: 10px 10px 10px 0
}

.livesearch-item-info,
.menu-item-info {
  display: block;
  padding: 9px 0;
  line-height: 22px
}

.livesearch-item-title {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis
}

.livesearch-item-title b,
.livesearch-item-desc b {
  background-color: transparent;
  color: #000
}

.livesearch-item-price {
  margin-right: 8px;
  color: #111;
  font-weight: 500
}

.livesearch-item-sku {
  background: #eee;
  padding: 2px 4px;
  font-family: monospace;
  font-size: 11px;
  border-radius: 3px;
  color: #666
}

.livesearch-item-desc {
  color: #999
}

.images-true .livesearch-item-desc {
  display: block
}

.livesearch-item-add,
.menu-item-add {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  background: none;
  box-sizing: border-box;
  border: 1px solid var(--button-bg, #000000);
  float: right;
  height: 28px;
  font-size: 11px;
  letter-spacing: 0;
  font-weight: 500;
  margin: 6px 2px 0 10px;
  border-radius: 3px;
  color: #fff;
  background-color: var(--button-bg, #000000)
}

.images-true .livesearch-item-add,
.images-true .menu-item-add {
  height: 32px;
  line-height: 32px;
  margin: 15px 2px 0 10px;
  padding: 0 14px
}

.livesearch-item-add:hover,
.menu-item-add:hover {
  background-color: var(--button-bg, #000000);
  border-color: var(--button-bg, #000000);
  color: #fff
}

@media screen and (max-width:600px) {
  #live-search-modal #live-search-form-wrapper {
    max-width: 95%;
  }

  #live-search-modal.active #search-form {
    max-width: 96%;
  }
}

/*! promo widget */

.widget-promotions-container {
  width: 100%;
  border: 1px solid rgb(226 232 240); /* border-slate-200 */
  padding: 1rem;
  border-radius: 0.5rem;
  background-color: white;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.widget-promotions-container h3 {
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.5rem;
  margin: 0;
  color: #1e293b;
}

/* Contenedor de promociones */
.widget-promotions {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

/* Tarjeta de promoción */
.promo-card {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: 0.5rem;
  margin-top: 0.75rem;
  padding: 1rem;
  padding-top: 1.75rem;
  background: rgb(249 250 251); /* bg-gray-50 */
  border-radius: 0.5rem;
  border: 1px solid rgb(229 231 235); /* border-gray-200 */
  transition: all 0.2s ease;
}

.promo-card:hover {
  border-color: var(--button-bg, #000000);
  box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1);
}

/* Estado de promoción alcanzada */
.promo-card.promotion-reached {
  background: color-mix(in srgb, var(--button-bg, #000000) 5%, white);
  border-color: color-mix(in srgb, var(--button-bg, #000000) 30%, white);
}

/* Badge de descuento */
.promo-discount {
  position: absolute;
  top: -0.625rem;
  left: 1rem;
  padding: 0.375rem 1rem;
  background: var(--button-bg, #000000);
  color: white;
  font-weight: 700;
  font-size: 0.875rem;
  line-height: 1.25rem;
  border-radius: 9999px;
  box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.15);
  letter-spacing: -0.025em;
  z-index: 1;
}

/* Contenedor de descripción */
.promo-desc-container {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  padding-left: 0.25rem;
}

.promo-name {
  margin: 0;
  font-size: 0.9375rem;
  font-weight: 600;
  color: #1e293b;
  line-height: 1.4;
  letter-spacing: -0.025em;
}

.promo-desc {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.5;
  color: rgb(55 65 81); /* text-gray-700 */
}

.promo-conditions {
  margin: 0;
  padding-left: 0.25rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: rgb(75 85 99); /* text-gray-600 */
  padding-bottom: 0;
}

/* Enlaces */
.promo-desc a,
.promo-conditions a {
  color: var(--button-bg, #000000);
  text-decoration: none;
  font-weight: 500;
  transition: all 0.2s ease;
}

.promo-desc a:hover,
.promo-conditions a:hover {
  color: color-mix(in srgb, var(--button-bg, #000000) 80%, black);
  text-decoration: underline;
}

/* Responsive */
@media (max-width: 768px) {
  .widget-promotions-container {
    padding: 0.875rem;
  }

  .promo-card {
    padding: 0.875rem;
    padding-top: 1.5rem;
  }

  .promo-discount {
    font-size: 0.8125rem;
    padding: 0.25rem 0.75rem;
  }

  .promo-name {
    font-size: 0.875rem;
  }

  .promo-desc,
  .promo-conditions {
    font-size: 0.8125rem;
  }
}


/*! infobar widget */

.infobar-social {
  margin: 0!important;
}

.infobar-container {
  max-width: 1280px!important;
  padding: 0 10px!important;
}

.infobar-icon i {
  background-color: var(--infobar-social-media, #fff);
  background-image: unset!important;
}

.infobar .infobar-link {
  color: var(--infobar-links, #fff);
  font-weight: 400;
  transition: text-shadow 0.2s;
}

.infobar a:hover {
  text-shadow: 0 0 1px currentColor;
}

i.icon-twitter {
  mask: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" shape-rendering="geometricPrecision" text-rendering="geometricPrecision" image-rendering="optimizeQuality" fill-rule="evenodd" clip-rule="evenodd" viewBox="0 0 512 462.799" height="16" width="16" stroke="currentColor" fill="currentColor"><path fill-rule="nonzero" d="M403.229 0h78.506L310.219 196.04 512 462.799H354.002L230.261 301.007 88.669 462.799h-78.56l183.455-209.683L0 0h161.999l111.856 147.88L403.229 0zm-27.556 415.805h43.505L138.363 44.527h-46.68l283.99 371.278z"/></svg>') center/16px 16px no-repeat;
}

i.icon-facebook {
  mask: url('data:image/svg+xml,<svg stroke="white" fill="white" stroke-width="0" viewBox="0 0 512 512" height="18" width="18" xmlns="http://www.w3.org/2000/svg"><path d="M504 256C504 119 393 8 256 8S8 119 8 256c0 123.78 90.69 226.38 209.25 245V327.69h-63V256h63v-54.64c0-62.15 37-96.48 93.67-96.48 27.14 0 55.52 4.84 55.52 4.84v61h-31.28c-30.8 0-40.41 19.12-40.41 38.73V256h68.78l-11 71.69h-57.78V501C413.31 482.38 504 379.78 504 256z"></path></svg>') center/18px 18px no-repeat;
}

i.icon-instagram {
  mask: url('data:image/svg+xml,<svg stroke="white" fill="white" stroke-width="0" viewBox="0 0 448 512" height="19" width="19" xmlns="http://www.w3.org/2000/svg"><path d="M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z"></path></svg>') center/19px 19px no-repeat;
}

i.icon-youtube {
  mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E %3Csvg fill='%23000000' width='17' height='17' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg' data-name='Layer 1'%3E%3Cpath d='M23,9.71a8.5,8.5,0,0,0-.91-4.13,2.92,2.92,0,0,0-1.72-1A78.36,78.36,0,0,0,12,4.27a78.45,78.45,0,0,0-8.34.3,2.87,2.87,0,0,0-1.46.74c-.9.83-1,2.25-1.1,3.45a48.29,48.29,0,0,0,0,6.48,9.55,9.55,0,0,0,.3,2,3.14,3.14,0,0,0,.71,1.36,2.86,2.86,0,0,0,1.49.78,45.18,45.18,0,0,0,6.5.33c3.5.05,6.57,0,10.2-.28a2.88,2.88,0,0,0,1.53-.78,2.49,2.49,0,0,0,.61-1,10.58,10.58,0,0,0,.52-3.4C23,13.69,23,10.31,23,9.71ZM9.74,14.85V8.66l5.92,3.11C14,12.69,11.81,13.73,9.74,14.85Z'/%3E%3C/svg%3E") center/22px 22px no-repeat;
}

i.icon-whatsapp {
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' shape-rendering='geometricPrecision' text-rendering='geometricPrecision' image-rendering='optimizeQuality' fill-rule='evenodd' clip-rule='evenodd' viewBox='0 0 510 512.459' height='17' width='17'%3E%3Cpath stroke='currentColor' fill='currentColor' d='M435.689 74.468C387.754 26.471 324 .025 256.071 0 116.098 0 2.18 113.906 2.131 253.916c-.024 44.758 11.677 88.445 33.898 126.946L0 512.459l134.617-35.311c37.087 20.238 78.85 30.891 121.345 30.903h.109c139.949 0 253.88-113.917 253.928-253.928.024-67.855-26.361-131.645-74.31-179.643v-.012zm-179.618 390.7h-.085c-37.868-.011-75.016-10.192-107.428-29.417l-7.707-4.577-79.886 20.953 21.32-77.889-5.017-7.987c-21.125-33.605-32.29-72.447-32.266-112.322.049-116.366 94.729-211.046 211.155-211.046 56.373.025 109.364 22.003 149.214 61.903 39.853 39.888 61.781 92.927 61.757 149.313-.05 116.377-94.728 211.058-211.057 211.058v.011zm115.768-158.067c-6.344-3.178-37.537-18.52-43.358-20.639-5.82-2.119-10.044-3.177-14.27 3.178-4.225 6.357-16.388 20.651-20.09 24.875-3.702 4.238-7.403 4.762-13.747 1.583-6.343-3.178-26.787-9.874-51.029-31.487-18.86-16.827-31.597-37.598-35.297-43.955-3.702-6.355-.39-9.789 2.775-12.943 2.849-2.848 6.344-7.414 9.522-11.116s4.225-6.355 6.343-10.581c2.12-4.238 1.06-7.937-.522-11.117-1.584-3.177-14.271-34.409-19.568-47.108-5.151-12.37-10.385-10.69-14.269-10.897-3.703-.183-7.927-.219-12.164-.219s-11.105 1.582-16.925 7.939c-5.82 6.354-22.209 21.709-22.209 52.927 0 31.22 22.733 61.405 25.911 65.642 3.177 4.237 44.745 68.318 108.389 95.812 15.135 6.538 26.957 10.446 36.175 13.368 15.196 4.834 29.027 4.153 39.96 2.52 12.19-1.825 37.54-15.353 42.824-30.172 5.283-14.818 5.283-27.529 3.701-30.172-1.582-2.641-5.819-4.237-12.163-7.414l.011-.024z'/%3E%3C/svg%3E") center/17px 17px no-repeat;
}

.bootic-ticker {
  width: 100%;
  padding: 0 15px;
  height: 42px;
  overflow: hidden;
  position: relative;
  color: var(--infobar-news-ticker);
}

.bootic-ticker li {
  position: absolute;
  width: 100%;
  margin: 0;
  top: 0px;
  line-height: 42px;
  list-style: none;
  font-size: 14px;
  text-align: center
}

.bootic-ticker:hover li {
  animation-play-state: paused !important
}

@keyframes ticker-5 {
  0% {
    opacity: 0;
    transform: translateY(100%)
  }

  1%,
  20% {
    opacity: 1;
    transform: translateY(0%)
  }

  21%,
  100% {
    opacity: 0;
    transform: translateY(-100%)
  }
}

@keyframes ticker-4 {
  0% {
    opacity: 0;
    transform: translateY(100%)
  }

  1.25%,
  25% {
    opacity: 1;
    transform: translateY(0%)
  }

  26.25%,
  100% {
    opacity: 0;
    transform: translateY(-100%)
  }
}

@keyframes ticker-3 {
  0% {
    opacity: 0;
    transform: translateY(100%)
  }

  1.666%,
  33% {
    opacity: 1;
    transform: translateY(0%)
  }

  34.666%,
  100% {
    opacity: 0;
    transform: translateY(-100%)
  }
}

@keyframes ticker-2 {
  0% {
    opacity: 0;
    transform: translateY(100%)
  }

  2.5%,
  50% {
    opacity: 1;
    transform: translateY(0%)
  }

  52.5%,
  100% {
    opacity: 0;
    transform: translateY(-100%)
  }
}

@media screen and (max-width: 640px) {
  .infobar-social,
  .infobar-link {
    display: none!important;
  }
}

/*! notifications widget */

.push-notification-message {
  margin: 0 0 14px 0!important;
  font-size: 15px;
  font-weight: 500;
}
