@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@200..700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=PT+Serif:ital,wght@0,400;0,700;1,400;1,700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@400..900&display=swap');

.yso-menu {
    height: 40px;
    display: flex;
    align-items: end;
    width: 100%;
    justify-content: space-between;
}

.yso-menu-left {
    display: flex;
    align-items: end;
}
.yso-menu-right {
    display: flex;
    justify-content: end;

}

.yso-menu-item {
    margin-left: 0.5rem;
    margin-right: 0.5rem;
    padding: 0.5rem 1rem;
    border: 1px solid lightgray;
    border-radius: 0.25rem 0.25rem 0 0;
    background-color: lightgray;
    cursor: pointer;
}
.yso-menu-item-active {
    background-color: #ff6600;
    border-bottom: none;
    color: white;
}
.yso-menu-item:hover {
    background-color: #ff6600;
    color: white;
}

.yso-w-100 {
    width: 100%;
    position: relative;
}
.yso-w-50 {
    width: 50%;
}

#yso-settings {
    width: 100%;
    background-color: #e9e9e9;
    min-height: 450px;
}

.yso-container {
    width: 100%;
    max-width: 960px;
    margin: 0 auto;
    padding: 1rem 0;
}
.yso-d-none {
    display: none;
}
.yso-block {
    overflow-y: scroll;
    border-top: 1px solid lightgray;
    padding: 3rem 1rem;
}
#yso-view {
    background-color: #313131;
    height: 350px;
}
.yso-d-flex {
    display: flex;
}
.yso-justify-content-center {
    justify-content: center;
}
.yso-justify-content-between {
    justify-content: space-between;
}
.yso-align-items-center {
    align-items: center;
}
.yso-wrap {
    flex-wrap: wrap;
}
.yso-margin-x-auto {
    margin-left: auto;
    margin-right: auto;
}
.yso-mt-1rem {
    margin-top: 1rem;
}
.yso-input {
    padding: 0.5rem;
    border-radius: 0.25rem;
    border: 1px solid lightgray;
    margin-top: 0.5rem;
}
.yso-input:focus {
    border: 1px solid #ff6600;
    outline: none;
}
.yso-input:active {
    border: 1px solid #ff6600;
    outline: none;
}
.yso-input:hover {
    border: 1px solid #ff6600;
    outline: none;
}

.yso-label {
    font-weight: bold;
}
.yso-font-box {
    width: 100px;
    height: 100px;
    line-height: 100px;
    text-align: center;
    vertical-align: middle;
    font-size: 50px;
    border: 1px solid lightgray;
    background-color: white;
    overflow: hidden;
    border-radius: 0.25rem;
    margin: 1rem;
}
.yso-font-box:hover {
    border: 1px solid #ff6600;
}
.yso-font:hover {
    cursor: pointer;
}
.yso-font:hover .yso-font-label-box {
    color: #ff6600
}
.yso-font-selected .yso-font-box {
    border: 1px solid #ff6600;
}
.yso-font-selected .yso-font-label-box {
    color: #ff6600
}

.yso-font-label-box {
    text-align: center;
    margin-bottom: 0.5rem;
}

.yso-front-material-box {
    width: 100px;
    height: 100px;
    line-height: 100px;
    text-align: center;
    vertical-align: middle;
    font-size: 50px;
    border: 1px solid lightgray;
    background-color: white;
    overflow: hidden;
    border-radius: 0.25rem;
    margin: 1rem;
}
.yso-front-material-box:hover {
    border: 1px solid #ff6600;
}
.yso-front-material:hover {
    cursor: pointer;
}
.yso-front-material:hover .yso-front-material-label-box {
    color: #ff6600
}
.yso-front-material-selected .yso-front-material-box {
    border: 1px solid #ff6600;
}
.yso-front-material-selected .yso-front-material-label-box {
    color: #ff6600
}

.yso-front-material-label-box {
    text-align: center;
    margin-bottom: 0.5rem;
}

.yso-side-material-box {
    width: 100px;
    height: 100px;
    line-height: 100px;
    text-align: center;
    vertical-align: middle;
    font-size: 50px;
    border: 1px solid lightgray;
    background-color: white;
    overflow: hidden;
    border-radius: 0.25rem;
    margin: 1rem;
}
.yso-side-material-box:hover {
    border: 1px solid #ff6600;
}
.yso-side-material:hover {
    cursor: pointer;
}
.yso-side-material:hover .yso-side-material-label-box {
    color: #ff6600
}
.yso-side-material-selected .yso-side-material-box {
    border: 1px solid #ff6600;
}
.yso-side-material-selected .yso-side-material-label-box {
    color: #ff6600
}

.yso-side-material-label-box {
    text-align: center;
    margin-bottom: 0.5rem;
}

.yso-led-box {
    width: 100px;
    height: 100px;
    line-height: 100px;
    text-align: center;
    vertical-align: middle;
    font-size: 50px;
    border: 1px solid lightgray;
    background-color: white;
    overflow: hidden;
    border-radius: 0.25rem;
    margin: 1rem;
}
.yso-led-box:hover {
    border: 1px solid #ff6600;
}
.yso-led:hover {
    cursor: pointer;
}
.yso-led:hover .yso-led-label-box {
    color: #ff6600
}
.yso-led-selected .yso-led-box {
    border: 1px solid #ff6600;
}
.yso-led-selected .yso-led-label-box {
    color: #ff6600
}
.yso-led-label-box {
    text-align: center;
    margin-bottom: 0.5rem;
}

.yso-background-box {
    width: 100px;
    height: 100px;
    line-height: 100px;
    text-align: center;
    vertical-align: middle;
    font-size: 50px;
    border: 1px solid lightgray;
    background-color: white;
    overflow: hidden;
    border-radius: 0.25rem;
    margin: 1rem;
}
.yso-background-box:hover {
    border: 1px solid #ff6600;
}
.yso-background:hover {
    cursor: pointer;
}
.yso-background:hover .yso-background-label-box {
    color: #ff6600
}
.yso-background-selected .yso-background-box {
    border: 1px solid #ff6600;
}
.yso-background-selected .yso-background-label-box {
    color: #ff6600
}

.yso-background-label-box {
    text-align: center;
    margin-bottom: 0.5rem;
}


.yso-center {
    text-align: center;
}
.yso-flex-wrap {
    flex-wrap: wrap;
}

.yso-ff-roboto {
    font-family: "Roboto", sans-serif;
}
.yso-ff-open-sans {
    font-family: "Open Sans", sans-serif;
}
.yso-ff-oswald {
    font-family: "Oswald", sans-serif;
}
.yso-ff-pt-serif {
    font-family: "PT Serif", serif;
}
.yso-ff-orbitron {
    font-family: "Orbitron", sans-serif;
}
.yso-text-white {
    color: white;
}
.yso-text-center {
    text-align: center;
}
.yso-bg-brick {
    background-image: url('../Backgrounds/brick.png');
    background-repeat-x: repeat;
    background-repeat-y: repeat;
}
.yso-bg-concrete {
    background-image: url('../Backgrounds/concrete.png');
    background-repeat-x: repeat;
    background-repeat-y: repeat;
}

.yso-yellow {
    color: #FFEB3B;
}

.yso-float-end {
    padding: 1rem;
    float: right;
}

.yso-slider {
    appearance: none;
    width: 150px;
    height: 8px;
    background: linear-gradient(to right, #000, #fff);
    border-radius: 10px;
    cursor: pointer;
}

.yso-slider::-webkit-slider-thumb {
    appearance: none;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #333;
    cursor: pointer;
}

.ysoslider::-moz-range-thumb {
    width: 20px;
    height: 20px;
    border: 0;
    border-radius: 50%;
    background: #333;
    cursor: pointer;
}
.yso-button {
    color:  #ff6600;
    text-decoration: none;
}
.yso-list-text {
    width: 100%;
    text-align: center;
    font-weight: bold;
}

.yso-list-image {
    width: 150px;
    height: 150px;
    margin: 1rem;
}
.yso-list-image img {
    width: 100%;
    height: 100%;
}


@media (max-width: 768px) {

    .yso-list-image {
        width: 75px;
        height: 75px;
        margin: 1rem;
    }
    .yso-list-image img {
        width: 100%;
        height: 100%;
    }

    .yso-menu {
        height: 20px;
    }

    .yso-hide-sm {
        display: none;
    }
    .yso-w-80-sm {
        width: 80%;
    }
    .yso-menu-item {
        margin-left: 0.1rem;
        margin-right: 0.1rem;
        padding: 0.5rem 0.75rem;
        font-size: 0.6rem;
    }
    .yso-font-box {
        width: 75px;
        height: 75px;
        line-height: 75px;
        text-align: center;
        vertical-align: middle;
        font-size: 40px;
        border: 1px solid lightgray;
        background-color: white;
        overflow: hidden;
        border-radius: 0.25rem;
        margin: 0.5rem;
    }

    .yso-background-box {
        width: 75px;
        height: 75px;
        line-height: 75px;
        text-align: center;
        vertical-align: middle;
        font-size: 40px;
        border: 1px solid lightgray;
        background-color: white;
        overflow: hidden;
        border-radius: 0.25rem;
        margin: 0.5rem;
    }

    .yso-front-material-box {
        width: 75px;
        height: 75px;
        line-height: 75px;
        text-align: center;
        vertical-align: middle;
        font-size: 40px;
        border: 1px solid lightgray;
        background-color: white;
        overflow: hidden;
        border-radius: 0.25rem;
        margin: 0.5rem;
    }

    .yso-side-material-box {
        width: 75px;
        height: 75px;
        line-height: 75px;
        text-align: center;
        vertical-align: middle;
        font-size: 40px;
        border: 1px solid lightgray;
        background-color: white;
        overflow: hidden;
        border-radius: 0.25rem;
        margin: 0.5rem;
    }

    .yso-led-box {
        width: 75px;
        height: 75px;
        line-height: 75px;
        text-align: center;
        vertical-align: middle;
        font-size: 40px;
        border: 1px solid lightgray;
        background-color: white;
        overflow: hidden;
        border-radius: 0.25rem;
        margin: 0.5rem;
    }

    #yso-view {
        height: 250px;
    }
    #yso-settings {
        min-height: 0;
    }

    .yso-slider {
        appearance: none;
        width: 50px;
    }
}

@media (min-width: 1200px) {
    .yso-container {
        width: 100%;
        max-width: 1140px;
    }
}

@media (min-width: 1400px) {
    .yso-container {
        width: 100%;
        max-width: 1320px;
    }
}

