/* GETS :root (WITH COLOR VARIABLES) FROM main.css */

/* Canvas for Visualization */
canvas {
    background-color: #1e1e1e;
    border: 2px solid #555;
    border-radius: 8px;
}

#canvasObj {
    width: 90vw;
    height: 30vh;
    opacity: 65%;
}

#notePreview {
    font-size: 35em;
    position: absolute;
    z-index: 2;
    font-weight: 900;
    opacity: 0.2;
    pointer-events: none;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    /*align-items: center;*/
    -webkit-transition: .5s;
    transition: opacity .5s;
}
/* 
.note-preview {
} */

.octave-preview {
    font-size: 0.3em;
    padding-top: 120px;
}

.octave-text {
    font-size: 0.3em;
}

#synthInterface {
    padding: 0;
    margin: 0;
}

/* Theremin Interface */
#thereminContainer {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 20px;
}

#thereminArea {
    width: 90vw;
    height: 35vh;
    background-color: #1e1e1e;
    border: 2px solid #555;
    border-radius: 8px;
    position: relative;
    cursor: crosshair;
    opacity: 65%;
}

#frequencyDisplay {
    position: absolute;
    z-index: -1;
    font-size: 15em;
    margin-top: 10px;
    font-weight: bold;
    color: var(--colorVar_terminalGreen);
    opacity: 30%;
    font-family: system-ui;
}

/* Base state: Color A */
.key {
    margin-right: 0.5%;
    cursor: pointer;
    font: bold 20px "Open Sans", "Lucida Grande", "Arial", sans-serif;
    height: 1em;
    width: 4%;
    text-align: center;
    display: inline-block;
    position: relative;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    background-color: var(--colorVar_terminalGreen); /* Color A */
    transition: background-color 0.2s ease;
}

/* Inner div styling */
.key div {
    position: absolute;
    bottom: 0;
    text-align: center;
    width: 100%;
    pointer-events: none;
}

/* Subscript styling */
.key div sub {
    font-size: 10px;
    pointer-events: none;
}

/* Hovered state: Color B */
.key.hovered {
    background-color: var(--colorVar_pinkAsFuckLight); /* Color B */
}

/* Pressed state: Color C */
.key.pressed {
    background-color: var(--colorVar_pinkAsFuck); /* Color C */
}

.left span, .left input {
    vertical-align: middle;
}

.shape {
    width: 50%;
    display: flex;
    padding: 0px 10px;
}

#waveShapeContainer {
    display: inline-flex;
    width: 90%;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    
}

.WaveShapeSelection {
    display: flex;
    border-radius: 100px;
    outline: 10px solid var(--colorVar_pinkAsFuck);
    margin: 20px;
}

.settingsBar span {
    padding: 0px 10px;
}

.InactiveWaveShape {
    -webkit-transition: .5s;
    transition: all .5s ease;
}

.ActiveWaveShape {
    -webkit-transition: .5s;
    background-color: var(--colorVar_pinkAsFuckTransparent);
    transition: all .5s ease;
}

.WaveLabel {
    display: none;
}

#userInputOverlay {
    z-index: 1;
    width: 100%;
    display: none;
    justify-content: center;
    padding-top: 10%;
    margin-bottom: 100%;
    background-color: #2c292d;
    padding: 25%;
    position: fixed;
}

    #userInputOverlay.visible {
        display: flex;
    }

#userInputOverlayMessage {
    width: 60%;
    font-size: xx-large;
    justify-items: center;
    font-style: italic;
    text-align: center;
}

#userInputOverlayMessage h1{
    margin-bottom: -0.6em;
    color: var(--colorVar_pinkAsFuck);
}
#userInputOverlayMessage h2{
    line-height: 0.69em;
    color: var(--colorVar_pinkAsFuckLight);
}


/* Responsive Design */
@media (max-width: 820px) {
    #thereminArea {
        width: 90%;
        height: 300px;
    }

    canvas {
        width: 90%;
        height: 150px;
    }

    #frequencyDisplay {
        font-size: 24px;
    }
}

.no-select {
    -webkit-user-select: none !important;
    -moz-user-select: none !important;
    -ms-user-select: none !important;
    user-select: none !important;
    -webkit-touch-callout: none !important;
    -webkit-tap-highlight-color: transparent !important;
}

.no-select * {
    -webkit-user-select: none !important;
    -moz-user-select: none !important;
    -ms-user-select: none !important;
    user-select: none !important;
    -webkit-touch-callout: none !important;
    -webkit-tap-highlight-color: transparent !important;
}

.no-select button,
.no-select .WaveShapeSelection {
    pointer-events: auto !important;
    cursor: pointer !important;
}
