/* ===========================================
   AWA MOTOS - CONSISTENCY UI LAYER
   Tema: AYO/Rokanthemes (Home5)

   Extraído de awa-consistency.css para reduzir nloc
   e separar regras transversais de UI/contraste.
=========================================== */

/* ===========================================
   VARREDURA FINAL DE CONTRASTE (HOME/CAT/PDP/CART)
=========================================== */
body.cms-index-index .page-wrapper .block_notification,
body.cms-index-index .page-wrapper .block_notification a,
body.cms-index-index .page-wrapper .block_notification strong,
body.cms-home .page-wrapper .block_notification,
body.cms-home .page-wrapper .block_notification a,
body.cms-home .page-wrapper .block_notification strong,
body.cms-homepage_ayo_home5 .page-wrapper .block_notification,
body.cms-homepage_ayo_home5 .page-wrapper .block_notification a,
body.cms-homepage_ayo_home5 .page-wrapper .block_notification strong {
    color: var(--awa-text-on-dark);
}

body.catalog-category-view .page-wrapper .toolbar .modes-mode.active,
body.catalog-category-view .page-wrapper .toolbar .modes-mode.active span,
body.catalog-category-view .page-wrapper .grid-mode-show-type-products a.actived {
    background: var(--awa-red);
    border-color: var(--awa-red);
    color: var(--awa-text-on-primary);
}

body.catalog-category-view .page-wrapper .toolbar .modes-mode.active *,
body.catalog-category-view .page-wrapper .grid-mode-show-type-products a.actived * {
    color: var(--awa-text-on-primary);
}

body.catalog-category-view .page-wrapper .grid-mode-show-type-products a.actived i,
body.catalog-category-view .page-wrapper .grid-mode-show-type-products a.actived::before {
    color: var(--awa-text-on-primary);
}

body.catalog-product-view .page-wrapper .product.info.detailed .data.item.title.active > a,
body.catalog-product-view .page-wrapper .product.info.detailed .item.title.active > a {
    background: var(--awa-red);
    border-color: var(--awa-red);
    color: var(--awa-text-on-primary);
}

body.catalog-product-view .page-wrapper .product.info.detailed .data.item.title.active > a:hover,
body.catalog-product-view .page-wrapper .product.info.detailed .item.title.active > a:hover {
    color: var(--awa-text-on-primary);
}

body.catalog-product-view .page-wrapper .product.info.detailed .data.item.title.active > a *,
body.catalog-product-view .page-wrapper .product.info.detailed .item.title.active > a * {
    color: var(--awa-text-on-primary);
}

body.catalog-product-view .page-wrapper .product-info-main .box-tocart .action.tocart,
body.catalog-product-view .page-wrapper .product-info-main .box-tocart .action.primary {
    color: var(--awa-text-on-primary);
}

body.checkout-cart-index .page-wrapper .cart-summary .checkout-methods-items .action.primary,
body.checkout-cart-index .page-wrapper .cart-summary .checkout-methods-items .action.checkout,
body.checkout-cart-index .page-wrapper .cart-summary .action.primary.checkout {
    color: var(--awa-text-on-primary);
}

body.checkout-cart-index .page-wrapper .cart-summary .checkout-methods-items .action.primary i,
body.checkout-cart-index .page-wrapper .cart-summary .checkout-methods-items .action.checkout i,
body.checkout-cart-index .page-wrapper .cart-summary .action.primary.checkout i {
    color: var(--awa-text-on-primary);
}

body.checkout-cart-index .page-wrapper .cart-summary .checkout-methods-items .action.primary:hover,
body.checkout-cart-index .page-wrapper .cart-summary .checkout-methods-items .action.checkout:hover,
body.checkout-cart-index .page-wrapper .cart-summary .action.primary.checkout:hover,
body.checkout-cart-index .page-wrapper .cart-summary .checkout-methods-items .action.primary:focus-visible,
body.checkout-cart-index .page-wrapper .cart-summary .checkout-methods-items .action.checkout:focus-visible,
body.checkout-cart-index .page-wrapper .cart-summary .action.primary.checkout:focus-visible {
    color: var(--awa-text-on-primary);
}

/* ===========================================
   PDP (quando publico)
=========================================== */
body.catalog-product-view .page-wrapper .product-info-main,
body.catalog-product-view .page-wrapper .product.media {
    border-radius: var(--awa-control-radius);
}

body.catalog-product-view .page-wrapper .product-info-main .box-tocart {
    margin-top: var(--awa-space-4);
    padding-top: var(--awa-space-4);
    border-top: 1px solid var(--awa-gray-200);
}

body.catalog-product-view .page-wrapper .product.info.detailed {
    margin-top: var(--awa-space-7);
}

body.catalog-product-view .page-wrapper .product.info.detailed .item.title > a {
    border-radius: var(--awa-control-radius) var(--awa-control-radius) 0 0;
}

/* ===========================================
   CONSISTENCIA - FOOTER / HEADER / LISTVIEW
=========================================== */
body .page-wrapper .action.primary,
body .page-wrapper .action.secondary,
body .page-wrapper .action.tocart,
body .page-wrapper button.action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--awa-space-2);
    font-weight: var(--awa-weight-semibold);
}

body .page-wrapper .fixed-right {
    right: 10px;
    border-radius: var(--awa-control-radius);
    box-shadow: var(--awa-shadow-sm);
    overflow: hidden;
    z-index: var(--awa-z-sidebar); /* BP-16: era 9997 */
}

body .page-wrapper .fixed-right .fixed-right-ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

body .page-wrapper .fixed-right .fixed-right-ul li {
    margin: 0;
    padding: 0;
    display: block;
}

body .page-wrapper .fixed-right .fixed-right-ul li > a,
body .page-wrapper .fixed-right .fixed-right-ul li.scroll-top {
    width: 42px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-bottom: 1px solid var(--awa-gray-200);
    color: var(--awa-gray-700);
    text-decoration: none;
    cursor: pointer;
    transition: background var(--awa-transition-fast), color var(--awa-transition-fast);
}

body .page-wrapper .fixed-right .fixed-right-ul li:last-child > a,
body .page-wrapper .fixed-right .fixed-right-ul li:last-child.scroll-top {
    border-bottom: 0;
}

body .page-wrapper .fixed-right .fixed-right-ul li > a:hover,
body .page-wrapper .fixed-right .fixed-right-ul li.scroll-top:hover {
    background: var(--awa-red-dark);
    color: var(--awa-text-on-primary);
}

body .page-wrapper .fixed-right .fixed-right-ul li > a:focus-visible,
body .page-wrapper .fixed-right .fixed-right-ul li.scroll-top:focus-visible {
    outline: 2px solid var(--awa-red);
    outline-offset: -2px;
}

body .page-wrapper .fixed-right .fixed-right-ul li em,
body .page-wrapper .fixed-right .fixed-right-ul li i {
    font-size: var(--awa-text-base-plus); /* BP-39: era 15px */
    line-height: var(--awa-leading-none);
}

@media (width <= 991px) {
    body .page-wrapper .fixed-right {
        display: none;
    }
}

body .page-wrapper #back-top.awa-backtotop-legacy {
    width: 45px;
    height: 45px;
    right: 25px;
    bottom: 95px;
    border: 1px solid rgb(255 255 255 / 20%);
    background: var(--awa-dark);
    color: var(--awa-text-on-dark);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity var(--awa-transition-fast), visibility var(--awa-transition-fast), background var(--awa-transition-fast);
    z-index: var(--awa-z-fixed); /* BP-16: era 9998 */
}

body .page-wrapper #back-top.awa-backtotop-legacy i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    background: transparent;
    line-height: var(--awa-leading-none);
    font-size: 0;
}

body .page-wrapper #back-top.awa-backtotop-legacy i::before {
    content: "\2191";
    font-family: inherit;
    font-size: var(--awa-text-xl);
}

body .page-wrapper #back-top.awa-backtotop-legacy.visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

body .page-wrapper #back-top.awa-backtotop-legacy:focus-visible {
    outline: 2px solid var(--awa-red);
    outline-offset: 2px;
}

body .page-wrapper #maincontent .page-title-wrapper {
    margin: 0 0 var(--awa-space-5);
    padding: 0 0 var(--awa-space-3);
    border-bottom: 1px solid var(--awa-gray-200);
}

body .page-wrapper .top-account .link.wishlist > a,
body .page-wrapper li.link.wishlist > a {
    display: inline-flex;
    align-items: center;
    gap: var(--awa-space-2);
    min-height: 36px;
    padding: 0 var(--awa-space-3);
    border-radius: var(--awa-control-radius);
    border: 1px solid transparent;
    font-size: var(--awa-text-sm);
    line-height: var(--awa-leading-compact);
    white-space: nowrap;
    transition: color var(--awa-transition-fast), border-color var(--awa-transition-fast), background var(--awa-transition-fast);
}

body .page-wrapper .top-account .link.wishlist > a:hover,
body .page-wrapper li.link.wishlist > a:hover {
    border-color: var(--awa-red-dark);
    background: var(--awa-red-extra-light);
    color: var(--awa-red-dark);
}

body .page-wrapper .top-account .link.wishlist > a:focus-visible,
body .page-wrapper li.link.wishlist > a:focus-visible {
    outline: 2px solid var(--awa-red);
    outline-offset: 2px;
}

body .page-wrapper .link.wishlist .counter.qty {
    min-width: 20px;
    height: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 var(--awa-space-1);
    border-radius: var(--awa-radius-full); /* BP-03: era 999px hardcoded */
    font-size: var(--awa-text-2xs); /* BP-30: era 11px */
    line-height: var(--awa-leading-none);
}

/* Busca direta (sem filtro de categoria) — refinamento visual */
body .page-wrapper .block-search form.search-content {
    align-items: stretch;
}

body .page-wrapper .block-search .search-content .field.search {
    margin: 0;
}

body .page-wrapper .block-search .search-content .field.search .control {
    gap: 0;
    align-items: stretch;
}

body .page-wrapper .block-search .search-content .field.search input#search {
    min-height: 48px;
    padding-left: var(--awa-space-4);
    padding-right: var(--awa-space-4);
    letter-spacing: 0.1px;
}

body .page-wrapper .block-search .search-content .actions .action.search,
body .page-wrapper .block-search .search-content .actions button[type="submit"] {
    min-height: 48px;
    min-width: 52px;
}

body .page-wrapper .block-search .search-content .search-autocomplete,
body .page-wrapper .block-search .search-content .searchsuite-autocomplete {
    border-radius: 0 0 var(--awa-control-radius) var(--awa-control-radius);
    box-shadow: var(--awa-shadow-sm);
    border: 1px solid var(--awa-gray-200);
    border-top: 0;
}

@media (width <= 991px) {
    body .page-wrapper .block-search .search-content .field.search input#search {
        min-height: 44px;
        padding-left: var(--awa-space-3);
        padding-right: var(--awa-space-3);
    }

    body .page-wrapper .block-search .search-content .actions .action.search,
    body .page-wrapper .block-search .search-content .actions button[type="submit"] {
        min-height: 44px;
        min-width: 44px;
    }
}

body.catalog-category-view .page-wrapper .toolbar.toolbar-products .field.limiter {
    margin: 0;
    display: inline-flex;
    align-items: center;
}

body.catalog-category-view .page-wrapper .toolbar.toolbar-products .field.limiter .control {
    margin-top: 0;
}

body.catalog-category-view .page-wrapper .toolbar.toolbar-products .field.limiter .label {
    margin-right: var(--awa-space-2);
}

body.catalog-category-view .page-wrapper .toolbar.toolbar-products .field.limiter .limiter-options {
    min-height: 36px;
}

body.catalog-category-view .page-wrapper ul.product-list > .item-product,
body.catalog-category-view .page-wrapper .products-list .item-product {
    padding-top: var(--awa-space-2);
}

body.catalog-category-view .page-wrapper ul.product-list > .item-product .product-info,
body.catalog-category-view .page-wrapper .products-list .item-product .product-info {
    margin-top: 0;
    padding-top: var(--awa-space-2);
}

body.catalog-category-view .page-wrapper .item-product.listview .product-info {
    margin-top: 0;
}

/* ===========================================
   RFF-01 — GRID / CONTAINER (safe)
   Ajuste fino de gutters e largura útil sem alterar estrutura.
=========================================== */
body .page-wrapper .page-main > .columns,
body .page-wrapper .page-main .container {
    width: 100%;
    max-width: min(100%, var(--awa-container));
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}

body .page-wrapper .page-main > .columns {
    padding-left: clamp(12px, 1.4vw, 20px);
    padding-right: clamp(12px, 1.4vw, 20px);
}

body .page-wrapper .products-grid .product-items:not(.owl-carousel),
body .page-wrapper .widget-product-grid .product-items:not(.owl-carousel),
body .page-wrapper .block-products-list .product-items:not(.owl-carousel) {
    gap: clamp(12px, 1.4vw, 20px);
}

@media (width <= 768px) {
    body .page-wrapper .page-main > .columns {
        padding-left: var(--awa-space-3); /* BP-20: era 12px */
        padding-right: var(--awa-space-3); /* BP-20: era 12px */
    }

    body .page-wrapper .page-title-wrapper .page-title {
        font-size: clamp(1.45rem, 4.8vw, 1.8rem);
    }

    body.catalog-category-view .page-wrapper .toolbar.toolbar-products {
        gap: var(--awa-space-2);
    }

    body.catalog-category-view .page-wrapper .products-grid .product-item .product-item-details,
    body.catalog-category-view .page-wrapper .products-list .product-item .product-item-details {
        padding-top: var(--awa-space-2);
    }

    body .page-wrapper .breadcrumbs {
        padding: var(--awa-space-2) var(--awa-space-3);
    }

    body .page-wrapper .breadcrumbs .items .item {
        font-size: var(--awa-text-xs);
        max-width: 140px;
    }

    body .page-wrapper .table-wrapper {
        border: 1px solid var(--awa-gray-200);
        border-radius: var(--awa-radius-sm);
    }

    body .page-wrapper table thead th,
    body .page-wrapper table tbody td {
        padding: var(--awa-space-2) var(--awa-space-3);
        font-size: var(--awa-text-xs);
    }

    body .page-wrapper .table-comparison {
        display: block;
        overflow-x: auto;
        scrollbar-width: thin;
        scrollbar-color: var(--awa-gray-300) transparent;
    }
}

/* ===========================================
   RFF-02 — CARDS (safe)
   Uniformiza elevação/contorno e melhora leitura no hover.
=========================================== */
body .page-wrapper :is(.item-product, .product-item, .blog-post-item, .the_blog .post-item, .testimonials-home .item) {
    border: 1px solid var(--awa-gray-200);
    border-radius: var(--awa-control-radius);
    background: var(--awa-bg-surface); /* BP-12 */
    box-shadow: var(--awa-shadow-sm);
    transition: box-shadow var(--awa-transition-fast), transform var(--awa-transition-fast), border-color var(--awa-transition-fast);
    contain: layout style paint; /* BP-37: reduce reflows on repeated cards */
}

@media (hover: hover) and (pointer: fine) {
    body .page-wrapper :is(.item-product, .product-item, .blog-post-item, .the_blog .post-item, .testimonials-home .item):hover {
        transform: translateY(-2px);
        border-color: var(--awa-gray-300);
        box-shadow: var(--awa-shadow);
    }

    body .page-wrapper :is(.action.primary, .action.secondary, .action.tocart, button.action):hover {
        transform: translateY(-1px);
        box-shadow: var(--awa-shadow-sm);
    }

    body .page-wrapper .account .table-wrapper .data.table tbody tr:hover {
        background: var(--awa-gray-50);
    }

    body .page-wrapper table tbody tr:hover {
        background: rgb(183 51 55 / 4%);
    }
}

body .page-wrapper :is(.item-product, .product-item, .blog-post-item, .the_blog .post-item, .testimonials-home .item):focus-within {
    border-color: var(--awa-red);
    box-shadow: 0 0 0 2px rgb(183 51 55 / 12%);
}

/* ===========================================
   RFF-03 — BUTTONS (safe)
   Melhora microinteração e estados inativos.
=========================================== */
body .page-wrapper :is(.action.primary, .action.secondary, .action.tocart, button.action) {
    min-height: 44px;
    font-weight: var(--awa-weight-bold);
    transition: transform var(--awa-transition-fast), box-shadow var(--awa-transition-fast), background-color var(--awa-transition-fast), color var(--awa-transition-fast), border-color var(--awa-transition-fast);
}

body .page-wrapper :is(.action.primary, .action.secondary, .action.tocart, button.action):focus-visible {
    outline: 2px solid var(--awa-red);
    outline-offset: 2px;
}

body .page-wrapper :is(.action.primary, .action.secondary, .action.tocart, button.action)[disabled],
body .page-wrapper :is(.action.primary, .action.secondary, .action.tocart, button.action).disabled {
    opacity: 0.55;
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
}

/* ===========================================
   RFF-04 — FORMS / TEXTO (safe)
   Aumenta legibilidade e consistência de inputs.
=========================================== */
body .page-wrapper :is(input[type="text"], input[type="email"], input[type="password"], input[type="tel"], input[type="number"], input[type="search"], select, textarea) {
    min-height: 42px;
    line-height: var(--awa-leading-cozy);
    color: var(--awa-dark);
    border-color: var(--awa-gray-300);
}

body .page-wrapper textarea {
    min-height: 120px;
    max-height: 400px;
    resize: vertical;
    field-sizing: content; /* F4-02: textarea auto-grow (Chrome 123+) */
}

body .page-wrapper :is(input[type="text"], input[type="email"], input[type="password"], input[type="tel"], input[type="number"], input[type="search"], textarea)::placeholder {
    color: var(--awa-gray-500);
    opacity: 0.95;
}

body .page-wrapper .field .label,
body .page-wrapper .fieldset > .legend {
    letter-spacing: var(--awa-tracking-tight);
    font-weight: var(--awa-weight-semibold);
}

body .page-wrapper .field .note,
body .page-wrapper .field .control .note,
body .page-wrapper .field-error,
body .page-wrapper .mage-error {
    font-size: var(--awa-text-xs);
    line-height: var(--awa-leading-comfortable);
}

/* ===========================================
   RFF-05 — LINKS / ÍCONES / BORDAS (safe)
   Melhora escaneabilidade sem mexer em estrutura.
=========================================== */
body .page-wrapper a {
    text-underline-offset: 2px;
    text-decoration-thickness: 0.08em;
    transition: color var(--awa-transition-fast), text-decoration-color var(--awa-transition-fast);
}

body .page-wrapper a:hover {
    text-decoration-color: currentcolor;
}

body .page-wrapper a:focus-visible {
    outline: 2px solid var(--awa-red);
    outline-offset: 2px;
}

body .page-wrapper :is(i, em, svg) {
    vertical-align: middle;
}

body .page-wrapper :is(.block, .cart-summary, .opc-block-summary, .table-wrapper table) {
    border-color: var(--awa-gray-200);
}

body .page-wrapper hr,
body .page-wrapper .divider,
body .page-wrapper .block-title {
    border-color: var(--awa-gray-200);
}

/* ===========================================
   RFF-06 — TITULOS / TOOLBAR / LEITURA (safe)
   Refino de hierarquia visual e escaneabilidade.
=========================================== */
body .page-wrapper :is(h1, .page-title, .product.name a, .product-item-name a) {
    line-height: var(--awa-leading-snug);
    letter-spacing: var(--awa-tracking-tight);
}

body .page-wrapper :is(h2, h3, .block-title strong, .widget-title) {
    line-height: var(--awa-leading-base);
    letter-spacing: 0.008em;
}

body .page-wrapper :is(.product-item-details .price-box, .product-info-price .price-box, .old-price, .special-price, .normal-price) {
    line-height: var(--awa-leading-snug);
}

body.catalog-category-view .page-wrapper .toolbar.toolbar-products {
    padding-top: var(--awa-space-2);
    padding-bottom: var(--awa-space-2);
    border-bottom: 1px solid var(--awa-gray-200);
}

body.catalog-category-view .page-wrapper .toolbar.toolbar-products .sorter,
body.catalog-category-view .page-wrapper .toolbar.toolbar-products .modes,
body.catalog-category-view .page-wrapper .toolbar.toolbar-products .pager {
    margin-top: 0;
    margin-bottom: 0;
}

body.catalog-category-view .page-wrapper .products-grid .product-item .product-item-details,
body.catalog-category-view .page-wrapper .products-list .product-item .product-item-details {
    padding-top: var(--awa-space-3);
    padding-bottom: var(--awa-space-2);
}

body.catalog-category-view .page-wrapper .products-grid .product-item .product-item-name,
body.catalog-category-view .page-wrapper .products-list .product-item .product-item-name {
    margin-bottom: var(--awa-space-2);
}

body.catalog-category-view .page-wrapper .products-grid .product-item .price-box,
body.catalog-category-view .page-wrapper .products-list .product-item .price-box {
    margin-bottom: var(--awa-space-2);
}

body .page-wrapper .field.required > .label::after,
body .page-wrapper .field._required > .label::after {
    margin-left: 2px;
    color: var(--awa-red-dark);
}

body .page-wrapper :is(.message.notice, .message.warning, .message.success, .message.error) {
    border-radius: var(--awa-control-radius);
}

/* ===========================================
   RFF-07 — BADGES MICRO-POLISH (safe)
   Melhora legibilidade e destaque dos badges sobre imagem.
=========================================== */
body .page-wrapper :is(.item-product, .product-item) :is(.product-label, .sticker, .hot-onsale) {
    line-height: var(--awa-leading-base);
    min-height: 22px;
    display: inline-flex;
    align-items: center;
    box-shadow: var(--awa-shadow-badge); /* BP-35: era 0 1px 4px rgb(0 0 0 / 12%) */
}

/* Badges empilhados: segundo badge posicionado abaixo do primeiro */
body .page-wrapper :is(.item-product, .product-item) :is(.product-label, .sticker, .hot-onsale) + :is(.product-label, .sticker, .hot-onsale) {
    margin-top: var(--awa-space-1);
}

/* Desconto percentual: peso visual maior */
body .page-wrapper :is(.item-product, .product-item) :is(.product-label.discount, .sticker.discount) {
    font-variant-numeric: tabular-nums;
}

/* PDP badges — mesmo tratamento */
body.catalog-product-view .page-wrapper .product.media :is(.product-label, .sticker) {
    line-height: var(--awa-leading-base);
    min-height: 26px;
    display: inline-flex;
    align-items: center;
    box-shadow: var(--awa-shadow-badge); /* BP-35: era 0 1px 4px rgb(0 0 0 / 12%) */
}

/* ===========================================
   RFF-08 — SWATCHES & AVALIAÇÕES (safe)
   Melhora foco acessível e alinhamento visual.
=========================================== */
body .page-wrapper .swatch-option:focus-visible {
    outline: 2px solid var(--awa-red);
    outline-offset: 2px;
}

body .page-wrapper .swatch-option.text {
    font-size: var(--awa-text-xs);
    font-weight: var(--awa-weight-semibold);
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* Estrelas de avaliação — alinhamento com preço */
body .page-wrapper :is(.item-product, .product-item) .rating-summary {
    display: flex;
    align-items: center;
    gap: var(--awa-space-2);
    margin-bottom: var(--awa-space-2);
}

body .page-wrapper :is(.item-product, .product-item) .rating-summary .rating-result {
    line-height: var(--awa-leading-none);
}

/* Review count link — discreto */
body .page-wrapper :is(.item-product, .product-item) .reviews-actions {
    font-size: var(--awa-text-xs);
    line-height: var(--awa-leading-none);
}

/* PDP rating — um pouco maior para hierarquia visual */
body.catalog-product-view .page-wrapper .product-info-main .product-reviews-summary {
    display: flex;
    align-items: center;
    gap: var(--awa-space-3);
    margin-bottom: var(--awa-space-4);
}

/* ===========================================
   RFF-09 — CARRINHO & CHECKOUT MICRO-POLISH (safe)
   Refino visual da tabela de carrinho e resumo.
=========================================== */

/* Linhas do carrinho: separação mais suave */
body.checkout-cart-index .page-wrapper .cart.table-wrapper .cart.item {
    border-bottom: 1px solid var(--awa-gray-200);
}

body.checkout-cart-index .page-wrapper .cart.table-wrapper .cart.item:last-child {
    border-bottom: none;
}

/* Qty input no carrinho — alinhamento e tamanho */
body.checkout-cart-index .page-wrapper .cart.table-wrapper .input-text.qty {
    width: 52px;
    min-height: 38px;
    text-align: center;
    border: 1px solid var(--awa-gray-300);
    border-radius: var(--awa-radius-sm);
    font-size: var(--awa-text-base);
    font-weight: var(--awa-weight-semibold);
    appearance: textfield;
}

body.checkout-cart-index .page-wrapper .cart.table-wrapper .input-text.qty::-webkit-inner-spin-button,
body.checkout-cart-index .page-wrapper .cart.table-wrapper .input-text.qty::-webkit-outer-spin-button {
    appearance: none;
}

body.checkout-cart-index .page-wrapper .cart.table-wrapper .input-text.qty:focus-visible {
    outline: 2px solid var(--awa-red);
    outline-offset: 1px;
    border-color: var(--awa-red);
}

/* Update cart button — visibilidade */
body.checkout-cart-index .page-wrapper .cart.main.actions .action.update {
    font-weight: var(--awa-weight-semibold);
}

/* Cart summary — divisor entre totais */
body.checkout-cart-index .page-wrapper .cart-summary .totals {
    border-bottom: 1px solid var(--awa-gray-200);
    padding-bottom: var(--awa-space-2);
    margin-bottom: var(--awa-space-2);
}

body.checkout-cart-index .page-wrapper .cart-summary .totals:last-child {
    border-bottom: none;
    margin-bottom: 0;
}

/* Checkout steps — número do step mais claro */
body .page-wrapper .opc-progress-bar-item._active .opc-progress-bar-item-element {
    font-weight: var(--awa-weight-bold);
}

/* Checkout shipping/payment blocks */
body .page-wrapper .checkout-shipping-address,
body .page-wrapper .checkout-payment-method {
    margin-bottom: var(--awa-space-5);
}

/* ===========================================
   RFF-10 — ACCOUNT DASHBOARD POLISH (safe)
   Uniformiza blocos de informação no dashboard.
=========================================== */

/* Info boxes (address, orders, newsletter) */
body .page-wrapper .account .column.main .box {
    border: 1px solid var(--awa-gray-200);
    border-radius: var(--awa-control-radius);
    padding: var(--awa-space-4);
    margin-bottom: var(--awa-space-4);
    background: var(--awa-bg-surface); /* BP-12 */
}

body .page-wrapper .account .column.main .box-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: var(--awa-space-3);
}

body .page-wrapper .account .column.main .box-title > span {
    font-weight: var(--awa-weight-bold);
    font-size: var(--awa-text-base);
}

/* Edit/action links em cards de conta */
body .page-wrapper .account .column.main .box-actions a,
body .page-wrapper .account .column.main .action.edit,
body .page-wrapper .account .column.main .action.change-password {
    font-size: var(--awa-text-sm);
    font-weight: var(--awa-weight-semibold);
    color: var(--awa-red);
    text-decoration: none;
}

body .page-wrapper .account .column.main .box-actions a:hover,
body .page-wrapper .account .column.main .action.edit:hover,
body .page-wrapper .account .column.main .action.change-password:hover {
    color: var(--awa-red-dark);
    text-decoration: underline;
}

/* Tabelas da conta — hover de linha */

/* Login/Register — gap entre os blocos */
body .page-wrapper .login-container {
    gap: var(--awa-space-7);
}

/* ===========================================
   RFF-11 — MOBILE TOUCH TARGETS & DENSITY (safe)
   Garante min 44px para tap targets em touch.
=========================================== */
@media (hover: none) and (pointer: coarse) {
    /* Paginação — botões maiores */
    body .page-wrapper .pages .items.pages-items .item a,
    body .page-wrapper .pages .items.pages-items .item strong {
        min-width: 44px;
        min-height: 44px;
    }

    /* Navigation sidebar — links maiores */
    body .page-wrapper .account .sidebar-main .account-nav .item a {
        min-height: 44px;
        display: flex;
        align-items: center;
    }

    /* Filter options — tap targets */
    body .page-wrapper .sidebar-main .filter-options-content .item a {
        min-height: 44px;
        display: flex;
        align-items: center;
        padding-top: var(--awa-space-2);
        padding-bottom: var(--awa-space-2);
    }

    /* Cart actions — botões maiores */
    body.checkout-cart-index .page-wrapper .cart.table-wrapper .action.action-delete,
    body.checkout-cart-index .page-wrapper .cart.table-wrapper .action.action-edit {
        min-width: 44px;
        min-height: 44px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    /* Swatch options — tap friendly */
    body .page-wrapper .swatch-option {
        min-width: 40px;
        min-height: 40px;
    }

    /* Header links — tap area */
    body .page-wrapper .header.links a {
        min-height: 44px;
        display: inline-flex;
        align-items: center;
    }
}

/* ===========================================
   RFF-12 — PDP DETAIL POLISH (safe)
   Refina espaçamentos e micro-tipografia na
   página de produto (nome, tabs, atributos,
   qty input, wishlist/compare links).
=========================================== */

/* Nome do produto — espaçamento inferior */
body.catalog-product-view .page-wrapper .page-title-wrapper .page-title {
    margin-bottom: var(--awa-space-3);
    line-height: var(--awa-leading-snug);
    letter-spacing: var(--awa-tracking-tighter);
}

/* Tabs — conteúdo interno com padding consistente */
body.catalog-product-view .page-wrapper .product.data.items > .item.content {
    padding: var(--awa-space-5) var(--awa-space-4);
    line-height: var(--awa-leading-loose);
}

/* Tabela de atributos / informações adicionais — zebra */
body.catalog-product-view .page-wrapper .additional-attributes tbody tr:nth-child(even) {
    background: var(--awa-gray-50);
}

body.catalog-product-view .page-wrapper .additional-attributes th,
body.catalog-product-view .page-wrapper .additional-attributes td {
    padding: var(--awa-space-3) var(--awa-space-4);
    font-size: var(--awa-text-sm);
    vertical-align: top;
}

body.catalog-product-view .page-wrapper .additional-attributes th {
    color: var(--awa-gray-500);
    font-weight: var(--awa-weight-semibold);
    white-space: nowrap;
}

/* Wishlist / Compare — links consistentes */
body.catalog-product-view .page-wrapper .product-addto-links .action {
    font-size: var(--awa-text-sm);
    color: var(--awa-gray-500);
    transition: color var(--awa-transition-fast);
}

body.catalog-product-view .page-wrapper .product-addto-links .action:hover {
    color: var(--awa-red);
}

body.catalog-product-view .page-wrapper .product-addto-links .action:focus-visible {
    outline: 2px solid var(--awa-red);
    outline-offset: 2px;
    border-radius: var(--awa-radius-sm);
}

/* Qty input — foco e largura */
body.catalog-product-view .page-wrapper .field.qty .control input.qty {
    text-align: center;
    min-width: 52px;
    max-width: 72px;
    font-variant-numeric: tabular-nums;
}

body.catalog-product-view .page-wrapper .field.qty .control input.qty:focus {
    border-color: var(--awa-red);
    box-shadow: 0 0 0 2px var(--awa-red-extra-light);
}

/* SKU — mais discreto */
body.catalog-product-view .page-wrapper .product.attribute.sku .value {
    font-size: var(--awa-text-xs);
    color: var(--awa-gray-400);
    font-variant-numeric: tabular-nums;
}

/* ===========================================
   RFF-13 — BREADCRUMBS MICRO-POLISH (safe)
   Ajusta separador, hover, truncamento e
   responsividade dos breadcrumbs.
=========================================== */

/* Separador — alinhamento vertical */
body .page-wrapper .breadcrumbs .items .item:not(:last-child)::after {
    vertical-align: middle;
    color: var(--awa-gray-300);
}

/* Link hover — underline sutil */
body .page-wrapper .breadcrumbs .items .item a:hover {
    text-decoration: underline;
    text-underline-offset: 2px;
}

/* Último item (current) — mais discreto */
body .page-wrapper .breadcrumbs .items .item strong {
    color: var(--awa-gray-500);
    font-weight: var(--awa-weight-normal);
}

/* Truncamento do item longo */
body .page-wrapper .breadcrumbs .items .item {
    max-width: 220px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Mobile: padding e fonte menor */

/* ===========================================
   RFF-14 — SIDEBAR & FILTER POLISH (safe)
   Melhora filtros laterais: contagem, chip
   ativo, espaçamento, título e gap desktop.
=========================================== */

/* Count badge — cor mais suave */
body .page-wrapper .sidebar-main .filter-options-content .item .count {
    color: var(--awa-gray-400);
    font-size: var(--awa-text-xs);
    margin-left: var(--awa-space-1);
}

/* Filter option items — espaçamento entre */
body .page-wrapper .sidebar-main .filter-options-content .items .item {
    padding: var(--awa-space-1) 0;
}

/* Filter option links — hover */
body .page-wrapper .sidebar-main .filter-options-content .item a:hover {
    color: var(--awa-red);
}

/* Filter title — peso e tamanho */
body .page-wrapper .sidebar-main .filter-options-title {
    font-weight: var(--awa-weight-bold);
    font-size: var(--awa-text-sm);
    color: var(--awa-gray-800);
    letter-spacing: var(--awa-tracking-tight);
}

/* Active filter state — chip com remoção */
body .page-wrapper .sidebar-main .filter-current .item {
    display: flex;
    align-items: center;
    gap: var(--awa-space-2);
    padding: var(--awa-space-1) var(--awa-space-3);
    background: var(--awa-gray-100);
    border-radius: var(--awa-radius-full);
    font-size: var(--awa-text-xs);
    margin-bottom: var(--awa-space-2);
}

body .page-wrapper .sidebar-main .filter-current .action.remove {
    color: var(--awa-gray-400);
    font-size: 0.7rem;
    line-height: var(--awa-leading-none);
    transition: color var(--awa-transition-fast);
}

body .page-wrapper .sidebar-main .filter-current .action.remove:hover {
    color: var(--awa-red);
}

/* Desktop — gap entre sidebar e conteúdo */
@media (width >= 769px) {
    body .page-wrapper .columns {
        gap: var(--awa-space-7);
    }
}

/* ===========================================
   RFF-15 — MINICART MICRO-POLISH (safe)
   Remove borda do último item, alinha botões,
   melhora mensagem de carrinho vazio, e
   foco no botão de deletar.
=========================================== */

/* Último item — sem borda inferior */
body .page-wrapper .minicart-items .product-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0;
}

/* Delete action — focus-visible */
body .page-wrapper .minicart-items .action.delete:focus-visible {
    outline: 2px solid var(--awa-red);
    outline-offset: 2px;
    border-radius: var(--awa-radius-sm);
}

/* Botões de ação — alinhamento */
body .page-wrapper .minicart-wrapper .block-minicart .actions {
    display: flex;
    flex-direction: column;
    gap: var(--awa-space-2);
}

body .page-wrapper .minicart-wrapper .block-minicart .actions .secondary {
    text-align: center;
}

/* Subtotal — separação visual */
body .page-wrapper .minicart-wrapper .block-minicart .subtotal {
    border-top: 1px solid var(--awa-gray-200);
    padding-top: var(--awa-space-3);
    margin-top: var(--awa-space-3);
}

/* Carrinho vazio — mensagem estilizada */
body .page-wrapper .minicart-wrapper .block-minicart .subtitle.empty {
    text-align: center;
    padding: var(--awa-space-7) var(--awa-space-4);
    color: var(--awa-gray-400);
    font-size: var(--awa-text-sm);
}

/* Qty no minicart — input compacto */
body .page-wrapper .minicart-items .details-qty input.item-qty {
    text-align: center;
    font-variant-numeric: tabular-nums;
}

/* ===========================================
   RFF-16 — MESSAGES & ALERTS POLISH (safe)
   Padding consistente, alinhamento ícone+texto
   e espaçamento entre mensagens empilhadas.
=========================================== */

/* Padding consistente em todas as mensagens */
body .page-wrapper .messages .message {
    padding: var(--awa-space-3) var(--awa-space-4);
    border-radius: var(--awa-radius-sm);
    font-size: var(--awa-text-sm);
    line-height: var(--awa-leading-relaxed);
}

/* Ícone + texto — alinhamento flex */
body .page-wrapper .messages .message > *:first-child {
    display: flex;
    align-items: flex-start;
    gap: var(--awa-space-2);
}

/* Mensagens empilhadas — espaçamento entre */
body .page-wrapper .messages .message + .message {
    margin-top: var(--awa-space-2);
}

/* Success — refinamento */
body .page-wrapper .messages .message-success {
    background: var(--awa-success-light);
    border-left: 3px solid var(--awa-success);
    color: var(--awa-success-text);
}

/* Error — refinamento */
body .page-wrapper .messages .message-error {
    background: var(--awa-danger-light);
    border-left: 3px solid var(--awa-danger);
    color: var(--awa-danger-text);
}

/* Warning — refinamento */
body .page-wrapper .messages .message-warning {
    background: var(--awa-warning-light);
    border-left: 3px solid var(--awa-warning);
    color: var(--awa-warning-text);
}

/* Notice / Info — refinamento */
body .page-wrapper .messages .message-notice,
body .page-wrapper .messages .message-info {
    background: var(--awa-info-light);
    border-left: 3px solid var(--awa-info);
    color: var(--awa-info-text);
}

/* Link dentro de mensagem — destaque */
body .page-wrapper .messages .message a {
    font-weight: var(--awa-weight-semibold);
    text-decoration: underline;
    text-underline-offset: 2px;
}

body .page-wrapper .messages .message a:hover {
    text-decoration-thickness: 2px;
}

/* ===========================================
   RFF-17 — TABLES POLISH (safe)
   Padronização visual de tabelas genéricas
   (pedidos, comparação, atributos, endereços).
=========================================== */

/* Cabeçalho da tabela */
body .page-wrapper table thead th {
    background: var(--awa-gray-50);
    font-weight: var(--awa-weight-bold);
    font-size: var(--awa-text-sm);
    color: var(--awa-gray-700);
    letter-spacing: var(--awa-tracking-normal);
    text-transform: none;
    border-bottom: 2px solid var(--awa-gray-200);
}

/* Células — padding e alinhamento */
body .page-wrapper table thead th,
body .page-wrapper table tbody td {
    padding: var(--awa-space-3) var(--awa-space-4);
    vertical-align: middle;
}

/* Zebra striping em linhas */
body .page-wrapper table tbody tr:nth-child(even) {
    background: var(--awa-gray-50);
}

/* Hover em linhas */

/* Última linha sem borda */
body .page-wrapper table tbody tr:last-child td {
    border-bottom: none;
}

/* Caption — caso exista */
body .page-wrapper table caption {
    font-weight: var(--awa-weight-bold);
    font-size: var(--awa-text-base);
    text-align: left;
    padding-bottom: var(--awa-space-3);
    color: var(--awa-gray-800);
}

/* Responsivo — scroll indicator */

/* ===========================================
   RFF-18 — MODAL / POPUP POLISH (safe)
   Melhora botão fechar, título, backdrop,
   botões de ação e foco acessível.
=========================================== */

/* Close button — alvo acessível */
body .page-wrapper .modal-popup .action-close {
    min-width: 44px;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--awa-radius-sm);
    color: var(--awa-gray-500);
    transition: color var(--awa-transition-fast), background var(--awa-transition-fast);
}

body .page-wrapper .modal-popup .action-close:hover {
    color: var(--awa-red);
    background: var(--awa-gray-100);
}

body .page-wrapper .modal-popup .action-close:focus-visible {
    outline: 2px solid var(--awa-red);
    outline-offset: 2px;
}

/* Modal title — hierarquia visual */
body .page-wrapper .modal-popup .modal-title {
    font-weight: var(--awa-weight-bold);
    font-size: var(--awa-text-lg);
    line-height: var(--awa-leading-base);
    color: var(--awa-dark);
}

/* Footer actions — gap entre botões */
body .page-wrapper .modal-popup .modal-footer {
    display: flex;
    flex-wrap: wrap;
    gap: var(--awa-space-3);
    justify-content: flex-end;
}

/* Backdrop overlay — escurecimento suave */
body .page-wrapper .modals-overlay {
    background: rgb(0 0 0 / 45%);
}

/* Slide modal (ex: minicart, filters mobile) */
body .page-wrapper .modal-slide .modal-inner-wrap {
    box-shadow: var(--awa-shadow-lg);
}

body .page-wrapper .modal-slide .action-close:focus-visible {
    outline: 2px solid var(--awa-red);
    outline-offset: 2px;
}

/* Modal content — scroll suave */
body .page-wrapper .modal-popup .modal-content {
    scrollbar-width: thin;
    scrollbar-color: var(--awa-gray-300) transparent;
}

/* ===========================================
   RFF-19 — FOOTER NEWSLETTER POLISH (safe)
   Input + botão da newsletter com foco,
   alinhamento e espaçamento consistente.
=========================================== */

/* Container do form newsletter */
body .page-wrapper .footer .block.newsletter .form.subscribe {
    display: flex;
    gap: 0;
    align-items: stretch;
}

/* Input email */
body .page-wrapper .footer .block.newsletter .control input[type="email"] {
    min-height: var(--awa-input-height);
    border-radius: var(--awa-radius-sm) 0 0 var(--awa-radius-sm);
    border-right: none;
    font-size: var(--awa-text-sm);
    padding: 0 var(--awa-space-4);
}

body .page-wrapper .footer .block.newsletter .control input[type="email"]:focus {
    border-color: var(--awa-red);
    box-shadow: 0 0 0 2px var(--awa-red-extra-light);
    z-index: 1;
    position: relative;
}

body .page-wrapper .footer .block.newsletter .control input[type="email"]::placeholder {
    color: var(--awa-gray-500);
    opacity: 0.9;
}

/* Botão subscribe */
body .page-wrapper .footer .block.newsletter .actions .action.subscribe {
    min-height: var(--awa-input-height);
    border-radius: 0 var(--awa-radius-sm) var(--awa-radius-sm) 0;
    padding: 0 var(--awa-space-5);
    font-weight: var(--awa-weight-bold);
    white-space: nowrap;
}

body .page-wrapper .footer .block.newsletter .actions .action.subscribe:focus-visible {
    outline: 2px solid var(--awa-red);
    outline-offset: 2px;
}

/* Newsletter title — discreto */
body .page-wrapper .footer .block.newsletter .title {
    font-weight: var(--awa-weight-bold);
    font-size: var(--awa-text-base);
    margin-bottom: var(--awa-space-3);
}

/* Newsletter label/description — suave */
body .page-wrapper .footer .block.newsletter .label,
body .page-wrapper .footer .block.newsletter .description {
    font-size: var(--awa-text-sm);
    color: var(--awa-gray-400);
    margin-bottom: var(--awa-space-3);
}

/* Responsivo mobile */
@media (width <= 480px) {
    body .page-wrapper .footer .block.newsletter .form.subscribe {
        flex-direction: column;
        gap: var(--awa-space-2);
    }

    body .page-wrapper .footer .block.newsletter .control input[type="email"] {
        border-radius: var(--awa-radius-sm);
        border-right: 1px solid var(--awa-gray-300);
    }

    body .page-wrapper .footer .block.newsletter .actions .action.subscribe {
        border-radius: var(--awa-radius-sm);
        width: 100%;
    }
}

/* ===========================================
   RFF-20 — SEARCH RESULTS POLISH (safe)
   Melhora a apresentação dos resultados
   de busca, contagem e empty state.
=========================================== */

/* Contagem de resultados — destaque */
body .page-wrapper .search.results .search.found strong {
    font-weight: var(--awa-weight-bold);
    color: var(--awa-dark);
}

/* "Nenhum resultado" — empty state acolhedor */
body .page-wrapper .search.results .message.notice {
    text-align: center;
    padding: var(--awa-space-10) var(--awa-space-5);
    color: var(--awa-gray-500);
    font-size: var(--awa-text-base);
    line-height: var(--awa-leading-loose);
}

/* Search term highlight — realce sutil no texto */
body .page-wrapper .search.results .product-item-name .highlight,
body .page-wrapper .search.results .product-item-description .highlight {
    background: rgb(183 51 55 / 10%);
    color: var(--awa-red-dark);
    padding: 0 2px;
    border-radius: var(--awa-radius-2xs);
    font-weight: var(--awa-weight-semibold);
}

/* Related search terms */
body .page-wrapper .search.results .search-terms {
    margin-top: var(--awa-space-5);
    padding: var(--awa-space-4);
    background: var(--awa-gray-50);
    border-radius: var(--awa-radius-sm);
}

body .page-wrapper .search.results .search-terms li {
    display: inline-block;
    margin: var(--awa-space-1);
}

body .page-wrapper .search.results .search-terms li a {
    display: inline-block;
    padding: var(--awa-space-1) var(--awa-space-3);
    background: var(--awa-bg-surface); /* BP-12 */
    border: 1px solid var(--awa-gray-200);
    border-radius: var(--awa-radius-full);
    font-size: var(--awa-text-sm);
    color: var(--awa-gray-700);
    text-decoration: none;
    transition: border-color var(--awa-transition-fast), color var(--awa-transition-fast);
}

body .page-wrapper .search.results .search-terms li a:hover {
    border-color: var(--awa-red);
    color: var(--awa-red);
}

body .page-wrapper .search.results .search-terms li a:focus-visible {
    outline: 2px solid var(--awa-red);
    outline-offset: 2px;
}

/* ===========================================
   RFF-21 — WISHLIST & COMPARE PAGES (safe)
   Uniformiza grid, ações e empty state
   nas páginas de favoritos e comparação.
=========================================== */

/* Wishlist grid — cards uniformes */
body .page-wrapper .form-wishlist-items .product-items {
    gap: var(--awa-space-5);
}

body .page-wrapper .form-wishlist-items .product-item {
    border: 1px solid var(--awa-gray-200);
    border-radius: var(--awa-control-radius);
    padding: var(--awa-space-4);
    background: var(--awa-bg-surface); /* BP-12 */
}

/* Wishlist item actions — alinhamento */
body .page-wrapper .form-wishlist-items .product-item .box-tocart {
    display: flex;
    align-items: center;
    gap: var(--awa-space-3);
    margin-top: var(--awa-space-3);
}

body .page-wrapper .form-wishlist-items .product-item .btn-remove {
    color: var(--awa-gray-400);
    font-size: var(--awa-text-sm);
    transition: color var(--awa-transition-fast);
}

body .page-wrapper .form-wishlist-items .product-item .btn-remove:hover {
    color: var(--awa-red);
}

body .page-wrapper .form-wishlist-items .product-item .btn-remove:focus-visible {
    outline: 2px solid var(--awa-red);
    outline-offset: 2px;
}

/* Wishlist empty state */
body .page-wrapper .wishlist-empty .message.info {
    text-align: center;
    padding: var(--awa-space-10) var(--awa-space-5);
    color: var(--awa-gray-500);
    font-size: var(--awa-text-base);
}

/* Compare table — zebra + header fixo */
body .page-wrapper .table-comparison thead th {
    position: sticky;
    top: 0;
    z-index: 2;
    background: var(--awa-gray-50);
    border-bottom: 2px solid var(--awa-gray-200);
}

body .page-wrapper .table-comparison tbody td {
    border-bottom: 1px solid var(--awa-gray-200);
    padding: var(--awa-space-3) var(--awa-space-4);
    vertical-align: top;
}

body .page-wrapper .table-comparison tbody tr:nth-child(even) td {
    background: var(--awa-gray-50);
}

/* Compare — remove action focus */
body .page-wrapper .table-comparison .action.delete:focus-visible {
    outline: 2px solid var(--awa-red);
    outline-offset: 2px;
}

/* Compare — product name link */
body .page-wrapper .table-comparison .product-item-name a {
    font-weight: var(--awa-weight-semibold);
    font-size: var(--awa-text-base);
    color: var(--awa-dark);
}

body .page-wrapper .table-comparison .product-item-name a:hover {
    color: var(--awa-red);
}

/* Compare empty state */
body .page-wrapper .catalog-product_compare-index .message.info {
    text-align: center;
    padding: var(--awa-space-10) var(--awa-space-5);
    color: var(--awa-gray-500);
}

/* Compare — mobile horizontal scroll */

/* ===========================================
   RFF-22 — SCROLLBAR + OVERSCROLL CONTAINERS
   Problema: scrollbar-width: thin aplicado globalmente
   no html, mas modais/sidebar/minicart usam scrollbar
   padrão larga. overscroll-behavior ausente em containers
   de scroll (chain scroll escapa para a página).
   Solução: thin scrollbar + overscroll contain em todos
   os containers de scroll do projeto.
=========================================== */
body .page-wrapper .modal-content,
body .page-wrapper .modal-popup .modal-inner-wrap,
body .page-wrapper .modal-slide .modal-inner-wrap,
body .page-wrapper .sidebar-main,
body .page-wrapper .minicart-wrapper,
body .page-wrapper .minicart-items-wrapper,
body .page-wrapper .dropdown-menu,
body .page-wrapper .table-wrapper,
body .page-wrapper .block-search .search-autocomplete {
    scrollbar-width: thin;
    scrollbar-color: var(--awa-gray-300) transparent;
}

body .page-wrapper .modal-popup .modal-content,
body .page-wrapper .modal-slide .modal-content,
body .page-wrapper .sidebar-main,
body .page-wrapper .minicart-items-wrapper,
body .page-wrapper .block-search .search-autocomplete {
    overscroll-behavior: contain;
}

/* BP-33: stacking context isolation para modais/overlays */
body .page-wrapper .modal-popup .modal-inner-wrap,
body .page-wrapper .modal-slide .modal-inner-wrap {
    isolation: isolate;
}
