/* Add here all your CSS customizations */

.page-header {
    background: #4A5C6A;
}

ul.nav-main > li.nav-expanded > a {
    background: #253745;
}

ul.nav-main > li > a:hover {
    background: #253745;
}


.sidebar-left .sidebar-header .sidebar-title {
    background: #11212D;
    color: #465162;
}

html.no-overflowscrolling .sidebar-left .nano {
    background: #11212D;
}

ul.nav-main li .nav-children {
    background: #06141B;
}

.sidebar-left .sidebar-header .sidebar-toggle {
    background-color: #4A5C6A;
}

ul.nav-main li ul.nav-children > li.nav-active, ul.nav-main li ul.nav-children > li.nav-active a:hover {
    background: #e1e3e6 !important;
    width: 102%;
    font-weight: 600;
}


/* NAVIGATION */

html.no-overflowscrolling .sidebar-left .nano {
    background: #3a6e81;
}

ul.nav-main > li.nav-expanded > a {
    background: #09637d;
}

ul.nav-main li .nav-children {
    background: #09637d;
}

.sidebar-left, ul.nav-main li a {
    color:#fefefe;
}

html.no-overflowscrolling .sidebar-left .nano {
    box-shadow: none;
}

.page-header h2 {
    border-bottom: none;
}

.page-header {
    box-shadow: none;
}

ul.nav-main li .nav-children li a:hover {
    background-color:#0f7491;
    color:#ffffff;
}

ul.nav-main li .nav-children li a:hover, ul.nav-main li .nav-children li a:focus {
    background-color: #0f7491;
    color:#ffffff;
}

ul.nav-main li > a:hover {
    background-color: #09637d;
    color:#ffffff;
}

ul.nav-main > li > a:focus {
    background: #fefefe; 
}

ul.nav-main > li.nav-active > a {
    color:#ffffff;
    background-color: #09637d;
}

.sidebar-left .sidebar-header .sidebar-toggle, html.sidebar-left-collapsed .sidebar-left .sidebar-toggle {
        border-radius: 10px 10px 0px 0px;
        border: 2px solid #ffffff;
        border-bottom:none;
    }
    
    .sidebar-left .sidebar-header .sidebar-toggle {
        width:100%;
    }
    
    .sidebar-left .sidebar-header .sidebar-toggle, html.sidebar-left-collapsed .sidebar-left .sidebar-toggle {
        box-shadow: 3px 10px 10px #0000001f;
    }
    
    html.no-overflowscrolling .sidebar-left .nano {
        border-radius: 0px 0px 10px 10px;
        border: 2px solid #ffffff;
        border-top:none;
        box-shadow: 3px 10px 10px #0000001f;
    }
    
    .sidebar-left .sidebar-header .sidebar-toggle {
        background-color: #3a6e81;
        color:#efefef;
    }
    
    .sidebar-left .sidebar-header .sidebar-toggle i {
        color:#fefefe;
    }
    
    ul.nav-main > li.nav-expanded > a {
        background-color:#3a6e81;
    }
    
    ul.nav-main > li.nav-active.nav-active > a:hover {
        color:#fefefe;
    }
    
    ul.nav-main li ul.nav-children > li.nav-active {
        background-color:#ffffff;
    }
    
    ul.nav-main li .nav-children li.nav-active > a {
        box-shadow: none;
        color:#3a6e81;        
        background-color:#ffffff;
    }
    
    ul.nav-main > li > a:hover, ul.nav-main li .nav-children li a:hover {
        color:#ffffff;
    }
    
    html.no-overflowscrolling .sidebar-left .nano.hovered {
        border-radius: 0px 0px 20px 20px;
    }
    
    .sidebar-left {
        background:#e1e3e6;
    }
    
    ul.nav-main {
        margin-right:0px;
    }
    
    ul.nav-main li.nav-parent.nav-expanded a, ul.nav-main li.nav-parent.nav-expanded a:hover {
        color:#ffffff;
    }
    
    ul.nav-main li .nav-children li a:hover {
        color:#3a6e81;
    }
    
    html.fixed .sidebar-left {
        top:75px;
        bottom: 5px;
        margin-left: 10px;
    }
    
    .page-header {
        background: #f9f9f9;
        border-radius:30px;
        border-left:none;
        top: 65px !important;
        margin-left:30px !important;
        margin-right: 30px !important;
    }
    
    .page-header h2 {
        font-size:1.1em;
    }
    
    .page-header h2, .page-header right-wrapper {
        color:#555555 !important;
    }
    
    html.fixed .inner-wrapper {
        padding-top: 35px;
    }
    
    .form-control:not(.form-control-sm):not(.form-control-lg) {
        line-height: 1.3em !important;
    }
    
    .select2-container--bootstrap .select2-selection {
        border: none !important;
    }
    
    .select2.select2-container {
        min-height:2.9em !important;
    }
    
            /* Applicazione del font Montserrat */
        body {
            font-family: 'Montserrat', sans-serif;
            font-size: 0.9em;
            background-color: #e1e3e6;
            color: #555555;
        }

        .content-body {
            padding: 30px;
            padding-top: 40px;
        }

        .header {
            background-color: #fcfcfc;
            border-bottom: 3px solid #ffffff;
        }

        .form-control {
            border: none;
            background-color: #ffffff;
            padding: 0.75rem;
            border-radius: 5px;
            border: 1px solid #ced4da;
            font-size: 0.9rem;
            color: #333333;
            transition: all 0.3s ease;
        }

        .form-control:focus {
            border-color: #0088CC;
            box-shadow: 0px 0px 5px rgba(0, 136, 204, 0.2);
        }

        .btn-primary {
            background-color: #0088CC;
            border: none;
            color: #ffffff;
        }

        .btn-primary:hover {
            background-color: #006DA8;
        }

        .btn-secondary {
            background-color: #dddddd;
            border: none;
            color: #555555;
        }
        
        .btn-success {
        border-radius:1 10px;
    background-color: transparent !important;
    color: #1a8f5e;
    border: 1px solid #e0e0e0;
    }
    
    .btn-success:hover {
        background-color:#21b577 !important;
    }
    
    .btn-danger {
        border-radius: 10px;
    background-color: transparent !important;
    color: #d2322d;
    border: 1px solid #e0e0e0;
    }
    
    .btn-danger:hover {
        background-color:#d2322d !important;
    }
    
            
  .cancel-button {
    min-width: 45px;
    width:45px;
    margin-left:75px;
    transition: width 0.3s ease, padding 0.3s ease, margin 0.3s ease;
    overflow: hidden;
    white-space: nowrap;
    text-align: center;
  }

  .cancel-button span {
    display: inline-block;
    opacity: 0;
  }

  .cancel-button:hover {
    width: 120px;
    padding-right: 20px;
    margin-left:0px;
  }

  .cancel-button:hover span {
    opacity: 1;
    margin-left: 5px;
  }

        .form-section h4 {
            margin-bottom: 20px;
            font-weight: 500;
            font-size: 1.1rem;
            color: #333333;
        }

        .form-group label {
            font-weight: 500;
            font-size: 0.95rem;
            color: #555555;
        }

        .form-section {
            background-color: #ffffff;
            padding: 20px;
            border-radius: 10px;
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.05);
            margin-bottom: 20px;
        }

        .input-group-text {
            background-color: #fefefe;
            border: none;
        }

        .text-right {
            text-align: right;
        }

        .required {
            color: red;
        }

        .card {
            background-color: #fcfcfc;
            border: 3px solid #ffffff;
            padding: 20px;
            border-radius: 10px;
        }

        .main-card {
            background-color: #fcfcfc;
        }

        .form-card {
            padding: 20px;
            border-radius: 10px;
        }

        .input-group {
            border: 1px solid #e0e0e0;
            border-radius: 0.35em;
        }

        .col-centered {
            text-align: center;
        }

        .datepicker {
            box-shadow: 3px 0px 9px #e0e0e0fe !important;
            border: 3px solid #ffffff;
            background-color: #fcfcfc;
        }

        /* Miglioramenti specifici ai campi */
        .form-control {
            height: 40px;
            font-size: 14px;
            color: #333;
        }

        .form-control::placeholder {
            color: #888;
        }

        /* Stili migliorati per le checkbox */
        .form-check-input {
            width: 18px;
            height: 18px;
        }

        /* Miglioramenti dei bordi */
        .form-control {
            border-color: #e0e0e0;
            background-color: #fefefe;
        }

        /* Miglioramento dello stile del focus sui campi input */
        .form-control:focus {
            border-color: #007bff;
            box-shadow: 0 0 6px rgba(0, 123, 255, 0.25);
        }

        /* Pulsanti */
        .btn {
            border-radius: 4px;
            padding: 8px 16px;
        }

        .form-group + .form-group {
            border-top:none;
        }

        .form-group h4 {
            font-weight: 400;
        }

        .form-group {
            padding-top:1em;
        }
        
        .form-control {
                            border:none;
                                font-weight: 500;
                        }

                      
                      .form-control:not(.header_search) {
                          background-color: #ffffff;
                          border-left:2px solid transparent;
                      }
                      
                      .form-control:not(.header_search):focus {
                          box-shadow: 3px 0px 9px #e0e0e0fe !important;
                          border-left-color: #0088CC !important;
                      }
                      
                      .input-group  {
                          border: 1px solid #e0e0e0;
                          border-radius: 0.35em;
                      }
                      
                      .input-group-text {
                          border:none;
                          background-color: #fefefe;                          
                          color:#93afb9;
                      }
                      
                      select option:hover {
                          background-color:#ff0000;
                      }
                      .select2-container--bootstrap.select2-container--focus .select2-selection, .select2-container--bootstrap.select2-container--open .select2-selection, .select2-container--bootstrap .select2-dropdown {
                          border:none;
                      }
                      
                      .select2-container--bootstrap .select2-dropdown {
                          min-width: fit-content;
                      }
                      
                      .select2-container--bootstrap.select2-container--open.select2-container--below .select2-selection {
                          border-left:2px solid #0088CC;
                      }
                      
                      .select2-container--bootstrap .select2-dropdown {
                          border-left:2px solid #0088CC;
                      }
                      
                      select.international-prefix {
                            width: 100px; /* Larghezza adeguata per mostrare il prefisso */
                            overflow: hidden;
                        }
                        
                      textarea.form-control {
                        height: 10em;
                      }
                  
                      .select2-container--bootstrap .select2-selection--single .select2-selection__rendered {
                            font-weight: 500;
                            line-height: 2em;
                        }
                        
                        
                      
                      .legale {
                        background-color: #eaf1f0;
                        margin: 10px;
                        border-radius: 10px;
                        padding: 10px;
                      }
                      
                              .btn-primary {
            background-color: #0088CC;
            border: none;
            color: #ffffff;
        }

        .btn-primary:hover {
            background-color: #006DA8;
        }

        .btn-secondary {
            background-color: #dddddd;
            border: none;
            color: #555555;
        }
        
        .btn-success {
        border-radius:1 10px;
    background-color: transparent !important;
    color: #1a8f5e;
    border: 1px solid #e0e0e0;
    }
    
    .btn-success:hover {
        background-color:#21b577 !important;
    }
    
    .btn-danger {
        border-radius: 10px;
    background-color: transparent !important;
    color: #d2322d;
    border: 1px solid #e0e0e0;
    }
    
    .btn-danger:hover {
        background-color:#d2322d !important;
    }
    
            
  .cancel-button, .rubrica_button {
    min-width: 45px;
    width:45px;
    margin-left:75px;
    transition: width 0.3s ease, padding 0.3s ease, margin 0.3s ease;
    overflow: hidden;
    white-space: nowrap;
    text-align: center;
  }

  .cancel-button span, .rubrica_button span {
    display: inline-block;
    opacity: 0;
  }

  .cancel-button:hover {
    width: 120px;
    padding-right: 20px;
    margin-left:0px;
  }
  
  .rubrica_button:hover {
    width: 140px;
    padding-right: 20px;
    margin-left:0px;
  }

  .cancel-button:hover span, .rubrica_button:hover span {
    opacity: 1;
    margin-left: 5px;
  }
  
  h5 {
      font-weight: 500;
  }