@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;1,100;1,200;1,300;1,400;1,500;1,600;1,700&display=swap');



* {
	box-sizing: border-box;
	/* -webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale; */
}

body{
    width: 100%;
    margin: 0 auto;
    padding: 1em;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    font-size: 16px;
    max-width: 800px;
    background-color: #f7f6f3;
    font-family: "IBM Plex Sans";
    position: relative;
}

p{
    color: rgba(0,0,0,.6);
    line-height: 1.5;
}

header{
    display: flex;
    justify-content: space-between;
    align-items: baseline;
}

a{
    color: rgb(0, 53, 132);
    text-decoration: none;
    opacity: .7;
}

a:hover{
    opacity: 1;

}

/* 3x3 grid of tiles */
.game{
    border: 1px solid rgba(0,0,0,.1);
    background-color: #fff;
    padding: 16px;
    gap: 8px;
    display: grid;
    border-radius: 24px;
}

.tiles{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    width: 100%;
    margin: 0;
    padding: 0;
    border-radius: 8px;
    gap: 8px;
}

.tiles li{
    padding: 8px;
    list-style-type: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    aspect-ratio: 1 / 1;
    background-color: #eceae2;
    border-radius: 8px;
    transition: all .125s;
}

.tiles li:hover{
 background-color: #d9d7d0;
}

.tiles li:active{
    transform: scale(.95);
}

.tiles li.selected {
    background-color: #4a5860;
    color: #fff;
    color:aquamarine;
    background-color: #205758;
    border-radius: 10px;
}

.game ul{
    grid-template-columns: repeat(4, 1fr);
}


.actions{
    padding: 24px;
    display: flex;
    gap: 16px;
    align-items: center;
    justify-content: center;
}



.chances{
    display: flex;
    margin: 0;
    padding: 16px;
    justify-content: center;
    align-items: center;
    gap: 4px;
}

.chances p{
    padding-right: 8px;
    margin: 0;
    font-size: 14px;
}

.chances li{
    list-style: none;
    width: 12px;
    height: 12px;
    background-color: rgba(186, 205, 249);
    border: 1px solid rgba(186, 205, 249);
    border-radius: 100%;
    color: #fff;
    font-size: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.chances li.disabled{
    background-color: #f1f3ff;
    border: 1px solid rgba(186, 205, 249);
}

.correct{
    display: grid;
    gap: 8px;
}

.correct li{
    border: none;
    display: flex;
    background-color: transparent;
    pointer-events: none;
}

.difficulty-0{
    background-color: rgb(201, 240, 177);
}

.difficulty-1{
    background-color: rgb(255, 243, 170);
}

.difficulty-2{
    background-color: rgb(204, 230, 255);
}

.difficulty-3{
    background-color: rgb(210, 143, 255);
}

.form-group{
    padding: 8px;
    align-items: center;
}

input{
    border: transparent;
}

.form-group:nth-child(4n+1) input{
    background-color:  rgb(60, 179, 113,.25);
}

.form-group:nth-child(4n+2) input{
    background-color:  rgb(255, 232, 86,.5);
}

.form-group:nth-child(4n+3) input{
    background-color:  rgb(30, 144, 255,.25);
}

.form-group:nth-child(4n+4) input{
    background-color:  rgb(221, 160, 221,.5);
}


form .category{
    width: 100%;
    padding: 16px;
    border: none;
    border-radius: 8px;
    font-size: 1.25em;
}

form .tile{
    width: 100%;
    padding: 8px;
    list-style-type: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    aspect-ratio: 2 / 1;
    border-radius: 8px;
    text-align: center;
    font-size: 14px;
}

fieldset{
    border: 1px solid rgba(0,0,0,.1);
    background-color: #fff;
    padding: 8px;
    gap: 8px;
    display: grid;
    border-radius: 24px;
}

.form-group{
    display: flex;
    gap: 8px;
    flex-direction: row;
}

.inputs{
    display: grid;
    gap: 8px;
    width: 100%;
}

.button-group{
    display: flex;
    gap: 8px;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin-top: 16px;
}

button{
    background-color: #f1f3ff;
    border: none;
    padding: 1.25em;
    border:  1px solid rgba(186, 205, 249);
    min-width: 10em;
    border-radius: 2em;
    font-size: 16px;
    transition: all .5s;
}

button:hover{
    background-color: #e2e7fe;
}
1px solid rgba(186, 205, 249);
.drag-handle{
    height: 100%;
    display: flex;
    align-items: center;
}

.sortable-chosen{
    /* Apply the background color only when the element is being dragged */
    background-color: transparent;
}

.sortable-ghost{
    background-color: #f2f2f2!important;
}

.sortable-chosen{
    background-color: #fff;
    border-radius: 16px;
}

.group{
    border-radius: 8px;
    justify-content: center;
    position: relative;
}

.group h2{
    text-align: center;
    font-weight: 600;
    font-size: 14px;
    margin: 8px;
    padding: 8px;
    position: absolute;
    background-color: rgba(0,0,0,.1);
    border-radius: 8px;
}

.group ul{
    display: grid;
    gap: 8px;
    align-items: center;
    width: 100%;
    justify-content: center;
    margin: 0;
    padding: 0;
}

.group ul li{ 
    aspect-ratio: 1/1;
    justify-content: center;
    align-items: center;
    display: flex;
}


.notifications{
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    height: 0;
    z-index: 100;
}
.toast {
    background-color: #222;
    color: #eee;
    border: 1px solid rgb(37, 54, 82);
    box-shadow: 4px 0 16px rgba(0,0,0,.25);
    border-radius: 4px;
    text-align: center;
    padding: 8px 32px;
    margin: -8px 0 12px 0;
    transition: opacity 0.5s ease;
    opacity: 1;
    font-size: 16px;
    font-weight: 400;
    pointer-events: none;
}

.toast.fade-out {
    opacity: 0;
}


footer{
    padding: 8px;
    display: flex;align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 14px;
}

footer p{
    margin: 0;
    padding: 0;
}