/*!
 * CSS SpaceLab Zapico - basado en SpaceLab v. 2.0
 * 2015 - Alex Aragón (aragonc@beeznest.com)
 * OpenClipArt ilustration (https://openclipart.org/detail/178586/mad-scientist) By AnNinihah
 * Licensed GPL
 * Based on Bootstrap
*/

@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  src: local('Open Sans Light'), local('OpenSans-Light'), url(../chamilo/fonts/OpenSans-Light.woff2) format('woff2'), url(../chamilo/fonts/OpenSans-Light.woff) format('woff');
}
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: local('Open Sans'), local('OpenSans'), url(../chamilo/fonts/OpenSans.woff2) format('woff2'), url(../chamilo/fonts/OpenSans.woff) format('woff');
}
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(../chamilo/fonts/OpenSans-Semibold.woff2) format('woff2'), url(../chamilo/fonts/OpenSans-Semibold.woff) format('woff');
}
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  src: local('Open Sans Bold'), local('OpenSans-Bold'), url(../chamilo/fonts/OpenSans-Bold.woff2) format('woff2'), url(../chamilo/fonts/OpenSans-Bold.woff) format('woff');
}
html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  position: relative;
}
body {
  margin: 0 0 60px;
  font-family: 'Open Sans', sans-serif;
  line-height: 1.72222;
}
body > main footer.footer {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
}
a{
  color: #185B8E;
}
a:hover{
  color: #3F9BC7;
}
header{
  background-image: url("../Aulazapico14/images/background.png");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain;
  background-color: #061b2a;
}
.navbar-default {
background: -moz-linear-gradient(top, rgba(92,107,106,0.29) 0%, rgba(15,32,36,0.85) 86%, rgba(15,32,36,0.94) 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(92,107,106,0.29)), color-stop(86%,rgba(15,32,36,0.85)), color-stop(100%,rgba(15,32,36,0.94))); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, rgba(92,107,106,0.29) 0%,rgba(15,32,36,0.85) 86%,rgba(15,32,36,0.94) 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, rgba(92,107,106,0.29) 0%,rgba(15,32,36,0.85) 86%,rgba(15,32,36,0.94) 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, rgba(92,107,106,0.29) 0%,rgba(15,32,36,0.85) 86%,rgba(15,32,36,0.94) 100%); /* IE10+ */
background: linear-gradient(to bottom, rgba(92,107,106,0.29) 0%,rgba(15,32,36,0.85) 86%,rgba(15,32,36,0.94) 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4a5c6b6a', endColorstr='#f00f2024',GradientType=0 ); /* IE6-9 */
border:none;
}
.navbar{
    border-bottom: 3px solid #4A8480;
}
.navbar-default .navbar-brand {
  color: #ffffff;
}
.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {
  color: #ededed;
}
.navbar-default .navbar-text {
  color: #ffffff;
}
.navbar-default .navbar-nav > li > a {
  color: #ffffff;
}
.navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus {
  color: #9DD0F1;
}
.navbar-default .navbar-nav > li > .dropdown-menu {
  background-color: #E48A1D;
}
.navbar-default .navbar-nav > li > .dropdown-menu > li > a {
  color: #ffffff;
}
.navbar-default .navbar-nav > li > .dropdown-menu > li > a:hover,
.navbar-default .navbar-nav > li > .dropdown-menu > li > a:focus {
  color: #ededed;
  background-color: #C76027;
}
.navbar-default .navbar-nav > li > .dropdown-menu > li > .divider {
  background-color: #0099c0;
}
.navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus {
  color: #ededed;
  background: #465251;
}
.navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus {
  color: #ededed;
  background: #e48a1d; /* Old browsers */
  background: -moz-linear-gradient(top, #e48a1d 0%, #e48a1d 52%, #c86027 52%, #c86027 100%); /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#e48a1d), color-stop(52%,#e48a1d), color-stop(52%,#c86027), color-stop(100%,#c86027)); /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #e48a1d 0%,#e48a1d 52%,#c86027 52%,#c86027 100%); /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #e48a1d 0%,#e48a1d 52%,#c86027 52%,#c86027 100%); /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #e48a1d 0%,#e48a1d 52%,#c86027 52%,#c86027 100%); /* IE10+ */
  background: linear-gradient(to bottom, #e48a1d 0%,#e48a1d 52%,#c86027 52%,#c86027 100%); /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e48a1d', endColorstr='#c86027',GradientType=0 ); /* IE6-9 */
}
.navbar-default .navbar-toggle {
  border-color: #0099c0;
}
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {
  background-color: #0099c0;
}
.navbar-default .navbar-toggle .icon-bar {
  background-color: #ffffff;
}
.navbar-default .navbar-collapse,
.navbar-default .navbar-form {
  border-color: #ffffff;
}
.navbar-default .navbar-link {
  color: #ffffff;
}
.navbar-default .navbar-link:hover {
  color: #ededed;
}
.logo {
  margin: 50px 0;
}
@media (max-width: 767px) {
  .navbar-default .navbar-nav .open .dropdown-menu > li > a {
    color: #ffffff;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
    color: #ededed;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
    color: #ededed;
    background-color: #0099c0;
  }
}
.breadcrumb{
  background: #ddecef;
  color: #006A84;
}
.nav li a:hover{
    background: transparent;
}
.panel-default .panel-heading{
    background-color: #ddecef;
}
footer.bgfooter{
  background: #272727;
  color: #9DD0F1;
  border-top: 4px solid #4A8480;
}
footer.bgfooter a{
  color: #ffffff;
}
footer.bgfooter a:hover{
  color: #CCC;
}
/* Portrait tablet to landscape and desktop */
@media (min-width: 768px) and (max-width: 979px) {
  .logo {
    margin: 25px 0;
  }
}
/* Medium-small screens*/
@media (min-width: 480px) and (max-width: 767px) {
  .logo {
    margin: 24px 0;
  }
}
/* Smalls screens */
@media (min-width: 320px) and (max-width: 479px) {
  .logo {
    margin: 10px 0;
  }
}
/* Landscape phones and down */
@media only screen and (min-width: 320px) and (max-width: 480px) {
  .logo {
    margin: 20px 0;
  }
}


/* ============================================================
   Escuela Zapico de Taekwondo — Aaula Zapico 1.2
   Cabecera responsive y ajustes visuales.
   ============================================================ */

/* Si existe la barra superior fija de Chamilo, deja espacio suficiente
   para que no tape el inicio de la cabecera. Se incluyen varios selectores
   para cubrir las variantes de marcado de Chamilo 1.11.x. */
#topbar.navbar-fixed-top + #main,
#topbar.navbar-fixed-top ~ #main,
#topbar + #main,
#topbar ~ #main {
    padding-top: 48px;
}
#topbar.navbar-fixed-top + header,
#topbar.navbar-fixed-top ~ header,
#topbar + header,
#topbar ~ header {
    margin-top: 48px;
}

/* Móvil: usa una cabecera específica, con menos texto y tipografía legible. */
@media only screen and (max-width: 767px) {
  header {
    background-image: url("../Aulazapico14/images/background-mobile.png");
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 100% auto;
    background-color: #061b2a;
  }

  /* El logo activo es transparente; reducimos el espacio que ocupa
     para no crear una franja vacía excesiva en pantallas pequeñas. */
  .logo {
    margin: 18px 0 18px !important;
  }
}

/* Teléfonos muy estrechos: prioriza lectura del lateral izquierdo. */
@media only screen and (max-width: 420px) {
  header {
    background-position: left top;
    background-size: auto 112px;
  }
  .logo {
    margin: 18px 0 14px !important;
  }
}

/* ============================================================
   Aaula Zapico 1.2 — limpieza de controles de accesibilidad
   Se eliminan los tres botones A/A/A del cabecero en todas las vistas.
   No se modifica el formulario de acceso ni el resto de la navegación.
   ============================================================ */
header .btn-group,
header .btn-toolbar,
header [class*="font-size"],
header [class*="fontsize"],
header [id*="font-size"],
header [id*="fontsize"],
header a[onclick*="font" i],
header button[onclick*="font" i],
header a[href*="font" i] {
  display: none !important;
}

/* Mantiene la altura mínima del cabecero móvil aunque desaparezca el grupo A/A/A. */
@media only screen and (max-width: 767px) {
  header {
    min-height: 220px;
  }
}

/* ============================================================
   Aula Zapico — ocultación global de controles de compartición social
   Regla reversible: no elimina contenidos ni enlaces almacenados.
   ============================================================ */
ul.sharing-buttons,
.addthis_toolbox,
.addthis_inline_share_toolbox,
[class*="addthis_button_"],
a.btn-facebook,
a.btn-twitter,
a.btn-linkedin,
a[href*="facebook.com/sharer"],
a[href*="twitter.com/home?status="],
a[href*="twitter.com/intent/tweet"],
a[href*="x.com/intent/post"],
a[href*="linkedin.com/shareArticle"],
a[href*="linkedin.com/sharing/share-offsite"] {
  display: none !important;
}

/* ============================================================
   Aula Zapico 1.4 — portada global de herramientas de curso
   Tarjetas grandes, legibles y táctiles. Solo afecta a la pantalla
   principal de los cursos; no modifica enlaces ni funcionalidad.
   ============================================================ */
#course_tools > .row:last-child {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 20px;
  width: 100%;
  margin: 0 !important;
  box-sizing: border-box;
}

/* Bootstrap usa estos pseudo-elementos para limpiar columnas flotantes.
   En una cuadrícula CSS ocuparían una celda vacía, por lo que se anulan
   únicamente en la fila de herramientas. */
#course_tools > .row:last-child::before,
#course_tools > .row:last-child::after {
  display: none !important;
  content: none !important;
}

#course_tools > .row:last-child > [class*="col-"] {
  float: none;
  width: auto;
  min-height: 0;
  padding: 0;
}

#course_tools .course-tool {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 220px;
  height: 100%;
  padding: 18px;
  box-sizing: border-box;
  text-align: center;
  background: linear-gradient(145deg, #0F4C5C 0%, #1B1F23 100%);
  border: 1px solid #d9e0e5;
  border-top: 5px solid #c9a344;
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(16, 33, 63, 0.10);
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

#course_tools .course-tool:hover,
#course_tools .course-tool:focus-within {
  background: linear-gradient(145deg, #0B3641 0%, #111417 100%);
  border-color: #c9a344;
  box-shadow: 0 5px 14px rgba(0, 0, 0, 0.28);
}

#course_tools .course-tool .big_icon {
  flex: 0 0 auto;
  text-align: center;
  float: none !important;
  width: 120px !important;
  margin: 0 auto;
}

#course_tools .course-tool .big_icon img {
  width: 120px;
  height: 120px;
  max-width: 100%;
  object-fit: contain;
}

#course_tools .course-tool .content {
  float: none !important;
  width: 100% !important;
  min-width: 0;
  margin: 0 !important;
  overflow: visible !important;
  text-align: center;
}

#course_tools .course-tool .content > a:last-child {
  display: inline-block;
  max-width: 100%;
  color: #FFFFFF;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.25;
  text-decoration: none;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  overflow-wrap: break-word;
}

#course_tools .course-tool .content > a:last-child:hover,
#course_tools .course-tool .content > a:last-child:focus {
  color: #FFFFFF;
  text-decoration: underline;
}

/* ============================================================
   Aula Zapico 1.4 — fondo de lectura de los cursos
   No afecta a las tarjetas de herramientas ni a sus enlaces.
   ============================================================ */
body {
  background-color: #E9EEF0;
}

.cm-content,
#main_content {
  background-color: #F4F6F7;
}

#main_content h1,
#main_content h2,
#main_content h3,
#main_content h4,
#main_content .page-header .title-tools {
  color: #0B3641;
}

#main_content p,
#main_content li,
#main_content .page-course {
  color: #252B30;
}

#course_tools .title-tools {
  margin: 30px 0 18px;
  color: #10213f;
  font-size: 27px;
  font-weight: 800;
  letter-spacing: 0.01em;
}

@media (max-width: 767px) {
  #course_tools > .row:last-child {
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
    width: calc(100% - 32px);
    margin: 0 auto !important;
  }

  #course_tools > .row:last-child > [class*="col-"] {
    min-width: 0;
  }

  #course_tools .course-tool {
    display: flex;
    min-height: 205px;
    padding: 18px;
    text-align: center;
  }

  #course_tools .course-tool .big_icon {
    margin: 0 auto 12px;
    flex-basis: auto;
    float: none;
    width: 110px !important;
  }

  #course_tools .course-tool .big_icon img {
    width: 110px;
    height: 110px;
  }

  #course_tools .course-tool .content > a:last-child {
    font-size: 18px;
  }

  #course_tools .course-tool .content {
    float: none;
    width: 100%;
    text-align: center;
  }

  #course_tools .title-tools {
    font-size: 24px;
  }
}

/* Documentos: primera prueba para las herramientas internas del curso. */
body:has(#toolbar-document) { background-color: #10181c; }
body:has(#toolbar-document) #cm-content { background: #10181c; color: #edf2f4; }
body:has(#toolbar-document) #main {
  background: #172126;
  color: #edf2f4;
  border: 1px solid #263940;
  border-radius: 10px;
  padding: 20px;
  box-shadow: 0 4px 18px rgba(0,0,0,.16);
}
body:has(#toolbar-document) .breadcrumb {
  background: #1b1f23;
  border: 1px solid #34474f;
  border-radius: 7px;
  color: #dce5e8;
}
body:has(#toolbar-document) .breadcrumb a,
body:has(#toolbar-document) #main a:not(.btn) { color: #d5b35a; }
body:has(#toolbar-document) #toolbar-document {
  margin: 0 0 18px;
  padding: 14px;
  background: #1b1f23;
  border: 1px solid #34474f;
  border-radius: 8px;
}
body:has(#toolbar-document) input.form-control,
body:has(#toolbar-document) select.form-control,
body:has(#toolbar-document) .bootstrap-select > .dropdown-toggle {
  background: #10181c;
  border-color: #41545c;
  color: #f4f7f8;
}
body:has(#toolbar-document) .bootstrap-select .dropdown-menu {
  background: #1b1f23;
  border-color: #41545c;
}
body:has(#toolbar-document) .bootstrap-select .dropdown-menu li a { color: #eef3f4; }
body:has(#toolbar-document) .btn-default {
  background: #263940;
  border-color: #4b6169;
  color: #f4f7f8;
}
body:has(#toolbar-document) .btn-default:hover,
body:has(#toolbar-document) .btn-default:focus { background: #0B3641; color: #fff; }
body:has(#toolbar-document) #main table.data_table_pagination {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  color: #e9eff1;
  border: 1px solid #34474f;
  border-radius: 8px;
  overflow: hidden;
}
body:has(#toolbar-document) #main table.data_table_pagination thead th,
body:has(#toolbar-document) #main table.data_table_pagination tr:first-child > td {
  background: #0B3641;
  color: #fff;
  border-color: #41545c;
  font-weight: 700;
}
body:has(#toolbar-document) #main table.data_table_pagination tbody tr:nth-child(odd) td { background: #1b282e; }
body:has(#toolbar-document) #main table.data_table_pagination tbody tr:nth-child(even) td { background: #202d33; }
body:has(#toolbar-document) #main table.data_table_pagination td {
  color: #e9eff1;
  border-color: #34474f;
  vertical-align: middle;
}
body:has(#toolbar-document) #main table.data_table_pagination td a { color: #f0ca68; }
body:has(#toolbar-document) #main table.data_table_pagination td a:hover { color: #fff; }
body:has(#toolbar-document) #main table.data_table {
  color: #e9eff1;
  border-color: #34474f;
  background: #1b282e;
}
body:has(#toolbar-document) #main table.data_table thead th {
  background: #0B3641;
  color: #fff;
  border-color: #41545c;
  font-weight: 700;
}
body:has(#toolbar-document) #main table.data_table tr:first-child > th {
  background: #0B3641;
  color: #fff;
  border-color: #41545c;
  font-weight: 700;
}
body:has(#toolbar-document) #main table.data_table tr:first-child > th a { color: #fff; }
body:has(#toolbar-document) #main table.data_table tbody tr:nth-child(odd) > td { background: #1b282e; }
body:has(#toolbar-document) #main table.data_table tbody tr:nth-child(even) > td { background: #202d33; }
body:has(#toolbar-document) #main table.data_table tbody td {
  color: #e9eff1;
  border-color: #34474f;
}
body:has(#toolbar-document) #main table.data_table tbody td a { color: #f0ca68; }
body:has(#toolbar-document) #main table.data_table tbody td a:hover { color: #fff; }
body:has(#toolbar-document) #main table.data_table .description { color: #cdd8dc; }
@media (max-width: 767px) {
  body:has(#toolbar-document) #main { padding: 14px 10px; border-radius: 0; border-left: 0; border-right: 0; }
  body:has(#toolbar-document) #toolbar-document { padding: 10px; }
  body:has(#toolbar-document) #toolbar-document .form-control { width: 100% !important; margin-bottom: 8px; }
  body:has(#toolbar-document) #main table.data_table_pagination { font-size: 14px; }
}

/* Página principal del alumno: base reutilizable de paneles Chamilo. */
body:has(#main.section-mycourses) { background: #10181c; }
body:has(#main.section-mycourses) #cm-content { background: #10181c; color: #edf2f4; }
body:has(#main.section-mycourses) #main.section-mycourses {
  background: #172126;
  color: #edf2f4;
  border: 1px solid #263940;
  border-radius: 10px;
  padding: 20px;
}
body:has(#main.section-mycourses) #main.section-mycourses a { color: #e4bd58; }
body:has(#main.section-mycourses) .breadcrumb {
  background: #1b1f23;
  border: 1px solid #34474f;
  border-radius: 7px;
  color: #dce5e8;
}
body:has(#main.section-mycourses) .breadcrumb a { color: #e4bd58; }
body:has(#main.section-mycourses) #main.section-mycourses .page-content,
body:has(#main.section-mycourses) #main.section-mycourses .panel,
body:has(#main.section-mycourses) #main.section-mycourses .panel-body,
body:has(#main.section-mycourses) #main.section-mycourses .thumbnail {
  background: #1b1f23;
  border-color: #34474f;
  color: #edf2f4;
}
body:has(#main.section-mycourses) #main.section-mycourses .panel {
  border-radius: 8px;
  box-shadow: 0 3px 12px rgba(0,0,0,.16);
}
body:has(#main.section-mycourses) #main.section-mycourses .panel-heading,
body:has(#main.section-mycourses) #main.section-mycourses .page-content > h3 {
  background: #0B3641;
  border-color: #4b6169;
  color: #fff;
}
body:has(#main.section-mycourses) #main.section-mycourses .panel-heading a,
body:has(#main.section-mycourses) #main.section-mycourses .panel-heading .panel-title { color: #fff; }
body:has(#main.section-mycourses) #main.section-mycourses .list-group-item {
  background: #202d33;
  border-color: #34474f;
  color: #edf2f4;
}
body:has(#main.section-mycourses) #main.section-mycourses .list-group-item:hover { background: #263940; }
body:has(#main.section-mycourses) #main.section-mycourses .course-items-title,
body:has(#main.section-mycourses) #main.section-mycourses .course-items-title a {
  color: #f4f7f8;
}
body:has(#main.section-mycourses) #main.section-mycourses .course-items-session,
body:has(#main.section-mycourses) #main.section-mycourses .course_extrafields,
body:has(#main.section-mycourses) #main.section-mycourses .text-muted { color: #cdd8dc; }
body:has(#main.section-mycourses) #user_image_block {
  background: #1b1f23;
  border: 1px solid #34474f;
  border-radius: 8px;
  color: #edf2f4;
}
body:has(#main.section-mycourses) #main.section-mycourses .btn-default {
  background: #263940;
  border-color: #4b6169;
  color: #f4f7f8;
}
body:has(#main.section-mycourses) #main.section-mycourses .btn-default:hover,
body:has(#main.section-mycourses) #main.section-mycourses .btn-default:focus {
  background: #0B3641;
  color: #fff;
}
@media (max-width: 767px) {
  body:has(#main.section-mycourses) #main.section-mycourses {
    padding: 14px 10px;
    border-radius: 0;
    border-left: 0;
    border-right: 0;
  }
}

/* Lecciones: listado interno. */
body:has(#lp-accordion) { background: #10181c; }
body:has(#lp-accordion) #cm-content { background: #10181c; color: #edf2f4; }
body:has(#lp-accordion) #main.section-mycourses {
  background: #172126;
  color: #edf2f4;
  border: 1px solid #263940;
  border-radius: 10px;
  padding: 20px;
}
body:has(#lp-accordion) #lp-accordion .lp-category-item {
  margin: 0 0 24px;
  border: 1px solid #34474f;
  border-radius: 8px;
  overflow: hidden;
  background: #1b1f23;
}
body:has(#lp-accordion) #lp-accordion h3.page-header {
  margin: 0;
  padding: 14px 18px;
  background: #0B3641;
  border: 0;
  color: #fff;
}
body:has(#lp-accordion) #lp-accordion .table-responsive { border: 0; }
body:has(#lp-accordion) #lp-accordion table.table {
  margin: 0;
  color: #edf2f4;
  border: 0;
}
body:has(#lp-accordion) #lp-accordion table.table thead th {
  background: #102f39;
  border-color: #41545c;
  color: #fff;
  font-weight: 700;
}
body:has(#lp-accordion) #lp-accordion table.table tbody tr:nth-child(odd) > td { background: #1b282e; }
body:has(#lp-accordion) #lp-accordion table.table tbody tr:nth-child(even) > td { background: #202d33; }
body:has(#lp-accordion) #lp-accordion table.table tbody td {
  color: #e9eff1;
  border-color: #34474f;
  vertical-align: middle;
}
body:has(#lp-accordion) #lp-accordion table.table tbody td a { color: #f0ca68; }
body:has(#lp-accordion) #lp-accordion table.table tbody td a:hover { color: #fff; }
body:has(#lp-accordion) #lp-accordion .progress {
  margin-bottom: 0;
  background: #10181c;
  border: 1px solid #41545c;
  box-shadow: none;
}
body:has(#lp-accordion) #lp-accordion .progress-bar-success {
  background: #2f8c64;
  color: #fff;
  text-shadow: none;
}
body:has(#lp-accordion) #lp-accordion .progress-bar { font-weight: 700; }
@media (max-width: 767px) {
  body:has(#lp-accordion) #main.section-mycourses {
    padding: 14px 10px;
    border-radius: 0;
    border-left: 0;
    border-right: 0;
  }
  body:has(#lp-accordion) #lp-accordion h3.page-header { padding: 12px 14px; font-size: 21px; }
  body:has(#lp-accordion) #lp-accordion .table-responsive { overflow-x: hidden; }
  body:has(#lp-accordion) #lp-accordion table.table { font-size: 14px; width: 100% !important; table-layout: fixed; }
  body:has(#lp-accordion) #lp-accordion table.table th,
  body:has(#lp-accordion) #lp-accordion table.table td { overflow-wrap: anywhere; word-break: normal; }
  body:has(#lp-accordion) #lp-accordion table.table th:nth-child(2),
  body:has(#lp-accordion) #lp-accordion table.table td:nth-child(2) { width: 72px; }
  body:has(#lp-accordion) #lp-accordion table.table th:nth-child(3),
  body:has(#lp-accordion) #lp-accordion table.table td:nth-child(3) { width: 44px; }
}

/* Plantilla visual oficial Aulazapico14: componentes estándar de Chamilo. */
:root {
  --zapico-black: #10181c;
  --zapico-anthracite: #1b1f23;
  --zapico-panel: #202d33;
  --zapico-petrol: #0B3641;
  --zapico-petrol-mid: #0F4C5C;
  --zapico-border: #34474f;
  --zapico-border-light: #4b6169;
  --zapico-gold: #e4bd58;
  --zapico-text: #edf2f4;
  --zapico-muted: #cdd8dc;
}
html, body { background: var(--zapico-black); color: var(--zapico-text); }
#cm-content, .cm-content, #main, #main_content, .page-content {
  background-color: var(--zapico-black);
  color: var(--zapico-text);
}
#main_content, #main.section-mycourses, .page-content {
  border-color: var(--zapico-border);
}
body a { color: var(--zapico-gold); }
body a:hover, body a:focus { color: #fff; }
body p, body li, body dt, body dd, body label, body .control-label,
body .help-block, body .text-muted { color: var(--zapico-muted); }
body h1, body h2, body h3, body h4, body h5, body h6,
body .page-header, body .title-tools { color: var(--zapico-text); border-color: var(--zapico-border); }

/* Paneles, bloques y tarjetas. */
body .panel, body .panel-default, body .well, body .thumbnail,
body .card, body .box, body .sidebar, body .block, body .widget {
  background-color: var(--zapico-anthracite);
  border-color: var(--zapico-border);
  color: var(--zapico-text);
}
body .panel-heading, body .panel-default > .panel-heading,
body .card-header, body .box-header, body .block-title {
  background: var(--zapico-petrol);
  border-color: var(--zapico-border-light);
  color: #fff;
}
body .panel-heading a, body .panel-title, body .panel-title a,
body .card-header a, body .box-header a { color: #fff; }
body .panel-body, body .card-body, body .box-body { background: var(--zapico-anthracite); color: var(--zapico-text); }
body .list-group-item { background: var(--zapico-panel); border-color: var(--zapico-border); color: var(--zapico-text); }
body .list-group-item:hover, body .list-group-item:focus { background: #263940; color: #fff; }

/* Tablas, listados y paginación. */
body .table { color: var(--zapico-text); background: var(--zapico-anthracite); border-color: var(--zapico-border); }
body .table > thead > tr > th,
body .table > tbody > tr:first-child > th {
  background: var(--zapico-petrol);
  border-color: var(--zapico-border-light);
  color: #fff;
}
body .table > tbody > tr:nth-child(odd) > td { background: #1b282e; }
body .table > tbody > tr:nth-child(even) > td { background: var(--zapico-panel); }
body .table > tbody > tr > td, body .table > tfoot > tr > td { border-color: var(--zapico-border); color: var(--zapico-text); }
body .table-hover > tbody > tr:hover > td { background: #263940; color: #fff; }
body .table-striped > tbody > tr:nth-of-type(odd) { background-color: #1b282e; }
body .pagination > li > a, body .pagination > li > span {
  background: var(--zapico-anthracite);
  border-color: var(--zapico-border);
  color: var(--zapico-gold);
}
body .pagination > .active > a, body .pagination > .active > span,
body .pagination > li > a:hover, body .pagination > li > span:hover {
  background: var(--zapico-petrol);
  border-color: var(--zapico-border-light);
  color: #fff;
}

/* Formularios, selectores, menús y acciones. */
body input[type="text"], body input[type="password"], body input[type="email"],
body input[type="number"], body input[type="search"], body input[type="date"],
body textarea, body select, body .form-control,
body .bootstrap-select > .dropdown-toggle {
  background: var(--zapico-black);
  border-color: var(--zapico-border-light);
  color: var(--zapico-text);
}
body input::placeholder, body textarea::placeholder { color: #9daeb4; }
body input:focus, body textarea:focus, body select:focus, body .form-control:focus,
body .bootstrap-select.open > .dropdown-toggle {
  border-color: var(--zapico-gold);
  box-shadow: 0 0 0 2px rgba(228,189,88,.18);
}
body select option { background: var(--zapico-anthracite); color: var(--zapico-text); }
body .dropdown-menu, body .bootstrap-select .dropdown-menu,
body .select2-container--default .select2-results > .select2-results__options {
  background: var(--zapico-anthracite);
  border-color: var(--zapico-border);
}
body .dropdown-menu > li > a, body .bootstrap-select .dropdown-menu li a,
body .select2-results__option { color: var(--zapico-text); }
body .dropdown-menu > li > a:hover, body .dropdown-menu > li > a:focus,
body .bootstrap-select .dropdown-menu li a:hover,
body .select2-results__option--highlighted[aria-selected] {
  background: var(--zapico-petrol) !important;
  color: #fff !important;
}
body .btn-default, body .btn-secondary {
  background: #263940;
  border-color: var(--zapico-border-light);
  color: var(--zapico-text);
}
body .btn-primary, body .btn-info { background: var(--zapico-petrol); border-color: var(--zapico-petrol-mid); color: #fff; }
body .btn-success { background: #2f8c64; border-color: #3ba977; color: #fff; }
body .btn-warning { background: #8b6b26; border-color: var(--zapico-gold); color: #fff; }
body .btn-danger { background: #7d3540; border-color: #a54a57; color: #fff; }
body .btn:hover, body .btn:focus { filter: brightness(.92); color: #fff; }

/* Navegación, migas, alertas y pie. */
body .breadcrumb { background: var(--zapico-anthracite); border: 1px solid var(--zapico-border); color: var(--zapico-muted); }
body .breadcrumb > .active { color: var(--zapico-muted); }
body .nav-tabs { border-color: var(--zapico-border); }
body .nav-tabs > li > a { color: var(--zapico-gold); border-color: transparent; }
body .nav-tabs > li.active > a, body .nav-tabs > li.active > a:hover,
body .nav-tabs > li.active > a:focus { background: var(--zapico-petrol); border-color: var(--zapico-border-light); color: #fff; }
body .alert { border-color: var(--zapico-border-light); color: var(--zapico-text); }
body .alert-info { background: #123e4a; }
body .alert-success { background: #193d2d; }
body .alert-warning { background: #4a3b1d; }
body .alert-danger { background: #4a252b; }
body .modal-content, body .popover { background: var(--zapico-anthracite); border-color: var(--zapico-border-light); color: var(--zapico-text); }
body .modal-header, body .modal-footer { border-color: var(--zapico-border); }
body footer, body #footer { background: var(--zapico-anthracite); border-color: var(--zapico-border); color: var(--zapico-muted); }

/* Calendario y componentes de fecha estándar. */
body .fc, body .fc td, body .fc th, body .fc-view-container,
body .ui-datepicker, body .ui-widget-content {
  background: var(--zapico-anthracite);
  border-color: var(--zapico-border);
  color: var(--zapico-text);
}
body .fc th, body .fc-toolbar, body .ui-datepicker-header,
body .ui-widget-header { background: var(--zapico-petrol); border-color: var(--zapico-border-light); color: #fff; }
body .fc-event { background: var(--zapico-petrol-mid); border-color: var(--zapico-gold); color: #fff; }

/* Las imágenes e iconos gráficos conservan siempre sus colores originales. */
body img, body svg, body video, body canvas { filter: none; }

/* Acabado final: contraste uniforme en portadas y contenidos estándar. */
body #main_content,
body #main_content .page-course,
body #main_content .course-description,
body #main_content .course-home-intro,
body #main_content .jumbotron,
body #main_content .well,
body #main_content .content-section,
body #main_content .section-content,
body .homepage .panel,
body .homepage .well,
body .homepage .jumbotron {
  background-color: var(--zapico-anthracite);
  border-color: var(--zapico-border);
  color: var(--zapico-text);
}
body #main_content p,
body #main_content li,
body #main_content dt,
body #main_content dd,
body #main_content .page-course,
body .homepage p,
body .homepage li,
body .homepage .text-muted {
  color: var(--zapico-muted);
}
body #main_content strong,
body #main_content b,
body .homepage strong,
body .homepage b { color: #fff; }
body #main_content h1,
body #main_content h2,
body #main_content h3,
body #main_content h4,
body .homepage h1,
body .homepage h2,
body .homepage h3,
body .homepage h4 { color: var(--zapico-text); }
body #main_content a,
body .homepage a { color: var(--zapico-gold); }
body #course_tools,
body #course_tools > .row:first-child {
  background-color: var(--zapico-anthracite);
  color: var(--zapico-text);
}
body #course_tools > .row:first-child {
  border: 1px solid var(--zapico-border);
  border-radius: 8px;
  padding: 18px;
}
body #course_tools > .row:first-child p,
body #course_tools > .row:first-child li { color: var(--zapico-muted); }
body #course_tools > .row:first-child h1,
body #course_tools > .row:first-child h2,
body #course_tools > .row:first-child h3 { color: #fff; }
body .homepage .row > [class*="col-"] > .panel,
body .homepage .row > [class*="col-"] > .thumbnail {
  background: var(--zapico-anthracite);
  border-color: var(--zapico-border);
  color: var(--zapico-text);
}
body footer, body #footer, body .footer {
  background: var(--zapico-anthracite) !important;
  border-top: 1px solid var(--zapico-border);
  color: var(--zapico-muted);
}
body footer a, body #footer a, body .footer a { color: var(--zapico-gold); }
/* Introducciones, instrucciones y descripciones de curso. */
body #course_description,
body .course-description,
body .course-description-content,
body .course-description-content .content,
body .course-introduction,
body .course-intro,
body .introduction,
body .instructions,
body .text-content,
body .content-description {
  background: var(--zapico-anthracite) !important;
  border: 1px solid var(--zapico-border);
  border-left: 4px solid var(--zapico-gold);
  border-radius: 8px;
  color: var(--zapico-text) !important;
}
body #course_description p, body #course_description li,
body .course-description p, body .course-description li,
body .course-introduction p, body .course-introduction li,
body .introduction p, body .introduction li,
body .instructions p, body .instructions li,
body .text-content p, body .text-content li,
body .content-description p, body .content-description li { color: var(--zapico-muted) !important; }
body #course_description h1, body #course_description h2, body #course_description h3,
body .course-description h1, body .course-description h2, body .course-description h3,
body .course-introduction h1, body .course-introduction h2, body .course-introduction h3,
body .introduction h1, body .introduction h2, body .introduction h3,
body .instructions h1, body .instructions h2, body .instructions h3 { color: #fff !important; }
body .course-description a, body .course-introduction a,
body .introduction a, body .instructions a, body .text-content a { color: var(--zapico-gold); }
body #main_content .panel-body > div:not(.row) {
  background: var(--zapico-anthracite) !important;
  color: var(--zapico-text) !important;
}
body #main_content .panel-body > div:not(.row) p,
body #main_content .panel-body > div:not(.row) li { color: var(--zapico-muted) !important; }
body #main_content .panel-body div[style*="background"] {
  background: #263940 !important;
  border-color: var(--zapico-border-light) !important;
  color: var(--zapico-text) !important;
}
body #main_content .panel-body div[style*="background"] p,
body #main_content .panel-body div[style*="background"] strong { color: var(--zapico-text) !important; }

/* Portada del curso: bloque de introducción "Empieza aquí" */
body:has(#course_tools) #course_tools > .row:first-child,
body:has(#course_tools) #course_tools > .row:first-child > div,
body:has(#course_tools) #course_tools > .row:first-child div[style*="background"] {
  background: var(--zapico-anthracite) !important;
  color: var(--zapico-text) !important;
  border-color: var(--zapico-border) !important;
}
body:has(#course_tools) #course_tools > .row:first-child div[style*="background"] {
  border-left: 4px solid var(--zapico-gold) !important;
}
body:has(#course_tools) #course_tools > .row:first-child h1,
body:has(#course_tools) #course_tools > .row:first-child h2,
body:has(#course_tools) #course_tools > .row:first-child h3,
body:has(#course_tools) #course_tools > .row:first-child h4 { color: #fff !important; }
body:has(#course_tools) #course_tools > .row:first-child p,
body:has(#course_tools) #course_tools > .row:first-child li { color: var(--zapico-muted) !important; }
body:has(#course_tools) .page-course > div[style*="background"],
body:has(#course_tools) .page-course div[style*="background:#f5f6f7"] {
  background: var(--zapico-anthracite) !important;
  border-left-color: var(--zapico-gold) !important;
  color: var(--zapico-text) !important;
}
body:has(#course_tools) .page-course > div[style*="background"] p,
body:has(#course_tools) .page-course div[style*="background:#f5f6f7"] p,
body:has(#course_tools) .page-course div[style*="background:#f5f6f7"] li {
  color: var(--zapico-muted) !important;
}
body:has(#course_tools) .page-course div[style*="background:#f5f6f7"] p[style*="font-size"] {
  color: #fff !important;
}

/* Catálogo: tarjetas reutilizables, sin alterar sus miniaturas */
body .course-card,
body .course-item,
body .course-box,
body .catalog-course,
body .course-list .panel,
body .courses-list .panel {
  background: var(--zapico-anthracite) !important;
  color: var(--zapico-text) !important;
  border-color: var(--zapico-border) !important;
}
body .course-card .panel-body,
body .course-item .panel-body,
body .course-box .panel-body,
body .catalog-course .panel-body,
body .course-list .panel-body,
body .courses-list .panel-body {
  background: var(--zapico-anthracite) !important;
  color: var(--zapico-text) !important;
}
body .course-card h1, body .course-card h2, body .course-card h3, body .course-card h4,
body .course-item h1, body .course-item h2, body .course-item h3, body .course-item h4,
body .course-box h1, body .course-box h2, body .course-box h3, body .course-box h4,
body .catalog-course h1, body .catalog-course h2, body .catalog-course h3, body .catalog-course h4,
body .course-list .panel h1, body .course-list .panel h2, body .course-list .panel h3, body .course-list .panel h4,
body .courses-list .panel h1, body .courses-list .panel h2, body .courses-list .panel h3, body .courses-list .panel h4 { color: var(--zapico-gold) !important; }
body .course-card p, body .course-card .text-muted,
body .course-item p, body .course-item .text-muted,
body .course-box p, body .course-box .text-muted,
body .catalog-course p, body .catalog-course .text-muted,
body .course-list .panel p, body .course-list .panel .text-muted,
body .courses-list .panel p, body .courses-list .panel .text-muted { color: var(--zapico-muted) !important; }
body .course-card .fa-star, body .course-card .fa-star-o,
body .course-item .fa-star, body .course-item .fa-star-o,
body .course-box .fa-star, body .course-box .fa-star-o,
body .catalog-course .fa-star, body .catalog-course .fa-star-o,
body .course-list .panel .fa-star, body .course-list .panel .fa-star-o,
body .courses-list .panel .fa-star, body .courses-list .panel .fa-star-o { color: var(--zapico-gold) !important; }

/* Catálogo nativo de Chamilo */
body .grid-courses .items.items-courses {
  background: var(--zapico-anthracite) !important;
  color: var(--zapico-text) !important;
  border-color: var(--zapico-border) !important;
}
body .grid-courses .items.items-courses .description,
body .grid-courses .items.items-courses .description * {
  background-color: transparent !important;
  color: var(--zapico-muted) !important;
}
body .grid-courses .items.items-courses h1,
body .grid-courses .items.items-courses h2,
body .grid-courses .items.items-courses h3,
body .grid-courses .items.items-courses h4,
body .grid-courses .items.items-courses h1 a,
body .grid-courses .items.items-courses h2 a,
body .grid-courses .items.items-courses h3 a,
body .grid-courses .items.items-courses h4 a { color: var(--zapico-gold) !important; }
body .grid-courses .items.items-courses .rating,
body .grid-courses .items.items-courses .rating *,
body .grid-courses .items.items-courses .course-rating,
body .grid-courses .items.items-courses .course-rating *,
body .grid-courses .items.items-courses .views,
body .grid-courses .items.items-courses .text-muted { color: var(--zapico-muted) !important; }
body .grid-courses .items.items-courses .rating .fa-star,
body .grid-courses .items.items-courses .rating .fa-star-o,
body .grid-courses .items.items-courses .course-rating .fa-star,
body .grid-courses .items.items-courses .course-rating .fa-star-o { color: var(--zapico-gold) !important; }

/* Registro: mantener el texto legal legible sin afectar al resto del formulario. */
body .terms-conditions,
body .terms-conditions .scroll-wrapper,
body .terms-conditions #legal-terms {
  background: var(--zapico-petrol) !important;
  color: var(--zapico-text) !important;
}
body .terms-conditions {
  border: 1px solid var(--zapico-gold) !important;
  border-radius: 6px;
}
body .terms-conditions #legal-terms,
body .terms-conditions #legal-terms p,
body .terms-conditions #legal-terms li,
body .terms-conditions #legal-terms strong {
  color: var(--zapico-text) !important;
}
body .terms-conditions #legal-terms a {
  color: var(--zapico-gold) !important;
}
@media (max-width: 767px) {
  body:has(#course_tools) #main_content,
  body:has(#course_tools) #course_tools { overflow-x: hidden; }
  body:has(#course_tools) #course_tools img {
    max-width: 100%;
    height: auto;
  }
  body:has(#course_tools) #course_tools > .row:first-child > [class*="col-"] { min-width: 0; }
}

/* Pie institucional: sustitución visual del crédito nativo. */
footer.footer .software-name {
  font-size: 0 !important;
}
footer.footer .software-name::after {
  content: "© 2026 Escuela Zapico de Taekwondo · Aula Virtual. Todos los derechos reservados.";
  color: var(--zapico-muted) !important;
  font-size: 14px !important;
  line-height: 1.5;
}
