/* ===========================================================
   XXXPay — Clean Override (iter 1)
   Paleta sóbria, sem gradients pesados, fontes consistentes,
   sidebar mobile com slide funcional. Carrega DEPOIS dos demais.
   =========================================================== */

:root {
    --xxx-bg:           #f7f7f6;
    --xxx-surface:      #ffffff;
    --xxx-surface-2:    #f1f1ef;
    --xxx-border:       #e3e3df;
    --xxx-border-strong:#cccac3;
    --xxx-text:         #1a1a18;
    --xxx-text-muted:   #5a5a55;
    --xxx-text-dim:     #8a8a82;

    --xxx-accent:       #047857;        /* verde sóbrio neutro */
    --xxx-accent-soft:  #d1fae5;
    --xxx-accent-dark:  #035144;

    --xxx-danger:       #b91c1c;
    --xxx-success:      #047857;
    --xxx-warning:      #b45309;

    --xxx-sidebar-bg:   #14181a;
    --xxx-sidebar-text: #d8d8d2;
    --xxx-sidebar-text-muted: #8a8a82;
    --xxx-sidebar-active-bg: rgba(4, 120, 87, 0.18);
    --xxx-sidebar-active-text: #d1fae5;
    --xxx-sidebar-active-border: var(--xxx-accent);
    --xxx-sidebar-hover-bg: rgba(255, 255, 255, 0.04);

    --xxx-radius:       8px;
    --xxx-radius-lg:    10px;
}

/* Override premium gradients/sombras/blur */
:root {
    --admin-premium-bg: var(--xxx-sidebar-bg) !important;
    --admin-premium-bg-soft: var(--xxx-sidebar-bg) !important;
    --admin-premium-accent: var(--xxx-accent) !important;
    --admin-premium-accent-soft: var(--xxx-sidebar-active-bg) !important;
    --admin-premium-border: rgba(255, 255, 255, 0.06) !important;
    --admin-premium-text: var(--xxx-sidebar-text) !important;
    --admin-premium-text-strong: #ffffff !important;
}

body.xxx-dashboard-page,
body.xxx-dashboard-page--admin {
    background: var(--xxx-bg) !important;
    color: var(--xxx-text);
    font-family: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif !important;
    font-size: 14px;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
}

/* ============= Sidebar ============= */
.sidebar {
    background: var(--xxx-sidebar-bg) !important;
    border-right: 1px solid rgba(255, 255, 255, 0.06) !important;
    box-shadow: none !important;
    width: 248px;
}
.sidebar-inner { backdrop-filter: none !important; }

.sidebar-logo,
.sidebar-user-area {
    border-color: rgba(255, 255, 255, 0.06) !important;
    box-shadow: none !important;
    background: transparent !important;
    border-radius: 0 !important;
    margin: 0 !important;
    padding: 14px 16px !important;
}

.sidebar-user-area {
    display: flex; align-items: center; gap: 10px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}
.sidebar-user-thumb img {
    width: 36px; height: 36px;
    border-radius: 999px;
    object-fit: cover;
}
.sidebar-user-content .title {
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    margin: 0;
    line-height: 1.2;
}
.sidebar-user-content .sub-title {
    color: var(--xxx-sidebar-text-muted) !important;
    font-size: 11px !important;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

/* Quick links: lista compacta */
.admin-quick-links {
    margin: 12px 12px 6px !important;
    padding: 6px !important;
    border-radius: var(--xxx-radius) !important;
    background: rgba(255, 255, 255, 0.02) !important;
    border: 1px solid rgba(255, 255, 255, 0.06) !important;
    backdrop-filter: none !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 4px !important;
}
.admin-quick-link {
    border: 0 !important;
    background: transparent !important;
    color: var(--xxx-sidebar-text) !important;
    padding: 6px 8px !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    border-radius: 6px !important;
    box-shadow: none !important;
    text-decoration: none !important;
}
.admin-quick-link:hover {
    background: var(--xxx-sidebar-hover-bg) !important;
    color: #ffffff !important;
}
.admin-quick-link i {
    font-size: 13px;
    color: var(--xxx-sidebar-text-muted);
}

/* Menu groups */
.sidebar-menu-wrapper { padding: 6px 8px 80px; }
.sidebar-menu .group-title,
.sidebar-menu-wrapper .group-title {
    font-size: 10px !important;
    font-weight: 700 !important;
    color: var(--xxx-sidebar-text-muted) !important;
    letter-spacing: 0.10em !important;
    text-transform: uppercase;
    margin: 16px 12px 6px !important;
    padding: 0 !important;
}

.sidebar-menu .sidebar-menu-item > a {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 8px 12px !important;
    color: var(--xxx-sidebar-text) !important;
    border: 0 !important;
    border-left: 3px solid transparent !important;
    border-radius: 6px !important;
    background: transparent !important;
    box-shadow: none !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    transition: background 80ms ease !important;
    text-decoration: none !important;
}
.sidebar-menu .sidebar-menu-item > a:hover {
    background: var(--xxx-sidebar-hover-bg) !important;
    color: #ffffff !important;
}
.sidebar-menu .sidebar-menu-item.active > a {
    background: var(--xxx-sidebar-active-bg) !important;
    color: var(--xxx-sidebar-active-text) !important;
    border-left-color: var(--xxx-sidebar-active-border) !important;
    box-shadow: none !important;
    font-weight: 600 !important;
}
.sidebar-menu .menu-icon {
    color: var(--xxx-sidebar-text-muted) !important;
    font-size: 15px !important;
    width: 18px;
    text-align: center;
}
.sidebar-menu .sidebar-menu-item.active > a .menu-icon,
.sidebar-menu .sidebar-menu-item > a:hover .menu-icon {
    color: var(--xxx-accent) !important;
}

/* Submenus */
.sidebar-menu .sub-menu {
    margin-left: 30px;
    padding-left: 8px;
    border-left: 1px solid rgba(255, 255, 255, 0.08);
}
.sidebar-menu .sub-menu a {
    padding: 6px 10px !important;
    font-size: 12px !important;
}

/* ============= Sidebar mobile slide ============= */
@media (max-width: 991px) {
    .sidebar {
        position: fixed !important;
        left: 0; top: 0; bottom: 0;
        height: 100vh;
        z-index: 1050;
        transform: translateX(-100%);
        transition: transform 240ms ease;
    }
    .sidebar.show,
    .sidebar.active,
    .xxx-shell-layout.shell-open .sidebar { transform: translateX(0); }

    .sidebar-inner {
        height: 100vh;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior: contain;
    }

    .body-overlay.show,
    .body-overlay.active {
        display: block !important;
        position: fixed; inset: 0;
        background: rgba(0, 0, 0, 0.5);
        z-index: 1040;
    }
}

/* ============= Top navbar ============= */
.navbar-wrapper {
    background: var(--xxx-surface) !important;
    border-bottom: 1px solid var(--xxx-border) !important;
    box-shadow: none !important;
    padding: 12px 18px !important;
    min-height: 56px;
    display: flex;
    align-items: center;
}
.dashboard-title-part {
    display: flex; flex-direction: column; gap: 2px;
}
.dashboard-title-part h2,
.dashboard-title-part .title,
.navbar-wrapper h2 {
    font-size: 16px !important;
    font-weight: 600 !important;
    color: var(--xxx-text) !important;
    margin: 0 !important;
}

.breadcrumb-area {
    font-size: 12px;
    color: var(--xxx-text-muted);
}

/* ============= Main wrapper ============= */
.main-wrapper {
    background: var(--xxx-bg);
    min-height: 100vh;
}
.main-body-wrapper {
    padding: 0;
}
.body-wrapper {
    padding: 18px;
    max-width: 1280px;
    margin: 0 auto;
}
@media (min-width: 1024px) {
    .body-wrapper { padding: 24px; }
}

/* ============= Cards limpos ============= */
.card,
.dashboard-card,
.section-card {
    border: 1px solid var(--xxx-border) !important;
    border-radius: var(--xxx-radius-lg) !important;
    background: var(--xxx-surface) !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03) !important;
}
.card-header,
.dashboard-card-header {
    background: transparent !important;
    border-bottom: 1px solid var(--xxx-border) !important;
    padding: 14px 16px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
}
.card-body { padding: 16px !important; }

/* ============= Botões ============= */
.btn {
    border-radius: var(--xxx-radius) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    padding: 8px 14px !important;
    box-shadow: none !important;
    transition: background 80ms ease, border-color 80ms ease !important;
}
.btn-primary,
.btn--base,
.btn--primary {
    background: var(--xxx-accent) !important;
    border-color: var(--xxx-accent) !important;
    color: #ffffff !important;
}
.btn-primary:hover,
.btn--base:hover,
.btn--primary:hover {
    background: var(--xxx-accent-dark) !important;
    border-color: var(--xxx-accent-dark) !important;
}
.btn-secondary,
.btn--info {
    background: var(--xxx-surface) !important;
    border-color: var(--xxx-border-strong) !important;
    color: var(--xxx-text) !important;
}
.btn-secondary:hover,
.btn--info:hover { background: var(--xxx-surface-2) !important; }
.btn-danger,
.btn--danger {
    background: var(--xxx-danger) !important;
    border-color: var(--xxx-danger) !important;
    color: #fff !important;
}
.btn-success,
.btn--success {
    background: var(--xxx-success) !important;
    border-color: var(--xxx-success) !important;
    color: #fff !important;
}

/* ============= Inputs ============= */
.form-control,
.form-select,
.input-style,
.nice-select {
    border: 1px solid var(--xxx-border-strong) !important;
    border-radius: var(--xxx-radius) !important;
    padding: 8px 12px !important;
    font-size: 13px !important;
    background: var(--xxx-surface) !important;
    color: var(--xxx-text) !important;
    box-shadow: none !important;
    height: auto !important;
    min-height: 40px;
}
.form-control:focus,
.form-select:focus,
.input-style:focus {
    border-color: var(--xxx-accent) !important;
    outline: 2px solid rgba(4, 120, 87, 0.15) !important;
    outline-offset: -1px !important;
}
.form-label,
label {
    font-size: 12px !important;
    font-weight: 500 !important;
    color: var(--xxx-text) !important;
    margin-bottom: 4px !important;
}

/* ============= Tabelas ============= */
.table {
    border: 1px solid var(--xxx-border);
    border-radius: var(--xxx-radius-lg);
    overflow: hidden;
    background: var(--xxx-surface);
    border-collapse: separate;
    border-spacing: 0;
}
.table thead th {
    background: var(--xxx-surface-2) !important;
    color: var(--xxx-text-muted) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    padding: 10px 14px !important;
    border-bottom: 1px solid var(--xxx-border) !important;
}
.table tbody td {
    padding: 12px 14px !important;
    border-bottom: 1px solid var(--xxx-border) !important;
    font-size: 13px;
    color: var(--xxx-text);
}
.table tbody tr:last-child td { border-bottom: 0 !important; }
.table tbody tr:hover td { background: rgba(4, 120, 87, 0.04) !important; }

/* ============= Badges ============= */
.badge {
    border-radius: 999px !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    padding: 4px 10px !important;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

/* ============= Quick stats compact ============= */
.dashboard-amount-card,
.summary-card {
    border: 1px solid var(--xxx-border) !important;
    border-radius: var(--xxx-radius-lg) !important;
    background: var(--xxx-surface) !important;
    box-shadow: none !important;
    padding: 16px !important;
}
.dashboard-amount-card .title,
.summary-card .title {
    font-size: 11px !important;
    color: var(--xxx-text-muted) !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-weight: 600 !important;
}
.dashboard-amount-card .amount,
.summary-card .amount {
    font-size: 22px !important;
    font-weight: 700 !important;
    color: var(--xxx-text) !important;
    margin-top: 4px !important;
    font-variant-numeric: tabular-nums;
}

/* ============= Scrollbar refinado ============= */
.sidebar-inner::-webkit-scrollbar { width: 6px; }
.sidebar-inner::-webkit-scrollbar-thumb { background: rgba(255, 255, 255, 0.1); border-radius: 3px; }
.sidebar-inner::-webkit-scrollbar-track { background: transparent; }

/* ============= Anular gradients/blur premium ============= */
.xxx-shell-layout,
.xxx-shell-ready,
.xxx-dashboard-page * {
    backdrop-filter: none !important;
}

/* CSS específico que tava no master.blade.php — neutralizar */
.sidebar-menu .sidebar-menu-item.active > a {
    background-image: none !important;
}

/* ============================================================
   USER painel — sweep visual (xxx-dashboard-page--user)
   ============================================================ */

body.xxx-dashboard-page--user {
    background: var(--xxx-bg) !important;
    color: var(--xxx-text);
}

.xxx-dashboard-page--user .sidebar,
.xxx-dashboard-page--user .xxxpay-menu-shell,
.xxx-dashboard-page--user [class*="menu-shell"] {
    background: var(--xxx-sidebar-bg) !important;
    background-image: none !important;
    border-right: 1px solid rgba(255, 255, 255, 0.06) !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}

.xxx-dashboard-page--user .sidebar-user-area,
.xxx-dashboard-page--user .balance-card,
.xxx-dashboard-page--user [class*="balance"][class*="card"],
.xxx-dashboard-page--user [class*="account-balance"] {
    background: rgba(255, 255, 255, 0.03) !important;
    background-image: none !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: var(--xxx-radius-lg) !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    margin: 12px 14px !important;
    padding: 14px !important;
}

/* Botão "Painel" e itens do menu user — paleta sóbria */
.xxx-dashboard-page--user .sidebar a,
.xxx-dashboard-page--user .menu-shell-link,
.xxx-dashboard-page--user [class*="menu-item"] a,
.xxx-dashboard-page--user .nav-link {
    background-image: none !important;
    box-shadow: none !important;
}

.xxx-dashboard-page--user .sidebar a.active,
.xxx-dashboard-page--user .sidebar a[class*="active"],
.xxx-dashboard-page--user .menu-shell-link.active,
.xxx-dashboard-page--user .nav-link.active,
.xxx-dashboard-page--user [aria-current="page"] {
    background: var(--xxx-sidebar-active-bg) !important;
    background-image: none !important;
    color: var(--xxx-sidebar-active-text) !important;
    border-left: 3px solid var(--xxx-accent) !important;
    box-shadow: none !important;
}

/* Quadrados-ícones laranja saturado na lista — neutralizar */
.xxx-dashboard-page--user .menu-shell-link i,
.xxx-dashboard-page--user .menu-shell-link [class*="icon"],
.xxx-dashboard-page--user .sidebar-menu i,
.xxx-dashboard-page--user .nav-link i {
    background: rgba(255, 255, 255, 0.04) !important;
    background-image: none !important;
    color: var(--xxx-sidebar-text) !important;
    border-radius: 8px !important;
    width: 32px !important;
    height: 32px !important;
    display: inline-grid !important;
    place-items: center !important;
    font-size: 14px !important;
    box-shadow: none !important;
}

.xxx-dashboard-page--user .sidebar a:hover i,
.xxx-dashboard-page--user .menu-shell-link:hover i,
.xxx-dashboard-page--user .sidebar a.active i,
.xxx-dashboard-page--user .menu-shell-link.active i {
    background: var(--xxx-accent-soft) !important;
    color: var(--xxx-accent) !important;
}

/* Botão "Fechar" do drawer user — limpa */
.xxx-dashboard-page--user .xxx-shell-close,
.xxx-dashboard-page--user [data-shell-action="close"] {
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    color: var(--xxx-sidebar-text) !important;
    border-radius: 8px !important;
    box-shadow: none !important;
}

/* Sidebar user: scroll mobile funcional */
@media (max-width: 991px) {
    .xxx-dashboard-page--user .sidebar,
    .xxx-dashboard-page--user .xxxpay-menu-shell,
    .xxx-dashboard-page--user .xxx-shell-layout > [class*="menu"],
    .xxx-dashboard-page--user [class*="side-nav"] {
        position: fixed !important;
        left: 0; top: 0; bottom: 0;
        height: 100vh !important;
        width: min(320px, 86vw) !important;
        max-width: 86vw;
        z-index: 1050 !important;
        overflow: hidden !important;
        display: flex !important;
        flex-direction: column !important;
    }
    .xxx-dashboard-page--user .sidebar-inner,
    .xxx-dashboard-page--user .xxx-shell-inner,
    .xxx-dashboard-page--user [class*="menu-shell-inner"],
    .xxx-dashboard-page--user [class*="side-nav-inner"] {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        overscroll-behavior: contain !important;
    }
}

/* ============================================================
   AUTH page (login / register) — landing despoluída
   ============================================================ */

body.xxx-auth-page,
body.xxx-auth-page--user {
    background: var(--xxx-bg) !important;
    background-image: none !important;
    color: var(--xxx-text);
    font-family: "IBM Plex Sans", system-ui, sans-serif !important;
}

.xxx-auth-shell {
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}

.xxx-auth-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    max-width: 480px !important;
    margin: 0 auto !important;
    padding: 32px 16px !important;
    gap: 0 !important;
    min-height: 100vh;
    align-content: center;
}

@media (min-width: 992px) {
    .xxx-auth-grid {
        grid-template-columns: 1.1fr 1fr !important;
        max-width: 980px !important;
        padding: 48px 24px !important;
        gap: 40px !important;
    }
}

/* Showcase à esquerda: enxuto, sem decorações pesadas */
.xxx-auth-showcase,
[class*="auth-showcase"] {
    display: none !important;
}

@media (min-width: 992px) {
    .xxx-auth-showcase,
    [class*="auth-showcase"] {
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        background: var(--xxx-surface) !important;
        background-image: none !important;
        border: 1px solid var(--xxx-border) !important;
        border-radius: 12px !important;
        padding: 32px !important;
        box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03) !important;
        backdrop-filter: none !important;
    }
    .xxx-auth-showcase * {
        background-image: none !important;
        text-shadow: none !important;
    }
    .xxx-auth-showcase [class*="stats"],
    .xxx-auth-showcase [class*="badge"] {
        gap: 8px !important;
    }
}

.xxx-auth-content {
    background: var(--xxx-surface) !important;
    background-image: none !important;
    border: 1px solid var(--xxx-border) !important;
    border-radius: 12px !important;
    padding: 28px 24px !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03) !important;
    backdrop-filter: none !important;
}

.xxx-auth-content h1,
.xxx-auth-content h2,
.xxx-auth-content h3 {
    font-size: 20px !important;
    font-weight: 600 !important;
    color: var(--xxx-text) !important;
    margin: 0 0 4px !important;
}
.xxx-auth-content .lead,
.xxx-auth-content p {
    font-size: 13px !important;
    color: var(--xxx-text-muted) !important;
    line-height: 1.5;
}

/* Cards/seções decorativas extras na auth — esconder */
.xxx-auth-content [class*="stats"],
.xxx-auth-content [class*="trust"],
.xxx-auth-content [class*="badge-row"],
.xxx-auth-content [class*="showcase-extra"],
.xxx-auth-content [class*="features"] {
    display: none !important;
}

/* Login/register form clean */
.xxx-auth-content form .form-group,
.xxx-auth-content form .form-floating,
.xxx-auth-content form > div {
    margin-bottom: 12px !important;
}

.xxx-auth-content .btn-primary,
.xxx-auth-content button[type="submit"] {
    width: 100%;
    margin-top: 4px;
}

/* Tira footer marketing pesado da auth */
.xxx-auth-page footer,
.xxx-auth-page [class*="footer-marketing"],
.xxx-auth-page [class*="auth-footer-extra"] {
    display: none !important;
}

/* ============================================================
   AUTH (login/register) — override agressivo, vibe banco
   ============================================================ */

body.xxx-auth-page,
body.xxx-auth-page--user {
    background: #f4f5f7 !important;
    background-image: none !important;
    color: #18181b;
    min-height: 100vh;
}

/* Bg bubbles tipo cassino: ESCONDER */
body.xxx-auth-page .bg-bubbles,
body.xxx-auth-page--user .bg-bubbles,
body .bg-bubbles {
    display: none !important;
}

/* Account/section wrapper — neutralizado */
body.xxx-auth-page .account,
body.xxx-auth-page .account-area,
body.xxx-auth-page--user .account,
body.xxx-auth-page--user .account-area {
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    padding: 24px 16px !important;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

body.xxx-auth-page .account-wrapper,
body.xxx-auth-page--user .account-wrapper {
    width: 100%;
    max-width: 420px;
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 14px !important;
    padding: 32px 24px !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.04), 0 4px 12px rgba(0,0,0,0.04) !important;
    backdrop-filter: none !important;
}

body.xxx-auth-page .account-logo,
body.xxx-auth-page--user .account-logo {
    margin-bottom: 24px !important;
    text-align: center;
}
body.xxx-auth-page .account-logo img,
body.xxx-auth-page--user .account-logo img {
    max-height: 36px !important;
    width: auto !important;
}

/* Tira note "Acesso rápido seguro..." e showcase decorativos */
.xxx-auth-note,
.xxx-auth-content [class*="trust-list"],
.xxx-auth-content [class*="benefit-list"],
.xxx-auth-content .extra-info,
[class*="auth-showcase"],
.xxx-auth-showcase {
    display: none !important;
}

/* Switch entrar/cadastrar — pill clean */
[class*="auth-switch"] {
    margin: 0 0 20px !important;
    padding: 4px !important;
    background: #f4f4f5 !important;
    border-radius: 10px !important;
    display: flex !important;
    gap: 4px !important;
    box-shadow: none !important;
    border: 0 !important;
}
[class*="auth-switch"] a {
    flex: 1;
    padding: 9px 12px !important;
    text-align: center;
    border-radius: 7px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #525252 !important;
    text-decoration: none !important;
    background: transparent !important;
    border: 0 !important;
    transition: background 80ms ease;
}
[class*="auth-switch"] a:hover { color: #18181b !important; }
[class*="auth-switch"] a.active,
[class*="auth-switch"] a[aria-current="page"],
[class*="auth-switch"] a[class*="active"] {
    background: #ffffff !important;
    color: #f97316 !important;
    box-shadow: 0 1px 2px rgba(0,0,0,0.05) !important;
}

/* Title & paragraph */
body.xxx-auth-page .account-wrapper .title,
body.xxx-auth-page--user .account-wrapper .title,
body.xxx-auth-page .account-wrapper h5,
body.xxx-auth-page .account-wrapper h2 {
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #18181b !important;
    margin: 0 0 4px !important;
    text-align: left;
    letter-spacing: -0.01em;
}
body.xxx-auth-page .account-wrapper > p,
body.xxx-auth-page--user .account-wrapper > p {
    font-size: 13px !important;
    color: #6b7280 !important;
    margin: 0 0 20px !important;
    line-height: 1.5;
    text-align: left;
}

/* Inputs auth */
body.xxx-auth-page .form-group,
body.xxx-auth-page--user .form-group {
    margin-bottom: 14px !important;
}
body.xxx-auth-page .input-group,
body.xxx-auth-page--user .input-group {
    border: 1px solid #d4d4d8 !important;
    border-radius: 9px !important;
    overflow: hidden;
    background: #ffffff !important;
    transition: border-color 80ms ease;
}
body.xxx-auth-page .input-group:focus-within,
body.xxx-auth-page--user .input-group:focus-within {
    border-color: #f97316 !important;
    box-shadow: 0 0 0 3px rgba(249, 115, 22, 0.12) !important;
}
body.xxx-auth-page .input-group-text,
body.xxx-auth-page--user .input-group-text {
    background: #fafafa !important;
    border: 0 !important;
    border-right: 1px solid #e5e7eb !important;
    color: #525252 !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    padding: 0 12px !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}
body.xxx-auth-page .form-control,
body.xxx-auth-page .form--control,
body.xxx-auth-page--user .form-control,
body.xxx-auth-page--user .form--control {
    border: 1px solid #d4d4d8 !important;
    border-radius: 9px !important;
    padding: 10px 14px !important;
    font-size: 14px !important;
    background: #ffffff !important;
    color: #18181b !important;
    box-shadow: none !important;
    height: 44px !important;
    min-height: 44px !important;
    transition: border-color 80ms ease, box-shadow 80ms ease;
}
body.xxx-auth-page .input-group .form--control,
body.xxx-auth-page .input-group .form-control,
body.xxx-auth-page--user .input-group .form--control,
body.xxx-auth-page--user .input-group .form-control {
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
body.xxx-auth-page .form-control:focus,
body.xxx-auth-page .form--control:focus,
body.xxx-auth-page--user .form-control:focus,
body.xxx-auth-page--user .form--control:focus {
    border-color: #f97316 !important;
    box-shadow: 0 0 0 3px rgba(249, 115, 22, 0.12) !important;
}

/* Show password eye */
body.xxx-auth-page .show-pass,
body.xxx-auth-page--user .show-pass {
    color: #6b7280 !important;
    z-index: 5;
}

/* Submit button */
body.xxx-auth-page .btn--base,
body.xxx-auth-page--user .btn--base {
    height: 46px !important;
    background: #f97316 !important;
    border: 0 !important;
    border-radius: 9px !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    box-shadow: none !important;
    transition: background 80ms ease;
}
body.xxx-auth-page .btn--base:hover,
body.xxx-auth-page--user .btn--base:hover {
    background: #ea580c !important;
}

/* Forgot link */
body.xxx-auth-page .forgot-item a,
body.xxx-auth-page--user .forgot-item a {
    color: #f97316 !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
}
body.xxx-auth-page .forgot-item a:hover,
body.xxx-auth-page--user .forgot-item a:hover {
    color: #ea580c !important;
    text-decoration: underline !important;
}

/* Or divider */
body.xxx-auth-page .or-area,
body.xxx-auth-page--user .or-area {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 18px 0 14px !important;
}
body.xxx-auth-page .or-line,
body.xxx-auth-page--user .or-line {
    flex: 1;
    height: 1px;
    background: #e5e7eb !important;
}
body.xxx-auth-page .or-title,
body.xxx-auth-page--user .or-title {
    font-size: 11px !important;
    color: #9ca3af !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

/* Account item (Ainda não tem conta? Abrir conta) */
body.xxx-auth-page .account-item,
body.xxx-auth-page--user .account-item {
    text-align: center;
    font-size: 13px !important;
    color: #6b7280 !important;
}
body.xxx-auth-page .account-item a,
body.xxx-auth-page .account-control-btn,
body.xxx-auth-page--user .account-item a,
body.xxx-auth-page--user .account-control-btn {
    color: #f97316 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}
body.xxx-auth-page .account-item a:hover,
body.xxx-auth-page--user .account-item a:hover {
    text-decoration: underline !important;
}

/* ============================================================
   AUTH mobile fix — card horizontal, inputs corretos, padding
   ============================================================ */

body.xxx-auth-page .account,
body.xxx-auth-page--user .account {
    min-height: 100vh !important;
    min-height: 100dvh !important;
    padding: 16px !important;
}

body.xxx-auth-page .account-area,
body.xxx-auth-page--user .account-area {
    width: 100%;
    max-width: 460px;
    margin: 0 auto !important;
}

body.xxx-auth-page .account-wrapper,
body.xxx-auth-page--user .account-wrapper {
    width: 100% !important;
    padding: 24px 20px !important;
    border-radius: 14px !important;
}
@media (min-width: 480px) {
    body.xxx-auth-page .account-wrapper,
    body.xxx-auth-page--user .account-wrapper {
        padding: 28px 24px !important;
    }
}

/* Input-group HORIZONTAL forçado (Bootstrap às vezes quebra) */
body.xxx-auth-page .input-group,
body.xxx-auth-page--user .input-group {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    width: 100% !important;
}
body.xxx-auth-page .input-group-prepend,
body.xxx-auth-page--user .input-group-prepend {
    display: flex !important;
    flex-shrink: 0 !important;
    margin: 0 !important;
}
body.xxx-auth-page .input-group .form-control,
body.xxx-auth-page .input-group .form--control,
body.xxx-auth-page--user .input-group .form-control,
body.xxx-auth-page--user .input-group .form--control {
    flex: 1 1 auto !important;
    width: 1% !important;
    min-width: 0 !important;
}
body.xxx-auth-page .input-group-text,
body.xxx-auth-page--user .input-group-text {
    white-space: nowrap !important;
    min-width: 96px !important;
    justify-content: center !important;
}

/* Input password — show/hide icon dentro do input */
body.xxx-auth-page #show_hide_password,
body.xxx-auth-page--user #show_hide_password {
    position: relative !important;
}
body.xxx-auth-page #show_hide_password .show-pass,
body.xxx-auth-page--user #show_hide_password .show-pass {
    position: absolute !important;
    right: 14px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 28px; height: 28px;
    display: grid; place-items: center;
    color: #6b7280 !important;
}
body.xxx-auth-page #show_hide_password .form-control,
body.xxx-auth-page #show_hide_password .form--control,
body.xxx-auth-page--user #show_hide_password .form-control,
body.xxx-auth-page--user #show_hide_password .form--control {
    padding-right: 44px !important;
}

/* Row do form: gap controlado, sem margens negativas estranhas */
body.xxx-auth-page .ml-b-20,
body.xxx-auth-page--user .ml-b-20 {
    margin: 0 !important;
}

/* ============================================================
   DASHBOARD — subir cards (menos espaço top)
   ============================================================ */

body.xxx-dashboard-page--user .xxx-shell-content,
body.xxx-dashboard-page--user .body-wrapper,
body.xxx-dashboard-page--user main {
    padding-top: 16px !important;
}
@media (min-width: 768px) {
    body.xxx-dashboard-page--user .xxx-shell-content,
    body.xxx-dashboard-page--user .body-wrapper,
    body.xxx-dashboard-page--user main {
        padding-top: 20px !important;
    }
}

/* xdash-head margin reduzido */
body.xxx-dashboard-page--user .xdash-head {
    margin-bottom: 14px !important;
}
body.xxx-dashboard-page--user .xdash-head h1 {
    font-size: 20px !important;
    margin-top: 0 !important;
}
body.xxx-dashboard-page--user .xdash-head p {
    font-size: 12px !important;
    margin-top: 2px !important;
}

/* Tira margens "mt-10 / mt-30" gigantes herdadas */
body.xxx-dashboard-page--user .mt-10 { margin-top: 0 !important; }
body.xxx-dashboard-page--user .mt-30 { margin-top: 16px !important; }
body.xxx-dashboard-page--user .mt-20 { margin-top: 12px !important; }

/* ============================================================
   PÁGINAS INTERNAS (pix, cobrar, extrato, conta) — sweep clean
   ============================================================ */

body.xxx-dashboard-page--user [class*="dashboard-area"],
body.xxx-dashboard-page--user .xxx-page-section {
    padding: 0 !important;
    margin: 0 0 16px !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* Cards/sections genéricos das páginas internas */
body.xxx-dashboard-page--user section .card,
body.xxx-dashboard-page--user section .panel,
body.xxx-dashboard-page--user main .card,
body.xxx-dashboard-page--user main .panel {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    box-shadow: 0 1px 2px rgba(0,0,0,0.03) !important;
    padding: 0 !important;
    margin-bottom: 16px !important;
    overflow: hidden;
}
body.xxx-dashboard-page--user section .card-header,
body.xxx-dashboard-page--user section .card-title,
body.xxx-dashboard-page--user main .card-header {
    background: transparent !important;
    border-bottom: 1px solid #e5e7eb !important;
    padding: 14px 18px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #18181b !important;
}
body.xxx-dashboard-page--user section .card-body,
body.xxx-dashboard-page--user main .card-body {
    padding: 16px 18px !important;
}

/* Tira eyebrows e copies decorativos */
body.xxx-dashboard-page--user .xxx-section-eyebrow,
body.xxx-dashboard-page--user .xxx-section-copy,
body.xxx-dashboard-page--user [class*="page-hero"]:not([class*="card"]),
body.xxx-dashboard-page--user [class*="page-banner"]:not([class*="card"]),
body.xxx-dashboard-page--user [class*="welcome-banner"],
body.xxx-dashboard-page--user [class*="info-banner"]:not(.alert):not(.notice) {
    display: none !important;
}

/* Section title das páginas internas — slim */
body.xxx-dashboard-page--user .xxx-section-title,
body.xxx-dashboard-page--user .page-title,
body.xxx-dashboard-page--user h1.title,
body.xxx-dashboard-page--user h2.title {
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #18181b !important;
    margin: 0 0 14px !important;
    letter-spacing: -0.01em !important;
    line-height: 1.2 !important;
}
body.xxx-dashboard-page--user h3.title {
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #18181b !important;
}

/* Filtros / chips / pills — clean */
body.xxx-dashboard-page--user [class*="filter-bar"],
body.xxx-dashboard-page--user [class*="chip-list"] {
    padding: 12px !important;
    margin-bottom: 14px !important;
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 10px !important;
}

/* Tabelas: padrão clean banco */
body.xxx-dashboard-page--user .table {
    border: 1px solid #e5e7eb !important;
    border-radius: 10px !important;
    overflow: hidden;
    background: #ffffff !important;
    margin-bottom: 0 !important;
}
body.xxx-dashboard-page--user .table thead th {
    background: #fafafa !important;
    color: #525252 !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    padding: 10px 14px !important;
    border-bottom: 1px solid #e5e7eb !important;
    border-right: 0 !important;
}
body.xxx-dashboard-page--user .table tbody td {
    padding: 11px 14px !important;
    border-bottom: 1px solid #f4f4f5 !important;
    font-size: 13px !important;
    color: #18181b !important;
    border-right: 0 !important;
}
body.xxx-dashboard-page--user .table tbody tr:last-child td { border-bottom: 0 !important; }
body.xxx-dashboard-page--user .table tbody tr:hover td {
    background: #fff7ed !important;
}

/* Status badges padronizados */
body.xxx-dashboard-page--user .badge,
body.xxx-dashboard-page--user [class*="status-badge"] {
    display: inline-flex !important;
    align-items: center;
    padding: 3px 10px !important;
    border-radius: 999px !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    line-height: 1.4 !important;
}

/* Forms (cobrar, saque) — labels clean */
body.xxx-dashboard-page--user .form-label,
body.xxx-dashboard-page--user form label {
    font-size: 11px !important;
    font-weight: 600 !important;
    color: #525252 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    margin-bottom: 4px !important;
}
body.xxx-dashboard-page--user .form-control,
body.xxx-dashboard-page--user .form--control,
body.xxx-dashboard-page--user .form-select {
    border: 1px solid #d4d4d8 !important;
    border-radius: 9px !important;
    padding: 10px 14px !important;
    font-size: 14px !important;
    background: #ffffff !important;
    color: #18181b !important;
    box-shadow: none !important;
    height: 44px !important;
    min-height: 44px !important;
}
body.xxx-dashboard-page--user .form-control:focus,
body.xxx-dashboard-page--user .form--control:focus,
body.xxx-dashboard-page--user .form-select:focus {
    border-color: #f97316 !important;
    box-shadow: 0 0 0 3px rgba(249, 115, 22, 0.12) !important;
    outline: 0 !important;
}

/* Botão primário padrão */
body.xxx-dashboard-page--user .btn--base,
body.xxx-dashboard-page--user .btn-primary {
    background: #f97316 !important;
    border-color: #f97316 !important;
    color: #fff !important;
    border-radius: 9px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    padding: 10px 18px !important;
    height: 44px !important;
    box-shadow: none !important;
}
body.xxx-dashboard-page--user .btn--base:hover,
body.xxx-dashboard-page--user .btn-primary:hover {
    background: #ea580c !important;
    border-color: #ea580c !important;
}
body.xxx-dashboard-page--user .btn--base:disabled,
body.xxx-dashboard-page--user .btn-primary:disabled {
    opacity: 0.6 !important;
    cursor: not-allowed !important;
}

/* Cards "métricas" topo das páginas internas (pix/cobrar/extrato) — viram xdash-style */
body.xxx-dashboard-page--user [class*="page-stats"] [class*="stat-card"],
body.xxx-dashboard-page--user [class*="page-summary"] [class*="summary-item"],
body.xxx-dashboard-page--user .summary-card {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    padding: 16px 18px !important;
    box-shadow: 0 1px 2px rgba(0,0,0,0.03) !important;
    background-image: none !important;
}

/* ============================================================
   LANDING (xxxpay.online/) — clean homepage
   ============================================================ */

body.xxx-public-page,
body:not(.xxx-dashboard-page-user):not(.xxx-auth-page) [class*="hero-section"]:not(.alert) {
    background-image: none !important;
}

body [class*="bg-pattern"]:not(.alert),
body [class*="bg-gradient-overlay"]:not(.alert),
body .floating-shapes,
body [class*="floating-element"],
body .hero-blob {
    display: none !important;
}

/* ============================================================
   SWEEP UNIVERSAL — esconder decoração em todas páginas internas
   ============================================================ */

/* Hero/copy decorativos que aparecem antes do conteúdo útil */
body.xxx-dashboard-page--user .wd-tag,
body.xxx-dashboard-page--user .wd-copy-card,
body.xxx-dashboard-page--user .wd-guide-card,
body.xxx-dashboard-page--user .wd-side-card,
body.xxx-dashboard-page--user .wd-metrics,
body.xxx-dashboard-page--user [class*="-copy-card"],
body.xxx-dashboard-page--user [class*="-guide-card"],
body.xxx-dashboard-page--user [class*="-side-card"]:not(.xwd-card),
body.xxx-dashboard-page--user [class*="hero-card"]:not(.xdash-card),
body.xxx-dashboard-page--user [class*="overview-banner"],
body.xxx-dashboard-page--user [class*="page-intro"],
body.xxx-dashboard-page--user [class*="page-greeting"],
body.xxx-dashboard-page--user [class*="page-subtitle"],
body.xxx-dashboard-page--user .wd-warning:not(.xwd-warning),
body.xxx-dashboard-page--user [class*="-step-list"],
body.xxx-dashboard-page--user [class*="step-list"]:not(.required),
body.xxx-dashboard-page--user [class*="-explanation"],
body.xxx-dashboard-page--user [class*="-info-card"]:not(.alert),
body.xxx-dashboard-page--user [class*="-flow-card"],
body.xxx-dashboard-page--user [class*="instruction-card"],
body.xxx-dashboard-page--user [class*="quick-actions-card"]:not(.required) {
    display: none !important;
}

/* Reduzir padding de container body-wrapper das páginas internas */
body.xxx-dashboard-page--user .body-wrapper {
    padding: 16px !important;
    max-width: 1100px !important;
    margin: 0 auto !important;
}
@media (min-width: 768px) {
    body.xxx-dashboard-page--user .body-wrapper {
        padding: 20px 24px !important;
    }
}

/* ============================================================
   LANDING PÚBLICA (xxxpay.online/) — clean, banco
   ============================================================ */

body.xxx-public-page,
body[data-page="public"] {
    background: #ffffff !important;
    font-family: "IBM Plex Sans", system-ui, -apple-system, sans-serif !important;
}

/* Esconder seções decorativas/animação */
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="hero-pattern"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="hero-blob"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="hero-orbit"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="testimonial-marquee"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="brand-strip"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="partner-strip"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="floating-card"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="badge-row"]:not([class*="header"]),
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) .stats-counter,
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="newsletter-section"]:not([class*="footer"]),
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="cta-banner"]:not([class*="footer"]) {
    display: none !important;
}

/* Hero da landing — clean */
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="banner-section"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="hero-section"] {
    background: #fafafa !important;
    background-image: none !important;
    padding: 48px 16px !important;
    text-align: left;
}
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="banner-section"] h1,
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="hero-section"] h1,
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="banner-content"] h1 {
    font-size: 32px !important;
    font-weight: 700 !important;
    color: #18181b !important;
    line-height: 1.15 !important;
    letter-spacing: -0.02em !important;
    margin: 0 0 12px !important;
}
@media (min-width: 768px) {
    body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="banner-section"] h1,
    body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="hero-section"] h1 {
        font-size: 44px !important;
    }
}
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="banner-section"] p,
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="hero-section"] p {
    font-size: 15px !important;
    color: #525252 !important;
    line-height: 1.55 !important;
}

/* CTAs landing */
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="banner-section"] .btn,
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="hero-section"] .btn {
    height: 48px !important;
    border-radius: 10px !important;
    padding: 0 24px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    box-shadow: none !important;
}

/* Sections internas da landing — só feature-section essencial */
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) section[class*="feature"]:not([class*="footer"]) {
    padding: 56px 16px !important;
    background: #ffffff !important;
    background-image: none !important;
}
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) section h2 {
    font-size: 26px !important;
    font-weight: 700 !important;
    color: #18181b !important;
    margin: 0 0 12px !important;
    letter-spacing: -0.01em !important;
}

/* Cards de feature da landing */
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="feature-card"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="service-card"] {
    background: #ffffff !important;
    background-image: none !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    padding: 24px !important;
    box-shadow: 0 1px 2px rgba(0,0,0,0.03) !important;
}
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="feature-card"] h3,
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="service-card"] h3 {
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #18181b !important;
    margin: 12px 0 6px !important;
}
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="feature-card"] p,
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="service-card"] p {
    font-size: 13px !important;
    color: #525252 !important;
    line-height: 1.55 !important;
}

/* Header public */
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) header[class*="header"]:not([class*="content-header"]) {
    background: #ffffff !important;
    border-bottom: 1px solid #e5e7eb !important;
    box-shadow: none !important;
    padding: 14px 16px !important;
}

/* ============================================================
   FONTE: usar IBM Plex Sans em TUDO (incluindo números)
   Tira "IBM Plex Mono" feio dos valores
   ============================================================ */

body.xxx-dashboard-page--user *,
body.xxx-auth-page * {
    font-family: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif !important;
}

/* Mantém mono APENAS em IDs/códigos/end-to-end onde monospace faz sentido */
body.xxx-dashboard-page--user .wd-code,
body.xxx-dashboard-page--user .xrm-trx-code,
body.xxx-dashboard-page--user .xst-code,
body.xxx-dashboard-page--user [class*="-code"]:not([class*="codepix"]):not([class*="copy-code"]),
body.xxx-dashboard-page--user .xrm-copy-field,
body.xxx-dashboard-page--user code,
body.xxx-dashboard-page--user pre {
    font-family: "IBM Plex Mono", "SF Mono", Menlo, Consolas, monospace !important;
}

/* Garante números em geral usam tabular-nums (alinhamento de colunas) */
body.xxx-dashboard-page--user [class*="amount"],
body.xxx-dashboard-page--user [class*="value"],
body.xxx-dashboard-page--user [class*="balance"],
body.xxx-dashboard-page--user .xst-stat-val,
body.xxx-dashboard-page--user .xst-amount,
body.xxx-dashboard-page--user .xrm-status-amount,
body.xxx-dashboard-page--user .xdash-card-value,
body.xxx-dashboard-page--user .xnav-card-balance strong,
body.xxx-dashboard-page--user .adminv2__cash-value {
    font-variant-numeric: tabular-nums !important;
}

/* ============================================================
   LANDING PÚBLICA — sweep agressivo + botões auth modal
   ============================================================ */

.btn-xauth-ghost,
.btn-xauth-primary {
    display: inline-flex; align-items: center; justify-content: center;
    height: 40px; padding: 0 18px; margin-left: 8px;
    border-radius: 10px;
    font-size: 13px; font-weight: 600;
    cursor: pointer;
    text-decoration: none;
    font-family: "IBM Plex Sans", system-ui, sans-serif;
    transition: background 80ms ease, color 80ms ease;
    border: 1px solid #d4d4d8;
}
.btn-xauth-ghost {
    background: #ffffff;
    color: #18181b;
}
.btn-xauth-ghost:hover { background: #f4f4f5; color: #18181b; text-decoration: none; }
.btn-xauth-primary {
    background: #f97316;
    border-color: #f97316;
    color: #ffffff;
}
.btn-xauth-primary:hover { background: #ea580c; border-color: #ea580c; color: #fff; text-decoration: none; }

/* Esconder seções decorativas ENORMES da landing pública */
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) section.choose-section,
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) section.security-section,
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) section.brand-section,
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) section.testimonials,
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) section[class*="testimonial"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) section[class*="map-section"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) section[class*="how-work"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) section[class*="counter"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) section[class*="newsletter"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) section[class*="download-app"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) section[class*="brand-section"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) section[class*="cta-section"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) section[class*="commission"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) section[class*="agent-section"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) section[class*="merchant-section"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) section[class*="virtual-card"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) section[class*="exchange"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) section.faq:not(:first-of-type),
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="trust-banner"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="achievement"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="image-grid"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="featured-strip"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="floating-card"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="metrics-strip"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="comparison"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="rate-card"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="security-card"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="quote-card"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="globe-card"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="visa-section"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="resumo-operacional"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="condicoes"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="visao-movimentos"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="por-que"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="resposta-rapida"],
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) [class*="implantacao"] {
    display: none !important;
}

/* FAQ pública: manter só se for o ÚNICO bloco essencial */
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) section.faq {
    padding: 40px 16px !important;
    background: #fafafa !important;
}
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) section.faq h2 {
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #18181b !important;
    margin-bottom: 16px !important;
}
body:not(.xxx-dashboard-page--user):not(.xxx-auth-page) section.faq [class*="accordion"] {
    background: #fff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 10px !important;
}

/* ============================================================
   PÁGINA CONTA (perfil) — clean, sem banner azul gigante
   ============================================================ */

body.xxx-dashboard-page--user [class*="profile-cover"],
body.xxx-dashboard-page--user [class*="cover-image"],
body.xxx-dashboard-page--user [class*="profile-banner"],
body.xxx-dashboard-page--user .profile-bg-image,
body.xxx-dashboard-page--user [class*="bg-image-pattern"] {
    display: none !important;
}

/* Card "Configurações de Perfil" header — clean */
body.xxx-dashboard-page--user [class*="profile-card"],
body.xxx-dashboard-page--user [class*="profile-wrapper"] {
    background: #fff !important;
    background-image: none !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    box-shadow: 0 1px 2px rgba(0,0,0,0.03) !important;
    padding: 18px !important;
    margin-bottom: 14px !important;
}

body.xxx-dashboard-page--user [class*="profile-card"] [class*="profile-thumb"],
body.xxx-dashboard-page--user [class*="profile-img"] {
    width: 80px !important;
    height: 80px !important;
    border-radius: 999px !important;
    overflow: hidden !important;
    border: 3px solid #fff !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.10) !important;
    margin: 0 0 12px !important;
}
body.xxx-dashboard-page--user [class*="profile-card"] [class*="profile-thumb"] img,
body.xxx-dashboard-page--user [class*="profile-img"] img {
    width: 100% !important; height: 100% !important; object-fit: cover !important;
}

body.xxx-dashboard-page--user .btn-danger,
body.xxx-dashboard-page--user [class*="delete-account"] {
    background: #ffffff !important;
    border: 1px solid #fecaca !important;
    color: #dc2626 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    padding: 8px 14px !important;
    height: 38px !important;
    border-radius: 9px !important;
    box-shadow: none !important;
}
body.xxx-dashboard-page--user .btn-danger:hover,
body.xxx-dashboard-page--user [class*="delete-account"]:hover {
    background: #fef2f2 !important;
    color: #b91c1c !important;
    border-color: #fca5a5 !important;
}

/* ============================================================
   PROFILE — CSS overlay clean
   ============================================================ */

body.xxx-dashboard-page--user .profile-wallpaper,
body.xxx-dashboard-page--user .profile-wallpaper *,
body.xxx-dashboard-page--user [class*="profile-wallpaper"],
body.xxx-dashboard-page--user [class*="virtual-card-bg"] {
    display: none !important;
}

body.xxx-dashboard-page--user .custom-card {
    background: #ffffff !important;
    background-image: none !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    box-shadow: 0 1px 2px rgba(0,0,0,0.03) !important;
    padding: 18px !important;
    margin-bottom: 14px !important;
}

body.xxx-dashboard-page--user .custom-card .dashboard-header-wrapper {
    display: flex; align-items: center; justify-content: space-between; gap: 10px;
    padding: 0 0 14px !important;
    margin: 0 0 14px !important;
    border-bottom: 1px solid #e5e7eb !important;
}
body.xxx-dashboard-page--user .custom-card .dashboard-header-wrapper h4,
body.xxx-dashboard-page--user .custom-card .dashboard-header-wrapper .title {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #18181b !important;
    margin: 0 !important;
    letter-spacing: -0.01em !important;
}

body.xxx-dashboard-page--user .delete-btn {
    background: #ffffff !important;
    border: 1px solid #fecaca !important;
    color: #dc2626 !important;
    padding: 7px 12px !important;
    height: 34px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    line-height: 1 !important;
}
body.xxx-dashboard-page--user .delete-btn:hover {
    background: #fef2f2 !important;
    color: #b91c1c !important;
    border-color: #fca5a5 !important;
}

body.xxx-dashboard-page--user .profile-settings-wrapper {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    padding: 0 !important;
    margin-bottom: 18px !important;
    background: transparent !important;
    background-image: none !important;
    border: 0 !important;
}

body.xxx-dashboard-page--user .profile-thumb-content {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    flex: 1;
}
body.xxx-dashboard-page--user .profile-thumb {
    position: relative;
    width: 64px !important;
    height: 64px !important;
    flex-shrink: 0;
}
body.xxx-dashboard-page--user .profile-thumb .avatar-preview,
body.xxx-dashboard-page--user .profile-thumb .profilePicPreview {
    width: 64px !important;
    height: 64px !important;
    border-radius: 999px !important;
    border: 2px solid #fff !important;
    box-shadow: 0 1px 4px rgba(0,0,0,0.08) !important;
    overflow: hidden;
    background-size: cover !important;
    background-position: center !important;
}
body.xxx-dashboard-page--user .profile-thumb .avatar-edit {
    position: absolute !important;
    right: -2px !important; bottom: -2px !important;
    width: 24px !important; height: 24px !important;
}
body.xxx-dashboard-page--user .profile-thumb .avatar-edit label {
    width: 24px !important; height: 24px !important;
    background: #f97316 !important;
    color: #fff !important;
    border-radius: 999px !important;
    display: grid !important;
    place-items: center !important;
    font-size: 11px !important;
    cursor: pointer !important;
    border: 2px solid #fff !important;
}

body.xxx-dashboard-page--user .profile-content .username {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #18181b !important;
    margin: 0 0 2px !important;
}
body.xxx-dashboard-page--user .profile-content .user-info-list {
    list-style: none; padding: 0; margin: 0;
}
body.xxx-dashboard-page--user .profile-content .user-info-list li {
    font-size: 12px !important;
    color: #6b7280 !important;
}
body.xxx-dashboard-page--user .profile-content .user-info-list i {
    margin-right: 6px;
    color: #f97316;
}

/* Form profile fields */
body.xxx-dashboard-page--user .profile-form-area .form-group label,
body.xxx-dashboard-page--user .card-form .form-group label {
    font-size: 11px !important;
    font-weight: 600 !important;
    color: #525252 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    margin-bottom: 6px !important;
}
body.xxx-dashboard-page--user .profile-form-area .form--control,
body.xxx-dashboard-page--user .card-form .form--control,
body.xxx-dashboard-page--user .profile-form-area .form-control,
body.xxx-dashboard-page--user .card-form .form-control {
    height: 42px !important;
    padding: 8px 12px !important;
    font-size: 13px !important;
    border-radius: 8px !important;
    border: 1px solid #d4d4d8 !important;
    background: #fff !important;
    color: #18181b !important;
    box-shadow: none !important;
}

body.xxx-dashboard-page--user .input-group .phone-code {
    background: #fafafa !important;
    border: 1px solid #d4d4d8 !important;
    border-right: 0 !important;
    border-radius: 8px 0 0 8px !important;
    color: #525252 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    padding: 0 12px !important;
}

/* Taxas ativas — substituir cards decorativos por slim */
body.xxx-dashboard-page--user .xxx-profile-rates {
    background: #ffffff !important;
    background-image: none !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    box-shadow: 0 1px 2px rgba(0,0,0,0.03) !important;
    overflow: visible !important;
}
body.xxx-dashboard-page--user .xxx-profile-rates__head {
    padding: 16px 18px 12px !important;
}
body.xxx-dashboard-page--user .xxx-profile-rates__head h4 {
    font-size: 15px !important;
    font-weight: 700 !important;
    margin: 0 0 4px !important;
}
body.xxx-dashboard-page--user .xxx-profile-rates__head p {
    font-size: 12px !important;
    color: #6b7280 !important;
    line-height: 1.4 !important;
}
body.xxx-dashboard-page--user .xxx-profile-rates__badge {
    background: #fff7ed !important;
    color: #ea580c !important;
    border: 1px solid #fed7aa !important;
    padding: 5px 10px !important;
    font-size: 10px !important;
    letter-spacing: 0.06em !important;
    box-shadow: none !important;
}
body.xxx-dashboard-page--user .xxx-profile-rates__grid {
    padding: 0 18px 18px !important;
    gap: 12px !important;
}
body.xxx-dashboard-page--user .xxx-profile-rates__card {
    background: #fafafa !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 10px !important;
    padding: 14px 16px !important;
    box-shadow: none !important;
}
body.xxx-dashboard-page--user .xxx-profile-rates__eyebrow {
    font-size: 10px !important;
    letter-spacing: 0.08em !important;
    color: #6b7280 !important;
    margin-bottom: 6px !important;
}
body.xxx-dashboard-page--user .xxx-profile-rates__value {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #18181b !important;
    line-height: 1.2 !important;
}
body.xxx-dashboard-page--user .xxx-profile-rates__value small {
    font-size: 90% !important;
    color: #f97316 !important;
}
body.xxx-dashboard-page--user .xxx-profile-rates__copy {
    font-size: 11px !important;
    color: #6b7280 !important;
    line-height: 1.4 !important;
    margin: 8px 0 0 !important;
}

/* btn--base padronizado */
body.xxx-dashboard-page--user .custom-card .btn--base {
    background: #f97316 !important;
    border-color: #f97316 !important;
    color: #fff !important;
    height: 42px !important;
    padding: 0 18px !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
}
body.xxx-dashboard-page--user .custom-card .btn--base:hover {
    background: #ea580c !important;
    border-color: #ea580c !important;
}

/* ============================================================
   Garantir que ícones FontAwesome carregam (mesmo na landing)
   ============================================================ */
.xland .fas, .xland .far, .xland .fab, .xland .las, .xland .lab {
    font-family: "Font Awesome 6 Free", "Font Awesome 5 Free", "Line Awesome Free", FontAwesome !important;
    font-weight: 900;
    line-height: 1;
}

/* ============================================================
   FIX cirúrgico — sidebar user mobile + topbar limpa
   ============================================================ */

/* Sidebar user: estrutura .sidebar > .sidebar-inner > .sidebar-menu-inner-wrapper */
@media (max-width: 991px) {
    .xxx-dashboard-page--user .sidebar {
        position: fixed !important;
        left: 0 !important;
        top: 0 !important;
        bottom: 0 !important;
        height: 100vh !important;
        height: 100dvh !important;
        width: min(320px, 86vw) !important;
        z-index: 1050 !important;
        overflow: hidden !important;
        display: flex !important;
        flex-direction: column !important;
        transform: translateX(-100%);
        transition: transform 220ms ease;
    }
    .xxx-dashboard-page--user .sidebar.show,
    .xxx-dashboard-page--user .sidebar.active,
    .xxx-shell-layout.xxx-shell-layout--open .xxx-dashboard-page--user .sidebar,
    body.xxx-shell-open .xxx-dashboard-page--user .sidebar {
        transform: translateX(0);
    }

    .xxx-dashboard-page--user .sidebar-inner {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        height: auto !important;
        max-height: 100vh !important;
        max-height: 100dvh !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        overscroll-behavior: contain !important;
        display: flex !important;
        flex-direction: column !important;
        padding-bottom: 24px !important;
    }

    .xxx-dashboard-page--user .sidebar-menu-inner-wrapper {
        flex: 1 0 auto !important;
        min-height: 0 !important;
    }
}

/* Sidebar logo + close button row */
.xxx-dashboard-page--user .sidebar-logo {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 14px 16px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
    background: transparent !important;
}
.xxx-dashboard-page--user .sidebar-logo .xxx-shell-close {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    padding: 6px 10px !important;
    height: 32px !important;
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 8px !important;
    color: var(--xxx-sidebar-text) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
}
.xxx-dashboard-page--user .xxx-sidebar-toggle__label { font-size: 11px !important; }

/* Card "Visão da conta" .xxp-menu-shell */
.xxx-dashboard-page--user .xxp-menu-shell {
    margin: 12px 14px 8px !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}
.xxx-dashboard-page--user .xxp-menu-shell__card {
    background: rgba(255, 255, 255, 0.04) !important;
    background-image: none !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 10px !important;
    padding: 12px 14px !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}
.xxx-dashboard-page--user .xxp-menu-shell__eyebrow {
    font-size: 10px !important;
    font-weight: 600 !important;
    letter-spacing: 0.10em !important;
    color: var(--xxx-sidebar-text-muted) !important;
    text-transform: uppercase;
}
.xxx-dashboard-page--user .xxp-menu-shell__name {
    display: block !important;
    margin-top: 4px !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: -0.01em;
    background: transparent !important;
    -webkit-text-fill-color: #fff !important;
}
.xxx-dashboard-page--user .xxp-menu-shell__metric {
    display: flex !important;
    align-items: baseline !important;
    justify-content: space-between !important;
    margin-top: 8px !important;
    padding-top: 8px !important;
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
    background: transparent !important;
}
.xxx-dashboard-page--user .xxp-menu-shell__metric span {
    font-size: 11px !important;
    color: var(--xxx-sidebar-text-muted) !important;
}
.xxx-dashboard-page--user .xxp-menu-shell__metric strong {
    color: #fff !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    font-variant-numeric: tabular-nums;
}

/* Headings da sidebar (Recebimentos / Saques / Conta) */
.xxx-dashboard-page--user .xxx-sidebar-heading {
    pointer-events: none;
    padding: 14px 18px 4px !important;
    background: transparent !important;
}
.xxx-dashboard-page--user .xxx-sidebar-heading > span,
.xxx-dashboard-page--user .xxx-sidebar-heading {
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 0.10em !important;
    color: var(--xxx-sidebar-text-muted) !important;
    text-transform: uppercase;
}
.xxx-dashboard-page--user .xxx-sidebar-heading::before { display: none !important; }

/* Itens do menu user (links) */
.xxx-dashboard-page--user .sidebar-menu-wrapper { padding: 0 8px !important; }
.xxx-dashboard-page--user .sidebar-menu .sidebar-menu-item > a {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 10px 12px !important;
    margin: 0 !important;
    border: 0 !important;
    border-left: 3px solid transparent !important;
    border-radius: 6px !important;
    background: transparent !important;
    background-image: none !important;
    color: var(--xxx-sidebar-text) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    box-shadow: none !important;
    text-decoration: none !important;
}
.xxx-dashboard-page--user .sidebar-menu .sidebar-menu-item > a .menu-icon {
    width: 18px !important;
    height: 18px !important;
    background: transparent !important;
    color: var(--xxx-sidebar-text-muted) !important;
    font-size: 14px !important;
    display: inline-grid !important;
    place-items: center !important;
    border-radius: 0 !important;
}
.xxx-dashboard-page--user .sidebar-menu .sidebar-menu-item > a:hover {
    background: rgba(255, 255, 255, 0.04) !important;
    color: #fff !important;
}
.xxx-dashboard-page--user .sidebar-menu .sidebar-menu-item.active > a {
    background: rgba(4, 120, 87, 0.18) !important;
    background-image: none !important;
    color: #d1fae5 !important;
    border-left-color: var(--xxx-accent) !important;
    font-weight: 600 !important;
    box-shadow: none !important;
}
.xxx-dashboard-page--user .sidebar-menu .sidebar-menu-item.active > a .menu-icon {
    color: var(--xxx-accent) !important;
}

/* Suporte box no fim — discreto */
.xxx-dashboard-page--user .sidebar-doc-box,
.xxx-dashboard-page--user .xxx-sidebar-support {
    margin: 14px !important;
    padding: 12px !important;
    background: rgba(255, 255, 255, 0.03) !important;
    background-image: none !important;
    border: 1px solid rgba(255, 255, 255, 0.06) !important;
    border-radius: 10px !important;
    box-shadow: none !important;
}
.xxx-dashboard-page--user .sidebar-doc-content .title {
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 600 !important;
}
.xxx-dashboard-page--user .sidebar-doc-content p {
    color: var(--xxx-sidebar-text-muted) !important;
    font-size: 11px !important;
    line-height: 1.4;
    margin: 4px 0 8px !important;
}
.xxx-dashboard-page--user .sidebar-doc-icon {
    width: 32px;
    height: 32px;
    background: rgba(255, 255, 255, 0.06) !important;
    border-radius: 8px;
    display: inline-grid;
    place-items: center;
    color: var(--xxx-accent) !important;
    margin-bottom: 6px;
}
.xxx-dashboard-page--user .sidebar-doc-btn .btn--base {
    background: var(--xxx-accent) !important;
    border-color: var(--xxx-accent) !important;
    color: #fff !important;
    font-size: 12px !important;
    padding: 8px 12px !important;
    border-radius: 6px !important;
}

/* ============================================================
   TOPBAR user (xxx-topbar-shell) — limpo, 56px
   ============================================================ */

.xxx-dashboard-page--user .navbar-wrapper.xxx-topbar-shell,
.xxx-dashboard-page--user .xxx-topbar-shell {
    background: var(--xxx-surface) !important;
    background-image: none !important;
    border-bottom: 1px solid var(--xxx-border) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    padding: 8px 16px !important;
    min-height: 56px !important;
    margin: 0 !important;
}

.xxx-dashboard-page--user .xxx-topbar-shell__inner {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    padding: 0 !important;
    background: transparent !important;
}

.xxx-dashboard-page--user .xxx-topbar-shell__left {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    background: transparent !important;
    box-shadow: none !important;
}

.xxx-dashboard-page--user .xxx-topbar-shell__menu {
    background: transparent !important;
    box-shadow: none !important;
}

.xxx-dashboard-page--user .xxx-shell-toggle--menu {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    height: 38px !important;
    padding: 0 12px !important;
    background: var(--xxx-surface) !important;
    border: 1px solid var(--xxx-border-strong) !important;
    border-radius: 8px !important;
    color: var(--xxx-text) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    box-shadow: none !important;
}
.xxx-dashboard-page--user .xxx-shell-toggle--menu:hover { background: var(--xxx-surface-2) !important; }
.xxx-dashboard-page--user .xxx-shell-toggle--menu i { font-size: 14px; color: var(--xxx-text-muted); }
.xxx-dashboard-page--user .xxx-shell-toggle--menu .xxx-sidebar-toggle__label {
    font-size: 12px !important;
    font-weight: 500;
}

.xxx-dashboard-page--user .xxx-topbar-shell__breadcrumb {
    display: none !important;
}
@media (min-width: 768px) {
    .xxx-dashboard-page--user .xxx-topbar-shell__breadcrumb {
        display: block !important;
        background: transparent !important;
        padding: 0 !important;
    }
    .xxx-dashboard-page--user .xxx-topbar-shell__breadcrumb * {
        background: transparent !important;
        font-size: 12px !important;
        color: var(--xxx-text-muted) !important;
    }
}

/* Profile pill no canto direito */
.xxx-dashboard-page--user .header-user-wrapper,
.xxx-dashboard-page--user .xxx-topbar-shell__profile {
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
}

.xxx-dashboard-page--user .xxx-topbar-profile {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 4px 6px 4px 10px !important;
    height: 38px !important;
    background: var(--xxx-surface) !important;
    background-image: none !important;
    border: 1px solid var(--xxx-border) !important;
    border-radius: 999px !important;
    box-shadow: none !important;
    text-decoration: none !important;
    color: var(--xxx-text) !important;
}
.xxx-dashboard-page--user .xxx-topbar-profile:hover {
    background: var(--xxx-surface-2) !important;
}
.xxx-dashboard-page--user .xxx-topbar-profile__accent {
    display: none !important;
}
.xxx-dashboard-page--user .xxx-topbar-profile__copy {
    display: none !important;
    flex-direction: column !important;
    line-height: 1.1 !important;
    text-align: right !important;
}
@media (min-width: 480px) {
    .xxx-dashboard-page--user .xxx-topbar-profile__copy { display: flex !important; }
}
.xxx-dashboard-page--user .xxx-topbar-profile__copy small {
    font-size: 9px !important;
    color: var(--xxx-text-muted) !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}
.xxx-dashboard-page--user .xxx-topbar-profile__copy strong {
    font-size: 12px !important;
    color: var(--xxx-text) !important;
    font-weight: 600 !important;
}
.xxx-dashboard-page--user .header-user-thumb {
    width: 30px !important;
    height: 30px !important;
    border-radius: 999px !important;
    overflow: hidden !important;
    box-shadow: none !important;
    border: 1px solid var(--xxx-border) !important;
}
.xxx-dashboard-page--user .header-user-thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

/* Atalhos mobile shortcuts (Painel/Pix/Cobrar/Extrato) limpo */
.xxx-dashboard-page--user [class*="mobile-shortcut"],
.xxx-dashboard-page--user .xxxpay-mobile-shortcuts,
.xxx-dashboard-page--user [data-shortcut-row] {
    background: transparent !important;
    box-shadow: none !important;
    padding: 12px 14px !important;
    gap: 8px !important;
}
.xxx-dashboard-page--user [class*="mobile-shortcut"] a,
.xxx-dashboard-page--user .xxxpay-mobile-shortcut {
    background: var(--xxx-surface) !important;
    background-image: none !important;
    border: 1px solid var(--xxx-border) !important;
    border-radius: 10px !important;
    box-shadow: none !important;
    padding: 10px 8px !important;
    color: var(--xxx-text) !important;
    text-decoration: none !important;
}
.xxx-dashboard-page--user [class*="mobile-shortcut"] a.active,
.xxx-dashboard-page--user .xxxpay-mobile-shortcut.active {
    background: var(--xxx-accent-soft) !important;
    border-color: var(--xxx-accent) !important;
    color: var(--xxx-accent-dark) !important;
}
.xxx-dashboard-page--user [class*="mobile-shortcut"] i {
    background: transparent !important;
    color: var(--xxx-text-muted) !important;
    font-size: 16px !important;
    box-shadow: none !important;
}
.xxx-dashboard-page--user [class*="mobile-shortcut"] a.active i {
    color: var(--xxx-accent) !important;
}


/* hCaptcha — always fits any screen width */
.h-captcha {
    max-width: 100%;
    overflow: hidden;
}
.h-captcha iframe,
.h-captcha > div {
    max-width: 100% !important;
}

/* ============================================================
   AUTH — iOS font-size fix (prevents auto-zoom on input focus)
   + mobile wrapper padding tighten
   ============================================================ */
@media (max-width: 767px) {
    body.xxx-auth-page .form-control,
    body.xxx-auth-page .form--control,
    body.xxx-auth-page--user .form-control,
    body.xxx-auth-page--user .form--control {
        font-size: 16px !important;
    }
    /* tighten wrapper padding on small screens so captcha fits */
    body.xxx-auth-page .account-wrapper,
    body.xxx-auth-page--user .account-wrapper {
        padding: 24px 16px !important;
    }
    /* ensure captcha doesn't overflow */
    .h-captcha {
        max-width: 100%;
        overflow: hidden;
    }
}


/* ============================================================
   MOBILE FIX — patch global v3
   ============================================================ */

/* 1. Prevent ANY horizontal overflow on all pages */
/* clip (not hidden) on html avoids iOS Safari blocking vertical scroll */
html {
    overflow-x: clip !important;
    max-width: 100vw !important;
}
body {
    overflow-x: hidden !important;
    max-width: 100vw !important;
}

/* 2. AUTH PAGES — fix grid clipping and ensure form is visible */
@media (max-width: 820px) {
    /* Remove overflow:hidden + border-radius that clips form content on mobile */
    .xxx-auth-grid {
        overflow: visible !important;
        border-radius: 0 !important;
    }
    /* Padding on content so form isn't flush against edges */
    .xxx-auth-content {
        padding: 14px 12px 0 !important;
    }
    /* Compact showcase padding below form */
    .xxx-auth-showcase {
        padding: 0 12px 20px !important;
    }
    /* style.css: .account { height:100vh; align-items:center } clips form above viewport on mobile */
    body.xxx-auth-page .account,
    body.xxx-auth-page--user .account {
        height: auto !important;
        align-items: flex-start !important;
    }
}

@media (max-width: 767px) {
    /* Full-width account wrapper on mobile */
    body.xxx-auth-page .account-wrapper,
    body.xxx-auth-page--user .account-wrapper {
        width: 100% !important;
        max-width: 100% !important;
        padding: 22px 18px 28px !important;
        border-radius: 20px !important;
        box-shadow: 0 2px 16px rgba(0,0,0,0.10) !important;
    }

    /* Full-width account-area */
    body.xxx-auth-page .account-area,
    body.xxx-auth-page--user .account-area {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 !important;
    }

    /* Input groups: stack vertically on mobile */
    body.xxx-auth-page .input-group,
    body.xxx-auth-page--user .input-group {
        flex-wrap: wrap !important;
    }
    body.xxx-auth-page .input-group-prepend,
    body.xxx-auth-page--user .input-group-prepend {
        width: 100% !important;
        border-radius: 8px 8px 0 0 !important;
    }
    body.xxx-auth-page .input-group-prepend .input-group-text,
    body.xxx-auth-page--user .input-group-prepend .input-group-text {
        border-radius: 8px 8px 0 0 !important;
        border-bottom: none !important;
        width: 100% !important;
        justify-content: flex-start !important;
        font-size: 11px !important;
        padding: 6px 14px !important;
        min-height: 28px !important;
    }
    /* Prevent iOS auto-zoom on input focus */
    body.xxx-auth-page .form--control,
    body.xxx-auth-page--user .form--control,
    body.xxx-auth-page .form-control,
    body.xxx-auth-page--user .form-control {
        font-size: 16px !important;
    }
    body.xxx-auth-page .input-group .form--control,
    body.xxx-auth-page--user .input-group .form--control {
        border-radius: 0 0 8px 8px !important;
        padding: 12px 14px !important;
        min-height: 48px !important;
        width: 100% !important;
    }

    /* Auth switch pill */
    .xxx-auth-switch {
        margin-bottom: 18px !important;
    }
}

/* 3. DASHBOARD — sidebar hidden, content fills width */
@media (max-width: 1199px) {
    body.xxx-dashboard-page .body-wrapper,
    body.xxx-dashboard-page--user .body-wrapper {
        padding-left: 0 !important;
        margin-left: 0 !important;
    }
    body.xxx-dashboard-page .navbar-wrapper,
    body.xxx-dashboard-page--user .navbar-wrapper {
        margin-left: 0 !important;
    }
}

@media (max-width: 991px) {
    body.xxx-dashboard-page--user .xdash-col {
        padding: 0 12px 24px !important;
    }
    /* Dark overlay behind open sidebar */
    body.xxx-shell-open::after {
        content: '';
        position: fixed;
        inset: 0;
        background: rgba(0,0,0,0.45);
        z-index: 115;
        pointer-events: auto;
    }
}

/* 4. Cards and tables — horizontal scroll instead of overflow */
.card, .table-responsive, .dashboard-card {
    overflow-x: auto !important;
}
table {
    max-width: 100% !important;
}

/* 5. Landing page header mobile */
@media (max-width: 767px) {
    body.landing-page .vx-header,
    body.landing-page [class*="header-section"] {
        overflow: visible !important;
    }
    body.landing-page .container,
    body.landing-page .container-fluid {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
}
