/* V2.6.3 — correcoes estruturais de responsividade mobile */
html,body{max-width:100%;overflow-x:hidden}
.app-shell,main,#content,.page-heading,.metric-grid,.panel,.rule-grid,.catalog-grid,.settings-grid{min-width:0;max-width:100%}
img,svg,canvas{max-width:100%}
.table-view-control{display:none}

@media(max-width:600px){
  main{width:100%;padding:24px 16px 15px;overflow-x:clip}
  .page-heading{width:100%;align-items:stretch;text-align:center}
  .page-heading>div:first-child{width:100%;margin-inline:auto;text-align:center}
  .page-heading h1{max-width:none;margin-inline:auto;overflow-wrap:anywhere}
  .page-heading p,.eyebrow{text-align:center}
  .heading-actions{width:100%;max-width:100%;margin-inline:auto}
  .heading-actions>*{min-width:0;max-width:100%}
  .month-label{display:block;width:100%;min-width:0;overflow:hidden}
  .month-label input[type="month"]{display:block;width:100%!important;min-width:0!important;max-width:100%!important;-webkit-appearance:none;appearance:none;box-sizing:border-box}
  .metric-grid,.metric-grid.two,.metric-grid.three,.rule-grid,.catalog-grid,.settings-grid{width:100%;grid-template-columns:minmax(0,1fr)}
  .metric,.panel,.rule-card,.info-banner,.summary-strip,.balance-controls{width:100%;max-width:100%;min-width:0}
  .metric>strong,.rule-value{white-space:normal;overflow-wrap:anywhere;font-size:clamp(19px,6vw,24px)}
  .section-title{width:100%;flex-wrap:wrap;gap:12px;text-align:center}
  .section-title h2{flex:1 1 100%}
  .section-title button{width:100%;max-width:100%}
  .filters label{min-width:0;flex-basis:100%}
  .filter-count{width:100%;min-width:0;text-align:center;margin-left:0}
  .demo-badge{font-size:0;letter-spacing:0;padding:6px 8px;white-space:nowrap}
  .demo-badge::after{content:'DEMO';font-size:7px;letter-spacing:.7px}
  .topbar{width:100%;max-width:100%}
  .mobile-brand{min-width:0;white-space:nowrap}
  .mobile-brand small{white-space:nowrap}
  .table-wrap.responsive-table,.rule-list .table-wrap{border:0;background:transparent;overflow:visible}
  .responsive-table table,.rule-list table{display:block;width:100%;min-width:0!important;white-space:normal}
  .responsive-table thead,.rule-list thead{display:none}
  .responsive-table tbody,.rule-list tbody{display:grid;gap:12px;width:100%}
  .responsive-table tr,.rule-list tr{display:block;width:100%;padding:14px 15px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 3px 14px rgba(35,60,53,.035)}
  .responsive-table td,.rule-list td{display:flex;width:100%;min-width:0;justify-content:space-between;align-items:center;gap:14px;padding:8px 0;border-bottom:1px solid #eff2ef;text-align:right!important;white-space:normal;overflow-wrap:anywhere}
  .responsive-table td:last-child,.rule-list td:last-child{border-bottom:0;padding-bottom:0}
  .responsive-table td::before,.rule-list td::before{content:attr(data-label);flex:0 0 78px;color:#809087;font-size:9px;font-weight:600;text-align:left;text-transform:uppercase;letter-spacing:.35px}
  .rule-list td:nth-child(1)::before{content:'Data'}.rule-list td:nth-child(2)::before{content:'Despesa'}.rule-list td:nth-child(3)::before{content:'Valor'}.rule-list td:nth-child(4)::before{content:'Parcela'}.rule-list td:nth-child(5)::before{content:'Categoria'}.rule-list td:nth-child(6)::before{content:'Conta'}.rule-list td:nth-child(7)::before{content:'Status'}.rule-list td:nth-child(8)::before{content:'Ações'}
  .responsive-table td>strong,.responsive-table td>small,.rule-list td>strong,.rule-list td>small{max-width:calc(100% - 92px)}
  .responsive-table td small,.rule-list td small{margin-left:auto;text-align:right}
  .responsive-table .actions,.rule-list .actions{display:flex;flex-wrap:wrap;justify-content:flex-end}
  .responsive-table .actions::before,.rule-list .actions::before{margin-right:auto}
  .responsive-table .text-button,.rule-list .text-button{padding:7px 5px}
  .table-view-control{display:flex;align-items:center;justify-content:flex-end;gap:6px;padding:10px 0 8px;font-size:9px;color:var(--muted)}
  .panel>.table-view-control,.rule-list>.table-view-control{padding-inline:15px}
  .table-view-control span{margin-right:auto;font-weight:600}
  .table-view-control button{padding:7px 10px;font-size:9px;box-shadow:none}
  .table-view-control button.active{background:var(--green);border-color:var(--green);color:#fff}
  .table-mode-table{width:100%;max-width:100%;overflow-x:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;border:1px solid var(--line)!important;background:#fff!important}
  .table-mode-table table,.rule-list .table-mode-table table{display:table!important;width:100%;min-width:780px!important;white-space:nowrap!important}
  .table-mode-table thead,.rule-list .table-mode-table thead{display:table-header-group!important}
  .table-mode-table tbody,.rule-list .table-mode-table tbody{display:table-row-group!important}
  .table-mode-table tr,.rule-list .table-mode-table tr{display:table-row!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important}
  .table-mode-table td,.rule-list .table-mode-table td{display:table-cell!important;width:auto!important;padding:13px 17px!important;border-bottom:1px solid #eff2ef!important;text-align:center!important;white-space:nowrap!important}
  .table-mode-table td::before,.rule-list .table-mode-table td::before{display:none!important}
  .budget-list.large{width:100%;max-width:100%;padding:12px 15px 18px;overflow:hidden}
  .budget-row{width:100%;min-width:0;grid-template-columns:minmax(0,1fr) auto;gap:10px 12px}
  .budget-row>div:first-child{min-width:0;overflow-wrap:anywhere}
  .budget-row small{white-space:normal;overflow-wrap:anywhere;line-height:1.5}
  .budget-row .progress{grid-column:1/-1;width:100%;min-width:0}
  .budget-row .actions{grid-column:1/-1;display:flex;justify-content:flex-end;flex-wrap:wrap}
  footer{width:100%;text-align:center;justify-content:center}
}

@media(max-width:370px){
  .mobile-brand{font-size:19px}
  .metric>strong,.rule-value{font-size:19px}
  .topbar{gap:7px;padding-inline:10px}
  .menu-toggle{width:38px;padding-inline:8px}
}
