@import url('https://fonts.googleapis.com/css2?family=Yellowtail&display=swap');

* {
    padding: 0;
    margin: 0 auto;
    box-sizing: border-box;
}

body {
    font-family: 'Yellowtail', cursive;
    background-color: #ddd;
    min-height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
}

.container {
    position: relative;
    width: 1200px;
    height: 800px;
}

.mandala {
    position: absolute;
    top: 0; left: 25px;
    width: 800px; height: 800px;
    background-color: white;
    border-radius: 50%;
    box-shadow: 5px 5px 10px #bbb;

    & .base {
        pointer-events: none;
        position: absolute;
        left: 0; top: 0;
        width: 800px; height: 800px;
        border-radius: 50%;
        opacity: 0;
        transition: opacity 0.5s;

        &.show {
            opacity: 1;
        }
    }
    
    & .draw {
        cursor: crosshair;
        position: absolute;
        left: 0; top: 0;
        width: 800px; height: 800px;
        border-radius: 50%;
    }
}

.controllers {
    position: absolute;
    top: 50%; left: 0;
    transform: translateY(-50%);
    padding: 0 1em 0 850px;
    border: 1px solid #fff;
    border-radius: 4px;
    width: 1200px;
    user-select: none;
    
    .control {
        font-size: 1.25em;
        display: block;
        width: 100%;
        padding: 1em;
        border-bottom: 1px solid #fff;
    }

    .input {
        font-family: 'Yellowtail', cursive;
        width: 100%;
        font-size: 1em;
        text-align: center;
    }

    .color {
        font-size: 1em;
        width: 100%;
        height: 2.5em;
        padding: 0;
    }

    label {
        display: block;

        &+label {
            margin-top: 0.5em;
        }
    }

    .buttons {
        padding: 1em 0;
        text-align: right;

        button {
            font-size: 1em;
            font-family: 'Yellowtail', cursive;
            background: none;
            border: 1px solid #fff;
            display: inline-block;
            padding: 0.5em;
            margin: 0.25em
        }
    }
}