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;
}
.floating-input {
    background-color: transparent;
    border: 1px solid #cbd5e1; /* border-slate-300 */
    border-radius: 0.5rem;
    appearance: none;
    -webkit-appearance: none;
}

.dark .floating-input {
    border-color: #475569; /* dark:border-slate-600 */
}

.floating-input:focus {
    outline: none;
    border-color: #2563eb; /* focus:border-blue-600 */
    box-shadow: 0 0 0 1px #2563eb;
}

.floating-label {
    position: absolute;
    color: #64748b; /* text-slate-500 */
    transition: all 300ms;
    transform-origin: 0;
    z-index: 10;
    top: 0.5rem;
    left: 0.25rem;
    background-color: white;
    padding: 0 0.25rem;
    transform: translateY(-1rem) scale(0.75);
}

.dark .floating-label {
    background-color: #1e293b; /* dark:bg-slate-800 */
    color: #94a3b8; /* dark:text-slate-400 */
}

.floating-input:placeholder-shown ~ .floating-label {
    transform: translateY(-50%) scale(1);
    top: 50%;
}

.floating-input:focus ~ .floating-label {
    transform: translateY(-1rem) scale(0.75);
    top: 0.5rem;
    color: #2563eb; /* peer-focus:text-blue-600 */
}

.dark .floating-input:focus ~ .floating-label {
    color: #3b82f6; /* dark:peer-focus:text-blue-500 */
}