@font-face{font-family:Skyeye;src:url('/NotoSansThai.ttf') format('truetype');font-weight:100 900;font-display:swap}
:root{--ink:#102c45;--navy:#05273e;--navy-deep:#031e32;--cyan:#00b8d8;--teal:#007c82;--muted:#526d82;--line:#cbdde9;--surface:#eff7fc;--elevation:0 4px 14px -6px #496d8a45}
.skyeye-app{font-family:Skyeye,'Segoe UI',Tahoma,sans-serif;color:var(--ink);background:#eaf3f9;min-height:100vh;font-size:13px;line-height:1.5}.skyeye-app *{scrollbar-width:thin;scrollbar-color:#8caabc transparent}.skyeye-app ::selection{background:#9be8ee;color:#06283b}.skyeye-app :focus-visible{outline:3px solid #007c82;outline-offset:3px}.skyeye-app h1,.skyeye-app h2,.skyeye-app h3{text-wrap:balance}.skyeye-app a{color:#006f79;text-decoration-thickness:1px;text-underline-offset:3px}.skyeye-app button{font:inherit;min-height:38px;border-radius:9px}.skyeye-app input,.skyeye-app select,.skyeye-app textarea{font:inherit;caret-color:#007c82;border-color:#b8cfdf;border-radius:9px;min-width:0}.skyeye-app input::placeholder{color:#526d82;opacity:1}.skyeye-app [hidden]{display:none!important}.skyeye-app .primary{background:#007d83;color:white;border-color:transparent}.skyeye-app .primary:hover{background:#00646b}.ui-icon{width:21px;height:21px;flex:none;vertical-align:middle}.skyeye-app button>.ui-icon,.skyeye-app a>.ui-icon{width:18px;height:18px}.skyeye-app h2>.ui-icon,.skyeye-app h3>.ui-icon{color:#168697;margin-right:8px}.skyeye-app .skyeye-sidebar{width:228px;padding:28px 17px 18px;background:linear-gradient(152deg,#082c46,#031d30 74%,#0c4565);box-shadow:none;z-index:60;display:flex;flex-direction:column;gap:0;position:fixed;inset:0 auto 0 0;color:#e4f6ff}.skyeye-app .app-brand{width:100%;max-width:none;padding:0;margin:0 0 28px}.skyeye-app .skyeye-brand-lockup{border-radius:8px;padding:8px 8px 10px}.skyeye-app .skyeye-brand-tagline{font-size:7.5px;letter-spacing:.09em}.skyeye-app .main-navigation{display:grid;gap:10px;margin:9px 0 0;overflow:visible}.skyeye-app .main-navigation .nav-group{display:flex;align-items:center;gap:13px;min-height:49px;background:transparent;border:1px solid transparent;color:#d5e8f3;text-align:left;font-size:14px;font-weight:540;padding:12px 13px;border-radius:10px;box-shadow:none}.skyeye-app .main-navigation .nav-group>.ui-icon{width:22px;height:22px}.skyeye-app .main-navigation .nav-group:hover{background:#16425a;color:#fff}.skyeye-app .main-navigation .nav-group.active{background:linear-gradient(110deg,#075a70,#078c9c);border:1px solid #37bdce;color:white;box-shadow:0 4px 12px -5px #00172380}.skyeye-app .nav-alarm-count{margin-left:auto;min-width:22px;text-align:center;font-size:11px;color:#8a2333;background:#ffe0e3;padding:2px 5px;border-radius:7px}.skyeye-app .sidebar-caption{margin-top:28px;color:#a8c8d9;font-size:11px;padding-left:13px}.skyeye-app .skyeye-sidebar footer{margin-top:auto;padding-top:32px;color:#c5e1ed}.skyeye-app .profile-summary{display:flex;align-items:center;gap:12px;padding:12px 10px;border-top:1px solid #34576e;border-bottom:1px solid #34576e}.skyeye-app .profile-summary>.ui-icon{width:26px;height:26px}.skyeye-app .profile-summary strong{display:block;font-size:12px;font-weight:560;overflow-wrap:anywhere;color:#e0f0f8}.skyeye-app .profile-summary span{display:block;font-size:11px;color:#9ec3d6}.skyeye-app .skyeye-sidebar footer button{display:flex;align-items:center;justify-content:center;gap:10px;background:transparent;color:#d4eaf3;border:1px solid #46677d;font-size:12px;padding:7px;margin-top:9px;min-height:36px}.skyeye-app .main{margin-left:228px;padding:0 22px 22px;max-width:2400px;min-width:0}.skyeye-app .workspace-top{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 2px 12px}.skyeye-app .workspace-top>div:last-child{display:flex;align-items:center;gap:18px}.skyeye-app .workspace-top h1{font-size:24px;font-weight:680;margin:2px 0 0;letter-spacing:-.02em}.skyeye-app .workspace-group{font-size:12px;color:#526d82}.skyeye-app .workspace-timezone{font-size:11px;color:#526d82}.skyeye-app .workspace-top button{background:transparent;border:0;padding:8px}.skyeye-app .workspace-top.overview-top{display:none}.skyeye-app .section-tabs{display:flex;gap:5px;align-items:center;margin:0 0 20px;padding:5px 0 12px;border-bottom:1px solid #c5dae7;overflow:auto;white-space:nowrap}.skyeye-app .section-tabs a{text-decoration:none;padding:9px 17px;color:#3c5a71;border-radius:8px;font-size:13px}.skyeye-app .section-tabs a:hover{background:#dcecf5}.skyeye-app .section-tabs a.active{background:#fff;color:#006d79;font-weight:650;box-shadow:var(--elevation)}.skyeye-app .screen-footer{margin:24px 0 0;font-size:10px;color:#597488}.mobile-menu-toggle,.nav-scrim{display:none}
.skyeye-app .panel,.dashboard-panel,.sensor-panel{border:0;border-radius:14px;background:linear-gradient(115deg,#fff,#f1f8fd);box-shadow:var(--elevation);margin:0;min-width:0}.skyeye-app .panel{margin:16px 0}.skyeye-app .panel.pad{padding:22px}.skyeye-app h2{font-size:15px;font-weight:650;margin:0}.skyeye-app h3{font-size:14px;font-weight:650;margin:0}.skyeye-app .note{margin:14px 0;border-radius:9px;font-size:12px;border:0;box-shadow:none}.skyeye-app .note.error{color:#8a2736;background:#ffecef}.skyeye-app .note.warning{color:#705018;background:#fff2d6}.section-heading{display:flex;align-items:center;gap:12px;padding:17px 18px 12px;min-width:0}.section-heading h2{display:flex;align-items:center;gap:0;margin:0;flex:1}.section-heading>a{display:inline-flex;align-items:center;gap:5px;font-size:11px;text-decoration:none;font-weight:600;white-space:nowrap}.section-heading>span{color:#526d82;font-size:11px}.skyeye-app .table-scroll{max-width:100%;overscroll-behavior-inline:contain}.skyeye-app table{font-size:11px;line-height:1.5;font-variant-numeric:tabular-nums}.skyeye-app th{background:#e4f0f8;color:#26465e;font-size:11px;padding:11px 13px;font-weight:650}.skyeye-app td{padding:10px 13px;border-bottom:1px solid #dbe8f1;color:#1a3850}.skyeye-app tbody tr:nth-child(even){background:#f2f8fc}.skyeye-app tbody tr:hover{background:#e4f2f6}.skyeye-app td small{display:block;color:#577185;font-size:10px}.skyeye-app .table-badges{gap:4px;max-width:210px}.skyeye-app .status-badge{font-family:inherit;font-size:10px;padding:3px 8px;line-height:1.4}.skyeye-app .status-badge.stopped,.skyeye-app .status-badge.unknown{color:#456177;background:#dfeaf2}.skyeye-app .status-badge.online,.skyeye-app .status-badge.running{color:#116044;background:#cef3e5}.skyeye-app .status-badge.offline{color:#704451;background:#eee2e8}.skyeye-app .status-badge.offline3d{color:#fff;background:#9c3d57}.skyeye-app .device-link{font-weight:650;text-decoration-thickness:1px}.skyeye-app .button-link{display:inline-flex;gap:7px;min-height:37px;font-size:12px;border:1px solid #bed4e2;border-radius:9px;background:#fff;padding:8px 12px}.skyeye-app .button-link.primary{color:white;background:#007d83}.skyeye-app .sortable-table th button{font:inherit;color:inherit;min-height:20px;padding:0;gap:6px;background:transparent;border:0}.skyeye-app .sort-icon{height:12px;width:10px}.skyeye-app .pager{font-size:11px;padding:12px 18px}.skyeye-app .empty.compact{min-height:50px;padding:15px 4px;font-size:12px}.overdue,.quality-flag{color:#a3354c;font-weight:650}.quality-flag{padding:2px 7px;background:#fff0dc;border-radius:5px}
.fleet-hero{position:relative;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:178px;margin:0 -22px 0;padding:34px 28px;background:#04283f url('/fleet-banner.png') center 55%/cover;color:#fff;isolation:isolate}.fleet-hero::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#032a43ed 0%,#042c45cc 35%,#042c4520 75%)}.skyeye-app .fleet-hero h1{font-size:clamp(22px,2.2vw,34px);font-weight:650;letter-spacing:-.025em;margin:0 0 8px;line-height:1.4;max-width:24ch}.fleet-hero p{font-size:12px;color:#c8e5f1;margin:0}.hero-health{display:flex;gap:16px;align-items:center;align-self:flex-start;color:#daedf6}.hero-health>span:first-child{display:grid;grid-template-columns:22px auto;column-gap:7px;font-size:11px}.hero-health>span:first-child>.ui-icon{grid-row:span 2}.hero-health strong{display:block;font-size:11px;font-weight:500}.hero-health-state{padding:10px 13px;background:#f1ffffed;border-radius:10px;color:#173e55;text-align:center}.hero-health-state strong{margin-top:4px}.hero-health-state .status-badge{font-size:10px}.hero-health>button{background:#ffffff17;border-color:#86b8cd;color:#fff;min-width:36px;padding:8px}.illustration-caption{position:absolute;right:12px;bottom:8px;font-size:8px;color:#bfd8e5}.overview-filter{display:grid;grid-template-columns:repeat(6,minmax(85px,1fr)) minmax(100px,1fr) auto;gap:10px;padding:15px 16px;margin:16px 0;background:#fff;border-radius:14px;box-shadow:var(--elevation)}.skyeye-app .overview-filter label,.skyeye-app .report-filters label{display:grid;font-size:11px;font-weight:600;gap:5px;margin:0;min-width:0}.overview-filter select,.overview-filter input{width:100%;padding:8px 9px;font-size:11px;height:36px;background:#f4f9fd}.overview-filter .filter-actions{display:flex;align-items:end;gap:7px;grid-column:auto}.overview-filter .filter-actions button{display:flex;align-items:center;gap:6px;min-height:36px;font-size:11px;padding:7px 10px}.status-strip{display:grid;grid-template-columns:1.55fr repeat(7,minmax(0,1fr));gap:10px}.skyeye-app .status-tile{display:block;text-align:left;min-width:0;border:1px solid transparent;box-shadow:var(--elevation);border-radius:12px;background:linear-gradient(130deg,#fff,#e5f1fa);padding:14px 13px;color:#193c55}.status-tile>span{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;white-space:nowrap}.status-tile>span .ui-icon{width:19px;height:19px;color:#557e99}.status-tile>strong{display:block;font-size:28px;font-weight:670;line-height:1.3;margin-top:7px;font-variant-numeric:tabular-nums;letter-spacing:-.025em}.status-tile strong small{font-size:10px;font-weight:500;color:inherit;margin-left:5px}.status-tile em{display:block;font-size:11px;color:#526d82;font-style:normal;margin:3px 0 0}.skyeye-app .status-tile.selected{border-color:#138897;background:#e3f7f7}.skyeye-app .status-tile.all{background:linear-gradient(130deg,#042c46,#075975);color:#fff}.status-tile.all>span .ui-icon,.status-tile.all em{color:#c5ecf1}.status-tile.online>span .ui-icon,.status-tile.running>span .ui-icon{color:#008765}.skyeye-app .status-tile:hover{border-color:#009ba7;transform:translateY(-1px)}.status-scope{font-size:10px;color:#536e82;margin:10px 2px 14px;max-width:none}.overview-panels{display:grid;grid-template-columns:1fr 1.08fr 1fr;gap:15px}.geography-body{display:grid;grid-template-columns:43% 1fr;gap:14px;padding:0 17px 16px}.overview-map{height:205px;background:#dceff4;border-radius:10px;overflow:hidden;isolation:isolate}.overview-map .leaflet-control-attribution{font-size:7px}.overview-map .leaflet-control-container{position:relative;z-index:500}.geo-total{padding:9px 0;color:#163f58}.geo-total strong{font-size:30px;line-height:1.2;font-variant-numeric:tabular-nums;margin-right:8px}.geo-total span{font-size:10px}.project-breakdown{list-style:none;margin:8px 0;padding:0}.project-breakdown li{display:flex;justify-content:space-between;gap:10px;font-size:11px;padding:5px 0;border-bottom:1px solid #dbe9f2}.project-breakdown li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:160px}.project-breakdown strong{font-variant-numeric:tabular-nums}.geography-body>div>small{font-size:10px}.priority-total{display:flex;align-items:center;gap:10px;background:#e6f2fa;margin:0 18px 10px;padding:8px 12px;border-radius:8px}.priority-total strong{font-size:29px;font-variant-numeric:tabular-nums}.priority-total span{font-size:11px}.priority-levels{display:flex;gap:15px;padding:0 18px 8px;flex-wrap:wrap}.priority-levels>span{display:flex;align-items:center;gap:5px;font-size:12px}.priority-levels .status-badge{font-size:9px}.priority-list{padding:0 18px 15px}.priority-list>div{display:flex;align-items:center;gap:7px;font-size:10px;padding:5px 0;border-bottom:1px solid #dfebf3}.priority-list>div>span:not(.status-badge){flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.priority-list .device-link{font-size:11px;white-space:nowrap}.priority-list .status-badge{font-size:8px;padding:2px 5px}.pm-totals{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 18px 10px}.skyeye-app .pm-totals>*{padding:8px 12px;background:#e7f3fb;border:0;border-radius:8px;color:#21465f;text-align:left;text-decoration:none;min-height:68px}.pm-totals span{display:block;font-size:10px}.pm-totals strong{font-size:26px;line-height:1.35;font-variant-numeric:tabular-nums}.pm-preview{padding:0 18px 12px;margin:0;list-style:none}.pm-preview li{display:flex;justify-content:space-between;padding:5px 0;border-bottom:1px solid #dce9f2;font-size:11px}.pm-preview span{font-variant-numeric:tabular-nums}
.overview-performance{display:grid;grid-template-columns:1fr 1.08fr 1fr;gap:15px;margin-top:16px}.overview-performance .daily-metric-cards{grid-column:1/3;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.daily-metric{padding:17px 18px 13px;background:linear-gradient(135deg,#fff,#e2f3fb);border-radius:14px;box-shadow:var(--elevation);min-width:0}.metric-label{display:flex;align-items:center;gap:8px}.metric-label>.ui-icon{color:#1b8598}.skyeye-app .metric-label h3{font-size:12px;font-weight:600}.metric-number{font-size:clamp(26px,2.5vw,36px);font-weight:670;line-height:1.35;letter-spacing:-.03em;margin-top:15px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.metric-number>span{font-size:12px;letter-spacing:0;font-weight:500;color:#365d75}.daily-metric p{font-size:10px;color:#3a6278;margin:7px 0 0;line-height:1.6}.daily-metric p>span{display:block;color:#536f82}.daily-metric.energy_kwh{background:linear-gradient(135deg,#08334f,#08637b);color:#fff}.daily-metric.energy_kwh .metric-label>.ui-icon,.daily-metric.energy_kwh .metric-number>span,.daily-metric.energy_kwh p,.daily-metric.energy_kwh p>span{color:#d1f0f4}.overview-trend{min-width:0}.overview-trend .section-heading{padding:13px 16px 3px}.skyeye-app .compact-select{margin:0}.compact-select select{min-height:30px;padding:4px 9px;font-size:10px;max-width:150px;background:#fff}.trend-period{font-size:9px;color:#526d82;margin:1px 16px 0}.daily-bars{padding:4px 18px 10px;position:relative}.bar-ceiling{text-align:right;font-size:9px;color:#567288;margin-bottom:3px}.daily-bar-plot{display:flex;align-items:end;gap:5px;height:100px;border-bottom:1px solid #b7d1df;overflow-x:auto;overscroll-behavior:contain}.daily-bar{flex:1;min-width:23px;display:flex!important;flex-direction:column;align-items:center;height:100%;position:relative;background:none!important;border:0!important;padding:0!important;border-radius:2px!important;color:#30546c!important;text-decoration:none;font-family:inherit!important;min-height:0!important}.bar-track{display:flex;flex-direction:column;justify-content:end;height:72px;width:68%;min-width:9px;background:#e6eff6;border-radius:3px 3px 0 0;overflow:hidden}.bar-fill{display:block;min-height:2px;background:linear-gradient(#24b7c3,#078896);width:100%;border-radius:3px 3px 0 0}.bar-fill.no-data{min-height:0;background:transparent}.bar-value{font-size:8px;line-height:1.5;min-height:13px;max-width:100%;font-variant-numeric:tabular-nums}.bar-date{min-height:16px;font-size:8px;white-space:nowrap;margin-top:3px}.daily-bar:hover .bar-fill,.daily-bar:focus .bar-fill{background:#03556a}.bar-readout{font-size:9px;color:#526d82;display:block;min-height:14px;margin-top:5px;line-height:1.4}.metric-basis{font-size:10px;color:#536e82;max-width:none;margin:12px 2px 5px}.metric-method{font-size:10px;color:#49677d;margin:0 2px 16px;line-height:1.6;max-width:100ch}.metric-method summary{cursor:pointer;text-underline-offset:3px}.metric-method p{margin:8px 0;max-width:100ch}.overview-fleet{margin-top:15px}.overview-fleet .section-heading{padding:15px 18px}.overview-fleet table{min-width:1150px}.report-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;padding:20px;margin-bottom:20px}.report-filters input,.report-filters select{width:100%;background:#f5faff;padding:9px 11px;min-height:39px}.report-filters .filter-actions{display:flex;align-items:end;gap:10px;grid-column:1/-1}.daily-metric-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.report-chart{margin-top:20px}.report-chart .daily-bar-plot{height:190px}.report-chart .bar-track{height:160px;max-width:60px}.report-chart .daily-bar{min-width:35px}.report-chart .bar-date{font-size:10px}.report-chart .bar-value{font-size:10px}.report-chart .bar-readout{font-size:11px}.report-table{margin-top:18px}.report-table table{min-width:780px}.report-note{font-size:11px;color:#526d82;margin:10px 18px 16px;max-width:100ch}.report-table td:first-child{white-space:normal;max-width:330px}
.device-workspace{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:17px}.device-workspace>*{grid-column:1/-1;min-width:0}.device-breadcrumb{display:flex;align-items:center;gap:10px;font-size:12px}.device-breadcrumb>a:first-child{display:flex;gap:8px;align-items:center;text-decoration:none}.device-breadcrumb>.button-link{margin-left:auto}.device-identity-hero{display:grid;grid-template-columns:minmax(190px,1fr) 220px 1.4fr;gap:26px;align-items:center;position:relative;padding:17px 6px 8px}.skyeye-app .device-primary-identity h2{font-size:36px;font-weight:690;line-height:1.25;letter-spacing:-.025em;overflow-wrap:anywhere}.device-primary-identity>p{font-size:12px;color:#395d75;margin:10px 0}.device-primary-identity>p.machine-time{font-size:11px;color:#3c627b;line-height:1.8}.device-primary-identity small{font-size:10px;color:#526f84}.device-statuses{margin:14px 0;gap:5px}.generator-figure{position:relative;margin:0;min-width:0}.generator-figure img{display:block;width:100%;height:165px;object-fit:contain;filter:drop-shadow(0 9px 5px #22527524)}.generator-figure figcaption{text-align:center;font-size:8px;color:#647d90;margin-top:-8px}.device-hero-specs{display:grid;grid-template-columns:1fr 1fr;gap:15px 24px;margin:0;padding:0 0 0 16px;border-left:1px solid #bcd5e3}.device-hero-specs dt{font-size:10px;color:#506f85}.device-hero-specs dd{font-size:12px;font-weight:620;margin:2px 0 0;overflow-wrap:anywhere}.skyeye-app .instrument-timeline{display:flex;gap:15px;flex-wrap:wrap;padding:9px 0;margin:0;font-size:10px;color:#516f84;border-bottom:1px solid #c4dbe8;background:none}.skyeye-app .collector-indicator{font-size:10px}.device-tabs{display:flex;gap:0;background:#f6fbfe;border-radius:12px;padding:5px;box-shadow:var(--elevation);overflow:auto;white-space:nowrap}.skyeye-app .device-tabs button{display:flex;flex:1;align-items:center;justify-content:center;gap:10px;font-size:12px;font-weight:600;background:transparent;border:0;border-radius:9px;min-height:43px;color:#25475f}.skyeye-app .device-tabs button[aria-selected=true]{background:linear-gradient(120deg,#087f8d,#073c56);color:#fff;box-shadow:0 3px 8px -5px #005268}.skyeye-app .device-tabs button:hover{background:#def1f5}.skyeye-app .device-tabs button[aria-selected=true]:hover{background:#07546c}.live-sensor-grid{display:grid;grid-template-columns:1fr 1.5fr 1.35fr 1.15fr 1fr;gap:12px}.sensor-panel{padding:16px 15px;overflow:hidden}.skyeye-app .sensor-panel h3{font-size:12px;display:flex;align-items:center;gap:0;white-space:nowrap}.sensor-panel h3>.ui-icon{width:20px;height:20px;margin-right:7px}.load-panel{background:linear-gradient(140deg,#054861,#05263f);color:#fff}.skyeye-app .load-panel h3>.ui-icon{color:#58d5d8}.load-gauge{position:relative;margin:9px auto 0;max-width:180px}.load-gauge svg{display:block;width:100%;height:auto}.gauge-track,.gauge-value{fill:none;stroke:#2d617b;stroke-width:15;stroke-linecap:round}.gauge-value{stroke:#39e4bf;stroke-dasharray:0 100}.load-gauge>strong{position:absolute;left:0;right:0;bottom:5%;font-size:35px;text-align:center;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.load-gauge>strong>small{font-size:20px;color:#e0fcff}.load-panel>p{font-size:13px;text-align:center;font-weight:600;margin:5px 0 0;color:#d6f6fc}.load-panel>p>span{display:block;font-size:9px;color:#b3d8e9;font-weight:400}.phase-readings{margin:13px 0 8px;font-variant-numeric:tabular-nums}.phase-readings>div{display:grid;grid-template-columns:1.15fr repeat(3,1fr);gap:5px;padding:6px 0;border-bottom:1px solid #d3e4ef;text-align:right;align-items:center}.phase-readings>div:first-child{font-size:9px;padding-bottom:1px;border:0}.phase-readings span{font-size:9px;color:#496b82;text-align:left}.phase-readings strong{font-size:14px;font-weight:650}.sensor-inline{display:flex;gap:12px;justify-content:space-between}.sensor-reading{min-width:0;padding:10px 0 4px;font-variant-numeric:tabular-nums}.sensor-reading>span{display:block;font-size:9px;color:#42657c;margin-bottom:3px}.sensor-reading>strong{font-size:23px;font-weight:650;color:#113a55;white-space:nowrap;letter-spacing:-.02em;line-height:1.35}.sensor-reading>strong>small{font-size:10px;letter-spacing:0;color:#42657c;font-weight:500;margin-left:4px}.sensor-reading>small{display:block;font-size:9px;color:#567387}.sensor-inline .sensor-reading>strong{font-size:17px}.sensor-inline .sensor-reading>strong>small{font-size:9px;margin-left:2px}.sensor-quad{display:grid;grid-template-columns:1fr 1fr;gap:3px 12px;margin-top:8px}.sensor-quad .sensor-reading>strong{font-size:20px}.sensor-quad .sensor-reading:first-child strong,.sensor-quad .sensor-reading:nth-child(2) strong{color:#007c69}.fuel-panel>.sensor-reading{padding-top:17px}.fuel-panel>.sensor-reading>strong{font-size:29px}.fuel-level-track{height:8px;background:#c8dfe8;border-radius:5px;margin:7px 0 5px;overflow:hidden}.fuel-level-track>span{display:block;height:100%;background:#0fb5aa}.energy-panel .sensor-reading{padding-top:15px}.energy-panel .sensor-reading>strong{font-size:24px}.energy-panel>small{font-size:8px;color:#536f83;display:block;margin-top:6px}.device-daily-summary{margin-top:16px}.device-daily-summary .daily-metric-cards{gap:12px}.device-daily-summary .daily-metric{padding:14px 18px}.device-daily-summary .metric-number{font-size:26px;margin-top:7px}.device-daily-summary .metric-basis{margin-top:10px}.device-daily-summary .metric-method{margin-bottom:0}.skyeye-app .device-period-bar{display:flex;gap:14px;align-items:end;justify-content:space-between;margin:0}.skyeye-app .device-period-bar form{display:flex;gap:10px;align-items:end}.skyeye-app .device-period-bar label{font-size:11px;display:flex;align-items:center;gap:10px}.skyeye-app .device-period-bar select{min-height:36px;padding:7px 12px;background:#fff}.skyeye-app .device-chart-panel{box-shadow:var(--elevation);border:0;background:linear-gradient(115deg,#fff,#f2f9fd);border-radius:14px;padding:17px}.skyeye-app .chart-heading{gap:10px;align-items:center}.skyeye-app .chart-heading h3{font-size:13px;display:flex;align-items:center}.skyeye-app .chart-heading>span{font-size:10px}.skyeye-app .device-chart-body{min-height:190px}.device-workspace>#device-panel-trends{grid-column:1}.device-workspace>#device-panel-alarms{grid-column:2}.device-workspace[data-active-tab=trends]>#device-panel-trends,.device-workspace[data-active-tab=alarms]>#device-panel-alarms{grid-column:1/-1}.skyeye-app .device-controller-alarms{margin:0;height:100%;font-size:11px}.skyeye-app .device-controller-alarms .panel-heading{padding:17px 16px 10px;gap:10px}.skyeye-app .device-controller-alarms .panel-heading h2{font-size:13px}.skyeye-app .device-controller-alarms .panel-heading p{font-size:9px}.skyeye-app .device-controller-alarms .panel-heading button{font-size:10px;padding:7px 10px}.skyeye-app .controller-current-reading{padding:9px 16px;font-size:9px;gap:7px}.skyeye-app .device-alarm-meta{font-size:9px;padding:10px 16px}.skyeye-app .device-latest-alarm{padding:7px 16px;font-size:11px}.skyeye-app .device-alarm-history{padding:0 16px;max-height:110px;overflow:auto}.skyeye-app .device-alarm-event{font-size:9px;gap:7px;padding:7px 0}.skyeye-app .device-alarm-foot{padding:9px 16px;font-size:9px}.extra-device-charts{margin-top:17px;grid-template-columns:repeat(3,minmax(0,1fr))}.device-info-grid{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:16px}.device-info-grid>.dashboard-panel{padding:18px 20px}.device-info-grid h3{display:flex;align-items:center;font-size:14px;margin:0 0 14px}.detail-list{margin:0}.detail-list>div{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #d3e4ee;padding:7px 0;font-size:11px}.detail-list dt{color:#42647d}.detail-list dd{margin:0;font-weight:600;text-align:right}.device-info-grid p{font-size:12px;margin:9px 0}.device-coordinate{font-variant-numeric:tabular-nums}.raw-readings{padding:15px 20px;font-size:12px}.raw-readings summary{cursor:pointer}.raw-readings table{margin-top:15px;min-width:0!important}.skyeye-app .device-log-panel{margin:0}.skyeye-app .telemetry-line{stroke:#048a95}.skyeye-app .telemetry-area{fill:#14afbd20}.skyeye-app .chart-tooltip{box-shadow:0 5px 16px -5px #163c5c66;border-radius:8px}.skyeye-app .chart-plot{border-radius:4px}.skyeye-app .operator-filters{background:#f8fbfe}.skyeye-app .panel-heading h2{font-size:16px}.skyeye-app .rule-templates{flex-wrap:wrap}
@media(min-width:1650px){.skyeye-app .main{padding-left:28px;padding-right:28px}.fleet-hero{margin-inline:-28px;padding-inline:34px;min-height:198px}.status-tile>strong{font-size:34px}.status-tile>span{font-size:12px}.status-tile em{font-size:12px}.overview-map{height:220px}.overview-performance{grid-template-columns:1fr 1fr 1.35fr}.daily-metric{padding:20px 22px}.live-sensor-grid{gap:16px}.sensor-panel{padding:20px}.device-identity-hero{grid-template-columns:1fr 260px 1.4fr;min-height:210px}.generator-figure img{height:190px}.skyeye-app .device-primary-identity h2{font-size:42px}.sensor-reading>strong{font-size:27px}.sensor-inline .sensor-reading>strong{font-size:21px}.sensor-quad .sensor-reading>strong{font-size:25px}}
@media(max-width:1250px){.skyeye-app .skyeye-sidebar{width:204px;padding:24px 14px 16px}.skyeye-app .main{margin-left:204px;padding-inline:17px}.fleet-hero{margin-inline:-17px;padding:24px 23px;min-height:169px}.hero-health{gap:9px}.hero-health>span:first-child{display:none}.skyeye-app .fleet-hero h1{font-size:25px}.overview-filter{grid-template-columns:repeat(4,minmax(0,1fr))}.overview-filter .filter-actions{grid-column:auto}.status-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.status-tile{padding:12px 14px!important}.status-tile>strong{font-size:27px}.status-tile em{display:inline;margin-left:8px}.status-tile>strong{display:inline-block}.status-tile.all{grid-column:auto}.overview-panels{grid-template-columns:1fr 1fr}.geography-panel{grid-row:span 1}.pm-panel{grid-column:1/-1}.pm-panel .pm-totals{display:flex;float:left;width:50%}.pm-panel .pm-totals>*{flex:1}.pm-panel .pm-preview{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.overview-performance{grid-template-columns:1fr}.overview-performance .daily-metric-cards{grid-column:auto}.overview-trend .daily-bar-plot{height:115px}.overview-trend .bar-track{height:85px}.overview-trend .bar-value,.overview-trend .bar-date{font-size:10px}.overview-trend .bar-readout{font-size:10px}.device-identity-hero{grid-template-columns:1fr 170px 1.2fr;gap:15px}.skyeye-app .device-primary-identity h2{font-size:29px}.device-hero-specs{gap:12px}.device-hero-specs dd{font-size:11px}.live-sensor-grid{grid-template-columns:1fr 1.35fr 1.2fr}.fuel-panel,.energy-panel{grid-column:auto}.load-panel{grid-row:span 2;display:flex;flex-direction:column;justify-content:center}.fuel-panel .sensor-inline{justify-content:start;gap:25px}.energy-panel{display:flex;flex-direction:column;justify-content:center}.device-workspace{grid-template-columns:minmax(0,1fr) minmax(270px,1fr)}.extra-device-charts{grid-template-columns:1fr}.device-info-grid{grid-template-columns:1fr 1fr}.device-info-grid>.dashboard-panel:last-child{grid-column:1/-1}}
@media(max-width:850px){.skyeye-app .skyeye-sidebar{position:fixed;inset:0 auto 0 0;width:250px;height:100dvh;max-height:none;display:flex;padding:25px 18px;transform:translateX(-105%);transition:transform .22s cubic-bezier(.16,1,.3,1);overflow:auto}.skyeye-app.nav-open .skyeye-sidebar{transform:translateX(0)}.skyeye-app .app-brand{display:block;width:100%;max-width:none;margin-bottom:25px}.skyeye-app .app-brand .skyeye-brand-lockup{padding:9px 10px}.skyeye-app .app-brand .skyeye-brand-tagline{font-size:8px}.skyeye-app .main-navigation{display:grid;overflow:visible;margin:0;gap:10px}.skyeye-app .main-navigation .nav-group{min-height:50px;font-size:14px}.skyeye-app .skyeye-sidebar footer{display:block}.skyeye-app .main{margin:0;padding:0 16px 20px;max-width:none}.skyeye-app .mobile-menu-toggle{display:flex;position:absolute;top:14px;left:14px;z-index:50;align-items:center;justify-content:center;width:37px;height:37px;border:1px solid #a4c3d4;background:#f5fbff;color:#123c54;padding:7px;border-radius:9px}.skyeye-app .nav-scrim{display:block;position:fixed;inset:0;background:#02182899;border:0;border-radius:0;width:100%;height:100dvh;z-index:55}.skyeye-app .workspace-top{min-height:74px;padding:12px 0 14px 49px;gap:10px}.skyeye-app .workspace-top h1{font-size:20px}.skyeye-app .workspace-group{font-size:10px}.skyeye-app .workspace-timezone{display:none}.skyeye-app .workspace-top>div:last-child{gap:0}.skyeye-app .section-tabs{margin-bottom:16px;padding-bottom:9px;gap:2px}.skyeye-app .section-tabs a{font-size:12px;padding:8px 12px}.fleet-hero{margin-inline:-16px;min-height:200px;align-items:end;padding:65px 20px 23px;gap:10px}.skyeye-app .fleet-hero h1{font-size:25px;max-width:23ch;line-height:1.45}.fleet-hero p{font-size:10px;max-width:29ch}.hero-health{position:absolute;top:16px;left:64px;right:15px;justify-content:end;gap:9px}.hero-health-state{display:flex;gap:7px;align-items:center;background:#e7fbfff2;padding:5px 9px;max-width:100%}.hero-health-state strong{font-size:9px;margin:0}.hero-health-state .status-badge{font-size:9px;padding:2px 4px}.hero-health>button{display:none}.overview-filter{gap:11px;padding:14px;margin-top:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.overview-filter .filter-actions{grid-column:auto;align-items:end;justify-content:end}.status-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.skyeye-app .status-tile{padding:12px 10px!important}.status-tile>span{font-size:10px;gap:5px;white-space:normal}.status-tile>span .ui-icon{width:16px;height:16px}.status-tile>strong{font-size:25px}.status-tile strong small{display:none}.status-tile em{font-size:9px}.status-scope{font-size:9px;line-height:1.6;margin:8px 0 12px}.overview-panels{grid-template-columns:1fr 1fr;gap:12px}.geography-body{grid-template-columns:42% 1fr;gap:10px;padding-inline:13px}.overview-map{height:180px}.section-heading{padding:14px 14px 10px;gap:8px}.skyeye-app .section-heading h2{font-size:13px}.section-heading>a{font-size:10px}.project-breakdown li span{max-width:140px}.priority-levels{gap:8px}.priority-list{padding-inline:13px}.pm-panel .pm-totals{width:48%}.daily-metric-cards,.overview-performance .daily-metric-cards{gap:11px}.daily-metric{padding:15px 14px}.metric-number{font-size:27px}.metric-label{gap:5px}.skyeye-app .metric-label h3{font-size:11px}.metric-label>.ui-icon{width:18px;height:18px}.daily-metric p{font-size:9px}.overview-fleet .section-heading>span{display:none}.report-filters{grid-template-columns:repeat(2,minmax(0,1fr));padding:16px;gap:12px}.device-workspace{display:block}.device-workspace>*{margin-bottom:16px}.device-breadcrumb{font-size:11px;gap:8px}.device-breadcrumb>.button-link{padding:6px 9px;font-size:10px;min-height:32px}.device-breadcrumb>.button-link>.ui-icon{width:15px;height:15px}.device-identity-hero{grid-template-columns:1fr 175px;gap:12px;padding:8px 0}.device-hero-specs{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;border-left:0;border-top:1px solid #bdd7e5;padding:15px 0 0}.device-primary-identity>p{font-size:11px}.generator-figure img{height:160px}.skyeye-app .device-primary-identity h2{font-size:31px}.skyeye-app .instrument-timeline{font-size:9px;gap:7px 12px;margin-bottom:16px}.device-tabs{margin:0 0 16px}.skyeye-app .device-tabs button{font-size:11px;gap:6px;min-height:42px;padding:9px 14px;flex:1 0 auto}.live-sensor-grid{gap:12px}.skyeye-app .device-period-bar{margin:18px 0 16px}.device-principal-chart{margin-bottom:16px}.skyeye-app .device-controller-alarms{margin-bottom:16px}.skyeye-app .device-controller-alarms .device-alarm-history{max-height:none}.device-info-grid{gap:12px}.raw-readings{margin-top:15px}.extra-device-charts{grid-template-columns:1fr 1fr;margin-bottom:16px}.skyeye-app .chart-time{font-size:8px}.skyeye-app .panel.pad{padding:18px}.skyeye-app .operator-filters{padding:16px}.skyeye-app .screen-footer{font-size:9px}}
@media(max-width:560px){.overview-panels{grid-template-columns:1fr}.pm-panel{grid-column:auto}.pm-panel .pm-totals{float:none;display:grid;width:auto}.pm-panel .pm-preview{display:block}.geography-body{grid-template-columns:44% 1fr;gap:17px}.overview-map{height:190px}.skyeye-app .section-heading h2{font-size:14px}.priority-total{margin-bottom:14px}.priority-levels{gap:16px}.priority-list>div{padding:7px 0}.project-breakdown li span{max-width:155px}.skyeye-app .status-tile{padding:11px 8px!important}.status-tile>span{font-size:9px;gap:4px;min-height:26px;line-height:1.25}.status-tile>span .ui-icon{width:15px;height:15px}.status-tile>strong{font-size:25px;margin-top:4px}.status-tile em{display:block;margin:0;font-size:9px}.status-strip{gap:7px}.daily-metric-cards,.overview-performance .daily-metric-cards{grid-template-columns:1fr}.overview-performance{gap:12px}.daily-metric{display:grid;grid-template-columns:1fr auto;align-items:center;padding:15px 17px}.metric-label{grid-column:1}.metric-number{grid-column:2;grid-row:1/3;margin:0;font-size:29px}.daily-metric p{grid-column:1;margin:4px 0 0;font-size:9px}.daily-metric p>span{font-size:8px}.metric-number>span{font-size:11px}.skyeye-app .metric-label h3{font-size:12px}.daily-metric-cards{gap:10px}.overview-performance .daily-metric-cards{gap:10px}.overview-trend .section-heading{padding-top:16px}.overview-trend .daily-bar-plot{height:140px}.overview-trend .bar-track{height:106px}.metric-basis{font-size:9px;line-height:1.6}.metric-method{font-size:9px}.report-table .section-heading{flex-wrap:wrap}.report-table .section-heading h2{flex-basis:45%}.report-chart .section-heading{align-items:start}.report-chart .section-heading>span{font-size:10px}.report-filters .filter-actions button{font-size:12px;flex:1}.device-breadcrumb{flex-wrap:wrap;line-height:1.8}.device-breadcrumb>.button-link{margin-left:auto}.device-breadcrumb>a:first-child{font-size:10px}.device-breadcrumb>a:first-child>.ui-icon{width:16px;height:16px}.device-identity-hero{grid-template-columns:1fr 120px;gap:10px}.skyeye-app .device-primary-identity h2{font-size:29px}.device-primary-identity>p{font-size:10px}.device-statuses{gap:4px;max-width:230px}.device-primary-identity .status-badge{font-size:9px;padding:3px 6px}.generator-figure img{height:125px}.device-primary-identity>p.machine-time{font-size:10px;margin:10px 0 0}.device-primary-identity small{font-size:9px}.device-hero-specs{grid-template-columns:1fr 1fr;gap:12px 20px}.device-hero-specs dt{font-size:9px}.device-hero-specs dd{font-size:11px}.live-sensor-grid{grid-template-columns:1fr 1fr;gap:10px}.load-panel{grid-row:auto}.electrical-panel{grid-column:1/-1;grid-row:2}.engine-panel{grid-column:1/-1;grid-row:3}.sensor-quad{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.sensor-quad .sensor-reading>span{font-size:8px;min-height:24px}.sensor-quad .sensor-reading>strong{font-size:18px}.sensor-quad .sensor-reading>strong>small{font-size:8px;margin-left:2px}.fuel-panel{grid-row:1;grid-column:2}.fuel-panel .sensor-inline{gap:8px;justify-content:space-between}.fuel-panel .sensor-inline .sensor-reading>strong{font-size:17px}.energy-panel{grid-column:1/-1;flex-direction:row;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px 14px}.energy-panel h3{width:100%}.energy-panel .sensor-reading{padding-top:7px}.energy-panel>small{width:100%;margin:0;font-size:9px}.sensor-panel{padding:15px}.skyeye-app .sensor-panel h3{font-size:11px}.load-gauge{max-width:155px;margin-top:15px}.load-gauge>strong{font-size:32px}.device-daily-summary .daily-metric-cards{gap:10px}.device-daily-summary .daily-metric{padding:14px 16px}.device-daily-summary .metric-number{margin:0;font-size:27px}.skyeye-app .device-period-bar label{font-size:10px;gap:7px}.skyeye-app .device-period-bar form{gap:7px}.skyeye-app .device-period-bar select{padding:7px 9px}.skyeye-app .device-period-bar> .button-link{font-size:10px;padding:8px}.skyeye-app .device-period-bar form>button{font-size:10px;padding:8px}.skyeye-app .device-period-bar{gap:8px;flex-wrap:wrap}.device-info-grid{grid-template-columns:1fr}.device-info-grid>.dashboard-panel:last-child{grid-column:auto}.extra-device-charts{grid-template-columns:1fr}.device-tabs{margin-inline:-2px;max-width:calc(100vw - 28px)}.skyeye-app .device-controller-alarms .panel-heading h2{font-size:14px}.skyeye-app .device-controller-alarms .panel-heading p{font-size:10px}.device-workspace #device-panel-logs .panel-heading{align-items:start;gap:10px}.device-workspace #device-panel-logs .panel-heading h2{font-size:14px}.device-workspace #device-panel-logs .panel-heading p{font-size:10px}.device-workspace #device-panel-logs .panel-heading button{font-size:10px;max-width:100px}}
@media(prefers-reduced-motion:reduce){.skyeye-app .skyeye-sidebar{transition:none}.skyeye-app .status-tile:hover{transform:none}}

/* Inspection batch: give the device's identity and live data the first viewport. */
.skyeye-app .device-main .workspace-top{min-height:46px;padding:10px 0;float:right}.skyeye-app .device-main>.section-tabs{min-height:46px;padding:5px 0 8px;margin:0 0 14px;max-width:70%;border-bottom:0}.device-main .device-identity-hero{padding-top:7px;padding-bottom:5px}.device-main .device-breadcrumb{margin-bottom:0}.device-main .device-workspace{clear:both}.device-main .device-hero-specs{gap:12px 22px}
@media(max-width:850px){.skyeye-app .device-main .workspace-top{float:none;min-height:61px;padding:12px 0 10px 48px}.skyeye-app .device-main>.section-tabs{display:none}.device-main .device-identity-hero{padding-top:2px}.device-main .device-workspace>*{margin-bottom:14px}.device-main .device-breadcrumb{margin-bottom:10px}}
