/* NEXORA CRM — adaptación a 1920 / 1366 / 768 / 390 / 360 px */

@media (min-width: 1600px) {
  .dash-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .dash-grid > .span-2 { grid-column: span 2; }
}

@media (max-width: 1400px) {
  .inbox { grid-template-columns: 290px minmax(0, 1fr) 260px; }
  .kpi-grid-5 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ph-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 1280px) {
  .kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dash-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .grid-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .grid-main { grid-template-columns: minmax(0, 1fr); }
  .quote-layout { grid-template-columns: minmax(0, 1fr); }
  .quote-preview-wrap { position: static; }
  .inbox { grid-template-columns: 280px minmax(0, 1fr); }
  .inbox .ib-info { display: none; }
  .inbox.pane-info .ib-info { display: block; position: absolute; right: 0; top: 0; bottom: 0; width: 300px; background: var(--surface); box-shadow: var(--shadow-lg); z-index: 5; }
  .inbox { position: relative; }
  .inbox .ib-head .only-mobile { display: inline-flex !important; }
  .inbox .ib-head .only-mobile[data-pane="list"] { display: none !important; }
  .email-editor, .builder { grid-template-columns: minmax(0, 1fr); }
  .login { grid-template-columns: minmax(360px, 480px) 1fr; }
  .lr-kpis { grid-template-columns: 1fr 1fr; }
  .lr-kpis .lr-kpi:last-child { grid-column: span 2; }
}

@media (max-width: 1024px) {
  .shell, .shell.collapsed { grid-template-columns: minmax(0, 1fr); }
  .sidebar { position: fixed; left: 0; top: 0; bottom: 0; width: min(300px, 86vw); transform: translateX(-102%); transition: transform .22s var(--ease); box-shadow: var(--shadow-lg); }
  .shell.nav-open .sidebar { transform: none; }
  .shell.collapsed .sidebar .brand-text, .shell.collapsed .sidebar .nav-label, .shell.collapsed .sidebar .nav-group-label, .shell.collapsed .sidebar .tenant span, .shell.collapsed .sidebar .demo-pill { display: initial; }
  .only-mobile { display: inline-flex !important; }
  .topbar { padding: 0 var(--sp-4); }
  .view { padding: var(--sp-4); }
  .grid-side { grid-template-columns: minmax(0, 1fr); }
  .grid-2 { grid-template-columns: minmax(0, 1fr); }
  .scenarios { grid-template-columns: minmax(0, 1fr); }
  .help-article-layout { grid-template-columns: minmax(0, 1fr); }
  .landing-grid { grid-template-columns: minmax(0, 1fr); }
  .login { grid-template-columns: minmax(0, 1fr); }
  .login-right { display: none; }
  .login-left { padding: 32px 20px; }
  .pipe-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .kcol { max-height: none; }
  .history li { grid-template-columns: 1fr; gap: 2px; }
}

@media (max-width: 768px) {
  .search kbd { display: none; }
  .hide-sm { display: none !important; }
  .page-header { align-items: flex-start; }
  .page-header h1 { font-size: 21px; }
  .page-actions { width: 100%; }
  .kpi-grid, .kpi-grid-5 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .kpi { padding: 13px 14px 12px; }
  .kpi-value { font-size: 21px; }
  .kpi-spark { width: 40%; height: 34px; }
  .dash-grid, .grid-3, .grid-4 { grid-template-columns: minmax(0, 1fr); }
  .span-2, .dash-grid > .span-2 { grid-column: auto; }
  .form-grid { grid-template-columns: minmax(0, 1fr); }
  .field.span-2 { grid-column: auto; }
  .filters select, .filters input { min-width: 0; flex: 1 1 calc(50% - 8px); }
  .filters .search-inline { max-width: none; flex: 1 1 100%; }
  .filter-count { width: 100%; margin-left: 0; }
  /* Tablas → tarjetas */
  .table-wrap:has(+ .card-list) { display: none; }
  .has-cards { display: none; }
  .card-list { display: block; }
  .table th.hide-sm, .table td.hide-sm { display: none; }
  .quick-actions { grid-template-columns: repeat(2, 1fr); }
  .ph-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ph-main { padding: 16px; }
  .stagebar li { min-width: 84px; }
  .kanban { grid-auto-columns: minmax(250px, 82vw); }
  .inbox { grid-template-columns: minmax(0, 1fr); height: calc(100dvh - 190px); }
  .inbox .ib-list, .inbox .ib-chat { display: none; }
  .inbox.pane-list .ib-list { display: flex; }
  .inbox.pane-chat .ib-chat { display: flex; }
  .inbox.pane-info .ib-info { display: block; position: static; width: auto; box-shadow: none; }
  .inbox .ib-head .only-mobile[data-pane="list"] { display: inline-flex !important; }
  .bubble { max-width: 88%; }
  .sb-row { grid-template-columns: minmax(0, 1fr); }
  .cal-cell { min-height: 74px; }
  .cal-ev-time { display: none; }
  .cal-ev { padding: 1px 4px; font-size: 10.5px; }
  .modal-lg, .modal-xl { max-width: 100%; }
  .overlay { padding: 8px; }
  .drawer { border-radius: 0; max-width: 100% !important; }
  .drawer-foot { border-radius: 0; }
  .toasts { left: 12px; right: 12px; bottom: 12px; max-width: none; }
  .quote-doc { padding: 20px 16px; }
  .qd-parties, .qd-sum { grid-template-columns: minmax(0, 1fr); }
  .rating { grid-template-columns: repeat(5, 1fr); gap: 4px; }
  .rate-opt small { display: none; }
  .nps-scale { grid-template-columns: repeat(6, 1fr); }
  .flow { flex-direction: column; }
  .flow-arrow { transform: rotate(90deg); justify-content: center; }
  .rule-head { flex-wrap: wrap; }
  .totals { max-width: none; }
  .disclaimer { padding: var(--sp-4); }
  .demo-grid { grid-template-columns: minmax(0, 1fr); }
  .demo-chip:last-child:nth-child(odd) { grid-column: auto; }
}

@media (max-width: 480px) {
  .topbar { gap: 6px; padding: 0 10px; }
  .topbar-actions { gap: 2px; }
  .topbar .btn-icon { width: 34px; height: 34px; }
  .search input { padding-right: 10px; }
  .profile-btn { padding: 2px; }
  .view { padding: 12px; }
  .kpi-grid, .kpi-grid-5 { grid-template-columns: minmax(0, 1fr); }
  .mini-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mini-kpi { padding: 10px; }
  .mini-kpi strong { font-size: 15px; }
  .card-head, .card-body { padding-left: 14px; padding-right: 14px; }
  .pipe-summary, .stats-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ph-stats { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .btn { padding: 0 12px; }
  .page-actions .btn span { white-space: nowrap; }
  .cal-wd span { font-size: 10px; padding: 6px 2px; }
  .cal-cell { min-height: 58px; padding: 2px; }
  .cal-ev-title { display: none; }
  .cal-ev { height: 6px; padding: 0; border-left-width: 0; background: var(--ev); border-radius: 3px; }
  .cal-daynum { width: 22px; height: 22px; font-size: 11px; }
  .history li { font-size: var(--fs-xs); }
  .login-left { padding: 24px 16px; }
  .login h1 { font-size: 22px; }
  .help-search { flex-wrap: wrap; }
  .help-search .btn { width: 100%; }
  .qd-head { flex-direction: column; }
  .qd-num { text-align: left; }
}

@media (max-width: 380px) {
  .mini-kpis { grid-template-columns: minmax(0, 1fr); }
  .quick-actions { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .seg-btn { padding: 0 8px; }
}

@media (hover: none) {
  .kcard { cursor: default; }
}
.topbar .btn, .topbar .profile-btn { flex-shrink: 0; }
.search { min-width: 0; }
@media (max-width: 480px) {
  .topbar #themeBtn { display: none; }
  .search input { padding-left: 32px; font-size: 13px; }
}
@media (max-width: 380px) {
  .mini-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mini-kpi .list-ico { display: none; }
}
.btn.btn-icon { padding: 0; } .btn .ico { max-width: none; }
