/* =========================================================
   FILE: style_global.css
   VERSION: v2.0.0
   UPDATED: 2026-02-05 America/Mexico_City
   AUTHOR: Steve
   CHANGE: Normalización global: orden, fixes, dedupe, mobile tighten
   ========================================================= */

@charset "utf-8";

*{scroll-behavior:smooth}

.hidden{display:none}
.pointer{cursor:pointer}

.hover{
  opacity:.8;
  transition:all .3s ease-in-out;
}
.hover:hover{opacity:1}

.opacity-dark-20{background-color:rgba(0,0,0,.2)}
.opacity-dark-30{background-color:rgba(0,0,0,.15)}
.opacity-dark-40{background-color:rgba(0,0,0,.35)}
.opacity-dark-60{background-color:rgba(0,0,0,.55)}
.opacity-dark-80{background-color:rgba(0,0,0,.75)}
.opacity-light-20{background-color:rgba(255,255,255,.2)}
.opacity-light-40{background-color:rgba(255,255,255,.4)}
.opacity-light-60{background-color:rgba(255,255,255,.6)}
.opacity-light-80{background-color:rgba(255,255,255,.8)}

#loading{
  display:none;
  position:fixed;
  inset:0;
  background:#000 url(../img/load.gif) center center no-repeat;
  opacity:.9;
  z-index:4000;
}

@-webkit-keyframes loading{
  0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}
  100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}
}
@keyframes loading{
  0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}
  100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}
}

footer{
  margin-top:2rem;
  padding:3rem 0;
}
footer p{
  font-size:12px;
  font-weight:600;
}
footer .min p{
  font-size:11px;
  font-weight:600;
  color:#adadb2;
}
footer #logo{
  width:80px;
  margin:2rem;
}
footer #logo_min{
  width:40px;
  margin:.5rem;
  filter:grayscale(100%);
}
footer ul{padding:15px}
footer ul a:link,
footer ul a:visited,
footer ul a:active{
  color:#002269;
  font-size:12px;
}

.section-container{
  padding-top:13vh !important;
  padding-bottom:13vh !important;
  min-height:40vh !important;
}
.section-container img{max-height:40vh !important}

.font-shadow-white{
  text-shadow:1px 1px 1px rgba(255,255,255,.6) !important;
}
.font-shadow-black{
  text-shadow:1px 1px 1px rgba(0,0,0,.6);
}

.loadHelp{
  font-family:Arial,Helvetica,sans-serif;
  font-size:12px;
  font-weight:400;
  line-height:14px;
  color:rgba(0,0,0,.6);
  border:1px solid #ccc;
  background-color:#f9f9f9;
  float:left;
  clear:both;
  display:none;
  width:260px;
  z-index:1000;
  border-radius:3px;
  outline:none;
  position:absolute;
  margin:10px;
  padding:10px;
  box-shadow:1px 1px 3px #666;
}
.loadHelpIcon{
  color:rgba(255,0,0,.2);
  cursor:pointer;
  font-size:14px;
}
.loadHelpIcon:hover{color:rgba(0,0,0,.6)}

.sticky{
  position:sticky;
  top:3%;
  right:auto;
}
.sticky_content{
  position:sticky;
  top:10vh;
  right:auto;
}
.sticky + .container{padding-top:200px}

.rounded-lg{border-radius:15%}

.hover-light:hover{background-color:rgba(0,0,0,.02) !important}
.hover-dark:hover{background-color:rgba(255,255,255,.02) !important}

.block_box,
.block-box{
  padding:2rem;
  margin-bottom:2rem;
  background:#fff;
  border-radius:6px;
  border:1px solid #e5e7f2;
}
.block-box-min{
  padding:.8rem 1rem;
  margin-bottom:1rem;
  background:#fff;
  border-radius:6px;
  border:1px solid #e5e7f2;
}

.guide{border:3px dashed red}
.guide-green{border:3px dashed green}
.guide-blue{border:3px dashed blue}

.text-shadow-white{text-shadow:.5px .5px .5px rgba(255,255,255,.4)}
.text-bright-white{text-shadow:0 0 3px rgba(255,255,255,.4)}
.text-border-white{
  text-shadow:
    .5px 0 0 rgba(255,255,255,.4),-.5px 0 0 rgba(255,255,255,.4),
    0 .5px 0 rgba(255,255,255,.4),0 -.5px 0 rgba(255,255,255,.4),
    .5px .5px 0 rgba(255,255,255,.4),-.5px -.5px 0 rgba(255,255,255,.4),
    .5px .5px 0 rgba(255,255,255,.4),-.5px .5px 0 rgba(255,255,255,.4);
}

.text-shadow-dark{text-shadow:.5px .5px .5px rgba(0,0,0,.4)}
.text-bright-dark{text-shadow:0 0 3px rgba(0,0,0,.4)}
.text-border-dark{
  text-shadow:
    .5px 0 0 rgba(0,0,0,.4),-.5px 0 0 rgba(0,0,0,.4),
    0 .5px 0 rgba(0,0,0,.4),0 -.5px 0 rgba(0,0,0,.4),
    .5px .5px 0 rgba(0,0,0,.4),-.5px -.5px 0 rgba(0,0,0,.4),
    .5px .5px 0 rgba(0,0,0,.4),-.5px .5px 0 rgba(0,0,0,.4);
}

.pagination{gap:.25rem}

.page-link{
  border-radius:.45rem;
  font-weight:600;
  color:var(--bs-secondary);
  background:transparent;
  border:1px solid rgba(0,0,0,.08);
}
.page-link:hover{
  color:var(--bs-dark);
  background:rgba(0,0,0,.04);
  border-color:rgba(0,0,0,.12);
}
.page-item.active .page-link{
  color:#fff;
  background:var(--bs-secondary);
  border-color:var(--bs-secondary);
}
.page-item.disabled .page-link{
  color:rgba(0,0,0,.35);
  background:transparent;
  border-color:rgba(0,0,0,.08);
}

.color-matematicas{border-left:3px solid #98CE00}
.color-matematicas:hover{border-left:12px solid #98CE00}
.color-hcl{border-left:3px solid #4080A0 !important}
.color-hcl:hover{border-left:12px solid #4080A0 !important}
.color-sociales{border-left:3px solid #ffc300 !important}
.color-sociales:hover{border-left:12px solid #ffc300 !important}
.color-experimentales{border-left:3px solid #7765E3 !important}
.color-experimentales:hover{border-left:12px solid #7765E3 !important}

/* Mobile tighten (global, seguro) */
@media (max-width:576px){
  footer{padding:2rem 0}
  footer #logo{margin:1rem}
  .section-container{
    padding-top:9vh !important;
    padding-bottom:9vh !important;
  }
  .block_box,
  .block-box{padding:1.25rem;margin-bottom:1.25rem}
  .block-box-min{padding:.75rem .9rem}
}
/* =========================================================
   Shared Font Reduce 10%
   ========================================================= */
footer p{
  font-size:10.8px;
}

footer .min p{
  font-size:9.9px;
}

footer ul a:link,
footer ul a:visited,
footer ul a:active{
  font-size:10.8px;
}

.loadHelp{
  font-size:10.8px;
  line-height:12.6px;
}

.loadHelpIcon{
  font-size:12.6px;
}
