/**   Software di modellazione 3D ScholastiCAD
 *    
 *    Basato su: SugarCAD - Copyright (C) 2017 Alessandro Ferrini (INDIRE) - a.ferrini@indire.it
 *    ScholastiCAD - Copyright (C) 2026 Stefano Colarelli - stefano.colarelli@educational.city
 *    Licenza: GNU Affero General Public License v3
 *    Vedi LIBRERIE_E_LICENZE.md per dettagli completi su licenze e riferimenti
 *
 *    This program is free software: you can redistribute it and/or modify
 *    it under the terms of the GNU Affero General Public License as
 *    published by the Free Software Foundation, either version 3 of the
 *    License, or (at your option) any later version.
 *
 *    This program is distributed in the hope that it will be useful,
 *    but WITHOUT ANY WARRANTY; without even the implied warranty of
 *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *    GNU Affero General Public License for more details.
 *
 *    You should have received a copy of the GNU Affero General Public License
 *    along with this program.  If not, see <http://www.gnu.org/licenses/>.
**/

@font-face {
    font-family: 'sugarcad';
    src:  url('../fonts/sugarcad/sugarcad.eot?gkczkb');
    src:  url('../fonts/sugarcad/sugarcad.eot?gkczkb#iefix') format('embedded-opentype'),
        url('../fonts/sugarcad/sugarcad.ttf?gkczkb') format('truetype'),
        url('../fonts/sugarcad/sugarcad.woff?gkczkb') format('woff'),
        url('../fonts/sugarcad/sugarcad.svg?gkczkb#sugacad') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

[class^="sc-"], [class*=" sc-"] {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'sugarcad' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.sc-envelope:before {
    content: "\e90b";
}
.sc-align:before {
    content: "\e90a";
}
.sc-alias:before {
    content: "\e904";
    font-size: 10px;
}
.sc-antialias:before {
    content: "\e905";
    font-size: 10px;
}

/* Icone themify rimosse - ora usiamo SVG */
.sc-fullscreen:before {
    content: "\e907";
}
.sc-fullscreenexit:before {
    content: "\e908";
}
/* Icone themify rimosse - ora usiamo SVG */

*:not(input){
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-user-drag: none;
    user-drag: none;
}

.login-page *{
    -webkit-user-select: auto;
    -khtml-user-select: auto;
    -moz-user-select: auto;
    -ms-user-select: auto;
    user-select: auto;
}

.login-page ::-webkit-input-placeholder { /* Chrome/Opera/Safari */
    text-transform: lowercase;
}

.login-page ::-moz-placeholder { /* Firefox 19+ */
    text-transform: lowercase;
}

.login-page :-ms-input-placeholder { /* IE 10+ */
    text-transform: lowercase;
}

.login-page :-moz-placeholder { /* Firefox 18- */
    text-transform: lowercase;
}

html{
    background:#f0efee;
    margin: 0;
    padding: 0;
    height: 100vh;
    overflow: hidden; /* Previene scrollbar e spazio bianco */
}

body{
    margin: 0;
    padding: 0;
    font-family:'Lato';
    position:relative;
    width:100%;
    height:100vh;
    overflow:hidden; /* Previene scrollbar e spazio bianco */
    background:#f0efee;
}

::selection {
  background: rgb(130,96,98);
  color:#fff;
}
::-moz-selection {
  background: rgb(130,96,98);
  color:#fff;
}

input::selection{
    background:#e2e2e2;
    color:#333;
}

input::-moz-selection{
    background:#e2e2e2;
    color:#333;
}

.blocklyText{
    font-size: 14px !important; 
}

#main.dragging *{
    cursor: url(images/grabbing.cur);
    cursor: -webkit-grabbing;
    cursor: -moz-grabbing;
    cursor: grabbing;
}

.logo-container{
    background: #f8448f;
    background:
        linear-gradient(135deg, rgba(255,255,255,0.16) 0%, rgba(255,255,255,0) 42%),
        linear-gradient(160deg, #f8448f 0%, #e83782 52%, #c72c72 100%);
    position:fixed;
    width:100%;
    min-height:100vh;
    height:100%;
    z-index:9;
}

/* Nuovo layout splash page */
.logo-container {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.splash-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 100%;
    max-width: 800px;
    padding: 20px;
    box-sizing: border-box;
    color: #fff;
}

.splash-title {
    font-family: 'Montserrat', sans-serif; /* Montserrat se disponibile subito, altrimenti sans-serif (no flash) */
    font-size: 48px;
    font-weight: 400;
    color: #fff;
    margin-bottom: 30px;
    line-height: 1.2;
    text-shadow: 0 2px 18px rgba(107, 15, 64, 0.22);
}

.splash-title-main {
    font-weight: 400;
}

.splash-title-bold {
    font-weight: 700;
}

.splash-title-by {
    font-weight: 400;
    font-size: 0.6em;
    margin-left: 8px;
    color: rgba(255,255,255,0.78);
}

.splash-logo {
    width: 100%;
    max-width: 450px; /* Aumentato per dare più spazio */
    margin: 0 auto 30px;
    padding: 0 50px; /* Spazio aggiuntivo a sinistra e destra per i bracci */
    box-sizing: border-box;
    overflow: visible; /* Permette al contenuto di uscire dal contenitore */
}

.splash-logo svg {
    width: calc(100% - 0px); /* Compensa il padding del contenitore */
    height: auto;
    display: block;
    overflow: visible; /* Permette al contenuto SVG di essere visibile anche fuori dai bordi */
    margin: 0 -50px; /* Offset negativo per compensare il padding e permettere overflow */
}

.splash-logo svg .st0 {
    fill: rgba(255,255,255,0.96);
}

.splash-logo svg .st1 {
    fill: rgba(255,255,255,0.72);
}

/* Animazione braccia del compasso */
/* Il perno è a x=75.48, y=27.68 nel viewBox 391.24x209.52 */
/* Percentuale: x=75.48/391.24=19.3%, y=27.68/209.52=13.2% */
#braccio_dx {
    transform-origin: 19.3% 13.2%;
    animation: rotateCompassArm 2s ease-in-out infinite;
    animation-direction: alternate;
}

#braccio_sx {
    transform-origin: 19.3% 13.2%;
    animation: rotateCompassArm 2s ease-in-out infinite;
    animation-direction: alternate-reverse;
}

@keyframes rotateCompassArm {
    0% {
        transform: rotate(-10deg); /* Interno: 15 gradi verso l'interno */
    }
    100% {
        transform: rotate(10deg); /* Esterno: 10 gradi verso l'esterno */
    }
}

.splash-tagline {
    font-family: 'Montserrat', sans-serif; /* Montserrat se disponibile subito, altrimenti sans-serif (no flash) */
    font-size: 18px;
    font-weight: 400;
    color: rgba(255,255,255,0.82);
    margin-top: 20px;
    text-shadow: 0 2px 14px rgba(107, 15, 64, 0.2);
}

/* Responsive */
@media (max-width: 768px) {
    .splash-title {
        font-size: 32px;
    }
    
    .splash-logo {
        max-width: 300px;
    }
    
    .splash-tagline {
        font-size: 16px;
    }
}

@media (max-width: 480px) {
    .splash-title {
        font-size: 24px;
    }
    
    .splash-logo {
        max-width: 250px;
    }
    
    .splash-tagline {
        font-size: 14px;
    }
}

.logo-container .size-msg{
    display:none;
    margin: 0 auto;
    position: relative;
    width: 350px;
    font-size: 16px;
    text-align: center;
    margin-top: 350px;
    color: rgba(255,255,255,0.88);
}

@media
    only screen and (-webkit-min-device-pixel-ratio: 2),
    only screen and (   min--moz-device-pixel-ratio: 2),
    only screen and (     -o-min-device-pixel-ratio: 2/1),
    only screen and (        min-device-pixel-ratio: 2){ 

        .logo-container .logo{
            background-image:url("../img/logo2x.png");
        }
    
}



.total{
    position:relative;
    -webkit-transition:opacity 0.3s ease-in;
    transition:opacity 0.3s ease-in;
    opacity:1;
    z-index:10;
    width:100vw;
    height:100vh;
}

.total.hided{
    opacity:0;
    z-index:-100;
}



@media (max-width: 767px){
    .logo-container .logo{
        background-size:350px 253px;
        width:350px;
        height:253px;
        top:30px;
        left:calc(50% - 175px);
        position: absolute;
    }
    
    .logo-container .size-msg{
        display:block;
    }
    
    .total{
        opacity:0;
        z-index:-100;   
    }
}

body.noscroll{
    overflow: hidden;
}

canvas{
    width: 100%;
    height: 100%;
}

.btn-default:focus, .btn-default.focus{
    background : #e7e7e7;
    color:#333;
    border-color: #cccccc;
}

.btn.activeOn{
    background-color: #6fd4e4 !important;
    border-color: #6fd4e4 !important;
}

.btn-default.disabled, 
.btn-default[disabled], 
fieldset[disabled] .btn-default, 
.btn-default.disabled:hover, 
.btn-default[disabled]:hover, 
fieldset[disabled] .btn-default:hover, 
.btn-default.disabled:focus, 
.btn-default[disabled]:focus, 
fieldset[disabled] .btn-default:focus, 
.btn-default.disabled.focus, 
.btn-default[disabled].focus, 
fieldset[disabled] .btn-default.focus, 
.btn-default.disabled:active, .btn-default[disabled]:active, 
fieldset[disabled] .btn-default:active, 
.btn-default.disabled.active, 
.btn-default[disabled].active, 
fieldset[disabled] .btn-default.active {
    background-color: #e7e7e7;
    border-color: #cccccc;
    opacity: 0.4 !important;
}



.eyeActive{
    color:rgb(130,96,98) !important;
}

.transform-label .input-number,
.ruler-label .input-number{
    width:60px;
    display:none;
}

/* Stili per TapeMeasure */
.tape-measure-label {
    position: absolute;
    pointer-events: none;
    z-index: 2; /* Sopra draw-area (z-index: 1), sotto tools-area (z-index: 3) */
    background-color: rgba(70, 123, 140, 0.8); /* Nessun background per label definitivi */
    color: white;
    padding: 2px 6px;
    border-radius: 3px;
    font-size: 12px;
    font-family: Arial, sans-serif;
    white-space: nowrap;
    transform: translate(-50%, -50%);
}

.tape-measure-label.temp {
    background-color: rgba(70, 123, 140, 0.5); /* Background con opacità 80% solo per label temporanei */
}

.tape-measure-number {
    font-weight: bold;
}

.tape-measure-unit {
    margin-left: 2px;
    font-size: 10px;
    opacity: 0.9;
}

.form-group .checkbox label, .form-group .radio label, .form-group label {
    color: #4a4a4a;
}

input[type=number]{
    -moz-appearance: textfield;
}

input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button { 
  -webkit-appearance: none;
  margin: 0; /* Removes leftover margin */
}

.transform-label.active .input-number,
.ruler-label.activeOn .input-number{
    display:inline-block;
    color:#467b8c;
}

.transform-label.active,
.ruler-label.activeOn{
    z-index:20;
}

.transform-label.active .measure-number,
.ruler-label.activeOn .measure-number{
    display:none;
}

.transform-label .measure-unit,
.ruler-label .measure-unit{
    width:25px;
    font-size: 14px;
    line-height:18px;
    display: inline-block;
    vertical-align:middle;
    height:18px;
    color:#333;
}

.transform-label .measure-number,
.ruler-label .measure-number{
    font-size: 14px;
    line-height:18px;
    display: inline-block;
    vertical-align:middle;
    height:18px;
    color:#333;
}

.transform-label .measure-number:hover,
.transform-label .measure-number:active,
.ruler-label .measure-number:hover,
.ruler-label .measure-number:active{
    cursor:pointer;
}

.dropdown-submenu {
    position:relative;
}
.dropdown-submenu>.dropdown-menu {
    top:0;
    left:100%;
    margin-top:-6px;
    margin-left:-1px;
    -webkit-border-radius:0 6px 6px 6px;
    -moz-border-radius:0 6px 6px 6px;
    border-radius:0 6px 6px 6px;
}
.dropdown-submenu:hover>.dropdown-menu {
    display:block;
}
.dropdown-submenu>a:after {
    display:block;
    content:" ";
    float:right;
    width:0;
    height:0;
    border-color:transparent;
    border-style:solid;
    border-width:5px 0 5px 5px;
    border-left-color:#cccccc;
    margin-top:5px;
    margin-right:-10px;
}
.dropdown-submenu:hover>a:after {
    border-left-color:#ffffff;
}
.dropdown-submenu.pull-left {
    float:none;
}
.dropdown-submenu.pull-left>.dropdown-menu {
    left:-100%;
    margin-left:10px;
    -webkit-border-radius:6px 0 6px 6px;
    -moz-border-radius:6px 0 6px 6px;
    border-radius:6px 0 6px 6px;
}

.dropdown-submenu>.dropdown-menu{
    margin-top: 0px;
    margin-left: 0px;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
}

.input-number{
    display:inline-block;
    vertical-align: middle;
    height:30px;
    border:0px;
    background:rgba(255,255,255,0.8);
    color:#333;
    line-height:30px;
    font-size:14px;
    padding: 0px 5px;
    box-sizing: border-box;
    -webkit-box-shadow:0 1px 7px 0 rgba(0,0,0,0.2);
    box-shadow:0 1px 7px 0 rgba(0,0,0,0.2);
}

.measure-unit{
    display:inline-block;
    vertical-align: middle;
    height:30px;
    line-height:30px;
    margin-left:5px;
}

.input-number:hover,
.input-number:active,
.input-number:focus{
    outline:0;
    background:rgba(255,255,255,1);
}

.transform-label,
.ruler-label{
    position: absolute;
    display: none;
    height:30px;
    color:#333;
    font-size:16px;
    z-index:14;
}

.ruler-label{
    background: rgba(255,255,255,0.58);
    border: 1px solid rgba(255,255,255,0.82);
    border-radius: 4px;
    padding: 3px 6px;
    pointer-events: auto;
}

.transform-label.active,
.ruler-label.active{
    z-index:15;
}

.ruler-label.ruler-label-object{
    z-index: 13;
    pointer-events: auto;
}

.ruler-label.ruler-label-object .measure-number{
    color:#2f7ea1;
    opacity:0.95;
}

.ruler-label.activeOn{
    background: rgba(255,255,255,0.96);
    border-color: rgba(255,255,255,1);
}

.transform-label.show{
    display:block;
}

.license-frame{
    width:100%;
    border:0;
    min-height:300px;
    margin: 20px 0;
}

#cam-control{
    position: absolute;
    right: 5px;
    top: 5px;
    width: 120px;
    font-size: 14px;
    z-index: 1;
    display:none;
}

#cam-control .cam-control-body {
    position: absolute;
    border: 0px;
    cursor: default;
    -webkit-box-shadow: 0 1px 5px 0 rgba(0,0,0,0.3);
    box-shadow: 0 1px 5px 0 rgba(0,0,0,0.3);
    -moz-user-select: -moz-none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    user-select: none;
    background: -moz-linear-gradient(-45deg,  rgba(32,34,36,0.7) 0%, rgba(48,56,64,0.7) 100%);
    background: -webkit-linear-gradient(-45deg,  rgba(32,34,36,0.7) 0%,rgba(48,56,64,0.7) 100%);
    background: linear-gradient(135deg,  rgba(32,34,36,0.7) 0%,rgba(48,56,64,0.7) 100%);
    right:10px;
}

#cam-control #cam-control-rot {
    right: 5px;
    top: 55px;
    width: 120px;
    height: 120px;
    -webkit-border-radius: 60px;
    -moz-border-radius: 60px;
    border-radius: 60px;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box
}

#cam-control #cam-control-center {
    left: 18px;
    top: 68px;
    width: 24px;
    height: 24px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box
}

#cam-control #cam-control-center.disabled {
    opacity: .2
}

#cam-control #cam-control-zoom {
    right: 45px;
    top: 185px;
    width: 40px;
    height: 90px;
    text-align: center;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    font-family: 'Lato', Helvetica, Arial, sans-serif;
    font-weight: 600;
    font-size:30px;
}

#cam-control #cam-control-help {
    position: absolute;
    left: 65px;
    top: -5px;
    width: 16px;
    height: 16px;
    
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    font-family: 'Lato', Helvetica, Arial, sans-serif;
    font-weight: normal;
    border: 1px solid rgba(0, 0, 0, 0.1);
    cursor: default;
    color: rgba(0, 0, 0, 0.4);
    -moz-user-select: -moz-none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    user-select: none
}
#cam-control #cam-control-help:hover {
    border: 1px solid rgba(0, 0, 0, 0.2);
    background-color: rgba(0, 192, 255, 0.2)
}
#cam-control .cam-control-but {
    position: absolute;
    text-align: center;
    cursor: default;
    color: #c0c0c0;
    text-shadow: 0 0 2px rgba(0, 0, 0, 0.9);
    -moz-user-select: -moz-none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    user-select: none;
     width: 40px;
    height: 40px;
    line-height: 40px;
}

.cam-control-but i{
    font-size:40px;
    width:40px;
    height:40px;
    text-align:center;
    line-height: 40px;
    opacity:.7;
}

#cam-control .cam-control-but:hover {
    color: #fff;
    text-shadow: 0 0 3px #fff;
    cursor: pointer
}
#cam-control .cam-control-but:active {
    color: #fff;
    text-shadow: 0 0 8px #fff
}
#cam-control #cam-control-N {
    left: 40px;
    top: 0;
    -webkit-transform:rotateZ(-90deg);
    -moz-transform:rotateZ(-90deg);
    -ms-transform:rotateZ(-90deg);
    -o-transform:rotateZ(-90deg);
    transform:rotateZ(-90deg);
}
#cam-control #cam-control-E {
    left: 80px;
    top: 40px;
}

#cam-control #cam-control-S {
    left: 40px;
    top: 80px;
    -webkit-transform:rotateZ(90deg);
    -moz-transform:rotateZ(90deg);
    -ms-transform:rotateZ(90deg);
    -o-transform:rotateZ(90deg);
    transform:rotateZ(90deg);
}
#cam-control #cam-control-W {
    left: 0;
    top: 40px;
    -webkit-transform:rotateZ(180deg);
    -moz-transform:rotateZ(180deg);
    -ms-transform:rotateZ(180deg);
    -o-transform:rotateZ(180deg);
    transform:rotateZ(180deg);
}
#cam-control #cam-control-C {
    left: 40px;
    top: 40px;
}
#cam-control #cam-control-C:hover {
    opacity: 1.0
}
#cam-control #cam-control-CS {
    width: 24px;
    height: 24px;
    line-height: 24px;
    background-image: url('/img/editor-toolbar-icons.png');
    background-position: -444px -12px;
    opacity: .8
}
#cam-control #cam-control-CS:hover {
    opacity: 1.0
}
#cam-control #cam-control-P {
    left: 0;
    top: 0;
    width: 40px;
    height: 45px;
    line-height: 45px;
    border-bottom: 1px solid rgba(0,0,0,0.15);
    font-size:30px;
    text-decoration:none;
}
#cam-control #cam-control-M {
    left: 0;
    top:0px;
    width: 40px;
    height: 45px;
    line-height: 30px;
    font-size:30px;
    text-decoration:none;
}
#cam-control #cam-control-H {
    left: 0;
    top: 0;
    width: 16px;
    height: 16px;
    line-height: 16px;
    position: absolute;
    text-align: center;
    cursor: default;
    -moz-user-select: -moz-none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    user-select: none
}
#cam-control #cam-control-H:hover {
    color: rgba(0, 0, 0, 0.7)
}

.export-category {
	margin-bottom: 25px;
	padding-bottom: 20px;
	border-bottom: 1px solid #e0e0e0;
}

.export-category:last-child {
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0;
}

.export-category-title {
	font-weight: 500;
	margin-bottom: 12px;
	color: #333;
	font-size: 14px;
}

.flexbox-container {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.flexbox-container .export-option{
    border: 1px solid #dfe3e8;
    border-radius: 3px;
    text-align: center;
    cursor: pointer;
    transition: border .3s, background .3s, color .3s, box-shadow .3s;
    display:block;
    width: calc(50% - 20px);
    height: 60px;
    line-height: 60px;
    text-align: center;
    font-size: 16px;
    font-weight:900;
    color:rgb(130,96,98);
    margin:10px;
    text-decoration:none !important;
    white-space: nowrap;
    box-shadow: 0 2px 5px 0 rgba(0,0,0,.26);
}

.flexbox-container .export-option:hover,
.flexbox-container .export-option:active,
.flexbox-container .export-option:focus{
    border: 1px solid rgb(130,96,98);
    box-shadow: 0 4px 8px 0 rgba(0,0,0,.4);
}

.flexbox-container .export-option.selected{
    background:rgb(130,96,98);
    border:1px solid rgb(130,96,98);
    color:#fff;
    box-shadow: 0 4px 8px 0 rgba(0,0,0,.4);
}

.flexbox-container-single {
    justify-content: center;
}

.flexbox-container-single .export-option {
    width: calc(50% - 20px);
    max-width: 300px;
}

.send-stl:after{
    content: "STL";
    display: block;
    position: absolute;
    background: #fff;
    padding: 0px 1px 0px 2px;
    top: 3px;
    font-family: Lato;
    font-size: 8px;
    left: 15px;
}

.export-stl:after{
    content: "STL";
    display: block;
    position: absolute;
    background: #fff;
    padding: 0px 2px;
    bottom: 0px;
    left: 15px;
    font-family: Lato;
    font-size: 8px;
}

.send-spj:after{
    content: "SPJ";
    display: block;
    position: absolute;
    background: #fff;
    padding: 0px 1px 0px 2px;
    top: 3px;
    font-family: Lato;
    font-size: 8px;
    left: 15px;
}

.export-spj:after{
    content: "SPJ";
    display: block;
    position: absolute;
    background: #fff;
    padding: 0px 2px;
    bottom: 0px;
    left: 15px;
    font-family: Lato;
    font-size: 8px;
}

.send-obj:after{
    content: "OBJ";
    display: block;
    position: absolute;
    background: #fff;
    padding: 0px 1px;
    top: 3px;
    font-family: Lato;
    font-size: 8px;
    left: 15px;
}

.export-obj:after{
    content: "OBJ";
    display: block;
    position: absolute;
    background: #fff;
    padding: 0px 2px;
    bottom: 0px;
    left: 14px;
    font-family: Lato;
    font-size: 8px;
}

.send-png:after{
    content: "PNG";
    display: block;
    position: absolute;
    background: #fff;
    padding: 0px 1px;
    top: 3px;
    font-family: Lato;
    font-size: 8px;
    left: 14px;
}

.dropdown-menu li a:hover .send-png:after,
.dropdown-menu li a:hover .send-stl:after,
.dropdown-menu li a:hover .export-stl:after,
.dropdown-menu li a:hover .send-obj:after,
.dropdown-menu li a:hover .export-obj:after,
.dropdown-menu li a:hover .send-spj:after,
.dropdown-menu li a:hover .export-spj:after{
    background:#eeeeee;
}

#draw-area{
    left: 0px;
    right: 260px;
    top:0px;
    bottom:0px;
    margin: 0;
    padding: 0;
    overflow: hidden;
    display: block;
    position: absolute;
    z-index: 1; /* Assicura che il draw-area sia sopra i pannelli overlay chiusi (z-index: -100) */
    /*-webkit-box-shadow: rgba(0,0,0,0.3) 0 2px 8px;
    -moz-box-shadow: rgba(0,0,0,0.3) 0 2px 8px;
    box-shadow: rgba(0,0,0,0.3) 0 2px 8px;*/
    -webkit-transform: translateZ(0);
    background: #ffffff;
    transition: right 0.3s ease-in-out;
}

#draw-area.sidebar-hidden{
    right: 0px;
}

#overlap-badges{
    position:absolute;
    left:0;
    top:0;
    right:0;
    bottom:0;
    pointer-events:none;
    z-index:6;
}

.overlap-count-badge{
    position:absolute;
    transform:translate(-50%, calc(-100% - 6px));
    min-width:20px;
    height:20px;
    padding:0 6px;
    line-height:19px;
    border-radius:12px;
    background:rgba(17,17,17,0.88);
    border:1px solid rgba(255,255,255,0.72);
    color:#fff;
    font-family:Lato;
    font-size:11px;
    font-weight:700;
    text-align:center;
    box-shadow:0 1px 4px rgba(0,0,0,0.35);
    white-space:nowrap;
}

#minecraft-draw-area,
#minecraft-draw-area-send,
#minecraft-draw-area-single
{
    width:100%;
    height:560px;
    overflow:hidden;
    position:relative;
}

#minecraft-draw-area .canvas,
#minecraft-draw-area-send .canvas,
#minecraft-draw-area-single .canvas{
    position:relative;
    height:500px;
}

#minecraft-draw-area .canvas .panels-buttons,
#minecraft-draw-area-send .canvas .panels-buttons,
#minecraft-draw-area-single .canvas .panels-buttons{
    top:0;
    left:0;
}

#minecraft-draw-area .sizes,
#minecraft-draw-area-send .sizes,
#minecraft-draw-area-single .sizes{
    height:60px;
}

#minecraft-draw-area .sizes ul,
#minecraft-draw-area-send .sizes ul,
#minecraft-draw-area-single .sizes ul{
    margin:0;
    padding:0;
    display: inline;
}

#minecraft-draw-area .sizes ul li,
#minecraft-draw-area-send .sizes ul li,
#minecraft-draw-area-single .sizes ul li{
    display:inline-block;
}

.mining-meshes{
    text-align:center;
    background-color:rgba(164,110,100,1) !important;
}

#minecraft-draw-area .sizes ul li a,
#minecraft-draw-area-send .sizes ul li a,
#minecraft-draw-area-single .sizes ul li a{
    border: 1px solid #dfe3e8;
    border-radius: 3px;
    text-align: center;
    cursor: pointer;
    transition: border .3s, background .3s, color .3s;
    display: block;
    width: 100%;
    height: 40px;
    line-height: 40px;
    text-align: center;
    font-size: 14px;
    font-weight: 300;
    color: rgb(130,96,98);
    margin: 10px;
    text-decoration: none !important;
    white-space: nowrap;
}

#minecraft-draw-area .sizes ul li a.selected,
#minecraft-draw-area-send .sizes ul li a.selected,
#minecraft-draw-area-single .sizes ul li a.selected {
    background: rgb(130,96,98);
    border: 1px solid rgb(130,96,98);
    color: #fff;
}

#minecraft-draw-area .mined-colors,
#minecraft-draw-area-send .mined-colors,
#minecraft-draw-area-single .mined-colors{
    position:absolute;
    z-index:50;
    right:0;
    top:0;
}

#minecraft-draw-area .mined-colors ul,
#minecraft-draw-area-send .mined-colors ul,
#minecraft-draw-area-single .mined-colors ul{
    margin:10px 0 0 10px;
    padding:0;
    list-style-type: none;
    float:right;
}

#minecraft-draw-area .mined-colors ul.color-selection-list,
#minecraft-draw-area-send .mined-colors ul.color-selection-list,
#minecraft-draw-area-single .mined-colors ul.color-selection-list{
    display:none;
    flex-wrap:wrap;
    width:477px;
    padding-left:5px;
    border: 1px solid #dfe3e8;
    background:rgba(255,255,255,0.8);
}

#minecraft-draw-area .mined-colors ul.color-selection-list.opened,
#minecraft-draw-area-send .mined-colors ul.color-selection-list.opened,
#minecraft-draw-area-single .mined-colors ul.color-selection-list.opened{
    display:flex;
}

#minecraft-draw-area .mined-colors ul li,
#minecraft-draw-area-send .mined-colors ul li,
#minecraft-draw-area-single .mined-colors ul li{
    margin:0 0 10px 0;
    padding:0;
    list-style-type: none;
    position:relative;
}

#minecraft-draw-area .mined-colors ul li a,
#minecraft-draw-area-send .mined-colors ul li a,
#minecraft-draw-area-single .mined-colors ul li a{
    display:flex;
    align-items:center;
}

#minecraft-draw-area .mined-colors ul .mined-color-circle,
#minecraft-draw-area-send .mined-colors ul .mined-color-circle,
#minecraft-draw-area-single .mined-colors ul .mined-color-circle{
    width:32px;
    height:32px;
    -webkit-border-radius:16px;
    border-radius:16px;
}

#minecraft-draw-area .mined-colors ul .mined-color-text,
#minecraft-draw-area-send .mined-colors ul .mined-color-text,
#minecraft-draw-area-single .mined-colors ul .mined-color-text{
    font-size: 14px;
    margin-left: 5px;
}

#minecraft-draw-area .mined-colors ul.color-selection-list li,
#minecraft-draw-area-send .mined-colors ul.color-selection-list li,
#minecraft-draw-area-single .mined-colors ul.color-selection-list li{
    width:150px;
    margin: 5px 5px 5px 0;
}

#minecraft-draw-area .mined-colors ul.color-selection-list li .mined-color-text,
#minecraft-draw-area-send .mined-colors ul.color-selection-list li .mined-color-text,
#minecraft-draw-area-single .mined-colors ul.color-selection-list li .mined-color-text{
    width:110px;
}

#minecraft-draw-area .mined-colors ul li a,
#minecraft-draw-area-send .mined-colors ul li a,
#minecraft-draw-area-single .mined-colors ul li a{
    text-decoration:none;
}

#minecraft-draw-area .mined-colors ul li a:hover,
#minecraft-draw-area .mined-colors ul li a:active,
#minecraft-draw-area .mined-colors ul li a:focus,
#minecraft-draw-area-send .mined-colors ul li a:hover,
#minecraft-draw-area-send .mined-colors ul li a:active,
#minecraft-draw-area-send .mined-colors ul li a:focus,
#minecraft-draw-area-single .mined-colors ul li a:hover,
#minecraft-draw-area-single .mined-colors ul li a:active,
#minecraft-draw-area-single .mined-colors ul li a:focus{
    text-decoration:none;
    opacity:0.7;
}

#minecraft-draw-area .mined-colors ul li.active:before,
#minecraft-draw-area-send .mined-colors ul li.active:before,
#minecraft-draw-area-single .mined-colors ul li.active:before{
    width: 0; 
    height: 0; 
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent; 
    border-right:10px solid #d2d2d2;
    content:" ";
    display:block;
    top:6px;
    position: absolute;
    margin-left: -20px;
}

#minecraft-draw-area .mined-colors ul li.active:after,
#minecraft-draw-area-send .mined-colors ul li.active:after,
#minecraft-draw-area-single .mined-colors ul li.active:after{
    width: 0; 
    height: 0; 
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent; 
    border-right:10px solid #fff;
    content:" ";
    display:block;
    top:6px;
    position: absolute;
    margin-left: -19px;
}


/*#minecraft-draw-area .mined-colors ul.color-selection-list .mined-color-text{
    max-width:110px;
}*/

.sk-cube-grid {
    width: 40px;
    height: 40px;
    margin: 0px auto 10px auto;
}

.sk-cube-grid .sk-cube {
  width: 33%;
  height: 33%;
  background-color: #fff;
  float: left;
  -webkit-animation: sk-cubeGridScaleDelay 1.3s infinite ease-in-out;
          animation: sk-cubeGridScaleDelay 1.3s infinite ease-in-out; 
}
.sk-cube-grid .sk-cube1 {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s; }
.sk-cube-grid .sk-cube2 {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s; }
.sk-cube-grid .sk-cube3 {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s; }
.sk-cube-grid .sk-cube4 {
  -webkit-animation-delay: 0.1s;
          animation-delay: 0.1s; }
.sk-cube-grid .sk-cube5 {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s; }
.sk-cube-grid .sk-cube6 {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s; }
.sk-cube-grid .sk-cube7 {
  -webkit-animation-delay: 0s;
          animation-delay: 0s; }
.sk-cube-grid .sk-cube8 {
  -webkit-animation-delay: 0.1s;
          animation-delay: 0.1s; }
.sk-cube-grid .sk-cube9 {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s; }

@-webkit-keyframes sk-cubeGridScaleDelay {
  0%, 70%, 100% {
    -webkit-transform: scale3D(1, 1, 1);
            transform: scale3D(1, 1, 1);
  } 35% {
    -webkit-transform: scale3D(0, 0, 1);
            transform: scale3D(0, 0, 1); 
  }
}

@keyframes sk-cubeGridScaleDelay {
  0%, 70%, 100% {
    -webkit-transform: scale3D(1, 1, 1);
            transform: scale3D(1, 1, 1);
  } 35% {
    -webkit-transform: scale3D(0, 0, 1);
            transform: scale3D(0, 0, 1);
  } 
}

#cube-helper{
    left: 60px;
    top: 0px;
    position:absolute;
    width:100px;
    height:100px;
    z-index: 10; /* Assicura che il cubo helper sia visibile sopra il draw-area */
    pointer-events: auto; /* Permette l'interazione con il cubo */
    overflow: visible; /* Permette al contenuto di essere visibile */
}

/* Assicura che il canvas del cubo helper sia visibile */
#cube-helper canvas{
    display: block !important;
    width: 100% !important;
    height: 100% !important;
}

#big-ghost{
  background-color:rgba(239, 28, 190, 0.6);
  border:1px solid #aaf81a;
  position:absolute;
}

.form-horizontal .control-label{
    text-align:left !important;
}

.ghost-active {
  display: block !important;
}

.ghost-select > span {
  background-color: rgba(138,210,230,0.3);
  border: 1px solid #3cbcd2;
  width: 100%;
  height: 100%;
  float: left;
}

.ghost-select {
  display: none;
  z-index: 9000;
  position: absolute !important;
  cursor: default !important;
}

.complex-description{
    padding : 10px;
    background: #fff; /* Sfondo bianco per la descrizione */
    position: relative;
    z-index: 1;
}

#extrusion-geometry-panel .tab-pane{
    width:570px;
}
#extrusion-geometry-panel .tab-content{
    float:left;
}

#extrusion-geometry-panel .nav-tabs li a{
    opacity:0.5;
}

#extrusion-geometry-panel .nav-tabs li.active a{
    opacity:1;
}

#rotation-geometry-panel,
#extrusion-geometry-panel,
#extrusion-geometry-panel,
#lathe-geometry-panel,
#spline-geometry-panel,
#freehand-geometry-panel,
#userdefined-geometry-panel,
#blockly-geometry-panel,
#align-panel,
#isometrie-panel,
#split-panel{
    width:100vw;
    height:100vh;
    position:fixed;
    background:rgba(255, 255, 255, 1);
    z-index:-100;
    top:0;
    left:0;
    overflow-y: scroll; /* has to be scroll, not auto */
    overflow-x: hidden; /* Previene scrollbar orizzontale */
    -webkit-overflow-scrolling: touch;
}

/* Rimuovi scrollbar dai pannelli principali quando attivi */
#freehand-geometry-panel.on,
#spline-geometry-panel.on,
#lathe-geometry-panel.on,
#align-panel.on,
#isometrie-panel.on,
#split-panel.on {
    overflow: hidden !important; /* Nessuna scrollbar sul pannello principale quando attivo */
    overflow-x: hidden !important; /* Assicura che non ci sia scrollbar orizzontale */
    overflow-y: hidden !important; /* Assicura che non ci sia scrollbar verticale */
    width: 100% !important; /* Usa 100% invece di 100vw per evitare overflow quando c'è scrollbar */
}

/* Quando il pannello è attivo (classe .on aggiunta da JavaScript), aumenta il z-index */
#freehand-geometry-panel.on,
#spline-geometry-panel.on,
#lathe-geometry-panel.on,
#userdefined-geometry-panel.on,
#blockly-geometry-panel.on,
#align-panel.on,
#isometrie-panel.on,
#split-panel.on {
    z-index: 1000;
}

.panel-group {
    margin-bottom: 0px;
}

.panel-group .panel{
    -webkit-border-radius:0;
    border-radius:0;
}


#rotation-geometry-panel .control-buttons,
#extrusion-geometry-panel .control-buttons,
#lathe-geometry-panel .control-buttons,
#spline-geometry-panel .control-buttons,
#align-panel .control-buttons,
#isometrie-panel .control-buttons,
#split-panel .control-buttons,
#freehand-geometry-panel .control-buttons,
#userdefined-geometry-panel .control-buttons,
#blockly-geometry-panel .control-buttons{
    background: #f8448f;
 box-sizing: border-box;
    width:100vw;
    height:55px;
    position:fixed;
    bottom:0;
    z-index:1100; /* Assicura che la barra sia sopra i pannelli (z-index pannelli: 1050) */
}

#rotation-geometry-panel .control-buttons .pull-right,
#extrusion-geometry-panel .control-buttons .pull-right,
#align-panel .control-buttons .pull-right,
#isometrie-panel .control-buttons .pull-right,
#split-panel .control-buttons .pull-right,
#lathe-geometry-panel .control-buttons .pull-right,
#spline-geometry-panel .control-buttons .pull-right,
#freehand-geometry-panel .control-buttons .pull-right,
#userdefined-geometry-panel .control-buttons .pull-right,
#blockly-geometry-panel .control-buttons .pull-right{
    margin-right: 25px;
}

/* Regole rimosse: le opzioni sono state spostate nel pannello blockly-settings */

#rotation-geometry-panel.on,
#extrusion-geometry-panel.on,
#align-panel.on,
#isometrie-panel.on,
#split-panel.on,
#userdefined-geometry-panel.on,
#blockly-geometry-panel.on,
#lathe-geometry-panel.on,
#spline-geometry-panel.on,
#freehand-geometry-panel.on{
    z-index:1050;
}

.meshproperty-value{
    -webkit-appearance: none;
    border:0px;
}

.meshproperty-value:active,
.meshproperty-value:focus{
    color:rgb(130,96,98);
    font-weight:400;
}

.tools{
    position:absolute;
    top:55px;
    left: 10px;
    width:40px;
}

.tools-button.scale:before{
    transform: rotate(-45deg);
    display: block;
}

#extrusion-geometry-panel .tools,
#rotation-geometry-panel .tools,
#lathe-geometry-panel .tools,
#spline-geometry-panel .tools{
    /*top:116px;*/
    position:relative;
    display: inline-block;
    top:10px;
}

#rotation-geometry-panel .content{
    padding:10px 0px;
}

.tools .ti-minus:before{
    -webkit-transform: rotateZ(-45deg) scaleX(1.5);
    transform: rotateZ(-45deg) scaleX(1.5);
    display:block;
}

.tools .ti-control-record:before{
    -webkit-transform:  scaleX(1.5);
    transform: scaleX(1.5);
    display:block;
}

#rotation-geometry-panel .content,
#extrusion-geometry-panel .content,
#lathe-geometry-panel .content,
#spline-geometry-panel .content,
#freehand-geometry-panel .content,
#userdefined-geometry-panel .content,
#blockly-geometry-panel .content,
#align-panel .content,
#isometrie-panel .content,
#split-panel .content{
    overflow: auto;
    width: 100%;
    position: relative;
    height: calc(100vh - 55px);
}

/* Freehand, spline e lathe usano layout flex, rimuovi overflow dal content principale */
#freehand-geometry-panel .content,
#spline-geometry-panel .content,
#lathe-geometry-panel .content {
    overflow: hidden; /* Nessuna scrollbar sul content principale */
    overflow-x: hidden; /* Assicura che non ci sia scrollbar orizzontale */
    overflow-y: hidden; /* Assicura che non ci sia scrollbar verticale */
}

#userdefined-geometry-panel,
#userdefined-geometry-panel .content,
#blockly-geometry-panel,
#blockly-geometry-panel .content{
    overflow:hidden;
}

#lathe-geometry-panel .content,
#spline-geometry-panel .content,
#freehand-geometry-panel .content{
    height: calc(100vh - 98px);
    padding-bottom: 65px; /* Spazio per la barra control-buttons (55px + 10px margine) */
    box-sizing: border-box; /* Assicura che padding sia incluso nell'altezza totale */
}

#rotation-geometry-panel .draw-shape-area,
#extrusion-geometry-panel .draw-shape-area,
#lathe-geometry-panel .draw-shape-area,
#spline-geometry-panel .draw-shape-area,
#freehand-geometry-panel .draw-shape-area{
    position:relative;
    left:26px;
    margin-top:10px;
    /*height:2001px;*/
    height:501px;
    overflow: hidden; /* Previene che il contenuto sbordi */
    box-sizing: border-box;
    width:501px;
    background:#fff;
    display:inline-block;
    vertical-align:top;
    border:1px solid #ccc;
}

.freehand-settings,
.extrusion-settings,
.spline-settings,
.rotate-settings{
    margin:10px 50px;
}

#rotation-geometry-panel .preview-area,
#extrusion-geometry-panel .preview-area,
#lathe-geometry-panel .preview-area,
#spline-geometry-panel .preview-area,
#freehand-geometry-panel .preview-area{
    position:relative;
    left:60px;
    margin-top:10px;
    height:501px;
    width:501px;
    background:#fff;
    display:inline-block;
    border:1px solid #ccc;
    vertical-align:top;
}

#userdefined-geometry-panel .preview-area{
    height:100%;
    border-left:1px solid #ccc;
    width:35%;
    padding:0px;
    position:fixed;
    right:0;
}

/* Layout flex per Blockly (70% codice, 30% preview+opzioni) */
#blockly-geometry-panel .content{
    display: flex;
    flex-direction: row;
    align-items: stretch;
    height: calc(100vh - 98px); /* sottrae header descrizione e pulsanti fondo */
    overflow: hidden;
    overflow-x: hidden;
    overflow-y: hidden;
    position: relative;
    z-index: 1;
    background: #fff;
    width: 100%;
}

#blockly-geometry-panel .blockly-main-column{
    position: relative;
    flex: 0 0 70%;
    max-width: 70%;
}

#blockly-geometry-panel .blockly-side-column{
    position: relative;
    flex: 0 0 30%;
    max-width: 30%;
    display: flex;
    flex-direction: column;
    padding-left: 10px;
}

#blockly-geometry-panel .preview-area{
    position: relative;
    left: 0;
    margin-top: 0;
    height: 50%;
    width: 100%;
    display: block;
    border-left: 1px solid #ccc;
    padding: 0;
}

#blockly-geometry-panel .preview-area .canvas{
    height: 100%;
}

#blockly-geometry-panel .blockly-settings{
    flex: 1;
    margin: 10px 0 0 0;
    overflow-y: auto;
    padding: 0 10px;
    border-left: 1px solid #ccc;
}

#blockly-geometry-panel .blockly-settings .form-group{
    margin-bottom: 15px;
}

#blockly-geometry-panel .blockly-settings .control-label{
    display: block;
    margin-bottom: 5px;
    font-weight: 500;
}

/* Pulsante Genera più evidente */
#blockly-geometry-panel .blockly-settings .form-group button.btn-primary {
    font-size: 16px !important;
    font-weight: 600 !important;
    padding: 12px !important;
    background-color: #6fd4e4 !important; /* Verde più evidente */
    border-color: #6fd4e4 !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2) !important;
    transition: all 0.2s ease !important;
}

#blockly-geometry-panel .blockly-settings .form-group button.btn-primary:hover {
    background-color: #91e3f0 !important;
    border-color: #91e3f0 !important;
    box-shadow: 0 3px 6px rgba(0,0,0,0.3) !important;
    transform: translateY(-1px);
}

/* Layout specifico per i pannelli freehand, spline e lathe: 70% canvas 2D a sinistra, 30% preview+impostazioni a destra */
#freehand-geometry-panel .content,
#spline-geometry-panel .content,
#lathe-geometry-panel .content{
    display: flex;
    flex-direction: row;
    align-items: stretch;
    height: calc(100vh - 98px); /* sottrae header descrizione e pulsanti fondo */
    overflow: hidden; /* Evita scrollbar indesiderate */
    overflow-x: hidden; /* Assicura che non ci sia scrollbar orizzontale */
    overflow-y: hidden; /* Assicura che non ci sia scrollbar verticale */
    position: relative;
    z-index: 1;
    background: #fff; /* Sfondo bianco per coprire tutto */
    width: 100%;
}

#freehand-geometry-panel .freehand-main-column,
#spline-geometry-panel .spline-main-column,
#lathe-geometry-panel .lathe-main-column{
    position: relative;
    flex: 0 0 70%;
    max-width: 70%;
}

.lathe-main-column .btn-group-vertical, .freehand-main-column .btn-group-vertical, .spline-main-column .btn-group-vertical{display:grid;}

#freehand-geometry-panel .freehand-side-column,
#spline-geometry-panel .spline-side-column,
#lathe-geometry-panel .lathe-side-column{
    position: relative;
    flex: 0 0 30%;
    max-width: 30%;
    display: flex;
    flex-direction: column;
    padding-left: 10px;
}

/* Canvas 2D freehand, spline e lathe: occupa tutta la colonna sinistra */
#freehand-geometry-panel .draw-shape-area,
#spline-geometry-panel .draw-shape-area,
#lathe-geometry-panel .draw-shape-area{
    position: relative;
    left: 0;
    margin-top: 0;
    height: 100%;
    width: 100%;
    display: block;
}

#freehand-geometry-panel .draw-shape-area .canvas,
#spline-geometry-panel .draw-shape-area .canvas,
#lathe-geometry-panel .draw-shape-area .canvas{
    /* Il canvas viene ridimensionato via JavaScript per adattarsi al container */
    /* Non usare width/height 100% via CSS per evitare stretching */
    display: block;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    overflow: hidden;
    position: relative;
}

/* Assicura che il canvas HTML stesso non venga stretchato dal CSS */
/* Le dimensioni vengono gestite via JavaScript per mantenere le proporzioni */
#spline-geometry-panel .draw-shape-area .canvas canvas,
#lathe-geometry-panel .draw-shape-area .canvas canvas{
    display: block;
    box-sizing: border-box;
    /* Non impostare width/height al 100% per evitare stretching */
}

/* Sposta i pulsanti .tools insieme al canvas nella colonna sinistra */
#freehand-geometry-panel .freehand-main-column .tools,
#spline-geometry-panel .spline-main-column .tools,
#lathe-geometry-panel .lathe-main-column .tools{
    position: absolute;
    left: 10px;
    top: 10px;
    z-index: 10;
}

/* Preview 3D freehand, spline e lathe nella parte alta della colonna destra */
#freehand-geometry-panel .preview-area,
#spline-geometry-panel .preview-area,
#lathe-geometry-panel .preview-area{
    position: relative;
    left: 0;
    margin-top: 0;
    height: 50%;
    width: 100%;
    display: block;
}

#freehand-geometry-panel .preview-area .canvas,
#spline-geometry-panel .preview-area .canvas,
#lathe-geometry-panel .preview-area .canvas{
    height: 100%;
}

/* Box impostazioni freehand, spline e lathe nella parte bassa della colonna destra */
#freehand-geometry-panel .freehand-settings,
#spline-geometry-panel .spline-settings,
#lathe-geometry-panel .lathe-settings{
    flex: 1;
    margin: 10px 0 0 0;
    overflow-y: auto;
    padding: 0 10px;
}

/* Override margini specifici per spline-settings e lathe-settings nel nuovo layout */
#spline-geometry-panel .spline-settings,
#lathe-geometry-panel .lathe-settings{
    margin: 10px 0 0 0 !important; /* Override margini precedenti */
}

/* Slider responsivi per freehand-settings, spline-settings e lathe-settings */
#freehand-geometry-panel .freehand-settings .form-group,
#spline-geometry-panel .spline-settings .form-group,
#lathe-geometry-panel .lathe-settings .form-group {
    display: flex;
    flex-wrap: nowrap; /* Non andare a capo per evitare spreco di spazio verticale */
    align-items: center;
    margin-bottom: 12px;
    gap: 8px;
}

#freehand-geometry-panel .freehand-settings .form-group > label.control-label.col-sm-2,
#spline-geometry-panel .spline-settings .form-group > label.control-label.col-sm-2,
#lathe-geometry-panel .lathe-settings .form-group > label.control-label.col-sm-2 {
    flex: 0 0 auto;
    min-width: 80px;
    max-width: 120px;
    padding-right: 8px;
}

#freehand-geometry-panel .freehand-settings .form-group .range-slider.col-sm-9,
#spline-geometry-panel .spline-settings .form-group .range-slider.col-sm-9,
#lathe-geometry-panel .lathe-settings .form-group .range-slider.col-sm-9 {
    flex: 1 1 auto;
    min-width: 80px;
    max-width: none; /* Lo slider può espandersi */
}

#freehand-geometry-panel .freehand-settings .form-group > label.control-label.col-sm-1,
#spline-geometry-panel .spline-settings .form-group > label.control-label.col-sm-1,
#lathe-geometry-panel .lathe-settings .form-group > label.control-label.col-sm-1 {
    flex: 0 0 auto;
    min-width: 40px;
    max-width: 60px;
    text-align: right;
    padding-left: 8px;
}

/* Media query per schermi molto piccoli */
@media (max-width: 600px) {
    #freehand-geometry-panel .freehand-settings .form-group,
    #spline-geometry-panel .spline-settings .form-group,
    #lathe-geometry-panel .lathe-settings .form-group,
    #blockly-geometry-panel .blockly-settings .form-group {
        flex-wrap: wrap; /* A schermi molto piccoli, permettere wrap */
    }
    
    #freehand-geometry-panel .freehand-settings .form-group > label.control-label.col-sm-2,
    #spline-geometry-panel .spline-settings .form-group > label.control-label.col-sm-2,
    #lathe-geometry-panel .lathe-settings .form-group > label.control-label.col-sm-2,
    #blockly-geometry-panel .blockly-settings .form-group > label.control-label {
        flex: 0 0 100%;
        max-width: 100%;
        margin-bottom: 4px;
    }
    
    #freehand-geometry-panel .freehand-settings .form-group .range-slider.col-sm-9,
    #spline-geometry-panel .spline-settings .form-group .range-slider.col-sm-9,
    #lathe-geometry-panel .lathe-settings .form-group .range-slider.col-sm-9 {
        flex: 1 1 auto;
        min-width: 0;
    }

    /* Layout responsive per Blockly: verticale su schermi piccoli */
    #blockly-geometry-panel .content {
        flex-direction: column;
    }

    #blockly-geometry-panel .blockly-main-column,
    #blockly-geometry-panel .blockly-side-column {
        flex: 0 0 100%;
        max-width: 100%;
    }

    #blockly-geometry-panel .blockly-side-column {
        padding-left: 0;
        margin-top: 10px;
    }

    #blockly-geometry-panel .preview-area {
        height: 300px; /* Altezza fissa su schermi piccoli */
    }
}

#userdefined-geometry-panel .userdefined-generated-params{
    height:100%;
    border-left:1px solid rgb(130,96,98);
    width:20%;
    padding:0px;
    position:absolute;
    right:0;
    background:rgba(255,255,255,0.5);
    -webkit-transform:translateX(100%);
    transform:translateX(100%);
    -webkit-transition:all 0.3s;
    transition:all 0.3s;
}

#userdefined-geometry-panel .userdefined-generated-params.opened{
    -webkit-transform:translateX(0%);
    transform:translateX(0%);
}

#userdefined-geometry-panel .code-area{
    height: 100%;
    width: 65%;
    margin: 0;
    padding: 0;
    float: left;
    background: #fff;
}

/* Code area Blockly - ora dentro main-column flex */
#blockly-geometry-panel .code-area{
    height: 100%;
    width: 100%;
    margin: 0;
    padding: 0;
    background: #fff;
}

#userdefined-geometry-panel .userdefined-generated-params .but{
    display: block;
    width:40px;
    height:40px;
    background:rgb(130,96,98);
    position:absolute;
    -webkit-transform: translateX(-40px);
    transform: translateX(-40px);
    text-align:center;
    line-height:40px;
}

#userdefined-geometry-panel .userdefined-parameters-column-outer{
    max-height: calc(100vh - 55px);
    position:relative;
    width:100%;
    overflow-y: scroll;
    overflow-x : hidden;
    -webkit-overflow-scrolling: touch;
}

#userdefined-geometry-panel .userdefined-generated-params .but i{
    color:#fff;
    font-size:14px;
}

#userdefined-geometry-panel .code-area .content{
    margin:0;
    padding:0;
}

/* Code area content Blockly - ora dentro main-column flex */
#blockly-geometry-panel .code-area .content{
    margin:0;
    padding:0;
    height: 100%;
}

#userdefined-geometry-panel .panel-group .panel + .panel,
#blockly-geometry-panel .panel-group .panel + .panel {
    margin-top: 0px;
}

#userdefined-geometry-panel .control-label,
#blockly-geometry-panel .control-label{
    min-height:45px;
    padding-top:14px;
    text-align: right !important;
}

#userdefined-geometry-panel .control-label.vallabel,
#blockly-geometry-panel .control-label.vallabel{
    min-height:auto;
    padding-top:0px;
}

#userdefined-geometry-panel .control-label.vallabel input,
#blockly-geometry-panel .control-label.vallabel input{
    text-align:right;
    background:transparent;
}

#userdefined-geometry-panel .userdefined-generated-params .userdefined-settings-label{
    text-align:left !important;
    color: #555555;
    min-height:auto !important;
    margin-bottom:0px !important;
}

.userdefined-slider{
    margin-bottom:10px !important;
}

#geom-function,
#geom-function-blockly{
    /*min-height:500px;*/
    height: 100%;
    padding:0 !important;
}

#geom-function #userdefined-function{
    height: calc(100vh - 85px);
}

/* userdefined-blocks Blockly: usa 100% per adattarsi al layout flex invece di viewport */
#geom-blocks #userdefined-blocks{
    height: 100%;
}

#userdefined-geometry-panel .panel,
#blockly-geometry-panel .panel{
    -webkit-box-shadow : none;
    box-shadow : none;
}

#userdefined-geometry-panel .form-group,
#blockly-geometry-panel .form-group{
    margin-top:0px;
}

/*vertical tabs*/
#userdefined-geometry-panel .tabs-left {
    margin-top: 0;
    height:100%;
}

/* Tabs-left Blockly: layout flex per nav-tabs e tab-content */
#blockly-geometry-panel .tabs-left {
    margin-top: 0;
    height: 100%;
    display: flex; /* Layout flex per nav-tabs e tab-content affiancati */
    flex-direction: row;
}

#userdefined-geometry-panel .nav-tabs {
    float: left;
    border-bottom: 0;
    height:calc(100vh - 55px);
    width:200px;
    position:fixed;
}

/* Nav-tabs Blockly: ora relative al code-area invece di fixed */
#blockly-geometry-panel .nav-tabs {
    border-bottom: 0;
    height: 100%;
    width: 150px;
    position: relative; /* Cambiato da fixed a relative per il nuovo layout flex */
    flex: 0 0 150px; /* Larghezza fissa nel layout flex */
}

#userdefined-geometry-panel .nav-tabs li,
#blockly-geometry-panel .nav-tabs li {
    float: none;
    margin: 0;
    border-bottom:1px solid rgba(255,255,255,0.2);
}

#userdefined-geometry-panel .nav-tabs li:last-child,
#blockly-geometry-panel .nav-tabs li:last-child{
    border-bottom: 0px;
    background: rgb(164,110,100);
    margin: 15px auto;
    width: calc(100% - 30px);
}

#userdefined-geometry-panel .nav-tabs li a,
#blockly-geometry-panel .nav-tabs li a  {
    margin-right: 0;
    border: 0;
    background-color: #333;
}
#userdefined-geometry-panel .nav-tabs li a:hover,
#blockly-geometry-panel .nav-tabs li a:hover {
    background-color: #444;
}

#userdefined-geometry-panel .nav-tabs li:last-child a:hover,
#blockly-geometry-panel .nav-tabs li:last-child a:hover{
    background:rgb(164,110,100);
    opacity: 0.9;
}

#userdefined-geometry-panel .nav-tabs > li.active,
#blockly-geometry-panel .nav-tabs > li.active{
    background:#fff;
    color:rgb(130, 96, 98);
    -webkit-box-shadow: 0 2px 10px 0 rgba(0,0,0,0.2);
    box-shadow: -7px 5px 10px 0 rgba(0,0,0,0.2);
}

#userdefined-geometry-panel .nav-tabs > li.active a,
#blockly-geometry-panel .nav-tabs > li.active a{
    color:rgb(130, 96, 98) !important;
}

#userdefined-geometry-panel .control-buttons,
#blockly-geometry-panel .control-buttons{
    z-index:100;
}

.userdefined-console{
    position:fixed;
    bottom:55px;
    height:200px;
    width:calc(65% - 200px);
    -webkit-transform:translateY(170px);
    transform:translateY(170px);
    -webkit-transition: all 0.3s;   
    transition: all 0.3s;
    z-index: 90;
}

#blockly-geometry-panel .userdefined-console{
    width:70%;
}

.userdefined-console.open{
    -webkit-transform:translateY(0px);
    transform:translateY(0px);
}

.userdefined-console .console-top{
    height:30px;
    line-height:30px;
    padding: 0 5px;
    background:rgb(240,240,240);
    border-bottom:1px solid rgb(193,193,193);
    color:#2a2a2a;
    cursor:pointer;
}

.userdefined-console .console-subtop{
    background:#fff;
    border-bottom:1px solid rgb(209,209,209);
    height:24px;
    padding: 0 5px;
    
}

.userdefined-console .console-subtop a,
.userdefined-console .console-subtop a:hover,
.userdefined-console .console-subtop a:focus,
.userdefined-console .console-subtop a:active{
    font-size:16px;
    line-height:24px;
    text-decoration:none;
}

.userdefined-console .console-subtop a i{
    line-height:24px;
    height:24px;
}

.userdefined-console .console-top a,
.userdefined-console .console-top a:hover,
.userdefined-console .console-top a:focus,
.userdefined-console .console-top a:active{
    color:#2a2a2a;
    text-decoration:none;
    display:block;
    height:30px;
    width: 18px;
    line-height:32px;
    -webkit-transform:rotate(0deg);
    transform:rotate(0deg);
    -webkit-transition: all 0.3s 0.3s;  
    transition: all 0.3s 0.3s;
}

.userdefined-console.open .console-top a{
    -webkit-transform:rotate(180deg);
    transform:rotate(180deg);
    line-height:30px;
}

.userdefined-console .console-content{
    height: 146px;
    background: #fff;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    display: block;
    width: 100%;
    position: fixed;
}

.userdefined-settings-label{
    text-transform: capitalize;
}

.userdefined-console .console-title,
.userdefined-console .console-badge,
#userdefined-geometry-panel .nav-tabs li .alert-badge,
#userdefined-geometry-panel .nav-tabs li .tab-text,
#blockly-geometry-panel .nav-tabs li .alert-badge,
#blockly-geometry-panel .nav-tabs li .tab-text{
    display:inline-block;
    vertical-align:middle;
}

#userdefined-geometry-panel .nav-tabs li .tab-text,
#blockly-geometry-panel .nav-tabs li .tab-text{
    max-width:150px;
    font-size:15px;
    font-weight:300;
}

.userdefined-console .console-badge,
#userdefined-geometry-panel .nav-tabs li .alert-badge,
#blockly-geometry-panel .nav-tabs li .alert-badge{
    background: #c7254e;
    color: #fff;
    width: 18px;
    height: 18px;
    font-size: 10px;
    -webkit-border-radius: 7px;
    border-radius: 9px;
    text-align: center;
    line-height: 18px;
}

#userdefined-geometry-panel .nav-tabs li .alert-badge,
#blockly-geometry-panel .nav-tabs li .alert-badge{
    margin-left:0px;
    margin-top: 3px;
    background: #fff;
    color: rgb(130,96,98);
}

#userdefined-geometry-panel .nav-tabs li.active .alert-badge,
#blockly-geometry-panel .nav-tabs li.active .alert-badge{
    background: #c7254e;
    color: #fff;
}

.userdefined-console .console-content-inner ul {
    margin:0;
    padding:0;
    list-style-type:none;
}

.userdefined-console .console-content-inner ul li{
    padding:5px;
    border-bottom:1px solid rgb(209,209,209);
}

.userdefined-console .console-content-inner ul li xmp{
    color:#c7254e;
    font-size:12px;
    margin:0;
}

#userdefined-geometry-panel .nav-tabs > li:hover,
#userdefined-geometry-panel .nav-tabs > li:active,
#blockly-geometry-panel .nav-tabs > li:hover,
#blockly-geometry-panel .nav-tabs > li:active{
    background-color:rgb(88,147,173);
}

#userdefined-geometry-panel .nav-tabs > li.active:hover,
#userdefined-geometry-panel .nav-tabs > li.active:active,
#blockly-geometry-panel .nav-tabs > li.active:hover,
#blockly-geometry-panel .nav-tabs > li.active:active{
    background-color:#fff;
}

#userdefined-geometry-panel .tab-content {
    height: calc(100vh - 85px);
    /*width: calc(100% - 200px);*/
    margin-left: 200px;
    padding: 0;
    overflow-y:scroll;
    -webkit-overflow-scrolling: touch;
}

/* Tab content Blockly - ora dentro main-column flex */
#blockly-geometry-panel .tab-content {
    height: 100%;
    margin-left: 0; /* Le nav-tabs sono ora relative, non più fixed */
    padding: 0;
    overflow: hidden; /* Rimuove scrollbar esterna - Blockly gestisce le sue scrollbar interne */
    flex: 1; /* Occupa lo spazio rimanente dopo le nav-tabs */
}

#userdefined-geometry-panel .tab-content .tab-pane {
  display: none;
  background-color: #fff;
  padding: 10px;
  height: calc(100vh - 85px);
}

#blockly-geometry-panel .tab-content .tab-pane {
    display: none;
    background-color: #fff;
    padding: 0;
    height: 100%;
    overflow: hidden; /* Assicura che non ci siano scrollbar esterne - Blockly gestisce le sue */
}

#userdefined-geometry-panel .tab-content .active,
#blockly-geometry-panel .tab-content .active {
  display: block;
}
/*fine vertical tabs*/

#align-panel .content,
#isometrie-panel .content,
#split-panel .content{
    overflow:hidden;
}

#align-panel .preview-area,
#isometrie-panel .preview-area,
#split-panel .preview-area{
    position:relative;
    height: calc(100vh - 60px);
    width: calc(100% - 330px);
    background:#fff;
    display:inline-block;
    vertical-align:top;
    margin-left:-3px;
}

#align-panel .align-controls .radio.hover-sensible label{
    display:inline-block;
    vertical-align:middle;
/*  margin-left: -20px; */
    cursor:pointer;
}

#align-panel .align-controls .radio .plane-preview{
    font-size: 24px;
    line-height: 24px;
    /*margin-top: -3px;*/
    color:#999;
    display:inline-block;
    vertical-align:middle;
}

#align-panel .align-controls .radio .plane-preview:focus{
    outline:none;
}

#align-panel .align-controls .radio input[type="radio"]{
    position:relative;
    margin-left:0px;
    margin-right:5px;
}

#align-panel .side-controls,
#isometrie-panel .side-controls,
#split-panel .side-controls{
    width:300px;
    height:calc(100vh - 55px);
    max-height:calc(100vh - 55px);
    box-sizing:border-box;
    border-right:1px solid #ccc;
    overflow-y:auto;
    overflow-x:hidden;
    display:inline-block;
    vertical-align:top;
    background:rgba(255,255,255,0.3);
    font-weight:300;
}

#align-panel .align-controls,
#isometrie-panel .isometrie-controls,
#split-panel .split-controls{
    padding:10px;
}

/* Dropdown personalizzato per isometrie */
#isometrie-panel .isometrie-type-dropdown {
    position: relative;
    width: 100%;
    z-index: 10;
}

#isometrie-panel .dropdown-toggle {
    width: 100%;
    padding: 12px 15px;
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 4px;
    cursor: pointer;
    display: block;
    font-size: 16px;
    min-height: 50px;
    line-height: 24px;
    position: relative;
}

#isometrie-panel .dropdown-toggle:hover {
    border-color: #999;
    background-color: #f9f9f9;
}

#isometrie-panel .isometrie-type-text {
    display: inline-block;
    vertical-align: middle;
    margin-left: 10px;
}

#isometrie-panel .isometrie-type-icon {
    display: inline-block;
    vertical-align: middle;
}

#isometrie-panel .dropdown-toggle .pull-right {
    float: right;
    margin-top: 2px;
}

#isometrie-panel .dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background-color: #fff;
    border: 1px solid #ccc;
    border-top: none;
    border-radius: 0 0 4px 4px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.2);
    z-index: 1001;
    max-height: 300px;
    overflow-y: auto;
    margin-top: -1px;
    display: block;
}

#isometrie-panel .dropdown-menu.ng-hide {
    display: none !important;
}

#isometrie-panel .dropdown-item {
    padding: 12px 15px;
    cursor: pointer;
    display: block;
    border-bottom: 1px solid #eee;
    line-height: 24px;
    pointer-events: auto;
    user-select: none;
    transition: background-color 0.2s;
}

#isometrie-panel .dropdown-item:hover {
    background-color: #f5f5f5;
}

#isometrie-panel .dropdown-item:last-child {
    border-bottom: none;
}

#isometrie-panel .dropdown-item:hover {
    background-color: #f5f5f5;
}

#isometrie-panel .dropdown-item svg {
    vertical-align: middle;
}

#isometrie-panel .preview-area {
    position: absolute;
    top: 0;
    right: 0;
    width: calc(100% - 300px);
    height: calc(100vh - 55px);
}

#isometrie-panel .preview-area .canvas {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

#isometrie-panel .preview-area .canvas canvas {
    display: block;
    width: 100%;
    height: 100%;
}

#split-panel .preview-area {
    position: absolute;
    top: 0;
    right: 0;
    width: calc(100% - 300px);
    height: calc(100vh - 55px);
}

#split-panel .preview-area .canvas {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

#split-panel .preview-area .canvas canvas {
    display: block;
    width: 100%;
    height: 100%;
}

#split-panel .split-controls h5 {
    margin: 20px 0 12px;
    font-size: 15px;
    font-weight: 600;
    color: #4d4d4d;
}

#split-panel .split-controls h5:first-of-type {
    margin-top: 10px;
}

#split-panel .split-preset-buttons {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

#split-panel .split-preset-buttons {
    margin-bottom: 8px;
}

#split-panel .split-preset-buttons .btn {
    text-align: left;
}

#split-panel .split-type-dropdown {
    position: relative;
    width: 100%;
    z-index: 10;
}

#split-panel .split-type-dropdown .dropdown-toggle {
    width: 100%;
    padding: 12px 15px;
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 4px;
    cursor: pointer;
    display: block;
    font-size: 16px;
    min-height: 50px;
    line-height: 24px;
    position: relative;
}

#split-panel .split-type-dropdown .dropdown-toggle:hover {
    border-color: #999;
    background-color: #f9f9f9;
}

#split-panel .split-type-dropdown .split-type-text {
    display: inline-block;
    vertical-align: middle;
}

#split-panel .split-type-dropdown .dropdown-toggle .pull-right {
    float: right;
    margin-top: 2px;
}

#split-panel .split-type-dropdown .dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background-color: #fff;
    border: 1px solid #ccc;
    border-top: none;
    border-radius: 0 0 4px 4px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.2);
    z-index: 1001;
    max-height: 220px;
    overflow-y: auto;
    margin-top: -1px;
    display: block;
}

#split-panel .split-type-dropdown .dropdown-menu.ng-hide {
    display: none !important;
}

#split-panel .split-type-dropdown .dropdown-item {
    padding: 12px 15px;
    cursor: pointer;
    display: block;
    border-bottom: 1px solid #eee;
    line-height: 24px;
    pointer-events: auto;
    user-select: none;
    transition: background-color 0.2s;
}

#split-panel .split-type-dropdown .dropdown-item:hover {
    background-color: #f5f5f5;
}

#split-panel .split-type-dropdown .dropdown-item:last-child {
    border-bottom: none;
}

#split-panel .split-type-dropdown .dropdown-item.disabled {
    opacity: 0.55;
    cursor: not-allowed;
    pointer-events: none;
}

#split-panel .split-rotation-row {
    display: flex;
    gap: 10px;
    margin-bottom: 4px;
}

#split-panel .split-rotation-field {
    flex: 1 1 0;
}

#split-panel .split-rotation-field .control-label {
    display: block;
    margin-bottom: 6px;
}

#split-panel .split-rotation-input {
    width: 100%;
}

#split-panel .split-keep-options .radio {
    margin-top: 0;
    margin-bottom: 8px;
}

#split-panel .split-keep-options .radio label {
    cursor: pointer;
}

#split-panel .split-hint {
    margin: 10px 0 0;
    font-size: 12px;
    line-height: 1.45;
    color: #777;
}

#split-panel .split-status {
    margin-top: 12px;
}

#split-panel .split-loading-icon {
    display: inline-block;
    animation: split-spin 0.9s linear infinite;
}

@keyframes split-spin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

#align-panel .align-controls .radio label{
    display: block; 
    cursor:default;
}



#align-panel .align-controls h3{
    font-size:16px;
    padding:5px;
    color:#fff;
}

#align-panel .align-controls h3.axis-x{
    background-color:#166F2E;
    padding:5px;
}

#align-panel .align-controls h3.axis-y{
    background-color:#00a5b6;
    padding:5px;
}

#align-panel .align-controls h3.axis-z{
    background-color:#E67E22;
    padding:5px;
}

/* Stili per i controlli di rotazione */
#isometrie-panel .rotation-controls {
    position: absolute;
    top: 90px;
    left: 10px;
    width: 280px;
    max-height: calc(100vh - 160px);
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: 5px;
    padding-bottom: 20px;
}

#isometrie-panel .rotation-title {
    font-size: 16px;
    padding: 5px;
    color: #fff;
    margin-top: 15px;
    margin-bottom: 10px;
    width: 280px;
}

#isometrie-panel .rotation-title.axis-x {
    background-color: #166F2E;
}

#isometrie-panel .rotation-title.axis-y {
    background-color: #E67E22;
}

#isometrie-panel .rotation-title.axis-z {
    background-color: #00a5b6;
}

#isometrie-panel .rotation-radios {
    margin-bottom: 15px;
}

#isometrie-panel .rotation-radios .radio {
    padding: 8px 0;
    cursor: pointer;
}

#isometrie-panel .rotation-radios .radio label {
    cursor: pointer;
    font-weight: normal;
    margin-left: 5px;
}

#isometrie-panel .rotation-radios .radio input[type="radio"] {
    margin-right: 8px;
}

/* Stili per i controlli di riflessione */
#isometrie-panel .reflection-controls {
    position: absolute;
    top: 90px;
    left: 10px;
    width: 280px;
    max-height: calc(100vh - 160px);
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: 5px;
    padding-bottom: 20px;
}

#isometrie-panel .reflection-title {
    font-size: 16px;
    padding: 5px;
    color: #fff;
    margin-top: 15px;
    margin-bottom: 10px;
    width: 280px;
}

#isometrie-panel .reflection-title.axis-x {
    background-color: #166F2E;
}

#isometrie-panel .reflection-title.axis-y {
    background-color: #E67E22;
}

#isometrie-panel .reflection-title.axis-z {
    background-color: #00a5b6;
}

#isometrie-panel .reflection-radios {
    margin-bottom: 15px;
}

#isometrie-panel .reflection-radios .radio {
    padding: 8px 0;
    cursor: pointer;
}

#isometrie-panel .reflection-radios .radio label {
    cursor: pointer;
    font-weight: normal;
    margin-left: 5px;
}

#isometrie-panel .reflection-radios .radio input[type="radio"] {
    margin-right: 8px;
}

/* Stili per i controlli di traslazione */
#isometrie-panel .translation-controls {
    position: absolute;
    top: 90px;
    left: 10px;
    width: 280px;
    max-height: calc(100vh - 160px);
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: 5px;
    padding-bottom: 20px;
}

/* Layout compatto slider inline per isometrie */
#isometrie-panel .range-slider {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 5px 0;
}

#isometrie-panel .range-slider .range-slider__range {
    flex: 1;
    width: auto;
    min-width: 0;
}

#isometrie-panel .range-slider .meshproperty-value {
    flex: 0 0 55px;
    width: 55px;
    text-align: right;
    padding: 2px 4px;
    border: 1px solid #ccc;
    border-radius: 3px;
    font-size: 13px;
}

#isometrie-panel .form-group {
    margin-bottom: 8px;
}

#isometrie-panel .form-group .control-label {
    font-size: 12px;
    margin-bottom: 2px;
    display: block;
}

#isometrie-panel .translation-title {
    font-size: 16px;
    padding: 5px;
    color: #fff;
    margin-top: 15px;
    margin-bottom: 10px;
    width: 280px;
}

#isometrie-panel .translation-title.axis-x {
    background-color: #166F2E;
}

#isometrie-panel .translation-title.axis-y {
    background-color: #E67E22;
}

#isometrie-panel .translation-title.axis-z {
    background-color: #00a5b6;
}

#isometrie-panel .translation-radios {
    margin-bottom: 15px;
}

#isometrie-panel .translation-radios .radio {
    padding: 8px 0;
    cursor: pointer;
}

#isometrie-panel .translation-radios .radio label {
    cursor: pointer;
    font-weight: normal;
    margin-left: 5px;
}

#isometrie-panel .translation-radios .radio input[type="radio"] {
    margin-right: 8px;
}

#extrusion-geometry-panel .preview-area{
    left:20px;
}

#extrusion-geometry-panel .nav{
    height:60px;
    background: rgb(130,96,98);
    background: -moz-linear-gradient(135deg, rgba(130,96,98,1) 1%, rgba(164,110,100,1) 100%);
    background: -webkit-linear-gradient(135deg, rgba(130,96,98,1) 1%,rgba(164,110,100,1) 100%);
    background: linear-gradient(135deg, rgba(130,96,98,1) 1%,rgba(164,110,100,1) 100%);
}

#extrusion-geometry-panel .nav li a{
    height:60px;
    line-height:40px;
}

.slice-preview-svg{
    height:200px;
    margin: 0px auto 15px;
    width:100%;
}

.slice-preview-svg .canvas{
    height:200px;
    width:100%;
    text-align: center;
}

.slice-preview-svg .canvas svg{
    overflow: visible !important;
}

.tobesaved{
    position:absolute;
    width:10px;
    height:10px;
    -webkit-border-radius:5px;
    border-radius:5px;
    background:#ffd857;
    right: 5px;
    top: 15px;
}

#rotation-geometry-panel .rotation-axis{
    width:2px;
    height:515px;
    background:rgb(130,96,98);
    position:absolute;
    top:15px;
    left:68px;
}

#extrusion-geometry-panel .rotation-axis{
    top:88px;
}

#rotation-geometry-panel .rotation-axis:after,
#extrusion-geometry-panel .rotation-axis:after,
#freehand-geometry-panel .rotation-axis:after{
    bottom: 100%;
    left: 0%;
    border: solid transparent;
    content: "";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: rgba(0,0,0,0);
    border-bottom-color: rgb(130,96,98);
    border-width: 0px 5px 14px 5px;
    margin-left: -4px;
}

#rotation-geometry-panel .draw-shape-area .canvas,
#extrusion-geometry-panel .draw-shape-area .canvas,
#lathe-geometry-panel .draw-shape-area .canvas,
#spline-geometry-panel .draw-shape-area .canvas{
    background-color: transparent !important;
    background-image: none !important; /* Rimuovi la griglia CSS statica, viene disegnata dinamicamente */
    background-size:10px 10px;
    background-position:left top;
    
    height:100%;
    width:100%;
    background-size:10px 10px;
    background-repeat:repeat;
}

/* Assicura che il canvas HTML stesso non venga stretchato dal CSS */
/* Le dimensioni vengono gestite via JavaScript per mantenere le proporzioni */
#spline-geometry-panel .draw-shape-area .canvas canvas{
    display: block;
    box-sizing: border-box;
    /* Non impostare width/height al 100% per evitare stretching */
}

/* Freehand canvas: nessuna griglia CSS statica, viene disegnata dinamicamente */
/* Icone per i pulsanti del canvas 2D */
#freehand-geometry-panel .tools button.undo-canvas:before,
#spline-geometry-panel .tools button.undo-canvas:before,
#lathe-geometry-panel .tools button.undo-canvas:before {
    display: none;
}

#freehand-geometry-panel .tools button.undo-canvas,
#spline-geometry-panel .tools button.undo-canvas,
#lathe-geometry-panel .tools button.undo-canvas {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGFzcz0idW5kby1zdmciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmVyc2lvbj0iMS4xIiB2aWV3Qm94PSIwIDAgMzIgMzIiIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiI+CgkJICA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTkuNDQsMjIuNzJjMi40MSwwLDQuMy0xLjk4LDQuMzEtNC4zMXMtMS44Ny00LjM2LTQuMy00LjM2aC05Ljc5czMuMTksMy4xNywzLjE5LDMuMTdjLjM4LjM3LjM3Ljk0LjA0LDEuMzJzLS45NC40OS0xLjM0LjFsLTQuOTEtNC44NGMtLjQyLS40MS0uNDItMS4wMiwwLTEuNDNsNC44NS00Ljc4Yy4zOC0uMzguOTktLjI4LDEuMzIuMDZzLjM4Ljk1LDAsMS4zMmwtMy4xNywzLjE0LDkuOTMuMDJjMy4zNSwwLDYsMi43OCw2LjEsNi4wNHMtMi4zOCw2LjE4LTUuNzUsNi40NmMtLjk4LjA4LTEuOTQsMC0yLjk0LjAzLS41NC4wMS0uOTQtLjQ1LS45Ni0uOTQtLjAyLS41My40LS45OS45Ni0uOTloMi40NVoiIGZpbGw9IiMzMzMzMzMiLz4KCQk8L3N2Zz4=");
    background-size: 24px 24px;
    background-repeat: no-repeat;
    background-position: center;
}



#freehand-geometry-panel .tools button.delete-canvas:before,
#spline-geometry-panel .tools button.delete-canvas:before,
#lathe-geometry-panel .tools button.delete-canvas:before {
    display: none;
}

#freehand-geometry-panel .tools button.delete-canvas,
#spline-geometry-panel .tools button.delete-canvas,
#lathe-geometry-panel .tools button.delete-canvas {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjYuMTEsOC4zMWMtLjE4LTEuMDgtMS4wNy0xLjg0LTIuMTctMS44NWgtMy4zM3MtLjAzLS42Ny0uMDMtLjY3Yy0uMDQtMS4xOC0xLjAxLTIuMS0yLjE5LTIuMWgtNS41NGMtMS4xOSwwLTIuMTUuOTItMi4xOSwyLjFsLS4wMy42N2gtMy4zOWMtMS4wOS4wNS0xLjk2Ljg0LTIuMTEsMS45MS0uMTQsMS4wMS40NSwxLjk5LDEuNDEsMi4zNWwxLjIyLDE0Ljc1Yy4xLDEuMjMsMS4wNSwyLjEyLDIuMjYsMi4xMmgxMS4yOWMxLjE1LS4wMSwyLjA3LS45LDIuMTctMi4xMmwxLjIyLTE0Ljc1Yy45OS0uMzcsMS41OC0xLjM3LDEuNDEtMi40MVpNMjMuMDUsMTAuODhsLTEuMiwxNC41MmMtLjAzLjI0LS4xNi41My0uNi41NWgtMTEuMjhjLS4zNS0uMDItLjU2LS4yNC0uNTgtLjYxbC0xLjItMTQuNDZoMTQuODVaTTE4Ljk2LDUuODh2LjU3aC02LjY2di0uNTdjLS4wMS0uMTUuMDUtLjMuMTUtLjQuMDktLjA5LjIxLS4xNS4zNC0uMTVoNS42NmMuMTYsMCwuMjcuMDguMzQuMTUuMTEuMTEuMTcuMjYuMTYuNFpNNi45LDguMjVjLjA4LS4wOS4xOC0uMTQuMjktLjE0aDE2Ljg2Yy4xMSwwLC4yLjA0LjI4LjEzLjEyLjEzLjE3LjMzLjE3LjQ1LS4wMS4yMi0uMTcuNTQtLjU0LjU0SDcuMzJjLS4zNCwwLS41NC0uMjUtLjU3LS40OS0uMDItLjE2LjA0LS4zNi4xNS0uNDlaIiBmaWxsPSIjMzMzMzMzIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTExLjYyLDI0LjZjLjE1LjEzLjM0LjIuNTMuMi4wMiwwLC4wNCwwLC4wNSwwLC40MS0uMDMuOC0uMzUuNzctLjkxbC0uNy0xMS4yYy0uMDEtLjE5LS4wOS0uMzUtLjI0LS40OC0uMTctLjE1LS40MS0uMjMtLjY0LS4yMS0uMzguMDMtLjc4LjM2LS43NS44MWwuNjksMTEuMjFjLjAxLjIyLjExLjQyLjI4LjU3WiIgZmlsbD0iIzMzMzMzMyIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xOS4wNCwyNC44MXMuMDMsMCwuMDQsMGMuMzgsMCwuNzktLjI4LjgyLS43NWwuNy0xMS4yNGMuMDMtLjQ1LS4zNy0uNzktLjc1LS44MS0uMjIsMC0uNDcuMDYtLjY0LjIxLS4xNS4xMy0uMjMuMjktLjI0LjQ4bC0uNywxMS4yNGMtLjAxLjIzLjA2LjQ0LjIuNi4xNC4xNi4zNS4yNi41Ni4yN1oiIGZpbGw9IiMzMzMzMzMiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTUuNTksMjQuODFzLjAyLDAsLjAzLDBjLjIxLDAsLjQyLS4wOC41Ni0uMjIuMTYtLjE2LjI1LS4zNy4yNS0uNjF2LTExLjFjMC0uMjYtLjA5LS40OS0uMjUtLjY1LS4xNS0uMTUtLjM3LS4yMS0uNTktLjIyLS40Ni4wMi0uNzguMzctLjc4Ljg2djExLjA3YzAsLjQ5LjMyLjg1Ljc4Ljg3WiIgZmlsbD0iIzMzMzMzMyIvPjwvc3ZnPg==");
    background-size: 24px 24px;
    background-repeat: no-repeat;
    background-position: center;
}



#freehand-geometry-panel .tools button.zoom-in-canvas:before,
#spline-geometry-panel .tools button.zoom-in-canvas:before,
#lathe-geometry-panel .tools button.zoom-in-canvas:before,
#freehand-geometry-panel .tools button.zoom-out-canvas:before,
#spline-geometry-panel .tools button.zoom-out-canvas:before,
#lathe-geometry-panel .tools button.zoom-out-canvas:before {
    display: none;
}

#freehand-geometry-panel .tools .btn-group-vertical button.zoom-in-canvas,
#spline-geometry-panel .tools .btn-group-vertical button.zoom-in-canvas,
#lathe-geometry-panel .tools .btn-group-vertical button.zoom-in-canvas {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTggMEM3LjQ0NzcyIDAgNyAwLjQ0NzcxNSA3IDFWN0gxQzAuNDQ3NzE1IDcgMCA3LjQ0NzcyIDAgOEMwIDguNTUyMjkgMC40NDc3MTUgOSAxIDlIN1YxNUM3IDE1LjU1MjMgNy40NDc3MiAxNiA4IDE2QzguNTUyMjkgMTYgOSAxNS41NTIzIDkgMTVWOUgxNUMxNS41NTIzIDkgMTYgOC41NTIyOSAxNiA4QzE2IDcuNDQ3NzIgMTUuNTUyMyA3IDE1IDdIOVYxQzkgMC40NDc3MTUgOC41NTIyOSAwIDggMFoiIGZpbGw9IiMzMzMzMzMiLz4KPC9zdmc+");
    background-size: 16px 16px;
    background-repeat: no-repeat;
    background-position: center;
}

#freehand-geometry-panel .tools .btn-group-vertical button.zoom-out-canvas,
#spline-geometry-panel .tools .btn-group-vertical button.zoom-out-canvas,
#lathe-geometry-panel .tools .btn-group-vertical button.zoom-out-canvas {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0ibSAwIDggYyAwIDAuNTUyMyAwLjQ0NzcgMSAxIDEgaCAxNCBjIDAuNTUyMyAwIDEgLTAuNDQ3NyAxIC0xIGMgMCAtMC41NTIzIC0wLjQ0NzcgLTEgLTEgLTEgaCAtMTQgYyAtMC41NTIzIDAgLTEgMC40NDc3IC0xIDEgeiIgZmlsbD0iIzMzMzMzMyIvPgo8L3N2Zz4=");
    background-size: 16px 16px;
    background-repeat: no-repeat;
    background-position: center;
}



/* Bordi arrotondati per il gruppo zoom del canvas 2D */
#freehand-geometry-panel .tools .btn-group-vertical button.zoom-in-canvas,
#spline-geometry-panel .tools .btn-group-vertical button.zoom-in-canvas,
#lathe-geometry-panel .tools .btn-group-vertical button.zoom-in-canvas {
    border-radius: 24px 24px 0 0;
    border-bottom: 1px solid rgba(22, 38, 55, .1);
}

#freehand-geometry-panel .tools .btn-group-vertical button.zoom-in-canvas:hover,
#spline-geometry-panel .tools .btn-group-vertical button.zoom-in-canvas:hover,
#lathe-geometry-panel .tools .btn-group-vertical button.zoom-in-canvas:hover {
    border-bottom-color: #000 !important;
}

#freehand-geometry-panel .tools .btn-group-vertical button.zoom-out-canvas,
#spline-geometry-panel .tools .btn-group-vertical button.zoom-out-canvas,
#lathe-geometry-panel .tools .btn-group-vertical button.zoom-out-canvas {
    border-radius: 0 0 24px 24px;
    border-top: none;
}

/* Icone SVG personalizzate per spline e lathe */
/* Nascondi icone font esistenti */
#spline-geometry-panel .tools button.pen:before,
#spline-geometry-panel .tools button.select:before,
#spline-geometry-panel .tools button.rubber:before,
#lathe-geometry-panel .tools button.pen:before,
#lathe-geometry-panel .tools button.drag:before {
    display: none;
}

/* Icona penna/inserisci punti - Spline */
#spline-geometry-panel .tools button.pen {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 32 32'%3E%3Cpath d='M9.97,23.23c.53,1.17.16,2.47-.83,3.18s-2.38.61-3.27-.26-1.02-2.24-.31-3.26,2.02-1.4,3.2-.86l13.26-13.26c-.52-1.14-.18-2.47.83-3.18s2.39-.6,3.27.26,1.01,2.24.31,3.26-2.05,1.4-3.2.86l-13.26,13.26ZM24.11,6.85c-.5.13-.72.64-.58,1.08s.6.68,1.03.55c.45-.13.72-.59.59-1.05-.12-.43-.56-.71-1.04-.58ZM7.44,23.52c-.5.13-.72.64-.58,1.08s.6.68,1.03.55c.45-.13.72-.59.59-1.05-.12-.43-.56-.71-1.04-.58Z' fill='%23333333'/%3E%3C/svg%3E");
    background-size: 24px 24px;
    background-repeat: no-repeat;
    background-position: center;
}

/* Icona muovi/seleziona - Spline */
#spline-geometry-panel .tools button.select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 32 32'%3E%3Cpath d='M16.71,11.78c-.3.26-1.07.25-1.37.03-.15-.11-.25-.35-.26-.58v-3.78s-1.01.99-1.01.99c-.16.15-.37.26-.61.23-.19-.02-.37-.2-.56-.36-.29-.26-.54-.73-.2-1.07l2.77-2.78c.28-.28.72-.28,1,0l2.83,2.84c.35.35.08.81-.2,1.08s-.68.55-1.04.23c-.39-.36-.76-.74-1.14-1.12v3.74c0,.21-.09.44-.21.55Z' fill='%23333333'/%3E%3Cpath d='M16.46,27.55c-.27.28-.7.27-.96.01l-2.8-2.8c-.36-.36-.07-.8.2-1.08.33-.34.77-.51,1.15-.15l1.03,1.01v-3.78c0-.22.12-.47.26-.58.19-.14.41-.14.67-.16.39-.02.9.14.9.62v3.86s1.09-1.07,1.09-1.07c.36-.35.8-.12,1.1.18.28.28.55.73.2,1.08l-2.84,2.85Z' fill='%23333333'/%3E%3Cpath d='M23.49,18l1.04-1.07-3.87-.02c-.49,0-.64-.51-.63-.91,0-.37.11-.9.58-.9l3.87-.03-1.08-1.12c-.32-.33-.07-.75.2-1.02.26-.26.71-.59,1.06-.25l2.85,2.83c.31.31.31.74,0,1.05l-2.72,2.72c-.24.24-.64.26-.89.04-.3-.27-.92-.79-.42-1.31Z' fill='%23333333'/%3E%3Cpath d='M7.48,16.92l1.05,1.09c.48.5-.11,1.01-.43,1.29-.27.25-.66.2-.91-.05l-2.7-2.69c-.31-.31-.31-.74,0-1.05l2.85-2.83c.34-.34.81,0,1.06.25.27.28.53.69.2,1.03l-1.08,1.12,3.82.02c.48,0,.65.51.62.9-.01.26-.02.48-.16.67-.11.15-.36.26-.58.26h-3.75Z' fill='%23333333'/%3E%3Cpath d='M15.69,14.2c1.04-.17,1.95.52,2.11,1.49s-.5,1.95-1.5,2.12-1.91-.48-2.1-1.45.43-1.98,1.49-2.16Z' fill='%23333333'/%3E%3C/svg%3E");
    background-size: 24px 24px;
    background-repeat: no-repeat;
    background-position: center;
}

/* Icona gommino - Spline */
#spline-geometry-panel .tools button.rubber {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 32 32'%3E%3Cpath d='M26.45,25.88h-10.75s11.05-11.06,11.05-11.06c.88-.88.89-2.27.02-3.17l-6.43-6.44c-.39-.39-.91-.61-1.48-.61h0c-.62,0-1.24.26-1.69.71l-11.17,11.17c-1.9,1.9-1.91,5.12,0,7.03l2.39,2.4c.94.95,2.15,1.49,3.31,1.49l14.66.02h0c.48,0,.75-.39.77-.76.01-.2-.07-.41-.21-.56-.13-.14-.29-.21-.47-.21ZM14.45,24.92c-1.32,1.3-3.53,1.31-4.83,0l-2.49-2.49c-1.33-1.33-1.34-3.56-.04-4.88l1.82-1.83,7.37,7.37-1.84,1.82ZM25.68,13.78l-8.29,8.29-7.41-7.45,8.36-8.32c.28-.24.6-.26.86-.08l6.49,6.49c.15.15.24.34.23.53,0,.19-.09.38-.25.53Z' fill='%23333333'/%3E%3C/svg%3E");
    background-size: 24px 24px;
    background-repeat: no-repeat;
    background-position: center;
}

/* Icona matita - Lathe */
#lathe-geometry-panel .tools button.pen {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 32 32'%3E%3Cpath d='M9.91,26.89l-4.84.37c-.93.07-1.77-.59-1.7-1.59l.38-5.09c.04-.54.23-1.01.61-1.39L19.9,3.71c.83-.83,2.14-.92,3-.07l4.1,4.09c.81.81.82,2.11,0,2.93l-15.58,15.58c-.42.42-.89.6-1.51.64ZM25.74,9.42c.13-.13.09-.36-.02-.47l-4-3.99c-.08-.08-.26-.18-.35-.16-.07.01-.2.1-.27.17l-2.61,2.62,4.53,4.52,2.71-2.69ZM10.01,25.06l11.78-11.71-4.51-4.53-11.74,11.77-.36,4.84,4.83-.37Z' fill='%23333333'/%3E%3Cpath d='M27.42,28.49h-14.43c-.48,0-.77-.58-.75-.92.02-.4.33-.85.82-.85h14.32c.48,0,.81.45.82.84.02.44-.26.83-.78.94Z' fill='%23333333'/%3E%3C/svg%3E");
    background-size: 24px 24px;
    background-repeat: no-repeat;
    background-position: center;
}

/* Icona muovi - Lathe */
#lathe-geometry-panel .tools button.drag {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 32 32'%3E%3Cpath d='M16.71,11.78c-.3.26-1.07.25-1.37.03-.15-.11-.25-.35-.26-.58v-3.78s-1.01.99-1.01.99c-.16.15-.37.26-.61.23-.19-.02-.37-.2-.56-.36-.29-.26-.54-.73-.2-1.07l2.77-2.78c.28-.28.72-.28,1,0l2.83,2.84c.35.35.08.81-.2,1.08s-.68.55-1.04.23c-.39-.36-.76-.74-1.14-1.12v3.74c0,.21-.09.44-.21.55Z' fill='%23333333'/%3E%3Cpath d='M16.46,27.55c-.27.28-.7.27-.96.01l-2.8-2.8c-.36-.36-.07-.8.2-1.08.33-.34.77-.51,1.15-.15l1.03,1.01v-3.78c0-.22.12-.47.26-.58.19-.14.41-.14.67-.16.39-.02.9.14.9.62v3.86s1.09-1.07,1.09-1.07c.36-.35.8-.12,1.1.18.28.28.55.73.2,1.08l-2.84,2.85Z' fill='%23333333'/%3E%3Cpath d='M23.49,18l1.04-1.07-3.87-.02c-.49,0-.64-.51-.63-.91,0-.37.11-.9.58-.9l3.87-.03-1.08-1.12c-.32-.33-.07-.75.2-1.02.26-.26.71-.59,1.06-.25l2.85,2.83c.31.31.31.74,0,1.05l-2.72,2.72c-.24.24-.64.26-.89.04-.3-.27-.92-.79-.42-1.31Z' fill='%23333333'/%3E%3Cpath d='M7.48,16.92l1.05,1.09c.48.5-.11,1.01-.43,1.29-.27.25-.66.2-.91-.05l-2.7-2.69c-.31-.31-.31-.74,0-1.05l2.85-2.83c.34-.34.81,0,1.06.25.27.28.53.69.2,1.03l-1.08,1.12,3.82.02c.48,0,.65.51.62.9-.01.26-.02.48-.16.67-.11.15-.36.26-.58.26h-3.75Z' fill='%23333333'/%3E%3C/svg%3E");
    background-size: 24px 24px;
    background-repeat: no-repeat;
    background-position: center;
}

#freehand-geometry-panel .draw-shape-area .canvas{
    background-color: transparent !important;
    background-image: none !important;
    height:100%;
    width:100%;
}

#extrusion-geometry-panel .draw-shape-area .canvas{
    height:100%;
    width:100%;
    /*display:none;*/
}

.navbar a.btn{
    text-align: left;
}

#mesh-properties-box,
#replica-panel,
#transformlabels-box{
    width:500px;
    height:calc(100vh - 48px); /* Footer rimosso */
    background:#fff;
    position:absolute;
    right:0;
    top:0px;
    border-left:1px solid #e7e7e7;
    -webkit-transform:translateX(510px);
    transform:translateX(510px);
    -webkit-transition: 0.5s transform;
    transition: 0.5s transform;
    overflow:auto;
}

#transformlabels-box{
    width:100%;
}

#mesh-properties-box h5,
#replica-panel h5,
#transformerlabels-box{
    margin:15px;
    font-size:16px;
    font-weight:400;
    text-align:center;
}

#mesh-properties-box.open,
#replica-panel.open,
#transformlabels-box.open{
    -webkit-transform:translateX(0px);
    transform:translateX(0px);
    z-index:100;
}

#sidebar-accordion .panel{
    border-left:0px;
    border-bottom:0px;
    margin-top:0px;
    background-color:transparent;
    -webkit-box-shadow:none !important;
    box-shadow:none !important;
}

.menu-voice-with-check span{
    display:inline-block;
    vertical-align:middle;
}

/* Diario di progetto: pagina editoriale verticale, confinata al pannello. */
#project-journal-panel{width:100%;height:100%;position:fixed;inset:0;background:#f5f5f5;overflow:auto;z-index:-100;}
#project-journal-panel.on{z-index:1050;}
#project-journal-panel *{box-sizing:border-box;}
#project-journal-panel .btn{text-transform:none;}
#project-journal-panel .project-journal-shell{min-height:100%;max-width:1280px;margin:0 auto;padding:28px 32px 48px;}
#project-journal-panel .project-journal-header{display:flex;align-items:flex-start;justify-content:space-between;width:100%;max-width:1120px;margin:0 auto 24px;min-width:0;}
#project-journal-panel .project-journal-header>div{min-width:0;}
#project-journal-panel .project-journal-header h2{margin:0 0 4px;font-size:24px;font-weight:400;}
#project-journal-panel .project-journal-header p{margin:0;color:#777;}
#project-journal-panel .project-journal-header .close{flex:0 0 auto;margin-left:20px;font-size:32px;}
#project-journal-panel .project-journal-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex:0 0 auto;}
#project-journal-panel .journal-reader-open{margin:0;text-transform:none;white-space:nowrap;}
#project-journal-panel .journal-print-open{margin:0;text-transform:none;white-space:nowrap;}
#project-journal-panel .journal-reader-open:focus,
#project-journal-panel .journal-print-open:focus{outline:2px solid currentColor;outline-offset:2px;}
.journal-print-options section{min-width:0;}
.journal-print-options h5{margin:0 0 8px;font-size:16px;font-weight:500;}
.journal-print-options .journal-paper-downloads{display:flex;flex-wrap:wrap;gap:8px;min-width:0;}
.journal-print-options .journal-paper-downloads .btn{margin:0;max-width:100%;white-space:normal;text-align:left;text-transform:none;}
#journal-print-document{display:none;}
#project-journal-panel .project-journal-body{display:flex;flex-direction:column;align-items:center;gap:28px;width:100%;min-width:0;}
#project-journal-panel .project-journal-composer,
#project-journal-panel .journal-entry{background:#fff;border:1px solid #e4e4e4;border-radius:3px;box-shadow:0 1px 3px rgba(0,0,0,.06);}
#project-journal-panel .project-journal-composer{width:100%;max-width:1120px;padding:24px;min-width:0;}
#project-journal-panel .project-journal-composer-toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;max-width:1120px;min-width:0;padding:15px 18px;border:1px solid #d0d0d0;border-radius:3px;background:#fff;color:#444;font:inherit;text-align:left;cursor:pointer;box-shadow:0 1px 2px rgba(0,0,0,.04);}
#project-journal-panel .project-journal-composer-toggle:hover{border-color:#aaa;background:#fafafa;}
#project-journal-panel .project-journal-composer-toggle:focus,
#project-journal-panel .journal-composer-collapse:focus{outline:2px solid currentColor;outline-offset:2px;}
#project-journal-panel .journal-composer-draft-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-width:0;}
#project-journal-panel .journal-composer-draft-summary strong{font-weight:500;}
#project-journal-panel .journal-composer-draft-summary span{color:#666;}
#project-journal-panel .journal-composer-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 18px;padding:0 0 14px;border-bottom:1px solid #eee;min-width:0;}
#project-journal-panel .journal-composer-header h2{margin:0;font-size:17px;font-weight:500;}
#project-journal-panel .journal-composer-collapse{flex:0 0 auto;margin:0;padding:5px 8px;text-transform:none;}
#project-journal-panel .journal-composer-collapse[disabled]{color:#999;cursor:not-allowed;opacity:.65;}
#project-journal-panel #journal-composer-content{min-width:0;}
#project-journal-panel .journal-writing-section,
#project-journal-panel .journal-field,
#project-journal-panel .journal-attachments,
#project-journal-panel .journal-snapshot-option{display:block;min-width:0;}
#project-journal-panel .journal-editor{display:block;width:100%;min-height:240px;padding:18px;font-size:16px;line-height:1.6;resize:vertical;user-select:text;}
#project-journal-panel .journal-authors-section{margin-top:22px;padding-top:20px;border-top:1px solid #eee;}
#project-journal-panel .journal-field>label{display:block;margin-bottom:8px;font-weight:500;}
#project-journal-panel .journal-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px;min-width:0;}
#project-journal-panel .journal-chip{max-width:100%;padding:4px 9px;background:#eee;border-radius:14px;overflow-wrap:anywhere;}
#project-journal-panel .journal-chip button{border:0;background:transparent;padding:0 0 0 5px;}
#project-journal-panel .journal-author-controls{display:flex;align-items:stretch;gap:8px;min-width:0;}
#project-journal-panel .journal-author-controls .form-control{flex:1 1 auto;width:auto;min-width:0;}
#project-journal-panel .journal-author-controls .btn{flex:0 0 auto;margin:0;white-space:nowrap;}
#project-journal-panel .journal-attachments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;margin-top:22px;}
#project-journal-panel .journal-attachment{min-width:0;min-height:112px;padding:16px;border:1px solid #ddd;border-radius:3px;background:#fafafa;}
#project-journal-panel .journal-attachment h3{margin:0 0 12px;font-size:15px;font-weight:500;}
#project-journal-panel .journal-image-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0;}
#project-journal-panel .journal-image-actions .btn{flex:0 0 auto;max-width:100%;margin:0;white-space:nowrap;}
#project-journal-panel .journal-media-action{min-height:34px;padding:7px 12px;border:1px solid #c9c9c9;border-radius:3px;background:#fff;box-shadow:0 1px 1px rgba(0,0,0,.06);color:#333;text-decoration:none;}
#project-journal-panel .journal-media-action:hover,
#project-journal-panel .journal-media-action:focus{border-color:#aaa;background:#f3f3f3;color:#222;text-decoration:none;}
#project-journal-panel .journal-media-action:focus{outline:2px solid currentColor;outline-offset:2px;}
#project-journal-panel .journal-media-action[disabled],
#project-journal-panel .journal-media-action.disabled{border-color:#ddd;background:#f5f5f5;box-shadow:none;color:#999;cursor:not-allowed;opacity:.7;}
#project-journal-panel .journal-audio-tool>.journal-media-action{margin:0;}
#project-journal-panel .journal-image-ready{min-width:0;}
#project-journal-panel .journal-image-preview{display:block;width:auto;max-width:100%;height:auto;max-height:320px;margin:0 auto 12px;object-fit:contain;background:#f2f2f2;}
#project-journal-panel .journal-media-remove{padding:6px 8px;border:1px solid #ddd;border-radius:3px;background:#fff;text-decoration:none;}
#project-journal-panel .journal-media-remove:hover,
#project-journal-panel .journal-media-remove:focus{border-color:#ddd;background:#fff;text-decoration:none;}
#project-journal-panel .journal-media-status{display:block;color:#666;line-height:1.5;overflow-wrap:anywhere;}
#project-journal-panel .journal-audio-recording{display:flex;flex-wrap:wrap;align-items:center;gap:10px;min-width:0;}
#project-journal-panel .journal-recording-status{min-width:0;color:#555;}
#project-journal-panel .journal-recording-dot{color:#c62828;}
#project-journal-panel .journal-recording-timer{flex:0 0 5ch;color:#555;font-variant-numeric:tabular-nums;text-align:center;}
#project-journal-panel .journal-audio-recording .btn{flex:0 0 auto;margin:0;white-space:nowrap;}
#project-journal-panel .journal-attachment audio,
#project-journal-panel .journal-entry audio{display:block;width:100%;min-width:0;max-width:100%;height:34px;vertical-align:middle;}
#project-journal-panel .journal-audio-ready{display:flex;flex-direction:column;align-items:stretch;gap:8px;width:100%;min-width:0;}
#project-journal-panel .journal-audio-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;min-width:0;}
#project-journal-panel .journal-audio-duration{color:#777;font-size:13px;font-variant-numeric:tabular-nums;}
#project-journal-panel .journal-audio-ready .journal-audio-remove{max-width:100%;margin:0;padding:5px 8px;white-space:nowrap;text-align:left;}
#project-journal-panel .project-journal-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-top:24px;padding-top:20px;border-top:1px solid #e5e5e5;min-width:0;}
#project-journal-panel .journal-composer-feedback{flex:1 1 auto;min-width:0;}
#project-journal-panel .journal-snapshot-option small{display:block;margin-left:20px;color:#777;}
#project-journal-panel .journal-error{color:#c62828;font-size:13px;margin:6px 0 0;overflow-wrap:anywhere;}
#project-journal-panel .project-journal-actions{flex:0 0 auto;text-align:right;}
#project-journal-panel .project-journal-actions .btn{margin:0;white-space:nowrap;}
#project-journal-panel .project-journal-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;}
#project-journal-panel .journal-edit-cancel{padding:7px 10px;}
#project-journal-panel .project-journal-timeline{display:flex;flex-direction:column;width:100%;max-width:1120px;min-width:0;}
#project-journal-panel .journal-empty{width:100%;padding:22px 24px;text-align:center;color:#777;border:1px dashed #d5d5d5;border-radius:3px;background:rgba(255,255,255,.45);}
#project-journal-panel .journal-empty p{margin:0 0 3px;color:#555;font-weight:500;}
#project-journal-panel .journal-empty span{display:block;}
#project-journal-panel .journal-entry{width:100%;min-width:0;margin-bottom:16px;padding:24px;overflow:hidden;}
#project-journal-panel .journal-entry-header{min-width:0;}
#project-journal-panel .journal-entry time{display:block;color:#777;font-size:13px;}
#project-journal-panel .journal-entry h3{font-size:16px;font-weight:500;margin:5px 0 14px;overflow-wrap:anywhere;}
#project-journal-panel .journal-entry-text{max-width:78ch;margin:0 0 14px;white-space:pre-wrap;line-height:1.6;overflow-wrap:anywhere;}
#project-journal-panel .journal-entry time,
#project-journal-panel .journal-entry h3,
#project-journal-panel .journal-entry p{-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;-webkit-user-drag:auto;user-drag:auto;}
#project-journal-panel .journal-entry button,
#project-journal-panel .journal-entry audio,
#project-journal-panel .journal-entry img{-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-drag:none;user-drag:none;}
#project-journal-panel .journal-entry-image{display:block;width:auto;max-width:100%;height:auto;max-height:520px;margin:12px 0;object-fit:contain;}
#project-journal-panel .journal-entry-audio{display:flex;flex-wrap:wrap;align-items:center;gap:8px;width:100%;min-width:0;margin:12px 0;}
#project-journal-panel .journal-entry-audio audio{flex:1 1 260px;min-width:0;}
#project-journal-panel .journal-entry-audio span{flex:0 0 auto;color:#777;font-size:13px;}
#project-journal-panel .journal-entry-snapshot{max-width:100%;margin:4px 0 0;white-space:normal;text-align:left;}
#project-journal-panel .journal-entry-management{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px;margin-top:16px;padding-top:12px;border-top:1px solid #eee;}
#project-journal-panel .journal-entry-management .btn{margin:0;padding:6px 9px;text-transform:none;}
#project-journal-panel .journal-entry-management .journal-entry-delete{color:#a94442;}
.journal-reader-overlay{position:fixed;inset:0;z-index:1070;overflow:hidden;background:#f5f5f5;color:#333;box-sizing:border-box;}
.journal-reader-overlay *{box-sizing:border-box;}
.journal-reader-shell{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:100%;height:100%;min-width:0;}
.journal-reader-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px clamp(18px,3vw,44px);border-bottom:1px solid #ddd;background:#fff;}
.journal-reader-header>div{min-width:0;}
.journal-reader-header p{margin:0 0 2px;color:#777;font-size:14px;}
.journal-reader-header h2{margin:0;font-size:clamp(22px,2.4vw,34px);font-weight:400;line-height:1.2;}
.journal-reader-header h2:focus{outline:2px solid currentColor;outline-offset:4px;}
.journal-reader-exit{flex:0 0 auto;margin:0;text-transform:none;}
.journal-reader-content{min-width:0;overflow-x:hidden;overflow-y:auto;padding:clamp(20px,3vw,44px);}
.journal-reader-entry{display:flex;flex-direction:column;align-items:center;gap:clamp(18px,2.5vw,32px);width:100%;max-width:1200px;min-width:0;margin:0 auto;padding:clamp(20px,3vw,44px);background:#fff;border:1px solid #e1e1e1;border-radius:3px;box-shadow:0 1px 4px rgba(0,0,0,.08);}
.journal-reader-image{display:block;width:auto;max-width:100%;height:auto;max-height:min(56vh,640px);object-fit:contain;user-select:none;-webkit-user-drag:none;}
.journal-reader-text{width:100%;max-width:54ch;margin:0;color:#292929;font-size:clamp(19px,2.2vw,30px);line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere;user-select:text;}
.journal-reader-audio{display:flex;align-items:center;gap:12px;width:100%;max-width:760px;min-width:0;}
.journal-reader-audio audio{display:block;flex:1 1 auto;width:100%;min-width:0;max-width:100%;}
.journal-reader-audio span{flex:0 0 auto;color:#777;font-variant-numeric:tabular-nums;}
.journal-reader-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 18px;width:100%;color:#777;font-size:clamp(13px,1.2vw,16px);text-align:center;user-select:text;}
.journal-reader-meta strong{color:#555;font-weight:500;overflow-wrap:anywhere;}
.journal-reader-snapshot{padding-left:18px;position:relative;}
.journal-reader-snapshot:before{content:"";position:absolute;left:6px;top:50%;width:4px;height:4px;margin-top:-2px;border-radius:50%;background:currentColor;}
.journal-reader-navigation{display:grid;grid-template-columns:minmax(120px,1fr) auto minmax(120px,1fr);align-items:center;gap:18px;padding:14px clamp(18px,3vw,44px);border-top:1px solid #ddd;background:#fff;}
.journal-reader-navigation .btn{margin:0;text-transform:none;}
.journal-reader-navigation .btn:first-child{justify-self:start;}
.journal-reader-navigation .btn:last-child{justify-self:end;}
.journal-reader-navigation .btn:focus,.journal-reader-exit:focus{outline:2px solid currentColor;outline-offset:2px;}
.journal-reader-position{min-width:7ch;color:#555;font-size:clamp(15px,1.5vw,19px);font-variant-numeric:tabular-nums;text-align:center;}
.journal-icon{display:flex!important;align-items:center;width:48px!important;padding:0!important;}
.journal-icon-svg{display:block;width:32px;height:32px;color:#fff;}
.journal-icon-hover-group{display:none;}
.journal-icon:hover .journal-icon-normal-group,.journal-icon:focus .journal-icon-normal-group,.journal-icon:active .journal-icon-normal-group{display:none;}
.journal-icon:hover .journal-icon-hover-group,.journal-icon:focus .journal-icon-hover-group,.journal-icon:active .journal-icon-hover-group{display:inline;}
.journal-icon.journal-reminder-active .journal-icon-normal-group{animation:journal-reminder-pulse 2s steps(1,end) infinite;}
.journal-icon.journal-reminder-active:hover .journal-icon-normal-group,.journal-icon.journal-reminder-active:focus .journal-icon-normal-group,.journal-icon.journal-reminder-active:active .journal-icon-normal-group{animation:none;}
@keyframes journal-reminder-pulse{
	0%,49.999%{color:var(--save-success-color);filter:invert(57%) sepia(56%) saturate(594%) hue-rotate(73deg) brightness(91%) contrast(88%);}
	50%,100%{color:#fff;filter:invert(1);}
}
@media(prefers-reduced-motion:reduce){
	.journal-icon.journal-reminder-active .journal-icon-normal-group{color:var(--save-success-color);filter:invert(57%) sepia(56%) saturate(594%) hue-rotate(73deg) brightness(91%) contrast(88%);animation:none;}
}
.journal-capture-overlay{position:fixed;inset:0;z-index:1060;pointer-events:none;}
.journal-capture-controls{position:absolute;top:64px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:14px;max-width:calc(100vw - 28px);padding:10px 14px;background:#fff;border:1px solid #ddd;border-radius:3px;box-shadow:0 2px 8px rgba(0,0,0,.2);pointer-events:auto;}
.journal-capture-controls>div{display:flex;align-items:center;gap:6px;}
.journal-capture-controls .btn{margin:0;text-transform:none;}
@media(max-width:860px){
	#project-journal-panel .project-journal-shell{padding:22px 20px 40px;}
	#project-journal-panel .journal-attachments{grid-template-columns:minmax(0,1fr);}
	.journal-menu-item .journal-icon span{display:none;}
	.journal-reader-content{padding:18px;}
	.journal-reader-entry{padding:22px 18px;}
	.journal-reader-image{max-height:52vh;}
}
@media(max-width:600px){
	#project-journal-panel .project-journal-shell{padding:16px 14px 32px;}
	#project-journal-panel .project-journal-composer,
	#project-journal-panel .journal-entry{padding:18px;}
	#project-journal-panel .journal-editor{min-height:220px;padding:14px;}
	#project-journal-panel .journal-author-controls,
	#project-journal-panel .project-journal-footer{flex-direction:column;align-items:stretch;}
	#project-journal-panel .project-journal-composer-toggle,
	#project-journal-panel .journal-composer-draft-summary{align-items:flex-start;flex-direction:column;gap:4px;}
	#project-journal-panel .journal-author-controls .btn,
	#project-journal-panel .project-journal-actions,
	#project-journal-panel .project-journal-actions .btn{width:100%;}
	#project-journal-panel .project-journal-header{gap:14px;}
	#project-journal-panel .project-journal-header-actions{align-items:flex-end;flex-direction:column-reverse;gap:4px;}
	#project-journal-panel .project-journal-header .close{margin-left:0;}
	#project-journal-panel .journal-reader-open{white-space:normal;}
	.journal-reader-header{align-items:flex-start;padding:14px;}
	.journal-reader-content{padding:12px;}
	.journal-reader-entry{gap:18px;padding:18px 14px;}
	.journal-reader-image{max-height:46vh;}
	.journal-reader-audio{align-items:stretch;flex-direction:column;}
	.journal-reader-navigation{grid-template-columns:1fr 1fr;gap:8px;padding:10px 12px;}
	.journal-reader-position{grid-column:1/-1;grid-row:1;}
	.journal-reader-navigation .btn:first-child{grid-column:1;grid-row:2;justify-self:stretch;}
	.journal-reader-navigation .btn:last-child{grid-column:2;grid-row:2;justify-self:stretch;}
}

.menu-voice-with-check i{
    display:inline-block;
    width:24px;
    font-size:20px;
    vertical-align:middle;
    text-align:right;
}

.left-characters{
    margin-right:10px;
    font-size:14px;
    color:#BDBDBD;
}

.userdefined-publiccheck{
    background:rgb(130,96,98) !important;
    font-size:14px;
    font-weight: 400;
}

#shape-blocks{
    width:100%;
    height:500px;
}

.panel-group .panel-heading + .panel-collapse > .panel-body, .panel-group .panel-heading + .panel-collapse > .list-group{
    border:0px;
    border-top:1px solid #ddd ;
}

.panel-group .panel-heading + .panel-collapse > .panel-body:last-child, .panel-group .panel-heading + .panel-collapse > .list-group{
    border-top:0px;
}

#mesh-properties-box .panel-group .panel:last-child .panel-heading{
    border-bottom:1px solid #ddd;
}

.modal-header{
    background:#f8448f;
    color:#fff;
    border-bottom:0px;
}

.modal-header h4{
    font-size: 16px;
}

.modal .close{
    color:#fff;
}

.modal-header .close{
    margin-top: 0px;
    font-weight:100;
}

#shapes-area {
    font-size: 12px;
    line-height: 1.6em;
    padding: 0;
    position: absolute;
    margin: 0 auto;
    right: 0;
    width: 250px;
    top:0px;
    bottom: 0;
    color: #202020;
    overflow: auto;
    border-top: 1px solid #dcd9ce;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -webkit-transform: translateZ(0);
    z-index:3;
}

#shapes-area .shape-single-category .category-content{
    display:none;
}

#shapes-area .shape-single-category.open .category-content{
    display:block;
}

#shapes-area .category-title{
    font-family:'Lato';
    -webkit-user-select: none;
    margin: 0;
    color:#706e67;
    text-decoration:none;
    font-weight:600;
    font-size: 1.2em;
}

#shapes-container{
    padding:0;
    overflow:auto;
}

#shapes-list{
    overflow:auto;
}

.shape-single-category{
    border-top: 1px solid #dcd9ce;
    padding:10px;
}

.shape-single-category:first-child{
    border-top: 0px;
}

#tools-area{
    position: absolute;
    z-index: 3;
    top: 0px;
    left: 10px;
    width: 68px;
    overflow-y: auto;
    overflow-x: hidden;
    bottom: 0px;
    padding: 10px 0px;
}

#contextual-tools-area{
    display: flex;
    position: fixed;
    bottom: 0px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 3;
    width: auto;
    text-align: center;
    justify-content: center;
    align-items: center;
    padding: 0px 12px;
    border: 2px solid rgba(255, 255, 255, 1);
    background-color: hsla(0, 0%, 100%, .8);
    border-top-left-radius: 16px;
    border-top-right-radius: 16px;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    margin-left: 0;
    transition: margin-left 0.3s ease-in-out;
}

/* Quando la sidebar destra è aperta, sposta la barra a sinistra per centrarla nell'area disponibile */
#contextual-tools-area.sidebar-open {
    margin-left: -130px; /* Metà della larghezza della sidebar (260px / 2) */
}

/* Quando la sidebar destra è chiusa, la barra è centrata normalmente */
#contextual-tools-area.sidebar-closed {
    margin-left: 0;
}

.btn-group-vertical{
    margin:0px 1px 10px 1px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* Sovrascrivi per i pulsanti del canvas 2D - mantieni flex ma senza align-items center che può causare problemi */
#freehand-geometry-panel .tools .btn-group-vertical,
#spline-geometry-panel .tools .btn-group-vertical,
#lathe-geometry-panel .tools .btn-group-vertical {
    align-items: stretch; /* Invece di center, usa stretch per evitare problemi di layout */
}

.btn-group-vertical > .btn{
    margin-top:-1px !important;
}

.btn-group > .btn{
    /*margin-left:-1px !important;*/
}

#contextual-tools-area .btn-group{
    margin-right:4px;
    margin-top:0px;
    margin-bottom:0px;
}

#tools-area button,
#rotation-geometry-panel .tools button,
#extrusion-geometry-panel .tools button,
#lathe-geometry-panel .tools button,
#spline-geometry-panel .tools button,
#freehand-geometry-panel .tools button{
    outline:0;
    width:48px;
    height:48px;
    overflow:hidden;
    padding-left:0;
    padding-right:0;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-transition: opacity .2s ease, border .2s ease;
    -moz-transition: opacity .2s ease, border .2s ease;
    -ms-transition: opacity .2s ease, border .2s ease;
    -o-transition: opacity .2s ease, border .2s ease;
    transition: opacity .2s ease, border .2s ease;
    z-index: 1;
    background-color: hsla(0, 0%, 100%, .7);
    cursor: pointer;
    touch-action: manipulation;
    user-select: none;
    -webkit-user-drag: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    border: 2px solid rgba(22, 38, 55, .1);
    border-radius: 50%;
}

#contextual-tools-area button{
    outline:0;
    width:48px;
    height:48px;
    overflow:hidden;
    padding-left:0;
    padding-right:0;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-transition: opacity .2s ease, background-color .2s ease;
    -moz-transition: opacity .2s ease, background-color .2s ease;
    -ms-transition: opacity .2s ease, background-color .2s ease;
    -o-transition: opacity .2s ease, background-color .2s ease;
    transition: opacity .2s ease, background-color .2s ease;
    z-index: 1;
    background-color: transparent;
    cursor: pointer;
    touch-action: manipulation;
    user-select: none;
    -webkit-user-drag: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    border: none;
    border-radius: 0;
}

#contextual-tools-area button:hover:not(.disabled) {
    background-color: rgba(255, 255, 255, 0.3);
    opacity: 1;
}

#contextual-tools-area button:active:not(.disabled),
#contextual-tools-area button.activeOn:not(.disabled) {
    background-color: rgba(255, 255, 255, 0.5);
    opacity: 1;
}

#contextual-tools-area button.disabled {
    opacity: 0.4;
    cursor: not-allowed;
    pointer-events: none;
}

/* Nascondi icone themify nel menu contestuale */
#contextual-tools-area button.ti-settings:before,
#contextual-tools-area button.ti-close:before,
#contextual-tools-area button.ti-trash:before,
#contextual-tools-area button.sc-union:before,
#contextual-tools-area button.sc-intersection:before,
#contextual-tools-area button.sc-ungroup:before,
#contextual-tools-area button.sc-align:before,
#contextual-tools-area button.sc-split:before,
#contextual-tools-area button.sc-centerplane:before,
#contextual-tools-area button.sc-empty:before,
#contextual-tools-area button.sc-full:before,
#contextual-tools-area button.sc-copy:before,
#contextual-tools-area button.ti-export:before {
    display: none;
}

/* Icona Opzioni figura (settings) */
/* Icona X per pulsante close nel contextual menu */
#contextual-tools-area button.settings.ti-close {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 32 32'%3E%3Cpath d='M24.71,8.21c-.39-.39-1.02-.39-1.41,0L16,15.51,8.71,8.21c-.39-.39-1.02-.39-1.41,0s-.39,1.02,0,1.41L14.59,17,7.3,24.29c-.39.39-.39,1.02,0,1.41.2.2.45.29.71.29s.51-.1.71-.29L16,18.93l7.29,7.29c.2.2.45.29.71.29s.51-.1.71-.29c.39-.39.39-1.02,0-1.41L17.41,17l7.29-7.29C25.1,9.23,25.1,8.6,24.71,8.21Z' fill='%23333333'/%3E%3C/svg%3E");
    background-size: 24px 24px;
    background-repeat: no-repeat;
    background-position: center;
}

#contextual-tools-area button.settings.ti-settings {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTEuOTksMTguNjVjLTEuMTItLjA5LTEuOTktLjg1LTIuMzItMS44OGwtMi4xMi0uMDJjLS40MywwLS43LS40NS0uNjctLjgxLjA0LS40MS4zNy0uNy44LS43aDEuOTljLjM2LTEuMTcsMS40LTEuOSwyLjU1LTEuOXMyLjE2Ljc3LDIuNTEsMS44OWg5LjYyYy40NCwwLC43NS4zNS43Ni43NC4wMS40MS0uMzEuNzgtLjc2Ljc4aC05LjYyYy0uMzcsMS4xOC0xLjQ3LDEuOTktMi43NCwxLjg5Wk0xMi4wMSwxNC44OWMtLjY2LjExLTEuMDUuNzQtLjkyLDEuMzVzLjcwLjk5LDEuMy44OCwxLjA0LS43LjkzLTEuMzItLjY2LTEuMDItMS4zMS0uOTFaIiBmaWxsPSIjMzMzMzMzIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTE5Ljg3LDI0LjczYy0xLjIyLjA0LTIuMjUtLjc3LTIuNi0xLjg5SDcuNmMtLjQ0LDAtLjczLS40Mi0uNzItLjc4LjAxLS40LjMyLS43NC43Ni0uNzRoOS42MmMuMzQtMS4xNCwxLjM3LTEuODksMi41MS0xLjlzMi4yLjc1LDIuNTUsMS44OWgyLjAzYy40MywwLC43NC4zNS43NS43NC4wMS40MS0uMzEuNzgtLjc2Ljc4aC0yLjAzYy0uMzUsMS4wOC0xLjI4LDEuODYtMi40NiwxLjlaTTE5LjU2LDIwLjk3Yy0uNjYuMTUtMS4wMi43OS0uODcsMS4zOHMuNzQuOTcsMS4zNC44NCwxLS43NC44Ny0xLjM1Yy0uMTMtLjU4LS43MS0xLjAxLTEuMzUtLjg3WiIgZmlsbD0iIzMzMzMzMyIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xOS43NywxMi41OGMtMS4xOS0uMDEtMi4xNi0uOC0yLjUxLTEuOUg3LjY1Yy0uNDQsMC0uNzUtLjM0LS43Ni0uNzRzLjMtLjc4Ljc2LS43OGg5LjYyYy4zNC0xLjEzLDEuMzYtMS44OSwyLjUxLTEuOXMyLjIuNzUsMi41NSwxLjloMS45M2MuNDUsMCwuODEuMjUuODUuNjlzLS4yOS44Mi0uNzUuODJoLTIuMDNjLS4zNiwxLjEyLTEuMzQsMS45MS0yLjU2LDEuOVpNMTkuNTYsOC44MWMtLjY1LjE0LTEuMDIuNzktLjg2LDEuMzhzLjc1Ljk3LDEuMzQuODQsMS4wMS0uNzQuODctMS4zNi0uNzEtMS4wMS0xLjM1LS44N1oiIGZpbGw9IiMzMzMzMzMiLz48L3N2Zz4=");
    background-size: 24px 24px;
    background-repeat: no-repeat;
    background-position: center;
}

#contextual-tools-area button.settings.ti-settings:hover:not(.disabled) {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTEuOTksMTguNjVjLTEuMTItLjA5LTEuOTktLjg1LTIuMzItMS44OGwtMi4xMi0uMDJjLS40MywwLS43LS40NS0uNjctLjgxLjA0LS40MS4zNy0uNy44LS43aDEuOTljLjM2LTEuMTcsMS40LTEuOSwyLjU1LTEuOXMyLjE2Ljc3LDIuNTEsMS44OWg5LjYyYy40NCwwLC43NS4zNS43Ni43NC4wMS40MS0uMzEuNzgtLjc2Ljc4aC05LjYyYy0uMzcsMS4xOC0xLjQ3LDEuOTktMi43NCwxLjg5Wk0xMi4wMSwxNC44OWMtLjY2LjExLTEuMDUuNzQtLjkyLDEuMzVzLjcwLjk5LDEuMy44OCwxLjA0LS43LjkzLTEuMzItLjY2LTEuMDItMS4zMS0uOTFaIiBmaWxsPSIjZmZhOGFhIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTE5Ljg3LDI0LjczYy0xLjIyLjA0LTIuMjUtLjc3LTIuNi0xLjg5SDcuNmMtLjQ0LDAtLjczLS40Mi0uNzItLjc4LjAxLS40LjMyLS43NC43Ni0uNzRoOS42MmMuMzQtMS4xNCwxLjM3LTEuODksMi41MS0xLjlzMi4yLjc1LDIuNTUsMS44OWgyLjAzYy40MywwLC43NC4zNS43NS43NC4wMS40MS0uMzEuNzgtLjc2Ljc4aC0yLjAzYy0uMzUsMS4wOC0xLjI4LDEuODYtMi40NiwxLjlaTTE5LjU2LDIwLjk3Yy0uNjYuMTUtMS4wMi43OS0uODcsMS4zOHMuNzQuOTcsMS4zNC44NCwxLS43NC44Ny0xLjM1Yy0uMTMtLjU4LS43MS0xLjAxLTEuMzUtLjg3WiIgZmlsbD0iI2ZmYThhYSIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xOS43NywxMi41OGMtMS4xOS0uMDEtMi4xNi0uOC0yLjUxLTEuOUg3LjY1Yy0uNDQsMC0uNzUtLjM0LS43Ni0uNzRzLjMtLjc4Ljc2LS43OGg5LjYyYy4zNC0xLjEzLDEuMzYtMS44OSwyLjUxLTEuOXMyLjIuNzUsMi41NSwxLjloMS45M2MuNDUsMCwuODEuMjUuODUuNjlzLS4yOS44Mi0uNzUuODJoLTIuMDNjLS4zNiwxLjEyLTEuMzQsMS45MS0yLjU2LDEuOVpNMTkuNTYsOC44MWMtLjY1LjE0LTEuMDIuNzktLjg2LDEuMzhzLjc1Ljk3LDEuMzQuODQsMS4wMS0uNzQuODctMS4zNi0uNzEtMS4wMS0xLjM1LS44N1oiIGZpbGw9IiNmZmE4YWEiLz48L3N2Zz4=");
}

#contextual-tools-area button.settings.ti-settings.disabled {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTEuOTksMTguNjVjLTEuMTItLjA5LTEuOTktLjg1LTIuMzItMS44OGwtMi4xMi0uMDJjLS40MywwLS43LS40NS0uNjctLjgxLjA0LS40MS4zNy0uNy44LS43aDEuOTljLjM2LTEuMTcsMS40LTEuOSwyLjU1LTEuOXMyLjE2Ljc3LDIuNTEsMS44OWg5LjYyYy40NCwwLC43NS4zNS43Ni43NC4wMS40MS0uMzEuNzgtLjc2Ljc4aC05LjYyYy0uMzcsMS4xOC0xLjQ3LDEuOTktMi43NCwxLjg5Wk0xMi4wMSwxNC44OWMtLjY2LjExLTEuMDUuNzQtLjkyLDEuMzVzLjcwLjk5LDEuMy44OCwxLjA0LS43LjkzLTEuMzItLjY2LTEuMDItMS4zMS0uOTFaIiBmaWxsPSIjYmJiYmJiIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTE5Ljg3LDI0LjczYy0xLjIyLjA0LTIuMjUtLjc3LTIuNi0xLjg5SDcuNmMtLjQ0LDAtLjczLS40Mi0uNzItLjc4LjAxLS40LjMyLS43NC43Ni0uNzRoOS42MmMuMzQtMS4xNCwxLjM3LTEuODksMi41MS0xLjlzMi4yLjc1LDIuNTUsMS44OWgyLjAzYy40MywwLC43NC4zNS43NS43NC4wMS40MS0uMzEuNzgtLjc2Ljc4aC0yLjAzYy0uMzUsMS4wOC0xLjI4LDEuODYtMi40NiwxLjlaTTE5LjU2LDIwLjk3Yy0uNjYuMTUtMS4wMi43OS0uODcsMS4zOHMuNzQuOTcsMS4zNC44NCwxLS43NC44Ny0xLjM1Yy0uMTMtLjU4LS43MS0xLjAxLTEuMzUtLjg3WiIgZmlsbD0iI2JiYmJiYiIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xOS43NywxMi41OGMtMS4xOS0uMDEtMi4xNi0uOC0yLjUxLTEuOUg3LjY1Yy0uNDQsMC0uNzUtLjM0LS43Ni0uNzRzLjMtLjc4Ljc2LS43OGg5LjYyYy4zNC0xLjEzLDEuMzYtMS44OSwyLjUxLTEuOXMyLjIuNzUsMi41NSwxLjloMS45M2MuNDUsMCwuODEuMjUuODUuNjlzLS4yOS44Mi0uNzUuODJoLTIuMDNjLS4zNiwxLjEyLTEuMzQsMS45MS0yLjU2LDEuOVpNMTkuNTYsOC44MWMtLjY1LjE0LTEuMDIuNzktLjg2LDEuMzhzLjc1Ljk3LDEuMzQuODQsMS4wMS0uNzQuODctMS4zNi0uNzEtMS4wMS0xLjM1LS44N1oiIGZpbGw9IiNiYmJiYmIiLz48L3N2Zz4=");
}

#contextual-tools-area button.sc-split {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzMiAzMiI+PHBhdGggZmlsbD0iIzMzMzMzMyIgZD0iTTcuMzYgMjIuN2wuNTQtLjU0IDEzLjgtMTMuOC41NC0uNTQuNTMtLjUzYy0xLjkyLTEuNDctNC4zMS0yLjM2LTYuOTEtMi4zNi02LjI4IDAtMTEuMzkgNS4xMS0xMS4zOSAxMS4zOSAwIDIuNi44OSA0Ljk5IDIuMzYgNi45MWwuNTMtLjUzWiIvPjxwYXRoIGZpbGw9IiMzMzMzMzMiIGQ9Ik0yNC4zNiA5Ljk0bC0uNTQuNTRjMS4yMSAxLjY0IDEuOTMgMy42NSAxLjkzIDUuODQgMCA1LjQ1LTQuNDQgOS44OS05Ljg5IDkuODktMi4xOSAwLTQuMi0uNzItNS44NC0xLjkzbC0uNTQuNTQtLjUzLjUzYzEuOTIgMS40NyA0LjMxIDIuMzYgNi45MSAyLjM2IDYuMjggMCAxMS4zOS01LjExIDExLjM5LTExLjM5IDAtMi42LS44OS00Ljk5LTIuMzYtNi45MWwtLjUzLjUzWiIvPjxwYXRoIGZpbGw9IiMzMzMzMzMiIGQ9Ik0yMy4zNSA5Ljg5bC41NC0uNTMuNTItLjUzIDYuNTUtNi41NS0xLjA2LTEuMDYtNi41NSA2LjU1LS41Mi41Mi0uNTQuNTQtMTMuOTMgMTMuOTMtLjUzLjUzLS41My41M0wuNzYgMzAuMzZsMS4wNiAxLjA3IDYuNTQtNi41NS41My0uNTMuNTMtLjUzIDEzLjkzLTEzLjkzWiIvPjwvc3ZnPg==");
    background-size: 24px 24px;
    background-repeat: no-repeat;
    background-position: center;
}

#contextual-tools-area button.sc-split:hover:not(.disabled) {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzMiAzMiI+PHBhdGggZmlsbD0iI2ZmYThhYSIgZD0iTTcuMzYgMjIuN2wuNTQtLjU0IDEzLjgtMTMuOC41NC0uNTQuNTMtLjUzYy0xLjkyLTEuNDctNC4zMS0yLjM2LTYuOTEtMi4zNi02LjI4IDAtMTEuMzkgNS4xMS0xMS4zOSAxMS4zOSAwIDIuNi44OSA0Ljk5IDIuMzYgNi45MWwuNTMtLjUzWiIvPjxwYXRoIGZpbGw9IiNmZmE4YWEiIGQ9Ik0yNC4zNiA5Ljk0bC0uNTQuNTRjMS4yMSAxLjY0IDEuOTMgMy42NSAxLjkzIDUuODQgMCA1LjQ1LTQuNDQgOS44OS05Ljg5IDkuODktMi4xOSAwLTQuMi0uNzItNS44NC0xLjkzbC0uNTQuNTQtLjUzLjUzYzEuOTIgMS40NyA0LjMxIDIuMzYgNi45MSAyLjM2IDYuMjggMCAxMS4zOS01LjExIDExLjM5LTExLjM5IDAtMi42LS44OS00Ljk5LTIuMzYtNi45MWwtLjUzLjUzWiIvPjxwYXRoIGZpbGw9IiNmZmE4YWEiIGQ9Ik0yMy4zNSA5Ljg5bC41NC0uNTMuNTItLjUzIDYuNTUtNi41NS0xLjA2LTEuMDYtNi41NSA2LjU1LS41Mi41Mi0uNTQuNTQtMTMuOTMgMTMuOTMtLjUzLjUzLS41My41M0wuNzYgMzAuMzZsMS4wNiAxLjA3IDYuNTQtNi41NS41My0uNTMuNTMtLjUzIDEzLjkzLTEzLjkzWiIvPjwvc3ZnPg==");
}

#contextual-tools-area button.sc-split.disabled {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzMiAzMiI+PHBhdGggZmlsbD0iI2JiYmJiYiIgZD0iTTcuMzYgMjIuN2wuNTQtLjU0IDEzLjgtMTMuOC41NC0uNTQuNTMtLjUzYy0xLjkyLTEuNDctNC4zMS0yLjM2LTYuOTEtMi4zNi02LjI4IDAtMTEuMzkgNS4xMS0xMS4zOSAxMS4zOSAwIDIuNi44OSA0Ljk5IDIuMzYgNi45MWwuNTMtLjUzWiIvPjxwYXRoIGZpbGw9IiNiYmJiYmIiIGQ9Ik0yNC4zNiA5Ljk0bC0uNTQuNTRjMS4yMSAxLjY0IDEuOTMgMy42NSAxLjkzIDUuODQgMCA1LjQ1LTQuNDQgOS44OS05Ljg5IDkuODktMi4xOSAwLTQuMi0uNzItNS44NC0xLjkzbC0uNTQuNTQtLjUzLjUzYzEuOTIgMS40NyA0LjMxIDIuMzYgNi45MSAyLjM2IDYuMjggMCAxMS4zOS01LjExIDExLjM5LTExLjM5IDAtMi42LS44OS00Ljk5LTIuMzYtNi45MWwtLjUzLjUzWiIvPjxwYXRoIGZpbGw9IiNiYmJiYmIiIGQ9Ik0yMy4zNSA5Ljg5bC41NC0uNTMuNTItLjUzIDYuNTUtNi41NS0xLjA2LTEuMDYtNi41NSA2LjU1LS41Mi41Mi0uNTQuNTQtMTMuOTMgMTMuOTMtLjUzLjUzLS41My41M0wuNzYgMzAuMzZsMS4wNiAxLjA3IDYuNTQtNi41NS41My0uNTMuNTMtLjUzIDEzLjkzLTEzLjkzWiIvPjwvc3ZnPg==");
}

/* Icona Unione */
#contextual-tools-area button.sc-union {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjEuNCw2Ljk3Yy0yLjAzLDAtMy45LjY4LTUuNCwxLjgxLTEuNTEtMS4xMy0zLjM4LTEuODEtNS40LTEuODFDNS42Miw2Ljk3LDEuNTcsMTEuMDIsMS41NywxNnM0LjA1LDkuMDMsOS4wMyw5LjAzYzIuMDMsMCwzLjktLjY4LDUuNC0xLjgxLDEuNTEsMS4xMywzLjM4LDEuODEsNS40LDEuODEsNC45OCwwLDkuMDMtNC4wNSw5LjAzLTkuMDNTMjYuMzgsNi45NywyMS40LDYuOTdaIiBmaWxsPSIjMzMzMzMzIi8+PC9zdmc+");
    background-size: 24px 24px;
    background-repeat: no-repeat;
    background-position: center;
}

#contextual-tools-area button.sc-union:hover:not(.disabled) {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjEuNCw2Ljk3Yy0yLjAzLDAtMy45LjY4LTUuNCwxLjgxLTEuNTEtMS4xMy0zLjM4LTEuODEtNS40LTEuODFDNS42Miw2Ljk3LDEuNTcsMTEuMDIsMS41NywxNnM0LjA1LDkuMDMsOS4wMyw5LjAzYzIuMDMsMCwzLjktLjY4LDUuNC0xLjgxLDEuNTEsMS4xMywzLjM4LDEuODEsNS40LDEuODEsNC45OCwwLDkuMDMtNC4wNSw5LjAzLTkuMDNTMjYuMzgsNi45NywyMS40LDYuOTdaIiBmaWxsPSIjZmZhOGFhIi8+PC9zdmc+");
}

#contextual-tools-area button.sc-union.disabled {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjEuNCw2Ljk3Yy0yLjAzLDAtMy45LjY4LTUuNCwxLjgxLTEuNTEtMS4xMy0zLjM4LTEuODEtNS40LTEuODFDNS42Miw2Ljk3LDEuNTcsMTEuMDIsMS41NywxNnM0LjA1LDkuMDMsOS4wMyw5LjAzYzIuMDMsMCwzLjktLjY4LDUuNC0xLjgxLDEuNTEsMS4xMywzLjM4LDEuODEsNS40LDEuODEsNC45OCwwLDkuMDMtNC4wNSw5LjAzLTkuMDNTMjYuMzgsNi45NywyMS40LDYuOTdaIiBmaWxsPSIjYmJiYmJiIi8+PC9zdmc+");
}

/* Icona Intersezione */
#contextual-tools-area button.sc-intersection {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMy42MywyMS43NWMuMTkuMjMuMzkuNDUuNjEuNjZsLjg5LS45Yy0uMTgtLjE4LS4zNi0uMzctLjUyLS41N2wtLjk4LjgxWiIgZmlsbD0iIzMzMzMzMyIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0zLjcyLDEwLjE1bC45Ny44MmMuMTctLjIuMzQtLjM4LjUzLS41NmwtLjg4LS45MmMtLjIyLjIxLS40Mi40My0uNjIuNjZaIiBmaWxsPSIjMzMzMzMzIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTMuNDIsMTguOTZsLTEuMTcuNDhjLjExLjI4LjI0LjU1LjM4LjgxbDEuMTItLjZjLS4xMi0uMjMtLjIzLS40Ni0uMzMtLjd6IiBmaWxsPSIjMzMzMzMzIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTEzLDIzLjM4bC40LDEuMjFjLjI5LS4wOS41Ny0uMi44NC0uMzJsLS41MS0xLjE2Yy0uMjMuMS0uNDcuMi0uNzIuMjhaIiBmaWxsPSIjMzMzMzMzIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTEwLjg0LDguMjRjLjI2LDAsLjUyLjAzLjc3LjA2bC4xNi0xLjI2Yy0uMjktLjA0LS41OS0uMDYtLjktLjA3bC0uMDQsMS4yN1oiIGZpbGw9IiMzMzMzMzMiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMi44NywxNi43MmwtMS4yNy4xMWMuMDMuMy4wNy42LjEzLjg5bDEuMjUtLjI0Yy0uMDUtLjI1LS4wOC0uNTEtLjExLS43N1oiIGZpbGw9IiMzMzMzMzMiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTAuOTEsMjMuNzVoLS4xOHMuMDIsMS4yOC4wMiwxLjI4aC4yMXMuMDIsMCwuMDMsMGMuMjIsMCwuNDQtLjAzLjY1LS4wNWwtLjE1LTEuMjZjLS4xOS4wMi0uMzkuMDQtLjU5LjA1WiIgZmlsbD0iIzMzMzMzMyIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik01LjY0LDIzLjU1Yy4yNS4xNi41MS4zMi43Ny40NmwuNTktMS4xM2MtLjIzLS4xMi0uNDUtLjI1LS42Ny0uMzlsLS43LDEuMDZaIiBmaWxsPSIjMzMzMzMzIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTguMDgsMjQuNjdjLjI5LjA4LjU4LjE1Ljg4LjIxbC4yMy0xLjI1Yy0uMjYtLjA1LS41MS0uMTEtLjc1LS4xOGwtLjM1LDEuMjJaIiBmaWxsPSIjMzMzMzMzIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTMsMTQuNDFsLTEuMjQtLjI2Yy0uMDYuMjktLjExLjU5LS4xNC44OWwxLjI2LjEzYy4wMy0uMjYuMDctLjUxLjEyLS43NloiIGZpbGw9IiMzMzMzMzMiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNNS43NSw4LjM4bC42OCwxLjA3Yy4yMi0uMTQuNDQtLjI3LjY3LS4zOGwtLjU3LTEuMTNjLS4yNy4xNC0uNTMuMjgtLjc4LjQ0WiIgZmlsbD0iIzMzMzMzMyIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik04LjIxLDcuMjlsLjMzLDEuMjNjLjI1LS4wNy41LS4xMi43Ni0uMTdsLS4yMS0xLjI1Yy0uMy4wNS0uNTkuMTItLjg4LjE5WiIgZmlsbD0iIzMzMzMzMyIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xNC4zNiw3Ljc5Yy0uMjctLjEyLS41NS0uMjQtLjgzLS4zM2wtLjQxLDEuMmMuMjQuMDguNDguMTguNzIuMjlsLjUzLTEuMTZaIiBmaWxsPSIjMzMzMzMzIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTMuODEsMTIuMjRsLTEuMTEtLjYyYy0uMTUuMjYtLjI4LjUzLS40LjgxbDEuMTcuNWMuMS0uMjQuMjItLjQ3LjM0LS42OVoiIGZpbGw9IiMzMzMzMzMiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjkuMTIsMTUuMTdsMS4yNi0uMTRjLS4wMy0uMy0uMDgtLjYtLjE0LS44OWwtMS4yNC4yNmMuMDUuMjUuMDkuNTEuMTIuNzZaIiBmaWxsPSIjMzMzMzMzIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTE4Ljg5LDguNjZsLS40MS0xLjJjLS4yOC4xLS41Ni4yMS0uODMuMzNsLjUzLDEuMTZjLjIzLS4xMS40Ny0uMi43Mi0uMjlaIiBmaWxsPSIjMzMzMzMzIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTI4LjUzLDEyLjk0bDEuMTctLjVjLS4xMi0uMjgtLjI1LS41NS0uNC0uODFsLTEuMTEuNjJjLjEyLjIyLjI0LjQ2LjM0LjY5WiIgZmlsbD0iIzMzMzMzMyIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0yOC4yMywxOS42OWwxLjEyLjZjLjE0LS4yNi4yNy0uNTMuMzktLjgxbC0xLjE3LS40OWMtLjEuMjQtLjIxLjQ3LS4zMy43WiIgZmlsbD0iIzMzMzMzMyIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0yNi4yNiw4LjM4Yy0uMjUtLjE2LS41MS0uMzEtLjc4LS40NGwtLjU3LDEuMTNjLjIzLjEyLjQ2LjI1LjY3LjM4bC42OC0xLjA3WiIgZmlsbD0iIzMzMzMzMyIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0yOC4yOCwxMC4xNWMtLjE5LS4yMy0uNC0uNDUtLjYyLS42NmwtLjg4LjkxYy4xOS4xOC4zNi4zNy41My41NmwuOTctLjgyWiIgZmlsbD0iIzMzMzMzMyIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0yNC45NywyMi44OWwuNTksMS4xM2MuMjctLjE0LjUyLS4yOS43Ny0uNDVsLS42OS0xLjA2Yy0uMjIuMTQtLjQ0LjI3LS42Ny4zOVoiIGZpbGw9IiMzMzMzMzMiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjkuMTMsMTYuNzVjLS4wMy4yNi0uMDYuNTItLjExLjc3bDEuMjUuMjRjLjA2LS4yOS4xLS41OS4xMy0uODl2LS4wM3MtMS4yNy0uMDktMS4yNy0uMDlaIiBmaWxsPSIjMzMzMzMzIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTI2Ljg0LDIxLjUzbC44OS45MWMuMjEtLjIxLjQyLS40My42MS0uNjZsLS45OC0uODFjLS4xNi4yLS4zNC4zOS0uNTIuNTdaIiBmaWxsPSIjMzMzMzMzIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTE3LjczLDI0LjI1Yy4yNy4xMi41NS4yMy44NC4zMmwuNC0xLjIxYy0uMjUtLjA4LS40OS0uMTgtLjcyLS4yOGwtLjUyLDEuMTZaIiBmaWxsPSIjMzMzMzMzIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTIxLjE2LDguMjRsLS4wNC0xLjI3Yy0uMywwLS42LjAzLS45LjA3bC4xNiwxLjI2Yy4yNS0uMDMuNTEtLjA1Ljc3LS4wNloiIGZpbGw9IiMzMzMzMzMiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjAuNDcsMjMuN2wtLjE1LDEuMjYuMjEuMDJzLjAyLDAsLjAzLDBjLjIyLjAyLjQ0LjAzLjY1LjA0bC4wMy0xLjI3Yy0uMTksMC0uMzktLjAxLS41OS0uMDRsLS4xOC0uMDJaIiBmaWxsPSIjMzMzMzMzIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTIzLjc5LDcuMjljLS4yOS0uMDgtLjU4LS4xNC0uODgtLjE5bC0uMjEsMS4yNWMuMjYuMDQuNTEuMS43Ni4xN2wuMzMtMS4yM1oiIGZpbGw9IiMzMzMzMzMiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjIuNzgsMjMuNjRsLjIzLDEuMjVjLjMtLjA1LjU5LS4xMi44OC0uMmwtLjM1LTEuMjJjLS4yNS4wNy0uNS4xMy0uNzUuMTdaIiBmaWxsPSIjMzMzMzMzIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTE2LjQxLDkuMDZsLS4xNC0uMTEtLjE4LS4yNXMtLjA0LjAzLS4wNi4wNWwtLjAzLS4wMy0uNDEuMzVjLTEuNDgsMS4yNC0yLjQ5LDIuOS0yLjk0LDQuNzMsMCwwLDAsLjAyLDAsLjAyaDBjLS4xNC41OC0uMjIsMS4xNy0uMjUsMS43N2gtLjAxYzAsLjA2LDAsLjEyLDAsLjE4LDAsLjA2LS4wMS4xMy0uMDEuMTksMCwuMDcuMDEuMTUuMDEuMjIsMCwuMSwwLC4yMSwwLC4zMWguMDJjLjA0LjYuMTMsMS4xOS4yOCwxLjc3aC0uMDJjLjA3LjMuMTcuNTguMjcuODZoLjAyYy4yMS41NS40NywxLjA5Ljc5LDEuNmgtLjAyYy4xNi4yNy4zMy41MS41MS43NWguMDJjLjM2LjQ2Ljc4Ljg5LDEuMjMsMS4yOWwtLjAyLjAzYy4yMy4yLjQ2LjM4LjcuNTZsLjU2LS43OGMxLjg0LTEuNzEsMi45LTQuMDksMi45LTYuNjEsMC0yLjY3LTEuMTctNS4xOC0zLjIyLTYuOVoiIGZpbGw9IiMzMzMzMzMiLz48L3N2Zz4=");
    background-size: 24px 24px;
    background-repeat: no-repeat;
    background-position: center;
}

#contextual-tools-area button.sc-intersection:hover:not(.disabled) {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMy42MywyMS43NWMuMTkuMjMuMzkuNDUuNjEuNjZsLjg5LS45Yy0uMTgtLjE4LS4zNi0uMzctLjUyLS41N2wtLjk4LjgxWiIgZmlsbD0iI2ZmYThhYSIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0zLjcyLDEwLjE1bC45Ny44MmMuMTctLjIuMzQtLjM4LjUzLS41NmwtLjg4LS45MmMtLjIyLjIxLS40Mi40My0uNjIuNjZaIiBmaWxsPSIjZmZhOGFhIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTMuNDIsMTguOTZsLTEuMTcuNDhjLjExLjI4LjI0LjU1LjM4LjgxbDEuMTItLjZjLS4xMi0uMjMtLjIzLS40Ni0uMzMtLjd6IiBmaWxsPSIjZmZhOGFhIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTEzLDIzLjM4bC40LDEuMjFjLjI5LS4wOS41Ny0uMi44NC0uMzJsLS41MS0xLjE2Yy0uMjMuMS0uNDcuMi0uNzIuMjhaIiBmaWxsPSIjZmZhOGFhIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTEwLjg0LDguMjRjLjI2LDAsLjUyLjAzLjc3LjA2bC4xNi0xLjI2Yy0uMjktLjA0LS41OS0uMDYtLjktLjA3bC0uMDQsMS4yN1oiIGZpbGw9IiNmZmE4YWEiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMi44NywxNi43MmwtMS4yNy4xMWMuMDMuMy4wNy42LjEzLjg5bDEuMjUtLjI0Yy0uMDUtLjI1LS4wOC0uNTEtLjExLS43N1oiIGZpbGw9IiNmZmE4YWEiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTAuOTEsMjMuNzVoLS4xOHMuMDIsMS4yOC4wMiwxLjI4aC4yMXMuMDIsMCwuMDMsMGMuMjIsMCwuNDQtLjAzLjY1LS4wNWwtLjE1LTEuMjZjLS4xOS4wMi0uMzkuMDQtLjU5LjA1WiIgZmlsbD0iI2ZmYThhYSIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik01LjY0LDIzLjU1Yy4yNS4xNi41MS4zMi43Ny40NmwuNTktMS4xM2MtLjIzLS4xMi0uNDUtLjI1LS42Ny0uMzlsLS43LDEuMDZaIiBmaWxsPSIjZmZhOGFhIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTguMDgsMjQuNjdjLjI5LjA4LjU4LjE1Ljg4LjIxbC4yMy0xLjI1Yy0uMjYtLjA1LS41MS0uMTEtLjc1LS4xOGwtLjM1LDEuMjJaIiBmaWxsPSIjZmZhOGFhIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTMsMTQuNDFsLTEuMjQtLjI2Yy0uMDYuMjktLjExLjU5LS4xNC44OWwxLjI2LjEzYy4wMy0uMjYuMDctLjUxLjEyLS43NloiIGZpbGw9IiNmZmE4YWEiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNNS43NSw4LjM4bC42OCwxLjA3Yy4yMi0uMTQuNDQtLjI3LjY3LS4zOGwtLjU3LTEuMTNjLS4yNy4xNC0uNTMuMjgtLjc4LjQ0WiIgZmlsbD0iI2ZmYThhYSIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik04LjIxLDcuMjlsLjMzLDEuMjNjLjI1LS4wNy41LS4xMi43Ni0uMTdsLS4yMS0xLjI1Yy0uMy4wNS0uNTkuMTItLjg4LjE5WiIgZmlsbD0iI2ZmYThhYSIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xNC4zNiw3Ljc5Yy0uMjctLjEyLS41NS0uMjQtLjgzLS4zM2wtLjQxLDEuMmMuMjQuMDguNDguMTguNzIuMjlsLjUzLTEuMTZaIiBmaWxsPSIjZmZhOGFhIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTMuODEsMTIuMjRsLTEuMTEtLjYyYy0uMTUuMjYtLjI4LjUzLS40LjgxbDEuMTcuNWMuMS0uMjQuMjItLjQ3LjM0LS42OVoiIGZpbGw9IiNmZmE4YWEiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjkuMTIsMTUuMTdsMS4yNi0uMTRjLS4wMy0uMy0uMDgtLjYtLjE0LS44OWwtMS4yNC4yNmMuMDUuMjUuMDkuNTEuMTIuNzZaIiBmaWxsPSIjZmZhOGFhIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTE4Ljg5LDguNjZsLS40MS0xLjJjLS4yOC4xLS41Ni4yMS0uODMuMzNsLjUzLDEuMTZjLjIzLS4xMS40Ny0uMi43Mi0uMjlaIiBmaWxsPSIjZmZhOGFhIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTI4LjUzLDEyLjk0bDEuMTctLjVjLS4xMi0uMjgtLjI1LS41NS0uNC0uODFsLTEuMTEuNjJjLjEyLjIyLjI0LjQ2LjM0LjY5WiIgZmlsbD0iI2ZmYThhYSIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0yOC4yMywxOS42OWwxLjEyLjZjLjE0LS4yNi4yNy0uNTMuMzktLjgxbC0xLjE3LS40OWMtLjEuMjQtLjIxLjQ3LS4zMy43WiIgZmlsbD0iI2ZmYThhYSIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0yNi4yNiw4LjM4Yy0uMjUtLjE2LS41MS0uMzEtLjc4LS40NGwtLjU3LDEuMTNjLjIzLjEyLjQ2LjI1LjY3LjM4bC42OC0xLjA3WiIgZmlsbD0iI2ZmYThhYSIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0yOC4yOCwxMC4xNWMtLjE5LS4yMy0uNC0uNDUtLjYyLS42NmwtLjg4LjkxYy4xOS4xOC4zNi4zNy41My41NmwuOTctLjgyWiIgZmlsbD0iI2ZmYThhYSIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0yNC45NywyMi44OWwuNTksMS4xM2MuMjctLjE0LjUyLS4yOS43Ny0uNDVsLS42OS0xLjA2Yy0uMjIuMTQtLjQ0LjI3LS42Ny4zOVoiIGZpbGw9IiNmZmE4YWEiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjkuMTMsMTYuNzVjLS4wMy4yNi0uMDYuNTItLjExLjc3bDEuMjUuMjRjLjA2LS4yOS4xLS41OS4xMy0uODl2LS4wM3MtMS4yNy0uMDktMS4yNy0uMDlaIiBmaWxsPSIjZmZhOGFhIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTI2Ljg0LDIxLjUzbC44OS45MWMuMjEtLjIxLjQyLS40My42MS0uNjZsLS45OC0uODFjLS4xNi4yLS4zNC4zOS0uNTIuNTdaIiBmaWxsPSIjZmZhOGFhYSIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xNy43MywyNC4yNWMuMjcuMTIuNTUuMjMuODQuMzJsLjQtMS4yMWMtLjI1LS4wOC0uNDktLjE4LS43Mi0uMjhsLS41MiwxLjE2WiIgZmlsbD0iI2ZmYThhYSIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0yMS4xNiw4LjI0bC0uMDQtMS4yN2MtLjMsMC0uNi4wMy0uOS4wN2wuMTYsMS4yNmMuMjUtLjAzLjUxLS4wNS43Ny0uMDZaIiBmaWxsPSIjZmZhOGFhYSIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0yMC40NywyMy43bC0uMTUsMS4yNi4yMS4wMnMuMDIsMCwuMDMsMGMuMjIuMDIuNDQuMDMuNjUuMDRsLjAzLTEuMjdjLS4xOSwwLS4zOS0uMDEtLjU5LS4wNGwtLjE4LS4wMloiIGZpbGw9IiNmZmE4YWEiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjMuNzksNy4yOWMtLjI5LS4wOC0uNTgtLjE0LS44OC0uMTlsLS4yMSwxLjI1Yy4yNi4wNC41MS4xLjc2LjE3bC4zMy0xLjIzWiIgZmlsbD0iI2ZmYThhYSIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0yMi43OCwyMy42NGwuMjMsMS4yNWMuMy0uMDUuNTktLjEyLjg4LS4ybC0uMzUtMS4yMmMtLjI1LjA3LS41LjEzLS43NS4xN1oiIGZpbGw9IiNmZmE4YWEiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTYuNDEsOS4wNmwtLjE0LS4xMS0uMTgtLjI1cy0uMDQuMDMtLjA2LjA1bC0uMDMtLjAzLS40MS4zNWMtMS40OCwxLjI0LTIuNDksMi45LTIuOTQsNC43MywwLDAsMCwuMDIsMCwuMDJoMGMtLjE0LjU4LS4yMiwxLjE3LS4yNSwxLjc3aC0uMDFjMCwuMDYsMCwuMTIsMCwuMTgsMCwuMDYtLjAxLjEzLS4wMS4xOSwwLC4wNy4wMS4xNS4wMS4yMiwwLC4xLDAsLjIxLDAsLjMxaC4wMmMuMDQuNi4xMywxLjE5LjI4LDEuNzdoLS4wMmMuMDcuMy4xNy41OC4yNy44NmguMDJjLjIxLjU1LjQ3LDEuMDkuNzksMS42aC0uMDJjLjE2LjI3LjMzLjUxLjUxLjc1aC4wMmMuMzYuNDYuNzguODksMS4yMywxLjI5bC0uMDIuMDNjLjIzLjIuNDYuMzguNy41NmwuNTYtLjc4YzEuODQtMS43MSwyLjktNC4wOSwyLjktNi42MSwwLTIuNjctMS4xNy01LjE4LTMuMjItNi45WiIgZmlsbD0iI2ZmYThhYSIvPjwvc3ZnPg==");
}

#contextual-tools-area button.sc-intersection.disabled {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMy42MywyMS43NWMuMTkuMjMuMzkuNDUuNjEuNjZsLjg5LS45Yy0uMTgtLjE4LS4zNi0uMzctLjUyLS41N2wtLjk4LjgxWiIgZmlsbD0iI2JiYmJiYiIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0zLjcyLDEwLjE1bC45Ny44MmMuMTctLjIuMzQtLjM4LjUzLS41NmwtLjg4LS45MmMtLjIyLjIxLS40Mi40My0uNjIuNjZaIiBmaWxsPSIjYmJiYmJiIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTMuNDIsMTguOTZsLTEuMTcuNDhjLjExLjI4LjI0LjU1LjM4LjgxbDEuMTItLjZjLS4xMi0uMjMtLjIzLS40Ni0uMzMtLjd6IiBmaWxsPSIjYmJiYmJiIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTEzLDIzLjM4bC40LDEuMjFjLjI5LS4wOS41Ny0uMi44NC0uMzJsLS41MS0xLjE2Yy0uMjMuMS0uNDcuMi0uNzIuMjhaIiBmaWxsPSIjYmJiYmJiIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTEwLjg0LDguMjRjLjI2LDAsLjUyLjAzLjc3LjA2bC4xNi0xLjI2Yy0uMjktLjA0LS41OS0uMDYtLjktLjA3bC0uMDQsMS4yN1oiIGZpbGw9IiNiYmJiYmIiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMi44NywxNi43MmwtMS4yNy4xMWMuMDMuMy4wNy42LjEzLjg5bDEuMjUtLjI0Yy0uMDUtLjI1LS4wOC0uNTEtLjExLS43N1oiIGZpbGw9IiNiYmJiYmIiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTAuOTEsMjMuNzVoLS4xOHMuMDIsMS4yOC4wMiwxLjI4aC4yMXMuMDIsMCwuMDMsMGMuMjIsMCwuNDQtLjAzLjY1LS4wNWwtLjE1LTEuMjZjLS4xOS4wMi0uMzkuMDQtLjU5LjA1WiIgZmlsbD0iI2JiYmJiYiIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik01LjY0LDIzLjU1Yy4yNS4xNi41MS4zMi43Ny40NmwuNTktMS4xM2MtLjIzLS4xMi0uNDUtLjI1LS42Ny0uMzlsLS43LDEuMDZaIiBmaWxsPSIjYmJiYmJiIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTguMDgsMjQuNjdjLjI5LjA4LjU4LjE1Ljg4LjIxbC4yMy0xLjI1Yy0uMjYtLjA1LS41MS0uMTEtLjc1LS4xOGwtLjM1LDEuMjJaIiBmaWxsPSIjYmJiYmJiIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTMsMTQuNDFsLTEuMjQtLjI2Yy0uMDYuMjktLjExLjU5LS4xNC44OWwxLjI2LjEzYy4wMy0uMjYuMDctLjUxLjEyLS43NloiIGZpbGw9IiNiYmJiYmIiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNNS43NSw4LjM4bC42OCwxLjA3Yy4yMi0uMTQuNDQtLjI3LjY3LS4zOGwtLjU3LTEuMTNjLS4yNy4xNC0uNTMuMjgtLjc4LjQ0WiIgZmlsbD0iI2JiYmJiYiIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik04LjIxLDcuMjlsLjMzLDEuMjNjLjI1LS4wNy41LS4xMi43Ni0uMTdsLS4yMS0xLjI1Yy0uMy4wNS0uNTkuMTItLjg4LjE5WiIgZmlsbD0iI2JiYmJiYiIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xNC4zNiw3Ljc5Yy0uMjctLjEyLS41NS0uMjQtLjgzLS4zM2wtLjQxLDEuMmMuMjQuMDguNDguMTguNzIuMjlsLjUzLTEuMTZaIiBmaWxsPSIjYmJiYmJiIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTMuODEsMTIuMjRsLTEuMTEtLjYyYy0uMTUuMjYtLjI4LjUzLS40LjgxbDEuMTcuNWMuMS0uMjQuMjItLjQ3LjM0LS42OVoiIGZpbGw9IiNiYmJiYmIiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjkuMTIsMTUuMTdsMS4yNi0uMTRjLS4wMy0uMy0uMDgtLjYtLjE0LS44OWwtMS4yNC4yNmMuMDUuMjUuMDkuNTEuMTIuNzZaIiBmaWxsPSIjYmJiYmJiIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTE4Ljg5LDguNjZsLS40MS0xLjJjLS4yOC4xLS41Ni4yMS0uODMuMzNsLjUzLDEuMTZjLjIzLS4xMS40Ny0uMi43Mi0uMjlaIiBmaWxsPSIjYmJiYmJiIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTI4LjUzLDEyLjk0bDEuMTctLjVjLS4xMi0uMjgtLjI1LS41NS0uNC0uODFsLTEuMTEuNjJjLjEyLjIyLjI0LjQ2LjM0LjY5WiIgZmlsbD0iI2JiYmJiYiIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0yOC4yMywxOS42OWwxLjEyLjZjLjE0LS4yNi4yNy0uNTMuMzktLjgxbC0xLjE3LS40OWMtLjEuMjQtLjIxLjQ3LS4zMy43WiIgZmlsbD0iI2JiYmJiYiIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0yNi4yNiw4LjM4Yy0uMjUtLjE2LS41MS0uMzEtLjc4LS40NGwtLjU3LDEuMTNjLjIzLjEyLjQ2LjI1LjY3LjM4bC42OC0xLjA3WiIgZmlsbD0iI2JiYmJiYiIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0yOC4yOCwxMC4xNWMtLjE5LS4yMy0uNC0uNDUtLjYyLS42NmwtLjg4LjkxYy4xOS4xOC4zNi4zNy41My41NmwuOTctLjgyWiIgZmlsbD0iI2JiYmJiYiIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0yNC45NywyMi44OWwuNTksMS4xM2MuMjctLjE0LjUyLS4yOS43Ny0uNDVsLS42OS0xLjA2Yy0uMjIuMTQtLjQ0LjI3LS42Ny4zOVoiIGZpbGw9IiNiYmJiYmIiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjkuMTMsMTYuNzVjLS4wMy4yNi0uMDYuNTItLjExLjc3bDEuMjUuMjRjLjA2LS4yOS4xLS41OS4xMy0uODl2LS4wM3MtMS4yNy0uMDktMS4yNy0uMDlaIiBmaWxsPSIjYmJiYmJiIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTI2Ljg0LDIxLjUzbC44OS45MWMuMjEtLjIxLjQyLS40My42MS0uNjZsLS45OC0uODFjLS4xNi4yLS4zNC4zOS0uNTIuNTdaIiBmaWxsPSIjYmJiYmJiIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTE3LjczLDI0LjI1Yy4yNy4xMi41NS4yMy44NC4zMmwuNC0xLjIxYy0uMjUtLjA4LS40OS0uMTgtLjcyLS4yOGwtLjUyLDEuMTZaIiBmaWxsPSIjYmJiYmJiIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTIxLjE2LDguMjRsLS4wNC0xLjI3Yy0uMywwLS42LjAzLS45LjA3bC4xNiwxLjI2Yy4yNS0uMDMuNTEtLjA1Ljc3LS4wNloiIGZpbGw9IiNiYmJiYmIiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjAuNDcsMjMuN2wtLjE1LDEuMjYuMjEuMDJzLjAyLDAsLjAzLDBjLjIyLjAyLjQ0LjAzLjY1LjA0bC4wMy0xLjI3Yy0uMTksMC0uMzktLjAxLS41OS0uMDRsLS4xOC0uMDJaIiBmaWxsPSIjYmJiYmJiIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTIzLjc5LDcuMjljLS4yOS0uMDgtLjU4LS4xNC0uODgtLjE5bC0uMjEsMS4yNWMuMjYuMDQuNTEuMS43Ni4xN2wuMzMtMS4yM1oiIGZpbGw9IiNiYmJiYmIiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjIuNzgsMjMuNjRsLjIzLDEuMjVjLjMtLjA1LjU5LS4xMi44OC0uMmwtLjM1LTEuMjJjLS4yNS4wNy0uNS4xMy0uNzUuMTdaIiBmaWxsPSIjYmJiYmJiIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTE2LjQxLDkuMDZsLS4xNC0uMTEtLjE4LS4yNXMtLjA0LjAzLS4wNi4wNWwtLjAzLS4wMy0uNDEuMzVjLTEuNDgsMS4yNC0yLjQ5LDIuOS0yLjk0LDQuNzMsMCwwLDAsLjAyLDAsLjAyaDBjLS4xNC41OC0uMjIsMS4xNy0uMjUsMS43N2gtLjAxYzAsLjA2LDAsLjEyLDAsLjE4LDAsLjA2LS4wMS4xMy0uMDEuMTksMCwuMDcuMDEuMTUuMDEuMjIsMCwuMSwwLC4yMSwwLC4zMWguMDJjLjA0LjYuMTMsMS4xOS4yOCwxLjc3aC0uMDJjLjA3LjMuMTcuNTguMjcuODZoLjAyYy4yMS41NS40NywxLjA5Ljc5LDEuNmgtLjAyYy4xNi4yNy4zMy41MS41MS43NWguMDJjLjM2LjQ2Ljc4Ljg5LDEuMjMsMS4yOWwtLjAyLjAzYy4yMy4yLjQ2LjM4LjcuNTZsLjU2LS43OGMxLjg0LTEuNzEsMi45LTQuMDksMi45LTYuNjEsMC0yLjY3LTEuMTctNS4xOC0zLjIyLTYuOVoiIGZpbGw9IiNiYmJiYmIiLz48L3N2Zz4=") !important;
    opacity: 1 !important;
}

/* Icona Separa */
#contextual-tools-area button.sc-ungroup {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjUuMTMsMTEuMTJsLS4wMiwyLjRjMCwuMjUtLjIzLjQ5LS41LjQ5aC0uNzhjLS44OS0zLjUtNC4wNi02LjEtNy44My02LjFzLTYuOTQsMi42LTcuODMsNi4xaC0uNzdjLS4zMSwwLS41My0uMjgtLjUtLjU3bC0uMDItMi4zMUwxLjE4LDE2bDUuNjksNC44OC4wMi0yLjM5YzAtLjI1LjIyLS40OS40OS0uNDloLjc5Yy44OSwzLjQ5LDQuMDYsNi4wOSw3LjgzLDYuMDlzNi45NC0yLjYsNy44My02LjA5aC43OGMuMjcsMCwuNDguMjMuNDkuNDlsLjAzLDIuMzksNS42OS00Ljg4LTUuNjktNC44OFpNMTYsMjIuOTVjLTMuMTQsMC01Ljc5LTIuMDktNi42NS00Ljk1aDEuNzlzMy4xNy0zLjk4LDMuMTctMy45OGgtNC45NmMuODYtMi44NywzLjUyLTQuOTcsNi42Ni00Ljk3czUuOCwyLjEsNi42Niw0Ljk2aC0xLjgxcy0zLjE2LDMuOTctMy4xNiwzLjk3aDQuOTZjLS44NiwyLjg3LTMuNTIsNC45Ny02LjY2LDQuOTdaIiBmaWxsPSIjMzMzMzMzIi8+PC9zdmc+");
    background-size: 24px 24px;
    background-repeat: no-repeat;
    background-position: center;
}

#contextual-tools-area button.sc-ungroup:hover:not(.disabled) {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjUuMTMsMTEuMTJsLS4wMiwyLjRjMCwuMjUtLjIzLjQ5LS41LjQ5aC0uNzhjLS44OS0zLjUtNC4wNi02LjEtNy44My02LjFzLTYuOTQsMi42LTcuODMsNi4xaC0uNzdjLS4zMSwwLS41My0uMjgtLjUtLjU3bC0uMDItMi4zMUwxLjE4LDE2bDUuNjksNC44OC4wMi0yLjM5YzAtLjI1LjIyLS40OS40OS0uNDloLjc5Yy44OSwzLjQ5LDQuMDYsNi4wOSw3LjgzLDYuMDlzNi45NC0yLjYsNy44My02LjA5aC43OGMuMjcsMCwuNDguMjMuNDkuNDlsLjAzLDIuMzksNS42OS00Ljg4LTUuNjktNC44OFpNMTYsMjIuOTVjLTMuMTQsMC01Ljc5LTIuMDktNi42NS00Ljk1aDEuNzlzMy4xNy0zLjk4LDMuMTctMy45OGgtNC45NmMuODYtMi44NywzLjUyLTQuOTcsNi42Ni00Ljk3czUuOCwyLjEsNi42Niw0Ljk2aC0xLjgxcy0zLjE2LDMuOTctMy4xNiwzLjk3aDQuOTZjLS44NiwyLjg3LTMuNTIsNC45Ny02LjY2LDQuOTdaIiBmaWxsPSIjZmZhOGFhIi8+PC9zdmc+");
}

#contextual-tools-area button.sc-ungroup.disabled {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjUuMTMsMTEuMTJsLS4wMiwyLjRjMCwuMjUtLjIzLjQ5LS41LjQ5aC0uNzhjLS44OS0zLjUtNC4wNi02LjEtNy44My02LjFzLTYuOTQsMi42LTcuODMsNi4xaC0uNzdjLS4zMSwwLS41My0uMjgtLjUtLjU3bC0uMDItMi4zMUwxLjE4LDE2bDUuNjksNC44OC4wMi0yLjM5YzAtLjI1LjIyLS40OS40OS0uNDloLjc5Yy44OSwzLjQ5LDQuMDYsNi4wOSw3LjgzLDYuMDlzNi45NC0yLjYsNy44My02LjA5aC43OGMuMjcsMCwuNDguMjMuNDkuNDlsLjAzLDIuMzksNS42OS00Ljg4LTUuNjktNC44OFpNMTYsMjIuOTVjLTMuMTQsMC01Ljc5LTIuMDktNi42NS00Ljk1aDEuNzlzMy4xNy0zLjk4LDMuMTctMy45OGgtNC45NmMuODYtMi44NywzLjUyLTQuOTcsNi42Ni00Ljk3czUuOCwyLjEsNi42Niw0Ljk2aC0xLjgxcy0zLjE2LDMuOTctMy4xNiwzLjk3aDQuOTZjLS44NiwyLjg3LTMuNTIsNC45Ny02LjY2LDQuOTdaIiBmaWxsPSIjYmJiYmJiIi8+PC9zdmc+");
}

/* Icona Scarica oggetto (export) */
#contextual-tools-area button.ti-export {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjQuNjcsMTMuNDNjMS0uODEsMS42NS0yLjA0LDEuNjUtMy40MywwLTIuNDUtMS45OS00LjQ0LTQuNDQtNC40NC0xLjQ1LDAtMi43Mi43LTMuNTMsMS43OC0xLjEyLS4zNS0yLjMyLS41MS0zLjU2LS40My01LjQzLjM3LTkuNDgsNS4wOS05LjA5LDEwLjQ1LjM5LDUuMzYsNS4wNSw5LjQyLDEwLjQxLDkuMDUsNS4zOC0uMzcsOS40Ni01LjAzLDkuMDktMTAuNDItLjA2LS45LS4yNS0xLjc2LS41NC0yLjU3Wk0xNi4wNiwyNS4yYy00LjY5LjM0LTguNzgtMy4xOS05LjE0LTcuODgtLjM2LTQuNjksMy4xNi04Ljg0LDcuOTItOS4xOCwxLjAxLS4wNywxLjk5LjA0LDIuOS4zLS4xOC40OS0uMywxLjAxLS4zLDEuNTYsMCwyLjQ1LDEuOTksNC40NCw0LjQ0LDQuNDQuNjEsMCwxLjE5LS4xMiwxLjcyLS4zNS4yLjYzLjMzLDEuMjguMzgsMS45Ni4zNCw0LjcxLTMuMjEsOC44MS03LjkyLDkuMTVaIiBmaWxsPSIjMzMzMzMzIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTE4LjU4LDE2LjMzbC0yLjUyLDIuNTJ2LTYuNDZjMC0uMzgtLjMtLjYyLS42My0uNjEtLjMxLjAxLS41OS4yNS0uNTkuNjF2Ni40NnMtMi41Mi0yLjUyLTIuNTItMi41MmMtLjI2LS4yNi0uNjUtLjIyLS44Ny4wMS0uMjQuMjYtLjIzLjYyLjAzLjg4bDMuNDYsMy40NWMuMjMuMjMuNzcuMjQsMS4wMi0uMDFsMy40Ny0zLjQ2Yy4yNi0uMjYuMjQtLjY1LDAtLjg4LS4yMi0uMjEtLjYtLjI0LS44NS4wMVoiIGZpbGw9IiMzMzMzMzMiLz48L3N2Zz4=");
    background-size: 24px 24px;
    background-repeat: no-repeat;
    background-position: center;
}

#contextual-tools-area button.ti-export:hover:not(.disabled) {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjQuNjcsMTMuNDNjMS0uODEsMS42NS0yLjA0LDEuNjUtMy40MywwLTIuNDUtMS45OS00LjQ0LTQuNDQtNC40NC0xLjQ1LDAtMi43Mi43LTMuNTMsMS43OC0xLjEyLS4zNS0yLjMyLS41MS0zLjU2LS40My01LjQzLjM3LTkuNDgsNS4wOS05LjA5LDEwLjQ1LjM5LDUuMzYsNS4wNSw5LjQyLDEwLjQxLDkuMDUsNS4zOC0uMzcsOS40Ni01LjAzLDkuMDktMTAuNDItLjA2LS45LS4yNS0xLjc2LS41NC0yLjU3Wk0xNi4wNiwyNS4yYy00LjY5LjM0LTguNzgtMy4xOS05LjE0LTcuODgtLjM2LTQuNjksMy4xNi04Ljg0LDcuOTItOS4xOCwxLjAxLS4wNywxLjk5LjA0LDIuOS4zLS4xOC40OS0uMywxLjAxLS4zLDEuNTYsMCwyLjQ1LDEuOTksNC40NCw0LjQ0LDQuNDQuNjEsMCwxLjE5LS4xMiwxLjcyLS4zNS4yLjYzLjMzLDEuMjguMzgsMS45Ni4zNCw0LjcxLTMuMjEsOC44MS03LjkyLDkuMTVaIiBmaWxsPSIjZmZhOGFhIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTE4LjU4LDE2LjMzbC0yLjUyLDIuNTJ2LTYuNDZjMC0uMzgtLjMtLjYyLS42My0uNjEtLjMxLjAxLS41OS4yNS0uNTkuNjF2Ni40NnMtMi41Mi0yLjUyLTIuNTItMi41MmMtLjI2LS4yNi0uNjUtLjIyLS44Ny4wMS0uMjQuMjYtLjIzLjYyLjAzLjg4bDMuNDYsMy40NWMuMjMuMjMuNzcuMjQsMS4wMi0uMDFsMy40Ny0zLjQ2Yy4yNi0uMjYuMjQtLjY1LDAtLjg4LS4yMi0uMjEtLjYtLjI0LS44NS4wMVoiIGZpbGw9IiNmZmE4YWEiLz48L3N2Zz4=");
}

#contextual-tools-area button.ti-export.disabled {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjQuNjcsMTMuNDNjMS0uODEsMS42NS0yLjA0LDEuNjUtMy40MywwLTIuNDUtMS45OS00LjQ0LTQuNDQtNC40NC0xLjQ1LDAtMi43Mi43LTMuNTMsMS43OC0xLjEyLS4zNS0yLjMyLS41MS0zLjU2LS40My01LjQzLjM3LTkuNDgsNS4wOS05LjA5LDEwLjQ1LjM5LDUuMzYsNS4wNSw5LjQyLDEwLjQxLDkuMDUsNS4zOC0uMzcsOS40Ni01LjAzLDkuMDktMTAuNDItLjA2LS45LS4yNS0xLjc2LS41NC0yLjU3Wk0xNi4wNiwyNS4yYy00LjY5LjM0LTguNzgtMy4xOS05LjE0LTcuODgtLjM2LTQuNjksMy4xNi04Ljg0LDcuOTItOS4xOCwxLjAxLS4wNywxLjk5LjA0LDIuOS4zLS4xOC40OS0uMywxLjAxLS4zLDEuNTYsMCwyLjQ1LDEuOTksNC40NCw0LjQ0LDQuNDQuNjEsMCwxLjE5LS4xMiwxLjcyLS4zNS4yLjYzLjMzLDEuMjguMzgsMS45Ni4zNCw0LjcxLTMuMjEsOC44MS03LjkyLDkuMTVaIiBmaWxsPSIjYmJiYmJiIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTE4LjU4LDE2LjMzbC0yLjUyLDIuNTJ2LTYuNDZjMC0uMzgtLjMtLjYyLS42My0uNjEtLjMxLjAxLS41OS4yNS0uNTkuNjF2Ni40NnMtMi41Mi0yLjUyLTIuNTItMi41MmMtLjI2LS4yNi0uNjUtLjIyLS44Ny4wMS0uMjQuMjYtLjIzLjYyLjAzLjg4bDMuNDYsMy40NWMuMjMuMjMuNzcuMjQsMS4wMi0uMDFsMy40Ny0zLjQ2Yy4yNi0uMjYuMjQtLjY1LDAtLjg4LS4yMi0uMjEtLjYtLjI0LS44NS4wMVoiIGZpbGw9IiNiYmJiYmIiLz48L3N2Zz4=");
}

/* Icona Cancella (trash) */
#contextual-tools-area button.ti-trash {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjYuMTEsOC4zMWMtLjE4LTEuMDgtMS4wNy0xLjg0LTIuMTctMS44NWgtMy4zM3MtLjAzLS42Ny0uMDMtLjY3Yy0uMDQtMS4xOC0xLjAxLTIuMS0yLjE5LTIuMWgtNS41NGMtMS4xOSwwLTIuMTUuOTItMi4xOSwyLjFsLS4wMy42N2gtMy4zOWMtMS4wOS4wNS0xLjk2Ljg0LTIuMTEsMS45MS0uMTQsMS4wMS40NSwxLjk5LDEuNDEsMi4zNWwxLjIyLDE0Ljc1Yy4xLDEuMjMsMS4wNSwyLjEyLDIuMjYsMi4xMmgxMS4yOWMxLjE1LS4wMSwyLjA3LS45LDIuMTctMi4xMmwxLjIyLTE0Ljc1Yy45OS0uMzcsMS41OC0xLjM3LDEuNDEtMi40MVpNMjMuMDUsMTAuODhsLTEuMiwxNC41MmMtLjAzLjI0LS4xNi41My0uNi41NWgtMTEuMjhjLS4zNS0uMDItLjU2LS4yNC0uNTgtLjYxbC0xLjItMTQuNDZoMTQuODVaTTE4Ljk2LDUuODh2LjU3aC02LjY2di0uNTdjLS4wMS0uMTUuMDUtLjMuMTUtLjQuMDktLjA5LjIxLS4xNS4zNC0uMTVoNS42NmMuMTYsMCwuMjcuMDguMzQuMTUuMTEuMTEuMTcuMjYuMTYuNFpNNi45LDguMjVjLjA4LS4wOS4xOC0uMTQuMjktLjE0aDE2Ljg2Yy4xMSwwLC4yLjA0LjI4LjEzLjEyLjEzLjE3LjMzLjE3LjQ1LS4wMS4yMi0uMTcuNTQtLjU0LjU0SDcuMzJjLS4zNCwwLS41NC0uMjUtLjU3LS40OS0uMDItLjE2LjA0LS4zNi4xNS0uNDlaIiBmaWxsPSIjMzMzMzMzIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTExLjYyLDI0LjZjLjE1LjEzLjM0LjIuNTMuMi4wMiwwLC4wNCwwLC4wNSwwLC40MS0uMDMuOC0uMzUuNzctLjkxbC0uNy0xMS4yYy0uMDEtLjE5LS4wOS0uMzUtLjI0LS40OC0uMTctLjE1LS40MS0uMjMtLjY0LS4yMS0uMzguMDMtLjc4LjM2LS43NS44MWwuNjksMTEuMjFjLjAxLjIyLjExLjQyLjI4LjU3WiIgZmlsbD0iIzMzMzMzMyIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xOS4wNCwyNC44MXMuMDMsMCwuMDQsMGMuMzgsMCwuNzktLjI4LjgyLS43NWwuNy0xMS4yNGMuMDMtLjQ1LS4zNy0uNzktLjc1LS44MS0uMjIsMC0uNDcuMDYtLjY0LjIxLS4xNS4xMy0uMjMuMjktLjI0LjQ4bC0uNywxMS4yNGMtLjAxLjIzLjA2LjQ0LjIuNi4xNC4xNi4zNS4yNi41Ni4yN1oiIGZpbGw9IiMzMzMzMzMiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTUuNTksMjQuODFzLjAyLDAsLjAzLDBjLjIxLDAsLjQyLS4wOC41Ni0uMjIuMTYtLjE2LjI1LS4zNy4yNS0uNjF2LTExLjFjMC0uMjYtLjA5LS40OS0uMjUtLjY1LS4xNS0uMTUtLjM3LS4yMS0uNTktLjIyLS40Ni4wMi0uNzguMzctLjc4Ljg2djExLjA3YzAsLjQ5LjMyLjg1Ljc4Ljg3WiIgZmlsbD0iIzMzMzMzMyIvPjwvc3ZnPg==");
    background-size: 24px 24px;
    background-repeat: no-repeat;
    background-position: center;
}

#contextual-tools-area button.ti-trash:hover:not(.disabled) {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjYuMTEsOC4zMWMtLjE4LTEuMDgtMS4wNy0xLjg0LTIuMTctMS44NWgtMy4zM3MtLjAzLS42Ny0uMDMtLjY3Yy0uMDQtMS4xOC0xLjAxLTIuMS0yLjE5LTIuMWgtNS41NGMtMS4xOSwwLTIuMTUuOTItMi4xOSwyLjFsLS4wMy42N2gtMy4zOWMtMS4wOS4wNS0xLjk2Ljg0LTIuMTEsMS45MS0uMTQsMS4wMS40NSwxLjk5LDEuNDEsMi4zNWwxLjIyLDE0Ljc1Yy4xLDEuMjMsMS4wNSwyLjEyLDIuMjYsMi4xMmgxMS4yOWMxLjE1LS4wMSwyLjA3LS45LDIuMTctMi4xMmwxLjIyLTE0Ljc1Yy45OS0uMzcsMS41OC0xLjM3LDEuNDEtMi40MVpNMjMuMDUsMTAuODhsLTEuMiwxNC41MmMtLjAzLjI0LS4xNi41My0uNi41NWgtMTEuMjhjLS4zNS0uMDItLjU2LS4yNC0uNTgtLjYxbC0xLjItMTQuNDZoMTQuODVaTTE4Ljk2LDUuODh2LjU3aC02LjY2di0uNTdjLS4wMS0uMTUuMDUtLjMuMTUtLjQuMDktLjA5LjIxLS4xNS4zNC0uMTVoNS42NmMuMTYsMCwuMjcuMDguMzQuMTUuMTEuMTEuMTcuMjYuMTYuNFpNNi45LDguMjVjLjA4LS4wOS4xOC0uMTQuMjktLjE0aDE2Ljg2Yy4xMSwwLC4yLjA0LjI4LjEzLjEyLjEzLjE3LjMzLjE3LjQ1LS4wMS4yMi0uMTcuNTQtLjU0LjU0SDcuMzJjLS4zNCwwLS41NC0uMjUtLjU3LS40OS0uMDItLjE2LjA0LS4zNi4xNS0uNDlaIiBmaWxsPSIjZmZhOGFhIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTExLjYyLDI0LjZjLjE1LjEzLjM0LjIuNTMuMi4wMiwwLC4wNCwwLC4wNSwwLC40MS0uMDMuOC0uMzUuNzctLjkxbC0uNy0xMS4yYy0uMDEtLjE5LS4wOS0uMzUtLjI0LS40OC0uMTctLjE1LS40MS0uMjMtLjY0LS4yMS0uMzguMDMtLjc4LjM2LS43NS44MWwuNjksMTEuMjFjLjAxLjIyLjExLjQyLjI4LjU3WiIgZmlsbD0iI2ZmYThhYSIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xOS4wNCwyNC44MXMuMDMsMCwuMDQsMGMuMzgsMCwuNzktLjI4LjgyLS43NWwuNy0xMS4yNGMuMDMtLjQ1LS4zNy0uNzktLjc1LS44MS0uMjIsMC0uNDcuMDYtLjY0LjIxLS4xNS4xMy0uMjMuMjktLjI0LjQ4bC0uNywxMS4yNGMtLjAxLjIzLjA2LjQ0LjIuNi4xNC4xNi4zNS4yNi41Ni4yN1oiIGZpbGw9IiNmZmE4YWEiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTUuNTksMjQuODFzLjAyLDAsLjAzLDBjLjIxLDAsLjQyLS4wOC41Ni0uMjIuMTYtLjE2LjI1LS4zNy4yNS0uNjF2LTExLjFjMC0uMjYtLjA5LS40OS0uMjUtLjY1LS4xNS0uMTUtLjM3LS4yMS0uNTktLjIyLS40Ni4wMi0uNzguMzctLjc4Ljg2djExLjA3YzAsLjQ5LjMyLjg1Ljc4Ljg3WiIgZmlsbD0iI2ZmYThhYSIvPjwvc3ZnPg==");
}

#contextual-tools-area button.ti-trash.disabled {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjYuMTEsOC4zMWMtLjE4LTEuMDgtMS4wNy0xLjg0LTIuMTctMS44NWgtMy4zM3MtLjAzLS42Ny0uMDMtLjY3Yy0uMDQtMS4xOC0xLjAxLTIuMS0yLjE5LTIuMWgtNS41NGMtMS4xOSwwLTIuMTUuOTItMi4xOSwyLjFsLS4wMy42N2gtMy4zOWMtMS4wOS4wNS0xLjk2Ljg0LTIuMTEsMS45MS0uMTQsMS4wMS40NSwxLjk5LDEuNDEsMi4zNWwxLjIyLDE0Ljc1Yy4xLDEuMjMsMS4wNSwyLjEyLDIuMjYsMi4xMmgxMS4yOWMxLjE1LS4wMSwyLjA3LS45LDIuMTctMi4xMmwxLjIyLTE0Ljc1Yy45OS0uMzcsMS41OC0xLjM3LDEuNDEtMi40MVpNMjMuMDUsMTAuODhsLTEuMiwxNC41MmMtLjAzLjI0LS4xNi41My0uNi41NWgtMTEuMjhjLS4zNS0uMDItLjU2LS4yNC0uNTgtLjYxbC0xLjItMTQuNDZoMTQuODVaTTE4Ljk2LDUuODh2LjU3aC02LjY2di0uNTdjLS4wMS0uMTUuMDUtLjMuMTUtLjQuMDktLjA5LjIxLS4xNS4zNC0uMTVoNS42NmMuMTYsMCwuMjcuMDguMzQuMTUuMTEuMTEuMTcuMjYuMTYuNFpNNi45LDguMjVjLjA4LS4wOS4xOC0uMTQuMjktLjE0aDE2Ljg2Yy4xMSwwLC4yLjA0LjI4LjEzLjEyLjEzLjE3LjMzLjE3LjQ1LS4wMS4yMi0uMTcuNTQtLjU0LjU0SDcuMzJjLS4zNCwwLS41NC0uMjUtLjU3LS40OS0uMDItLjE2LjA0LS4zNi4xNS0uNDlaIiBmaWxsPSIjYmJiYmJiIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTExLjYyLDI0LjZjLjE1LjEzLjM0LjIuNTMuMi4wMiwwLC4wNCwwLC4wNSwwLC40MS0uMDMuOC0uMzUuNzctLjkxbC0uNy0xMS4yYy0uMDEtLjE5LS4wOS0uMzUtLjI0LS40OC0uMTctLjE1LS40MS0uMjMtLjY0LS4yMS0uMzguMDMtLjc4LjM2LS43NS44MWwuNjksMTEuMjFjLjAxLjIyLjExLjQyLjI4LjU3WiIgZmlsbD0iI2JiYmJiYiIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xOS4wNCwyNC44MXMuMDMsMCwuMDQsMGMuMzgsMCwuNzktLjI4LjgyLS43NWwuNy0xMS4yNGMuMDMtLjQ1LS4zNy0uNzktLjc1LS44MS0uMjIsMC0uNDcuMDYtLjY0LjIxLS4xNS4xMy0uMjMuMjktLjI0LjQ4bC0uNywxMS4yNGMtLjAxLjIzLjA2LjQ0LjIuNi4xNC4xNi4zNS4yNi41Ni4yN1oiIGZpbGw9IiNiYmJiYmIiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTUuNTksMjQuODFzLjAyLDAsLjAzLDBjLjIxLDAsLjQyLS4wOC41Ni0uMjIuMTYtLjE2LjI1LS4zNy4yNS0uNjF2LTExLjFjMC0uMjYtLjA5LS40OS0uMjUtLjY1LS4xNS0uMTUtLjM3LS4yMS0uNTktLjIyLS40Ni4wMi0uNzguMzctLjc4Ljg2djExLjA3YzAsLjQ5LjMyLjg1Ljc4Ljg3WiIgZmlsbD0iI2JiYmJiYiIvPjwvc3ZnPg==");
}

/* Icona Allinea */
#contextual-tools-area button.sc-align {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cmVjdCBjbGFzcz0ic3QwIiB4PSI1LjE0IiB5PSI1LjQzIiB3aWR0aD0iMiIgaGVpZ2h0PSIyMS4xMyIgZmlsbD0iIzMzMzMzMyIvPjxyZWN0IGNsYXNzPSJzdDAiIHg9IjguNjciIHk9IjguMjEiIHdpZHRoPSIxMSIgaGVpZ2h0PSI2Ljg1IiBmaWxsPSIjMzMzMzMzIi8+PHJlY3QgY2xhc3M9InN0MCIgeD0iOC42NyIgeT0iMTYuOTQiIHdpZHRoPSIyMCIgaGVpZ2h0PSI2Ljg1IiBmaWxsPSIjMzMzMzMzIi8+PC9zdmc+");
    background-size: 24px 24px;
    background-repeat: no-repeat;
    background-position: center;
}

#contextual-tools-area button.sc-align:hover:not(.disabled) {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cmVjdCBjbGFzcz0ic3QwIiB4PSI1LjE0IiB5PSI1LjQzIiB3aWR0aD0iMiIgaGVpZ2h0PSIyMS4xMyIgZmlsbD0iI2ZmYThhYSIvPjxyZWN0IGNsYXNzPSJzdDAiIHg9IjguNjciIHk9IjguMjEiIHdpZHRoPSIxMSIgaGVpZ2h0PSI2Ljg1IiBmaWxsPSIjZmZhOGFhIi8+PHJlY3QgY2xhc3M9InN0MCIgeD0iOC42NyIgeT0iMTYuOTQiIHdpZHRoPSIyMCIgaGVpZ2h0PSI2Ljg1IiBmaWxsPSIjZmZhOGFhIi8+PC9zdmc+");
}

#contextual-tools-area button.sc-align.disabled {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cmVjdCBjbGFzcz0ic3QwIiB4PSI1LjE0IiB5PSI1LjQzIiB3aWR0aD0iMiIgaGVpZ2h0PSIyMS4xMyIgZmlsbD0iI2JiYmJiYiIvPjxyZWN0IGNsYXNzPSJzdDAiIHg9IjguNjciIHk9IjguMjEiIHdpZHRoPSIxMSIgaGVpZ2h0PSI2Ljg1IiBmaWxsPSIjYmJiYmJiIi8+PHJlY3QgY2xhc3M9InN0MCIgeD0iOC42NyIgeT0iMTYuOTQiIHdpZHRoPSIyMCIgaGVpZ2h0PSI2Ljg1IiBmaWxsPSIjYmJiYmJiIi8+PC9zdmc+");
}

/* Icona Centra sul piano di lavoro */
#contextual-tools-area button.sc-centerplane {
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj4KICA8ZGVmcz4KICAgIDxzdHlsZT4KICAgICAgLnN0MCB7CiAgICAgICAgZmlsbDogIzMzMzMzMzsKICAgICAgfQogICAgPC9zdHlsZT4KICA8L2RlZnM+CiAgPHBhdGggY2xhc3M9InN0MCIgZD0iTTI1LjkyLDI1Ljg4SDYuMTNWNi4wOWgxOS43OXYxOS43OVpNNy40MSwyNC42aDE3LjIzVjcuMzZINy40MXYxNy4yM1oiLz4KICA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTUuMzksMjkuNzhjMC0uMzQuMjgtLjY0LjY0LS42NGgwYy4zNCwwLC42NC4yOS42NC42NGgwYzAsLjM2LS4yOS42NC0uNjQuNjRoMGMtLjM2LDAtLjY0LS4yOC0uNjQtLjY0WiIvPgogIDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xNS4zOSwyNy4xMmMwLS4zNC4yOC0uNjQuNjQtLjY0aDBjLjM0LDAsLjY0LjI5LjY0LjY0aDBjMCwuMzYtLjI5LjY0LS42NC42NGgwYy0uMzYsMC0uNjQtLjI4LS42NC0uNjRaIi8+CiAgPHBhdGggY2xhc3M9InN0MCIgZD0iTTE1LjM5LDIzLjY0YzAtLjM2LjI4LS42NC42NC0uNjRoMGMuMzQsMCwuNjQuMjguNjQuNjRoMGMwLC4zNC0uMjkuNjQtLjY0LjY0aDBjLS4zNiwwLS42NC0uMjktLjY0LS42NFoiLz4KICA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTUuMzksMjAuOTdjMC0uMzUuMjgtLjYzLjY0LS42M2gwYy4zNCwwLC42NC4yOC42NC42M2gwYzAsLjM2LS4yOS42NC0uNjQuNjRoMGMtLjM2LDAtLjY0LS4yOC0uNjQtLjY0WiIvPgogIDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xNS4zOSwxMS4xN2MwLS4zNi4yOC0uNjQuNjQtLjY0aDBjLjM0LDAsLjY0LjI4LjY0LjY0aDBjMCwuMzUtLjI5LjY0LS42NC42NGgwYy0uMzYsMC0uNjQtLjI5LS42NC0uNjRaIi8+CiAgPHBhdGggY2xhc3M9InN0MCIgZD0iTTE1LjM5LDguNTFjMC0uMzYuMjgtLjY0LjY0LS42NGgwYy4zNCwwLC42NC4yOC42NC42NGgwYzAsLjM1LS4yOS42NC0uNjQuNjRoMGMtLjM2LDAtLjY0LS4yOS0uNjQtLjY0WiIvPgogIDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xNS4zOSw1LjAyYzAtLjM2LjI4LS42NC42NC0uNjRoMGMuMzQsMCwuNjQuMjguNjQuNjRoMGMwLC4zNi0uMjkuNjQtLjY0LjY0aDBjLS4zNiwwLS42NC0uMjgtLjY0LS42NFoiLz4KICA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTUuMzksMi4zNmMwLS4zNi4yOC0uNjQuNjQtLjY0aDBjLjM0LDAsLjY0LjI4LjY0LjY0aDBjMCwuMzYtLjI5LjY0LS42NC42NGgwYy0uMzYsMC0uNjQtLjI4LS42NC0uNjRaIi8+CiAgPHBhdGggY2xhc3M9InN0MCIgZD0iTTI5LjA0LDE1Ljk2YzAtLjM1LjI4LS42NC42NC0uNjRoMGMuMzUsMCwuNjQuMjkuNjQuNjRoMGMwLC4zNi0uMjkuNjQtLjY0LjY0aDBjLS4zNiwwLS42NC0uMjgtLjY0LS42NFoiLz4KICA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjYuNDksMTUuOTZjMC0uMzUuMjgtLjY0LjY0LS42NGgwYy4zNSwwLC42NC4yOS42NC42NGgwYzAsLjM2LS4yOS42NC0uNjQuNjRoMGMtLjM2LDAtLjY0LS4yOC0uNjQtLjY0WiIvPgogIDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0yMi44MSwxNS45OGMwLS4zNS4yOC0uNjQuNjQtLjY0aDBjLjM1LDAsLjY0LjI5LjY0LjY0aDBjMCwuMzYtLjI5LjY0LS42NC42NGgwYy0uMzYsMC0uNjQtLjI4LS42NC0uNjRaIi8+CiAgPHBhdGggY2xhc3M9InN0MCIgZD0iTTIwLjI2LDE1Ljk4YzAtLjM1LjI4LS42NC42NC0uNjRoMGMuMzUsMCwuNjQuMjkuNjQuNjRoMGMwLC4zNi0uMjkuNjQtLjY0LjY0aDBjLS4zNiwwLS42NC0uMjgtLjY0LS42NFoiLz4KICA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTAuNDUsMTZjMC0uMzUuMjgtLjY0LjY0LS42NGgwYy4zNSwwLC42NC4yOS42NC42NGgwYzAsLjM2LS4yOS42NC0uNjQuNjRoMGMtLjM2LDAtLjY0LS4yOC0uNjQtLjY0WiIvPgogIDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik03Ljg5LDE2YzAtLjM1LjI4LS42NC42NC0uNjRoMGMuMzUsMCwuNjQuMjkuNjQuNjRoMGMwLC4zNi0uMjkuNjQtLjY0LjY0aDBjLS4zNiwwLS42NC0uMjgtLjY0LS42NFoiLz4KICA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNNC4xNCwxNmMwLS4zNS4yOC0uNjQuNjQtLjY0aDBjLjM1LDAsLjY0LjI5LjY0LjY0aDBjMCwuMzYtLjI5LjY0LS42NC42NGgwYy0uMzYsMC0uNjQtLjI4LS42NC0uNjRaIi8+CiAgPHBhdGggY2xhc3M9InN0MCIgZD0iTTEuNTgsMTZjMC0uMzUuMjgtLjY0LjY0LS42NGgwYy4zNSwwLC42NC4yOS42NC42NGgwYzAsLjM2LS4yOS42NC0uNjQuNjRoMGMtLjM2LDAtLjY0LS4yOC0uNjQtLjY0WiIvPgogIDxjaXJjbGUgY2xhc3M9InN0MCIgY3g9IjE2LjAxIiBjeT0iMTYuMSIgcj0iMy42OSIvPgo8L3N2Zz4=");
    background-size: 24px 24px;
    background-repeat: no-repeat;
    background-position: center;
}

#contextual-tools-area button.sc-centerplane:hover:not(.disabled) {
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj4KICA8ZGVmcz4KICAgIDxzdHlsZT4KICAgICAgLnN0MCB7CiAgICAgICAgZmlsbDogI2ZmYThhYTsKICAgICAgfQogICAgPC9zdHlsZT4KICA8L2RlZnM+CiAgPHBhdGggY2xhc3M9InN0MCIgZD0iTTI1LjkyLDI1Ljg4SDYuMTNWNi4wOWgxOS43OXYxOS43OVpNNy40MSwyNC42aDE3LjIzVjcuMzZINy40MXYxNy4yM1oiLz4KICA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTUuMzksMjkuNzhjMC0uMzQuMjgtLjY0LjY0LS42NGgwYy4zNCwwLC42NC4yOS42NC42NGgwYzAsLjM2LS4yOS42NC0uNjQuNjRoMGMtLjM2LDAtLjY0LS4yOC0uNjQtLjY0WiIvPgogIDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xNS4zOSwyNy4xMmMwLS4zNC4yOC0uNjQuNjQtLjY0aDBjLjM0LDAsLjY0LjI5LjY0LjY0aDBjMCwuMzYtLjI5LjY0LS42NC42NGgwYy0uMzYsMC0uNjQtLjI4LS42NC0uNjRaIi8+CiAgPHBhdGggY2xhc3M9InN0MCIgZD0iTTE1LjM5LDIzLjY0YzAtLjM2LjI4LS42NC42NC0uNjRoMGMuMzQsMCwuNjQuMjguNjQuNjRoMGMwLC4zNC0uMjkuNjQtLjY0LjY0aDBjLS4zNiwwLS42NC0uMjktLjY0LS42NFoiLz4KICA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTUuMzksMjAuOTdjMC0uMzUuMjgtLjYzLjY0LS42M2gwYy4zNCwwLC42NC4yOC42NC42M2gwYzAsLjM2LS4yOS42NC0uNjQuNjRoMGMtLjM2LDAtLjY0LS4yOC0uNjQtLjY0WiIvPgogIDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xNS4zOSwxMS4xN2MwLS4zNi4yOC0uNjQuNjQtLjY0aDBjLjM0LDAsLjY0LjI4LjY0LjY0aDBjMCwuMzUtLjI5LjY0LS42NC42NGgwYy0uMzYsMC0uNjQtLjI5LS42NC0uNjRaIi8+CiAgPHBhdGggY2xhc3M9InN0MCIgZD0iTTE1LjM5LDguNTFjMC0uMzYuMjgtLjY0LjY0LS42NGgwYy4zNCwwLC42NC4yOC42NC42NGgwYzAsLjM1LS4yOS42NC0uNjQuNjRoMGMtLjM2LDAtLjY0LS4yOS0uNjQtLjY0WiIvPgogIDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xNS4zOSw1LjAyYzAtLjM2LjI4LS42NC42NC0uNjRoMGMuMzQsMCwuNjQuMjguNjQuNjRoMGMwLC4zNi0uMjkuNjQtLjY0LjY0aDBjLS4zNiwwLS42NC0uMjgtLjY0LS42NFoiLz4KICA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTUuMzksMi4zNmMwLS4zNi4yOC0uNjQuNjQtLjY0aDBjLjM0LDAsLjY0LjI4LjY0LjY0aDBjMCwuMzYtLjI5LjY0LS42NC42NGgwYy0uMzYsMC0uNjQtLjI4LS42NC0uNjRaIi8+CiAgPHBhdGggY2xhc3M9InN0MCIgZD0iTTI5LjA0LDE1Ljk2YzAtLjM1LjI4LS42NC42NC0uNjRoMGMuMzUsMCwuNjQuMjkuNjQuNjRoMGMwLC4zNi0uMjkuNjQtLjY0LjY0aDBjLS4zNiwwLS42NC0uMjgtLjY0LS42NFoiLz4KICA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjYuNDksMTUuOTZjMC0uMzUuMjgtLjY0LjY0LS42NGgwYy4zNSwwLC42NC4yOS42NC42NGgwYzAsLjM2LS4yOS42NC0uNjQuNjRoMGMtLjM2LDAtLjY0LS4yOC0uNjQtLjY0WiIvPgogIDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0yMi44MSwxNS45OGMwLS4zNS4yOC0uNjQuNjQtLjY0aDBjLjM1LDAsLjY0LjI5LjY0LjY0aDBjMCwuMzYtLjI5LjY0LS42NC42NGgwYy0uMzYsMC0uNjQtLjI4LS42NC0uNjRaIi8+CiAgPHBhdGggY2xhc3M9InN0MCIgZD0iTTIwLjI2LDE1Ljk4YzAtLjM1LjI4LS42NC42NC0uNjRoMGMuMzUsMCwuNjQuMjkuNjQuNjRoMGMwLC4zNi0uMjkuNjQtLjY0LjY0aDBjLS4zNiwwLS42NC0uMjgtLjY0LS42NFoiLz4KICA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTAuNDUsMTZjMC0uMzUuMjgtLjY0LjY0LS42NGgwYy4zNSwwLC42NC4yOS42NC42NGgwYzAsLjM2LS4yOS42NC0uNjQuNjRoMGMtLjM2LDAtLjY0LS4yOC0uNjQtLjY0WiIvPgogIDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik03Ljg5LDE2YzAtLjM1LjI4LS42NC42NC0uNjRoMGMuMzUsMCwuNjQuMjkuNjQuNjRoMGMwLC4zNi0uMjkuNjQtLjY0LjY0aDBjLS4zNiwwLS42NC0uMjgtLjY0LS42NFoiLz4KICA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNNC4xNCwxNmMwLS4zNS4yOC0uNjQuNjQtLjY0aDBjLjM1LDAsLjY0LjI5LjY0LjY0aDBjMCwuMzYtLjI5LjY0LS42NC42NGgwYy0uMzYsMC0uNjQtLjI4LS42NC0uNjRaIi8+CiAgPHBhdGggY2xhc3M9InN0MCIgZD0iTTEuNTgsMTZjMC0uMzUuMjgtLjY0LjY0LS42NGgwYy4zNSwwLC42NC4yOS42NC42NGgwYzAsLjM2LS4yOS42NC0uNjQuNjRoMGMtLjM2LDAtLjY0LS4yOC0uNjQtLjY0WiIvPgogIDxjaXJjbGUgY2xhc3M9InN0MCIgY3g9IjE2LjAxIiBjeT0iMTYuMSIgcj0iMy42OSIvPgo8L3N2Zz4=");
}

#contextual-tools-area button.sc-centerplane.disabled {
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj4KICA8ZGVmcz4KICAgIDxzdHlsZT4KICAgICAgLnN0MCB7CiAgICAgICAgZmlsbDogI2JiYmJiYjsKICAgICAgfQogICAgPC9zdHlsZT4KICA8L2RlZnM+CiAgPHBhdGggY2xhc3M9InN0MCIgZD0iTTI1LjkyLDI1Ljg4SDYuMTNWNi4wOWgxOS43OXYxOS43OVpNNy40MSwyNC42aDE3LjIzVjcuMzZINy40MXYxNy4yM1oiLz4KICA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTUuMzksMjkuNzhjMC0uMzQuMjgtLjY0LjY0LS42NGgwYy4zNCwwLC42NC4yOS42NC42NGgwYzAsLjM2LS4yOS42NC0uNjQuNjRoMGMtLjM2LDAtLjY0LS4yOC0uNjQtLjY0WiIvPgogIDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xNS4zOSwyNy4xMmMwLS4zNC4yOC0uNjQuNjQtLjY0aDBjLjM0LDAsLjY0LjI5LjY0LjY0aDBjMCwuMzYtLjI5LjY0LS42NC42NGgwYy0uMzYsMC0uNjQtLjI4LS42NC0uNjRaIi8+CiAgPHBhdGggY2xhc3M9InN0MCIgZD0iTTE1LjM5LDIzLjY0YzAtLjM2LjI4LS42NC42NC0uNjRoMGMuMzQsMCwuNjQuMjguNjQuNjRoMGMwLC4zNC0uMjkuNjQtLjY0LjY0aDBjLS4zNiwwLS42NC0uMjktLjY0LS42NFoiLz4KICA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTUuMzksMjAuOTdjMC0uMzUuMjgtLjYzLjY0LS42M2gwYy4zNCwwLC42NC4yOC42NC42M2gwYzAsLjM2LS4yOS42NC0uNjQuNjRoMGMtLjM2LDAtLjY0LS4yOC0uNjQtLjY0WiIvPgogIDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xNS4zOSwxMS4xN2MwLS4zNi4yOC0uNjQuNjQtLjY0aDBjLjM0LDAsLjY0LjI4LjY0LjY0aDBjMCwuMzUtLjI5LjY0LS42NC42NGgwYy0uMzYsMC0uNjQtLjI5LS42NC0uNjRaIi8+CiAgPHBhdGggY2xhc3M9InN0MCIgZD0iTTE1LjM5LDguNTFjMC0uMzYuMjgtLjY0LjY0LS42NGgwYy4zNCwwLC42NC4yOC42NC42NGgwYzAsLjM1LS4yOS42NC0uNjQuNjRoMGMtLjM2LDAtLjY0LS4yOS0uNjQtLjY0WiIvPgogIDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xNS4zOSw1LjAyYzAtLjM2LjI4LS42NC42NC0uNjRoMGMuMzQsMCwuNjQuMjguNjQuNjRoMGMwLC4zNi0uMjkuNjQtLjY0LjY0aDBjLS4zNiwwLS42NC0uMjgtLjY0LS42NFoiLz4KICA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTUuMzksMi4zNmMwLS4zNi4yOC0uNjQuNjQtLjY0aDBjLjM0LDAsLjY0LjI4LjY0LjY0aDBjMCwuMzYtLjI5LjY0LS42NC42NGgwYy0uMzYsMC0uNjQtLjI4LS42NC0uNjRaIi8+CiAgPHBhdGggY2xhc3M9InN0MCIgZD0iTTI5LjA0LDE1Ljk2YzAtLjM1LjI4LS42NC42NC0uNjRoMGMuMzUsMCwuNjQuMjkuNjQuNjRoMGMwLC4zNi0uMjkuNjQtLjY0LjY0aDBjLS4zNiwwLS42NC0uMjgtLjY0LS42NFoiLz4KICA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjYuNDksMTUuOTZjMC0uMzUuMjgtLjY0LjY0LS42NGgwYy4zNSwwLC42NC4yOS42NC42NGgwYzAsLjM2LS4yOS42NC0uNjQuNjRoMGMtLjM2LDAtLjY0LS4yOC0uNjQtLjY0WiIvPgogIDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0yMi44MSwxNS45OGMwLS4zNS4yOC0uNjQuNjQtLjY0aDBjLjM1LDAsLjY0LjI5LjY0LjY0aDBjMCwuMzYtLjI5LjY0LS42NC42NGgwYy0uMzYsMC0uNjQtLjI4LS42NC0uNjRaIi8+CiAgPHBhdGggY2xhc3M9InN0MCIgZD0iTTIwLjI2LDE1Ljk4YzAtLjM1LjI4LS42NC42NC0uNjRoMGMuMzUsMCwuNjQuMjkuNjQuNjRoMGMwLC4zNi0uMjkuNjQtLjY0LjY0aDBjLS4zNiwwLS42NC0uMjgtLjY0LS42NFoiLz4KICA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTAuNDUsMTZjMC0uMzUuMjgtLjY0LjY0LS42NGgwYy4zNSwwLC42NC4yOS42NC42NGgwYzAsLjM2LS4yOS42NC0uNjQuNjRoMGMtLjM2LDAtLjY0LS4yOC0uNjQtLjY0WiIvPgogIDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik03Ljg5LDE2YzAtLjM1LjI4LS42NC42NC0uNjRoMGMuMzUsMCwuNjQuMjkuNjQuNjRoMGMwLC4zNi0uMjkuNjQtLjY0LjY0aDBjLS4zNiwwLS42NC0uMjgtLjY0LS42NFoiLz4KICA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNNC4xNCwxNmMwLS4zNS4yOC0uNjQuNjQtLjY0aDBjLjM1LDAsLjY0LjI5LjY0LjY0aDBjMCwuMzYtLjI5LjY0LS42NC42NGgwYy0uMzYsMC0uNjQtLjI4LS42NC0uNjRaIi8+CiAgPHBhdGggY2xhc3M9InN0MCIgZD0iTTEuNTgsMTZjMC0uMzUuMjgtLjY0LjY0LS42NGgwYy4zNSwwLC42NC4yOS42NC42NGgwYzAsLjM2LS4yOS42NC0uNjQuNjRoMGMtLjM2LDAtLjY0LS4yOC0uNjQtLjY0WiIvPgogIDxjaXJjbGUgY2xhc3M9InN0MCIgY3g9IjE2LjAxIiBjeT0iMTYuMSIgcj0iMy42OSIvPgo8L3N2Zz4=");
}

/* Icona Vuoto */
#contextual-tools-area button.sc-empty {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTYuMDMsMjYuNjRoLS4yOXMuMDQtMS41LjA0LTEuNWguMjJjLjIzLDAsLjQ3LDAsLjY5LS4wMmwuMTEsMS41Yy0uMjUuMDItLjUxLjAzLS43Ny4wM1pNMTMuNjMsMjYuMzhjLS4zNS0uMDgtLjY5LS4xNy0xLjAyLS4yOWwuNDgtMS40MmMuMjkuMS41OC4xOC44OC4yNWwtLjMzLDEuNDZaTTE4Ljg5LDI2LjI0bC0uNC0xLjQ1Yy4yOS0uMDguNTgtLjE4Ljg2LS4yOWwuNTUsMS4zOWMtLjMzLjEzLS42Ny4yNC0xLjAxLjM0Wk0xMC42OCwyNS4yMmMtLjMxLS4xOC0uNi0uMzctLjg5LS41OGwuODctMS4yMmMuMjUuMTguNS4zNC43Ny41bC0uNzUsMS4zWk0yMS43OCwyNC45M2wtLjgyLTEuMjZjLjI2LS4xNy41LS4zNC43NC0uNTNsLjk0LDEuMTdjLS4yOC4yMi0uNTYuNDMtLjg2LjYyWk04LjE5LDIzLjI1Yy0uMjQtLjI2LS40Ny0uNTMtLjY4LS44MWwxLjE5LS45MWMuMTguMjQuMzguNDguNTkuN2wtMS4xLDEuMDJaTTI0LjE2LDIyLjgzbC0xLjE1LS45NmMuMTktLjIzLjM4LS40Ny41NS0uNzNsMS4yNC44NWMtLjIuMjktLjQxLjU4LS42NC44NVpNNi40LDIwLjYzYy0uMTUtLjMyLS4yOS0uNjQtLjQyLS45OGwxLjQxLS41MWMuMS4yOS4yMi41Ny4zNi44NGwtMS4zNS42NVpNMjUuODIsMjAuMTJsLTEuMzgtLjU4Yy4xMi0uMjguMjItLjU2LjMxLS44NmwxLjQzLjQ0Yy0uMS4zNC0uMjMuNjctLjM2LDFaTTUuNDYsMTcuNTljLS4wNS0uMzUtLjA5LS43LS4xMS0xLjA2bDEuNS0uMDdjLjAyLjMxLjA1LjYxLjA5LjkxbC0xLjQ4LjIyWk0yNi42LDE3LjA1bC0xLjQ5LS4xNWMuMDMtLjMuMDQtLjYuMDQtLjkxbDEuMTctLjAzaC4zM2MwLC4zOS0uMDIuNzQtLjA1LDEuMDlaTTYuOTQsMTQuNjRsLTEuNDgtLjIyYy4wNS0uMzUuMTItLjcuMjEtMS4wNGwxLjQ2LjM3Yy0uMDcuMjktLjEzLjU5LS4xOC44OVpNMjQuOTYsMTQuMTNjLS4wNi0uMy0uMTQtLjU5LS4yMy0uODhsMS40My0uNDVjLjEuMzQuMTkuNjguMjcsMS4wM2wtMS40Ny4zWk03LjczLDEyLjAzbC0xLjM1LS42NWMuMTUtLjMyLjMyLS42My41MS0uOTNsMS4yOC43OGMtLjE2LjI2LS4zLjUzLS40NC44Wk0yNC4wMiwxMS41OGMtLjE1LS4yNy0uMzEtLjUzLS40OC0uNzhsMS4yNC0uODVjLjIuMjkuMzkuNTkuNTYuOWwtMS4zMS43MlpNOS4yNyw5Ljc3bC0xLjEtMS4wMmMuMjQtLjI2LjQ5LS41MS43Ni0uNzRsMSwxLjEyYy0uMjMuMi0uNDQuNDItLjY1LjY0Wk0yMi4zNiw5LjQxYy0uMjItLjIxLS40NS0uNDEtLjY5LS42bC45My0xLjE3Yy4yOC4yMi41NC40NS44LjdsLTEuMDQsMS4wOFpNMTEuMzksOC4wN2wtLjc1LTEuM2MuMzEtLjE4LjYyLS4zNC45NC0uNDlsLjYyLDEuMzdjLS4yOC4xMy0uNTUuMjctLjgxLjQyWk0yMC4xNCw3LjgyYy0uMjctLjE0LS41NS0uMjYtLjgzLS4zN2wuNTQtMS40Yy4zMy4xMy42NS4yNy45Ny40M2wtLjY4LDEuMzRaTTEzLjkzLDcuMDZsLS4zNC0xLjQ2Yy4zNC0uMDguNjktLjE0LDEuMDQtLjE5bC4xOSwxLjQ5Yy0uMy4wNC0uNi4wOS0uOS4xNlpNMTcuNTYsNi45NmMtLjMtLjA1LS42LS4wOS0uOTEtLjExbC4xMS0xLjVjLjM2LjAzLjcxLjA3LDEuMDUuMTNsLS4yNSwxLjQ4WiIgZmlsbD0iIzMzMzMzMyIvPjxyZWN0IGNsYXNzPSJzdDAiIHg9IjcuMzkiIHk9IjE0LjIyIiB3aWR0aD0iMTQuMzgiIGhlaWdodD0iMS41IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNi4zMiAxNC42OSkgcm90YXRlKC00NSkiIGZpbGw9IiMzMzMzMzMiLz48cmVjdCBjbGFzcz0ic3QwIiB4PSIxMC4wNSIgeT0iMTYuODgiIHdpZHRoPSIxNC4zOCIgaGVpZ2h0PSIxLjUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC03LjQyIDE3LjM1KSByb3RhdGUoLTQ1KSIgZmlsbD0iIzMzMzMzMyIvPjxyZWN0IGNsYXNzPSJzdDAiIHg9IjE2LjA0IiB5PSIxOS42NyIgd2lkdGg9IjcuOTgiIGhlaWdodD0iMS41IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtOC41OCAyMC4xNCkgcm90YXRlKC00NSkiIGZpbGw9IiMzMzMzMzMiLz48cmVjdCBjbGFzcz0ic3QwIiB4PSI3Ljc4IiB5PSIxMS4yOSIgd2lkdGg9IjcuOTgiIGhlaWdodD0iMS41IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNS4wNyAxMS44NSkgcm90YXRlKC00NSkiIGZpbGw9IiMzMzMzMzMiLz48L3N2Zz4=");
    background-size: 24px 24px;
    background-repeat: no-repeat;
    background-position: center;
}

#contextual-tools-area button.sc-empty:hover:not(.disabled) {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTYuMDMsMjYuNjRoLS4yOXMuMDQtMS41LjA0LTEuNWguMjJjLjIzLDAsLjQ3LDAsLjY5LS4wMmwuMTEsMS41Yy0uMjUuMDItLjUxLjAzLS43Ny4wM1pNMTMuNjMsMjYuMzhjLS4zNS0uMDgtLjY5LS4xNy0xLjAyLS4yOWwuNDgtMS40MmMuMjkuMS41OC4xOC44OC4yNWwtLjMzLDEuNDZaTTE4Ljg5LDI2LjI0bC0uNC0xLjQ1Yy4yOS0uMDguNTgtLjE4Ljg2LS4yOWwuNTUsMS4zOWMtLjMzLjEzLS42Ny4yNC0xLjAxLjM0Wk0xMC42OCwyNS4yMmMtLjMxLS4xOC0uNi0uMzctLjg5LS41OGwuODctMS4yMmMuMjUuMTguNS4zNC43Ny41bC0uNzUsMS4zWk0yMS43OCwyNC45M2wtLjgyLTEuMjZjLjI2LS4xNy41LS4zNC43NC0uNTNsLjk0LDEuMTdjLS4yOC4yMi0uNTYuNDMtLjg2LjYyWk04LjE5LDIzLjI1Yy0uMjQtLjI2LS40Ny0uNTMtLjY4LS44MWwxLjE5LS45MWMuMTguMjQuMzguNDguNTkuN2wtMS4xLDEuMDJaTTI0LjE2LDIyLjgzbC0xLjE1LS45NmMuMTktLjIzLjM4LS40Ny41NS0uNzNsMS4yNC44NWMtLjIuMjktLjQxLjU4LS42NC44NVpNNi40LDIwLjYzYy0uMTUtLjMyLS4yOS0uNjQtLjQyLS45OGwxLjQxLS41MWMuMS4yOS4yMi41Ny4zNi44NGwtMS4zNS42NVpNMjUuODIsMjAuMTJsLTEuMzgtLjU4Yy4xMi0uMjguMjItLjU2LjMxLS44NmwxLjQzLjQ0Yy0uMS4zNC0uMjMuNjctLjM2LDFaTTUuNDYsMTcuNTljLS4wNS0uMzUtLjA5LS43LS4xMS0xLjA2bDEuNS0uMDdjLjAyLjMxLjA1LjYxLjA5LjkxbC0xLjQ4LjIyWk0yNi42LDE3LjA1bC0xLjQ5LS4xNWMuMDMtLjMuMDQtLjYuMDQtLjkxbDEuMTctLjAzaC4zM2MwLC4zOS0uMDIuNzQtLjA1LDEuMDlaTTYuOTQsMTQuNjRsLTEuNDgtLjIyYy4wNS0uMzUuMTItLjcuMjEtMS4wNGwxLjQ2LjM3Yy0uMDcuMjktLjEzLjU5LS4xOC44OVpNMjQuOTYsMTQuMTNjLS4wNi0uMy0uMTQtLjU5LS4yMy0uODhsMS40My0uNDVjLjEuMzQuMTkuNjguMjcsMS4wM2wtMS40Ny4zWk03LjczLDEyLjAzbC0xLjM1LS42NWMuMTUtLjMyLjMyLS42My41MS0uOTNsMS4yOC43OGMtLjE2LjI2LS4zLjUzLS40NC44Wk0yNC4wMiwxMS41OGMtLjE1LS4yNy0uMzEtLjUzLS40OC0uNzhsMS4yNC0uODVjLjIuMjkuMzkuNTkuNTYuOWwtMS4zMS43MlpNOS4yNyw5Ljc3bC0xLjEtMS4wMmMuMjQtLjI2LjQ5LS41MS43Ni0uNzRsMSwxLjEyYy0uMjMuMi0uNDQuNDItLjY1LjY0Wk0yMi4zNiw5LjQxYy0uMjItLjIxLS40NS0uNDEtLjY5LS42bC45My0xLjE3Yy4yOC4yMi41NC40NS44LjdsLTEuMDQsMS4wOFpNMTEuMzksOC4wN2wtLjc1LTEuM2MuMzEtLjE4LjYyLS4zNC45NC0uNDlsLjYyLDEuMzdjLS4yOC4xMy0uNTUuMjctLjgxLjQyWk0yMC4xNCw3LjgyYy0uMjctLjE0LS41NS0uMjYtLjgzLS4zN2wuNTQtMS40Yy4zMy4xMy42NS4yNy45Ny40M2wtLjY4LDEuMzRaTTEzLjkzLDcuMDZsLS4zNC0xLjQ2Yy4zNC0uMDguNjktLjE0LDEuMDQtLjE5bC4xOSwxLjQ5Yy0uMy4wNC0uNi4wOS0uOS4xNlpNMTcuNTYsNi45NmMtLjMtLjA1LS42LS4wOS0uOTEtLjExbC4xMS0xLjVjLjM2LjAzLjcxLjA3LDEuMDUuMTNsLS4yNSwxLjQ4WiIgZmlsbD0iI2ZmYThhYSIvPjxyZWN0IGNsYXNzPSJzdDAiIHg9IjcuMzkiIHk9IjE0LjIyIiB3aWR0aD0iMTQuMzgiIGhlaWdodD0iMS41IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNi4zMiAxNC42OSkgcm90YXRlKC00NSkiIGZpbGw9IiNmZmE4YWEiLz48cmVjdCBjbGFzcz0ic3QwIiB4PSIxMC4wNSIgeT0iMTYuODgiIHdpZHRoPSIxNC4zOCIgaGVpZ2h0PSIxLjUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC03LjQyIDE3LjM1KSByb3RhdGUoLTQ1KSIgZmlsbD0iI2ZmYThhYSIvPjxyZWN0IGNsYXNzPSJzdDAiIHg9IjE2LjA0IiB5PSIxOS42NyIgd2lkdGg9IjcuOTgiIGhlaWdodD0iMS41IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtOC41OCAyMC4xNCkgcm90YXRlKC00NSkiIGZpbGw9IiNmZmE4YWEiLz48cmVjdCBjbGFzcz0ic3QwIiB4PSI3Ljc4IiB5PSIxMS4yOSIgd2lkdGg9IjcuOTgiIGhlaWdodD0iMS41IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNS4wNyAxMS44NSkgcm90YXRlKC00NSkiIGZpbGw9IiNmZmE4YWEiLz48L3N2Zz4=");
}

#contextual-tools-area button.sc-empty.disabled {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTYuMDMsMjYuNjRoLS4yOXMuMDQtMS41LjA0LTEuNWguMjJjLjIzLDAsLjQ3LDAsLjY5LS4wMmwuMTEsMS41Yy0uMjUuMDItLjUxLjAzLS43Ny4wM1pNMTMuNjMsMjYuMzhjLS4zNS0uMDgtLjY5LS4xNy0xLjAyLS4yOWwuNDgtMS40MmMuMjkuMS41OC4xOC44OC4yNWwtLjMzLDEuNDZaTTE4Ljg5LDI2LjI0bC0uNC0xLjQ1Yy4yOS0uMDguNTgtLjE4Ljg2LS4yOWwuNTUsMS4zOWMtLjMzLjEzLS42Ny4yNC0xLjAxLjM0Wk0xMC42OCwyNS4yMmMtLjMxLS4xOC0uNi0uMzctLjg5LS41OGwuODctMS4yMmMuMjUuMTguNS4zNC43Ny41bC0uNzUsMS4zWk0yMS43OCwyNC45M2wtLjgyLTEuMjZjLjI2LS4xNy41LS4zNC43NC0uNTNsLjk0LDEuMTdjLS4yOC4yMi0uNTYuNDMtLjg2LjYyWk04LjE5LDIzLjI1Yy0uMjQtLjI2LS40Ny0uNTMtLjY4LS44MWwxLjE5LS45MWMuMTguMjQuMzguNDguNTkuN2wtMS4xLDEuMDJaTTI0LjE2LDIyLjgzbC0xLjE1LS45NmMuMTktLjIzLjM4LS40Ny41NS0uNzNsMS4yNC44NWMtLjIuMjktLjQxLjU4LS42NC44NVpNNi40LDIwLjYzYy0uMTUtLjMyLS4yOS0uNjQtLjQyLS45OGwxLjQxLS41MWMuMS4yOS4yMi41Ny4zNi44NGwtMS4zNS42NVpNMjUuODIsMjAuMTJsLTEuMzgtLjU4Yy4xMi0uMjguMjItLjU2LjMxLS44NmwxLjQzLjQ0Yy0uMS4zNC0uMjMuNjctLjM2LDFaTTUuNDYsMTcuNTljLS4wNS0uMzUtLjA5LS43LS4xMS0xLjA2bDEuNS0uMDdjLjAyLjMxLjA1LjYxLjA5LjkxbC0xLjQ4LjIyWk0yNi42LDE3LjA1bC0xLjQ5LS4xNWMuMDMtLjMuMDQtLjYuMDQtLjkxbDEuMTctLjAzaC4zM2MwLC4zOS0uMDIuNzQtLjA1LDEuMDlaTTYuOTQsMTQuNjRsLTEuNDgtLjIyYy4wNS0uMzUuMTItLjcuMjEtMS4wNGwxLjQ2LjM3Yy0uMDcuMjktLjEzLjU5LS4xOC44OVpNMjQuOTYsMTQuMTNjLS4wNi0uMy0uMTQtLjU5LS4yMy0uODhsMS40My0uNDVjLjEuMzQuMTkuNjguMjcsMS4wM2wtMS40Ny4zWk03LjczLDEyLjAzbC0xLjM1LS42NWMuMTUtLjMyLjMyLS42My41MS0uOTNsMS4yOC43OGMtLjE2LjI2LS4zLjUzLS40NC44Wk0yNC4wMiwxMS41OGMtLjE1LS4yNy0uMzEtLjUzLS40OC0uNzhsMS4yNC0uODVjLjIuMjkuMzkuNTkuNTYuOWwtMS4zMS43MlpNOS4yNyw5Ljc3bC0xLjEtMS4wMmMuMjQtLjI2LjQ5LS41MS43Ni0uNzRsMSwxLjEyYy0uMjMuMi0uNDQuNDItLjY1LjY0Wk0yMi4zNiw5LjQxYy0uMjItLjIxLS40NS0uNDEtLjY5LS42bC45My0xLjE3Yy4yOC4yMi41NC40NS44LjdsLTEuMDQsMS4wOFpNMTEuMzksOC4wN2wtLjc1LTEuM2MuMzEtLjE4LjYyLS4zNC45NC0uNDlsLjYyLDEuMzdjLS4yOC4xMy0uNTUuMjctLjgxLjQyWk0yMC4xNCw3LjgyYy0uMjctLjE0LS41NS0uMjYtLjgzLS4zN2wuNTQtMS40Yy4zMy4xMy42NS4yNy45Ny40M2wtLjY4LDEuMzRaTTEzLjkzLDcuMDZsLS4zNC0xLjQ2Yy4zNC0uMDguNjktLjE0LDEuMDQtLjE5bC4xOSwxLjQ5Yy0uMy4wNC0uNi4wOS0uOS4xNlpNMTcuNTYsNi45NmMtLjMtLjA1LS42LS4wOS0uOTEtLjExbC4xMS0xLjVjLjM2LjAzLjcxLjA3LDEuMDUuMTNsLS4yNSwxLjQ4WiIgZmlsbD0iI2JiYmJiYiLz48cmVjdCBjbGFzcz0ic3QwIiB4PSI3LjM5IiB5PSIxNC4yMiIgd2lkdGg9IjE0LjM4IiBoZWlnaHQ9IjEuNSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTYuMzIgMTQuNjkpIHJvdGF0ZSgtNDUpIiBmaWxsPSIjYmJiYmJiIi8+PHJlY3QgY2xhc3M9InN0MCIgeD0iMTAuMDUiIHk9IjE2Ljg4IiB3aWR0aD0iMTQuMzgiIGhlaWdodD0iMS41IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNy40MiAxNy4zNSkgcm90YXRlKC00NSkiIGZpbGw9IiNiYmJiYmIiLz48cmVjdCBjbGFzcz0ic3QwIiB4PSIxNi4wNCIgeT0iMTkuNjciIHdpZHRoPSI3Ljk4IiBoZWlnaHQ9IjEuNSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTguNTggMjAuMTQpIHJvdGF0ZSgtNDUpIiBmaWxsPSIjYmJiYmJiIi8+PHJlY3QgY2xhc3M9InN0MCIgeD0iNy43OCIgeT0iMTEuMjkiIHdpZHRoPSI3Ljk4IiBoZWlnaHQ9IjEuNSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTUuMDcgMTEuODUpIHJvdGF0ZSgtNDUpIiBmaWxsPSIjYmJiYmJiIi8+PC9zdmc+");
}

/* Icona Pieno (mutuamente esclusiva con Vuoto) */
#contextual-tools-area button.sc-full {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTUuNTcsOC4yOWMtNC41MSwwLTguMTcsMy42Ny04LjE3LDguMTdzMy42Nyw4LjE3LDguMTcsOC4xNyw4LjE3LTMuNjcsOC4xNy04LjE3LTMuNjctOC4xNy04LjE3LTguMTdaIiBmaWxsPSIjMzMzMzMzIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTE1LjU3LDQuODVjLTYuNCwwLTExLjYxLDUuMjEtMTEuNjEsMTEuNjFzNS4yMSwxMS42MSwxMS42MSwxMS42MSwxMS42MS01LjIxLDExLjYxLTExLjYxLTUuMjEtMTEuNjEtMTEuNjEtMTEuNjFaTTE1LjU3LDI1LjYzYy01LjA2LDAtOS4xNy00LjExLTkuMTctOS4xN1MxMC41MSw3LjI5LDE1LjU3LDcuMjlzOS4xNyw0LjExLDkuMTcsOS4xNy00LjExLDkuMTctOS4xNyw5LjE3WiIgZmlsbD0iIzMzMzMzMyIvPjwvc3ZnPg==");
    background-size: 24px 24px;
    background-repeat: no-repeat;
    background-position: center;
}

#contextual-tools-area button.sc-full:hover:not(.disabled) {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTUuNTcsOC4yOWMtNC41MSwwLTguMTcsMy42Ny04LjE3LDguMTdzMy42Nyw4LjE3LDguMTcsOC4xNyw4LjE3LTMuNjcsOC4xNy04LjE3LTMuNjctOC4xNy04LjE3LTguMTdaIiBmaWxsPSIjZmZhOGFhIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTE1LjU3LDQuODVjLTYuNCwwLTExLjYxLDUuMjEtMTEuNjEsMTEuNjFzNS4yMSwxMS42MSwxMS42MSwxMS42MSwxMS42MS01LjIxLDExLjYxLTExLjYxLTUuMjEtMTEuNjEtMTEuNjEtMTEuNjFaTTE1LjU3LDI1LjYzYy01LjA2LDAtOS4xNy00LjExLTkuMTctOS4xN1MxMC41MSw3LjI5LDE1LjU3LDcuMjlzOS4xNyw0LjExLDkuMTcsOS4xNy00LjExLDkuMTctOS4xNyw5LjE3WiIgZmlsbD0iI2ZmYThhYSIvPjwvc3ZnPg==");
}

/* Icona Duplica */
#contextual-tools-area button.sc-copy {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNOC4xLDIzLjExYy00LjMsMC03LjgtMy41LTcuOC03LjhzMy41LTcuOCw3LjgtNy44LDcuOCwzLjUsNy44LDcuOC0zLjUsNy44LTcuOCw3LjhNOC4xLDguODVjLTMuNTYsMC02LjQ2LDIuOS02LjQ2LDYuNDZzMi45LDYuNDYsNi40Niw2LjQ2LDYuNDYtMi45LDYuNDYtNi40Ni0yLjktNi40Ni02LjQ2LTYuNDZaIiBmaWxsPSIjMzMzMzMzIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTIzLjksMjcuN2MtNC4zLDAtNy44LTMuNS03LjgtNy44czMuNS03LjgsNy44LTcuOCw3LjgsMy41LDcuOCw3LjgtMy41LDcuOC03LjgsNy44TTIzLjksMTMuNDRjLTMuNTYsMC02LjQ2LDIuOS02LjQ2LDYuNDZzMi45LDYuNDYsNi40Niw2LjQ2LDYuNDYtMi45LDYuNDYtNi40Ni0yLjktNi40Ni02LjQ2LTYuNDZaIiBmaWxsPSIjMzMzMzMzIi8+PGc+PHBhdGggY2xhc3M9InN0MCIgZD0iTTIxLjA1LDkuODFjLTIuMDgtMS41MS00Ljg3LTEuNjUtNy4xMS0uMzhsLS42Ni0xLjE2YzIuNjktMS41Myw2LjA1LTEuMzUsOC41NS40NmwtLjc4LDEuMDhaIiBmaWxsPSIjMzMzMzMzIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTIzLjQ5LDExLjU1Yy0uNi0xLjQyLTEuMTctMy4zNC0xLjI0LTQuODFsLTEuMTUsMi4zLTIsMS4wM2MxLjQ3LjE0LDMuMzYuODEsNC43NCwxLjQ5WiIgZmlsbD0iIzMzMzMzMyIvPjwvZz48L3N2Zz4=");
    background-size: 24px 24px;
    background-repeat: no-repeat;
    background-position: center;
}

#contextual-tools-area button.sc-copy:hover:not(.disabled) {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNOC4xLDIzLjExYy00LjMsMC03LjgtMy41LTcuOC03LjhzMy41LTcuOCw3LjgtNy44LDcuOCwzLjUsNy44LDcuOC0zLjUsNy44LTcuOCw3LjhNOC4xLDguODVjLTMuNTYsMC02LjQ2LDIuOS02LjQ2LDYuNDZzMi45LDYuNDYsNi40Niw2LjQ2LDYuNDYtMi45LDYuNDYtNi40Ni0yLjktNi40Ni02LjQ2LTYuNDZaIiBmaWxsPSIjZmZhOGFhIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTIzLjksMjcuN2MtNC4zLDAtNy44LTMuNS03LjgtNy44czMuNS03LjgsNy44LTcuOCw3LjgsMy41LDcuOCw3LjgtMy41LDcuOC03LjgsNy44TTIzLjksMTMuNDRjLTMuNTYsMC02LjQ2LDIuOS02LjQ2LDYuNDZzMi45LDYuNDYsNi40Niw2LjQ2LDYuNDYtMi45LDYuNDYtNi40Ni0yLjktNi40Ni02LjQ2LTYuNDZaIiBmaWxsPSIjZmZhOGFhIi8+PGc+PHBhdGggY2xhc3M9InN0MCIgZD0iTTIxLjA1LDkuODFjLTIuMDgtMS41MS00Ljg3LTEuNjUtNy4xMS0uMzhsLS42Ni0xLjE2YzIuNjktMS41Myw2LjA1LTEuMzUsOC41NS40NmwtLjc4LDEuMDhaIiBmaWxsPSIjZmZhOGFhIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTIzLjQ5LDExLjU1Yy0uNi0xLjQyLTEuMTctMy4zNC0xLjI0LTQuODFsLTEuMTUsMi4zLTIsMS4wM2MxLjQ3LjE0LDMuMzYuODEsNC43NCwxLjQ5WiIgZmlsbD0iI2ZmYThhYSIvPjwvZz48L3N2Zz4=");
}

#contextual-tools-area button.sc-copy.disabled {
    background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj48cGF0aCBjbGFzcz0ic3QwIiBkPSJNOC4xLDIzLjExYy00LjMsMC03LjgtMy41LTcuOC03LjhzMy41LTcuOCw3LjgtNy44LDcuOCwzLjUsNy44LDcuOC0zLjUsNy44LTcuOCw3LjhNOC4xLDguODVjLTMuNTYsMC02LjQ2LDIuOS02LjQ2LDYuNDZzMi45LDYuNDYsNi40Niw2LjQ2LDYuNDYtMi45LDYuNDYtNi40Ni0yLjktNi40Ni02LjQ2LTYuNDZaIiBmaWxsPSIjYmJiYmJiIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTIzLjksMjcuN2MtNC4zLDAtNy44LTMuNS03LjgtNy44czMuNS03LjgsNy44LTcuOCw3LjgsMy41LDcuOCw3LjgtMy41LDcuOC03LjgsNy44TTIzLjksMTMuNDRjLTMuNTYsMC02LjQ2LDIuOS02LjQ2LDYuNDZzMi45LDYuNDYsNi40Niw2LjQ2LDYuNDYtMi45LDYuNDYtNi40Ni0yLjktNi40Ni02LjQ2LTYuNDZaIiBmaWxsPSIjYmJiYmJiIi8+PGc+PHBhdGggY2xhc3M9InN0MCIgZD0iTTIxLjA1LDkuODFjLTIuMDgtMS41MS00Ljg3LTEuNjUtNy4xMS0uMzhsLS42Ni0xLjE2YzIuNjktMS41Myw2LjA1LTEuMzUsOC41NS40NmwtLjc4LDEuMDhaIiBmaWxsPSIjYmJiYmJiIi8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTIzLjQ5LDExLjU1Yy0uNi0xLjQyLTEuMTctMy4zNC0xLjI0LTQuODFsLTEuMTUsMi4zLTIsMS4wM2MxLjQ3LjE0LDMuMzYuODEsNC43NCwxLjQ5WiIgZmlsbD0iI2JiYmJiYiIvPjwvZz48L3N2Zz4=");
}

.btn-group-vertical > .btn {
    margin-top: -1px !important;
    margin-left: 0;
}

/* Stile per il bottone home con icona SVG */
#tools-area button.home {
    position: relative;
}

#tools-area button.home .home-icon-container {
    width: 32px;
    height: 32px;
background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj4KICA8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMzAuMS4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogMi4xLjEgQnVpbGQgMTM2KSAgLS0+CiAgPHBhdGggZD0iTTI0Ljk3LDE0LjY0Yy0uNDYtLjAyLS44NS4yOC0uOTMuNzl2OS45OHMtNC42LDAtNC42LDB2LTUuMjVjLS4wNi00LjQ1LTYuNTQtNC42NC02Ljg4LS4xOXY1LjQ0aC00LjZ2LTEwLjAyYy0uMTYtMS4wNy0xLjgxLS45NS0xLjc3LjE4LDAsMCwwLDEwLjc1LDAsMTAuNzUsMCwuNDkuNDEuODcuOTMuODdoNi4zMmMuNDksMCwuOS0uNDEuOS0uOSwwLDAsMC02LjEzLDAtNi4xMy0uMDItLjk0Ljc3LTEuNywxLjY5LTEuNjkuOTIuMDEsMS42My43NSwxLjYzLDEuNjl2Ni4xM2MwLC41LjQuOS45LjloNi4zOGMuNDgsMCwuODctLjQuODctLjl2LTEwLjczYzAtLjUyLS4zNC0uOS0uODQtLjkyWiIvPgogIDxwYXRoIGQ9Ik0yOC4xNSwxMy40OWwtMTEuNTctOC40N2MtLjM3LS4yNy0uNzktLjI3LTEuMTYsMEwzLjg1LDEzLjQ5Yy0uNDEuMjgtLjQ5Ljg4LS4xOCwxLjI3LjMxLjM4Ljg0LjQ1LDEuMjMuMTZsMTEuMDktOC4xMiwxMS4xNCw4LjE2Yy45My42NCwxLjkyLS44MiwxLTEuNDZaIi8+Cjwvc3ZnPg==") no-repeat;
background-size: 32px 32px;
    background-position: center;
}

#tools-area button.home:before {
    display: none;
}

#tools-area .projection-mode-tools{
    margin-top: 12px;
}

#tools-area button.projection-mode{
    position: relative;
    background-color: #f9ffff;
}

#tools-area button.projection-mode .projection-mode-icon{
    width: 32px;
    height: 32px;
    background-image: url("data:image/svg+xml,%3Csvg id='Livello_1' xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 32 32'%3E%3Cpath fill='%23070707' d='M29.77,17.03c-.05-.25-.25-.43-.41-.51-.17-.09-.36-.1-.53-.04h-.12v.06s-.05.03-.08.04c0-.24-.11-.49-.33-.62-.34-.2-.77-.09-.96.24-.2.34-.09.76.24.96,0,0,.01,0,.02,0l-5.16,3.01v-2.79s0-.43,0-.43v-1.34c-.07-.26-.29-.55-.62-.62l-2.99-.58v-2.54c.05.06.1.12.17.16.11.07.24.1.36.1.24,0,.47-.12.6-.34.2-.33.09-.76-.24-.96-.3-.18-.67-.1-.89.16v-.38c0-.19-.1-.36-.26-.45l-7.41-4.31c-.16-.1-.37-.1-.53,0l-7.36,4.31c-.11.06-.19.17-.23.29-.04.13-.1.31-.1.52v12.45s0,.56.37.77l7.33,4.28c.08.05.17.07.27.07s.18-.03.26-.07l18.14-10.6c.34-.13.55-.5.48-.83ZM10.15,26.47l-5.73-3.33v-11.96s5.73-3.34,5.73-3.34v18.64ZM17.36,23.13l-5.73,3.35V7.84s5.73,3.34,5.73,3.34v11.96ZM18.83,22.28v-6.36s2.13.41,2.13.41v4.71s-2.13,1.24-2.13,1.24Z'/%3E%3Cpath fill='%23070707' d='M25.86,16.13c.11.07.24.1.36.1.24,0,.47-.12.6-.34.2-.34.09-.76-.24-.96-.33-.2-.76-.09-.96.24-.2.33-.09.76.24.96Z'/%3E%3Cpath fill='%23070707' d='M24.14,15.1c.11.07.24.1.36.1.24,0,.47-.12.6-.34.2-.33.09-.76-.24-.96-.33-.2-.76-.09-.96.25-.2.33-.09.76.24.95Z'/%3E%3Cpath fill='%23070707' d='M22.42,14.08c.12.07.24.1.36.1.24,0,.47-.12.6-.34.2-.34.1-.77-.24-.96-.33-.2-.76-.09-.96.24s-.09.76.24.96Z'/%3E%3Cpath fill='%23070707' d='M20.71,13.06c.11.06.23.09.35.09.24,0,.48-.12.61-.34.19-.33.09-.76-.25-.96-.33-.2-.76-.09-.96.24-.19.34-.08.77.25.97Z'/%3E%3Ccircle fill='%23070707' cx='23.52' cy='17.27' r='.7'/%3E%3Ccircle fill='%23070707' cx='25.52' cy='17.27' r='.7'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 32px 32px;
}

#tools-area button.projection-mode:before{
    display: none;
}

.camera-projection-notice{
    position: absolute;
    z-index: 4;
    left: 50%;
    top: 74px;
    transform: translateX(-50%);
    padding: 8px 14px;
    border-radius: 4px;
    background: rgba(47, 70, 75, 0.86);
    color: #ffffff;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.2;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.18s ease;
    white-space: nowrap;
}

.camera-projection-notice.visible{
    opacity: 1;
}

/* Stile per i pulsanti zoom con icone SVG */
#tools-area button.zoom-in,
#tools-area button.zoom-out {
    position: relative;
}

#tools-area button.zoom-in .zoom-icon-container {
    width: 16px;
    height: 16px;
    background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTggMEM3LjQ0NzcyIDAgNyAwLjQ0NzcxNSA3IDFWN0gxQzAuNDQ3NzE1IDcgMCA3LjQ0NzcyIDAgOEMwIDguNTUyMjkgMC40NDc3MTUgOSAxIDlIN1YxNUM3IDE1LjU1MjMgNy40NDc3MiAxNiA4IDE2QzguNTUyMjkgMTYgOSAxNS41NTIzIDkgMTVWOUgxNUMxNS41NTIzIDkgMTYgOC41NTIyOSAxNiA4QzE2IDcuNDQ3NzIgMTUuNTUyMyA3IDE1IDdIOVYxQzkgMC40NDc3MTUgOC41NTIyOSAwIDggMFoiLz4KPC9zdmc+") no-repeat;
    background-size: 16px 16px;
    background-position: center;
}

#tools-area button.zoom-out .zoom-icon-container {
    width: 16px;
    height: 16px;
    background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0ibSAwIDggYyAwIDAuNTUyMyAwLjQ0NzcgMSAxIDEgaCAxNCBjIDAuNTUyMyAwIDEgLTAuNDQ3NyAxIC0xIGMgMCAtMC41NTIzIC0wLjQ0NzcgLTEgLTEgLTEgaCAtMTQgYyAtMC41NTIzIDAgLTEgMC40NDc3IC0xIDEgeiIvPgo8L3N2Zz4=") no-repeat;
    background-size: 16px 16px;
    background-position: center;
}

#tools-area button.zoom-in:before,
#tools-area button.zoom-out:before {
    display: none;
}

/* Stile per i pulsanti tool con icone SVG */
#tools-area button.pointer,
#tools-area button.marquee,
#tools-area button.tape,
#tools-area button.undo,
#tools-area button.redo {
    position: relative;
}

#tools-area button.pointer .tool-icon-container {
    width: 32px;
    height: 32px;
    background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj4KICA8cGF0aCBkPSJNMjMuNTQsMTEuMDFjLS42NC0uMzYtMS4zOC0uNC0yLjA4LS4xMi0uMy0uNS0uNzQtLjg3LTEuMjgtMS4wNS0uNTQtLjE4LTEuMTMtLjE2LTEuNjguMDctLjI4LS40OC0uNy0uODQtMS4yMS0xLjAzLS40Ni0uMTctLjk1LS4xOS0xLjQzLS4wN3YtMi42N2MwLS42My0uMjYtMS4yMy0uNy0xLjY2LS40NC0uNDMtMS4wMi0uNjctMS42NC0uNjctLjAxLDAtLjAzLDAtLjA0LDAtMS4zMi4wMi0yLjMxLDEuMDYtMi4zMSwyLjR2MTAuODRzLTIuMTYtMS4wOC0yLjE2LTEuMDhjLS43Ny0uMzgtMS42NC0uNDUtMi4zNC0uMTgtLjU4LjIyLTEuMDEuNjYtMS4yNCwxLjI1LS4zMy44Ni0uMTQsMS43OS41LDIuNDNsNi40Myw2LjQyYzEuMjUsMS4yNSwyLjg4LDIuMDIsNC43MiwyLjI1LjI4LjAzLjU2LjA1LjgzLjA1LDEuNjcsMCwzLjI5LS42LDQuNTQtMS43MSwxLjQ1LTEuMjksMi4yOC0zLjE0LDIuMjgtNS4wOHYtOC4zNWMwLS44NC0uNDUtMS42Mi0xLjE5LTIuMDRaTTE2LjkxLDEwLjY0Yy4wOC4wOC4xOC4yMi4xOC40M3Y0LjQzYzAsLjQ1LjM3Ljg0LjgzLjg2LjI1LjAxLjQ3LS4wOC42NC0uMjQuMTctLjE2LjI2LS4zOC4yNi0uNjF2LTMuNDVjMC0uMzYuMzEtLjYuNi0uNi4xNywwLC4zMy4wNi40NS4xOC4xMi4xMS4xOC4yNy4xOC40M3YzLjQ1YzAsLjQ1LjM3Ljg0LjgzLjg2LjIzLjAxLjQ3LS4wOC42NC0uMjQuMTctLjE2LjI2LS4zOC4yNi0uNjF2LTIuNTNjLjAyLS4zLjMzLS41NC42LS41NS4xNCwwLC4zNC4wNy40Ni4xOS4wNy4wNy4xNi4xOS4xNi4zNnY4LjQzYzAsMi42OC0yLjA5LDQuODktNC43NSw1LjA0LTEuNzMuMDktMy40My0uNTUtNC42Ni0xLjc3bC02LjQzLTYuNDJjLS4xNi0uMTYtLjItLjM3LS4xMS0uNTcuMDYtLjE0LjE1LS4yMy4yNy0uMjcuMDctLjAzLjE1LS4wNC4yNC0uMDQuMjIsMCwuNTEuMDguNzkuMjJsMy4yOSwxLjY1Yy4yNi4xMy42MS4xMi44Ny0uMDMuMi0uMTIuNDEtLjQyLjQxLS43NVY2LjE1YzAtLjM3LjMtLjYuNi0uNjEuMTYtLjAyLjMzLjA2LjQ1LjE4LjA4LjA4LjE4LjIyLjE4LjQzdjkuMzVjMCwuNTEuNDIuODQuODIuODYuMjMuMDIuNDctLjA3LjY0LS4yNC4xNy0uMTYuMjctLjM4LjI3LS42MnYtNC40M2MwLS4zNy4zMS0uNTkuNi0uNi4xMy0uMDIuMzMuMDYuNDUuMThaIi8+Cjwvc3ZnPg==") no-repeat;
    background-size: 32px 32px;
    background-position: center;
}

#tools-area button.marquee .tool-icon-container {
    width: 32px;
    height: 32px;
    background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj4KICA8cGF0aCBkPSJNMjcuMDgsMjguMDhoLTJjLS41NSwwLTEtLjQ1LTEtMXMuNDUtMSwxLTFoMXYtMWMwLS41NS40NS0xLDEtMXMxLC40NSwxLDF2MmMwLC41NS0uNDUsMS0xLDFaIi8+CiAgPHBhdGggZD0iTTIxLjQ1LDI4LjA4aC0zLjYzYy0uNTUsMC0xLS40NS0xLTFzLjQ1LTEsMS0xaDMuNjNjLjU1LDAsMSwuNDUsMSwxcy0uNDUsMS0xLDFaTTE0LjE4LDI4LjA4aC0zLjYzYy0uNTUsMC0xLS40NS0xLTFzLjQ1LTEsMS0xaDMuNjNjLjU1LDAsMSwuNDUsMSwxcy0uNDUsMS0xLDFaIi8+CiAgPHBhdGggZD0iTTYuOTIsMjguMDhoLTJjLS41NSwwLTEtLjQ1LTEtMXYtMmMwLS41NS40NS0xLDEtMXMxLC40NSwxLDF2MWgxYy41NSwwLDEsLjQ1LDEsMXMtLjQ1LDEtMSwxWiIvPgogIDxwYXRoIGQ9Ik00LjkyLDIyLjQ1Yy0uNTUsMC0xLS40NS0xLTF2LTMuNjNjMC0uNTUuNDUtMSwxLTFzMSwuNDUsMSwxdjMuNjNjMCwuNTUtLjQ1LDEtMSwxWk00LjkyLDE1LjE4Yy0uNTUsMC0xLS40NS0xLTF2LTMuNjNjMC0uNTUuNDUtMSwxLTFzMSwuNDUsMSwxdjMuNjNjMCwuNTUtLjQ1LDEtMSwxWiIvPgogIDxwYXRoIGQ9Ik00LjkyLDcuOTJjLS41NSwwLTEtLjQ1LTEtMXYtMmMwLS41NS40NS0xLDEtMWgyYy41NSwwLDEsLjQ1LDEsMXMtLjQ1LDEtMSwxaC0xdjFjMCwuNTUtLjQ1LDEtMSwxWiIvPgogIDxwYXRoIGQ9Ik0yMS40NSw1LjkyaC0zLjYzYy0uNTUsMC0xLS40NS0xLTFzLjQ1LTEsMS0xaDMuNjNjLjU1LDAsMSwuNDUsMSwxcy0uNDUsMS0xLDFaTTE0LjE4LDUuOTJoLTMuNjNjLS41NSwwLTEtLjQ1LTEtMXMuNDUtMSwxLTFoMy42M2MuNTUsMCwxLC40NSwxLDFzLS40NSwxLTEsMVoiLz4KICA8cGF0aCBkPSJNMjcuMDgsNy45MmMtLjU1LDAtMS0uNDUtMS0xdi0xaC0xYy0uNTUsMC0xLS40NS0xLTFzLjQ1LTEsMS0xaDJjLjU1LDAsMSwuNDUsMSwxdjJjMCwuNTUtLjQ1LDEtMSwxWiIvPgogIDxwYXRoIGQ9Ik0yNy4wOCwyMi40NWMtLjU1LDAtMS0uNDUtMS0xdi0zLjYzYzAtLjU1LjQ1LTEsMS0xczEsLjQ1LDEsMXYzLjYzYzAsLjU1LS40NSwxLTEsMVpNMjcuMDgsMTUuMThjLS41NSwwLTEtLjQ1LTEtMXYtMy42M2MwLS41NS40NS0xLDEtMXMxLC40NSwxLDF2My42M2MwLC41NS0uNDUsMS0xLDFaIi8+Cjwvc3ZnPg==") no-repeat;
    background-size: 32px 32px;
    background-position: center;
}

#tools-area button.tape .tool-icon-container {
    width: 32px;
    height: 32px;
    /*background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj4KICA8cGF0aCBkPSJNMjkuMzMsMTcuOGMtLjI4LS4yOS0uNjYtLjQ1LTEuMDYtLjQ1aC00LjM0czAtNS4yNCwwLTUuMjRjMC0uNDUtLjEtLjg2LS4yMS0xLjIxLTEuMDQtMy4wNS00Ljc0LTQuMzMtNi4yOS00Ljc0LTIuODQtLjc2LTUuODgtLjc1LTguNzksMC0uMzQuMDktLjYzLjE5LS45NC4zbC0uMTguMDZjLTEuNjkuNTgtMy4xNywxLjUyLTQuMDgsMi41OC0uMzIuMzgtLjY1LjgxLS44OCwxLjM2LS4yNS42LS4zOCwxLjE0LS4zOCwxLjYydjcuNzhsLjAyLjFjLjAzLjA3LjAzLjE3LjAzLjI5LDAsLjEsMCwuMjEuMDIuMzEuMTUuOS41OSwxLjc0LDEuMzYsMi41NiwyLjExLDIuMjcsNi4wNywzLjI4LDkuMDUsMy4yOGgxNS42NWMuNzUsMCwxLjQ1LS43MSwxLjQ2LTEuNDZsLjAyLTUuOTJjLjAxLS40Ni0uMTYtLjkxLS40Ny0xLjIzWk0xMi4zNSwyMy44NmMtLjEzLjEyLS4yLjI4LS4yMS40NnYuNjZzLTEuMzItLjExLTEuMzItLjExdi0xLjgyYzAtLjQtLjI4LS43MS0uNjYtLjczLS4xOSwwLS4zNy4wNi0uNTEuMTktLjE1LjE0LS4yMy4zMy0uMjMuNTR2MS41NnMtLjg1LS4yMy0uODUtLjIzdi0uOTJjMC0uMi0uMDktLjM4LS4yMy0uNTItLjE0LS4xMy0uMzMtLjIxLS41My0uMTgtLjM3LjAzLS42My4zMy0uNjQuNzV2LjM0Yy0uMjgtLjEyLS41NS0uMjUtLjg1LS40MnYtMi4yOWMtLjAxLS4xNi0uMDgtLjMxLS4yLS40My0uMTQtLjE0LS4zNC0uMi0uNTItLjIxLS40LjAyLS42OC4zMi0uNjguNzR2MS4xOWMtLjU3LS41NC0xLjMxLTEuNDYtMS4zMS0yLjUydi00LjUyYzIuMTUsMi4yOSw2LjA2LDMuMzIsOS4xNywzLjMzaDEwLjJzMCwuNjEsMCwuNjFjMCwuNjkuNDksMS4xOSwxLjE4LDEuMjEuMTMsMCwuMjkuMTUuNDEuMzcuMjYuNDkuMzUsMS4zMi0uMDgsMi0uMTMuMi0uMjYuMjktLjUuMy0uNTcuMDQtMS4wMS41Mi0xLjAyLDEuMDd2Ljcxcy0xLjMxLDAtMS4zMSwwdi0xLjU1YzAtLjM3LS4yOC0uNjgtLjY1LS43LS4yLS4wMi0uMzguMDUtLjUzLjE4LS4xNC4xMy0uMjIuMzItLjIyLjUydjEuNTVzLTEuMzEsMC0xLjMxLDB2LS42NWMwLS4zNy0uMjgtLjY3LS42NS0uNy0uMDIsMC0uMDMsMC0uMDUsMC0uMTgsMC0uMzYuMDctLjQ5LjE5LS4xMy4xMi0uMjEuMjgtLjIxLjQ1di43cy0xLjMxLDAtMS4zMSwwdi0xLjZjLS4wMS0uNDItLjQyLS42NS0uNy0uNjUtLjMzLDAtLjY5LjI2LS43LjYzdjEuNjJzLTEuMzIsMC0xLjMyLDB2LS42NGMwLS4zOC0uMy0uNjgtLjY4LS43LS4yMSwwLS4zNy4wNy0uNTEuMTlaTTI0LjM5LDI0LjU5YzEuMjEtLjIzLDEuODctMS42LDEuOC0yLjg4LS4wNi0xLjEtLjU2LTIuMzEtMS44LTIuNTN2LS40NHMzLjc5LDAsMy43OSwwYy4xNCwwLC4yMi4wOS4yMi4yM3Y1LjgyYzAsLjA3LS4wMi4xMy0uMDYuMTdzLS4wOS4wNi0uMTYuMDZoLTMuNzlzMC0uNDMsMC0uNDNaTTIyLjUzLDE3LjM0aC0yLjdjMS0uNDgsMS45LTEuMTQsMi42OS0xLjk2djEuOTZaTTIyLjAzLDEzLjgxYy0uNDIuNjUtLjk4LDEuMTktMS43MSwxLjY2LTMuODUsMi40Ni0xMC42LDIuNDctMTQuNDQuMDQtLjc4LS40OS0xLjM2LTEuMDUtMS43OC0xLjctLjY2LTEuMDMtLjY2LTIuMjYsMC0zLjI5LDEuMTktMS44NiwzLjcxLTIuNyw0Ljc0LTIuOTgsMS4zOS0uMzcsMi44MS0uNTYsNC4yMy0uNTZzMi45LjE5LDQuMy41OGMxLjAyLjI4LDMuNTEsMS4xMyw0LjY4LDIuOTguNjQsMS4wMi42MywyLjI0LS4wMiwzLjI2WiIvPgogIDxwYXRoIGQ9Ik0xNi4xMyw4LjJjLTIuMjktLjUzLTUuOS0uNi04LjU0Ljk1LS41OS4zNS0xLjAzLjc1LTEuMzcsMS4yNC0uNTcuODUtLjU1LDEuODkuMDUsMi43MywxLjA5LDEuNTEsMy4zNywyLjA3LDQuMywyLjIzLjc2LjE0LDEuNjMuMjIsMi41NC4yMiwxLjg0LDAsMy44NS0uMzUsNS40NC0xLjMuNTctLjM0LDEtLjc0LDEuMzMtMS4yMi41Ni0uODIuNTYtMS44NCwwLTIuNjctLjk1LTEuNDEtMi45NS0yLTMuNzYtMi4xOFpNMTguNzQsMTIuMjZjLS4xOC4yNy0uNC40OS0uNy42OS0yLjk3LTEuNC03LjAxLTEuNC05Ljk0LDAtLjMtLjItLjU0LS40My0uNzEtLjctLjE2LS4yNS0uMjEtLjQ5LS4xNS0uNzQuMTEtLjQzLjU0LS45LDEuMTctMS4yNCwxLjI0LS42OCwyLjk1LTEuMDIsNC42Ni0xLjAyczMuNTEuMzYsNC43NCwxLjA3Yy41OC4zNC45OS43OSwxLjA4LDEuMi4wNi4yNSwwLC40OS0uMTUuNzNaTTE2LjI0LDEzLjc1Yy0xLjk4LjU3LTQuMzQuNTgtNi4zNywwLDIuMDUtLjU4LDQuNDItLjU5LDYuMzcsMFoiLz4KICA8cGF0aCBkPSJNMjcuMzEsMjAuNTFjLS4xOCwwLS4zOC4wOC0uNTIuMjEtLjEyLjEyLS4xOS4yNy0uMTkuNDN2MS40MmMwLC4xOC4wNy4zNS4yLjQ4LjEzLjEzLjMyLjIxLjQ5LjIxaC4wMmMuNC0uMDEuNjktLjMzLjY4LS43NnYtMS4zYzAtLjM4LS4zLS42OC0uNjgtLjY5WiIvPgo8L3N2Zz4=") no-repeat;*/
    background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj4KICA8cGF0aCBkPSJNMTAuMDEsMjUuNjhjLS42LjU5LTEuNTguNjMtMi4xNi4wNmwtNC4yNy00LjI0Yy0uNjgtLjY4LS42My0xLjY5LjA0LTIuMzZMMTkuMjQsMy41NGMuNi0uNiwxLjYzLS41OSwyLjIyLDBsNC4yLDQuMTljLjY0LjY0LjY2LDEuNjUsMCwyLjNsLTE1LjY2LDE1LjY0Wk0xNi4xMiwxNC45N2wxLjI1LDEuMjMsMS4wMi0xLjAyLTEuMTYtMS4xNWMtLjMzLS4zMy0uNC0uNzgtLjA3LTEuMTMuMjctLjI4Ljc2LS4zMiwxLjA3LS4wMWwxLjIzLDEuMjIsMS4wMy0xLjAyLTEuMjUtMS4yN2MtLjI5LS4yOS0uMjItLjc5LjA1LTEuMDRzLjczLS4zLDEuMDEtLjAybDEuMjcsMS4yNSwxLjAyLTEuMDEtMS4yMi0xLjI0Yy0uMzEtLjMxLS4yNy0uODEuMDQtMS4wOC4yOC0uMjUuNzMtLjI4LDEuMDMuMDJsMS4yNCwxLjIyLDEuMDItMS4wNC00LjMyLTQuMzItMTUuNzksMTUuNzcsNC4zMiw0LjMxLDEuMS0xLjA5LTEuMjQtMS4yNWMtLjI5LS4yOS0uMjMtLjguMDUtMS4wNXMuNzQtLjI5LDEuMDItLjAxbDEuMjYsMS4yNCwxLjAzLTEuMDItMS4yNC0xLjI2Yy0uMy0uMy0uMjMtLjc5LjAzLTEuMDQuMjgtLjI2Ljc0LS4zMSwxLjAzLS4wMmwxLjI2LDEuMjQsMS4wMi0xLjAyLTEuMjMtMS4yNWMtLjI5LS4yOS0uMjUtLjc1LDAtMS4wMy4yMi0uMjQuNzItLjM1LDEuMDEtLjA3bDEuMzEsMS4yNywxLjAyLTEuMDItMS4yNS0xLjI2Yy0uMjktLjI5LS4yMy0uNzkuMDQtMS4wNHMuNzMtLjMsMS4wMywwWiIvPgogIDxwYXRoIGQ9Ik0xNy4wMywyOC44OWgtMi45MWMtLjM5LjAxLS43Mi0uMzUtLjcyLS43M3YtMi43NmMwLS40My4zLS43Ni42OS0uNzlzLjc5LjI5LjgxLjczbC4wNC45NCwxMS4zNC0xMS4zMy0uOTUtLjAzYy0uMzktLjAxLS42Ny0uMy0uNzMtLjY1LS4wNS0uMzIuMTktLjgyLjU5LS44MmgzLjA5Yy4zMSwwLC42LjM3LjYuNjd2Mi43NmMuMDEuNDMtLjI1Ljc2LS42NC44M3MtLjgyLS4yMi0uODUtLjY2bC0uMDctLjk5LTExLjMsMTEuMjljLjQ5LjE2LDEuNTUtLjIxLDEuNjUuNzQuMDQuMzMtLjIxLjgxLS42NS44MloiLz4KPC9zdmc+") no-repeat;
    background-size: 32px 32px;
    background-position: center;
}

#tools-area button.undo .tool-icon-container {
    width: 32px;
    height: 32px;
    background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj4KICA8cGF0aCBkPSJNMTkuNDQsMjIuNzJjMi40MSwwLDQuMy0xLjk4LDQuMzEtNC4zMXMtMS44Ny00LjM2LTQuMy00LjM2aC05Ljc5czMuMTksMy4xNywzLjE5LDMuMTdjLjM4LjM3LjM3Ljk0LjA0LDEuMzJzLS45NC40OS0xLjM0LjFsLTQuOTEtNC44NGMtLjQyLS40MS0uNDItMS4wMiwwLTEuNDNsNC44NS00Ljc4Yy4zOC0uMzguOTktLjI4LDEuMzIuMDZzLjM4Ljk1LDAsMS4zMmwtMy4xNywzLjE0LDkuOTMuMDJjMy4zNSwwLDYsMi43OCw2LjEsNi4wNHMtMi4zOCw2LjE4LTUuNzUsNi40NmMtLjk4LjA4LTEuOTQsMC0yLjk0LjAzLS41NC4wMS0uOTQtLjQ1LS45Ni0uOTQtLjAyLS41My40LS45OS45Ni0uOTloMi40NVoiLz4KPC9zdmc+") no-repeat;
    background-size: 32px 32px;
    background-position: center;
}

#tools-area button.redo .tool-icon-container {
    width: 32px;
    height: 32px;
    background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj4KICA8cGF0aCBkPSJNMTIuNTYsOS4yOGMtMi40MSwwLTQuMywxLjk4LTQuMzEsNC4zMXMxLjg3LDQuMzYsNC4zLDQuMzZoOS43OXMtMy4xOS0zLjE3LTMuMTktMy4xN2MtLjM4LS4zNy0uMzctLjk0LS4wNC0xLjMycy45NC0uNDksMS4zNC0uMWw0LjkxLDQuODRjLjQyLjQxLjQyLDEuMDIsMCwxLjQzbC00Ljg1LDQuNzhjLS4zOC4zOC0uOTkuMjgtMS4zMi0uMDZzLS4zOC0uOTUsMC0xLjMybDMuMTctMy4xNC05LjkzLS4wMmMtMy4zNSwwLTYtMi43OC02LjEtNi4wNHMyLjM4LTYuMTgsNS43NS02LjQ2Yy45OC0uMDgsMS45NCwwLDIuOTQtLjAzLjU0LS4wMS45NC40NS45Ni45NC4wMi41My0uNC45OS0uOTYuOTloLTIuNDVaIi8+Cjwvc3ZnPg==") no-repeat;
    background-size: 32px 32px;
    background-position: center;
}

#tools-area button.pointer:before,
#tools-area button.marquee:before,
#tools-area button.tape:before,
#tools-area button.undo:before,
#tools-area button.redo:before {
    display: none;
}

/* Stile per i pulsanti aggiuntivi con icone SVG */
#tools-area button.lock-proportions,
#tools-area button.lock-plane,
#tools-area button.select-multiple,
#tools-area button.ruler,
#tools-area button.background-image {
    position: relative;
}

#tools-area button.lock-proportions .tool-icon-container {
    width: 32px;
    height: 32px;
    background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj4KICA8cGF0aCBkPSJNMjQuNTIsMTUuMTFjMC0xLjM3LTEuMDktMi40OC0yLjUxLTIuNTd2LTIuNTljMC0zLjI4LTIuNjUtNS44NS02LjAxLTUuODUtMy4zNywwLTYsMi41Ny02LjAxLDUuODV2Mi41OWMtMS40MS4wOS0yLjUsMS4yLTIuNTEsMi41N2wtLjAyLDcuNzdjMCwxLjM2LjU0LDIuNjgsMS40OCwzLjYyLjkuOSwyLjA4LDEuMzksMy4zNCwxLjM5aDcuNTRjMi41NS0uMDIsNC43LTIuMjQsNC42OS00Ljg3di03LjkxWk0xMS45MywxMi41NHYtMi43NGMuMDEtMi4xNSwxLjc2LTMuNzcsNC4wNi0zLjc3aDBjMi4zMSwwLDQuMDYsMS42Miw0LjA3LDMuNzd2Mi43M3MtOC4xNCwwLTguMTQsMFpNMjIuNiwxNS4xOHY3Ljg0YzAsMS41OS0xLjMsMi45My0yLjg0LDIuOTNoLTcuMzlzMCwuMDEsMCwuMDFjLS43OCwwLTEuNTItLjMxLTIuMDctLjg2LS41Ni0uNTYtLjg3LTEuMy0uODctMi4wOXYtNy44NGMwLS4yLjA3LS4zOC4yLS41MXMuMzItLjIxLjUyLS4yMWgxMS43NWMuNCwwLC43Mi4zMS43Mi43MVoiLz4KICA8cGF0aCBkPSJNMTYuMDEsMTYuNzNoMGMtLjUzLDAtMS4wMy4yMy0xLjM2LjYyLS4zNS40MS0uNS45NS0uNDEsMS40OC4wOC41LjM3Ljk0LjgxLDEuMjJ2Mi43YzAsLjI2LjExLjUxLjMuNjkuMTguMTcuNDIuMjcuNjcuMjcuMDEsMCwuMDIsMCwuMDMsMCwuNTItLjAyLjkzLS40Ni45My0uOTl2LTIuNjVjLjQ0LS4yOS43NC0uNzQuODItMS4yNS4wOC0uNTItLjA3LTEuMDUtLjQyLTEuNDYtLjM0LS4zOS0uODMtLjYyLTEuMzctLjYyWiIvPgo8L3N2Zz4=") no-repeat;
    background-size: 32px 32px;
    background-position: center;
}

#tools-area button.lock-plane .tool-icon-container {
    width: 32px;
    height: 32px;
    background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj4KICA8cGF0aCBkPSJNMTIuMjYsMjEuMDJsLTUuNDgsNS40N2MtLjMxLjMxLS45My4xNC0xLjEzLS4xLS4yOC0uMzEtLjM1LS44LS4wMi0xLjEzbDUuNDQtNS40NC00Ljg3LTQuODdjLS40MS0uNDEtLjMzLTEsLjEzLTEuMzQsMS42Mi0xLjQ3LDQuNDMtMS4zNCw2LjUzLS44OWwyLjU4LTIuNTctLjYxLS42M2MtLjMyLS4zNC0uMzMtLjg0LDAtMS4xN2wyLjc4LTIuNzhjLjMyLS4zMi44NC0uMywxLjE2LjAybDcuNjYsNy42N2MuMjYuMjYuMjUsMS4wMy4wMiwxLjI3bC0yLjc4LDIuNzljLS4yOC4yOC0uNjkuMjMtLjk4LjA1bC0uNzQtLjcxLTIuNTYsMi41NmMuMzksMi4wOS42MSw0LjgzLS45MSw2LjU2LS4xNy4xOS0uMzguMzctLjU4LjM5LS4yMy4wMi0uNTQtLjA0LS43Mi0uMjJsLTQuOTEtNC45MVpNMTcuMzgsMjMuOTJjLjY2LTEuMzguMzQtMy40NywwLTQuODMtLjA2LS4yNi4wMi0uNTYuMjEtLjc1bDMuNTktMy42OGMuMzEtLjMyLjgzLS4yOSwxLjEzLDBsLjY1LjYyLDEuNTItMS41NC02LjMyLTYuMzItMS42MywxLjU0LjY0LjY1Yy4zLjI5LjM1Ljc2LjAyLDEuMDhsLTMuNjMsMy42M2MtLjI0LjI0LS41OC4yNy0uODcuMTktMS4zMS0uMzMtMy40NS0uNjEtNC43Mi4wMmw5LjM5LDkuMzlaIi8+Cjwvc3ZnPg==") no-repeat;
    background-size: 32px 32px;
    background-position: center;
}

#tools-area button.select-multiple .tool-icon-container {
    width: 32px;
    height: 32px;
    background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj4KICA8cGF0aCBkPSJNMTQuNzksMTcuMThsLTQuNTItMS44MWMtLjI5LS4xMi0uNTQtLjExLS44NCwwbC00LjUxLDEuODFjLS4xMy4wNS0uNTMuMjEtLjUzLjcxdjUuNjdjMCwuMjguMTkuNTcuNDQuNjdsNS4wMywyLjAxLDUtMmMuMzEtLjEzLjQ2LS40NC40Ni0uNjh2LTUuNjFjMC0uMzgtLjE3LS42My0uNTMtLjc3Wk05LjEyLDIwLjI3djQuMXMtMy4yNy0xLjMtMy4yNy0xLjN2LTQuMDlzMy4yNywxLjMsMy4yNywxLjNaTTEyLjU5LDE3Ljg5bC0yLjc0LDEuMS0yLjczLTEuMTEsMi43My0xLjEsMi43MywxLjFaTTEwLjU4LDIwLjI4bDMuMjYtMS4zdjQuMDlzLTMuMjYsMS4zLTMuMjYsMS4zdi00LjA5WiIvPgogIDxwYXRoIGQ9Ik0yNy4wOCwxNy4xOGwtNC41MS0xLjgxYy0uMy0uMTItLjU1LS4xMi0uODQsMGwtNC41MSwxLjhjLS4zNi4xNC0uNTMuMzktLjUzLjc3djUuNjFjMCwuMy4xOS41Ny40OC42OWw0Ljk4LDEuOTksNS0yYy4zLS4xMi40Ni0uNDMuNDYtLjY4di01LjY3YzAtLjUtLjQtLjY2LS41My0uNzFaTTIxLjQyLDIwLjI4djQuMXMtMy4yNy0xLjMxLTMuMjctMS4zMXYtNC4wOXMzLjI3LDEuMywzLjI3LDEuM1pNMjQuODgsMTcuODlsLTIuNzQsMS4xLTIuNzMtMS4xMSwyLjczLTEuMSwyLjczLDEuMVpNMjIuODgsMjAuMjhsMy4yNi0xLjN2NC4xcy0zLjI2LDEuMy0zLjI2LDEuM3YtNC4wOVoiLz4KICA8cGF0aCBkPSJNMjEuNDYsMTQuMTJoMHMwLTUuNzgsMC01Ljc4Yy0uMDUtLjI4LS4yMi0uNDktLjQ4LS41OWwtNC45OC0xLjk5LTQuOTgsMS45OWMtLjMuMTItLjQ4LjM4LS40OS42OXY1LjY5Yy4wMi4zMi4yMS41Ni41My43bDQuOTQsMS45Nyw1LTJjLjI2LS4xLjQzLS4zNi40Ni0uNjdaTTE1LjI3LDEwLjgydjQuMXMtMy4yNy0xLjMxLTMuMjctMS4zMXYtNC4xczMuMjcsMS4zMSwzLjI3LDEuMzFaTTIwLDEzLjYxbC0zLjI2LDEuMzF2LTQuMDlzMy4yNi0xLjMxLDMuMjYtMS4zMXY0LjA5Wk0xOC43Myw4LjQzbC0yLjczLDEuMTEtMi43My0xLjExLDIuNzMtMS4xLDIuNzMsMS4xWiIvPgo8L3N2Zz4=") no-repeat;
    background-size: 32px 32px;
    background-position: center;
}

#tools-area button.ruler .tool-icon-container {
    width: 32px;
    height: 32px;
    background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj4KICA8cGF0aCBkPSJNMjYuMTcsNC45MWMtLjMxLS4xMy0uNjMtLjA3LS44Ny4xOEw0LjU4LDI1LjhjLS4yNy4yNy0uMzQuNTktLjIuOTEuMTMuMjkuNC40Ni43NS40NmgyMC43NmMuNDYsMCwuNzQtLjQuNzQtLjc3VjUuNjZjMC0uMzUtLjE3LS42My0uNDYtLjc1Wk0yNS4wOCwyNS42M0g2Ljk0czIuOTgtMy4wMSwyLjk4LTMuMDFsLjgyLjhjLjE0LjE1LjMzLjIzLjUzLjI0LjIsMCwuNC0uMDcuNTUtLjIxLjE1LS4xNC4yMy0uMzQuMjMtLjU0LDAtLjIxLS4wOC0uNDEtLjIzLS41NmwtLjgxLS44MSwxLjY4LTEuNjguODQuODNjLjI5LjI4Ljc1LjI4LDEuMDUsMCwuMTUtLjE0LjI0LS4zNS4yNC0uNTYsMC0uMi0uMDctLjM4LS4yMS0uNTJsLS44My0uODQsMS42OC0xLjY4Ljg1LjgzYy4xNC4xNC4zMi4yMS41MS4yMSwwLDAsLjAxLDAsLjAyLDAsLjIxLDAsLjQtLjA5LjU0LS4yNC4yOS0uMzEuMjgtLjc3LS4wMi0xLjA3bC0uODEtLjgxLDEuNjgtMS42OC44Ny44NmMuMTIuMTIuMjkuMTguNDcuMThoLjAxYy4yMSwwLC40Mi0uMDkuNTYtLjI0LjMtLjMxLjI5LS43Ny0uMDItMS4wOGwtLjgtLjgxLDEuNjgtMS42OC44MS44MWMuMy4zLjc3LjMxLDEuMDYuMDMuMTYtLjE0LjI1LS4zNS4yNS0uNTYsMC0uMjEtLjA4LS40MS0uMjMtLjU2bC0uOC0uODEsMy0yLjk5djE4LjE1WiIvPgogIDxwYXRoIGQ9Ik0yMS45MSwxNS42Yy0uMjktLjA5LS41OC0uMDItLjc5LjE5bC01Ljg2LDUuODZjLS4yMS4yMS0uMjguNS0uMTkuOC4wNy4yMi4zMS41Mi42My41Mmg2Yy4zOCwwLC43Mi0uMzMuNzItLjd2LTYuMDNjMC0uMzItLjMtLjU2LS41Mi0uNjNaTTE3LjY1LDIxLjQzbDMuMjUtMy4yNXYzLjI2cy0zLjI1LS4wMS0zLjI1LS4wMVoiLz4KPC9zdmc+") no-repeat;
    background-size: 32px 32px;
    background-position: center;
}

#tools-area button.background-image .tool-icon-container {
    width: 32px;
    height: 32px;
    background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj4KICA8cGF0aCBkPSJNMjcuNjEsMTMuMTVjLS4xOS0uMTgtLjQ0LS4yNy0uNjktLjI3LS41LjAyLS45LjQ0LS45MS45NGwtLjAyLDIuMThjLTEuMzItMS4xNy0zLjE1LTEuMjktNC4zOC0uMjVsLTQuNzcsNC4wNGMtLjUzLjQ1LTEuMzYuMzktMS45LS4xMy0xLjE2LTEuMTMtMi45NC0xLjMzLTQuMjMtLjQ3bC00LjQ1LDIuOTdjLS4xOS0uODYtLjI4LTEuNzUtLjI4LTIuNzl2LTcuMzFjLjEtMi4xNy41Ni00Ljc3LDMuMjYtNS42Ljk1LS4yOSwxLjg3LS40MywyLjc5LS40NGw1LjEzLS4wMmMuMjMsMCwuNDQtLjEuNjEtLjI3LjE4LS4xOS4yOS0uNDYuMjgtLjctLjAyLS41LS40NC0uOTEtLjk0LS45MWgwbC01LjI3LjAzYy0xLjE3LDAtMi4zMS4yMi0zLjQ5LjY1LTEuNjkuNjItMi45NiwxLjg5LTMuNTcsMy41Ny0uNDQsMS4yMi0uNjUsMi40LS42NSwzLjYzdjguMDdjMCwxLjIzLjIxLDIuNDEuNjUsMy42Mi42MiwxLjY5LDEuODksMi45NiwzLjU4LDMuNTgsMS4yLjQzLDIuMjkuNjUsMy4zNi42NWg4LjZjMS4wOSwwLDIuMi0uMjIsMy40LS42NiwxLjY2LS42MiwyLjkyLTEuODgsMy41My0zLjU2LjQ0LTEuMTkuNjUtMi4zOC42NS0zLjYybC4wMi02LjI0YzAtLjI1LS4xLS40OS0uMjktLjY3Wk0yMi4yOCwyNS43MWMtLjg4LjIxLTEuNjguMzEtMi40Ni4zMWgtNy4zNnMwLDAsMCwwYy0yLjcyLDAtNC41NS0uNy01LjQ2LTIuMDdsNC43NS0zLjE5Yy42NS0uNDQsMS40NC0uMTcsMS44OS4yNiwxLjI1LDEuMiwzLjE3LDEuMjgsNC40Ny4xN2w0LjY1LTMuOTZjLjQ1LS4zOCwxLjI2LS40LDEuNy0uMDJsMS41NCwxLjNjLjA3LDMuMDQtLjE3LDYuMzUtMy43MSw3LjE5WiIvPgogIDxwYXRoIGQ9Ik0xMi4yNyw4LjUzYy0uODUuMTItMS41OS41NS0yLjA5LDEuMjMtLjUxLjY4LS43MSwxLjUzLS41OCwyLjM3LjI1LDEuNTQsMS41OCwyLjY0LDMuMDksMi42NC4xNSwwLC4zLS4wMS40NS0uMDMsMS43Mi0uMjUsMi45MS0xLjg0LDIuNjctMy41NS0uMjUtMS43My0xLjgxLTIuOS0zLjU0LTIuNjZaTTEyLjk1LDEyLjg1Yy0uNjQuMTQtMS4yOS0uMjctMS40NS0uOTItLjA4LS4zMy0uMDMtLjY4LjE1LS45Ny4xOC0uMjguNDYtLjQ3LjgtLjU0LjY5LS4xNCwxLjMzLjI4LDEuNDcuOTYuMTQuNjgtLjI5LDEuMzItLjk3LDEuNDdaIi8+CiAgPHBhdGggZD0iTTIwLjk3LDcuOThsLjY1LS42MnY0LjI3YzAsLjI2LjExLjUuMy42OC4xOC4xNy40MS4yNy42NS4yNy4wMSwwLC4wMiwwLC4wNCwwLC41Mi0uMDIuOTEtLjQ0LjkxLS45N3YtNC4yNXMuNjIuNTkuNjIuNTljLjE3LjE2LjM5LjI1LjYyLjI1LDAsMCwuMDEsMCwuMDIsMCwuMjUsMCwuNS0uMTIuNjgtLjMuMzUtLjM3LjM1LS45NS0uMDItMS4zMmwtMi4xMS0yLjEzYy0uMjItLjIyLS40OC0uMzQtLjc0LS4zNGgwYy0uMjgsMC0uNTUuMTMtLjc5LjM3bC0yLjA4LDIuMWMtLjM2LjM3LS4zNy45NC0uMDIsMS4zMi4zNS4zNy44OS40MSwxLjI4LjA4WiIvPgo8L3N2Zz4=") no-repeat;
    background-size: 32px 32px;
    background-position: center;
}

#tools-area button.lock-proportions:before,
#tools-area button.lock-plane:before,
#tools-area button.select-multiple:before,
#tools-area button.ruler:before,
#tools-area button.background-image:before {
    display: none;
}

/* Centratura icone themify nei bottoni */
#tools-area button:before {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    line-height: 48px;
}

/* Effetti hover e active per i bottoni - bordo nero */
#tools-area button:hover,
#rotation-geometry-panel .tools button:hover,
#extrusion-geometry-panel .tools button:hover,
#lathe-geometry-panel .tools button:hover,
#spline-geometry-panel .tools button:hover,
#freehand-geometry-panel .tools button:hover {
    opacity: 0.9;
    border-color: #000 !important;
}

#tools-area button:active,
#tools-area button.activeOn,
#rotation-geometry-panel .tools button:active,
#rotation-geometry-panel .tools button.activeOn,
#extrusion-geometry-panel .tools button:active,
#extrusion-geometry-panel .tools button.activeOn,
#lathe-geometry-panel .tools button:active,
#lathe-geometry-panel .tools button.activeOn,
#spline-geometry-panel .tools button:active,
#spline-geometry-panel .tools button.activeOn,
#freehand-geometry-panel .tools button:active,
#freehand-geometry-panel .tools button.activeOn {
    opacity: 0.8;
    border-color: #000 !important;
}

/* Disattiva visivamente il pulsante pen quando select o rubber sono attivi nello spline */
/* Usa :has() per controllare se c'è un pulsante select o rubber attivo nel gruppo */
#spline-geometry-panel .tools .btn-group-vertical:has(button.select.activeOn) button.pen.activeOn,
#spline-geometry-panel .tools .btn-group-vertical:has(button.rubber.activeOn) button.pen.activeOn {
    opacity: 0.4 !important;
    border-color: #ccc !important;
    background-color: transparent !important;
}

/* Gestione dinamica border-radius per btn-group-vertical - bordi rotondi solo esterni */
.btn-group-vertical > .btn:first-child:not(:last-child) {
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    border-top-left-radius: 50% !important;
    border-top-right-radius: 50% !important;
}

.btn-group-vertical > .btn:last-child:not(:first-child) {
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
    border-bottom-left-radius: 50% !important;
    border-bottom-right-radius: 50% !important;
}

.btn-group-vertical > .btn:not(:first-child):not(:last-child) {
    border-radius: 0 !important;
}

/* Pulsante singolo mantiene tutti i bordi rotondi */
.btn-group-vertical > .btn:first-child:last-child {
    border-radius: 50% !important;
}

/* Gestione dinamica border-radius per btn-group (orizzontale) */
.btn-group > .btn:first-child:not(:last-child) {
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}

.btn-group > .btn:last-child:not(:first-child) {
    border-top-left-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
}

.btn-group > .btn:not(:first-child):not(:last-child) {
    border-radius: 0 !important;
}

#contextual-tools-area button.rotate{
    font-size:24px;
    line-height:24px;
}

/* Footer rimosso - stili disabilitati */
.cad-footer{
    display: none !important; /* Footer rimosso dall'HTML */
}

.cad-footer .link-indire{
    width:100px;
    height:60px;
    background:url(../img/logo-indire2.png);
    background-size:100px 36px;
    background-repeat:no-repeat;
    background-position:left center;
    display:inline-block;
}

.cad-footer .footer-infos{
    line-height: 13px;
    height: 40px;
    color: #efefef;
    font-size: 12px;
    padding: 10px 0px;
    text-align:right;
}

.cad-footer .footer-infos a{
    color:#efefef;
    cursor:pointer;
    text-decoration:underline;
}

.cad-footer .footer-infos div{
    height:13px;
}

.cad-stuff{
    position:fixed;
    width:100vw;
    top:48px; /* Navbar in alto */
    bottom: 0; /* Arriva fino in fondo senza spazio bianco */
    left: 0;
    right: 0;
    overflow:hidden; /* Previene scrollbar */
    /* Rimossa height esplicita: usa top e bottom per occupare tutto lo spazio */
}

/*sidebar*/
#sidebar{
    right:0;
    width:260px;
    overflow-y: scroll; /* has to be scroll, not auto */
    -webkit-overflow-scrolling: touch;
    top:0px;
    bottom:0px;
    overflow-x:hidden;
    display:block;
    position:absolute;
    background:#f0fdff;
    border-left: 2px solid #5F8D8B;
    box-sizing: border-box;
    transition: transform 0.3s ease-in-out;
}

#sidebar.sidebar-hidden{
    transform: translateX(100%);
}

/* Pulsante toggle sidebar */
#sidebar-toggle{
    position: fixed;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 99; /* Sotto mesh-properties-box (z-index:100) */
    width: 20px;
    height: 60px;
    padding: 0;
    border-radius: 5px 0 0 5px;
    background-color: #f0fdff;
    border: 2px solid#5F8D8B;
    border-right: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: right 0.3s ease-in-out;
}

#sidebar-toggle.sidebar-open{
    right: 257px; /* Posizionato alla sinistra della sidebar quando è aperta */
}

#sidebar-toggle:not(.sidebar-open){
    right: -2px; /* Visibile sul bordo destro quando la sidebar è chiusa */
}

#sidebar-toggle i{
    font-size: 13px;
    color: #333;
}

#sidebar-toggle:hover{
    background: #6fd3e3;
}

#sidebar .panel-default{
    border-left:0;
}

#sidebar .meshes-buttons{
    display: flex;
    flex-wrap:wrap;
/*  justify-content:space-around; */
    padding: 15px 0 15px 0 !important;
}

#sidebar .meshes-buttons .but{
    width: calc(33% - 1px);
    min-height: 140px;
    display: block;
    /* margin: 0 17px; */
    /* padding: 12px; */
    /* box-sizing: content-box; */
    text-decoration: none;
    font-weight: 300;
    color: #333;
/*     float: left; */
    border:1px solid rgba(0,0,0,0);
    cursor: -webkit-grab; /* Chrome 1-21, Safari 4+ */
    cursor: -moz-grab; /* Firefox 1.5-26 */
    cursor: grab; /* W3C standards syntax, should come least */

}

.interface_2 #sidebar .meshes-buttons .but{
    width: calc(33.3333% - 1px);
    min-height:75px;
}

.interface_2 #sidebar .meshes-buttons .but.advanced{
    width: calc(50% - 1px);
    min-height:75px;
}

#sidebar .meshes-buttons .but.plain{
    cursor: default;
}

#sidebar .divider,
#remodal-code .divider,
#replica-panel .divider{
    clear:both;
    width:100%;
    height:1px;
    background:#ccc;
    margin-top:10px;
    margin-bottom:12px;
}

.filter-shapes{
    margin: 0 0 0 -5px;
    width: calc(100% + 20px);
}

#sidebar .meshes-buttons .but:active,
#sidebar .meshes-buttons .but:hover{
    background: #6fd3e3;
    text-decoration: none;
    border-radius: 5px;
}

.ipad #sidebar .meshes-buttons .but:hover,
.ipod #sidebar .meshes-buttons .but:hover,
.iphone #sidebar .meshes-buttons .but:hover,
.android #sidebar .meshes-buttons .but:hover,
.blackberry #sidebar .meshes-buttons .but:hover,
.operamini #sidebar .meshes-buttons .but:hover,
.iemobile #sidebar .meshes-buttons .but:hover{
    /*-webkit-box-shadow: 0 0 px 1px rgba(0,0,0,0.4);
    box-shadow: 0 0 px 1px rgba(0,0,0,0.4);*/
    border:1px solid rgba(0,0,0,0);
    background:transparent;
    text-decoration:none;
}

#sidebar .mesh-button-image{
    width: 90%;
    height: 100px;
    display: block;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    margin: 0 auto;
}

.interface_2 #sidebar .mesh-button-image{
    width:100%;
    height:50px;
    margin-bottom: 5px;
}

.interface_2 #sidebar .mesh-button-label{
    font-size:14px;
}

#sidebar .mesh-button-label{
    display:block;
    width:100%;
    height:40px;
    margin: 0 auto;
    text-align:center;
}

#sidebar .mesh-button-label span{
    display:block;
    white-space: normal;
    line-height: 14px;
    font-family: Montserrat;
    font-weight: 400;
    font-size: 14px;
}

#sidebar .title-sidebar{
    text-align: center;
    font-family: Montserrat;
    font-weight: 600;
    font-size: 15px;
    width: 100%;
}

#sidebar .mesh-button-image.cylinder{
    background-image:url(../img/cilindro.png);
}

#sidebar .mesh-button-image.cone{
    background-image:url(../img/cono.png);
}

#sidebar .mesh-button-image.cube{
    background-image:url(../img/cubo.png);
}

#sidebar .mesh-button-image.roof{
    background-image:url(../img/tetto.png);
}

#sidebar .mesh-button-image.roundedroof{
    background-image:url(../img/tettoarrotondato.png);
}

#sidebar .mesh-button-image.halfsphere{
    background-image:url(../img/semisfera.png);
}

#sidebar .mesh-button-image.pyramid{
    background-image:url(../img/piramide.png);
}

#sidebar .mesh-button-image.sphere{
    background-image:url(../img/sfera.png);
}

#sidebar .mesh-button-image.text{
    background-image:url(../img/testo.png);
}

.lang_en #sidebar .mesh-button-image.text{
    background-image:url(../img/testo_en.png);
}

#sidebar .mesh-button-image.bengali{
    background-image:url(../img/bengali.png);
}

#sidebar .mesh-button-image.arabic{
    background-image:url(../img/arabic.png);
}

#sidebar .mesh-button-image.simpchinese{
    background-image:url(../img/simpchinese.png);
}

#sidebar .mesh-button-image.torus{
    background-image:url(../img/toro.png);
}

#sidebar .mesh-button-image.tubesegment{
    background-image:url(../img/tubo.png);
}

#sidebar .mesh-button-image.dodecahedron{
    background-image:url(../img/dodecaedro.png);
}

#sidebar .mesh-button-image.icosahedron{
    background-image:url(../img/icosaedro.png);
}

#sidebar .mesh-button-image.tetrahedron{
    background-image:url(../img/tetraedro.png);
}

#sidebar .mesh-button-image.octahedron{
    background-image:url(../img/ottaedro.png);
}

#sidebar .mesh-button-image.heart{
    background-image:url(../img/cuore.png);
}

#sidebar .mesh-button-image.ruler{
    background-image:url(../img/righello.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

#sidebar .mesh-button-image.setsquare{
    background-image:url(../img/squadra.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

#sidebar .mesh-button-image.star{
    background-image:url(../img/stella.png);
}

#sidebar .mesh-button-image.scholafabra-logo{
    background-image:url(../img/scholafabra.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

#sidebar .mesh-button-image.lathe{
    background-image:url(../img/tornio.png);
}

#sidebar .mesh-button-image.spline{
    background-image:url(../img/pennino.png);
}

#sidebar .mesh-button-image.extrude{
    background-image:url(../img/estrusione.png);
}

#sidebar .mesh-button-image.freehand{
    background-image:url(../img/freehand.png);
}

#sidebar .mesh-button-image.parametric{
    background-image:url(../img/parametrica.png);
}

#sidebar .mesh-button-image.blockly{
    background-image:url(../img/blockly.png);
}

#sidebar .mesh-button-image.isometrie{
    background-image:url(../img/isometrie.png);
}

#sidebar #objects{
    padding:10px;
}

#sidebar .full{
    display:none;
}

#sidebar .panel-heading{
    border-bottom:1px solid rgba(130,96,98,0.4);
    background:rgb(130,96,98);
    -webkit-border-radius:0;
    border-radius:0;
}

#sidebar .panel-heading a{
    color:#fff;
    font-weight:100;
    font-size:16px;
}

.navbar .dropdown-menu li > a, .navbar.navbar-default .dropdown-menu li > a, .navbar.navbar-default .dropdown-menu li > a.menu-btn {
    font-size: 14px;
    padding: 5px 16px;
    text-transform:none;
    margin:0;
}

.main-actions{
    text-align:center;
    line-height: 48px;
    height: 48px;
}

.main-actions > li{
    display:inline-block;
    line-height: 48px;
    padding:0px;
    text-align:center;
    position:relative;
    width: 48px;
    height: 48px;
    margin-left: -4px;
    vertical-align: top;
}

.navbar .header-brand-mark {
    float: left;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    margin-right: 12px;
    vertical-align: top;
    background: transparent;
}

.header-brand-mark img {
    display: block;
    width: 48px;
    height: 48px;
    object-fit: contain;
}

.main-actions > li a.menu-shortlinks{
    line-height: 48px;
    color:#dddddd;
    font-size:18px;
    outline:0 !important;
    -webkit-box-shadow:none !important;
    box-shadow:none !important;
    height: 48px;
    width: 48px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.main-actions a.menu-shortlinks:focus,
.main-actions a.menu-shortlinks:hover,
.main-actions a.menu-shortlinks:active{
    text-decoration:none;
}

.menu-shortlinks.dropdown{
    float:right;
    margin-top:0;
    margin-bottom:0;
    line-height:60px;
    list-style-type:none;
    padding-right:10px;
    height: 60px;
}

.menu-profile-img{
    background-position:center;
    background-size:cover;
    background-repeat:no-repeat;
    width:32px;
    height:32px;
    display: block;
    -webkit-border-radius:16px;
    border-radius:16px;
    margin-top:14px;
}

.main-actions a.menu-shortlinks:hover,
.main-actions a.menu-shortlinks:active{
    text-decoration:none;
}

/* ============================================
   STILI COMUNI PER ICONE SVG NELLA HEADBAR
   ============================================ */

/* Stili comuni per tutti gli SVG nella headbar */
.main-actions a.menu-shortlinks[class*="-icon"] svg {
    width: 32px;
    height: 32px;
    display: block;
}

/* Gli stili flex sono già applicati a .main-actions > li a.menu-shortlinks sopra */

/* Colori normali comuni per tutte le icone */
.main-actions {
    --save-success-color: #4caf50;
}

.main-actions a.menu-shortlinks[class*="-icon"] svg .st0 {
    fill: #f2f2f2;
    transition: fill 0.2s ease;
}

.main-actions a.menu-shortlinks[class*="-icon"] svg .st1 {
    fill: #f8448f;
    transition: fill 0.2s ease;
}

.main-actions a.menu-shortlinks[class*="-icon"] svg .st2 {
    fill: #f8448f;
    transition: fill 0.2s ease;
}

/* Colori hover comuni per tutte le icone */
.main-actions a.menu-shortlinks[class*="-icon"]:hover svg .st0 {
    fill: #000000;
}

.main-actions a.menu-shortlinks[class*="-icon"]:hover svg .st1 {
    fill: #6fd4e4;
}

.main-actions a.menu-shortlinks[class*="-icon"]:hover svg .st2 {
    fill: #703c3c;
}

/* Nascondi le icone font se presenti */
.main-actions a.menu-shortlinks[class*="-icon"] i {
    display: none;
}

/* ============================================
   STILI SPECIFICI PER SINGOLE ICONE (se necessari)
   ============================================ */

/* Tutti gli stili comuni sono già definiti sopra - nessuno stile specifico necessario */

/* Stili specifici per icona "Salva nel browser" - colore verde quando si salva */
.main-actions a.menu-shortlinks.save-local-icon svg.saved .st0 {
    fill: var(--save-success-color);
    transition: fill 0.3s ease;
}

/* Bordi laterali tra i pulsanti nella headbar */
.main-actions li.center-menu {
    border-right: 1px solid #6d4d50;
}

/* Categoria sociotecnica della headbar */
.header-sociotechnical-group {
    align-items: stretch;
    background: #8cdde9;
    display: inline-flex;
    height: 48px;
    line-height: 48px;
    margin-left: -4px;
    vertical-align: top;
}

.header-sociotechnical-group > li {
    display: inline-block;
    height: 48px;
    line-height: 48px;
    margin: 0;
    padding: 0;
    position: relative;
    text-align: center;
    vertical-align: top;
    width: 48px;
}

.header-sociotechnical-group > li:not(.sociotechnical-separator) {
    border-right: 0;
}

.header-sociotechnical-group > li.sociotechnical-separator {
    border-left: 0;
    border-right: 1px solid #6d4d50;
    width: 1px;
}

.header-sociotechnical-group .menu-shortlinks {
    align-items: center;
    display: flex;
    height: 48px;
    justify-content: center;
    line-height: 48px;
    padding: 0;
    position: relative;
    width: 48px;
}

.header-sociotechnical-group .journal-icon-svg,
.header-sociotechnical-group .sociotechnical-command-icon {
    align-items: center;
    display: flex;
    height: 32px;
    justify-content: center;
    position: relative;
    width: 32px;
}

.header-sociotechnical-group .journal-menu-item .journal-icon .journal-icon-svg {
    display: flex;
}

.header-sociotechnical-group svg {
    display: block;
    height: 24px;
    max-height: 24px;
    max-width: 28px;
    width: auto;
}

.header-sociotechnical-group .journal-icon-normal-group {
    color: #fff;
}

.main-actions .header-sociotechnical-group .journal-icon .journal-icon-hover-group {
    display: none;
}

.header-sociotechnical-group .sociotechnical-icon-hover {
    display: none;
}

.header-sociotechnical-group .journal-icon:hover .journal-icon-normal-group,
.header-sociotechnical-group .journal-icon:focus .journal-icon-normal-group,
.header-sociotechnical-group .journal-icon:active .journal-icon-normal-group,
.header-sociotechnical-group .collaboration-header-command:hover .sociotechnical-icon-normal,
.header-sociotechnical-group .collaboration-header-command:focus-visible .sociotechnical-icon-normal,
.header-sociotechnical-group .collaboration-header-command:active .sociotechnical-icon-normal,
.header-sociotechnical-group .sociotechnical-classroom-command:hover .sociotechnical-icon-normal,
.header-sociotechnical-group .sociotechnical-classroom-command:focus-visible .sociotechnical-icon-normal,
.header-sociotechnical-group .sociotechnical-classroom-command:active .sociotechnical-icon-normal {
    display: none;
}

.header-sociotechnical-group .journal-icon:hover .journal-icon-hover-group,
.header-sociotechnical-group .journal-icon:focus .journal-icon-hover-group,
.header-sociotechnical-group .journal-icon:active .journal-icon-hover-group {
    align-items: center;
    display: flex;
}

.header-sociotechnical-group .collaboration-header-command:hover .sociotechnical-icon-hover,
.header-sociotechnical-group .collaboration-header-command:focus-visible .sociotechnical-icon-hover,
.header-sociotechnical-group .collaboration-header-command:active .sociotechnical-icon-hover,
.header-sociotechnical-group .sociotechnical-classroom-command:hover .sociotechnical-icon-hover,
.header-sociotechnical-group .sociotechnical-classroom-command:focus-visible .sociotechnical-icon-hover,
.header-sociotechnical-group .sociotechnical-classroom-command:active .sociotechnical-icon-hover {
    display: block;
}

.header-sociotechnical-group .collaboration-header-command.collaboration-pointer-restored-focus .sociotechnical-icon-normal {
    display: block;
}

.header-sociotechnical-group .collaboration-header-command.collaboration-pointer-restored-focus .sociotechnical-icon-hover {
    display: none;
}

.header-sociotechnical-group .sociotechnical-classroom-command {
    background: transparent;
    border: 0;
    box-shadow: none;
    margin: 0;
}

.header-sociotechnical-group .journal-icon.journal-reminder-active .journal-icon-normal-group {
    animation: journal-reminder-pulse 2s steps(1,end) infinite;
    filter: invert(57%) sepia(56%) saturate(594%) hue-rotate(73deg) brightness(91%) contrast(88%);
}

.header-sociotechnical-group .journal-icon.journal-reminder-active:hover .journal-icon-normal-group,
.header-sociotechnical-group .journal-icon.journal-reminder-active:focus .journal-icon-normal-group,
.header-sociotechnical-group .journal-icon.journal-reminder-active:active .journal-icon-normal-group {
    animation: none;
}

@media (max-width: 800px) {
    .header-sociotechnical-group > li,
    .header-sociotechnical-group .menu-shortlinks {
        width: 43px;
    }

    .header-sociotechnical-group > li.sociotechnical-separator {
        width: 1px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .header-sociotechnical-group .journal-icon.journal-reminder-active .journal-icon-normal-group {
        animation: none;
        color: var(--save-success-color);
        filter: invert(57%) sepia(56%) saturate(594%) hue-rotate(73deg) brightness(91%) contrast(88%);
    }
}

.main-actions li.center-menu:first-child {
    border-left: 1px solid #6d4d50;
}

/* Tutti gli stili comuni sono già definiti sopra - nessuno stile specifico necessario per fullscreen e share */

/* Stile per pulsanti disabled nella headbar */
.main-actions a.menu-shortlinks[class*="-icon"].disabled {
    opacity: 0.4;
    cursor: not-allowed;
    pointer-events: none;
}

.main-actions a.menu-shortlinks[class*="-icon"].disabled svg .st0,
.main-actions a.menu-shortlinks[class*="-icon"].disabled svg .st1,
.main-actions a.menu-shortlinks[class*="-icon"].disabled svg .st2 {
    fill: #999999;
}

.navbar {
    background: #f8448f;
    line-height:48px;
    margin-bottom:0px;
    border-bottom: 3px solid #000;
}

.navbar .container-fluid{
    padding-left:0px;
    padding-right:0px;
}

.navbar .navbar-header{
    padding-left:14px;
    background-position: 115% 43%;
    background-repeat:no-repeat;
}

.navbar .navbar-brand{
    display: inline-flex;
    align-items: center;
    height: 48px;
    width: auto;
    padding: 0;
    background: transparent;
    color: #ffffff;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 1.98rem;
    font-weight: 950;
    letter-spacing: -.04em;
    line-height: 1;
    text-transform: none;
    margin-left:0px !important;
}

.navbar .navbar-brand:hover,
.navbar .navbar-brand:focus {
    color: #ffffff;
    text-decoration: none;
}

.navbar .navbar-brand-initial {
    color: #67e8f9;
}

.navbar-user{
    padding-right:0px;
    height: 48px;
    line-height: 48px;
    text-align:right;
    background-position: -24% 56%;
    background-repeat:no-repeat;
}
/* Stile per il pulsante "Vai a Scholafabra" nella headbar */
.navbar-user .scholafabra-link {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    background: #ffffff;
    color: #333;
    text-decoration: none;
    border: none;
    box-shadow: none;
    -webkit-box-shadow: none;
    border-radius: 0;
    margin: 0 10px 0 0;
    height: 48px;
    transition: background-color 0.2s ease;
}

.navbar-user .scholafabra-link:hover {
    background: #f5f5f5;
    text-decoration: none;
    color: #333;
}

.navbar-user .scholafabra-link:focus,
.navbar-user .scholafabra-link:active {
    background: #eeeeee;
    text-decoration: none;
    color: #333;
    box-shadow: none;
    -webkit-box-shadow: none;
    outline: none;
}

.navbar-user .scholafabra-content {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 12px;
}

.navbar-user .scholafabra-text {
    font-size: 14px;
    white-space: nowrap;
}

.navbar-user .scholafabra-logo {
    height: 24px;
    width: auto;
    display: block;
}

/*fine sidebar*/
 
.form-group {
    padding-bottom: 0px;
    margin: 0px 0 0 0;
}

.form-group label.control-label{
    font-size:14px;
    font-weight:300;
    margin-top:5px;
    margin-bottom:0px;
    word-wrap: break-word;
    word-break: hyphenate;
    overflow: hidden;
}

.form-horizontal .radio, .form-horizontal .checkbox, .form-horizontal .radio-inline, .form-horizontal .checkbox-inline {
    padding-top: 0px;
}

.modal-content .modal-header {
    border-bottom: none;
    padding-top: 15px;
    padding-right: 24px;
    padding-bottom: 15px;
    padding-left: 24px;
}

.panels-buttons{
    position: absolute;
    z-index: 3;
    top: 10px;
    left: 10px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

/* Stili base per tutti i pulsanti della preview-area (identici a #tools-area button) */
.panels-buttons button,
.panels-buttons .btn-group-vertical button {
    outline: 0;
    width: 48px;
    height: 48px;
    overflow: hidden;
    padding-left: 0;
    padding-right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-transition: opacity .2s ease, border .2s ease;
    -moz-transition: opacity .2s ease, border .2s ease;
    -ms-transition: opacity .2s ease, border .2s ease;
    -o-transition: opacity .2s ease, border .2s ease;
    transition: opacity .2s ease, border .2s ease;
    z-index: 1;
    background-color: hsla(0, 0%, 100%, .7);
    cursor: pointer;
    touch-action: manipulation;
    user-select: none;
    -webkit-user-drag: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    border: 2px solid rgba(22, 38, 55, .1);
    border-radius: 50%;
    position: relative;
    color: rgba(0, 0, 0, 0.87);
}

/* Hover per i pulsanti della preview-area (identico alla home) */
.panels-buttons button:hover,
.panels-buttons .btn-group-vertical button:hover {
    opacity: 0.9;
    border-color: #000 !important;
}

/* Active per i pulsanti della preview-area (solo durante il click, non persistente) */
.panels-buttons button:active,
.panels-buttons .btn-group-vertical button:active {
    opacity: 0.8;
    border-color: #000 !important;
    background-color: hsla(0, 0%, 100%, .7) !important;
}

/* Focus per i pulsanti della preview-area (torna al normale - sovrascrive Bootstrap) */
.panels-buttons button:focus,
.panels-buttons .btn-group-vertical button:focus,
.panels-buttons button.btn-default:focus,
.panels-buttons .btn-group-vertical button.btn-default:focus {
    opacity: 1 !important;
    border-color: rgba(22, 38, 55, .1) !important;
    background-color: hsla(0, 0%, 100%, .7) !important;
    background: hsla(0, 0%, 100%, .7) !important;
    outline: none !important;
}

/* Assicurati che i pulsanti non rimangano in stato active dopo il click */
.panels-buttons button.active,
.panels-buttons .btn-group-vertical button.active,
.panels-buttons button.active:focus,
.panels-buttons .btn-group-vertical button.active:focus,
.panels-buttons button.btn-default.active,
.panels-buttons .btn-group-vertical button.btn-default.active {
    opacity: 1 !important;
    border-color: rgba(22, 38, 55, .1) !important;
    background-color: hsla(0, 0%, 100%, .7) !important;
    background: hsla(0, 0%, 100%, .7) !important;
}

/* Pulsante home isolato (circolare completo) */
.panels-buttons button.home {
    border-radius: 50%;
}

.panels-buttons button.home .home-icon-container {
    width: 32px;
    height: 32px;
    background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj4KICA8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMzAuMS4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogMi4xLjEgQnVpbGQgMTM2KSAgLS0+CiAgPHBhdGggZD0iTTI0Ljk3LDE0LjY0Yy0uNDYtLjAyLS44NS4yOC0uOTMuNzl2OS45OHMtNC42LDAtNC42LDB2LTUuMjVjLS4wNi00LjQ1LTYuNTQtNC42NC02Ljg4LS4xOXY1LjQ0aC00LjZ2LTEwLjAyYy0uMTYtMS4wNy0xLjgxLS45NS0xLjc3LjE4LDAsMCwwLDEwLjc1LDAsMTAuNzUsMCwuNDkuNDEuODcuOTMuODdoNi4zMmMuNDksMCwuOS0uNDEuOS0uOSwwLDAsMC02LjEzLDAtNi4xMy0uMDItLjk0Ljc3LTEuNywxLjY5LTEuNjkuOTIuMDEsMS42My43NSwxLjYzLDEuNjl2Ni4xM2MwLC41LjQuOS45LjloNi4zOGMuNDgsMCwuODctLjQuODctLjl2LTEwLjczYzAtLjUyLS4zNC0uOS0uODQtLjkyWiIvPgogIDxwYXRoIGQ9Ik0yOC4xNSwxMy40OWwtMTEuNTctOC40N2MtLjM3LS4yNy0uNzktLjI3LTEuMTYsMEwzLjg1LDEzLjQ5Yy0uNDEuMjgtLjQ5Ljg4LS4xOCwxLjI3LjMxLjM4Ljg0LjQ1LDEuMjMuMTZsMTEuMDktOC4xMiwxMS4xNCw4LjE2Yy45My42NCwxLjkyLS44MiwxLTEuNDZaIi8+Cjwvc3ZnPg==") no-repeat;
    background-size: 32px 32px;
    background-position: center;
}

/* Gruppo zoom - bordi arrotondati solo sopra e sotto */
.panels-buttons .btn-group-vertical {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.panels-buttons .btn-group-vertical button.zoom-in {
    border-radius: 24px 24px 0 0;
    border-bottom: 1px solid rgba(22, 38, 55, .1);
}

.panels-buttons .btn-group-vertical button.zoom-in:hover {
    border-bottom-color: #000 !important;
}

.panels-buttons .btn-group-vertical button.zoom-in:active {
    border-bottom-color: #000 !important;
}

.panels-buttons .btn-group-vertical button.zoom-out {
    border-radius: 0 0 24px 24px;
    border-top: none;
}

.panels-buttons button.zoom-in .zoom-icon-container,
.panels-buttons button.zoom-out .zoom-icon-container {
    width: 16px;
    height: 16px;
    background-position: center;
}

.panels-buttons button.zoom-in .zoom-icon-container {
    background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTggMEM3LjQ0NzcyIDAgNyAwLjQ0NzcxNSA3IDFWN0gxQzAuNDQ3NzE1IDcgMCA3LjQ0NzcyIDAgOEMwIDguNTUyMjkgMC40NDc3MTUgOSAxIDlIN1YxNUM3IDE1LjU1MjMgNy40NDc3MiAxNiA4IDE2QzguNTUyMjkgMTYgOSAxNS41NTIzIDkgMTVWOUgxNUMxNS41NTIzIDkgMTYgOC41NTIyOSAxNiA4QzE2IDcuNDQ3NzIgMTUuNTUyMyA3IDE1IDdIOVYxQzkgMC40NDc3MTUgOC41NTIyOSAwIDggMFoiLz4KPC9zdmc+") no-repeat;
    background-size: 16px 16px;
}

.panels-buttons button.zoom-out .zoom-icon-container {
    background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0ibSAwIDggYyAwIDAuNTUyMyAwLjQ0NzcgMSAxIDEgaCAxNCBjIDAuNTUyMyAwIDEgLTAuNDQ3NyAxIC0xIGMgMCAtMC41NTIzIC0wLjQ0NzcgLTEgLTEgLTEgaCAtMTQgYyAtMC41NTIzIDAgLTEgMC40NDc3IC0xIDEgeiIvPgo8L3N2Zz4=") no-repeat;
    background-size: 16px 16px;
}

/* Pulsante background-toggle isolato (circolare completo) */
.panels-buttons button.background-toggle {
    border-radius: 50%;
}

.panels-buttons button.background-toggle .background-icon-container {
    width: 24px;
    height: 24px;
    background: url("data:image/svg+xml,%3Csvg id='Livello_1' xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 32 32'%3E%3Cpath d='M29.4,12.8v-1.74c0-1.22-.21-2.41-.65-3.63-.61-1.68-1.88-2.95-3.57-3.57-1.18-.43-2.32-.64-3.49-.65h-3.02s-.03-.03-.05-.03h-1.1s-1.1,0-1.1,0h0s-.03,0-.05.01h-3.02c-1.17.02-2.31.23-3.49.66-.42.15-.82.35-1.19.58l1.39,1.39c.22-.11.44-.22.7-.3.95-.29,1.87-.43,2.79-.44l3.97-.02,3.97.02c.92,0,1.84.15,2.79.44,2.7.82,3.16,3.42,3.25,5.6v2.28s-.02,1.67-.02,1.67c-1.32-1.17-3.15-1.29-4.38-.25l-2.22,1.88,1.34,1.34,2.01-1.72c.45-.38,1.26-.4,1.7-.02l1.54,1.3c.04,1.74-.03,3.56-.74,4.96l1.39,1.39c.23-.37.43-.77.59-1.19.44-1.19.65-2.38.65-3.62l.02-6.24s-.02-.06-.02-.09Z' fill='%23000'/%3E%3Cpath d='M16.76,12.54c.46-.64.69-1.44.57-2.28-.25-1.73-1.81-2.9-3.54-2.66-.52.07-.99.28-1.4.57l1.4,1.4c.06-.02.11-.06.18-.08.69-.14,1.33.28,1.47.96.05.25,0,.48-.08.69l1.4,1.4Z' fill='%23000'/%3E%3Cpath d='M26.78,25.44s.02-.01.03-.02l-1.35-1.35s-.02.01-.03.02l-4.73-4.73.03-.02-1.35-1.35-.03.02-4.3-4.3s.03,0,.04-.01l-3.88-3.88s0,.02-.01.04l-2.69-2.69s.01-.02.02-.03l-1.35-1.35s-.01.02-.02.03l-2.86-2.86c-.39-.39-1.02-.39-1.41,0s-.39,1.02,0,1.41l3.31,3.31c-.38,1.13-.57,2.23-.57,3.37v8.07c0,1.23.21,2.41.65,3.62.62,1.69,1.89,2.96,3.58,3.58,1.2.43,2.29.65,3.36.65h8.6c1,0,2.02-.19,3.1-.56l2.63,2.63c.2.2.45.29.71.29s.51-.1.71-.29c.39-.39.39-1.02,0-1.41l-2.18-2.18ZM7.49,18.44v-7.31c.03-.62.1-1.28.23-1.91l9.92,9.92c-.42.04-.86-.08-1.19-.4-1.16-1.13-2.94-1.33-4.23-.47l-4.45,2.97c-.19-.86-.28-1.75-.28-2.79ZM21.34,25.1h-7.36s0,0,0,0c-2.72,0-4.55-.7-5.46-2.07l4.75-3.19c.65-.44,1.44-.17,1.89.26,1.1,1.06,2.73,1.24,3.98.51l4.24,4.24c-.71.14-1.39.23-2.03.23Z' fill='%23000'/%3E%3C/svg%3E") no-repeat;
    background-size: 24px 24px;
    background-position: center;
}

/* Pulsante object-toggle (nascondi oggetto) */
.panels-buttons button.object-toggle {
    border-radius: 50%;
}

.panels-buttons button.object-toggle:before {
    display: none; /* Nascondi icona themify se presente */
}

.panels-buttons button.object-toggle .object-icon-container {
    width: 24px;
    height: 24px;
    background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj4KICA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjAuMTEsNy4yNnYxLjkzcy0zLjg2LDAtMy44NiwwdjEuMDhzMS45MywxLjkzLDEuOTMsMS45M3YtMS4wOHMxLjkzLDAsMS45MywwdjEuOTNzLjk3LDAsLjk3LDBjLjUzLDAsLjk1LjQyLjk2Ljk2djIuMDVzMS45MywxLjkzLDEuOTMsMS45M3YtNC4xN2MtLjEtMS4xNy0uODEtMi4xMy0xLjkzLTIuNTR2LTUuOTVzLTEwLjczLDAtMTAuNzMsMGwxLjkzLDEuOTNoNi44N1oiLz4KICA8cmVjdCBjbGFzcz0ic3QwIiB4PSIxMi4zOSIgeT0iMTguNDUiIHdpZHRoPSI1Ljc5IiBoZWlnaHQ9IjEuOTMiLz4KICA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMzAuMDQsMjYuOTRsLTgtOHYtLjA1cy0xLjkzLTEuOTMtMS45My0xLjkzbC0xLjkzLTEuOTMtMS45My0xLjkzLTEuOTMtMS45My0xLjk4LTEuOTgtMS44OC0xLjg4LTEuOTMtMS45M3YuMDVzLTMuMTYtMy4xNi0zLjE2LTMuMTZjLS4zOS0uMzktMS4wMi0uMzktMS40MSwwcy0uMzksMS4wMiwwLDEuNDFsNC41Nyw0LjU3djMuMDNjLTEuMTYuNDMtMS44OCwxLjQ1LTEuOTMsMi42NnY0LjUxczEuOTMsMCwxLjkzLDB2NC40MnMtMS45MywxLjkzLTEuOTMsMS45M3YzLjNzLTEuOTMsMC0xLjkzLDB2MS45M3MyMS4yMiwwLDIxLjIyLDB2LTEuOTNzLTEuOTIsMC0xLjkyLDB2LTMuMjlzLTEuOTMtMS45NS0xLjkzLTEuOTV2LTEuMXM2LjU5LDYuNTksNi41OSw2LjU5Yy4yLjIuNDUuMjkuNzEuMjlzLjUxLS4xLjcxLS4yOWMuMzktLjM5LjM5LTEuMDIsMC0xLjQxWk04LjUzLDE2LjUydi0yLjUxYzAtLjU3LjQ3LS45OCwxLjAzLS45NmguOXMwLTEuOTMsMC0xLjkzaC45M3MxLDEsMSwxdjQuNDFzNC40MSwwLDQuNDEsMGwzLjMxLDMuMzF2Mi40OHMtOS42NSwwLTkuNjUsMHYtNS43OXMtMS45MywwLTEuOTMsMFpNMjIuMDMsMjUuNnYyLjVzLTEzLjUsMC0xMy41LDB2LTIuNXMxLjM2LTEuMzYsMS4zNi0xLjM2aDEwLjc4bDEuMzYsMS4zNloiLz4KPC9zdmc+") no-repeat;
    background-size: 24px 24px;
    background-position: center;
}

/* Pulsante show-scene-toggle (mostra tutta la scena) */
.panels-buttons button.show-scene-toggle {
    border-radius: 50%;
}

.panels-buttons button.show-scene-toggle .show-scene-icon-container {
    width: 24px;
    height: 24px;
    background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iTGl2ZWxsb18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDMyIDMyIj4KICA8cGF0aCBkPSJNMzAuNDMsMTcuNzdjLTMuMjQtMy4zOC03LjItNS43Mi0xMS4xMy02LjYtMi4yLS40OS00LjQyLS40OS02LjYxLDAtMy45Ny44OS03Ljk0LDMuMjUtMTEuMiw2LjY5bC0uMTkuMjh2LjQ5bC4yMS4zMWMzLjI0LDMuNCw3LjIxLDUuNzYsMTEuMTgsNi42NSwxLjEuMjUsMi4yLjM3LDMuMzEuMzdzMi4xNC0uMTIsMy4yMS0uMzVjMy45Ni0uODYsNy45NC0zLjIxLDExLjIyLTYuNjIuMzUtLjM2LjM1LS44NywwLTEuMjNaTTIyLjAyLDEzLjc2Yy43OC4zMywxLjUuNzMsMi4zMSwxLjE5LDEuNjQsMSwzLjA5LDIuMTIsNC40MywzLjQzLTIuMDYsMi4wMi00LjQxLDMuNjMtNi43Myw0LjYxLDIuMDctMi43NCwyLjA3LTYuNDksMC05LjIzWk0xNi41NCwyNC4zMmMtMy4yNC4yOS02LjE1LTIuMS02LjQ3LTUuMzUtLjE2LTEuNTguMzItMy4xNCwxLjM0LTQuMzcsMS4wMi0xLjIzLDIuNDYtMS45OSw0LjA1LTIuMTQuMTktLjAyLjM3LS4wMy41Ni0uMDMsMS4zOSwwLDIuNzMuNDgsMy44MSwxLjM5LDEuMjIsMS4wMiwxLjk2LDIuNDUsMi4xMSw0LjAyLjMsMy4yNy0yLjEyLDYuMTctNS4zOSw2LjQ4Wk05Ljk4LDIzYy0xLjM3LS41OC0yLjU2LTEuMzItMy40OC0xLjkzLTEuMjQtLjg2LTIuMjgtMS43Mi0zLjI1LTIuNjgsMS4yOS0xLjI4LDIuNzktMi40NCw0LjQ2LTMuNDYuNzgtLjQ0LDEuNS0uODQsMi4yNy0xLjE3LTIuMDgsMi43NC0yLjA5LDYuNDksMCw5LjIzWiIvPgogIDxwYXRoIGQ9Ik0xNS40NCw4LjgxYy4xNS4xNS4zNi4yMy41Ny4yMy4wMSwwLC4wMiwwLC4wNCwwLC40NC0uMDIuNzgtLjM4Ljc4LS44NHYtMy4zNmMwLS4yMi0uMDktLjQzLS4yNS0uNTgtLjE2LS4xNS0uMzktLjIzLS42LS4yMy0uNDQuMDItLjc4LjM4LS43OC44MXYzLjM5YzAsLjIyLjA5LjQzLjI1LjU4WiIvPgogIDxwYXRoIGQ9Ik0yMC42NywxMC4yOWMuMTIuMDcuMjcuMTEuNDEuMTEuMDcsMCwuMTQsMCwuMjEtLjAzLjIxLS4wNS4zOC0uMTkuNDktLjM4bDEuNjgtMi45MWMuMTEtLjIuMTQtLjQyLjA5LS42My0uMDYtLjIxLS4xOS0uMzgtLjM4LS40OS0uMTktLjExLS40LS4xNC0uNjEtLjA4LS4yMS4wNS0uMzkuMTktLjUxLjM5bC0xLjY3LDIuODljLS4yNC40MS0uMTIuOS4yOCwxLjE0WiIvPgogIDxwYXRoIGQ9Ik0xMC4yMywxMC4wMWMuMS4xOC4yOC4zMS40OC4zNy4wNy4wMi4xNC4wMy4yMS4wMy4xNSwwLC4yOS0uMDQuNDEtLjExLjM5LS4yMy41Mi0uNzIuMjktMS4xMmwtMS42OC0yLjkxYy0uMjMtLjQtLjcyLS41My0xLjEyLS4zMS0uMTkuMTEtLjMyLjI4LS4zOC40OS0uMDYuMjEtLjAyLjQ0LjA5LjYzbDEuNjksMi45M1oiLz4KICA8cGF0aCBkPSJNMTUuNTcsMTUuMzVjLS44Mi4xMi0xLjU1LjU1LTIuMDQsMS4yMS0uNDkuNjctLjY5LDEuNDktLjU2LDIuMzEuMjQsMS41LDEuNTUsMi41OSwzLjA0LDIuNTkuMTQsMCwuMjktLjAxLjQzLS4wMy44MS0uMTIsMS41My0uNTQsMi4wMi0xLjIuNDktLjY2LjctMS40Ni41OC0yLjI3LS4yNC0xLjY4LTEuOC0yLjg1LTMuNDctMi42WiIvPgo8L3N2Zz4=") no-repeat;
    background-size: 24px 24px;
    background-position: center;
}
}

/*.projects-wrapper{
    width:100%;
}

.projects-wrapper .tab-content{
    width:100%;
}*/

.projects-wrapper .tab-content .projects-container{
    display: flex;
    flex-wrap:wrap;
    width:calc(100% + 10px);
    margin:5px -5px;
}

.projects-wrapper .nav-tabs{
    background:transparent;
}

.projects-wrapper .nav-tabs li a{
    color:rgb(130,96,98) !important;
}

.projects-wrapper .nav-tabs li.active{
    background:rgb(130,96,98);
}

.projects-wrapper .nav-tabs li.active a{
    color:#fff !important;
}

/*.projects-wrapper .tab-content{
    width:100%;
    margin: 0px -5px;
}*/

.projects-wrapper .project{
    display:block;
    width: calc(33% - 8px);
    padding:5px;
    height:auto;
    color:#333;
    text-decoration:none;   
    border: 1px solid rgb(130,96,98);
    margin: 5px;
    position: relative;
}

#shape-code{
    min-height:300px;
}

#shape-parameters-table{
    width:100%;
    margin-bottom:10px;
}


#remodal-code,
#remodal-code-blockly{
    text-align:left;
}

.projects-wrapper .project:hover,
.projects-wrapper .project:active{
    text-decoration:none;
}

.projects-wrapper .project h3{
    font-size:20px;
    color: rgb(130,96,98);
    position: absolute;
    bottom: 0px;
    margin: 0;
    width: 100%;
    padding: 10px;
    background: rgba(255,255,255,0.4);
}

.projects-wrapper .project ul{
    list-style:none;
    margin:0;
    padding:0;
    font-size:12px;
    color:#989898;
}

.projects-wrapper .project .project-menu ul{
    font-size:16px;
    font-weight:300;
    background:transparent;
}

.projects-wrapper .project .project-menu ul.dropdown-menu{
    background:rgba(255,255,255,0.93);
}

.projects-wrapper .project .project-menu ul li a{
    padding-top:10px;
    padding-bottom:10px;
    font-weight:300;
}

.projects-wrapper .project .project-menu ul li a i{
    font-size:12px;
}

.projects-wrapper .project .project-menu ul li a i.ti-menu{
    font-size:24px;
}

.projects-wrapper .project .project-menu ul li a:hover,
.projects-wrapper .project .project-menu ul li a:active,
.projects-wrapper .project .project-menu ul li a:focus{
    text-decoration: none !important;
}

.projects-wrapper .project ul li span{
    color:rgb(130,96,98);
}

.projects-wrapper .project .btn{
    margin-bottom:0;
}

.projects-wrapper .project .screenshot{
    width:100%;
    height:150px;
    background-size:cover;
    background-position:center center;
    background-repeat:no-repeat;
    position:relative;
}

.project .desync{
    position: absolute;
    background: #ffd857;
    top: 10px;
    right: 10px;
    color: #fff;
    padding: 0px 10px;
    z-index: 20;
    font-size: 15px;
    line-height:30px;
    text-align:center;
}

.project .desync:before{
    padding:0;
    margin:0;
}

.my-drop-zone{
    display:table;
    width:100%;
    height:300px;
    border: dashed 1px lightgray;
    text-align: center;
    font-size: 20px;
    font-weight: 300;
    line-height:40px;
    background:#eee;
    color: rgb(158, 158, 158);
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
}

.my-drop-zone > div{
    display:table-cell;
    vertical-align:middle;
}

.my-drop-zone .importer-sup{
    line-height:30px;
}

.my-drop-zone .importer-sub{
    font-size: 14px;
}

.my-drop-zone .importer-bar{
    width:80%;
    -webkit-box-shadow:inset 0 1px 10px 0 rgba(0,0,0,0.2);
    box-shadow:inset 0 1px 10px 0 rgba(0,0,0,0.2);
    height:10px;
    margin: 10px auto 0 auto;
    position:relative
}

.my-drop-zone .importer-bar-internal{
    height:10px;
    position:relative;
    background: rgb(130,96,98);
    background: -moz-linear-gradient(to right, rgba(130,96,98,1) 1%, rgba(164,110,100,1) 100%);
    background: -webkit-linear-gradient(to right, rgba(130,96,98,1) 1%,rgba(164,110,100,1) 100%);
    background: linear-gradient(to right, rgba(130,96,98,1) 1%,rgba(164,110,100,1) 100%);
}

.my-drop-zone.uploader-over-class { 
    border: dashed 1px #1caf9a; 
    background:#ddd;
}

.update-button{
    background:transparent;
    border:1px solid rgb(130,96,98);
    border-radius:3px;
    padding:5px 10px;
    font-family:Lato;
    font-size:14px;
    position:absolute;
    left:calc(50% + 150px);
    transform: translateX(-50%);
    top: 10px;
    transition: background 0.3s, color 0.3s;
}

.update-button:hover,
.update-button:active,
.update-button:focus{
    background: rgb(130,96,98);
    color:#fff;
    text-decoration:none;
}

.octoform{
	position:relative;
}

.print-wrapper{
	display:flex;
	align-items:stretch;
}

.print-wrapper .printer-infos,
.print-wrapper .print-progess-info{
	display:block;
}

.print-wrapper .printer-infos{
	width:40%;
}

.print-wrapper .print-progess-info{
	width:60%;
}

.print-progess-info{
	border-left:1px solid rgba(0,0,0,0.1);
	padding-left:10px;
}

.print-wrapper h3{
	margin-top:0;
	font-size:24px;
}

.print-overlay{
	position:absolute;
	width:100%;
	height:100%;
	display:flex;
	justify-content: center;
    align-items: center;
	left:0;
	top:0;
	z-index:10;
	background: rgba(255,255,255,0.9);
}

.print-overlay .spinner{
	text-align:center;
	color:rgb(130,96,98);
}

.print-overlay .spinner .txt{
	font-size:20px;
	display:block;
	margin-bottom:20px;
}

.print-overlay .spinner i{
	font-size:40px;
}

.btn-disconnect{
	margin:0px 1px;
}

.printer-infos .form-group{
	min-height:30px;
	display: flex;
	align-items:center;
}

.printer-infos .form-group .form-control{
	margin-bottom:0;
}

.printer-infos .form-group .control-label,
.printer-infos .form-group .col-sm-10,
.print-progess-info .form-group .control-label,
.print-progess-info .form-group .col-sm-10{
	padding:0;
	margin-top: 0;
}

.print-progess-info .progress,
.slicing-modal .progress{
	height:14px;
	background:#ececec;
	-webkit-box-shadow:inset 0 1px 10px 0 rgba(0,0,0,0.2);
    box-shadow:inset 0 1px 10px 0 rgba(0,0,0,0.2);
}

.print-progess-info .progress-bar span,
.slicing-modal .progress-bar span{
	font-size: 12px;
    line-height: 14px;
    display: block;
}

.printer-infos .form-group .col-sm-10{
	margin-left:-4px;
}

@media (max-width: 1120px){
    #rotation-geometry-panel .preview-area, 
    #extrusion-geometry-panel .preview-area,
    #lathe-geometry-panel .preview-area{
        left:69px;
        display:block;
        top:10px;
    }
    
    /* Freehand usa layout flex, non ha bisogno di questa regola */
    #freehand-geometry-panel .preview-area{
        left: 0; /* Mantieni il layout flex */
        position: relative; /* Mantieni il layout flex */
    }
    
    #extrusion-geometry-panel .preview-area{
        clear:both;
    }
    
    #rotation-geometry-panel .content, #extrusion-geometry-panel .content, #spline-geometry-panel .content, #align-panel .content,
    #isometrie-panel .content,
    #userdefined-geometry-panel .content,
    #blockly-geometry-panel .content  {
        height: calc(100vh - 64px);
        padding-bottom:100px;
    }
}

@media (max-width: 1140px){
    #lathe-geometry-panel .content,
    #spline-geometry-panel .content,
    #freehand-geometry-panel .content{
        height: calc(100vh - 119px);
    }
}

@media (max-width: 900px){
    #tools-area button, #contextual-tools-area button, #rotation-geometry-panel .tools button, #extrusion-geometry-panel .tools button, #lathe-geometry-panel .tools button, #spline-geometry-panel .tools button, #freehand-geometry-panel .tools button{
        width:20px;
        height:20px;
        padding: 0px 0px;
        
    }

    #tools-area button:before, #contextual-tools-area button:before, #rotation-geometry-panel .tools button:before, #extrusion-geometry-panel .tools button:before, #lathe-geometry-panel .tools button:before, #spline-geometry-panel .tools button:before, #freehand-geometry-panel .tools button:before{
        font-size:14px;
    }

    button.duplicate-object,button.sc-ungroup{
        width:40px !important;
    }
}


/*RANGE SLIDER*/
.range-slider {
    margin: 18px 0 0 0%;
}

/*.range-slider {
    width: 100%;
}*/

.range-slider__range {
    -webkit-appearance: none;
    width: calc(100% - (73px));
    height: 1px;
    background: #d7dcdf;
    outline: none;
    padding: 0;
    margin: 0;
    display: inline;
}

.edge .range-slider__range{
    height:10px;
    margin-top:-5px;
    background:#e7e7e7;
}

.range-slider__range::-webkit-slider-thumb{
  -webkit-appearance: none;
          appearance: none;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #2c3e50;
  cursor: pointer;
  -webkit-transition: background .15s ease-in-out;
  transition: background .15s ease-in-out;
}

.edge .range-slider__range::-webkit-slider-thumb{
    width: 30px;
    height: 10px;
    border-radius: 0;
}



.range-slider__range::-webkit-slider-thumb:hover {
  background: #1abc9c;
}
.range-slider__range:active::-webkit-slider-thumb {
  background: #1abc9c;
}
.range-slider__range::-moz-range-thumb {
  width: 20px;
  height: 20px;
  border: 0;
  border-radius: 50%;
  background: #2c3e50;
  cursor: pointer;
  -webkit-transition: background .15s ease-in-out;
  transition: background .15s ease-in-out;
}
.range-slider__range::-moz-range-thumb:hover {
  background: #1abc9c;
}
.range-slider__range:active::-moz-range-thumb {
  background: #1abc9c;
}

.range-slider__value {
  display: inline-block;
  position: absolute;
  width: 60px;
  color: #fff;
  line-height: 20px;
  text-align: center;
  border-radius: 3px;
  background: #2c3e50;
  padding: 5px 10px;
  /*margin-left: 8px;*/
  left:-30px;
}
.range-slider__value:after {
  position: absolute;
  top: 8px;
  left: -7px;
  width: 0;
  height: 0;
  border-top: 7px solid transparent;
  border-right: 7px solid #2c3e50;
  border-bottom: 7px solid transparent;
  content: '';
}

::-moz-range-track {
  background: #d7dcdf;
  border: 0;
}

/* Stili per controlli disabilitati delle giunture */
.disabled-controls label.control-label {
  color: #999;
  opacity: 0.6;
}

.disabled-controls .range-slider__range:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  background: #e0e0e0;
}

.disabled-controls .range-slider__range:disabled::-webkit-slider-thumb {
  background: #999;
  cursor: not-allowed;
}

.disabled-controls .range-slider__range:disabled::-moz-range-thumb {
  background: #999;
  cursor: not-allowed;
}

.disabled-controls .range-slider__range:disabled:hover::-webkit-slider-thumb {
  background: #999;
}

.disabled-controls .range-slider__range:disabled:hover::-moz-range-thumb {
  background: #999;
}

input::-moz-focus-inner,
input::-moz-focus-outer {
  border: 0;
}
/*FINE RANGE SLIDER*/


/*STILE GENERALE PER IL SITO (NON CAD)*/
body, h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4 {
    font-family: 'Lato';
}


*:focus{
    outline:0 !important;
}

.change-pwd-group{
    display:none;
}

.container.padded{
    padding-top:100px;
}

.profile-img{
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    width:100px;
    height:100px;
    -webkit-box-shadow: 0 3px 10px 0 rgba(0,0,0,0.2);
    box-shadow: 0 3px 10px 0 rgba(0,0,0,0.2);
    display:block;
}

.profile-group .first{
    width:120px;
    height:120px;
    float:left;
}

.profile-group .second{
    float:left;
    width:200px;
}

.dropdown-menu{
    margin:0px;
}

.well form{
    margin-bottom:0;
}
/*FINE STILE GENERALE PER IL SITO (NON CAD)*/

/*CORREZIONE BUGS MATERIAL DESIGN*/
.checkbox .checkbox-material:before,
label.checkbox-inline .checkbox-material:before {
  display: block;
  position: absolute;
  top: -5px;
  left: 0;
  content: "";
  background-color: rgba(0, 0, 0, 0.84);
  height: 20px;
  width: 20px;
  border-radius: 100%;
  z-index: 1;
  opacity: 0;
  margin: 0;
}
/*FINE CORREZIONE BUGS MATERIAL DESIGN*/

.pace {
  -webkit-pointer-events: none;
  pointer-events: none;

  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

.pace-inactive {
  display: none;
}

.pace .pace-progress {
    background: #6fd4e4;
  position: fixed;
  z-index: 2000;
  top: 0;
  right: 100%;
  width: 100%;
  height: 12px;
  box-shadow: 0 0 0 1px rgba(255,255,255,0.18), 0 8px 24px rgba(10, 116, 140, 0.28);
}

.pace .pace-progress-inner {
  box-shadow: 0 0 16px rgba(111,212,228,0.85), 0 0 40px rgba(111,212,228,0.45);
}

.sugar-bar-container,
.sugar-modal-message{
    display:table;
    position:absolute;
    background:rgba(255,255,255,0.8);
    top:0;
    left:0;
    right:0;
    bottom:0;
    
    width:100%;
    height:100%;
    opacity:0;
    -webkit-transition: opacity 0.2s;
    transition: opacity 0.2s;
    z-index:-1;
}

.remodal-overlay {
    background: rgba(130,96,98,0.9);
}

.remodal p,
.remodal ul li{
    text-align:left;
}

.remodal .version{
    margin-bottom:20px;
    display:block;
}

.sugar-bar-container.visible,
.sugar-modal-message.visible{
    z-index:9999;
    opacity:1;
}

.sugar-bar-container h2,
.sugar-modal-message h2,
.sugar-modal-message h5{
    color:rgb(130,96,98);
}

.sugar-bar-container .cell,
.sugar-modal-message .cell{
    display:table-cell;
    vertical-align:middle;
    text-align:center;
    
    background:rgba(255,255,255,0.8);
}

.import-progress-container {
    margin-top: 30px;
    width: 400px;
    margin-left: auto;
    margin-right: auto;
}

.import-progress-bar {
    width: 100%;
    height: 6px;
    background-color: #e8e8e8;
    border-radius: 3px;
    overflow: hidden;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.1);
    margin-bottom: 15px;
}

.import-progress-fill {
    height: 100%;
    width: 0%;
    background: rgb(130,96,98);
    background: -moz-linear-gradient(to right, rgba(130,96,98,1) 1%, rgba(164,110,100,1) 100%);
    background: -webkit-linear-gradient(to right, rgba(130,96,98,1) 1%,rgba(164,110,100,1) 100%);
    background: linear-gradient(to right, rgba(130,96,98,1) 1%,rgba(164,110,100,1) 100%);
    border-radius: 3px;
    animation: import-progress-animation 2s ease-in-out infinite;
    transition: width 0.3s ease;
}

@keyframes import-progress-animation {
    0% {
        width: 0%;
        opacity: 0.6;
    }
    50% {
        width: 70%;
        opacity: 1;
    }
    100% {
        width: 100%;
        opacity: 0.8;
    }
}

.import-progress-text {
    color: rgb(130,96,98);
    font-size: 14px;
    margin-top: 10px;
    font-weight: normal;
}

.sugar-bar-container #sugar-bar-container,
.generic-loading-bar-container{
    position:absolute;
    width:40%;
    /*top:calc(50% - 1px);*/
    left:30%;
    z-index:10000;
    height:4px;
    background:#e8e8e8;
    -webkit-box-shadow:inset 0 1px 5px 0 rgba(0,0,0,0.2);
    box-shadow:inset 0 1px 5px 0 rgba(0,0,0,0.2);
    
}

.sugar-bar-container #sugar-bar-container #loading-bar .bar{
    position: relative;
    height:4px;
    background: rgb(130,96,98);
    background: -moz-linear-gradient(to right, rgba(130,96,98,1) 1%, rgba(164,110,100,1) 100%);
    background: -webkit-linear-gradient(to right, rgba(130,96,98,1) 1%,rgba(164,110,100,1) 100%);
    background: linear-gradient(to right, rgba(130,96,98,1) 1%,rgba(164,110,100,1) 100%);
}

.generic-loading-bar-container .generic-loading-bar{
    display:block;
    width:100%;
    position: relative;
    height:4px;
    background: rgb(130,96,98);
    background: -moz-linear-gradient(to right, rgba(130,96,98,1) 1%, rgba(164,110,100,1) 100%);
    background: -webkit-linear-gradient(to right, rgba(130,96,98,1) 1%,rgba(164,110,100,1) 100%);
    background: linear-gradient(to right, rgba(130,96,98,1) 1%,rgba(164,110,100,1) 100%);
}

.sugar-bar-container #sugar-bar-container #loading-bar .peg{
    display:none;
}

.project-name{
    position: absolute;
    right: 5px;
    top: 0px;
}

.project-name input{
    width: 180px;
    min-width: 0;
    height: 32px;
    padding: 5px 10px;
    border: 1px solid #d5dce3;
    border-radius: 5px;
    background: #f8fafc;
    color: #38444f;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 20px;
    margin-bottom: 0 !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    box-shadow: none;
}

.project-name input:focus{
    border-color: #92dbe8;
    background: #ffffff;
    box-shadow: 0 0 0 2px rgba(103, 232, 249, .2);
}

.project-name-header{
    position: static;
    display: flex;
    align-items: center;
    height: 48px;
    margin-left: 12px;
    flex: 0 1 clamp(150px, 16vw, 230px);
    min-width: 0;
}

.project-name-workspace{
    display: none;
}

.navbar .navbar-header{
    display: flex;
    align-items: center;
    width: 26%;
}

.navbar #bs-example-navbar-collapse-6{
    width: 58%;
}

.navbar .navbar-user{
    width: 16%;
}

.navbar .project-name-header .form-group{
    width: 100%;
    height: 30px;
    margin: 0;
}

.navbar .project-name-header input{
    width: 100%;
    max-width: none;
    height: 30px;
    border-color: rgba(255, 255, 255, .38);
    background: rgba(255, 255, 255, .14);
    color: #ffffff;
}

.navbar .project-name-header input::placeholder{
    color: rgba(255, 255, 255, .78);
}

.navbar .project-name-header input:focus{
    border-color: #67e8f9;
    background: rgba(255, 255, 255, .22);
}

@media (max-width: 1100px){
    .navbar .navbar-header{
        display: block;
        width: 16.66666667%;
    }

    .navbar #bs-example-navbar-collapse-6{
        width: 66.66666667%;
    }

    .navbar .navbar-user{
        width: 16.66666667%;
    }

    .project-name-header{
        display: none;
    }

    .project-name-workspace{
        display: block;
    }

    .project-name.project-name-workspace input.form-control{
        border-color: rgba(213, 44, 120, .48);
        background-color: rgba(248, 68, 143, .28);
        background-image: none !important;
        background-repeat: no-repeat;
        background-size: auto;
        color: #4a2637 !important;
        -webkit-text-fill-color: #4a2637 !important;
        caret-color: #c72c72;
    }

    .project-name.project-name-workspace input.form-control::placeholder{
        color: rgba(74, 38, 55, .65) !important;
        -webkit-text-fill-color: rgba(74, 38, 55, .65) !important;
        opacity: 1;
    }

    .project-name.project-name-workspace input.form-control:focus{
        border-color: #d52c78;
        background-color: rgba(248, 68, 143, .36);
        background-image: none !important;
        color: #4a2637 !important;
        -webkit-text-fill-color: #4a2637 !important;
        box-shadow: 0 0 0 2px rgba(248, 68, 143, .14);
    }
}

.project-name input::placeholder{
    font-weight:400 !important;
    font-size: 13px !important;
}

.project-name input::-webkit-input-placeholder { /* Chrome/Opera/Safari */
    font-weight:400 !important;
    font-size: 13px !important;
}

.project-name input::-moz-placeholder { /* Firefox 19+ */
    font-weight:400 !important;
    font-size: 13px !important;
}

.project-name input:-ms-input-placeholder { /* IE 10+ */
    font-weight:400 !important;
    font-size: 13px !important;
}

.project-name input:-moz-placeholder { /* Firefox 18- */
    font-weight:400 !important;
    font-size: 13px !important;
}

.placing-alert{
    z-index:999999999;
    position:absolute;
    top:10px;
    right:310px;
    height:auto;
    left:10px;
    background: #58bbee;
    color: #fff;
    padding: 30px;
    opacity: 0.95;
    text-align:center;
    font-weight:600;
    -webkit-box-shadow:  0 2px 20px 0 rgba(0,0,0,0.2);
    box-shadow:  0 2px 20px 0 rgba(0,0,0,0.2);
}



/*cubo rotazione piano*/
#wrapper {
  position:absolute;
  top:70px;
  left:70px;
  z-index:99999999;
}

.viewport {
  -webkit-perspective: 800px;
  -moz-perspective: 800px;
  -ms-perspective: 800px;
  -o-perspective: 800px;
  perspective: 800px;
  -webkit-perspective-origin: 50% 100px;
  -moz-perspective-origin: 50% 100px;
  -ms-perspective-origin: 50% 100px;
  -o-perspective-origin: 50% 100px;
  perspective-origin: 50% 100px;
  -webkit-transform: scale(0.8, 0.8);
  -moz-transform: scale(0.8, 0.8);
  -ms-transform: scale(0.8, 0.8);
  -o-transform: scale(0.8, 0.8);
  transform: scale(0.8, 0.8);
}

.cube {
  position: relative;
  margin: 0 auto;
  height: 100px;
  width: 100px;
  -webkit-transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
  -ms-transform-style: preserve-3d;
  -o-transform-style: preserve-3d;
  transform-style: preserve-3d;
  -webkit-transform: rotateX(-20deg) rotateY(0deg);
  -moz-transform: rotateX(-20deg) rotateY(0deg);
  -ms-transform: rotateX(-20deg) rotateY(0deg);
  -o-transform: rotateX(-20deg) rotateY(0deg);
  transform: rotateX(-20deg) rotateY(0deg); }

.cube > div {
  overflow: hidden;
  position: absolute;
  opacity: 0.9;
  height: 100px;
  width: 100px;
  background-image: url("http://jordizle.com/demo/376/3d-interactive-cube-with-rotating-sides-using-css3-and-javascript/assets/img/cube/blank.png");
  -webkit-touch-callout: none;
  -moz-touch-callout: none;
  -ms-touch-callout: none;
  -o-touch-callout: none;
  touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none; }

.cube > div > div.cube-image {
  width: 100px;
  height: 100px;
  /*-webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);*/
  line-height: 100px;
  font-size: 20px;
  text-align: center;
  color: #1b9bd8;
  -webkit-transition: color 600ms;
  -moz-transition: color 600ms;
  -ms-transition: color 600ms;
  -o-transition: color 600ms;
  transition: color 600ms; }
  .cube > div > div.cube-image.active {
    color: red; }

.cube > div:hover {
  cursor: pointer; }

.cube > div:active {
  cursor: pointer; }

.cube > div:first-child {
  -webkit-transform: rotateX(90deg) translateZ(50px);
  -moz-transform: rotateX(90deg) translateZ(50px);
  -ms-transform: rotateX(90deg) translateZ(50px);
  -o-transform: rotateX(90deg) translateZ(50px);
  transform: rotateX(90deg) translateZ(50px);
  outline: 1px solid transparent; }

.cube > div:nth-child(2) {
  -webkit-transform: translateZ(50px);
  -moz-transform: translateZ(50px);
  -ms-transform: translateZ(50px);
  -o-transform: translateZ(50px);
  transform: translateZ(50px);
  outline: 1px solid transparent; }

.cube > div:nth-child(3) {
  -webkit-transform: rotateY(90deg) translateZ(50px);
  -moz-transform: rotateY(90deg) translateZ(50px);
  -ms-transform: rotateY(90deg) translateZ(50px);
  -o-transform: rotateY(90deg) translateZ(50px);
  transform: rotateY(90deg) translateZ(50px);
  outline: 1px solid transparent; }

.cube > div:nth-child(4) {
  -webkit-transform: rotateY(180deg) translateZ(50px);
  -moz-transform: rotateY(180deg) translateZ(50px);
  -ms-transform: rotateY(180deg) translateZ(50px);
  -o-transform: rotateY(180deg) translateZ(50px);
  transform: rotateY(180deg) translateZ(50px);
  outline: 1px solid transparent; }

.cube > div:nth-child(5) {
  -webkit-transform: rotateY(-90deg) translateZ(50px);
  -moz-transform: rotateY(-90deg) translateZ(50px);
  -ms-transform: rotateY(-90deg) translateZ(50px);
  -o-transform: rotateY(-90deg) translateZ(50px);
  transform: rotateY(-90deg) translateZ(50px);
  outline: 1px solid transparent; }

.cube > div:nth-child(6) {
  -webkit-transform: rotateX(-90deg) rotate(180deg) translateZ(50px);
  -moz-transform: rotateX(-90deg) rotate(180deg) translateZ(50px);
  -ms-transform: rotateX(-90deg) rotate(180deg) translateZ(50px);
  -o-transform: rotateX(-90deg) rotate(180deg) translateZ(50px);
  transform: rotateX(-90deg) rotate(180deg) translateZ(50px);
  outline: 1px solid transparent; }

object {
  opacity: 0.5; }

object:hover {
  opacity: 1; 
}

@media (max-width: 640px) {
  .viewport {
    -webkit-transform: scale(0.6, 0.6);
    -moz-transform: scale(0.6, 0.6);
    -ms-transform: scale(0.6, 0.6);
    -o-transform: scale(0.6, 0.6);
    transform: scale(0.6, 0.6); 
    } 
}
/*fine cubo rotazinoe piano*/

/* Personalizzazione toolbox Blockly in stile Scratch - Applicato a TUTTE le categorie */
/* Nascondi elementi hidden del toolbox */
#blockly-geometry-panel .blocklyToolboxDiv .blocklyTreeRow.blocklyHidden {
    display: none !important;
}

#blockly-geometry-panel .blocklyToolboxDiv .blocklyTreeRow {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    height: auto !important;
    min-height: 40px !important;
    padding: 4px 8px !important;
    margin-bottom: 4px !important;
    line-height: normal !important;
    white-space: normal !important;
}

#blockly-geometry-panel .blocklyToolboxDiv .blocklyTreeRow::before {
    content: '';
    width: 22px;
    height: 22px;
    border: 2px solid;
    border-radius: 100%;
    margin: 0 auto 2px;
    display: block;
}

#blockly-geometry-panel .blocklyToolboxDiv .blocklyTreeRow .blocklyTreeLabel {
    font-size: 11px !important;
    text-align: center !important;
    padding: 0 !important;
    display: block !important;
    width: 100% !important;
    line-height: 1.2 !important;
    vertical-align: middle !important;
    white-space: normal !important;
}

/* Colori dei tondini basati sugli attributi data */
#blockly-geometry-panel .blocklyToolboxDiv .blocklyTreeRow[data-category-color="#eb4d4b"]::before {
    background-color: #eb4d4b;
    border-color: #cc3d39;
}

#blockly-geometry-panel .blocklyToolboxDiv .blocklyTreeRow[data-category-color="#f0932b"]::before {
    background-color: #f0932b;
    border-color: #d17a1f;
}

#blockly-geometry-panel .blocklyToolboxDiv .blocklyTreeRow[data-category-color="#6ab04c"]::before {
    background-color: #6ab04c;
    border-color: #5a9a40;
}

#blockly-geometry-panel .blocklyToolboxDiv .blocklyTreeRow[data-category-color="#22a6b3"]::before {
    background-color: #22a6b3;
    border-color: #1d8f9b;
}

#blockly-geometry-panel .blocklyToolboxDiv .blocklyTreeRow[data-category-color="#4d97ff"]::before {
    background-color: #4d97ff;
    border-color: #3378d9;
}

#blockly-geometry-panel .blocklyToolboxDiv .blocklyTreeRow[data-category-color="#7158e2"]::before {
    background-color: #7158e2;
    border-color: #5d47c7;
}

/* Nascondi l'icona di default di Blockly */
#blockly-geometry-panel .blocklyToolboxDiv .blocklyTreeRow .blocklyTreeIcon {
    display: none !important;
}

/* Stile hover per le categorie */
#blockly-geometry-panel .blocklyToolboxDiv .blocklyTreeRow:not(.blocklyTreeSelected):hover {
    background-color: #e4e4e4 !important;
    border-radius: 4px;
}

/* Stile per la categoria selezionata - mantiene il layout verticale con fondo grigio */
#blockly-geometry-panel .blocklyToolboxDiv .blocklyTreeRow.blocklyTreeSelected {
    background-color: #e4e4e4 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 4px;
}

#blockly-geometry-panel .blocklyToolboxDiv .blocklyTreeRow.blocklyTreeSelected .blocklyTreeLabel {
    color: #000 !important;
    display: block !important;
    text-align: center !important;
    white-space: normal !important;
}

/* Mantieni i colori originali del tondino anche quando selezionato */
#blockly-geometry-panel .blocklyToolboxDiv .blocklyTreeRow.blocklyTreeSelected[data-category-color="#eb4d4b"]::before {
    background-color: #eb4d4b !important;
    border-color: #cc3d39 !important;
    display: block !important;
}

#blockly-geometry-panel .blocklyToolboxDiv .blocklyTreeRow.blocklyTreeSelected[data-category-color="#f0932b"]::before {
    background-color: #f0932b !important;
    border-color: #d17a1f !important;
    display: block !important;
}

#blockly-geometry-panel .blocklyToolboxDiv .blocklyTreeRow.blocklyTreeSelected[data-category-color="#6ab04c"]::before {
    background-color: #6ab04c !important;
    border-color: #5a9a40 !important;
    display: block !important;
}

#blockly-geometry-panel .blocklyToolboxDiv .blocklyTreeRow.blocklyTreeSelected[data-category-color="#22a6b3"]::before {
    background-color: #22a6b3 !important;
    border-color: #1d8f9b !important;
    display: block !important;
}

#blockly-geometry-panel .blocklyToolboxDiv .blocklyTreeRow.blocklyTreeSelected[data-category-color="#4d97ff"]::before {
    background-color: #4d97ff !important;
    border-color: #3378d9 !important;
    display: block !important;
}

#blockly-geometry-panel .blocklyToolboxDiv .blocklyTreeRow.blocklyTreeSelected[data-category-color="#7158e2"]::before {
    background-color: #7158e2 !important;
    border-color: #5d47c7 !important;
    display: block !important;
}
