ui/spawnmenu/spawnmenu.razor.scss
@import "/UI/Theme.scss";

SpawnMenu
{
    width: 100%;
    height: 100%;
    flex-direction: row;
    justify-content: center;
    color: white;
    font-family: $body-font;
    font-size: 12px;
    font-weight: 500;
    z-index: 1000;
}

SpawnMenu .container
{
    flex-direction: row;
    width: 100%;
    max-width: 1920px;
    height: 100%;
    padding-top: 54px;
    padding-bottom: 83px;
    gap: 10px;
}


.container > .spawnmenuleft,
.container > .spawnmenuright
{
    flex-direction: column;
    min-width: 0px;
}

.container > .spawnmenuleft
{
    flex-grow: 1;
}

.container > .spawnmenuright
{
    width: 583px;
    flex-shrink: 0;
    flex-grow: 0;
}

// --- tabs -----------------------------------------------------------------------------------

.tabs
{
    flex-direction: row;
    align-items: flex-end;
    flex-shrink: 0;
    height: 25px;
    margin-left: 9px;
    align-self: flex-start;
    font-family: $body-font;
    z-index: 10;
}

.tabs > *
{
    @include ui-tab;
}

// --- blocks ---------------------------------------------------------------------------------

.container > .spawnmenuleft > .body,
.container > .spawnmenuright > .body
{
    @include ui-block;
    position: relative;
    flex-grow: 1;
}

// each page fills the block, inside its padding
.container > .spawnmenuleft > .body > *,
.container > .spawnmenuright > .body > *
{
    position: absolute;
    left: 8px;
    top: 8px;
    right: 8px;
    bottom: 8px;
}

.container > .spawnmenuleft > .body > .hidden,
.container > .spawnmenuright > .body > .hidden
{
    opacity: 0;
    pointer-events: none;
}

.container > .spawnmenuleft > .body > .active,
.container > .spawnmenuright > .body > .active
{
    opacity: 1;
}

// --- shared page bits -------------------------------------------------------------------------

.menuinner
{
    background-color: transparent;

    h1, h2
    {
        @include ui-heading-text;
        padding: 8px 4px 2px 4px;
    }
}

VirtualGrid, MixedVirtualGrid
{
    width: 100%;
    height: 100%;
    flex-grow: 1;
    @include ui-scroll;
    gap: 4px;
    padding: 0;
}

.menuinner > VirtualGrid
{
    padding: 0px 16px 0px 0px;
}

MixedVirtualGrid
{
    .cell.full-row, .cell.full-row:hover, .cell.full-row:active
    {
        pointer-events: none;
        cursor: default;
    }

    &.editing .cell.full-row
    {
        pointer-events: all;
        cursor: pointer;
    }

    .cell.drop-before::before, .cell.drop-after::after
    {
        position: absolute;
        content: "";
        left: -3px;
        top: 4px;
        bottom: 4px;
        width: 3px;
        background-color: $ui-blue;
        z-index: 10;
    }

    .cell.drop-after::after
    {
        left: auto;
        right: -3px;
    }

    .cell.full-row.drop-before::before, .cell.full-row.drop-after::after
    {
        left: 8px;
        right: 8px;
        top: 0;
        bottom: auto;
        width: auto;
        height: 3px;
    }

    .cell.full-row.drop-after::after
    {
        top: auto;
        bottom: 0;
    }
}

.community-section
{
    width: 100%;
    height: 100%;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    padding-bottom: 8px;
    pointer-events: none;

    label
    {
        font-family: $body-font;
        font-size: 30px;
        font-weight: 700;
        color: white;
        text-shadow: 0px 1px 3px rgba( 0, 0, 0, 0.4 );
    }
}

.container > .spawnmenuright > .body > *
{
    left: 6px;
}

.container > .spawnmenuright > .tabs
{
    margin-left: 7px;
}

.spawnmenuright .body .tab
{
    flex-direction: row;
    gap: 8px;
}