/* ═══════════════════════════════════════════════════════════════════
   RESPONSIVE · Breakpoints y ajustes mobile-first
   ═══════════════════════════════════════════════════════════════════ */

/* ── Tablet ── */
@media (max-width: 1024px) {
  .app-header-right .app-header-meta { display: none; }
  .page-title { font-size: var(--text-3xl); }
  .insight-list { grid-template-columns: 1fr 1fr; }
}

/* ── Mobile ── */
@media (max-width: 768px) {
  .app-header-inner { gap: var(--space-3); }
  .app-brand-text { max-width: 180px; }
  .app-brand-title { font-size: var(--text-sm); }
  .app-brand-sub { display: none; }
  .app-nav-link { padding: 0 var(--space-3); font-size: var(--text-xs); }
  .export-menu { min-width: 240px; right: -8px; }
  .page-header { padding: var(--space-5) 0 var(--space-4); flex-direction: column; align-items: stretch; }
  .page-title { font-size: var(--text-2xl); }
  .page-desc { font-size: var(--text-sm); }
  .page-header-actions { width: 100%; }
  .section-card-head { padding: var(--space-4); flex-wrap: wrap; }
  .section-card-body { padding: var(--space-4); }
  .section-card-icon { display: none; }
  .insight-list { grid-template-columns: 1fr; }
  .insight-panel { padding: var(--space-4); }
  .toolbar { padding: var(--space-2); }
  .toolbar-input, .toolbar-select { font-size: 0.78rem; padding: 0.35rem 0.55rem; }
  .data-table { font-size: 0.78rem; }
  .data-table thead th, .data-table tbody td { padding: 0.5rem; }
  .event-card-foot { flex-direction: column-reverse; }
  .event-card-foot .btn { width: 100%; }
  .event-modal { max-height: 100vh; border-radius: 0; }
  .event-modal-head { padding: var(--space-4); }
  .event-modal-body { padding: var(--space-4); }
  .event-modal-foot { padding: var(--space-3) var(--space-4); }
  .app-footer-grid { grid-template-columns: 1fr; }
  .app-footer-bottom { flex-direction: column; gap: var(--space-2); text-align: center; }
  .toolbar-info { width: 100%; text-align: center; margin-left: 0; }
  .export-trigger span:not(.chev-wrap) { display: none; }
  .export-trigger { padding: 0.4rem 0.55rem; }
}

/* ── Mobile small ── */
@media (max-width: 480px) {
  .events-grid { grid-template-columns: 1fr; }
  .section-card-title { font-size: var(--text-sm); }
}

/* ── Print ── */
@media print {
  .app-header, .app-nav, .app-footer, .export-dropdown, .page-header-actions, .toolbar { display: none !important; }
  .section-card { break-inside: avoid; box-shadow: none; border-color: #ccc; }
  body { background: #fff; }
}
