/* Reduce top header bar overall height */
header.header {
    padding: 0.5rem 0 !important;
}

/* Reduce spacing around logo and site titles */
header.header .navbar-brand {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Reduce vertical padding on horizontal menu links */
header.header .mod-menu a {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
}

/* Target the core login component view specifically */
div.com-users-login, 
div.view-login, 
#com-form-login {
    max-width: 450px !important;
    margin: 40px auto !important;
    padding: 25px;
    border: 1px solid #dee2e6;
    border-radius: 0.375rem;
    background-color: #ffffff;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

/* Ensure form input fields look clean inside the small container */
div.com-users-login fieldset {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}


/* Push the brand/logo container to the right side of the header */
header.header {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

/* Ensure the navbar wrapper flexes properly if menus are present */
header.header .navbar {
    order: -1; /* Pushes the menu to the left if you have one */
    margin-right: auto; /* Adds space between menu and logo */
}

/* Align the logo block contents to the right */
header.header .navbar-brand {
    margin-right: 0;
    margin-left: auto;
    text-align: right;
}

