        html {
            scroll-behavior: smooth;
        }

        body {
            background-color: #393E46;
        }

        .custom-navbar {
            background-color: rgba(34, 40, 49, 0.6);
            -webkit-backdrop-filter: blur(12px);
            backdrop-filter: blur(12px);
            border: 1px solid rgba(255, 255, 255, 0.08);
            padding: 8px 16px;
            border-radius: 50px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
            width: 100%;
        }

        .nav-group {
            display: flex;
            gap: 10px;
            align-items: center;
        }

        .nav-item {
            text-decoration: none;
            color: #adb5bd;
            display: flex;
            align-items: center;
            padding: 10px 16px;
            border-radius: 50px;
            font-size: 18px;
            transition: all 0.4s ease;
            cursor: pointer;
        }

        .nav-item .nav-text {
            display: inline-block;
            max-width: 0;
            opacity: 0;
            overflow: hidden;
            white-space: nowrap;
            font-size: 16px;
            font-weight: 600;
            margin-left: 0;
            transition: all 0.4s ease;
        }

        .nav-item .nav-text.text-permanent {
            max-width: 150px;
            opacity: 1;
            margin-left: 8px;
        }

        .nav-item:not(.brand-item):hover,
        .nav-item:not(.brand-item).active {
            transform: scale(1.05);
        }

        .nav-item:not(.brand-item):hover,
        .nav-item:not(.brand-item).active {
            background-color: white;
            color: #021024;
        }

        .nav-item:not(.brand-item):hover .nav-text,
        .nav-item:not(.brand-item).active .nav-text {
            max-width: 120px; 
            opacity: 1;
            margin-left: 8px;
        }

        .brand-item {
            color: white;
        }

        .brand-item i {
            filter: drop-shadow(0 0 10px rgba(220, 53, 69, 0.5));
        }

        .custom-card {
            background-color: rgba(11, 19, 43, 0.4);
            -webkit-backdrop-filter: blur(10px);
            backdrop-filter: blur(10px);
            border: 1px solid rgba(255, 255, 255, 0.08);
            border-radius: 20px;
            color: #e2e8f0;
            overflow: hidden;
        }

        .custom-card .card-header {
            background-color: transparent;
            border-bottom: 1px solid rgba(255, 255, 255, 0.05);
            padding: 15px 20px;
            display: flex;
            align-items: center;
            gap: 12px;
        }

        .custom-card .card-body {
            padding: 20px;
        }

        .custom-card .post-image {
            border-radius: 12px;
            margin-bottom: 5px;
            width: 100%;
            max-height: 550px; 
            object-fit: contain; 
            background-color: rgba(0, 0, 0, 0.4); 
            transition: opacity 0.3s ease;
        }

        .custom-card .post-image:hover {
            opacity: 0.8;
        }

        .custom-card hr {
            border-color: rgba(255, 255, 255, 0.1);
            margin: 8px 0;
        }

        .custom-card .btn:hover {
            background-color: rgba(255, 255, 255, 0.15) !important;
        }

        /* Custom Modal Theme */
        .custom-modal {
            background-color: rgba(34, 40, 49, 0.95);
            -webkit-backdrop-filter: blur(15px);
            backdrop-filter: blur(15px);
            border: 1px solid rgba(255, 255, 255, 0.1);
            border-radius: 20px;
            color: #e2e8f0;
        }

        .custom-modal .modal-header,
        .custom-modal .modal-footer {
            border-color: rgba(255, 255, 255, 0.05);
        }

        .custom-modal .form-control {
            background-color: rgba(255, 255, 255, 0.05);
            border: 1px solid rgba(255, 255, 255, 0.1);
            color: #e2e8f0;
            border-radius: 12px;
        }

        .custom-modal .form-control:focus {
            background-color: rgba(255, 255, 255, 0.1);
            border-color: rgba(255, 255, 255, 0.3);
            box-shadow: 0 0 0 0.25rem rgba(255, 255, 255, 0.1);
            color: #fff;
        }

        .custom-textarea {
            resize: none;
        }

        .custom-modal .btn {
            border-radius: 12px;
        }

        #login-btn:hover, #register-btn:hover {
            background-color: #198754 !important;
            color: white !important;
        }

        .user-profile-badge {
            background-color: rgba(255, 255, 255, 0.05);
            border-radius: 50px;
            border: 1px solid rgba(255, 255, 255, 0.1);
            margin-right: 5px;
            transition: all 0.3s ease;
            cursor: default;
        }

        .custom-profile-pic {
            height: 32px;
            width: 32px;
            object-fit: cover;
            box-shadow: 0 0 10px rgba(0,0,0,0.5);
        }

        .custom-username-text {
            font-size: 14px;
            margin-left: 8px;
            color: #e2e8f0;
            font-weight: 600;
        }

        .custom-logout-btn {
            background-color: rgba(220, 53, 69, 0.15) !important;
            border: 1px solid rgba(220, 53, 69, 0.3) !important;
            color: #ff6b6b !important;
        }

        .custom-logout-btn:hover {
            background-color: rgba(220, 53, 69, 0.9) !important;
            color: white !important;
            box-shadow: 0 4px 15px rgba(220, 53, 69, 0.4);
            transform: scale(1.05);
        }

        .custom-logout-btn .nav-text {
            color: inherit;
        }

        .custom-add-btn {
            bottom: 30px;
            right: 30px;
            background-color: rgba(13, 110, 253, 0.3);
            -webkit-backdrop-filter: blur(15px);
            backdrop-filter: blur(15px);
            border: 1px solid rgba(255, 255, 255, 0.2);
            border-radius: 50px;
            padding: 12px 24px;
            color: white;
            font-size: 18px;
            font-weight: bold;
            box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4);
            z-index: 1000; 
            transition: all 0.3s ease;
        }

        .custom-add-btn:hover {
            transform: translateY(-5px) scale(1.05); 
            background-color: rgba(13, 110, 253, 0.6);
            color: white;
            box-shadow: 0 12px 40px rgba(13, 110, 253, 0.4);
            border-color: rgba(255, 255, 255, 0.5);
        }

        
        #loader-overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100vw;
            height: 100vh;
            background-color: #393E46; 
            z-index: 9999;
            display: flex;
            justify-content: center;
            align-items: center;
            transition: opacity 0.4s ease;
        }

        .lds-ellipsis,
        .lds-ellipsis div {
        box-sizing: border-box;
        }
        .lds-ellipsis {
        display: inline-block;
        position: relative;
        width: 80px;
        height: 80px;
        }
        .lds-ellipsis div {
        position: absolute;
        top: 33.33333px;
        width: 13.33333px;
        height: 13.33333px;
        border-radius: 50%;
        background: currentColor;
        animation-timing-function: cubic-bezier(0, 1, 1, 0);
        }
        .lds-ellipsis div:nth-child(1) {
        left: 8px;
        animation: lds-ellipsis1 0.6s infinite;
        }
        .lds-ellipsis div:nth-child(2) {
        left: 8px;
        animation: lds-ellipsis2 0.6s infinite;
        }
        .lds-ellipsis div:nth-child(3) {
        left: 32px;
        animation: lds-ellipsis2 0.6s infinite;
        }
        .lds-ellipsis div:nth-child(4) {
        left: 56px;
        animation: lds-ellipsis3 0.6s infinite;
        }
        @keyframes lds-ellipsis1 {
        0% {
            transform: scale(0);
        }
        100% {
            transform: scale(1);
        }
        }
        @keyframes lds-ellipsis3 {
        0% {
            transform: scale(1);
        }
        100% {
            transform: scale(0);
        }
        }
        @keyframes lds-ellipsis2 {
        0% {
            transform: translate(0, 0);
        }
        100% {
            transform: translate(24px, 0);
        }
        }

        /* Mobile Responsive Fixes */
        @media (max-width: 576px) {
            .custom-navbar {
                padding: 6px 10px;
            }
            .nav-group {
                gap: 5px;
            }
            .nav-item {
                padding: 8px 12px;
                font-size: 16px;
            }
            .nav-item .nav-text {
                display: none !important;
            }
            .user-profile-badge {
                padding: 3px 6px !important;
            }
            .custom-username-text {
                display: none;
            }
            .custom-add-btn {
                bottom: max(20px, env(safe-area-inset-bottom));
                right: 15px;
                padding: 10px 20px;
                font-size: 16px;
                z-index: 1050;
            }
        }

