/* 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;
}

#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;
}

/* 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 40px 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);
}

.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;
}

.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;
}

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

.mobile-filter-bar {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 14px;
}

.mobile-filter-btn {
  display: inline-flex;
  align-items: center;
  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.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"] .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-image {
  width: 128px;
  height: 128px;
  border-radius: 16px;
  background: #F8F1EC;
  color: #F24E2E;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 46px;
  overflow: hidden;
}

.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;
  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(120px, 168px) 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-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;
}

[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;
}

@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;
  }
}

.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-layout {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
  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;
}

[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-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 .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;
}

.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"] .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;
}

@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,
  .business-dashboard-metrics,
  .business-dashboard-grid {
    width: 100%;
  }

  .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-header-row,
  .business-card-top {
    flex-direction: column;
  }

  .business-card-layout {
    grid-template-columns: 82px minmax(0, 1fr);
    gap: 14px;
  }

  .business-card-image {
    width: 82px;
    height: 82px;
    border-radius: 14px;
  }

  .create-business-btn,
  .business-card-actions .btn {
    width: 100%;
  }

  .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::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-avatar {
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  border-radius: 50%;
  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;
  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 {
  min-width: 168px;
  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-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;
  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::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;
}
