/* WB_ACCOUNT_PROFILE_UI_PVZ_FINAL_FIX_V1 */
body.wb-account-page .wb-account-profile,
body.wb-account-page .wb-account-list-panel.wb-account-profile {
  min-height: 0 !important;
}

body.wb-account-page .wb-account-shell {
  padding-bottom: 36px !important;
}

body.wb-account-page .wb-account-profile--password {
  margin-top: 30px !important;
}

body.wb-account-page .wb-account-profile--password .wb-account-profile__inner {
  padding-top: 0 !important;
}

body.wb-account-page .wb-account-profile__inner {
  padding-bottom: 30px !important;
}

body.wb-account-page .wb-account-profile-form {
  overflow: visible !important;
}

body.wb-account-page .wb-account-floating-field {
  position: relative !important;
}

body.wb-account-page .wb-account-floating-field .wb-account-field-status,
body.wb-account-page .wb-account-floating-field button.wb-account-field-status {
  position: absolute !important;
  top: 50% !important;
  right: 17px !important;
  z-index: 5 !important;
  display: inline-flex !important;
  width: 20px !important;
  height: 20px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 !important;
  line-height: 1 !important;
  transform: translateY(-50%) !important;
}

body.wb-account-page .wb-account-floating-field .wb-account-field-status:empty:not(button) {
  display: none !important;
}

body.wb-account-page input[data-wb-account-native-date],
body.wb-account-page .wb-account-native-date {
  position: absolute !important;
  right: 17px !important;
  top: 50% !important;
  width: 20px !important;
  height: 20px !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transform: translateY(-50%) !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}

body.wb-account-page [data-wb-profile-phone-field] .wb-ui-control {
  padding-left: 48px !important;
}

body.wb-account-page [data-wb-profile-phone-field] .iti {
  display: block !important;
  width: 100% !important;
}

body.wb-account-page [data-wb-profile-phone-field] .iti .wb-ui-control,
body.wb-account-page [data-wb-profile-phone-field] .iti input[type="tel"] {
  width: 100% !important;
  padding-left: 52px !important;
}

body.wb-account-page .wb-account-phone-flag-sprite,
body.wb-account-page [data-wb-phone-flag-fallback],
body.wb-account-page .wb-ui-control-icon--flag {
  position: absolute !important;
  top: 50% !important;
  left: 17px !important;
  z-index: 6 !important;
  display: inline-block !important;
  transform: translateY(-50%) !important;
}

body.wb-account-page [data-wb-profile-phone-field].is-iti-ready > [data-wb-phone-flag-fallback] {
  display: none !important;
}

body.wb-account-page .wb-account-pvz {
  margin-top: 34px !important;
}

body.wb-account-page .wb-account-pvz__head p {
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #9d96a0 !important;
}

body.wb-account-page .wb-account-pvz__list {
  margin-bottom: 18px !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: 12px !important;
  background: transparent !important;
}

body.wb-account-page .wb-account-pvz__line {
  min-height: 43px !important;
  padding: 9px 13px !important;
  border-radius: 0 !important;
  color: #211d24 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
}

body.wb-account-page .wb-account-pvz__line:nth-child(odd) {
  background: #fff1f8 !important;
}

body.wb-account-page .wb-account-pvz__line:nth-child(even) {
  background: #fff !important;
}

body.wb-account-page .wb-account-pvz__line:first-child {
  border-radius: 12px 12px 0 0 !important;
}

body.wb-account-page .wb-account-pvz__line:last-child {
  border-radius: 0 0 12px 12px !important;
}

body.wb-account-page .wb-account-pvz__line:only-child {
  border-radius: 12px !important;
}

body.wb-account-page .wb-account-pvz__line--head {
  margin-inline: 0 !important;
  padding-inline: 13px !important;
}

body.wb-account-page .wb-account-pvz__main {
  display: grid !important;
  gap: 3px !important;
  min-width: 0 !important;
}

body.wb-account-page .wb-account-pvz__main > strong {
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
}

body.wb-account-page .wb-account-pvz__main span,
body.wb-account-page .wb-account-pvz__main small {
  min-width: 0 !important;
  overflow-wrap: break-word !important;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
}

body.wb-account-page .wb-account-pvz__main small {
  display: block !important;
  font-size: 12px;
  font-weight: 400;
}

body.wb-account-page .wb-account-pvz__actions a {
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
}

body.wb-account-page .wb-account-pvz__line {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) max-content 18px;
  align-items: center !important;
  column-gap: 16px !important;
  row-gap: 4px;
}
body.wb-account-page .wb-account-pvz__main { grid-column: 1; min-width: 0; }
body.wb-account-page .wb-account-pvz__actions { display: contents !important; }
body.wb-account-page .wb-account-pvz__actions a { grid-column: 2; }
body.wb-account-page .wb-account-pvz__actions .wb-account-pvz__delete { grid-column: 3; }
body.wb-account-page .wb-account-pvz__address-full { display: block; }
body.wb-account-page .wb-account-pvz__address-disclosure { display: none; }
body.wb-account-page .wb-account-pvz__address-disclosure summary { list-style: none; }
body.wb-account-page .wb-account-pvz__address-disclosure summary::-webkit-details-marker { display: none; }

body.wb-account-page .wb-account-pvz__actions {
  flex: 0 0 auto !important;
}

body.wb-account-page .wb-account-pvz__empty {
  padding: 14px 16px !important;
  border-radius: 12px !important;
  color: #7d707a !important;
  background: #fff1f8 !important;
  font-size: .8rem !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
}

body.wb-account-page .wb-account-profile-submit {
  margin-top: 18px !important;
}

body.wb-account-page .wb-point-modal .wb-point-modal__list .wb-point-row {
  width: 100%;
  min-height: 56px;
  padding: 12px 14px;
  border: 0;
  border-radius: 12px;
  background: #fff;
  color: #211d24;
  text-align: left;
  font-family: var(--wb-font-base, inherit);
  font-size: .84rem;
  font-weight: 800;
}

body.wb-account-page .wb-point-modal .wb-point-modal__list .wb-point-row + .wb-point-row {
  margin-top: 8px;
}

body.wb-account-page [data-wb-profile-pvz-root] {
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  column-gap: 16px;
}
body.wb-account-page .wb-account-pvz__head { grid-column: 1; grid-row: 1; }
body.wb-account-page [data-wb-profile-pvz-root] > [data-wb-delivery-card] { grid-column: 2; grid-row: 1; align-self: center; }
body.wb-account-page [data-wb-profile-pvz-list] { grid-column: 1 / -1; grid-row: 2; }

/* Existing account typography and checkbox, aligned to the desktop OpenPencil frame. */
body.wb-account-page .wb-account-summary-card { width: max-content; min-width: 254px; max-width: 100%; gap: 12px; }
body.wb-account-page .wb-account-summary-card h1,
body.wb-account-page .wb-account-summary-card h2 { font-size: 20px; font-weight: 600; line-height: 29.6px; white-space: nowrap; }
body.wb-account-page .wb-account-summary-card p { font-size: 14px; font-weight: 500; line-height: 20.72px; white-space: nowrap; }
body.wb-account-page .wb-account-summary-card img { flex: 0 0 56px; width: 56px; height: 56px; object-fit: contain; }
body.wb-account-page .wb-account-form-check,
body.wb-account-page .wb-account-profile .wb-ui-check { display: flex !important; align-items: center !important; gap: 9px !important; font-size: 14px; font-weight: 400; line-height: 20px; }
body.wb-account-page .wb-account-form-check .form-check-input,
body.wb-account-page .wb-account-profile .wb-ui-check .form-check-input { flex: 0 0 18px !important; width: 18px !important; height: 18px !important; margin: 0 !important; }
body.wb-account-page .wb-account-form-check > span,
body.wb-account-page .wb-account-profile .wb-ui-check > span { min-width: 0; line-height: inherit; }
@media (max-width: 767.98px) {
  /* Profile layout: one-column mobile composition at 375 px. */
  body.wb-account-page .wb-account-shell {
    width: 100%;
    padding-right: 14px !important;
    padding-left: 14px !important;
    padding-bottom: 24px !important;
  }
  body.wb-account-page .wb-account-topline,
  body.wb-account-page .wb-account-summary {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }
  body.wb-account-page .wb-account-summary-card {
    width: max-content;
    min-width: 290px !important;
    max-width: 100% !important;
    width: max-content !important;
    min-height: 76px;
    gap: 10px;
    padding: 12px 14px;
  }
  body.wb-account-page .wb-account-summary-card__content {
    min-width: max-content;
    flex: 0 0 auto;
  }
  body.wb-account-page .wb-account-summary-card h1,
  body.wb-account-page .wb-account-summary-card h2 {
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 19px !important;
    white-space: nowrap !important;
  }
  body.wb-account-page .wb-account-summary-card p {
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 18px !important;
    white-space: nowrap !important;
  }
  body.wb-account-page .wb-account-summary-card img {
    flex: 0 0 44px;
    width: 44px !important;
    height: 44px !important;
    object-fit: contain;
  }
  body.wb-account-page .wb-account-tabs {
    width: 100%;
    max-width: 100%;
    flex-wrap: nowrap !important;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    gap: 4px;
  }
  body.wb-account-page .wb-account-tabs::-webkit-scrollbar { display: none; }
  body.wb-account-page .wb-account-tab {
    flex: 0 0 auto;
    box-sizing: border-box;
    height: 40px;
    min-height: 40px;
    align-items: center;
    justify-content: center;
    padding: 0 12px;
    font-size: 12px;
    font-weight: 500;
    line-height: 18px;
    border-radius: 16px;
    white-space: nowrap;
  }
  body.wb-account-page .wb-account-logout {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto;
    height: 36px;
    min-height: 36px;
    padding: 0 15px;
    font-size: 12px;
    font-weight: 500;
    line-height: 18px;
    white-space: nowrap;
  }
  body.wb-account-page .wb-account-panels {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  /* Place the independent password form between the two sections of the data form.
     The SendIt forms remain separate in the DOM; only their visual layout changes. */
  body.wb-account-page .wb-account-panels:has(> [data-wb-account-profile-root]) {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
  }
  body.wb-account-page .wb-account-panels:has(> [data-wb-account-profile-root]) > [data-wb-account-profile-root],
  body.wb-account-page [data-wb-account-profile-root] > .wb-account-profile__inner,
  body.wb-account-page [data-wb-account-profile-root] .wb-account-profile-form {
    display: contents !important;
  }
  body.wb-account-page .wb-account-panels:has(> [data-wb-account-profile-root]) > :not([data-wb-account-profile-root]):not(.wb-account-profile--password) {
    order: 10;
  }
  body.wb-account-page [data-wb-account-profile-root] #wbAccountProfileTitle {
    order: 0;
    margin: 0 !important;
    padding: 16px 14px 12px;
    border-radius: 16px 16px 0 0;
    background: #fbfbfb;
  }
  body.wb-account-page [data-wb-account-profile-root] .wb-account-profile__personal {
    order: 1;
    min-width: 0;
    padding: 18px 14px 8px;
    background: #fff;
  }
  body.wb-account-page .wb-account-panels:has(> [data-wb-account-profile-root]) > .wb-account-profile--password {
    order: 2;
    width: 100%;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 14px 14px 8px !important;
    border-radius: 0;
    background: #fff;
    box-shadow: none;
  }
  body.wb-account-page .wb-account-profile--password #wbAccountPasswordTitle {
    margin: 0 0 10px;
    font-size: 18px;
    font-weight: 500;
    line-height: 26px;
  }
  body.wb-account-page .wb-account-profile--password .wb-account-profile-subtitle {
    display: none;
  }
  body.wb-account-page .wb-account-profile--password .wb-account-profile-form {
    display: block !important;
    padding: 0 !important;
  }
  body.wb-account-page [data-wb-account-profile-root] .wb-account-profile__delivery {
    order: 3;
    min-width: 0;
    padding: 18px 14px 22px;
    border-radius: 0 0 16px 16px;
    background: #fff;
  }
  body.wb-account-page .wb-account-profile,
  body.wb-account-page .wb-account-list-panel.wb-account-profile {
    min-width: 0;
    width: 100%;
    min-height: 0 !important;
    padding: 20px 12px 22px !important;
    border-radius: 16px;
  }
  body.wb-account-page .wb-account-profile__inner {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    padding: 0 !important;
  }
  body.wb-account-page .wb-account-profile-form {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    padding: 16px 4px 0 !important;
    overflow: visible !important;
  }
  body.wb-account-page .wb-account-profile .wb-account-section-title {
    margin: 0 0 18px;
    font-size: 18px;
    font-weight: 600;
    line-height: 26px;
  }
  body.wb-account-page .wb-account-profile-subtitle,
  body.wb-account-page .wb-account-pvz h3 {
    font-size: 18px;
    font-weight: 500;
    line-height: 26px;
  }
  body.wb-account-page .wb-account-floating-field,
  body.wb-account-page .wb-account-floating-field .form-control {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }
  body.wb-account-page .wb-account-floating-field > .form-control,
  body.wb-account-page .wb-account-floating-field > .iti {
    min-height: 62px;
    border-radius: 16px;
  }
  body.wb-account-page .wb-account-address-row,
  body.wb-account-page .wb-account-address-details {
    --bs-gutter-x: 12px;
    --bs-gutter-y: 12px;
  }
  body.wb-account-page .wb-account-form-check,
  body.wb-account-page .wb-account-profile .wb-ui-check {
    display: flex !important;
    width: 100%;
    align-items: flex-start !important;
    justify-content: flex-start;
    gap: 10px !important;
    margin-top: 6px;
    color: #535353;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 18px !important;
  }
  body.wb-account-page .wb-account-form-check .form-check-input,
  body.wb-account-page .wb-account-profile .wb-ui-check .form-check-input {
    flex: 0 0 18px !important;
    width: 18px !important;
    min-width: 18px !important;
    height: 18px !important;
    min-height: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
    background-color: #b8b3b8 !important;
    -webkit-mask: var(--wb-ui-icon-checkbox-unchecked) center / contain no-repeat !important;
    mask: var(--wb-ui-icon-checkbox-unchecked) center / contain no-repeat !important;
  }
  body.wb-account-page .wb-account-form-check .form-check-input:checked,
  body.wb-account-page .wb-account-profile .wb-ui-check .form-check-input:checked {
    background-color: #f397c1 !important;
    -webkit-mask: var(--wb-ui-icon-checkbox-checked) center / contain no-repeat !important;
    mask: var(--wb-ui-icon-checkbox-checked) center / contain no-repeat !important;
  }
  body.wb-account-page .wb-account-form-check > span,
  body.wb-account-page .wb-account-profile .wb-ui-check > span {
    display: block !important;
    flex: 1 1 auto !important;
    min-width: 0;
    padding-top: 0;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    text-align: left;
  }
  body.wb-account-page .wb-account-pvz {
    width: 100%;
    min-width: 0;
    margin-top: 34px !important;
  }
  body.wb-account-page [data-wb-profile-pvz-root] {
    display: flex;
    flex-direction: column;
    gap: 0;
    min-width: 0;
    padding: 12px 6px 14px;
    margin-inline: -6px;
    border-radius: 16px;
    background: #fbfbfb;
  }
  body.wb-account-page .wb-account-pvz__head {
    display: block;
    margin: 0 0 12px !important;
  }
  body.wb-account-page .wb-account-pvz__head > div {
    width: 100%;
  }
  body.wb-account-page .wb-account-pvz__head p {
    display: none;
  }
  body.wb-account-page .wb-account-pvz__head [data-wb-delivery-card] {
    width: 100%;
  }
  body.wb-account-page .wb-account-pvz__list {
    width: 100%;
    margin-bottom: 16px !important;
    overflow: hidden !important;
    border-radius: 14px !important;
  }
  body.wb-account-page .wb-account-pvz__line {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 20px;
    column-gap: 9px !important;
    row-gap: 4px;
    min-width: 0;
    min-height: 64px !important;
    padding: 12px 10px !important;
    align-items: start !important;
  }
  body.wb-account-page .wb-account-pvz__main {
    grid-column: 1;
    grid-row: 1;
    display: block !important;
    width: 100%;
    max-width: 100%;
    min-width: 0 !important;
    overflow: hidden;
  }
  body.wb-account-page .wb-account-pvz__main > strong {
    display: block;
    margin-bottom: 4px;
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
  }
  body.wb-account-page .wb-account-pvz__address-full,
  body.wb-account-page .wb-account-pvz__main .wb-account-pvz__hours-desktop {
    display: none !important;
  }
  body.wb-account-page .wb-account-pvz__address-disclosure {
    display: block;
    min-width: 0;
    max-width: 100%;
  }
  body.wb-account-page .wb-account-pvz__address-disclosure summary {
    width: 100%;
    list-style: none;
    cursor: pointer;
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    overflow-wrap: normal !important;
  }
  body.wb-account-page .wb-account-pvz__address-disclosure summary::-webkit-details-marker { display: none; }
  body.wb-account-page .wb-account-pvz__address-disclosure[open] summary {
    white-space: normal;
  }
  body.wb-account-page .wb-account-pvz__address-disclosure > span,
  body.wb-account-page .wb-account-pvz__address-disclosure > small {
    display: block;
    margin-top: 5px;
    font-size: 12px;
    font-weight: 400;
    line-height: 18px;
    overflow-wrap: break-word !important;
    word-break: normal;
  }
  body.wb-account-page .wb-account-pvz__actions {
    display: contents !important;
  }
  body.wb-account-page .wb-account-pvz__actions a {
    grid-column: 1;
    grid-row: 2;
    justify-self: start;
    width: auto;
    min-width: 0;
    font-size: 12px;
    font-weight: 400;
    line-height: 18px;
    text-decoration: underline;
    white-space: nowrap;
  }
  body.wb-account-page .wb-account-pvz__actions .wb-account-pvz__delete {
    grid-column: 2;
    grid-row: 1 / span 2;
    justify-self: center;
    align-self: center;
    margin: 0;
    width: 18px;
    height: 18px;
  }
  body.wb-account-page [data-wb-profile-pvz-root] > [data-wb-delivery-card] {
    display: block;
    width: 100%;
    margin-top: 12px;
  }
  body.wb-account-page .wb-account-pvz__add[data-wb-profile-pvz-add] {
    width: 100%;
    min-height: 52px;
    border-radius: 16px;
  }
  body.wb-account-page .wb-account-profile-save-row {
    width: 100%;
    margin-top: 22px !important;
  }
  body.wb-account-page .wb-account-profile-submit {
    width: 100% !important;
    min-height: 52px;
    border-radius: 16px;
    font-size: 14px;
    font-weight: 500;
  }
  body.wb-account-page .wb-account-profile--password {
    margin-top: 18px !important;
  }
}
