
body {
    height: 100%;
    min-height: 100vh;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.error-state {
    box-shadow: 0 0 8px 2px rgba(255, 0, 0, 0.7);
}

.shake-anim {
    animation: shake 0.5s;
}
@keyframes shake {
    0% { transform: translateX(0); }
    20% { transform: translateX(-8px); }
    40% { transform: translateX(8px); }
    60% { transform: translateX(-8px); }
    80% { transform: translateX(8px); }
    100% { transform: translateX(0); }
}


.sticky-nav {
    transition: all 0.5s ease;
}

.sticky-nav.scrolled {
    background-color: #0a427a !important;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.sticky-nav.scrolled .nav-link {
    color: white !important;
}

.sticky-nav.scrolled .nav-link:hover {
    color: rgb(231, 231, 231) !important;
}

.sticky-nav .navbar-brand img {
    filter: brightness(1) invert(0);
    transition: 0.5s filter linear;
}
.sticky-nav.scrolled .navbar-brand img {
    filter: brightness(0) invert(1);
    width: 80%;
}

.sticky-nav .btn {
    white-space: nowrap;
}

.highlighted-row {
    background-color: #ffe5e5 !important;
}