.osc-configurator {

    max-width: 700px;

    padding: 25px;

    border: 1px solid #dddddd;

    border-radius: 10px;

    background: #ffffff;

}


.osc-parametro {

    margin-bottom: 25px;

}


.osc-parametro label {

    display: block;

    font-weight: bold;

    margin-bottom: 8px;

}


.osc-parametro input[type="range"] {

    width: 60%;

    margin-right: 15px;

}


.osc-parametro input[type="number"] {

    width: 90px;

    padding: 5px;

}


#osc-genera-modello {

    padding: 12px 20px;

    margin-top: 10px;

    cursor: pointer;

}


#osc-stato {

    margin-top: 20px;

    margin-bottom: 15px;

    font-weight: bold;

}


#osc-download-area a {

    display: inline-block;

    padding: 10px 18px;

    border: 1px solid #333333;

    text-decoration: none;

}

#osc-viewer {

    width: 100%;

    height: 500px;

    margin-bottom: 20px;

    border: 1px solid #cccccc;

    border-radius: 8px;

    background: #eeeeee;

    position: relative;

    overflow: hidden;
}


#osc-viewer canvas {

    display: block;

    width: 100%;

    height: 100%;
}


#osc-viewer-messaggio {

    position: absolute;

    top: 50%;

    left: 50%;

    transform: translate(-50%, -50%);

    color: #666666;

    text-align: center;
}

.osc-viewer-toolbar {

    display: flex;

    flex-wrap: wrap;

    gap: 8px;

    margin-top: 20px;

    margin-bottom: 10px;
}


.osc-viewer-toolbar button {

    padding: 8px 14px;

    border: 1px solid #cccccc;

    border-radius: 5px;

    background: #ffffff;

    cursor: pointer;

}


.osc-viewer-toolbar button:hover {

    background: #f2f2f2;
}

.osc-viewer-help {

    margin-bottom: 8px;

    font-size: 13px;

    color: #666666;
}