/* Variables */

:root {
    --bg-color: rgb(44, 24, 114);
    --primary-color: rgb(235, 23, 235);
    --hover-color: rgb(127, 255, 206);

    --circle-color-01: rgba(23, 193, 235, 0.8);
    --circle-color-02: rgba(23, 235, 76, 0.8);
    --circle-color-03: rgba(255, 70, 193, 0.8);
    --circle-color-04: rgba(221, 235, 23, 0.8);
    --circle-color-05: rgba(255, 137, 101, 0.8);
}

/* App Layout */

.app {
    background-color: var(--bg-color);
    height: 100vh;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.app-body {
    flex-grow: 1;
    padding: 50px;
}

/* Test box Style */

.test-box {
    outline: 10px solid var(--primary-color);
    border-radius: 10px;
    position: relative;
    height: 100%;
    overflow: hidden;
}

/* Circle Style */

.test-circle {
    border: solid;
    position: absolute;
    top: 0;
    left: 0;
    transform: translate(-50%, -50%);
    aspect-ratio: 1;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    overflow: hidden;
}

.color-01 {
    color: var(--circle-color-01);
}

.color-02 {
    color: var(--circle-color-02);
}

.color-03 {
    color: var(--circle-color-03);
}

.color-04 {
    color: var(--circle-color-04);
}

.color-05 {
    color: var(--circle-color-05);
}


/* Obstacle Style */

.obstacle {
    background-color: var(--primary-color);
    border-radius: 5px;
    position: absolute;
    width: 300px;
    height: 200px;
    transform: translate(-50%, -50%);
    padding: 10px;
}

/* App Toolbar */

.app-toolbar {
    flex-shrink: 0;
    text-align: center;
    color: var(--primary-color);
    user-select: none;
    padding: 0 50px 40px 50px;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.toolbar-controls {
    width: 100%;
    max-width: 400px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    font-size: 30px;
}

.counter-value {
    margin-inline: 2%;
    width: 40px;
}

.obstacle-controls,
.circle-reload {
    flex-basis: 30%;
}

.control-base {
    width: 100%;
    max-width: 60px;
    aspect-ratio: 1;
    border: 1px solid;
    border-radius: 50%;
    position: relative;
    font-size: 20px;
}

.arrow {
    color: var(--bg-color);
    overflow: hidden;
    width: 100%;
    max-width: 20px;
    aspect-ratio: 1;
    font-size: 15px;
    background-color: var(--primary-color);
    border-radius: 50%;
    position: absolute;
    transform: translate(-50%, -50%);
    cursor: pointer;
    transition: 200ms all;
    display: flex;
    justify-content: center;
    align-items: center;
}

.arrow:hover {
    background-color: var(--hover-color);
}

.arrow.left {
    left: 0;
    top: 50%;
}

.arrow.up {
    left: 50%;
    top: 0
}

.arrow.right {
    left: 100%;
    top: 50%
}

.arrow.down {
    left: 50%;
    top: 100%
}


.toolbar-controls .button {
    cursor: pointer;
    transition: 200ms all;
}

.toolbar-controls .circle-counter.button:hover {
    color: var(--hover-color);
}


/* DEBUG */

.debug .app-body {
    border: 3px solid rgb(255, 127, 127);

}

.debug .app-toolbar {
    border: 3px solid rgb(115, 228, 115);

}

.debug .app-toolbar>* {
    border: 3px solid rgb(158, 255, 158);
}

.debug .obstacle-debug {
    background-color: var(--hover-color);
    border-radius: 5px;
    width: 100%;
    height: 100%;
}