/*
 * Legibilidad móvil para administración y campus.
 * Esta capa no afecta landing, checkout ni cabeceras corporativas.
 */
@media (max-width: 767px) {
  /* Navegación y contexto de cuenta: texto funcional legible sin alterar el panel. */
  body.admin-site .nav a,
  body.is-campus .nav a {
    font-size: 14px;
    line-height: 1.35;
  }

  body.admin-site :is(.nav-title, .sidebar-brand > span, .sidebar-account span, .docs-link, .logout-link, .sidebar-note p, .header-path, .workspace-label, .dashboard-home),
  body.is-campus :is(.nav-title, .sidebar-brand > span, .sidebar-account span, .docs-link, .logout-link, .sidebar-note p, .header-path, .workspace-label, .dashboard-home) {
    font-size: 13px;
    line-height: 1.45;
  }

  body.admin-site .sidebar-account b,
  body.is-campus .sidebar-account b {
    font-size: 14px;
    line-height: 1.35;
  }

  /* Formularios: evita el zoom de iOS y mantiene etiquetas y acciones utilizables. */
  body.admin-site :is(#view, .modal) label,
  body.is-campus :is(#view, .modal) label {
    font-size: 14px;
    line-height: 1.45;
  }

  body.admin-site :is(#view, .modal) :is(input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]), select, textarea),
  body.is-campus :is(#view, .modal) :is(input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]), select, textarea) {
    min-height: 44px;
    font-size: 16px;
  }

  body.admin-site :is(#view .form-grid, #view .connection-actions, #view .integration-actions, #view .billing-form-actions, #view .migration-apply, .modal .form-grid, .modal .billing-form-actions) .btn,
  body.is-campus #view :is(.learning-form .btn, .billing-form-actions .btn, .billing-invoice-side .btn, .billing-pagination .btn, .session .btn, .classroom-cta, .classroom.lesson .block > header .btn, .classroom.lesson .file-row > .btn) {
    min-height: 44px;
    font-size: 14px;
  }

  /* Datos tabulares: conserva el desplazamiento interno ya definido. */
  body.admin-site #view :is(.table-wrap, .billing-admin-table-wrap) :is(th, td),
  body.admin-site #view :is(.grid:has(#newK), .grid:has(#newW)) > .card > table :is(th, td),
  body.admin-site .modal .table-wrap :is(th, td),
  body.is-campus #view :is(.table-wrap, .card) > table :is(th, td) {
    font-size: 13px;
    line-height: 1.45;
  }

  /* Administración: etiquetas, resúmenes y títulos de curso/clase no quedan en tamaño auxiliar. */
  body.admin-site #view :is(.range-filter label, .metric-top, .metric-foot, .quick-action b, .quick-action p, .compact-course b, .compact-course p, .migration-note h3, .migration-note p, .migration-note a, .connection-detail, .connection-checks, .integration-jobs) {
    font-size: 13px;
    line-height: 1.5;
  }

  body.admin-site #view :is(.card-heading h2, .module-box > header > b, .lesson-row > b) {
    font-size: 16px;
    line-height: 1.4;
  }

  body.admin-site #view :is(.module-box .small, .lesson-row .chips, .res .meta, .migration-source .hint) {
    font-size: 13px;
    line-height: 1.45;
  }

  /* Alumno y aula: metadatos accionables y títulos de cursos/clases con jerarquía legible. */
  body.is-campus #view :is(.student-heading p, .date-chip, .learning-banner p, .student-metric span, .learning-meta, .learning-progress .row, .mod-lesson, .session b, .session .date span, .campus-foot) {
    font-size: 13px;
    line-height: 1.45;
  }

  body.is-campus #view :is(.learning-body > .eyebrow, .learning-card-link, .course-search input, .student-tip a, .classroom-module-title .small, .classroom-release, .classroom-lesson-meta, .classroom-progress-copy span) {
    font-size: 13px;
    line-height: 1.45;
  }

  body.is-campus #view :is(.learning-body h3, .classroom-module-title b, .classroom-lesson-title, .classroom-support-card h3) {
    font-size: 16px;
    line-height: 1.4;
  }
}
