/**
 * INDICE
 * - stili di base
 * - stili dei titoli
 * - stili dei link
 * - stili delle view
 * - stili dei form
 * - stili dei bottoni
 * - stili dell'header
 * - stili del nav
 * - stili delle tab
 * - stili della sidebar
 * - stili delle breadcrumbs
 * - stili del main
 * - stili del footer
 * - stili delle timeline
 * - stili del file browser
 * - stili dell'interfaccia metro
 * - stili dell'agenda
 * - stili della struttura anagrafica
 * - stili della tabella di descrizione formato importazione
 * - stili del pannello cassa
 */

/* stili di base */

body {
    background-color: #ffffff;
    font-family: Helvetica, Verdana, FontAwesome;
    font-size: 0.8em;
}

/* stili dei titoli */

h1, h2, h3 {
    display: block;
    font-weight: bold;
    margin: 0px;
    padding: 0px;
}

h1 {
    font-size: 1.5em;
}

h2, h3 {
    font-size: 1.2em;
}

h4, h5 {
    font-size: 1em;
}


/* stili dei link */

a, a:visited, a:hover, a:active,
a.btn-light, a.btn-light:visited, a.btn-light:hover, a.btn-light:active {
        color: #777777;
}

/* stili delle view */

.view-table {
    width: 100%;
    font-size: 1em;
}

.view-table th, .view-table td {
    min-height: 31px;
    text-align: center;
    vertical-align: top;
}

.view-table th.table-header-static {
    padding: 0px 15px;
}

.view-table th, .view-table td {
    padding: 5px 15px;
}

.view-table.small-padding th.table-header-static,
.view-table.small-padding td {
    padding: 5px;
}

.view-table td i.fa {
    font-size: 1.5em;
    padding: 0px 5px;
}

.view-table td a,
.view-table td a:visited {
    color: #212529;
}

.fieldset-table .form-row a i.fa,
.view-table td a i.fa,
.view-table td a:visited i.fa {
    color: #555555;
}

.view-table td a:active,
.view-table td a:hover {
    color: #000000;
}

.view-table th {
    border-bottom: 1px solid #cccccc;
    padding: 0px 5px;
}

.view-table th select {
    text-align: center;
}

.view-table.clickable tbody tr:hover {
    background-color: #eeeeee;
    cursor: pointer;
}

.view-table tbody tr {
    border-bottom: 1px solid #eeeeee;
}

.view-table tbody tr:last-child {
    border-bottom: 1px solid #cccccc;
}

.view-table.line-table tbody tr {
    border-bottom: 1px solid #dddddd;
}

.view-table thead tr th select {
    border: 0px;
    display: block;
    font-weight: bold;
    padding: 0px 5px;
    padding-left: 15px;
}

.view-table thead tr th select.text-left {
    padding-left: 5px;
}

.view-table thead tr th select:hover {
    background-color: #eeeeee;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

.view-table tfoot tr {
    background-color: #eeeeee;
    border-bottom: 1px solid #cccccc;
    font-weight: bold;
}

.view-insert {
    background-color: #eeeeee;
    border-top: 1px solid #cccccc;
    border-bottom: 1px solid #cccccc;
    padding: 0px 10px;
    padding-top: 10px;
}

.view-controls {
    border-top: 1px solid #dddddd;
    padding-top: 10px;
}

.view-controls button {
    height: 31px;
    padding: 3px;
    width: 31px;
}

.view-controls .input-group button:first-of-type {
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
    height: 31px;
    padding: 3px;
    width: 26px;
}

.view-controls .input-group button:last-of-type {
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
    height: 31px;
    padding: 3px;
    width: 26px;
}

.view-controls .input-group select {
    border-radius: 0px;
    height: 31px;
}

/* stili delle dashboard */

.dashboard-table-clickable td.clickable {
    cursor: pointer;
}

.dashboard-table-clickable td.clickable:hover {
    background-color: #eeeeee;
}

/* stili dei form */

.col.col-form-label,
label.col-form-label {
    font-size: .9em;
    font-weight: bold;
    height: 31px;
    margin-bottom: 0px;
    text-align: right;
}

label.form-check-label {
    font-size: .9em;
}

.label-top {
    font-size: .8em;
/*    height: 1.75em; */
    color: #777777;

    position: absolute;
    top: -0.75em;
    left: 1.25em;
    background-color: white;
    padding: 0em 0.5em;
    z-index: 3000;

    border: 1px solid rgba(206,212,218,1);
    border-image: linear-gradient(to bottom, rgba(206,212,218,0) 25%,rgba(206,212,218,1) 25%,rgba(206,212,218,1) 75%,rgba(206,212,218,0) 75%);
    border-image-slice: 1;

    height: auto;

/*
    border-left: 1px solid #ced4da;
    border-right: 1px solid #ced4da;
*/
}

.label-top-disabled {
    font-size: .8em;
    /* height: 1.75em; */
    color: #666666;
    position: absolute;
    top: -0.75em;
    left: 1.25em;
    background-color: #e9ecef;
    padding: 0em 0.5em;
    z-index: 3000;
    border-radius: 3px;
    border: 1px solid rgba(206,212,218,1);
    border-image: linear-gradient(
180deg
, rgba(206,212,218,1) 75%, rgba(255,255,255,0) 75%);
    border-image-slice: 1; /*
    background-origin: border-box;
    background-clip: padding-box, border-box; */
    -webkit-mask: /*4*/
    linear-gradient(#fff 0 0) padding-box, 
    linear-gradient(#fff 0 0);
}

legend {
    border-bottom: 1px solid #dddddd;
    margin: 0px;
    margin-bottom: 10px;
}

fieldset > legend > small {
    white-space: nowrap;
}

@media (max-width: 991.98px) {
    .form-sub {
        border-bottom: 1px solid #dddddd;
        margin: 0px;
        margin-bottom: 10px;
    }
    .form-sub:last-child {
        border: 0px;
    }
}

legend {
    font-size: 1.3em;
    font-weight: bold;
}

legend .btn-sm {
    width: 1.95em;
    height: 1.95em;
    border-radius: 1.95em;
    font-size: 0.67em;
    padding: 0px 4px;
    margin-bottom: 3px;
}

legend small {
    color: #999999;
    font-size: 0.75em;
}

.form-control-sm {
    font-size: .9em;
    height: 31px;
}

textarea.form-control-sm {
    padding: 0.5em 1em;    
}

label {
    height: 31px;
}

label.form-check-label {
    height: auto;
}

fieldset {
    margin-bottom: 0px;
}

fieldset.form-controls,
fieldset.form-controls-free {
    border-top: 1px solid #dddddd;
    padding-top: 10px;
    z-index: 5000;
}

fieldset.form-controls button {
    height: 31px;
    padding: 3px;
    width: 31px;
}

.form-control:focus {
    border-color: #cccccc;
    box-shadow: inset 0 1px 1px rgba(64, 64, 64, 0.075), 0 0 8px rgba(128, 128, 128, 0.6);
    }

    @media (max-width: 991.98px) {
    form.form-main,
    form.form-filtro {
        padding-bottom: 40px;
    }
    .view-controls,
    fieldset.form-controls {
        position: fixed;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 5000;
        padding: 10px 15px;
        background-color: #eeeeee;
    }
}

.bootstrap-select.form-control-sm .dropdown-toggle {
    height: 31px;
    color: #495057;
    background-color: #ffffff;
    border: 1px solid #ced4da;
}

fieldset.interlinee > div:not(:first-of-type) {
    border-top: 1px solid #dddddd;
    padding-top: 10px;
}

fieldset.import-schema p,
fieldset.static-history p {
    margin-bottom: 0px;
}

fieldset.static-history p:first-child {
    font-weight: bold;
}

fieldset.static-history > .form-row > div:first-child {
    font-weight: bold;
    border-right: 1px solid #dddddd;
}

.form-row {
    margin-bottom: 0px;
}

.form-row > div,
.form-row > label {
    margin-bottom: 10px;
}

.form-row .form-row .col,
.form-row .form-row .col-auto,
.form-row .form-row {
    margin-bottom: 0px;
}

.form-row button.btn-sqr {
    height: 31px;
    width: 31px;
}

.form-row button.btn-spin {
    height: 31px;
    width: 31px;
    padding: 3px;
}

.form-row .picture-gestione img {
    max-height: 475px;
    max-width: 100%;
}

.form-row p {
    margin-bottom: .5em;
}

.form-row p:last-child {
    margin-bottom: 0em;
}

select {
    cursor: pointer;
}

select.font-awesome {
    font-size: 1.3em !important;
}

.form-check-input {
    margin-top: .25em;
}

.ql-container {
    min-height: 10rem;
    height: 400px !important;
    flex: 1;
    display: flex;
    flex-direction: column;
  }
  
  .ql-editor {
    height: 100%;
    flex: 1;
    overflow-y: auto;
    width: 100%;
  }

  .cke_notifications_area {
    display: none !important;
  }

/* stili dei bottoni */

.btn:focus {
    outline: none;
    box-shadow: none;
}

.btn-sm {
    font-size: 1em;
    height: 31px;
}

.btn-lg {
    font-size: 1.5em;
}

.btn-xsm {
    font-size: .8em;
    padding: 2px 8px;
    margin: 0px 3px;
}

.btn-sm-1x1 {
    height: 31px;
    width: 31px;
}

.btn-xsm-1x1 {
    height: 1.75em;
    width: 1.75em;
}

.btn-secondary {
    border: 0px;
}

.btn-secondary {
    background-color: #777777 !important;
}

.btn-secondary.clicked,
.btn-secondary:hover,
.btn-secondary:active,
.btn-secondary:visited {
    background-color: #555555 !important;
}

/* stili dell'header */

.widget .btn {
    border-radius: 0px;
    font-size: 1.6em;
    height: 45px;
}

.widget .btn-sqr {
    width: 45px;
}

header {
    background-color: #aaaaaa;
    height: 45px;
    z-index: 2530 !important;
}

header a,
header a:visited {
    color: #333333;
}

header a:hover,
header a:active {
    color: #666666;
    text-decoration: none;
}

header.subform-intestazione {
    background-color: transparent;
    border-bottom: 1px solid #dddddd;
    font-weight: bold;
    height: auto;
    margin: 0px;
    margin-bottom: 10px;
}

header ol.breadcrumbs {
    display: block;
    font-weight: bold;
    margin: 0px;
    padding: 0px;
    font-size: 1.5em;
}

#info, #jobs, #cart, #alert, #bookmarks {
    background-color: #555555;
    color: #ffffff;
    display: none;
    padding: 15px;
    position: absolute;
    right: 0;
    top: 45px;
    z-index: 9000;
}

#cart, #bookmarks {
    white-space: nowrap;
    width: 45%;
}

/*
.cart-row-container {
    border-bottom: 1px solid #747474;
}
*/

#info h2, #jobs h2, #cart h2, #alert h2, #bookmarks h2 {
    font-size: 1.6em;
    margin: 0px;
}

#info p, #jobs p, #cart p, #alert p, #bookmarks p {
    margin: 0px;
    margin-top: 3px;
    margin-bottom: 3px
}

#info a,
#info a:visited,
#info a:hover,
#info a:active,
#jobs a,
#jobs a:visited,
#jobs a:hover,
#jobs a:active,
#cart a,
#cart a:visited,
#cart a:hover,
#cart a:active,
#alert a,
#alert a:visited,
#alert a:hover,
#alert a:active,
#bookmarks a,
#bookmarks a:visited,
#bookmarks a:hover,
#bookmarks a:active {
    color: #ffffff;
}

#widget-alert .alert-number {
    font-size:.5em;
    font-weight: bold;
    background-color: #eeeeee;
    border: 2px solid #cccccc;
    color: #333333;
    border-radius: 5px;
    padding: 0px 3px;
    position: absolute;
    top: 2em;
    left: 2.5em;
}

@media (max-width: 991.98px) {

    #cart {
        width: 100%;
    }
    
}

.form-login {
    min-width: 280px;
}

#form-logout .btn {
    border-radius: 0px;
    font-size: 1.6em;
    height: 45px;
    width: 45px;
}

#form-language select,
#form-multisite select,
#form-navigation select {
    border: 0px;
    border-radius: 0px;
    cursor: pointer;
    height: 45px;
}

/* stili del nav */

nav {
    background-color: #cccccc;
    background-image: url('../img/sfondo.png');
    background-position: bottom left;
    background-repeat: no-repeat;
    padding-top: 45px;
    width: 100%;
}

nav ul {
    list-style-type: none;
    margin: 0px;
    padding: 0px;
}

nav li.nav-item > a.nav-link,
nav li.nav-item > a.nav-link:visited {
    color: #333333;
    font-weight: bold;
    transition: background-color 100ms linear;
}

nav li.nav-item.current > a.nav-link {
    background-color: #ffffff;
    text-decoration: underline;
}

nav li.nav-item.active > a.nav-link,
nav li.nav-item > a.nav-link:hover,
nav li.nav-item > a.nav-link:active {
    background-color: #ffffff;
    text-decoration: underline;
    transition: background-color 100ms linear;
}

nav ul ul {
    background-color: #ffffff;
    padding-left: 1em;
}

nav ul ul ul {
    background-color: #ffffff;
    padding-left: 1em;
}

/* stili delle tab */

.nav-tabs {
    border-bottom: 1px solid #dddddd;
    margin-bottom: 10px;
}

.nav-tabs-secondary {
    margin-bottom: 0px;
    margin-top: 10px;
}

.nav-tabs .nav-item {
    cursor: pointer;
}

.nav-tabs .nav-item.nav-icon a.nav-link {
    font-size: 1.55em;
    padding: .0em .5em;
}

.nav-tabs .nav-item.show .nav-link, .nav-tabs .nav-link.active {
    border-color: #dddddd #dddddd #ffffff;
}

ul.nav-tabs li.nav-item > a.nav-link,
ul.nav-tabs li.nav-item > a.nav-link:visited {
    color: #333333;
    font-weight: bold;
}

ul.nav-tabs li.nav-item.active > a.nav-link,
ul.nav-tabs li.nav-item > a.nav-link:hover,
ul.nav-tabs li.nav-item > a.nav-link:active {
    color: #333333;
    font-weight: bold;
}

select.select-tabs {
    border: 0px;
    border-bottom: 1px solid #dddddd;
    margin-bottom: 10px;
}

/* stili della sidebar */

.sidebar {
    background-color: #cccccc;
    padding: 0px;
    min-height: 100vh;
}

.sticky {
    position: -webkit-sticky;
    position: sticky;
    top: 0px;
}

/* stili delle breadcrumbs */

.breadcrumbs {
    background-color: transparent;
    display: block !important;
    margin: 0px;
    padding: 10px 0px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.breadcrumbs .breadcrumb-item {
    display: inline;
}

.breadcrumb-item+.breadcrumb-item::before {
    display: inline-block;
    padding-right: .5rem;
    color: black;
    content: "/";
}

/* stili del main */

main {
    margin-top: 60px;
/*    padding-top: 60px; */
    padding-bottom: 15px;
    z-index: 2500;
}

/* stili del footer */

footer {
    display: inline-block;
    margin-top: auto;
    z-index: 100;
}

/* stili delle timeline */

.timeline {
    font-size: .9em;
}

.timeline {
    background: linear-gradient( 0deg, transparent 48%, #cccccc 49%, transparent 51% );
    padding: 0px !important;
}

.timeline > div {
    background-color: #ffffff;
    border: 1px solid #cccccc;
    border-radius: 3px;
    margin: 0px;
    padding: 5px 10px;
}

/* stili del file browser */

main.container-fluid.browser {
    padding: 10px 15px;
}

.browse {
    cursor: pointer;
    margin: 10px 0px;
}

.browse:hover {
    background-color: #cccccc;
}

.browse-dir {
    background-color: #dddddd;
}

.browse-file {
    background-color: #eeeeee;
}

.browse div {
    padding: 10px;
}

.browse > .col:first-child > .fa {
    font-size: 1.2em;
    font-weight: bold;
    padding: 0px 10px;
}

.browse .btn-sqr {
    font-size: 1.5em;
    border-radius: 0px;
    height: 40px;
    width: 40px;
}

/* stili dell'interfaccia metro */

.metro h1 {
    font-size: 3em;
    margin: 10px;
}

.metro h3 {
    border-bottom: 1px solid #dddddd;
    font-size: 1.3em;
    font-weight: bold;
    margin: 0px;
    padding: 3px 0px;
}

.metro h4 {
    font-size: 1.2em;
    font-weight: bold;
    margin: 0px;
    padding: 3px;
}

.metro ul.dotted {
    padding-left: 20px;
    margin: 0px;
}

.metro ul.dotted li {
    margin-bottom: 5px;
}

.metro a,
.metro a:visited,
.metro a:hover,
.metro a:active {
    color: #333333;
    text-decoration: none;
    cursor: pointer;
}

.metro a:hover .media,
.metro a:active .media {
    background-color: #eeeeee;
}

.metro .media {
    border: 1px solid #dddddd;
    border-radius: 5px;
}

.metro .media-left {
    padding: 10px;
    padding-right: 5px;
}

.metro .media-left h4 {
    font-size: 2.25em;
    margin: 0px;
    padding-right: 5px;
}

.metro .media-left i {
    font-size: 2.5em;
}

.metro .media-body {
    padding: 10px;
}

.metro .media-body:not('first-child') {
    padding-left: 5px;
}

.metro .valore .media-body {
    background-color: #eeeeee;
    padding-left: 10px;
}

.metro .progetto .media-left {
    width: 360px;
}

.metro .progetto .media-left h1 {
    font-size: 1.25em;
}

.metro .progetto .media-left h2 {
    font-size: 1.15em;
    font-weight: normal;
    font-style: italic;
}

.metro h5 {
    font-size: 1.2em;
    font-weight: bold;
    margin: 0px;
}

.metro p {
    font-size: .9em;
    margin: 0px;
}

/* stili dell'agenda */

.agenda-row:hover {
    background-color: #eeeeee;
}

.agenda-row > div {
    margin: 0px;
}

.agenda-row .metro {
    padding: 10px;
}

.agenda-row .metro a:hover .media {
    background-color: #dddddd;
}

/* stili della struttura anagrafica */

.browsing-tree .current > a {
    font-weight: bold;
    display: block;
}

.browsing-tree .current > a, div.current_details {
    background-color: #eeeeee;
}

.browsing-tree a {
    padding-left: 0;
    margin-left: 1.5rem;
    display: inline;
}

.browsing-tree i + a {
    margin-left: calc(1.5rem - 10.97px);
}

ul.browsing-tree {
    list-style-type: none;
    padding-inline-start: 20px;

}

.browsing-tree li {
    margin-top: 3px;
}

.browsing-tree i {
    cursor: pointer;
}

/* stile tabella descrizione formato di importazione */

.import-schema table {
    margin-bottom: 0px;
    font-size: .85em;
}

.import-schema table.table th {
    background-color: #dddddd;
    white-space: nowrap;
}

.import-schema table.table th,
.import-schema table.table td {
    border-right: 1px solid #dddddd;
    border-bottom: 1px solid #dddddd;
    padding: 5px;
}

/* stili del pannello cassa */

.pannello-cassa .btn-secondary {
    border-radius: 0px;
}

/* stili per i cartellini */
.cartellini {
    width: auto !important;
}


.cartellini td, .cartellini th {
    vertical-align: middle !important;
    max-width: 150px;
}

.cartellini tbody input{
    height: 25px;
}

.cartellini tbody tr:last-child{
    border-bottom: none;
    height: 40px;
}

.cartellini th li{
    text-align: left !important;
}

/* stile per il loader del campo */

div.combobox-container > .spinner-border {
    position: absolute;
    right: 0.5em;
    height: 1.5em;
    width: 1.5em;
    top: 0.5em;
    display: none;
}

/* stile dei modal */

.modal {
    z-index: 5100 !important;
}

.modal p {
    margin: 0px;
}

.modal-backdrop {
    z-index: 5050 !important;
}

.modal-content {
    margin: 2px auto;
}

.modal-dialog {
    margin: 5em auto;
}

.modal-title {
    font-weight: bold;
    font-size: 1.2em;
}
