/* Set a blue gradient background for the menu */
.ui.menu {
    background: linear-gradient(90deg, #0066cc, #0099ff); /* Softer gradient */
    border-radius: 0;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1); /* Stronger shadow */
    padding: 10px 0;
}

/* Customize the menu header item */
.ui.menu .header.item {
    font-size: 1.75rem; /* Larger, more readable */
    font-weight: bold;
    color: #ffffff;
    padding-left: 25px; /* Increase padding */
}

/* Style the other menu items */
.ui.menu .item {
    color: #ffffff;
    font-size: 1.1rem; /* Increase font size for readability */
    padding: 12px 25px; /* Increase padding */
    letter-spacing: 0.5px; /* Improve letter spacing */
}

/* Add hover effect to menu items */
.ui.menu .item:hover {
    background-color: rgba(255, 255, 255, 0.2); /* Subtle hover effect */
    color: #f4f4f4;
    transition: background-color 0.3s ease; /* Smooth transition */
}

/* Right align the right-side menu items */
.ui.menu .right {
    margin-left: auto;
    display: flex;
    align-items: center;
}

/* Style the logout button */
.ui.menu .item.right form button {
    background: transparent;
    border: none;
    color: #ffffff;
    cursor: pointer;
    font-size: 1.1rem;
}

/* Hover effect for logout button */
.ui.menu .item.right form button:hover {
    text-decoration: underline;
    color: #f4f4f4;
}

/* Set a background color for the body */
body {
    background-color: #f0f4f8;
    font-family: 'Roboto', sans-serif;
    margin: 0;
    padding: 0;
}

/* Customize the appearance of buttons */
button {
    background-color: #007bff;
    color: #ffffff;
    padding: 12px 20px; /* Larger padding */
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 1.1rem; /* Slightly larger */
    transition: background-color 0.3s ease; /* Smooth transitions */
}

button:hover {
    background-color: #005b99;
}

/* Add padding to the body content */
.ui.container {
    padding: 30px; /* More padding for breathing space */
}

/* Footer Styles */
.ui.inverted.vertical.footer.segment {
    padding: 25px 0;
    background-color: #005b99;
    color: #ffffff;
}

.ui.inverted.header {
    color: #ffffff;
}

.ui.inverted.link.list .item {
    color: #ffffff;
    padding: 5px 0; /* Improve link spacing */
}

.ui.inverted.link.list .item:hover {
    color: #0099ff;
    text-decoration: underline;
    transition: color 0.3s ease; /* Smooth hover transition */
}

/* Login Page Improvements */
.login-page {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    background: linear-gradient(135deg, #007bff 40%, #005b99 100%);
}

/* Login box styling */
.login-box {
    background-color: #ffffff;
    padding: 40px;
    border-radius: 12px; /* Slightly more rounded corners */
    box-shadow: 0px 6px 20px rgba(0, 0, 0, 0.15); /* Stronger shadow for depth */
    width: 380px;
    text-align: center;
}

/* Login header */
.ui.header {
    color: #333;
    font-size: 2.25rem; /* Larger for better readability */
    margin-bottom: 25px;
}

/* Styling for the Google login button */
.ui.google.plus.button {
    background-color: #db4437;
    color: #fff;
    width: 100%;
    font-size: 1.25rem;
    padding: 14px;
    border-radius: 5px;
    transition: background-color 0.3s ease;
}

.ui.google.plus.button:hover {
    background-color: #c23321;
}

.ui.google.plus.button .login-link {
    color: #ffffff;
    text-decoration: none;
}

.ui.google.plus.button i.google.icon {
    margin-right: 10px;
}

/* Divider styling */
.ui.divider {
    margin: 30px 0;
    background-color: #eaeaea; /* Lighter color for contrast */
}

/* Centered text for the sign-up link */
.center.aligned {
    text-align: center;
    color: #555;
}

.center.aligned a {
    color: #007bff;
    text-decoration: underline;
}

.center.aligned a:hover {
    color: #005b99;
    text-decoration: none;
    transition: color 0.3s ease;
}

/* Add responsiveness */
@media (max-width: 768px) {
    .ui.menu .item {
        padding: 10px 15px;
        font-size: 1rem;
    }

    .login-box {
        width: 90%; /* Make the login box responsive on smaller screens */
        padding: 20px;
    }
}

.footer-text {
    color: #d3d3d3; /* Light grey for subtle but readable contrast */
}

/* Add some margin to the page header */
.ui.header {
    margin-top: 20px;
    margin-bottom: 20px;
}

/* Add padding to the container */
.ui.container {
    padding-bottom: 30px;
}

/* Adjust segment padding for the sidebar */
.ui.segment {
    padding: 20px;
}

/* Set a background color for the sidebar */
.ui.segment {
    background-color: #f4f4f9; /* Light grey */
    border: none; /* Optional: Remove border for a cleaner look */
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1); /* Optional: Add a light shadow */
}

/* Set the text color of the menu */
.ui.secondary.vertical.menu .item {
    color: #333; /* Dark grey for contrast */
}

/* Active menu item styling */
.ui.secondary.vertical.menu .active.item {
    background-color: #005b99; /* Blue for active item */
    color: #fff; /* White text for active item */
}

/* Hover effect for menu items */
.ui.secondary.vertical.menu .item:hover {
    background-color: #e0e0e0; /* Slightly darker grey on hover */
}

.ui.table td {
    vertical-align: top;
}

.ui.list .item {
    margin-bottom: 5px;
}

.ui.segment {
    margin-bottom: 20px;
}

/* Fix the size of the Select2 search input */
.select2-container--default .select2-search--inline .select2-search__field {
    width: auto !important; /* Make it flexible */
    min-width: 100px;       /* Set a minimum width */
    max-width: 100%;        /* Ensure it doesn't overflow */
    height: 2.71428571em;   /* Match Semantic-UI input height */
    padding: 0.5rem 1rem;   /* Match padding */
    line-height: 1.21428571em;
    font-size: 1em;         /* Match font size */
}

/* Adjust the Select2 dropdown input styling */
.select2-container--default .select2-selection--multiple .select2-selection__rendered {
    padding: 0.5em 1em;
}

.select2-container .select2-selection--multiple .select2-selection__choice {
    margin-right: 0.5em;
    padding: 0.3em 0.5em;
    background-color: #f2f2f2;
    border: none;
    border-radius: 0.28571429rem;
    color: #333;
}

/* Ensure the input box doesn't look squished */
.select2-search__field {
    box-sizing: border-box;
    border: none !important;
    outline: none;
    font-size: 1em;
}