.borabella-b2b-status-loading .price-box,
.borabella-b2b-status-loading [data-role="priceBox"],
.borabella-b2b-status-loading [data-price-box],
.borabella-b2b-status-loading [data-price-type],
.borabella-b2b-status-loading [id^="product-price-"],
.borabella-b2b-status-loading .product-info-price,
.borabella-b2b-status-loading .price-container,
.borabella-b2b-status-loading .price-wrapper,
.borabella-b2b-status-loading #product-addtocart-button,
.borabella-b2b-status-loading button.tocart,
.borabella-b2b-status-loading a.tocart,
.borabella-b2b-status-loading .action.tocart,
.borabella-b2b-status-loading [data-role="product-addtocart-button"],
.borabella-b2b-status-loading [data-role="buy-now"],
.borabella-b2b-status-loading .action.buy-now,
.borabella-b2b-status-loading .action.buynow,
.borabella-b2b-status-loading button.buy-now,
.borabella-b2b-status-loading [data-role="tocart-form"] button[type="submit"],
.borabella-b2b-status-loading form[action*="checkout/cart/add"] button[type="submit"],
.borabella-b2b-status-loading .box-tocart .field.qty,
.borabella-b2b-status-loading [data-role="tocart-form"] .field.qty,
.borabella-b2b-status-loading form[action*="checkout/cart/add"] .field.qty,
.borabella-b2b-status-loading body.catalog-product-view input[name="qty"],
.borabella-b2b-status-loading body.catalog-product-view #qty,
.borabella-b2b-status-loading body.catalog-product-view label[for="qty"],
.borabella-b2b-status-loading body.catalog-product-view form#product_addtocart_form div:has(> input[name="qty"]),
.borabella-b2b-status-loading body.catalog-product-view form#product_addtocart_form div:has(> #qty),
.borabella-b2b-status-loading body.catalog-product-view form[action*="checkout/cart/add"] div:has(> input[name="qty"]),
.borabella-b2b-status-loading body.catalog-product-view form[action*="checkout/cart/add"] div:has(> #qty) {
    visibility: hidden !important;
}

.borabella-b2b-restriction-message {
    display: block;
    width: 100%;
    margin: 8px 0;
    padding: 10px 12px;
    box-sizing: border-box;
    font-size: 14px;
    line-height: 1.4;
    font-weight: 600;
}

.borabella-b2b-hidden-price,
.borabella-b2b-hidden-buy-action,
.borabella-b2b-hidden-qty {
    display: none !important;
}

.borabella-b2b-registration { margin-top: 1.5rem; }
.borabella-b2b-registration .note { margin-top: .35rem; font-size: .875rem; opacity: .75; }
.borabella-b2b-registration input[type="file"] { width: 100%; }

/* Cadastro B2B - layout compatível com Hyvä e Luma */
.form-create-account .borabella-b2b-registration {
    width: 100%;
    max-width: none;
    margin: 2rem 0 1.5rem;
    padding: 1.5rem;
    box-sizing: border-box;
    border: 1px solid #e5e7eb;
    border-radius: .5rem;
}

.form-create-account .borabella-b2b-registration > .legend {
    width: 100%;
    margin: 0 0 1.25rem;
    padding: 0 0 .75rem;
    border-bottom: 1px solid #e5e7eb;
    font-size: 1.25rem;
    font-weight: 600;
}

.form-create-account .borabella-b2b-registration-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 1rem 1.25rem;
    width: 100%;
}

.form-create-account .borabella-b2b-registration-grid > .field {
    min-width: 0;
    margin: 0;
}

.form-create-account .borabella-b2b-registration-grid .borabella-b2b-span-2 {
    grid-column: 1 / -1;
}

.form-create-account .borabella-b2b-registration-grid .label {
    display: block;
    margin: 0 0 .375rem;
}

.form-create-account .borabella-b2b-registration-grid .control,
.form-create-account .borabella-b2b-registration-grid input:not([type="checkbox"]):not([type="radio"]),
.form-create-account .borabella-b2b-registration-grid select {
    width: 100%;
    max-width: none;
    box-sizing: border-box;
}

.form-create-account .borabella-b2b-registration-grid input[type="file"] {
    min-height: 2.75rem;
    padding: .5rem;
}

.form-create-account .borabella-b2b-registration-grid .note {
    margin-top: .375rem;
    line-height: 1.35;
    font-size: .8125rem;
    opacity: .72;
}

@media (max-width: 767px) {
    .form-create-account .borabella-b2b-registration {
        padding: 1rem;
    }

    .form-create-account .borabella-b2b-registration-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .form-create-account .borabella-b2b-registration-grid .borabella-b2b-span-2 {
        grid-column: auto;
    }
}

/* Evita o bloco aparecer por alguns ms dentro da coluna de acesso antes de ser reposicionado. */
.form-create-account [data-borabella-b2b-registration]:not([data-b2b-ready="1"]) {
    display: none !important;
}


/* Cadastro B2B unificado */
.form-create-account.borabella-b2b-single-form-ready {
    display: block !important;
    max-width: 58rem;
    margin-left: auto;
    margin-right: auto;
}

.form-create-account.borabella-b2b-single-form-ready > fieldset:not(.borabella-b2b-registration) {
    margin: 0 !important;
}

.form-create-account .borabella-b2b-registration {
    display: block;
    width: 100%;
    margin: 1.5rem 0;
    padding: 1.5rem;
    border: 1px solid #e5e7eb;
    border-radius: .5rem;
    box-sizing: border-box;
}

.form-create-account .borabella-b2b-registration > .legend {
    display: block;
    width: 100%;
    margin: 0 0 1.25rem;
    padding: 0 0 .75rem;
    border-bottom: 1px solid #e5e7eb;
    font-size: 1.25rem;
    font-weight: 600;
}

.form-create-account .borabella-b2b-registration-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem 1.25rem;
    width: 100%;
}

.form-create-account .borabella-b2b-registration-grid > .field {
    display: block;
    min-width: 0;
    width: 100%;
    margin: 0;
}

.form-create-account .borabella-b2b-registration-grid .borabella-b2b-span-2 {
    grid-column: 1 / -1;
}

.form-create-account .borabella-b2b-registration-grid .label {
    display: block;
    margin-bottom: .375rem;
}

.form-create-account .borabella-b2b-registration-grid .control,
.form-create-account .borabella-b2b-registration-grid input:not([type="checkbox"]):not([type="radio"]),
.form-create-account .borabella-b2b-registration-grid select {
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box;
}

.form-create-account .borabella-b2b-registration-grid .password-strength-meter {
    width: 100%;
}

.form-create-account .borabella-b2b-registration-grid .note {
    margin-top: .375rem;
    line-height: 1.4;
    font-size: .8125rem;
    opacity: .72;
}

.form-create-account.borabella-b2b-single-form-ready > .actions-toolbar,
.form-create-account.borabella-b2b-single-form-ready > .actions {
    width: 100%;
    margin-top: 1rem;
}

@media (max-width: 767px) {
    .form-create-account .borabella-b2b-registration {
        padding: 1rem;
    }
    .form-create-account .borabella-b2b-registration-grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .form-create-account .borabella-b2b-registration-grid .borabella-b2b-span-2 {
        grid-column: auto;
    }
}


/* Refinamento visual do cadastro B2B */
body.customer-account-create .page-main,
body.customer-account-create main#maincontent {
    background: #f7f7f7;
}

body.customer-account-create .form-create-account.borabella-b2b-single-form-ready {
    max-width: 64rem;
    margin: 2rem auto 3rem;
    padding: 0;
}

body.customer-account-create .form-create-account .borabella-b2b-registration {
    background: #fff !important;
    border: 1px solid #e6e6e6;
    border-radius: 12px;
    padding: 2rem;
    box-shadow: 0 4px 18px rgba(0, 0, 0, .035);
}

body.customer-account-create .form-create-account .borabella-b2b-registration > .legend {
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #ececec;
    font-size: 1.375rem;
    line-height: 1.3;
}

body.customer-account-create .form-create-account .borabella-b2b-registration-grid {
    gap: 1.15rem 1.5rem;
}

body.customer-account-create .form-create-account .borabella-b2b-registration-grid .label {
    margin-bottom: .45rem;
    font-size: .9rem;
    line-height: 1.3;
    font-weight: 600;
}

body.customer-account-create .form-create-account .borabella-b2b-registration-grid input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
body.customer-account-create .form-create-account .borabella-b2b-registration-grid select {
    min-height: 44px;
    padding: .65rem .8rem;
    border: 1px solid #d7dce1;
    border-radius: 7px;
    background: #fff;
    line-height: 1.25;
    transition: border-color .15s ease, box-shadow .15s ease;
}

body.customer-account-create .form-create-account .borabella-b2b-registration-grid input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):focus,
body.customer-account-create .form-create-account .borabella-b2b-registration-grid select:focus {
    border-color: #a8a8a8;
    outline: none;
    box-shadow: 0 0 0 3px rgba(0, 0, 0, .06);
}

body.customer-account-create .form-create-account .borabella-b2b-registration-grid .mage-error,
body.customer-account-create .form-create-account .borabella-b2b-registration-grid .field-error {
    display: block;
    margin-top: .3rem;
    font-size: .78rem;
    line-height: 1.25;
}

body.customer-account-create .form-create-account .borabella-b2b-registration-grid .note {
    margin-top: .4rem;
    color: #666;
    font-size: .78rem;
    line-height: 1.4;
    opacity: 1;
}

body.customer-account-create .borabella-b2b-file-upload {
    display: flex;
    align-items: center;
    gap: .75rem;
    min-height: 46px;
    padding: .45rem;
    border: 1px dashed #cfd4da;
    border-radius: 8px;
    background: #fafafa;
}

body.customer-account-create .borabella-b2b-file-upload input[type="file"] {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

body.customer-account-create .borabella-b2b-file-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: .5rem .85rem;
    border: 1px solid #111;
    border-radius: 6px;
    background: #111;
    color: #fff;
    font-size: .84rem;
    font-weight: 600;
    line-height: 1;
    cursor: pointer;
    white-space: nowrap;
}

body.customer-account-create .borabella-b2b-file-button:hover {
    background: #2a2a2a;
}

body.customer-account-create .borabella-b2b-file-name {
    min-width: 0;
    overflow: hidden;
    color: #555;
    font-size: .82rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.customer-account-create .form-create-account.borabella-b2b-single-form-ready > .actions-toolbar,
body.customer-account-create .form-create-account.borabella-b2b-single-form-ready > .actions {
    padding-top: 1.25rem;
    border-top: 1px solid #ececec;
}

@media (max-width: 767px) {
    body.customer-account-create .form-create-account.borabella-b2b-single-form-ready {
        margin-top: 1rem;
    }
    body.customer-account-create .form-create-account .borabella-b2b-registration {
        padding: 1.25rem;
        border-radius: 10px;
    }
    body.customer-account-create .borabella-b2b-file-upload {
        align-items: stretch;
        flex-direction: column;
    }
    body.customer-account-create .borabella-b2b-file-button {
        width: 100%;
    }
}


/* Refinamento final do cadastro B2B */
body.customer-account-create .form-create-account.borabella-b2b-single-form-ready {
    max-width: 72rem;
    margin: 1.75rem auto 3rem;
}

body.customer-account-create .form-create-account .borabella-b2b-registration {
    padding: 2.25rem 2.5rem;
    border-color: #e3e5e8;
    border-radius: 14px;
    box-shadow: 0 8px 28px rgba(0, 0, 0, .045);
}

body.customer-account-create .form-create-account .borabella-b2b-registration > .legend {
    margin: 0 0 1.75rem;
    padding: 0 0 1rem;
    font-size: 1.45rem;
    font-weight: 700;
}

body.customer-account-create .form-create-account .borabella-b2b-registration-grid {
    grid-auto-flow: row;
    align-items: start;
    gap: 1.25rem 1.5rem;
}

body.customer-account-create .form-create-account .borabella-b2b-registration-grid > .field {
    align-self: start;
}

body.customer-account-create .form-create-account .borabella-b2b-registration-grid .control {
    position: relative;
}

body.customer-account-create .form-create-account .borabella-b2b-registration-grid input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
body.customer-account-create .form-create-account .borabella-b2b-registration-grid select {
    height: 46px;
    min-height: 46px;
    padding: .7rem .85rem;
    border-color: #d9dde2;
    border-radius: 8px;
    background-color: #fff;
}

body.customer-account-create .form-create-account .borabella-b2b-registration-grid select {
    padding-right: 2.5rem;
}

body.customer-account-create .form-create-account .borabella-b2b-native-field {
    min-width: 0;
    width: 100%;
    margin: 0 !important;
}

body.customer-account-create .form-create-account .borabella-b2b-native-field .control {
    width: 100%;
    max-width: none;
}

body.customer-account-create .form-create-account .borabella-b2b-native-field input {
    width: 100% !important;
    max-width: none !important;
}

body.customer-account-create .form-create-account .borabella-b2b-password-field,
body.customer-account-create .form-create-account .borabella-b2b-password-confirmation-field {
    grid-column: span 1;
}

body.customer-account-create .form-create-account .borabella-b2b-password-field .password-strength-meter {
    min-height: 1.2rem;
    margin-top: .45rem;
    font-size: .8rem;
    line-height: 1.3;
}

body.customer-account-create .form-create-account .borabella-b2b-password-field button,
body.customer-account-create .form-create-account .borabella-b2b-password-confirmation-field button {
    top: 50%;
    transform: translateY(-50%);
}

/* Upload em formato de área própria, sem aparência de input comum. */
body.customer-account-create .borabella-b2b-file-upload {
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: .5rem 1rem;
    min-height: 64px;
    padding: .75rem .9rem;
    border: 1px dashed #bfc5cc;
    border-radius: 9px;
    background: #fcfcfc;
}

body.customer-account-create .borabella-b2b-file-button {
    min-height: 38px;
    padding: .6rem 1rem;
    border-radius: 7px;
}

body.customer-account-create .borabella-b2b-file-name {
    display: block;
    width: 100%;
    color: #4b5563;
    font-size: .84rem;
    line-height: 1.35;
}

body.customer-account-create .form-create-account .borabella-b2b-registration-grid .mage-error,
body.customer-account-create .form-create-account .borabella-b2b-registration-grid .field-error {
    clear: both;
    width: 100%;
    margin-top: .35rem;
    color: #e02b27;
    font-size: .78rem;
    line-height: 1.3;
}

/* Mantém as ações visualmente ligadas ao card. */
body.customer-account-create .form-create-account.borabella-b2b-single-form-ready > .actions-toolbar,
body.customer-account-create .form-create-account.borabella-b2b-single-form-ready > .actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 1rem;
    padding: 1.25rem .25rem 0;
    border-top: 1px solid #e6e8eb;
}

@media (max-width: 900px) {
    body.customer-account-create .form-create-account.borabella-b2b-single-form-ready {
        max-width: calc(100% - 2rem);
    }
    body.customer-account-create .form-create-account .borabella-b2b-registration {
        padding: 1.5rem;
    }
}

@media (max-width: 767px) {
    body.customer-account-create .form-create-account.borabella-b2b-single-form-ready {
        max-width: calc(100% - 1rem);
        margin-top: 1rem;
    }
    body.customer-account-create .form-create-account .borabella-b2b-registration {
        padding: 1.1rem;
        border-radius: 10px;
    }
    body.customer-account-create .form-create-account .borabella-b2b-registration-grid {
        gap: 1rem;
    }
    body.customer-account-create .form-create-account .borabella-b2b-password-field,
    body.customer-account-create .form-create-account .borabella-b2b-password-confirmation-field {
        grid-column: auto;
    }
    body.customer-account-create .borabella-b2b-file-upload {
        grid-template-columns: 1fr;
    }
    body.customer-account-create .borabella-b2b-file-button {
        width: 100%;
    }
    body.customer-account-create .form-create-account.borabella-b2b-single-form-ready > .actions-toolbar,
    body.customer-account-create .form-create-account.borabella-b2b-single-form-ready > .actions {
        padding-left: 0;
        padding-right: 0;
    }
}


/* Título da página */
body.customer-account-create .page-title-wrapper,
body.customer-account-create h1.page-title {
    display: none !important;
}

/*
 * Senha no Hyvä:
 * preserva o HTML/Alpine nativo e apenas usa o .control original como
 * referência de posicionamento para o botão de mostrar/ocultar senha.
 */
body.customer-account-create
.form-create-account
.borabella-b2b-password-field .control,
body.customer-account-create
.form-create-account
.borabella-b2b-password-confirmation-field .control {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
}

body.customer-account-create
.form-create-account
.borabella-b2b-password-field .control > input,
body.customer-account-create
.form-create-account
.borabella-b2b-password-confirmation-field .control > input {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    padding-right: 3.25rem !important;
    box-sizing: border-box !important;
}

body.customer-account-create
.form-create-account
.borabella-b2b-password-field .control > button[type="button"],
body.customer-account-create
.form-create-account
.borabella-b2b-password-confirmation-field .control > button[type="button"] {
    position: absolute !important;
    top: 23px !important;
    right: .65rem !important;
    bottom: auto !important;
    left: auto !important;
    transform: translateY(-50%) !important;
    z-index: 5 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 2rem !important;
    min-width: 2rem !important;
    height: 2rem !important;
    min-height: 2rem !important;

    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.customer-account-create
.form-create-account
.borabella-b2b-password-field .control > button[type="button"] svg,
body.customer-account-create
.form-create-account
.borabella-b2b-password-confirmation-field .control > button[type="button"] svg {
    display: block !important;
    width: 1.2rem !important;
    height: 1.2rem !important;
    margin: 0 !important;
}

body.customer-account-create
.form-create-account
.borabella-b2b-password-field .password-strength-meter {
    display: block;
    width: 100%;
    margin-top: .5rem;
    line-height: 1.35;
}


/* Cadastro seguindo o padrão visual da tela de login */
body.customer-account-create .page-title-wrapper,
body.customer-account-create h1.page-title {
    display: block !important;
}

body.customer-account-create .page-main,
body.customer-account-create main#maincontent {
    max-width: 72rem;
    margin-left: auto;
    margin-right: auto;
    padding-left: 1rem;
    padding-right: 1rem;
    background: transparent;
}

body.customer-account-create .page-title-wrapper {
    width: 100%;
    max-width: none;
    margin: 1.25rem 0 .9rem;
    padding: 0;
}

body.customer-account-create .page-title-wrapper .page-title,
body.customer-account-create h1.page-title {
    margin: 0;
    padding: 0;
    font-size: 1.75rem;
    line-height: 1.25;
    font-weight: 700;
    color: inherit;
}

body.customer-account-create .form-create-account.borabella-b2b-single-form-ready {
    width: 100%;
    max-width: none;
    margin: 0 0 2.5rem;
}

body.customer-account-create .form-create-account .borabella-b2b-registration {
    margin: 0;
    padding: 1.5rem;
    background: #fff !important;
    border: 1px solid #dfe3e7;
    border-radius: .5rem;
    box-shadow: none;
}

/* O título agora é o page title, igual à tela de login. */
body.customer-account-create .form-create-account .borabella-b2b-registration > .legend {
    display: none !important;
}

body.customer-account-create .form-create-account .borabella-b2b-registration-grid {
    gap: 1.1rem 1.25rem;
}

body.customer-account-create .form-create-account .borabella-b2b-registration-grid .label {
    font-size: .875rem;
    font-weight: 600;
}

body.customer-account-create .form-create-account .borabella-b2b-registration-grid input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
body.customer-account-create .form-create-account .borabella-b2b-registration-grid select {
    height: 42px;
    min-height: 42px;
    border-radius: .375rem;
    border-color: #d6dbe0;
    box-shadow: none;
}

body.customer-account-create .form-create-account .borabella-b2b-registration-grid input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):focus,
body.customer-account-create .form-create-account .borabella-b2b-registration-grid select:focus {
    border-color: #9da4ad;
    box-shadow: 0 0 0 2px rgba(0,0,0,.05);
}

body.customer-account-create .borabella-b2b-file-upload {
    min-height: 52px;
    padding: .55rem .65rem;
    border: 1px solid #d6dbe0;
    border-radius: .375rem;
    background: #fff;
}

body.customer-account-create .borabella-b2b-file-button {
    min-height: 34px;
    padding: .5rem .8rem;
    border-radius: .375rem;
}

/* Ações dentro do card, no mesmo padrão dos cards da tela de login. */
body.customer-account-create .borabella-b2b-registration .borabella-b2b-card-actions,
body.customer-account-create .borabella-b2b-registration .actions-toolbar,
body.customer-account-create .borabella-b2b-registration .actions {
    display: flex !important;
    align-items: center;
    justify-content: flex-end;
    gap: .75rem;
    width: 100%;
    margin: 1.5rem 0 0 !important;
    padding: 1.25rem 0 0 !important;
    border-top: 1px solid #e5e7eb !important;
}

/* Neutraliza regras antigas para ações fora do card. */
body.customer-account-create .form-create-account.borabella-b2b-single-form-ready > .actions-toolbar,
body.customer-account-create .form-create-account.borabella-b2b-single-form-ready > .actions {
    margin: 0;
    padding: 0;
    border: 0;
}

@media (max-width: 767px) {
    body.customer-account-create .page-title-wrapper {
        margin-top: 1rem;
    }

    body.customer-account-create .page-title-wrapper .page-title,
    body.customer-account-create h1.page-title {
        font-size: 1.5rem;
    }

    body.customer-account-create .form-create-account .borabella-b2b-registration {
        padding: 1rem;
    }

    body.customer-account-create .borabella-b2b-registration .borabella-b2b-card-actions,
    body.customer-account-create .borabella-b2b-registration .actions-toolbar,
    body.customer-account-create .borabella-b2b-registration .actions {
        flex-wrap: wrap;
    }
}

/* Editar conta - mesmo visual do cadastro */
/* Cadastro B2B unificado */
.form-edit-account.borabella-b2b-single-form-ready {
    display: block !important;
    max-width: 58rem;
    margin-left: auto;
    margin-right: auto;
}

.form-edit-account.borabella-b2b-single-form-ready > fieldset:not(.borabella-b2b-registration) {
    margin: 0 !important;
}

.form-edit-account .borabella-b2b-registration {
    display: block;
    width: 100%;
    margin: 1.5rem 0;
    padding: 1.5rem;
    border: 1px solid #e5e7eb;
    border-radius: .5rem;
    box-sizing: border-box;
}

.form-edit-account .borabella-b2b-registration > .legend {
    display: block;
    width: 100%;
    margin: 0 0 1.25rem;
    padding: 0 0 .75rem;
    border-bottom: 1px solid #e5e7eb;
    font-size: 1.25rem;
    font-weight: 600;
}

.form-edit-account .borabella-b2b-registration-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem 1.25rem;
    width: 100%;
}

.form-edit-account .borabella-b2b-registration-grid > .field {
    display: block;
    min-width: 0;
    width: 100%;
    margin: 0;
}

.form-edit-account .borabella-b2b-registration-grid .borabella-b2b-span-2 {
    grid-column: 1 / -1;
}

.form-edit-account .borabella-b2b-registration-grid .label {
    display: block;
    margin-bottom: .375rem;
}

.form-edit-account .borabella-b2b-registration-grid .control,
.form-edit-account .borabella-b2b-registration-grid input:not([type="checkbox"]):not([type="radio"]),
.form-edit-account .borabella-b2b-registration-grid select {
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box;
}

.form-edit-account .borabella-b2b-registration-grid .password-strength-meter {
    width: 100%;
}

.form-edit-account .borabella-b2b-registration-grid .note {
    margin-top: .375rem;
    line-height: 1.4;
    font-size: .8125rem;
    opacity: .72;
}

.form-edit-account.borabella-b2b-single-form-ready > .actions-toolbar,
.form-edit-account.borabella-b2b-single-form-ready > .actions {
    width: 100%;
    margin-top: 1rem;
}

@media (max-width: 767px) {
    .form-edit-account .borabella-b2b-registration {
        padding: 1rem;
    }
    .form-edit-account .borabella-b2b-registration-grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .form-edit-account .borabella-b2b-registration-grid .borabella-b2b-span-2 {
        grid-column: auto;
    }
}


/* Refinamento visual do cadastro B2B */
body.customer-account-edit .page-main,
body.customer-account-edit main#maincontent {
    background: #f7f7f7;
}

body.customer-account-edit .form-edit-account.borabella-b2b-single-form-ready {
    max-width: 64rem;
    margin: 2rem auto 3rem;
    padding: 0;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration {
    background: #fff !important;
    border: 1px solid #e6e6e6;
    border-radius: 12px;
    padding: 2rem;
    box-shadow: 0 4px 18px rgba(0, 0, 0, .035);
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration > .legend {
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #ececec;
    font-size: 1.375rem;
    line-height: 1.3;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid {
    gap: 1.15rem 1.5rem;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid .label {
    margin-bottom: .45rem;
    font-size: .9rem;
    line-height: 1.3;
    font-weight: 600;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid select {
    min-height: 44px;
    padding: .65rem .8rem;
    border: 1px solid #d7dce1;
    border-radius: 7px;
    background: #fff;
    line-height: 1.25;
    transition: border-color .15s ease, box-shadow .15s ease;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):focus,
body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid select:focus {
    border-color: #a8a8a8;
    outline: none;
    box-shadow: 0 0 0 3px rgba(0, 0, 0, .06);
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid .mage-error,
body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid .field-error {
    display: block;
    margin-top: .3rem;
    font-size: .78rem;
    line-height: 1.25;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid .note {
    margin-top: .4rem;
    color: #666;
    font-size: .78rem;
    line-height: 1.4;
    opacity: 1;
}

body.customer-account-edit .borabella-b2b-file-upload {
    display: flex;
    align-items: center;
    gap: .75rem;
    min-height: 46px;
    padding: .45rem;
    border: 1px dashed #cfd4da;
    border-radius: 8px;
    background: #fafafa;
}

body.customer-account-edit .borabella-b2b-file-upload input[type="file"] {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

body.customer-account-edit .borabella-b2b-file-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: .5rem .85rem;
    border: 1px solid #111;
    border-radius: 6px;
    background: #111;
    color: #fff;
    font-size: .84rem;
    font-weight: 600;
    line-height: 1;
    cursor: pointer;
    white-space: nowrap;
}

body.customer-account-edit .borabella-b2b-file-button:hover {
    background: #2a2a2a;
}

body.customer-account-edit .borabella-b2b-file-name {
    min-width: 0;
    overflow: hidden;
    color: #555;
    font-size: .82rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.customer-account-edit .form-edit-account.borabella-b2b-single-form-ready > .actions-toolbar,
body.customer-account-edit .form-edit-account.borabella-b2b-single-form-ready > .actions {
    padding-top: 1.25rem;
    border-top: 1px solid #ececec;
}

@media (max-width: 767px) {
    body.customer-account-edit .form-edit-account.borabella-b2b-single-form-ready {
        margin-top: 1rem;
    }
    body.customer-account-edit .form-edit-account .borabella-b2b-registration {
        padding: 1.25rem;
        border-radius: 10px;
    }
    body.customer-account-edit .borabella-b2b-file-upload {
        align-items: stretch;
        flex-direction: column;
    }
    body.customer-account-edit .borabella-b2b-file-button {
        width: 100%;
    }
}


/* Refinamento final do cadastro B2B */
body.customer-account-edit .form-edit-account.borabella-b2b-single-form-ready {
    max-width: 72rem;
    margin: 1.75rem auto 3rem;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration {
    padding: 2.25rem 2.5rem;
    border-color: #e3e5e8;
    border-radius: 14px;
    box-shadow: 0 8px 28px rgba(0, 0, 0, .045);
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration > .legend {
    margin: 0 0 1.75rem;
    padding: 0 0 1rem;
    font-size: 1.45rem;
    font-weight: 700;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid {
    grid-auto-flow: row;
    align-items: start;
    gap: 1.25rem 1.5rem;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid > .field {
    align-self: start;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid .control {
    position: relative;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid select {
    height: 46px;
    min-height: 46px;
    padding: .7rem .85rem;
    border-color: #d9dde2;
    border-radius: 8px;
    background-color: #fff;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid select {
    padding-right: 2.5rem;
}

body.customer-account-edit .form-edit-account .borabella-b2b-native-field {
    min-width: 0;
    width: 100%;
    margin: 0 !important;
}

body.customer-account-edit .form-edit-account .borabella-b2b-native-field .control {
    width: 100%;
    max-width: none;
}

body.customer-account-edit .form-edit-account .borabella-b2b-native-field input {
    width: 100% !important;
    max-width: none !important;
}

body.customer-account-edit .form-edit-account .borabella-b2b-password-field,
body.customer-account-edit .form-edit-account .borabella-b2b-password-confirmation-field {
    grid-column: span 1;
}

body.customer-account-edit .form-edit-account .borabella-b2b-password-field .password-strength-meter {
    min-height: 1.2rem;
    margin-top: .45rem;
    font-size: .8rem;
    line-height: 1.3;
}

body.customer-account-edit .form-edit-account .borabella-b2b-password-field button,
body.customer-account-edit .form-edit-account .borabella-b2b-password-confirmation-field button {
    top: 50%;
    transform: translateY(-50%);
}

/* Upload em formato de área própria, sem aparência de input comum. */
body.customer-account-edit .borabella-b2b-file-upload {
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: .5rem 1rem;
    min-height: 64px;
    padding: .75rem .9rem;
    border: 1px dashed #bfc5cc;
    border-radius: 9px;
    background: #fcfcfc;
}

body.customer-account-edit .borabella-b2b-file-button {
    min-height: 38px;
    padding: .6rem 1rem;
    border-radius: 7px;
}

body.customer-account-edit .borabella-b2b-file-name {
    display: block;
    width: 100%;
    color: #4b5563;
    font-size: .84rem;
    line-height: 1.35;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid .mage-error,
body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid .field-error {
    clear: both;
    width: 100%;
    margin-top: .35rem;
    color: #e02b27;
    font-size: .78rem;
    line-height: 1.3;
}

/* Mantém as ações visualmente ligadas ao card. */
body.customer-account-edit .form-edit-account.borabella-b2b-single-form-ready > .actions-toolbar,
body.customer-account-edit .form-edit-account.borabella-b2b-single-form-ready > .actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 1rem;
    padding: 1.25rem .25rem 0;
    border-top: 1px solid #e6e8eb;
}

@media (max-width: 900px) {
    body.customer-account-edit .form-edit-account.borabella-b2b-single-form-ready {
        max-width: calc(100% - 2rem);
    }
    body.customer-account-edit .form-edit-account .borabella-b2b-registration {
        padding: 1.5rem;
    }
}

@media (max-width: 767px) {
    body.customer-account-edit .form-edit-account.borabella-b2b-single-form-ready {
        max-width: calc(100% - 1rem);
        margin-top: 1rem;
    }
    body.customer-account-edit .form-edit-account .borabella-b2b-registration {
        padding: 1.1rem;
        border-radius: 10px;
    }
    body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid {
        gap: 1rem;
    }
    body.customer-account-edit .form-edit-account .borabella-b2b-password-field,
    body.customer-account-edit .form-edit-account .borabella-b2b-password-confirmation-field {
        grid-column: auto;
    }
    body.customer-account-edit .borabella-b2b-file-upload {
        grid-template-columns: 1fr;
    }
    body.customer-account-edit .borabella-b2b-file-button {
        width: 100%;
    }
    body.customer-account-edit .form-edit-account.borabella-b2b-single-form-ready > .actions-toolbar,
    body.customer-account-edit .form-edit-account.borabella-b2b-single-form-ready > .actions {
        padding-left: 0;
        padding-right: 0;
    }
}


/* Título da página */
body.customer-account-edit .page-title-wrapper,
body.customer-account-edit h1.page-title {
    display: none !important;
}

/*
 * Senha no Hyvä:
 * preserva o HTML/Alpine nativo e apenas usa o .control original como
 * referência de posicionamento para o botão de mostrar/ocultar senha.
 */
body.customer-account-edit
.form-edit-account
.borabella-b2b-password-field .control,
body.customer-account-edit
.form-edit-account
.borabella-b2b-password-confirmation-field .control {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
}

body.customer-account-edit
.form-edit-account
.borabella-b2b-password-field .control > input,
body.customer-account-edit
.form-edit-account
.borabella-b2b-password-confirmation-field .control > input {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    padding-right: 3.25rem !important;
    box-sizing: border-box !important;
}

body.customer-account-edit
.form-edit-account
.borabella-b2b-password-field .control > button[type="button"],
body.customer-account-edit
.form-edit-account
.borabella-b2b-password-confirmation-field .control > button[type="button"] {
    position: absolute !important;
    top: 23px !important;
    right: .65rem !important;
    bottom: auto !important;
    left: auto !important;
    transform: translateY(-50%) !important;
    z-index: 5 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 2rem !important;
    min-width: 2rem !important;
    height: 2rem !important;
    min-height: 2rem !important;

    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.customer-account-edit
.form-edit-account
.borabella-b2b-password-field .control > button[type="button"] svg,
body.customer-account-edit
.form-edit-account
.borabella-b2b-password-confirmation-field .control > button[type="button"] svg {
    display: block !important;
    width: 1.2rem !important;
    height: 1.2rem !important;
    margin: 0 !important;
}

body.customer-account-edit
.form-edit-account
.borabella-b2b-password-field .password-strength-meter {
    display: block;
    width: 100%;
    margin-top: .5rem;
    line-height: 1.35;
}


/* Cadastro seguindo o padrão visual da tela de login */
body.customer-account-edit .page-title-wrapper,
body.customer-account-edit h1.page-title {
    display: block !important;
}

body.customer-account-edit .page-main,
body.customer-account-edit main#maincontent {
    max-width: 72rem;
    margin-left: auto;
    margin-right: auto;
    padding-left: 1rem;
    padding-right: 1rem;
    background: transparent;
}

body.customer-account-edit .page-title-wrapper {
    width: 100%;
    max-width: none;
    margin: 1.25rem 0 .9rem;
    padding: 0;
}

body.customer-account-edit .page-title-wrapper .page-title,
body.customer-account-edit h1.page-title {
    margin: 0;
    padding: 0;
    font-size: 1.75rem;
    line-height: 1.25;
    font-weight: 700;
    color: inherit;
}

body.customer-account-edit .form-edit-account.borabella-b2b-single-form-ready {
    width: 100%;
    max-width: none;
    margin: 0 0 2.5rem;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration {
    margin: 0;
    padding: 1.5rem;
    background: #fff !important;
    border: 1px solid #dfe3e7;
    border-radius: .5rem;
    box-shadow: none;
}

/* O título agora é o page title, igual à tela de login. */
body.customer-account-edit .form-edit-account .borabella-b2b-registration > .legend {
    display: none !important;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid {
    gap: 1.1rem 1.25rem;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid .label {
    font-size: .875rem;
    font-weight: 600;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid select {
    height: 42px;
    min-height: 42px;
    border-radius: .375rem;
    border-color: #d6dbe0;
    box-shadow: none;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):focus,
body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid select:focus {
    border-color: #9da4ad;
    box-shadow: 0 0 0 2px rgba(0,0,0,.05);
}

body.customer-account-edit .borabella-b2b-file-upload {
    min-height: 52px;
    padding: .55rem .65rem;
    border: 1px solid #d6dbe0;
    border-radius: .375rem;
    background: #fff;
}

body.customer-account-edit .borabella-b2b-file-button {
    min-height: 34px;
    padding: .5rem .8rem;
    border-radius: .375rem;
}

/* Ações dentro do card, no mesmo padrão dos cards da tela de login. */
body.customer-account-edit .borabella-b2b-registration .borabella-b2b-card-actions,
body.customer-account-edit .borabella-b2b-registration .actions-toolbar,
body.customer-account-edit .borabella-b2b-registration .actions {
    display: flex !important;
    align-items: center;
    justify-content: flex-end;
    gap: .75rem;
    width: 100%;
    margin: 1.5rem 0 0 !important;
    padding: 1.25rem 0 0 !important;
    border-top: 1px solid #e5e7eb !important;
}

/* Neutraliza regras antigas para ações fora do card. */
body.customer-account-edit .form-edit-account.borabella-b2b-single-form-ready > .actions-toolbar,
body.customer-account-edit .form-edit-account.borabella-b2b-single-form-ready > .actions {
    margin: 0;
    padding: 0;
    border: 0;
}

@media (max-width: 767px) {
    body.customer-account-edit .page-title-wrapper {
        margin-top: 1rem;
    }

    body.customer-account-edit .page-title-wrapper .page-title,
    body.customer-account-edit h1.page-title {
        font-size: 1.5rem;
    }

    body.customer-account-edit .form-edit-account .borabella-b2b-registration {
        padding: 1rem;
    }

    body.customer-account-edit .borabella-b2b-registration .borabella-b2b-card-actions,
    body.customer-account-edit .borabella-b2b-registration .actions-toolbar,
    body.customer-account-edit .borabella-b2b-registration .actions {
        flex-wrap: wrap;
    }
}


/* Preview do comprovante B2B */
body.customer-account-edit .borabella-b2b-proof-preview {
    margin: 0 0 .85rem;
}

body.customer-account-edit .borabella-b2b-proof-preview-link {
    display: inline-block;
    max-width: 100%;
}

body.customer-account-edit .borabella-b2b-proof-preview-image {
    display: block;
    width: auto;
    height: auto;
    max-width: 280px;
    max-height: 190px;
    padding: 4px;
    border: 1px solid #d7dce1;
    border-radius: 8px;
    background: #fff;
    object-fit: contain;
}

body.customer-account-edit .borabella-b2b-proof-preview-image:hover {
    opacity: .9;
}

body.customer-account-edit .borabella-b2b-proof-document-link {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: .55rem .8rem;
    border: 1px solid #d7dce1;
    border-radius: 7px;
    background: #fff;
    font-weight: 600;
    text-decoration: none;
}

@media (max-width: 767px) {
    body.customer-account-edit .borabella-b2b-proof-preview-image {
        max-width: 100%;
    }
}


/* Preview instantâneo do novo comprovante na edição da conta */
body.customer-account-edit .borabella-b2b-proof-preview {
    min-height: 1px;
}

body.customer-account-edit .borabella-b2b-proof-preview-image {
    transition: opacity .15s ease, transform .15s ease;
}

body.customer-account-edit .borabella-b2b-proof-preview-image:hover {
    transform: scale(1.01);
}


/* PDF selecionado antes do save: evita blob URL incompatível com o visualizador do navegador */
body.customer-account-edit .borabella-b2b-proof-pdf-selected {
    display: flex;
    flex-direction: column;
    gap: .25rem;
    max-width: 28rem;
    padding: .85rem 1rem;
    border: 1px solid #d7dce1;
    border-radius: 8px;
    background: #fff;
}

body.customer-account-edit .borabella-b2b-proof-pdf-selected strong {
    font-weight: 600;
}

body.customer-account-edit .borabella-b2b-proof-pdf-selected span {
    word-break: break-word;
}

body.customer-account-edit .borabella-b2b-proof-pdf-selected small {
    opacity: .72;
}

body.customer-account-edit .borabella-b2b-file-status {
    display: block;
    grid-column: 1 / -1;
    margin-top: .25rem;
    font-size: .8rem;
    line-height: 1.3;
    opacity: .75;
}


/* Estabilidade visual dos formulários B2B durante validação/submit */
body.customer-account-create .borabella-b2b-registration-grid,
body.customer-account-edit .borabella-b2b-registration-grid {
    align-items: start !important;
}

body.customer-account-create .borabella-b2b-registration-grid > .field,
body.customer-account-edit .borabella-b2b-registration-grid > .field {
    display: flex !important;
    flex-direction: column !important;
    align-self: start !important;
    min-width: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

body.customer-account-create .borabella-b2b-registration-grid > .field > .label,
body.customer-account-edit .borabella-b2b-registration-grid > .field > .label {
    display: block !important;
    min-height: 1.25rem !important;
    margin: 0 0 .375rem !important;
    padding: 0 !important;
    line-height: 1.25rem !important;
    box-sizing: border-box !important;
}

body.customer-account-create .borabella-b2b-registration-grid > .field > .control,
body.customer-account-edit .borabella-b2b-registration-grid > .field > .control {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

body.customer-account-create .borabella-b2b-registration-grid input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
body.customer-account-create .borabella-b2b-registration-grid select,
body.customer-account-edit .borabella-b2b-registration-grid input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
body.customer-account-edit .borabella-b2b-registration-grid select {
    display: block !important;
    width: 100% !important;
    height: 42px !important;
    min-height: 42px !important;
    max-height: 42px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    vertical-align: middle !important;
}

body.customer-account-create .borabella-b2b-registration-grid .mage-error,
body.customer-account-create .borabella-b2b-registration-grid .field-error,
body.customer-account-edit .borabella-b2b-registration-grid .mage-error,
body.customer-account-edit .borabella-b2b-registration-grid .field-error {
    display: block;
    width: 100%;
    margin: .3rem 0 0 !important;
    padding: 0 !important;
    line-height: 1.25 !important;
    box-sizing: border-box !important;
}

/* Evita alteração perceptível de posição/tamanho quando o browser muda estado :valid/:invalid. */
body.customer-account-create .borabella-b2b-registration-grid input,
body.customer-account-create .borabella-b2b-registration-grid select,
body.customer-account-edit .borabella-b2b-registration-grid input,
body.customer-account-edit .borabella-b2b-registration-grid select {
    transition: border-color .12s ease, box-shadow .12s ease !important;
}


/* Minha Conta: campos nativos de alteração de e-mail/senha dentro do mesmo grid B2B */
body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid .borabella-b2b-native-field {
    min-width: 0;
    margin: 0 !important;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid .borabella-b2b-native-field .label {
    display: block !important;
    margin: 0 0 .45rem !important;
    font-size: .9rem !important;
    line-height: 1.3 !important;
    font-weight: 600 !important;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid .borabella-b2b-native-field .control {
    position: relative;
    display: block;
    width: 100% !important;
    max-width: none !important;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid .borabella-b2b-native-field input:not([type="checkbox"]):not([type="radio"]) {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 44px !important;
    height: 44px !important;
    margin: 0 !important;
    padding: .65rem .8rem !important;
    border: 1px solid #d7dce1 !important;
    border-radius: 7px !important;
    background: #fff !important;
    box-sizing: border-box !important;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid .borabella-b2b-password-field .control > input,
body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid .borabella-b2b-password-confirmation-field .control > input,
body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid .borabella-b2b-current-password-field .control > input {
    padding-right: 3.25rem !important;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid .borabella-b2b-password-field .control > button[type="button"],
body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid .borabella-b2b-password-confirmation-field .control > button[type="button"],
body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid .borabella-b2b-current-password-field .control > button[type="button"] {
    position: absolute !important;
    top: 22px !important;
    right: .65rem !important;
    bottom: auto !important;
    left: auto !important;
    z-index: 5 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 2rem !important;
    min-width: 2rem !important;
    height: 2rem !important;
    min-height: 2rem !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: translateY(-50%) !important;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid .borabella-b2b-native-field .password-strength-meter {
    display: block;
    width: 100%;
    margin: .45rem 0 0 !important;
    line-height: 1.35;
}

body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid .borabella-b2b-native-field .mage-error,
body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid .borabella-b2b-native-field .field-error {
    display: block;
    width: 100%;
    margin: .3rem 0 0 !important;
    padding: 0 !important;
}

/* ============================================================
 * Minha Conta - segurança dentro do mesmo card B2B
 * ============================================================ */
body.customer-account-edit .form-edit-account .borabella-b2b-account-security {
    width: 100%;
    margin: 0 0 .25rem;
    padding: 0 0 1.5rem;
    border-bottom: 1px solid #ececec;
    box-sizing: border-box;
}

body.customer-account-edit .form-edit-account .borabella-b2b-security-toggles {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .75rem 2rem;
    width: 100%;
}

body.customer-account-edit .form-edit-account .borabella-b2b-security-toggle {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: .65rem;
    min-height: 32px;
    margin: 0;
    cursor: pointer;
    font-size: .9rem;
    line-height: 1.3;
    font-weight: 500;
    user-select: none;
}

body.customer-account-edit .form-edit-account .borabella-b2b-security-toggle > input {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

body.customer-account-edit .form-edit-account .borabella-b2b-switch {
    position: relative;
    display: inline-block;
    flex: 0 0 auto;
    width: 36px;
    height: 20px;
    border: 1px solid #aeb5bd;
    border-radius: 999px;
    background: #d7dce1;
    transition: background .15s ease, border-color .15s ease;
    box-sizing: border-box;
}

body.customer-account-edit .form-edit-account .borabella-b2b-switch::after {
    content: '';
    position: absolute;
    top: 2px;
    left: 2px;
    width: 14px;
    height: 14px;
    border-radius: 999px;
    background: #fff;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .2);
    transition: transform .15s ease;
}

body.customer-account-edit .form-edit-account .borabella-b2b-security-toggle > input:checked + .borabella-b2b-switch {
    border-color: #111;
    background: #111;
}

body.customer-account-edit .form-edit-account .borabella-b2b-security-toggle > input:checked + .borabella-b2b-switch::after {
    transform: translateX(16px);
}

body.customer-account-edit .form-edit-account .borabella-b2b-security-toggle > input:focus-visible + .borabella-b2b-switch {
    outline: 2px solid #111;
    outline-offset: 2px;
}

body.customer-account-edit .form-edit-account .borabella-b2b-security-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.15rem 1.5rem;
    width: 100%;
    margin-top: 1.25rem;
}

body.customer-account-edit .form-edit-account .borabella-b2b-security-fields[hidden],
body.customer-account-edit .form-edit-account .borabella-b2b-security-fields > [hidden] {
    display: none !important;
}

body.customer-account-edit .form-edit-account .borabella-b2b-security-fields .field {
    min-width: 0;
    margin: 0 !important;
}

body.customer-account-edit .form-edit-account .borabella-b2b-security-fields .label {
    display: block;
    margin: 0 0 .45rem !important;
    font-size: .9rem;
    line-height: 1.3;
    font-weight: 600;
}

body.customer-account-edit .form-edit-account .borabella-b2b-security-fields .control {
    position: relative;
    display: block;
    width: 100%;
    max-width: none;
}

body.customer-account-edit .form-edit-account .borabella-b2b-security-fields input {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: .65rem .8rem !important;
    border: 1px solid #d7dce1 !important;
    border-radius: 7px !important;
    background: #fff !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

body.customer-account-edit .form-edit-account .borabella-b2b-security-fields input:focus {
    border-color: #a8a8a8 !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(0, 0, 0, .05) !important;
}

body.customer-account-edit .form-edit-account .borabella-b2b-password-control input {
    padding-right: 3.25rem !important;
}

body.customer-account-edit .form-edit-account .borabella-b2b-password-toggle {
    position: absolute !important;
    top: 22px !important;
    right: .6rem !important;
    z-index: 5;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 2rem !important;
    height: 2rem !important;
    min-width: 2rem !important;
    min-height: 2rem !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: translateY(-50%);
    cursor: pointer;
    color: #111;
    line-height: 1;
}

body.customer-account-edit .form-edit-account .borabella-b2b-security-password .note {
    margin-top: .45rem;
}

@media (max-width: 767px) {
    body.customer-account-edit .form-edit-account .borabella-b2b-security-toggles {
        align-items: flex-start;
        flex-direction: column;
        gap: .65rem;
    }

    body.customer-account-edit .form-edit-account .borabella-b2b-security-fields {
        grid-template-columns: minmax(0, 1fr);
    }
}


/* Ícone de mostrar/ocultar senha do bloco de segurança B2B */
body.customer-account-edit .borabella-b2b-password-toggle {
    color: #111827 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
}

body.customer-account-edit .borabella-b2b-password-toggle:hover,
body.customer-account-edit .borabella-b2b-password-toggle:focus {
    color: #111827 !important;
    background: transparent !important;
    box-shadow: none !important;
    outline: none !important;
}

body.customer-account-edit .borabella-b2b-password-toggle .borabella-b2b-eye-icon {
    display: block !important;
    width: 20px !important;
    height: 20px !important;
    margin: 0 !important;
    pointer-events: none;
}


/* Ações alternativas para clientes B2B ainda não liberados */
.borabella-b2b-replacement-action {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: .65rem 1.15rem;
    border-radius: 6px;
    text-decoration: none !important;
    font-weight: 600;
    line-height: 1.2;
    cursor: pointer;
    box-sizing: border-box;
}

body.catalog-product-view .borabella-b2b-login-action {
    width: 100%;
    max-width: 320px;
}

.product-item .borabella-b2b-view-product {
    width: 100%;
}

@media (max-width: 767px) {
    body.catalog-product-view .borabella-b2b-login-action {
        max-width: none;
    }
}


/*
 * Chamadas B2B com aparência real de botão.
 * Usa seletores específicos para prevalecer sobre estilos de links do tema.
 */
html body .borabella-b2b-replacement-action,
html body a.borabella-b2b-replacement-action {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 44px !important;
    padding: 0 22px !important;
    border: 1px solid #111 !important;
    border-radius: 4px !important;
    background: #111 !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 42px !important;
    text-align: center !important;
    text-decoration: none !important;
    white-space: nowrap;
    cursor: pointer !important;
    box-sizing: border-box !important;
    transition: opacity .2s ease;
}

html body .borabella-b2b-replacement-action:hover,
html body .borabella-b2b-replacement-action:focus,
html body .borabella-b2b-replacement-action:active {
    background: #111 !important;
    border-color: #111 !important;
    color: #fff !important;
    text-decoration: none !important;
    opacity: .82;
}

body.catalog-product-view .borabella-b2b-login-action {
    width: auto !important;
    min-width: 190px;
    max-width: 100%;
}

.product-item .borabella-b2b-view-product {
    width: 100% !important;
    min-width: 0;
}


/* Mensagem de status B2B exibida somente na página do produto para clientes logados */
body.catalog-product-view .borabella-b2b-status-message {
    display: flex !important;
    align-items: flex-start;
    gap: 12px;
    width: 100%;
    max-width: 520px;
    margin: 0;
    padding: 14px 16px;
    border: 1px solid #d7dce1;
    border-radius: 6px;
    background: #f7f8f9;
    color: #263445;
    font-size: 14px;
    line-height: 1.5;
    box-sizing: border-box;
}

body.catalog-product-view .borabella-b2b-status-message-icon {
    display: inline-flex;
    flex: 0 0 22px;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    margin-top: 1px;
    border: 1px solid currentColor;
    border-radius: 50%;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
}

body.catalog-product-view .borabella-b2b-status-message-text {
    flex: 1 1 auto;
    min-width: 0;
}

/* Variações discretas por situação, sem alterar a legibilidade. */
body.catalog-product-view .borabella-b2b-status-pending,
body.catalog-product-view .borabella-b2b-status-awaiting_analysis {
    border-color: #d7b55b;
    background: #fffaf0;
    color: #66511a;
}

body.catalog-product-view .borabella-b2b-status-denied {
    border-color: #d9a3a3;
    background: #fff6f6;
    color: #7b3030;
}

body.catalog-product-view .borabella-b2b-status-blocked {
    border-color: #c9cdd3;
    background: #f5f6f7;
    color: #454b55;
}

body.catalog-product-view .borabella-b2b-status-approved {
    border-color: #9bb8a4;
    background: #f4faf6;
    color: #31583d;
}

@media (max-width: 767px) {
    body.catalog-product-view .borabella-b2b-status-message {
        max-width: none;
    }
}

/* Produto: a mensagem B2B ocupa toda a largura disponível do box de informações. */
body.catalog-product-view .box-tocart:has(.borabella-b2b-status-message),
body.catalog-product-view .box-tocart .actions:has(.borabella-b2b-status-message),
body.catalog-product-view form#product_addtocart_form:has(.borabella-b2b-status-message) .box-tocart,
body.catalog-product-view form[action*="checkout/cart/add"]:has(.borabella-b2b-status-message) .box-tocart {
    width: 100% !important;
    max-width: none !important;
}

body.catalog-product-view .box-tocart .actions:has(.borabella-b2b-status-message) {
    display: block !important;
    flex: 1 1 100% !important;
}

body.catalog-product-view .borabella-b2b-status-message {
    width: 100% !important;
    max-width: none !important;
    align-self: stretch !important;
}


/* Campo "Se vende online" com opção rápida "Não" */
.borabella-b2b-online-link-control {
    position: relative;
    display: flex;
    align-items: stretch;
    width: 100%;
}

.borabella-b2b-online-link-control > input.input-text {
    flex: 1 1 auto;
    min-width: 0;
    padding-right: 92px !important;
}

.borabella-b2b-online-link-no {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-width: 76px;
    padding: 0 13px;
    border-left: 1px solid #d7dce1;
    color: #334155;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    box-sizing: border-box;
    user-select: none;
}

.borabella-b2b-online-link-no input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
    min-height: 16px !important;
    margin: 0 !important;
    padding: 0 !important;
}

.borabella-b2b-online-link-disabled {
    background: #f6f7f8 !important;
    color: #64748b !important;
}


/* Campo "Se vende online": acabamento visual do checkbox "Não" */
body.customer-account-create .borabella-b2b-online-link-control,
body.customer-account-edit .borabella-b2b-online-link-control {
    display: flex !important;
    align-items: stretch !important;
    width: 100% !important;
    min-height: 42px !important;
    border: 1px solid #d7dce1 !important;
    border-radius: 7px !important;
    background: #fff !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

body.customer-account-create .borabella-b2b-online-link-control > input[type="text"],
body.customer-account-create .borabella-b2b-online-link-control > input[type="url"],
body.customer-account-edit .borabella-b2b-online-link-control > input[type="text"],
body.customer-account-edit .borabella-b2b-online-link-control > input[type="url"] {
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    height: 42px !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: .65rem .8rem !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

body.customer-account-create .borabella-b2b-online-link-no,
body.customer-account-edit .borabella-b2b-online-link-no {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .4rem !important;
    min-width: 68px !important;
    margin: 0 !important;
    padding: 0 .75rem !important;
    border-left: 1px solid #d7dce1 !important;
    background: #fafafa !important;
    color: #4b5563 !important;
    font-size: .875rem !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    white-space: nowrap !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
}

body.customer-account-create .borabella-b2b-online-link-no input[type="checkbox"],
body.customer-account-edit .borabella-b2b-online-link-no input[type="checkbox"] {
    flex: 0 0 auto !important;
    width: 15px !important;
    height: 15px !important;
    min-width: 15px !important;
    min-height: 15px !important;
    margin: 0 !important;
    padding: 0 !important;
    vertical-align: middle !important;
    cursor: pointer !important;
}

body.customer-account-create .borabella-b2b-online-link-no span,
body.customer-account-edit .borabella-b2b-online-link-no span {
    display: inline-block !important;
    margin: 0 !important;
    padding: 0 !important;
    font-weight: 400 !important;
    line-height: 1 !important;
}

body.customer-account-create .borabella-b2b-online-link-control:focus-within,
body.customer-account-edit .borabella-b2b-online-link-control:focus-within {
    border-color: #9da4ad !important;
    box-shadow: 0 0 0 2px rgba(0, 0, 0, .05) !important;
}

/* Quando marcado, mantém aspecto discreto e alinhado */
body.customer-account-create .borabella-b2b-online-link-no:has(input:checked),
body.customer-account-edit .borabella-b2b-online-link-no:has(input:checked) {
    background: #f3f4f6 !important;
    color: #111827 !important;
}

@media (max-width: 640px) {
    body.customer-account-create .borabella-b2b-online-link-no,
    body.customer-account-edit .borabella-b2b-online-link-no {
        min-width: 62px !important;
        padding: 0 .6rem !important;
        font-size: .8125rem !important;
    }
}


/* Autocomplete de endereço por CEP */
.borabella-b2b-registration .borabella-b2b-cep-message {
    min-height: 18px;
    margin-top: 6px;
    font-size: 12px;
    font-weight: 400;
}

.borabella-b2b-registration .borabella-b2b-cep-message.borabella-b2b-cep-error {
    opacity: 1;
}

.borabella-b2b-registration #postcode.borabella-b2b-cep-loading {
    cursor: progress;
}


/* Botão Voltar fora do box do cadastro */
body.customer-account-create .borabella-b2b-back-row {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin: 1.5rem auto 0;
    padding: 0 0 1.5rem;
    text-align: center;
}

body.customer-account-create .borabella-b2b-back-row .secondary,
body.customer-account-create .borabella-b2b-back-row .action.back,
body.customer-account-create .borabella-b2b-back-row a {
    margin: 0 !important;
}

body.customer-account-create .borabella-b2b-back-row a,
body.customer-account-create .borabella-b2b-back-row .action.back {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: .625rem 1.25rem;
    border-radius: .5rem;
    font-size: .9rem;
    font-weight: 500;
    line-height: 1.2;
    text-decoration: none;
}

/* Erros do cadastro/edição com visual consistente e legível */
body.customer-account-create .message-error,
body.customer-account-create .message.error,
body.customer-account-edit .message-error,
body.customer-account-edit .message.error {
    width: 100%;
    margin: 0 0 1.25rem;
    padding: .875rem 1rem;
    border: 1px solid #d9a3a3;
    border-radius: .5rem;
    background: #fff6f6;
    color: #7b3030;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.5;
    box-sizing: border-box;
}

body.customer-account-create .mage-error,
body.customer-account-create .field-error,
body.customer-account-edit .mage-error,
body.customer-account-edit .field-error {
    display: block;
    width: 100%;
    margin-top: .375rem;
    color: #b42318;
    font-size: .8rem;
    font-weight: 400;
    line-height: 1.35;
}

body.customer-account-create input.mage-error,
body.customer-account-create select.mage-error,
body.customer-account-edit input.mage-error,
body.customer-account-edit select.mage-error,
body.customer-account-create input:invalid:not(:focus):not(:placeholder-shown),
body.customer-account-edit input:invalid:not(:focus):not(:placeholder-shown) {
    border-color: #d92d20;
}

/* ================================================================
 * Validação B2B — estabilidade do grid e mensagens de erro
 * ================================================================ */
body.customer-account-create .borabella-b2b-registration-grid,
body.customer-account-edit .borabella-b2b-registration-grid {
    grid-auto-rows: auto !important;
    align-items: start !important;
}

/* A classe mage-error também é aplicada ao próprio input pelo Magento.
 * Não aplicar tipografia de mensagem ao controle de formulário. */
body.customer-account-create .borabella-b2b-registration-grid input.mage-error,
body.customer-account-create .borabella-b2b-registration-grid select.mage-error,
body.customer-account-create .borabella-b2b-registration-grid textarea.mage-error,
body.customer-account-edit .borabella-b2b-registration-grid input.mage-error,
body.customer-account-edit .borabella-b2b-registration-grid select.mage-error,
body.customer-account-edit .borabella-b2b-registration-grid textarea.mage-error {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: normal !important;
    color: inherit !important;
    border-color: #d92d20 !important;
}

/* Somente os elementos que realmente são mensagens recebem este visual. */
body.customer-account-create .borabella-b2b-registration-grid .mage-error:not(input):not(select):not(textarea),
body.customer-account-create .borabella-b2b-registration-grid .field-error,
body.customer-account-create .borabella-b2b-registration-grid [data-validation-message],
body.customer-account-edit .borabella-b2b-registration-grid .mage-error:not(input):not(select):not(textarea),
body.customer-account-edit .borabella-b2b-registration-grid .field-error,
body.customer-account-edit .borabella-b2b-registration-grid [data-validation-message] {
    position: static !important;
    inset: auto !important;
    float: none !important;
    clear: both !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    margin: .375rem 0 0 !important;
    padding: 0 !important;
    color: #b42318 !important;
    background: transparent !important;
    border: 0 !important;
    font-size: .75rem !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    box-sizing: border-box !important;
}

/* O control deve crescer junto com a mensagem e participar da altura da linha. */
body.customer-account-create .borabella-b2b-registration-grid > .field > .control,
body.customer-account-edit .borabella-b2b-registration-grid > .field > .control {
    position: relative !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
}

/* Dá respiro adicional só nas células que possuem mensagem de validação. */
body.customer-account-create .borabella-b2b-registration-grid > .field:has(.mage-error:not(input):not(select):not(textarea)),
body.customer-account-create .borabella-b2b-registration-grid > .field:has(.field-error),
body.customer-account-edit .borabella-b2b-registration-grid > .field:has(.mage-error:not(input):not(select):not(textarea)),
body.customer-account-edit .borabella-b2b-registration-grid > .field:has(.field-error) {
    padding-bottom: .5rem !important;
}

/* Evita que o label do campo da linha seguinte encoste visualmente no erro. */
body.customer-account-create .borabella-b2b-registration-grid > .field,
body.customer-account-edit .borabella-b2b-registration-grid > .field {
    overflow: visible !important;
}

/* Borabella B2B - espacamento das mensagens de validacao da senha */
.borabella-b2b-password-field .field-error {
    margin-top: 10px;
}

.borabella-b2b-password-field .field-error .messages,
.borabella-b2b-password-field .field-error ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.borabella-b2b-password-field .field-error li {
    margin: 0 0 6px;
    line-height: 1.45;
}

.borabella-b2b-password-field .field-error li:last-child {
    margin-bottom: 0;
}

.borabella-b2b-password-field .password-strength-meter,
.borabella-b2b-password-field .password-strength {
    margin-top: 10px;
    margin-bottom: 7px;
    line-height: 1.4;
}

.borabella-b2b-password-field {
    padding-bottom: 8px;
}

/* O Hyva pode renderizar as mensagens diretamente em #password-error. */
.borabella-b2b-password-field #password-error {
    margin-top: 10px;
}

.borabella-b2b-password-field #password-error > * + * {
    margin-top: 6px;
}

/* Borabella B2B - correção definitiva de estabilidade do formulário */

/*
 * Hyvä adiciona .field-error ao próprio .field.
 * Portanto o container NÃO pode receber as regras visuais da mensagem.
 */
body.customer-account-create .borabella-b2b-registration-grid > .field.field-error,
body.customer-account-edit .borabella-b2b-registration-grid > .field.field-error {
    display: block !important;
    position: relative !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    color: inherit !important;
    background: transparent !important;
    border: 0 !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    overflow: visible !important;
    box-sizing: border-box !important;
}

/* O grid nunca muda de estrutura quando surgem validações. */
body.customer-account-create .form-create-account .borabella-b2b-registration-grid,
body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid,
body.customer-account-edit .borabella-b2b-registration-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-flow: row !important;
    grid-auto-rows: auto !important;
    align-items: start !important;
    align-content: start !important;
    column-gap: 1.5rem !important;
    row-gap: 1.25rem !important;
}

/* Cada field é sempre uma célula estável e nunca força a outra coluna. */
body.customer-account-create .borabella-b2b-registration-grid > .field,
body.customer-account-edit .borabella-b2b-registration-grid > .field {
    display: block !important;
    align-self: start !important;
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

/* Campos de largura total continuam ocupando duas colunas mesmo com erro. */
body.customer-account-create .borabella-b2b-registration-grid > .borabella-b2b-span-2,
body.customer-account-edit .borabella-b2b-registration-grid > .borabella-b2b-span-2 {
    grid-column: 1 / -1 !important;
}

/*
 * O control cresce naturalmente. Nada fica absoluto, então mensagens
 * aumentam a altura da linha inteira e os dois campos da linha seguinte
 * descem juntos.
 */
body.customer-account-create .borabella-b2b-registration-grid > .field > .control,
body.customer-account-edit .borabella-b2b-registration-grid > .field > .control {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    box-sizing: border-box !important;
}

/* Inputs continuam com a geometria original mesmo quando inválidos. */
body.customer-account-create .borabella-b2b-registration-grid input.mage-error,
body.customer-account-create .borabella-b2b-registration-grid select.mage-error,
body.customer-account-create .borabella-b2b-registration-grid textarea.mage-error,
body.customer-account-edit .borabella-b2b-registration-grid input.mage-error,
body.customer-account-edit .borabella-b2b-registration-grid select.mage-error,
body.customer-account-edit .borabella-b2b-registration-grid textarea.mage-error {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding-left: .85rem !important;
    padding-right: .85rem !important;
    color: inherit !important;
    background-color: #fff !important;
    border-color: #d92d20 !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: normal !important;
    box-sizing: border-box !important;
}

/*
 * Somente os elementos INTERNOS de mensagem são vermelhos.
 * Não usar ".field-error" isoladamente aqui porque ela também identifica
 * o container do field no Hyvä.
 */
body.customer-account-create .borabella-b2b-registration-grid > .field.field-error > .messages,
body.customer-account-create .borabella-b2b-registration-grid > .field.field-error > ul.messages,
body.customer-account-create .borabella-b2b-registration-grid > .field.field-error .control > .messages,
body.customer-account-create .borabella-b2b-registration-grid > .field.field-error .control > ul.messages,
body.customer-account-create .borabella-b2b-registration-grid > .field .mage-error:not(input):not(select):not(textarea),
body.customer-account-create .borabella-b2b-registration-grid > .field [data-validation-message],
body.customer-account-edit .borabella-b2b-registration-grid > .field.field-error > .messages,
body.customer-account-edit .borabella-b2b-registration-grid > .field.field-error > ul.messages,
body.customer-account-edit .borabella-b2b-registration-grid > .field.field-error .control > .messages,
body.customer-account-edit .borabella-b2b-registration-grid > .field.field-error .control > ul.messages,
body.customer-account-edit .borabella-b2b-registration-grid > .field .mage-error:not(input):not(select):not(textarea),
body.customer-account-edit .borabella-b2b-registration-grid > .field [data-validation-message] {
    position: static !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    margin: .5rem 0 0 !important;
    padding: 0 !important;
    color: #b42318 !important;
    background: transparent !important;
    border: 0 !important;
    font-size: .78rem !important;
    font-weight: 400 !important;
    line-height: 1.45 !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    box-sizing: border-box !important;
    list-style: none !important;
}

/* Lista de mensagens: espaçamento vertical previsível. */
body.customer-account-create .borabella-b2b-registration-grid .messages > li,
body.customer-account-create .borabella-b2b-registration-grid ul.messages > li,
body.customer-account-edit .borabella-b2b-registration-grid .messages > li,
body.customer-account-edit .borabella-b2b-registration-grid ul.messages > li {
    display: block !important;
    margin: 0 0 .35rem !important;
    padding: 0 !important;
    color: #b42318 !important;
    font-size: .78rem !important;
    font-weight: 400 !important;
    line-height: 1.45 !important;
}

body.customer-account-create .borabella-b2b-registration-grid .messages > li:last-child,
body.customer-account-create .borabella-b2b-registration-grid ul.messages > li:last-child,
body.customer-account-edit .borabella-b2b-registration-grid .messages > li:last-child,
body.customer-account-edit .borabella-b2b-registration-grid ul.messages > li:last-child {
    margin-bottom: 0 !important;
}

/* Força da senha fica separada da lista de erros, sem afetar a coluna vizinha. */
body.customer-account-create .borabella-b2b-password-field .password-strength-meter,
body.customer-account-create .borabella-b2b-password-field .password-strength,
body.customer-account-edit .borabella-b2b-password-field .password-strength-meter,
body.customer-account-edit .borabella-b2b-password-field .password-strength {
    display: block !important;
    width: 100% !important;
    min-height: 1.15rem !important;
    margin: .65rem 0 0 !important;
    padding: 0 !important;
    line-height: 1.4 !important;
}

/* Remove padding variável adicionado por versões anteriores quando há erro. */
body.customer-account-create .borabella-b2b-registration-grid > .field:has(.mage-error:not(input):not(select):not(textarea)),
body.customer-account-create .borabella-b2b-registration-grid > .field:has(.messages),
body.customer-account-edit .borabella-b2b-registration-grid > .field:has(.mage-error:not(input):not(select):not(textarea)),
body.customer-account-edit .borabella-b2b-registration-grid > .field:has(.messages) {
    padding-bottom: 0 !important;
}

/* Ações não mudam de largura/posição quando o formulário fica inválido. */
body.customer-account-create .borabella-b2b-card-actions,
body.customer-account-edit .borabella-b2b-card-actions {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-width: 0 !important;
    margin-top: 1.5rem !important;
    box-sizing: border-box !important;
}

/* Mobile permanece uma coluna, sem depender do estado de validação. */
@media (max-width: 767px) {
    body.customer-account-create .form-create-account .borabella-b2b-registration-grid,
    body.customer-account-edit .form-edit-account .borabella-b2b-registration-grid,
    body.customer-account-edit .borabella-b2b-registration-grid {
        grid-template-columns: minmax(0, 1fr) !important;
        column-gap: 0 !important;
        row-gap: 1rem !important;
    }

    body.customer-account-create .borabella-b2b-registration-grid > .borabella-b2b-span-2,
    body.customer-account-edit .borabella-b2b-registration-grid > .borabella-b2b-span-2 {
        grid-column: auto !important;
    }
}

/* Borabella B2B - estabilidade final de largura e upload */

body.customer-account-create .form-create-account.borabella-b2b-single-form-ready {
    width: 100% !important;
    max-width: 72rem !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

body.customer-account-create .form-create-account .borabella-b2b-registration {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

body.customer-account-create .form-create-account .borabella-b2b-registration *,
body.customer-account-create .form-create-account .borabella-b2b-registration *::before,
body.customer-account-create .form-create-account .borabella-b2b-registration *::after {
    box-sizing: border-box;
    min-width: 0;
}

body.customer-account-create .form-create-account .borabella-b2b-registration-grid {
    display: grid !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    grid-auto-flow: row !important;
    grid-auto-rows: max-content !important;
    align-items: start !important;
    column-gap: 1.5rem !important;
    row-gap: 1.25rem !important;
}

body.customer-account-create .form-create-account .borabella-b2b-registration-grid > .field,
body.customer-account-create .form-create-account .borabella-b2b-registration-grid > .field.field-error {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    align-self: start !important;
    overflow: visible !important;
    color: inherit !important;
    font: inherit !important;
    background: transparent !important;
    border: 0 !important;
}

body.customer-account-create .form-create-account .borabella-b2b-registration-grid > .borabella-b2b-span-2,
body.customer-account-create .form-create-account .borabella-b2b-registration-grid > .borabella-b2b-proof-field,
body.customer-account-create .form-create-account .borabella-b2b-registration-grid > .field:has(.borabella-b2b-file-upload) {
    grid-column: 1 / -1 !important;
}

body.customer-account-create .form-create-account .borabella-b2b-registration-grid > .field .control {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    overflow: visible !important;
}

body.customer-account-create .form-create-account .borabella-b2b-registration-grid .messages,
body.customer-account-create .form-create-account .borabella-b2b-registration-grid ul.messages,
body.customer-account-create .form-create-account .borabella-b2b-registration-grid .mage-error:not(input):not(select):not(textarea),
body.customer-account-create .form-create-account .borabella-b2b-registration-grid [data-validation-message] {
    position: static !important;
    float: none !important;
    clear: both !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    margin: .5rem 0 0 !important;
    padding: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
}

body.customer-account-create .form-create-account .borabella-b2b-registration-grid .messages > li,
body.customer-account-create .form-create-account .borabella-b2b-registration-grid ul.messages > li {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 0 .35rem !important;
    padding: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
}

body.customer-account-create .borabella-b2b-file-upload {
    position: relative !important;
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) !important;
    align-items: center !important;
    align-content: center !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 46px !important;
    height: auto !important;
    margin: 0 !important;
    padding: .45rem !important;
    gap: .5rem 1rem !important;
    transform: none !important;
    top: auto !important;
    bottom: auto !important;
}

body.customer-account-create .borabella-b2b-file-button {
    position: static !important;
    align-self: center !important;
    justify-self: start !important;
    transform: none !important;
    top: auto !important;
    bottom: auto !important;
    margin: 0 !important;
}

body.customer-account-create .borabella-b2b-file-name {
    align-self: center !important;
    min-width: 0 !important;
    max-width: 100% !important;
}

body.customer-account-create .borabella-b2b-password-field,
body.customer-account-create .borabella-b2b-password-confirmation-field {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    align-self: start !important;
}

body.customer-account-create .borabella-b2b-password-field .password-strength-meter,
body.customer-account-create .borabella-b2b-password-field .password-strength {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
}

@media (max-width: 767px) {
    body.customer-account-create .form-create-account .borabella-b2b-registration-grid {
        grid-template-columns: minmax(0, 1fr) !important;
        column-gap: 0 !important;
    }

    body.customer-account-create .form-create-account .borabella-b2b-registration-grid > .borabella-b2b-span-2,
    body.customer-account-create .form-create-account .borabella-b2b-registration-grid > .borabella-b2b-proof-field,
    body.customer-account-create .form-create-account .borabella-b2b-registration-grid > .field:has(.borabella-b2b-file-upload) {
        grid-column: auto !important;
    }

    body.customer-account-create .borabella-b2b-file-upload {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body.customer-account-create .borabella-b2b-file-button {
        justify-self: stretch !important;
        width: 100% !important;
    }
}

/* Borabella B2B - lock definitivo de largura e upload estrutural */

/*
 * Preserva EXATAMENTE a largura que o formulário tinha ao carregar.
 * Mensagens de validação só podem aumentar a altura.
 */
body.customer-account-create .form-create-account.borabella-b2b-single-form-ready.borabella-b2b-width-locked {
    width: min(100%, var(--borabella-b2b-form-width)) !important;
    max-width: var(--borabella-b2b-form-width) !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

body.customer-account-create
.form-create-account
.borabella-b2b-registration.borabella-b2b-card-width-locked {
    width: min(100%, var(--borabella-b2b-card-width)) !important;
    max-width: var(--borabella-b2b-card-width) !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

/* O conteúdo nunca pode forçar largura intrínseca maior. */
body.customer-account-create .borabella-b2b-registration-grid,
body.customer-account-create .borabella-b2b-registration-grid > .field,
body.customer-account-create .borabella-b2b-registration-grid > .field > .control,
body.customer-account-create .borabella-b2b-registration-grid .messages,
body.customer-account-create .borabella-b2b-registration-grid .messages li,
body.customer-account-create .borabella-b2b-registration-grid [data-validation-message] {
    min-width: 0 !important;
    max-width: 100% !important;
}

/* Erros quebram linha, nunca alargam o card. */
body.customer-account-create .borabella-b2b-registration-grid .messages,
body.customer-account-create .borabella-b2b-registration-grid .messages li,
body.customer-account-create .borabella-b2b-registration-grid [data-validation-message],
body.customer-account-create .borabella-b2b-registration-grid .mage-error:not(input):not(select):not(textarea) {
    width: 100% !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
}

/* ===== Upload estrutural ===== */

/* O campo sempre ocupa uma linha inteira e começa pelo topo. */
body.customer-account-create .borabella-b2b-proof-field {
    grid-column: 1 / -1 !important;
    align-self: start !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
}

body.customer-account-create .borabella-b2b-proof-control {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
}

/*
 * O visual do upload agora contém SOMENTE botão + nome.
 * A validação do Hyvä é inserida depois do input file, fora deste container.
 */
body.customer-account-create .borabella-b2b-file-upload {
    position: static !important;
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) !important;
    align-items: center !important;
    align-content: center !important;
    justify-items: start !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 46px !important;
    height: auto !important;
    margin: 0 !important;
    padding: .45rem !important;
    gap: .75rem 1rem !important;
    transform: none !important;
}

/* Input funcional invisível, mas fora do grid visual. */
body.customer-account-create .borabella-b2b-file-input {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* O botão nunca muda de coluna/posição quando aparece erro. */
body.customer-account-create .borabella-b2b-file-button {
    position: static !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: center !important;
    justify-self: start !important;
    width: auto !important;
    max-width: max-content !important;
    min-width: max-content !important;
    margin: 0 !important;
    transform: none !important;
    inset: auto !important;
}

body.customer-account-create .borabella-b2b-file-name {
    display: block !important;
    align-self: center !important;
    justify-self: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

/*
 * Qualquer mensagem criada para o input file fica abaixo do visual do upload.
 * Nunca participa das colunas botão/nome.
 */
body.customer-account-create .borabella-b2b-proof-control > .messages,
body.customer-account-create .borabella-b2b-proof-control > ul.messages,
body.customer-account-create .borabella-b2b-proof-control > .mage-error:not(input),
body.customer-account-create .borabella-b2b-proof-control > [data-validation-message] {
    order: 2 !important;
    position: static !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: .5rem 0 0 !important;
    padding: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
}

/* Nota sempre fica por último. */
body.customer-account-create .borabella-b2b-proof-control > .note {
    order: 3 !important;
    width: 100% !important;
    margin: .5rem 0 0 !important;
}

/* O visual do upload fica sempre primeiro. */
body.customer-account-create .borabella-b2b-proof-control > .borabella-b2b-file-upload {
    order: 1 !important;
}

/* Mobile */
@media (max-width: 767px) {
    body.customer-account-create .borabella-b2b-file-upload {
        grid-template-columns: minmax(0, 1fr) !important;
        align-items: stretch !important;
    }

    body.customer-account-create .borabella-b2b-file-button {
        justify-self: stretch !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }
}

/* Borabella B2B - correção estrutural do campo link online */

/* O field continua ocupando a largura prevista pelo grid. */
body.customer-account-create .borabella-b2b-online-link-field {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
}

/*
 * O control vira coluna:
 * 1) linha input + checkbox
 * 2) mensagens de erro
 * 3) nota
 */
body.customer-account-create .borabella-b2b-online-link-control {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    overflow: visible !important;
}

/* A linha visual nunca recebe mensagens dentro do seu layout. */
body.customer-account-create .borabella-b2b-online-link-row {
    order: 1 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Input sempre ocupa somente a primeira coluna. */
body.customer-account-create .borabella-b2b-online-link-row input[type="text"],
body.customer-account-create .borabella-b2b-online-link-row input[type="url"] {
    grid-column: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}

/* Checkbox "Não" fica fixo na coluna da direita. */
body.customer-account-create .borabella-b2b-online-link-row .borabella-b2b-online-link-no {
    grid-column: 2 !important;
    align-self: stretch !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 7rem !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    border-left: 0 !important;
    border-top-left-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
}

/*
 * Mensagens de validação ficam FORA da linha visual.
 * Se o Hyvä inserir depois do input, estas regras as transformam em linha abaixo.
 */
body.customer-account-create .borabella-b2b-online-link-control > .messages,
body.customer-account-create .borabella-b2b-online-link-control > ul.messages,
body.customer-account-create .borabella-b2b-online-link-control > .mage-error:not(input),
body.customer-account-create .borabella-b2b-online-link-control > [data-validation-message] {
    order: 2 !important;
    position: static !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: .5rem 0 0 !important;
    padding: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
}

/* Nota sempre abaixo do erro. */
body.customer-account-create .borabella-b2b-online-link-control > .note {
    order: 3 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: .5rem 0 0 !important;
}

/*
 * Fallback para casos em que o Hyvä injeta a mensagem dentro da row:
 * a row ganha uma linha extra que ocupa as duas colunas.
 */
body.customer-account-create .borabella-b2b-online-link-row > .messages,
body.customer-account-create .borabella-b2b-online-link-row > ul.messages,
body.customer-account-create .borabella-b2b-online-link-row > .mage-error:not(input),
body.customer-account-create .borabella-b2b-online-link-row > [data-validation-message] {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    position: static !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: .5rem 0 0 !important;
    padding: 0 !important;
}

/* O checkbox continua na primeira linha mesmo com erro. */
body.customer-account-create .borabella-b2b-online-link-row .borabella-b2b-online-link-no {
    grid-row: 1 !important;
}

/* Mobile: mantém input + Não juntos, mas sem extrapolar largura. */
@media (max-width: 767px) {
    body.customer-account-create .borabella-b2b-online-link-row {
        grid-template-columns: minmax(0, 1fr) auto !important;
    }

    body.customer-account-create .borabella-b2b-online-link-row .borabella-b2b-online-link-no {
        min-width: 4.5rem !important;
    }
}


/* Borabella B2B - fix real do campo online_link */
body.customer-account-create .borabella-b2b-online-link-stack,
body.customer-account-edit .borabella-b2b-online-link-stack {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

body.customer-account-create .borabella-b2b-online-link-row,
body.customer-account-edit .borabella-b2b-online-link-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #d7dce1 !important;
    border-radius: 8px !important;
    background: #fff !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

body.customer-account-create .borabella-b2b-online-link-row > input[type="text"],
body.customer-account-edit .borabella-b2b-online-link-row > input[type="text"] {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: .7rem .85rem !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.customer-account-create .borabella-b2b-online-link-row > .borabella-b2b-online-link-no,
body.customer-account-edit .borabella-b2b-online-link-row > .borabella-b2b-online-link-no {
    position: static !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .4rem !important;
    min-width: 76px !important;
    margin: 0 !important;
    padding: 0 .75rem !important;
    border: 0 !important;
    border-left: 1px solid #d7dce1 !important;
    border-radius: 0 !important;
    background: #fafafa !important;
    transform: none !important;
    inset: auto !important;
}

body.customer-account-create .borabella-b2b-online-link-error-slot,
body.customer-account-edit .borabella-b2b-online-link-error-slot {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

body.customer-account-create .borabella-b2b-online-link-error-slot:empty,
body.customer-account-edit .borabella-b2b-online-link-error-slot:empty {
    display: none !important;
}

body.customer-account-create .borabella-b2b-online-link-error-slot > *,
body.customer-account-edit .borabella-b2b-online-link-error-slot > * {
    position: static !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    margin: .45rem 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #b42318 !important;
    font-size: .78rem !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
}

body.customer-account-create .borabella-b2b-online-link-stack > .note,
body.customer-account-edit .borabella-b2b-online-link-stack > .note {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: .5rem 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

/* antes do observer mover o erro, não deixe ele quebrar a row */
body.customer-account-create .borabella-b2b-online-link-row > .messages,
body.customer-account-create .borabella-b2b-online-link-row > .mage-error:not(input),
body.customer-account-create .borabella-b2b-online-link-row > [data-validation-message],
body.customer-account-create .borabella-b2b-online-link-row > [id$="-error"] {
    display: none !important;
}

/* Borabella B2B - borda única do campo online_link */

body.customer-account-create .borabella-b2b-online-link-row,
body.customer-account-edit .borabella-b2b-online-link-row {
    position: relative !important;
    border: 1px solid #d7dce1 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    background: #fff !important;
    box-shadow: none !important;
}

body.customer-account-create .borabella-b2b-online-link-row > input[type="text"],
body.customer-account-create .borabella-b2b-online-link-row > input[type="url"],
body.customer-account-create .borabella-b2b-online-link-row > input[type="text"].mage-error,
body.customer-account-create .borabella-b2b-online-link-row > input[type="url"].mage-error,
body.customer-account-edit .borabella-b2b-online-link-row > input[type="text"],
body.customer-account-edit .borabella-b2b-online-link-row > input[type="url"],
body.customer-account-edit .borabella-b2b-online-link-row > input[type="text"].mage-error,
body.customer-account-edit .borabella-b2b-online-link-row > input[type="url"].mage-error {
    appearance: none !important;
    -webkit-appearance: none !important;
    border: 0 !important;
    border-width: 0 !important;
    border-style: none !important;
    border-color: transparent !important;
    border-radius: 0 !important;
    outline: 0 !important;
    outline-offset: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

body.customer-account-create .borabella-b2b-online-link-row > input:invalid,
body.customer-account-create .borabella-b2b-online-link-row > input:invalid:focus,
body.customer-account-create .borabella-b2b-online-link-row > input.mage-error:focus,
body.customer-account-edit .borabella-b2b-online-link-row > input:invalid,
body.customer-account-edit .borabella-b2b-online-link-row > input:invalid:focus,
body.customer-account-edit .borabella-b2b-online-link-row > input.mage-error:focus {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

body.customer-account-create .field.field-error .borabella-b2b-online-link-row,
body.customer-account-create .borabella-b2b-online-link-row:has(> input.mage-error),
body.customer-account-create .borabella-b2b-online-link-row:has(> input[aria-invalid="true"]),
body.customer-account-edit .field.field-error .borabella-b2b-online-link-row,
body.customer-account-edit .borabella-b2b-online-link-row:has(> input.mage-error),
body.customer-account-edit .borabella-b2b-online-link-row:has(> input[aria-invalid="true"]) {
    border-color: #d92d20 !important;
}

body.customer-account-create .field:not(.field-error) .borabella-b2b-online-link-row:focus-within,
body.customer-account-edit .field:not(.field-error) .borabella-b2b-online-link-row:focus-within {
    border-color: #9da4ad !important;
    box-shadow: 0 0 0 2px rgba(0, 0, 0, .05) !important;
}

body.customer-account-create .field.field-error .borabella-b2b-online-link-row:focus-within,
body.customer-account-edit .field.field-error .borabella-b2b-online-link-row:focus-within {
    border-color: #d92d20 !important;
    box-shadow: 0 0 0 2px rgba(217, 45, 32, .08) !important;
}

body.customer-account-create .borabella-b2b-online-link-row > .borabella-b2b-online-link-no,
body.customer-account-edit .borabella-b2b-online-link-row > .borabella-b2b-online-link-no {
    border-top: 0 !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
    border-left: 1px solid #d7dce1 !important;
    border-radius: 0 !important;
}

body.customer-account-create .field.field-error .borabella-b2b-online-link-row > .borabella-b2b-online-link-no,
body.customer-account-edit .field.field-error .borabella-b2b-online-link-row > .borabella-b2b-online-link-no {
    border-left-color: #d92d20 !important;
}

/* Borabella B2B - correção DOM field-error do online_link */

/*
 * A row é o único elemento com borda.
 * Não reutilizar .borabella-b2b-online-link-control aqui:
 * essa classe possui regras legadas no módulo.
 */
body.customer-account-create .borabella-b2b-online-link-row,
body.customer-account-edit .borabella-b2b-online-link-row {
    position: relative !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 46px !important;
    height: 46px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #d7dce1 !important;
    border-radius: 8px !important;
    background: #fff !important;
    box-shadow: none !important;
    outline: 0 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

/*
 * Hyvä usa field-error DIRETAMENTE no input.
 * Neutraliza qualquer borda do tema para todos os estados possíveis.
 */
body.customer-account-create .borabella-b2b-online-link-row > input.input-text,
body.customer-account-create .borabella-b2b-online-link-row > input.input-text.required,
body.customer-account-create .borabella-b2b-online-link-row > input.input-text.field-error,
body.customer-account-create .borabella-b2b-online-link-row > input.input-text.required.field-error,
body.customer-account-create .borabella-b2b-online-link-row > input.input-text.mage-error,
body.customer-account-create .borabella-b2b-online-link-row > input.input-text:invalid,
body.customer-account-create .borabella-b2b-online-link-row > input.input-text:focus,
body.customer-account-create .borabella-b2b-online-link-row > input.input-text:invalid:focus,
body.customer-account-edit .borabella-b2b-online-link-row > input.input-text,
body.customer-account-edit .borabella-b2b-online-link-row > input.input-text.required,
body.customer-account-edit .borabella-b2b-online-link-row > input.input-text.field-error,
body.customer-account-edit .borabella-b2b-online-link-row > input.input-text.required.field-error,
body.customer-account-edit .borabella-b2b-online-link-row > input.input-text.mage-error,
body.customer-account-edit .borabella-b2b-online-link-row > input.input-text:invalid,
body.customer-account-edit .borabella-b2b-online-link-row > input.input-text:focus,
body.customer-account-edit .borabella-b2b-online-link-row > input.input-text:invalid:focus {
    position: static !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    margin: 0 !important;
    padding: .7rem .85rem !important;
    border: 0 !important;
    border-width: 0 !important;
    border-style: none !important;
    border-color: transparent !important;
    border-radius: 0 !important;
    outline: 0 !important;
    outline-width: 0 !important;
    outline-offset: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    transform: none !important;
    box-sizing: border-box !important;
}

/* O estado inválido aparece apenas na borda EXTERNA. */
body.customer-account-create .borabella-b2b-online-link-row:has(> input.field-error),
body.customer-account-create .borabella-b2b-online-link-row:has(> input.mage-error),
body.customer-account-create .borabella-b2b-online-link-row:has(> input[aria-invalid="true"]),
body.customer-account-edit .borabella-b2b-online-link-row:has(> input.field-error),
body.customer-account-edit .borabella-b2b-online-link-row:has(> input.mage-error),
body.customer-account-edit .borabella-b2b-online-link-row:has(> input[aria-invalid="true"]) {
    border: 1px solid #d92d20 !important;
    box-shadow: none !important;
}

/* O checkbox ocupa exatamente a coluna direita e não desenha borda externa. */
body.customer-account-create .borabella-b2b-online-link-row > .borabella-b2b-online-link-no,
body.customer-account-edit .borabella-b2b-online-link-row > .borabella-b2b-online-link-no {
    position: static !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: stretch !important;
    gap: .4rem !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    min-width: 76px !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 .75rem !important;
    border: 0 !important;
    border-left: 1px solid #d7dce1 !important;
    border-radius: 0 !important;
    background: #fafafa !important;
    box-shadow: none !important;
    outline: 0 !important;
    transform: none !important;
    inset: auto !important;
    box-sizing: border-box !important;
}

/* A divisória acompanha o estado de erro sem criar outra borda ao redor. */
body.customer-account-create .borabella-b2b-online-link-row:has(> input.field-error)
    > .borabella-b2b-online-link-no,
body.customer-account-create .borabella-b2b-online-link-row:has(> input.mage-error)
    > .borabella-b2b-online-link-no,
body.customer-account-edit .borabella-b2b-online-link-row:has(> input.field-error)
    > .borabella-b2b-online-link-no,
body.customer-account-edit .borabella-b2b-online-link-row:has(> input.mage-error)
    > .borabella-b2b-online-link-no {
    border-left-color: #d92d20 !important;
}

/* O erro permanece fora do componente visual. */
body.customer-account-create .borabella-b2b-online-link-error-slot,
body.customer-account-edit .borabella-b2b-online-link-error-slot {
    position: static !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* Impede qualquer mensagem temporária na row de participar do layout. */
body.customer-account-create .borabella-b2b-online-link-row > .messages,
body.customer-account-create .borabella-b2b-online-link-row > ul.messages,
body.customer-account-create .borabella-b2b-online-link-row > .field-error:not(input),
body.customer-account-create .borabella-b2b-online-link-row > .mage-error:not(input),
body.customer-account-create .borabella-b2b-online-link-row > [data-validation-message],
body.customer-account-create .borabella-b2b-online-link-row > [id$="-error"] {
    display: none !important;
}

/* Conta B2B - readonly disabled escuro no CSS carregado */

/*
 * Esta página carrega restriction.css.
 * Override final e mais específico que as regras anteriores do módulo/Hyvä.
 */
body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-hard-readonly-field
input.input-text[readonly],
body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-hard-readonly-field
input.borabella-b2b-hard-readonly,
body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-readonly-field
input.input-text[readonly] {
    background: #d6dbe1 !important;
    background-color: #d6dbe1 !important;
    color: #2f3947 !important;
    -webkit-text-fill-color: #2f3947 !important;
    border-color: #aeb7c2 !important;
    box-shadow: inset 0 0 0 1px rgba(47, 57, 71, .04) !important;
    opacity: 1 !important;
    cursor: not-allowed !important;
}

body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-hard-readonly-field
select:disabled,
body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-readonly-field
select:disabled {
    background: #d6dbe1 !important;
    background-color: #d6dbe1 !important;
    color: #2f3947 !important;
    -webkit-text-fill-color: #2f3947 !important;
    border-color: #aeb7c2 !important;
    box-shadow: inset 0 0 0 1px rgba(47, 57, 71, .04) !important;
    opacity: 1 !important;
    cursor: not-allowed !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    background-image: none !important;
}

/* Campo composto "Se vende online..." */
body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-disabled-control,
body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-online-link-row {
    background: #d6dbe1 !important;
    background-color: #d6dbe1 !important;
    border-color: #aeb7c2 !important;
    box-shadow: none !important;
}

body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-online-link-row
> input.input-text[readonly] {
    background: #d6dbe1 !important;
    background-color: #d6dbe1 !important;
    color: #2f3947 !important;
    -webkit-text-fill-color: #2f3947 !important;
    border: 0 !important;
    box-shadow: none !important;
}

body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-online-link-no {
    background: #c6cdd5 !important;
    color: #2f3947 !important;
    border-left-color: #aeb7c2 !important;
}

/* Labels um pouco mais apagados para reforçar o estado somente leitura */
body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-hard-readonly-field
> .label,
body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-readonly-field
> .label {
    color: #536071 !important;
}

/* Senha permanece normal */
body.customer-account-edit
.form-edit-account
.borabella-b2b-account-security
input[type="password"] {
    background: #fff !important;
    background-color: #fff !important;
    color: inherit !important;
    -webkit-text-fill-color: currentColor !important;
    border-color: #d7dce1 !important;
    cursor: text !important;
    opacity: 1 !important;
}

/* Conta B2B - disabled suave + checkbox marcado */

body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-hard-readonly-field
input.input-text[readonly],
body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-hard-readonly-field
input.borabella-b2b-hard-readonly,
body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-readonly-field
input.input-text[readonly],
body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-hard-readonly-field
select:disabled,
body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-readonly-field
select:disabled {
    background: #eef1f4 !important;
    background-color: #eef1f4 !important;
    color: #475467 !important;
    -webkit-text-fill-color: #475467 !important;
    border-color: #d5dae1 !important;
    box-shadow: none !important;
    opacity: 1 !important;
}

body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-disabled-control,
body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-online-link-row {
    background: #eef1f4 !important;
    background-color: #eef1f4 !important;
    border-color: #d5dae1 !important;
    box-shadow: none !important;
}

body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-online-link-row
> input.input-text[readonly] {
    background: #eef1f4 !important;
    background-color: #eef1f4 !important;
    color: #475467 !important;
    -webkit-text-fill-color: #475467 !important;
}

body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-online-link-no {
    background: #e6eaee !important;
    color: #475467 !important;
    border-left-color: #d5dae1 !important;
}

/* Checkbox custom para preservar o check mesmo disabled */
body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-online-link-no
input[type="checkbox"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    min-height: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 2px solid #98a2b3 !important;
    border-radius: 2px !important;
    background: #fff !important;
    opacity: 1 !important;
    display: inline-grid !important;
    place-content: center !important;
    box-shadow: none !important;
}

body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-online-link-no
input[type="checkbox"]:checked {
    border-color: #667085 !important;
    background: #667085 !important;
}

body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-online-link-no
input[type="checkbox"]:checked::after {
    content: "✓" !important;
    display: block !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    transform: translateY(-1px) !important;
}

body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-online-link-no
input[type="checkbox"]:disabled {
    opacity: 1 !important;
}

body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-hard-readonly-field
> .label,
body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-readonly-field
> .label {
    color: #566273 !important;
}

/* Conta B2B - checkbox online_link markup fix */

body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-online-link-no {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .45rem !important;
    background: #e6eaee !important;
    color: #475467 !important;
    border-left-color: #d5dae1 !important;
}

body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-online-link-no
input[type="checkbox"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    display: inline-grid !important;
    place-content: center !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    min-height: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 2px solid #98a2b3 !important;
    border-radius: 3px !important;
    background: #f8fafc !important;
    opacity: 1 !important;
    box-shadow: none !important;
    cursor: not-allowed !important;
}

body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-online-link-no
input[type="checkbox"]:checked {
    background: #667085 !important;
    border-color: #667085 !important;
}

body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-online-link-no
input[type="checkbox"]:checked::after {
    content: "" !important;
    display: block !important;
    width: 8px !important;
    height: 4px !important;
    border-left: 2px solid #fff !important;
    border-bottom: 2px solid #fff !important;
    transform: rotate(-45deg) translateY(-1px) !important;
}

body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-online-link-no
input[type="checkbox"]::before {
    content: none !important;
}

body.customer-account-edit
.form-edit-account
.borabella-b2b-registration
.borabella-b2b-online-link-no
span {
    display: inline-block !important;
}

/* Alinha o respiro do título "Crie sua conta" ao título da tela de login */
body.customer-account-create .page-title-wrapper {
    max-width: 64rem;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 1.5rem;
}
body.customer-account-create .page-title-wrapper .page-title,
body.customer-account-create h1.page-title { margin-bottom: 0 !important; }
body.customer-account-create .form-create-account.borabella-b2b-single-form-ready { margin-top: 0 !important; }

/* Cadastro - espaçamento real do título igual ao login */

/*
 * Em alguns layouts Hyvä o H1 não fica dentro de .page-title-wrapper.
 * Por isso o espaçamento precisa existir nos dois cenários.
 */
body.customer-account-create .page-title-wrapper {
    width: 100% !important;
    margin-top: 1.25rem !important;
    margin-bottom: 1.5rem !important;
    padding: 0 !important;
}

body.customer-account-create .page-title-wrapper .page-title {
    margin: 0 !important;
    padding: 0 !important;
}

/* Caso o H1 seja renderizado diretamente no main */
body.customer-account-create main#maincontent > h1.page-title,
body.customer-account-create .page-main > h1.page-title,
body.customer-account-create h1.page-title:not(.page-title-wrapper .page-title) {
    display: block !important;
    width: 100% !important;
    margin-top: 1.25rem !important;
    margin-bottom: 1.5rem !important;
    padding: 0 !important;
}

/* O card nunca sobe para encostar no título */
body.customer-account-create h1.page-title + .form-create-account,
body.customer-account-create .page-title-wrapper + .form-create-account,
body.customer-account-create .page-title-wrapper + * .form-create-account {
    margin-top: 0 !important;
}

/* Mantém o formulário alinhado com o título */
body.customer-account-create .form-create-account.borabella-b2b-single-form-ready {
    margin-top: 0 !important;
}

/* Endereços B2B são somente leitura no frontend. */
.borabella-b2b-address-action-locked {
    display: none !important;
}

body.customer-address-index a[href*="/customer/address/new"],
body.customer-address-index a[href*="/customer/address/edit"],
body.customer-address-index a[href*="/customer/address/delete"],
body.customer-address-index .block-addresses-list .action.edit,
body.customer-address-index .block-addresses-list .action.delete,
body.checkout-index-index .action-show-popup,
body.checkout-index-index .action-edit-address,
body.checkout-index-index [data-action="show-address-form"],
body.checkout-index-index [data-action="new-address"],
body.checkout-index-index [data-action="edit-address"],
body.checkout-index-index [data-role="new-address"],
body.checkout-index-index [data-role="edit-address"] {
    display: none !important;
}

/* B2B - ocultar catálogo de endereços na conta */

/* Navegação lateral */
body.customer-account-index
.account-nav a[href*="/customer/address"],
body.customer-account-index
.sidebar a[href*="/customer/address"],
body.customer-account-edit
.account-nav a[href*="/customer/address"],
body.customer-account-edit
.sidebar a[href*="/customer/address"] {
    display: none !important;
}

/* Dashboard: catálogo, gerenciar e cards de endereço */
body.customer-account-index
.block-dashboard-addresses,
body.customer-account-index
.block-addresses-default,
body.customer-account-index
.block-addresses-list,
body.customer-account-index
.box-address-billing,
body.customer-account-index
.box-address-shipping,
body.customer-account-index
a[href*="/customer/address/index"],
body.customer-account-index
a[href*="/customer/address/edit"],
body.customer-account-index
a[href*="/customer/address/new"] {
    display: none !important;
}

/* Alguns layouts Hyvä usam wrappers genéricos */
body.customer-account-index
[data-block-name*="address"],
body.customer-account-index
[data-container*="address"],
body.customer-account-index
.customer-addresses,
body.customer-account-index
.account-addresses {
    display: none !important;
}

/* B2B - remover Catálogo de Endereços também dos menus do header/dropdown.
 * Regra global intencional: nenhuma chamada frontend para customer/address
 * deve ficar visível, pois os endereços B2B são gerenciados pelo admin. */
a[href*="/customer/address"],
a[href*="customer/address"] {
    display: none !important;
}


/* Catálogo B2B - ocultar avaliações quando preço estiver bloqueado */
/* Durante a consulta de elegibilidade, evita flash das estrelas nas listagens. */
html.borabella-b2b-status-loading .product-item .product-reviews-summary,
html.borabella-b2b-status-loading .product-item .rating-summary,
html.borabella-b2b-status-loading .product-item .rating-result,
html.borabella-b2b-status-loading .product-item .reviews-actions {
    visibility: hidden !important;
}

/* Cliente sem permissão de compra/preço: avaliação também não aparece no catálogo. */
html.borabella-b2b-restricted .product-item .product-reviews-summary,
html.borabella-b2b-restricted .product-item .rating-summary,
html.borabella-b2b-restricted .product-item .rating-result,
html.borabella-b2b-restricted .product-item .reviews-actions {
    display: none !important;
}

/* B2B - ocultar avaliações na PDP quando preço estiver bloqueado */

/*
 * Enquanto a elegibilidade ainda não foi resolvida, evita flash das estrelas
 * para usuários que posteriormente terão preço bloqueado.
 */
html.borabella-b2b-restricted
body.catalog-product-view
.product-info-main
.product-reviews-summary,
html.borabella-b2b-restricted
body.catalog-product-view
.product-info-main
.rating-summary,
html.borabella-b2b-restricted
body.catalog-product-view
.product-info-main
.reviews-actions,
html.borabella-b2b-restricted
body.catalog-product-view
.product-info-main
.review-control-vote {
    display: none !important;
}

/*
 * Estado explícito de usuário sem permissão de compra/preço.
 * As classes abaixo são mantidas pelo restriction.js.
 */
html.borabella-b2b-price-hidden
body.catalog-product-view
.product-info-main
.product-reviews-summary,
html.borabella-b2b-price-hidden
body.catalog-product-view
.product-info-main
.rating-summary,
html.borabella-b2b-price-hidden
body.catalog-product-view
.product-info-main
.reviews-actions,
html.borabella-b2b-price-hidden
body.catalog-product-view
.product-info-main
.review-control-vote,
body.catalog-product-view.borabella-b2b-price-hidden
.product-info-main
.product-reviews-summary,
body.catalog-product-view.borabella-b2b-price-hidden
.product-info-main
.rating-summary,
body.catalog-product-view.borabella-b2b-price-hidden
.product-info-main
.reviews-actions,
body.catalog-product-view.borabella-b2b-price-hidden
.product-info-main
.review-control-vote {
    display: none !important;
}



/* B2B - PDP reviews direct fix */

.borabella-b2b-hidden-review {
    display: none !important;
}

/*
 * Hyvä pode renderizar a avaliação da PDP sem .product-reviews-summary.
 * Estes seletores cobrem os wrappers usados para estrelas/ratings logo
 * abaixo do nome do produto.
 */
html.borabella-b2b-restricted body.catalog-product-view .product-info-main .product-reviews-summary,
html.borabella-b2b-restricted body.catalog-product-view .product-info-main .rating-summary,
html.borabella-b2b-restricted body.catalog-product-view .product-info-main .rating-result,
html.borabella-b2b-restricted body.catalog-product-view .product-info-main .reviews-actions,
html.borabella-b2b-restricted body.catalog-product-view .product-info-main .review-control-vote,
html.borabella-b2b-restricted body.catalog-product-view .product-info-main [class*="rating-"],
html.borabella-b2b-restricted body.catalog-product-view .product-info-main [class~="rating"],
html.borabella-b2b-restricted body.catalog-product-view .product-info-main [aria-label*="rating" i],
html.borabella-b2b-restricted body.catalog-product-view .product-info-main [aria-label*="star" i],
html.borabella-b2b-restricted body.catalog-product-view .product-info-main [title*="rating" i],
html.borabella-b2b-restricted body.catalog-product-view .product-info-main a[href*="#reviews"],
html.borabella-b2b-price-hidden body.catalog-product-view .product-info-main .product-reviews-summary,
html.borabella-b2b-price-hidden body.catalog-product-view .product-info-main .rating-summary,
html.borabella-b2b-price-hidden body.catalog-product-view .product-info-main .rating-result,
html.borabella-b2b-price-hidden body.catalog-product-view .product-info-main .reviews-actions,
html.borabella-b2b-price-hidden body.catalog-product-view .product-info-main [class*="rating-"],
html.borabella-b2b-price-hidden body.catalog-product-view .product-info-main [class~="rating"] {
    display: none !important;
}

/* B2B - PDP rating: ocultar sem alterar layout quando liberado */

/*
 * IMPORTANTE:
 * Não definimos display no estado elegível.
 * O Hyvä mantém integralmente seu próprio layout das estrelas.
 */
html.borabella-b2b-restricted body.catalog-product-view .product-info-main .product-reviews-summary,
html.borabella-b2b-restricted body.catalog-product-view .product-info-main .rating-summary,
html.borabella-b2b-restricted body.catalog-product-view .product-info-main .rating-result,
html.borabella-b2b-restricted body.catalog-product-view .product-info-main .reviews-actions,
html.borabella-b2b-restricted body.catalog-product-view .product-info-main .review-control-vote,
html.borabella-b2b-restricted body.catalog-product-view .product-info-main [data-role="rating-summary"],
html.borabella-b2b-price-hidden body.catalog-product-view .product-info-main .product-reviews-summary,
html.borabella-b2b-price-hidden body.catalog-product-view .product-info-main .rating-summary,
html.borabella-b2b-price-hidden body.catalog-product-view .product-info-main .rating-result,
html.borabella-b2b-price-hidden body.catalog-product-view .product-info-main .reviews-actions,
html.borabella-b2b-price-hidden body.catalog-product-view .product-info-main .review-control-vote,
html.borabella-b2b-price-hidden body.catalog-product-view .product-info-main [data-role="rating-summary"],
body.catalog-product-view .borabella-b2b-hidden-review {
    display: none !important;
}
