/* Global UX: show a hand cursor on interactive elements across Operia & Facturo. */

/* Native clickable elements */
a[href],
button,
summary,
label[for],
input[type='button'],
input[type='submit'],
input[type='reset'],
select {
  cursor: pointer;
}

/* Common app patterns */
[role='button'],
[role='menuitem'],
[role='tab'],
[data-action],
[data-route],
[data-nav],
[data-open],
[data-close],
[onclick] {
  cursor: pointer;
}

/* Avoid forcing pointer on disabled elements */
button:disabled,
input:disabled,
select:disabled,
[aria-disabled='true'] {
  cursor: not-allowed;
}
/* Responsive baseline overrides */
img, video, canvas, svg { max-width: 100%; height: auto; }

@media (max-width: 1024px) {
  .main, .content, .modern-content, .page-content { padding: 16px !important; }
}

@media (max-width: 900px) {
  .topbar, .panel-header, .actions-bar, .clients-actions-bar, .clients-toolbar, .contracts-toolbar, .reports-toolbar, .collaborators-toolbar {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
  .search, .search-area, .filters, .filter-bar { width: 100%; }
  .table, .table-body, .table-wrapper, .data-table, .list, .list-body {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table .row, .table-body .row, .data-table .row, .list .row {
    min-width: 720px;
  }
  .grid, .cards, .stats, .kpis, .overview-metrics {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 600px) {
  .main, .content, .modern-content, .page-content { padding: 12px !important; }
  .btn, .btn-create, .primary-btn, .secondary-btn { width: 100%; }
}
