
/* V584 - Professional desktop/mobile refinement */
.v577-page{
  max-width:1800px!important;
  margin:0 auto!important;
  padding:22px 24px 40px!important;
}
.v577-head{
  align-items:center!important;
  margin-bottom:14px!important;
}
.v577-head>div:first-child{min-width:0!important}
.v577-head h1{
  font-size:clamp(22px,2vw,30px)!important;
  line-height:1.15!important;
}
.v577-head p{
  max-width:760px!important;
  line-height:1.5!important;
}
.v577-topbar{
  gap:10px!important;
  flex-wrap:wrap!important;
}
.v577-topbar>div{
  display:flex!important;
  gap:8px!important;
  align-items:center!important;
  flex-wrap:wrap!important;
}
.v577-topbar button,.v577-topbar input[type="date"]{
  min-height:40px!important;
}
.v577-tabs{
  overflow:auto!important;
  scrollbar-width:none!important;
}
.v577-tabs::-webkit-scrollbar{display:none!important}
.v577-tabs button{flex:0 0 auto!important}

.v577-banner{
  align-items:flex-start!important;
}
.v577-banner>div:first-child{min-width:0!important;flex:1 1 460px!important}
.v577-banner aside{flex:0 0 auto!important}
.v577-banner h2{font-size:clamp(22px,2.1vw,28px)!important}

.v577-kpis{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  align-items:stretch!important;
}
.v577-kpi{
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  gap:8px!important;
  min-width:0!important;
}
.v577-kpi strong{
  font-size:clamp(19px,1.55vw,24px)!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.v577-grid{
  grid-template-columns:minmax(0,1.65fr) minmax(330px,.95fr)!important;
  gap:14px!important;
}
.v577-card,.v577-chart,.v577-panel,.v577-section{
  min-width:0!important;
}
.v577-chart{overflow:hidden!important}
.v577-table-wrap,.v577-card:has(.v577-table),.v577-panel:has(.v577-table){
  overflow-x:auto!important;
  -webkit-overflow-scrolling:touch!important;
}
.v577-table{min-width:680px!important}
.v577-orders{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
.v577-note textarea{font-size:14px!important}
.v577-auto{
  padding:18px!important;
}
.v577-auto button{min-height:40px!important}

/* 14–15 inch desktop */
@media (min-width:1200px) and (max-width:1500px){
  .v577-page{padding:18px 20px 34px!important}
  .v577-kpis{gap:10px!important}
  .v577-kpi{padding:14px 15px!important}
  .v577-grid{grid-template-columns:minmax(0,1.5fr) minmax(310px,.9fr)!important}
}

/* Tablet / small laptop */
@media (max-width:1199px){
  .v577-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .v577-grid{grid-template-columns:1fr!important}
  .v577-banner{flex-direction:column!important}
  .v577-banner aside{text-align:left!important}
}

/* Mobile */
@media (max-width:767px){
  .v577-page{
    padding:10px 10px 28px!important;
  }
  .v577-head{
    align-items:flex-start!important;
    gap:10px!important;
  }
  .v577-head h1{
    font-size:20px!important;
    line-height:1.2!important;
  }
  .v577-head p{
    font-size:12px!important;
    line-height:1.45!important;
  }
  .v577-topbar{
    padding:10px!important;
    border-radius:11px!important;
  }
  .v577-topbar>div{
    width:100%!important;
  }
  .v577-topbar button,.v577-topbar input[type="date"]{
    flex:1 1 140px!important;
    width:auto!important;
  }
  .v577-tabs{
    width:100%!important;
    margin-bottom:10px!important;
  }
  .v577-tabs button{
    min-width:max-content!important;
    padding:0 12px!important;
  }
  .v577-banner{
    padding:15px 14px!important;
    border-radius:12px!important;
    gap:10px!important;
  }
  .v577-banner h2{
    font-size:20px!important;
  }
  .v577-banner:after{
    font-size:10px!important;
    line-height:1.45!important;
  }
  .v577-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .v577-kpi{
    min-height:104px!important;
    padding:12px!important;
    border-radius:11px!important;
  }
  .v577-kpi span,.v577-kpi small{
    font-size:9px!important;
    line-height:1.35!important;
  }
  .v577-kpi strong{
    font-size:18px!important;
    white-space:normal!important;
    overflow:visible!important;
  }
  .v577-card,.v577-chart,.v577-panel,.v577-section{
    border-radius:11px!important;
    padding:13px!important;
  }
  .v577-chart{
    min-height:260px!important;
  }
  .v577-orders{
    grid-template-columns:1fr!important;
  }
  .v577-table{
    min-width:620px!important;
  }
  .v577-table th,.v577-table td{
    padding:9px!important;
  }
  .v577-auto{
    padding:14px!important;
  }
}

/* Very small mobile */
@media (max-width:430px){
  .v577-kpis{
    grid-template-columns:1fr!important;
  }
  .v577-kpi{
    min-height:94px!important;
  }
  .v577-topbar button,.v577-topbar input[type="date"]{
    flex:1 1 100%!important;
  }
}

/* Print refinement */
@media print{
  body{background:#fff!important}
  .v577-page{
    max-width:none!important;
    padding:0!important;
  }
  .v577-head,.v577-banner,.v577-kpis,.v577-grid{
    break-inside:avoid!important;
  }
  .v577-tabs,.v577-topbar button{
    display:none!important;
  }
}
