body {
 background: none repeat scroll 0 0 #FFFFFF;
 color: #444444;
 font-family:Futura,sans-serif;
 font-size:14px;
 padding-bottom: 10px;
 padding-top: 10px; }

a img {border: 0 none;}

#cabecera, #pie {
 left: 0;
 right: 0;
 margin-bottom: 0;
 position: fixed;
 z-index: 1030;
 color: #AAAAAA;
 overflow: visible;
 padding-left: 0;
 padding-right: 0;
 background-color: #2C2C2C;
 height: 24px;
 font-size:14px;
 }

#cabecera { top: 0; }

#pie { bottom: 0;}

#principal, .contenedor {
 margin-left: auto;
 margin-right: auto;
 }

.mensajes {
  position: fixed;
  top: 30px;
  right: 0;
  width: 400px;
  z-index: 1000;
  max-height: 100%;
  overflow: auto;
}

.barras { padding: 6px 0px 6px; }

.barras a {
 text-decoration:none;
 color:#AAAAAA; }

.barras b {
 text-decoration:none;
 color:#FFFFFF; }

.barras a:hover {
 text-decoration:underline;
 color:#FFFFFF; }

.sombra {
 box-shadow: 1px 1px 1px 1px rgba(50,50,50,0.5);}

.redondo {
 border-radius: 5px 5px 5px 5px;
 border: 0px none #000000;}

#modal_bg {
 background-image:url('../img/modal.png'); }

.errorsql {
 font-size:12px;
 border: 1px dotted #000;
 padding:3px;
 background-color:#FBB;
 color:#000;}

a {
 text-decoration:none;
 color:#008;}

a:hover {
 text-decoration:underline;
 color:#00F;}

.error, .aviso, .info {
 color: #000;
 padding: 10px 5px 5px 20px;
 position: relative;
 margin:5px auto;
 min-height: 28px;}

.error ul, .aviso ul, .info ul {
 float: left;
 margin: 0px;}

.error, .rojo {
 background-color: #FCC;
 border: 1px solid #800; }

.aviso, .amarillo {
 background-color: #FFC;
 border: 1px solid #880; }

.info, .azul{
 background-color: #CCF;
 border: 1px solid #008; }

.verde {
 background-color: #CFC;
 border: 1px solid #08C; }

.msgico {
 font-weight:bold;
 font-size:200%; }

.nuevo {
 font-size: 150%;
 margin-bottom:24px; }

.filat, .filast {
 background-color: #333;
 color: #fff;
 font-weight:bold;
 text-align:center;
 padding: 6px !important; }

.filast {
 background-color: #666;}

.filat2 {
 background-color: #333;
 color: #fff;
 font-weight:bold;
 text-align:center;
 font-size:60%;
 padding: 1px 6px !important; }

.filat a {
 color: #fff;}

.filac {
 background-color: #333;
 color: #fff;
 height: 32px;
 width: 64px;
 max-width: 64px;
 font-size: 80%;
 text-align: center; }

.falta {
 border: 2px #FF0000 solid; }

.boton {
 border: 0;
 padding: 0px 2px;
 font-weight:bold;
 font-size:125%;
 cursor:pointer;}

.boton:hover {
 opacity: 0.8;
 text-decoration:none; }

.compnot {
 width: 38px;
 border: 1px #bbb solid;
 font-size: 65%;
 padding: 2px;
 text-align: center;
 float:left}

.compmax {
 width: 20px;
 border: 1px #bbb solid;
 font-size: 65%;
 padding: 2px;
 text-align: center;
 color: #888;
 float:left}

.valnot {
 width: 48px;
 border: 1px #bbb solid;
 font-size: 80%;
 padding: 2px;
 text-align: center;}

.errval {
 background-color: #F88; }

.actval {
 background-color: #FF0; }

input[type="text"].nomplan {
 width: 128px;
 border: 1px #bbb solid;
 font-size: 80%;
 padding: 2px;
 color: #888; }

input[type="text"].calok, input[type="text"].calerr {
 width: 32px;
 font-size: 80%;
 padding: 2px;
 text-align: center;}

input[type="text"].notsec {
 width: 26px;
 font-size: 80%;
 padding: 0px;
 text-align: center;}

input[type="text"].calok  {
 border: 1px #bbb solid; }

input[type="text"].calerr {
 border: 2px #F00 solid;}

input[type="text"].notsec {
 border: 1px #888 inset; }

.ordcol, .descol, .asccol {
 color: #FFFFFF;
 font-weight: bold;
 cursor:pointer;
 padding:6px !important; }

.ordcol {
 background:#333 url('../img/ordcol.gif') right bottom no-repeat; }

.descol {
  background:#666 url('../img/descol.gif') right bottom no-repeat; }

.asccol {
  background:#666 url('../img/asccol.gif') right bottom no-repeat; }

.ordfil, .desfil, .ascfil {
 color: #FFFFFF;
 font-weight: bold;
 cursor:pointer;
 padding: 6px!important; }

.ordfil {
  background:#333 url('../img/ordfil.gif') right center no-repeat; }

.desfil {
  background:#666 url('../img/desfil.gif') right center no-repeat; }

.ascfil {
  background:#666 url('../img/ascfil.gif') right center no-repeat; }

.cursorfil td {
 border-bottom: 1px solid #333 !important;
 border-top: 1px solid #333 !important;}

.cursorcol {
 border-left: 1px solid #333 !important;
 border-right: 1px solid #333 !important;}

.leyenda {
 margin:10px;
 padding:5px 10px; }

.instrumento, .bloque { margin-top:10px; }

.lista_instrumentos { min-height: 10px; padding-bottom:10px;}

.ins_cabecera, .bloque_cabecera {
 background-color: #333;
 color: #fff;
 padding: 4px 4px 0 0; }

.ins_titulo {
 width: 830px;
 float: left;
 font-weight:bold; }

.bloque_titulo {
 width: 880px;
 float: left;
 font-weight:bold; }

.ins_titulo span, .bloque_titulo span {
line-height: 24px; padding-left: 10px; }

.items, .estandares {
 min-height:10px; }

.item, .estandar {
 border-bottom: 1px dashed #aaa; }

.item:hover, .estandar:hover {
 border: 1px dashed #333;}

.ins_titulo, .ite_codigo, .ite_titulo {
 cursor:move;}

.ite_negro, .ite_gris, .ite_actval, .ite_o_negro, .ite_o_gris,
.estandar_negro, .estandar_gris, .estandar_actval {
 font-size: 80%;
 float:left;
 width:38px;
 cursor:pointer;
 text-align:center;
 background-color: #eee;
 margin-right: 2px;
 padding: 4px 2px; }

.ite_negro, .ite_o_negro, .estandar_negro {
  color: #000; }

.ite_gris, .ite_o_gris, .estandar_gris {
  color: #ccc; }

.ite_actval, .estandar_actval {
  background-color: #FF0; }

.ite_o_negro, .ite_o_gris {
 background-color: #fef; }

.sortable-ghost {
 opacity: .4;
 border: 1px dotted #000; }

.mov_alumno { cursor:move;}

.grid {
 font-size:80%; border: 1px;}

.grid tr:nth-child(even) {
  background-color: #e0e0e0; }

.grid tr:nth-child(odd)  {
 background-color: #f0f0f0; }

.grid tr:hover {
 background-color: #ffe;}

.grid td {
 padding: 1px}

.cabalum, .cabsecc {
 background-color: #333; color: #fff; font-weight:bold; text-align:center; padding: 1px !important;}

.cabcodi, .cabbasi {
 font-size: 85%; font-weight:normal; color: #fff; text-align:center; padding: 1px !important;}

.cabcodi { background-color: #555; }
.cabbasi { background-color: #777; }

input[type="text"].gridok, input[type="text"].griderr, input[type="text"].gridesp {
 width: 32px;
 font-size: 80%;
 padding: 2px;
 text-align: center;
 font-weight: bold}

input[type="text"].gridok  {
  border: 1px #bbb solid; }

input[type="text"].griderr {
 border: 1px #F00 solid; background-color: #FAA;}

input[type="text"].gridesp {
 border: 1px #FF0 solid; }

.c_nc {color:#C00;}
.c_ba {color:#CC0;}
.c_me {color:#0C0;}
.c_al {color:#00C;}

.actfil { background-color: #aaa !important;}
.secbor { border-left: 1px #777 solid;}

.gridalum td {
 max-width: 0;
  overflow: hidden;
 text-overflow: ellipsis;
 white-space: nowrap; }

.gridalto  {height:18px; }
.gridaltof {height:36px; }

.menuperfil {
    position: relative;
    display: inline-block;
    }

.menuperfilbot {
	text-decoration: none;
	font-weight:bold;
	}

.menutitulo {
	margin-top: 10px;
	font-size: 120%;
	border-bottom: 1px #888 solid;
    }

.menuicono {
	text-align: center;
    float: left;
    padding: 5px 4px;
    margin: 5px 4px;
    width: 100px;
    height: 100px;
    }

.menuperfilcon a:hover {background-color: #666; color:#fff;}
.menuperfil:hover .menuperfilcon { display: block;}

input[type="submit"].botlink {cursor: pointer; border:0; color:#008;}

.alt26 {height: 26px;}
.clave {font-family:Courier New; font-size: 120%; font-weight:bold;}
.menuact {font-weight:bold; color:#fff !important;}

.infoi {color: #00f; cursor:default }
.infon {color: #FF0; cursor:default }
.infoc {color: #f00; cursor:default }
.infob {color: #F00;}

.codest {cursor: pointer;}
.codest:hover {font-weight:bold;}
.desest {font-size:80%;}

.cerrar {float:right; cursor:pointer; padding: 1px 2px; font-size:120%; color: #f00;}
.cerrar:hover {background-color: #f00; color:#fff;}

.pcniveltit {font-size:140%; font-weight:bold; color:#fff; background-color:#333; padding:4px;}
.pcnivel {padding-left:32px; margin-bottom:10px;}
.pccursotit {font-size:120%; font-weight:bold; color:#fff; background-color:#666; padding:2px;}
.pccurso {padding-left:32px;}
.pcmateria {}
.pccurso .pcmateria:nth-child(even) { background-color: #e0e0e0; }
.pccurso .pcmateria:nth-child(odd)  { background-color: #f0f0f0; }

.loader {
  border-radius: 50%;
  border: .15em solid #e0e0e0; border-left: .15em solid #333; border-right: .15em solid #333;
  width: 0.6em; height: 0.6em;
  display:inline-block;
  -webkit-animation: spin 1s linear infinite;
  animation: spin 1s linear infinite;
  }
@-webkit-keyframes spin {0% { -webkit-transform: rotate(0deg); } 100% { -webkit-transform: rotate(360deg); } }
@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }

.blink { animation: blinker 1s step-start infinite;}
@keyframes blinker {  50% { opacity: 0; } }

.minicod {font-weight: bold; color:#fff; background-color:#333; font-size:80%;}
.blo_con {font-size:80%; background-color:#e0e0e0;}
.blo_cri {font-size:80%; background-color:#e8e8e8;}
.blo_est {font-size:80%; background-color:#f0f0f0;}
.blo_cne {text-align:center; font-size:70%; background-color:#f0f0f0; color:#000; font-weight: bold;}
.blo_cgr {text-align:center; font-size:70%; background-color:#f0f0f0; color:#ccc}
.blo_cac {text-align:center; font-size:70%; background-color:#FF0;}

.botinst {width:48px; text-align:center;display:inline-block;}

.ong {color:#006000;}
.ons {color:#CC0000;}
.onf {color:#0000BB;}
.off {color:#aaaaaa;}

.foto {width:32px; transition:transform .2s; }
.foto:hover {transform:scale(3); border: 0.5px #333 solid; z-index: 1000; cursor:none;}

.foto2 {width:32px; transition:width .2s, border .2s; margin-right:4px; cursor:none;}
.foto2:hover {width:96px; border: 1px #333 solid;}


input[type="file"].fileb { display: none; }
.botonf {
    -webkit-appearance:button;
    -moz-appearance:button;
    appearance:button;
    text-decoration:none;
    color:#444444;
    padding:1px 7px;
    cursor: pointer;
}


.fa {
 margin:2px;
 padding:0px;
 width:66px;
 height:110px;
 float:left;}

.fa_hueco {
 border: 1px #888 solid;
 width:64px;
 height:64px; }

.fa_nombre {
 font-size:10px;
 text-align: center;}

.fa_chico {
 background: #BBF url('../fotos/chico.jpg') no-repeat 0px 0px;
 background-size: 100%;}

.fa_chica {
 background: #FBB url('../fotos/chica.jpg') no-repeat 0px 0px;
 background-size: 100%;}

.fa_foto {
 max-width: 64px;
 max-height: 64px;}

#ver_fotos {
  min-height: 80px;
  background-color: #DDD;
  text-align: center;}

#ver_fotos img {
 margin:5px;
 padding:0px; }

#fotodrag {
 display: none;
 font-weight: bold;
 text-align: center;
 padding: 1em 0;
 margin: 1em 0;
 color: #555;
 border: 2px dashed #555;
 border-radius: 7px;
 cursor: default; }

#fotodrag.hover {
 color: #88f;
 border-color: #88f;
 border-style: solid;
 box-shadow: inset 0 3px 4px #888; }

#fotoprogreso p {
 display: block;
 width: 90%;
 padding: 2px 5px;
 margin: 2px 0;
 border: 1px inset #888;
 border-radius: 5px;
 background: #eee url("../img/modal.png") 100% 0 repeat-y; }

#fotoprogreso p.bien {
 background: #8f8 none 0 0 no-repeat; }

#fotoprogreso p.fallo {
 background: #f88 none 0 0 no-repeat;}

/* Desempeño */

.color0_0, .color1_0, .color2_0, .color3_0 { color:#808080}
.color0_1, .color1_1, .color2_1, .color3_1 { color:#FF0000}

.color0_2 { color:#AAFF00}
.color0_3 { color:#00FFAA}

.color1_2 { color:#FFCC00}
.color1_3 { color:#66FF00}
.color1_4 { color:#00FF66}
.color1_5 { color:#00CCFF}

.color2_2 { color:#FF9100}
.color2_3 { color:#E1FF00}
.color2_4 { color:#48FF00}
.color2_5 { color:#00FF48}
.color2_6 { color:#00FFD9}
.color2_7 { color:#0091FF}

.color3_2 { color:#FF7300}
.color3_3 { color:#FFE100}
.color3_4 { color:#AAFF00}
.color3_5 { color:#37FF00}
.color3_6 { color:#00FF37}
.color3_7 { color:#00FFAA}
.color3_8 { color:#00E1FF}
.color3_9 { color:#0073FF}

.color0_4, .color1_6, .color2_8, .color3_10 { color:#0000FF}

.mov_item { cursor:move;}
.ign_item { color:#aaaaaa;}

.leyendades {
 font-size:60%;
 line-height:150%;
 width:80px; }

.resultados td {
 font-size: 80%;
 padding: 2px 5px;}

input[type=range]:focus { outline: none; }

.rango { width: 64px;}

.estrellas {
 width: 78px;
 margin: 0;
 padding: 0; }

.falta { border: 2px #FF0000 solid;}

.barras { padding: 6px 0px 6px; }

.barras a {
 text-decoration:none;
 color:#AAAAAA; }

.barras b {
 text-decoration:none;
 color:#FFFFFF; }

.barras a:hover {
 text-decoration:underline;
 color:#FFFFFF; }

.noselect {
 user-select: none;
 -moz-user-select: none;
 -ms-user-select: none;
 -khtml-user-select: none;
 -webkit-user-select: none;
 -webkit-touch-callout: none; }

.cur_ayuda {cursor:help;}
.cur_pulsa {cursor:pointer;}

.cabud, .cabud2 {height:20px !important;}
.cabud2 { background-color: #666; color:#fff;}
.botonico {padding-left:0px; padding-right:0px;}

.alnivx {color: #666}

.res_festivo  {background-color:#faa;}
.res_personal {background-color:#afa; margin-bottom:3px; border:1px #0f0 solid; text-align:center;}
.res_fija     {background-color:#aaf; margin-bottom:3px; border:1px #00f solid; text-align:center;}

.colinf0_on  {background-color:#0F0; width: 30px;}
.colinf0_off {background-color:#AFA; width: 30px;}
.colinf1_on  {background-color:#FF0; width: 30px;}
.colinf1_off {background-color:#FFA; width: 30px;}
.colinf2_on  {background-color:#E00; width: 30px;}
.colinf2_off {background-color:#FAA; width: 30px;}

.nivel1 {margin-left:18px; list-style: outside; list-style-type: disc;}
.nivel2 {margin-left:36px; list-style: outside; list-style-type: circle;}
.nivel3 {margin-left:54px; list-style: outside; list-style-type: square;}
.blkdes {float:left; margin:1px; width:64px; height:55px; text-align:center;}

.punto {
 border-radius: 5px;
 background-color: #666;
 color: #fff;
 display:inline-block;
 padding-left:4px;
 padding-right:4px;
 text-align:center;}

.login {
 text-align: right;
 font-weight: bold;
 padding: 1px 5px;
 width: 120px; }

.autoscroll {
  overflow: auto;
  max-height: 355px;
  display: flex;
  flex-direction: column-reverse;
}