/* Responsividade SaaS/Mobile padronizada.
   Não altera o painel de sorteio: todas as regras são bloqueadas para body.bingo-screen. */
@media(max-width:860px){
  body:not(.bingo-screen) .wrap,
  body:not(.bingo-screen) .client-wrap,
  body:not(.bingo-screen) .seller-wrap,
  body:not(.bingo-screen) .finance-app,
  body:not(.bingo-screen) .page{padding:78px 14px 24px!important;background:#fff!important}
  body:not(.bingo-screen) .grid,
  body:not(.bingo-screen) .forms,
  body:not(.bingo-screen) .kpi-grid,
  body:not(.bingo-screen) .dashboard-grid,
  body:not(.bingo-screen) .quick-grid,
  body:not(.bingo-screen) .summary{grid-template-columns:1fr!important}
  body:not(.bingo-screen) .card,
  body:not(.bingo-screen) .seller-card,
  body:not(.bingo-screen) .manager-card,
  body:not(.bingo-screen) .hero-card,
  body:not(.bingo-screen) .quick-card{padding:18px!important;border-radius:22px!important;background:#fff!important}
  body:not(.bingo-screen) table{display:block!important;width:100%!important;overflow-x:auto!important;white-space:nowrap!important;background:#fff!important}
  body:not(.bingo-screen) th,
  body:not(.bingo-screen) td{padding:11px 10px!important;background:#fff!important}
  body:not(.bingo-screen) .page-title,
  body:not(.bingo-screen) .brand,
  body:not(.bingo-screen) h1{font-size:24px!important}
  body:not(.bingo-screen) .btn,
  body:not(.bingo-screen) button{min-height:42px!important}
  body:not(.bingo-screen) .actions-inline{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  body:not(.bingo-screen) .hide-mobile{display:none!important}
}

/* Ajuste específico do painel do vendedor mobile compacto */
@media(max-width:860px){
  body.has-side-menu:not(.bingo-screen) .seller-wrap{
    padding:12px 12px 22px!important;
    margin:0 auto!important;
    max-width:480px!important;
    min-height:auto!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:8px!important;
    min-height:0!important;
    margin:0 0 8px!important;
    padding:0!important;
    border:0!important;
    box-shadow:none!important;
    background:transparent!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-title-row{
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    min-width:0!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-title-block{
    min-width:0!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-head h1{
    font-size:18px!important;
    line-height:1.02!important;
    margin:0 0 2px!important;
    letter-spacing:-.04em!important;
    white-space:nowrap!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-title-block p{
    font-size:13px!important;
    line-height:1.05!important;
    margin:0!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-head .menu-fab-inline{
    position:static!important;
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    border-radius:13px!important;
    margin:0!important;
    padding:0!important;
  }
  body.has-side-menu:not(.bingo-screen) #salesStatusCard.seller-status-inline{
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    border-radius:0!important;
    min-width:auto!important;
  }
  body.has-side-menu:not(.bingo-screen) #salesStatusCard.seller-status-inline p,
  body.has-side-menu:not(.bingo-screen) #salesStatusCard.seller-status-inline h2{
    display:none!important;
  }
  body.has-side-menu:not(.bingo-screen) .sales-pill{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    white-space:nowrap!important;
    width:auto!important;
    max-width:none!important;
    min-height:0!important;
    padding:7px 10px!important;
    margin:0!important;
    border-radius:999px!important;
    font-size:11px!important;
    line-height:1!important;
    font-weight:900!important;
    background:#eefbf3!important;
    color:#13633d!important;
    border:1px solid #ccebd8!important;
    box-shadow:none!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-top-actions{display:none!important;}
  body.has-side-menu:not(.bingo-screen) .seller-card{
    margin:8px 0!important;
    padding:14px!important;
    border-radius:18px!important;
    box-shadow:0 10px 26px rgba(15,23,42,.045)!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-card.compact{
    padding:11px 12px!important;
    margin:8px 0!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-stats-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:0!important;
    align-items:center!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-stats-grid .stat-item{
    min-width:0!important;
    text-align:center!important;
    padding:2px 5px!important;
    border-left:1px solid #e6ece8!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-stats-grid .stat-item:first-child{border-left:0!important;}
  body.has-side-menu:not(.bingo-screen) .seller-stats-grid .stat-item.total-account{
    grid-column:auto!important;
  }
  body.has-side-menu:not(.bingo-screen) .stat-label{
    display:block!important;
    font-size:10.5px!important;
    line-height:1.08!important;
    margin:0 0 5px!important;
    white-space:normal!important;
  }
  body.has-side-menu:not(.bingo-screen) .stat-value,
  body.has-side-menu:not(.bingo-screen) .seller-stats-grid .total-account .stat-value{
    display:block!important;
    font-size:20px!important;
    line-height:1!important;
    white-space:nowrap!important;
    letter-spacing:-.04em!important;
  }
  body.has-side-menu:not(.bingo-screen) .auto-sales-form h2{
    font-size:20px!important;
    margin:0 0 10px!important;
  }
  body.has-side-menu:not(.bingo-screen) .auto-sales-form p.muted-small{
    font-size:12px!important;
    line-height:1.42!important;
    margin:0 0 12px!important;
  }
  body.has-side-menu:not(.bingo-screen) label{
    margin-bottom:6px!important;
    font-size:13px!important;
  }
  body.has-side-menu:not(.bingo-screen) input{
    min-height:44px!important;
    height:44px!important;
    padding:10px 12px!important;
  }
  body.has-side-menu:not(.bingo-screen) .row-card{
    grid-template-columns:minmax(0,1fr) 46px 46px!important;
    gap:7px!important;
  }
  body.has-side-menu:not(.bingo-screen) .actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  body.has-side-menu:not(.bingo-screen) .actions .btn{
    width:100%!important;
    min-height:43px!important;
  }
}
@media(max-width:390px){
  body.has-side-menu:not(.bingo-screen) .seller-wrap{padding-left:10px!important;padding-right:10px!important;}
  body.has-side-menu:not(.bingo-screen) .seller-head{gap:6px!important;}
  body.has-side-menu:not(.bingo-screen) .seller-head h1{font-size:16px!important;}
  body.has-side-menu:not(.bingo-screen) .seller-title-block p{font-size:12px!important;}
  body.has-side-menu:not(.bingo-screen) .seller-head .menu-fab-inline{width:42px!important;height:42px!important;min-width:42px!important;}
  body.has-side-menu:not(.bingo-screen) .sales-pill{font-size:10px!important;padding:6px 8px!important;}
  body.has-side-menu:not(.bingo-screen) .stat-label{font-size:9.5px!important;}
  body.has-side-menu:not(.bingo-screen) .stat-value,
  body.has-side-menu:not(.bingo-screen) .seller-stats-grid .total-account .stat-value{font-size:18px!important;}
}

/* Padrao unico para titulos mobile: texto alinhado a esquerda perto do menu. */
@media(max-width:860px){
  body.has-side-menu:not(.bingo-screen) .wrap,
  body.has-side-menu:not(.bingo-screen) .client-wrap,
  body.has-side-menu:not(.bingo-screen) .seller-wrap,
  body.has-side-menu:not(.bingo-screen) .finance-app,
  body.has-side-menu:not(.bingo-screen) .page,
  body.has-side-menu:not(.bingo-screen) .report-page{
    width:100%!important;
    max-width:480px!important;
    min-height:100vh!important;
    margin:0 auto!important;
    padding:12px 12px 24px!important;
    background:#fff!important;
  }
  body.has-side-menu:not(.bingo-screen) .header,
  body.has-side-menu:not(.bingo-screen) .client-top,
  body.has-side-menu:not(.bingo-screen) .finance-top,
  body.has-side-menu:not(.bingo-screen) .report-toolbar,
  body.has-side-menu:not(.bingo-screen) .page-heading{
    width:100%!important;
    min-height:48px!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:8px!important;
    margin:0 0 12px!important;
    padding:0 0 0 56px!important;
    border:0!important;
    background:#fff!important;
    box-shadow:none!important;
    text-align:left!important;
  }
  body.has-side-menu:not(.bingo-screen) .client-brand,
  body.has-side-menu:not(.bingo-screen) .page-title-block,
  body.has-side-menu:not(.bingo-screen) .brand{
    width:100%!important;
    min-width:0!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:center!important;
    gap:2px!important;
    text-align:left!important;
  }
  body.has-side-menu:not(.bingo-screen) .client-brand > .brand-icon{
    display:none!important;
  }
  body.has-side-menu:not(.bingo-screen) .client-brand > div:not(.brand-icon),
  body.has-side-menu:not(.bingo-screen) .report-toolbar > div:first-child{
    width:100%!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    text-align:left!important;
  }
  body.has-side-menu:not(.bingo-screen) .brand,
  body.has-side-menu:not(.bingo-screen) .client-brand h1,
  body.has-side-menu:not(.bingo-screen) .finance-title,
  body.has-side-menu:not(.bingo-screen) .page-heading h1,
  body.has-side-menu:not(.bingo-screen) .report-toolbar h1{
    width:100%!important;
    margin:0!important;
    color:var(--bwp-heading,#06152a)!important;
    font-size:22px!important;
    line-height:1.1!important;
    letter-spacing:0!important;
    text-align:left!important;
    white-space:normal!important;
  }
  body.has-side-menu:not(.bingo-screen) .client-brand span,
  body.has-side-menu:not(.bingo-screen) .page-heading p,
  body.has-side-menu:not(.bingo-screen) .report-toolbar p{
    width:100%!important;
    margin:2px 0 0!important;
    color:var(--bwp-muted,#667085)!important;
    font-size:12px!important;
    line-height:1.3!important;
    text-align:left!important;
  }
  body.has-side-menu:not(.bingo-screen) .finance-top > div:empty{
    display:none!important;
  }
  body.has-side-menu:not(.bingo-screen) .client-top > .btn,
  body.has-side-menu:not(.bingo-screen) .client-top > .top-actions,
  body.has-side-menu:not(.bingo-screen) .client-top > div[style*="display:flex"],
  body.has-side-menu:not(.bingo-screen) .report-actions{
    display:none!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-head{
    width:100%!important;
    min-height:48px!important;
    margin:0 0 12px!important;
    padding:0 0 0 56px!important;
    border:0!important;
    background:#fff!important;
    box-shadow:none!important;
    text-align:left!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-head.seller-head-inline-menu{
    padding-left:0!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-title-row{
    width:100%!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:8px!important;
    text-align:left!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-title-block{
    min-width:0!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:center!important;
    text-align:left!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-head h1{
    width:100%!important;
    margin:0!important;
    font-size:22px!important;
    line-height:1.1!important;
    letter-spacing:0!important;
    text-align:left!important;
    white-space:normal!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-title-block p{
    width:100%!important;
    margin:2px 0 0!important;
    font-size:12px!important;
    line-height:1.3!important;
    text-align:left!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-head .menu-fab-inline{
    position:static!important;
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    border-radius:13px!important;
    margin:0!important;
    padding:0!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-status-inline{
    justify-content:flex-start!important;
    width:100%!important;
  }
}

@media(max-width:390px){
  body.has-side-menu:not(.bingo-screen) .header,
  body.has-side-menu:not(.bingo-screen) .client-top,
  body.has-side-menu:not(.bingo-screen) .finance-top,
  body.has-side-menu:not(.bingo-screen) .report-toolbar,
  body.has-side-menu:not(.bingo-screen) .page-heading,
  body.has-side-menu:not(.bingo-screen) .seller-head{
    padding-left:52px!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-head.seller-head-inline-menu{
    padding-left:0!important;
  }
  body.has-side-menu:not(.bingo-screen) .brand,
  body.has-side-menu:not(.bingo-screen) .client-brand h1,
  body.has-side-menu:not(.bingo-screen) .seller-head h1,
  body.has-side-menu:not(.bingo-screen) .finance-title,
  body.has-side-menu:not(.bingo-screen) .page-heading h1,
  body.has-side-menu:not(.bingo-screen) .report-toolbar h1{
    font-size:20px!important;
  }
}

/* Ajustes pontuais de mobile para relatorio e dashboard do cliente. */
@media(max-width:860px){
  body.has-side-menu:not(.bingo-screen) .report-toolbar{
    min-height:48px!important;
    padding-left:56px!important;
    align-items:center!important;
  }
  body.has-side-menu:not(.bingo-screen) .report-toolbar > div:first-child{
    justify-content:center!important;
  }
  body.has-side-menu:not(.bingo-screen) .report-toolbar > div:first-child > div[style],
  body.has-side-menu:not(.bingo-screen) .report-toolbar form,
  body.has-side-menu:not(.bingo-screen) .report-toolbar p{
    display:none!important;
  }
  body.client-dashboard.has-side-menu:not(.bingo-screen) .quick-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:14px!important;
  }
  body.client-dashboard.has-side-menu:not(.bingo-screen) .quick-card{
    min-height:118px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
  }
  body.client-dashboard.has-side-menu:not(.bingo-screen) .quick-card b{
    font-size:15px!important;
    line-height:1.15!important;
  }
  body.client-dashboard.has-side-menu:not(.bingo-screen) .quick-card span{
    font-size:12px!important;
    line-height:1.25!important;
  }
  body.client-dashboard.has-side-menu:not(.bingo-screen) .quick-icon{
    width:38px!important;
    height:38px!important;
    min-height:38px!important;
    margin-bottom:10px!important;
  }
  body.admin-dashboard-page.has-side-menu:not(.bingo-screen) .quick-grid,
  body.admin-clients-page.has-side-menu:not(.bingo-screen) .quick-grid,
  body.admin-logs-page.has-side-menu:not(.bingo-screen) .logs-grid,
  body.client-logs-page.has-side-menu:not(.bingo-screen) .logs-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:14px!important;
  }
  body.admin-dashboard-page.has-side-menu:not(.bingo-screen) .quick-card,
  body.admin-clients-page.has-side-menu:not(.bingo-screen) .quick-card,
  body.admin-logs-page.has-side-menu:not(.bingo-screen) .quick-card,
  body.client-logs-page.has-side-menu:not(.bingo-screen) .quick-card{
    min-height:112px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
  }
  body.admin-dashboard-page.has-side-menu:not(.bingo-screen) .quick-card b,
  body.admin-clients-page.has-side-menu:not(.bingo-screen) .quick-card b,
  body.admin-logs-page.has-side-menu:not(.bingo-screen) .quick-card b,
  body.client-logs-page.has-side-menu:not(.bingo-screen) .quick-card b{
    font-size:15px!important;
    line-height:1.15!important;
  }
  body.admin-dashboard-page.has-side-menu:not(.bingo-screen) .quick-card span,
  body.admin-clients-page.has-side-menu:not(.bingo-screen) .quick-card span,
  body.admin-logs-page.has-side-menu:not(.bingo-screen) .quick-card span,
  body.client-logs-page.has-side-menu:not(.bingo-screen) .quick-card span{
    font-size:12px!important;
    line-height:1.25!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-create-card{
    padding:14px!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-create-card h2{
    margin:0 0 8px!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-create-card p{
    margin:0 0 8px!important;
    line-height:1.3!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-create-card .grid{
    grid-template-columns:1fr!important;
    gap:6px!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-create-card label{
    margin:0 0 3px!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-create-card input{
    min-height:40px!important;
    height:40px!important;
    margin:0!important;
    padding:8px 11px!important;
  }
  body.has-side-menu:not(.bingo-screen) .seller-create-card .btn{
    width:100%!important;
    margin-top:2px!important;
  }
  body.has-side-menu:not(.bingo-screen) .price-card{
    padding:14px!important;
    gap:8px!important;
    align-items:flex-start!important;
  }
  body.has-side-menu:not(.bingo-screen) .price-card h2{
    margin:0 0 3px!important;
  }
  body.has-side-menu:not(.bingo-screen) .price-card p{
    margin:0!important;
    line-height:1.25!important;
  }
  body.has-side-menu:not(.bingo-screen) .price-card .price-card-form{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:6px!important;
    max-width:none!important;
    width:100%!important;
    margin:0!important;
  }
  body.has-side-menu:not(.bingo-screen) .price-card input[name="card_price"]{
    min-height:40px!important;
    height:40px!important;
    margin:0!important;
    padding:8px 11px!important;
  }
  body.has-side-menu:not(.bingo-screen) .price-card .price-card-submit .btn{
    width:100%!important;
    min-height:40px!important;
    height:40px!important;
  }
  body.has-side-menu:not(.bingo-screen) .cards-total-card{
    padding:14px!important;
    gap:8px!important;
    align-items:center!important;
  }
  body.has-side-menu:not(.bingo-screen) .cards-total-card b{
    font-size:13px!important;
    line-height:1.2!important;
  }
  body.has-side-menu:not(.bingo-screen) .cards-total-card #adminTotalPaid{
    font-size:28px!important;
    line-height:1!important;
  }
  body.has-side-menu:not(.bingo-screen) .cards-total-card .muted{
    font-size:12px!important;
    line-height:1.25!important;
    margin:0!important;
  }
  body.has-side-menu:not(.bingo-screen) .round-actions{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:6px!important;
    margin-bottom:8px!important;
  }
  body.has-side-menu:not(.bingo-screen) .round-actions .sales-badge{
    grid-column:1 / -1!important;
    min-height:36px!important;
    padding:8px 10px!important;
    justify-content:center!important;
    font-size:12px!important;
  }
  body.has-side-menu:not(.bingo-screen) .round-actions form,
  body.has-side-menu:not(.bingo-screen) .round-actions .btn{
    width:100%!important;
  }
  body.has-side-menu:not(.bingo-screen) .round-actions .btn{
    min-height:38px!important;
    height:38px!important;
    padding:8px 9px!important;
    font-size:12px!important;
  }
  body.has-side-menu:not(.bingo-screen) .search-paid{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 86px!important;
    gap:6px!important;
    margin:0 0 6px!important;
  }
  body.has-side-menu:not(.bingo-screen) .search-paid input{
    min-height:40px!important;
    height:40px!important;
    margin:0!important;
    padding:8px 11px!important;
  }
  body.has-side-menu:not(.bingo-screen) .search-paid .btn{
    min-height:40px!important;
    height:40px!important;
    padding:8px 10px!important;
    font-size:12px!important;
  }
  body.has-side-menu:not(.bingo-screen) .search-hint{
    margin:0 0 8px!important;
    font-size:11px!important;
    line-height:1.25!important;
  }
  body.has-side-menu:not(.bingo-screen) #paidCardsTable th,
  body.has-side-menu:not(.bingo-screen) #paidCardsTable td{
    padding:8px 9px!important;
    font-size:12px!important;
  }
}
@media(max-width:390px){
  body.has-side-menu:not(.bingo-screen) .report-toolbar{
    padding-left:52px!important;
  }
}
@media(max-width:360px){
  body.client-dashboard.has-side-menu:not(.bingo-screen) .quick-grid{
    gap:10px!important;
  }
  body.client-dashboard.has-side-menu:not(.bingo-screen) .quick-card{
    padding:14px!important;
    min-height:112px!important;
  }
  body.admin-dashboard-page.has-side-menu:not(.bingo-screen) .quick-grid,
  body.admin-clients-page.has-side-menu:not(.bingo-screen) .quick-grid,
  body.admin-logs-page.has-side-menu:not(.bingo-screen) .logs-grid,
  body.client-logs-page.has-side-menu:not(.bingo-screen) .logs-grid{
    gap:10px!important;
  }
  body.admin-dashboard-page.has-side-menu:not(.bingo-screen) .quick-card,
  body.admin-clients-page.has-side-menu:not(.bingo-screen) .quick-card,
  body.admin-logs-page.has-side-menu:not(.bingo-screen) .quick-card,
  body.client-logs-page.has-side-menu:not(.bingo-screen) .quick-card{
    padding:14px!important;
    min-height:108px!important;
  }
}
