
/* CSS - Cascading Style Sheet */
/* Palette color codes */
/* Palette URL: http://paletton.com/#uid=13p0u0kex8W2uqu8af7lEqaulDE */

/* Feel free to copy&paste color codes to your application */

/* As hex codes */
.color-primary-0 { color: #19282C }	/* Main Primary color */
.color-primary-1 { color: #7A8184 }
.color-primary-2 { color: #39474B }
.color-primary-3 { color: #2D6D82 }
.color-primary-4 { color: #108FB9 }

/* As RGBa codes */
.rgba-primary-0 { color: rgba( 25, 40, 44,1) }	/* Main Primary color */
.rgba-primary-1 { color: rgba(122,129,132,1) }
.rgba-primary-2 { color: rgba( 57, 71, 75,1) }
.rgba-primary-3 { color: rgba( 45,109,130,1) }
.rgba-primary-4 { color: rgba( 16,143,185,1) }

/* Generated by Paletton.com Â© 2002-2014 */
/* http://paletton.com */




:root {
	--color-0: #272727;
	--color-1: rgba(122,129,132, 1);
	--color-2: rgba( 57, 71, 75, 1);
	--color-3: rgba( 45,109,130, 1);
	--color-4: rgba( 16,143,185, 1);
	--bg-color: var(--color-0);
	--bg-color-2: #1D1D1D;
	--bg-light-color: rgba( 48, 61, 65, 1);
	--bg-dark-color: rgba( 24, 31, 33, 1);
	--bg-hover-color: var(--color-2);
	--font-color: #9AA1A4;
	--font-color-2: #ddd;
	--font-color: #cccccc;
	--border-color: black;
	--measurement-detail-node-bg-light: var(--color-1);
	--measurement-detail-node-bg-dark: var(--color-2);
	--measurement-detail-area-bg-color: #eee;
}

#potree_container {
	width: 100%;
	height: 100%;
	background-color: var(--bg-color-2);
}

body {
	background-color: var(--bg-color-2);
}

#potree_sidebar_container {
	position: absolute;
	z-index: 0;
	width: 350px;
	height: 100%;
	overflow-y: scroll;
	font-size: 85%;
	border-right: 1px solid black;
	background-color: #272727;
	resize: horizontal;
	min-width: 250px;
}

#sidebar_root {
	position: absolute;
	min-height: 100%;
	height: 100%;
	width: calc(100% - 1px);
	border-right: 1px solid black !important;
	color: var(--font-color);
	font-family: Arial,Helvetica,sans-serif;
	font-size: 1em;
	background-color: var(--bg-color-2);
	overflow: hidden;
}

#sidebar_header {
	background-color: rgb(14, 23, 45);
	height: 64px;
	align-content: center;
}

.potree_failpage{
	width: 100%;
	height: 100%;
	background-color: white;
	position: absolute;
	margin: 15px;
}

.potree_failpage a{
	color: initial !important;
	text-decoration: underline !important;
}

.potree_info_text{
	color:		white;
	font-weight: bold;
	text-shadow:  1px  1px 1px black,
				  1px -1px 1px black,
				 -1px  1px 1px black,
				 -1px -1px 1px black;
}

.potree_message{
	width: 500px;
	background-color: var(--bg-color);
	padding: 5px;
	margin: 5px;
	border-radius: 4px;
	color: var(--font-color);
	font-family: Arial;
	opacity: 0.8;
	border: 1px solid black;
	display: flex;
	overflow: auto;
}

.potree_message_error{
	background-color: red;
}

#potree_description{
	position: absolute; 
	top: 10px; 
	left: 50%; 
	transform: translateX(-50%); 
	text-align: center;
	z-index:	1000;
}

.potree_sidebar_brand{
	margin:			1px 20px;
	line-height:	2em;
	font-size:		100%;
	font-weight:	bold;
	position:		relative;
	display:		flex; 
	flex-direction:	row;
}

#potree_sidebar_container a {
	color: rgba(255,255,255,0.6);
}

.accordion-inactive:after {
	content: '>';
	color: white;
	float: right;
	margin-left: 5px;
	transition-duration: 0.8s;
	transition-property: transform;
}

.accordion-active:after {
	content: '>';
	color: white;
	float: right;
	margin-left: 5px;
	transition-duration: 0.8s;
	transition-property: transform;
	transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
}

.potree_menu_toggle{
	position:		relative;
	float:			left;
	margin:			10px;
	background:		none;
	width:			2.5em;
	height:			2.5em;
	z-index:		100;
	cursor: 		pointer;
	display:		block;
}

#menu_buttons {
	position: absolute;
	display: inline-flex;
	flex-direction: column;
}

#potree_map_toggle{
	position:		absolute;
	float:			left;
	margin:			8px 8px;
	background:		none;
	width:			2.5em;
	height:			2.5em;
	z-index:		100;
	top:			calc(2.5em + 8px);
	cursor: 		pointer;
}

#potree_render_area {
	position: fixed;
	/*background: linear-gradient(-90deg, red, yellow);*/
	height: 100%;
	width: 100%;
	overflow: hidden;
	z-index: 1;
	-webkit-transition: left .35s;
	transition: left .35s;
	font-family: Arial,Helvetica,sans-serif;
}

#potree_onscreen_controls {
	position: fixed;
	/*background: linear-gradient(-90deg, red, yellow);*/
	height: 100%;
	width: 100%;
	overflow: hidden;
	z-index: 2;
	-webkit-transition: left .35s;
	transition: left .35s;
	font-family: Arial,Helvetica,sans-serif;
	pointer-events: none;
}

#potree_onscreen_controls * {
	pointer-events: all;
}

.potree-panel {
	border: 		1px solid black;
	border-radius: 	0.4em;
	padding: 		0px;
	background-color: var(--bg-light-color);
}

.potree-panel-heading{
	background-color: var(--bg-dark-color);
}

a:hover, a:visited, a:link, a:active{
	color: 				#ccccff;
	text-decoration: 	none;
}

.annotation{
	position:		absolute;
	padding:		10px;
	opacity:		0.5;
	transform:		translate(-50%, -30px);
	will-change:	left, top;
}

.annotation-titlebar{
	color:			white;
	background-color:	black;
	border-radius:	1.5em;
	border:			1px solid rgba(255, 255, 255, 0.7);
	font-size:		1em;
	opacity:		1;
	margin:			auto;
	display:		table;
	padding:		1px 8px;
	cursor: 		pointer;
}

.annotation-expand{
	color:			white;
	font-size:		0.6em;
	opacity:		1;
}

.annotation-action-icon{
	width:			20px;
	height:			20px;
	display:		inline-block;
	vertical-align:	middle;
	line-height:	1.5em;
	text-align:		center;
	font-family:	Arial;
	font-weight:	bold;
	cursor: 		pointer;
}

.annotation-action-icon:hover{
	filter:			drop-shadow(0px 0px 1px white);
	width:			24px;
	height:			24px;
	cursor: 		pointer;
	
}

.annotation-item {
	color:			white;
	background-color: 	black;
	opacity:		0.5;
	border-radius:	1.5em;
	font-size:		1em;
	line-height:	1.5em;
	padding:		1px 8px 0px 8px;
	font-weight:	bold;
	display:		flex;
	cursor:			default;
}

.annotation-item:hover {
	opacity:		1.0;
	box-shadow:		0 0 5px #ffffff;
}

.annotation-main{
	display:		flex;
	flex-grow:		1;
}

.annotation-label{
	display:		inline-block;
	height:			100%;
	flex-grow:		1;
	user-select:	none;
	-moz-user-select: none;
	z-index:		100;
	vertical-align:	middle;
	line-height:	1.5em;
	font-family:	Arial;
	font-weight:	bold;
	cursor: 		pointer;
	white-space:	nowrap;
}

.annotation-description{
	position:		relative;
	color:			white;
	background-color:	black;
	padding:		10px;
	margin:			5px 0px 0px 0px;
	border-radius:	4px;
	display:		none;
	max-width:		500px;
	width:			500px;
}

.annotation-description-close{
	filter:			invert(100%);
	float:			right;
	opacity:		0.5;
	margin:			0px 0px 8px 8px;
}

	
.annotation-description-content{
	color:			white;
}

.annotation-icon{
	width:		20px;
	height:		20px;
	filter:		invert(100%);
	margin:		2px 2px;
	opacity:	0.5;
}


canvas { 
	width: 100%; 
	height: 100% 
}

body{ 
	margin: 	0; 
	padding: 	0;
	position:	absolute;
	width: 		100%;
	height: 	100%;
	overflow:	hidden;
}

.axis {
  font: 		10px sans-serif;
  color: 		var(--font-color);
}

.axis path{
	fill: 		rgba(255, 255, 255, 0.5);
	stroke: 		var(--font-color);
	shape-rendering: crispEdges;
	opacity: 		0.7;
}

.axis line {
	fill: 		rgba(255, 255, 255, 0.5);
	stroke: 		var(--font-color);
	shape-rendering: crispEdges;
	opacity: 		0.1;
}

.tick text{
	font-size: 12px;
}

.scene_header{
	display:flex;
	cursor: pointer;
	padding: 2px;
}

.scene_content{
	padding: 5px 0px 5px 0px;
	/*background-color: rgba(0, 0, 0, 0.4);*/
}

.measurement_content{
	padding: 5px 15px 5px 10px;
	/*background-color: rgba(0, 0, 0, 0.4);*/
}

.propertypanel_content{
	padding: 5px 15px 5px 10px;
	/*background-color: rgba(0, 0, 0, 0.4);*/
}

.measurement_value_table{
	width: 100%;
}

.coordinates_table_container table td {
	width: 33%;
	text-align: center;
}

#scene_object_properties{
	margin:		0px;
}

.pv-panel-heading{
	padding: 	4px !important;
	display: 	flex; 
	flex-direction: row
}

.pv-menu-list {
	list-style-type: none;
	padding: 15px 0px 15px 0px;
	overflow: hidden;
	background-color: #333;
}

.pv-menu-list > *{
	margin: 	4px 20px;
}

.ui-slider {
	margin-top: 5px;
	margin-bottom: 10px;
	background-color: 	var(--color-1) !important;
	background: 		none;
	border: 			1px solid black;
}

.ui-selectmenu-button.ui-button{
	width: 		100% !important;
}

.pv-menu-list > li > .ui-slider{
	background-color: 	var(--color-1) !important;
	background: 		none;
	border: 			1px solid black;
}

.pv-menu-list .ui-slider{
	background-color: 	var(--color-1) !important;
	background: 		none;
	border: 			1px solid black !important;
}

.ui-slider-handle{
	border: 			1px solid black !important;
}

.ui-widget{
	box-sizing:border-box
}

.panel-body > li > .ui-slider{
	background-color: var(--color-1) !important;
	background: none;
	border: 1px solid black;
}

.panel-body > div > li > .ui-slider{
	background-color: var(--color-1) !important;
	background: none;
	border: 1px solid black;
}

.pv-select-label{
	margin: 1px;
	font-size: 90%;
	font-weight: 100;
}

.button-icon:hover{
	/*background-color:	#09181C;*/
	filter: drop-shadow(0px 0px 4px white);
}

/* Tooltip container */
.tooltip {
    display: inline-block;
}
    .tooltip .tooltiptext {
        visibility: hidden;
        background-color: black;
        color: #fff;
        text-align: center;
        border-radius: 6px;
        padding: 5px 0;
        /* Position the tooltip */
        width: 120px;
        position: absolute;
        top: -5px;
        left: 105%;
        z-index: 1;
    }

@keyframes tooltip-effect { /* Animation to show tooltip text after a few seconds of hover */
    0% {
        visibility: visible;
    }
}

.tooltip:hover {
    filter: drop-shadow(0px 0px 4px white);
}

.tooltip:hover .tooltiptext {
    animation: tooltip-effect 0.5s infinite 1.5s;
}


.ui-widget-content{
	/*color: var(--font-color) !important;*/
}

.accordion > h3 {
	background-color: var(--bg-color-2) !important;
	color: var(--font-color-2);
	cursor: pointer;
	margin: 0px 0px 0px 0px;
	padding: 15px 22px;
	font-size: 1em;
	font-weight: 400;
	border-top: 1px solid var(--bg-color);
	border-bottom: 1px solid var(--bg-color);
}

.accordion > h3:hover{
	filter: brightness(75%);
	color: white !important;
}

.accordion-content{
	padding: 0px 0px !important;
	border: none !important;
}

.icon-bar{
	height: 4px !important;
	border: 1px solid black;
	background-color: white;
	border-radius: 2px;
}

.canvas{
	-webkit-transition: top .35s, left .35s, bottom .35s, right .35s, width .35s;
	transition: top .35s, left .35s, bottom .35s, right .35s, width .35s;
}

#profile_window {
	background-color: var(--bg-color);
	font-family: Arial,Helvetica,sans-serif;
	font-size: 1em;
}

#profile_titlebar{
	background-color:	var(--bg-color-2);
	color: var(--font-color-2);
	text-shadow: 1px 1px 0 #000, -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000;
	font-size: 1em;
	font-weight: bold;
}

#profile_window_title{
	position: absolute;
	margin: 5px;
}

.profile-container-button{
	cursor: pointer;
}

.profile-button:hover{
	background-color: #0000CC;
}

.unselectable{
	user-select: 			none;
}

.selectable{
	user-select: 			text;
}

select {
	max-width: 100%;
	white-space: normal;
	/* For Firefox: */
	text-overflow: ellipsis;
}

.divider {
	display: block;
	text-align: center;
	overflow: hidden;
	white-space: nowrap;
	font-weight: bold;
	font-size: 90%;
	letter-spacing: 1px;
	margin-left: 0px;
	margin-right: 0px;
	margin-top: 1px;
	margin-bottom: 1px;
	padding: 1px !important;
}

.divider > span {
	position: 	relative;
	display: 	inline-block;
}

.divider > span:before,
.divider > span:after {
	content: 	"";
	position: 	absolute;
	top: 		50%;
	width: 		9999px;
	height: 	1px;
	background: #b2b2b2;
}

.divider > span:before {
	right: 100%;
	margin-right: 5px;
}

.divider > span:after {
	left: 100%;
	margin-left: 5px;
}

.has-ptqc {
    display:none;
}


.ol-dragbox {
  background-color: rgba(255,255,255,0.4);
  border-color: rgba(100,150,0,1);
  border: 1px solid red;
}

.text-icon{
	opacity:	0.5;
	height:		24px;
}

.text-icon:hover{
	opacity:	1.0;
}

.input-grid-cell{
	flex-grow: 1; margin: 0px 3px 0px 3px;
}

.input-grid-label{
	flex-grow: 1; 
	margin: 0px 3px 0px 3px; 
	text-align:center; 
	font-weight: bold;
}

.input-grid-cell > input{
	width: 100%
}

.invalid_value{
	color: #e05e5e;
}



/*Navigation Bar*/
.navbar-logo {
	display: block;
	height: 50px;
	margin-left: 5px;
}

#loading {
	position: fixed;
	width: 100%;
	height: 100%;
	z-index: 100000;
	background-color: var(--bg-color);
	opacity: 0.95;
	align-content: center;
}

@keyframes logo-load {
	0%		{opacity: 0.00}
	25%		{opacity: 0.5}
	50%		{opacity: 1.0}
	75%		{opacity: 0.5}
	100%	{opacity: 0.0}
}

.loading-graphic {
	margin-left: auto;
	margin-right: auto;
	z-index: 1;
	width: 300px;
	animation: logo-load 1.5s linear infinite;
}

.spinner {
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 1;
	width: 120px;
	height: 120px;
	margin: -76px 0 0 -76px;
	border: 16px solid var(--bg-color);
	border-radius: 50%;
	border-top: 16px solid var(--bg-color-2);
	-webkit-animation: spin 0.75s linear infinite;
	animation: spin 0.75s linear infinite;
}

/* Style the button that is used to open and close the collapsible content */
.collapsible {
    cursor: pointer;
    padding: 18px;
    width: 100%;
    border: none;
    text-align: left;
    outline: none;
    font-size: 15px;
}

    /* Add a background color to the button if it is clicked on (add the .active class with JS), and when you move the mouse over it (hover) */
    .active, .collapsible:hover {
        background-color: #ccc;
    }

/* Style the collapsible content. Note: hidden by default */
.collapsible-content-section {
    padding: 10px;
    display: none;
    overflow: hidden;
    background-color: var(--bg-color-2);
    text-align: left;
}

.collapsible:after {
    content: '\02795'; /* Unicode character for "plus" sign (+) */
    font-size: 13px;
    color: white;
    float: right;
    margin-left: 5px;
}

.active:after {
    content: "\2796"; /* Unicode character for "minus" sign (-) */
}

/*Panoramas Mini Map Section*/
.panoramas_map {
	position: relative;
	float: left;
	margin: 10px;
	background: none;
	width: 2.5em;
	height: 2.5em;
	z-index: 100;
	cursor: pointer;
	display: block;
}

/*Sidebar Capture Screenshot Section*/
.screenshot_capture {
	position: relative;
	float: left;
	margin: 10px;
	background: none;
	width: 2.5em;
	height: 2.5em;
	z-index: 100;
	cursor: pointer;
	display: block;
}

#screenshot_modal {
	width: 100%;
	display: none;
	height: 100%;
}

#screenshot_modal_content {
	height: 60%;
	left: 10%;
	padding: 10px;
}













/** 
 * OVERRIDES
 */


.ui-spinner-input{
	color: black;
}

.jstree-themeicon-custom{
	background-size: 16px !important;
}

.jstree-default .jstree-clicked{
	/*background-color: #ffffff !important;*/
	background-color: #34494f !important;
}

.jstree-default .jstree-hovered {
	background-color: #232323 !important;
}

.jstree-anchor{
	width: 100% !important;
}

.ui-state-default{
	background: #a6a9aa !important;
	border: 1px solid black;
	color: black;
}

.ui-state-active{
	background: #c6c9ca !important;
	color: black !important;
}

.cesium-viewer .cesium-viewer-cesiumWidgetContainer{
	position: absolute;
	height: 100%;
	width: 100%;
}




.zs_widget{
	padding: 2px;
	height: 4em;
	user-select: none;
}
.zs_core{
	overflow: hidden;
	position: relative;
	height: 100%;
}
.zs_handle{
	position: absolute;
	top: 0px;
	bottom: 0px;
	border: 1px solid black;
	border-radius: 3px;
	background-color: rgb(166, 169, 170);
	width: 8px;
	user-select: none;
	width: 1.2em;
	height: 1.2em;
	top: calc(50% - 0.6em);
}
.zs_stretch{
	position: absolute;
	top: 0px;
	bottom: 0px;
	border: 1px solid black;
	border-radius: 3px;
	background-color: rgb(166, 169, 170);
	width: 8px;
	user-select: none;
	width: 1.2em;
	height: 1.2em;
	top: calc(50% - 0.6em);
	color: black;
	font-weight: bold;
	font-size: 1.2em;
	font-family: arial;
}
.zs_handle:hover{
	background-color: lightgreen;
}
.zs_inside{
	position: absolute !important;
	width: 100%;
	border: 1px solid black;
	background-color: white;
	top: calc(50% - 0.326em);
	height: 0.652em;
	cursor: zoom-in;
}
.zs_outside{
	position: absolute !important;
	width: 100%;
	background-color: var(--color-1) !important;
	top: calc(50% - 0.326em);
	height: 0.652em;
	cursor: zoom-in;
}
.zs_visible_range_label{
	position: absolute;
	bottom: 0px;
	pointer-events:none;
}
.zs_visible_range_label_left{
	left: 0px;
}
.zs_visible_range_label_right{
	right: 0px;
}
.zs_chosen_range_label{
	position: absolute;
	pointer-events:none;
}

#potree_sidebar_container{
	overflow: hidden;
}

::-webkit-scrollbar {
	width: 6px;
	background-color: var(--bg-color);
}

::-webkit-scrollbar-track {

}

::-webkit-scrollbar-thumb {
	background-color: var(--color-1);
}

.propertypanel_content .heading{
	font-weight: bold;
	padding-top: 0.6em;
	padding-bottom: 0.1em;
}

@-webkit-keyframes spin {
	0% {
		-webkit-transform: rotate(0deg);
	}

	100% {
		-webkit-transform: rotate(360deg);
	}
}

@keyframes spin {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}

/* Container for the toggle */
.toggle-switch {
	position: relative;
	display: inline-block;
	width: 30px;
	height: 15px;
}

/* Hide default checkbox */
.toggle-switch input {
	opacity: 0;
	width: 0;
	height: 0;
}

/* The track */
.toggle-switch .slider {
	position: absolute;
	cursor: pointer;
	background-color: #ccc;
	border-radius: 24px;
	width: 100%;
	height: 100%;
	transition: background-color 0.3s;
	margin-top: 6px;
}

/* The circular slider */
.toggle-switch .slider::before {
	content: "";
	position: absolute;
	height: 10px;
	width: 10px;
	left: 4px;
	bottom: 2px;
	background-color: white;
	border-radius: 50%;
	transition: transform 0.3s;
}

/* Toggled state */
.toggle-switch input:checked + .slider {
	background-color: #4caf50;
}

.toggle-switch input:checked + .slider::before {
	transform: translateX(13px);
}


/* Basic styling for the button */
.checkbox-button {
	display: inline-block;
	padding: 5px 10px;
	background-color: var(--bg-light-color);
	border-radius: 5px;
	cursor: pointer;
	user-select: none;
	transition: background-color 0.3s, border-color 0.3s;
}

/* Custom Checkbox Button */
/* Hide the default checkbox */
.checkbox-input {
	display: none;
}

/* Style for the button when the checkbox is checked */
	.checkbox-input:checked + .checkbox-label {
		color: var(--bg-hover-color);
	}

/* Label styling */
.checkbox-label {
	display: block;
	text-align: center;
	font-family: Arial, sans-serif;
	font-size: 16px;
}