@import url('https://fonts.googleapis.com/css2?family=Great+Vibes&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&family=Rubik:ital,wght@0,300..900;1,300..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
/*@import url('https://db.onlinewebfonts.com/c/975a5a4b60d2801c3382561ee634109b?family=Hypermarket+W00+Regular');*/ /* uncomment when release */
@import url('https://fonts.googleapis.com/css2?family=Linefont:wght@4..1000&display=swap');
@import url('https://fonts.googleapis.com/css2?family=VT323&display=swap');

:root {
    --accent: #eb144c;

    --ratings-accent: #ff5722;
    --travelling-accent: #ff9307;
    --shopping-accent: #2196f3;
    --gofundme-accent: #00d084;
    --images-accent: #673ab7;
    --youtube-accent: rgb(255, 58, 58);
    --thing: 2px;

    --menu-bg: rgb(246, 246, 246);
    --menu-bg-darker: rgb(242, 242, 242);
    --inventory-bg: rgb(220, 220, 220);
    --inventory-item-hover: rgb(197, 197, 197);
    --important-bg: rgb(183, 55, 55);
    --room-item: white;
    --font-colour: black;

    --body-bg: url("assets/memphis-mini.png");
    --game-bg: url('./assets/misc.png');
    --result-bg: url("assets/dots.png");

    --border: grey;
}

nav ul {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    margin: 0;
    padding: 0;
}
ul li {
    list-style: none;
    background-color: var(--menu-bg);
    margin: 2px;
    padding: 5px;
    font-weight: 900;
    border-radius: 5px;
    border-bottom: 2px solid black;
}
ul li:hover {
    cursor: pointer;
    background-color: var(--accent);
    color: white;
}
li.highlighted {
    background-color: var(--accent);
    color: white;
}

.important {
    background-color: var(--important-bg);
}

.settingsTab {
    text-align: left;
    padding: 10px;
    font-weight: 600;
}
.settingsPanel {
    background-color: var(--menu-bg-darker);
    padding: 5px;
    margin: 5px;
    margin-top: 10px;
    padding-top: 0.2px;
    border-radius: 10px;
    border: var(--border) 1px solid;
    box-shadow: 0px 2px 2px black;
}
.settingsPanel input[type=text] {
    vertical-align: middle;
}
.settingsPanel button {
    margin-top: 7px;
}
input {
    vertical-align: middle;
}

.avatar-settings {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
}
.avatar-settings .usericon {
    background-color: white;
    border: 2px black solid;
    width: 65px;
    height: 65px;
}
#settings-avatar nav {
    font-size: 11px;
}
.avatar-settings .usericon div {
    width: 65px !important;
    height: 65px !important;
    grid-row-start: 1;
    grid-column-start: 1;
}
div.inventoryContainer {
    width: 300px;
    height: 150px;
    background-color: var(--menu-bg);
    border-radius: 5px;
    margin-right: 10px;
    display: flex;
    flex-wrap: wrap;
    overflow: scroll;
    padding: 5px;
    align-content: baseline;
}
div#equipped {
    flex-direction: row;
}
#equipped.inventoryContainer {
    height: 250px;
    padding: 5px;
    border-radius: 2px;
    background-color: var(--inventory-bg);
}
.equippedItem {
    width: 100%;
    padding: 5px;
    height: fit-content;
    margin-bottom: 5px;
    box-shadow: 0px 0px 5px black;
}
.equippedItem .inventoryItem {
    float: left;
}
.equippedItem:hover {
    background-color: var(--inventory-item-hover);
    cursor: pointer;
}
.dropdown {
    float: right;
    margin: 5px;
    filter: opacity(50%);
    padding: 5px;
    box-sizing: border-box;
    border-radius: 100%;
}
.dropdown:hover {
    background-color: var(--inventory-bg);
    filter: brightness(110%);
}
.shopItem .usericon {
    background-color: white;
    border: solid black 2px;
}
.marketplacecart .inventoryItem {
    border: none;
    background-color: unset;
}
.shopItem .inventoryItem {
    border: none;
    background-color: none;
}
div.inventoryItem {
    width: 25px;
    height: 25px;
    border: solid black 2px;
    background-color: white;
    background-size: 100%;
    margin: 1.8px;
    image-rendering: pixelated;
}
div.inventoryItem:hover {
    cursor: pointer;
}
div.colours {
    display: flex;
    max-width: 65px;
    flex-wrap:wrap;
    justify-content: center;
    align-items: center;
    margin-top: 5px;
}
div.colour {
    width: 12px;
    height: 12px;
    margin: 2px;
    border: solid 2px black;
    background-color: white;
    background-size: 100%;
    image-rendering: pixelated;
}
div.colour:hover {
    cursor: pointer;
}

.unobtained {
    filter: grayscale(100%);
}

body {
    margin: 0;
    background-image: var(--body-bg);
    user-select: none;
    animation-name: example;
    animation-duration: 5s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    animation-direction: reverse;
    overflow: hidden;
}

body.dark {
    --menu-bg: rgb(46, 46, 46) !important;
    --menu-bg-darker: rgb(42, 42, 42) !important;
    --important-bg: rgb(88, 29, 29) !important;
    --room-item: rgb(22, 22, 22) !important;
    --font-colour: rgb(240, 240, 240) !important;
    
    --body-bg: url('assets/memphis-mini-dark.png') !important;
    --game-bg: url('assets/misc-dark.png') !important;
    --result-bg: url('assets/dots.png') !important;

    --border: #303030;

    --inventory-bg: rgb(38, 38, 38);
    --inventory-item-hover: rgb(45, 45, 45);
}
body.dark main {
    color: var(--font-colour);
}
body.dark .result {
    color: black;
}
body.dark .chat-message {
    color: var(--font-colour);
}
body.dark .roomItem h3 {
    color: var(--font-colour);
}
body.dark .roomItem .timer {
    color: var(--font-colour);
}
body.green {
    --accent: green;

    --ratings-accent: green;
    --travelling-accent: green;
    --shopping-accent: green;
    --gofundme-accent: green;
    --images-accent: green;
    --youtube-accent: green;
    --menu-bg: green !important;
    --room-item: green !important;
    --font-colour: red !important;
    
    --body-bg: green !important;
    --game-bg: green !important;
    --result-bg: green !important;

    --body-bg: url('assets/memphis-mini-dark.png') !important;
    --game-bg: url('assets/misc-dark.png') !important;
    --result-bg: url('assets/dots-dark.png') !important;

    background: green !important;
}
body.green * {
    background: green !important;
    color: purple !important;
    display: flex !important;
    float: left !important;
    font-family: brplem !important;
    font-weight: 900 !important;
    box-shadow: 0px 0px 50px #eb144c !important;
    text-shadow: 0px 0px 2px green !important;
    text-decoration: dotted !important;
    font-style: normal !important;
    overflow: unset !important;
    word-break: break-all !important;
    line-height: 2px !important;
    border: 5px solid #eb144c !important;
    font-size:larger !important;
    font-family: "Linefont", system-ui !important;
    border-radius: 100% !important;
    -webkit-text-stroke: 0.5px red !important;
    overflow: hidden !important;
    filter: invert(110%);
}
body.green script {
    display: none !important;
}

*:not(.fa-solid) {
    /*font-family: "Rubik", sans-serif;*/
    font-family: "Poppins", sans-serif;
}

main {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    text-align: center;
}

main h3 {
    margin: 0;
    margin-top: 30px;
    margin-bottom: 0px;
}
h3.title {
    margin: 0;
    margin-bottom: 30px;
    color: var(--accent);
    font-weight: 700;
    font-size: 25px;
    text-shadow: 1px 1px 0px black;

    animation-name: rotateText;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: ease-in-out;
}

@keyframes rotateText {
    0% {
        transform: rotate(-5deg);
    }
    50% {
        transform: rotate(5deg);
    }
    100% {
        transform: rotate(-5deg);
    }
}

.menu {
    background-color: var(--menu-bg);
    padding: 10px 30px;
    border-radius: 5px;
    border: var(--border) 1px solid;
    box-shadow: 0px 2px 2px black;
    display: flex;
    flex-direction: column;
    text-align: center;
    justify-content: center;
    align-items: center;
}
main .menu input {
    margin: 6px;
}

input {
    width: 100px;
    border: var(--border) 1px solid;
    box-shadow: 0px 2px 2px black;
    border-radius: 5px;
    padding: 5px;
}

input:focus-visible {
    outline: none;
}

.roomLayout {
    display: flex;
    justify-content: center;
    align-items: center;
}

.roomItem {
    min-width: 100px;
    padding: 1%;
    background-color: var(--room-item);
    border-radius: 5px;
    margin: 10px;
    height: 500px;
    border: var(--border) 1px solid;
    box-shadow: 0px 2px 2px black;
}

.lobbyList {
    width: 220px;
    text-align: left;
}
.lobbyListItem {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.lobbyList div {
    float: left;
    clear: both;
    vertical-align: middle;
}

.lobbyList .points {
    font-size: 13px;
    font-weight: 500;
}

.roomItem h3 {
    margin: 0;
    margin-bottom: 5px;
    font-size: 15px;
}

.you {
    color: var(--accent);
    font-weight: 500;
}

.host {
    font-weight: bold;
}

.gameItem {
    width: 800px;
    height: 600px;
}

.round-number {
    margin: 0;
}

.round-topic {
    color: white;
    font-weight: 900;
    -webkit-text-stroke: 3px black;
    margin: 0;
    font-size: 60px;
}

.game {
    width: 100%;
    height: 90%;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 5px;
    background: var(--game-bg);
    background-size: 200px;

    animation-name: example;
    animation-duration: 10s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    overflow: hidden;
    border: 2px solid var(--inventory-bg);
}

.promptBox {
    transform: translate(0, 100%);

    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

.promptBox button {
    margin: 10px;
}

.marquee {
    animation-name: marqueeLoop;
    animation-duration: 15s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    transform: translateX(120%);
}

@keyframes marqueeLoop {
    0% {
        transform: translateX(120%);
    }

    100% {
        transform: translateX(-120%);
    }
}

.marquee .finals {
    flex-direction: row;
    display: flex;
}

.show {
    animation-name: showBox;
    animation-duration: 0.7s;
    animation-timing-function: cubic-bezier();
    animation-fill-mode: forwards;
    filter: opacity(0%);
}

.promptBox.hide {
    animation-name: showBox;
    animation-duration: 0.4s;
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    animation-fill-mode: backwards;
    animation-direction: reverse;
}

.response-animate {
    animation-name: showResponse;
    animation-duration: 2s;
    animation-fill-mode: forwards;
    filter: opacity(0%);
    transform: translate(200%, 0%) scale(200%, 200%);
}

@keyframes showResponse {
    0% {
        filter: opacity(0%);
        transform: translate(200%, 0%);
    }

    50% {
        filter: opacity(0%);
        transform: translate(100%, 0%);
    }

    100% {
        filter: opacity(100%);
        transform: translate(0%, 0%);
    }
}

.noanim {
    animation-name: none !important;
}

.promptBox.noanim {
    transform: translate(0, 0);
}

.promptBox input {
    padding: 6px;
    margin-top: 5px;
    border: var(--border) 1px solid;
    box-shadow: 0px 2px 2px black;
    border-radius: 5px;
    width: 400px;
    font-size: 20px;
    background-color: var(--room-item);
}

.promptBox input[type="file"] {
    width: 260px;
    font-size: 15px;
}

.promptBox .message {
    background-color: var(--inventory-bg);
    border: 3px solid black;
    box-shadow: 4px 4px 0px black;
    text-align: left;
    padding: 10px;
    max-width: 90%;
    display: inline-block;
    border-radius: 4px;
}

.usericon {
    overflow: hidden !important;
    display: inline-grid;
    grid-template-columns: 1fr;
}
.chat .usericon {
    width: 25px;
    height: 25px;
    display: inline-grid;
    grid-template-columns: 1fr;
    vertical-align:middle;
    border: solid black 2px;
    background-color: white;
}
.usericon div {
    image-rendering: pixelated;
    background-size: 100%;
    width: 25px !important;
    height: 25px !important;
    grid-row-start: 1;
    grid-column-start: 1;
}
.menu .usericon {
    width: 50px !important;
    height: 50px !important;
}
.menu .usericon div {
    width: 50px !important;
    height: 50px !important;
    grid-row-start: 1;
    grid-column-start: 1;
}
.lobbyList .usericon {
    float: left;
    width: 25px !important;
    height: 25px !important;
    border: solid black 2px;
    background-color: white;
    display: inline-grid;
    margin-right: 2px;
    overflow: unset !important;
}
.lobbyList .usericon div {
    grid-row-start: 1;
    grid-column-start: 1;
}
.usericon .state {
    z-index: 999;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content:center;
    align-items: center;
    color: white;
    text-shadow: -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000;
    transform: translate(50%, 45%);
}
.state i {
    animation-name: rotateText;
    animation-duration: 1s;
    animation-iteration-count: infinite;
    animation-timing-function: ease-in-out;   
}
.outline {
    z-index: 20;
}
.accessory {
    z-index: 30;
}
.base {
    z-index: 1;
}
.mahoraga {
    z-index: 0; 
    animation-name: mahoragaSpin;
    animation-duration: 4s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}
.back {
    z-index: 0;
}
@keyframes mahoragaSpin {
    from {
        transform: translateY(-30%) rotate(0deg);
    }
    to {
        transform: translateY(-30%) rotate(360deg);
    }
}
.badge {
    image-rendering: pixelated;
    background-size: 100%;
    width: 15px !important;
    height: 15px !important;
    display: inline-block;
    vertical-align: middle;
}

.promptBox .message .username {
    font-weight: 700;
}

.promptBox .message .contents {
    font-size: 200%;
}

.promptBox .inputImage {
    background-color: white;
    border: 3px solid black;
    box-shadow: 4px 4px 0px black;
    text-align: left;
    padding: 10px;
    max-width: 90%;
    display: inline-block;
    text-align: center;
    border-radius: 4px;
}

.result {
    background-color: white;
    border: 3px solid black;
    box-shadow: 4px 4px 0px black;
    border-radius: 3px;
    text-align: left;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    background-image: var(--result-bg);
    animation-name: example;
    animation-duration: 10s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    animation-direction: reverse;
    width: 500px;
    margin: 20px;
    overflow: hidden;
}

.result .message {
    background-color: black;
    color: white;
    box-shadow: none;
    border: none;
    text-align: left;
    margin: 5px;
}

.result .message .contents {
    font-size: 15px;
    margin: 0px auto;
}

.contents {
    word-break: break-word;
}

.news {
    max-width: 60%;
}
.finals .news {
    width: 500px !important;
    max-width: 500px !important;
}

.header i {
    margin-right: 5px;
}

.news .header {
    background-color: var(--accent);
    color: white;
    font-style: italic;
    width: 100%;
    display: inline-block;
    font-size: 20px;
    font-weight: 900;
    text-align: left;
    text-indent: 2px;
    padding: 5px;
    -webkit-box-sizing: border-box;
    /* Safari/Chrome, other WebKit */
    -moz-box-sizing: border-box;
    /* Firefox, other Gecko */
    box-sizing: border-box;
    /* Opera/IE 8+ */
    text-shadow: 2px 2px 0px rgba(0, 0, 0, 0.363);
    font-family: "Rubik", sans-serif;
}
.ratings .header {
    background-color: var(--ratings-accent);
}
.travelling .header {
    background-color: var(--travelling-accent);
}
.shopping .header {
    background-color: var(--shopping-accent);
}
.gofundme .header {
    background-color: var(--gofundme-accent);
}
.images .header {
    background: var(--images-accent);
}
.youtube .header {
    background: var(--youtube-accent);
}
.youtube-timeline {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: rgb(46, 46, 46);
    padding: 12px;
}
.youtube-timeline i {
    color: white;
    font-size: 20px;
}
.youtube-bar {
    width: 90%;
    height: 10px;
    background: rgb(102,102,102);
    background: linear-gradient(180deg, rgba(102,102,102,1) 0%, rgb(59, 59, 59) 100%);
    border-radius: 5px;
    margin-left: 15px;
}

.youtube-box {
    box-shadow: 2px 4px 4px rgba(0, 0, 0, 0.363);
    border: solid gray 2px;
    background-color: white;
    border-radius: 5px;
}
.youtube-box-content {
    padding: 4px;
    display: inline-block;
}
.youtube-fill {
    height: 100%;
    width: 34%;
    background-color: red;
    background: rgb(255, 0, 0);
    background: linear-gradient(180deg, rgb(255, 90, 90) 0%, rgb(255, 0, 0) 100%);
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}
.youtube-thumb {
    background-color: rgb(255, 255, 255);
    width: 20px;
    height: 20px;
    float: right;
    transform: translate(50%, 0);
    border-radius: 100%;
    box-shadow: 0px 0px 5px black;
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
}
.youtube-inner-thumb {
    width: 60%;
    height: 60%;
    position: absolute;
    background-color: rgb(240, 240, 240);
    border-radius: 100%;
}

.news .title {
    padding: 5px;
    margin: 0;
    font-weight: bold;
    text-align: left;
    width: 97%;
}
.title span {
    word-break: break-word;
}
.news .opinion {
    font-weight: 400;
}

.flavour {
    font-weight: 800;
    filter: opacity(50%);
}

.news span {
    width: 97%;
}

.news .place {
    font-weight: 900;
    font-size: 30px;
}

.news .recommendation {
    font-size: 20px;
}

.news .place i {
    margin-right: 5px;
}

.reply-thing {
    padding-left: 5px;
}

img {
    object-fit: contain;
}

.result img {
    float: left;
    width: 140px;
    height: 140px;
    margin-right: 10px;
    border: 3px solid black;
    box-shadow: 3px 3px 0px black;
    border-radius: 5px;
    background-color: white;
}

.inputImage img {
    width: 200px;
    height: 140px;
    border: 3px solid black;
}
img.inputImage {
    width: 200px;
    height: 140px;
    border: 3px solid black;
}

.promptBox p {
    margin: 0;
    margin-top: 15px;
    margin-bottom: 5px;
}

.waitingFor span {
    background-color: white;
    padding: 3px 10px;
    border-radius: 10px;
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
body.dark .waitingFor span {
    background-color: rgb(37, 37, 37);
}
.waitingFor span .usericon {
    border: 2px solid black;
    background-color: white;
    width: 40px;
    height: 40px;
}
.waitingFor span .usericon div {
    width: 40px !important;
    height: 40px !important;
    grid-row-start: 1;
    grid-column-start: 1;
}
.pencil {
    z-index: 99999;
    transform: rotate(80deg);
    animation-name: pencilSpin;
    animation-duration: 0.2s;
    animation-iteration-count: infinite;
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19) ease-in-out;
}
@keyframes pencilSpin {
    0% {
        transform: translate(50%,40%) scale(70%) rotate(90deg);
    }
    50% {
        transform: translate(50%,40%) scale(70%) rotate(70deg);
    }
    100% {
        transform: translate(50%,40%) scale(70%) rotate(90deg);
    }
}

.timer {
    padding: 5px;
    display: block;
}

.tick {
    position: absolute;
    transform: translate(0%, 0%);
    display: none;
    width: 100%;
    height: 100%;
}
.tick .revealcheck {
    animation-name: revealCheck;
    animation-fill-mode: forwards;
    animation-duration: 0.3s;
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
@keyframes revealCheck {
    0% {
        transform: scale(0%);
    }
    100% {
        transform: scale(100%);
    }
}

.loading-img {
    margin-bottom: 10px;
    image-rendering: pixelated;
}

.tick i {
    font-size: 60px !important;
    background-color: white;
    border-radius: 100%;
    color: var(--accent);
    -webkit-text-stroke: 1.5px black;
}

.finals {
    width: 100%;
}
.finals-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 100%;
    margin: 0 auto;
    flex-wrap:wrap;
    text-align: center;
    flex-direction: row;
    width: 100%;
}

.finals .result {
    display: inline-flex;
    height: fit-content;
    margin: 5px;
    display: flex;
    overflow: hidden;
    text-align: left;
    width: 300px !important;
    height: fit-content;
    transform: scale(0.65);
    margin: -35px -50px;
}
.finals .result .opinion {
    font-size: 18px;
}
.finals .result .header {
    font-size: 15px;
}
.finals .result .username {
    font-size: 15px;
}
.finals .result .flavour {
    font-size: 15px;
}
.finals .result .travelling-box-addition {
    font-size: 12px;
}
.finals .result .place {
    font-size: 20px;
}

.finals .result:hover {
    filter: brightness(110%);
    cursor: pointer;
}

.finals .result:hover * {
    filter: opacity(100%);
}

.selected {
    filter: opacity(100%);
}

.selected .tick {
    z-index: 999;
    display: flex;
    justify-content: center;
    align-items: center;
}
.selected .tick i {
    font-size: 40px;
}

.finals-wrap *:not(.selected) {
    filter: opacity(85%);
}
.finals-wrap.revealVotes * {
    filter: opacity(100%) !important;
}

.usericon.punchline {
    transform: rotate(5deg);
    width: 75px !important;
    height: 75px !important;
    margin-left: 5px;
}
.result .overlay .usericon.punchline div {
    width: 75px !important;
    height: 75px !important;
}
.usericon.punchline div {
    width: 75px !important;
    height: 75px !important;
}

.finals-wrap .selected * {
    filter: opacity(100%);
}

.logo {

}

.finals.v2 .result .overlay {
    background: none;
    background-color: rgba(0, 0, 0, 0.534);
    width: 100%;
    height: 100%;
    z-index: 9999;
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    font-size: 22px;
}
.finals.v2 .result:hover {
    cursor: default;
}
.overlay .holdIcons {
    display: flex;
    justify-content: center;
    align-items: center;
}
.finals.v2 .result .overlay h2 {
    -webkit-text-stroke: 2.5px black;
    color: white;
    font-weight: 900;
    margin: 0;
}
.result .overlay .usericon:not(.punchline) {
    transform: rotate(-2deg);
}
.result .overlay .usericon.outlined {
    z-index: 999;
    outline: 4px white solid;
}
.result .overlay .usericon {
    width: 100px;
    height: 100px;
    background-color: white;
    border: 2px solid black;
    transition: 0.2s;
}
.result .overlay .usericon div {
    width: 100px !important;
    height: 100px !important;
}

button {
    background-color: var(--accent);
    border: none;
    padding: 5px;
    border-radius: 3px;
    font-weight: bold;
    color: white;
    border: solid black 2px;
    box-shadow: 3px 3px 0px black;
}

button.alt {
    background:none;
    outline: solid 2px var(--accent);
    border: none;
    color: var(--accent);
    background-color: var(--room-item);
    box-shadow: 3px 3px 0px var(--accent);
}

button:hover {
    cursor: pointer;
    filter: brightness(110%);
}
button.alt:hover {
    cursor: pointer;
    filter: brightness(110%);
}

.roomItem.chatItem {
    width: 300px;
}

.chat {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    height: 100%;
}

.chat-list {
    text-align: left;
    overflow: scroll;
    overflow-x: hidden;
}

.chat-message {
    width: 95% !important;
    font-size: 12px;
    word-break: break-word;
    overflow: hidden;
    margin-top: 2px;
    margin-bottom: 2px;
}

.chat-message .username {
    font-weight: 900;
}
.chat-message img { /*the devvvvel*/
    width: 100%;
    height: 100px;
}

.chat input {
    width: 250px;
    padding: 4px;
    margin-top: 5px;
    border: var(--border) 1px solid;
    box-shadow: 0px 2px 2px black;
    border-radius: 5px;
    background-color: var(--room-item);
    color: var(--font-colour);
}
button.gofundme {
    background-color: var(--gofundme-accent);
}
.ignore {
    filter: opacity(100%) !important;
}
.locked {
    filter: opacity(25%);
}
.locked input {
    pointer-events: none;
}
.capture {
    filter: opacity(50%);
    font-style: italic;
    display: inline-block;
    vertical-align: middle;
}
.capture i {
    margin-right: 5px;
}
.capture:hover {
    filter: opacity(75%);
}
.finals .capture {
    display: none !important;
}

.sorry {
    display: none;
}

@media screen and (max-width:650px) {
    .roomLayout {
        display: block !important;
    }

    .roomItem {
        width: 90vw;
        height: 85vh;
    }

    .hidemobile {
        display: none !important;
    }
}

.leavebtn {
    color: var(--accent);
}
.btn i.fa-gear {
    margin-left: 10px;
}
.btn i {
    width: max-content;
    height: max-content;
    background-color: var(--menu-bg);
    color: var(--font-colour);
    padding: 10px;
    margin-top: 10px;
    font-size: 15px;
    margin-left: 8px;
    border-radius: 100%;
    transition: 0.2s;
    border: 1px solid var(--border);
    box-shadow: 0px 2px 1px black;
}

.btn i:hover {
    cursor: pointer;
    color: white;
    background-color: var(--accent);
    transition: 0.2s;
}

.modal-overlay {
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.473);
    position: absolute;
    z-index: 9999;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-left: calc(var(--sidebar-width) / 2);
    user-select: none;
    flex-direction: column;
    display: none;
}

.modal {
    background-color: var(--room-item);
    color: var(--font-colour);
    border-radius: 3px;
    padding: 5px;
    border: var(--border) 1px solid;
    box-shadow: 0px 2px 2px black;
    min-width: 15vw;
    text-align: center;
    padding-bottom: 15px;
    max-width: 90%;
}

.show-modal {
    display: flex;
}

.show-modal .modal {
    transform: scale(0%, 0%);
    animation-name: showmodal;
    animation-duration: 0.3s;
    animation-fill-mode: forwards;
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    filter: opacity(0%);
}
.popAnim {
    transform: scale(0%, 0%);
    animation-name: showmodal;
    animation-duration: 0.s;
    animation-fill-mode: forwards;
    animation-timing-function: cubic-bezier(0,1.37,1,1.07) ease-in-out;
    filter: opacity(0%);
}

.closebtn {
    font-size: 20px;
    width: 20px;
    height: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 5px;
    border-radius: 100%;
    right: 5px;
    top: 5px;
    position: absolute;
}

.closebtn:hover {
    cursor: pointer;
    background-color: var(--inventory-bg);
}
.settings-sidebar {
    float: left;
    height: 100%;
    display: flex;
    flex-direction: column;
    text-align: left;
    margin-right: 20px;
}
.settings-sidebar span {
    font-weight: 800;
    margin: 2px;
    padding: 5px;
    border-radius: 2px;
}
.settings-sidebar span:hover {
    cursor: pointer;
    background-color: var(--accent);
}

.settings-main {
    text-align: left;
}
.settings-main h3 {
    text-align: center;
}
.setting {
    display: inline-block;
    vertical-align: middle;
    width: 75%;
}
.setting input {
    box-shadow: none;
    width: fit-content;
    float:right;
}

@keyframes showmodal {
    from {
        transform: scale(0%, 0%);
        filter: opacity(0%);
    }

    to {
        transform: scale(100%, 100%);
        filter: opacity(100%);
    }
}

@keyframes showBox {
    from {
        transform: translate(0, 100%);
        filter: opacity(0%);
    }

    to {
        transform: translate(0, 0%);
        filter: opacity(100%);
    }
}

@keyframes example {
    from {
        background-position: 0px 0px;
    }

    to {
        background-position: 200px 195px;
    }
}

/* custom boxes section */

.news-box {
    border-radius: 5px;
    border: solid gray 2px;
    background-color: white;
    padding: 5px;
    box-sizing: border-box;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.363);
    padding-top: 4px;
}
.ratings-box {
    width: 100%;
    padding: 5px;
    box-sizing: border-box;
}
.shopping-box {
    border-radius: 5px;
    border: solid gray 2px;
    background-color: white;
    padding: 5px;
    box-sizing: border-box;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.363);
    padding-top: 4px;
    margin: 5px;
    overflow: hidden;
    width: 90%;
}
.travelling-box {
    border-radius: 5px;
    border: solid gray 2px;
    background-color: white;
    padding: 5px;
    box-sizing: border-box;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.363);
    padding-top: 4px;
    width: 95%;
    margin: 5px;
}
.ratings-box-addition {
    display: block;
    margin-top: 5px;
    font-size: 13px;
    filter: opacity(70%);
}
.news-box-addition, .gofundme-box-addition, .shopping-box-addition, .travelling-box-addition {
    font-weight: 900;
    filter: opacity(50%);
    vertical-align: middle;
    font-style: italic;
    width: 100%;
    display: inline;
}
.travelling-box-addition {
    font-style: normal;
    font-size: 15px;
    display: inline-block;
}
.shopping-box-addition {
    filter: opacity(70%);
    display: inline-block;
}
.shopping-box .title {
    padding: 0;
    margin: 0;
}
.shopping-rating {
    color: var(--shopping-accent);
}
.cart {
    float: right;
    font-style: normal;
    color: white;
    background-color: black;
    width: fit-content !important;
    box-sizing: border-box;
    padding: 5px;
    border-radius: 5px;
    vertical-align: middle;
    background-color: var(--shopping-accent);
    filter: opacity(100%);
}
.cart i {
    margin-right:5px;
    font-size: 15px;
    vertical-align: middle;
}
.live {
    margin-right: 3px;
    font-size: 13px;
    vertical-align: middle;
    color: var(--accent);
}

.gofundme-box-addition {
    text-align: right;
    display: inline-block;
}
.price {
    font-style: normal;
    filter: opacity(90%);
    font-weight: 700;
    font-size: 20px;
}
.raised {
    font-weight: 800;
    filter: opacity(80%);
    font-style: normal;
}
.bar {
    width: 100%;
    height: 10px;
    background-color: rgb(214, 214, 214);
    margin: 5px 0px;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.363);
}
.bar .fill {
    width: 50%;
    height: 100%;
    background-color: var(--gofundme-accent);
}
.backing {
    font-size: 13px;
}

.showReceipt {
    animation-name: showReceipt;
    animation-duration: 0.5s;
    animation-timing-function: cubic-bezier( 0.46, 0.76, 0.92, 0.52) ease-out;
    animation-fill-mode:forwards;
    transform: translateX(120%);
}

@keyframes showReceipt {
    0% {
        transform: translate(0%, 100%);
    }

    100% {
        transform: translate(0%, 0%);
    }
}

.receipt {
    display: flex;
    background-color: white;
    position: absolute;
    bottom: 0;
    right: 55px;
    height: fit-content;
    padding: 5px;
    flex-direction: column;
    text-align: center;
    justify-content: center;
    align-items: center;
    padding: 10px 20px;
    background-color: #e6e6e6;
    background: url('/assets/paper.jpg');
    border-radius: 1px;
    box-shadow: 2px 2px 5px black;
}
.receipt .tm {
    vertical-align: top;
    font-size: 10px;
}
.receipt hr {
    border-color: black;
    width: 100%;
    filter: opacity(50%);
}
.receipt * {
    font-family: "Hypermarket W00 Regular", sans-serif !important;
    font-smooth: never !important;
    -webkit-font-smoothing: none !important;
}
.receipt h3 {
    margin: 0;
}
.receipt #receipt-list {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.receipt img {
    filter:grayscale(100%);
    image-rendering: pixelated;
}
.receipt .item {
    width: 160px;
    display: inline-block;
}
.item .item-name {
    float: left;
    max-width: 50%;
    overflow: hidden;
    word-break: keep-all;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.item .item-price {
    float: right;
}

.rooms-tbl {
    margin-top: 20px;
    margin-bottom: 10px;
    width: 100%;
    background-color: var(--inventory-bg);
    border-radius: 10px;
}
.rooms-tbl td {
    width: fit-content;
}
.rooms-tbl tr:hover {
    background-color: var(--inventory-item-hover);
    cursor: pointer;
}
.rooms-tbl button {
    box-shadow: none;
    width: 80%;
}
.room-players {
    width: 10px;
}
.room-host {
    text-align: left;
    text-indent: 10px;
}

#contain-icons {
    display: flex;
    flex-direction: column;
}
#contain-icons div {
    display: list-item !important;
}
.noshadow {
    box-shadow: none;
}

.flexcenter {
    display: flex;
    justify-content: center;
    align-items: center;
}
.flexcenter.confirmPurchase {
    flex-direction: column;
    padding: 5px;
    padding-top: 20px;
    padding-bottom: 20px;
    border-radius: 5px;
    background-image: url("/assets/stripes-light.png");

    animation-name: example;
    animation-duration: 10s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    animation-direction: reverse;
    box-shadow: 0px 0px 10px rgb(0, 0, 0);
    width: 400px;
}
.marketplaceConfirm {
    background:none;
    border: none;
    box-shadow: none;
    max-width: fit-content !important;
    width: 400px;
    min-width: 0;
}
.marketplaceConfirm .closebtn {
    right: 0;
    top: 10px;
}

body.dark .confirmPurchase {
    background-image: url("/assets/stripes-dark.png");
}
.confirmPurchase h3 {
    margin: 0;
}
.options {
    margin-top: 10px;
    margin-bottom: 5px;
}
.options button {
    margin-left: 10px;
    margin-right: 10px;
}
.marketContain {
    width: 610px;
    height: 360px;
    padding: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

.searchbar {
    background-color: var(--room-item);
    padding: 5px;
    border-radius: 5px;
    vertical-align: middle;
    border: var(--border) 1px solid;
    box-shadow: 0px 2px 2px black;
    display: block;
}
.searchbar input {
    box-shadow: none;
    border: none;
    border: 0;
    background-color: var(--lighter);
    padding: 5px;
    color: var(--darker);
    width: 80%;
}

.searchbar input:focus-visible {
    outline: none;
}

.searchbar i:hover {
    cursor: pointer;
}

.searchbar i {
    filter: opacity(50%);
}

.shopGrid {
    width: 100%;
    background-color: var(--menu-bg);
    height: 280px;
    margin-top: 10px;
    padding: 5px;
    border-radius: 5px;
    flex-wrap: wrap;
    display: flex;
    overflow: scroll;
    overflow-x: hidden !important;
    justify-content: center;
    flex-direction: row;
}
.shopItem {
    background-color: var(--room-item);
    padding: 5px;
    border-radius: 5px;
    width: 130px;
    max-width: 130px;
    height: fit-content;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    font-size: 12px;
    font-weight: 600;
    margin: 2px;

    box-shadow: 0px 1px 2px black;
    overflow: hidden;
}
.shopItem button {
    font-size: 10px;
    box-shadow: none;
}
.price {
    font-size: 10px;
    font-weight: 800;
}
.tag {
    font-size: 10px;
    font-weight: 900;
    font-style: italic;
}
.shopItem .inventoryItem {
    width: 50px;
    height: 50px;
}

.previewMessage {
    display: flex;
    justify-content: center;
    align-items: center;
}
.previewMessage .chat-message {
    width: 100% !important;
}
.equippedItem input {
    box-shadow: none;
}
input[type=checkbox] {
    width: fit-content;
    accent-color: var(--accent);
}
input {
    accent-color: var(--accent);
}

.reset {
    float: right;
    filter: opacity(50%);
    margin: 5px;
    width: 20px;
    height: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 15px;

}

.profile {
    justify-content: flex-start;
    align-items: flex-start;
    text-align: left;
    background-image: url("/assets/stripes-light.png");

    animation-name: example;
    animation-duration: 10s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    animation-direction: reverse;
}
body.dark .profile {
    background-image: url("assets/stripes-dark.png");
}
.marketContain.profile {
    height: fit-content;
}
.profileUsername {
    font-size: 30px;
    font-weight: 700;
}
.profile .badge {
    display: inline-block;
    vertical-align: baseline;
    width: 20px !important;
    height: 20px !important;
    margin-left: 5px;
}
.profile .usericon {
    width: 100px;
    height: 100px;
    background-color: white;
    border: 2px solid black;
    float: left;
    margin-right: 5px;
}
.profile .usericon div {
    width: 100px !important;
    height: 100px !important;
    grid-row-start: 1;
    grid-column-start: 1;
}

.stats {
    margin-left: 5px;
    background-color: var(--room-item);
    border-radius: 20px;
    padding: 5px 10px;
}
.shopItem .usericon {
    background-color: white;
    width: 50px;
    height: 50px;
    position: relative;
    overflow: unset !important;
    margin: 5px;
    justify-content: center;
    align-items: center;
}

.shopItem.rare {
    background-image: linear-gradient(0deg, var(--images-accent) 0%, var(--room-item) 35%);
    animation-name: animateGradientBG;
    animation-iteration-count: infinite;
    background-position: 0px 10px;
    background-repeat: no-repeat;
    border: 2px solid var(--images-accent);
    color: var(--images-accent);
}
.rare button {
    background-color: var(--images-accent);
}
.shopItem.uncommon {
    background-image: linear-gradient(0deg, var(--gofundme-accent) 0%, var(--room-item) 35%);
    animation-name: animateGradientBG;
    animation-iteration-count: infinite;
    background-position: 0px 10px;
    background-repeat: no-repeat;
    border: 2px solid var(--gofundme-accent);
    color: var(--gofundme-accent);
}
.uncommon button {
    background-color: var(--gofundme-accent);
}
.shopItem.epic {
    background-image: linear-gradient(0deg, var(--accent) 0%, var(--room-item) 40%);
    animation-name: animateGradientBG;
    animation-iteration-count: infinite;
    background-position: 0px 10px;
    background-repeat: no-repeat;
    border: 2px solid var(--accent);
    color: var(--accent);
}
.epic button {
    background-color: var(--accent);
}
.shopItem.legendary {
    background-image: linear-gradient(-20deg, var(--travelling-accent) 0%, var(--room-item) 50%);
    animation-name: animateGradientBG;
    animation-iteration-count: infinite;
    background-position: 0px 10px;
    background-repeat: no-repeat;
    border: 2px solid var(--travelling-accent);
    color: var(--travelling-accent);
}
.legendary button {
    background-color: var(--travelling-accent);
}

.shopItem {
    animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
    animation-duration: 4s;
}

@keyframes animateGradientBG {
    0% {
        background-position: 0px 20px;
    }
    50% {
        background-position: 0px 40px;
    }
    100% {
        background-position: 0px 20px;
    }
}

.shopItem span.itemDesc {
    font-size: 8px;
    filter: opacity(50%);
    font-style: italic;
    color: var(--font-colour);
}
.shopItem .usericon div {
    width: 50px !important;
    height: 50px !important;
    background: none;
    background-size: 100%;
    grid-row-start: 1;
    grid-column-start: 1;
}
body.dark input {
        background-color: var(--inventory-bg) !important;
        color: var(--font-colour);
}
.marketplacecart {
    display: flex;
}
.marketplacecart .usericon {
    background-color: white;
    border: 2px solid black;
    width: 50px;
    height: 50px;
    margin: 5px;
}
.marketplacecart .usericon div {
    width: 50px !important;
    height: 50px !important; 
    grid-row-start: 1;
    grid-column-start: 1;
}

.endingv2 {
    width: 100%;
    height: 100%;
}
.endingv2 .usericon {
    width: 100px;
    height: 100px;
    background-color: white;
    border: 2px solid black;
}
.endingv2 .usericon div {
    width: 100% !important;
    height: 100% !important;
    grid-row-start: 1;
    grid-column-start: 1;
}
.endingv2 h3,.endingv2 h2,.endingv2 h1 {
    margin: 0;
}
.burninggatesofhell {
    position: absolute;
    bottom: -100%;
    width: 100%;
    height: 100%;
    z-index: 9999999999;
    animation-name: gatesClose;
    animation-duration: 1s;
    animation-fill-mode: forwards;
}
.showgates {
    animation-name: gatesOpen;
    animation-duration: 1s;
    animation-fill-mode: forwards;
}
.thrown2hell {
    animation-name: throwIntoHell;
    animation-duration: 0.6s;
    animation-fill-mode: forwards;
    animation-timing-function: 
    cubic-bezier(0.6, -0.28, 0.735, 0.045);
}
.winnerReveal {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}
.winnerReveal .winnericon {
    margin: 10px;
}
.winnericon.sacrifice {
    width: 0px;
    height: 0px;
    border: 0px;
    margin: 0;

    transform: rotate(5deg);

    animation-name: hideSacrifice;
    animation-fill-mode: forwards;
    animation-duration: 0.3s;
}
.revealSacrifice {
    animation-name: revealSacrifice;
    animation-fill-mode: forwards;
    animation-duration: 0.3s;
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
@keyframes revealSacrifice {
    0% {
        width: 0px;
        height: 0px;
        border: 0px;
        margin: 0;
    }
    100% {
        width: 70px;
        height: 70px;
        border: 2px solid black;
        margin: 10px;
    }
}
@keyframes hideSacrifice {
    0% {
        width: 70px;
        height: 70px;
        border: 2px solid black;
        margin: 10px;
    }
    100% {
        width: 0px;
        height: 0px;
        border: 0px;
        margin: 0;
    }
}
@keyframes gatesOpen {
    from {
        bottom: -100%;
    }
    to {
        bottom: -40%;
    }
}
@keyframes gatesClose {
    from {
        bottom: -40%;
    }
    to {
        bottom: -100%;
    }
}
@keyframes throwIntoHell {
    0% {
        transform: translate(0,0) rotate(0deg) scale(100%);
    }
    1% {
        transform: translate(0,0) rotate(5deg) scale(100%);
    }
    100% {
        transform: translate(0,600%) rotate(10deg) scale(100%);
    }
}

.alreadyOwned {
    border: 0;
    background: none !important;
    color: var(--font-colour);
    font-style: italic;
    height: fit-content;
    width: fit-content;
    margin: 0 !important;
    padding: 0 !important;
}
.alreadyOwned:hover {
    cursor: unset;
}

.remove {
    color: var(--accent);
}
.shopItem .inventoryItem:hover {
    cursor: unset;
}

/*daily puzzl*/

.gridoverlay {
    display: grid;
}
.gridoverlay div {
    grid-row-start: 1;
    grid-column-start: 1;
}
.terminal {
    border-radius: 4px;
    background-color: black;
    color: #00ff00;
    width: 650px;
    height: 410px;
    text-align: left;
    padding: 10px;
    font-family: "VT323", monospace;
    text-shadow: 0px 0px 3px #00ff00;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;
    z-index: 9;
    overflow: hidden;
}
.square {
    vertical-align: middle;
    margin-right: 5px;
}
.actualpuzzle {
    display: flex;
    flex-direction: row;
}
.actualpuzzle div {
    display: flex;
    flex-direction: column;
    margin-right: 10px;
}
.terminal *:not(.fa-solid) {
    font-family: "VT323", monospace;
    font-size: 24px;
}
.lineContainer .detail {
    margin-right: 10px;
}
.line b {
    font-weight: normal;
}
.character:hover {
    background-color: #00ff00;
    color: black;
    text-shadow: none;
    box-shadow: 0px 0px 3px #00ff00;
    text-shadow: 0px 0px 2px black;
}
.results {
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
    width: 130px;
}
.actualpuzzle div.puzzleLogs {
    display: flex;
    flex-direction: column;
    max-height: 180px;
    overflow: hidden;
    justify-content: flex-end;
}
div.puzzleLogs * {
    font-size: 20px;
}
.overlay {
    width: 100%;
    height: 100%;
    color: white;
    border-radius: 4px;
    z-index: 999;
    background-image: url('assets/tvlines-better.png');
    background-size: 400%;

    animation-name: animateTVLines;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
    pointer-events: none;
}
.screen {
    width: 100%;
    height: 100%;
    color: white;
    border-radius: 4px;
    z-index: 99;
    background-image: radial-gradient(rgba(51, 51, 51, 0.322) 20%, rgba(0, 128, 0, 0) 50%, rgba(0, 0, 255, 0) 100%);
    background-position: 50px -100px;
    pointer-events: none;
} 
@keyframes animateTVLines {
    0% {
        background-position: 0px 0px;
    }
    100% {
        background-position: 0px 50px;
    }
}
.marketplaceConfirm.terminal {
    margin: 0;
    padding: 0;
}
.marketplaceConfirm.terminal .closebtn {
    color: #00ff00;
    z-index: 999;
    top: 5px;
    right: 5px;
}
.marketplaceConfirm.terminal .closebtn:hover {
    color: black;
    border-radius: 5px;
    background-color: #00ff00;
    box-shadow: 0px 0px 3px #00ff00;
}

.caret {
    height: 20px;
    width: 10px;
    display: inline-block;
    vertical-align:middle;
    background-color: #00ff00;
    box-shadow: 0px 0px 3px #00ff00;
    margin-left: 1px;

    animation-name: caretAnim;
    animation-duration: 1s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}
@keyframes caretAnim {
    0% {
        background-color: #00ff00;
        box-shadow: 0px 0px 3px #00ff00;
    }
    49% {
        background-color: #00ff00;
        box-shadow: 0px 0px 3px #00ff00;
    }
    50%{ 
        background-color: #000000;
        box-shadow: none;
    }
    99%{ 
        background-color: #000000;
        box-shadow: none;
    }
    100% {
        background-color: #00ff00;
        box-shadow: 0px 0px 3px #00ff00;
    }
}

.loading {
    width: 50px;
    height: 50px;
    filter: opacity(30%);

    animation-name: spinner;
    animation-duration: 0.8s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}
@keyframes spinner {
    0% {
        transform: rotate(0deg);
    }
    25% {
        transform: rotate(90deg);
    }
    50% {
        transform: rotate(180deg);
    }
    75% {
        transform: rotate(270deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

div.newbtn { 
    background-color: var(--menu-bg);
    border-radius: 5px;
    overflow: hidden;
    display: inline-grid;
    grid-template-columns: 1fr;
    font-weight: 900;
    border: 2px solid black;
    box-shadow: 0px 5px 0px black;

    transition: 0.2s;
    font-size: 20px;
}
div.newbtn.disabled {
    font-size: 18px;
    filter:contrast(50%);
}
div.newbtn.disabled:hover {
    cursor: unset;
    color: unset;
    font-size: 18px;
}
div.newbtn.disabled:hover .fill {
    animation-name: none;
}
div.newbtn:active {
    font-size: 18px;
}
div.newbtn:hover {
    cursor: pointer;
    color: white;
    transition: 0.2s;
    font-size: 22px;
}
div.newbtn:hover .fill {
    animation-duration: 0.2s;
    animation-name: fillbtn;
    animation-fill-mode: forwards;
}
div.newbtn * {
    display: table-row;
    grid-row-start: 1;
  grid-column-start: 1;
    width: 100%;
    height: 100%;
}
div.newbtn .fill {
    width: 100%;
    background: var(--menu-bg);
    height: 100%;
    transition: 0.2s;
}
.newbtn-content {
    padding-right: 20px;
    display: flex !important;
    justify-content: center;
    align-items: center;
}
.newbtn-content img {
    width: 30px;
    height: 30px;
    transform: translateY(10%);
    animation-name: spinner;
    animation-duration: 0.8s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    margin: 5px -2px
}

@keyframes fillbtn {
    0% {
        width: 0%;
        background: var(--accent);
    }
    100% {
        width: 100%;
        background: var(--accent);
    }
}

.introANIM {
    animation-name: introANIM;
    animation-duration: 2s;
    animation-fill-mode: forwards;
    height: 0%;
    background-color: red;
    display: block;
}

@keyframes introANIM {
    0% {
        height: 0%;
    }
    100% {
        height: 100%;
    }
}

.actualbutton {
    display: grid;
    grid-template-columns: 1fr;
    justify-items: center;
}
.actualbutton:hover {
    cursor: pointer;
}
.actualbutton:hover .toppart {
    filter: brightness(120%);
}
.actualbutton:hover .lowerpart {
    filter: brightness(120%);
}
.actualbutton:active .toppart {
    filter: brightness(80%);
    margin-top: 14px;
}
.actualbutton:active .lowerpart {
    display: none;
}
.actualbutton * {
    grid-row-start: 1;
    grid-column-start: 1;
}
.actualbutton .toppart {
    width: 50px;
    height: 20px;
    background-color: var(--accent);
    border-radius: 100%;
    border: 2px solid black;
    z-index: 5;
}
.actualbutton .lowerpart {
    width: 50px;
    height: 20px;
    background-color: var(--accent);
    border: 2px solid black;
    border-bottom-left-radius: 100%;
    border-bottom-right-radius: 100%;
    z-index: 4;
    margin-top: 12px;
}
.actualbutton .uppermetal {
    width: 75px;
    height: 20px;
    background-color: rgb(102,102,102);
    border-radius: 100%;
    border: 2px solid black;
    margin-top: 16px;
    z-index: 3;
}
.actualbutton .lowermetal {
    width: 75px;
    height: 20px;
    background-color: rgb(102,102,102);
    border: 2px solid black;
    border-bottom-left-radius: 100%;
    border-bottom-right-radius: 100%;
    z-index: 2;
    margin-top: 30px;
}