html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
  text-align: start;
}

.actividad-tipo { min-height: 130px; display: flex; flex-direction: column; justify-content: center; gap: .5rem; font-size: 1.1rem; }
.actividad-tipo span { font-size: 2.2rem; line-height: 1; }
.actividad-en-curso { max-width: 620px; margin: 0 auto; }
.actividad-resumen { max-width: 580px; }
.manometro { max-width: 300px; margin: 1rem auto; position: relative; }
.manometro svg { width: 100%; overflow: visible; }
.manometro-base, .manometro-progreso { fill: none; stroke-width: 16; stroke-linecap: round; }
.manometro-base { stroke: #e9ecef; }
.manometro-progreso { stroke: #198754; stroke-dasharray: 0 100; transition: stroke .3s, stroke-dasharray .3s; }
.manometro-aguja { stroke: #198754; stroke-width: 4; stroke-linecap: round; transform-origin: 100px 100px; transition: transform .3s, stroke .3s; }
.manometro-centro { fill: #343a40; }
.manometro-tiempo { position: absolute; left: 0; right: 0; bottom: 6%; font-size: 2rem; }
.manometro-doble { width: 230px; height: 220px; margin: .25rem auto; position: relative; }
.manometro-doble svg { width: 100%; height: 100%; }
.arco-base, .arco-progreso { fill: none; stroke-width: 15; stroke-linecap: round; }
.arco-base { stroke: #e9ecef; }
.arco-progreso { stroke: #198754; stroke-dasharray: 0 100; transition: stroke .3s, stroke-dasharray .3s; }
.etiqueta-superior, .etiqueta-inferior { position: absolute; left: 0; right: 0; font-size: .82rem; }
.etiqueta-superior { top: 44px; }.etiqueta-inferior { bottom: 40px; }
.etiqueta-superior strong, .etiqueta-inferior strong { font-size: 1.2rem; }
.grafico-barras { min-height: 230px; display: flex; align-items: end; gap: 4px; overflow-x: auto; border-bottom: 1px solid #adb5bd; padding: 1.25rem .25rem 0; }
.barra-dia { min-width: 30px; height: 210px; display: flex; flex-direction: column; justify-content: end; align-items: center; gap: 3px; font-size: .72rem; }
.barra { width: 22px; min-height: 2px; background: #0d6efd; border-radius: 4px 4px 0 0; transition: height .2s; }
.barra-valor { font-weight: 600; }
.lista-clientes-actividad { max-height: 285px; overflow-y: auto; }
