.btn {
    border: none;
    font-weight: 700;
    font-size: 1rem;
    padding: 7px 7px;
    /* min-width: 240px; */
    border-radius: 120px;
    cursor: pointer;
    transition: 0.15s ease;
    letter-spacing: 2px;
    box-shadow: 0 10px 0 rgba(0, 0, 0, 0.5), 0 6px 20px rgba(0,0,0,0.5);
    text-transform: uppercase;
    /* display: inline-flex; */
    align-items: center;
    justify-content: center;
    /* gap: 10px; */
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: #b6d0f0;
    background: transparent;
    cursor: pointer;
}

@media (max-width: 450px) {
    .btn {
      font-size: 0.7rem;
    }
}

.btn:active {
    /* transform: translateY(6px); */
    box-shadow: 0 4px 0 rgba(0, 0, 0, 0.5);
}

.btn:focus-visible {
    outline: 3px solid white;
    outline-offset: 3px;
}

.btn-green {
    background: #1b8c5e;
    background: linear-gradient(145deg, #1faa6e, #136b47);
    color: white;
    text-shadow: 0 2px 0 #0a3f2a;
}

.btn-green:hover {
    background: #27c581;
    background: linear-gradient(145deg, #2ccf89, #188654);
    box-shadow: 0 10px 0 #09492e, 0 6px 22px #00c48c80;
}

.btn-red {
    background: #b13e4b;
    background: linear-gradient(145deg, #d45a68, #982b38);
    color: white;
    text-shadow: 0 2px 0 #5f1e26;
}

.btn-red:hover {
    background: #ec6b7a;
    background: linear-gradient(145deg, #f27d8b, #c03a48);
    box-shadow: 0 10px 0 #691e28, 0 6px 22px #ff6e80b0;
}

.btn:disabled {
    opacity: 0.4;
    /* transform: translateY(4px); */
    box-shadow: 0 5px 0 #1f1f1f;
    pointer-events: none;
    filter: grayscale(0.6);
}

.btn.selected {
    background: #253c59;
    border-color: #70a0ff;
    color: white;
}