/* Header Sticky Container */
.top-header {
    position: sticky;
    top: 0;
    background-color: #ffffff;
    z-index: 1050;
    min-height: 70px;
}

.top-header .navbar {
    min-height: 70px;
    padding-top: 8px;
    padding-bottom: 8px;
    display: flex;
    align-items: center;
}

/* Brand Logo Layout & Sizing */
.logo-wrapper {
    display: flex;
    align-items: center;
    max-width: 260px; /* Constrains logo block width */
}

.logo-wrapper a {
    display: inline-block;
    line-height: 0;
}

#statisfaction-logo {
    height: 48px !important;    /* Forces height constraint */
    max-height: 48px !important; 
    width: auto !important;     /* Maintains correct ratio */
    max-width: 100% !important; /* Prevents edge overflow */
    object-fit: contain;
    display: block;
}

/* User Profile Options */
.profile-avatar {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    object-fit: cover;
}

.user-email {
    font-size: 0.9rem;
    color: #4b5563;
    max-width: 180px;
}

/* Footer Fixes */
footer.bg-light {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 1030;
    background-color: #f8f9fa !important;
    border-top: 1px solid #dee2e6;
}

body {
    padding-bottom: 80px;
}

/* Mobile Tweaks (< 768px) */
@media (max-width: 768px) {
    .top-header,
    .top-header .navbar {
        min-height: 60px;
    }

    .logo-wrapper {
        max-width: 200px;
    }

    #statisfaction-logo {
        height: 38px !important;
        max-height: 38px !important;
    }

    footer.bg-light {
        position: static;
    }

    body {
        padding-bottom: 0;
    }
}