/* Densidade confortável para telas desktop em 100% de zoom. */
@media (min-width: 1001px) {
  body { font-size: 13px; }
  .app-shell { grid-template-columns: 215px 1fr; }
  .sidebar { padding: 22px 14px 18px; }
  .brand { margin: 0 7px 28px; font-size: 16px; }
  .brand-mark { width: 31px; height: 31px; border-radius: 9px; }
  nav { gap: 4px; }
  .nav-item, .reset-button { padding: 9px 11px; border-radius: 9px; font-size: 13px; }
  .nav-item span { width: 22px; }
  .nav-subitem { padding: 7px 12px 7px 36px; font-size: 12px; }
  .sidebar-foot { gap: 8px; }

  main { padding: 0 28px 30px; }
  .topbar { height: 82px; }
  .topbar h1 { font-size: 23px; }
  .eyebrow { font-size: 9px; }
  .top-actions { gap: 15px; }
  .today { font-size: 11px; }
  .user-avatar { width: 29px; height: 29px; }
  .primary, .secondary { padding: 9px 13px; border-radius: 8px; font-size: 12px; }

  .hero-card { min-height: 148px; padding: 26px 30px; border-radius: 18px; }
  .hero-card h2 { margin: 7px 0; font-size: 23px; }
  .hero-card p { font-size: 13px; }
  .hero-orb { width: 98px; height: 98px; border-width: 8px; }
  .hero-orb span { font-size: 22px; }
  .dashboard-period { margin-bottom: 8px; }

  .metrics { gap: 11px; margin: 12px 0; }
  .metric { padding: 15px 17px; border-radius: 14px; }
  .metric-top { font-size: 11px; }
  .metric-icon { width: 27px; height: 27px; border-radius: 7px; }
  .metric strong { margin: 8px 0 1px; font-size: 22px; }
  .metric small { font-size: 11px; }
  .dashboard-grid { gap: 12px; }
  .panel { border-radius: 14px; }
  .panel-head { padding: 16px 18px 12px; }
  .panel h3 { margin-top: 4px; font-size: 17px; }
  .activity-list { padding: 0 18px 10px; }
  .activity { grid-template-columns: 34px 1fr auto; padding: 9px 0; gap: 9px; }
  .activity p { font-size: 12px; }
  .activity small { font-size: 10px; }
  .avatar { width: 32px; height: 32px; border-radius: 9px; font-size: 11px; }
  .status-chart { padding: 5px 18px 16px; }
  .chart-row { margin: 11px 0; }
  .chart-label { font-size: 11px; margin-bottom: 6px; }
  .bar { height: 6px; }

  .toolbar { gap: 9px; margin-bottom: 11px; }
  .search { height: 37px; min-width: 240px; padding: 0 11px; border-radius: 9px; }
  .search input { font-size: 12px; }
  .segmented { padding: 3px; border-radius: 9px; }
  .segmented button { padding: 6px 9px; font-size: 11px; }
  .advanced-filters { gap: 9px; margin: -2px 0 11px; padding: 11px 13px; }
  .advanced-filters select, .advanced-filters input, .advanced-filters .clear-advanced { height: 33px; }

  .billing-head { margin-bottom: 15px; }
  .billing-head h2 { font-size: 21px; }
  .billing-totals { gap: 25px; }
  .billing-totals small { font-size: 10px; }
  .billing-totals strong { font-size: 16px; }
  .period-controls { gap: 7px; }
  .period-arrow { width: 36px; height: 36px; }
  .period-controls input[type="month"] { height: 36px; min-width: 185px; font-size: 12px; }

  .table-summary { padding: 11px 15px; font-size: 11px; }
  table { min-width: 680px; }
  th { padding: 10px 13px; font-size: 9px; }
  td { padding: 10px 13px; font-size: 11px; }
  .client-cell { gap: 8px; }
  .client-cell p { font-size: 12px; }
  .client-cell small, .inline-note { font-size: 9px; }
  .plan-chip { font-size: 11px; }
  .pill { padding: 4px 7px; font-size: 8px; }
  .row-action { padding: 5px 8px; border-radius: 7px; font-size: 10px; }
  .icon-action { width: 29px; height: 29px; padding: 0; }
  .deadline { font-size: 9px; }

  .catalog-intro { padding: 14px 16px 10px; }
  .catalog-intro h2 { margin: 3px 0; font-size: 19px; }
  .catalog-intro p { font-size: 11px; }

  #clientsView.active, #billingView.active, #serversView.active,
  #devicesView.active, #applicationsView.active, #plansView.active {
    height: auto;
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    padding-bottom: 0;
  }
  #clientsView > .table-panel, #billingView > .table-panel, #serversView > .table-panel,
  #devicesView > .table-panel, #applicationsView > .table-panel, #plansView > .table-panel {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
  }
  #clientsView .table-wrap, #billingView .table-wrap, #serversView .table-wrap,
  #devicesView .table-wrap, #applicationsView .table-wrap, #plansView .table-wrap {
    flex: 1;
    min-height: 0;
    overflow: auto;
  }
  #clientsView thead, #billingView thead, #serversView thead,
  #devicesView thead, #applicationsView thead, #plansView thead {
    position: sticky;
    top: 0;
    z-index: 3;
  }

  .supplier-financial-head { padding: 11px 15px; margin-bottom: 11px; }
  #reportsView.active { height: auto; flex: 1; padding-bottom: 0; }
  #reportMetrics { margin: 6px 0 10px; }
  #reportMetrics .metric { padding: 12px 14px; }
  #reportMetrics .metric strong { font-size: 20px; }
  .report-grid { gap: 11px; }
  .report-detail-panel .panel-head { padding: 11px 15px 9px; }
  .report-detail-panel th { padding: 8px 10px; }
  .report-detail-panel td { padding: 8px 10px; font-size: 10px; }
  #reportsView .finance-line { padding: 10px 0; font-size: 11px; }
}
