/* SIMBA · tema sobre Bootstrap 5.3. Cargar DESPUÉS de bootstrap.min.css. */

:root,
[data-bs-theme="light"] {
  --simba-surface: #f3f6f8;
  --simba-surface-raised: #ffffff;
  --simba-surface-sunken: #e7edf1;
  --simba-line: #d3dde3;
  --simba-ink: #13142a;
  --simba-ink-muted: #556570;
  --simba-primary: #0b6a8f;
  --simba-primary-hover: #085675;
  --simba-on-primary: #ffffff;
  --simba-primary-soft: #d4ecf2;
  --simba-primary-soft-ink: #0b4f6b;
  --simba-brand: #21bcef;
  --simba-brand-soft: #d4ecf2;

  --bs-body-bg: var(--simba-surface);
  --bs-body-color: var(--simba-ink);
  --bs-secondary-color: var(--simba-ink-muted);
  --bs-secondary-bg: var(--simba-surface-sunken);
  --bs-tertiary-bg: var(--simba-surface-sunken);
  --bs-border-color: var(--simba-line);
  --bs-emphasis-color: var(--simba-ink);

  --bs-primary: #0b6a8f;   --bs-primary-rgb: 11, 106, 143;
  --bs-success: #2e7d4f;   --bs-success-rgb: 46, 125, 79;
  --bs-warning: #b45309;   --bs-warning-rgb: 180, 83, 9;
  --bs-danger:  #b42318;   --bs-danger-rgb: 180, 35, 24;
  --bs-info:    #0b6a8f;   --bs-info-rgb: 11, 106, 143;

  --bs-primary-bg-subtle: #d4ecf2;  --bs-primary-text-emphasis: #0b4f6b;  --bs-primary-border-subtle: #9fd3e6;
  --bs-success-bg-subtle: #dff1e6;  --bs-success-text-emphasis: #1f6a42;  --bs-success-border-subtle: #a8d8ba;
  --bs-warning-bg-subtle: #fde9d9;  --bs-warning-text-emphasis: #9a3412;  --bs-warning-border-subtle: #f5c39b;
  --bs-danger-bg-subtle:  #fde4e1;  --bs-danger-text-emphasis:  #9b1c14;  --bs-danger-border-subtle:  #f3b0a9;

  --bs-link-color: var(--simba-primary);       --bs-link-color-rgb: 11, 106, 143;
  --bs-link-hover-color: var(--simba-primary-hover);
  --bs-focus-ring-color: rgba(11, 106, 143, .35);

  --bs-font-sans-serif: "Source Sans 3", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --bs-body-font-size: 1rem;
  --bs-border-radius: 6px;
  --bs-border-radius-lg: 10px;
  --bs-border-radius-pill: 999px;
  --bs-box-shadow-sm: 0 1px 2px rgba(19, 20, 42, .08);
  --bs-box-shadow: 0 8px 24px rgba(19, 20, 42, .14);
}

[data-bs-theme="dark"] {
  --bs-body-bg: var(--simba-surface);
  --bs-body-color: var(--simba-ink);
  --bs-secondary-color: var(--simba-ink-muted);
  --bs-secondary-bg: var(--simba-surface-sunken);
  --bs-tertiary-bg: var(--simba-surface-sunken);
  --bs-border-color: var(--simba-line);
  --bs-emphasis-color: var(--simba-ink);
  --bs-link-color: var(--simba-primary);
  --bs-link-hover-color: var(--simba-primary-hover);
  --simba-surface: #0f1220;
  --simba-surface-raised: #171b2b;
  --simba-surface-sunken: #0b0d17;
  --simba-line: #2a3042;
  --simba-ink: #e6edf3;
  --simba-ink-muted: #9aa7b5;
  --simba-primary: #21bcef;
  --simba-primary-hover: #5fd0f5;
  --simba-on-primary: #13142a;
  --simba-primary-soft: #12324a;
  --simba-primary-soft-ink: #a8e1f5;
  --simba-brand: #21bcef;
  --simba-brand-soft: #12324a;

  --bs-primary: #21bcef;   --bs-primary-rgb: 33, 188, 239;
  --bs-success: #5fcf8e;   --bs-success-rgb: 95, 207, 142;
  --bs-warning: #f59e5b;   --bs-warning-rgb: 245, 158, 91;
  --bs-danger:  #f38b80;   --bs-danger-rgb: 243, 139, 128;
  --bs-info:    #21bcef;   --bs-info-rgb: 33, 188, 239;

  --bs-primary-bg-subtle: #12324a;  --bs-primary-text-emphasis: #a8e1f5;  --bs-primary-border-subtle: #1d4d6e;
  --bs-success-bg-subtle: #16301f;  --bs-success-text-emphasis: #8fe0ae;  --bs-success-border-subtle: #245236;
  --bs-warning-bg-subtle: #3a2410;  --bs-warning-text-emphasis: #f8c08a;  --bs-warning-border-subtle: #5c3a1b;
  --bs-danger-bg-subtle:  #3d1714;  --bs-danger-text-emphasis:  #f8aaa2;  --bs-danger-border-subtle:  #632722;

  --bs-link-color-rgb: 33, 188, 239;
  --bs-focus-ring-color: rgba(33, 188, 239, .4);
  --bs-box-shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);
  --bs-box-shadow: 0 8px 24px rgba(0, 0, 0, .5);
}

/* Bootstrap fija los colores de .btn-* al compilar: hay que redefinirlos */
.btn-primary {
  --bs-btn-bg: var(--simba-primary);
  --bs-btn-border-color: var(--simba-primary);
  --bs-btn-color: var(--simba-on-primary);
  --bs-btn-hover-bg: var(--simba-primary-hover);
  --bs-btn-hover-border-color: var(--simba-primary-hover);
  --bs-btn-hover-color: var(--simba-on-primary);
  --bs-btn-active-bg: var(--simba-primary-hover);
  --bs-btn-active-border-color: var(--simba-primary-hover);
  --bs-btn-active-color: var(--simba-on-primary);
  --bs-btn-disabled-bg: var(--simba-primary);
  --bs-btn-disabled-border-color: var(--simba-primary);
  --bs-btn-disabled-color: var(--simba-on-primary);
}
.btn-outline-primary {
  --bs-btn-color: var(--simba-primary);
  --bs-btn-border-color: var(--simba-line);
  --bs-btn-hover-bg: var(--simba-primary-soft);
  --bs-btn-hover-border-color: var(--simba-primary);
  --bs-btn-hover-color: var(--simba-primary-soft-ink);
  --bs-btn-active-bg: var(--simba-primary-soft);
  --bs-btn-active-color: var(--simba-primary-soft-ink);
}
.btn { min-height: 44px; font-weight: 600; }
.btn-sm { min-height: 36px; }          /* solo en PC, dentro de tablas */

.card, .modal-content, .dropdown-menu, .offcanvas { --bs-card-bg: var(--simba-surface-raised); background-color: var(--simba-surface-raised); }
.form-control, .form-select { min-height: 44px; font-size: 1rem; }
.form-control:focus, .form-select:focus { border-color: var(--simba-primary); box-shadow: 0 0 0 .25rem var(--bs-focus-ring-color); }
.form-label { font-size: .8125rem; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--simba-ink-muted); }
.table { --bs-table-bg: var(--simba-surface-raised); }
.table thead th { background: var(--simba-surface-sunken); font-size: .8125rem; letter-spacing: .04em; text-transform: uppercase; color: var(--simba-ink-muted); }

h1, .h1, h2, .h2 { font-family: "Bricolage Grotesque", "Source Sans 3", system-ui, sans-serif; font-weight: 600; letter-spacing: -.01em; }
h1, .h1 { font-size: 1.375rem; line-height: 1.25; }       /* 22px móvil */
h2, .h2 { font-size: 1.25rem;  line-height: 1.3; }
@media (min-width: 768px) { h1, .h1 { font-size: 1.75rem; } }  /* 28px tablet/PC */

.tnum, time, .simba-time { font-variant-numeric: tabular-nums; }

/* Logos de SIMBA según tema */
.simba-logo--dark { display: none; }
[data-bs-theme="dark"] .simba-logo--light { display: none; }
[data-bs-theme="dark"] .simba-logo--dark { display: inline-block; }
