html,
body {
  margin:0;
  height:100%;
  font-family:Roboto,Helvetica,Arial,sans-serif
}
body {
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
}
body.loaded {
    opacity: 1;
}
a.fa-solid:link { 
  text-decoration: none; 
} 
a.fa-solid:visited { 
  text-decoration: none; 
} 
a.fa-solid:hover { 
  text-decoration: none; 
} 
a.fa-solid:active { 
  text-decoration: none; 
}
a[data-bs-toggle="collapse"]::before {
   font-family: "Font Awesome 6 Free";
   content: "\f106";
  float: right;
  color: white;
   padding-right: 3px;
   vertical-align: middle;
   font-weight: 900;
}
a[data-bs-toggle="collapse"].collapsed::before {
   font-family: "Font Awesome 6 Free";
   content: "\f107";
  float: right;
  color: white;
   padding-right: 3px;
   vertical-align: middle;
   font-weight: 900;
}

h3 {
	font-family: Roboto, Helvetica, Arial, sans-serif;
	font-size: 18px !important;
	margin: 0;
}
.gal-group-h3 {
	margin-top: 4px;
	margin-bottom: 0;
	margin-left: 12px;
}
hr {
	margin-top: 4px;
	margin-bottom: 4px;
}
label { 
	font-family: Roboto,Helvetica,Arial,sans-serif; 
	font-weight: 400;
	margin: 4px;
}
#map {
  position:absolute;
  top:0;
  bottom:0;
  width:100%
}
.modal-footer {
	padding-top:2px !important;
}
.tm-checkbox-label { 
	font-family: Roboto,Helvetica,Arial,sans-serif; 
	font-weight: 400;
	margin: 0;
}
.card-header {
	padding: 2px 4px 2px 12px;
	position: relative; /* for positioning the subtitle in layer-panel-title */
	background-color: #fff !important;
}
.panel-group {
	margin-bottom: 8px;
}
.gal-card {
	margin-left: 4px !important;
	margin: 0;
}
.gal-card-body {
	padding: 8px 15px 0px 15px !important;
	color: var(--bs-primary, #007bff) !important;
	background-color: white !important;
	border: 1px solid var(--bs-primary) !important;
}
.gal-required-field {
	color:rgb(220, 4, 4); font-size: 0.4em; vertical-align: middle;
}
.gal-card-title {
	font-size: 16px !important;
}
.card {
	margin-bottom: 6px;
}
.card.bg-primary {
    background-color: #337ab7 !important;
}
.card-header.bg-primary {
    background-color: #337ab7 !important;
}
.nav-link.bg-primary {
    background-color: #337ab7 !important;
}
.nav-link {
    color: #337ab7 !important;
	padding-top: 2px !important;
}
.nav-link.active {
    background-color: #337ab7 !important;
	color: white !important;
	padding-top: 2px !important;
}
.nav-item.bg-primary {
    background-color: #337ab7 !important;
}
.nav-pills {
	margin-top: 8px;
	margin-bottom: 4px;
	padding-bottom: 4px;
	border-bottom: 1px #e0e0e0 solid;
}
.nav > li > a {
	padding: 5px 8px;
}
.layer-panel-title {
	float: right;
}
.banner-bar	 {
	background-color: rgb(160, 39, 39);
	color: white;	
	padding: 1px 12px;
	margin: unset;
	font-size: 16px;
}
.title-bar {
	background-image: linear-gradient(to right, black, white);
	padding: 6px 10px;
	margin: unset;
	font-size: 20px;
}
.title-left {
	color: white;
	width: 60%;
	float: left;
	padding: 0;
}
.title-right {
	color: black;
	width: 38%;
	padding: 0;
	position: relative;
}
.dropdown-menu {
	position: absolute !important;
	top: 100%;
	left: auto;
	right: 0;
	z-index: 1050;
}
.mapheight {
	width: 100%;
	height: 580px;
	top: 0;
	bottom: 0;
}
.gal-wrapper {
	height: 100vh;
}
.gal-div-map-main {
	width:100%;
	height:60vh !important;
	position: relative;
	margin: 4px 0 4px 0;
}
.gal-map-vertical-stretch {
	position: relative;
	height: 100%;
	width: calc(100% - 30px);
}
.gal-map-main {
	padding-top: 4px;
	height: calc(100% - 2px);
}
.gal-toolbar {
	position: absolute;
	bottom: 2px;
	left: 14px;
	background-color: rgba(196, 196, 196, 0.9);
	border-radius: 3px;
}
.gal-toolbar-btn0 {
	float: left;
	padding: 4px 8px 2px 8px;
}
.gal-toolbar-btn {
	margin-left: 1px;
	float: left;
	padding: 4px 8px 2px 8px;
}
.map-spinner {
	position: relative;
	bottom: 50%;
	left: 50%;
}
.chart-spinner {
	position: absolute;
	top: 50px;
	left: 50%;
	z-index: 1000;
}
.gal-chart-div {
	position: relative;
	width: 50% !important;
	float: left;
}
.gal-chart-main {
	height:calc( 26vh - 30px );
	max-height:260px;
}
.gal-div-data {
	width: 100%;
	min-height: 30vh;
	position: relative;
	margin: 8px 0 4px 0;
	height: 100%;
}
.map_inset {
	width: 200px;
	height:200px;
	border: 1px silver solid;
	box-shadow: 4px 4px 2px silver;
	margin: 4px 4px 8px 0;
}
.fullheight {
	height: 700px;
}
.sidebar {
	overflow-y: auto;
	max-height: calc(100% - 48px);
}
.label-layer-radio2 {
	font-size: 9px;
	position: absolute;
	bottom: -4px;
	left: 36px;
}

.gal-legend-table {
	background-color: transparent;
	border: 1px none;
	font-size: 12px;
	padding: 1px;
}
td.gal-legend-table-header {
	background-color: transparent;
	border: 1px none;
	height: 14px;
	padding-left: 4px;
}
td.gal-legend-table-caption {
	background-color: transparent;
	border: 1px none;
	height: 14px;
	padding-left: 4px;
}
td.gal-legend-table-value {
	background-color: transparent;
	border: 1px solid #eee;
	width: 48px;
	height: 14px;
	padding-left: 4px;
}
td.gal-legend-table {
	background-color: #f9f9f9;
	border: 1px none;
	width: 36px;
	height: 14px;
}
.gal-legend-table-c0 {
	background-color: #ffffff;
	padding-left: 2px;
	padding-right: 2px;
	border: 1px solid #f0f0f0;
}
.gal-legend-table-c1 {
	background-color: #ffffff;
	padding-left: 2px;
	padding-right: 2px;
	border: 1px solid #f0f0f0;
}
.gal-legend-div {
	background-color: white; /*#D3D3D3;*/
	border: 1px solid #ffffff;
	border-radius: 4px;
}
.gal-legend-right {
	background-color: white;
}
.gal-legend-right-clr {
	background-color: white;
}
.gal-legend-item {
	margin-top: 1px;
	padding:2px 4px;
	border: 0;
}
.gal-legend-poly-div {
	border-top: 1px solid #c0c0c0;
}
.gal-legend-point-dot {
	background-color: #FF0000;
}
.gal-legend-point-solid {
	background-color: #FF0000;
}
.gal-legend-line-solid {
	background-color: #FF0000;
}
.gal-legend-flow {
	display: inline-block;
	border-right: 1px solid #c0c0c0;
}
h3.gal-legend-item-hdr {
	font-size: 14px;
	padding: 2px 0 4px 0;
	border: 0px none;
	margin: 0px;
	font-weight: 500;
}
.gal-legend-class-cpt {
	margin-left: 2px;
	margin-right: 4px;
	font-size: 12px !important;
}
.gal-legend-class {
	border: 0px none;
}

#th-invite-to-click {
	color: gray;
	position: absolute; 
	left:80px; 
	top:8px; 
	padding: 4px; 
	background: lightyellow;
}
.fade-in {
	-webkit-animation: fadeinout 8s linear forwards;
    animation: fadeinout 8s linear forwards;
	opacity: 0;
}

@-webkit-keyframes fadeinout {
  50% { opacity: 1; }
}

@keyframes fadeinout {
  50% { opacity: 1; }
}
a.btn-collapse {
	text-decoration: none;
}
.sources-lead {
	color: gray;
	text-decoration: underline;
	font-size: calc(100% - 2px);
}
.sources {
	color: gray;
	font-size: calc(100% - 2px);
}
.source {
	padding-left: 14px;
	font-size: calc(100% - 2px);
	font-style: italic;
}
.charts {
	background-color: #ffffff;
}
.chart {
	height: calc(100% - 20px);
}
.northarrow {
	position: absolute;
	right: 80px;
	bottom: 40px;
	height: 80px;
	width: 80px;
	border: 0 none;
	z-index: 999;
}
.scale-bar-container {
	position: absolute;
	right: 10px;
	bottom: 8px;
	height: 20px;
	width: 360px;
	border: 0 none;
	z-index:1000;
	text-align: center;
}
.ol-scale-line-inner{margin:auto}
.ol-scale-line{background:unset;border-radius:4px;bottom:8px;left:unset;right:16px;padding:2px;position:absolute;width:200px}
.ol-scale-bar{position:absolute;bottom:8px;right:8px}
.ol-tooltip {
	color: white;
}
.ol-tooltip-measure {
	color: yellow;
}
.ol-mouse-position {
	margin-right: 14px;
	font-size: 11px;
	top: 8px;
	right: 8px;
	position: absolute;
}
input[type="range"] {
  display: block;
  width: 100%;
}
.gal-dropdown {
	float: right;
}
.gal-layergroup {
	background-color: #fff;
}
.gal-layergroup-header {
	font-size: 20px;
  padding: 2px 4px 2px 12px;
  position: relative;
}
#togglePassword i {
    pointer-events: none; /* Stops click event from affecting the <i> icon */
}
.modal-footer-btn {
	margin-left: 12px !important;
}

/*table.gal-dyn {
	width: 100%;
	border-collapse: collapse;
	margin-top: 20px;
}
th.gal-dyn, td.gal-dyn {
	border: 1px solid #ddd;
	padding: 8px;
	text-align: left;
}
th.gal-dyn {
	background-color: #f4f4f4;
	cursor: pointer;
}
tr.gal-dyn:hover {
	background-color: #f1f1f1;
}*/
th.tm-left {
	text-align: left;
	padding: 4px;
}
td.tm-left {
	text-align: left;
	padding: 4px;
}
th.tm-right {
	text-align: right;
	padding: 4px 6px 4px 4px !important;
}
td.tm-right {
	text-align: right;
	padding: 4px 6px 4px 4px !important;
}
th.tm-center {
	text-align: center;
	padding: 4px;
}
td.tm-center {
	text-align: center;
	padding: 4px;
}
.tm-value-not-editable {
	padding-left: 12px;
}
.gal-editor-table {
	width: 100%;
}
.gal-editor-tr {
	width: 100%;
}
.gal-editor-tdname {
	width: 40%;
	vertical-align: top;
	padding-top: 6px;
}
.gal-editor-tdvalue {
	width: 60%;
}
.tm-textarea {
	height: 100px;
}
.gal-tm-container {
    overflow-y: auto; /* Enable vertical scrolling */
    overflow-x: auto; /* Enable horizontal scrolling if needed */
}
.gal-detail-container {
	margin-top: 6px;
}
.gal-table-container {
	margin-top: 2px;
}
.gal-tm-hint {
	padding-left: 12px;
	font-style: italic;
	font-size:smaller
}
.gal-tm-count {
	font-style: italic;
	font-size: smaller;
}
.tm-action-column {
    white-space: nowrap;
    width: 1%;
}

.cookie-consent {
    position: fixed;
    bottom: 0;
    width: 100%;
    background-color: #f8f9fa;
    padding: 10px;
    box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.1);
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 1000;
}

.cookie-consent p {
    margin: 0;
}

.cookie-consent button {
    margin-left: 10px;
}
body.pp {
	opacity: 1;
    display: flex;
    justify-content: center; /* Center horizontally */
    align-items: center; /* Center vertically */
    height: 100vh; /* Full viewport height */
    margin: 0; /* Remove default margin */	
}
div.pp {
	padding: 12px;
	color: black;
	font-size: 14px;
	margin: 12px;
	max-width: 800px;
}
.titlebar.pp {
	height: 24px;
}
.tm-form-box {
	margin: 0;
}

.au-message {
	font-size: 18px;
}
#au-titleid {
	font-size: 30px;
}
.te-tracks-list {
	min-height: 200px;
	max-height: 50vh; /* Set a suitable height */
	overflow-y: auto; /* Enables vertical scrolling */
}
.te-track-item {
	padding: 2px 12px 2px 12px !important;
}
.gal-datasheet {
	width: 50% !important;
	float: left;	
}
.gal-data-panel {
	overflow-y: auto;	
}
.gal-toolbar-bar {
	margin: 4px 0 4px 0;
	padding: 0;
}
.split {
    display: flex;
    flex-direction: row;
}

.gutter {
    background-color: #f9f9f9;
    background-repeat: no-repeat;
    background-position: 50%;
}

.gutter.gutter-horizontal {
    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAeCAYAAADkftS9AAAAIklEQVQoU2M4c+bMfxAGAgYYmwGrIIiDjrELjpo5aiZeMwF+yNnOs5KSvgAAAABJRU5ErkJggg==');
    cursor: col-resize;
}