/* =============================================
   IDLe Home - Custom Styles & Responsive Overrides
   ============================================= */

/* --- Indicator Positioning --- */

.temp-indicator {
	left: 50px;
}

.temp-scale-base::after {
	left: 50px!important;
	width: var(--sidebar)!important;
}

.lux-indicator {
	width: 70%;
	left: 50px;
}

.lux-scale-base::after {
	left: 50px!important;
	width: 70%!important;
}

.rain-scale {
	left:50px
}

/* --- Raw Data --- */

.raw-data-output {
	font-size: small; 
	color: var(--medium-dark-blue);
	margin-bottom: -15px;
    margin-top: 15px;
}

.raw-data-history {
	max-height: 450px;
}

rawdata {
	display: flex;
	margin-top: 40px;
	padding-block: 12px ;
	background: linear-gradient(var(--medium-dark-gray) 50%, var(--dark-gray) 50%);
	border-radius: 0 20px 20px 0;
	overflow: hidden;
	position: relative;
	z-index: 1;
	height: 600px;
}

rawdata::before {
	content: '';
	background-color: #000;
	display: block;
	width: 5px;
	height: 100vh;
	position: absolute;
	top: 0;
	left: 25%;
	overflow: hidden;
}

rawdata::after {
	content: '';
	background-color: #000;
	display: block;
	width: 2px;
	height: 100vh;
	position: absolute;
	top: 0;
	left: -1px;
	overflow: hidden;	
}

.raw-panel {
	width: 12%;
	max-width: 130px;
	height: 100px;
	margin: auto;
	padding-top: 10px;
	padding-left: .4rem;
	background-color: var(--light-gray);
	border-top: 5px solid #000;
	border-bottom: 5px solid #000;
	font-size: var(--sub-fonts);
	font-weight: bold;
	color: #000;
}

.raw-inside {
	flex: 1;
	min-height: 180px;
	background-color: #000;
	border-radius: 0 20px 20px 0;
	padding: 8px;
	z-index: 2;
}

.raw-inside::before {
	content: ''; 
	background-color: var(--primary-gray);
	display: block;
	width: 15%;
	min-width: 60px;
	height: 10px;
	position: absolute;
	top: 17px;
	left: 1px;
	overflow: hidden;
}

.raw-inside::after {
	content: ''; 
	background-color: var(--dark-gray);
	display: block;
	width: 15%;
	min-width: 60px;
	height: 10px;
	position: absolute;
	bottom: 12px;
	left: 1px;
	overflow: hidden;
	margin-bottom: 5px;
}

/* --- SVG & Internal Sensors --- */

.svg-container {
	display: flex;
}

#svg-overlay {
	position: absolute;
    top: 0;
    left: 0;
	pointer-events: none;
}

#svg-floor-container {
	width: 100%;
	height: auto;
	max-width: 100%;
}

/* --- Icons & Legend --- */

.fa-circle {
	margin-left: 15px;
	margin-right: 15px;
}

.internal-legend-text {
	position: absolute;
	font-size: 14px;
	color: slategrey;
	width: max-content;
}

.windinfo > .col-6 {
	padding-right: 0px;
}

/* --- Sensor Grid --- */

.sensor-col {
	margin-bottom: 20px;
}

/* Make sensor panels fluid */
.sensor-col .panel-24 {
	width: 100%;
	max-width: 100%;
}

.sensor-col .panel-base {
	width: 100%;
	max-width: 100%;
}

.sensor-col .lcars-frame {
	max-width: 100%;
}

.first-needle-dynamic::after {
	left: 460px;
}

.second-needle-dynamic::after {
	left: 64px;
}

/* =============================================
   RESPONSIVE: CSS Zoom Scaling
   
   Instead of reflowing/stacking content, we 
   uniformly scale the entire page down so 
   everything stays "at a glance" on smaller 
   screens — preserving the LCARS layout.
   ============================================= */

@media (max-width: 1400px) {
	.wrap-everything {
		zoom: 0.9;
	}

	.panel-24::after {
		left: unset;
	}

	.first-needle-dynamic::after,
	.second-needle-dynamic::after {
		left: unset;
	}

	.panel-24 {
		left: 40px;
	}
	
}

@media (max-width: 1200px) {
	.wrap-everything {
		zoom: 0.78;
	}
}

@media (max-width: 1024px) {
	.wrap-everything {
		zoom: 0.65;
	}
}

@media (max-width: 768px) {
	.wrap-everything {
		zoom: 0.5;
	}
}

/* Firefox fallback (zoom not supported before Firefox 126) */
@supports not (zoom: 0.9) {
	@media (max-width: 1400px) {
		.wrap-everything {
			transform: scale(0.9);
			transform-origin: top left;
			width: 111.11%; /* 1/0.9 */
		}
	}

	@media (max-width: 1200px) {
		.wrap-everything {
			transform: scale(0.78);
			transform-origin: top left;
			width: 128.21%; /* 1/0.78 */
		}
	}

	@media (max-width: 1024px) {
		.wrap-everything {
			transform: scale(0.65);
			transform-origin: top left;
			width: 153.85%; /* 1/0.65 */
		}
	}

	@media (max-width: 768px) {
		.wrap-everything {
			transform: scale(0.5);
			transform-origin: top left;
			width: 200%; /* 1/0.5 */
		}
	}
}
