/* ==========================================================================
   BOTPULSE — FIXES (responsividade, tipografia, plataformas, toasts, modais)
   Carregado POR ÚLTIMO. Somente correções pontuais; nenhum redesign.
   ========================================================================== */

/* 1. Guarda contra rolagem horizontal da página e controle de visibilidade */
[hidden],
body [hidden],
.bp-v40-modal-backdrop[hidden],
#bp-v40-topup-modal[hidden] {
    display: none !important;
}

html,
body {
    max-width: 100%;
    overflow-x: clip;
}

body.bp-v40-body img,
body.bp-v40-body svg,
body.bp-v40-body video {
    max-width: 100%;
}

/* Flex/grid filhos precisam poder encolher (evita cortes e overflow) */
.bp-v40-main,
.bp-v40-main > *,
.bp-v40-promo-grid > *,
.bp-v40-card,
.bp-v40-card__head > *,
.bp-v40-header__inner > *,
.bp-v40-header__right > * {
    min-width: 0;
}

/* Tabelas largas rolam dentro do próprio contêiner, não na página */
.bp-v40-main table {
    max-width: 100%;
}

.bp-v40-main .bp-table-wrap,
.bp-v40-main .bp-table-scroll,
.bp-v40-main .bp-panel:has(> table) {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* 2. Tipografia SaaS Profissional de Alta Densidade (Linear / Stripe / Vercel style) */
body.bp-v40-body {
    font-size: 13px !important;
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
}

/* Sidebar Navigation */
body.bp-v40-body .bp-v40-sidebar-nav a,
body.bp-v40-body .bp-v40-sidebar-nav button,
body.bp-v40-body .bp-v40-nav-item {
    font-size: 12.5px !important;
    height: 42px !important;
    min-height: 42px !important;
    gap: 11px !important;
    padding: 0 12px !important;
}

body.bp-v40-body .bp-v40-nav-item__icon,
body.bp-v40-body .bp-v40-nav-item__icon svg {
    width: 18px !important;
    height: 18px !important;
}

body.bp-v40-body .bp-v40-sidebar-nav a > span:not([aria-hidden]) {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.bp-v40-body .bp-v40-sidebar-nav__heading {
    font-size: 10px !important;
    letter-spacing: 0.08em !important;
    padding: 4px 10px !important;
}

body.bp-v40-body .bp-v40-promo-card {
    padding: 12px !important;
    gap: 4px !important;
}

body.bp-v40-body .bp-v40-promo-card__title {
    font-size: 12px !important;
}

body.bp-v40-body .bp-v40-promo-card__desc {
    font-size: 11px !important;
    line-height: 1.35 !important;
}

body.bp-v40-body .bp-v40-promo-card__btn {
    height: 32px !important;
    font-size: 11.5px !important;
    border-radius: 8px !important;
}

/* Header Elements */
body.bp-v40-body .bp-v40-search input {
    font-size: 12.5px !important;
}

body.bp-v40-body .bp-v40-search kbd {
    font-size: 10px !important;
    padding: 1px 5px !important;
}

body.bp-v40-body .bp-v40-wallet-chip__label {
    font-size: 9.5px !important;
}

body.bp-v40-body .bp-v40-wallet-chip__val {
    font-size: 13.5px !important;
}

body.bp-v40-body .bp-v40-lang__code,
body.bp-v40-body .bp-v40-profile__copy strong {
    font-size: 12px !important;
}

body.bp-v40-body .bp-v40-profile__copy small {
    font-size: 10.5px !important;
}

/* Step Circle & Card Titles */
body.bp-v40-body .bp-v40-card__title,
body.bp-v40-body .bp-v40-side-title,
body.bp-v40-body .bp-v40-card-head h2 {
    font-size: 14.5px !important;
    font-weight: 600 !important;
    letter-spacing: -0.01em !important;
    line-height: 1.3 !important;
}

body.bp-v40-body .bp-v40-step-circle {
    width: 22px !important;
    height: 22px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
}

/* Form Labels & Inline Filters */
body.bp-v40-body .bp-v40-label,
body.bp-v40-body .bp-v40-field__label,
body.bp-v40-body .bp-v40-form-group > label {
    font-size: 11.5px !important;
    font-weight: 600 !important;
    color: var(--bp-v41-text-2, #94a3b8) !important;
    letter-spacing: 0.01em !important;
}

body.bp-v40-body .bp-v40-inline-search {
    height: 26px !important;
    padding: 0 8px !important;
    border-radius: 6px !important;
}

body.bp-v40-body .bp-v40-inline-search input {
    font-size: 11px !important;
    width: 110px !important;
}

body.bp-v40-body .bp-v40-unit-pill {
    font-size: 10px !important;
    padding: 1px 6px !important;
}

body.bp-v40-body .bp-v40-help-note,
body.bp-v40-body .bp-v40-limits-row {
    font-size: 11px !important;
    color: var(--bp-v41-text-muted, #64748b) !important;
}

/* Inputs, Selects & Controls */
body.bp-v40-body .bp-v40-select-box,
body.bp-v40-body .bp-v40-link-box,
body.bp-v40-body .bp-v40-stepper {
    height: 44px !important;
    border-radius: 10px !important;
    padding: 0 10px !important;
}

body.bp-v40-body .bp-v40-select-box__native,
body.bp-v40-body .bp-v40-link-box input,
body.bp-v40-body .bp-v40-input-box input,
body.bp-v40-body .bp-v40-main input[type="text"],
body.bp-v40-body .bp-v40-main input[type="url"],
body.bp-v40-body .bp-v40-main input[type="number"],
body.bp-v40-body .bp-v40-main select,
body.bp-v40-body .bp-v40-main textarea {
    font-size: 12.5px !important;
    font-weight: 500 !important;
}

body.bp-v40-body .bp-v40-select-box__native option {
    font-size: 12.5px !important;
    padding: 6px 10px !important;
}

body.bp-v40-body .bp-v40-select-box__price-badge {
    padding: 3px 8px !important;
    border-radius: 6px !important;
}

body.bp-v40-body .bp-v40-select-box__price-badge strong {
    font-size: 11.5px !important;
}

body.bp-v40-body .bp-v40-select-box__price-badge small {
    font-size: 10px !important;
}

body.bp-v40-body .bp-v40-stepper {
    grid-template-columns: 40px minmax(0, 1fr) 40px !important;
    padding: 0 !important;
}

body.bp-v40-body .bp-v40-stepper button {
    font-size: 16px !important;
}

body.bp-v40-body .bp-v40-stepper input {
    font-size: 13px !important;
    font-weight: 600 !important;
}

body.bp-v40-body .bp-v40-chips button {
    height: 30px !important;
    padding: 0 10px !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    border-radius: 8px !important;
}

body.bp-v40-body .bp-v40-channel-card {
    padding: 8px 10px !important;
    border-radius: 10px !important;
}

body.bp-v40-body .bp-v40-channel-card__avatar {
    width: 40px !important;
    height: 40px !important;
    border-radius: 9999px !important;
    overflow: hidden !important;
    background: rgba(148, 163, 184, 0.08) !important;
    flex-shrink: 0 !important;
    transition: box-shadow 0.2s ease !important;
}

body.bp-v40-body .bp-v40-channel-card__avatar img {
    width: 100% !important;
    height: 100% !important;
    border-radius: 9999px !important;
    object-fit: cover !important;
    display: block !important;
}

body.bp-v40-body .bp-v40-channel-card__avatar.bp-avatar-loading {
    position: relative;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.04) 0%, rgba(255, 255, 255, 0.16) 50%, rgba(255, 255, 255, 0.04) 100%);
    background-size: 200% 100%;
    animation: bpAvatarSkeleton 1.2s infinite ease-in-out !important;
}

body.bp-v40-body .bp-v40-channel-card__avatar.bp-avatar-loading img {
    opacity: 0.25 !important;
}

body.bp-v40-body .bp-v40-channel-card__avatar.is-verified {
    box-shadow: 0 0 0 2px rgba(0, 233, 160, 0.7), 0 0 10px rgba(0, 233, 160, 0.35) !important;
}

@keyframes bpAvatarSkeleton {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

body.bp-v40-body .bp-v40-channel-card__meta strong {
    font-size: 12px !important;
}

body.bp-v40-body .bp-v40-channel-card__handle,
body.bp-v40-body .bp-v40-channel-card__status {
    font-size: 10.5px !important;
}

body.bp-v40-body .bp-v40-channel-card__status[data-state="success"] i,
body.bp-v40-body .bp-dot-green {
    background-color: #00E9A0 !important;
    box-shadow: 0 0 8px rgba(0, 233, 160, 0.8) !important;
}

body.bp-v40-body .bp-v40-channel-card__status[data-state="warning"] i,
body.bp-v40-body .bp-dot-amber {
    background-color: #f59e0b !important;
    box-shadow: 0 0 8px rgba(245, 158, 11, 0.8) !important;
}

body.bp-v40-body .bp-v40-channel-card__status[data-state="error"] i {
    background-color: #ef4444 !important;
    box-shadow: 0 0 8px rgba(239, 68, 68, 0.8) !important;
}

body.bp-v40-body .bp-v40-channel-card__status[data-state="loading"] i {
    background-color: #7338FF !important;
    box-shadow: 0 0 8px rgba(115, 56, 255, 0.8) !important;
    animation: bpDotPulse 1s infinite alternate !important;
}

@keyframes bpDotPulse {
    0% { transform: scale(0.85); opacity: 0.6; }
    100% { transform: scale(1.2); opacity: 1; }
}

body.bp-v40-body .bp-v40-channel-card__toggle {
    height: 28px !important;
    padding: 0 8px !important;
    font-size: 11px !important;
    border-radius: 6px !important;
}

/* Primary Form Action Button */
body.bp-v40-body .bp-v40-main-cta {
    height: 46px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    border-radius: 11px !important;
    gap: 8px !important;
}

/* Right Column (Highlights & Order Summary) */
body.bp-v40-body .bp-v40-hl-icon {
    width: 28px !important;
    height: 28px !important;
    border-radius: 8px !important;
}

body.bp-v40-body .bp-v40-hl-icon svg {
    width: 15px !important;
    height: 15px !important;
}

body.bp-v40-body .bp-v40-hl-copy span {
    font-size: 11px !important;
}

body.bp-v40-body .bp-v40-hl-copy strong {
    font-size: 12px !important;
    font-weight: 600 !important;
}

body.bp-v40-body .bp-v40-more-btn {
    height: 34px !important;
    font-size: 11.5px !important;
    border-radius: 8px !important;
}

body.bp-v40-body .bp-v40-details-box {
    font-size: 11.5px !important;
    line-height: 1.45 !important;
}

body.bp-v40-body .bp-v40-summary-top__item {
    font-size: 12px !important;
    line-height: 1.35 !important;
}

body.bp-v40-body .bp-v40-summary-top__unit {
    font-size: 11px !important;
}

body.bp-v40-body .bp-v40-summary-sub {
    font-size: 11px !important;
}

body.bp-v40-body .bp-v40-summary-total > span {
    font-size: 12px !important;
    font-weight: 600 !important;
}

body.bp-v40-body .bp-v40-summary-total__value {
    font-size: 20px !important;
    font-weight: 700 !important;
}

body.bp-v40-body .bp-v40-summary-note {
    font-size: 10.5px !important;
}

body.bp-v40-body .bp-v40-method-btn {
    padding: 8px 10px !important;
    border-radius: 9px !important;
    gap: 8px !important;
}

body.bp-v40-body .bp-v40-method-btn .bp-buy-method__icon {
    width: 26px !important;
    height: 26px !important;
    border-radius: 6px !important;
}

body.bp-v40-body .bp-v40-method-btn .bp-buy-method__icon svg {
    width: 14px !important;
    height: 14px !important;
}

body.bp-v40-body .bp-v40-method-btn strong {
    font-size: 11.5px !important;
    font-weight: 600 !important;
}

body.bp-v40-body .bp-v40-method-btn small {
    font-size: 10.5px !important;
}

body.bp-v40-body .bp-v40-order-now-btn {
    height: 44px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    border-radius: 11px !important;
}

body.bp-v40-body .bp-v40-card small,
body.bp-v40-body .bp-v40-card p {
    font-size: 11.5px;
}

/* 3. Faixa de plataformas: ícone + nome branco, uma única fileira ---------- */
.bp-v40-platforms-track {
    flex-wrap: nowrap !important;
}

.bp-platform-item,
.bp-v40-plat-item {
    width: 74px !important;
    min-width: 74px !important;
    max-width: 78px !important;
    height: auto !important;
    min-height: 68px !important;
    gap: 4px !important;
    padding: 7px 4px 6px !important;
    overflow: visible !important;
    border-radius: 10px !important;
    border: 1px solid transparent !important;
    box-sizing: border-box !important;
}

.bp-v40-plat-item__icon,
.bp-v40-plat-item__icon img {
    width: 28px !important;
    height: 28px !important;
    object-fit: contain !important;
}

.bp-v40-plat-item__name {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    font-size: 10.5px !important;
    line-height: 1.15 !important;
    text-align: center !important;
    white-space: nowrap !important;
    text-overflow: ellipsis !important;
    overflow: hidden !important;
    color: #FFFFFF !important;
    font-weight: 500 !important;
    margin-top: 2px !important;
}

.bp-v40-plat-item:not(.is-active) .bp-v40-plat-item__name {
    color: #E2E8F0 !important;
}

.bp-platform-item.is-active,
.bp-v40-plat-item.is-active {
    background: linear-gradient(180deg, rgba(115, 56, 255, 0.24) 0%, rgba(37, 99, 235, 0.18) 100%) !important;
    border: 1px solid rgba(139, 92, 246, 0.65) !important;
    box-shadow: 0 0 12px rgba(115, 56, 255, 0.3) !important;
}

.bp-platform-viewport {
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    scroll-snap-type: x proximity;
    scrollbar-width: none !important;
}

.bp-platform-viewport::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
}

.bp-v40-plat-item {
    scroll-snap-align: start;
}

@media (max-width: 600px) {
    .bp-platform-item,
    .bp-v40-plat-item {
        width: 66px !important;
        min-width: 66px !important;
        max-width: 68px !important;
        min-height: 64px !important;
        padding: 6px 3px 5px !important;
    }

    .bp-v40-plat-item__icon,
    .bp-v40-plat-item__icon img {
        width: 26px !important;
        height: 26px !important;
    }

    .bp-v40-plat-item__name {
        font-size: 10px !important;
    }

    /* No toque, o swipe substitui as setas */
    .bp-v40-platforms-bar {
        gap: 6px !important;
        padding: 8px !important;
    }
}

/* 4. Menu lateral / hambúrguer (tablet e mobile) -------------------------- */
@media (max-width: 1023px) {
    .bp-v40-sidebar {
        height: 100vh !important;
        height: 100dvh !important;
        max-width: calc(100vw - 40px) !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        overscroll-behavior: contain !important;
        -webkit-overflow-scrolling: touch;
        padding-bottom: calc(24px + env(safe-area-inset-bottom)) !important;
        visibility: hidden;
        transition: transform 0.22s ease, visibility 0s linear 0.22s !important;
    }

    .bp-v40-shell.is-mobile-sidebar-open .bp-v40-sidebar {
        visibility: visible;
        transition: transform 0.22s ease, visibility 0s !important;
    }

    .bp-v40-sidebar-nav {
        min-width: 0;
    }
}

/* 5. Notificações (toast) -------------------------------------------------- */
.bp-toast-region {
    position: fixed !important;
    z-index: 10001 !important;
    top: calc(var(--bp-v41-header-h, 64px) + 10px + env(safe-area-inset-top)) !important;
    right: 18px !important;
    bottom: auto !important;
    left: auto !important;
    width: min(380px, calc(100vw - 36px)) !important;
    height: auto !important;
    max-height: calc(100vh - 120px) !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    pointer-events: none !important;
}

.bp-toast {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 12px 14px !important;
    border-radius: 13px !important;
    background: rgb(15 22 41 / 97%) !important;
    border: 1px solid var(--bp-border) !important;
    box-shadow: 0 10px 25px rgb(0 0 0 / 45%) !important;
    pointer-events: auto !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

.bp-toast__message {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    overflow-wrap: anywhere !important;
}

.bp-toast__close {
    flex: 0 0 auto !important;
}

@media (max-width: 600px) {
    .bp-toast-region {
        top: calc(8px + env(safe-area-inset-top)) !important;
        left: 50% !important;
        right: auto !important;
        bottom: auto !important;
        transform: translateX(-50%) !important;
        width: calc(100vw - 24px) !important;
    }
}

/* 6. Modais centralizados e nunca maiores que a viewport ------------------- */
[hidden],
.bp-v40-modal-backdrop[hidden],
.bp-v40-modal-backdrop.is-hidden,
.bp-pay-dialog-backdrop[hidden],
.bp-pay-dialog-backdrop.is-hidden {
    display: none !important;
}

.bp-pay-dialog-backdrop {
    padding: max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom)) !important;
}

.bp-pay-dialog {
    max-width: min(440px, calc(100vw - 32px)) !important;
    max-height: calc(100vh - 32px) !important;
    max-height: calc(100dvh - 32px) !important;
    margin: auto !important;
}

.bp-v40-modal-backdrop {
    padding: max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom)) !important;
    overflow-x: hidden !important;
}

.bp-v40-modal {
    width: 100% !important;
    max-width: min(440px, calc(100vw - 32px)) !important;
    max-height: calc(100vh - 32px) !important;
    max-height: calc(100dvh - 32px) !important;
    display: flex !important;
    flex-direction: column !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    margin: auto !important;
}

.bp-v40-modal__body {
    min-height: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain !important;
    box-sizing: border-box !important;
    word-break: break-word !important;
}

.bp-v40-modal__head {
    box-sizing: border-box !important;
    min-width: 0 !important;
}

.bp-v40-modal__head > div {
    min-width: 0 !important;
    flex: 1 1 auto !important;
}

.bp-v40-modal__head h2 {
    word-break: break-word !important;
}

.bp-v40-modal__balance-bar {
    box-sizing: border-box !important;
    min-width: 0 !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

.bp-v40-topup-method-pill {
    box-sizing: border-box !important;
    min-width: 0 !important;
    max-width: 100% !important;
}

.bp-v40-topup-method-pill > div {
    min-width: 0 !important;
    flex: 1 1 auto !important;
}

.bp-v40-topup-method-pill small {
    word-break: break-word !important;
}

.bp-v40-modal__foot {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
    padding-top: 12px !important;
    border-top: 1px solid var(--bp-v41-border) !important;
    box-sizing: border-box !important;
    min-width: 0 !important;
    width: 100% !important;
}

.bp-v40-modal__foot .bp-text-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    white-space: normal !important;
    word-break: break-word !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
}

.bp-v40-topup-unavailable {
    display: flex !important;
    align-items: flex-start !important;
    gap: 12px !important;
    padding: 14px 16px !important;
    border-radius: 12px !important;
    background: rgba(239, 68, 68, 0.08) !important;
    border: 1px solid rgba(239, 68, 68, 0.22) !important;
    box-sizing: border-box !important;
    min-width: 0 !important;
    max-width: 100% !important;
}

.bp-v40-topup-unavailable span {
    color: #ef4444 !important;
    flex-shrink: 0 !important;
}

.bp-v40-topup-unavailable div {
    min-width: 0 !important;
    flex: 1 1 auto !important;
}

.bp-v40-topup-unavailable strong {
    display: block !important;
    color: #fca5a5 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    margin-bottom: 4px !important;
}

.bp-v40-topup-unavailable p {
    margin: 0 !important;
    color: var(--bp-v41-text-muted, #94a3b8) !important;
    font-size: 12px !important;
    line-height: 1.5 !important;
    word-break: break-word !important;
}

.bp-v40-topup-pix {
    max-width: 100% !important;
    box-sizing: border-box !important;
}

.bp-v40-topup-pix textarea {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    word-break: break-all !important;
    resize: none !important;
}

@media (max-width: 420px) {
    .bp-pay-dialog {
        padding: 22px 18px !important;
    }
}

/* 7. Header compacto em telas estreitas ------------------------------------ */
@media (max-width: 480px) {
    .bp-v40-header__right {
        gap: 6px !important;
    }

    .bp-v40-wallet-chip__copy small {
        display: none;
    }
}

/* 8. Seletor de Idioma com Bandeiras Ultra-Realistas ----------------------- */
.bp-v29-lang__trigger-flag {
    width: 20px !important;
    height: 14px !important;
    object-fit: cover !important;
    border-radius: 3px !important;
    display: inline-block !important;
    vertical-align: middle !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.45) !important;
    flex-shrink: 0 !important;
}

.bp-v40-lang .bp-v29-lang__panel,
.bp-v29-lang .bp-v29-lang__panel {
    min-width: 195px !important;
    padding: 6px !important;
    background: #0D1630 !important;
    border: 1px solid rgba(115, 56, 255, 0.28) !important;
    border-radius: 12px !important;
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.55) !important;
}

.bp-v40-lang .bp-v29-lang__option,
.bp-v29-lang .bp-v29-lang__option {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 8px 10px !important;
    border-radius: 8px !important;
    text-decoration: none !important;
    gap: 10px !important;
    transition: background 150ms ease, color 150ms ease !important;
}

.bp-v29-lang__opt-item {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    min-width: 0 !important;
}

.bp-v29-lang__opt-flag {
    width: 22px !important;
    height: 15px !important;
    object-fit: cover !important;
    border-radius: 3px !important;
    flex-shrink: 0 !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.45) !important;
}

.bp-v29-lang__opt-name {
    font-size: 12.5px !important;
    font-weight: 500 !important;
    color: #e2e8f0 !important;
    white-space: nowrap !important;
}

.bp-v29-lang__opt-check {
    color: #00E9A0 !important;
    flex-shrink: 0 !important;
    margin-left: 8px !important;
}

.bp-v40-lang .bp-v29-lang__option:hover,
.bp-v40-lang .bp-v29-lang__option.is-active,
.bp-v29-lang .bp-v29-lang__option:hover,
.bp-v29-lang .bp-v29-lang__option.is-active {
    background: rgba(115, 56, 255, 0.22) !important;
}

/* 8.1 Seletor de Idiomas no Mobile Drawer (Langs) — Ultra Enterprise & Compact */
.bp-v29-drawer__langs {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 8px 0 10px 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.bp-v29-drawer__lang {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
    height: 32px !important;
    padding: 0 6px !important;
    border-radius: 8px !important;
    background: rgba(15, 23, 42, 0.55) !important;
    border: 1px solid rgba(148, 163, 184, 0.12) !important;
    color: #94A3B8 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    transition: all 0.15s ease !important;
    box-sizing: border-box !important;
}

.bp-v29-drawer__lang span {
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 0.02em !important;
    line-height: 1 !important;
    color: inherit !important;
}

.bp-v29-drawer__lang .bp-v29-lang__opt-flag,
.bp-v29-drawer__lang img {
    width: 16px !important;
    height: 11px !important;
    border-radius: 2px !important;
    object-fit: cover !important;
    flex-shrink: 0 !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.35) !important;
}

.bp-v29-drawer__lang:hover {
    background: rgba(255, 255, 255, 0.06) !important;
    border-color: rgba(148, 163, 184, 0.25) !important;
    color: #F1F5F9 !important;
}

.bp-v29-drawer__lang.is-active {
    background: rgba(115, 56, 255, 0.16) !important;
    border-color: rgba(139, 92, 246, 0.45) !important;
    color: #F8FAFC !important;
    box-shadow: 0 0 10px rgba(115, 56, 255, 0.15) !important;
}

.bp-v29-drawer__lang.is-active span {
    color: #FFFFFF !important;
    font-weight: 700 !important;
}

@media (max-width: 768px) {
    .bp-v29-lang__trigger {
        height: 32px !important;
        padding: 0 8px !important;
        gap: 5px !important;
    }
    .bp-v29-lang__code {
        font-size: 11px !important;
        font-weight: 600 !important;
    }
    .bp-v29-lang__trigger-flag {
        width: 16px !important;
        height: 11px !important;
    }
    .bp-v29-lang__option {
        padding: 6px 8px !important;
        gap: 8px !important;
    }
    .bp-v29-lang__opt-name {
        font-size: 11.5px !important;
    }
    .bp-v29-lang__opt-flag {
        width: 18px !important;
        height: 12px !important;
    }
}

@media (max-width: 380px) {
    .bp-v29-drawer__langs {
        gap: 4px !important;
    }
    .bp-v29-drawer__lang {
        height: 29px !important;
        padding: 0 4px !important;
        gap: 4px !important;
    }
    .bp-v29-drawer__lang span {
        font-size: 10px !important;
        letter-spacing: 0 !important;
    }
    .bp-v29-drawer__lang .bp-v29-lang__opt-flag,
    .bp-v29-drawer__lang img {
        width: 14px !important;
        height: 10px !important;
    }
}

/* ==========================================================================
   9. BOTPULSE MEUS PEDIDOS V5.0 — PIXEL PERFECT ENTERPRISE DASHBOARD
   ========================================================================== */

.bp-orders-v50 {
    width: 100%;
    box-sizing: border-box;
    padding-bottom: 32px;
}

/* 9.1 Header */
.bp-orders-v50__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 22px;
    flex-wrap: wrap;
}

.bp-orders-v50__head-left {
    display: flex;
    align-items: center;
    gap: 14px;
}

.bp-orders-v50__head-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: linear-gradient(135deg, rgba(115, 56, 255, 0.45), rgba(168, 85, 247, 0.18));
    border: 1px solid rgba(168, 85, 247, 0.38);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    box-shadow: 0 4px 16px rgba(115, 56, 255, 0.22);
    flex-shrink: 0;
}

.bp-orders-v50__title {
    font-size: 24px;
    font-weight: 700;
    color: #ffffff;
    letter-spacing: -0.3px;
    margin: 0;
    line-height: 1.2;
}

.bp-orders-v50__subtitle {
    font-size: 13.5px;
    color: #8E9BB0;
    margin: 4px 0 0 0;
}

.bp-orders-v50__export-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 38px;
    padding: 0 16px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 8px;
    color: #ffffff;
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.2s ease;
}

.bp-orders-v50__export-btn:hover {
    background: rgba(255, 255, 255, 0.09);
    border-color: rgba(255, 255, 255, 0.22);
    color: #ffffff;
}

/* 9.2 Status Cards (5 columns) */
.bp-orders-v50__cards-row {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 20px;
}

.bp-orders-v50__card {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 16px;
    background: #081020;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 12px;
    text-decoration: none;
    color: inherit;
    transition: all 0.2s ease;
    cursor: pointer;
    box-sizing: border-box;
}

.bp-orders-v50__card:hover {
    border-color: rgba(115, 56, 255, 0.4);
    background: #0B162C;
    transform: translateY(-1px);
}

.bp-orders-v50__card.is-active {
    border: 1.5px solid #7338FF;
    background: rgba(115, 56, 255, 0.1);
    box-shadow: 0 0 18px rgba(115, 56, 255, 0.28);
}

.bp-orders-v50__card-icon {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.bp-orders-v50__card-icon--all {
    background: rgba(115, 56, 255, 0.18);
    color: #C084FC;
}

.bp-orders-v50__card-icon--pending {
    background: rgba(255, 184, 41, 0.14);
    color: #FFB829;
}

.bp-orders-v50__card-icon--processing {
    background: rgba(56, 189, 248, 0.14);
    color: #38BDF8;
}

.bp-orders-v50__card-icon--completed {
    background: rgba(0, 230, 160, 0.14);
    color: #00E6A0;
}

.bp-orders-v50__card-icon--cancelled {
    background: rgba(255, 49, 94, 0.14);
    color: #FF315E;
}

.bp-orders-v50__card-info {
    min-width: 0;
    flex: 1 1 auto;
}

.bp-orders-v50__card-label {
    font-size: 11px;
    font-weight: 500;
    color: #8E9BB0;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.bp-orders-v50__card-count {
    font-size: 22px;
    font-weight: 700;
    color: #ffffff;
    line-height: 1.2;
    margin-top: 2px;
    display: block;
}

/* 9.3 Search and Filters Bar */
.bp-orders-v50__filters-bar {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 20px;
    flex-wrap: wrap;
}

.bp-orders-v50__search-box {
    flex: 1 1 340px;
    min-width: 240px;
    position: relative;
}

.bp-orders-v50__search-input {
    width: 100%;
    height: 42px;
    background: #081020;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 10px;
    padding: 0 14px 0 38px;
    color: #ffffff;
    font-size: 13px;
    outline: none;
    box-sizing: border-box;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.bp-orders-v50__search-input:focus {
    border-color: #7338FF;
    box-shadow: 0 0 0 2px rgba(115, 56, 255, 0.2);
}

.bp-orders-v50__search-input::placeholder {
    color: #64748B;
}

.bp-orders-v50__search-icon {
    position: absolute;
    left: 13px;
    top: 50%;
    transform: translateY(-50%);
    color: #64748B;
    pointer-events: none;
}

.bp-orders-v50__select-box {
    position: relative;
    display: flex;
    align-items: center;
    min-width: 195px;
    flex-shrink: 0;
}

.bp-orders-v50__select {
    width: 100%;
    height: 42px;
    background: #081020;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 10px;
    padding: 0 32px 0 36px;
    color: #CBD5E1;
    font-size: 13px;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    outline: none;
    box-sizing: border-box;
    transition: border-color 0.2s ease;
}

.bp-orders-v50__select:focus {
    border-color: #7338FF;
}

.bp-orders-v50__select-icon {
    position: absolute;
    left: 12px;
    color: #64748B;
    pointer-events: none;
}

.bp-orders-v50__select-chevron {
    position: absolute;
    right: 12px;
    color: #64748B;
    pointer-events: none;
}

.bp-orders-v50__clear-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 42px;
    padding: 0 14px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 10px;
    color: #94A3B8;
    font-size: 12.5px;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
    box-sizing: border-box;
}

.bp-orders-v50__clear-btn:hover {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.18);
    color: #ffffff;
}

/* 9.4 Table Card */
.bp-orders-v50__table-card {
    background: #070E1E;
    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.35);
}

.bp-orders-v50__table-wrap {
    overflow-x: auto;
    width: 100%;
    -webkit-overflow-scrolling: touch;
}

.bp-orders-v50__table {
    width: 100%;
    border-collapse: collapse;
    text-align: left;
}

.bp-orders-v50__th {
    font-size: 10.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #64748B;
    padding: 13px 18px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    background: rgba(255, 255, 255, 0.015);
    white-space: nowrap;
    user-select: none;
}

.bp-orders-v50__th span {
    vertical-align: middle;
}

.bp-orders-v50__th svg {
    margin-left: 3px;
    vertical-align: middle;
    color: #475569;
}

.bp-orders-v50__td {
    padding: 13px 18px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.04);
    vertical-align: middle;
    font-size: 13px;
    color: #E2E8F0;
    background: transparent;
}

.bp-orders-v50__tr:hover .bp-orders-v50__td {
    background: rgba(255, 255, 255, 0.018);
}

.bp-orders-v50__tr:last-child .bp-orders-v50__td {
    border-bottom: none;
}

/* 9.5 Specific Columns */
.bp-orders-v50__order-cell {
    display: flex;
    flex-direction: column;
}

.bp-orders-v50__uid-row {
    display: flex;
    align-items: center;
    gap: 6px;
}

.bp-orders-v50__uid {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    font-size: 12.5px;
    font-weight: 600;
    color: #ffffff;
    white-space: nowrap;
}

.bp-orders-v50__copy-btn {
    background: none;
    border: none;
    padding: 3px;
    color: #64748B;
    cursor: pointer;
    border-radius: 4px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: color 0.15s ease, background 0.15s ease;
}

.bp-orders-v50__copy-btn:hover {
    color: #C084FC;
    background: rgba(115, 56, 255, 0.15);
}

.bp-orders-v50__subtext {
    font-size: 11px;
    color: #64748B;
    display: block;
    margin-top: 2px;
}

/* Service cell */
.bp-orders-v50__service-cell {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 200px;
}

.bp-orders-v50__service-icon-box {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.06);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    padding: 6px;
    box-sizing: border-box;
}

.bp-orders-v50__service-icon-box img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.bp-orders-v50__service-icon-box--twitch {
    background: rgba(145, 70, 255, 0.18);
    border: 1px solid rgba(145, 70, 255, 0.32);
}

.bp-orders-v50__service-icon-box--instagram {
    background: rgba(225, 48, 108, 0.18);
    border: 1px solid rgba(225, 48, 108, 0.32);
}

.bp-orders-v50__service-icon-box--youtube {
    background: rgba(255, 0, 0, 0.18);
    border: 1px solid rgba(255, 0, 0, 0.32);
}

.bp-orders-v50__service-icon-box--tiktok {
    background: rgba(0, 242, 234, 0.14);
    border: 1px solid rgba(0, 242, 234, 0.3);
}

.bp-orders-v50__service-icon-box--kick {
    background: rgba(83, 252, 24, 0.14);
    border: 1px solid rgba(83, 252, 24, 0.3);
}

.bp-orders-v50__service-meta {
    min-width: 0;
}

.bp-orders-v50__service-title {
    font-size: 13px;
    font-weight: 600;
    color: #ffffff;
    line-height: 1.3;
    display: block;
    max-width: 250px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bp-orders-v50__more-badge {
    color: #C084FC !important;
}

.bp-orders-v50__target-url {
    max-width: 230px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Platform badge */
.bp-orders-v50__platform-badge {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 12.5px;
    color: #CBD5E1;
    white-space: nowrap;
}

.bp-orders-v50__platform-badge img {
    flex-shrink: 0;
}

/* Date cell */
.bp-orders-v50__date-cell {
    display: flex;
    flex-direction: column;
}

.bp-orders-v50__date-main {
    font-size: 12.5px;
    color: #E2E8F0;
    white-space: nowrap;
}

/* Units & Total */
.bp-orders-v50__units {
    font-size: 13px;
    font-weight: 500;
    color: #E2E8F0;
}

.bp-orders-v50__total {
    font-size: 13px;
    font-weight: 700;
    color: #ffffff;
    white-space: nowrap;
}

/* Status pills */
.bp-orders-v50__status-pill {
    display: inline-flex;
    align-items: center;
    height: 26px;
    padding: 0 10px;
    border-radius: 20px;
    font-size: 11.5px;
    font-weight: 600;
    white-space: nowrap;
    gap: 6px;
}

.bp-orders-v50__status-dot {
    font-size: 8px;
    line-height: 1;
}

.bp-orders-v50__status-pill--paid,
.bp-orders-v50__status-pill--completed {
    background: rgba(0, 230, 160, 0.1);
    border: 1px solid rgba(0, 230, 160, 0.3);
    color: #00E6A0;
}

.bp-orders-v50__status-pill--awaiting {
    background: rgba(255, 184, 41, 0.1);
    border: 1px solid rgba(255, 184, 41, 0.3);
    color: #FFB829;
}

.bp-orders-v50__status-pill--processing {
    background: rgba(56, 189, 248, 0.1);
    border: 1px solid rgba(56, 189, 248, 0.3);
    color: #38BDF8;
}

.bp-orders-v50__status-pill--cancelled {
    background: rgba(255, 49, 94, 0.1);
    border: 1px solid rgba(255, 49, 94, 0.3);
    color: #FF315E;
}

/* Actions cell */
.bp-orders-v50__actions-cell {
    display: flex;
    align-items: center;
    gap: 6px;
    white-space: nowrap;
}

.bp-orders-v50__details-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 28px;
    padding: 0 12px;
    background: rgba(115, 56, 255, 0.12);
    border: 1px solid rgba(115, 56, 255, 0.35);
    border-radius: 6px;
    color: #C084FC;
    font-size: 11.5px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.2s ease;
}

.bp-orders-v50__details-btn:hover {
    background: rgba(115, 56, 255, 0.25);
    color: #ffffff;
    border-color: rgba(115, 56, 255, 0.6);
}

.bp-orders-v50__kebab-wrap {
    position: relative;
}

.bp-orders-v50__kebab-btn {
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 6px;
    color: #8E9BB0;
    cursor: pointer;
    transition: all 0.2s ease;
}

.bp-orders-v50__kebab-btn:hover {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.08);
}

.bp-orders-v50__kebab-menu {
    position: absolute;
    right: 0;
    top: 32px;
    z-index: 60;
    background: #0A1428;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 8px;
    padding: 4px;
    min-width: 140px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.6);
}

.bp-orders-v50__kebab-item {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    padding: 8px 10px;
    font-size: 12px;
    color: #CBD5E1;
    text-decoration: none;
    background: none;
    border: none;
    cursor: pointer;
    border-radius: 6px;
    text-align: left;
    box-sizing: border-box;
}

.bp-orders-v50__kebab-item:hover {
    background: rgba(115, 56, 255, 0.2);
    color: #ffffff;
}

/* 9.6 Pagination Row */
.bp-orders-v50__pagination {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 18px;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    gap: 14px;
    flex-wrap: wrap;
}

.bp-orders-v50__pagination-info {
    font-size: 12px;
    color: #64748B;
}

.bp-orders-v50__pagination-nav {
    display: flex;
    align-items: center;
    gap: 4px;
}

.bp-orders-v50__page-btn {
    min-width: 28px;
    height: 28px;
    padding: 0 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 500;
    color: #94A3B8;
    text-decoration: none;
    border: 1px solid transparent;
    transition: all 0.2s ease;
    user-select: none;
}

.bp-orders-v50__page-btn:hover {
    background: rgba(255, 255, 255, 0.06);
    color: #ffffff;
}

.bp-orders-v50__page-btn.is-active {
    background: #7338FF !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    box-shadow: 0 0 10px rgba(115, 56, 255, 0.4) !important;
}

.bp-orders-v50__page-btn.is-disabled {
    opacity: 0.35;
    pointer-events: none;
}

.bp-orders-v50__per-page {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    color: #64748B;
}

.bp-orders-v50__per-page-select-box {
    position: relative;
    display: flex;
    align-items: center;
}

.bp-orders-v50__per-page-select {
    background: #081020;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 6px;
    color: #CBD5E1;
    font-size: 12px;
    height: 28px;
    padding: 0 22px 0 8px;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    outline: none;
}

.bp-orders-v50__per-page-chevron {
    position: absolute;
    right: 6px;
    color: #64748B;
    pointer-events: none;
}

/* 9.7 Empty State */
.bp-orders-v50__empty {
    padding: 48px 24px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.bp-orders-v50__empty-icon {
    margin-bottom: 18px;
}

.bp-orders-v50__empty-title {
    font-size: 18px;
    font-weight: 700;
    color: #ffffff;
    margin: 0 0 8px 0;
}

.bp-orders-v50__empty-desc {
    font-size: 13.5px;
    color: #8E9BB0;
    max-width: 460px;
    margin: 0 0 20px 0;
    line-height: 1.5;
}

.bp-orders-v50__empty-actions {
    display: flex;
    gap: 12px;
}

/* 9.8 Toast */
.bp-orders-v50__toast {
    position: fixed;
    bottom: 24px;
    right: 24px;
    z-index: 9999;
    display: flex;
    align-items: center;
    gap: 8px;
    background: #0A1428;
    border: 1px solid rgba(0, 230, 160, 0.4);
    border-radius: 8px;
    padding: 10px 16px;
    color: #ffffff;
    font-size: 13px;
    font-weight: 500;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5);
    transform: translateY(20px);
    opacity: 0;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.bp-orders-v50__toast.is-visible {
    transform: translateY(0);
    opacity: 1;
}

/* 9.9 Responsive Rules */
@media (max-width: 1080px) {
    .bp-orders-v50__cards-row {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    .bp-orders-v50__cards-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bp-orders-v50__select-box {
        min-width: 0;
        flex: 1 1 calc(50% - 6px);
    }

    .bp-orders-v50__clear-btn {
        width: 100%;
        justify-content: center;
    }

    /* Convert Table to Cards on Mobile */
    .bp-orders-v50__table thead {
        display: none;
    }

    .bp-orders-v50__table,
    .bp-orders-v50__table tbody,
    .bp-orders-v50__tr,
    .bp-orders-v50__td {
        display: block;
        width: 100%;
        box-sizing: border-box;
    }

    .bp-orders-v50__tr {
        background: #081020;
        border: 1px solid rgba(255, 255, 255, 0.08);
        border-radius: 12px;
        padding: 14px;
        margin-bottom: 12px;
    }

    .bp-orders-v50__td {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 8px 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.04);
    }

    .bp-orders-v50__td:last-child {
        border-bottom: none;
        padding-top: 12px;
    }

    .bp-orders-v50__td::before {
        content: attr(data-label);
        font-size: 11px;
        font-weight: 600;
        text-transform: uppercase;
        color: #64748B;
        letter-spacing: 0.3px;
    }

    .bp-orders-v50__service-cell {
        min-width: 0;
        text-align: right;
        justify-content: flex-end;
    }

    .bp-orders-v50__service-title {
        max-width: 180px;
    }

    .bp-orders-v50__order-cell {
        align-items: flex-end;
    }

    .bp-orders-v50__date-cell {
        align-items: flex-end;
    }
}

@media (max-width: 520px) {
    .bp-orders-v50__cards-row {
        grid-template-columns: 1fr;
    }

    .bp-orders-v50__select-box {
        flex: 1 1 100%;
    }

    .bp-orders-v50__pagination {
        flex-direction: column;
        align-items: center;
        gap: 12px;
    }
}

/* ==========================================================================
   10. BOTPULSE V6.0 ENTERPRISE GLOBAL UI/UX REFINEMENT SYSTEM
   (Linear / Stripe / Vercel Compact SaaS Standards)
   ========================================================================== */

/* 10.1 ESCALA TIPOGRÁFICA PROFISSIONAL REDUZIDA EM 10% (DESKTOP) ----------- */
html {
    font-size: 90% !important;
}

:root {
    --bp-v6-font-h1: 19px;
    --bp-v6-font-h2: 14.5px;
    --bp-v6-font-card: 11.7px;
    --bp-v6-font-body: 11.7px;
    --bp-v6-font-sidebar: 11.2px;
    --bp-v6-font-header: 10.8px;
    --bp-v6-font-btn: 11.2px;
    --bp-v6-font-input: 11.7px;
    --bp-v6-font-label: 10px;
    --bp-v6-font-desc: 10px;
    --bp-v6-font-table: 10.8px;
    --bp-v6-font-badge: 9.5px;
    --bp-v6-font-kpi: 15.3px;
}

/* Base Body Font Consistency */
body,
body.bp-v40-body,
.bp-body {
    font-size: var(--bp-v6-font-body) !important;
    line-height: 1.5 !important;
    font-weight: 400 !important;
    color: #94A3B8 !important;
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
}

/* 10.1.1 Título Principal (21px Desktop) */
h1,
.bp-v40-page-head h1,
.bp-account-heading h1,
.bp-v16-hero__title,
.bp-orders-v50__title,
.bp-panel__head h1,
.bp-quick-order__heading h1 {
    font-size: var(--bp-v6-font-h1) !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
    letter-spacing: -0.02em !important;
    color: #FFFFFF !important;
    margin: 0 !important;
}

.bp-v16-hero__title span,
.bp-v16-hero__name {
    font-size: inherit !important;
    font-weight: 700 !important;
}

/* 10.1.2 Título de Seção (16px Desktop) */
h2,
.bp-v16-section-title,
.bp-v40-card-head h2,
.bp-v40-side-title,
.bp-panel__head h2,
.bp-orders-v50__empty-title,
.bp-pix-instructions h2,
.bp-account-heading h2 {
    font-size: var(--bp-v6-font-h2) !important;
    line-height: 1.3 !important;
    font-weight: 700 !important;
    letter-spacing: -0.01em !important;
    color: #FFFFFF !important;
}

/* 10.1.3 Título de Card (13px Desktop) */
h3,
.bp-v16-kpi-card__title,
.bp-v40-card__title,
.bp-v40-promo-card__title,
.bp-card-title,
.bp-orders-v50__card-label,
.bp-payment-choice strong,
.bp-config-card h3,
.bp-summary-title {
    font-size: var(--bp-v6-font-card) !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em !important;
    color: #E2E8F0 !important;
}

/* 10.1.4 Valores Destacados e KPIs (17px Desktop) */
.bp-v16-kpi-card__value,
.bp-v40-wallet-chip__copy strong,
.bp-orders-v50__card-count,
.bp-orders-v50__total,
.bp-summary-total strong,
.bp-wallet-card > strong,
.bp-stat-value {
    font-size: var(--bp-v6-font-kpi) !important;
    font-weight: 700 !important;
    font-variant-numeric: tabular-nums !important;
    letter-spacing: -0.01em !important;
    line-height: 1.2 !important;
    color: #FFFFFF !important;
}

/* 10.1.5 Labels de Formulários e Eyebrows (11px Desktop) */
label,
.bp-label,
.bp-v40-label,
.bp-field__label,
.bp-form-group > label,
.bp-eyebrow,
.bp-v16-hero__eyebrow,
.bp-v40-sidebar-nav__heading,
.bp-account-nav__label {
    font-size: var(--bp-v6-font-label) !important;
    font-weight: 600 !important;
    letter-spacing: 0.04em !important;
    color: #8E9BB0 !important;
    text-transform: uppercase !important;
    line-height: 1.3 !important;
}

/* 10.1.6 Descrições e Textos Muted (11px Desktop) */
small,
.bp-subtext,
.bp-field-hint,
.bp-orders-v50__subtitle,
.bp-orders-v50__subtext,
.bp-table__sub,
.bp-v40-profile__copy small,
.bp-v40-wallet-chip__copy small,
.bp-v16-benefit-pill__copy small,
.bp-quick-order__footnote,
.bp-hint {
    font-size: var(--bp-v6-font-desc) !important;
    line-height: 1.4 !important;
    color: #64748B !important;
}

/* 10.1.7 Badges e Pills (10.5px Desktop) */
.bp-badge,
.bp-count-pill,
.bp-status-pill,
.bp-v50-badge,
.bp-orders-v50__status-pill,
.bp-v40-nav-item__badge,
.bp-filter-chip b {
    font-size: var(--bp-v6-font-badge) !important;
    font-weight: 600 !important;
    height: 24px !important;
    padding: 0 8px !important;
    border-radius: 999px !important;
    letter-spacing: 0.02em !important;
    white-space: nowrap !important;
}

/* 10.1.8 Tabelas (12px Desktop) */
.bp-table,
.bp-orders-v50__table {
    font-size: var(--bp-v6-font-table) !important;
}

.bp-table th,
.bp-orders-v50__th {
    font-size: 10.5px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    color: #64748B !important;
}

.bp-table td,
.bp-orders-v50__td {
    font-size: var(--bp-v6-font-table) !important;
    font-variant-numeric: tabular-nums !important;
}

/* 10.2 HEADER GLOBAL (LOGO NO CANTO ESQUERDO EM QUALQUER RESOLUÇÃO) ------- */
.bp-v40-header {
    height: 61px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    padding: 0 !important;
    margin: 0 !important;
}

.bp-v40-header__inner {
    height: 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    padding: 0 16px !important;
    box-sizing: border-box !important;
}

.bp-v40-header__left {
    display: flex !important;
    align-items: center !important;
    gap: 0 !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
}

.bp-v40-header__center {
    display: none !important;
}

.bp-v40-header__right {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    flex-shrink: 0 !important;
    margin-left: auto !important;
    padding: 0 !important;
}

/* NO COMPUTADOR (DESKTOP): REMOÇÃO TOTAL DE QUALQUER HAMBURGER */
@media (min-width: 901px) {
    .bp-menu-trigger,
    .bp-v40-hamburger,
    .bp-v40-hamburger--mobile,
    button[aria-controls="bp-mobile-drawer"],
    button[aria-controls="bp-v40-sidebar"] {
        display: none !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }
}

/* O hamburger do dashboard esquerdo foi removido completamente */
.bp-v40-hamburger {
    display: none !important;
}

/* Centralização do eixo vertical de todos os filhos do header */
.bp-v40-logo-link,
.bp-v40-search,
.bp-v40-wallet-chip,
.bp-v40-lang,
.bp-v40-notif,
.bp-v40-profile {
    align-self: center !important;
    margin: 0 !important;
}

/* 10.3 LOGOTIPO BOTPULSE OFICIAL (-10% PROPORÇÃO PERFEITA 4:1) ------------- */
.bp-v40-logo-svg,
.bp-v40-brand__svg,
.bp-brand img {
    height: 39px !important;
    max-height: 41px !important;
    width: auto !important;
    max-width: 195px !important;
    aspect-ratio: 4 / 1 !important;
    object-fit: contain !important;
    image-rendering: -webkit-optimize-contrast !important;
    display: block !important;
    flex-shrink: 0 !important;
}

.bp-v40-logo-link {
    display: inline-flex !important;
    align-items: center !important;
    text-decoration: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* 10.4 SIDEBAR E MENUS (-10% COMPACT SAAS NO DESKTOP) ---------------------- */
.bp-v40-sidebar-nav {
    display: flex !important;
    flex-direction: column !important;
    gap: 3px !important;
}

.bp-v40-sidebar-nav a,
.bp-v40-sidebar-nav button,
.bp-v40-nav-item {
    font-size: var(--bp-v6-font-sidebar) !important;
    height: 38px !important;
    min-height: 38px !important;
    max-height: 40px !important;
    padding: 0 11px !important;
    gap: 10px !important;
    border-radius: 8px !important;
    display: flex !important;
    align-items: center !important;
    box-sizing: border-box !important;
    text-decoration: none !important;
    color: #94A3B8 !important;
    font-weight: 500 !important;
    transition: background 0.16s ease, color 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease !important;
}

.bp-v40-nav-item:hover {
    background: rgba(148, 163, 184, 0.08) !important;
    color: #FFFFFF !important;
}

.bp-v40-nav-item.is-active {
    background: var(--bp-v41-grad-primary) !important;
    color: #FFFFFF !important;
    font-weight: 600 !important;
    border: 1px solid rgba(167, 139, 250, 0.35) !important;
    box-shadow: 0 6px 18px rgba(124, 58, 237, 0.3) !important;
}

.bp-v40-nav-item__icon {
    width: 18px !important;
    height: 18px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    color: inherit !important;
}

.bp-v40-nav-item__icon svg {
    width: 18px !important;
    height: 18px !important;
    vertical-align: middle !important;
}

.bp-v40-nav-item__label {
    flex: 1 1 auto !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    line-height: 1 !important;
}

.bp-v40-sidebar-nav__divider {
    height: 1px !important;
    background: rgba(119, 143, 196, 0.12) !important;
    margin: 10px 6px !important;
    border: none !important;
}

/* 10.5 PADRONIZAÇÃO DE BOTÕES (-10%) --------------------------------------- */
/* Botão Principal Desktop (40-41px) */
.bp-button--primary,
.bp-btn-primary,
.bp-v16-btn-primary,
.bp-v28-btn-checkout,
.bp-wallet-v3-btn-submit {
    height: 40px !important;
    min-height: 40px !important;
    max-height: 41px !important;
    padding: 0 16px !important;
    border-radius: 8px !important;
    font-size: var(--bp-v6-font-btn) !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    box-sizing: border-box !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    cursor: pointer !important;
    transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease !important;
}

.bp-button--primary:hover,
.bp-btn-primary:hover,
.bp-v16-btn-primary:hover {
    transform: translateY(-1px) !important;
}

/* Botão Secundário Desktop (36-38px) */
.bp-button--secondary,
.bp-btn-secondary,
.bp-v16-btn-secondary,
.bp-orders-v50__export-btn {
    height: 36px !important;
    min-height: 36px !important;
    max-height: 38px !important;
    padding: 0 14px !important;
    border-radius: 7px !important;
    font-size: var(--bp-v6-font-btn) !important;
    font-weight: 500 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    box-sizing: border-box !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    cursor: pointer !important;
}

/* Botão Compacto (29-32px) */
.bp-btn-compact,
.bp-table__link,
.bp-orders-v50__details-btn,
.bp-v40-promo-card__btn {
    height: 29px !important;
    min-height: 29px !important;
    max-height: 32px !important;
    padding: 0 10px !important;
    border-radius: 6px !important;
    font-size: 10.5px !important;
    font-weight: 600 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
    box-sizing: border-box !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

/* Botão Somente Ícone (34px) */
.bp-v40-notif__trigger,
.bp-icon-button,
.bp-v40-wallet-chip__add {
    width: 34px !important;
    height: 34px !important;
    border-radius: 8px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
}

/* 10.6 INPUTS, SELECTS E FORMULÁRIOS (ALTURA 40PX NO DESKTOP) -------------- */
input[type="text"],
input[type="search"],
input[type="number"],
input[type="email"],
input[type="password"],
input[type="url"],
select,
.bp-input,
.bp-select,
.bp-v40-search__input,
.bp-orders-v50__search-input,
.bp-orders-v50__select {
    height: 40px !important;
    min-height: 40px !important;
    max-height: 41px !important;
    font-size: var(--bp-v6-font-input) !important;
    padding: 0 13px !important;
    border-radius: 8px !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    background: #081020 !important;
    color: #FFFFFF !important;
    box-sizing: border-box !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

/* Inputs com ícone lateral */
.bp-v40-search__input,
.bp-orders-v50__search-input {
    padding-left: 38px !important;
}

.bp-orders-v50__select {
    padding-left: 36px !important;
    padding-right: 32px !important;
}

input:focus,
select:focus,
textarea:focus {
    border-color: #7338FF !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(115, 56, 255, 0.22) !important;
}

::placeholder {
    color: #64748B !important;
    opacity: 1 !important;
}

/* 10.6.1 MENU DROPDOWN DA CONTA (ESPAÇAMENTO REFINADO SAAS) ---------------- */
.bp-account-menu__panel,
.bp-v40-popover-panel.bp-account-menu__panel {
    width: 230px !important;
    padding: 6px !important;
    border-radius: 12px !important;
    background: #0B1329 !important;
    border: 1px solid #1E2D4A !important;
    box-shadow: 0 16px 36px rgba(2, 6, 23, 0.75) !important;
    box-sizing: border-box !important;
}

.bp-account-menu__head {
    display: flex !important;
    align-items: center !important;
    gap: 9px !important;
    padding: 8px 10px 10px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    margin-bottom: 4px !important;
}

.bp-account-menu__head strong {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #FFFFFF !important;
    line-height: 1.25 !important;
}

.bp-account-menu__head small {
    font-size: 10.5px !important;
    color: #8C9BB4 !important;
    line-height: 1.25 !important;
}

.bp-account-menu__panel nav {
    display: flex !important;
    flex-direction: column !important;
    gap: 1px !important;
    padding: 0 !important;
    margin: 0 !important;
}

.bp-account-menu__panel nav a {
    display: flex !important;
    align-items: center !important;
    height: 32px !important;
    min-height: 32px !important;
    padding: 0 10px !important;
    border-radius: 6px !important;
    font-size: 11.5px !important;
    font-weight: 500 !important;
    color: #94A3B8 !important;
    text-decoration: none !important;
    transition: background 0.15s ease, color 0.15s ease !important;
    box-sizing: border-box !important;
}

.bp-account-menu__panel nav a:hover {
    background: rgba(148, 163, 184, 0.1) !important;
    color: #FFFFFF !important;
}

.bp-account-menu__divider {
    height: 1px !important;
    background: rgba(255, 255, 255, 0.08) !important;
    margin: 4px 6px !important;
}

.bp-account-menu__foot {
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
    padding: 6px 4px 2px !important;
    margin-top: 4px !important;
    background: transparent !important;
}

.bp-account-menu__foot button {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    height: 30px !important;
    padding: 0 8px !important;
    border-radius: 6px !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    color: #F87171 !important;
    background: transparent !important;
    border: none !important;
    cursor: pointer !important;
    transition: background 0.15s ease !important;
    box-sizing: border-box !important;
}

.bp-account-menu__foot button:hover {
    background: rgba(248, 113, 113, 0.1) !important;
}

/* 10.7 RESPONSIVIDADE EM TABLET (600PX - 991PX) ---------------------------- */
@media (max-width: 991px) and (min-width: 601px) {
    :root {
        --bp-v6-font-h1: 20px;
        --bp-v6-font-h2: 15px;
        --bp-v6-font-sidebar: 12px;
        --bp-v6-font-kpi: 16px;
    }

    .bp-v40-header {
        height: 64px !important;
    }

    .bp-v40-header__inner {
        padding: 0 16px !important;
        gap: 12px !important;
    }

    .bp-v40-logo-svg,
    .bp-v40-brand__svg {
        height: 40px !important;
        max-width: 185px !important;
    }

    .bp-v40-sidebar-nav a,
    .bp-v40-nav-item {
        height: 40px !important;
        min-height: 40px !important;
        padding: 0 10px !important;
        gap: 10px !important;
    }
}

/* 10.8 RESPONSIVIDADE EM MOBILE (ATÉ 600PX) -------------------------------- */
@media (max-width: 600px) {
    :root {
        --bp-v6-font-h1: 19px;
        --bp-v6-font-h2: 15px;
        --bp-v6-font-sidebar: 13px;
        --bp-v6-font-btn: 13px;
        --bp-v6-font-label: 12px;
        --bp-v6-font-desc: 12px;
        --bp-v6-font-badge: 11px;
        --bp-v6-font-kpi: 16px;
    }

    /* Prevenção de Zoom Automático no iPhone: Inputs com 16px */
    input[type="text"],
    input[type="search"],
    input[type="number"],
    input[type="email"],
    input[type="password"],
    input[type="url"],
    select,
    textarea {
        font-size: 16px !important;
        height: 46px !important;
        min-height: 46px !important;
    }

    /* Header Mobile (56-64px) */
    .bp-v40-header {
        height: 60px !important;
    }

    .bp-v40-header__inner {
        padding: 0 12px !important;
        gap: 8px !important;
        grid-template-columns: auto 1fr auto !important;
    }

    .bp-v40-header__center {
        display: none !important;
    }

    .bp-v40-logo-svg,
    .bp-v40-brand__svg {
        height: 36px !important;
        max-width: 160px !important;
    }

    .bp-v40-hamburger {
        width: 36px !important;
        height: 36px !important;
    }

    /* Sidebar Mobile (Altura 44-48px) */
    .bp-v40-sidebar-nav a,
    .bp-v40-sidebar-nav button,
    .bp-v40-nav-item {
        height: 46px !important;
        min-height: 46px !important;
        padding: 0 14px !important;
        gap: 12px !important;
        border-radius: 10px !important;
    }

    /* Botões Principais no Mobile (46-48px para toque confortável) */
    .bp-button--primary,
    .bp-btn-primary,
    .bp-v16-btn-primary,
    .bp-v28-btn-checkout,
    .bp-wallet-v3-btn-submit {
        height: 46px !important;
        min-height: 46px !important;
        max-height: 48px !important;
        font-size: 13px !important;
    }

    .bp-button--secondary,
    .bp-btn-secondary,
    .bp-v16-btn-secondary {
        height: 42px !important;
        min-height: 42px !important;
    }

    /* Wallet Chip Compacto no Mobile */
    .bp-v40-wallet-chip {
        height: 38px !important;
        padding: 0 5px 0 8px !important;
        gap: 6px !important;
    }

    .bp-v40-wallet-chip__icon {
        width: 26px !important;
        height: 26px !important;
    }

    .bp-v40-wallet-chip__copy small {
        font-size: 9px !important;
    }

    .bp-v40-wallet-chip__copy strong {
        font-size: 13.5px !important;
    }

    .bp-v40-wallet-chip__add {
        width: 28px !important;
        height: 28px !important;
    }

    /* Profile Avatar no Mobile */
    .bp-v40-profile__trigger {
        height: 36px !important;
        padding: 0 !important;
        border: none !important;
        background: transparent !important;
    }

    .bp-v40-profile__copy,
    .bp-v40-profile__trigger svg {
        display: none !important;
    }

    .bp-v40-profile__avatar {
        width: 32px !important;
        height: 32px !important;
    }
}

/* 10.9 GUARDA GLOBAL CONTRA OVERFLOW E RESPEITO A SAFE AREAS --------------- */
html,
body {
    overflow-x: hidden !important;
    max-width: 100vw !important;
}

@supports (padding-top: env(safe-area-inset-top)) {
    .bp-v40-header {
        padding-top: env(safe-area-inset-top, 0) !important;
        height: calc(68px + env(safe-area-inset-top, 0)) !important;
    }

    @media (max-width: 600px) {
        .bp-v40-header {
            height: calc(60px + env(safe-area-inset-top, 0)) !important;
        }
    }
}

/* ==========================================================================
   11. BOTPULSE CARTEIRA PREMIUM V7.0 — SAAS ENTERPRISE DASHBOARD
   ========================================================================== */

.bp-wallet-v70 {
    width: 100%;
    box-sizing: border-box;
    padding-bottom: 32px;
}

/* 11.1 Cabeçalho Horizontal "Minha Carteira" */
.bp-wallet-v70__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 16px 20px;
    background: #081224;
    border: 1px solid #19345A;
    border-radius: 14px;
    margin-bottom: 20px;
    box-sizing: border-box;
    flex-wrap: wrap;
}

.bp-wallet-v70__header-left {
    display: flex;
    align-items: center;
    gap: 14px;
}

.bp-wallet-v70__header-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: linear-gradient(135deg, rgba(116, 40, 255, 0.35), rgba(0, 201, 255, 0.15));
    border: 1px solid rgba(116, 40, 255, 0.45);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 4px 16px rgba(116, 40, 255, 0.22);
}

.bp-wallet-v70__header-title {
    font-size: 21px !important;
    font-weight: 700 !important;
    color: #FFFFFF !important;
    letter-spacing: -0.02em !important;
    margin: 0 !important;
    line-height: 1.2 !important;
}

.bp-wallet-v70__header-desc {
    font-size: 12.5px !important;
    color: #9BAED2 !important;
    margin: 4px 0 0 0 !important;
}

.bp-wallet-v70__header-right {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
}

.bp-wallet-v70__currency-chip {
    display: inline-flex;
    align-items: center;
    height: 38px;
    padding: 0 14px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid #19345A;
    font-size: 11px;
    font-weight: 700;
    color: #9BAED2;
    letter-spacing: 0.05em;
    user-select: none;
}

.bp-wallet-v70__topup-btn,
.bp-wallet-v70__cta-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    height: 42px !important;
    padding: 0 18px !important;
    border-radius: 9px !important;
    background: linear-gradient(110deg, #BD00F5 0%, #7328FF 48%, #087CFF 100%) !important;
    color: #FFFFFF !important;
    font-size: 12.5px !important;
    font-weight: 600 !important;
    border: none !important;
    cursor: pointer !important;
    text-decoration: none !important;
    box-shadow: 0 6px 20px rgba(116, 40, 255, 0.35) !important;
    transition: transform 0.16s ease, box-shadow 0.16s ease !important;
}

.bp-wallet-v70__topup-btn:hover,
.bp-wallet-v70__cta-btn:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 8px 24px rgba(116, 40, 255, 0.48) !important;
}

/* 11.2 Alerta de Recarga Pendente */
.bp-wallet-v70__alert-pending {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 18px;
    border-radius: 12px;
    background: rgba(255, 185, 46, 0.08);
    border: 1px solid rgba(255, 185, 46, 0.35);
    margin-bottom: 20px;
    box-sizing: border-box;
}

.bp-wallet-v70__alert-icon {
    flex-shrink: 0;
}

.bp-wallet-v70__alert-body {
    flex: 1 1 auto;
    font-size: 12.5px;
    color: #E2E8F0;
    line-height: 1.4;
}

.bp-wallet-v70__alert-body strong {
    color: #FFB92E;
}

.bp-wallet-v70__alert-body p {
    margin: 2px 0 0 0;
    color: #9BAED2;
    font-size: 12px;
}

.bp-wallet-v70__alert-meta {
    display: inline-flex;
    align-items: center;
    margin-right: 6px;
    flex-shrink: 0;
}

.bp-wallet-v70__alert-timer {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    border-radius: 6px;
    background: rgba(255, 176, 32, 0.12);
    border: 1px solid rgba(255, 176, 32, 0.28);
    color: #FFB020;
    font-size: 11.5px;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.02em;
}

.bp-wallet-v70__alert-action {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    border-radius: 7px;
    background: rgba(255, 185, 46, 0.15);
    border: 1px solid rgba(255, 185, 46, 0.4);
    color: #FFB92E;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none;
    flex-shrink: 0;
    transition: all 0.15s ease;
}

.bp-wallet-v70__alert-action:hover {
    background: rgba(255, 185, 46, 0.25);
    color: #FFFFFF;
}

/* 11.3 Grid de Saldo Principal + Cards Financeiros */
.bp-wallet-v70__hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.75fr) minmax(0, 1.25fr);
    gap: 16px;
    margin-bottom: 24px;
}

.bp-wallet-v70__main-card {
    background: linear-gradient(115deg, #29085A 0%, #10183D 55%, #07356A 100%);
    border: 1px solid #19345A;
    border-radius: 14px;
    padding: 26px 28px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    overflow: hidden;
    box-sizing: border-box;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4);
}

.bp-wallet-v70__main-card-copy {
    z-index: 2;
    max-width: 60%;
}

.bp-wallet-v70__label {
    font-size: 10.5px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    color: #9BAED2 !important;
    text-transform: uppercase !important;
    display: block !important;
}

.bp-wallet-v70__balance-amount {
    font-size: 38px !important;
    font-weight: 800 !important;
    color: #FFFFFF !important;
    line-height: 1.15 !important;
    letter-spacing: -0.02em !important;
    margin: 8px 0 !important;
    display: block !important;
    font-variant-numeric: tabular-nums !important;
}

.bp-wallet-v70__balance-desc {
    font-size: 12.5px !important;
    color: #9BAED2 !important;
    margin: 0 0 16px 0 !important;
    line-height: 1.45 !important;
}

.bp-wallet-v70__main-card-art {
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.bp-wallet-v70__hero-img {
    max-width: 240px;
    height: auto;
    object-fit: contain;
    filter: drop-shadow(0 14px 28px rgba(0, 0, 0, 0.55));
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.bp-wallet-v70__main-card:hover .bp-wallet-v70__hero-img {
    transform: translateY(-4px) scale(1.02);
}

/* 11.4 Cards Financeiros Laterais (Empilhados) */
.bp-wallet-v70__side-cards {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.bp-wallet-v70__metric-card {
    background: #0B1933;
    border: 1px solid #19345A;
    border-radius: 14px;
    padding: 18px 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex: 1;
    box-sizing: border-box;
    transition: border-color 0.2s ease, transform 0.2s ease;
}

.bp-wallet-v70__metric-card:hover {
    border-color: rgba(116, 40, 255, 0.4);
    transform: translateY(-1px);
}

.bp-wallet-v70__metric-head {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 8px;
}

.bp-wallet-v70__metric-icon {
    width: 36px;
    height: 36px;
    border-radius: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.bp-wallet-v70__metric-icon--cyan {
    background: rgba(0, 201, 255, 0.12);
    border: 1px solid rgba(0, 201, 255, 0.3);
}

.bp-wallet-v70__metric-icon--violet {
    background: rgba(189, 0, 245, 0.12);
    border: 1px solid rgba(189, 0, 245, 0.3);
}

.bp-wallet-v70__metric-title {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #E2E8F0 !important;
}

.bp-wallet-v70__metric-val {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #FFFFFF !important;
    display: block !important;
    margin-bottom: 2px !important;
    font-variant-numeric: tabular-nums !important;
}

.bp-wallet-v70__metric-desc {
    font-size: 11px !important;
    color: #7188B1 !important;
}

/* 11.5 Históricos (Cards de Tabela) */
.bp-wallet-v70__section-card {
    background: #070E1E;
    border: 1px solid #19345A;
    border-radius: 14px;
    overflow: hidden;
    margin-bottom: 24px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.35);
}

.bp-wallet-v70__section-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    border-bottom: 1px solid rgba(25, 52, 90, 0.5);
    flex-wrap: wrap;
    gap: 12px;
}

.bp-wallet-v70__section-title {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #FFFFFF !important;
    margin: 0 !important;
}

.bp-wallet-v70__section-subtitle {
    font-size: 11.5px !important;
    color: #7188B1 !important;
    margin: 3px 0 0 0 !important;
}

.bp-wallet-v70__select-wrap {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.bp-wallet-v70__select {
    height: 36px;
    background: #081020;
    border: 1px solid #19345A;
    border-radius: 8px;
    padding: 0 32px 0 12px;
    color: #9BAED2;
    font-size: 12px;
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
    outline: none;
    transition: border-color 0.2s ease;
}

.bp-wallet-v70__select:focus {
    border-color: #7328FF;
}

.bp-wallet-v70__select-arrow {
    position: absolute;
    right: 10px;
    pointer-events: none;
    color: #7188B1;
}

/* Tabelas Premium */
.bp-wallet-v70__table-wrap {
    overflow-x: auto;
    width: 100%;
    -webkit-overflow-scrolling: touch;
}

.bp-wallet-v70__table {
    width: 100%;
    border-collapse: collapse;
    text-align: left;
}

.bp-wallet-v70__th {
    font-size: 10px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    color: #64748B !important;
    padding: 12px 18px !important;
    border-bottom: 1px solid rgba(25, 52, 90, 0.4) !important;
    background: rgba(255, 255, 255, 0.015) !important;
    white-space: nowrap !important;
}

.bp-wallet-v70__th--right {
    text-align: right !important;
}

.bp-wallet-v70__td {
    font-size: 12px !important;
    padding: 13px 18px !important;
    border-bottom: 1px solid rgba(25, 52, 90, 0.3) !important;
    color: #E2E8F0 !important;
    vertical-align: middle !important;
    background: transparent !important;
}

.bp-wallet-v70__tr:hover .bp-wallet-v70__td {
    background: rgba(255, 255, 255, 0.018) !important;
}

.bp-wallet-v70__tr:last-child .bp-wallet-v70__td {
    border-bottom: none !important;
}

/* Colunas Específicas */
.bp-wallet-v70__td--date span {
    display: block;
    font-size: 12px;
    color: #E2E8F0;
}

.bp-wallet-v70__td--date small {
    display: block;
    font-size: 11px;
    color: #64748B;
    margin-top: 2px;
}

.bp-wallet-v70__type-cell {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    white-space: nowrap;
}

.bp-wallet-v70__type-icon {
    flex-shrink: 0;
}

.bp-wallet-v70__ref-text {
    font-size: 12px;
    font-weight: 600;
    color: #FFFFFF;
    display: block;
}

.bp-wallet-v70__sub-meta {
    font-size: 11px;
    color: #7188B1;
    display: block;
    margin-top: 2px;
}

.bp-wallet-v70__amount {
    font-size: 13px;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.bp-wallet-v70__amount.is-credit {
    color: #00E7A2 !important;
}

.bp-wallet-v70__amount.is-debit {
    color: #FF4269 !important;
}

.bp-wallet-v70__balance-after-val {
    font-size: 12px;
    font-weight: 600;
    color: #9BAED2;
    font-variant-numeric: tabular-nums;
}

.bp-wallet-v70__method-cell {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    white-space: nowrap;
}

.bp-wallet-v70__gateway-logo {
    object-fit: contain;
    flex-shrink: 0;
}

.bp-wallet-v70__generic-gateway {
    font-size: 12px;
    font-weight: 600;
    color: #CBD5E1;
}

/* Status Pills */
.bp-wallet-v70__status-pill {
    display: inline-flex;
    align-items: center;
    height: 24px;
    padding: 0 9px;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 600;
    gap: 5px;
    white-space: nowrap;
}

.bp-wallet-v70__status-dot {
    font-size: 7px;
    line-height: 1;
}

.bp-wallet-v70__status-pill--completed {
    background: rgba(0, 231, 162, 0.1);
    border: 1px solid rgba(0, 231, 162, 0.3);
    color: #00E7A2;
}

.bp-wallet-v70__status-pill--pending {
    background: rgba(255, 185, 46, 0.1);
    border: 1px solid rgba(255, 185, 46, 0.3);
    color: #FFB92E;
}

.bp-wallet-v70__status-pill--processing {
    background: rgba(56, 189, 248, 0.1);
    border: 1px solid rgba(56, 189, 248, 0.3);
    color: #38BDF8;
}

.bp-wallet-v70__status-pill--cancelled {
    background: rgba(255, 66, 105, 0.1);
    border: 1px solid rgba(255, 66, 105, 0.3);
    color: #FF4269;
}

/* Botões de Ações */
.bp-wallet-v70__actions-wrap {
    display: flex;
    justify-content: flex-end;
}

.bp-wallet-v70__detail-btn {
    height: 28px;
    padding: 0 10px;
    border-radius: 6px;
    background: rgba(116, 40, 255, 0.12);
    border: 1px solid rgba(116, 40, 255, 0.35);
    color: #C084FC;
    font-size: 11px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

.bp-wallet-v70__detail-btn:hover {
    background: rgba(116, 40, 255, 0.25);
    color: #FFFFFF;
}

.bp-wallet-v70__resume-btn {
    height: 28px;
    padding: 0 12px;
    border-radius: 6px;
    background: linear-gradient(110deg, #BD00F5 0%, #7328FF 100%);
    color: #FFFFFF;
    font-size: 11px;
    font-weight: 600;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.15s ease;
    white-space: nowrap;
}

.bp-wallet-v70__resume-btn:hover {
    transform: translateY(-1px);
}

/* 11.6 Paginação Independente */
.bp-wallet-v70__pagination {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 13px 18px;
    border-top: 1px solid rgba(25, 52, 90, 0.4);
    gap: 12px;
    flex-wrap: wrap;
}

.bp-wallet-v70__pagination-info {
    font-size: 11.5px;
    color: #64748B;
}

.bp-wallet-v70__pagination-nav {
    display: flex;
    align-items: center;
    gap: 4px;
}

.bp-wallet-v70__page-btn {
    min-width: 28px;
    height: 28px;
    padding: 0 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    font-size: 11.5px;
    font-weight: 500;
    color: #9BAED2;
    text-decoration: none;
    border: 1px solid transparent;
    transition: all 0.15s ease;
}

.bp-wallet-v70__page-btn:hover {
    background: rgba(255, 255, 255, 0.06);
    color: #FFFFFF;
}

.bp-wallet-v70__page-btn.is-active {
    background: #7328FF !important;
    color: #FFFFFF !important;
    font-weight: 700 !important;
    box-shadow: 0 0 10px rgba(115, 40, 255, 0.4) !important;
}

.bp-wallet-v70__page-btn.is-disabled {
    opacity: 0.35;
    pointer-events: none;
}

.bp-wallet-v70__per-page {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 11.5px;
    color: #64748B;
}

.bp-wallet-v70__per-page-select-box {
    position: relative;
    display: flex;
    align-items: center;
}

.bp-wallet-v70__per-page-select {
    background: #081020;
    border: 1px solid #19345A;
    border-radius: 6px;
    color: #CBD5E1;
    font-size: 11.5px;
    height: 28px;
    padding: 0 22px 0 8px;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    outline: none;
}

.bp-wallet-v70__per-page-chevron {
    position: absolute;
    right: 6px;
    color: #64748B;
    pointer-events: none;
}

/* 11.7 Estados Vazios */
.bp-wallet-v70__empty-state {
    padding: 42px 20px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.bp-wallet-v70__empty-img {
    max-width: 140px;
    height: auto;
    object-fit: contain;
    margin-bottom: 14px;
}

.bp-wallet-v70__empty-title {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #FFFFFF !important;
    margin: 0 0 6px 0 !important;
}

.bp-wallet-v70__empty-desc {
    font-size: 12.5px !important;
    color: #7188B1 !important;
    max-width: 380px !important;
    margin: 0 0 18px 0 !important;
    line-height: 1.4 !important;
}

.bp-wallet-v70__empty-btn {
    height: 38px;
    padding: 0 18px;
    border-radius: 8px;
    background: linear-gradient(110deg, #BD00F5 0%, #7328FF 100%);
    color: #FFFFFF;
    font-size: 12px;
    font-weight: 600;
    border: none;
    cursor: pointer;
}

/* 11.8 Modais de Detalhes */
.bp-wallet-v70__modal-backdrop {
    position: fixed;
    inset: 0;
    background: rgba(3, 7, 18, 0.75);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    box-sizing: border-box;
}

.bp-wallet-v70__modal-box {
    background: #0B1933;
    border: 1px solid #19345A;
    border-radius: 16px;
    width: 100%;
    max-width: 440px;
    padding: 22px;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.6);
    box-sizing: border-box;
}

.bp-wallet-v70__modal-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 18px;
    border-bottom: 1px solid rgba(25, 52, 90, 0.5);
    padding-bottom: 12px;
}

.bp-wallet-v70__modal-title {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #FFFFFF !important;
    margin: 0 !important;
}

.bp-wallet-v70__modal-close {
    background: none;
    border: none;
    color: #7188B1;
    cursor: pointer;
    padding: 4px;
    border-radius: 6px;
}

.bp-wallet-v70__modal-close:hover {
    color: #FFFFFF;
    background: rgba(255, 255, 255, 0.08);
}

.bp-wallet-v70__modal-rows {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.bp-wallet-v70__modal-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 12px;
    color: #CBD5E1;
}

.bp-modal-label {
    color: #7188B1;
    font-size: 11.5px;
}

.bp-modal-code {
    font-family: ui-monospace, SFMono-Regular, monospace;
    background: rgba(255, 255, 255, 0.06);
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 11px;
}

/* 11.9 Responsividade */
@media (max-width: 900px) {
    .bp-wallet-v70__hero-grid {
        grid-template-columns: 1fr;
    }

    .bp-wallet-v70__main-card {
        padding: 22px;
    }

    .bp-wallet-v70__balance-amount {
        font-size: 32px !important;
    }

    .bp-wallet-v70__hero-img {
        max-width: 170px;
    }

    .bp-wallet-v70__side-cards {
        flex-direction: row;
    }
}

@media (max-width: 768px) {
    .bp-wallet-v70__header {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }

    .bp-wallet-v70__header-right {
        width: 100%;
        justify-content: space-between;
    }

    .bp-wallet-v70__side-cards {
        flex-direction: column;
    }

    .bp-wallet-v70__main-card {
        flex-direction: column-reverse;
        align-items: flex-start;
        gap: 14px;
    }

    .bp-wallet-v70__main-card-copy {
        max-width: 100%;
    }

    .bp-wallet-v70__hero-img {
        max-width: 130px;
    }

    /* Transformação da Tabela em Cards Móveis */
    .bp-wallet-v70__table thead {
        display: none;
    }

    .bp-wallet-v70__table,
    .bp-wallet-v70__table tbody,
    .bp-wallet-v70__tr,
    .bp-wallet-v70__td {
        display: block;
        width: 100%;
        box-sizing: border-box;
    }

    .bp-wallet-v70__tr {
        background: #081020;
        border: 1px solid #19345A;
        border-radius: 12px;
        padding: 14px;
        margin-bottom: 12px;
    }

    .bp-wallet-v70__td {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 8px 0;
        border-bottom: 1px solid rgba(25, 52, 90, 0.4);
    }

    .bp-wallet-v70__td:last-child {
        border-bottom: none;
        padding-top: 10px;
    }

    .bp-wallet-v70__td::before {
        content: attr(data-label);
        font-size: 10px;
        font-weight: 700;
        text-transform: uppercase;
        color: #64748B;
        letter-spacing: 0.04em;
    }

    .bp-wallet-v70__pagination {
        flex-direction: column;
        align-items: center;
        gap: 12px;
    }
}

@media (max-width: 480px) {
    .bp-wallet-v70__balance-amount {
        font-size: 29px !important;
    }
}





/* ==========================================================================
   SECTION 12: BOTPULSE V8.0 — PERFIL E SEGURANÇA & AVATAR SYSTEM ENTERPRISE
   ========================================================================== */

/* Universal Avatar Image Display (Header, Drawer, Popover, Profile) */
.bp-avatar {
    position: relative !important;
    overflow: hidden !important;
    border-radius: 50% !important;
    background: #0B132B !important;
}

.bp-avatar-img,
img[data-bp-user-avatar] {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 50% !important;
    display: block !important;
}

/* Profile V8.0 Layout & Cards */
.bp-profile-v80 {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 320px;
    gap: 20px;
    align-items: start;
}

.bp-profile-v80__panel {
    background: #070E1E !important;
    border: 1px solid #1E293B !important;
    border-radius: 16px !important;
    padding: 24px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25) !important;
}

/* Avatar Box in Dados Pessoais */
.bp-profile-v80__avatar-box {
    display: flex;
    align-items: center;
    gap: 24px;
    margin-bottom: 24px;
    padding-bottom: 24px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.bp-profile-v80__avatar-wrap {
    position: relative;
    width: 104px;
    height: 104px;
    flex: 0 0 104px;
}

.bp-profile-v80__avatar-halo {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    padding: 3px;
    background: linear-gradient(135deg, #8B5CF6 0%, #3B82F6 50%, #06B6D4 100%);
    box-shadow: 0 0 24px rgba(139, 92, 246, 0.4), inset 0 0 12px rgba(139, 92, 246, 0.3);
}

.bp-profile-v80__avatar-img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: cover;
    display: block;
    background: #0B132B;
}

.bp-profile-v80__avatar-badge-btn {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #8B5CF6;
    border: 2.5px solid #070E1E;
    color: #FFFFFF;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.5);
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.bp-profile-v80__avatar-badge-btn:hover {
    background: #7C3AED;
    transform: scale(1.1);
    box-shadow: 0 0 14px rgba(139, 92, 246, 0.7);
}

.bp-profile-v80__avatar-info {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.bp-profile-v80__avatar-names h3 {
    font-size: 19px !important;
    font-weight: 700 !important;
    color: #F8FAFC !important;
    margin: 0 !important;
    line-height: 1.25 !important;
}

.bp-profile-v80__avatar-names p {
    font-size: 13px !important;
    color: #94A3B8 !important;
    margin: 3px 0 0 !important;
}

.bp-profile-v80__avatar-actions {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.bp-profile-v80__btn-change {
    min-height: 38px !important;
    font-size: 12.5px !important;
    padding: 0 16px !important;
    gap: 8px !important;
}

.bp-profile-v80__avatar-tip {
    font-size: 11.5px !important;
    color: #64748B !important;
}

/* Password Toggle Field */
.bp-password-field {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.bp-password-input-wrap {
    position: relative;
    width: 100%;
}

.bp-password-input-wrap input {
    width: 100% !important;
    padding-right: 42px !important;
}

.bp-password-toggle-btn {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    background: transparent;
    border: none;
    color: #64748B;
    padding: 6px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    transition: all 0.15s ease;
}

.bp-password-toggle-btn:hover {
    color: #F8FAFC;
    background: rgba(255, 255, 255, 0.08);
}

/* Aside Panels */
.bp-profile-v80__side-panel,
.bp-profile-v80__card-shield,
.bp-profile-v80__card-help {
    background: #070E1E !important;
    border: 1px solid #1E293B !important;
    border-radius: 16px !important;
    padding: 22px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25) !important;
}

.bp-profile-v80__summary-list div {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 9px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    font-size: 12.5px;
}

.bp-profile-v80__summary-list div:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.bp-profile-v80__summary-list dt {
    color: #94A3B8;
}

.bp-profile-v80__summary-list dd {
    color: #F8FAFC;
    font-weight: 600;
    margin: 0;
    text-align: right;
    max-width: 170px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bp-profile-v80__badge-currency {
    display: inline-block;
    background: rgba(139, 92, 246, 0.16);
    color: #A78BFA;
    border: 1px solid rgba(139, 92, 246, 0.35);
    padding: 2px 8px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.04em;
}

.bp-support-card__icon {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 12px;
}

.bp-profile-v80__card-shield .bp-support-card__icon {
    background: rgba(139, 92, 246, 0.14);
    color: #A78BFA;
}

.bp-profile-v80__card-help .bp-support-card__icon {
    background: rgba(6, 182, 212, 0.14);
    color: #22D3EE;
}

/* Avatar Modal & Popover */
.bp-avatar-modal {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.bp-avatar-modal.is-open {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
}

body.bp-modal-locked {
    overflow: hidden !important;
}

.bp-avatar-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(3, 7, 18, 0.85);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.bp-avatar-modal__dialog {
    position: relative;
    width: 100%;
    max-width: 580px;
    max-height: 90vh;
    overflow-y: auto;
    background: #0B132B;
    border: 1px solid rgba(139, 92, 246, 0.32);
    border-radius: 20px;
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.85), 0 0 50px rgba(139, 92, 246, 0.18);
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 18px;
    animation: bpModalPop 0.25s cubic-bezier(0.16, 1, 0.3, 1) both;
}

@keyframes bpModalPop {
    from {
        transform: scale(0.96) translateY(8px);
        opacity: 0;
    }
    to {
        transform: scale(1) translateY(0);
        opacity: 1;
    }
}

.bp-avatar-modal__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    padding-bottom: 14px;
}

.bp-avatar-modal__header h3 {
    font-size: 19px !important;
    font-weight: 700 !important;
    color: #F8FAFC !important;
    margin: 2px 0 4px !important;
}

.bp-avatar-modal__header p {
    font-size: 12.5px !important;
    color: #94A3B8 !important;
    margin: 0 !important;
}

.bp-avatar-modal__close-btn {
    background: transparent;
    border: none;
    color: #94A3B8;
    padding: 6px;
    cursor: pointer;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.15s ease;
}

.bp-avatar-modal__close-btn:hover {
    color: #FFFFFF;
    background: rgba(255, 255, 255, 0.08);
}

.bp-avatar-modal__body {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.bp-avatar-modal__error {
    background: rgba(239, 68, 68, 0.15);
    border: 1px solid rgba(239, 68, 68, 0.4);
    color: #FCA5A5;
    padding: 10px 14px;
    border-radius: 10px;
    font-size: 12.5px;
    line-height: 1.4;
}

/* Upload zone */
.bp-avatar-modal__upload-zone {
    border: 1.5px dashed rgba(139, 92, 246, 0.4);
    background: rgba(139, 92, 246, 0.05);
    border-radius: 14px;
    padding: 16px 18px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.bp-avatar-modal__upload-zone:hover {
    border-color: #8B5CF6;
    background: rgba(139, 92, 246, 0.09);
}

.bp-avatar-modal__upload-content {
    display: flex;
    align-items: center;
    gap: 14px;
}

.bp-avatar-modal__upload-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: linear-gradient(135deg, #8B5CF6, #3B82F6);
    color: #FFFFFF;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 4px 14px rgba(139, 92, 246, 0.35);
}

.bp-avatar-modal__upload-text {
    flex: 1;
}

.bp-avatar-modal__upload-text strong {
    display: block;
    font-size: 13.5px;
    color: #F8FAFC;
    font-weight: 600;
}

.bp-avatar-modal__upload-text small {
    display: block;
    font-size: 11.5px;
    color: #94A3B8;
    margin-top: 2px;
}

.bp-avatar-modal__upload-btn {
    flex-shrink: 0;
    min-height: 34px !important;
    font-size: 12px !important;
    padding: 0 14px !important;
}

/* Divider */
.bp-avatar-modal__divider {
    display: flex;
    align-items: center;
    text-align: center;
    margin: 4px 0;
    color: #64748B;
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: 0.06em;
}

.bp-avatar-modal__divider::before,
.bp-avatar-modal__divider::after {
    content: '';
    flex: 1;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.bp-avatar-modal__divider span {
    padding: 0 12px;
}

/* 6 Official Streamer Avatars Grid (3x2) */
.bp-avatar-modal__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
}

.bp-avatar-modal__card {
    background: rgba(255, 255, 255, 0.02);
    border: 1.5px solid rgba(255, 255, 255, 0.08);
    border-radius: 14px;
    padding: 10px 8px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
    color: #94A3B8;
    width: 100%;
}

.bp-avatar-modal__card:hover {
    border-color: rgba(139, 92, 246, 0.6);
    transform: translateY(-2px);
    background: rgba(139, 92, 246, 0.06);
    color: #F8FAFC;
}

.bp-avatar-modal__card.is-active {
    border-color: #8B5CF6 !important;
    background: rgba(139, 92, 246, 0.16) !important;
    box-shadow: 0 0 16px rgba(139, 92, 246, 0.35) !important;
    color: #FFFFFF !important;
}

.bp-avatar-modal__card-img-wrap {
    position: relative;
    width: 64px;
    height: 64px;
    border-radius: 50%;
}

.bp-avatar-modal__card-img-wrap img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: cover;
    display: block;
    background: #0B132B;
}

.bp-avatar-modal__check-badge {
    position: absolute;
    bottom: -1px;
    right: -1px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #8B5CF6;
    border: 2px solid #0B132B;
    color: #FFFFFF;
    display: none;
    align-items: center;
    justify-content: center;
}

.bp-avatar-modal__card.is-active .bp-avatar-modal__check-badge {
    display: flex !important;
}

.bp-avatar-modal__card-title {
    font-size: 11px;
    font-weight: 600;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}

/* Staged Preview Bar */
.bp-avatar-modal__preview-bar {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 14px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 12px;
}

.bp-avatar-modal__preview-thumb {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    border: 2px solid #8B5CF6;
    overflow: hidden;
    flex-shrink: 0;
    background: #0B132B;
}

.bp-avatar-modal__preview-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.bp-avatar-modal__preview-copy small {
    display: block;
    font-size: 10.5px;
    color: #64748B;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-weight: 600;
}

.bp-avatar-modal__preview-copy strong {
    display: block;
    font-size: 13px;
    color: #F8FAFC;
}

/* Modal Footer */
.bp-avatar-modal__footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    padding-top: 14px;
}

/* Responsive Breakpoints */
@media (max-width: 860px) {
    .bp-profile-v80 {
        grid-template-columns: minmax(0, 1fr) !important;
    }
}

@media (max-width: 580px) {
    .bp-avatar-modal__grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    .bp-profile-v80__avatar-box {
        flex-direction: column !important;
        text-align: center !important;
        align-items: center !important;
    }

    .bp-profile-v80__avatar-actions {
        justify-content: center !important;
    }

    .bp-avatar-modal__upload-content {
        flex-direction: column !important;
        text-align: center !important;
    }

    .bp-avatar-modal__upload-btn {
        width: 100% !important;
    }
}

/* ==========================================================================
   BOTPULSE PIX RECHARGE ENTERPRISE V8.0
   ========================================================================== */
.bp-pix-v80-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.85fr) minmax(300px, 1fr);
    gap: 24px;
    margin-top: 24px;
    align-items: start;
}

.bp-pix-v80-main-card {
    background: #0D1730;
    border: 1px solid #24365A;
    border-radius: 18px;
    padding: 28px;
    box-shadow: 0 12px 36px rgba(0, 0, 0, 0.45);
}

.bp-pix-v80-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 24px;
}

.bp-pix-v80-brand {
    display: flex;
    align-items: center;
    gap: 14px;
}

.bp-pix-v80-icon-wrap {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: rgba(50, 188, 173, 0.12);
    border: 1px solid rgba(50, 188, 173, 0.3);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.bp-pix-v80-titles h2 {
    font-size: 20px;
    font-weight: 750;
    color: #F6F8FF;
    margin: 0 0 4px 0;
}

.bp-pix-v80-titles p {
    font-size: 13px;
    color: #9BAED1;
    margin: 0;
    line-height: 1.4;
}

.bp-pix-v80-status-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 14px;
    border-radius: 999px;
    font-size: 11.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    flex-shrink: 0;
}

.bp-pix-v80-status-badge--pending {
    background: rgba(255, 176, 32, 0.12);
    border: 1px solid rgba(255, 176, 32, 0.35);
    color: #FFB020;
}

.bp-pix-v80-status-badge--completed {
    background: rgba(22, 214, 160, 0.12);
    border: 1px solid rgba(22, 214, 160, 0.35);
    color: #16D6A0;
}

.bp-pix-v80-status-badge--expired,
.bp-pix-v80-status-badge--failed {
    background: rgba(239, 68, 68, 0.12);
    border: 1px solid rgba(239, 68, 68, 0.35);
    color: #F87171;
}

.bp-pix-v80-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: currentColor;
    box-shadow: 0 0 8px currentColor;
    animation: bp-v80-pulse 2s infinite ease-in-out;
}

@keyframes bp-v80-pulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.45; transform: scale(0.85); }
}

.bp-pix-v80-qr-wrap {
    display: flex;
    justify-content: center;
    margin: 16px 0 24px 0;
}

.bp-pix-v80-qr-frame {
    background: #FFFFFF;
    padding: 14px;
    border-radius: 16px;
    display: inline-block;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
}

.bp-pix-v80-qr-frame img {
    display: block;
    width: 220px;
    height: 220px;
    image-rendering: pixelated;
}

.bp-pix-v80-alert-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    background: rgba(255, 176, 32, 0.08);
    border: 1px solid rgba(255, 176, 32, 0.32);
    border-radius: 14px;
    padding: 14px 18px;
    margin-bottom: 24px;
}

.bp-pix-v80-alert-left {
    display: flex;
    align-items: center;
    gap: 12px;
}

.bp-pix-v80-alert-icon {
    flex-shrink: 0;
    color: #FFB020;
}

.bp-pix-v80-alert-text strong {
    display: block;
    font-size: 13.5px;
    color: #FFB020;
    font-weight: 700;
}

.bp-pix-v80-alert-text p {
    font-size: 12.5px;
    color: #E2E8F0;
    margin: 2px 0 0 0;
}

.bp-pix-v80-alert-text p strong {
    display: inline;
    color: #FFFFFF;
}

.bp-pix-v80-countdown-pill {
    display: inline-flex;
    align-items: center;
    padding: 6px 12px;
    border-radius: 8px;
    background: rgba(255, 176, 32, 0.16);
    border: 1px solid rgba(255, 176, 32, 0.4);
    color: #FFB020;
    font-size: 12.5px;
    font-weight: 750;
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.03em;
    flex-shrink: 0;
}

.bp-pix-v80-code-block {
    margin-bottom: 22px;
}

.bp-pix-v80-code-label {
    display: block;
    font-size: 11px;
    font-weight: 750;
    letter-spacing: 0.08em;
    color: #9BAED1;
    text-transform: uppercase;
    margin-bottom: 8px;
}

.bp-pix-v80-code-row {
    display: flex;
    gap: 10px;
    align-items: center;
}

.bp-pix-v80-code-input {
    flex: 1 1 auto;
    height: 48px;
    background: #081024 !important;
    border: 1px solid #24365A !important;
    border-radius: 10px !important;
    color: #F6F8FF !important;
    font-size: 13px !important;
    font-family: monospace, monospace !important;
    padding: 0 14px !important;
    box-sizing: border-box !important;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    user-select: all;
}

.bp-pix-v80-btn-copy {
    height: 48px;
    padding: 0 18px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 10px;
    color: #F6F8FF;
    font-size: 13px;
    font-weight: 650;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    white-space: nowrap;
    flex-shrink: 0;
    transition: all 0.15s ease;
}

.bp-pix-v80-btn-copy:hover {
    background: rgba(255, 255, 255, 0.14);
    border-color: rgba(255, 255, 255, 0.3);
}

.bp-pix-v80-btn-copy.is-copied {
    background: rgba(22, 214, 160, 0.18);
    border-color: #16D6A0;
    color: #16D6A0;
}

.bp-pix-v80-btn-verify {
    width: 100%;
    height: 56px;
    border-radius: 12px;
    border: none;
    background: linear-gradient(135deg, #9333EA 0%, #3B82F6 50%, #06B6D4 100%);
    color: #FFFFFF;
    font-size: 15px;
    font-weight: 750;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    cursor: pointer;
    box-shadow: 0 8px 24px rgba(124, 58, 237, 0.35);
    transition: transform 0.16s ease, box-shadow 0.16s ease, filter 0.16s ease;
    margin-bottom: 14px;
}

.bp-pix-v80-btn-verify:hover {
    transform: translateY(-1px);
    box-shadow: 0 12px 30px rgba(124, 58, 237, 0.48);
    filter: brightness(1.06);
}

.bp-pix-v80-btn-verify:disabled,
.bp-pix-v80-btn-verify.is-loading {
    opacity: 0.75;
    cursor: not-allowed;
    transform: none;
}

.bp-pix-v80-feedback-msg {
    text-align: center;
    font-size: 13px;
    color: #9BAED1;
    margin: 0 0 16px 0;
    min-height: 20px;
}

.bp-pix-v80-security-notice {
    display: flex;
    align-items: center;
    gap: 8px;
    padding-top: 14px;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    font-size: 12px;
    color: #64748B;
}

.bp-pix-v80-sidebar {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.bp-pix-v80-side-card {
    background: #101B35;
    border: 1px solid #24365A;
    border-radius: 16px;
    padding: 22px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
}

.bp-pix-v80-side-eyebrow {
    display: block;
    font-size: 10.5px;
    font-weight: 800;
    letter-spacing: 0.1em;
    color: #9BAED1;
    text-transform: uppercase;
    margin-bottom: 16px;
}

.bp-pix-v80-summary-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.bp-pix-v80-summary-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    font-size: 13px;
}

.bp-pix-v80-summary-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.bp-pix-v80-summary-label {
    color: #9BAED1;
}

.bp-pix-v80-summary-val {
    color: #F6F8FF;
    font-weight: 600;
}

.bp-pix-v80-summary-val.is-total {
    color: #38BDF8;
    font-size: 15px;
    font-weight: 750;
}

.bp-pix-v80-support-box {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin-bottom: 14px;
}

.bp-pix-v80-support-icon {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    background: rgba(168, 85, 247, 0.15);
    border: 1px solid rgba(168, 85, 247, 0.3);
    color: #C084FC;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.bp-pix-v80-support-text h3 {
    font-size: 15px;
    font-weight: 700;
    color: #F6F8FF;
    margin: 0 0 4px 0;
}

.bp-pix-v80-support-text p {
    font-size: 12.5px;
    color: #9BAED1;
    margin: 0;
    line-height: 1.4;
}

.bp-pix-v80-btn-support {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 100%;
    height: 42px;
    border-radius: 10px;
    background: rgba(168, 85, 247, 0.12);
    border: 1px solid rgba(168, 85, 247, 0.35);
    color: #C084FC;
    font-size: 13px;
    font-weight: 650;
    text-decoration: none;
    transition: all 0.15s ease;
}

.bp-pix-v80-btn-support:hover {
    background: rgba(168, 85, 247, 0.22);
    border-color: rgba(168, 85, 247, 0.5);
    color: #E9D5FF;
}

/* Success & Expired states */
.bp-pix-v80-state-card {
    background: #0D1730;
    border: 1px solid #24365A;
    border-radius: 18px;
    padding: 48px 24px;
    text-align: center;
    box-shadow: 0 12px 36px rgba(0, 0, 0, 0.45);
}

.bp-pix-v80-state-icon {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    margin: 0 auto 20px auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

.bp-pix-v80-state-icon--success {
    background: rgba(22, 214, 160, 0.14);
    border: 1px solid rgba(22, 214, 160, 0.35);
    color: #16D6A0;
}

.bp-pix-v80-state-icon--expired {
    background: rgba(255, 176, 32, 0.14);
    border: 1px solid rgba(255, 176, 32, 0.35);
    color: #FFB020;
}

.bp-pix-v80-state-card h2 {
    font-size: 24px;
    font-weight: 800;
    color: #FFFFFF;
    margin: 0 0 10px 0;
}

.bp-pix-v80-state-card p {
    font-size: 14px;
    color: #9BAED1;
    max-width: 480px;
    margin: 0 auto 24px auto;
    line-height: 1.5;
}

.bp-pix-v80-state-actions {
    display: flex;
    justify-content: center;
    gap: 12px;
}

@media (max-width: 991px) {
    .bp-pix-v80-layout {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 580px) {
    .bp-pix-v80-main-card {
        padding: 20px 16px;
    }
    .bp-pix-v80-alert-box {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }
    .bp-pix-v80-code-row {
        flex-direction: column;
        align-items: stretch;
    }
}

/* Guide for Direct Post Link (Compartilhar e Copiar Link) */
.bp-v40-link-guide {
    margin-top: 10px;
    padding: 12px 14px;
    background: rgba(15, 23, 42, 0.72);
    border: 1px solid rgba(139, 92, 246, 0.3);
    border-radius: 10px;
    backdrop-filter: blur(8px);
    display: flex;
    flex-direction: column;
    gap: 8px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.28);
    animation: bpGuideFadeIn 0.22s ease-out;
}

@keyframes bpGuideFadeIn {
    from { opacity: 0; transform: translateY(-4px); }
    to { opacity: 1; transform: translateY(0); }
}

.bp-v40-link-guide[hidden] {
    display: none !important;
}

.bp-v40-link-guide__header {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    font-weight: 700;
    color: #F1F5F9;
    letter-spacing: 0.2px;
}

.bp-v40-link-guide__icon {
    width: 22px;
    height: 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    background: rgba(139, 92, 246, 0.22);
    color: #A855F7;
    flex-shrink: 0;
}

.bp-v40-link-guide__steps {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin: 0;
    padding-left: 20px;
    list-style: decimal;
}

.bp-v40-link-guide__step {
    font-size: 11.5px;
    color: #94A3B8;
    line-height: 1.45;
}

.bp-v40-link-guide__step::marker {
    color: #A855F7;
    font-weight: 700;
}

.bp-v40-link-guide__step strong {
    color: #F8FAFC;
    font-weight: 600;
}

.bp-v40-link-guide__alert {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 11px;
    color: #FBBF24;
    background: rgba(245, 158, 11, 0.12);
    border: 1px solid rgba(245, 158, 11, 0.32);
    border-radius: 6px;
    padding: 7px 10px;
    margin-top: 4px;
    line-height: 1.35;
}

.bp-v40-link-guide__alert svg {
    flex-shrink: 0;
    color: #F59E0B;
}

.bp-v40-link-guide__alert[hidden] {
    display: none !important;
}

/* ==========================================================================
   BOTPULSE V40 — COMPACT MEDIA SELECTOR (PUBLICATIONS, VIDEOS, SHORTS, REELS)
   ========================================================================== */
.bp-v40-media-selector {
    margin-top: 10px;
    padding: 12px;
    background: rgba(15, 23, 42, 0.45);
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 12px;
    transition: all 0.2s ease;
}

.bp-v40-media-selector[hidden] {
    display: none !important;
}

.bp-v40-media-selector__header {
    display: flex;
    flex-direction: column;
    gap: 3px;
    margin-bottom: 10px;
}

.bp-v40-media-selector__title-row {
    display: flex;
    align-items: center;
    gap: 7px;
    color: #F8FAFC;
    font-size: 13px;
    font-weight: 700;
}

.bp-v40-media-selector__title-row svg {
    color: #A855F7;
    flex-shrink: 0;
}

.bp-v40-media-selector__badge {
    display: inline-flex;
    align-items: center;
    padding: 1px 7px;
    background: rgba(168, 85, 247, 0.16);
    border: 1px solid rgba(168, 85, 247, 0.32);
    border-radius: 999px;
    font-size: 10px;
    font-weight: 600;
    color: #D8B4FE;
    margin-left: auto;
}

.bp-v40-media-selector__desc {
    margin: 0;
    font-size: 11px;
    color: #94A3B8;
    line-height: 1.35;
}

/* Compact Responsive Grid: 4-6 on desktop, 3-4 on tablet, 2-3 on mobile */
.bp-v40-media-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(95px, 115px));
    justify-content: start;
    gap: 8px;
    max-height: 250px;
    overflow-y: auto;
    overscroll-behavior-y: contain;
    padding-right: 2px;
}

.bp-v40-media-grid::-webkit-scrollbar {
    width: 4px;
}

.bp-v40-media-grid::-webkit-scrollbar-thumb {
    background: rgba(148, 163, 184, 0.25);
    border-radius: 4px;
}

/* Media Card (strictly 95–115px compact) */
.bp-v40-media-card {
    position: relative;
    width: 105px;
    height: 105px;
    max-width: 115px;
    max-height: 115px;
    aspect-ratio: 1 / 1;
    border-radius: 8px;
    overflow: hidden;
    background: #0B101E;
    border: 1.5px solid rgba(148, 163, 184, 0.16);
    cursor: pointer;
    transition: all 0.18s cubic-bezier(0.16, 1, 0.3, 1);
    outline: none;
    padding: 0;
    box-sizing: border-box;
    flex: 0 0 105px;
}

.bp-v40-media-card:hover {
    border-color: rgba(168, 85, 247, 0.6);
    transform: translateY(-1.5px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.35);
}

.bp-v40-media-card.is-selected {
    border-color: #8B5CF6 !important;
    box-shadow: 0 0 0 2px rgba(139, 92, 246, 0.4), 0 0 14px rgba(139, 92, 246, 0.35) !important;
}

.bp-v40-media-card__thumb,
.bp-v40-media-card__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    background: #1E293B;
}

.bp-v40-media-card__tag {
    position: absolute;
    bottom: 5px;
    left: 5px;
    display: inline-flex;
    align-items: center;
    gap: 3px;
    padding: 1px 5px;
    background: rgba(15, 23, 42, 0.85);
    backdrop-filter: blur(4px);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 4px;
    font-size: 9px;
    font-weight: 700;
    color: #F1F5F9;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    pointer-events: none;
}

.bp-v40-media-card__tag svg {
    width: 9px;
    height: 9px;
}

/* Checkmark indicator on selected */
.bp-v40-media-card__check {
    position: absolute;
    top: 5px;
    right: 5px;
    width: 18px;
    height: 18px;
    border-radius: 999px;
    background: #8B5CF6;
    color: #FFFFFF;
    display: none;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.4);
    pointer-events: none;
}

.bp-v40-media-card.is-selected .bp-v40-media-card__check {
    display: flex !important;
}

/* Empty / Fallback message */
.bp-v40-media-empty {
    padding: 10px 12px;
    background: rgba(255, 255, 255, 0.03);
    border-radius: 8px;
    border: 1px dashed rgba(148, 163, 184, 0.2);
    text-align: center;
}

.bp-v40-media-empty[hidden] {
    display: none !important;
}

.bp-v40-media-empty__text {
    font-size: 11px;
    color: #94A3B8;
    line-height: 1.4;
}

/* Skeleton Loading State for Media Grid */
.bp-v40-media-skeleton {
    aspect-ratio: 1 / 1;
    border-radius: 8px;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0.10) 50%, rgba(255, 255, 255, 0.03) 100%);
    background-size: 200% 100%;
    animation: bpAvatarSkeleton 1.2s infinite ease-in-out;
}

@media (max-width: 991px) {
    .bp-v40-media-grid {
        grid-template-columns: repeat(auto-fill, minmax(90px, 115px));
    }
}

@media (max-width: 580px) {
    .bp-v40-media-grid {
        grid-template-columns: repeat(auto-fill, minmax(85px, 105px));
        gap: 6px;
    }
    .bp-v40-media-card {
        width: 95px;
        height: 95px;
        max-width: 105px;
        max-height: 105px;
        flex: 0 0 95px;
    }
    .bp-v40-media-selector {
        padding: 10px;
    }
}
