/* Main */
html {
  overflow-y: scroll;
  scrollbar-gutter: stable;
}

body {
  background: #F6F1EC;
  font-family: var(--bs-font-sans-serif);
  text-rendering: optimizeLegibility;
}
[data-bs-theme="dark"] body,
body[data-bs-theme="dark"] {
  background: #1E1E1E;
}

/* Buscador estilo moderno */


/* BotÃƒÂ³n principal */
.btn-primary {
  background-color: #F24E2E;
  color: white;
  border: none;
  border-radius: 999px;
  padding: 8px 16px;
}

.btn-primary:hover {
  background-color: #D84326;
}

.btn-primary:active {
  background-color: #D84326 !important;
}

/* BotÃƒÂ³n secundario */
.btn-outline-secondary {
  border-radius: 999px;
}

/* Ã°Å¸Å’â„¢ DARK MODE */

.btn-secondary {
  justify-self: end;
  align-self: end;
  border: 1px solid #f24e2e;
  color: #F24E2E;
  background: #FFFFFF;
  border-radius: 999px;
  padding: 8px 14px;
  font-weight: 700;
  cursor: pointer;
}

.btn-secondary:hover {
  background: #FFE6DE;
}

/* Navbar */
.site-header {
  position: relative;
  z-index: 2500;
}

[data-bs-theme="dark"] .navbar {
  background-color: #2A2A2A !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.4);
}

/* Texto */
[data-bs-theme="dark"] .navbar-brand,
[data-bs-theme="dark"] .nav-link {
  color: #F5F5F5 !important;
}


/* BotÃƒÂ³n primario */
[data-bs-theme="dark"] .btn-primary {
  background-color: #F24E2E;
  border: none;
}

[data-bs-theme="dark"] .btn-primary:hover {
  background-color: #D84326;
}

/* BotÃƒÂ³n secundario */
[data-bs-theme="dark"] .btn-outline-secondary {
  color: #F5F5F5;
  border-color: #444;
}

[data-bs-theme="dark"] .btn-outline-secondary:hover {
  background-color: #3A3A3A;
  border-color: #555;
}

/* Toggle icon (hamburger) */
[data-bs-theme="dark"] .navbar-toggler {
  border-color: #444;
}

[data-bs-theme="dark"] .navbar-toggler-icon {
  filter: invert(1);
}


/* Contenedor */
/* Wrapper */
.search-wrapper {
  position: relative;
  z-index: 1100;
  display: flex;
  align-items: center;
  max-width: 500px;
  width: 100%;
  background: transparent;
  border: 1px solid #e5ded8;
  border-radius: 999px;
  overflow: visible;
  isolation: isolate;
}

/* Input */
.search-input {
  flex: 1;
  min-width: 0;
  border: none;
  background: transparent;
  padding: 10px 16px;
  outline: none;
  color: #1E1E1E;
  border-radius: 999px 0 0 999px;
}

.search-input::-moz-placeholder {
  color: #BDBDBD;
}

.search-input::placeholder {
  color: #BDBDBD;
}

/* BotÃƒÂ³n outline */
.search-btn {
  background: transparent;
  color: #F24E2E;
  padding: 10px 18px;
  cursor: pointer;
  transition: 0.2s;
  border: none;
  border-left: 1px solid #e5ded8;
  border-radius: 0 999px 999px 0;
}

/* Hover elegante */
.search-btn:hover {
  background: #FFE6DE;
}

.search-autocomplete {
  position: absolute;
  top: calc(100% + 10px);
  left: 0;
  right: 0;
  z-index: 3000;
  display: none;
  overflow: hidden;
  border: 1px solid #e8e0d8;
  border-radius: 16px;
  background: #FFFFFF;
  box-shadow: 0 18px 44px rgba(31, 23, 18, 0.14);
}

.search-autocomplete.is-open {
  display: grid;
}

.search-autocomplete-item {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 11px 12px;
  color: #1E1E1E;
  text-decoration: none;
}

.search-autocomplete-item + .search-autocomplete-item {
  border-top: 1px solid #efe5dd;
}

.search-autocomplete-item:hover,
.search-autocomplete-item:focus {
  background: #FFF7F2;
  color: #1E1E1E;
}

.search-autocomplete-item img {
  width: 44px;
  height: 44px;
  display: block;
  border-radius: 12px;
  background: #F2EAE4;
  -o-object-fit: cover;
     object-fit: cover;
}

.search-autocomplete-copy {
  min-width: 0;
}

.search-autocomplete-copy strong,
.search-autocomplete-copy small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.search-autocomplete-copy strong {
  color: #1E1E1E;
  font-size: 14px;
}

.search-autocomplete-copy small {
  margin-top: 2px;
  color: #7A7A7A;
  font-size: 12px;
}

.search-autocomplete-type {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 9px;
  border-radius: 999px;
  background: #FDEDE5;
  color: #F24E2E;
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}

.search-autocomplete-state {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px;
  color: #7A7A7A;
  font-size: 14px;
  font-weight: 700;
}

.search-autocomplete-state i {
  color: #F24E2E;
}

.search-autocomplete-more {
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  color: #F24E2E;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  border-top: 1px solid #f0e8e0;
}

.search-autocomplete-more:hover,
.search-autocomplete-more:focus {
  color: #D83F22;
  background: #FFF7F4;
}

#bs5themeswitch1 .dropdown-toggle::after,
#bs5themeswitchMobile .dropdown-toggle::after {
  display: none;
}



 .dmx-notify {
  /* pointer-events: auto;
  min-width: 260px;
  max-width: 100%;
  overflow: hidden; */
  border-radius: 8px;
  box-shadow: 0 14px 36px rgba(19, 26, 34, 0.18);
  /* animation-fill-mode: both; */
} 

/* .dmx-notify > div {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  padding: 13px 42px 13px 15px;
}

.dmx-notify .dmx-icon {
  font-size: 16px;
  line-height: 1;
} */

/* .dmx-notify .dmx-title {
  grid-column: 1 / -1;
  font-weight: 700;
}*/

.dmx-notify .dmx-message {
  min-width: 0;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.35;
  padding: 5px;
} 

.dmx-notify-message{
  padding: 5px;
}

/* .dmx-notify .dmx-close {
  position: absolute;
  top: 8px;
  right: 8px;
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  padding: 0;
  color: inherit;
  background: transparent;
  border: 0;
  opacity: 0.85;
} */

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeOut {
  from {
    opacity: 1;
    transform: translateY(0);
  }

  to {
    opacity: 0;
    transform: translateY(-8px);
  }
}

.user-menu-toggle {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 4px 8px 4px 4px;
  border: 1px solid #e5ded8;
  border-radius: 999px;
  background: #FFFFFF;
}

.user-menu-toggle:hover,
.user-menu-toggle:focus {
  border-color: #F24E2E;
  background: #FFE6DE;
}

[data-bs-theme="dark"] .user-menu-toggle {
  border-color: #3a3a3a;
  background: #2A2A2A;
  color: #F5F5F5;
}

[data-bs-theme="dark"] .user-menu-toggle:hover,
[data-bs-theme="dark"] .user-menu-toggle:focus {
  border-color: #F24E2E;
  background: rgba(242, 78, 46, 0.15);
}

[data-bs-theme="dark"] .user-menu .dropdown-menu {
  background: #2A2A2A;
  border-color: #3a3a3a;
  box-shadow: 0 12px 30px rgba(0,0,0,0.35);
}

[data-bs-theme="dark"] .user-menu .dropdown-item {
  color: #F5F5F5;
}

[data-bs-theme="dark"] .user-menu .dropdown-item:hover,
[data-bs-theme="dark"] .user-menu .dropdown-item:focus {
  background: rgba(242, 78, 46, 0.15);
  color: #FFFFFF;
}

[data-bs-theme="dark"] .user-menu .dropdown-divider {
  border-top-color: #3a3a3a;
}

.user-avatar-img {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

.user-avatar-fallback {
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #F24E2E;
  color: #FFFFFF;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}

.user-avatar-img-mobile,
.user-avatar-fallback-mobile {
  width: 40px;
  height: 40px;
}

.header-container {
  gap: 16px;
}

.header-logo-link {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
}

.header-logo-img {
  width: 220px;
  max-width: 100%;
  height: auto;
}

.header-icon-btn,
.header-user-toggle,
.header-action-btn,
#bs5themeswitch1-theme {
  width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #e5ded8;
  border-radius: 50%;
  background: #FFFFFF;
  color: #1E1E1E;
  padding: 0;
}

.header-location-btn {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid #e5ded8;
  border-radius: 999px;
  background: #FFFFFF;
  color: #5B4536;
  padding: 8px 14px;
  font-weight: 700;
  max-width: 250px;
  box-shadow: 0 8px 20px rgba(242, 78, 46, 0.08);
}

.header-location-btn i {
  flex: 0 0 auto;
  color: #F24E2E;
}

.header-location-text {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.header-location-btn:hover,
.header-location-btn:focus {
  border-color: #F24E2E;
  background: #FFE6DE;
  color: #1E1E1E;
}

.header-cart-btn {
  position: relative;
}

.header-cart-badge {
  position: absolute;
  top: -5px;
  right: -5px;
  min-width: 19px;
  height: 19px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 5px;
  border: 2px solid #ffffff;
  border-radius: 999px;
  background: #F24E2E;
  color: #FFFFFF;
  font-size: 11px;
  line-height: 1;
  font-weight: 800;
}

.header-user-toggle {
  overflow: hidden;
}

.header-icon-btn:hover,
.header-icon-btn:focus,
.header-action-btn:hover,
.header-action-btn:focus,
#bs5themeswitch1-theme:hover,
#bs5themeswitch1-theme:focus,
.header-user-toggle:hover,
.header-user-toggle:focus {
  border-color: #F24E2E;
  background: #FFE6DE;
  color: #F24E2E;
}

.mobile-header-offcanvas {
  width: min(86vw, 340px) !important;
  z-index: 2560;
  background: #FFFFFF;
  color: #1E1E1E;
}

.mobile-search-wrapper {
  max-width: none;
}

.mobile-offcanvas-nav {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.mobile-offcanvas-link {
  display: flex;
  align-items: center;
  width: 100%;
  gap: 12px;
  min-height: 46px;
  padding: 10px 12px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #1E1E1E;
  text-decoration: none;
  font-weight: 600;
  text-align: left;
}

.mobile-location-link {
  background: #FFF7F2;
}

.mobile-location-text {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mobile-cart-badge {
  min-width: 22px;
  height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-left: auto;
  padding: 0 7px;
  border-radius: 999px;
  background: #F24E2E;
  color: #FFFFFF;
  font-size: 12px;
  font-weight: 800;
}

.mobile-offcanvas-link i {
  width: 22px;
  color: #F24E2E;
  text-align: center;
}

.mobile-offcanvas-link:hover,
.mobile-offcanvas-link:focus {
  background: #FFE6DE;
  color: #1E1E1E;
}

.mobile-theme-switch {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 18px;
  padding: 14px 12px 0;
  border-top: 1px solid #e5ded8;
}

.mobile-theme-switch > i {
  width: 22px;
  color: #F24E2E;
  text-align: center;
}

.mobile-theme-switch [is="dmx-bs5-theme-switch"] {
  min-width: 0;
}

[data-bs-theme="dark"] .header-icon-btn,
[data-bs-theme="dark"] .header-action-btn,
[data-bs-theme="dark"] #bs5themeswitch1-theme,
[data-bs-theme="dark"] .header-user-toggle {
  border-color: #3a3a3a;
  background: #2A2A2A;
  color: #F5F5F5;
}

[data-bs-theme="dark"] .header-location-btn {
  border-color: #3a3a3a;
  background: #2A2A2A;
  color: #F8F4F0;
  box-shadow: none;
}

[data-bs-theme="dark"] .header-location-btn i {
  color: #FF8A70;
}

[data-bs-theme="dark"] .header-location-btn:hover,
[data-bs-theme="dark"] .header-location-btn:focus {
  border-color: #F24E2E;
  background: rgba(242, 78, 46, 0.15);
  color: #FFFFFF;
}

[data-bs-theme="dark"] .header-cart-badge {
  border-color: #2A2A2A;
  background: #FF8A70;
  color: #1E1E1E;
}

[data-bs-theme="dark"] .header-icon-btn:hover,
[data-bs-theme="dark"] .header-icon-btn:focus,
[data-bs-theme="dark"] .header-action-btn:hover,
[data-bs-theme="dark"] .header-action-btn:focus,
[data-bs-theme="dark"] #bs5themeswitch1-theme:hover,
[data-bs-theme="dark"] #bs5themeswitch1-theme:focus,
[data-bs-theme="dark"] .header-user-toggle:hover,
[data-bs-theme="dark"] .header-user-toggle:focus {
  background: rgba(242, 78, 46, 0.15);
  color: #F24E2E;
}

[data-bs-theme="dark"] .mobile-header-offcanvas {
  background: #2A2A2A;
  color: #F5F5F5;
}

[data-bs-theme="dark"] .mobile-offcanvas-link {
  color: #F5F5F5;
}

[data-bs-theme="dark"] .mobile-location-link {
  background: rgba(242, 78, 46, 0.1);
}

[data-bs-theme="dark"] .mobile-cart-badge {
  background: #FF8A70;
  color: #1E1E1E;
}

[data-bs-theme="dark"] .mobile-offcanvas-link:hover,
[data-bs-theme="dark"] .mobile-offcanvas-link:focus {
  background: rgba(242, 78, 46, 0.15);
  color: #FFFFFF;
}

[data-bs-theme="dark"] .mobile-theme-switch {
  border-top-color: #3a3a3a;
}

@media (max-width: 991.98px) {
  .offcanvas-backdrop {
    z-index: 2550;
  }

  .site-header {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

  .header-container {
    display: grid;
    grid-template-columns: 42px 1fr auto;
    align-items: center;
    gap: 10px;
  }

  .header-logo-link {
    justify-content: center;
    min-width: 0;
  }

  .header-logo-img {
    width: 170px;
  }
}

@media (max-width: 380px) {
  .header-logo-img {
    width: 146px;
  }
}

/* Focus (clave Ã°Å¸â€Â¥) */
.search-wrapper:focus-within {
  border-color: #F24E2E;
  box-shadow: 0 0 0 2px rgba(242, 78, 46, 0.15);
}

/* Wrapper */
[data-bs-theme="dark"] .search-wrapper {
  border: 1px solid #3a3a3a;
}

/* Input */
[data-bs-theme="dark"] .search-input {
  color: #FFFFFF;
}

[data-bs-theme="dark"] .search-input::-moz-placeholder {
  color: #BDBDBD;
}

[data-bs-theme="dark"] .search-input::placeholder {
  color: #BDBDBD;
}

/* BotÃƒÂ³n */
[data-bs-theme="dark"] .search-btn {
  color: #F24E2E;
  border-left: 1px solid #3a3a3a;
}

/* Hover */
[data-bs-theme="dark"] .search-btn:hover {
  background: rgba(242, 78, 46, 0.15);
}

[data-bs-theme="dark"] .search-autocomplete {
  border-color: #3A302A;
  background: #211D1A;
  box-shadow: 0 18px 45px rgba(0,0,0,0.26);
}

[data-bs-theme="dark"] .search-autocomplete-item {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .search-autocomplete-item + .search-autocomplete-item {
  border-top-color: #3A302A;
}

[data-bs-theme="dark"] .search-autocomplete-item:hover,
[data-bs-theme="dark"] .search-autocomplete-item:focus {
  background: rgba(242, 78, 46, 0.12);
  color: #FFFFFF;
}

[data-bs-theme="dark"] .search-autocomplete-item img {
  background: #2A241F;
}

[data-bs-theme="dark"] .search-autocomplete-copy strong {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .search-autocomplete-copy small,
[data-bs-theme="dark"] .search-autocomplete-state {
  color: #B8AEA7;
}

[data-bs-theme="dark"] .search-autocomplete-type {
  background: rgba(242, 78, 46, 0.16);
  color: #FF8A70;
}

[data-bs-theme="dark"] .search-autocomplete-state i {
  color: #FF8A70;
}

[data-bs-theme="dark"] .search-autocomplete-more {
  color: #FF8A70;
  border-color: #3A302A;
}

[data-bs-theme="dark"] .search-autocomplete-more:hover,
[data-bs-theme="dark"] .search-autocomplete-more:focus {
  color: #FFB09E;
  background: #332A24;
}

/* Focus */
[data-bs-theme="dark"] .search-wrapper:focus-within {
  border-color: #F24E2E;
  box-shadow: 0 0 0 2px rgba(242, 78, 46, 0.25);
}

/* LOGIN */ 

.login-page {
  min-height: 100vh;
  background: #F6F1EC;
  padding: 70px 20px 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.auth-page {
  min-height: calc(100vh - 78px);
  padding-top: 36px;
  padding-bottom: 32px;
}

.auth-page .login-card {
  padding: 24px;
}

.auth-page .login-card h2 {
  margin-bottom: 18px;
}

.auth-page .login-hero {
  margin-bottom: 24px;
}

.auth-page .login-hero h1 {
  font-size: 38px;
  margin-bottom: 0;
}

.login-hero {
  text-align: center;
  margin-bottom: 55px;
}

.login-icon {
  width: 86px;
  height: 86px;
  margin: 0 auto 28px;
  border-radius: 28px;
  background: #F8EDE6;
  color: #F24E2E;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 34px;
  box-shadow: 0 18px 45px rgba(242, 78, 46, 0.15);
}

.login-hero h1 {
  font-size: 46px;
  line-height: 1;
  font-weight: 800;
  color: #1E1E1E;
  margin-bottom: 18px;
}

.login-hero p {
  font-size: 22px;
  line-height: 1.45;
  color: #7A7A7A;
  margin: 0;
}

.login-card {
  width: 100%;
  max-width: 420px;
  background: #FFFFFF;
  border-radius: 20px;
  padding: 28px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}

.new-business-page {
  padding: 30px 10px 40px;
  display: flex;
  justify-content: center;
}

.new-business-card {
  max-width: 780px;
  width: 100%;
  padding: 36px;
  border-radius: 24px;
  margin: 0 auto;
}

.new-business-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}

.new-business-form-grid .form-group {
  margin-bottom: 0;
}

.new-business-form-grid .full-span {
  grid-column: 1 / -1;
}

.new-business-card .input-box {
  min-height: 52px;
  padding: 12px 16px;
}

.new-business-card .business-dropzone {
  min-height: 154px;
  align-items: center;
  justify-content: center;
  border: 1.5px dashed #e0d7cf;
  border-radius: 18px;
  background: #FBF7F3;
  color: #7A7A7A;
  transition: border-color 0.2s ease, background 0.2s ease;
}

.new-business-card .business-dropzone:hover,
.new-business-card .business-dropzone.dmxDropzoneHover {
  border-color: #F24E2E;
  background: rgba(242, 78, 46, 0.06);
}

.new-business-card .business-dropzone .dmxDropzoneMessage {
  color: #7A7A7A;
  font-size: 14px;
  font-weight: 600;
  margin: 0;
}

.new-business-card .business-dropzone .dmxDropzoneThumb {
  border-radius: 12px;
}

.business-edit-current-image {
  width: 140px;
  height: 96px;
  border-radius: 14px;
  -o-object-fit: cover;
     object-fit: cover;
  border: 1px solid #e8e0d8;
  background: #F8EDE6;
  display: block;
}

.new-business-card .textarea-box {
  min-height: 150px;
  height: auto;
  align-items: flex-start;
  padding-top: 14px;
  padding-bottom: 14px;
}

.new-business-card textarea {
  flex: 1;
  border: none;
  background: transparent;
  width: 100%;
  resize: vertical;
  color: #1E1E1E;
  outline: none;
  font-size: 15px;
  min-height: 120px;
}

.new-business-card textarea::-moz-placeholder {
  color: #BDBDBD;
}

.new-business-card textarea::placeholder {
  color: #BDBDBD;
}

.form-actions {
  display: flex;
  justify-content: center;
  margin-top: 26px;
}

@media (max-width: 860px) {
  .new-business-form-grid {
    grid-template-columns: 1fr;
  }

  .form-actions {
    justify-content: stretch;
  }
}

.login-card h2 {
  font-size: 28px;
  /* font-weight: 800; */
  color: #1E1E1E;
  margin-bottom: 22px;
}

.form-group {
  margin-bottom: 24px;
}

.form-group:has(.dmxValidator-error),
.form-group:has(.invalid-feedback) {
  margin-bottom: 42px;
}

.form-group label {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: #7A7A7A;
  margin-bottom: 6px;
}

.floating-field {
  margin-bottom: 18px;
}

.floating-field .input-box {
  height: 56px;
  padding-top: 0;
  padding-bottom: 0;
}

.floating-field .input-box label {
  position: absolute;
  top: 50%;
  left: 44px;
  right: 48px;
  margin: 0;
  font-size: 15px;
  line-height: 1.2;
  color: #7A7A7A;
  pointer-events: none;
  transform: translateY(-50%);
  transition: top 0.2s ease, transform 0.2s ease, color 0.2s ease, font-size 0.2s ease;
}

.floating-field .input-box input {
  font-size: 15px;
  padding-top: 14px;
}

.floating-field .input-box:focus-within {
  border-color: #F24E2E;
  box-shadow: 0 0 0 2px rgba(242, 78, 46, 0.16);
}

.floating-field .input-box:has(input:not(:-moz-placeholder-shown)) label {
  top: 9px;
  font-size: 12px;
  transform: none;
}

.floating-field .input-box:focus-within label,
.floating-field .input-box:has(input:not(:placeholder-shown)) label,
.floating-field.has-value .input-box label {
  top: 9px;
  font-size: 12px;
  transform: none;
}

.floating-field .input-box:focus-within label {
  color: #F24E2E;
}

.field-help {
  display: block;
  margin-top: 7px;
  color: #7A7A7A;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 600;
}

.auth-card-copy {
  margin: -4px 0 22px;
  color: #7A7A7A;
  font-size: 15px;
  line-height: 1.45;
}

.auth-reset-card {
  text-align: left;
}

.auth-token-state-card {
  width: min(92vw, 420px);
  margin-top: 22px;
}

.auth-token-state-card p {
  margin-bottom: 0;
}

.auth-reset-icon {
  width: 58px;
  height: 58px;
  margin: 0 0 18px;
  border-radius: 18px;
  font-size: 22px;
  display: grid;
  place-items: center;
}

.auth-reset-icon-mark {
  width: 100%;
  height: 100%;
  display: grid;
  place-items: center;
}

.auth-reset-icon-mark i {
  display: block;
  line-height: 1;
}

.auth-form-message {
  display: none;
  margin: 0 0 16px;
  padding: 12px 14px;
  border-radius: 12px;
  font-size: 14px;
  line-height: 1.4;
  font-weight: 700;
}

.auth-form-message.is-info,
.auth-form-message.is-success,
.auth-form-message.is-error {
  display: block;
}

.auth-form-message.is-info {
  border: 1px solid #e8e0d8;
  background: #FBF7F3;
  color: #5B4536;
}

.auth-form-message.is-success {
  border: 1px solid #bfe7cc;
  background: #E8F7EE;
  color: #1E7B49;
}

.auth-form-message.is-error {
  border: 1px solid #f0b8ad;
  background: #FFF0ED;
  color: #A53D2C;
}

.password-rules {
  margin: -6px 0 16px;
  color: #7A7A7A;
  font-size: 13px;
  line-height: 1.4;
  font-weight: 600;
}

.auth-success-icon {
  background: #E8F7EE;
  color: #1E7B49;
  box-shadow: 0 14px 30px rgba(54, 179, 126, 0.14);
}

.auth-success-email {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 48px;
  margin-bottom: 16px;
  padding: 12px 14px;
  border: 1px solid #e8e0d8;
  border-radius: 14px;
  background: #FBF7F3;
  color: #1E1E1E;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.auth-success-email i {
  color: #F24E2E;
  flex-shrink: 0;
}

.auth-success-note {
  display: grid;
  gap: 10px;
  margin-bottom: 20px;
  color: #7A7A7A;
  font-size: 14px;
  line-height: 1.5;
  font-weight: 600;
}

.auth-success-note p {
  margin: 0;
}

.auth-success-primary {
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}

.auth-success-actions {
  display: grid;
  gap: 12px;
}

.login-btn:disabled,
.btn:disabled {
  cursor: not-allowed;
  opacity: 0.72;
  box-shadow: none;
}

.input-box {
  height: 48px;
  border-radius: 12px;
  background: #F2EAE4;
  border: 2px solid #e5ded8;
  position: relative;
  display: flex;
  align-items: center;
  padding: 0 14px;
  gap: 14px;
}

.input-box .dmxValidator-error,
.input-box .invalid-feedback {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  width: 100%;
  margin-top: 0;
  padding-left: 0;
  color: #ff6b7a;
  font-size: 13px;
  line-height: 1.25;
  font-weight: 600;
}

.input-box i {
  color: #9E9E9E;
  font-size: 16px;
}

.input-box input {
  flex: 1;
  min-width: 0;
  width: 100%;
  border: none;
  outline: none;
  background: transparent;
  font-size: 16px;
  color: #1E1E1E;
}

.input-box input::-moz-placeholder {
  color: #BDBDBD;
}

.input-box input::placeholder {
  color: #BDBDBD;
}

.input-box select {
  flex: 1;
  border: none;
  outline: none;
  background: transparent;
  font-size: 16px;
  color: #1E1E1E;
  cursor: pointer;
}

.input-box select option {
  color: #1E1E1E;
  background: #FFFFFF;
}

.input-eye {
  margin-left: auto;
  flex-shrink: 0;
}

.password-toggle {
  width: 32px;
  height: 32px;
  padding: 0;
  flex: 0 0 32px;
  border: none;
  border-radius: 50%;
  background: transparent;
  color: #7A7A7A;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.password-toggle:hover,
.password-toggle:focus-visible {
  color: #F24E2E;
  background: rgba(242, 78, 46, 0.08);
}

.password-toggle:focus-visible {
  outline: 2px solid rgba(242, 78, 46, 0.35);
  outline-offset: 2px;
}

.date-inputs {
  display: flex;
  gap: 12px;
}

.date-inputs .input-box {
  flex: 1;
}

[data-bs-theme="dark"] .input-box select {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .input-box select option {
  color: #1E1E1E;
  background: #FFFFFF;
}

.forgot-link {
  display: block;
  text-align: right;
  color: #F24E2E;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  margin-top: -8px;
  margin-bottom: 18px;
}

.login-btn {
  width: 100%;
  height: 48px;
  border: none;
  border-radius: 999px;
  background: #F24E2E;
  color: #FFFFFF;
  font-size: 16px;
  /* font-weight: 800; */
  box-shadow: 0 14px 30px rgba(242, 78, 46, 0.25);
}

.login-btn:hover {
  background: #D84326;
}

.login-separator {
  width: 100%;
  max-width: 420px;
  display: flex;
  align-items: center;
  gap: 22px;
  margin: 22px 0 18px;
  color: #BDBDBD;
}

.login-separator span {
  flex: 1;
  height: 1px;
  background: #EAE3DD;
}

.google-btn {
  width: 100%;
  max-width: 420px;
  height: 48px;
  border-radius: 999px;
  border: 2px solid #e5ded8;
  background: #FFFFFF;
  color: #1E1E1E;
  font-size: 15px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 22px;
}

.google-btn i {
  color: #DB4437;
}

.google-btn strong {
  font-size: 30px;
}

.logintry-page {
  min-height: calc(100vh - 78px);
  background: #F6F1EC;
  padding: 72px 20px 44px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.logintry-card {
  width: 100%;
  max-width: 440px;
  background: #FFFFFF;
  border: 1px solid #e5ded8;
  border-radius: 20px;
  padding: 32px;
  text-align: center;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}

.logintry-icon {
  width: 72px;
  height: 72px;
  margin: 0 auto 22px;
  border-radius: 24px;
  background: #F8EDE6;
  color: #F24E2E;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
}

.logintry-card h1 {
  margin: 0 0 12px;
  color: #1E1E1E;
  font-size: 30px;
  font-weight: 800;
}

.logintry-card p {
  margin: 0;
  color: #7A7A7A;
  font-size: 15px;
  line-height: 1.55;
}

.logintry-alert {
  display: flex;
  gap: 12px;
  margin-top: 22px;
  padding: 14px 16px;
  border: 1px solid #f5d8bf;
  border-radius: 14px;
  background: #FFF4E8;
  color: #5B4536;
  font-size: 14px;
  line-height: 1.45;
  text-align: left;
}

.logintry-alert i {
  color: #F24E2E;
  flex-shrink: 0;
  margin-top: 2px;
}

.logintry-alert strong {
  color: #1E1E1E;
  font-weight: 800;
}

.logintry-actions {
  display: grid;
  gap: 14px;
  margin-top: 28px;
}

.logintry-actions a {
  text-decoration: none;
}

.logintry-primary,
.logintry-secondary {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.logintry-secondary {
  max-width: none;
  width: 100%;
}

[data-bs-theme="dark"] .logintry-page {
  background: #171412;
}

[data-bs-theme="dark"] .logintry-card {
  background: #211D1A;
  border-color: #3A302A;
}

[data-bs-theme="dark"] .logintry-card h1 {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .logintry-card p {
  color: #B8AEA7;
}

[data-bs-theme="dark"] .logintry-icon {
  background: rgba(242, 78, 46, 0.16);
  color: #FF8A70;
}

[data-bs-theme="dark"] .logintry-alert {
  background: rgba(242, 78, 46, 0.12);
  border-color: rgba(242, 78, 46, 0.28);
  color: #F3D4C7;
}

[data-bs-theme="dark"] .logintry-alert strong {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .login-page {
  background: #171412;
}

[data-bs-theme="dark"] .login-hero h1,
[data-bs-theme="dark"] .login-card h2,
[data-bs-theme="dark"] .input-box input,
[data-bs-theme="dark"] .new-business-card textarea,
[data-bs-theme="dark"] .google-btn {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .login-hero p,
[data-bs-theme="dark"] .form-group label,
[data-bs-theme="dark"] .field-help,
[data-bs-theme="dark"] .auth-card-copy {
  color: #B8AEA7;
}

[data-bs-theme="dark"] .login-card,
[data-bs-theme="dark"] .google-btn {
  background: #211D1A;
  border-color: #3A302A;
}

[data-bs-theme="dark"] .auth-form-message.is-info {
  border-color: #3A302A;
  background: #2A241F;
  color: #F3D4C7;
}

[data-bs-theme="dark"] .auth-form-message.is-success {
  border-color: rgba(54, 179, 126, 0.28);
  background: rgba(54, 179, 126, 0.16);
  color: #7BE0AA;
}

[data-bs-theme="dark"] .auth-form-message.is-error {
  border-color: rgba(242, 78, 46, 0.32);
  background: rgba(242, 78, 46, 0.13);
  color: #FF9E88;
}

[data-bs-theme="dark"] .password-rules {
  color: #B8AEA7;
}

[data-bs-theme="dark"] .auth-success-icon {
  background: rgba(54, 179, 126, 0.16);
  color: #7BE0AA;
  box-shadow: none;
}

[data-bs-theme="dark"] .auth-success-email {
  border-color: #3A302A;
  background: #2A241F;
  color: #F8F4F0;
}

[data-bs-theme="dark"] .auth-success-email i {
  color: #FF8A70;
}

[data-bs-theme="dark"] .auth-success-note {
  color: #B8AEA7;
}

[data-bs-theme="dark"] .input-box {
  background: #2A241F;
  border-color: #3A302A;
}

[data-bs-theme="dark"] .new-business-card .business-dropzone {
  background: #2A241F;
  border-color: #3A302A;
}

[data-bs-theme="dark"] .new-business-card .business-dropzone:hover,
[data-bs-theme="dark"] .new-business-card .business-dropzone.dmxDropzoneHover {
  background: rgba(242, 78, 46, 0.12);
  border-color: #FF8A70;
}

[data-bs-theme="dark"] .new-business-card .business-dropzone .dmxDropzoneMessage {
  color: #B8AEA7;
}

[data-bs-theme="dark"] .login-separator span {
  background: #3A302A;
}

/* INDEX */
.deals-web-layout {
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 24px;
  padding: 24px;
  background: #F6F1EC;
  min-height: 100vh;
}

.deals-sidebar {
  position: sticky;
  top: 24px;
  height: -moz-fit-content;
  height: fit-content;
  background: #FFFFFF;
  border: 1px solid #e5ded8;
  border-radius: 20px;
  padding: 20px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}

.deals-sidebar > .offcanvas-body {
  display: block;
  padding: 0;
}

.deals-sidebar h3 {
  margin: 0 0 20px;
  color: #1E1E1E;
  font-size: 22px;
}

.geo-modal {
  border: 0;
  border-radius: 18px;
  overflow: visible;
  background: #FFFFFF;
  color: #1E1E1E;
  box-shadow: 0 24px 70px rgba(30, 30, 30, 0.22);
}

#modal1.modal {
  z-index: 2700;
}

body:has(#modal1.show) .modal-backdrop.show {
  z-index: 2600;
  opacity: 1;
  background: var(--tdu-scrim);
}

.geo-modal .modal-body {
  overflow: visible;
}

.geo-modal .modal-header,
.geo-modal .modal-footer {
  border-color: #EFE6DF;
}

.geo-modal .modal-header {
  align-items: flex-start;
  gap: 14px;
  padding: 22px 24px 16px;
}

.geo-modal .modal-title {
  margin: 2px 0 0;
  font-size: 22px;
  font-weight: 800;
  letter-spacing: 0;
}

.geo-modal-eyebrow {
  color: #F24E2E;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.geo-picker {
  display: grid;
  gap: 10px;
}

.geo-picker label {
  margin-top: 6px;
  color: #1E1E1E;
  font-size: 14px;
  font-weight: 800;
}

.geo-picker .tagify,
.geo-picker .form-select {
  width: 100%;
  min-height: 48px;
  border: 1px solid #e5ded8;
  border-radius: 999px;
  background: #F7F1EC;
  color: #1E1E1E;
  --tags-border-color: #E5DED8;
  --tags-hover-border-color: #F24E2E;
  --tags-focus-border-color: #F24E2E;
  --tag-bg: #FFE6DE;
  --tag-hover: #FFD5C8;
  --tag-text-color: #1E1E1E;
  --tag-remove-btn-color: #F24E2E;
  --tag-remove-btn-bg--hover: rgba(242, 78, 46, 0.14);
  --input-color: #1E1E1E;
  --placeholder-color: #8D7F76;
}

.geo-picker .form-select {
  padding: 12px 44px 12px 14px;
  color: #1E1E1E;
  background-position: right 16px center;
  background-size: 16px 12px;
  box-shadow: none;
}

.geo-picker .form-select:focus {
  border-color: #F24E2E;
  box-shadow: 0 0 0 0.18rem rgba(242, 78, 46, 0.14);
}

.geo-picker .form-select:disabled {
  opacity: 1;
  color: #8D7F76;
}

.geo-picker .form-select.loading {
  background-image: var(--bs-form-select-bg-img), linear-gradient(90deg, rgba(242, 78, 46, 0.08), rgba(242, 78, 46, 0.18), rgba(242, 78, 46, 0.08));
  background-repeat: no-repeat, no-repeat;
  background-position: right 16px center, 0 0;
  background-size: 16px 12px, 200% 100%;
}

.geo-picker .tagify__input {
  margin: 0;
  padding: 12px 14px;
}

.geo-picker .tagify__tag {
  margin: 6px 0 6px 6px;
}

.geo-picker .tagify__dropdown {
  z-index: 1065;
}

.geo-picker .tagify__dropdown__wrapper {
  border: 1px solid #e5ded8;
  border-radius: 14px;
  background: #FFFFFF;
  box-shadow: 0 16px 42px rgba(30, 30, 30, 0.16);
}

.geo-picker .tagify__dropdown__item {
  padding: 10px 12px;
  color: #1E1E1E;
}

.geo-picker .tagify__dropdown__item:hover,
.geo-picker .tagify__dropdown__item--active,
.geo-picker .tagify__dropdown__item--selected {
  background: #FFE6DE;
  color: #F24E2E;
}

.filter-group {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 22px;
}

.filter-group label {
  font-size: 14px;
  font-weight: 700;
  color: #1E1E1E;
}

.filter-group input,
.filter-group select {
  width: 100%;
  border: 1px solid #e5ded8;
  background: #F2EAE4;
  color: #1E1E1E;
  border-radius: 999px;
  padding: 12px 14px;
  outline: none;
}

.filter-chip {
  border: 1px solid #e5ded8;
  background: #FFFFFF;
  color: #1E1E1E;
  border-radius: 999px;
  padding: 10px 14px;
  text-align: left;
  cursor: pointer;
  transition: background-color 0.16s ease, border-color 0.16s ease, color 0.16s ease, box-shadow 0.16s ease;
}

.filter-chip:hover,
.filter-chip:focus {
  background: #FFF5F0;
  border-color: #F24E2E;
  color: #F24E2E;
  box-shadow: 0 0 0 0.16rem rgba(242, 78, 46, 0.12);
}

.filter-radio-group .btn-check:focus + .filter-chip {
  box-shadow: 0 0 0 0.16rem rgba(242, 78, 46, 0.16);
}

.filter-radio-group {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
}

.filter-radio-group > .filter-chip {
  border-radius: 999px !important;
  margin-left: 0 !important;
  width: 100%;
}

.filter-radio-group .btn-check:checked + .filter-chip,
.filter-chip.active {
  background: #FFE6DE;
  border-color: #F24E2E;
  color: #F24E2E;
  font-weight: 700;
}

.filter-radio-group .btn-check:checked + .filter-chip:hover,
.filter-chip.active:hover,
.filter-chip.active:focus {
  background: #FFD5C8;
  border-color: #F24E2E;
  color: #E23F22;
}

.deals-content {
  min-width: 0;
}

.mobile-filter-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 14px;
}

.mobile-filter-location-btn {
  flex: 1 1 auto;
  max-width: none;
  min-width: 0;
  padding: 10px 12px;
}

.mobile-filter-btn {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  gap: 8px;
  border: 1px solid #e5ded8;
  border-radius: 999px;
  background: #FFFFFF;
  color: #1E1E1E;
  padding: 10px 16px;
  font-weight: 700;
}

.mobile-filter-btn:hover,
.mobile-filter-btn:focus {
  border-color: #F24E2E;
  background: #FFE6DE;
  color: #F24E2E;
}

.business-card {
  background: #FFFFFF;
  border-radius: 24px;
  padding: 16px;
  border: 1px solid #e5ded8;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
  margin-bottom: 24px;
}

.business-cover {
  position: relative;
  height: 200px;
  border-radius: 20px;
  overflow: hidden;

  background-size: cover;
  background-position: center;
}


/* .business-cover img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
} */

.business-cover-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    rgba(0,0,0,0.2),
    rgba(0,0,0,0.7)
  );
}
.business-avatar {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;

  border: 3px solid #ffffff;
  background: #FFFFFF;

  /* efecto flotante */
  box-shadow: 0 4px 12px rgba(0,0,0,0.25);
}

.business-info {
  position: absolute;
  bottom: 64px;
  left: 20px;
  right: 20px;
}

.business-header {
  display: flex;
  align-items: center;
  gap: 14px;
}

.business-info h2 {
  margin: 0 0 4px;
  font-size: 28px;
  font-weight: 800;
}

.business-info span {
  display: flex;
  align-items: center;
  gap: 6px;
  color: #F24E2E;
  font-size: 14px;
  font-weight: 700;
}

.business-options-toggle {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  min-height: 48px;
  border: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.16);
  background: rgba(30, 30, 30, 0.22);
  color: rgba(255, 255, 255, 0.82);
  font-size: 14px;
  font-weight: 800;
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease;
}

.business-options-toggle:hover,
.business-options-toggle:focus {
  background: rgba(30, 30, 30, 0.34);
  color: #FFFFFF;
}

.business-options-toggle i {
  font-size: 12px;
  transition: transform 0.2s ease;
}

.business-options-toggle:not(.collapsed) i {
  transform: rotate(180deg);
}

.business-options-toggle .toggle-label-open,
.business-options-toggle:not(.collapsed) .toggle-label-closed {
  display: none;
}

.business-options-toggle:not(.collapsed) .toggle-label-open {
  display: inline;
}

.products-collapse {
  padding-top: 14px;
}

.products-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.product-card {
  display: grid;
  grid-template-columns: 96px 1fr;
  grid-template-rows: 1fr auto;
  gap: 12px;
  background: #FFFFFF;
  border: 1px solid #eae3dd;
  border-radius: 18px;
  padding: 12px;
}

.product-card img {
  width: 96px;
  height: 96px;
  border-radius: 14px;
  -o-object-fit: cover;
     object-fit: cover;
  grid-row: span 2;
}

.product-info h4 {
  margin: 0 0 4px;
  color: #1E1E1E;
  font-size: 16px;
}

.product-info p {
  margin: 0 0 8px;
  color: #7A7A7A;
  font-size: 14px;
  line-height: 1.35;
}

.product-info strong {
  color: #1E1E1E;
  font-size: 18px;
}

.product-card button {
  justify-self: end;
  align-self: end;
  border: 1px solid #f24e2e;
  color: #F24E2E;
  background: #FFFFFF;
  border-radius: 999px;
  padding: 8px 14px;
  font-weight: 700;
  cursor: pointer;
}

.product-card button:hover {
  background: #FFE6DE;
}

[data-bs-theme="dark"] .deals-web-layout {
  background: #171412;
}

[data-bs-theme="dark"] .deals-sidebar,
[data-bs-theme="dark"] .business-card,
[data-bs-theme="dark"] .product-card {
  background: #211D1A;
  border-color: #3A332F;
}

[data-bs-theme="dark"] .deals-sidebar h3,
[data-bs-theme="dark"] .filter-group label,
[data-bs-theme="dark"] .filter-chip,
[data-bs-theme="dark"] .product-info h4,
[data-bs-theme="dark"] .product-info strong {
  color: #F5F1ED;
}

[data-bs-theme="dark"] .geo-modal {
  background: #211D1A;
  color: #F5F1ED;
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.38);
}

[data-bs-theme="dark"] .geo-modal .modal-header,
[data-bs-theme="dark"] .geo-modal .modal-footer {
  border-color: #3A332F;
}

[data-bs-theme="dark"] .geo-picker label,
[data-bs-theme="dark"] .geo-modal .modal-title {
  color: #F5F1ED;
}

[data-bs-theme="dark"] .geo-picker .tagify,
[data-bs-theme="dark"] .geo-picker .form-select {
  background: #2B2521;
  color: #F5F1ED;
  --tags-border-color: #3A332F;
  --tag-bg: rgba(242, 78, 46, 0.16);
  --tag-hover: rgba(242, 78, 46, 0.24);
  --tag-text-color: #F5F1ED;
  --input-color: #F5F1ED;
  --placeholder-color: #B8ADA5;
}

[data-bs-theme="dark"] .geo-picker .form-select:focus {
  border-color: #F24E2E;
  box-shadow: 0 0 0 0.18rem rgba(242, 78, 46, 0.18);
}

[data-bs-theme="dark"] .geo-picker .form-select:disabled {
  color: #B8ADA5;
}

[data-bs-theme="dark"] .geo-picker .tagify__dropdown__wrapper {
  border-color: #3A332F;
  background: #211D1A;
}

[data-bs-theme="dark"] .geo-picker .tagify__dropdown__item {
  color: #F5F1ED;
}

[data-bs-theme="dark"] .filter-group input,
[data-bs-theme="dark"] .filter-group select {
  background: #2B2521;
  border-color: #3A332F;
  color: #F5F1ED;
}

[data-bs-theme="dark"] .filter-chip {
  background: #211D1A;
  border-color: #3A332F;
}

[data-bs-theme="dark"] .filter-chip:hover,
[data-bs-theme="dark"] .filter-chip:focus {
  background: rgba(242, 78, 46, 0.12);
  border-color: #F24E2E;
  color: #FF8A70;
  box-shadow: 0 0 0 0.16rem rgba(242, 78, 46, 0.2);
}

[data-bs-theme="dark"] .filter-chip.active {
  background: rgba(242, 78, 46, 0.16);
  border-color: #F24E2E;
  color: #FF8A70;
}

[data-bs-theme="dark"] .filter-radio-group .btn-check:checked + .filter-chip {
  background: rgba(242, 78, 46, 0.16);
  border-color: #F24E2E;
  color: #FF8A70;
}

[data-bs-theme="dark"] .filter-radio-group .btn-check:checked + .filter-chip:hover,
[data-bs-theme="dark"] .filter-chip.active:hover,
[data-bs-theme="dark"] .filter-chip.active:focus {
  background: rgba(242, 78, 46, 0.22);
  color: #FFA38F;
}

[data-bs-theme="dark"] .product-info p {
  color: #B8ADA5;
}

[data-bs-theme="dark"] .product-card button {
  background: transparent;
  color: #FF8A70;
  border-color: #F24E2E;
}

[data-bs-theme="dark"] .product-card button:hover {
  background: rgba(242, 78, 46, 0.16);
}

[data-bs-theme="dark"] .mobile-filter-btn {
  background: #211D1A;
  border-color: #3A332F;
  color: #F5F1ED;
}

[data-bs-theme="dark"] .mobile-filter-btn:hover,
[data-bs-theme="dark"] .mobile-filter-btn:focus {
  background: rgba(242, 78, 46, 0.16);
  border-color: #F24E2E;
  color: #FF8A70;
}

@media (max-width: 991px) {
  .deals-web-layout {
    grid-template-columns: 1fr;
    padding: 16px;
  }

  .deals-sidebar.offcanvas-lg {
    --bs-offcanvas-height: auto;
    position: fixed;
    top: auto;
    z-index: 2560;
    height: auto;
    max-height: 82vh;
    border-radius: 18px 18px 0 0;
    padding: 0;
    overflow: hidden;
  }

  .deals-sidebar.offcanvas-lg > .offcanvas-body {
    padding: 0 20px 20px;
    overflow-y: auto;
  }

  .deals-sidebar.offcanvas-lg .filter-group:last-child {
    margin-bottom: 0;
  }

  .products-grid {
    grid-template-columns: 1fr;
  }

  .business-cover {
    height: 120px;
  }

  .business-info {
    bottom: 52px;
    left: 16px;
    right: 16px;
  }

  .business-header {
    gap: 10px;
  }

  .business-avatar {
    width: 48px;
    height: 48px;
  }

  .business-info h2 {
    font-size: 22px;
  }

  .business-info span {
    font-size: 12px;
  }

  .business-options-toggle {
    min-height: 42px;
    font-size: 13px;
  }
}

/* PRODUCTO */
.product-container {
  width: 100%;
  max-width: 610px; /* Ã°Å¸â€˜Ë† clave (podÃƒÂ©s subir a 520 si querÃƒÂ©s mÃƒÂ¡s ancho) */
}
.product-page {
  min-height: 100vh;
  background: #F6F1EC;
  padding: 20px;
  color: #1E1E1E;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
          display: flex;
            justify-content: center;

}

.product-header {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 22px;
}

.product-header h1 {
  font-size: 22px;
  font-weight: 700;
  margin: 0;
}

.product-header p {
  font-size: 14px;
  color: #7A7A7A;
  margin: 4px 0 0;
}

.product-back {
  width: 42px;
  height: 42px;
  border-radius: 14px;
  background: #FFFFFF;
  color: #F24E2E;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}

.product-selected-card,
.send-options-card,
.schedule-card {
  background: #FFFFFF;
  border-radius: 20px;
  padding: 18px;
  margin-bottom: 16px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}

.product-selected-card {
  display: grid;
  grid-template-columns: 128px minmax(0, 1fr);
  gap: 16px;
  align-items: center;
}

.product-selected-card-placeholder .product-image {
  opacity: 1;
}

.product-selected-card-placeholder .producto-info {
  width: 100%;
}

.product-selected-card-placeholder .placeholder {
  border-radius: 999px;
}

.product-selected-placeholder-title {
  display: block;
  height: 24px;
  margin-bottom: 14px;
}

.product-selected-placeholder-meta .placeholder {
  display: block;
  height: 16px;
}

.product-image {
  width: 128px;
  height: 128px;
  background: #F8F1EC;
  color: #F24E2E;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 46px;
  overflow: hidden;
  border-top-left-radius: 9px;
  border-top-right-radius: 9px;
  border-bottom-left-radius: 9px;
  border-bottom-right-radius: 9px;
}

.product-selected-card .product-image img {
  width: calc(100% - 18px);
  height: calc(100% - 18px);
  border: 0;
  border-radius: 0;
  display: block;
  -o-object-fit: contain;
     object-fit: contain;
  grid-row: auto;
}

.producto-info {
  min-width: 0;
}

.product-info h2,
.producto-info h2 {
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 8px;
}

.producto-info p {
  font-size: 14px;
  color: #7A7A7A;
  margin-bottom: 14px;
}

.product-meta {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.product-meta span {
  font-size: 13px;
  color: #7A7A7A;
}

.product-meta i {
  color: #F24E2E;
  margin-right: 6px;
}

.send-options-card h3 {
  font-size: 17px;
  font-weight: 700;
  margin-bottom: 14px;
}

.send-option {
  background: #F2EAE4;
  border-radius: 16px;
  padding: 14px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
  cursor: pointer;
}

.send-option div {
  display: flex;
  align-items: center;
  gap: 10px;
}

.send-option i {
  color: #F24E2E;
  font-size: 18px;
}

.send-option span {
  font-size: 15px;
  font-weight: 500;
}

.send-detail-field {
  padding-left: 15px;
}

.whatsapp-e164-row {
  display: grid;
  grid-template-columns: 130px minmax(0, 1fr);
  gap: 10px;
}

.whatsapp-country-picker,
.whatsapp-number-input {
  min-width: 0;
}

.whatsapp-country-select {
  position: absolute;
  opacity: 0;
  pointer-events: none;
  inset: 0;
}

.whatsapp-country-trigger,
.whatsapp-number-input {
  min-height: 48px;
}

.whatsapp-country-picker {
  position: relative;
}

.whatsapp-country-trigger {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border: 1px solid #e5ded8;
  border-radius: 14px;
  background: #F2EAE4;
  color: #1E1E1E;
  text-align: left;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.whatsapp-country-trigger i {
  margin-left: auto;
  font-size: 12px;
  color: #7A7069;
  transition: transform 0.2s ease;
}

.whatsapp-country-picker.is-open .whatsapp-country-trigger i {
  transform: rotate(180deg);
}

.whatsapp-country-trigger:focus-visible {
  outline: none;
  border-color: rgba(242, 78, 46, 0.55);
  box-shadow: 0 0 0 3px rgba(242, 78, 46, 0.18);
}

.whatsapp-country-trigger.is-invalid {
  border-color: var(--bs-form-invalid-border-color);
}

.whatsapp-country-trigger-flag,
.whatsapp-country-option-flag {
  width: 22px;
  height: 16px;
  display: block;
  flex: 0 0 auto;
  border-radius: 3px;
  -o-object-fit: cover;
     object-fit: cover;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.08);
}

.whatsapp-country-trigger-copy,
.whatsapp-country-option-copy {
  display: grid;
  min-width: 0;
}

.whatsapp-country-trigger-copy strong,
.whatsapp-country-option-copy strong {
  font-size: 13px;
  line-height: 1.1;
}

.whatsapp-country-trigger-copy small,
.whatsapp-country-option-copy small {
  color: #7A7069;
  font-size: 11px;
  line-height: 1.1;
}

.whatsapp-country-menu {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  right: 0;
  z-index: 25;
  display: none;
  padding: 6px;
  border: 1px solid #e5ded8;
  border-radius: 16px;
  background: #FFFFFF;
  box-shadow: 0 18px 34px rgba(31, 23, 18, 0.12);
  max-height: 280px;
  overflow-y: auto;
}

.whatsapp-country-picker.is-open .whatsapp-country-menu {
  display: grid;
}

.whatsapp-country-option {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: #1E1E1E;
  text-align: left;
}

.whatsapp-country-option:hover,
.whatsapp-country-option:focus-visible,
.whatsapp-country-option.is-selected {
  background: #FFF1EA;
}

.whatsapp-country-option:focus-visible {
  outline: none;
}

.send-detail-hint {
  display: block;
  margin-top: 2px;
}

.schedule-datetime-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 150px;
  gap: 10px;
}

.whatsapp-error-text {
  display: block;
  margin-top: 8px;
}

.product-check-input {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 20px;
  height: 20px;
  border: 2px solid #d8ccc4;
  border-radius: 6px;
  background: #FFFFFF;
  cursor: pointer;
  flex-shrink: 0;
  position: relative;
  transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.product-check-input:checked {
  background: #F24E2E;
  border-color: #F24E2E;
}

.product-check-input:checked::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 1px;
  width: 6px;
  height: 11px;
  border: solid #ffffff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.product-check-input:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(242, 78, 46, 0.22);
}

.schedule-card .terms-option {
  background: #F2EAE4;
  border-radius: 16px;
  padding: 14px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  margin-bottom: 10px;
  cursor: pointer;
}

.schedule-card .terms-option span {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.35;
}

.schedule-card label {
  display: block;
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 8px;
}

.schedule-card .form-control {
  border-radius: 14px;
  border: 1px solid #e5ded8;
  background: #F2EAE4;
  padding: 12px 14px;
}

.product-submit-btn {
  width: 100%;
  border: none;
  border-radius: 18px;
  background: #F24E2E;
  color: #FFFFFF;
  padding: 15px;
  font-weight: 700;
  font-size: 16px;
}

.product-submit-btn:hover {
  background: #D84326;
}
[data-bs-theme="dark"] .product-page {
  background: #171412;
  color: #FFFFFF;
}

[data-bs-theme="dark"] .product-back,
[data-bs-theme="dark"] .product-selected-card,
[data-bs-theme="dark"] .send-options-card,
[data-bs-theme="dark"] .schedule-card {
  background: #221E1B;
}

[data-bs-theme="dark"] .product-header p,
[data-bs-theme="dark"] .product-info p,
[data-bs-theme="dark"] .product-meta span {
  color: #BDBDBD;
}

[data-bs-theme="dark"] .send-option,
[data-bs-theme="dark"] .terms-option,
[data-bs-theme="dark"] .schedule-card .form-control {
  background: #2D2723;
  border-color: #3A332E;
  color: #FFFFFF;
}

[data-bs-theme="dark"] .whatsapp-country-select {
  background: transparent;
}

[data-bs-theme="dark"] .whatsapp-country-trigger,
[data-bs-theme="dark"] .whatsapp-country-menu {
  background: #2D2723;
  border-color: #3A332E;
  color: #FFFFFF;
}

[data-bs-theme="dark"] .whatsapp-country-trigger-copy small,
[data-bs-theme="dark"] .whatsapp-country-option-copy small,
[data-bs-theme="dark"] .whatsapp-country-trigger i {
  color: #C7BCB4;
}

[data-bs-theme="dark"] .whatsapp-country-option {
  color: #FFFFFF;
}

[data-bs-theme="dark"] .whatsapp-country-option:hover,
[data-bs-theme="dark"] .whatsapp-country-option:focus-visible,
[data-bs-theme="dark"] .whatsapp-country-option.is-selected {
  background: #3A332E;
}

[data-bs-theme="dark"] .product-check-input {
  background: #221E1B;
  border-color: #5A4D45;
}

@media (max-width: 576px) {
  .schedule-datetime-grid,
  .whatsapp-e164-row {
    grid-template-columns: 1fr;
  }
}

[data-bs-theme="dark"] .product-check-input:checked {
  background: #F24E2E;
  border-color: #F24E2E;
}

[data-bs-theme="dark"] .product-image {
  background: #2D2723;
}

@media (max-width: 480px) {
  .product-selected-card {
    grid-template-columns: 96px minmax(0, 1fr);
    gap: 12px;
  }

  .product-image {
    width: 96px;
    height: 96px;
  }
}

/* ORDEN */

.orders-wrapper {
  max-width: 88%;   /* Ã°Å¸â€Â¥ ajustÃƒÂ¡ esto: 520, 600, 680 segÃƒÂºn gusto */
  margin: 0 auto;     /* centra horizontal */
  padding: 16px;      /* aire en mobile */
}
.order-card {
  background: #ffffff;
  border: 1px solid #e5ded8;
  border-radius: 18px;
  padding: 18px;
  margin-bottom: 16px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}

.order-header {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
}

.order-header h5 {
  margin: 8px 0 4px;
  color: #1e1e1e;
  font-weight: 700;
}

.order-header p {
  margin: 0;
  color: #7a7a7a;
  font-size: 14px;
}

.order-header strong {
  color: #1e1e1e;
  white-space: nowrap;
}

.order-status {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 6px 11px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 600;
}

.order-meta {
  display: grid;
  gap: 8px;
  margin-top: 16px;
  color: #7a7a7a;
  font-size: 14px;
}

.order-meta i {
  color: #f24e2e;
  width: 18px;
}

.btn-order-pay {
  width: 100%;
  margin-top: 18px;
  border: 0;
  border-radius: 999px;
  padding: 13px 16px;
  background: #f24e2e;
  color: #ffffff;
  font-weight: 700;
}

.btn-order-pay:hover {
  background: #d84326;
}

.order-pending .order-status {
  background: #ffe6de;
  color: #f24e2e;
}

.order-paid .order-status {
  background: #e6f4ea;
  color: #4caf50;
}

.order-redeemed .order-status {
  background: #f1edfa;
  color: #8e7cc3;
}

.order-expired {
  background: #f5f5f5;
}

.order-expired .order-status {
  background: #eeeeee;
  color: #7a7a7a;
}

.redeem-code {
  display: flex;
  gap: 8px;
  margin-top: 18px;
}

.redeem-code span {
  width: 38px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: #f3e8df;
  border: 1px solid #e0d3c8;
  color: #f24e2e;
  font-weight: 800;
  font-size: 18px;
}

.orders-wrapper {
  width: min(88%, 760px);
}

@media (max-width: 680px) {
  .orders-wrapper {
    width: 100%;
    max-width: none;
    padding: 16px 0;
  }

  .order-card {
    border-radius: 0;
    border-left: 0;
    border-right: 0;
  }

  .order-header {
    flex-wrap: wrap;
  }
}

/* Dark mode */
[data-bs-theme="dark"] .order-card {
  background: #1f1f1f;
  border-color: #333333;
  box-shadow: none;
}

[data-bs-theme="dark"] .order-header h5,
[data-bs-theme="dark"] .order-header strong {
  color: #f5f5f5;
}

[data-bs-theme="dark"] .order-header p,
[data-bs-theme="dark"] .order-meta {
  color: #bdbdbd;
}

[data-bs-theme="dark"] .order-expired {
  background: #252525;
}

[data-bs-theme="dark"] .redeem-code span {
  background: #332620;
  border-color: #4a382f;
}

/* ORDEN - UI actual */

.orders-wrapper {
  width: min(100%, 680px);
  max-width: none;
  padding: 22px 16px 34px;
}

.order-card {
  border-radius: 14px;
  padding: 16px;
  margin-bottom: 12px;
}

.order-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
}

.order-hero-image {
  width: 112px;
  height: 112px;
  border-radius: 18px;
  -o-object-fit: cover;
     object-fit: cover;
  background: #F3E8DF;
}

.order-hero-copy h2,
.order-loading h2,
.order-not-found h2 {
  margin: 8px 0 4px;
  /* color: #1E1E1E; */
  font-size: 21px;
  line-height: 1.2;
  font-weight: 800;
}

.order-hero-copy p,
.order-loading p,
.order-not-found p {
  margin: 0;
  color: #7A7A7A;
  font-size: 14px;
  line-height: 1.4;
}

.order-price {
  color: #1E1E1E;
  font-size: 18px;
  line-height: 1.2;
  white-space: nowrap;
}

.order-business-strip {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 14px;
  padding: 10px;
  border: 1px solid #efe5dd;
  border-radius: 10px;
  background: #FBF7F3;
}

.order-business-strip img {
  width: 44px;
  height: 44px;
  border-radius: 8px;
  -o-object-fit: cover;
     object-fit: cover;
}

.order-business-strip strong,
.order-meta-grid strong {
  display: block;
  color: #1E1E1E;
}

.order-business-strip span,
.order-meta-grid span {
  display: block;
  color: #7A7A7A;
  font-size: 12px;
  line-height: 1.35;
}

.order-meta-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  margin-top: 14px;
  border-top: 1px solid #efe5dd;
}

.order-meta-grid > div {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding: 10px 0;
  border-bottom: 1px solid #efe5dd;
}

.order-meta-grid strong {
  min-width: 0;
  max-width: 58%;
  overflow-wrap: anywhere;
  text-align: right;
}

.order-reminder-channels {
  display: block;
  margin-top: 2px;
  color: #7A7A7A;
  font-size: 12px;
  line-height: 1.3;
  font-weight: 700;
}

.order-payment-result {
  padding: 18px 6px;
  text-align: center;
}

.order-payment-result + .order-payment-result {
  margin-top: 10px;
  padding-top: 20px;
  border-top: 1px solid #efe5dd;
}

.order-payment-icon {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  margin: 0 auto 12px;
  border-radius: 50%;
  font-size: 26px;
}

.order-payment-result-success .order-payment-icon {
  background: #E6F4EA;
  color: #1E7B49;
}

.order-payment-result-failed .order-payment-icon {
  background: #FFF0ED;
  color: #D84326;
}

.order-payment-result h3 {
  margin: 0 0 6px;
  color: #1E1E1E;
  font-size: 22px;
  font-weight: 800;
}

.order-payment-result p {
  max-width: 360px;
  margin: 0 auto;
  color: #7A7A7A;
  line-height: 1.45;
}

.order-qr-shell {
  display: grid;
  justify-items: center;
  gap: 12px;
  padding: 8px 0;
}

.order-qr-box {
  min-width: 244px;
  min-height: 244px;
  display: grid;
  place-items: center;
  padding: 12px;
  border: 1px solid #efe5dd;
  border-radius: 12px;
  background: #FFFFFF;
  color: #7A7A7A;
  font-weight: 700;
  text-align: center;
}

.order-qr-box img,
.order-qr-box canvas {
  display: block;
  width: 220px !important;
  height: 220px !important;
}

.order-qr-url {
  max-width: 100%;
  margin: 0;
  color: #7A7A7A;
  font-size: 13px;
  line-height: 1.35;
  overflow-wrap: anywhere;
  text-align: center;
}

.order-message-box {
  margin-top: 14px;
  padding: 12px;
  border-radius: 10px;
  background: #FBF7F3;
  border: 1px solid #efe5dd;
}

.order-message-box span {
  display: block;
  margin-bottom: 6px;
  color: #7A7A7A;
  font-size: 13px;
  font-weight: 700;
}

.order-message-box p {
  margin: 0;
  color: #3C312A;
  font-size: 14px;
  line-height: 1.45;
}

.btn-order-pay {
  width: auto;
  min-width: 180px;
  margin-top: 0;
}

.order-cta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 14px;
}

.order-loading,
.order-not-found {
  text-align: center;
}

.order-loading .mp-success-spinner,
.order-not-found .email-verify-status {
  margin: 0 auto 18px;
}

.order-code-shell {
  margin-top: 14px;
  padding: 14px;
  border: 1px solid #efe5dd;
  border-radius: 10px;
  background: #FBF7F3;
}

.order-code-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.order-code-head span {
  display: block;
  color: #7A7A7A;
  font-size: 13px;
}

.order-code-head strong {
  display: block;
  margin-top: 4px;
  color: #1E1E1E;
}

.order-code-mask {
  margin-top: 12px;
  padding: 12px 14px;
  border-radius: 10px;
  background: linear-gradient(180deg, #FFF7F1 0%, #F5E8DE 100%);
  border: 1px solid #e6d8cc;
}

.order-code-shell p {
  margin: 10px 0 0;
  color: #7A7A7A;
  font-size: 13px;
  line-height: 1.45;
}

.order-code-value {
  display: block;
  letter-spacing: 0.24em;
  text-indent: 0.24em;
  color: #F24E2E;
  font-size: clamp(24px, 7vw, 32px);
  font-weight: 900;
  text-align: center;
  transition: filter 0.2s ease, opacity 0.2s ease;
}

.order-code-value.is-masked {
  filter: blur(8px);
  opacity: 0.86;
}

.order-code-shell-redeemed {
  background: #F7F3FB;
  border-color: #E6DDF3;
}

.order-code-check {
  color: #1E7B49;
  font-size: 22px;
}

@media (max-width: 680px) {
  .orders-wrapper {
    padding: 14px 12px 28px;
  }

  .order-card {
    border-radius: 12px;
    padding: 14px;
  }

  .order-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .order-hero-image {
    width: 100%;
    height: 190px;
  }

  .order-code-value {
    letter-spacing: 0.14em;
    text-indent: 0.14em;
  }

  .order-cta-row .btn,
  .order-cta-row .btn-order-pay {
    width: 100%;
  }

  .order-meta-grid > div {
    display: grid;
    gap: 3px;
  }

  .order-meta-grid strong {
    max-width: none;
    text-align: left;
  }
}

[data-bs-theme="dark"] .order-hero-copy h2,
[data-bs-theme="dark"] .order-price,
[data-bs-theme="dark"] .order-business-strip strong,
[data-bs-theme="dark"] .order-meta-grid strong,
[data-bs-theme="dark"] .order-code-head strong {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .order-hero-copy p,
[data-bs-theme="dark"] .order-business-strip span,
[data-bs-theme="dark"] .order-meta-grid span,
[data-bs-theme="dark"] .order-code-head span,
[data-bs-theme="dark"] .order-code-shell p {
  color: #B8AEA7;
}

[data-bs-theme="dark"] .order-reminder-channels {
  color: #B8AEA7;
}

[data-bs-theme="dark"] .order-payment-result + .order-payment-result,
[data-bs-theme="dark"] .order-qr-box {
  border-color: #3A302A;
}

[data-bs-theme="dark"] .order-payment-result h3 {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .order-payment-result p,
[data-bs-theme="dark"] .order-qr-url {
  color: #B8AEA7;
}

[data-bs-theme="dark"] .order-payment-result-success .order-payment-icon {
  background: rgba(54, 179, 126, 0.16);
  color: #7BE0AA;
}

[data-bs-theme="dark"] .order-payment-result-failed .order-payment-icon {
  background: rgba(242, 78, 46, 0.16);
  color: #FF8A70;
}

[data-bs-theme="dark"] .order-business-strip,
[data-bs-theme="dark"] .order-message-box,
[data-bs-theme="dark"] .order-code-shell {
  background: #2A241F;
  border-color: #3A302A;
}

[data-bs-theme="dark"] .order-meta-grid,
[data-bs-theme="dark"] .order-meta-grid > div {
  border-color: #3A302A;
}

[data-bs-theme="dark"] .order-message-box p {
  color: #EADFD6;
}

[data-bs-theme="dark"] .order-code-mask {
  background: linear-gradient(180deg, #332A24 0%, #2A221D 100%);
  border-color: #4A3A31;
}

[data-bs-theme="dark"] .order-code-value {
  color: #FF8A70;
}















/* Test */
 .form-control{

  border-radius: 14px;
  border: 1px solid #e5ded8;
  background: #F2EAE4;
  padding: 12px 14px;
}

 [data-bs-theme="dark"] .form-control{

  border-radius: 14px;
  border: 1px solid #e5ded866;
  background: transparent;
  padding: 12px 14px;
}
.profile-page {
  max-width: 600px;
  margin: 0 auto;
  padding: 24px 20px 32px;
}

.profile-card {
  background: #FFFFFF;
  border-radius: 28px;
  padding: 22px;
  margin-bottom: 18px;
  border: 1px solid rgba(242, 78, 46, 0.08);
  box-shadow: 0 18px 45px rgba(242, 78, 46, 0.08);
}

.profile-header {
  display: flex;
  align-items: center;
  gap: 18px;
}

.profile-avatar {
  width: 78px;
  height: 78px;
  border-radius: 24px;
  background: #F8EDE6;
  color: #F24E2E;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
}

.profile-name {
  font-size: 24px;
  margin: 0;
  color: #1E1E1E;
}

.profile-handle,
.profile-email {
  margin: 4px 0 0;
  color: #7A7A7A;
  font-size: 14px;
}

.verified-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 22px;
  padding: 10px 14px;
  border-radius: 999px;
  background: #E8F7EE;
  color: #1E7B49;
  font-weight: 600;
  font-size: 13px;
}

.profile-section-label {
  color: #B8ADA1;
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 16px;
}

.profile-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  background: #FFFFFF;
  border: 1px solid #f1e5de;
  border-radius: 20px;
  padding: 16px 18px;
  text-decoration: none;
  color: inherit;
  transition: background 0.2s ease, border-color 0.2s ease;
  margin-bottom: 12px;
}

.profile-item:hover {
  background: #FFF4EE;
  border-color: #F5D3CA;
}

.item-start {
  display: flex;
  align-items: center;
  gap: 14px;
}

.profile-item-icon {
  width: 44px;
  height: 44px;
  border-radius: 16px;
  background: #FDF0EC;
  color: #F24E2E;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
}

.item-title {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 2px;
}

.item-subtitle {
  margin: 0;
  color: #7A7A7A;
  font-size: 13px;
  line-height: 1.4;
}

.item-chevron {
  color: #B8ADA1;
  font-size: 14px;
}

.logout-card {
  background: #FFFFFF;
  border-radius: 24px;
  padding: 16px;
  border: 1px solid #f1e5de;
}

.logout-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  gap: 10px;
  padding: 14px 16px;
  border-radius: 16px;
  border: 1px solid rgba(242, 78, 46, 0.18);
  background: #FFFFFF;
  color: #F24E2E;
  text-decoration: none;
  font-weight: 700;
  transition: background 0.2s ease;
}

.logout-link:hover {
  background: rgba(242, 78, 46, 0.08);
}

[data-bs-theme="dark"].profile-page,
[data-bs-theme="dark"] .profile-page {
  color: #F8F4F0;
}

[data-bs-theme="dark"].profile-page .profile-card,
[data-bs-theme="dark"] .profile-page .profile-card,
[data-bs-theme="dark"].profile-page .logout-card,
[data-bs-theme="dark"] .profile-page .logout-card {
  background: #211D1A;
  border-color: #3A302A;
  box-shadow: 0 18px 45px rgba(0,0,0,0.22);
}

[data-bs-theme="dark"].profile-page .profile-name,
[data-bs-theme="dark"] .profile-page .profile-name,
[data-bs-theme="dark"].profile-page .item-title,
[data-bs-theme="dark"] .profile-page .item-title {
  color: #F8F4F0;
}

[data-bs-theme="dark"].profile-page .profile-handle,
[data-bs-theme="dark"] .profile-page .profile-handle,
[data-bs-theme="dark"].profile-page .profile-email,
[data-bs-theme="dark"] .profile-page .profile-email,
[data-bs-theme="dark"].profile-page .item-subtitle,
[data-bs-theme="dark"] .profile-page .item-subtitle {
  color: #B8AEA7;
}

[data-bs-theme="dark"].profile-page .profile-section-label,
[data-bs-theme="dark"] .profile-page .profile-section-label,
[data-bs-theme="dark"].profile-page .item-chevron,
[data-bs-theme="dark"] .profile-page .item-chevron {
  color: #92877F;
}

[data-bs-theme="dark"].profile-page .profile-avatar,
[data-bs-theme="dark"] .profile-page .profile-avatar,
[data-bs-theme="dark"].profile-page .profile-item-icon,
[data-bs-theme="dark"] .profile-page .profile-item-icon {
  background: rgba(242, 78, 46, 0.16);
  color: #FF8A70;
}

[data-bs-theme="dark"].profile-page .profile-item,
[data-bs-theme="dark"] .profile-page .profile-item,
[data-bs-theme="dark"].profile-page .logout-link,
[data-bs-theme="dark"] .profile-page .logout-link {
  background: #2A241F;
  border-color: #3A302A;
  color: #F8F4F0;
}

[data-bs-theme="dark"].profile-page .profile-item:hover,
[data-bs-theme="dark"] .profile-page .profile-item:hover {
  background: #332B25;
  border-color: #4B3E36;
}

[data-bs-theme="dark"].profile-page .verified-badge,
[data-bs-theme="dark"] .profile-page .verified-badge {
  background: rgba(54, 179, 126, 0.16);
  color: #7BE0AA;
}

[data-bs-theme="dark"].profile-page .logout-link,
[data-bs-theme="dark"] .profile-page .logout-link {
  color: #FF8A70;
}

[data-bs-theme="dark"].profile-page .logout-link:hover,
[data-bs-theme="dark"] .profile-page .logout-link:hover {
  background: rgba(242, 78, 46, 0.14);
}

.profile-edit-page {
  padding: 28px 24px 44px;
}

.profile-edit-shell {
  max-width: 1120px;
  margin: 0 auto;
}

.profile-edit-hero {
  margin-bottom: 22px;
}

.profile-edit-hero-card {
  position: relative;
  overflow: hidden;
  border-radius: 34px;
  border: 1px solid rgba(242, 78, 46, 0.12);
  background: linear-gradient(145deg, #fffaf7 0%, #fff 48%, #fdf3ec 100%);
  box-shadow: 0 22px 60px rgba(86, 48, 33, 0.12);
}

.profile-edit-cover {
  min-height: 152px;
  background:
    radial-gradient(circle at top left, rgba(242, 78, 46, 0.26), transparent 36%),
    radial-gradient(circle at top right, rgba(255, 186, 122, 0.36), transparent 28%),
    linear-gradient(135deg, #2b1f1a 0%, #5f3524 44%, #ff6d47 100%);
}

.profile-edit-identity {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 22px;
  align-items: end;
  margin-top: -56px;
  padding: 0 28px 28px;
}

.profile-edit-avatar-wrap {
  position: relative;
}

.profile-edit-avatar,
.profile-edit-avatar-lg {
  display: block;
  width: 128px;
  height: 128px;
  border-radius: 32px;
  -o-object-fit: cover;
     object-fit: cover;
  border: 6px solid #ffffff;
  box-shadow: 0 18px 40px rgba(41, 25, 18, 0.18);
  background: #f2eae4;
}

.profile-edit-avatar-fallback {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 44px;
  font-weight: 800;
  color: #F24E2E;
  background: linear-gradient(145deg, #fff1eb 0%, #f8ddd1 100%);
}

.profile-edit-avatar-lg {
  width: 112px;
  height: 112px;
  border-width: 0;
  border-radius: 28px;
  box-shadow: none;
}

.profile-edit-avatar-fallback-lg {
  font-size: 38px;
}

.profile-edit-identity-copy h1 {
  margin: 0;
  color: #201511;
  font-size: clamp(30px, 4vw, 42px);
  line-height: 1.02;
}

.profile-edit-kicker {
  display: inline-flex;
  align-items: center;
  padding: 7px 12px;
  margin-bottom: 12px;
  border-radius: 999px;
  background: rgba(255,255,255,0.72);
  color: #9d4b37;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.profile-edit-identity-copy p {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin: 10px 0 0;
  color: #725f55;
  font-size: 15px;
}

.profile-edit-status {
  display: grid;
  gap: 8px;
  min-width: 220px;
  padding: 16px 18px;
  border-radius: 22px;
  background: rgba(255,255,255,0.78);
  border: 1px solid rgba(242, 78, 46, 0.1);
}

.profile-edit-status span {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #1f6f4f;
  font-weight: 700;
}

.profile-edit-status small {
  color: #78665d;
  line-height: 1.5;
}

.profile-edit-form {
  display: grid;
  gap: 22px;
}

.profile-edit-grid {
  /* display: grid; */
  grid-template-columns: minmax(300px, 0.9fr) minmax(0, 1.1fr);
  gap: 22px;
}

.profile-edit-panel {
  background: linear-gradient(180deg, rgba(255,255,255,0.96) 0%, #ffffff 100%);
  border: 1px solid #f0e4dc;
  border-radius: 30px;
  padding: 26px;
  box-shadow: 0 16px 40px rgba(86, 48, 33, 0.08);
}

.profile-edit-panel-accent {
  background:
    radial-gradient(circle at top right, rgba(242, 78, 46, 0.09), transparent 30%),
    linear-gradient(180deg, #fff8f4 0%, #ffffff 100%);
}

.profile-edit-panel-wide {
  grid-column: 1 / -1;
}

.profile-edit-panel-head {
  margin-bottom: 22px;
}

.profile-edit-eyebrow {
  display: inline-block;
  margin-bottom: 10px;
  color: #b57461;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.profile-edit-panel-head h2 {
  margin: 0 0 10px;
  color: #1e1612;
  font-size: 28px;
}

.profile-edit-panel-head p {
  margin: 0;
  color: #78665d;
  line-height: 1.6;
}

.profile-edit-avatar-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  margin-bottom: 18px;
}

.profile-edit-avatar-preview {
  position: relative;
}

.profile-edit-avatar-badge {
  position: absolute;
  right: -6px;
  bottom: 10px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 12px;
  border-radius: 999px;
  background: #201511;
  color: #fff6f1;
  font-size: 12px;
  font-weight: 700;
  box-shadow: 0 12px 30px rgba(32, 21, 17, 0.28);
}

.profile-edit-dropzone-copy strong {
  display: block;
  margin-bottom: 8px;
  font-size: 18px;
  color: #201511;
}

.profile-edit-dropzone-copy p {
  margin: 0;
  color: #78665d;
  line-height: 1.6;
}

#profileImage.dropzone {
  min-height: 156px;
  border: 1.5px dashed #efb6a3;
  border-radius: 26px;
  background: rgba(255, 245, 239, 0.84);
}

#profileImage.dropzone .dz-message {
  font-weight: 600;
  color: #8d5c49;
}

.profile-edit-tip {
  display: flex;
  gap: 12px;
  margin-top: 16px;
  padding: 14px 16px;
  border-radius: 18px;
  background: #fff3eb;
  color: #8a563f;
  line-height: 1.5;
}

.profile-edit-tip i {
  color: #F24E2E;
  margin-top: 3px;
}

.profile-edit-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.profile-edit-fields-geo {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.profile-edit-field {
  display: grid;
  gap: 9px;
}

.profile-edit-field-wide {
  grid-column: 1 / -1;
}

.profile-edit-field label {
  color: #7d6a5f;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.02em;
}

.profile-edit-input {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 60px;
  padding: 0 18px;
  border-radius: 20px;
  border: 1px solid #eadbd1;
  background: #fbf7f4;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.profile-edit-input:focus-within {
  border-color: rgba(242, 78, 46, 0.34);
  box-shadow: 0 0 0 4px rgba(242, 78, 46, 0.1);
  background: #fffdfa;
}

.profile-edit-input i {
  color: #F24E2E;
  font-size: 16px;
}

.profile-edit-input input,
.profile-edit-input select {
  width: 100%;
  border: 0;
  background: transparent;
  color: #241a15;
  padding: 16px 0;
  outline: none;
  box-shadow: none;
}

.profile-edit-input input::-moz-placeholder {
  color: #a18f85;
}

.profile-edit-input input::placeholder {
  color: #a18f85;
}

.profile-edit-input-select select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.profile-edit-location-summary {
  display: grid;
  gap: 6px;
  padding: 18px 20px;
  margin-bottom: 18px;
  border-radius: 22px;
  background: linear-gradient(135deg, #fff4ee 0%, #fffaf7 100%);
  border: 1px solid #f4ddd2;
}

.profile-edit-location-label {
  color: #b16a54;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.profile-edit-location-summary strong {
  color: #211814;
  font-size: 20px;
}

.profile-edit-location-summary small {
  color: #7d6a5f;
  line-height: 1.5;
}

.profile-edit-actions {
  display: flex;
  justify-content: flex-end;
  gap: 14px;
  padding: 0 6px;
}

.profile-edit-cancel,
.profile-edit-submit {
  min-width: 180px;
  min-height: 56px;
  padding: 0 24px;
  border-radius: 18px;
  font-weight: 700;
  text-decoration: none;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease, color 0.2s ease;
}

.profile-edit-cancel {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #eadbd1;
  background: #ffffff;
  color: #5f4f47;
}

.profile-edit-submit {
  border: 0;
  background: linear-gradient(135deg, #ff5f3b 0%, #f24e2e 100%);
  color: #fff8f4;
  box-shadow: 0 18px 34px rgba(242, 78, 46, 0.22);
}

.profile-edit-cancel:hover,
.profile-edit-submit:hover {
  transform: translateY(-1px);
}

.profile-edit-submit:hover {
  box-shadow: 0 22px 36px rgba(242, 78, 46, 0.28);
}

[data-bs-theme="dark"].profile-edit-page,
[data-bs-theme="dark"] .profile-edit-page {
  color: #F6EFE9;
}

[data-bs-theme="dark"].profile-edit-page .profile-edit-hero-card,
[data-bs-theme="dark"] .profile-edit-page .profile-edit-hero-card {
  border-color: #3b2d28;
  background: linear-gradient(145deg, #1e1916 0%, #241d19 48%, #2b221e 100%);
  box-shadow: 0 22px 60px rgba(0,0,0,0.28);
}

[data-bs-theme="dark"].profile-edit-page .profile-edit-cover,
[data-bs-theme="dark"] .profile-edit-page .profile-edit-cover {
  background:
    radial-gradient(circle at top left, rgba(255, 122, 89, 0.24), transparent 34%),
    radial-gradient(circle at top right, rgba(255, 178, 116, 0.24), transparent 24%),
    linear-gradient(135deg, #130f0d 0%, #3d261d 48%, #8f442d 100%);
}

[data-bs-theme="dark"].profile-edit-page .profile-edit-status,
[data-bs-theme="dark"] .profile-edit-page .profile-edit-status,
[data-bs-theme="dark"].profile-edit-page .profile-edit-kicker,
[data-bs-theme="dark"] .profile-edit-page .profile-edit-kicker {
  background: rgba(33, 26, 22, 0.86);
  border-color: #45362f;
}

[data-bs-theme="dark"].profile-edit-page .profile-edit-identity-copy h1,
[data-bs-theme="dark"] .profile-edit-page .profile-edit-identity-copy h1,
[data-bs-theme="dark"].profile-edit-page .profile-edit-dropzone-copy strong,
[data-bs-theme="dark"] .profile-edit-page .profile-edit-dropzone-copy strong,
[data-bs-theme="dark"].profile-edit-page .profile-edit-panel-head h2,
[data-bs-theme="dark"] .profile-edit-page .profile-edit-panel-head h2,
[data-bs-theme="dark"].profile-edit-page .profile-edit-location-summary strong,
[data-bs-theme="dark"] .profile-edit-page .profile-edit-location-summary strong {
  color: #F8F1EB;
}

[data-bs-theme="dark"].profile-edit-page .profile-edit-identity-copy p,
[data-bs-theme="dark"] .profile-edit-page .profile-edit-identity-copy p,
[data-bs-theme="dark"].profile-edit-page .profile-edit-status small,
[data-bs-theme="dark"] .profile-edit-page .profile-edit-status small,
[data-bs-theme="dark"].profile-edit-page .profile-edit-panel-head p,
[data-bs-theme="dark"] .profile-edit-page .profile-edit-panel-head p,
[data-bs-theme="dark"].profile-edit-page .profile-edit-dropzone-copy p,
[data-bs-theme="dark"] .profile-edit-page .profile-edit-dropzone-copy p,
[data-bs-theme="dark"].profile-edit-page .profile-edit-location-summary small,
[data-bs-theme="dark"] .profile-edit-page .profile-edit-location-summary small,
[data-bs-theme="dark"].profile-edit-page .profile-edit-field label,
[data-bs-theme="dark"] .profile-edit-page .profile-edit-field label {
  color: #BDAFA7;
}

[data-bs-theme="dark"].profile-edit-page .profile-edit-panel,
[data-bs-theme="dark"] .profile-edit-page .profile-edit-panel,
[data-bs-theme="dark"].profile-edit-page .profile-edit-location-summary,
[data-bs-theme="dark"] .profile-edit-page .profile-edit-location-summary,
[data-bs-theme="dark"].profile-edit-page .profile-edit-tip,
[data-bs-theme="dark"] .profile-edit-page .profile-edit-tip,
[data-bs-theme="dark"].profile-edit-page #profileImage.dropzone,
[data-bs-theme="dark"] .profile-edit-page #profileImage.dropzone,
[data-bs-theme="dark"].profile-edit-page .profile-edit-cancel,
[data-bs-theme="dark"] .profile-edit-page .profile-edit-cancel {
  background: #231d19;
  border-color: #3b2d28;
  color: #F6EFE9;
}

[data-bs-theme="dark"].profile-edit-page .profile-edit-input {
  background: #2a231f;
  border-color: #43332d;
}

[data-bs-theme="dark"].profile-edit-page .profile-edit-input:focus-within {
  background: #302823;
  border-color: rgba(255, 120, 90, 0.44);
  box-shadow: 0 0 0 4px rgba(242, 78, 46, 0.14);
}

[data-bs-theme="dark"].profile-edit-page .profile-edit-input input,
[data-bs-theme="dark"] .profile-edit-page .profile-edit-input input,
[data-bs-theme="dark"].profile-edit-page .profile-edit-input select,
[data-bs-theme="dark"] .profile-edit-page .profile-edit-input select {
  color: #F8F1EB;
}

[data-bs-theme="dark"].profile-edit-page .profile-edit-input input::-moz-placeholder, [data-bs-theme="dark"] .profile-edit-page .profile-edit-input input::-moz-placeholder {
  color: #8f8179;
}

[data-bs-theme="dark"].profile-edit-page .profile-edit-input input::placeholder,
[data-bs-theme="dark"] .profile-edit-page .profile-edit-input input::placeholder {
  color: #8f8179;
}

[data-bs-theme="dark"].profile-edit-page #profileImage.dropzone .dz-message,
[data-bs-theme="dark"] .profile-edit-page #profileImage.dropzone .dz-message {
  color: #C6AEA4;
}

[data-bs-theme="dark"].profile-edit-page .profile-edit-avatar-badge,
[data-bs-theme="dark"] .profile-edit-page .profile-edit-avatar-badge {
  background: #120f0d;
  color: #fff6f1;
}

.mp-page {
  padding: 30px 40px 40px;
  display: flex;
  justify-content: center;
}

.mp-card {
  max-width: 760px;
  width: 100%;
  padding: 34px;
  border-radius: 24px;
}

.mp-card-copy {
  color: #7A7A7A;
  margin-bottom: 22px;
  line-height: 1.6;
}

.mp-status-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 20px;
}

.status-label {
  color: #7A7A7A;
  font-size: 14px;
  margin-bottom: 8px;
}

.status-chip {
  display: inline-flex;
  align-items: center;
  padding: 10px 16px;
  border-radius: 999px;
  font-weight: 700;
  font-size: 13px;
}

.status-chip-active {
  background: #E8F7EE;
  color: #1E7B49;
}

.status-chip-inactive {
  background: #FFF1F0;
  color: #D84326;
}

.status-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #1E7B49;
  font-weight: 700;
}

.status-badge-muted {
  color: #7A7A7A;
}

.status-box {
  background: #F8F5F2;
  border: 1px solid #e8e0d8;
  border-radius: 22px;
  padding: 22px;
  margin-bottom: 18px;
}

.status-box-active {
  background: #EEF8F1;
  border-color: #D8EADD;
}

.status-box-inactive {
  background: #FFF2F1;
  border-color: #F1D6D3;
}

.status-box-pending {
  background: #FEF5E6;
  border-color: #F5E1C7;
}

.status-box p {
  color: #1E1E1E;
}

.mp-note {
  margin: 12px 0 0;
  color: #5B5B5B;
  line-height: 1.6;
}

.mp-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 18px;
}

.mp-actions .btn {
  min-width: 160px;
}

[data-bs-theme="dark"].mp-page,
[data-bs-theme="dark"] .mp-page {
  background: #171412;
  color: #F8F4F0;
}

[data-bs-theme="dark"].mp-page .mp-card,
[data-bs-theme="dark"] .mp-page .mp-card {
  background: #211D1A;
  border-color: #3A302A;
  box-shadow: 0 18px 45px rgba(0,0,0,0.18);
}

[data-bs-theme="dark"].mp-page .mp-card h2,
[data-bs-theme="dark"] .mp-page .mp-card h2,
[data-bs-theme="dark"].mp-page .status-box p,
[data-bs-theme="dark"] .mp-page .status-box p,
[data-bs-theme="dark"].mp-page .status-box strong,
[data-bs-theme="dark"] .mp-page .status-box strong {
  color: #F8F4F0;
}

[data-bs-theme="dark"].mp-page .mp-card-copy,
[data-bs-theme="dark"] .mp-page .mp-card-copy,
[data-bs-theme="dark"].mp-page .status-label,
[data-bs-theme="dark"] .mp-page .status-label,
[data-bs-theme="dark"].mp-page .mp-note,
[data-bs-theme="dark"] .mp-page .mp-note {
  color: #B8AEA7;
}

[data-bs-theme="dark"].mp-page .status-box,
[data-bs-theme="dark"] .mp-page .status-box {
  background: #2A241F;
  border-color: #3A302A;
}

[data-bs-theme="dark"].mp-page .status-box-active,
[data-bs-theme="dark"] .mp-page .status-box-active {
  background: rgba(54, 179, 126, 0.12);
  border-color: rgba(123, 224, 170, 0.24);
}

[data-bs-theme="dark"].mp-page .status-box-inactive,
[data-bs-theme="dark"] .mp-page .status-box-inactive {
  background: rgba(242, 78, 46, 0.12);
  border-color: rgba(255, 138, 112, 0.24);
}

[data-bs-theme="dark"].mp-page .status-box-pending,
[data-bs-theme="dark"] .mp-page .status-box-pending {
  background: rgba(245, 158, 11, 0.12);
  border-color: rgba(251, 194, 106, 0.24);
}

[data-bs-theme="dark"].mp-page .status-chip-active,
[data-bs-theme="dark"] .mp-page .status-chip-active {
  background: rgba(54, 179, 126, 0.16);
  color: #7BE0AA;
}

[data-bs-theme="dark"].mp-page .status-badge,
[data-bs-theme="dark"] .mp-page .status-badge {
  color: #7BE0AA;
}

[data-bs-theme="dark"].mp-page .status-chip-inactive,
[data-bs-theme="dark"] .mp-page .status-chip-inactive {
  background: rgba(242, 78, 46, 0.16);
  color: #FF8A70;
}

[data-bs-theme="dark"].mp-page .status-badge-muted,
[data-bs-theme="dark"] .mp-page .status-badge-muted {
  background: transparent;
  color: #B8AEA7;
}

.mp-success-page {
  min-height: calc(100vh - 78px);
  padding: 36px 20px;
  /* display: grid; */
  place-items: center;
  background: #F6F1EC;
}

.mp-success-card {
  width: min(92vw, 460px);
  padding: 34px 28px;
  text-align: center;
  background: #FFFFFF;
  border: 1px solid #e8e0d8;
  border-radius: 24px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}

.mp-success-spinner {
  width: 56px;
  height: 56px;
  color: #F24E2E;
  border-width: 5px;
  margin-bottom: 22px;
}

.mp-success-card h1 {
  margin: 0 0 12px;
  color: #1E1E1E;
  font-size: 28px;
  line-height: 1.15;
  font-weight: 800;
}

.mp-success-card p {
  margin: 0;
  color: #7A7A7A;
  line-height: 1.55;
}

.email-verify-status {
  width: 56px;
  height: 56px;
  margin: 0 auto 22px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  font-size: 24px;
}

.email-verify-status-error {
  background: rgba(242, 78, 46, 0.12);
  color: #F24E2E;
}

.email-verify-status-pending {
  background: #FDEDE5;
  color: #F24E2E;
}

.email-verify-actions {
  margin-top: 24px;
  display: flex;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
}

.email-verify-actions .btn-primary {
  border-color: #F24E2E;
  background: #F24E2E;
  color: #FFFFFF;
}

.email-verify-actions .btn-primary:hover,
.email-verify-actions .btn-primary:focus {
  border-color: #D84326;
  background: #D84326;
  color: #FFFFFF;
}

.email-verify-actions .btn-outline-primary {
  border-color: #F24E2E;
  color: #F24E2E;
}

.email-verify-actions .btn-outline-primary:hover,
.email-verify-actions .btn-outline-primary:focus {
  border-color: #F24E2E;
  background: #F24E2E;
  color: #FFFFFF;
}

.email-verify-actions .btn-primary:disabled {
  border-color: #F24E2E;
  background: #F24E2E;
  color: #FFFFFF;
}

.mail-resend-message {
  margin: 18px 0 0;
  text-align: left;
}

.mail-check-card {
  width: min(92vw, 520px);
}

.mail-check-address {
  margin: 18px auto 0;
  max-width: 100%;
  padding: 11px 14px;
  overflow-wrap: anywhere;
  border: 1px solid #e8e0d8;
  border-radius: 999px;
  background: #FBF7F3;
  color: #1E1E1E;
  font-size: 14px;
  font-weight: 800;
}

.mail-check-tips {
  display: grid;
  gap: 12px;
  margin-top: 24px;
  text-align: left;
}

.mail-check-tips div {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  color: #5B5B5B;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
}

.mail-check-tips i {
  color: #F24E2E;
  text-align: center;
}

[data-bs-theme="dark"].mp-success-page,
[data-bs-theme="dark"] .mp-success-page {
  background: #171412;
}

[data-bs-theme="dark"].mp-success-page .mp-success-card,
[data-bs-theme="dark"] .mp-success-page .mp-success-card {
  background: #211D1A;
  border-color: #3A302A;
  box-shadow: 0 18px 45px rgba(0,0,0,0.18);
}

[data-bs-theme="dark"].mp-success-page .mp-success-card h1,
[data-bs-theme="dark"] .mp-success-page .mp-success-card h1 {
  color: #F8F4F0;
}

[data-bs-theme="dark"].mp-success-page .mp-success-card p,
[data-bs-theme="dark"] .mp-success-page .mp-success-card p {
  color: #B8AEA7;
}

[data-bs-theme="dark"].mp-success-page .email-verify-status-error,
[data-bs-theme="dark"] .mp-success-page .email-verify-status-error {
  background: rgba(242, 78, 46, 0.16);
  color: #FF8A70;
}

[data-bs-theme="dark"].mp-success-page .email-verify-status-pending,
[data-bs-theme="dark"] .mp-success-page .email-verify-status-pending {
  background: rgba(242, 78, 46, 0.16);
  color: #FF8A70;
}

[data-bs-theme="dark"].mp-success-page .mail-check-address,
[data-bs-theme="dark"] .mp-success-page .mail-check-address {
  background: #2A241F;
  border-color: #3A302A;
  color: #F8F4F0;
}

[data-bs-theme="dark"].mp-success-page .mail-check-tips div,
[data-bs-theme="dark"] .mp-success-page .mail-check-tips div {
  color: #D4C8BE;
}

[data-bs-theme="dark"].mp-success-page .mail-check-tips i,
[data-bs-theme="dark"] .mp-success-page .mail-check-tips i {
  color: #FF8A70;
}

@media (max-width: 780px) {
  .mp-page {
    padding: 24px;
  }

  .mp-status-row {
    flex-direction: column;
    align-items: stretch;
  }

  .mp-actions {
    justify-content: stretch;
  }
}

.business-page {
  width: 100%;
  max-width: 980px;
  margin: 0 auto;
  padding: 28px 22px 36px;
  box-sizing: border-box;
}

.business-header-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  gap: 20px;
  margin-bottom: 28px;
}

.business-header-row > div {
  min-width: 0;
}

.business-header-row h1 {
  margin: 0;
  font-size: 32px;
}

.business-description {
  margin: 10px 0 0;
  color: #7A7A7A;
  max-width: 680px;
  line-height: 1.6;
}

.create-business-btn {
  min-width: 220px;
  padding: 12px 22px;
  border-radius: 999px;
}

.business-list {
  display: grid;
  gap: 20px;
}

.business-inline-notice {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 14px;
  align-items: start;
  padding: 16px 18px;
  border: 1px solid #b9e0f7;
  border-radius: 18px;
  background: linear-gradient(135deg, #F1FAFF 0%, #E1F3FF 100%);
  color: #1C4E73;
  box-shadow: 0 10px 30px rgba(78, 162, 214, 0.12);
}

.business-inline-notice-icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #CFEFFF;
  color: #1772A6;
  font-size: 18px;
  flex-shrink: 0;
}

.business-inline-notice-content {
  min-width: 0;
}

.business-inline-notice-content p {
  margin: 0;
  color: inherit;
  line-height: 1.55;
}

.business-inline-notice-content p + p {
  margin-top: 4px;
}

/* REGALO RECIBIDO */
.gift-receiver-page {
  width: 100%;
  max-width: 1120px;
  margin: 0 auto;
  padding: 28px 22px 46px;
}

.gift-main-panel,
.gift-code-panel,
.gift-steps-panel,
.gift-terms-panel {
  background: #FFFFFF;
  border: 1px solid #efe5dd;
  border-radius: 8px;
  box-shadow: 0 18px 45px rgba(242, 78, 46, 0.08);
}

.gift-panel-header span,
.gift-code-label,
.gift-message-box span,
.gift-terms-panel span {
  display: block;
  color: #F24E2E;
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
}

.gift-code-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}

.gift-receiver-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  align-items: start;
}

.gift-main-panel,
.gift-code-panel,
.gift-terms-panel {
  padding: 22px;
}

.gift-panel-header {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
  /* margin-bottom: 16px; */
}

.gift-panel-header h2,
.gift-code-panel h2,
.gift-terms-panel h2 {
  margin: 5px 0 0;
  color: #1E1E1E;
  font-size: 24px;
  font-weight: 800;
}

.gift-panel-header strong {
  color: #1E1E1E;
  font-size: 22px;
  white-space: nowrap;
}

.gift-main-content {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 16px;
  align-items: start;
}

.gift-main-photo {
  position: relative;
  overflow: hidden;
  border-radius: 8px;
  width: 100%;
  max-width: 168px;
  margin: 0;
  background: #F2EAE4;
}

.gift-main-photo img {
  width: 100%;
  height: auto;
  max-height: 168px;
  display: block;
  -o-object-fit: contain;
     object-fit: contain;
}

.gift-main-photo .business-order-status {
  position: absolute;
  top: 14px;
  right: 14px;
  box-shadow: 0 10px 25px rgba(0,0,0,0.14);
}

.gift-main-intro {
  margin: 0 0 14px;
  color: #6E625B;
  font-size: 16px;
  line-height: 1.55;
}

.gift-business-card {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  padding: 14px;
  border: 1px solid #efe5dd;
  border-radius: 8px;
  background: #FBF7F3;
}

.gift-business-card img {
  width: 72px;
  height: 72px;
  border-radius: 8px;
  -o-object-fit: cover;
     object-fit: cover;
  background: #F2EAE4;
}

.gift-business-card strong,
.gift-detail-list strong,
.gift-step strong {
  display: block;
  color: #1E1E1E;
}

.gift-business-card span,
.gift-business-card p,
.gift-detail-list span,
.gift-code-panel p,
.gift-step p,
.gift-terms-panel li {
  color: #7A7A7A;
}

.gift-business-card p {
  margin: 4px 0 0;
  font-size: 14px;
}

.gift-message-box {
  margin-top: 14px;
  padding: 18px;
  border-radius: 8px;
  background: #FFF4F0;
  border: 1px solid #ffd9ce;
}

.gift-message-box p {
  margin: 8px 0 0;
  color: #4D4540;
  font-size: 18px;
  line-height: 1.45;
}

.gift-detail-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 14px;
}

.gift-detail-list > div {
  padding: 14px;
  border: 1px solid #efe5dd;
  border-radius: 8px;
  background: #FFFFFF;
}

.gift-detail-list i {
  color: #F24E2E;
  margin-bottom: 8px;
}

.gift-detail-list span {
  display: block;
  font-size: 13px;
}

.gift-detail-code-card {
  display: flex;
  flex-direction: column;
}

.gift-detail-list .gift-detail-code-value {
  margin-top: 2px;
  color: #F24E2E;
  font-size: 22px;
  line-height: 1.1;
  letter-spacing: 0.12em;
  text-indent: 0.12em;
  overflow-wrap: anywhere;
  transition: filter 0.2s ease, opacity 0.2s ease;
}

.gift-detail-list .gift-detail-code-value.is-masked {
  filter: blur(6px);
  opacity: 0.86;
}

.gift-detail-code-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.gift-detail-code-actions .btn {
  min-height: 34px;
}

.gift-detail-code-actions .btn-primary,
.gift-detail-code-actions .btn-primary i {
  color: #FFFFFF;
}

.gift-uuid-short {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.gift-detail-link {
  display: inline-flex;
  margin-top: 8px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #F24E2E;
  font-size: 13px;
  font-weight: 800;
}

.gift-detail-link:hover,
.gift-detail-link:focus {
  color: #D84326;
  text-decoration: underline;
}

.gift-uuid-modal-copy {
  margin: 0 0 10px;
  color: #7A7A7A;
}

.gift-uuid-full {
  display: block;
  padding: 12px;
  border: 1px solid #efe5dd;
  border-radius: 8px;
  background: #FBF7F3;
  color: #1E1E1E;
  white-space: normal;
  overflow-wrap: anywhere;
}

.gift-code-panel {
  width: 100%;
}

.gift-code-panel-inline {
  display: none;
  margin-top: 14px;
}

.gift-code-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.gift-code-toggle {
  flex-shrink: 0;
}

.gift-code-panel p {
  margin: 16px 0 0;
  line-height: 1.55;
}

.gift-redeem-code {
  flex-wrap: wrap;
}

.gift-redeem-code span {
  width: 44px;
  height: 50px;
  border-radius: 8px;
}

.gift-code-value {
  display: block;
  margin-top: 18px;
  padding: 16px 18px;
  border: 1px solid #e6d8cc;
  border-radius: 8px;
  background: #FFF7F1;
  color: #F24E2E;
  font-size: clamp(30px, 7vw, 42px);
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.18em;
  text-indent: 0.18em;
  text-align: center;
  overflow-wrap: anywhere;
  transition: filter 0.2s ease, opacity 0.2s ease;
}

.gift-code-value.is-masked {
  filter: blur(8px);
  opacity: 0.86;
}

.gift-steps-panel {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 20px;
  padding: 18px;
}

.gift-step {
  padding: 14px;
  border-radius: 8px;
  background: #FBF7F3;
}

.gift-step span {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  margin-bottom: 12px;
  border-radius: 50%;
  background: #FFE6DE;
  color: #F24E2E;
}

.gift-step p {
  margin: 7px 0 0;
  line-height: 1.5;
}

.gift-terms-panel {
  display: grid;
  grid-template-columns: minmax(180px, 0.35fr) minmax(0, 1fr);
  gap: 18px;
  margin-top: 20px;
}

.gift-terms-panel ul {
  margin: 0;
  padding-left: 20px;
}

.gift-terms-panel li + li {
  margin-top: 7px;
}

.gift-help-list {
  overflow: hidden;
  border: 1px solid #efe5dd;
  border-radius: 8px;
  background: #FFFFFF;
}

.gift-help-row {
  min-height: 52px;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 14px;
  align-items: center;
  gap: 10px;
  padding: 9px 12px;
  color: #1E1E1E;
  text-decoration: none;
  border-bottom: 1px solid #f0ece8;
  transition: background-color 0.18s ease, color 0.18s ease;
}

.gift-help-row:last-child {
  border-bottom: 0;
}

.gift-help-row:hover,
.gift-help-row:focus {
  color: #1E1E1E;
  background: #FFF7F4;
}

.gift-terms-panel .gift-help-icon {
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  background: #FDEDE5;
  color: #F24E2E;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  text-transform: none;
}

.gift-terms-panel .gift-help-icon i {
  width: 16px;
  height: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  text-align: center;
  vertical-align: middle;
}

.gift-help-row strong {
  min-width: 0;
  color: #1E1E1E;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
}

.gift-terms-panel .gift-help-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #625F66;
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
  justify-self: end;
  text-transform: none;
}

[data-bs-theme="dark"] .gift-receiver-page {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .gift-main-panel,
[data-bs-theme="dark"] .gift-code-panel,
[data-bs-theme="dark"] .gift-steps-panel,
[data-bs-theme="dark"] .gift-terms-panel {
  background: #211D1A;
  border-color: #3A302A;
  box-shadow: 0 18px 45px rgba(0,0,0,0.18);
}

[data-bs-theme="dark"] .gift-panel-header h2,
[data-bs-theme="dark"] .gift-panel-header strong,
[data-bs-theme="dark"] .gift-code-panel h2,
[data-bs-theme="dark"] .gift-terms-panel h2,
[data-bs-theme="dark"] .gift-business-card strong,
[data-bs-theme="dark"] .gift-detail-list strong,
[data-bs-theme="dark"] .gift-step strong {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .gift-main-intro,
[data-bs-theme="dark"] .gift-business-card span,
[data-bs-theme="dark"] .gift-business-card p,
[data-bs-theme="dark"] .gift-detail-list span,
[data-bs-theme="dark"] .gift-code-panel p,
[data-bs-theme="dark"] .gift-step p,
[data-bs-theme="dark"] .gift-terms-panel li {
  color: #B8AEA7;
}

[data-bs-theme="dark"] .gift-business-card,
[data-bs-theme="dark"] .gift-detail-list > div,
[data-bs-theme="dark"] .gift-step {
  background: #2A241F;
  border-color: #3A302A;
}

[data-bs-theme="dark"] .gift-message-box {
  background: rgba(242, 78, 46, 0.12);
  border-color: rgba(242, 78, 46, 0.28);
}

[data-bs-theme="dark"] .gift-message-box p {
  color: #F8D8CE;
}

[data-bs-theme="dark"] .gift-detail-link {
  color: #FF8A70;
}

[data-bs-theme="dark"] .gift-uuid-modal-copy {
  color: #B8AEA7;
}

[data-bs-theme="dark"] .gift-uuid-full {
  background: #2A241F;
  border-color: #3A302A;
  color: #F8F4F0;
}

[data-bs-theme="dark"] .gift-code-value {
  background: #332A24;
  border-color: #4A3A31;
  color: #FF8A70;
}

[data-bs-theme="dark"] .gift-detail-list .gift-detail-code-value {
  color: #FF8A70;
}

[data-bs-theme="dark"] .gift-help-list {
  background: #2A241F;
  border-color: #3A302A;
}

[data-bs-theme="dark"] .gift-help-row {
  color: #F8F4F0;
  border-color: #3A302A;
}

[data-bs-theme="dark"] .gift-help-row:hover,
[data-bs-theme="dark"] .gift-help-row:focus {
  color: #F8F4F0;
  background: #332A24;
}

[data-bs-theme="dark"] .gift-help-row strong {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .gift-terms-panel .gift-help-icon {
  background: rgba(242, 78, 46, 0.16);
  color: #FF8A70;
}

[data-bs-theme="dark"] .gift-help-arrow {
  color: #B8AEA7;
}

@media (max-width: 940px) {
  .gift-receiver-grid,
  .gift-main-content,
  .gift-terms-panel {
    grid-template-columns: 1fr;
  }

  .gift-main-photo {
    max-width: 100%;
    margin: 0 auto;
  }
}

@media (max-width: 680px) {
  .gift-receiver-page {
    padding: 22px 16px 34px;
  }

  .gift-code-panel-desktop {
    display: none;
  }

  .gift-code-panel-inline {
    display: block;
  }

  .gift-main-panel,
  .gift-code-panel,
  .gift-terms-panel {
    padding: 18px;
  }

  .gift-code-actions .btn {
    width: 100%;
  }

  .gift-code-head {
    display: grid;
  }

  .gift-code-toggle {
    justify-self: start;
  }

  .gift-main-photo,
  .gift-main-photo img {
    max-height: 320px;
  }

  .gift-panel-header,
  .gift-detail-list,
  .gift-steps-panel {
    grid-template-columns: 1fr;
  }

  .gift-panel-header,
  .gift-steps-panel {
    display: grid;
  }

  .gift-panel-header strong {
    white-space: normal;
  }

  .gift-help-row {
    min-height: 50px;
  }
}

.business-search-filter {
  max-width: 520px;
  margin: 0 0 20px;
}

.business-search-filter-grid {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(190px, 220px) minmax(190px, 220px) auto;
  gap: 12px;
  align-items: end;
  max-width: none;
}

.business-search-filter .form-group {
  margin-bottom: 0;
}

.business-card {
  padding: 22px;
  width: 100%;
  box-sizing: border-box;
}

.business-card-list-item {
  cursor: pointer;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease, background-color 0.18s ease;
}

.business-card-list-item:hover,
.business-card-list-item:focus {
  border-color: #F4B19F;
  background: #FFFDFC;
  box-shadow: 0 10px 26px rgba(242, 78, 46, 0.10);
  transform: translateY(-1px);
  outline: none;
}

.business-empty-state {
  display: flex;
  align-items: center;
  gap: 16px;
  width: 100%;
  padding: 22px;
  margin-bottom: 18px;
  border: 1px dashed #e0d7cf;
  border-radius: 18px;
  background: #FFFFFF;
  box-shadow: 0 8px 22px rgba(53, 37, 28, 0.05);
  color: #5B5B5B;
}

.business-empty-state-icon {
  flex: 0 0 auto;
  width: 46px;
  height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #F24E2E;
  background: #FDEDE5;
  border: 1px solid #f8d7ca;
}

.business-empty-state h2 {
  margin: 0 0 4px;
  font-size: 18px;
  color: #1E1E1E;
}

.business-empty-state p {
  margin: 0;
  color: #7A7A7A;
  line-height: 1.5;
}

.business-card-layout {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr) 32px;
  gap: 18px;
  align-items: start;
}

.business-card-image {
  width: 112px;
  height: 112px;
  border-radius: 16px;
  background: #F8EDE6;
  border: 1px solid #e8e0d8;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

.business-card-content {
  min-width: 0;
}

.business-card-top {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
  margin-bottom: 14px;
}

.business-card-top > div {
  min-width: 0;
}

.business-card-name {
  margin: 0 0 10px;
  font-size: 22px;
  color: #1E1E1E;
}

.business-card-meta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 8px 8px 0;
  padding: 8px 12px;
  color: #F24E2E;
  background: #FDEDE5;
  border: 1px solid #f8d7ca;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 700;
}

.business-card-status {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
}

.business-card-status .status-chip {
  font-size: 12px;
  padding: 8px 12px;
}

.business-card-desc {
  margin: 0 0 18px;
  color: #7A7A7A;
  line-height: 1.65;
}

.business-card-info {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 18px;
}

.business-card-info span {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #5B5B5B;
  font-size: 14px;
}

.business-card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.business-card-actions .btn {
  min-width: 130px;
}

.business-card-arrow {
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  justify-self: end;
  border-radius: 50%;
  color: #8B7B71;
  background: #F8F1EC;
  transition: color 0.18s ease, background-color 0.18s ease, transform 0.18s ease;
}

.business-card-list-item:hover .business-card-arrow,
.business-card-list-item:focus .business-card-arrow {
  color: #FFFFFF;
  background: #F24E2E;
  transform: translateX(2px);
}

[data-bs-theme="dark"] .business-page {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .business-page .business-card-name,
[data-bs-theme="dark"] .business-page .business-card-info strong {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .business-page .business-description,
[data-bs-theme="dark"] .business-page .business-card-desc,
[data-bs-theme="dark"] .business-page .business-card-info span {
  color: #B8AEA7;
}

[data-bs-theme="dark"] .business-page .business-card {
  background: #211D1A;
  border-color: #3A302A;
  box-shadow: 0 18px 45px rgba(0,0,0,0.18);
}

[data-bs-theme="dark"] .business-page .business-card-list-item:hover,
[data-bs-theme="dark"] .business-page .business-card-list-item:focus {
  background: #27211D;
  border-color: #6E4035;
  box-shadow: 0 10px 26px rgba(0,0,0,0.20);
}

[data-bs-theme="dark"] .business-page .business-card-image {
  background: #2A241F;
  border-color: #3A302A;
}

[data-bs-theme="dark"] .business-page .business-card-meta {
  background: rgba(242, 78, 46, 0.12);
  border-color: rgba(242, 78, 46, 0.24);
  color: #FFB49F;
}

[data-bs-theme="dark"] .business-page .business-card-info i {
  color: #FF8A70;
}

[data-bs-theme="dark"] .business-page .business-card-arrow {
  color: #C6B8AD;
  background: #332A24;
}

[data-bs-theme="dark"] .business-page .business-card-list-item:hover .business-card-arrow,
[data-bs-theme="dark"] .business-page .business-card-list-item:focus .business-card-arrow {
  color: #211D1A;
  background: #FF8A70;
}

[data-bs-theme="dark"] .business-page .business-empty-state {
  border-color: rgba(255, 255, 255, 0.14);
  background: #211D1A;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.18);
  color: #D8D0CA;
}

[data-bs-theme="dark"] .business-page .business-empty-state h2 {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .business-page .business-empty-state p {
  color: #B8AEA7;
}

[data-bs-theme="dark"] .business-page .business-empty-state-icon {
  color: #FFB49F;
  background: rgba(242, 78, 46, 0.12);
  border-color: rgba(242, 78, 46, 0.24);
}

[data-bs-theme="dark"] .business-page .status-chip-active {
  background: rgba(54, 179, 126, 0.16);
  color: #7BE0AA;
}

[data-bs-theme="dark"] .business-page .status-chip-inactive {
  background: rgba(242, 78, 46, 0.13);
  color: #FF9E88;
}

[data-bs-theme="dark"] .business-page .btn-outline-secondary {
  background: #2A241F;
  border-color: #4B3E36;
  color: #F8F4F0;
}

[data-bs-theme="dark"] .business-page .btn-outline-secondary:hover {
  background: #332B25;
  border-color: #FF8A70;
  color: #FFB49F;
}

[data-bs-theme="dark"] .business-page .business-inline-notice {
  background: linear-gradient(135deg, rgba(20, 68, 97, 0.42) 0%, rgba(17, 49, 70, 0.62) 100%);
  border-color: rgba(123, 196, 240, 0.3);
  color: #D4EEFF;
  box-shadow: 0 18px 45px rgba(0,0,0,0.18);
}

[data-bs-theme="dark"] .business-page .business-inline-notice-icon {
  background: rgba(123, 196, 240, 0.16);
  color: #8BD5FF;
}

[data-bs-theme="dark"] .business-page .business-search-filter-grid .btn-outline-secondary {
  background: #2A241F;
  border-color: #4B3E36;
  color: #F8F4F0;
}

[data-bs-theme="dark"] .business-page .alert-warning {
  background: rgba(245, 158, 11, 0.13);
  border-color: rgba(245, 158, 11, 0.26);
  color: #F5D39B;
}

[data-bs-theme="dark"] .business-page .alert p {
  color: inherit;
}

.business-dashboard-page {
  width: 100%;
  max-width: 1120px;
  margin: 0 auto;
  padding: 26px 22px 42px;
}

.business-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 9px;
  margin-bottom: 18px;
  color: #8A7D73;
  font-size: 14px;
}

.business-breadcrumb a {
  color: #F24E2E;
  font-weight: 700;
  text-decoration: none;
}

.business-breadcrumb a:hover {
  text-decoration: underline;
}

.business-breadcrumb i {
  color: #C6B8AD;
  font-size: 11px;
}

.business-dashboard-hero {
  background: #FFFFFF;
  border: 1px solid #e8e0d8;
  border-radius: 24px;
  padding: 16px;
  box-shadow: 0 16px 40px rgba(242, 78, 46, 0.08);
}

.business-dashboard-cover {
  position: relative;
  min-height: 162px;
  border-radius: 18px;
  overflow: hidden;
  background: #2A241F;
}

.business-dashboard-cover > img {
  width: 100%;
  height: 100%;
  min-height: 280px;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}

.business-dashboard-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(20, 14, 10, 0.82), rgba(20, 14, 10, 0.38) 52%, rgba(20, 14, 10, 0.08));
}

.business-dashboard-title {
  position: absolute;
  left: 26px;
  right: 26px;
  bottom: 26px;
  display: flex;
  align-items: flex-end;
  gap: 18px;
  color: #FFFFFF;
}

.business-dashboard-title img {
  width: 82px;
  height: 82px;
  min-height: 82px;
  border-radius: 18px;
  border: 3px solid rgba(255,255,255,0.82);
  background: #FFFFFF;
  -o-object-fit: cover;
     object-fit: cover;
  flex-shrink: 0;
}

.business-dashboard-kicker {
  display: inline-block;
  margin-bottom: 8px;
  color: #FFD7CC;
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
}

.business-dashboard-title h1 {
  margin: 0;
  font-size: 36px;
  line-height: 1.05;
  font-weight: 800;
}

.business-dashboard-title p {
  max-width: 620px;
  margin: 10px 0 0;
  color: rgba(255,255,255,0.86);
  line-height: 1.5;
}

.business-dashboard-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 12px;
  padding-top: 16px;
}

.public-business-hero .business-dashboard-actions {
  justify-content: space-between;
  align-items: center;
}

.management-business-hero .business-dashboard-actions {
  justify-content: flex-end;
}

.public-business-badges,
.public-business-action-buttons {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}

.public-business-badge {
  min-height: 38px;
  max-width: min(360px, 100%);
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border: 1px solid #e8e0d8;
  border-radius: 999px;
  background: #FFF8F5;
  color: #5D5149;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
}

.public-business-badge i {
  color: #F24E2E;
  flex: 0 0 auto;
}

.public-business-badge span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.public-business-hero .business-dashboard-cover {
  min-height: 0;
  padding: 22px 24px;
  background: #FFFFFF;
  border: 1px solid #f0e6de;
  overflow: visible;
}

.public-business-hero .business-dashboard-cover > img,
.public-business-hero .business-dashboard-overlay {
  display: none;
}

.public-business-hero .business-dashboard-title {
  position: static;
  color: #241D19;
  align-items: center;
}

.public-business-hero .business-dashboard-title img {
  border-color: #F3E8DF;
  box-shadow: 0 10px 24px rgba(40, 28, 20, 0.08);
}

.public-business-hero .business-dashboard-kicker {
  color: #F24E2E;
}

.public-business-hero .business-dashboard-title p {
  color: #6F6259;
}

.business-dashboard-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin: 18px 0;
}

.business-metric-card,
.business-dashboard-panel {
  background: #FFFFFF;
  border: 1px solid #e8e0d8;
  border-radius: 20px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}

.business-metric-card {
  padding: 18px;
}

.business-metric-icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  margin-bottom: 14px;
  border-radius: 15px;
  background: #FDEDE5;
  color: #F24E2E;
}

.business-metric-card span,
.business-panel-header span {
  display: block;
  color: #8A7D73;
  font-size: 13px;
  font-weight: 700;
}

.business-metric-card strong {
  display: block;
  margin-top: 6px;
  color: #1E1E1E;
  font-size: 28px;
  line-height: 1.1;
}

.business-metric-card small {
  display: block;
  margin-top: 8px;
  color: #6F8A5B;
  font-size: 13px;
  font-weight: 700;
}

.business-dashboard-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(320px, 0.88fr);
  gap: 18px;
}

.business-dashboard-panel {
  padding: 20px;
}

.business-panel-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 16px;
}

.business-panel-header h2 {
  margin: 5px 0 0;
  color: #1E1E1E;
  font-size: 22px;
}

.business-panel-header a {
  color: #F24E2E;
  font-size: 14px;
  font-weight: 800;
  text-decoration: none;
}

.business-orders-list,
.business-products-list {
  display: grid;
  gap: 12px;
}

.business-order-row,
.business-product-mini {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 14px;
  align-items: center;
  padding: 14px;
  background: transparent;
}

.business-order-row strong,
.business-product-mini strong {
  display: block;
  color: #1E1E1E;
}

.business-order-row span,
.business-product-mini span {
  display: block;
  color: #7A7A7A;
  font-size: 13px;
}

.business-order-row b,
.business-product-mini b {
  color: #1E1E1E;
  white-space: nowrap;
}

.business-order-status {
  padding: 7px 11px;
  border-radius: 999px;
  font-size: 12px !important;
  font-weight: 800;
}

.status-paid {
  background: #E8F7EE;
  color: #1E7B49 !important;
}

.status-pending {
  background: #FFF4E8;
  color: #B56B16 !important;
}

.status-redeemed {
  background: #F1EDFA;
  color: #7D64B5 !important;
}

.business-product-mini {
  grid-template-columns: 58px minmax(0, 1fr) auto auto;
}

.business-product-mini img {
  width: 58px;
  height: 58px;
  border-radius: 14px;
  -o-object-fit: cover;
     object-fit: cover;
}

.business-product-mini-compact {
  grid-template-columns: 58px minmax(0, 1fr) auto;
}

.business-product-mini-compact strong,
.business-product-mini-compact span {
  overflow-wrap: anywhere;
}

.business-item-separator {
  grid-column: 1 / -1;
  width: 100%;
  height: 0;
  margin: 2px 0 0;
  border: 0;
  border-top: 1px solid #efe5dd;
}

.business-products-list .business-product-mini:last-child .business-item-separator,
.business-orders-list .business-order-row:last-child .business-item-separator {
  display: none;
}

.business-product-actions {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.business-orders-table {
  display: grid;
  gap: 12px;
}

.business-order-filters {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(190px, 260px) auto;
  gap: 12px;
  align-items: end;
  margin-bottom: 16px;
}

.business-order-filters .form-group {
  margin-bottom: 0;
}

.business-order-detail-row {
  display: grid;
  grid-template-columns: minmax(150px, 1fr) minmax(150px, 1fr) auto auto auto;
  gap: 14px;
  align-items: center;
  padding: 14px;
  border: 1px solid #efe5dd;
  border-radius: 16px;
  background: #FBF7F3;
}

.business-order-detail-row strong {
  display: block;
  color: #1E1E1E;
}

.business-order-detail-row span {
  display: block;
  color: #7A7A7A;
  font-size: 13px;
}

.business-order-detail-row b {
  color: #1E1E1E;
  white-space: nowrap;
}

.private-order-name {
  display: inline-block;
  filter: blur(5px);
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.redeem-order-panel {
  max-width: 760px;
  margin: 0 auto;
}

.redeem-order-copy {
  margin: 0 0 16px;
  color: #7A7A7A;
  line-height: 1.5;
}

.redeem-order-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: end;
}

.redeem-order-preview {
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid #efe5dd;
}

.redeem-order-state {
  margin-top: 18px;
  padding: 22px;
  border: 1px solid #efe5dd;
  border-radius: 18px;
  background: #FBF7F3;
  text-align: center;
}

.redeem-order-state h3 {
  margin: 0 0 8px;
  color: #1E1E1E;
  font-size: 24px;
}

.redeem-order-state p {
  margin: 0;
  color: #7A7A7A;
  line-height: 1.45;
}

.redeem-order-state-error {
  border-color: #F0B8AD;
  background: #FFF4F1;
}

.redeem-order-empty {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 18px;
  padding: 14px 16px;
  border: 1px dashed #e0d7cf;
  border-radius: 12px;
  color: #7A7A7A;
  font-weight: 600;
}

.redeem-order-empty i {
  color: #F24E2E;
}

.redeem-order-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.redeem-order-preview span {
  display: block;
  color: #7A7A7A;
  font-size: 13px;
}

.redeem-order-preview strong {
  display: block;
  margin-top: 4px;
  color: #1E1E1E;
}

.redeem-order-product {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  margin-top: 16px;
  padding: 12px;
  border: 1px solid #efe5dd;
  border-radius: 14px;
  background: #FBF7F3;
}

.redeem-order-product img {
  width: 76px;
  height: 76px;
  border-radius: 10px;
  -o-object-fit: cover;
     object-fit: cover;
}

.redeem-order-product-icon {
  width: 76px;
  height: 76px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  background: #F4E8DE;
  color: #F24E2E;
  font-size: 28px;
}

.redeem-order-product p {
  margin: 4px 0 0;
  color: #7A7A7A;
  font-size: 14px;
  line-height: 1.35;
}

.redeem-order-product b {
  color: #1E1E1E;
  font-size: 16px;
}

.redeem-order-actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 16px;
}

.order-row-meta-link {
  color: #7A7A7A;
  font-size: 13px;
  font-weight: 700;
}

[data-bs-theme="dark"] .business-dashboard-page {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .business-breadcrumb {
  color: #92877F;
}

[data-bs-theme="dark"] .business-breadcrumb a {
  color: #FF8A70;
}

[data-bs-theme="dark"] .business-breadcrumb i {
  color: #5A4D45;
}

[data-bs-theme="dark"] .business-dashboard-hero,
[data-bs-theme="dark"] .business-metric-card,
[data-bs-theme="dark"] .business-dashboard-panel {
  background: #211D1A;
  border-color: #3A302A;
  box-shadow: 0 18px 45px rgba(0,0,0,0.18);
}

[data-bs-theme="dark"] .public-business-hero .business-dashboard-cover {
  background: #27211D;
  border-color: #3A302A;
}

[data-bs-theme="dark"] .public-business-hero .business-dashboard-title {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .public-business-hero .business-dashboard-title p {
  color: #C6B8AD;
}

[data-bs-theme="dark"] .public-business-badge {
  background: #332A24;
  border-color: #4A3B33;
  color: #D9CDC5;
}

[data-bs-theme="dark"] .public-business-badge i {
  color: #FF8A70;
}

[data-bs-theme="dark"] .business-metric-icon {
  background: rgba(242, 78, 46, 0.16);
  color: #FF8A70;
}

[data-bs-theme="dark"] .business-metric-card span,
[data-bs-theme="dark"] .business-panel-header span,
[data-bs-theme="dark"] .business-order-row span,
[data-bs-theme="dark"] .business-product-mini span {
  color: #B8AEA7;
}

[data-bs-theme="dark"] .business-metric-card strong,
[data-bs-theme="dark"] .business-panel-header h2,
[data-bs-theme="dark"] .business-order-row strong,
[data-bs-theme="dark"] .business-order-row b,
[data-bs-theme="dark"] .business-product-mini strong,
[data-bs-theme="dark"] .business-product-mini b {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .business-metric-card small {
  color: #7BE0AA;
}

[data-bs-theme="dark"] .business-panel-header a {
  color: #FF8A70;
}

[data-bs-theme="dark"] .business-order-row,
[data-bs-theme="dark"] .business-product-mini,
[data-bs-theme="dark"] .business-order-detail-row {
  background: #2A241F;
  border-color: #3A302A;
}

[data-bs-theme="dark"] .business-order-detail-row strong,
[data-bs-theme="dark"] .business-order-detail-row b,
[data-bs-theme="dark"] .redeem-order-preview strong {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .business-order-detail-row span,
[data-bs-theme="dark"] .redeem-order-preview span {
  color: #B8AEA7;
}

[data-bs-theme="dark"] .redeem-order-preview {
  border-color: #3A302A;
}

[data-bs-theme="dark"] .redeem-order-state {
  background: #211D1A;
  border-color: #3A302A;
}

[data-bs-theme="dark"] .redeem-order-state h3 {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .redeem-order-state p {
  color: #D4C8BE;
}

[data-bs-theme="dark"] .redeem-order-state-error {
  background: #2A201D;
  border-color: #5D3930;
}

[data-bs-theme="dark"] .redeem-order-empty {
  border-color: #3A302A;
  color: #B8AEA7;
}

[data-bs-theme="dark"] .redeem-order-product {
  background: #2A241F;
  border-color: #3A302A;
}

[data-bs-theme="dark"] .redeem-order-product-icon {
  background: rgba(242, 78, 46, 0.16);
  color: #FF8A70;
}

[data-bs-theme="dark"] .redeem-order-product p {
  color: #B8AEA7;
}

[data-bs-theme="dark"] .redeem-order-product b {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .status-paid {
  background: rgba(54, 179, 126, 0.16);
  color: #7BE0AA !important;
}

[data-bs-theme="dark"] .status-pending {
  background: rgba(245, 158, 11, 0.16);
  color: #FBC26A !important;
}

[data-bs-theme="dark"] .status-redeemed {
  background: rgba(142, 124, 195, 0.18);
  color: #CDBFF2 !important;
}

:is([data-bs-theme="dark"], [data-theme="dark"]) .business-dashboard-page {
  color: var(--tdu-ink);
}

:is([data-bs-theme="dark"], [data-theme="dark"]) .business-dashboard-hero,
:is([data-bs-theme="dark"], [data-theme="dark"]) .business-metric-card,
:is([data-bs-theme="dark"], [data-theme="dark"]) .business-dashboard-panel {
  background: var(--tdu-surface);
  border-color: var(--tdu-hairline);
  box-shadow: none;
}

:is([data-bs-theme="dark"], [data-theme="dark"]) .public-business-hero .business-dashboard-cover {
  background: var(--tdu-surface);
  border-color: var(--tdu-hairline);
}

:is([data-bs-theme="dark"], [data-theme="dark"]) .public-business-hero .business-dashboard-title,
:is([data-bs-theme="dark"], [data-theme="dark"]) .business-panel-header h2,
:is([data-bs-theme="dark"], [data-theme="dark"]) .business-product-mini strong,
:is([data-bs-theme="dark"], [data-theme="dark"]) .business-product-mini b,
:is([data-bs-theme="dark"], [data-theme="dark"]) .business-dashboard-panel p {
  color: var(--tdu-ink);
}

:is([data-bs-theme="dark"], [data-theme="dark"]) .business-breadcrumb,
:is([data-bs-theme="dark"], [data-theme="dark"]) .public-business-hero .business-dashboard-title p,
:is([data-bs-theme="dark"], [data-theme="dark"]) .business-panel-header span,
:is([data-bs-theme="dark"], [data-theme="dark"]) .business-product-mini span {
  color: var(--tdu-ink-2);
}

:is([data-bs-theme="dark"], [data-theme="dark"]) .business-breadcrumb a,
:is([data-bs-theme="dark"], [data-theme="dark"]) .business-panel-header a {
  color: var(--tdu-accent-text);
}

:is([data-bs-theme="dark"], [data-theme="dark"]) .business-breadcrumb i {
  color: var(--tdu-ink-4);
}

:is([data-bs-theme="dark"], [data-theme="dark"]) .business-product-mini {
  background: transparent;
}

:is([data-bs-theme="dark"], [data-theme="dark"]) .business-dashboard-page .btn-outline-secondary {
  background: var(--tdu-surface);
  border-color: var(--tdu-hairline);
  color: var(--tdu-ink);
}

:is([data-bs-theme="dark"], [data-theme="dark"]) .business-dashboard-page .btn-outline-secondary:hover {
  background: var(--tdu-surface-quiet);
  border-color: var(--tdu-hairline-strong);
  color: var(--tdu-ink);
}

:is([data-bs-theme="dark"], [data-theme="dark"]) .business-dashboard-page .alert-warning {
  background: rgba(255, 217, 207, 0.08);
  border-color: var(--tdu-hairline);
  color: var(--tdu-ink);
}

@media (max-width: 760px) {
  .business-order-filters {
    grid-template-columns: 1fr;
  }

  .business-order-detail-row {
    grid-template-columns: 1fr;
    justify-items: start;
  }

  .redeem-order-form {
    grid-template-columns: 1fr;
  }

  .redeem-order-summary {
    grid-template-columns: 1fr;
  }

  .redeem-order-product {
    grid-template-columns: 1fr;
  }

  .redeem-order-actions .btn {
    width: 100%;
  }
}

.purchases-page {
  width: 100%;
  max-width: 1040px;
  margin: 0 auto;
  padding: 26px 22px 42px;
}

.purchases-header {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 18px;
}

.purchases-kicker {
  display: block;
  margin-bottom: 8px;
  color: #F24E2E;
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
}

.purchases-header h1 {
  margin: 0;
  color: #1E1E1E;
  font-size: 34px;
  line-height: 1.1;
  font-weight: 800;
}

.purchases-header p {
  max-width: 620px;
  margin: 10px 0 0;
  color: #7A7A7A;
  line-height: 1.55;
}

.purchases-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-bottom: 18px;
}

.purchase-summary-card {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 18px;
  background: #FFFFFF;
  border: 1px solid #e8e0d8;
  border-radius: 20px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}

.purchase-summary-icon {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  flex-shrink: 0;
  border-radius: 16px;
  background: #FDEDE5;
  color: #F24E2E;
}

.purchase-summary-card small {
  display: block;
  color: #8A7D73;
  font-size: 13px;
  font-weight: 700;
}

.purchase-summary-card strong {
  display: block;
  margin-top: 4px;
  color: #1E1E1E;
  font-size: 27px;
  line-height: 1.1;
}

.purchase-filters {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(190px, 250px) auto;
  gap: 12px;
  align-items: end;
  margin-bottom: 16px;
}

.purchase-filters .form-group {
  margin-bottom: 0;
}

.purchases-list {
  display: grid;
  gap: 12px;
}

.purchase-card {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 14px;
  border: 1px solid #efe5dd;
  border-radius: 18px;
  background: #FBF7F3;
}

.purchase-card-media img {
  width: 76px;
  height: 76px;
  display: block;
  border-radius: 16px;
  -o-object-fit: cover;
     object-fit: cover;
}

.purchase-card-title {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}

.purchase-card-title strong {
  display: block;
  color: #1E1E1E;
  font-size: 17px;
}

.purchase-card-title span:not(.business-order-status),
.purchase-card-meta span {
  color: #7A7A7A;
  font-size: 13px;
}

.purchase-card-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 16px;
}

.purchase-card-meta i {
  color: #F24E2E;
  margin-right: 5px;
}

.purchase-card-side {
  display: grid;
  gap: 10px;
  justify-items: end;
}

.purchase-card-side strong {
  color: #1E1E1E;
  white-space: nowrap;
}

.status-expired {
  background: #F4E8E5;
  color: #9F4C3E !important;
}

.status-scheduled {
  background: #E8F0FF;
  color: #2E61B8 !important;
}

.gift-card {
  align-items: start;
}

.gift-sender-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 10px 0;
}

.gift-sender-avatar {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  flex-shrink: 0;
  overflow: hidden;
  border-radius: 50%;
  background: #FDEDE5;
  color: #F24E2E;
  border: 2px solid #ffffff;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}

.gift-sender-avatar img {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}

.gift-sender-anonymous {
  background: #F2EAE4;
  color: #7A7A7A;
}

.gift-sender-row strong {
  display: block;
  color: #1E1E1E;
  font-size: 14px;
}

.gift-sender-row span {
  display: block;
  color: #7A7A7A;
  font-size: 12px;
}

.gift-message {
  margin: 0 0 10px;
  color: #5B5B5B;
  font-size: 14px;
  line-height: 1.45;
}

.cart-page {
  width: 100%;
  max-width: 1120px;
  margin: 0 auto;
  padding: 26px 22px 42px;
}

.cart-header {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 18px;
}

.cart-header h1 {
  margin: 0;
  color: #1E1E1E;
  font-size: 34px;
  line-height: 1.1;
  font-weight: 800;
}

.cart-header p {
  max-width: 620px;
  margin: 10px 0 0;
  color: #7A7A7A;
  line-height: 1.55;
}

.cart-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 340px);
  gap: 18px;
  align-items: start;
}

.cart-list {
  display: grid;
  gap: 12px;
}

.cart-order-card {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 14px;
  border: 1px solid #efe5dd;
  border-radius: 18px;
  background: #FFFFFF;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}

.cart-order-media img {
  width: 92px;
  height: 92px;
  display: block;
  border-radius: 16px;
  -o-object-fit: cover;
     object-fit: cover;
}

.cart-order-title {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}

.cart-order-title strong {
  display: block;
  color: #1E1E1E;
  font-size: 18px;
}

.cart-order-title span:not(.business-order-status),
.cart-order-meta span {
  color: #7A7A7A;
  font-size: 13px;
}

.cart-order-title i,
.cart-order-meta i {
  color: #F24E2E;
  margin-right: 5px;
}

.cart-order-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 16px;
}

.cart-order-side {
  display: grid;
  gap: 10px;
  justify-items: end;
}

.cart-order-side strong {
  color: #1E1E1E;
  font-size: 18px;
  white-space: nowrap;
}

.cart-order-actions {
  display: flex;
  gap: 8px;
}

.cart-placeholder-section {
  display: grid;
  gap: 14px;
}

.cart-placeholder-header {
  display: flex;
  align-items: center;
}

.cart-placeholder-header .placeholder {
  min-height: 22px;
  border-radius: 999px;
}

.cart-order-card-placeholder {
  pointer-events: none;
}

.cart-order-card-placeholder .placeholder {
  display: inline-block;
  min-height: 14px;
  border-radius: 999px;
}

.cart-placeholder-media {
  width: 92px;
  height: 92px;
  border-radius: 16px;
}

.cart-order-card-placeholder .cart-order-body {
  min-width: 0;
}

.cart-order-card-placeholder .cart-order-meta .placeholder {
  min-height: 13px;
}

.cart-order-card-placeholder .cart-order-side .placeholder {
  min-height: 18px;
}

.cart-placeholder-icon {
  width: 38px;
}

.cart-summary {
  position: sticky;
  top: 18px;
  padding: 18px;
  border: 1px solid #e8e0d8;
  border-radius: 20px;
  background: #FFFFFF;
  box-shadow: 0 14px 34px rgba(242, 78, 46, 0.08);
}

.cart-summary-header,
.cart-summary-row,
.cart-summary-total {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.cart-summary-header {
  padding-bottom: 14px;
  border-bottom: 1px solid #efe5dd;
  margin-bottom: 14px;
}

.cart-summary-header span,
.cart-summary-row span,
.cart-summary-total span {
  color: #7A7A7A;
  font-size: 14px;
  font-weight: 700;
}

.cart-summary-header strong,
.cart-summary-row strong,
.cart-summary-total strong {
  color: #1E1E1E;
}

.cart-summary-row {
  margin-bottom: 12px;
}

.cart-summary-total {
  margin: 16px 0;
  padding-top: 14px;
  border-top: 1px solid #efe5dd;
}

.cart-summary-total strong {
  font-size: 22px;
}

.search-page {
  width: 100%;
  max-width: 1120px;
  margin: 0 auto;
  padding: 26px 22px 42px;
}

.search-page-header {
  margin-bottom: 18px;
}

.search-page-header h1 {
  margin: 0;
  color: #1E1E1E;
  font-size: 34px;
  line-height: 1.1;
  font-weight: 800;
}

.search-page-header p {
  max-width: 620px;
  margin: 10px 0 0;
  color: #7A7A7A;
  line-height: 1.55;
}

.search-page-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  margin-bottom: 18px;
}

.search-page-input-wrap {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 52px;
  padding: 0 16px;
  border: 1px solid #e8e0d8;
  border-radius: 999px;
  background: #FFFFFF;
  color: #7A7A7A;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}

.search-page-input-wrap:focus-within {
  border-color: #F24E2E;
  box-shadow: 0 0 0 2px rgba(242, 78, 46, 0.15);
}

.search-page-input-wrap i {
  color: #F24E2E;
}

.search-page-input-wrap input {
  flex: 1;
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: #1E1E1E;
  font-size: 16px;
}

.search-page-results {
  display: grid;
  gap: 14px;
}

.search-page-empty {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 76px;
  padding: 18px;
  border: 1px dashed #e0d7cf;
  border-radius: 16px;
  background: #FFFFFF;
  color: #7A7A7A;
  font-weight: 700;
}

.search-page-empty i {
  color: #F24E2E;
}

.search-page-count {
  color: #7A7A7A;
  font-size: 14px;
  font-weight: 800;
}

.search-page-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.search-page-card {
  display: grid;
  grid-template-columns: 86px minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 12px;
  border: 1px solid #efe5dd;
  border-radius: 18px;
  background: #FFFFFF;
  color: #1E1E1E;
  text-decoration: none;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}

.search-page-card:hover,
.search-page-card:focus {
  border-color: #F24E2E;
  color: #1E1E1E;
  box-shadow: 0 14px 34px rgba(242, 78, 46, 0.1);
}

.search-page-card img {
  width: 86px;
  height: 86px;
  display: block;
  border-radius: 14px;
  background: #F2EAE4;
  -o-object-fit: cover;
     object-fit: cover;
}

.search-page-card-body {
  min-width: 0;
}

.search-page-card-type {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 8px;
  padding: 6px 9px;
  border-radius: 999px;
  background: #FDEDE5;
  color: #F24E2E;
  font-size: 12px;
  font-weight: 800;
}

.search-page-card strong,
.search-page-card small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.search-page-card strong {
  color: #1E1E1E;
  font-size: 17px;
}

.search-page-card small {
  margin-top: 4px;
  color: #7A7A7A;
  font-size: 13px;
}

.search-page-card-arrow {
  color: #C6B8AD;
}

[data-bs-theme="dark"] .purchases-page {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .purchases-header h1,
[data-bs-theme="dark"] .cart-header h1,
[data-bs-theme="dark"] .search-page-header h1,
[data-bs-theme="dark"] .purchase-summary-card strong,
[data-bs-theme="dark"] .purchase-card-title strong,
[data-bs-theme="dark"] .purchase-card-side strong,
[data-bs-theme="dark"] .cart-order-title strong,
[data-bs-theme="dark"] .cart-order-side strong,
[data-bs-theme="dark"] .cart-summary-header strong,
[data-bs-theme="dark"] .cart-summary-row strong,
[data-bs-theme="dark"] .cart-summary-total strong,
[data-bs-theme="dark"] .search-page-card strong,
[data-bs-theme="dark"] .search-page-input-wrap input,
[data-bs-theme="dark"] .gift-sender-row strong {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .purchases-header p,
[data-bs-theme="dark"] .cart-header p,
[data-bs-theme="dark"] .search-page-header p,
[data-bs-theme="dark"] .purchase-summary-card small,
[data-bs-theme="dark"] .purchase-card-title span:not(.business-order-status),
[data-bs-theme="dark"] .purchase-card-meta span,
[data-bs-theme="dark"] .cart-order-title span:not(.business-order-status),
[data-bs-theme="dark"] .cart-order-meta span,
[data-bs-theme="dark"] .cart-summary-header span,
[data-bs-theme="dark"] .cart-summary-row span,
[data-bs-theme="dark"] .cart-summary-total span,
[data-bs-theme="dark"] .search-page-card small,
[data-bs-theme="dark"] .search-page-empty,
[data-bs-theme="dark"] .search-page-count,
[data-bs-theme="dark"] .gift-sender-row span,
[data-bs-theme="dark"] .gift-message {
  color: #B8AEA7;
}

[data-bs-theme="dark"] .purchase-summary-card {
  background: #211D1A;
  border-color: #3A302A;
  box-shadow: 0 18px 45px rgba(0,0,0,0.18);
}

[data-bs-theme="dark"] .purchase-summary-icon {
  background: rgba(242, 78, 46, 0.16);
  color: #FF8A70;
}

[data-bs-theme="dark"] .purchase-card {
  background: #2A241F;
  border-color: #3A302A;
}

[data-bs-theme="dark"] .cart-order-card,
[data-bs-theme="dark"] .cart-summary,
[data-bs-theme="dark"] .search-page-card,
[data-bs-theme="dark"] .search-page-empty,
[data-bs-theme="dark"] .search-page-input-wrap {
  background: #211D1A;
  border-color: #3A302A;
  box-shadow: 0 18px 45px rgba(0,0,0,0.18);
}

[data-bs-theme="dark"] .search-page-card:hover,
[data-bs-theme="dark"] .search-page-card:focus,
[data-bs-theme="dark"] .search-page-input-wrap:focus-within {
  border-color: #FF8A70;
}

[data-bs-theme="dark"] .search-page-card img {
  background: #2A241F;
}

[data-bs-theme="dark"] .search-page-card-type {
  background: rgba(242, 78, 46, 0.16);
  color: #FF8A70;
}

[data-bs-theme="dark"] .search-page-card-arrow {
  color: #5A4D45;
}

[data-bs-theme="dark"] .cart-summary-header,
[data-bs-theme="dark"] .cart-summary-total {
  border-color: #3A302A;
}

[data-bs-theme="dark"] .purchase-card-meta i,
[data-bs-theme="dark"] .cart-order-title i,
[data-bs-theme="dark"] .cart-order-meta i,
[data-bs-theme="dark"] .search-page-empty i,
[data-bs-theme="dark"] .search-page-input-wrap i {
  color: #FF8A70;
}

[data-bs-theme="dark"] .status-expired {
  background: rgba(159, 76, 62, 0.2);
  color: #E7A293 !important;
}

[data-bs-theme="dark"] .status-scheduled {
  background: rgba(72, 114, 190, 0.2);
  color: #AFC9FF !important;
}

[data-bs-theme="dark"] .gift-sender-avatar {
  border-color: #2A241F;
}

[data-bs-theme="dark"] .gift-sender-anonymous {
  background: #3A302A;
  color: #D4C8BE;
}

@media (max-width: 920px) {
  .business-dashboard-metrics,
  .business-dashboard-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .business-order-detail-row {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }

  .purchases-summary,
  .purchase-filters,
  .business-search-filter-grid,
  .cart-layout,
  .search-page-grid {
    grid-template-columns: 1fr;
  }

  .cart-summary {
    position: static;
  }

  .purchase-card {
    grid-template-columns: 76px minmax(0, 1fr);
  }

  .cart-order-card {
    grid-template-columns: 92px minmax(0, 1fr);
  }

  .purchase-card-side {
    grid-column: 2;
    justify-items: start;
  }

  .cart-order-side {
    grid-column: 2;
    justify-items: start;
  }
}

@media (max-width: 680px) {
  .business-dashboard-page {
    padding: 22px 16px 34px;
  }

  .purchases-page {
    padding: 22px 16px 34px;
  }

  .cart-page {
    padding: 22px 16px 34px;
  }

  .search-page {
    padding: 22px 16px 34px;
  }

  .purchases-header .btn,
  .cart-header .btn,
  .purchase-filters .btn,
  .search-page-form .btn {
    width: 100%;
  }

  .search-page-form {
    grid-template-columns: 1fr;
  }

  .purchase-card {
    grid-template-columns: 76px minmax(0, 1fr);
    align-items: start;
  }

  .cart-order-card {
    grid-template-columns: 92px minmax(0, 1fr);
    align-items: start;
  }

  .purchase-card-media img {
    width: 76px;
    height: 76px;
  }

  .cart-order-media img {
    width: 92px;
    height: 92px;
  }

  .purchase-card-side,
  .cart-order-side {
    grid-column: auto;
    justify-items: stretch;
  }

  .purchase-card-side {
    grid-column: 2;
  }

  .cart-order-side {
    grid-column: 2;
  }

  .cart-order-actions {
    display: grid;
    grid-template-columns: 1fr auto;
  }

  .search-page-card {
    grid-template-columns: 72px minmax(0, 1fr) auto;
  }

  .search-page-card img {
    width: 72px;
    height: 72px;
  }

  .business-dashboard-title {
    left: 18px;
    right: 18px;
    bottom: 18px;
    align-items: flex-start;
  }

  .business-dashboard-title img {
    width: 64px;
    height: 64px;
    min-height: 64px;
  }

  .business-dashboard-title h1 {
    font-size: 28px;
  }

  .business-dashboard-title p {
    font-size: 14px;
  }

  .business-dashboard-actions .btn,
  .public-business-badges,
  .public-business-action-buttons,
  .public-business-badge,
  .business-dashboard-metrics,
  .business-dashboard-grid {
    width: 100%;
  }

  .public-business-hero .business-dashboard-actions {
    align-items: stretch;
  }

  .business-product-mini {
    grid-template-columns: 58px minmax(0, 1fr);
  }

  .business-product-mini b,
  .business-product-actions {
    grid-column: 2;
  }

  .business-product-mini-compact {
    grid-template-columns: 58px minmax(0, 1fr) auto;
  }

  .business-product-mini-compact b {
    grid-column: auto;
    align-self: center;
  }

  .business-product-actions {
    justify-content: flex-start;
  }

  .business-dashboard-metrics,
  .business-dashboard-grid {
    grid-template-columns: 1fr;
  }

  .business-order-row {
    grid-template-columns: minmax(0, 1fr) auto auto;
  }

  .business-order-row b {
    grid-column: auto;
  }

  .business-order-detail-row,
  .business-order-filters,
  .business-card-info,
  .redeem-order-form,
  .redeem-order-summary,
  .redeem-order-product {
    grid-template-columns: 1fr;
  }

  .business-page {
    padding: 22px 16px 34px;
  }

  .business-empty-state {
    align-items: flex-start;
    padding: 18px;
  }

  .business-header-row,
  .business-card-top {
    flex-direction: column;
  }

  .business-card-layout {
    grid-template-columns: 82px minmax(0, 1fr) 30px;
    gap: 14px;
  }

  .business-card-image {
    width: 82px;
    height: 82px;
    border-radius: 14px;
  }

  .create-business-btn,
  .business-card-actions .btn {
    width: 100%;
  }

  .business-card-arrow {
    width: 30px;
    height: 30px;
  }

  .business-order-detail-row .btn,
  .business-order-filters .btn,
  .redeem-order-form .btn,
  .redeem-order-actions .btn {
    width: 100%;
  }

  .redeem-order-product b {
    justify-self: start;
  }

  .redeem-order-actions {
    justify-content: stretch;
  }
}

.form-check-input:checked {
    background-color: #f24e2e;
    border-color: #f24e2e;

}

.dropdown-item.active, .dropdown-item:active {
    color: var(--bs-dropdown-link-active-color);
    text-decoration: none;
    background-color: #f24e2e;
}

.help-page {
  max-width: 1180px;
  margin: 0 auto;
  padding: 28px 20px 44px;
}

.help-hero {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 24px;
}

.help-hero-compact {
  margin-bottom: 20px;
}

.help-hero-copy {
  max-width: 720px;
}

.help-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
  padding: 6px 10px;
  border-radius: 999px;
  background: #FDEDE5;
  color: #F24E2E;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.help-kicker-plain {
  margin-bottom: 24px;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: #F24E2E;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.12em;
}

.help-hero h1 {
  margin: 0 0 10px;
  color: #1E1E1E;
  font-size: clamp(32px, 4vw, 46px);
  line-height: 1.05;
}

.help-hero p {
  margin: 0;
  color: #6F6258;
  font-size: 16px;
  line-height: 1.7;
}

.help-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-bottom: 24px;
}

.help-options-list {
  margin: 34px 0 24px;
  overflow: hidden;
  border: 1px solid #efe5dd;
  border-radius: 24px;
  background: #FFFFFF;
  box-shadow: 0 18px 40px rgba(38, 26, 20, 0.06);
}

.help-option-row {
  min-height: 78px;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) 18px;
  align-items: center;
  gap: 14px;
  padding: 16px 18px;
  color: #1E1E1E;
  text-decoration: none;
  border-bottom: 1px solid #f0ece8;
  transition: background-color 0.18s ease, color 0.18s ease;
}

.help-option-row:last-child {
  border-bottom: 0;
}

.help-option-row:hover,
.help-option-row:focus {
  color: #1E1E1E;
  background: #FFF7F4;
}

.help-option-icon {
  width: 44px;
  height: 44px;
  display: inline-grid;
  place-items: center;
  border-radius: 16px;
  background: #FDEDE5;
  color: #F24E2E;
  font-size: 18px;
}

.help-option-row strong {
  min-width: 0;
  color: #1E1E1E;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.25;
}

.help-option-arrow {
  color: #625F66;
  font-size: 14px;
  justify-self: end;
}

.help-card,
.help-article-card,
.help-tip-card,
.help-support-panel,
.help-highlight {
  border: 1px solid #efe5dd;
  border-radius: 24px;
  background: #FFFFFF;
  box-shadow: 0 18px 40px rgba(38, 26, 20, 0.06);
}

.help-card {
  display: grid;
  gap: 12px;
  padding: 24px;
  color: #1E1E1E;
  text-decoration: none;
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.help-card:hover,
.help-card:focus {
  color: #1E1E1E;
  border-color: #F24E2E;
  box-shadow: 0 24px 54px rgba(242, 78, 46, 0.14);
  transform: translateY(-2px);
}

.help-card-support {
  background:
    radial-gradient(circle at top right, rgba(242, 78, 46, 0.12), transparent 36%),
    #FFFFFF;
}

.help-card-icon,
.help-tip-icon {
  width: 52px;
  height: 52px;
  display: inline-grid;
  place-items: center;
  border-radius: 18px;
  background: #FDEDE5;
  color: #F24E2E;
  font-size: 22px;
}

.help-card strong,
.help-article-card h2,
.help-tip-card h2,
.help-highlight h2 {
  color: #1E1E1E;
}

.help-card strong {
  font-size: 22px;
  line-height: 1.2;
}

.help-card p,
.help-article-card p,
.help-tip-card p,
.help-highlight p,
.help-faq-item p,
.help-ticket-list-item p,
.help-support-inline-state,
.help-ticket-thread-meta {
  color: #6F6258;
}

.help-card p,
.help-highlight p,
.help-tip-card p,
.help-article-card p {
  margin: 0;
  line-height: 1.7;
}

.help-card-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 4px;
  color: #F24E2E;
  font-size: 14px;
  font-weight: 900;
}

.help-highlight {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 26px;
  margin-bottom: 12px;
}

.help-highlight h2 {
  margin: 0 0 8px;
  font-size: 28px;
}

.help-faq-list,
.help-article-grid,
.help-tips-grid {
  display: grid;
  gap: 16px;
}

.help-article-grid,
.help-tips-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.help-faq-item {
  padding: 18px 20px;
  border: 1px solid #efe5dd;
  border-radius: 20px;
  background: #FFFFFF;
  box-shadow: 0 14px 34px rgba(38, 26, 20, 0.04);
}

.help-faq-item summary {
  cursor: pointer;
  list-style: none;
  color: #1E1E1E;
  font-size: 18px;
  font-weight: 800;
}

.help-faq-item summary::-webkit-details-marker {
  display: none;
}

.help-faq-item p {
  margin: 12px 0 0;
  line-height: 1.7;
}

.help-article-card,
.help-tip-card {
  padding: 22px;
}

.help-article-step {
  display: inline-flex;
  margin-bottom: 12px;
  color: #F24E2E;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.help-article-card h2,
.help-tip-card h2 {
  margin: 0 0 10px;
  font-size: 24px;
  line-height: 1.2;
}

.help-simple-steps {
  margin: 14px 0 0;
  padding-left: 20px;
  color: #3B302A;
  line-height: 1.8;
}

.help-support-shell {
  display: grid;
  grid-template-columns: 340px minmax(0, 1fr);
  gap: 18px;
}

.help-support-panel {
  padding: 20px;
}

.help-support-panel-head,
.help-support-thread-head,
.help-ticket-list-top,
.help-ticket-list-bottom,
.help-ticket-form-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.help-support-thread-head {
  padding-bottom: 14px;
  border-bottom: 1px solid #efe5dd;
}

.help-support-label {
  display: block;
  margin-bottom: 4px;
  color: #A18F83;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.help-support-panel-head strong,
.help-support-thread-head strong {
  color: #1E1E1E;
  font-size: 24px;
  line-height: 1.2;
}

.help-support-filter {
  margin: 18px 0 14px;
}

.help-ticket-form,
.help-ticket-reply {
  display: grid;
  gap: 14px;
  margin-bottom: 14px;
}

.help-support-inline-state {
  padding: 14px 0;
  font-size: 15px;
}

.help-ticket-list {
  display: grid;
  gap: 10px;
}

.help-ticket-list-item {
  width: 100%;
  display: grid;
  gap: 8px;
  padding: 14px;
  border: 1px solid #efe5dd;
  border-radius: 18px;
  background: #FFF9F5;
  text-align: left;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.help-ticket-list-item:hover,
.help-ticket-list-item.is-active {
  border-color: #F24E2E;
  background: #FFFFFF;
  box-shadow: 0 16px 32px rgba(242, 78, 46, 0.1);
}

.help-ticket-list-item strong {
  color: #1E1E1E;
  font-size: 15px;
}

.help-ticket-list-item p {
  margin: 0;
  font-size: 14px;
  line-height: 1.6;
}

.help-ticket-list-bottom {
  color: #8D7A6D;
  font-size: 12px;
}

.help-ticket-thread-meta {
  display: block;
  margin-top: 6px;
  font-size: 13px;
}

.help-ticket-messages {
  display: grid;
  gap: 12px;
  margin: 18px 0;
  min-height: 220px;
  max-height: 520px;
  overflow: auto;
}

.help-ticket-message {
  display: flex;
  width: 100%;
  align-items: flex-end;
  gap: 10px;
}

.help-ticket-message.is-user {
  flex-direction: row-reverse;
  justify-content: flex-start;
}

.help-ticket-message.is-admin {
  justify-content: flex-start;
}

.help-ticket-avatar {
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  overflow: hidden;
}

.help-ticket-avatar-user {
  background: #F7E7DE;
  color: #A34F39;
}

.help-ticket-avatar-support {
  background: #FFF1E7;
  border: 1px solid #f3ddd0;
  color: #D16643;
  font-size: 14px;
}

.help-ticket-avatar-image {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}

.help-ticket-avatar-fallback {
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
}

.help-ticket-message-bubble {
  max-width: min(420px, 82%);
  padding: 12px 14px;
  border-radius: 16px;
  background: #FFF4ED;
  border: 1px solid #f3ddd0;
}

.help-ticket-message.is-user .help-ticket-message-bubble {
  background: #F24E2E;
  border-color: #F24E2E;
}

.help-ticket-message-bubble p {
  margin: 0;
  color: #2E241F;
  line-height: 1.45;
  white-space: normal;
}

[data-bs-theme="dark"] .help-ticket-message-bubble p {
  margin: 0;
  color: #B8AEA7;
  line-height: 1.45;
  white-space: normal;
}

.help-ticket-message-time {
  display: block;
  margin-top: 7px;
  color: #8D7A6D;
  font-size: 10px;
  line-height: 1.2;
  opacity: 0.86;
}

.help-ticket-message.is-user .help-ticket-message-bubble p,
.help-ticket-message.is-user .help-ticket-message-time {
  color: #FFFFFF;
}

[data-bs-theme="dark"] .help-page {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .help-card,
[data-bs-theme="dark"] .help-options-list,
[data-bs-theme="dark"] .help-article-card,
[data-bs-theme="dark"] .help-tip-card,
[data-bs-theme="dark"] .help-support-panel,
[data-bs-theme="dark"] .help-highlight,
[data-bs-theme="dark"] .help-faq-item,
[data-bs-theme="dark"] .help-ticket-list-item {
  background: #211D1A;
  border-color: #3A302A;
  box-shadow: 0 18px 45px rgba(0,0,0,0.18);
}

[data-bs-theme="dark"] .help-option-row {
  color: #F8F4F0;
  border-color: #3A302A;
}

[data-bs-theme="dark"] .help-option-row:hover,
[data-bs-theme="dark"] .help-option-row:focus {
  color: #F8F4F0;
  background: #2A241F;
}

[data-bs-theme="dark"] .help-option-row strong {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .help-option-icon {
  background: rgba(242, 78, 46, 0.16);
  color: #FF8A70;
}

[data-bs-theme="dark"] .help-option-arrow {
  color: #B8AEA7;
}

[data-bs-theme="dark"] .help-card-support {
  background:
    radial-gradient(circle at top right, rgba(255, 138, 112, 0.12), transparent 36%),
    #211D1A;
}

[data-bs-theme="dark"] .help-hero h1,
[data-bs-theme="dark"] .help-card strong,
[data-bs-theme="dark"] .help-article-card h2,
[data-bs-theme="dark"] .help-tip-card h2,
[data-bs-theme="dark"] .help-highlight h2,
[data-bs-theme="dark"] .help-faq-item summary,
[data-bs-theme="dark"] .help-support-panel-head strong,
[data-bs-theme="dark"] .help-support-thread-head strong,
[data-bs-theme="dark"] .help-ticket-list-item strong {
  color: #F8F4F0;
}

[data-bs-theme="dark"] .help-hero p,
[data-bs-theme="dark"] .help-card p,
[data-bs-theme="dark"] .help-highlight p,
[data-bs-theme="dark"] .help-tip-card p,
[data-bs-theme="dark"] .help-article-card p,
[data-bs-theme="dark"] .help-faq-item p,
[data-bs-theme="dark"] .help-support-inline-state,
[data-bs-theme="dark"] .help-ticket-thread-meta,
[data-bs-theme="dark"] .help-ticket-list-item p,
[data-bs-theme="dark"] .help-ticket-list-bottom,
[data-bs-theme="dark"] .help-simple-steps {
  color: #B8AEA7;
}

[data-bs-theme="dark"] .help-kicker,
[data-bs-theme="dark"] .help-card-icon,
[data-bs-theme="dark"] .help-tip-icon {
  background: rgba(242, 78, 46, 0.16);
  color: #FF8A70;
}

[data-bs-theme="dark"] .help-kicker-plain {
  background: transparent;
  color: #FF8A70;
}

[data-bs-theme="dark"] .help-card-link,
[data-bs-theme="dark"] .help-article-step {
  color: #FF8A70;
}

[data-bs-theme="dark"] .help-support-thread-head {
  border-color: #3A302A;
}

[data-bs-theme="dark"] .help-ticket-list-item.is-active,
[data-bs-theme="dark"] .help-ticket-list-item:hover {
  border-color: #FF8A70;
}

[data-bs-theme="dark"] .help-ticket-message-bubble {
  background: #2A241F;
  border-color: #3A302A;
}

[data-bs-theme="dark"] .help-ticket-message.is-user .help-ticket-message-bubble {
  background: #F24E2E;
  border-color: #F24E2E;
}

[data-bs-theme="dark"] .help-ticket-avatar-user {
  background: #3A302A;
  color: #FAD6C7;
}

[data-bs-theme="dark"] .help-ticket-avatar-support {
  background: #2A241F;
  border-color: #3A302A;
  color: #FFB093;
}

@media (max-width: 920px) {
  .help-grid,
  .help-article-grid,
  .help-tips-grid,
  .help-support-shell {
    grid-template-columns: 1fr;
  }

  .help-support-shell {
    gap: 14px;
  }
}

@media (max-width: 680px) {
  .help-page {
    padding: 22px 16px 34px;
  }

  .help-hero,
  .help-highlight,
  .help-support-panel-head,
  .help-support-thread-head,
  .help-ticket-form-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .help-hero .btn,
  .help-highlight .btn,
  .help-support-panel .btn,
  .help-ticket-reply .btn {
    width: 100%;
  }

  .help-card,
  .help-article-card,
  .help-tip-card,
  .help-support-panel,
  .help-highlight,
  .help-options-list {
    border-radius: 20px;
  }

  .help-options-list {
    margin-top: 26px;
  }

  .help-option-row {
    min-height: 76px;
    grid-template-columns: 48px minmax(0, 1fr) 18px;
    gap: 14px;
    padding: 16px;
  }

  .help-option-icon {
    width: 44px;
    height: 44px;
    border-radius: 16px;
    font-size: 18px;
  }

  .help-option-row strong {
    font-size: 16px;
  }

  .help-option-arrow {
    font-size: 14px;
  }

  .help-hero h1 {
    font-size: 34px;
  }

  .help-ticket-message-bubble {
    max-width: 100%;
  }
}

.help-public-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.help-public-copy {
  margin: 0 0 16px;
  color: #6F6258;
  line-height: 1.7;
}

.help-ticket-page-shell {
  max-width: 920px;
  margin: 0 auto;
}

.help-ticket-guest-form {
  margin: 16px 0 4px;
  padding: 16px;
  border: 1px dashed #e6d6ca;
  border-radius: 18px;
  background: #FFF9F5;
}

[data-bs-theme="dark"] .help-public-copy {
  color: #B8AEA7;
}

[data-bs-theme="dark"] .help-ticket-guest-form {
  background: #2A241F;
  border-color: #4B3D35;
}

@media (max-width: 920px) {
  .help-public-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 980px) {
  .profile-edit-page {
    padding: 22px 16px 34px;
  }

  .profile-edit-identity {
    grid-template-columns: 1fr;
    align-items: start;
    margin-top: -44px;
    padding: 0 18px 22px;
  }

  .profile-edit-status {
    min-width: 0;
  }

  .profile-edit-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .profile-edit-hero-card,
  .profile-edit-panel {
    border-radius: 24px;
  }

  .profile-edit-cover {
    min-height: 124px;
  }

  .profile-edit-avatar,
  .profile-edit-avatar-lg {
    width: 96px;
    height: 96px;
    border-radius: 24px;
  }

  .profile-edit-avatar-fallback {
    font-size: 34px;
  }

  .profile-edit-panel {
    padding: 20px;
  }

  .profile-edit-avatar-card,
  .profile-edit-fields,
  .profile-edit-fields-geo {
    grid-template-columns: 1fr;
  }

  .profile-edit-panel-head h2 {
    font-size: 24px;
  }

  .profile-edit-location-summary strong {
    font-size: 18px;
  }

  .profile-edit-actions {
    flex-direction: column-reverse;
    padding: 0;
  }

  .profile-edit-cancel,
  .profile-edit-submit {
    width: 100%;
  }
}

.tagify__tag__removeBtn {
font: 20px/1 Arial;
}

/* Dark mode soft palette override */
[data-bs-theme="dark"] {
  --tdb-dark-page: #282522;
  --tdb-dark-surface: #34302c;
  --tdb-dark-surface-raised: #3b3631;
  --tdb-dark-surface-muted: #423b35;
  --tdb-dark-border: #554a42;
  --tdb-dark-border-soft: #4a423c;
  --tdb-dark-text: #F8F4F0;
  --tdb-dark-muted: #D1C7BF;
  --tdb-dark-subtle: #B9ADA4;
}

[data-bs-theme="dark"] body,
body[data-bs-theme="dark"],
[data-bs-theme="dark"] .login-page,
[data-bs-theme="dark"] .logintry-page,
[data-bs-theme="dark"] .deals-web-layout,
[data-bs-theme="dark"] .product-page,
[data-bs-theme="dark"] .help-page {
  background: var(--tdb-dark-page);
  color: var(--tdb-dark-text);
}

[data-bs-theme="dark"] .navbar,
[data-bs-theme="dark"] .mobile-header-offcanvas {
  background-color: var(--tdb-dark-surface) !important;
  box-shadow: 0 2px 10px rgba(24, 20, 18, 0.28);
}

[data-bs-theme="dark"] .header-icon-btn,
[data-bs-theme="dark"] .header-action-btn,
[data-bs-theme="dark"] #bs5themeswitch1-theme,
[data-bs-theme="dark"] .header-user-toggle,
[data-bs-theme="dark"] .header-location-btn,
[data-bs-theme="dark"] .user-menu-toggle,
[data-bs-theme="dark"] .login-card,
[data-bs-theme="dark"] .logintry-card,
[data-bs-theme="dark"] .google-btn,
[data-bs-theme="dark"] .deals-sidebar,
[data-bs-theme="dark"] .business-card,
[data-bs-theme="dark"] .product-card,
[data-bs-theme="dark"] .geo-modal,
[data-bs-theme="dark"] .product-back,
[data-bs-theme="dark"] .product-selected-card,
[data-bs-theme="dark"] .send-options-card,
[data-bs-theme="dark"] .schedule-card,
[data-bs-theme="dark"] .order-card,
[data-bs-theme="dark"].profile-page .profile-card,
[data-bs-theme="dark"] .profile-page .profile-card,
[data-bs-theme="dark"].profile-page .logout-card,
[data-bs-theme="dark"] .profile-page .logout-card,
[data-bs-theme="dark"] .help-card,
[data-bs-theme="dark"] .help-article-card,
[data-bs-theme="dark"] .help-tip-card,
[data-bs-theme="dark"] .help-support-panel,
[data-bs-theme="dark"] .help-highlight,
[data-bs-theme="dark"] .mp-page,
[data-bs-theme="dark"] .mp-success-page {
  background: var(--tdb-dark-surface);
  border-color: var(--tdb-dark-border-soft);
}

[data-bs-theme="dark"] .search-autocomplete,
[data-bs-theme="dark"] .user-menu .dropdown-menu,
[data-bs-theme="dark"] .geo-picker .tagify__dropdown__wrapper,
[data-bs-theme="dark"] .whatsapp-country-menu {
  background: var(--tdb-dark-surface-raised);
  border-color: var(--tdb-dark-border);
  box-shadow: 0 18px 45px rgba(24, 20, 18, 0.26);
}

[data-bs-theme="dark"] .search-wrapper,
[data-bs-theme="dark"] .input-box,
[data-bs-theme="dark"] .new-business-card .business-dropzone,
[data-bs-theme="dark"] .filter-group input,
[data-bs-theme="dark"] .filter-group select,
[data-bs-theme="dark"] .geo-picker .tagify,
[data-bs-theme="dark"] .geo-picker .form-select,
[data-bs-theme="dark"] .send-option,
[data-bs-theme="dark"] .terms-option,
[data-bs-theme="dark"] .schedule-card .form-control,
[data-bs-theme="dark"] .whatsapp-country-trigger,
[data-bs-theme="dark"] .product-image,
[data-bs-theme="dark"] .order-expired,
[data-bs-theme="dark"] .order-business-strip,
[data-bs-theme="dark"] .order-message-box,
[data-bs-theme="dark"] .order-code-shell,
[data-bs-theme="dark"].profile-page .profile-item,
[data-bs-theme="dark"] .profile-page .profile-item,
[data-bs-theme="dark"].profile-page .logout-link,
[data-bs-theme="dark"] .profile-page .logout-link,
[data-bs-theme="dark"] .help-ticket-guest-form,
[data-bs-theme="dark"] .form-control {
  background: var(--tdb-dark-surface-raised);
  border-color: var(--tdb-dark-border);
  color: var(--tdb-dark-text);
}

[data-bs-theme="dark"] .filter-chip,
[data-bs-theme="dark"] .mobile-filter-btn,
[data-bs-theme="dark"] .product-check-input,
[data-bs-theme="dark"] .auth-success-email,
[data-bs-theme="dark"] .auth-form-message.is-info,
[data-bs-theme="dark"] .redeem-code span,
[data-bs-theme="dark"] .order-code-mask {
  background: var(--tdb-dark-surface-muted);
  border-color: var(--tdb-dark-border);
}

[data-bs-theme="dark"] .navbar-brand,
[data-bs-theme="dark"] .nav-link,
[data-bs-theme="dark"] .mobile-offcanvas-link,
[data-bs-theme="dark"] .logintry-card h1,
[data-bs-theme="dark"] .login-hero h1,
[data-bs-theme="dark"] .login-card h2,
[data-bs-theme="dark"] .deals-sidebar h3,
[data-bs-theme="dark"] .filter-group label,
[data-bs-theme="dark"] .filter-chip,
[data-bs-theme="dark"] .product-info h4,
[data-bs-theme="dark"] .product-info strong,
[data-bs-theme="dark"] .product-header h1,
[data-bs-theme="dark"] .order-header h5,
[data-bs-theme="dark"] .order-header strong,
[data-bs-theme="dark"] .order-hero-copy h2,
[data-bs-theme="dark"] .order-price,
[data-bs-theme="dark"] .order-business-strip strong,
[data-bs-theme="dark"] .order-meta-grid strong,
[data-bs-theme="dark"] .order-code-head strong,
[data-bs-theme="dark"].profile-page .profile-name,
[data-bs-theme="dark"] .profile-page .profile-name,
[data-bs-theme="dark"].profile-page .item-title,
[data-bs-theme="dark"] .profile-page .item-title,
[data-bs-theme="dark"] .help-page h1,
[data-bs-theme="dark"] .help-page h2,
[data-bs-theme="dark"] .help-page h3,
[data-bs-theme="dark"] .help-page h4,
[data-bs-theme="dark"] .help-page strong {
  color: var(--tdb-dark-text);
}

[data-bs-theme="dark"] .search-input::-moz-placeholder {
  color: var(--tdb-dark-muted);
}

[data-bs-theme="dark"] .search-input::placeholder,
[data-bs-theme="dark"] .search-input::-moz-placeholder,
[data-bs-theme="dark"] .logintry-card p,
[data-bs-theme="dark"] .login-hero p,
[data-bs-theme="dark"] .form-group label,
[data-bs-theme="dark"] .field-help,
[data-bs-theme="dark"] .auth-card-copy,
[data-bs-theme="dark"] .product-info p,
[data-bs-theme="dark"] .product-header p,
[data-bs-theme="dark"] .product-meta span,
[data-bs-theme="dark"] .order-header p,
[data-bs-theme="dark"] .order-meta,
[data-bs-theme="dark"] .order-hero-copy p,
[data-bs-theme="dark"] .order-business-strip span,
[data-bs-theme="dark"] .order-meta-grid span,
[data-bs-theme="dark"] .order-code-head span,
[data-bs-theme="dark"] .order-code-shell p,
[data-bs-theme="dark"].profile-page .profile-handle,
[data-bs-theme="dark"] .profile-page .profile-handle,
[data-bs-theme="dark"].profile-page .profile-email,
[data-bs-theme="dark"] .profile-page .profile-email,
[data-bs-theme="dark"].profile-page .item-subtitle,
[data-bs-theme="dark"] .profile-page .item-subtitle,
[data-bs-theme="dark"] .help-public-copy {
  color: var(--tdb-dark-muted);
}

[data-bs-theme="dark"].profile-page .profile-section-label,
[data-bs-theme="dark"] .profile-page .profile-section-label,
[data-bs-theme="dark"].profile-page .item-chevron,
[data-bs-theme="dark"] .profile-page .item-chevron,
[data-bs-theme="dark"] .whatsapp-country-trigger-copy small,
[data-bs-theme="dark"] .whatsapp-country-option-copy small,
[data-bs-theme="dark"] .whatsapp-country-trigger i,
[data-bs-theme="dark"] .search-autocomplete-copy small,
[data-bs-theme="dark"] .search-autocomplete-state {
  color: var(--tdb-dark-subtle);
}

[data-bs-theme="dark"] .btn-outline-secondary,
[data-bs-theme="dark"] .mobile-theme-switch,
[data-bs-theme="dark"] .geo-modal .modal-header,
[data-bs-theme="dark"] .geo-modal .modal-footer,
[data-bs-theme="dark"] .order-payment-result + .order-payment-result,
[data-bs-theme="dark"] .order-qr-box,
[data-bs-theme="dark"] .order-meta-grid,
[data-bs-theme="dark"] .order-meta-grid > div {
  border-color: var(--tdb-dark-border);
}

[data-bs-theme="dark"] .btn-outline-secondary:hover,
[data-bs-theme="dark"].profile-page .profile-item:hover,
[data-bs-theme="dark"] .profile-page .profile-item:hover,
[data-bs-theme="dark"] .whatsapp-country-option:hover,
[data-bs-theme="dark"] .whatsapp-country-option:focus-visible,
[data-bs-theme="dark"] .whatsapp-country-option.is-selected {
  background: var(--tdb-dark-surface-muted);
  border-color: #6a5c52;
}
/* Home business cards without collapse */
.deals-business-list {
  display: grid;
  gap: 20px;
}

.deals-business-card {
  background: #FFFFFF;
  border: 1px solid #d9e8f4;
  border-radius: 12px;
  padding: 14px;
  box-shadow: 0 10px 24px rgba(46, 78, 104, 0.06);
  margin-bottom: 25px;
}

.deals-business-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 52px;
  padding: 0 0 12px;
  border-bottom: 1px solid #d9e8f4;
}

.deals-business-identity {
  display: flex;
  align-items: center;
  min-width: 0;
  gap: 12px;
}

.deals-business-link {
  color: inherit;
  text-decoration: none;
}

.deals-business-link:hover h2,
.deals-business-link:focus h2 {
  color: #F24E2E;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.deals-business-avatar {
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
  border: 1px solid #d9e8f4;
  background: #F4F8FB;
}

.deals-business-header h2 {
  margin: 0;
  color: #4F6576;
  font-size: 16px;
  line-height: 1.2;
  font-weight: 800;
}

.deals-business-header span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin-top: 3px;
  color: #2B87B9;
  font-size: 12px;
  line-height: 1.2;
  font-weight: 700;
}

.deals-business-menu {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #16466B;
}

.deals-business-menu:hover,
.deals-business-menu:focus {
  background: #EEF7FC;
  color: #F24E2E;
}

.deals-products-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  padding-top: 14px;
}

.deals-product-card {
  position: relative;
  display: grid;
  grid-template-columns: 86px minmax(0, 1fr);
  grid-template-rows: 1fr auto;
  gap: 10px 12px;
  min-height: 126px;
  padding: 12px;
  border: 1px solid #e2eef7;
  border-radius: 10px;
  background: #FFFFFF;
  box-shadow: 0 4px 12px rgba(46, 78, 104, 0.04);
}

.deals-product-card:hover,
.deals-product-card:focus-within {
  border-color: #BFD9EC;
  box-shadow: 0 8px 18px rgba(46, 78, 104, 0.08);
}

.deals-product-card img {
  width: 86px;
  height: 108px;
  grid-row: 1 / span 2;
  border-radius: 8px;
  -o-object-fit: cover;
     object-fit: cover;
  background: #F2EAE4;
}

.deals-product-info {
  min-width: 0;
  padding-right: 34px;
}

.deals-product-info h4 {
  margin: 0 0 6px;
  color: #17364D;
  font-size: 13px;
  line-height: 1.25;
  font-weight: 800;
}

.deals-product-info strong {
  display: block;
  margin-bottom: 8px;
  color: #05A884;
  font-size: 15px;
  line-height: 1.2;
  font-weight: 900;
}

.deals-product-info p {
  margin: 0;
  color: #526879;
  font-size: 12px;
  line-height: 1.45;
}

.deals-product-buy {
  justify-self: end;
  align-self: end;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 32px;
  border: 1px solid #f24e2e;
  border-radius: 999px;
  background: #FFFFFF;
  color: #F24E2E;
  padding: 7px 12px;
  font-size: 12px;
  line-height: 1;
  font-weight: 800;
  white-space: nowrap;
}

.deals-product-buy:hover,
.deals-product-buy:focus {
  background: #FFE6DE;
}

.deals-product-menu {
  position: absolute;
  top: 8px;
  right: 8px;
  z-index: 2;
}

.deals-product-menu-toggle {
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.9);
  color: #16466B;
  box-shadow: 0 2px 8px rgba(46, 78, 104, 0.12);
}

.deals-product-menu-toggle:hover,
.deals-product-menu-toggle:focus {
  background: #EEF7FC;
  color: #F24E2E;
}

.deals-product-dropdown {
  right: 0;
  left: auto;
  min-width: 168px;
  max-width: calc(100vw - 24px);
  padding: 6px;
  border: 1px solid #e2eef7;
  border-radius: 10px;
  box-shadow: 0 14px 34px rgba(46, 78, 104, 0.16);
}

.deals-product-dropdown .dropdown-item {
  display: flex;
  align-items: center;
  gap: 10px;
  border-radius: 8px;
  color: #17364D;
  font-size: 13px;
  font-weight: 600;
}

.deals-product-dropdown .dropdown-item i {
  width: 16px;
  color: #F24E2E;
  text-align: center;
}

.deals-product-dropdown .dropdown-item:hover,
.deals-product-dropdown .dropdown-item:focus {
  background: #FFE6DE;
  color: #1E1E1E;
}

[data-bs-theme="dark"] .deals-business-card,
[data-bs-theme="dark"] .deals-product-card {
  background: var(--tdb-dark-surface);
  border-color: var(--tdb-dark-border-soft);
  box-shadow: 0 10px 24px rgba(24, 20, 18, 0.16);
}

[data-bs-theme="dark"] .deals-business-header {
  border-bottom-color: var(--tdb-dark-border);
}

[data-bs-theme="dark"] .deals-business-avatar,
[data-bs-theme="dark"] .deals-product-card img {
  background: var(--tdb-dark-surface-raised);
  border-color: var(--tdb-dark-border);
}

[data-bs-theme="dark"] .deals-business-link:hover h2,
[data-bs-theme="dark"] .deals-business-link:focus h2 {
  color: #FF8A70;
}

[data-bs-theme="dark"] .deals-business-header h2,
[data-bs-theme="dark"] .deals-product-info h4 {
  color: var(--tdb-dark-text);
}

[data-bs-theme="dark"] .deals-business-header span {
  color: #FF8A70;
}

[data-bs-theme="dark"] .deals-business-menu {
  color: var(--tdb-dark-muted);
}

[data-bs-theme="dark"] .deals-business-menu:hover,
[data-bs-theme="dark"] .deals-business-menu:focus,
[data-bs-theme="dark"] .deals-product-card:hover,
[data-bs-theme="dark"] .deals-product-card:focus-within {
  background: var(--tdb-dark-surface-raised);
  color: #FF8A70;
}

[data-bs-theme="dark"] .deals-product-info p {
  color: var(--tdb-dark-muted);
}

[data-bs-theme="dark"] .deals-product-buy {
  background: transparent;
  color: #FF8A70;
  border-color: #F24E2E;
}

[data-bs-theme="dark"] .deals-product-buy:hover,
[data-bs-theme="dark"] .deals-product-buy:focus {
  background: rgba(242, 78, 46, 0.16);
}

[data-bs-theme="dark"] .deals-product-menu-toggle {
  background: var(--tdb-dark-surface-raised);
  color: var(--tdb-dark-muted);
  box-shadow: none;
}

[data-bs-theme="dark"] .deals-product-menu-toggle:hover,
[data-bs-theme="dark"] .deals-product-menu-toggle:focus {
  color: #FF8A70;
}

[data-bs-theme="dark"] .deals-product-dropdown {
  background: var(--tdb-dark-surface);
  border-color: var(--tdb-dark-border);
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.28);
}

[data-bs-theme="dark"] .deals-product-dropdown .dropdown-item {
  color: var(--tdb-dark-text);
}

[data-bs-theme="dark"] .deals-product-dropdown .dropdown-item:hover,
[data-bs-theme="dark"] .deals-product-dropdown .dropdown-item:focus {
  background: rgba(242, 78, 46, 0.16);
  color: #FFFFFF;
}

@media (max-width: 1199px) {
  .deals-products-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .deals-business-list {
    gap: 14px;
  }

  .deals-business-card {
    padding: 12px;
  }

  .deals-business-header {
    min-height: 50px;
    padding-bottom: 12px;
  }

  .deals-products-grid {
    grid-template-columns: 1fr;
    gap: 0;
    padding-top: 4px;
  }

  .deals-product-card {
    grid-template-columns: 84px minmax(0, 1fr);
    min-height: 124px;
    padding: 14px 0;
    border: 0;
    border-bottom: 1px solid #d9e8f4;
    border-radius: 0;
    box-shadow: none;
  }

  .deals-product-card:last-child {
    border-bottom: 0;
    padding-bottom: 4px;
  }

  .deals-product-card:hover,
  .deals-product-card:focus-within {
    border-color: #D9E8F4;
    box-shadow: none;
  }

  .deals-product-card img {
    width: 84px;
    height: 112px;
  }

  .deals-product-buy {
    justify-self: start;
  }

  [data-bs-theme="dark"] .deals-product-card {
    border-bottom-color: var(--tdb-dark-border);
  }
}
/* Global geo search modal */
.geo-search-picker {
  gap: 12px;
}

.geo-search-autocomplete {
  position: relative;
}

.geo-search-input {
  width: 100%;
  min-height: 48px;
  border: 1px solid #e5ded8;
  border-radius: 999px;
  background: #F7F1EC;
  color: #1E1E1E;
  padding: 12px 48px 12px 16px;
  box-shadow: none;
}

.geo-search-input::-webkit-search-cancel-button,
.geo-search-input::-webkit-search-decoration {
  display: none;
  -webkit-appearance: none;
          appearance: none;
}

.geo-search-input:focus {
  border-color: #F24E2E;
  box-shadow: 0 0 0 0.18rem rgba(242, 78, 46, 0.14);
}

.geo-search-input[readonly] {
  cursor: default;
}

.geo-search-clear {
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  display: none;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #8D7F76;
}

.geo-search-clear.is-visible {
  display: inline-flex;
}

.geo-search-clear:hover,
.geo-search-clear:focus {
  background: #FFE6DE;
  color: #F24E2E;
}

.geo-search-suggestions {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  z-index: 2000;
  max-height: 240px;
  margin: 0;
  padding: 6px;
  overflow-y: auto;
  list-style: none;
  border: 1px solid #e5ded8;
  border-radius: 16px;
  background: #FFFFFF;
  box-shadow: 0 18px 42px rgba(30, 30, 30, 0.16);
}

.geo-search-suggestion,
.geo-search-status,
.geo-search-empty {
  padding: 10px 12px;
  border-radius: 12px;
  color: #1E1E1E;
  font-size: 14px;
}

.geo-search-suggestion {
  display: grid;
  gap: 2px;
  cursor: pointer;
}

.geo-search-suggestion strong {
  font-size: 14px;
  line-height: 1.2;
}

.geo-search-suggestion span {
  color: #6F6258;
  font-size: 12px;
}

.geo-search-suggestion:hover,
.geo-search-suggestion.active {
  background: #FFE6DE;
  color: #F24E2E;
}

.geo-search-suggestion:hover span,
.geo-search-suggestion.active span {
  color: #9A4F3D;
}

.geo-search-status {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #6F6258;
}

.geo-search-empty,
.geo-search-error {
  color: #A33B25;
}

.geo-search-error {
  margin: 0;
  font-size: 13px;
  font-weight: 700;
}

[data-bs-theme="dark"] .geo-search-input {
  background: var(--tdb-dark-surface-raised);
  border-color: var(--tdb-dark-border);
  color: var(--tdb-dark-text);
}

[data-bs-theme="dark"] .geo-search-input::-moz-placeholder {
  color: var(--tdb-dark-subtle);
}

[data-bs-theme="dark"] .geo-search-input::placeholder {
  color: var(--tdb-dark-subtle);
}

[data-bs-theme="dark"] .geo-search-clear {
  color: var(--tdb-dark-muted);
}

[data-bs-theme="dark"] .geo-search-clear:hover,
[data-bs-theme="dark"] .geo-search-clear:focus {
  background: rgba(242, 78, 46, 0.16);
  color: #FF8A70;
}

[data-bs-theme="dark"] .geo-search-suggestions {
  background: var(--tdb-dark-surface-raised);
  border-color: var(--tdb-dark-border);
  box-shadow: 0 18px 42px rgba(24, 20, 18, 0.28);
}

[data-bs-theme="dark"] .geo-search-suggestion,
[data-bs-theme="dark"] .geo-search-status,
[data-bs-theme="dark"] .geo-search-empty {
  color: var(--tdb-dark-text);
}

[data-bs-theme="dark"] .geo-search-suggestion span,
[data-bs-theme="dark"] .geo-search-status {
  color: var(--tdb-dark-muted);
}

[data-bs-theme="dark"] .geo-search-suggestion:hover,
[data-bs-theme="dark"] .geo-search-suggestion.active {
  background: rgba(242, 78, 46, 0.16);
  color: #FF8A70;
}

[data-bs-theme="dark"] .geo-search-suggestion:hover span,
[data-bs-theme="dark"] .geo-search-suggestion.active span {
  color: #F3D4C7;
}

[data-bs-theme="dark"] .geo-search-error,
[data-bs-theme="dark"] .geo-search-empty {
  color: #ff6b7a;
}
/* Typography tuning */
body :is(h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6) {
  font-family: inherit;
  font-weight: 650;
  letter-spacing: 0;
  line-height: 1.18;
}

body :is(h2, h3, h4, .h2, .h3, .h4) {
  font-weight: 600;
}
/* Control typography tuning */
body :is(button, .btn, [type="button"], [type="submit"], [role="button"]) {
  font-family: inherit;
  font-weight: 600;
  letter-spacing: 0;
}
.minih{
      display: block;
    color: #F24E2E !important;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
}

/* ==========================================================================
   TDU redesign 1.2
   ========================================================================== */
:root {
  --tdu-canvas:#F7F4EE;
  --tdu-surface:#FFFFFF;
  --tdu-surface-quiet:#EFE9DE;
  --tdu-hairline:#E7E1D5;
  --tdu-hairline-strong:#D9D2C4;
  --tdu-control-idle:#C9C0AE;
  --tdu-ink:#151515;
  --tdu-ink-2:#5C574F;
  --tdu-ink-3:#6B655B;
  --tdu-ink-4:#8A8377;
  --tdu-placeholder:#9C9384;
  --tdu-accent:#FF5538;
  --tdu-accent-hover:#F04422;
  --tdu-accent-text:#C4331A;
  --tdu-accent-soft:#FFD9CF;
  --tdu-scrim:rgba(21,21,21,0.28);
  --tdu-focus-ring:0 0 0 3px #FFD9CF;
  --tdu-disabled-bg:#EFE9DE;
  --tdu-disabled-ink:#9C9384;
  --tdu-disabled-border:#E7E1D5;
  --tdu-font-display:'Bricolage Grotesque', system-ui, sans-serif;
  --tdu-font-text:'Schibsted Grotesk', system-ui, sans-serif;
  --tdu-font-mono:'Geist Mono', ui-monospace, monospace;
}

[data-bs-theme="dark"],
[data-theme="dark"] {
  --tdu-canvas:#12100F;
  --tdu-surface:#1B1917;
  --tdu-surface-quiet:#2C2825;
  --tdu-hairline:#2C2825;
  --tdu-hairline-strong:#403A34;
  --tdu-control-idle:#403A34;
  --tdu-ink:#F5F1E8;
  --tdu-ink-2:#B5AEA2;
  --tdu-ink-3:#8C857A;
  --tdu-ink-4:#8C857A;
  --tdu-placeholder:#8C857A;
  --tdu-accent:#FF5538;
  --tdu-accent-hover:#F04422;
  --tdu-accent-text:#FF5538;
  --tdu-focus-ring:0 0 0 3px rgba(255,85,56,.35);
  --tdu-disabled-bg:#1B1917;
  --tdu-disabled-ink:#6B655B;
  --tdu-disabled-border:#2C2825;
}

@keyframes tduDash { 0%{transform:scaleX(.15)} 50%{transform:scaleX(1)} 100%{transform:scaleX(.15)} }
@keyframes tduRise { from{opacity:0;transform:translateY(8px)} to{opacity:1;transform:none} }

html,
body,
[data-bs-theme="dark"] body,
body[data-bs-theme="dark"] {
  background:var(--tdu-canvas);
  color:var(--tdu-ink);
  font-family:var(--tdu-font-text);
}

body {
  -webkit-font-smoothing:antialiased;
  text-wrap:pretty;
}

a {
  color:var(--tdu-accent-text);
  text-decoration:none;
}

a:hover {
  color:var(--tdu-accent);
}

input::placeholder,
textarea::placeholder {
  color:var(--tdu-placeholder);
}

::selection {
  background:var(--tdu-accent-soft);
}

:is(a, button, [tabindex]):focus-visible {
  border-color:var(--tdu-ink) !important;
  box-shadow:var(--tdu-focus-ring) !important;
  outline:none;
}

:is(input, textarea, select, .form-control):focus-visible,
.input-box :is(input, textarea, select):focus-visible {
  border-color:transparent !important;
  box-shadow:none !important;
  outline:none !important;
}

.tdu-input:focus,
.tdu-input:focus-visible {
  border-color:var(--tdu-ink) !important;
  box-shadow:var(--tdu-focus-ring) !important;
  outline:none !important;
}

.tdu-logo-link {
  display:inline-flex;
  align-items:center;
  min-width:0;
}

.tdu-logo-img {
  width:132px;
  height:auto;
  display:block;
}

.tdu-logo-dark,
[data-bs-theme="dark"] .tdu-logo-light,
[data-theme="dark"] .tdu-logo-light {
  display:none;
}

[data-bs-theme="dark"] .tdu-logo-dark,
[data-theme="dark"] .tdu-logo-dark {
  display:block;
}

.tdu-header {
  position:relative;
  z-index:2500;
  background:var(--tdu-canvas);
  border-bottom:1px solid transparent;
  padding:12px 20px 14px;
}

.tdu-header-row {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  max-width:1340px;
  margin:0 auto;
}

.tdu-header-actions {
  display:flex;
  align-items:center;
  gap:8px;
}

.tdu-location-pill,
.tdu-cart-btn,
.tdu-avatar {
  height:36px;
  border:1px solid var(--tdu-hairline);
  border-radius:999px;
  background:var(--tdu-surface);
  color:var(--tdu-ink);
}

.tdu-location-pill {
  display:inline-flex;
  align-items:center;
  gap:6px;
  max-width:160px;
  padding:0 12px;
  font-size:13px;
  font-weight:400;
}

.tdu-location-pill span {
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.tdu-cart-btn {
  position:relative;
  width:36px;
  padding:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
}

.tdu-cart-btn:hover,
.tdu-cart-btn:focus {
  border-color:var(--tdu-accent);
  color:var(--tdu-accent);
}

.tdu-cart-badge {
  position:absolute;
  top:-6px;
  right:-6px;
  min-width:18px;
  height:18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 5px;
  border:2px solid var(--tdu-surface);
  border-radius:999px;
  background:var(--tdu-accent);
  color:#fff;
  font-size:10px;
  line-height:1;
  font-weight:700;
}

.tdu-avatar {
  width:36px;
  padding:0;
  overflow:hidden;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

.tdu-avatar span {
  width:100%;
  height:100%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:var(--tdu-ink);
  color:var(--tdu-canvas);
  font-size:13px;
  font-weight:600;
}

.tdu-avatar img {
  width:100%;
  height:100%;
  object-fit:cover;
}

.tdu-search {
  position:relative;
  display:flex;
  align-items:center;
  gap:9px;
  height:46px;
  background:var(--tdu-surface);
  border:1px solid var(--tdu-hairline);
  border-radius:12px;
  padding:0 14px;
  color:var(--tdu-placeholder);
}

.tdu-search .search-input {
  min-width:0;
  flex:1;
  height:100%;
  border:0;
  border-radius:0;
  padding:0;
  background:transparent;
  color:var(--tdu-ink);
  font-size:15px;
}

.tdu-search .search-input:focus {
  box-shadow:none !important;
}

.tdu-search-mobile {
  margin:12px 0 0;
}

.tdu-search-desktop {
  display:none;
}

.tdu-user-menu {
  border-color:var(--tdu-hairline);
  background:var(--tdu-surface);
  border-radius:12px;
  padding:6px;
}

.tdu-user-menu .dropdown-item {
  color:var(--tdu-ink);
  border-radius:8px;
  min-height:40px;
}

.tdu-home {
  max-width:1340px;
  margin:0 auto;
  padding:24px 20px 0;
}

.tdu-intention h1 {
  margin:0;
  color:var(--tdu-ink);
  font-family:var(--tdu-font-display);
  font-size:27px;
  font-weight:700;
  line-height:1.1;
  letter-spacing:-0.03em;
}

.tdu-intention-head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}

.tdu-filter-trigger {
  width:40px;
  height:40px;
  flex:0 0 40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--tdu-hairline);
  border-radius:999px;
  background:var(--tdu-surface);
  color:var(--tdu-ink);
  padding:0;
  font-size:14px;
}

.tdu-chip-row {
  display:flex;
  gap:8px;
  overflow-x:auto;
  margin:0 -20px;
  padding:16px 20px 4px;
  scrollbar-width:none;
}

.tdu-chip-row::-webkit-scrollbar {
  display:none;
}

.tdu-chip {
  flex:0 0 auto;
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--tdu-hairline);
  border-radius:999px;
  background:var(--tdu-surface);
  color:var(--tdu-ink);
  padding:0 16px;
  font-size:14px;
  font-weight:400;
}

.tdu-chip.is-active,
.btn-check:checked + .tdu-chip {
  border-color:var(--tdu-ink);
  background:var(--tdu-ink);
  color:var(--tdu-canvas);
  font-weight:500;
}

[data-bs-theme="dark"] .tdu-chip.is-active,
[data-bs-theme="dark"] .btn-check:checked + .tdu-chip {
  background:#F5F1E8;
  color:#151515;
}

.tdu-chip-muted {
  color:var(--tdu-ink-3);
}

.tdu-price-row {
  display:grid;
  gap:10px;
  margin-top:18px;
}

.tdu-price-chips {
  display:flex;
  gap:8px;
  overflow-x:auto;
  margin:0 -20px;
  padding:0 20px 4px;
  scrollbar-width:none;
}

.tdu-price-chips::-webkit-scrollbar {
  display:none;
}

.tdu-nearby {
  padding-top:28px;
}

.tdu-section-label-row {
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px;
}

.tdu-mono-label {
  font-family:var(--tdu-font-mono);
  font-size:11px;
  letter-spacing:0.09em;
  text-transform:uppercase;
  color:var(--tdu-ink-3);
}

.tdu-merchant-section {
  padding-top:36px;
}

.tdu-section-label-row + div > .tdu-merchant-section:first-child,
#repeatnegocio > .tdu-merchant-section:first-child {
  padding-top:0;
}

.tdu-merchant-header {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

.tdu-merchant-identity {
  min-width:0;
  display:flex;
  align-items:flex-start;
  gap:12px;
  color:inherit;
}

.tdu-merchant-avatar {
  width:40px;
  height:40px;
  flex:0 0 40px;
  border-radius:999px;
  object-fit:cover;
  background:var(--tdu-surface-quiet);
}

.tdu-merchant-identity strong {
  display:block;
  color:var(--tdu-ink);
  font-family:var(--tdu-font-display);
  font-size:19px;
  font-weight:600;
  line-height:1.15;
  letter-spacing:-0.02em;
}

.tdu-merchant-identity small {
  display:block;
  margin-top:2px;
  color:var(--tdu-ink-3);
  font-size:13px;
}

.tdu-merchant-link {
  flex:0 0 auto;
  margin-top:3px;
  color:var(--tdu-accent-text);
  font-size:13px;
}

.tdu-products-grid {
  display:flex;
  gap:14px;
  overflow-x:auto;
  margin:0 -20px;
  padding:18px 20px 0;
  scrollbar-width:none;
}

.tdu-products-grid::-webkit-scrollbar {
  display:none;
}

.tdu-product-card {
  flex:0 0 152px;
  display:block;
  color:inherit;
  border-radius:10px;
  text-decoration:none;
  transition:transform .18s ease;
}

.tdu-product-photo {
  display:block;
  aspect-ratio:4/5;
  overflow:hidden;
  border-radius:10px;
  background:var(--tdu-surface-quiet);
}

.tdu-product-photo img,
.tdu-gift-photo img,
.tdu-summary-photo img,
.tdu-checkout-summary img {
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
}

.tdu-product-title {
  display:block;
  margin-top:9px;
  color:var(--tdu-ink);
  font-size:14px;
  font-weight:600;
  line-height:1.25;
}

.tdu-product-price {
  display:block;
  margin-top:5px;
  color:var(--tdu-ink);
  font-size:14px;
  font-weight:600;
  font-variant-numeric:tabular-nums;
}

.tdu-product-card:hover {
  color:inherit;
  transform:translateY(-2px);
}

.tdu-empty-state,
.tdu-loading {
  max-width:560px;
  margin:42px auto;
  text-align:center;
}

.tdu-empty-state h2,
.tdu-loading p {
  color:var(--tdu-ink);
}

.tdu-loading-mark {
  display:inline-flex;
  align-items:center;
  gap:6px;
}

.tdu-loading-mark span {
  width:42px;
  height:2px;
  background:var(--tdu-ink);
  transform-origin:left;
  animation:tduDash 1.1s ease-in-out infinite;
}

.tdu-loading-mark i {
  width:4px;
  height:4px;
  border-radius:999px;
  background:var(--tdu-accent);
}

.tdu-sheet-modal .modal-dialog {
  margin:0;
  min-height:100%;
  align-items:flex-end;
}

.tdu-sheet,
.tdu-filter-sheet {
  background:var(--tdu-canvas);
  color:var(--tdu-ink);
  border:0;
  border-radius:20px 20px 0 0;
}

.tdu-sheet-handle {
  width:36px;
  height:4px;
  border-radius:2px;
  background:var(--tdu-hairline-strong);
  margin:10px auto 18px;
}

.tdu-sheet-header {
  border:0;
  padding:0 20px 18px;
}

.tdu-sheet-header .modal-title,
.tdu-filter-sheet .offcanvas-title {
  color:var(--tdu-ink);
  font-family:var(--tdu-font-display);
  font-size:25px;
  font-weight:700;
  line-height:1.1;
  letter-spacing:-0.03em;
}

.tdu-sheet-header p {
  margin:8px 0 0;
  color:var(--tdu-ink-2);
  font-size:15px;
  line-height:1.5;
}

.tdu-sheet-body {
  padding:0 20px 24px;
}

.geo-search-input,
.tdu-input {
  width:100%;
  height:50px;
  border:1px solid var(--tdu-hairline);
  border-radius:12px;
  background:var(--tdu-surface);
  color:var(--tdu-ink);
  padding:0 14px;
  font-size:15px;
  outline:none;
}

.tdu-location-current,
.tdu-city-option {
  width:100%;
  min-height:54px;
  display:flex;
  align-items:center;
  gap:10px;
  border:0;
  border-top:1px solid var(--tdu-hairline);
  background:transparent;
  color:var(--tdu-ink);
  padding:0;
  font-size:16px;
  text-align:left;
}

.tdu-city-list {
  margin-top:4px;
  border-top:1px solid var(--tdu-hairline);
}

.tdu-city-option {
  justify-content:space-between;
}

.tdu-city-option span {
  color:var(--tdu-accent);
  opacity:0;
}

.tdu-city-option:first-child {
  font-weight:600;
}

.tdu-city-option:first-child span {
  opacity:1;
}

.modal-footer:has(#globalGeoApply) {
  display:none;
}

.tdu-filter-sheet {
  height:auto !important;
  padding:0 20px 24px;
}

.tdu-filter-sheet .offcanvas-header,
.tdu-filter-sheet .offcanvas-body {
  padding-left:0;
  padding-right:0;
}

.tdu-filter-group + .tdu-filter-group {
  margin-top:26px;
}

.tdu-filter-chips {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}

.tdu-filter-footer {
  display:flex;
  align-items:center;
  gap:16px;
  margin-top:28px;
}

.tdu-primary-button,
.tdu-secondary-button,
.tdu-tertiary-button,
.tdu-text-button {
  min-height:54px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:12px;
  padding:0 18px;
  font-size:16px;
  font-weight:600;
  text-decoration:none;
}

.tdu-primary-button {
  width:100%;
  border:0;
  background:var(--tdu-accent);
  color:#FFFFFF;
}

.tdu-primary-button:hover {
  background:var(--tdu-accent-hover);
  color:#FFFFFF;
}

.tdu-secondary-button {
  border:1px solid var(--tdu-hairline);
  background:transparent;
  color:var(--tdu-ink);
}

.tdu-tertiary-button,
.tdu-text-button {
  border:0;
  background:transparent;
  color:var(--tdu-ink);
}

.tdu-gift-page,
.tdu-order-page {
  max-width:1340px;
  margin:0 auto;
  padding:22px 20px 0;
}

.tdu-gift-shell {
  display:grid;
  gap:32px;
}

.tdu-gift-nav {
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:28px;
}

.tdu-back-button {
  width:40px;
  height:40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--tdu-hairline);
  border-radius:999px;
  background:var(--tdu-surface);
  color:var(--tdu-ink);
}

.tdu-step-mark,
.tdu-eyebrow,
.tdu-success-mark {
  display:inline-flex;
  align-items:center;
  gap:6px;
}

.tdu-step-mark span,
.tdu-eyebrow span::before,
.tdu-success-mark span {
  content:"";
  width:24px;
  height:2px;
  background:var(--tdu-ink);
}

.tdu-step-mark i,
.tdu-success-mark i {
  width:4px;
  height:4px;
  border-radius:999px;
  background:var(--tdu-hairline-strong);
}

.tdu-step-mark.is-step-two span {
  background:var(--tdu-hairline-strong);
}

.tdu-step-mark.is-step-two i {
  background:var(--tdu-ink);
}

.tdu-eyebrow {
  gap:9px;
}

.tdu-eyebrow span {
  display:inline-flex;
  align-items:center;
  gap:5px;
}

.tdu-eyebrow span::before {
  width:20px;
  background:var(--tdu-accent);
}

.tdu-eyebrow span::after {
  content:"";
  width:4px;
  height:4px;
  border-radius:999px;
  background:var(--tdu-accent);
}

.tdu-eyebrow b {
  color:var(--tdu-ink-3);
  font-family:var(--tdu-font-mono);
  font-size:11px;
  font-weight:400;
  letter-spacing:0.09em;
}

.tdu-gift-title {
  margin:12px 0 18px;
  color:var(--tdu-ink);
  font-family:var(--tdu-font-display);
  font-size:34px;
  font-weight:700;
  line-height:1.05;
  letter-spacing:-0.035em;
}

.tdu-gift-context {
  color:var(--tdu-ink-2);
}

.tdu-gift-photo {
  aspect-ratio:16/11;
  overflow:hidden;
  border-radius:10px;
  background:var(--tdu-surface-quiet);
}

.tdu-gift-product-line {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-top:16px;
}

.tdu-gift-product-line h2,
.tdu-form-section h2,
.tdu-gift-summary h2 {
  margin:0;
  color:var(--tdu-ink);
  font-family:var(--tdu-font-display);
  font-weight:600;
  letter-spacing:-0.02em;
}

.tdu-gift-product-line h2 {
  font-size:20px;
}

.tdu-gift-product-line p,
.tdu-helper,
.tdu-section-copy,
.tdu-gift-summary p,
.tdu-summary-note {
  color:var(--tdu-ink-3);
}

.tdu-gift-product-line p {
  margin:4px 0 0;
  font-size:14px;
}

.tdu-gift-product-line strong {
  color:var(--tdu-ink);
  font-size:20px;
  font-weight:600;
  white-space:nowrap;
  font-variant-numeric:tabular-nums;
}

.tdu-form-section {
  margin-top:32px;
  padding-top:32px;
  border-top:1px solid var(--tdu-hairline);
}

.tdu-form-section h2 {
  margin-bottom:16px;
  font-size:22px;
}

.tdu-field-grid {
  display:grid;
  gap:10px;
}

.tdu-helper,
.tdu-section-copy {
  margin:10px 0 0;
  font-size:13px;
}

.tdu-mail-row {
  display:flex;
  align-items:flex-start;
  gap:12px;
}

.tdu-mail-icon {
  width:40px;
  height:40px;
  flex:0 0 40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--tdu-hairline);
  border-radius:999px;
  background:var(--tdu-surface);
  color:var(--tdu-ink);
}

.tdu-mail-row strong {
  display:block;
  color:var(--tdu-ink);
  font-size:16px;
  font-weight:600;
}

.tdu-mail-row p {
  margin:3px 0 0;
  color:var(--tdu-ink-3);
  font-size:13px;
}

.tdu-schedule-toggle {
  margin-top:18px;
}

.tdu-schedule-fields {
  display:grid;
  gap:10px;
  margin-top:14px;
}

.tdu-section-copy {
  margin:-6px 0 12px;
  color:var(--tdu-ink-2);
  font-size:14px;
}

.tdu-textarea {
  height:auto;
  min-height:102px;
  padding:13px 14px;
  line-height:1.5;
  resize:none;
}

.tdu-placeholder-rotator {
  position:relative;
}

.tdu-placeholder-rotator .tdu-textarea::placeholder {
  color:transparent;
}

.tdu-rotating-placeholder {
  position:absolute;
  top:13px;
  left:14px;
  right:14px;
  color:var(--tdu-placeholder);
  font-size:15px;
  line-height:1.5;
  pointer-events:none;
  opacity:1;
  transition:opacity .22s ease;
}

.tdu-rotating-placeholder.is-fading,
.tdu-placeholder-rotator.has-value .tdu-rotating-placeholder,
.tdu-placeholder-rotator:focus-within.has-value .tdu-rotating-placeholder {
  opacity:0;
}

.tdu-counter {
  margin-top:8px;
  color:var(--tdu-ink-4);
  font-family:var(--tdu-font-mono);
  font-size:11px;
  text-align:right;
}

.tdu-conditions ul {
  display:grid;
  gap:8px;
  margin:0 0 14px;
  padding:0;
  list-style:none;
}

.tdu-conditions li {
  display:flex;
  gap:10px;
  color:var(--tdu-ink-2);
  font-size:14px;
}

.tdu-conditions li::before {
  content:"";
  width:14px;
  height:2px;
  flex:0 0 14px;
  margin-top:10px;
  background:var(--tdu-hairline-strong);
}

.tdu-inline-link {
  border:0;
  background:transparent;
  color:var(--tdu-accent-text);
  padding:0;
  font-size:14px;
}

.tdu-condition-links {
  display:grid;
  justify-items:start;
  gap:8px;
}

.tdu-terms-modal .modal-dialog {
  max-width:520px;
}

.tdu-terms-modal {
  z-index:1055;
}

body:has(.tdu-terms-modal.show) .modal-backdrop.show {
  z-index:1050;
  opacity:.32;
  background:#151515;
}

.tdu-terms-modal .modal-content {
  overflow:hidden;
  border:1px solid var(--tdu-hairline);
  border-radius:12px;
  background:var(--tdu-surface);
  color:var(--tdu-ink);
  box-shadow:0 18px 50px rgba(21,21,21,.18);
}

.tdu-terms-modal .modal-header {
  align-items:flex-start;
  gap:16px;
  border-bottom:1px solid var(--tdu-hairline);
  padding:22px 24px 18px;
}

.tdu-terms-modal .modal-title {
  color:var(--tdu-ink);
  font-family:var(--tdu-font-display);
  font-size:24px;
  font-weight:700;
  line-height:1.1;
}

.tdu-terms-modal .modal-header p {
  margin:8px 0 0;
  color:var(--tdu-ink-2);
  font-size:14px;
  line-height:1.45;
}

.tdu-terms-modal .modal-body {
  padding:20px 24px 24px;
}

.tdu-terms-modal .btn-close {
  flex:0 0 auto;
  margin:2px 0 0;
}

.tdu-terms-list {
  display:grid;
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
}

.tdu-terms-list li {
  display:flex;
  gap:10px;
  color:var(--tdu-ink-2);
  font-size:14px;
  line-height:1.45;
}

.tdu-terms-list li::before {
  content:"";
  width:14px;
  height:2px;
  flex:0 0 14px;
  margin-top:10px;
  background:var(--tdu-hairline-strong);
}

.tdu-checkbox {
  display:flex;
  gap:12px;
  margin-top:18px;
  color:var(--tdu-ink);
  font-size:14px;
  line-height:1.45;
}

.tdu-checkbox input {
  width:20px;
  height:20px;
  flex:0 0 20px;
  accent-color:var(--tdu-ink);
}

.tdu-gift-summary {
  display:none;
}

.tdu-sticky-cta {
  /* position:sticky; */
  bottom:0;
  z-index:50;
  margin:32px -20px 0;
  border-top:1px solid var(--tdu-hairline);
  background:var(--tdu-canvas);
  padding:16px 20px 22px;
}

.tdu-sticky-cta p {
  margin:8px 0 0;
  color:var(--tdu-ink-3);
  font-size:13px;
  text-align:center;
}

.tdu-gift-page-v2 .tdu-gift-main {
  min-width:0;
}

.tdu-gift-wizard {
  margin-top:28px;
}

.tdu-wizard-head {
  display:grid;
  gap:10px;
  margin-bottom:14px;
}

.tdu-wizard-count,
.tdu-card-kicker {
  margin:0;
  color:var(--tdu-ink-3);
  font-family:var(--tdu-font-mono);
  font-size:11px;
  font-weight:400;
  letter-spacing:0.09em;
  text-transform:uppercase;
}

.tdu-wizard-progress {
  height:2px;
  overflow:hidden;
  background:var(--tdu-hairline);
}

.tdu-wizard-progress span {
  display:block;
  width:25%;
  height:100%;
  background:var(--tdu-ink);
  transition:width .22s ease;
}

.tdu-wizard-tabs {
  display:flex;
  gap:8px;
  overflow-x:auto;
  margin:0 -20px 18px;
  padding:0 20px 2px;
  scrollbar-width:none;
}

.tdu-wizard-tabs::-webkit-scrollbar {
  display:none;
}

.tdu-wizard-tab {
  min-height:40px;
  flex:0 0 auto;
  border:1px solid var(--tdu-hairline);
  border-radius:999px;
  background:var(--tdu-surface);
  color:var(--tdu-ink);
  padding:0 14px;
  font-size:14px;
}

.tdu-wizard-tab.is-active {
  border-color:var(--tdu-ink);
  background:var(--tdu-ink);
  color:var(--tdu-canvas);
  font-weight:500;
}

[data-bs-theme="dark"] .tdu-wizard-tab.is-active,
[data-theme="dark"] .tdu-wizard-tab.is-active {
  background:#F5F1E8;
  color:#151515;
}

.tdu-wizard-viewport {
  overflow:hidden;
}

.tdu-wizard-track {
  display:flex;
  align-items:stretch;
  transition:transform .26s ease;
  will-change:transform;
}

.tdu-step-card {
  width:100%;
  min-width:100%;
  align-self:stretch;
  border:1px solid var(--tdu-hairline);
  border-radius:12px;
  background:var(--tdu-surface);
  color:var(--tdu-ink);
  padding:22px;
  opacity:.42;
  pointer-events:none;
  transform:translateX(10px);
  transition:opacity .18s ease, transform .26s ease;
}

.tdu-step-card.is-active {
  opacity:1;
  pointer-events:auto;
  transform:none;
}

.tdu-step-card h2 {
  margin:10px 0 18px;
  color:var(--tdu-ink);
  font-family:var(--tdu-font-display);
  font-size:28px;
  font-weight:700;
  line-height:1.08;
  letter-spacing:-0.03em;
}

.tdu-message-mini {
  margin-top:24px;
  padding-top:22px;
  border-top:1px solid var(--tdu-hairline);
}

.tdu-delivery-options {
  display:grid;
  gap:10px;
}

.tdu-delivery-option {
  min-height:62px;
  display:flex;
  align-items:flex-start;
  gap:12px;
  border:1px solid var(--tdu-hairline);
  border-radius:12px;
  background:var(--tdu-surface);
  color:var(--tdu-ink);
  padding:13px 14px;
  cursor:pointer;
}

.tdu-delivery-option:has(input:checked) {
  border-color:var(--tdu-ink);
}

.tdu-delivery-option input {
  width:20px;
  height:20px;
  flex:0 0 20px;
  margin-top:1px;
  accent-color:var(--tdu-ink);
}

.tdu-delivery-option strong {
  display:block;
  color:var(--tdu-ink);
  font-size:15px;
  font-weight:600;
  line-height:1.25;
}

.tdu-delivery-option small {
  display:block;
  margin-top:3px;
  color:var(--tdu-ink-3);
  font-size:13px;
  line-height:1.35;
}

.tdu-mail-fields,
.tdu-whatsapp-fields {
  display:grid;
  gap:14px;
  margin:10px 0 0 32px;
  border:1px solid var(--tdu-hairline);
  border-radius:12px;
  background:var(--tdu-surface);
  padding:14px;
  box-shadow:0 14px 34px rgba(21,21,21,.08);
}

.tdu-mail-fields.is-collapsed,
.tdu-whatsapp-fields.is-collapsed,
.tdu-schedule-fields.is-collapsed {
  display:none;
}

.tdu-whatsapp-fields {
  display:flex;
  align-items:center;
  gap:10px;
  border-color:rgba(25,135,84,.28);
  background:rgba(25,135,84,.1);
  color:#146c43;
  line-height:1.35;
  box-shadow:none;
}

.tdu-whatsapp-fields i {
  flex:0 0 auto;
}

.tdu-mail-timing {
  display:grid;
  gap:8px;
}

.tdu-mail-info {
  border:1px solid rgba(255,85,56,.22);
  border-radius:12px;
  background:rgba(255,85,56,.08);
  color:var(--tdu-ink);
  padding:12px 13px;
}

.tdu-mail-info strong {
  display:block;
  color:var(--tdu-ink);
  font-size:14px;
  font-weight:700;
  line-height:1.25;
}

.tdu-mail-info p {
  margin:5px 0 0;
  color:var(--tdu-ink-2);
  font-size:13px;
  line-height:1.4;
}

.tdu-mail-info + .tdu-delivery-options {
  margin-top:14px;
}

.tdu-radio-option {
  min-height:46px;
  display:flex;
  align-items:center;
  gap:10px;
  border:1px solid var(--tdu-hairline);
  border-radius:12px;
  background:var(--tdu-surface);
  color:var(--tdu-ink);
  padding:10px 12px;
  cursor:pointer;
}

.tdu-radio-option:has(input:checked) {
  border-color:var(--tdu-ink);
}

.tdu-radio-option input {
  width:18px;
  height:18px;
  flex:0 0 18px;
  accent-color:var(--tdu-ink);
}

.tdu-radio-option span {
  color:var(--tdu-ink);
  font-size:14px;
  font-weight:600;
}

.tdu-channel-error {
  margin:10px 0 0;
  color:var(--tdu-accent-text);
  font-size:13px;
}

.tdu-anonymous-toggle {
  margin-bottom:16px;
}

.tdu-message-mini h3 {
  margin:0 0 10px;
  color:var(--tdu-ink);
  font-family:var(--tdu-font-display);
  font-size:20px;
  font-weight:600;
  letter-spacing:-0.02em;
}

.tdu-step-actions {
  display:flex;
  justify-content:flex-end;
  gap:10px;
  margin-top:24px;
}

.tdu-secondary-button {
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--tdu-hairline);
  border-radius:12px;
  background:var(--tdu-surface);
  color:var(--tdu-ink);
  padding:0 18px;
  font-size:15px;
  font-weight:600;
}

.tdu-secondary-button:hover,
.tdu-secondary-button:focus {
  border-color:var(--tdu-ink);
  color:var(--tdu-ink);
}

.tdu-review-list {
  display:grid;
  gap:0;
  margin:0;
}

.tdu-review-list > div {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:14px 0;
  border-top:1px solid var(--tdu-hairline);
}

.tdu-review-list > div:first-child {
  border-top:0;
  padding-top:0;
}

.tdu-review-list dt {
  color:var(--tdu-ink-3);
  font-family:var(--tdu-font-mono);
  font-size:11px;
  font-weight:400;
  letter-spacing:0.09em;
}

.tdu-review-list dd {
  max-width:62%;
  margin:0;
  color:var(--tdu-ink);
  font-size:14px;
  text-align:right;
  overflow-wrap:anywhere;
}

.tdu-review-list small {
  display:block;
  margin-top:2px;
  color:var(--tdu-ink-3);
  font-size:13px;
}

.tdu-step-card-summary .tdu-form-section {
  margin-top:10px;
  padding-top:18px;
}

.tdu-summary-mail-field {
  margin-bottom:18px;
}

.tdu-summary-mini {
  display:grid;
  gap:10px;
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid var(--tdu-hairline);
}

.tdu-summary-mini div {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}

.tdu-summary-mini span {
  color:var(--tdu-ink-3);
  font-size:13px;
}

.tdu-summary-mini strong {
  max-width:62%;
  color:var(--tdu-ink);
  font-size:13px;
  font-weight:600;
  text-align:right;
  overflow-wrap:anywhere;
}

.tdu-sticky-wizard {
  display:grid;
  gap:0;
}

.tdu-sticky-wizard .tdu-primary-button.d-none {
  display:none !important;
}

.tdu-primary-button:disabled {
  background:var(--tdu-disabled-bg);
  color:var(--tdu-disabled-ink);
  cursor:not-allowed;
}

.tdu-checkout {
  max-width:560px;
  margin:0 auto;
  padding-top:22px;
}

.tdu-checkout h1,
.tdu-success h1 {
  color:var(--tdu-ink);
  font-family:var(--tdu-font-display);
  font-weight:700;
  letter-spacing:-0.035em;
}

.tdu-checkout h1 {
  margin:0 0 22px;
  font-size:30px;
  line-height:1.05;
}

.tdu-checkout-summary {
  display:grid;
  grid-template-columns:60px minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  padding-bottom:20px;
  border-bottom:1px solid var(--tdu-hairline);
}

.tdu-checkout-summary img {
  width:60px;
  height:60px;
  border-radius:8px;
  background:var(--tdu-surface-quiet);
}

.tdu-checkout-summary strong {
  display:block;
  color:var(--tdu-ink);
  font-size:15px;
  line-height:1.25;
}

.tdu-checkout-summary span {
  color:var(--tdu-ink-3);
  font-size:13px;
}

.tdu-checkout-summary b {
  color:var(--tdu-ink);
  font-size:16px;
  font-weight:600;
  font-variant-numeric:tabular-nums;
}

.tdu-radio-block {
  padding-top:22px;
}

.tdu-radio-row {
  min-height:56px;
  display:flex;
  align-items:center;
  gap:12px;
  border-top:1px solid var(--tdu-hairline);
  color:var(--tdu-ink);
  font-size:16px;
}

.tdu-radio-row input {
  width:20px;
  height:20px;
  accent-color:var(--tdu-accent);
}

.tdu-checkout-total {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-top:26px;
  padding-top:22px;
  border-top:1px solid var(--tdu-hairline);
}

.tdu-checkout-total span {
  color:var(--tdu-ink-2);
  font-size:15px;
}

.tdu-checkout-total strong {
  color:var(--tdu-ink);
  font-family:var(--tdu-font-display);
  font-size:24px;
  font-weight:700;
  letter-spacing:-0.02em;
  font-variant-numeric:tabular-nums;
}

.tdu-checkout-total + .tdu-primary-button {
  margin-top:18px;
}

.tdu-success {
  max-width:560px;
  margin:0 auto;
  padding:52px 4px 32px;
  animation:tduRise .5s ease both;
}

.tdu-success-mark i {
  width:10px;
  height:10px;
  border-radius:999px;
  background:var(--tdu-accent);
}

.tdu-success-mark span {
  width:52px;
}

.tdu-success h1 {
  margin:22px 0 0;
  font-size:40px;
  line-height:1.02;
}

.tdu-success > p {
  margin:18px 0 0;
  color:var(--tdu-ink-2);
  font-size:16px;
  line-height:1.5;
}

.tdu-success-summary {
  margin:28px 0 0;
}

.tdu-success-summary div {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:14px 0;
  border-top:1px solid var(--tdu-hairline);
}

.tdu-success-summary dt {
  color:var(--tdu-ink-3);
  font-family:var(--tdu-font-mono);
  font-size:11px;
  font-weight:400;
  letter-spacing:0.09em;
}

.tdu-success-summary dd {
  margin:0;
  color:var(--tdu-ink);
  font-size:14px;
  text-align:right;
}

.tdu-success-summary small {
  display:block;
  color:var(--tdu-ink-3);
}

.tdu-success-actions {
  display:grid;
  gap:10px;
  margin-top:26px;
}

.tdu-footer {
  margin-top:56px;
  border-top:1px solid var(--tdu-hairline);
  background:var(--tdu-canvas);
  color:var(--tdu-ink);
}

.tdu-footer-inner {
  max-width:1340px;
  margin:0 auto;
  padding:32px 20px;
}

.tdu-footer-top {
  display:grid;
  gap:14px;
}

.tdu-footer-top p {
  margin:0;
  color:var(--tdu-ink-2);
  font-size:15px;
}

.tdu-footer-links {
  display:flex;
  flex-wrap:wrap;
  gap:8px 18px;
}

.tdu-footer-links a {
  color:var(--tdu-ink);
  font-size:15px;
}

.tdu-footer-legal {
  display:flex;
  flex-wrap:wrap;
  gap:8px 14px;
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid var(--tdu-hairline);
  color:var(--tdu-ink-4);
  font-family:var(--tdu-font-mono);
  font-size:11px;
}

.tdu-footer-legal a {
  color:var(--tdu-ink-4);
}

.search-autocomplete {
  border-color:var(--tdu-hairline);
  background:var(--tdu-surface);
  border-radius:12px;
  box-shadow:none;
}

.search-btn,
.header-cart-btn,
.header-action-btn,
.mobile-header-offcanvas,
.deals-sidebar,
.deals-product-buy,
.deals-product-menu {
  display:none !important;
}

@media (min-width:768px) {
  .tdu-header {
    padding:18px 24px;
  }

  .tdu-search-mobile {
    display:none;
  }

  .tdu-search-desktop {
    display:flex;
    flex:1 1 220px;
    max-width:440px;
    height:42px;
  }

  .tdu-home,
  .tdu-gift-page,
  .tdu-order-page {
    padding-left:24px;
    padding-right:24px;
  }

  .tdu-products-grid {
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(min(100%,196px),1fr));
    gap:20px;
    overflow:visible;
    margin:0;
    padding:18px 0 0;
  }

  .tdu-product-card {
    flex:auto;
  }

  .tdu-field-grid {
    grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));
    gap:12px;
  }
}

@media (min-width:1024px) {
  .tdu-header {
    padding:18px 28px;
  }

  .tdu-logo-img {
    width:154px;
  }

  .tdu-location-pill,
  .tdu-cart-btn,
  .tdu-avatar {
    height:38px;
  }

  .tdu-cart-btn,
  .tdu-avatar {
    width:38px;
  }

  .tdu-home,
  .tdu-gift-page,
  .tdu-order-page {
    padding-left:28px;
    padding-right:28px;
  }

  .tdu-intention h1 {
    font-size:32px;
    line-height:1.05;
  }

  .tdu-filter-trigger {
    display:none;
  }

  .tdu-chip-row {
    flex-wrap:wrap;
    overflow:visible;
    margin:0;
    padding:18px 0 0;
  }

  .tdu-price-row {
    margin-top:16px;
  }

  .tdu-price-chips {
    flex-wrap:wrap;
    overflow:visible;
    margin:0;
    padding:0;
  }

  .tdu-chip {
    min-height:40px;
  }

  .tdu-merchant-section {
    padding-top:48px;
  }

  .tdu-merchant-avatar {
    width:44px;
    height:44px;
    flex-basis:44px;
  }

  .tdu-merchant-identity strong {
    font-size:22px;
  }

  .tdu-merchant-identity small,
  .tdu-merchant-link {
    font-size:14px;
  }

  .tdu-products-grid {
    gap:24px;
  }

  .tdu-product-title,
  .tdu-product-price {
    font-size:16px;
  }

  .tdu-product-card:hover {
    transform:translateY(-3px);
  }

  .tdu-sheet-modal .modal-dialog {
    align-items:center;
    justify-content:center;
    margin:1.75rem auto;
  }

  .tdu-sheet {
    width:min(480px, calc(100vw - 40px));
    border-radius:12px;
  }

  .tdu-sheet-handle {
    display:none;
  }

  .tdu-gift-shell {
    grid-template-columns:minmax(0,1fr) minmax(320px,420px);
    gap:56px;
    align-items:start;
    padding-top:14px;
  }

  .tdu-gift-title {
    font-size:clamp(34px,3.4vw,44px);
    line-height:1.02;
  }

  .tdu-gift-summary {
    position:sticky;
    top:24px;
    display:block;
    border:1px solid var(--tdu-hairline);
    border-radius:12px;
    background:var(--tdu-surface);
    padding:20px;
  }

  .tdu-summary-photo {
    aspect-ratio:4/3;
    overflow:hidden;
    border-radius:8px;
    background:var(--tdu-surface-quiet);
  }

  .tdu-gift-summary h2 {
    margin-top:16px;
    font-size:19px;
  }

  .tdu-summary-total {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-top:18px;
    padding-top:18px;
    border-top:1px solid var(--tdu-hairline);
  }

  .tdu-summary-total span {
    color:var(--tdu-ink-2);
  }

  .tdu-summary-total strong {
    color:var(--tdu-ink);
    font-family:var(--tdu-font-display);
    font-size:24px;
    font-weight:700;
    font-variant-numeric:tabular-nums;
  }

  .tdu-summary-total + .tdu-primary-button {
    margin-top:18px;
  }

  .tdu-summary-note {
    margin:10px 0 0;
    font-size:13px;
    text-align:center;
  }

  .tdu-sticky-cta {
    display:none;
  }

  .tdu-footer-inner {
    padding:32px 28px;
  }

  .tdu-footer-top {
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:24px;
  }

  .tdu-footer-links {
    gap:10px 24px;
  }

  .tdu-footer-close {
    margin-left:auto;
  }
}

@media (prefers-reduced-motion:reduce) {
  *,
  *::before,
  *::after {
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    scroll-behavior:auto !important;
    transition-duration:.01ms !important;
  }

  .tdu-product-card:hover {
    transform:none;
  }
}

/* Dark mode 1.2 compatibility
   Keeps older pages on the current token palette while their markup is migrated. */
:is([data-bs-theme="dark"], [data-theme="dark"]) :is(
  .logintry-page,
  .login-page,
  .deals-web-layout,
  .product-page,
  .mp-page,
  .mp-success-page,
  .business-page,
  .business-dashboard-page,
  .gift-receiver-page,
  .profile-page,
  .profile-edit-page,
  .help-page,
  .order-page,
  .tdu-order-page
),
:is([data-bs-theme="dark"], [data-theme="dark"]):is(
  .mp-page,
  .mp-success-page,
  .profile-page,
  .profile-edit-page,
  .help-page
) {
  background:var(--tdu-canvas);
  color:var(--tdu-ink);
}

:is([data-bs-theme="dark"], [data-theme="dark"]) :is(
  .logintry-card,
  .login-card,
  .google-btn,
  .deals-sidebar,
  .business-card,
  .product-card,
  .deals-business-card,
  .deals-product-card,
  .geo-modal,
  .product-back,
  .product-selected-card,
  .send-options-card,
  .schedule-card,
  .order-card,
  .profile-card,
  .logout-card,
  .help-card,
  .help-article-card,
  .help-tip-card,
  .help-support-panel,
  .help-highlight,
  .mp-card,
  .mp-success-card,
  .gift-main-panel,
  .gift-code-panel,
  .gift-steps-panel,
  .gift-terms-panel,
  .business-dashboard-hero,
  .business-empty-state,
  .modal-content,
  .dropdown-menu
) {
  background:var(--tdu-surface);
  border-color:var(--tdu-hairline);
  color:var(--tdu-ink);
  box-shadow:var(--tdu-shadow);
}

:is([data-bs-theme="dark"], [data-theme="dark"]) :is(
  .search-wrapper,
  .search-autocomplete,
  .input-box,
  .new-business-card .business-dropzone,
  .filter-group input,
  .filter-group select,
  .geo-picker .tagify,
  .geo-picker .form-select,
  .geo-picker .tagify__dropdown__wrapper,
  .send-option,
  .terms-option,
  .schedule-card .form-control,
  .whatsapp-country-trigger,
  .whatsapp-country-menu,
  .product-image,
  .order-expired,
  .order-business-strip,
  .order-message-box,
  .order-code-shell,
  .profile-item,
  .logout-link,
  .help-ticket-guest-form,
  .status-box,
  .mail-check-address,
  .gift-business-card,
  .gift-detail-list > div,
  .gift-step,
  .gift-help-list,
  .gift-uuid-full,
  .business-card-image,
  .business-card-arrow,
  .form-control,
  .form-select
) {
  background:var(--tdu-surface-quiet);
  border-color:var(--tdu-hairline);
  color:var(--tdu-ink);
}

:is([data-bs-theme="dark"], [data-theme="dark"]) :is(
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  strong,
  label,
  .logintry-card h1,
  .login-hero h1,
  .login-card h2,
  .product-header h1,
  .product-info h4,
  .product-info strong,
  .order-header h5,
  .order-header strong,
  .order-hero-copy h2,
  .order-price,
  .order-business-strip strong,
  .order-meta-grid strong,
  .order-code-head strong,
  .profile-name,
  .item-title,
  .help-page strong,
  .mp-card h2,
  .mp-success-card h1,
  .gift-panel-header h2,
  .gift-panel-header strong,
  .gift-code-panel h2,
  .gift-terms-panel h2,
  .gift-business-card strong,
  .gift-detail-list strong,
  .gift-step strong,
  .business-card-name,
  .business-card-info strong
) {
  color:var(--tdu-ink);
}

:is([data-bs-theme="dark"], [data-theme="dark"]) :is(
  p,
  small,
  .logintry-card p,
  .login-hero p,
  .form-group label,
  .field-help,
  .auth-card-copy,
  .product-info p,
  .product-header p,
  .product-meta span,
  .order-header p,
  .order-meta,
  .order-hero-copy p,
  .order-business-strip span,
  .order-meta-grid span,
  .order-code-head span,
  .order-code-shell p,
  .profile-handle,
  .profile-email,
  .item-subtitle,
  .help-public-copy,
  .mp-card-copy,
  .mp-note,
  .mp-success-card p,
  .gift-main-intro,
  .gift-business-card span,
  .gift-business-card p,
  .gift-detail-list span,
  .gift-code-panel p,
  .gift-step p,
  .gift-terms-panel li,
  .business-description,
  .business-card-desc,
  .business-card-info span
) {
  color:var(--tdu-ink-2);
}

:is([data-bs-theme="dark"], [data-theme="dark"]) :is(
  .profile-section-label,
  .item-chevron,
  .whatsapp-country-trigger-copy small,
  .whatsapp-country-option-copy small,
  .whatsapp-country-trigger i,
  .search-autocomplete-copy small,
  .search-autocomplete-state,
  .business-breadcrumb,
  .gift-help-arrow
) {
  color:var(--tdu-ink-3);
}

:is([data-bs-theme="dark"], [data-theme="dark"]) :is(
  .filter-chip,
  .mobile-filter-btn,
  .product-check-input,
  .auth-success-email,
  .auth-form-message.is-info,
  .redeem-code span,
  .order-code-mask,
  .gift-code-value
) {
  background:var(--tdu-surface-quiet);
  border-color:var(--tdu-hairline-strong);
  color:var(--tdu-ink);
}

:is([data-bs-theme="dark"], [data-theme="dark"]) :is(
  .btn-outline-secondary,
  .mobile-theme-switch,
  .geo-modal .modal-header,
  .geo-modal .modal-footer,
  .order-payment-result + .order-payment-result,
  .order-qr-box,
  .order-meta-grid,
  .order-meta-grid > div,
  .gift-help-row,
  .business-page .btn-outline-secondary
) {
  border-color:var(--tdu-hairline);
}

:is([data-bs-theme="dark"], [data-theme="dark"]) :is(
  .profile-item:hover,
  .logout-link:hover,
  .business-card-list-item:hover,
  .business-card-list-item:focus,
  .gift-help-row:hover,
  .gift-help-row:focus,
  .whatsapp-country-option:hover,
  .whatsapp-country-option:focus-visible,
  .whatsapp-country-option.is-selected,
  .dropdown-item:hover,
  .dropdown-item:focus
) {
  background:var(--tdu-hairline);
  color:var(--tdu-ink);
}
