/* HuntBee account access pages */

.hb-theme .hb-login-page {
  padding-bottom: 68px;
}

.hb-theme .hb-login-page .hb-breadcrumb-wrap {
  margin-top: 18px;
}

.hb-theme .hb-login-shell {
  max-width: 1040px;
  margin: 10px auto 0;
}

.hb-theme .hb-login-intro {
  max-width: 660px;
  margin: 0 0 24px;
}

.hb-theme .hb-login-kicker,
.hb-theme .hb-login-eyebrow {
  display: inline-block;
  color: var(--hb-cyan);
  font-size: 12px;
  line-height: 1.2;
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.hb-theme .hb-login-kicker {
  margin-bottom: 7px;
}

.hb-theme .hb-login-intro h1 {
  margin: 0 0 7px;
  color: var(--hb-ink);
  font-size: 34px;
  line-height: 1.08;
  font-weight: 800;
  letter-spacing: -.035em;
}

.hb-theme .hb-login-intro p {
  margin: 0;
  color: var(--hb-muted);
  font-size: 12px;
  line-height: 1.6;
}

.hb-theme .hb-login-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(320px, .82fr);
  gap: 20px;
  align-items: stretch;
}

.hb-theme .hb-login-card,
.hb-theme .hb-register-card {
  border: 1px solid var(--hb-line);
  border-radius: 13px;
}

.hb-theme .hb-login-card {
  padding: 26px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(17,24,32,.055);
}

.hb-theme .hb-login-card-head {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 24px;
}

.hb-theme .hb-login-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
  border-radius: 10px;
  background: #f1f7f7;
  color: var(--hb-cyan);
  font-size: 15px;
}

.hb-theme .hb-login-card-head h2,
.hb-theme .hb-register-card h2 {
  margin: 5px 0 0;
  color: var(--hb-ink);
  font-size: 21px;
  line-height: 1.2;
  font-weight: 800;
  letter-spacing: -.02em;
}

.hb-theme .hb-login-form .form-group {
  margin-bottom: 17px;
}

.hb-theme .hb-login-form .control-label {
  display: block;
  margin-bottom: 6px;
  color: var(--hb-ink-soft);
  font-size: 12px;
  line-height: 1.3;
  font-weight: 800;
}

.hb-theme .hb-login-form .form-control {
  height: 42px;
  padding: 9px 11px;
  border: 1px solid #d8d4cb;
  border-radius: 7px;
  background: #fff;
  box-shadow: none;
  color: var(--hb-ink);
  font-size: 12px;
}

.hb-theme .hb-login-form .form-control:focus {
  border-color: #90c8cf;
  box-shadow: 0 0 0 3px rgba(42,167,184,.11);
}

.hb-theme .hb-login-label-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.hb-theme .hb-login-label-row .control-label {
  margin-bottom: 6px;
}

.hb-theme .hb-login-forgotten {
  margin-bottom: 6px;
  color: #67717a;
  font-size: 12px;
  line-height: 1.3;
  font-weight: 700;
}

.hb-theme .hb-login-forgotten:hover,
.hb-theme .hb-login-forgotten:focus {
  color: #8a6100;
}

.hb-theme .hb-password-field {
  position: relative;
}

.hb-theme .hb-password-field .form-control {
  padding-right: 44px;
}

.hb-theme .hb-password-toggle {
  position: absolute;
  top: 50%;
  right: 6px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 30px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #818b94;
  transform: translateY(-50%);
  font-size: 12px;
}

.hb-theme .hb-password-toggle:hover,
.hb-theme .hb-password-toggle:focus {
  background: #f3f1eb;
  color: #111820;
  outline: 0;
}

.hb-theme .hb-login-submit {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-width: 150px;
  min-height: 42px !important;
  margin-top: 3px;
}

.hb-theme .hb-login-security-note {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-top: 20px;
  padding-top: 16px;
  border-top: 1px solid #eeeae2;
  color: #78828b;
  font-size: 12px;
  line-height: 1.5;
}

.hb-theme .hb-login-security-note i {
  margin-top: 2px;
  color: var(--hb-cyan);
}

/* Registration side */
.hb-theme .hb-register-card {
  padding: 26px;
  background: #fbfaf6;
}

.hb-theme .hb-register-card > p {
  margin: 10px 0 20px;
  color: var(--hb-muted);
  font-size: 12px;
  line-height: 1.6;
}

.hb-theme .hb-register-benefits {
  display: grid;
  gap: 11px;
}

.hb-theme .hb-register-benefits > div {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
}

.hb-theme .hb-register-benefits > div > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 8px;
  background: #fff;
  color: var(--hb-cyan);
  font-size: 12px;
  box-shadow: inset 0 0 0 1px #e8e4dc;
}

.hb-theme .hb-register-benefits strong,
.hb-theme .hb-register-benefits small {
  display: block;
}

.hb-theme .hb-register-benefits strong {
  margin-bottom: 2px;
  color: var(--hb-ink);
  font-size: 12px;
  line-height: 1.35;
  font-weight: 800;
}

.hb-theme .hb-register-benefits small {
  color: var(--hb-muted);
  font-size: 12px;
  line-height: 1.45;
}

.hb-theme .hb-register-button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 40px !important;
  margin-top: 22px;
}

.hb-theme .hb-register-note {
  display: block;
  margin-top: 12px;
  color: #838c94;
  font-size: 12px;
  line-height: 1.5;
}

@media (max-width: 991px) {
  .hb-theme .hb-login-grid {
    grid-template-columns: 1fr;
  }

  .hb-theme .hb-register-card {
    order: 2;
  }
}

@media (max-width: 767px) {
  .hb-theme .hb-login-page {
    padding-bottom: 44px;
  }

  .hb-theme .hb-login-intro h1 {
    font-size: 28px;
  }

  .hb-theme .hb-login-card,
  .hb-theme .hb-register-card {
    padding: 20px;
    border-radius: 11px;
  }

  .hb-theme .hb-login-card-head {
    margin-bottom: 20px;
  }

  .hb-theme .hb-login-submit,
  .hb-theme .hb-register-button {
    width: 100%;
  }
}


/* Registration */
.hb-theme .hb-register-page {
  padding-bottom: 52px;
}

.hb-theme .hb-register-page .hb-breadcrumb-wrap {
  margin-top: 18px;
}

.hb-theme .hb-register-shell {
  width: 100%;
  max-width: none;
  margin: 8px 0 0;
}

.hb-theme .hb-register-intro {
  max-width: 760px;
  margin-bottom: 24px;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.hb-theme .hb-register-intro h1 {
  margin: 7px 0 7px;
  color: var(--hb-ink);
  font-size: 34px;
  line-height: 1.08;
  font-weight: 800;
  letter-spacing: -.035em;
}

.hb-theme .hb-register-intro > p {
  margin: 0;
  color: var(--hb-muted);
  font-size: 12px;
  line-height: 1.6;
}

.hb-theme .hb-register-login-note {
  margin-top: 9px;
  color: #6f7982;
  font-size: 12px;
  line-height: 1.45;
}

.hb-theme .hb-register-login-note a {
  color: var(--hb-ink);
  font-weight: 800;
  border-bottom: 1px solid #d8c574;
}

.hb-theme .hb-register-login-note a:hover,
.hb-theme .hb-register-login-note a:focus {
  color: #8a6100;
}

.hb-theme .hb-register-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 24px;
  align-items: start;
}

.hb-theme .hb-register-form {
  margin: 0;
}

.hb-theme .hb-register-section {
  display: block;
  min-width: 0;
  margin: 0 0 14px;
  padding: 0;
  overflow: hidden;
  border: 1px solid var(--hb-line);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 6px 22px rgba(17,24,32,.04);
}

.hb-theme .hb-register-section-head {
  display: flex;
  align-items: center;
  gap: 11px;
  width: 100%;
  margin: 0;
  padding: 18px 20px 15px;
  border-bottom: 1px solid #eeeae2;
  background: #fbfaf6;
}

.hb-theme .hb-register-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 16px;
  padding: 18px 20px 6px;
}

.hb-theme .hb-register-fields-preferences {
  grid-template-columns: 1fr;
}

.hb-theme .hb-register-section-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  border-radius: 9px;
  background: #f1f7f7;
  color: var(--hb-cyan);
  font-size: 13px;
  line-height: 1;
}

.hb-theme .hb-register-section-icon i {
  margin: 0;
  line-height: 1;
}

.hb-theme .hb-register-section-copy {
  min-width: 0;
}

.hb-theme .hb-register-section-copy strong,
.hb-theme .hb-register-section-copy small {
  display: block;
}

.hb-theme .hb-register-section-copy strong {
  color: var(--hb-ink);
  font-size: 15px;
  line-height: 1.3;
  font-weight: 800;
}

.hb-theme .hb-register-section-copy small {
  margin-top: 2px;
  color: var(--hb-muted);
  font-size: 12px;
  line-height: 1.45;
  font-weight: 500;
}

.hb-theme .hb-register-form .form-group {
  grid-column: 1 / -1;
  margin: 0 0 15px !important;
}

.hb-theme .hb-register-form .form-group.hb-register-half {
  grid-column: span 1;
}

.hb-theme .hb-register-password .form-group {
  grid-column: span 1;
}

.hb-theme .hb-register-form .form-group > .control-label,
.hb-theme .hb-register-form .form-group > label.control-label {
  float: none !important;
  display: block;
  width: auto !important;
  margin: 0 0 6px;
  padding: 0 !important;
  color: var(--hb-ink-soft);
  font-size: 12px;
  line-height: 1.3;
  font-weight: 800;
  text-align: left !important;
}

.hb-theme .hb-register-form .form-group.required > .control-label::before {
  content: "*";
  margin-right: 3px;
  color: #c34b43;
}

.hb-theme .hb-register-form .form-group > .col-sm-10 {
  float: none !important;
  width: 100% !important;
  padding: 0 !important;
}

.hb-theme .hb-register-form .form-control {
  height: 41px;
  padding: 8px 11px;
  border: 1px solid #d8d4cb;
  border-radius: 7px;
  background: #fff;
  box-shadow: none;
  color: var(--hb-ink);
  font-size: 12px;
}

.hb-theme .hb-register-form textarea.form-control {
  height: auto;
  min-height: 96px;
  resize: vertical;
}

.hb-theme .hb-register-form .form-control:focus {
  border-color: #90c8cf;
  box-shadow: 0 0 0 3px rgba(42,167,184,.11);
}

.hb-theme .hb-register-form .text-danger {
  margin-top: 5px;
  color: #a13f39;
  font-size: 12px;
  line-height: 1.4;
  font-weight: 600;
}

.hb-theme .hb-register-form .radio,
.hb-theme .hb-register-form .checkbox {
  margin: 0 0 7px;
}

.hb-theme .hb-register-form .radio-inline,
.hb-theme .hb-register-form .checkbox-inline,
.hb-theme .hb-register-form .radio label,
.hb-theme .hb-register-form .checkbox label {
  color: #53606b;
  font-size: 12px;
  line-height: 1.4;
  font-weight: 600;
}

.hb-theme .hb-register-form input[type="radio"],
.hb-theme .hb-register-form input[type="checkbox"] {
  accent-color: var(--hb-cyan);
}

.hb-theme .hb-register-form .input-group-btn .btn {
  height: 41px;
  border-radius: 0 7px 7px 0;
}

.hb-theme .hb-register-form .input-group .form-control {
  border-radius: 7px 0 0 7px;
}

.hb-theme .hb-register-preferences .form-group {
  margin-bottom: 0 !important;
}

.hb-theme .hb-register-preferences .radio-inline {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 34px;
  margin: 0 7px 0 0;
  padding: 0 11px;
  border: 1px solid #ddd8cf;
  border-radius: 7px;
  background: #faf9f5;
}

.hb-theme .hb-register-preferences .radio-inline input {
  position: static;
  margin: 0;
}

/* Agreement and primary registration action */
.hb-theme .hb-register-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 16px;
  padding: 17px 18px;
  border: 1px solid var(--hb-line);
  border-radius: 11px;
  background: #fbfaf6;
}

.hb-theme .hb-register-agree {
  display: flex;
  align-items: center;
  gap: 9px;
  max-width: 620px;
  margin: 0;
  color: #5f6972;
  font-size: 12px;
  line-height: 1.5;
  font-weight: 500;
  cursor: pointer;
}

.hb-theme .hb-register-agree input {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  margin: 0;
}

.hb-theme .hb-register-agree a {
  color: var(--hb-ink);
  font-weight: 800;
}

.hb-theme .hb-register-submit {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  gap: 7px;
  min-width: 190px;
  min-height: 46px !important;
}

/* Registration value proposition */
.hb-theme .hb-register-side {
  position: sticky;
  top: 18px;
}

.hb-theme .hb-register-side-card {
  padding: 22px 22px 26px;
  border: 1px solid #ddd8cd;
  border-radius: 12px;
  background: #fbfaf6;
}

.hb-theme .hb-register-side-card h2 {
  margin: 5px 0 8px;
  color: var(--hb-ink);
  font-size: 19px;
  line-height: 1.25;
  font-weight: 800;
  letter-spacing: -.02em;
}

.hb-theme .hb-register-side-card > p {
  margin: 0 0 18px;
  color: var(--hb-muted);
  font-size: 12px;
  line-height: 1.55;
}

.hb-theme .hb-register-side-benefits {
  display: grid;
  gap: 12px;
}

.hb-theme .hb-register-side-benefits > div {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
}

.hb-theme .hb-register-side-benefits > div > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 8px;
  background: #fff;
  color: var(--hb-cyan);
  font-size: 12px;
  box-shadow: inset 0 0 0 1px #e7e3da;
}

.hb-theme .hb-register-side-benefits strong,
.hb-theme .hb-register-side-benefits small {
  display: block;
}

.hb-theme .hb-register-side-benefits strong {
  margin-bottom: 2px;
  color: var(--hb-ink);
  font-size: 12px;
  line-height: 1.35;
  font-weight: 800;
}

.hb-theme .hb-register-side-benefits small {
  color: var(--hb-muted);
  font-size: 12px;
  line-height: 1.45;
}

.hb-theme .hb-register-side-note {
  display: flex;
  gap: 8px;
  margin-top: 18px;
  padding-top: 15px;
  border-top: 1px solid #e7e2d8;
  color: #727c85;
  font-size: 12px;
  line-height: 1.5;
}

.hb-theme .hb-register-side-note i {
  margin-top: 2px;
  color: var(--hb-cyan);
}

/* Security verification */
.hb-theme .hb-register-captcha-card {
  margin: 0 0 14px;
  padding: 0;
  overflow: hidden;
  border: 1px solid var(--hb-line);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 6px 22px rgba(17,24,32,.04);
}

.hb-theme .hb-register-captcha-head {
  display: flex;
  align-items: center;
  gap: 11px;
  margin: 0;
  padding: 18px 20px 15px;
  border-bottom: 1px solid #eeeae2;
  background: #fbfaf6;
}

.hb-theme .hb-register-captcha-content {
  padding: 16px 20px 18px;
}

.hb-theme .hb-register-captcha-content > fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}

.hb-theme .hb-register-captcha-content > fieldset > legend {
  display: none;
}

.hb-theme .hb-register-captcha-content .form-group {
  margin: 0 !important;
}

.hb-theme .hb-register-captcha-content .control-label {
  display: none !important;
}

.hb-theme .hb-register-captcha-content .col-sm-10 {
  float: none !important;
  width: 100% !important;
  padding: 0 !important;
}

.hb-theme .hb-register-captcha-content .g-recaptcha {
  margin: 0;
}

@media (max-width: 991px) {
  .hb-theme .hb-register-layout {
    grid-template-columns: 1fr;
  }

  .hb-theme .hb-register-side {
    position: static;
  }
}

@media (max-width: 767px) {
  .hb-theme .hb-register-page {
    padding-bottom: 36px;
  }

  .hb-theme .hb-register-intro h1 {
    font-size: 28px;
  }

  .hb-theme .hb-register-section-head,
  .hb-theme .hb-register-captcha-head {
    padding: 16px 16px 13px;
  }

  .hb-theme .hb-register-fields {
    grid-template-columns: 1fr;
    padding: 16px 16px 4px;
  }

  .hb-theme .hb-register-form .form-group.hb-register-half,
  .hb-theme .hb-register-password .form-group {
    grid-column: 1 / -1;
  }

  .hb-theme .hb-register-captcha-content {
    padding: 14px 16px 16px;
  }

  .hb-theme .hb-register-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .hb-theme .hb-register-submit {
    width: 100%;
  }
}


/* Logged-in account dashboard */
.hb-theme #account-account {
  padding-bottom: 58px;
}

.hb-theme #account-account > .breadcrumb {
  margin-top: 18px !important;
}

.hb-theme #account-account #content {
  min-width: 0;
}

.hb-theme .hb-account-tools {
  width: 100%;
  max-width: none;
  margin: 30px 0 0;
}

.hb-theme .hb-account-tools-intro {
  margin-bottom: 16px;
}

.hb-theme .hb-account-tools-kicker {
  display: inline-block;
  margin-bottom: 6px;
  color: var(--hb-cyan);
  font-size: 12px;
  line-height: 1.2;
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.hb-theme .hb-account-tools-intro h2 {
  margin: 0 0 5px;
  color: var(--hb-ink);
  font-size: 24px;
  line-height: 1.15;
  font-weight: 800;
  letter-spacing: -.025em;
}

.hb-theme .hb-account-tools-intro p {
  margin: 0;
  color: var(--hb-muted);
  font-size: 12px;
  line-height: 1.5;
}

.hb-theme .hb-account-tools-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.hb-theme .hb-account-tool-card {
  overflow: hidden;
  border: 1px solid var(--hb-line);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 6px 22px rgba(17,24,32,.04);
}

.hb-theme .hb-account-tool-card-head {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 17px 18px 14px;
  border-bottom: 1px solid #eeeae2;
  background: #fbfaf6;
}

.hb-theme .hb-account-tool-section-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  border-radius: 9px;
  background: #f1f7f7;
  color: var(--hb-cyan);
  font-size: 13px;
  line-height: 1;
}

.hb-theme .hb-account-tool-section-icon i {
  margin: 0;
  line-height: 1;
}

.hb-theme .hb-account-tool-card-title {
  min-width: 0;
}

.hb-theme .hb-account-tool-card-title h3 {
  margin: 0 0 2px;
  color: var(--hb-ink);
  font-size: 14px;
  line-height: 1.3;
  font-weight: 800;
}

.hb-theme .hb-account-tool-card-title p {
  margin: 0;
  color: var(--hb-muted);
  font-size: 12px;
  line-height: 1.45;
}

.hb-theme .hb-account-tool-links {
  padding: 7px;
}

.hb-theme .hb-account-tool-link {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) 18px;
  gap: 9px;
  align-items: center;
  min-height: 44px;
  padding: 6px 8px;
  border-radius: 8px;
  color: #3c4852;
  text-decoration: none;
  transition: background-color .16s ease, color .16s ease;
}

.hb-theme .hb-account-tool-link:hover,
.hb-theme .hb-account-tool-link:focus {
  background: #f8f6f0;
  color: #111820;
  text-decoration: none;
}

.hb-theme .hb-account-tool-link-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: #f3f8f8;
  color: var(--hb-cyan);
  font-size: 10px;
  line-height: 1;
}

.hb-theme .hb-account-tool-link-icon i {
  margin: 0;
  line-height: 1;
}

.hb-theme .hb-account-tool-link-label {
  min-width: 0;
  font-size: 12px;
  line-height: 1.4;
  font-weight: 700;
}

.hb-theme .hb-account-tool-link-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #b0b7bd;
  font-size: 7px;
}

.hb-theme .hb-account-tool-link:hover .hb-account-tool-link-arrow,
.hb-theme .hb-account-tool-link:focus .hb-account-tool-link-arrow {
  color: var(--hb-amber-strong);
}

@media (max-width: 767px) {
  .hb-theme #account-account {
    padding-bottom: 40px;
  }

  .hb-theme .hb-account-tools {
    margin-top: 22px;
  }

  .hb-theme .hb-account-tools-grid {
    grid-template-columns: 1fr;
  }

  .hb-theme .hb-account-tools-intro h2 {
    font-size: 21px;
  }
}


/* Wishlist: compact product cards, with no horizontal-scroll table */
.hb-theme .hb-wishlist-page {
  padding-bottom: 58px;
}

.hb-theme .hb-wishlist-page .hb-breadcrumb-wrap {
  margin-top: 18px;
}

.hb-theme .hb-wishlist-page #content {
  min-width: 0;
}

.hb-theme .hb-wishlist-shell {
  margin: 12px 0 26px;
}

.hb-theme .hb-wishlist-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  margin-bottom: 18px;
}

.hb-theme .hb-wishlist-title {
  display: flex;
  align-items: center;
  gap: 13px;
  min-width: 0;
}

.hb-theme .hb-wishlist-icon,
.hb-theme .hb-wishlist-empty-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  border: 1px solid #eadfc1;
  border-radius: 12px;
  background: #fff8e7;
  color: #9a6b0b;
  font-size: 20px;
}

.hb-theme .hb-wishlist-title h1 {
  margin: 0;
  color: var(--hb-ink);
  font-size: clamp(24px, 3vw, 32px);
  line-height: 1.2;
  font-weight: 800;
  letter-spacing: -.03em;
}

.hb-theme .hb-wishlist-title p {
  margin: 3px 0 0;
  color: var(--hb-muted);
  font-size: 13px;
}

.hb-theme .hb-wishlist-back {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex-shrink: 0;
  min-height: 40px;
  padding: 9px 14px;
  font-weight: 700;
  border-radius: 8px;
}

.hb-theme .hb-wishlist-list {
  overflow: hidden;
  border: 1px solid var(--hb-line);
  border-radius: 13px;
  background: #fff;
  box-shadow: 0 6px 22px rgba(17, 24, 32, .04);
}

.hb-theme .hb-wishlist-item {
  display: grid;
  grid-template-columns: 130px minmax(0, 1fr) minmax(170px, 208px);
  align-items: center;
  gap: 20px;
  min-width: 0;
  padding: 18px;
}

.hb-theme .hb-wishlist-item + .hb-wishlist-item {
  border-top: 1px solid #eeeae2;
}

.hb-theme .hb-wishlist-image {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 130px;
  height: 104px;
  overflow: hidden;
  border: 1px solid #eeeae2;
  border-radius: 9px;
  background: #faf9f5;
  color: #a0a8ae;
  text-decoration: none;
}

.hb-theme .hb-wishlist-image img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
}

.hb-theme .hb-wishlist-details {
  min-width: 0;
}

.hb-theme .hb-wishlist-details h2 {
  margin: 0 0 12px;
  font-size: 16px;
  line-height: 1.5;
  font-weight: 800;
}

.hb-theme .hb-wishlist-description {
  margin: 0 0 12px;
  color: var(--hb-muted);
  font-size: 13px;
  line-height: 1.55;
  overflow-wrap: anywhere;
}

.hb-theme .hb-wishlist-details h2 a {
  color: var(--hb-ink);
  text-decoration: none;
}

.hb-theme .hb-wishlist-details h2 a:hover,
.hb-theme .hb-wishlist-details h2 a:focus {
  color: #996500;
  text-decoration: underline;
}

.hb-theme .hb-wishlist-meta-label {
  color: var(--hb-muted);
  font-size: 12px;
  line-height: 1.4;
}

.hb-theme .hb-wishlist-stock {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  color: #4b5961;
  font-size: 13px;
  line-height: 1.4;
}

.hb-theme .hb-wishlist-purchase {
  min-width: 0;
  justify-self: stretch;
}

.hb-theme .hb-wishlist-price {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: flex-end;
  gap: 5px 9px;
  margin-bottom: 13px;
  text-align: right;
}

.hb-theme .hb-wishlist-price .hb-wishlist-meta-label {
  flex-basis: 100%;
}

.hb-theme .hb-wishlist-price strong {
  color: var(--hb-ink);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 800;
}

.hb-theme .hb-wishlist-price del {
  color: #808a90;
  font-size: 13px;
}

.hb-theme .hb-wishlist-actions {
  display: flex;
  justify-content: flex-end;
  align-items: stretch;
  gap: 9px;
}

.hb-theme .hb-wishlist-add {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 42px;
  padding: 10px 13px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 800;
  white-space: normal;
}

.hb-theme .hb-wishlist-remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 42px;
  min-height: 42px;
  border: 1px solid #ead1cb;
  border-radius: 8px;
  background: #fffafa;
  color: #ae4e46;
  font-size: 15px;
  text-decoration: none;
}

.hb-theme .hb-wishlist-remove:hover,
.hb-theme .hb-wishlist-remove:focus {
  border-color: #ce857d;
  background: #fff1ef;
  color: #923b32;
  text-decoration: none;
}

.hb-theme .hb-wishlist-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 17px;
  padding: 55px 20px;
  border: 1px solid var(--hb-line);
  border-radius: 13px;
  background: #fff;
  text-align: center;
}

.hb-theme .hb-wishlist-empty-icon {
  width: 66px;
  height: 66px;
  border-radius: 17px;
  font-size: 27px;
}

.hb-theme .hb-wishlist-empty p {
  margin: 0;
  color: var(--hb-muted);
  font-size: 15px;
}

.hb-theme .hb-wishlist-empty .btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 42px;
  padding: 10px 18px;
  border-radius: 8px;
  font-weight: 800;
}

.hb-theme .hb-wishlist-page a:focus-visible,
.hb-theme .hb-wishlist-page button:focus-visible {
  outline: 3px solid #369cb0;
  outline-offset: 3px;
}

@media (max-width: 991px) {
  .hb-theme .hb-wishlist-item {
    grid-template-columns: 112px minmax(0, 1fr);
    gap: 15px;
  }

  .hb-theme .hb-wishlist-image {
    width: 112px;
    height: 96px;
  }

  .hb-theme .hb-wishlist-purchase {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    grid-column: 2;
  }

  .hb-theme .hb-wishlist-price {
    justify-content: flex-start;
    margin-bottom: 0;
    text-align: left;
  }
}

@media (max-width: 600px) {
  .hb-theme .hb-wishlist-page {
    padding-bottom: 40px;
  }

  .hb-theme .hb-wishlist-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .hb-theme .hb-wishlist-back {
    align-self: flex-start;
  }

  .hb-theme .hb-wishlist-item {
    grid-template-columns: 88px minmax(0, 1fr);
    align-items: start;
    gap: 12px;
    padding: 13px;
  }

  .hb-theme .hb-wishlist-image {
    width: 88px;
    height: 80px;
  }

  .hb-theme .hb-wishlist-details h2 {
    margin-bottom: 8px;
    font-size: 14px;
  }

  .hb-theme .hb-wishlist-purchase {
    grid-column: 1 / -1;
    align-items: center;
    gap: 12px;
    padding-top: 10px;
    border-top: 1px solid #f1eee7;
  }

  .hb-theme .hb-wishlist-add {
    min-height: 42px;
    padding: 9px 10px;
    font-size: 12px;
  }

  .hb-theme .hb-wishlist-price strong {
    font-size: 17px;
  }
}

@media (max-width: 360px) {
  .hb-theme .hb-wishlist-purchase {
    align-items: stretch;
    flex-direction: column;
  }

  .hb-theme .hb-wishlist-actions {
    justify-content: stretch;
  }

  .hb-theme .hb-wishlist-add {
    flex: 1;
  }
}
