@charset "UTF-8";


@import url('https://fonts.googleapis.com/css2?family=Rethink+Sans:ital,wght@0,500;0,600;0,700;1,400&display=swap');



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

[class^="icon-"], [class*=" icon-"] {
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}



.icon-file-text2:before {
  content: "\e926";
}
.icon-file-pdf:before {
  content: "\eadf";
}
.icon-file-excel:before {
  content: "\eae2";
}

.icon-file-pdf {
    font-size: 2.5rem;
}


/*Variabili*/
:root {
	--main:#254563;
	--secondary:#0070C0;
	--warning:#FF0000;
	--success:#00B050;
	--waiting:#e39a1a;
	--info:#00B0F0;
    --backgroud_light:#f8f7f6;
	
}

html {font-size:13px;}

body {
    padding: 0;
    margin: 0;
    -webkit-font-smoothing: antialiased;
    font-family: 'Rethink Sans', sans-serif;
}

a {
	color: inherit ;
	text-decoration: none ;
}

th .form-control {
    padding: 0.25rem !important
}

main.main{
    padding: 20px 0px;
}

/* Regola per rendere la sidebar scrollabile se ci sono troppe voci */
.sidebar {
    overflow-y: auto;
    z-index: 990;
    border-right: 1px solid #dee2e6;
}

.wrapper {
  position: relative;
  width: 100%;
  padding:0 4%;
  min-height: 600px;
  margin: 0 auto;
  overflow: hidden;
  z-index: 1;
}

.header_nav{
    padding:0.5rem 4%;
    margin-bottom:2rem
}

.myresponsive {
    position:relative; 
    float:left; 
    width:100%;
}

.link {
	color:blue !important;
	text-decoration: underline !important;
    cursor: pointer
}

/*Ui Dialog*/
.ui-dialog {position:fixed!important; min-width:42.85rem !important; font-family:inherit !important; z-index:1000 !important}
.ui-widget {font-family:inherit !important}

.ui-dialog :focus {
    outline: -webkit-focus-ring-color auto 0px !important;
}

.ui-dialog .ui-dialog-titlebar-close {
    background-color: var(--main)
}

.bi-eye-slash {
    width:16px;
    height:16px;
}


.account-wall
{
	margin-top: 10px;
	padding: 40px 0px 20px 0px;
	background-color: #f7f7f7;
	-moz-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
	-webkit-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
	box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
}

.form-signin
{
	max-width: 330px;
	padding: 15px;
	margin: 0 auto;
}
.form-signin .form-signin-heading, .form-signin .checkbox
{
	margin-bottom: 10px;
}
.form-signin .checkbox
{
	font-weight: normal;
}
.form-signin .form-control
{
	position: relative;
	font-size: 16px;
	height: auto;
	padding: 10px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.form-signin .form-control:focus
{
	z-index: 2;
}
.form-signin input[type="text"]
{
	margin-bottom: -1px;
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}
.form-signin input[type="password"]
{
	margin-bottom: 10px;
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}

.page-link {
    height:100%;
}

/*OVERLAY*/
#blocca_schermo {position:fixed; width:100%; height:100%; left:0; top:0; background:rgba(1,1,1,0.7); display:none; z-index:1100;}
#loading {position:fixed; width:5.71rem; height:5.71rem; left:50%; top:50%; margin-left:-2.85rem; margin-top:-2.85rem; border-radius:10px; z-index:111; color:#fff; background: url('../images/icons/loader.gif') no-repeat; background-size:cover; display:none }
#blocca_schermo h6 {position:relative; width:300px; height:300px; left:50%; top:50%; margin-left:-150px; margin-top:60px; color:#fff !important; text-align:center}

.pointer {
    cursor:pointer !important
}


.chat_box1 {
    width:90%; 
    margin-left:10%; 
    padding:0.25rem 1rem; 
    border-radius:10px; 
    border:1px dotted #cacaca; 
    background-color: var(--main); 
    color:#fff
}

.chat_box2{
    width:90%; 
    margin-right:10%; 
    padding:0.25rem 1rem; 
    border-radius:10px; 
    border:1px dotted #cacaca; 
    background-color: #fff; 
    color:#000
}

.chat_input_text{
    width:100%;
}


.danger-badge {
    background-color: red;
	border-radius: 50%;
	width: 20px;
	height: 20px;
	display: inline-block;
}

.warning-badge {
    background-color: orange;
	border-radius: 50%;
	width: 20px;
	height: 20px;
	display: inline-block;
}

.success-badge {
    background-color: green;
	border-radius: 50%;
	width: 20px;
	height: 20px;
	display: inline-block;
}

table td {
	vertical-align: middle;
}

.sub_parent_track td:first-child{
    padding-left: 2%;
}

.box-intervento{
    border-radius: 20px;
}

.drag-risorsa{
    padding: 7.5px;
    border: 1px solid #ddd;
    border-radius: 10px;
    margin-bottom: 2.5px;
    position: relative;
    background-color: white;
}

.nav-pills .dropdown-item
{
    padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);
    font-size: var(--bs-nav-link-font-size);
    font-weight: var(--bs-nav-link-font-weight);
    color: var(--bs-nav-link-color);
    text-decoration: none;
    background: 0 0;
    border: 0;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out;
    border-radius: var(--bs-nav-pills-border-radius);
}

.nav-pills .dropdown-item.active {
    color: var(--bs-nav-pills-link-active-color);
    background-color: var(--bs-nav-pills-link-active-bg);
}

#map { 
    flex-grow: 1; 
    width: 100%; 
    min-height: 80vh;
}

/* STILE PER I MARKER PERSONALIZZATI */
.custom-marker {
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    width: 35px !important;
    height: 35px !important;
    border: 2px white solid;
    box-shadow: 0 0 5px rgba(0,0,0,0.3);
    color: white;
    position: relative;
}

/* Colori */
.bg-default { background-color: #cfcfcf; }      /* Blu Bootstrap */
.bg-sede { background-color: #0d6efd; }      /* Blu Bootstrap */
.bg-fermo { background-color: #dc3545; }     /* Rosso Bootstrap */
.bg-movimento { background-color: #198754; }   /* Verde Bootstrap */

/* Triangolino sotto il cerchio per indicare il punto esatto */
.custom-marker::after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-top: 8px solid white; 
}

/* Allineamento icone Bootstrap */
.custom-marker i {
    line-height: 1;
    font-size: 1.2rem;
}

/* Responsive: se lo schermo è piccolo, la sidebar sparisce o si adatta */
@media (max-width: 991.98px) {
    #mySidebar {
        /* Reset dello stile fixed per mobile gestito da Bootstrap Offcanvas */
        position: fixed !important; 
        transform: translateX(-100%);
        visibility: hidden;
        z-index: 100000;
    }
    #mySidebar.show {
        visibility: visible;
        transform: translateX(0);
    }
    main {
        margin-left: 0 !important;
    }
}

@media (min-width: 992px) {
    /* Assicura che su desktop sia sempre visibile senza animazioni offcanvas */
    #mySidebar {
        transform: none !important;
        visibility: visible !important;
    }
    
    /* Aggiungi un margine al body solo su desktop per non coprire il contenuto */
    body {
        padding-left: 280px;
    }
}

@media (max-width: 768px) {
    .calendar_week {
        overflow-x: auto; /* Abilita lo scroll orizzontale */
        -webkit-overflow-scrolling: touch;
    }

    .week {
        display: flex;
        min-width: 800px; /* Forza una larghezza minima per non schiacciare le colonne */
    }

    /* Evita che le etichette degli operatori escano dai bordi */
    .drag-risorsa {
        word-wrap: break-word;
        white-space: normal;
    }
}