/* STRONGLMB360 V13.6.1 - Long Session Comfort UX SAFE PATCH
   Cambio visual conservador: no altera cálculos, Cliente 360, tasas, backup ni navegación.
*/
:root {
  --strong-comfort-bg: #f6f7f9;
  --strong-comfort-surface: #ffffff;
  --strong-comfort-surface-soft: #fbfbfc;
  --strong-comfort-text: #1f2933;
  --strong-comfort-muted: #64748b;
  --strong-comfort-border: rgba(15, 23, 42, 0.10);
  --strong-comfort-accent: #b98a2c;
  --strong-comfort-sidebar: #173247;
  --strong-comfort-shadow: 0 10px 28px rgba(15, 23, 42, 0.08);
  --strong-comfort-radius: 16px;
  --strong-comfort-font-size: 15px;
}

html.strong-v136-comfort,
body.strong-v136-comfort {
  background: var(--strong-comfort-bg);
  color: var(--strong-comfort-text);
  font-size: var(--strong-comfort-font-size);
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

body.strong-v136-comfort :is(.card, .kpi-card, .metric-card, .panel, .module-card, .dashboard-card, .cliente360-card, .client-card, .table-card, .content-card) {
  background: var(--strong-comfort-surface);
  color: var(--strong-comfort-text);
  border: 1px solid var(--strong-comfort-border);
  border-radius: var(--strong-comfort-radius);
  box-shadow: var(--strong-comfort-shadow);
}

body.strong-v136-comfort :is(table, .table, .data-table) {
  background: var(--strong-comfort-surface);
  color: var(--strong-comfort-text);
  border-collapse: separate;
  border-spacing: 0;
}

body.strong-v136-comfort :is(th, .table-header) {
  background: #eef2f6;
  color: #253142;
  font-weight: 700;
}

body.strong-v136-comfort :is(td, th) {
  border-color: var(--strong-comfort-border);
  vertical-align: middle;
}

body.strong-v136-comfort :is(input, select, textarea) {
  background: #ffffff;
  color: #172033;
  border: 1px solid rgba(15, 23, 42, 0.16);
  border-radius: 12px;
  min-height: 38px;
}

body.strong-v136-comfort :is(input:focus, select:focus, textarea:focus) {
  outline: 3px solid rgba(185, 138, 44, 0.18);
  border-color: rgba(185, 138, 44, 0.55);
}

body.strong-v136-comfort :is(.sidebar, .side-nav, .app-sidebar, nav.sidebar) {
  background: var(--strong-comfort-sidebar);
  color: #eef6ff;
}

body.strong-v136-comfort :is(.sidebar a, .side-nav a, .app-sidebar a, nav.sidebar a) {
  color: #e6edf5;
}

body.strong-v136-comfort :is(.sidebar a.active, .side-nav a.active, .app-sidebar a.active, nav.sidebar a.active) {
  background: rgba(255,255,255,0.12);
  border-left: 3px solid var(--strong-comfort-accent);
}

body.strong-v136-comfort :is(.btn-primary, .primary, button.primary) {
  background: var(--strong-comfort-accent);
  border-color: var(--strong-comfort-accent);
  color: #111827;
}

body.strong-v136-comfort .strong-number,
body.strong-v136-comfort [data-number],
body.strong-v136-comfort .metric-value,
body.strong-v136-comfort .kpi-value {
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.01em;
  max-width: 100%;
  overflow-wrap: anywhere;
}

body.strong-v136-density-compact { --strong-comfort-font-size: 14px; }
body.strong-v136-density-comfort { --strong-comfort-font-size: 16px; }
body.strong-v136-density-wide { --strong-comfort-font-size: 17px; }

body.strong-v136-dark-comfort {
  --strong-comfort-bg: #111827;
  --strong-comfort-surface: #182333;
  --strong-comfort-surface-soft: #1f2d3d;
  --strong-comfort-text: #edf2f7;
  --strong-comfort-muted: #b9c4d0;
  --strong-comfort-border: rgba(255,255,255,0.10);
  --strong-comfort-sidebar: #0f172a;
  --strong-comfort-shadow: 0 10px 28px rgba(0,0,0,0.22);
}

body.strong-v136-dark-comfort :is(input, select, textarea) {
  background: #111827;
  color: #f8fafc;
  border-color: rgba(255,255,255,0.16);
}

body.strong-v136-dark-comfort :is(th, .table-header) {
  background: #223044;
  color: #f8fafc;
}

@media (prefers-reduced-motion: reduce) {
  body.strong-v136-comfort *,
  body.strong-v136-comfort *::before,
  body.strong-v136-comfort *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}
