﻿/* Source: Views\Shared\_Layout.cshtml */
        /* Layout base */
        body {
            background-color: #f4f6f9;
        }

        .wrapper {
            min-height: 100vh;
            display: flex;
            flex-direction: column;
        }

        /* Sidebar (desktop) */
        .sidebar-desktop {
            width: 250px;
            background-color: #343a40;
            color: white;
            position: fixed;
            top: 0;
            bottom: 0;
            left: 0;
            padding: 1rem 0.5rem;
            overflow-y: auto;
            z-index: 1030;
        }

            .sidebar-desktop .sidebar-inner {
                display: flex;
                flex-direction: column;
                height: 100%;
            }

            .sidebar-desktop h3 {
                font-size: 1.1rem;
                text-align: center;
                padding: .5rem 0;
                margin: 0;
                background: #23272b;
            }

            .sidebar-desktop a {
                color: #ccc;
                text-decoration: none;
                padding: .6rem 1rem;
                display: block;
                transition: background-color .15s;
            }

                .sidebar-desktop a:hover, .sidebar-desktop a.active {
                    background-color: #495057;
                    color: #fff;
                }

                /* Visual state for parent when a child is active */
                .sidebar-desktop a.parent-active {
                    background-color: #495057;
                    color: #fff;
                }

            /* Child active style */
            .sidebar-desktop .nav-child-active {
                background-color: rgba(255,255,255,0.05);
                color: #fff;
                border-radius: 6px;
                padding-left: 1rem;
            }

        /* Ensure collapse contents match desktop look when shown in offcanvas */
        .sidebar-offcanvas {
            padding: 0.75rem;
            background-color: #343a40;
            color: white;
            min-height: 100%;
        }

        /* Main content area */
        .main-content {
            margin-left: 0;
            padding: 1rem;
            transition: margin-left .2s;
        }

        .topbar {
            background-color: #fff;
            border-bottom: 1px solid #e6e9ef;
            padding: .6rem 1rem;
            display: flex;
            gap: .75rem;
            justify-content: space-between;
            align-items: center;
        }

            .topbar .user-info {
                font-weight: 500;
            }

        /* Responsive behavior */
        @media (min-width: 768px) {
            .main-content {
                margin-left: 250px;
                padding: 1.25rem 2rem;
            }

            .offcanvas-backdrop {
                display: none;
            }
            /* avoid duplicate backdrop on desktop */
        }

        /* Small tweaks for mobile */
        .brand-small {
            font-weight: 700;
            font-size: 1.05rem;
        }

        .sidebar-section-title {
            font-size: .95rem;
            color: #bfc6cc;
            margin: .5rem 1rem;
        }

        .sidebar-desktop .sidebar-nav-link {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: .5rem;
            margin: .15rem .25rem;
            padding: .55rem .75rem;
            border-radius: 8px;
            color: #d6d9dc;
            font-weight: 500;
            text-decoration: none;
        }

        .sidebar-desktop .sidebar-nav-link:hover,
        .sidebar-desktop .sidebar-nav-link.active,
        .sidebar-desktop .sidebar-nav-link.parent-active {
            background-color: #495057;
            color: #fff;
        }

        .sidebar-desktop .sidebar-sub-link {
            display: block;
            margin: .1rem .25rem .1rem .75rem;
            padding: .45rem .75rem;
            border-radius: 8px;
            color: #c8ced4;
            text-decoration: none;
        }

        .sidebar-desktop .sidebar-sub-link:hover,
        .sidebar-desktop .sidebar-sub-link.active,
        .sidebar-desktop .sidebar-sub-link.nav-child-active {
            background-color: rgba(255, 255, 255, 0.08);
            color: #fff;
        }

        .project-menu .collapse a.sidebar-sub-link {
            padding-left: .75rem;
        }
    

