.game-mode {
    #playScreen {
        display: grid;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        overflow: hidden;
        pointer-events: none;
        grid-template-columns: 1fr;
        grid-template-rows: 1fr;
        user-select: none;
    }

    #playScreenInner {
        display: grid;
        margin: 24px;
        grid-template-columns: 200px 1fr 200px;
        grid-template-rows: auto 1fr auto;
        gap: 24px;
        transition: 0.2s;
        margin-left: max(24px, var(--sail));
        margin-right: max(24px, var(--sair));
        margin-top: max(24px, var(--sait));
        margin-bottom: max(24px, var(--saib));
    }

    #playerTopLeftArea {
        grid-row: 1;
        grid-column: 1;
        user-select: none;
        pointer-events: all;
    }

    .playerStatBar {
        position: relative;
        height: 22px;
        overflow: hidden;
        border-radius: 4px;
        margin-bottom: 6px;
        -webkit-backdrop-filter: blur(4px);
        backdrop-filter: blur(4px);
        background-color: rgba(0, 0, 0, 0.6);
        border: 1px solid #000000;
    }

    .playerStatBarInner {
        width: 20%;
        height: 100%;
    }

    .playerStatBarLabel {
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        color: #ffffff;
        position: absolute;
        font-size: 14px;
    }

    #playerStatBarHealth, #playerFocusedEnemyHealthMeter {
        background-color: #E53935;
    }

    #playerStatBarMana {
        background-color: #1976D2;
    }

    #playerStatBarExperience {
        background-color: #43A047;
    }

    #playerFocusedInfoArea {
        grid-row: 1;
        grid-column: 2;
        align-content: center;
    }

    #playerFocusedAreaReadout {
        color: #ffffff;
        text-shadow: 0px 0px 6px black;
        font-size: 16px;
        font-style: italic;
        font-weight: 600;
        text-align: center;
    }

    #playerTopRightArea {
        grid-row: 1;
        grid-column: 3;
        color: #ffffff;
        text-shadow: 0px 0px 6px black;
        text-align: center;
        align-content: center;
    }

    #playerTopRightAreaZone {
        font-size: 16px;
        font-weight: 600;
    }

    #playerTopRightAreaTime, #playerTopRightAreaFPS {
        opacity: 0.6;
        font-size: 14px;
    }

    #playScreenBottomRightButtons {
        grid-row: 3;
        grid-column: 1;
        margin-right: auto;
        align-content: end;
    }

    #playScreenDialog {
        display: none;
    }

    .dialogShowing {
        #playScreenDialog {
            grid-row: 3;
            grid-column: 2;
            background-color: rgba(0, 0, 0, 0.6);
            color: #ffffff;
            padding: 12px 24px;
            pointer-events: all;
            user-select: none;
            -webkit-backdrop-filter: blur(4px);
            backdrop-filter: blur(4px);
            border-radius: 12px;
            display: grid;
            grid-template-rows: auto 1fr auto;
        }

        #playerTopLeftArea {
            display: none;
        }

        #playerFocusedInfoArea {
            display: none;
        }

        #playerTopRightArea {
            display: none;
        }

        #playScreenBottomRightButtons {
            display: none;
        }

        #playScreenMainButtons {
            display: none;
        }
    }

    #playScreenDialogHeader {
        font-weight: 600;
        font-size: 16px;
        position: relative;
        top: -22px;
        text-shadow: 0px 0px 6px black;
        font-style: italic;
    }

    #playScreenDialogContent {
        font-size: 20px;
        margin: 0px 24px;
        font-style: italic;
        text-shadow: 0px 0px 6px black;
        align-content: center;
    }

    #playScreenDialogButtons {
        text-align: right;
    }

    .playScreenDialogButton {
        display: inline-block;
        cursor: pointer;
        margin-left: 24px;
        font-weight: 600;
        font-size: 18px;
        margin-top: 24px;
    }

    #playScreenMainButtons {
        grid-row: 3;
        grid-column: 3;
        display: grid;
        grid-template-columns: auto auto auto;
        grid-template-rows: auto auto auto;
        margin-top: auto;
        gap: 12px;
        margin-left: auto;
    }

    .playScreenMainButton {
        height: 48px;
        width: 48px;
        border-radius: 50%;
        -webkit-backdrop-filter: blur(4px);
        backdrop-filter: blur(4px);
        background-color: rgba(0, 0, 0, 0.6);
        color: #ffffff;
        pointer-events: all;
        cursor: pointer;
        font-family: fluent;
        align-content: center;
        text-align: center;
        font-size: 30px;
        border: 1px solid #000000;
    }

    #playScreenBottomRightButtons .playScreenMainButton {
        margin-top: 6px;
    }

    #playScreenButtonInventory {
        grid-row: 1;
        grid-column: 2;
    }

    #playScreenButtonSecondary {
        grid-column: 1;
        grid-row: 2;
    }

    #playScreenButtonCharacter {
        grid-row: 2;
        grid-column: 3;
    }

    #playScreenButtonPrimary {
        grid-row: 3;
        grid-column: 2;
    }

    .editorPopup {
        display: none;
    }

    .editorPopup.open {
        position: absolute;
        top: 0px;
        left: 0px;
        overflow: hidden;
        padding-top: max(24px, var(--sait));
        padding-bottom: max(24px, var(--saib));
        padding-left: max(24px, var(--sail));
        padding-right: max(24px, var(--sair));
        height: calc(100% - calc(max(24px, var(--sait)) + max(24px, var(--saib))));
        width: calc(100% - calc(max(24px, var(--sail)) + max(24px, var(--sair))));
        -webkit-backdrop-filter: blur(4px);
        backdrop-filter: blur(4px);
        background-color: rgba(255, 255, 255, 0.8);
        border: none;
        border-radius: 0px;
        display: grid;
        grid-template-columns: 1fr auto;
        gap: 12px;
        align-items: center;
        grid-template-rows: auto 1fr;
        user-select: none;
        pointer-events: all;
    }

    .editorPopupTitle {
        grid-column: 1;
        grid-row: 1;
        font-weight: 600;
    }

    .editorPopupClose {
        grid-column: 2;
        grid-row: 1;
        cursor: pointer;
        transition: 0.2s;
    }

    .editorPopupClose:hover {
        font-weight: 800;
        color: #C62828;
    }

    .editorPopupContent {
        grid-column: 1 / span 2;
        grid-row: 2;
        height: 100%;
        overflow: auto;
    }

    #inventoryContent {
        overflow: hidden;
        display: grid;
        grid-template-columns: auto 1fr;
        grid-template-rows: 1fr auto;
    }

    #inventoryContentListing {
        grid-row: 1;
        grid-column: 1;
        overflow: auto;
    }

    .inventoryItemCard {
        display: grid;
        grid-template-columns: 24px 1fr auto;
        align-items: center;
        margin-bottom: 12px;
        cursor: pointer;
    }

    .inventoryItemEquippedIndicator {
        grid-column: 1;
        font-family: fluent;
    }

    .inventoryItemCardTitle {
        grid-column: 2;
    }

    .selected .inventoryItemCardTitle {
        font-weight: 600;
    }

    .inventoryItemCountBadge {
        text-align: right;
        opacity: 0.6;
        grid-column: 3;
    }

    #inventoryContentInfoHolder {
        grid-row: 1;
        grid-column: 2;
        display: grid;
        padding: 12px;
        overflow: auto;
    }

    #inventoryContentInfoHolderInner {
        align-self: center;
    }

    #inventoryContentInfoName {
        font-weight: 300;
        font-size: 22px;
    }

    #inventoryContentInfoDescription {
        font-style: italic;
        font-size: 14px;
    }

    #inventoryContentBottomBar {
        grid-row: 2;
        grid-column: 1 / span 2;
        margin: 12px;
        border: 1px solid #333333;
        border-radius: 8px;
        padding: 12px;
        background-color: rgba(0, 0, 0, 0.05);
        display: grid;
        grid-template-columns: 1fr auto auto auto;
        align-items: center;
        gap: 12px;
    }

    

    .inventoryContentBottomBarStatHolder {
        display: grid;
        align-items: end;
        gap: 6px;
        grid-template-columns: auto auto;
    }

    .inventoryContentBottomBarStat {
        font-size: 12px;
        font-weight: 600;
        opacity: 0.6;
    }
}

.game-paused #playScreenInner {
    display: none !important;
}