/*
 * MAXSOFT Product Marketplace Premium v50.0
 * Camada visual final e unificada para todos os boxes da página de produto.
 */
:root {
    --msp-bg: #f3f5f8;
    --msp-surface: #ffffff;
    --msp-surface-soft: #f8fafc;
    --msp-surface-blue: #f5f9ff;
    --msp-border: #e2e8f0;
    --msp-border-strong: #cfd8e4;
    --msp-text: #172033;
    --msp-text-soft: #475467;
    --msp-muted: #7b8798;
    --msp-primary: #2f6fed;
    --msp-primary-dark: #1f56c2;
    --msp-primary-soft: #edf4ff;
    --msp-success: #00a650;
    --msp-success-dark: #067647;
    --msp-success-soft: #ecfdf3;
    --msp-warning: #f59e0b;
    --msp-danger: #d92d20;
    --msp-radius-xl: 20px;
    --msp-radius-lg: 16px;
    --msp-radius-md: 12px;
    --msp-shadow: 0 10px 30px rgba(15, 23, 42, .055);
    --msp-shadow-soft: 0 5px 18px rgba(15, 23, 42, .04);
    --msp-shadow-hover: 0 16px 38px rgba(15, 23, 42, .085);
}

html { scroll-behavior: smooth; }
body {
    background: var(--msp-bg) !important;
    color: var(--msp-text);
}
.ms-product-page,
.ms-product-page * { box-sizing: border-box; }
.ms-product-page {
    padding-bottom: 112px;
    overflow: clip;
}
.ms-product-page img { max-width: 100%; }
.ms-product-page a,
.ms-product-page button,
.ms-product-page select,
.ms-product-page textarea,
.ms-product-page input { -webkit-tap-highlight-color: transparent; }
.ms-product-page a:focus-visible,
.ms-product-page button:focus-visible,
.ms-product-page select:focus-visible,
.ms-product-page textarea:focus-visible,
.ms-product-page input:focus-visible {
    outline: 3px solid rgba(47, 111, 237, .22);
    outline-offset: 2px;
}

/* Estrutura geral */
.ms-product-layout {
    width: min(calc(100% - 32px), 1320px) !important;
    margin-inline: auto !important;
}
.ms-product-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 400px !important;
    gap: 24px !important;
    align-items: start !important;
}
.ms-product-main-column,
.ms-product-sidebar {
    min-width: 0;
    gap: 18px !important;
}
.ms-product-sidebar { align-self: stretch; }
.ms-product-surface,
.ms-product-payment-box,
.ms-buybox-card {
    min-width: 0;
    border: 1px solid var(--msp-border) !important;
    border-radius: var(--msp-radius-xl) !important;
    background: var(--msp-surface) !important;
    box-shadow: var(--msp-shadow) !important;
}
.ms-product-content-surface { padding: 28px !important; }
.ms-product-seller-highlight,
.ms-product-details,
.ms-product-questions,
.ms-product-reviews {
    scroll-margin-top: 96px;
}

/* Breadcrumb e retorno ao catálogo */
.ms-product-topnav {
    width: min(calc(100% - 32px), 1320px) !important;
    min-height: 52px;
    margin: 12px auto 14px !important;
    padding: 0 !important;
}
.ms-product-topnav__trail { gap: 7px !important; }
.ms-product-topnav__trail a {
    color: #416181 !important;
    font-size: 11px !important;
    font-weight: 700 !important;
}
.ms-product-topnav__trail span {
    color: #98a2b3 !important;
    font-size: 11px !important;
    font-weight: 650 !important;
}
.ms-product-topnav__catalog {
    min-height: 38px !important;
    padding: 0 13px !important;
    border: 1px solid var(--msp-border) !important;
    border-radius: 11px !important;
    color: #344054 !important;
    background: #fff !important;
    box-shadow: 0 3px 10px rgba(15,23,42,.035);
    font-size: 10px !important;
    font-weight: 800 !important;
}
.ms-product-topnav__catalog:hover {
    border-color: #b9c7d8 !important;
    color: var(--msp-primary-dark) !important;
}

/* Galeria */
.ms-product-gallery { overflow: hidden !important; }
.ms-product-gallery .ms-gallery-root {
    padding: 22px !important;
    border-radius: inherit !important;
    background: #fff !important;
}
.ms-product-gallery .ms-gallery-container { gap: 18px !important; }
.ms-product-gallery .ms-thumb-rail {
    width: 66px !important;
    gap: 9px !important;
}
.ms-product-gallery .ms-thumb-item {
    width: 62px !important;
    height: 62px !important;
    border: 1px solid var(--msp-border) !important;
    border-radius: 11px !important;
    background: #fff !important;
    box-shadow: none !important;
}
.ms-product-gallery .ms-thumb-item:hover { border-color: #b8c6d8 !important; }
.ms-product-gallery .ms-thumb-item.active {
    border-color: var(--msp-primary) !important;
    box-shadow: 0 0 0 2px rgba(47,111,237,.10) !important;
}
.ms-product-gallery .ms-main-stage {
    height: 540px !important;
    min-height: 540px !important;
    border: 1px solid #eef2f6 !important;
    border-radius: 16px !important;
    background: linear-gradient(145deg, #f8fafc 0%, #fff 72%) !important;
}
.ms-product-gallery .main-product-image {
    max-width: 88% !important;
    max-height: 88% !important;
}
.ms-product-gallery .ms-zoom-hint {
    right: 15px !important;
    bottom: 15px !important;
    padding: 7px 12px !important;
    border: 1px solid var(--msp-border) !important;
    color: #667085 !important;
    background: rgba(255,255,255,.95) !important;
    font-size: 9px !important;
    letter-spacing: .02em;
}

/* Box de compra */
.ms-product-buybox {
    position: sticky !important;
    top: 82px !important;
    z-index: 12;
}
.ms-product-buybox > .sys-max-product { width: 100% !important; }
.ms-product-buybox .ms-buybox-card {
    width: 100% !important;
    padding: 24px !important;
    overflow: hidden !important;
}
.ms-product-buybox .ms-buybox-card > a:first-child {
    margin-bottom: 12px !important;
    color: var(--msp-warning) !important;
    font-size: 10px !important;
}
.ms-product-buybox .ms-buybox-card > a:first-child span {
    color: #667085 !important;
    font-weight: 700 !important;
}
.ms-product-buybox .ms-buybox-card > h1 {
    margin: 0 0 20px !important;
    color: var(--msp-text) !important;
    font-size: clamp(22px, 2vw, 27px) !important;
    font-weight: 900 !important;
    letter-spacing: -.038em !important;
    line-height: 1.22 !important;
}
.ms-product-buybox .ms-price-display-box {
    margin-bottom: 20px !important;
    padding: 18px !important;
    border: 1px solid #d9e4f0 !important;
    border-radius: 16px !important;
    background: linear-gradient(145deg, #f8fbff 0%, #fff 100%) !important;
    box-shadow: none !important;
}
.ms-product-buybox .ms-price-display-box:hover {
    border-color: #c4d2e2 !important;
    background: linear-gradient(145deg, #f8fbff 0%, #fff 100%) !important;
    box-shadow: none !important;
}
.ms-product-buybox .sys-int {
    font-size: 46px !important;
    letter-spacing: -.06em !important;
}
.ms-product-buybox .sys-dec { font-size: 20px !important; }
.ms-product-buybox .ms-buybox-card > .grid:nth-last-of-type(2) {
    grid-template-columns: minmax(0,1fr) 104px !important;
    gap: 12px !important;
    margin-bottom: 18px !important;
}
.ms-product-buybox label {
    margin: 0 0 7px !important;
    color: #667085 !important;
    font-size: 9px !important;
    font-weight: 850 !important;
    letter-spacing: .07em !important;
}
.ms-product-buybox .sys-select,
.ms-product-buybox .sys-qty {
    min-height: 50px !important;
    border-color: var(--msp-border-strong) !important;
    border-radius: 12px !important;
    color: #344054 !important;
    background: #fff !important;
    font-size: 12px !important;
    font-weight: 800 !important;
}
.ms-product-buybox .sys-select {
    text-transform: none !important;
    letter-spacing: 0 !important;
}
.ms-product-buybox .ms-buybox-card > div:last-child {
    display: flex !important;
    flex-direction: column-reverse !important;
    gap: 10px !important;
    margin-top: 0 !important;
}
.ms-product-buybox .btn-ms-buy-now,
.ms-product-buybox .btn-ms-add-cart {
    min-height: 52px !important;
    border-radius: 12px !important;
    font-size: 12px !important;
    font-weight: 850 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}
.ms-product-buybox .btn-ms-buy-now {
    background: linear-gradient(135deg, var(--msp-primary) 0%, var(--msp-primary-dark) 100%) !important;
    box-shadow: 0 8px 20px rgba(47,111,237,.24) !important;
}
.ms-product-buybox .btn-ms-buy-now:hover:not(:disabled) {
    transform: translateY(-1px) !important;
    box-shadow: 0 11px 24px rgba(47,111,237,.29) !important;
}
.ms-product-buybox .btn-ms-add-cart {
    border-color: #b9c6d5 !important;
    color: #344054 !important;
    background: #fff !important;
}
.ms-product-buybox .btn-ms-add-cart:hover:not(:disabled) {
    border-color: #8fa0b4 !important;
    background: #f8fafc !important;
}
.ms-version-auto-note,
.ms-version-required-note {
    font-size: 9px !important;
    line-height: 1.45 !important;
}

/* Resumo do produto no celular */
.ms-product-mobile-summary { display: none; }
.ms-product-mobile-summary h1 {
    margin: 12px 0 10px !important;
    color: var(--msp-text) !important;
    font-size: clamp(21px, 5.8vw, 27px) !important;
    font-weight: 900 !important;
    letter-spacing: -.04em !important;
    line-height: 1.2 !important;
}
.ms-mobile-summary__meta { gap: 7px !important; }
.ms-mobile-summary__meta span {
    min-height: 27px;
    padding: 0 9px !important;
    display: inline-flex !important;
    align-items: center;
    border-color: var(--msp-border) !important;
    color: #667085 !important;
    background: #f8fafc !important;
    font-size: 8px !important;
}
.ms-mobile-summary__rating { gap: 7px !important; }
.ms-mobile-summary__benefits { gap: 8px !important; }
.ms-mobile-summary__benefits span {
    min-height: 33px !important;
    border: 1px solid #dce7f5;
    color: #416181 !important;
    background: #f7faff !important;
    font-size: 9px !important;
}

/* Promoção */
.ms-product-urgency { padding: 14px 18px !important; }
.ms-product-urgency .ms-urgency-root {
    margin: 0 !important;
    border-radius: 12px !important;
}
.ms-product-urgency .ms-urgency-container { padding: 11px 13px !important; }

/* Navegação interna */
.ms-product-anchor-wrap {
    position: sticky !important;
    top: 70px !important;
    z-index: 25;
    overflow: hidden !important;
    border-radius: 14px !important;
    box-shadow: 0 8px 22px rgba(15,23,42,.065) !important;
}
.ms-product-anchor-nav {
    padding: 8px !important;
    gap: 6px !important;
}
.ms-product-anchor-nav a {
    min-height: 40px !important;
    padding: 0 14px !important;
    border: 0 !important;
    border-radius: 10px !important;
    color: var(--msp-text-soft) !important;
    background: transparent !important;
    font-size: 10px !important;
    font-weight: 800 !important;
}
.ms-product-anchor-nav a:hover,
.ms-product-anchor-nav a.is-active {
    color: var(--msp-primary-dark) !important;
    background: var(--msp-primary-soft) !important;
}
.ms-product-anchor-nav a.is-active {
    box-shadow: inset 0 0 0 1px #d6e5fb;
}

/* Cabeçalhos de boxes */
.ms-product-section-head {
    margin-bottom: 22px !important;
    align-items: flex-start !important;
}
.ms-product-section-title {
    color: var(--msp-text) !important;
    font-size: clamp(22px, 2vw, 27px) !important;
    font-weight: 900 !important;
    letter-spacing: -.04em !important;
    line-height: 1.18 !important;
}
.ms-product-section-title::before {
    width: 4px !important;
    height: 25px !important;
    flex-basis: 4px !important;
    background: var(--msp-primary) !important;
}
.ms-product-section-subtitle {
    max-width: 700px;
    margin-top: 7px !important;
    color: var(--msp-muted) !important;
    font-size: 11px !important;
    line-height: 1.55 !important;
}
.ms-product-section-badge {
    border-color: #cfe0f7 !important;
    color: var(--msp-primary-dark) !important;
    background: var(--msp-primary-soft) !important;
    font-size: 9px !important;
}
.ms-section-component-head {
    grid-template-columns: 46px minmax(0,1fr) auto !important;
    gap: 13px !important;
    margin-bottom: 22px !important;
}
.ms-section-component-head__icon {
    width: 46px !important;
    height: 46px !important;
    border-radius: 13px !important;
    color: var(--msp-primary-dark) !important;
    background: var(--msp-primary-soft) !important;
    font-size: 17px !important;
}
.ms-section-component-head__copy > span {
    color: var(--msp-primary-dark) !important;
    font-size: 8px !important;
    letter-spacing: .11em !important;
}
.ms-section-component-head__copy h2 {
    color: var(--msp-text) !important;
    font-size: clamp(21px,2vw,26px) !important;
    font-weight: 900 !important;
    letter-spacing: -.04em !important;
    line-height: 1.18 !important;
}
.ms-section-component-head__copy p {
    max-width: 690px;
    color: var(--msp-muted) !important;
    font-size: 11px !important;
    line-height: 1.5 !important;
}
.ms-section-component-head__meta {
    min-width: 88px !important;
    min-height: 62px !important;
    border-color: var(--msp-border) !important;
    border-radius: 14px !important;
    background: #fbfcfe !important;
}
.ms-section-component-head__meta strong {
    color: var(--msp-text) !important;
    font-size: 20px !important;
}
.ms-section-component-head__meta small { font-size: 7px !important; }

/* Vendedor */
.ms-product-seller-highlight {
    display: block !important;
    border-top: 3px solid rgba(47,111,237,.78) !important;
}
.ms-seller-inline {
    display: grid !important;
    grid-template-columns: minmax(0,1.45fr) minmax(285px,.8fr) !important;
    gap: 16px !important;
}
.ms-seller-inline__main,
.ms-seller-inline__side {
    border: 1px solid var(--msp-border) !important;
    border-radius: var(--msp-radius-lg) !important;
    box-shadow: none !important;
}
.ms-seller-inline__main {
    padding: 20px !important;
    align-items: center !important;
    background: linear-gradient(145deg,#fff 0%,#fbfdff 100%) !important;
}
.ms-seller-inline__avatar {
    width: 76px !important;
    height: 76px !important;
    flex-basis: 76px !important;
    border-radius: 18px !important;
    border-color: #e8edf3 !important;
    box-shadow: 0 8px 20px rgba(15,23,42,.055) !important;
}
.ms-seller-inline__eyebrow {
    color: var(--msp-primary-dark) !important;
    font-size: 8px !important;
    letter-spacing: .12em !important;
}
.ms-seller-inline__title-row h3 {
    color: var(--msp-text) !important;
    font-size: 22px !important;
    font-weight: 900 !important;
}
.ms-seller-inline__badge {
    border: 1px solid #cfe0f7 !important;
    color: var(--msp-primary-dark) !important;
    background: var(--msp-primary-soft) !important;
    font-size: 9px !important;
}
.ms-seller-inline__copy p {
    max-width: 620px;
    margin: 9px 0 14px !important;
    color: var(--msp-text-soft) !important;
    font-size: 12px !important;
    line-height: 1.62 !important;
}
.ms-seller-inline__chips { gap: 8px !important; }
.ms-seller-inline__chips span {
    min-height: 33px !important;
    padding: 0 11px !important;
    border: 1px solid #dce8f8;
    color: #315f9d !important;
    background: #f7faff !important;
    font-size: 9px !important;
}
.ms-seller-inline__side {
    padding: 17px !important;
    gap: 14px !important;
    background: #fbfcfe !important;
}
.ms-seller-inline__quality-head small {
    color: var(--msp-muted) !important;
    font-size: 8px !important;
}
.ms-seller-inline__quality-bar span { height: 7px !important; }
.ms-seller-inline__stats { gap: 8px !important; }
.ms-seller-inline__stats div {
    padding: 12px 8px !important;
    border-color: #e8edf3 !important;
    border-radius: 12px !important;
    background: #fff !important;
}
.ms-seller-inline__stats strong {
    color: var(--msp-text) !important;
    font-size: 19px !important;
}
.ms-seller-inline__stats span { font-size: 7px !important; }
.ms-seller-inline__action {
    min-height: 42px !important;
    border-color: #bfd3ef !important;
    border-radius: 11px !important;
    color: var(--msp-primary-dark) !important;
    background: #fff !important;
    font-size: 10px !important;
}
.ms-seller-inline__action:hover { background: var(--msp-primary-soft) !important; }

/* Características e descrição */
.ms-details-component {
    display: grid !important;
    gap: 20px !important;
}
.ms-details-group {
    padding: 20px !important;
    border: 1px solid var(--msp-border) !important;
    border-radius: var(--msp-radius-lg) !important;
    background: #fafcff !important;
}
.ms-details-group__head {
    margin-bottom: 16px !important;
    align-items: flex-end !important;
}
.ms-details-group__head span,
.ms-product-description__head small {
    color: var(--msp-primary-dark) !important;
    font-size: 8px !important;
    font-weight: 900 !important;
    letter-spacing: .11em !important;
}
.ms-details-group__head h3 {
    color: var(--msp-text) !important;
    font-size: 17px !important;
    font-weight: 900 !important;
    letter-spacing: -.025em !important;
}
.ms-details-group__head > small {
    color: var(--msp-muted) !important;
    font-size: 8px !important;
}
.ms-specs-grid {
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    gap: 10px !important;
}
.ms-spec-card {
    min-height: 84px !important;
    padding: 14px !important;
    align-items: center !important;
    border: 1px solid var(--msp-border) !important;
    border-radius: 13px !important;
    background: #fff !important;
    box-shadow: none !important;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease !important;
}
.ms-spec-card:hover {
    transform: translateY(-1px) !important;
    border-color: #bcd1ee !important;
    box-shadow: 0 7px 18px rgba(15,23,42,.045) !important;
}
.ms-spec-card__icon {
    color: var(--msp-primary-dark) !important;
    background: var(--msp-primary-soft) !important;
}
.ms-spec-card small {
    color: var(--msp-muted) !important;
    font-size: 8px !important;
}
.ms-spec-card strong {
    color: #27364a !important;
    font-size: 12px !important;
    line-height: 1.42 !important;
}
.ms-detail-highlights {
    margin-top: 14px !important;
    gap: 8px !important;
}
.ms-detail-highlights span {
    border: 1px solid #cee9db !important;
    color: var(--msp-success-dark) !important;
    background: #f2fbf6 !important;
    font-size: 9px !important;
}
.ms-product-description {
    padding: 0 !important;
    overflow: hidden !important;
    border: 1px solid var(--msp-border) !important;
    border-radius: var(--msp-radius-lg) !important;
    background: #fff !important;
}
.ms-product-description__head {
    margin: 0 !important;
    padding: 18px 20px !important;
    align-items: center !important;
    border-bottom: 1px solid var(--msp-border) !important;
    background: linear-gradient(180deg,#fff 0%,#fbfcfe 100%) !important;
}
.ms-product-description__head > span {
    width: 42px !important;
    height: 42px !important;
    flex-basis: 42px !important;
    color: var(--msp-primary-dark) !important;
    background: var(--msp-primary-soft) !important;
}
.ms-product-description__head h3 {
    color: var(--msp-text) !important;
    font-size: 18px !important;
    font-weight: 900 !important;
}
.ms-product-description__head p {
    color: var(--msp-muted) !important;
    font-size: 10px !important;
    line-height: 1.5 !important;
}
.ms-description-collapse { padding: 20px !important; }
.ms-product-description__body {
    color: #3f4d61 !important;
    font-size: 14px !important;
    line-height: 1.82 !important;
}
.ms-product-description__body p { margin: 0 0 15px !important; }
.ms-product-description__body h4 {
    margin: 24px 0 10px !important;
    color: var(--msp-text) !important;
    font-size: 15px !important;
    font-weight: 900 !important;
}
.ms-product-description__body ul,
.ms-product-description__body ol {
    margin: 12px 0 18px !important;
    padding-left: 22px !important;
}
.ms-product-description__body li { margin: 7px 0 !important; }
.ms-description-collapse .ms-collapse-overlay {
    left: 20px !important;
    right: 20px !important;
    height: 90px !important;
}
.ms-collapse-btn {
    min-height: 46px !important;
    margin-top: 14px !important;
    border: 1px solid #bfd0e8 !important;
    border-radius: 11px !important;
    color: var(--msp-primary-dark) !important;
    background: #fff !important;
    font-size: 11px !important;
    font-weight: 900 !important;
}
.ms-collapse-btn:hover { background: var(--msp-primary-soft) !important; }

/* Perguntas */
.ms-question-form {
    padding: 18px !important;
    border: 1px solid #d7e4f5 !important;
    border-radius: 16px !important;
    background: linear-gradient(180deg,#f8fbff 0%,#fff 100%) !important;
}
.ms-question-form > label {
    color: var(--msp-text) !important;
    font-size: 11px !important;
    font-weight: 900 !important;
}
.ms-question-form__box {
    overflow: hidden !important;
    border: 1px solid var(--msp-border-strong) !important;
    border-radius: 13px !important;
    background: #fff !important;
}
.ms-question-form__box:focus-within {
    border-color: var(--msp-primary) !important;
    box-shadow: 0 0 0 4px rgba(47,111,237,.10) !important;
}
.ms-question-form textarea {
    min-height: 116px !important;
    padding: 15px !important;
    color: #344054 !important;
    font-size: 13px !important;
    line-height: 1.62 !important;
}
.ms-question-form__footer {
    min-height: 54px !important;
    padding: 9px 10px 9px 13px !important;
    border-top-color: #eef2f6 !important;
}
.ms-question-form__footer button {
    min-height: 39px !important;
    padding: 0 15px !important;
    border-radius: 10px !important;
    background: var(--msp-primary) !important;
    box-shadow: 0 5px 13px rgba(47,111,237,.18) !important;
    font-size: 10px !important;
}
.ms-question-suggestions { gap: 7px !important; }
.ms-question-suggestions button {
    min-height: 34px !important;
    border-color: var(--msp-border) !important;
    border-radius: 999px !important;
    color: #5d6b7d !important;
    background: #fff !important;
    font-size: 9px !important;
}
.ms-question-suggestions button:hover {
    border-color: #b9d2f5 !important;
    color: var(--msp-primary-dark) !important;
    background: var(--msp-primary-soft) !important;
}
.ms-question-login {
    border-color: var(--msp-border) !important;
    border-radius: 15px !important;
    background: #fbfcfe !important;
}
.ms-question-list { padding-top: 6px !important; }
.ms-question-list__head {
    margin-bottom: 14px !important;
    padding-top: 2px;
}
.ms-question-list__head h3 {
    color: var(--msp-text) !important;
    font-size: 15px !important;
}
.ms-question-list__head p {
    color: var(--msp-muted) !important;
    font-size: 10px !important;
}
.ms-question-items { gap: 12px !important; }
.ms-question-item {
    padding: 17px !important;
    border: 1px solid var(--msp-border) !important;
    border-radius: 15px !important;
    background: #fff !important;
    box-shadow: 0 3px 12px rgba(15,23,42,.025) !important;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.ms-question-item:hover {
    transform: translateY(-1px);
    border-color: #c9d6e6 !important;
    box-shadow: 0 8px 22px rgba(15,23,42,.05) !important;
}
.ms-question-item.is-pending {
    border-color: #fedf89 !important;
    background: #fffdf5 !important;
}
.ms-question-item__letter {
    border-radius: 9px !important;
    color: var(--msp-primary-dark) !important;
    background: var(--msp-primary-soft) !important;
}
.ms-question-item__answer {
    margin-top: 14px !important;
    border: 1px solid #e7ecf2;
    background: #f8fafc !important;
}
.ms-question-item__answer .ms-question-item__letter {
    color: var(--msp-success-dark) !important;
    background: var(--msp-success-soft) !important;
}
.ms-question-item__question strong {
    color: #344054 !important;
    font-size: 12px !important;
    line-height: 1.55 !important;
}
.ms-question-item__answer p {
    color: var(--msp-text-soft) !important;
    font-size: 12px !important;
    line-height: 1.65 !important;
}
.ms-progressive-more {
    min-height: 48px !important;
    border: 1px solid #bfd0e8 !important;
    border-radius: 11px !important;
    color: var(--msp-primary-dark) !important;
    background: #fff !important;
    font-size: 10px !important;
}
.ms-progressive-more:hover { background: var(--msp-primary-soft) !important; }

/* Avaliações */
.ms-reviews-layout {
    grid-template-columns: 245px minmax(0,1fr) !important;
    gap: 24px !important;
    align-items: start !important;
}
.ms-reviews-summary {
    position: sticky !important;
    top: 130px !important;
    padding: 19px !important;
    border: 1px solid var(--msp-border) !important;
    border-radius: 16px !important;
    background: #fbfcfe !important;
    box-shadow: var(--msp-shadow-soft) !important;
}
.ms-reviews-score > strong {
    color: var(--msp-text) !important;
    font-size: 48px !important;
}
.ms-review-stars { color: var(--msp-warning) !important; }
.ms-reviews-kpis {
    gap: 8px !important;
    margin-top: 16px !important;
}
.ms-reviews-kpis > div {
    border-color: var(--msp-border) !important;
    border-radius: 11px !important;
    background: #fff !important;
}
.ms-rating-bars { gap: 8px !important; }
.ms-rating-bar__track { background: #e7ecf2 !important; }
.ms-rating-bar__track > span { background: #94a3b8 !important; }
.ms-rating-bar:hover .ms-rating-bar__track > span,
.ms-rating-bar.is-active .ms-rating-bar__track > span { background: var(--msp-primary) !important; }
.ms-reviews-trust-note {
    border: 1px solid #dce9df;
    color: #466052 !important;
    background: #f5fbf7 !important;
}
.ms-reviews-content { min-width: 0; }
.ms-reviews-content__head {
    margin-bottom: 13px !important;
    gap: 14px !important;
}
.ms-reviews-content__head span {
    color: var(--msp-primary-dark) !important;
    font-size: 8px !important;
}
.ms-reviews-content__head strong {
    color: var(--msp-text) !important;
    font-size: 15px !important;
}
.ms-reviews-content__head > small {
    color: var(--msp-muted) !important;
    font-size: 9px !important;
}
.ms-review-filters {
    margin-bottom: 15px !important;
    padding-bottom: 3px;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    scrollbar-width: none;
}
.ms-review-filters::-webkit-scrollbar { display: none; }
.ms-review-filters a {
    flex: 0 0 auto;
    min-height: 35px !important;
    border-color: var(--msp-border) !important;
    border-radius: 9px !important;
    font-size: 9px !important;
}
.ms-review-filters a.is-active {
    border-color: var(--msp-primary) !important;
    color: #fff !important;
    background: var(--msp-primary) !important;
}
.ms-review-list { gap: 12px !important; }
.ms-review-card {
    padding: 18px !important;
    border: 1px solid var(--msp-border) !important;
    border-radius: 15px !important;
    background: #fff !important;
    box-shadow: 0 3px 12px rgba(15,23,42,.025) !important;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.ms-review-card:hover {
    transform: translateY(-1px);
    border-color: #c9d6e6 !important;
    box-shadow: 0 8px 22px rgba(15,23,42,.055) !important;
}
.ms-review-author > span {
    color: var(--msp-primary-dark) !important;
    background: var(--msp-primary-soft) !important;
}
.ms-review-author strong {
    color: var(--msp-text) !important;
    font-size: 12px !important;
}
.ms-review-rating-label {
    color: #8a5b00 !important;
    font-size: 8px !important;
}
.ms-review-card__meta span.is-verified {
    min-height: 25px !important;
    padding: 0 8px !important;
    border-radius: 999px !important;
    color: var(--msp-success-dark) !important;
    background: var(--msp-success-soft) !important;
}
.ms-review-card__text {
    margin-top: 15px !important;
    color: var(--msp-text-soft) !important;
    font-size: 13px !important;
    line-height: 1.72 !important;
}
.ms-review-photo {
    border-color: var(--msp-border) !important;
    border-radius: 13px !important;
}
.ms-review-card__footer { border-top-color: #eef2f6 !important; }
.ms-review-helpful {
    border-radius: 999px !important;
    color: var(--msp-text-soft) !important;
}
.ms-review-helpful:hover,
.ms-review-helpful.is-active {
    border-color: #b9d2f5 !important;
    color: var(--msp-primary-dark) !important;
    background: var(--msp-primary-soft) !important;
}

/* Pagamento e confiança */
.ms-product-payment-box,
.ms-product-trust-wrap {
    overflow: hidden !important;
    border-radius: 16px !important;
    background: #fff !important;
}
.ms-product-payment-box__head,
.ms-product-trust__head {
    padding: 17px 18px 14px !important;
    border-bottom: 1px solid #edf1f5 !important;
    background: linear-gradient(180deg,#fff 0%,#fbfdff 100%) !important;
}
.ms-product-payment-box__head h3,
.ms-product-trust__head h3 {
    color: var(--msp-text) !important;
    font-size: 15px !important;
    font-weight: 900 !important;
}
.ms-product-payment-box__head p,
.ms-product-trust__head small {
    color: var(--msp-muted) !important;
    font-size: 9px !important;
    line-height: 1.45 !important;
}
.ms-product-payment-list { padding: 5px 18px 12px !important; }
.ms-product-payment-item {
    min-height: 60px !important;
    gap: 11px !important;
    border-bottom-color: #eef2f6 !important;
}
.ms-product-payment-item__icon,
.ms-product-trust__head > span {
    width: 38px !important;
    height: 38px !important;
    flex-basis: 38px !important;
    border-radius: 11px !important;
    color: var(--msp-primary-dark) !important;
    background: var(--msp-primary-soft) !important;
}
.ms-product-payment-item strong,
.ms-product-trust__item strong {
    color: #344054 !important;
    font-size: 11px !important;
    font-weight: 900 !important;
}
.ms-product-payment-item small,
.ms-product-trust__item span {
    color: var(--msp-muted) !important;
    font-size: 9px !important;
    line-height: 1.48 !important;
}
.ms-product-payment-security {
    margin: 0 14px 14px !important;
    border: 1px solid #dce9df;
    color: var(--msp-success-dark) !important;
    background: #f5fbf7 !important;
}
.ms-product-trust {
    padding: 5px 18px 14px !important;
    gap: 0 !important;
}
.ms-product-trust__item {
    min-height: 65px !important;
    padding: 13px 0 !important;
    align-items: center !important;
    border-bottom: 1px solid #eef2f6;
}
.ms-product-trust__item:last-child { border-bottom: 0; }
.ms-product-trust__item i {
    width: 36px !important;
    height: 36px !important;
    flex: 0 0 36px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 11px !important;
    color: var(--msp-success-dark) !important;
    background: var(--msp-success-soft) !important;
    font-size: 14px !important;
}

/* Carrosséis e categorias */
.ms-product-market-section {
    width: min(calc(100% - 32px),1320px) !important;
    margin-top: 22px !important;
    border: 1px solid var(--msp-border) !important;
    border-radius: var(--msp-radius-xl) !important;
    box-shadow: var(--msp-shadow-soft) !important;
}
.ms-product-market-section__head {
    min-height: 78px !important;
    padding: 17px 20px !important;
    border-bottom-color: #eef2f6 !important;
    background: linear-gradient(180deg,#fff 0%,#fbfcfe 100%) !important;
}
.ms-product-market-section__icon {
    color: var(--msp-primary-dark) !important;
    background: var(--msp-primary-soft) !important;
}
.ms-product-market-section__head h2 {
    color: var(--msp-text) !important;
    font-size: clamp(18px,2vw,22px) !important;
    font-weight: 900 !important;
}
.ms-product-market-section__head p {
    color: var(--msp-muted) !important;
    font-size: 10px !important;
}
.ms-carousel-arrow {
    width: 34px !important;
    height: 34px !important;
    border: 1px solid var(--msp-border) !important;
    border-radius: 10px !important;
    color: #475467 !important;
    background: #fff !important;
    box-shadow: 0 3px 9px rgba(15,23,42,.035);
}
.ms-carousel-arrow:hover:not(:disabled) {
    border-color: #b9d2f5 !important;
    color: var(--msp-primary-dark) !important;
    background: var(--msp-primary-soft) !important;
}
.ms-product-horizontal-scroll {
    padding: 18px 20px 22px !important;
    gap: 14px !important;
    grid-auto-columns: minmax(195px,220px) !important;
}
.ms-product-category-card {
    border-color: var(--msp-border) !important;
    border-radius: 14px !important;
    box-shadow: none !important;
}
.ms-product-category-card:hover {
    border-color: #b9d2f5 !important;
    box-shadow: 0 9px 20px rgba(15,23,42,.06) !important;
}

/* Barra de compra mobile */
.ms-mobile-buybar {
    border-top: 1px solid var(--msp-border) !important;
    background: rgba(255,255,255,.97) !important;
    box-shadow: 0 -10px 30px rgba(15,23,42,.10) !important;
    backdrop-filter: blur(14px);
}
.ms-mobile-buybar__options,
.ms-mobile-buybar__actions { gap: 8px !important; }
.ms-mobile-buybar__select,
.ms-mobile-buybar__qty {
    min-height: 44px !important;
    border-color: var(--msp-border-strong) !important;
    border-radius: 11px !important;
    background: #fff !important;
}
.ms-mobile-buybar__buy {
    min-height: 48px !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg,var(--msp-primary) 0%,var(--msp-primary-dark) 100%) !important;
    box-shadow: 0 7px 18px rgba(47,111,237,.22) !important;
}
.ms-mobile-buybar__icon-btn {
    border-color: var(--msp-border-strong) !important;
    border-radius: 11px !important;
    background: #fff !important;
}

/* Estados vazios */
.ms-component-state,
.ms-product-empty-info {
    border-color: var(--msp-border) !important;
    border-radius: 15px !important;
    color: var(--msp-text-soft) !important;
    background: #fbfcfe !important;
}

/* Tablet */
@media (max-width: 1160px) {
    .ms-product-grid {
        grid-template-columns: minmax(0,1fr) 360px !important;
        gap: 18px !important;
    }
    .ms-product-content-surface { padding: 24px !important; }
    .ms-product-gallery .ms-main-stage {
        height: 480px !important;
        min-height: 480px !important;
    }
    .ms-seller-inline { grid-template-columns: 1fr !important; }
    .ms-specs-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
    .ms-reviews-layout { grid-template-columns: 225px minmax(0,1fr) !important; }
}

/* Celular e tablet vertical */
@media (max-width: 1023px) {
    html, body {
        max-width: 100%;
        overflow-x: hidden;
    }
    .ms-product-page {
        padding-bottom: calc(154px + env(safe-area-inset-bottom));
    }
    .ms-product-topnav {
        width: 100% !important;
        min-height: 48px !important;
        margin: 0 !important;
        padding: 8px 12px !important;
        border-bottom: 1px solid #eef2f6;
        background: #fff;
    }
    .ms-product-topnav__trail { display: none !important; }
    .ms-product-topnav__catalog {
        width: 100% !important;
        justify-content: center !important;
        min-height: 36px !important;
        box-shadow: none !important;
    }
    .ms-product-layout {
        width: min(calc(100% - 20px),760px) !important;
    }
    .ms-product-grid {
        display: flex !important;
        flex-direction: column !important;
        gap: 0 !important;
    }
    .ms-product-main-column,
    .ms-product-sidebar { display: contents !important; }
    .ms-product-surface,
    .ms-product-payment-box,
    .ms-product-trust-wrap {
        margin-bottom: 12px;
        border: 1px solid var(--msp-border) !important;
        border-radius: 16px !important;
        box-shadow: 0 6px 20px rgba(15,23,42,.045) !important;
    }
    .ms-product-gallery { order: 1; }
    .ms-product-mobile-summary {
        order: 2;
        display: block !important;
        padding: 20px 18px !important;
    }
    .ms-product-buybox {
        order: 3;
        position: static !important;
    }
    .ms-product-urgency { order: 4; }
    .ms-product-seller-highlight {
        order: 5;
        display: block !important;
    }
    .ms-product-anchor-wrap {
        order: 6;
        position: static !important;
        margin-bottom: 12px;
    }
    .ms-product-details { order: 7; }
    .ms-product-payments {
        order: 8;
        padding: 0 !important;
    }
    .ms-product-trust-wrap { order: 9; }
    .ms-product-questions { order: 10; }
    .ms-product-reviews { order: 11; }
    .ms-product-content-surface { padding: 22px 18px !important; }
    .ms-product-gallery .ms-gallery-root { padding: 16px !important; }
    .ms-product-gallery .ms-gallery-container {
        flex-direction: column-reverse !important;
        gap: 13px !important;
    }
    .ms-product-gallery .ms-thumb-rail {
        width: 100% !important;
        max-height: none !important;
        flex-direction: row !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
    }
    .ms-product-gallery .ms-thumb-item {
        width: 56px !important;
        height: 56px !important;
        flex: 0 0 56px !important;
    }
    .ms-product-gallery .ms-main-stage {
        width: 100% !important;
        height: auto !important;
        min-height: 330px !important;
        aspect-ratio: 1 / 1 !important;
    }
    .ms-product-anchor-nav { padding: 7px !important; }
    .ms-product-anchor-nav a {
        min-height: 38px !important;
        padding-inline: 12px !important;
    }
    .ms-seller-inline { grid-template-columns: 1fr !important; }
    .ms-seller-inline__main { align-items: flex-start !important; }
    .ms-specs-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
    .ms-reviews-layout { grid-template-columns: 1fr !important; }
    .ms-reviews-summary {
        position: static !important;
        display: grid !important;
        grid-template-columns: minmax(180px,.75fr) minmax(0,1.25fr) !important;
        gap: 18px !important;
    }
    .ms-reviews-trust-note {
        grid-column: 1 / -1;
        margin-top: 0 !important;
    }
    .ms-product-payment-list,
    .ms-product-trust {
        display: grid !important;
        grid-template-columns: repeat(3,minmax(0,1fr)) !important;
        gap: 8px !important;
        padding: 12px 14px 14px !important;
    }
    .ms-product-payment-item,
    .ms-product-trust__item {
        min-height: 116px !important;
        padding: 12px 10px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: flex-start !important;
        border: 1px solid #e6ebf2 !important;
        border-radius: 13px !important;
        background: #fff !important;
    }
    .ms-product-payment-security { margin-top: 0 !important; }
    .ms-product-market-section {
        width: min(calc(100% - 20px),760px) !important;
        margin-top: 12px !important;
        border-radius: 16px !important;
    }
    .ms-product-market-section__head { padding: 15px 16px !important; }
    .ms-product-horizontal-scroll {
        padding: 14px 12px 18px !important;
        grid-auto-columns: minmax(165px,44vw) !important;
        gap: 10px !important;
    }
}

/* Celular */
@media (max-width: 640px) {
    .ms-product-layout { width: 100% !important; }
    .ms-product-surface,
    .ms-product-payment-box,
    .ms-product-trust-wrap {
        margin-bottom: 8px;
        border-inline: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }
    .ms-product-content-surface { padding: 20px 15px !important; }
    .ms-product-section-head { gap: 10px !important; }
    .ms-product-section-title { font-size: 20px !important; }
    .ms-product-section-subtitle {
        margin-left: 14px !important;
        font-size: 10px !important;
    }
    .ms-product-section-badge { display: none !important; }
    .ms-product-gallery .ms-gallery-root { padding: 12px !important; }
    .ms-product-gallery .ms-main-stage {
        min-height: 290px !important;
        border-radius: 14px !important;
    }
    .ms-product-gallery .ms-thumb-item {
        width: 52px !important;
        height: 52px !important;
        flex-basis: 52px !important;
    }
    .ms-product-anchor-wrap { border-radius: 0 !important; }
    .ms-product-anchor-nav { padding-inline: 10px !important; }
    .ms-product-anchor-nav a { font-size: 9px !important; }
    .ms-product-urgency { padding: 12px 14px !important; }
    .ms-product-urgency .ms-urgency-container {
        flex-direction: column !important;
        gap: 9px !important;
        text-align: center !important;
    }
    .ms-seller-inline__main,
    .ms-seller-inline__side {
        padding: 15px !important;
        border-radius: 14px !important;
    }
    .ms-seller-inline__main {
        display: grid !important;
        grid-template-columns: 58px minmax(0,1fr) !important;
        gap: 12px !important;
    }
    .ms-seller-inline__avatar {
        width: 58px !important;
        height: 58px !important;
        flex-basis: 58px !important;
        border-radius: 14px !important;
    }
    .ms-seller-inline__title-row { gap: 7px !important; }
    .ms-seller-inline__title-row h3 { font-size: 17px !important; }
    .ms-seller-inline__badge {
        padding: 5px 8px !important;
        font-size: 7px !important;
    }
    .ms-seller-inline__copy p,
    .ms-seller-inline__chips {
        grid-column: 1 / -1;
    }
    .ms-seller-inline__copy p { font-size: 11px !important; }
    .ms-seller-inline__chips span {
        min-height: 31px !important;
        font-size: 8px !important;
    }
    .ms-seller-inline__stats {
        grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    }
    .ms-seller-inline__stats strong { font-size: 17px !important; }
    .ms-details-group {
        padding: 15px !important;
        border-radius: 14px !important;
    }
    .ms-details-group__head { align-items: flex-start !important; }
    .ms-details-group__head h3 { font-size: 16px !important; }
    .ms-details-group__head > small { display: none !important; }
    .ms-specs-grid { grid-template-columns: 1fr !important; }
    .ms-spec-card { min-height: 72px !important; }
    .ms-product-description { border-radius: 14px !important; }
    .ms-product-description__head { padding: 15px !important; }
    .ms-product-description__head > span {
        width: 38px !important;
        height: 38px !important;
        flex-basis: 38px !important;
    }
    .ms-product-description__head h3 { font-size: 16px !important; }
    .ms-description-collapse { padding: 15px !important; }
    .ms-product-description__body {
        font-size: 13px !important;
        line-height: 1.72 !important;
    }
    .ms-description-collapse .ms-collapse-overlay {
        left: 15px !important;
        right: 15px !important;
    }
    .ms-section-component-head {
        grid-template-columns: 40px minmax(0,1fr) !important;
        gap: 11px !important;
    }
    .ms-section-component-head__icon {
        width: 40px !important;
        height: 40px !important;
        border-radius: 12px !important;
        font-size: 15px !important;
    }
    .ms-section-component-head__copy h2 { font-size: 19px !important; }
    .ms-section-component-head__copy p { font-size: 10px !important; }
    .ms-section-component-head__meta { display: none !important; }
    .ms-question-form { padding: 14px !important; }
    .ms-question-form textarea { min-height: 104px !important; }
    .ms-question-form__footer {
        align-items: stretch !important;
        flex-direction: column !important;
        gap: 8px !important;
    }
    .ms-question-form__footer button { width: 100% !important; }
    .ms-question-suggestions {
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        padding-bottom: 2px;
        scrollbar-width: none;
    }
    .ms-question-suggestions::-webkit-scrollbar { display: none; }
    .ms-question-suggestions button { flex: 0 0 auto; }
    .ms-question-item { padding: 15px !important; }
    .ms-question-item__answer {
        margin-left: 0 !important;
        padding: 13px !important;
    }
    .ms-question-item__pending { margin-left: 0 !important; }
    .ms-reviews-summary {
        display: block !important;
        padding: 16px !important;
    }
    .ms-reviews-kpis { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
    .ms-reviews-content__head {
        align-items: flex-start !important;
        flex-direction: column !important;
        gap: 5px !important;
    }
    .ms-review-card { padding: 15px !important; }
    .ms-review-card__head {
        flex-direction: column !important;
        gap: 10px !important;
    }
    .ms-review-card__meta {
        align-items: flex-start !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
    }
    .ms-review-card__footer {
        align-items: flex-start !important;
        flex-direction: column !important;
    }
    .ms-product-payment-list,
    .ms-product-trust {
        grid-template-columns: 1fr !important;
    }
    .ms-product-payment-item,
    .ms-product-trust__item {
        min-height: 0 !important;
        flex-direction: row !important;
        align-items: center !important;
        padding: 12px !important;
    }
    .ms-product-payment-box__head,
    .ms-product-trust__head { padding-inline: 15px !important; }
    .ms-product-market-section {
        width: 100% !important;
        border-inline: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }
    .ms-product-market-section__head {
        min-height: 66px !important;
        padding: 13px 14px !important;
    }
    .ms-product-market-section__head p { display: none !important; }
    .ms-product-market-section__link { display: none !important; }
    .ms-product-horizontal-scroll {
        padding: 13px 10px 16px !important;
        grid-auto-columns: minmax(158px,46vw) !important;
        gap: 9px !important;
    }
}

@media (max-width: 390px) {
    .ms-seller-inline__chips span {
        width: 100% !important;
        justify-content: flex-start !important;
    }
    .ms-seller-inline__stats strong { font-size: 15px !important; }
    .ms-seller-inline__stats span { font-size: 6px !important; }
    .ms-reviews-kpis { grid-template-columns: 1fr !important; }
    .ms-product-gallery .ms-main-stage { min-height: 270px !important; }
}
