html,
body {
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    overflow-y: auto;
    min-height: 100vh;
}

body>div[class*="fixed"] video {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    object-fit: cover;
    object-position: center center;
}

@font-face {
    font-family: 'ColourSans';
    src: url('/public/assets/css/font/ColourSans.woff2') format('woff2'),
        url('/public/assets/css/font/ColourSans.woff') format('woff'),
        url('/public/assets/css/font/ColourSans.ttf') format('truetype');
}

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
span,
a,
div,
li,
input,
textarea,
button,
select {
    font-family: 'Plus Jakarta Sans', 'Heebo', 'ColourSans', sans-serif;
}

/* Fix for Font Awesome icons being overridden by global font rule */
.fas,
.far,
.fab,
.fa,
.fa-solid,
.fa-regular,
.fa-brands,
[class^="fa-"],
[class*=" fa-"] {
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Solid", "Font Awesome 6 Brands", "FontAwesome" !important;
    font-style: normal !important;
    font-variant: normal !important;
    text-transform: none !important;
    line-height: 1 !important;
    -webkit-font-smoothing: antialiased !important;
}

.text-coral-blue {
    color: #032968 !important;
}

body:has(.login-page)>header,
body:has(.login-page)>footer {
    display: none;
}

body:has(.login-page)>main {
    padding: 0;
    margin: 0;
}

body:has(.login-page)>main>.container {
    padding: 0;
    margin: 0;
    max-width: 100%;
}

.login-page {
    min-height: 100vh;
}

.login-page .brand-logo {
    min-width: 120px;
    min-height: 60px;
    /* Aplicar background-image ou <img> aqui */
}

.login-page .footer-brand-logo {
    min-width: 100px;
    min-height: 40px;
    /* Aplicar background-image ou <img> aqui */
}

/* Categorias de Engajamento */
.engagement-category-gold {
    background: linear-gradient(to right, #FDEB9B, #E9C000);
}

.engagement-category-silver {
    background: linear-gradient(to right, #E3E3E3, #4c4d4d);
}

.engagement-category-bronze {
    background: linear-gradient(to right, #E4A663, #9b5c26);
}

/* Custom Scrollbar for comments */
.custom-scrollbar::-webkit-scrollbar {
    width: 4px;
}

.custom-scrollbar::-webkit-scrollbar-track {
    background: transparent;
}

.custom-scrollbar::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 10px;
}

.custom-scrollbar::-webkit-scrollbar-thumb:hover {
    background: #94a3b8;
}

/* Animations */
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}

.animate-fade-in {
    animation: fadeIn 0.5s ease-out forwards;
}