html {
    font-size: 14px;
    min-height: 100%;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

body {
    min-height: 100vh;
    margin: 0;
    background: #eef1f5;
    color: #18202a;
    font-family: "Segoe UI", Tahoma, Arial, sans-serif;
    display: flex;
    flex-direction: column;
}

.app-navbar {
    background: #151a22;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.app-navbar .navbar-brand {
    letter-spacing: 0.08em;
}

.app-shell {
    flex: 1 0 auto;
}

.app-footer {
    flex-shrink: 0;
    padding: 18px 0;
    color: #687386;
    background: #eef1f5;
}

.btn:focus,
.btn:active:focus,
.btn-link.nav-link:focus,
.form-control:focus,
.form-check-input:focus {
    box-shadow: 0 0 0 0.2rem rgba(208, 1, 27, 0.18);
}

.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;
}
