@import url("../header/header.css");
@import url("../footer/footer.css");
@import url("sardegnamobilita.media.css");

body {
	margin: 0;
    font-family: Titillium Web,Geneva,Tahoma,sans-serif;
	--font-family-sans-serif: "Titillium Web",Geneva,Tahoma,sans-serif;
	height: 100%;
	background-color: white;
}

#main.full iframe {
	width: 100%;
	height: 100%;
	border: 0;
}

#main.full {
	width: 100%;
	padding: 0;
	height: calc(100% - 218px);
}


#main {
	width: 100%;
	box-sizing: border-box;
    margin: 0 auto;
	padding: 0 20px;
	padding-bottom: 10px;
}

h3 {
	font-weight: bold;
	margin-top: 20px;
}
div.blocked {
	display:inline-block;
	width: 100%;
}
div.blocked select {
	width: auto;
	display:inline;
}

#main .box {
	display: flow-root;
	background-color: #EFEFEF;
    padding: 10px;
    border-radius: 10px;
    margin-bottom: 10px;
}

#main .box div, #main .box h3, #main .box form, #main .box input {
    margin-bottom: 5px;
    margin-top: 5px;
}



/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

input.numero_passeggeri {
	width: 30px;
	text-align: center;
}
input.numero_largo {
	width: 60px;
	text-align: center;
}

input.numero_carico {
	border: 0px;
}


.carica_dato input[type="checkbox"] {
    display:inline;
	position: relative;
    top: 3px;
}

.carica_dato input, .carica_dato label {
    display:block;
}
select {
	display:block;
	margin-bottom: 10px;
	max-width: 100%;
}


.carica_dato {
	float:left;
	margin-right:20px;
}

.button {
	float: left;
	margin-right: 10px;
	margin-top: 5px;
}

.dati_sessione {
	display: flow-root;
}

.nuova_rilevazione {
    margin-bottom: 10px;	
}

.nuova_rilevazione form {
	display: inline;
}

.dati_container {
    display: inline-block;
}

.caricamento {
	border: 1px solid gray;
    padding: 10px;
	margin-top: 10px;
}

.caricamento form {
	margin-bottom: 0;
}
.caricamento h2 {
	margin-top: 0;
	margin-bottom: 5px;
	float:none;
	display: flex;
	width: 100%;
}

.caricamento h3 {
	margin-top: 5px;
}

#IP_loading_img {
	display:none;
}

.dati_container .btn {
	float: right;
}

a {
	/*text-decoration: none;
	color: black;*/
}
a:hover {
	text-decoration: underline;
}

.inline {
	display: inline;
}

.form-main label {
    display: block;
    font-size: smaller;
}

.form-main div.radio label {
	display: inline;
    position: relative;
    top: -1px;
}

.send {
    float: right;
    height: 48px;
    background-color: #D7191F;
    font-size: .88889rem;
    font-weight: 600;
    text-transform: uppercase;
    color: white;
    box-shadow: inset 0 1px 0 rgb(255 255 255 / 15%), 0 1px 1px rgb(0 0 0 / 8%);
    -webkit-box-shadow: inset 0 1px 0 rgb(255 255 255 / 15%), 0 1px 1px rgb(0 0 0 / 8%);
    -webkit-appearance: button;
    border: 0 solid transparent;
    border-radius: 4px;
    white-space: initial;
    text-decoration: none;
    text-align: center;
    vertical-align: middle;
    padding: 0 24px;
	margin-bottom: 20px;
	min-width: 160px;
}
input[type=submit]:hover {
    cursor: pointer;
    background-color: #9C0409;
}
.title-header {
	margin-bottom: 20px;
	display: inline-block;
}

  .inline {
    display: inline;
}

.form-main {
    margin-top: 20px;
	/*overflow: auto;*/
}

.form-main label {
    display: block;
    font-size: smaller;
	margin-bottom: 3px;
}
.input-element {
    margin-bottom: 20px;
}

.tablecontainer {
	width: 100%;	
	overflow-x:auto;
}

table.orari {
	font-size: smaller;
	width: 100%;	
}

table.orari td {
	text-align: center;
}
table.orari a {
	text-decoration: none;
	color: black
}
table.orari a:hover {
	text-decoration: underline;
}

img.right {
	float: right;
	max-height: 50px;
}

#main .orari img {
	vertical-align: middle;
	margin-top: 0;
	display: inline;
}


.fermata {
	font-size: smaller;
	margin-bottom: 5px;
}

.easy-autocomplete, .easy-autocomplete input {
	width: 100% !important;	
    margin-bottom: 5px;
  }

#map {
	height: 400px;
	width: 100%;
	margin-top: 20px;
	margin-bottom: 20px;
}


.tablecontainer table.orari {
    display: block;
	margin-bottom: 10px;
}
table.orari th, table.orari td {
    text-align: left;
	min-width: 16px;
	max-width: 400px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.orario-cella {
	max-width: 60px;
	word-wrap: break-word;
}


  div#main {
    max-width: 100%;
    font-size: larger;
}
div#main.cruscotto {
  max-width: 1200px;
}
div#main.stretto {
	max-width: 800px;
}


.paginatore {
	text-align: center;
	margin: 10px 0px;
}

.block {
	display: flow-root;
  }
.errore {
	color: red;
	margin-bottom: 10px;
}

#main img {
	max-width: 100%;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-top: 20px;
  }

#main a img.download {
height: 20px;
margin: 0;
display: inline;
position: relative;
top: 4px;
}


#main .login label {
width: 100px;
display: inline-block;
}

.filtro {
	margin-bottom: 10px;
	display: inline;
}
.filtro form {
	display: block;
	font-size: 17px;
}

.filtro form input {
	border: 1px solid grey;
	min-width: 60px;
	font-size: 16px;
	text-align: center;
} 

.filtro form input[type="text"] {
    width: 200px;
}

.filtro form input[type=submit] {
	/*display: none;*/
	border: none;
}
.table-container {
	width: 100%;
	overflow: scroll;
	position: relative;
}

.table-container table tr:hover,.table-container table tr:hover td.sticky {
background-color: #fcc;
/*color: white;*/
}
.table-container table tr:hover a {
	/*color: white;*/
}
.table-container table thead tr:hover a {
	color: black;
}

table.orari th {
    /*background-color: lightgrey;*/
    border: 1px solid black;
}

table.orari tr:nth-child(even) {background: #fee}

.sticky {
    position: sticky;
    left: 0;
	top: 0;
	background-color: white;
  }

.filtro form input.data {
border: 1px solid gray;
height: 21px;
text-align: right; 
}


.full-screen {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
	height: 100%;
    background-color: white;
	z-index: 1000;
}

.full-screen table.orari {
	font-size: large;
}
.full-screen-button {
	position: fixed;
    top: 5px;
    right: 25px;
    z-index: 1001;
	margin: 0;
}
.full-screen-button-closed {
	float: right;
	display: inline;
	margin-bottom: 5px;
	margin-top: 10px;
}
#full-screen-button img {
	position: relative;
	cursor: pointer;
	margin: 0;
    background: white;
	width: 22px;
}

a.aggiungi {
    display: block;
    margin-top: 0;
    position: relative;
    top: -10px;
}
a.aggiungi img {
    display: inline !important;
    margin-top: 0 !important;
}

#main img.info {
	display: inline;
    margin: 0 5px;
    position: relative;
    top: 5px;
}

#loader {
    background-color: rgba(255, 255, 255, 0.8); /* Sfumatura sullo sfondo */
    width: 100vw;
    height: 100vh;
    z-index: 1000;
	position:fixed; 
	top:50%; 
	left:50%; 
	transform:translate(-50%, -50%); 
	z-index: 1000;
}
#loader img {
	position:fixed; 
	top:50%; 
	left:50%; 
	transform:translate(-50%, -50%); 
}