/**
 * Tipografía global — theme_new/main/forms_general.html (Oral Admin)
 * html 14px · Open Sans (cuerpo) · Poppins (títulos)
 */

html {
  font-size: 14px;
}

body.hold-transition,
body.hold-transition.light-skin,
body.hold-transition.light-skin.theme-primary,
body.hold-transition.light-skin.theme-primary.fixed,
.dental-auth-page {
  font-family: "Open Sans", sans-serif !important;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #172b4c;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ——— Encabezados (Poppins) ——— */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6,
.page-title,
.box-header .box-title,
.content-header .page-title,
.modal-title {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  line-height: 1.2;
  color: #172b4c;
}

h1, .h1 { font-size: 2.5714285714rem; }
h2, .h2 { font-size: 2.1428571429rem; }
h3, .h3 { font-size: 1.7142857143rem; }
h4, .h4 { font-size: 1.2857142857rem; }
h5, .h5 { font-size: 1.1428571429rem; }
h6, .h6 { font-size: 1rem; }

.content-header .page-title,
.ds-page-header .page-title {
  font-size: 1.2857142857rem;
  font-weight: 400;
  margin: 0 0 4px;
}

.ds-page-subtitle,
.content-header .ds-page-subtitle {
  font-size: 1rem;
  line-height: 1.5;
}

/* ——— Breadcrumb ——— */
.content-header .breadcrumb,
.content-header .breadcrumb-item,
.content-header .breadcrumb-item a {
  font-size: 1rem;
}

.content-header .breadcrumb .mdi {
  font-size: 1.1428571429rem;
}

/* ——— Formularios ——— */
.theme-primary .form-label,
.theme-primary label.form-label,
.theme-primary label.col-form-label,
.theme-primary label.control-label,
.theme-primary .content-wrapper label,
.theme-primary .ds-module-form label {
  font-size: 1rem;
  font-weight: 400;
  font-family: "Open Sans", sans-serif;
  color: #172b4c;
}

.theme-primary .form-control,
.theme-primary .form-select,
.theme-primary select.form-control,
.theme-primary textarea.form-control,
.theme-primary .content-wrapper .form-control,
.theme-primary .content-wrapper select.form-control,
.theme-primary .content-wrapper textarea.form-control {
  font-size: 1rem;
  font-family: "Open Sans", sans-serif;
  line-height: 1.5;
  padding: 0.5rem 0.75rem;
  min-height: calc(1.5em + 1rem + 2px);
}

.theme-primary .form-control.input-sm,
.theme-primary select.input-sm,
.theme-primary .content-wrapper .form-control.input-sm {
  font-size: 1rem;
  padding: 0.5rem 0.75rem;
  min-height: calc(1.5em + 1rem + 2px);
}

.theme-primary .form-text.text-muted,
.theme-primary .help-block,
.theme-primary .content-wrapper .help-block {
  font-size: 0.8571428571rem;
}

.theme-primary .box-body .box-title.text-info {
  font-size: 1rem;
  font-family: "Poppins", sans-serif;
  font-weight: 500;
}

.theme-primary .box-header .box-title {
  font-size: 1.2857142857rem;
}

.theme-primary .input-group-addon,
.theme-primary .input-group-text {
  font-size: 1.15rem;
}

/* ——— Tablas / DataTables ——— */
.theme-primary table,
.theme-primary .table,
.theme-primary .dataTables_wrapper,
.theme-primary .dataTables_wrapper .dataTables_length,
.theme-primary .dataTables_wrapper .dataTables_filter,
.theme-primary .dataTables_wrapper .dataTables_info,
.theme-primary .dataTables_wrapper .dataTables_paginate {
  font-size: 1rem;
  font-family: "Open Sans", sans-serif;
}

.theme-primary table thead th,
.theme-primary .table thead th {
  font-size: 1rem;
  font-weight: 600;
}

/* ——— Botones ——— */
.theme-primary .btn {
  font-size: 1rem;
  font-family: "Open Sans", sans-serif;
}

.theme-primary .btn-sm,
.theme-primary .btn-group-sm > .btn {
  font-size: 0.8571428571rem;
}

.theme-primary .btn-lg,
.theme-primary .btn-group-lg > .btn {
  font-size: 1.1428571429rem;
}

/* ——— Sidebar ——— */
.main-sidebar.ds-sidebar,
.main-sidebar.ds-sidebar .sidebar-menu,
.main-sidebar.ds-sidebar .sidebar-menu a,
.main-sidebar.ds-sidebar .treeview-menu > li > a {
  font-family: "Open Sans", sans-serif;
  font-size: 1rem;
}

.main-sidebar.ds-sidebar .sidebar-menu > li.header {
  font-size: 0.8571428571rem;
}

/* ——— Perfil widget ——— */
.theme-primary .ds-profile-widget .widget-user-username {
  font-size: 1.2857142857rem;
  font-family: "Poppins", sans-serif;
}

.theme-primary .ds-profile-widget .form-label {
  font-size: 0.8571428571rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.theme-primary .ds-profile-widget .form-control,
.theme-primary .ds-profile-widget .ds-profile-date {
  font-size: 1rem;
}

/* ——— KPI / cards ——— */
.ds-kpi-card .ds-kpi-label {
  font-size: 1rem;
}

.ds-kpi-card .ds-kpi-value {
  font-size: 1.2857142857rem;
  font-family: "Poppins", sans-serif;
}

/* ——— Badges ——— */
.ds-badge,
.label {
  font-size: 0.8571428571rem;
}

/* ——— Compatibilidad php8 (subir tamaños heredados) ——— */
.theme-primary .box-body,
.theme-primary .box-footer,
.theme-primary .nav-tabs-custom > .nav-tabs > li > a {
  font-size: 1rem;
}

.theme-primary .small-box .inner h3 {
  font-family: "Poppins", sans-serif;
}

.theme-primary .small-box .inner p {
  font-size: 1rem;
}

/* Dark mode — mismos tamaños */
html[data-theme="dark"] body.hold-transition.light-skin.theme-primary,
.theme-primary.dark-skin {
  color: var(--ds-text, #e2e8f0);
}

html[data-theme="dark"] .content-header .page-title,
html[data-theme="dark"] h1, html[data-theme="dark"] h2,
html[data-theme="dark"] h3, html[data-theme="dark"] h4,
.theme-primary.dark-skin .content-header .page-title {
  color: var(--ds-text, #f1f5f9);
}
