/* NS POS — Responsive base definitivo */
html,body{max-width:100%;min-height:100%;overflow-x:hidden}
body{margin:0}
.app{min-width:0;max-width:100%}
.tab-content{min-width:0;max-width:100%}
.card,.card-body,.layout,.layout-2,.layout-3{min-width:0}

img,svg,video,canvas{max-width:100%}

.table-wrap,
.report-table-wrap,
.comprobantes-table-wrap,
.sii-table-wrap{max-width:100%;overflow:auto}

@media (max-width:1200px){
  html,body{height:auto;overflow-y:auto}
  .app{height:auto;min-height:100vh;overflow:visible}
  .topbar{height:auto;min-height:0;flex-wrap:wrap}
  .top-actions{display:flex;flex-wrap:wrap}
  .stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .layout,.layout-2,.layout-3,
  .config-top-grid,.config-bottom-grid,
  .config-split-grid,.config-admin-grid-final{grid-template-columns:1fr}
}

@media (max-width:820px){
  .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .top-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}
  .top-actions button{width:100%;min-width:0}
  .grid-2,.grid-3,.comprobantes-filtros{grid-template-columns:1fr}
}

@media (max-width:768px){
  body:not(.desktop-forced)>.app{padding:0}
}

@media (max-width:520px){
  .stat-grid{grid-template-columns:1fr}
  .top-actions{grid-template-columns:1fr}
}
