@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');

html, body {
    font-family: 'Open Sans' !important;
	font-size: 16px !important;
    letter-spacing: 1.5px;
}

#spinner-overlay {
    backdrop-filter: blur(2px);
}

/*Overload bootstrap*/

.color-primary {
    color: #e31e24ff !important;
}

.my-bg {
    background-color: #e31e24ff !important;
}

.my-border {
    border-color: #e31e24ff !important;
}

.my-btn {
    background-color: #e31e24ff !important;
    border-color: #e31e24ff !important;
    color: #fff !important;
}

.form-control:focus, 
.form-select:focus, 
.input-group-text:focus, 
.form-check-input, 
.form-check-input:focus {
	border-color: #e31e24ff !important;
  	box-shadow: none;
}

.dropdown-item > a {
    color: #373737 !important;
}
.dropdown-item:active,
.dropdown-item:active > a,
.dropdown-item:active > a > small,
.dropdown-item.active {
    background-color: #e31e24ff !important;
    color: #fff !important;
}

.form-check-input:checked {
    background-color: #e31e24ff !important;
}

.active {
    background-color: #373737 !important;
    color: #fff !important;
}

/* Accordion */
.accordion-button {
    background-color: #f0efef;
    color: #373737;
}
/* Stile per l'header attivo */
.accordion-button:not(.collapsed) {
    background-color: #373737;
    color: #fff;
}
/* Regolazione della freccia dell'accordion */
.accordion-button::after {
    filter: invert(0);
}
.accordion-button:not(.collapsed)::after {
    filter: invert(1);
}

/*Login page*/

.login-container {
    max-width: 450px;
    padding: 2rem;
    background: white;
    border-radius: 10px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

.bg-login{ 
    background: rgb(149,149,149);
    background: linear-gradient(180deg, rgba(149,149,149,1) 0%, rgba(187,187,187,1) 35%, rgba(230,230,230,1) 100%);
}

/*Layout principale*/
@media (min-width: 1900px) {
    .sidebar {
        position: fixed;
        top: 0;
        bottom: 0;
        left: 0;
        width: 250px;
        padding: 1rem;
        background-color: #f8f9fa;
        overflow-y: auto;
    }
    .content {
        margin-left: 250px;
        width: -webkit-calc(100% - 250px);
        width:    -moz-calc(100% - 250px);
        width:         calc(100% - 250px);
    }

    #openSidebar{
        display: none;
    }
}

@media (max-width: 1899px) {
    .sidebar {
        display: none;
    }

    #openSidebar{
        display: '';
    }
}

/* Card dashboard studio */

.card-cantiere {
    transition: transform 0.2s;
}

.card-cantiere:hover {
    transform: scale(1.05);
}

.weather-card {
    background: #bfe5fa;
    color: #0e6299;
    border: none;
    position: relative;
}

/* Tree View */
ul.treeview {
    list-style: none;
    padding-left: 1rem;
}

ul.treeview li {
    margin: 0.3rem 0;
    position: relative;
}

.tree-toggle {
    cursor: pointer;
    user-select: none;
}

.tree-toggle::after {
    content: "\276F";
    display: inline-block;
    margin-right: 5px;
    transition: transform 0.2s ease;
}

.tree-toggle[aria-expanded="true"]::after {
    transform: rotate(90deg);
}

.tree-leaf::before {
    margin-right: 5px;
}

.position-relative:hover > .edit-btn {
    display: inline-block !important;
    position: absolute;
    top: -7px;
    right: -43px;
}

/* Varie */

.mini {
    font-size: 14px;;
}

.micro {
    font-size: 12px;;
}