* {
    margin: 0;
    padding: 0;
}

html, body {
    overflow: hidden;
    width: 100%;
    height: 100%;
    background-color: rgb(39, 41, 48);
}

html, body, canvas {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    user-select: none;
}

hr {
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    color: white;
}

body > div {
    position: absolute;
    display: block;
}

img {
    -webkit-user-drag: none;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    -webkit-touch-callout: none;
    pointer-events: none;
}

#menu img {
    display: block;
    width: 30px;
    height: 30px;
}

/* #menu img {
    display: block;
    -webkit-user-drag: none;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    --menu-icon: 30px;
    width: var(--menu-icon);
    height: var(--menu-icon);
} */

/* .menu-icon-span-wrapper */ #menu > span { 
    display: inline;
    vertical-align: middle;
}

/* .menu-icon-div-wrapper */ #menu > span > div {
    display: inline-block;
    padding: 10px;
    padding-right: 0;
}

.pointer, button {
    cursor: pointer;
}

.magnifier-wrap {
    display: inline-block;
    padding: 3px;
    border: 2px white solid;
    border-radius: 10px;
}

.magnifier-wrap * {
    color: white;
}

.magnifier-wrap input[type="number"] {
    margin-left: 2px;
    margin-right: 2px;
    width: 3em;
    color: black;
}

@media only screen and (max-width: 450px) {
    #menu img {
        display: block;
        width: 15px;
        height: 15px;
    }

    /* .menu-icon-div-wrapper */ #menu > span > div {
        display: inline-block;
        padding: 5px;
        padding-right: 0;
    }

    .magnifier-wrap {
        font-size: 50%;
        display: inline-block;
        padding: 1.5px;
        border: 1px white solid;
        border-radius: 5px;
    }
    
    .magnifier-wrap * {
        color: white;
    }

    .magnifier-wrap table {
        border-spacing: 0;
    }
    
    .magnifier-wrap input[type="number"] {
        font-size: 100%;
        margin-left: 4px;
        margin-right: 4px;
        width: 4em;
        color: black;
    }
}

.popups {
    display: none;
    width: 100%;
    height: 100%;
}

.popups > div {
    position: absolute;
    display: none;
    overflow: auto;
    background-color: rgb(18, 18, 20, 0.3);
    width: calc(100% - 50px);
    height: calc(100% - 50px);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.popup-inner-wrapper {
    padding: 25px;
    color: white;
    font-size: 0.8em;
    font-family: Arial, Helvetica, sans-serif;
}

.popups input[type="number"] {
    width: 100%;
}

.particle-content {
    margin: 0.5em 0 0 0.5em;
    padding: 0.5em;
    width: calc(100% - 0.5em);
    border: #ffffff solid 2px;
    border-radius: 3px;
}
.particle-content td:not(:first-child) {
    border-top: #ffffff solid 2px;
    border-left: #ffffff solid 2px;
    width: 100%;
    padding: 0.1em;
    padding-left: 0.3em;
    border-bottom: #ffffff solid 2px;
}

.particle-content td:first-child {
    border-top: #ffffff solid 2px;
    border-right: #ffffff solid 2px;
    padding: 0.1em;
    padding-left: 0.3em;
    border-bottom: #ffffff solid 2px;
}

.popups td:first-child {
    padding-right: 1em;
}

div[data-popup="list"] .go-back-button {
    display: inline-block;
}

#particleList button {
    margin-left: 3px;
    display: inline;
}

#toTemplateButton {
    margin-left: 3px;
    display: inline-block;
}

#removeAllParticles {
    margin-left: 3px;
    display: inline-block;
}

#defaultTemplateList button, #templateList button {
    margin-left: 3px;
    display: inline-block;
}

.save-template * {
    display: inline-block;
}

.save-template input {
    width: min-content;
}

button {
    display: block;
}

div[data-popup="templateExport"] > div, div[data-popup="templateImport"] > div {
    height: 100%;
}

#templateExportTextArea, #templateImportTextArea {
    overflow: scroll;
    resize: none;
    width: 100%;
    height: 100%;
}