  :root {
      --color-main: #eb5d3e;       
      --color-sidebar: #000000;    
      --color-bg: #f0f3f5;         
      --color-text: #222;         
      --color-panel: #ffffff;
      --radius: 18px;
      --transition: 0.3s ease;
      --shadow-soft: 0 3px 10px rgba(0,0,0,0.15);
      --shadow-medium: 0 10px 25px rgba(0,0,0,0.2);
      --font-primary: 'Poppins', sans-serif;
      --font-mono: 'Roboto Mono', monospace;
    }

    * {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
      font-family: var(--font-primary);
    }
    body {
      background: var(--color-bg);
      background: #5A5C5B;
      color: var(--color-text);
      overflow-x: hidden;
      position: relative;
    }
    
    /* MAIN CONTENT */
    .main-content {
      display: flex;
      gap: 1rem;
      padding: 15px 0;
      transition: margin-left var(--transition);
      opacity: 0;
      transform: translateX(60px);
      animation: contentEnter 0.8s ease forwards 0.4s; 
    }
    .interno2>.main-content{
        gap: 1rem;
          
    }
    .sidebar:hover ~ .header ~ .main-content {
      margin-left: 260px;
    }
    @keyframes contentEnter {
      to {
        opacity: 1;
        transform: translateX(0);
      }
    }

    .center-column {
      flex: 0.8; 
      display: flex;
      flex-direction: column;
      gap: 1.5rem;
      position: relative;
      opacity: 0; 
      animation: columnZoom 1s ease forwards 0.8s; 
    }
    @keyframes columnZoom {
      0% {
        transform: scale(0.8);
      }
      100% {
        transform: scale(1);
        opacity: 1;
      }
    }

    .right-panel {
      flex: 2;
      background: var(--color-panel);
      border-radius: var(--radius);
      box-shadow: var(--shadow-soft);
      padding: 1.5rem;
      transition: transform var(--transition);
      display: flex;
      flex-direction: column;
      gap: 1rem;
      background: linear-gradient(
        to bottom right,
        var(--color-panel) 0%,
        rgba(255,255,255,0.8) 100%
      );
      position: relative;
      overflow: hidden;
      opacity: 0; 
      transform: translateY(30px);
      animation: panelSlide 0.8s ease forwards 1s; 
    }
    @keyframes panelSlide {
      to {
        opacity: 1;
        transform: translateY(0);
      }
    }
    .right-panel::before {
      content: "";
      position: absolute;
      top: 0; left: 0;
      width: 100%; height: 60%;
      pointer-events: none;
      background: linear-gradient(
        rgba(255,255,255,0.25),
        rgba(255,255,255,0.0) 70%
      );
      border-radius: var(--radius);
    }

    .info-card {
      background: linear-gradient(
        to bottom right,
        #ffffff 0%,
        rgba(255,255,255,0.8) 100%
      );
      border-radius: var(--radius);
      box-shadow: var(--shadow-soft);
      padding: 1.5rem;
      transition: transform 0.2s, box-shadow 0.2s;
      position: relative;
      overflow: hidden;
    }
    .info-card::before {
      content: "";
      position: absolute;
      top: 0; left: 0;
      width: 100%; height: 60%;
      pointer-events: none;
      background: linear-gradient(
        rgba(255,255,255,0.15),
        rgba(255,255,255,0) 70%
      );
      border-radius: var(--radius);
    }
    .info-card:hover {
      transform: translateY(-4px);
      box-shadow: var(--shadow-medium);
    }
    .info-card .card-header {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      margin-bottom: 0.5rem;
    }
    .info-card h3 {
      color: var(--color-main);
      font-weight: 600;
      margin: 0;
    }
    .info-card .value {
      font-size: 1.6rem;
      font-weight: 600;
      margin: 0.5rem 0;
      font-family: var(--font-mono);
      color: var(--color-text);
      text-shadow: 1px 1px 2px rgba(0,0,0,0.1);
    }
    .info-card .um {
      margin-left: 6px;
      font-size: 0.9rem;
      color: #666;
    }

    /* FORM E SLIDER */
    .form-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 1rem;
    }
    .form-group {
      display: flex;
      flex-direction: column;
    }
    .form-group label {
      display: flex;
      justify-content: space-between; /* cosi la scritta appare a destra */
      font-weight: 600;
      margin-bottom: 0.4rem;
      font-size: 0.9rem;
      color: var(--color-text);
    }

    /* l’indicazione del numero di pallet scelti */
    .form-group .slider-value {
      font-family: var(--font-mono);
      font-size: 0.9rem;
      color: var(--color-text);
      opacity: 0.8;
      text-align: right;
      min-width: 60px;
    }

    .form-group select,
    .form-group input[type="number"],
    .form-group input[type="range"] {
      padding: 0.7rem 0.9rem;
      border-radius: var(--radius);
      border: 1px solid #ccc;
      outline: none;
      font-size: 0.9rem;
      transition: border var(--transition), box-shadow var(--transition);
      width: 100%;
      background: #fdfdfd;
    }
    .form-group select:focus,
    .form-group input[type="range"]:focus {
      border-color: var(--color-main);
      box-shadow: 0 0 0 2px rgba(235,93,62,0.15);
    }
    .product_box,
    .color_box,
    .variation_box {
      display: none;
    }

    /* SLIDER personalizzato - maniglia con grafica “btn-confirm” */
    .form-group .select_quantita[type="range"] {
      -webkit-appearance: none;
      appearance: none;
      height: 6px;
      background: #eee;
      outline: none;
      border-radius: var(--radius);
      margin-top: 0.3rem;
      transition: box-shadow 0.3s, background 0.3s;
    }
    .form-group .select_quantita[type="range"]:hover {
      background: #ddd;
    }
    /* WebKit */
    .form-group .select_quantita[type="range"]::-webkit-slider-thumb {
      -webkit-appearance: none;
      appearance: none;
      width: 16px;
      height: 16px;
      background: linear-gradient(to bottom, #333, #000);
      border-radius: 50%;
      cursor: pointer;
      box-shadow: 0 0 3px rgba(0,0,0,0.3);
      border: 2px solid #fff;
      transition: transform 0.2s, box-shadow 0.2s;
    }
    .form-group .select_quantita[type="range"]::-webkit-slider-thumb:hover {
      transform: scale(1.1);
      box-shadow: 0 0 8px rgba(0,0,0,0.4);
    }
    /* Firefox */
    .form-group .select_quantita[type="range"]::-moz-range-thumb {
      width: 16px;
      height: 16px;
      background: linear-gradient(to bottom, #333, #000);
      border-radius: 50%;
      cursor: pointer;
      border: 2px solid #fff;
      transition: transform 0.2s, box-shadow 0.2s;
    }
    .form-group .select_quantita[type="range"]::-moz-range-thumb:hover {
      transform: scale(1.1);
      box-shadow: 0 0 8px rgba(0,0,0,0.4);
    }

    /* Pulsante conferma “glossy nero” */
    .btn-save,
    .btn-conferma {
      position: relative;
      background: linear-gradient(to bottom, #333, #000);
      color: #fff;
      border: none;
      border-radius: var(--radius);
      padding: 0.9rem 2rem;
      font-size: 0.9rem;
      font-weight: 600;
      cursor: pointer;
      align-self: flex-start;
      transition: transform 0.2s, box-shadow var(--transition);
      margin-top: 0rem;
      box-shadow: 0 4px 12px rgba(0,0,0,0.4);
      text-shadow: 1px 1px 2px rgba(0,0,0,0.3);
      overflow: hidden;
	  display:none;
	  width: 100%;
    }
    .btn-save::before,
    .btn-conferma::before {
      content: "";
      position: absolute;
      top: 0; left: 0;
      width: 100%; 
      height: 45%;
      background: linear-gradient(
        rgba(255,255,255,0.3),
        rgba(255,255,255,0) 50%
      );
      z-index: 1;
      pointer-events: none;
      transition: opacity var(--transition), transform var(--transition);
    }
    .btn-save:hover,
    .btn-conferma:hover {
      transform: translateY(-3px);
      box-shadow: var(--shadow-medium);
    }
    .btn-save:hover::before,
    .btn-conferma:hover::before {
      opacity: 1;
      transform: translateY(-10%);
    }
    .btn-save:active,
    .btn-conferma:active {
      transform: translateY(0);
      box-shadow: var(--shadow-soft);
    }
    .btn-save:active::before,
    .btn-conferma:active::before {
      transform: translateY(0);
    }

    @media (max-width: 1200px) {
      .main-content {
        flex-direction: column;
      }
      .sidebar:hover ~ .header ~ .main-content {
        margin-left: 80px; 
      }
      .form-grid {
        grid-template-columns: 1fr;
      }
    }
	
	.invalid_default{
		display:none;
	}
	.btn-preset{
		position: relative;
		background: linear-gradient(to bottom, #333, #000);
		color: #fff;
		border: none;
		border-radius: 0.75rem !important;
		padding: 0.9rem 2rem;
		font-size: 0.9rem;
		font-weight: 600;
		cursor: pointer;
		transition: transform 0.2s, box-shadow var(--transition);
		margin-top: 0rem;
		box-shadow: 2px 3px #dbdbdb;
		text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
		overflow: hidden;
		width: 96%;
		left: 2%;
		margin-top: 10px;
		font-weight: normal;
	}
	.main-content fieldset{
		border-radius:0;
		border:none;
		border-top:4px solid darkgrey;
		padding:10px 0;
	}
	legend{
		font-weight: 900;
        padding: 0 10px;
        margin-left: 20px;
        width: fit-content;
        position: relative;
        top: -24px;
        background: white;
        font-size: 16px !important;
	}
	.preset-bar{
		position: relative;
		top: 0;
		left: 0;
		width: 260px;
		border-radius: var(--radius);
		background: linear-gradient(to bottom right, var(--color-panel) 0%, rgba(255, 255, 255, 0.8) 100%);
		box-shadow: var(--shadow-soft);
		padding: 10px;
	}
	.preset-bar,.right-panel,.info-card{
	    background:white;
	    box-shadow: 2px 3px #dbdbdb;
	}
	.interno2 .main-content fieldset>legend{
	    box-sizing:border-box !important;
        color:rgb(34,34,34) !important;
        display:block !important;
        float:none !important;
        font-family:"Work Sans",: ans-serif !important;
        font-feature-settings:normal !important;
        font-kerning:auto !important;
        font-optical-sizing:auto !important;
        font-size:14px !important;
        font-size-adjust:none !important;
        font-stretch:100% !important;
        font-style:normal !important;
        font-variant-alternates:normal !important;
        font-variant-caps:normal !important;
        font-variant-east-asian:normal !important;
        font-variant-emoji:normal !important;
        font-variant-ligatures:normal !important;
        font-variant-numeric:normal !important;
        font-variant-position:normal !important;
        font-variation-settings:normal !important;
        font-weight:400 !important;
        height:16.6667px !important;
        line-height:normal !important;
        margin-bottom:0px !important;
        margin-left:0px !important;
        max-width:none !important;
        padding-inline-end:2px !important;
        padding-inline-start:2px !important;
        text-align:start !important;
        text-size-adjust:100% !important;
        unicode-bidi:isolate !important;
        width:91.0729px !important;
        -webkit-tap-highlight-color:rgba(0, 0, 0, 0) !important;
	}
	.btn-preset.btn-modalpreset,
	.btn-preset.btn-savemod,
	.btn-preset.btn-savepreset{
		margin: 26.5px 0;
		background: #EA5D3D !important;
		color: #fff;
		box-shadow:2px 3px #dbdbdb;
	}
	.btn-preset:hover {
	/*	transform: translateY(-3px);*/
	/*	box-shadow: var(--shadow-medium);*/
	}
	@media only screen and (max-width: 1200px){
		.preset-bar{
			width:100%;
		}
	}
	.background_lightbox {
		background: rgba(0, 0, 0, 0.5);
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		overflow: hidden;
		display: none;
	}
	
	.lightbox.modalita_pagamento,
	.lightbox.new_preset {
		display: none;
		position: fixed;
		padding: 40px;
		border-radius: var(--radius);
		height: 350px;
		width: 480px;
		left: calc(50% - 240px);
		top: calc(50% - 175px);
		background: linear-gradient(to bottom right, var(--color-panel) 0%, rgba(255, 255, 255, 0.8) 100%);
		box-shadow: var(--shadow-soft);
	}
	input.name.preset{
		padding: 10px;
		border-radius: var(--radius);
		width: 96%;
		left: 2%;
		position: relative;
		margin-top: -6px;
	}
	.btn-preset.btn-savepreset{
	    margin:20.5px 0;
	}