.layout {
    min-height: 100vh;
}

.ant-layout-content {
    display: flex;
    flex-direction: column;
}

.ant-header {
    display: flex;
}

.ant-menu-left {
    flex-grow: 1;
}

.ant-menu-right .ant-menu-title-content {
    display: inline-block;
    font-size: 24px;
}

.ant-menu-right .ant-menu-title-content .anticon {
    font-size: 24px;
}

.ant-page-header-heading-title {
    padding-bottom: 4px;
    line-height: 26px;
}

label.ant-btn-icon-only {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.ant-select-selector {
    line-height: 30px;
}

.ant-card .ant-form > .ant-form-item {
    margin-bottom: 12px;
}

.ant-card .ant-form > .ant-form-item:last-child {
    margin-bottom: 0;
}

.uploader-progress .ant-progress-outer {
    padding-right: 0;
    margin-right: 0;
}

.uploader-progress .ant-progress-bg {
    transition: none;
}

.menu-drawer {
    margin-top: 63px;
}

.menu-drawer .ant-drawer-content {
    background: #001529;
}

.menu-drawer .ant-drawer-header-no-title {
    display: none;
}

.menu-drawer .ant-drawer-body {
    padding: 0;
}

.menu-drawer .ant-drawer-wrapper,
.menu-drawer .ant-drawer-content {
    height: auto;
}

.menu-drawer .ant-drawer-content-wrapper {
    height: auto !important;
}

.mobile-header .ant-btn {
    color: #fff;
    position: absolute;
    right: 16px;
}

.ant-select-item-option-content .ant-image {
    margin-right: 8px;
}

.file-picker-dialog .ant-modal-body {
    padding: 0;
}

.file-picker-dialog .file-manager {
    height: calc(100vh - 55px - 53px);
}

.file-manager-selector-hidden .ant-radio-wrapper {
    display: none;
}

.game-metadata-lookup-modal .ant-modal-body {
    padding: 0;
}

.game-metadata-lookup-modal tbody tr {
    cursor: pointer;
}

.image-picker-images {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

.image-picker-image {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.image-picker-image img {
    border: 4px solid transparent;
    border-radius: 2px;
    max-height: 100%;
    max-width: 100%;
}

.image-picker-image input {
    display: none;
}

.image-picker-image input + label {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    cursor: pointer;
}

.image-picker-image input:checked ~ img {
    border-color: #1890ff;
}

.media-editor img {
    max-width: 100px;
    max-height: 100px;
    width: auto;
}

.media-grabber-group {
    margin-top: 18px;
}

.media-grabber-group + .media-grabber-group {
    padding-top: 16px;
    border-top: 1px solid rgba(0, 0, 0, 0.85);
}

[data-theme="Dark"] .media-grabber-group + .media-grabber-group {
    border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.launcher-download {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    flex-grow: 1;
    justify-content: center;
}

.launcher-download img {
    max-width: 500px;
    width: 75vw;
}

.launcher-download h1 {
    font-size: 32px;
    margin-bottom: 0;
}

.page-editor-body {
    flex-grow: 1;
}

.page-editor-tree-pane {

}

.page-editor-markdown-pane {
    padding: 0 16px;
}

.ant-table-cell-with-append {
    display: flex;
    align-items: center;
    padding-left: 8px !important;
}

.ant-table-row-indent + .ant-table-row-expand-icon {
    margin-right: 16px;
}

.ant-table-row-level-1 {
    background: #0a0a0a;
}

.dashboard-chart > div {
    background: none !important;
}

@media screen and (min-width: 768px) {
    .mobile-menu {
        display: none;
    }
}

@media screen and (max-width: 767px) {
    .mobile-header {
        display: flex;
        align-items: center;
        justify-content: center;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 2000;
    }

    .ant-header:not(.mobile-header) {
        display: none;
    }

    .ant-header .logo {
        margin-right: 0 !important;
        float: none;
    }

    .ant-layout-content {
        margin-top: 63px;
    }
}

@media (max-width: 960px) {
    .ant-scrolling-effect {
        overflow: visible !important;
        width: 100% !important;
    }

    .ant-table-responsive .ant-table-tbody .ant-table-row > .ant-table-cell:first-child {
        padding-top: 16px;
    }

    .ant-table-responsive .ant-table-tbody .ant-table-row > .ant-table-cell:last-child {
        padding-bottom: 16px;
    }

    .ant-table-responsive .ant-table-tbody .ant-table-cell {
        padding-top: 8px;
        padding-bottom: 8px;
    }

    .ant-table-responsive .ant-table-tbody .ant-table-cell:before {
        flex-grow: 1;
    }

    .ant-layout.ant-layout-has-sider {
        flex-direction: column
    }

    .ant-layout-sider {
        max-width: 100% !important;
        width: 100% !important;
    }

    .ant-layout.ant-layout-has-sider > .ant-layout, .ant-layout.ant-layout-has-sider > .ant-layout-content {
        width: 100%
    }
}