DAWNetPanel
{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 999;
    background-color: rgba(black, 0.6);
    pointer-events: all;

    justify-content: center;
    align-items: center;

    .title
    {
        position: absolute;
        top: 6px;
        left: 16px;
        font-size: 16px;
        color: black;
        font-weight: bold;
    }

    .content
    {
        width: 80%;
        height: 80%;
        background-color: #686868;
        flex-direction: column;
        pointer-events: all;
        font-size: 24px;
        font-family: Poppins;
        padding: 16px;
        padding-top: 36px;
        gap: 16px;

        .container
        {
            background-color: #535353;
            flex-direction: column;
            flex-grow: 1;

            .welcome
            {
                font-size: 32px;
                color: #aaa;
                text-align: center;
                flex-grow: 1;
                flex-direction: column;
                justify-content: center;
                align-items: center;
                gap: 16px;
                margin-bottom: -128px;

                image
                {
                    width: 128px;
                    height: 128px;
                }
            }

            .big-buttons
            {
                flex-direction: row;
                justify-content: space-evenly;
                align-items: center;
                flex-grow: 1;

                .btn
                {
                    width: 512px;
                    height: 256px;
                    background-color: #808080;
                    color: #3b3b3b;
                    font-size: 16px;
                    flex-shrink: 0;
                    flex-direction: column;
                    justify-content: center;
                    align-items: center;
                    text-align: center;
                    font-size: 32px;

                    i
                    {
                        font-size: 128px;;
                    }

                    &:hover
                    {
                        background-color: #3b3b3b;
                        color: #aaa;
                    }

                    &:active
                    {
                        background-color: #313131;
                        color: #949494;
                    }
                
                }
            }

            .tabs
            {
                flex-shrink: 0;
                padding: 8px;
                justify-content: space-evenly;
                gap: -1px;

                .tab
                {
                    flex-grow: 1;
                    flex-shrink: 0;
                    padding: 8px;
                    background-color: #7a7a7a;
                    cursor: pointer;
                    justify-content: center;

                    &:hover
                    {
                        background-color: #a5a5a5;
                    }

                    &:active
                    {
                        background-color: #7a7a7a;
                    }

                    &.selected
                    {
                        background-color: #a5a5a5;
                    }
                }
            }

            .browser
            {
                flex-grow: 1;

                .list-container
                {
                    flex-direction: column;
                    flex-grow: 1;

                    > .search
                    {
                        flex-shrink: 0;
                        background-color: #7a7a7a;
                        color: black;
                        align-items: center;
                        gap: 16px;

                        i
                        {
                            font-size: 24px;
                            justify-content: center;
                            align-items: center;
                            flex-shrink: 0;
                            text-align: center;
                            margin-left: 16px;
                        }

                        TextEntry
                        {
                            min-height: 64px;
                            flex-grow: 1;

                            label
                            {
                                // Enable word-wrap
                                white-space: normal;
                            }
                        }
                    }
                }

                .list
                {
                    flex-grow: 1;
                    flex-direction: column;

                    .project
                    {
                        flex-shrink: 0;
                        padding: 8px;
                        gap: 16px;
                        background-color: #7a7a7a;
                        cursor: pointer;

                        .info
                        {
                            flex-direction: column;
                            flex-grow: 1;

                            h1
                            {
                                font-size: 24px;
                            }

                            p
                            {
                                font-size: 16px;
                                text-overflow: ellipsis;
                                overflow: hidden;
                                white-space: nowrap;
                                opacity: 0.6;
                            }
                        }

                        .date
                        {
                            flex-shrink: 0;
                            font-size: 16px;
                            opacity: 0.8;
                            align-items: center;
                        }

                        .rating
                        {
                            flex-direction: row;
                            align-items: center;
                            flex-shrink: 0;
                            font-weight: 600;
                        }

                        &:hover
                        {
                            background-color: #a5a5a5;
                        }

                        &:active
                        {
                            background-color: #7a7a7a;
                        }

                        &.selected
                        {
                            background-color: #a5a5a5;
                        }
                    }
                }

                .info-panel
                {
                    flex-shrink: 0;
                    width: 400px;
                    flex-direction: column;
                    background-color: #313131;
                    padding-top: 16px;

                    > image
                    {
                        aspect-ratio: 1;
                        width: 90%;
                        align-self: center;
                    }

                    .info
                    {
                        flex-direction: column;
                        gap: 8px;
                        color: #aaa;
                        padding: 8px;
                        flex-grow: 1;

                        h1
                        {
                            font-size: 24px;
                            font-weight: 600;
                        }
                        
                        h4
                        {
                            font-size: 18px;
                            font-style: italic;
                            font-weight: 300;
                        }
                    
                    }

                    .bottom
                    {
                        flex-shrink: 0;
                        flex-direction: row;
                        justify-content: space-between;
                        align-items: center;
                        padding: 8px;
                        background-color: #3f3f3f;

                        .rating
                        {
                            flex-direction: row;
                            justify-content: space-between;
                            align-items: center;
                            flex-shrink: 0;
                            font-weight: 600;
                            gap: 8px;

                            .btn
                            {
                                width: 30px;
                                text-align: center;
                                cursor: pointer;

                                &.cant-press
                                {
                                    opacity: 0.5;
                                    cursor: not-allowed;                            
                                }
                            }
                        }

                        > .btn
                        {
                            flex-shrink: 0;
                            padding: 4px;
                            align-items: center;
                            gap: 8px;
                            background-color: #7a7a7a;
                            cursor: pointer;

                            &:hover
                            {
                                background-color: #a5a5a5;
                            }

                            &:active
                            {
                                background-color: #7a7a7a;
                            }
                        }
                    }
                }
            }

            .upload
            {
                gap: 16px;
                padding: 16px;
                flex-grow: 1;

                .left
                {
                    width: 40%;
                    flex-direction: column;
                    background-color: #4e4e4e;
                    padding: 8px;

                    .folders
                    {
                        flex-direction: column;
                        overflow: scroll;
                        flex-grow: 1;

                        .folder
                        {
                            flex-shrink: 0;
                            padding: 4px;
                            background-color: #7a7a7a;
                            cursor: pointer;

                            TextEntry
                            {
                                color: black;
                            }

                            &.selected
                            {
                                background-color: #a5a5a5;
                            
                            }

                            &:hover
                            {
                                background-color: #a5a5a5;
                            }

                            &:active
                            {
                                background-color: #7a7a7a;
                            }
                        }
                    }

                    > button
                    {
                        padding: 8px;
                        background-color: #7a7a7a;
                        flex-shrink: 0;
                        cursor: pointer;

                        &:hover
                        {
                            background-color: #a5a5a5;
                        }

                        &:active
                        {
                            background-color: #7a7a7a;
                        }
                    }
                }

                .right
                {
                    width: 60%;
                    flex-direction: column;
                    background-color: #4e4e4e;
                    padding: 8px;

                    .files
                    {
                        flex-grow: 1;
                        flex-direction: column;
                        overflow: scroll;

                        .file
                        {
                            flex-shrink: 0;
                            padding: 4px;
                            background-color: #7a7a7a;
                            cursor: pointer;

                            &:hover
                            {
                                background-color: #a5a5a5;
                            }

                            &:active
                            {
                                background-color: #7a7a7a;
                            }
                        }
                    }

                    .info-panel
                    {
                        background-color: #3f3f3f;
                        flex-direction: column;
                        padding: 4px;
                        flex-shrink: 0;
                        gap: 16px;

                        .info
                        {
                            flex-direction: column;
                            gap: 8px;
                            flex-shrink: 0;

                            TextEntry
                            {
                                background-color: #707070;
                                color: black;
                                align-items: flex-start;

                                label
                                {
                                    // Enable word-wrap
                                    white-space: normal;
                                }

                                &.desc
                                {
                                    min-height: 140px;
                                }
                            }

                            .control
                            {
                                flex-grow: 1;
                                justify-content: space-between;
                                color: #aaa;
                            }
                        }


                        .buttons .button
                        {
                            &.cant-press
                            {
                                background-color: #494949;
                                cursor: not-allowed;                            
                            }
                        }
                    }

                    button
                    {
                        flex-shrink: 0;
                        padding: 0px 24px;
                        justify-content: center;
                        align-items: center;
                        background-color: #7a7a7a;
                        cursor: pointer;

                        &:hover
                        {
                            background-color: #a5a5a5;
                        }

                        &:active
                        {
                            background-color: #7a7a7a;
                        }
                    }
                }
            }
        }

        .close
        {
            position: absolute;
            top: 4px;
            right: 4px;
            color: black;
            font-size: 24px;
            cursor: pointer;

            &:hover
            {
                color: white;
            }

            &:active
            {
                color: #818181;
            }
        }
    }
}