:root {
    --textcolor: #212121;
    --fondo: #e7e7e7;
    --iconcolor: #bad1e2;
    --iconover: #fef115;
    --primary: #182434;
}
body {
    color: var(--textcolor);
    line-height: 1rem;
    background-color: var(--fondo);
    font-family: sans-serif;
    font-size: 12px;
}
.form-label-group {
  position: relative;
  display: flex;
  margin-bottom: 1rem;
}

.form-label-group > input,
.form-label-group > label {
  height: 3.125rem;
  padding: .75rem;
}

.form-label-group > .form-control:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.form-label-group > label {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  margin-bottom: 0; /* Override default `<label>` margin */
  line-height: 1.5;
  color: #495057;
  pointer-events: none;
  cursor: text; /* Match the input under the label */
  border: 1px solid transparent;
  border-radius: .25rem;
  transition: all .1s ease-in-out;
}

.form-label-group > .input-group-append {
  display: flex;
  box-sizing: border-box;
}

.form-label-group > .input-group-append > .btn {
    position: relative;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    height: 3.125rem;
    padding: .75rem;
    z-index: 2;
}

.form-label-group input::-webkit-input-placeholder {
  color: transparent;
}

.form-label-group input:-ms-input-placeholder {
  color: transparent;
}

.form-label-group input::-ms-input-placeholder {
  color: transparent;
}

.form-label-group input::-moz-placeholder {
  color: transparent;
}

.form-label-group input::placeholder {
  color: transparent;
}

.form-label-group input:not(:placeholder-shown) {
  padding-top: 1.25rem;
  padding-bottom: .25rem;
}

.form-label-group input:not(:placeholder-shown) ~ label {
  padding-top: .25rem;
  padding-bottom: .25rem;
  font-size: 10px;
  color: #777;
}

/* Fallback for Edge
-------------------------------------------------- */
@supports (-ms-ime-align: auto) {
  .form-label-group > label {
    display: none;
  }
  .form-label-group input::-ms-input-placeholder {
    color: #777;
  }
}

/* Fallback for IE
-------------------------------------------------- */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .form-label-group > label {
    display: none;
  }
  .form-label-group input:-ms-input-placeholder {
    color: #777;
  }
}

#menuopciones {
    float: left;
    min-height: 100vh;
    height: 100vh;
    background-color: var(--primary);
    width: 250px;
    margin-right: 10px;
    color: #bad1e2;
}

#menuopciones > div { 
    
}

#menuopciones .bar { 
    color: var(--iconcolor);
    height: 50px;
    padding: 10px;
    border-bottom: 1px #bad1e2 solid;
}

#menuopciones .opciones { 
    color: var(--iconcolor);
    padding: 10px;
}
#menuopciones .bar > a { 
    text-decoration: none;
    color: var(--iconcolor);
    margin: 1rem;
}

#menuopciones .opciones > a { 
    border: 1px #bad1e2 solid;
    border-radius: 5px;
    float: left !important;
    line-height: 0.75rem;
    margin: 5px;
    width: 45%;
    color: #bad1e2;
    padding: 10px;
    text-align: center !important;
}

#menuopciones .bar > a:hover , #menuopciones .opciones > a:hover, #menuopciones .opciones > a:active { 
    text-decoration: none;
    color: var(--iconover);
}

#menuopciones .opciones > a:hover, #menuopciones .opciones > a:active {
    border: 1px solid var(--iconover);
}
#maincontainer {
    display: contents;
    padding-left: 20px    
}

#contenido {
    height: 90vh;
    overflow-y: auto;
    padding-left: 10px;
    padding-right: 20px;
    padding-bottom: 10px;
    font-size: 0.70rem !important; 
    line-height: 0.75rem !important
}

#maincontainer > nav { 
    height: 50px;
    border-bottom: 1px solid #aaaaaa;
}

#maincontainer > nav > img { 
    position: absolute;
    height: 45px;
}

#maincontainer > nav > ul {
    position: absolute;
    right: 1px;
    margin-right: 5px;
    background: #e7e7e7;
}

.navbar-nav .dropdown-menu {
    position: absolute;
}

.btn-outline-primary {
    color: var(--primary);
    border-color: var(--primary);
}

.btn-outline-primary:hover,  .btn-outline-primary:active, .btn-outline-primary:focus {
    background-color: var(--primary);
    color: var(--iconcolor);
    border-color: var(--primary);
}


#loading-screen {
  background-color: rgba(0,0,0,0.6);
  height: 100%;
  width: 100%;
  position: fixed;
  z-index: 9999;
  margin-top: 0;
  top: 0;
  text-align: center;
  color: #0275d8;
  cursor: wait;
}

#loading-screen img,h2 {
  
  position: relative;
  margin-top: -50px;
  margin-left: -50px;
  top: 50%;  
}


@keyframes loading {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

.loading {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -25px 0 0 -25px;
  height: 50px;
  width: 50px;
  border: 6px solid #D4D8E2;
  border-top-color: #362D2D;
  border-bottom-color: #362D2D;
  border-radius: 100%;
  animation: loading 1.5s infinite linear;
}