        /* ---------------------------------- */
        /* CSS VARIABLES */
        /* ---------------------------------- */
        :root {
            --dark-background: #121212; /* Very dark background for body */
            --dark-surface: #1e1e1e; /* Slightly lighter surface for header/cards */
            --accent-green: #38fe00; /* The required vibrant green accent */
            --text-color: #f0f0f0; /* Light text for body */
            --subtle-text: #a0a0a0; /* Subtle text/icons */
            --border-color: #333333; /* Dark border lines */
            --transition-speed: 0.2s;
        }

        /* ---------------------------------- */
        /* GLOBAL WEBSITE STYLES (New) */
        /* ---------------------------------- */
        body {
            background-color: var(--dark-background); /* Apply dark background to the page */
            color: var(--text-color); /* Set global light text color */
            font-family: Arial, sans-serif;
            margin: 0;
            padding: 0;
            min-height: 100vh;
            
            
             overflow-x: hidden; /* Prevents horizontal scrolling from any accidental overflow */
    word-wrap: break-word; /* Old property, widely supported */
    overflow-wrap: break-word; /* Newer, preferred property for long words/strings */
        }
        
        img, video, embed, object, iframe { /* Added video, embed, object, iframe for completeness */
    max-width: 100%;
    height: auto;
    display: block; /* Helps remove extra space below images */
}
        
        
        /* Container for general content */
.container {
    max-width: 1200px;
    margin: 30px auto; /* More generous margin */
    padding: 25px;
    box-sizing: border-box; /* Include padding in width */
}

        

        /* ---------------------------------- */
        /* ACTION MESSAGES BANNER */
        /* ---------------------------------- */
        .action-banner {
        }
        .action-banner > * {
            margin: 0;
            padding: 0;
        }

        /* ---------------------------------- */
        /* HEADER STYLES */
        /* ---------------------------------- */
        .modern-header {
            background-color: var(--dark-surface);
            border-bottom: 1px solid var(--border-color);
            padding: 10px 20px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            color: var(--text-color);
            position: sticky; /* Sticky header for modern feel */
            top: 0;
            z-index: 1000;
        }

        .header-left {
            display: flex;
            align-items: center;
        }

        .header-logo-container {
            height: 40px; 
            width: auto;
            margin-right: 20px;
            display: flex;
            align-items: center;
        }

        /* Logo Link and Image */
        .header-logo-link { /* New element to make logo clickable */
            display: block;
            height: 100%;
            width: auto;
        }
        
        .header-logo {
            width: 100%;
            height: 100%;
            max-width: 150px; 
            object-fit: contain; 
            display: block; /* Ensures no extra space below the image */
        }
        
        .header-center {
            flex-grow: 1; 
            display: flex;
            justify-content: center;
            align-items: center;
            padding: 0 20px;
        }

        /* URL Textbox Styling */
        .url-form-container {
            max-width: 500px;
            width: 100%;
        }

        .url-form {
            display: flex;
            width: 100%;
        }

        .url-form input[type="text"] {
            padding: 8px 15px;
            border: 1px solid var(--border-color);
            border-radius: 6px 0 0 6px;
            background-color: var(--dark-background);
            color: var(--text-color);
            width: 100%;
            outline: none;
            transition: border-color var(--transition-speed);
        }

        .url-form input[type="text"]:focus {
            border-color: var(--accent-green);
        }

        .url-form button {
            background-color: var(--accent-green);
            color: var(--dark-background);
            border: none;
            padding: 0 15px;
            cursor: pointer;
            border-radius: 0 6px 6px 0;
            font-weight: bold;
            transition: background-color var(--transition-speed);
        }

        .url-form button:hover {
            background-color: #6eff33; /* Slightly brighter green on hover */
        }

        .header-right {
            display: flex;
            align-items: center;
            gap: 15px;
        }

        /* Icon Buttons */
        .header-icon-btn {
            background: none;
            border: none;
            color: var(--subtle-text);
            font-size: 1.25rem;
            cursor: pointer;
            padding: 8px;
            border-radius: 50%;
            transition: color var(--transition-speed), background-color var(--transition-speed);
        }

        .header-icon-btn:hover {
            color: var(--text-color);
            background-color: var(--border-color);
        }

        /* Profile Card and Dropdown */
        .profile-card-container {
            position: relative;
        }

        .profile-card {
            display: flex;
            align-items: center;
            gap: 10px;
            padding: 5px 10px;
            cursor: pointer;
            border-radius: 8px;
            transition: background-color var(--transition-speed);
            user-select: none;
        }

        .profile-card:hover {
            background-color: var(--border-color);
        }

        .profile-pfp {
            width: 36px;
            height: 36px;
            border-radius: 50%;
            object-fit: cover;
            border: 2px solid var(--accent-green);
        }

        .profile-username {
            font-weight: 600;
            font-size: 1rem;
        }

        /* Dropdown Menu */
        .header-style-dropdown {
            position: absolute;
            top: 100%;
            right: 0;
            min-width: 200px;
            background-color: var(--dark-surface);
            border: 1px solid var(--border-color);
            border-radius: 8px;
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
            margin-top: 10px;
            padding: 10px 0;
            z-index: 1010;
            opacity: 0;
            visibility: hidden;
            transform: translateY(-10px);
            transition: opacity var(--transition-speed), transform var(--transition-speed), visibility var(--transition-speed);
        }

        .profile-card-container.active .header-style-dropdown {
            opacity: 1;
            visibility: visible;
            transform: translateY(0);
        }

        .header-style-dropdown a {
            display: block;
            padding: 10px 15px;
            text-decoration: none;
            color: var(--text-color);
            font-size: 0.9rem;
            transition: background-color var(--transition-speed);
        }

        .header-style-dropdown a:hover {
            background-color: var(--dark-background);
            color: var(--accent-green);
        }

        .header-style-dropdown-divider {
            height: 1px;
            background-color: var(--border-color);
            margin: 5px 0;
        }

        /* ---------------------------------- */
        /* RESPONSIVENESS (Mobile) */
        /* ---------------------------------- */
        @media (max-width: 768px) {
            .modern-header {
                padding: 10px 15px;
            }

            .header-logo-container {
                height: 30px;
                margin-right: 10px;
            }

            .header-center {
                display: none;
            }

            .header-right {
                gap: 8px;
            }

            .header-icon-btn {
                font-size: 1.1rem;
                padding: 5px;
            }

            .profile-card {
                padding: 5px;
            }

            .profile-username {
                display: none;
            }

            .profile-pfp {
                width: 32px;
                height: 32px;
            }
        }
        
        
        /* ---------------------------------- */
        /* NOTIFICATIONS */
        /* ---------------------------------- */
        
        /* Notifications Specific Styles */
.notifications-container {
    max-width: 800px;
    margin: 40px auto;
    padding: 30px;
    /* background-color: #2E2E4A; */
    border-radius: 12px;
    /* box-shadow: 0 8px 30px rgba(0, 0, 0, 0.5); /*
    border: 1px solid rgba(76, 175, 80, 0.2);
}

.notification-item {
    background-color: #35355A;
    border-radius: 8px;
    padding: 20px 25px;
    margin-bottom: 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
    border-left: 5px solid #4CAF50; /* Accent line */
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.notification-item:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.4);
}

.notification-item-content {
    flex-grow: 1;
}

.notification-item h3 {
    color: #8BC34A;
    margin-top: 0;
    margin-bottom: 8px;
    font-size: 1.3rem;
    font-weight: 600;
}

.notification-item p {
    color: #D0D0D0;
    margin: 0;
    font-size: 1rem;
    line-height: 1.6;
}

.notification-actions a {
    background-color: #388E3C;
    color: #FFFFFF;
    padding: 8px 15px;
    border-radius: 5px;
    font-size: 0.9rem;
    text-transform: uppercase;
    font-weight: 600;
    transition: background-color 0.3s ease;
}

.notification-actions a:hover {
    background-color: #4CAF50;
    transform: none; /* Override general link transform */
}

.no-notifications {
    text-align: center;
    padding: 30px;
    font-size: 1.2rem;
    color: #A0A0A0;
    background-color: #2E2E4A;
    border-radius: 10px;
    border: 1px dashed rgba(76, 175, 80, 0.3);
}




    /* ---------------------------------- */
    /* MEMBER.PHP PROFILE */
    /* ---------------------------------- */

/* Member Profile - Full Banner Integration */
.member-profile {
    position: relative;
    overflow: hidden;
    margin-bottom: 40px;
    background-color: #2E2E4A; /* Card background */
    border-radius: 12px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.5);
}

.banner-container {
    width: 100%;
    height: 300px; /* Fixed height for consistent banner */
    overflow: hidden;
    position: relative;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
}

.banner-pic {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    filter: brightness(0.7) blur(2px); /* Slightly darken and blur banner */
    transition: filter 0.3s ease;
}

.banner-pic:hover {
    filter: brightness(0.8) blur(0);
}

.profile-content {
    display: flex;
    position: relative;
    padding: 30px;
    z-index: 2;
    background: rgba(0, 0, 0, 0.8);
    backdrop-filter: blur(5px);
    border-radius: 0 0 12px 12px;
    margin-top: -100px; /* This will still determine how much the entire content block overlaps */
    align-items: flex-start; /* Align children to the top */
    /* Remove any align-self on profile-picture-container if it was there */
}

.profile-picture-container {
    flex-shrink: 0;
    margin-right: 30px;
    position: relative;
    z-index: 3;
    margin-top: -80px; /* Adjust this value as needed to control vertical overlap with the banner */
    /* If you want it completely at the top of the .profile-content with no overlap, set margin-top: 0; */
}

.profile-pic {
    width: 180px; /* Larger main profile pic */
    height: 180px;
    border-radius: 50%;
    border: 5px solid #000000; /* Border matches body background */
    outline: 3px solid #4CAF50; /* Vibrant outline */
    object-fit: cover;
    box-shadow: 0 0 20px rgba(76, 175, 80, 0.7); /* Stronger glow for main pic */
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.profile-pic:hover {
    transform: scale(1.03); /* Slight zoom on hover */
    box-shadow: 0 0 30px rgba(76, 175, 80, 0.9);
}

.profile-details {
    flex-grow: 1;
    color: #E0E0E0;
    padding-bottom: 20px; /* Space below details */
}

.profile-details h2 {
    font-size: 2.5rem;
    color: #777777;
    margin-bottom: 5px;
    text-shadow: 0 0 10px rgba(119, 119, 119, 0.3);
}

.profile-details p {
    font-size: 1.1rem;
    margin: 5px 0;
    color: #D5D5D5;
}



    /* ---------------------------------- */
    /* BUTTONS AND STYLES AND STUFFS */
    /* ---------------------------------- */

/* Buttons - Dynamic and Engaging */
button {
    background: linear-gradient(135deg, #4CAF50, #8BC34A); /* Stronger, more distinct gradient */
    color: #FFFFFF; /* White text on buttons */
    border: none;
    padding: 14px 30px; /* More padding */
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 1.05rem;
    border-radius: 8px; /* Softer corners */
    cursor: pointer;
    transition: background 0.4s ease, transform 0.2s ease, box-shadow 0.3s ease;
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.3); /* Deeper shadow */
    font-weight: 600;
    letter-spacing: 0.2px;
}

button:hover {
    background: linear-gradient(135deg, #8BC34A, #4CAF50); /* Reversed gradient for active feel */
    transform: translateY(-3px); /* More pronounced lift */
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.4); /* Enhanced shadow on hover */
}

button:active {
    background: linear-gradient(135deg, #388E3C, #4CAF50); /* Darker active state */
    transform: translateY(0); /* Press down effect */
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

button:disabled {
    background: #444455;
    color: #888;
    cursor: not-allowed;
    box-shadow: none;
    transform: none;
}

/* Checkboxes - Custom Styled */
input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    width: 24px; /* Slightly larger */
    height: 24px;
    border: 2px solid #4CAF50; /* Vibrant border */
    border-radius: 6px; /* Softer corners */
    background-color: #282842; /* Matches input background */
    cursor: pointer;
    position: relative;
    outline: none;
    transition: background-color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}

input[type="checkbox"]:checked {
    background-color: #4CAF50; /* Fills with vibrant green */
    border-color: #4CAF50;
}

input[type="checkbox"]:checked::before {
    content: '\2713'; /* Checkmark icon */
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #FFFFFF; /* White checkmark */
    font-size: 1.3rem; /* Larger checkmark */
    font-weight: bold;
}

input[type="checkbox"]:focus {
    border-color: #8BC34A; /* Lighter border on focus */
    box-shadow: 0 0 10px rgba(76, 175, 80, 0.4);
}

/* Number Inputs with Buttons */
.number-input-container {
    display: flex;
    align-items: stretch; /* Stretch items to fill height */
    border: 1px solid #555577;
    border-radius: 8px;
    overflow: hidden;
    background-color: #282842;
    margin: 10px 0;
    transition: border-color 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease;
}

.number-input-container:focus-within {
    border-color: #4CAF50;
    box-shadow: 0 0 12px rgba(76, 175, 80, 0.4);
    background-color: #35355A;
}

.number-input-container input[type="number"] {
    border: none;
    padding: 12px 18px;
    margin: 0;
    flex-grow: 1; /* Allow input to take available space */
    box-sizing: border-box;
    font-size: 1.05rem;
    outline: none;
    background-color: transparent;
    color: #E0E0E0;
    text-align: center; /* Center the number */
}

/* Hide default number input arrows for a cleaner look */
.number-input-container input[type="number"]::-webkit-inner-spin-button,
.number-input-container input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.number-input-container input[type="number"] {
    -moz-appearance: textfield; /* Firefox */
}

.number-input-container button {
    background: #444455; /* Simpler background for buttons */
    color: #E0E0E0;
    border: none;
    padding: 12px 15px;
    cursor: pointer;
    font-size: 1.2rem; /* Larger icons/text for buttons */
    transition: background 0.3s ease, color 0.3s ease;
    border-radius: 0; /* Remove internal border-radius */
    box-shadow: none; /* No shadow on these internal buttons */
    flex-shrink: 0; /* Prevent shrinking */
}

.number-input-container button:first-of-type {
    border-right: 1px solid rgba(255, 255, 255, 0.1); /* Separator */
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;
}

.number-input-container button:last-of-type {
    border-left: 1px solid rgba(255, 255, 255, 0.1); /* Separator */
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
}

.number-input-container button:hover {
    background: #4CAF50; /* Vibrant hover */
    color: #FFFFFF;
    transform: none; /* No lift */
}

.number-input-container button:active {
    background: #388E3C;
    color: #FFFFFF;
    transform: none;
}



    /* ---------------------------------- */
    /* Text boxes and shtuff */
    /* ---------------------------------- */
    
    input[type="text"],
input[type="email"],
input[type="password"],
textarea,
select,
input[type="number"] {
    background-color: #282842; /* Slightly darker input background */
    color: #E0E0E0;
    border: 1px solid #555577; /* Softer border color */
    padding: 12px 18px; /* More padding */
    margin: 10px 0;
    width: 100%;
    box-sizing: border-box;
    border-radius: 8px; /* Softer corners */
    font-size: 1.05rem;
    outline: none;
    transition: border-color 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus,
input[type="number"]:focus {
    border-color: #4CAF50; /* Vibrant focus border */
    box-shadow: 0 0 12px rgba(76, 175, 80, 0.4); /* Glowing focus shadow */
    background-color: #35355A; /* Slight background shift on focus */
}

textarea {
    resize: vertical;
    min-height: 180px; /* Taller textarea */
}

select option {
    background-color: #282842;
    color: #E0E0E0;
}

/* Note: direct hover on option is tricky cross-browser. */

input::placeholder,
textarea::placeholder {
    color: #999; /* Lighter placeholder */
    opacity: 0.8;
}

/* Custom autofill styling for modern browsers */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0px 1000px #282842 inset !important;
    -webkit-text-fill-color: #E0E0E0 !important;
    transition: background-color 5000s ease-in-out 0s;
}