:root{font-family:DIN Alternate,Bahnschrift,-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;font-synthesis:none;font-size:13px;color:#c3e3f8;background:#051325}*{box-sizing:border-box}body{margin:0}button,a,input,select{-webkit-tap-highlight-color:transparent}button,input,select{font:inherit}button{border:0;background:none;color:inherit;cursor:pointer}button:disabled{opacity:.35;cursor:not-allowed}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid #43d7f8;outline-offset:3px}a{color:inherit;text-decoration:none}button svg{flex-shrink:0}button{transition:background .2s,color .2s,border-color .2s}h1,h2,h3,p{margin:0}button:hover:not(:disabled){color:var(--bright);background:var(--hover)}.app-shell{--bg:#05162a;--panel:linear-gradient(120deg,#0c2941e8,#071b31ed);--border:#21506c;--line:#20435b;--text:#bcdef1;--muted:#6c9bb8;--bright:#6ee9ff;--cyan:#36c9ed;--hover:#1f75982b;--subtle:#153e59;--input:#0a263b;--head:#123951;--shadow:#00cfff18;--warning:#f3ba69;height:100dvh;min-height:650px;display:flex;flex-direction:column;overflow:hidden;color:var(--text);background:radial-gradient(ellipse at 50% 25%,#0c3458 0,transparent 55%),var(--bg);transition:background .4s,color .4s}.command-header{position:relative;display:flex;align-items:center;justify-content:space-between;height:88px;padding:0 24px;flex-shrink:0;border-bottom:1px solid var(--border);background:linear-gradient(90deg,transparent,#1771a41a,transparent)}.command-header:after{position:absolute;bottom:-2px;left:26%;right:26%;height:2px;content:"";background:linear-gradient(90deg,transparent,#41d5fd,transparent);box-shadow:0 0 14px #35bdff80}.brand{display:flex;gap:10px;align-items:center;z-index:1}.brand-mark{width:37px;height:40px;display:grid;place-items:center;border:1px solid var(--border);color:var(--bright);background:var(--hover);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px)}.brand strong{font-size:16px;letter-spacing:1px;color:var(--bright)}.brand small{display:block;font-size:8px;letter-spacing:1.7px;color:var(--muted);margin-top:6px}.command-title{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:20px;text-align:center;white-space:nowrap}.command-title h1{font-size:30px;font-weight:650;letter-spacing:6px;color:#d9f4ff;text-shadow:0 0 20px #56caff3b}.command-title p{font-size:9px;letter-spacing:5px;color:var(--muted);margin-top:7px}.title-wing{width:45px;height:16px;border-top:2px solid #39b2db88;border-bottom:1px solid #39b2db55;transform:skew(-35deg)}.title-wing.left{transform:skew(35deg)}.header-meta{font-size:11px;text-align:right;z-index:1;color:var(--muted);font-variant-numeric:tabular-nums}.header-meta time{font-size:14px;color:var(--text);letter-spacing:.5px}.header-meta>div{display:flex;gap:6px;justify-content:flex-end;align-items:center;margin-top:8px;font-size:8px}.header-meta a{display:flex;margin-left:4px}.demo-tag{padding-left:8px;margin-left:3px;border-left:1px solid var(--border)}.live-dot,.cyan-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#44d7dd;box-shadow:0 0 7px #44d7dd66;flex-shrink:0}.dashboard{flex:1;min-height:0;display:grid;grid-template-columns:minmax(215px,21%) minmax(0,1fr) minmax(215px,21%);gap:16px;padding:18px 18px 0}.left-stack,.right-stack{display:grid;grid-template-rows:1fr 1fr 1fr;gap:16px;min-height:0}.panel{position:relative;min-height:0;background:var(--panel);border:1px solid var(--border);box-shadow:inset 0 0 24px var(--shadow);padding:12px 14px;overflow:hidden}.panel:before,.panel:after{content:"";position:absolute;width:12px;height:12px;pointer-events:none}.panel:before{top:-1px;left:-1px;border-top:2px solid var(--cyan);border-left:2px solid var(--cyan)}.panel:after{bottom:-1px;right:-1px;border-bottom:2px solid #31b3d56b;border-right:2px solid #31b3d56b}.panel h2{font-size:15px;display:flex;gap:7px;align-items:center;font-weight:550;border-bottom:1px solid var(--border);padding-bottom:10px;white-space:nowrap;color:var(--text)}.panel h2>svg{color:var(--cyan)}.panel h2>span{margin-left:auto;font-size:7px;letter-spacing:1.2px;font-weight:400;color:var(--muted)}.usage-panel,.device-panel,.traffic-panel,.energy-panel,.environment-panel,.reminders{display:flex;flex-direction:column}.usage-body{display:flex;flex:1;align-items:center;justify-content:space-around;gap:12px;padding:14px 0 12px}.donut{width:105px;height:105px;flex-shrink:0;border-radius:50%;background:conic-gradient(#2dc9d9 var(--rate),var(--subtle) 0);padding:8px;position:relative;box-shadow:0 0 18px #27bad00b}.donut>div{background:#0a2339;width:100%;height:100%;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column}.donut strong{font-size:27px;font-weight:550;color:var(--bright);letter-spacing:-1px}.donut strong small{font-size:17px}.donut span{font-size:9px;color:var(--muted);margin-top:5px}.usage-stats{display:grid;gap:13px}.usage-stats span{display:block;color:var(--muted);font-size:10px;margin-bottom:5px}.usage-stats strong{font-size:24px;font-weight:550;line-height:1}.usage-stats small{font-size:12px;margin-left:5px;font-weight:400}.panel-foot{font-size:9px;color:var(--muted);display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:8px;gap:5px}.panel-foot span{display:flex;align-items:center;gap:5px}.panel-foot strong{color:var(--text);font-size:10px;font-weight:400}.bar-chart{display:flex;align-items:end;justify-content:space-around;flex:1;padding:16px 5px 10px;gap:20px}.bar-chart>div{display:flex;flex-direction:column;align-items:center;justify-content:end;width:43px;gap:5px;height:100%}.bar-chart i{display:block;background:linear-gradient(#36c9d5,#1c6cb9);width:100%;max-height:calc(100% - 36px);border-top:2px solid #7df0ff;box-shadow:0 0 15px #21b6df11}.bar-chart>div:first-child i{background:linear-gradient(#329cef,#1d5c9e)}.bar-chart strong{font-size:12px;font-weight:400}.bar-chart span{font-size:10px;color:var(--muted)}.traffic-summary{display:flex;justify-content:space-between;font-size:9px;color:var(--muted);gap:5px;border-top:1px solid var(--line);padding-top:8px}.traffic-summary span{display:flex;align-items:center;gap:4px}.traffic-summary b{font-weight:500;color:var(--text)}.notice{display:flex;gap:8px;align-items:center;border-bottom:1px solid var(--line);flex:1;padding:9px 0}.notice>span{font-size:9px;color:var(--warning);background:#daa03c22;border:1px solid #c9994633;padding:3px 4px}.notice strong{font-size:10px;font-weight:400;display:block}.notice small{display:block;font-size:8px;color:var(--muted);margin-top:5px}.notice>b{font-weight:400;font-size:17px;margin-left:auto;color:var(--warning);opacity:.6}.health-line{padding-top:10px;display:flex;gap:5px;align-items:center;font-size:8px;color:var(--muted)}.health-line span:last-child{margin-left:auto;font-size:7px}.center-stack{min-width:0;min-height:0;display:grid;grid-template-rows:80px minmax(0,1fr) 150px;gap:12px}.kpi-strip{display:grid;grid-template-columns:1fr 1.35fr 1fr .9fr;padding:0 12px;align-items:center;position:relative}.kpi-strip:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--border),transparent)}.kpi-strip>div{text-align:center;border-right:1px solid var(--line)}.kpi-strip>div:last-child{border:0}.kpi-strip span{display:block;color:var(--muted);font-size:11px;letter-spacing:1px}.kpi-strip strong{display:block;color:var(--bright);font-size:29px;font-weight:550;letter-spacing:1px;line-height:1.45;text-shadow:0 0 16px var(--shadow);font-variant-numeric:tabular-nums}.kpi-strip strong small{font-size:10px;margin-left:5px;font-weight:400;letter-spacing:0}.kpi-strip em{display:block;font-style:normal;font-size:7px;color:var(--muted)}.warning{color:var(--warning)!important}.cyan{color:var(--cyan)!important}.viewport{position:relative;overflow:hidden;min-height:0;background:#071a30;border:1px solid #24638538}.scene-host{position:absolute;inset:0;overflow:hidden}.scene-host canvas{display:block;width:100%;height:100%;cursor:grab}.scene-topline{position:absolute;z-index:3;top:12px;left:14px;right:12px;display:flex;align-items:start;justify-content:space-between;pointer-events:none;gap:10px}.scene-topline>span{background:#06223bbd;border-left:2px solid var(--cyan);padding:7px 9px;font-size:10px;color:var(--text);max-width:65%;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.scene-topline .live-dot{margin-right:5px}.scene-topline small{display:block;font-size:8px;color:var(--muted);margin:5px 0 0 10px;letter-spacing:.5px}.theme-switch{pointer-events:auto;display:flex;background:var(--input);border:1px solid var(--border);padding:3px}.theme-switch button{display:flex;align-items:center;gap:4px;font-size:9px;padding:5px 7px;color:var(--muted)}.theme-switch button.active{background:var(--subtle);color:var(--bright)}.floor-nav{position:absolute;left:12px;top:82px;z-index:4;background:#071f35c9;border:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:5px;width:82px}.building-tabs{display:flex;border-bottom:1px solid var(--line);padding-bottom:5px;gap:1px}.building-tabs button{font-size:8px;white-space:nowrap;padding:4px 3px;flex:1;color:var(--muted)}.building-tabs button.active{color:var(--bright);background:var(--hover)}.floor-buttons{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding-top:6px}.floor-buttons button{border:1px solid #2382a433;height:28px;font-size:11px;color:var(--muted)}.floor-buttons button small{font-size:7px;margin-left:2px}.floor-buttons button.selected{border-color:var(--cyan);background:#20b9e82b;color:var(--bright);box-shadow:inset 0 0 10px #32c3ee22}.floor-home{display:flex;justify-content:center;align-items:center;margin-top:6px;height:24px;width:100%;background:var(--hover);color:var(--cyan)}.scene-actions{position:absolute;top:56px;right:12px;display:flex;gap:5px;z-index:4}.scene-actions button{display:grid;place-items:center;width:29px;height:29px;background:var(--input);border:1px solid var(--border);color:var(--muted)}.scene-actions button.active{border-color:var(--cyan);color:var(--bright);background:var(--subtle)}.lighting-caption{position:absolute;right:12px;top:96px;font-size:8px;display:flex;align-items:center;gap:5px;color:var(--muted);pointer-events:none;background:#061a2a66;padding:4px}.lighting-caption i{width:4px;height:4px;background:#ffe1a0;box-shadow:0 0 5px #ffd783;border-radius:50%}.cutaway-badge{position:absolute;left:108px;top:82px;font-size:8px;display:flex;align-items:center;gap:4px;color:var(--muted);background:var(--input);padding:5px 8px;border:1px solid var(--border)}.view-toolbar{position:absolute;bottom:28px;left:50%;transform:translate(-50%);display:flex;gap:4px;z-index:4;white-space:nowrap}.view-toolbar button{display:flex;align-items:center;gap:5px;font-size:10px;padding:10px 13px;background:#082640e3;border:1px solid var(--border);color:var(--muted);clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%)}.view-toolbar button.active{color:var(--bright);background:#12628be6;border-color:var(--cyan);box-shadow:inset 0 -2px var(--cyan)}.scene-footnote{position:absolute;left:12px;right:12px;bottom:8px;display:flex;justify-content:space-between;font-size:7px;color:var(--muted);letter-spacing:.4px;pointer-events:none}.hover-tip{position:absolute;bottom:76px;left:50%;transform:translate(-50%);background:var(--input);border:1px solid var(--cyan);color:var(--bright);font-size:10px;padding:8px 12px;z-index:5;pointer-events:none;white-space:nowrap}.building-label{position:absolute;transform:translate(-50%,-115%);display:flex;align-items:center;gap:6px;white-space:nowrap;background:#052039de;border:1px solid #37b5dfaa;padding:8px 10px;color:#c4efff;z-index:2;box-shadow:0 0 18px #158ec52a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.building-label:after{content:"";position:absolute;width:1px;height:16px;bottom:-17px;left:50%;background:linear-gradient(#48d4f4,transparent)}.building-label strong{font-size:13px;color:#67e5ff;padding-right:5px;border-right:1px solid #3688a96b}.building-label span{font-size:11px}.building-label small{font-size:8px;color:#7fb3ce}.bottom-panels{display:grid;grid-template-columns:1fr 1fr;gap:12px;min-height:0}.bottom-panels .panel{padding:9px 12px}.bottom-panels h2{font-size:13px;padding-bottom:8px}table{width:100%;border-collapse:collapse;text-align:left;margin-top:7px;font-size:10px}th{background:var(--head);color:var(--muted);font-size:9px;font-weight:400;padding:7px}td{padding:9px 7px;border-bottom:1px solid var(--line)}tbody tr:last-child td{border-bottom:none}.line-chart{flex:1;display:flex;align-items:center;min-height:0;padding-top:10px}.line-chart svg{width:100%;height:100%;max-height:150px;overflow:visible}.chart-grid{fill:none;stroke:var(--border);stroke-dasharray:4 4;stroke-width:1}.chart-dates{fill:var(--muted);font-size:10px}.eco-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-top:12px;flex:1}.eco-grid>div{background:var(--subtle);padding:9px 10px;display:flex;flex-direction:column;justify-content:center}.eco-grid span{font-size:10px;color:var(--muted)}.eco-grid strong{display:block;font-size:24px;color:var(--bright);font-weight:500;margin-top:5px;line-height:1}.eco-grid small{font-size:11px;font-weight:400;margin-left:3px}.explore-button{width:100%;display:flex;align-items:center;justify-content:space-between;color:var(--cyan);font-size:9px;padding:10px 0 0}.statusbar{height:29px;flex-shrink:0;display:flex;justify-content:space-between;align-items:center;padding:0 20px;font-size:7px;letter-spacing:.6px;color:var(--muted)}.statusbar>span:first-child{display:flex;align-items:center;gap:6px}.inspector{display:flex;flex-direction:column;min-height:0}.inspector h2 button{margin-left:auto;display:flex;padding:0;color:var(--muted)}.floor-summary{display:flex;align-items:center;gap:12px;padding:15px 0}.floor-summary>strong{color:var(--bright);font-size:30px;font-weight:400;border-right:1px solid var(--line);padding-right:12px}.floor-summary>strong span{font-size:14px;margin-left:6px;color:var(--muted)}.floor-summary>div{font-size:11px}.floor-summary small{display:block;font-size:8px;margin-top:5px;color:var(--muted)}.select-wrap,.room-search{border:1px solid var(--border);display:flex;align-items:center;gap:6px;padding:8px;color:var(--muted);background:var(--input);margin-bottom:8px}.select-wrap select{width:100%;min-width:0;background:var(--input);color:var(--text);border:0;appearance:none;outline:0;font-size:10px}.room-search input{color:var(--text);font-size:10px;background:none;border:0;outline:0;min-width:0;width:100%}.room-search input::placeholder{color:var(--muted)}.filter-tabs{display:flex;gap:4px;padding-bottom:10px}.filter-tabs button{flex:1;font-size:9px;color:var(--muted);padding:6px 3px;border:1px solid transparent;white-space:nowrap}.filter-tabs button.active{background:var(--subtle);border-color:var(--border);color:var(--bright)}.room-list{flex:1;min-height:80px;overflow:auto}.room-row{width:100%;display:flex;align-items:center;gap:7px;text-align:left;padding:11px 4px;border-bottom:1px solid var(--line)}.room-row.selected{background:var(--hover);box-shadow:inset 2px 0 var(--cyan)}.room-row>span{flex:1;min-width:0}.room-row strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px;font-weight:500}.room-row small{display:block;color:var(--muted);font-size:8px;margin-top:4px}.room-row>b{font-size:11px;font-weight:400;text-align:right}.room-status{width:4px;height:4px;border-radius:50%;flex-shrink:0}.leased{background:#33cdbb}.vacant{background:#e4ae59}.fitting{background:#9b9cf2}.common{background:#789dbb}.room-detail{border-top:1px solid var(--border);margin-top:10px;padding-top:10px;flex-shrink:0}.detail-top{display:flex;justify-content:space-between;align-items:center}.status-pill{padding:3px 6px;color:#08263b;font-size:8px}.detail-top button{padding:0;display:flex}.room-detail h3{font-size:16px;font-weight:500;margin-top:8px}.room-detail p{font-size:8px;color:var(--muted);margin-top:5px}.detail-metrics{display:flex;justify-content:space-between;padding:13px 0}.detail-metrics span{display:block;font-size:8px;color:var(--muted)}.detail-metrics strong{display:block;color:var(--bright);font-size:24px;font-weight:450;margin-top:5px}.detail-metrics small{font-size:8px;margin-left:4px;color:var(--muted)}.tenant-card{display:flex;align-items:center;gap:9px;padding:10px;background:var(--subtle);color:var(--cyan)}.tenant-card strong{font-size:10px;font-weight:500;color:var(--text)}.tenant-card small{display:block;font-size:8px;margin-top:4px;color:var(--muted)}.detail-focus{display:flex;align-items:center;gap:6px;width:100%;font-size:10px;color:var(--cyan);padding:10px 0 4px}.detail-focus svg:last-child{margin-left:auto}.legend{display:flex;justify-content:space-between;padding-top:12px;font-size:7px;color:var(--muted);gap:4px}.legend span{display:flex;align-items:center;gap:4px}.legend i{width:4px;height:4px}.data-note{font-size:7px;color:var(--muted);padding-top:8px}.empty-state{font-size:10px;padding:25px 8px;color:var(--muted);text-align:center}.empty-state button{display:block;margin:12px auto;color:var(--cyan);text-decoration:underline}.room-label{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:4px;background:#08243fe8;border:1px solid #3d88a5;border-left:2px solid #33cdbb;padding:6px 8px;white-space:nowrap;z-index:2;min-width:68px;box-shadow:0 4px 10px #0003}.room-label strong{font-size:9px;color:#b9e9ff}.room-label span{font-size:8px;color:#80b3d0}.room-label.vacant{border-left-color:#e4ae59}.room-label.fitting{border-left-color:#9b9cf2}.room-label.selected{border-color:#64dfff;background:#145272ee;box-shadow:0 0 14px #38b1df44}.loading-screen{position:absolute;inset:0;z-index:10;display:grid;place-items:center;background:var(--bg)}.loading-card{text-align:center;width:240px}.loading-symbol{font-size:48px;color:var(--cyan)}.loading-card h2{font-size:17px;font-weight:400;margin:12px 0}.loading-card p{font-size:10px;line-height:1.9;color:var(--muted)}.progress-track{height:2px;width:180px;background:var(--subtle);margin:20px auto 10px}.progress-track i{display:block;height:100%;background:var(--cyan);transition:width .4s;box-shadow:0 0 12px #38b1df88}.loading-card small{font-size:9px;color:var(--cyan)}.primary{padding:10px;background:var(--subtle);color:var(--cyan);margin-top:15px}.fatal-error{padding:80px 20px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}::-webkit-scrollbar{width:3px}::-webkit-scrollbar-thumb{background:#286282}@media(min-width:1600px){.dashboard{padding:24px 22px 0;gap:24px;grid-template-columns:21% minmax(0,1fr) 21%}.left-stack,.right-stack{gap:22px}.command-header{height:110px}.command-title h1{font-size:38px}.brand strong{font-size:20px}.header-meta time{font-size:18px}.panel{padding:16px 20px}.panel h2{font-size:20px;padding-bottom:13px}.panel h2>span{font-size:9px}.donut{width:145px;height:145px;padding:11px}.donut strong{font-size:35px}.donut span{font-size:12px}.usage-stats span{font-size:14px}.usage-stats strong{font-size:32px}.panel-foot{font-size:12px}.center-stack{grid-template-rows:100px minmax(0,1fr) 190px;gap:18px}.kpi-strip strong{font-size:40px}.kpi-strip span{font-size:15px}.kpi-strip em{font-size:9px}.bar-chart i{height:100px!important}.bar-chart>div{width:55px}.bar-chart span,.bar-chart strong{font-size:14px}.traffic-summary{font-size:12px}.notice strong{font-size:14px}.notice small{font-size:11px}.notice>span{font-size:12px}.eco-grid strong{font-size:33px}.eco-grid span{font-size:14px}.bottom-panels h2{font-size:18px}table{font-size:14px}th{font-size:12px}td{padding:12px 9px}.view-toolbar button{padding:12px 20px;font-size:13px}.scene-topline>span{font-size:13px}.scene-topline small{font-size:10px}.floor-nav{top:95px;width:94px}.floor-buttons button{height:35px}.floor-nav button{font-size:11px}.theme-switch button{font-size:12px}.scene-actions{top:64px}.lighting-caption{top:104px;font-size:10px}.room-row strong{font-size:13px}.room-row small{font-size:10px}.floor-summary>div{font-size:14px}.room-detail h3{font-size:20px}.room-detail p,.data-note{font-size:10px}.room-list{min-height:120px}.room-row{padding:15px 6px}.tenant-card strong{font-size:13px}.tenant-card small{font-size:10px}}@media(max-height:760px){.command-header{height:76px}.dashboard{padding-top:12px;gap:12px}.left-stack,.right-stack{gap:12px}.center-stack{grid-template-rows:70px minmax(0,1fr) 132px;gap:8px}.panel{padding:10px 12px}.panel h2{font-size:13px;padding-bottom:8px}.donut{width:88px;height:88px;padding:7px}.donut strong{font-size:24px}.usage-body{padding:10px 0}.usage-stats{gap:10px}.usage-stats strong{font-size:22px}.bar-chart{padding-top:10px}.eco-grid{gap:6px;padding-top:8px}.eco-grid>div{padding:7px}.eco-grid strong{font-size:23px}.notice{padding:7px 0}.health-line{padding-top:7px}.bottom-panels .panel{padding:8px 10px}td{padding:7px}.floor-summary{padding:10px 0}.has-room .floor-summary{display:none}.has-room .select-wrap{margin-top:10px}.room-detail{padding-top:7px;margin-top:7px}.room-detail h3{font-size:14px}.detail-metrics{padding:9px 0}.tenant-card{padding:8px}.room-row{padding:9px 4px}.command-title h1{font-size:27px}.command-title p{font-size:8px}.title-wing{width:26px}.kpi-strip strong{font-size:27px}.view-toolbar button{padding:9px 10px;font-size:9px}}@media(max-width:1100px){.dashboard{grid-template-columns:200px minmax(0,1fr) 200px;gap:10px;padding-left:10px;padding-right:10px}.brand strong{font-size:12px}.brand-mark{display:none}.command-title h1{font-size:24px;letter-spacing:3px}.title-wing{display:none}.header-meta time{font-size:11px}.panel h2{font-size:12px}.panel h2>span{display:none}.donut{width:80px;height:80px}.donut strong,.usage-stats strong{font-size:21px}.usage-stats span{font-size:9px}.kpi-strip{padding:0}.kpi-strip strong{font-size:23px}.kpi-strip span{font-size:10px}.kpi-strip em{display:none}.scene-topline{left:8px;right:8px;top:8px}.scene-topline>span{font-size:8px;padding:6px}.scene-topline small{font-size:7px}.theme-switch button{font-size:8px;padding:5px}.scene-actions{right:8px;top:50px}.lighting-caption{top:88px;font-size:7px}.floor-nav{left:8px;top:70px;width:70px}.floor-buttons button{height:25px}.building-tabs button{font-size:7px;padding:4px 1px}.view-toolbar{gap:1px}.view-toolbar button{padding:8px;font-size:8px;gap:3px}.view-toolbar button svg{width:12px}.notice strong{font-size:9px}.notice>b{display:none}.traffic-summary span{gap:2px;font-size:8px}.health-line span:last-child{display:none}.cutaway-badge{left:85px;top:72px;font-size:7px}.bottom-panels{gap:8px}.bottom-panels h2{font-size:11px}table,th{font-size:8px}.statusbar>span:last-child{display:none}.eco-grid strong{font-size:20px}}@media(max-width:800px){.app-shell{height:auto;min-height:100dvh;overflow:visible}.command-header{height:78px;padding:0 14px}.brand{display:none}.command-title{position:static;transform:none;text-align:left}.command-title h1{font-size:22px}.command-title p{letter-spacing:2px;font-size:7px}.header-meta time{font-size:10px}.header-meta>div{font-size:7px}.dashboard{display:flex;flex-direction:column;padding:12px;gap:12px}.center-stack{order:0;display:grid;grid-template-rows:70px 480px auto;gap:10px}.left-stack{order:2;grid-template-columns:1fr 1fr;grid-template-rows:220px 220px;gap:12px}.reminders{grid-column:span 2}.right-stack{order:1;grid-template-columns:1fr 1fr;grid-template-rows:220px 220px;gap:12px}.environment-panel{grid-column:span 2}.eco-grid{grid-template-columns:repeat(4,1fr);align-items:center}.eco-grid>div{min-height:95px}.inspector{order:1;min-height:500px;max-height:800px}.bottom-panels{min-height:140px}.panel h2{font-size:14px}.usage-body{gap:20px;justify-content:center}.statusbar{font-size:6px}.scene-topline>span{font-size:10px}.theme-switch button{font-size:10px}.floor-nav{top:82px;width:78px}.floor-buttons button{height:30px}.scene-actions{top:57px}.lighting-caption{top:96px}.view-toolbar button{font-size:9px;padding:10px}.room-list{max-height:260px}.has-room .floor-summary{display:flex}.data-note{padding-bottom:4px}.command-title h1{font-size:20px}.cutaway-badge{top:78px;left:96px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@media(min-width:801px)and (max-height:950px){.command-header{height:84px}.dashboard{padding-top:14px}.center-stack{grid-template-rows:72px minmax(0,1fr) 124px;gap:10px}.panel{padding:11px 14px}.panel h2{font-size:15px;padding-bottom:9px}.panel h2>span{font-size:7px}.usage-body{padding:10px 0;gap:10px}.donut{width:104px;height:104px;padding:8px}.donut strong{font-size:27px}.donut span{font-size:9px}.usage-stats span{font-size:10px}.usage-stats strong{font-size:25px}.panel-foot{font-size:9px;padding-top:7px}.usage-stats{gap:12px}.bar-chart{padding:12px 10px 8px}.bar-chart i{height:70px!important}.bar-chart span,.bar-chart strong{font-size:11px}.traffic-summary{font-size:9px}.notice strong{font-size:11px}.notice small{font-size:9px}.notice>span{font-size:9px}.eco-grid strong{font-size:25px}.eco-grid span{font-size:11px}.eco-grid{gap:7px;padding-top:10px}.bottom-panels .panel{padding:8px 12px}.bottom-panels h2{font-size:13px;padding-bottom:6px}table{font-size:10px;margin-top:5px}th{font-size:9px;padding:5px 7px}td{padding:7px}.kpi-strip strong{font-size:32px}.kpi-strip span{font-size:12px}.kpi-strip em{font-size:8px}.command-title h1{font-size:30px}.room-row{padding:10px 4px}.room-row strong{font-size:11px}.room-row small{font-size:9px}.room-detail h3{font-size:17px}.tenant-card strong{font-size:11px}.tenant-card small{font-size:9px}.data-note{font-size:8px}}@media(min-width:801px)and (max-height:740px){.command-header{height:70px}.dashboard{padding-top:10px}.center-stack{grid-template-rows:62px minmax(0,1fr) 110px;gap:8px}.panel{padding:9px 11px}.panel h2{font-size:13px}.donut{width:83px;height:83px;padding:6px}.donut strong{font-size:22px}.usage-stats strong{font-size:21px}.usage-body{padding:8px 0}.kpi-strip strong{font-size:27px}.panel-foot{font-size:8px}.bottom-panels .panel{padding:7px 10px}td{padding:6px}.eco-grid strong{font-size:22px}.notice strong{font-size:10px}.notice small{font-size:8px}.notice{padding:6px 0}.health-line{padding-top:6px}.view-toolbar button{padding:8px 9px;font-size:9px}}@media(min-width:801px){.dashboard{grid-template-columns:clamp(185px,15vw,260px) minmax(0,1fr) clamp(185px,15vw,260px);gap:12px;padding:10px 12px 0}.command-header{height:68px;padding:0 18px}.command-title h1{font-size:27px;letter-spacing:4px}.command-title p{font-size:8px;letter-spacing:3px;margin-top:5px}.brand strong{font-size:14px}.brand small{font-size:7px}.header-meta time{font-size:12px}.brand-mark{width:31px;height:33px}.center-stack{grid-template-rows:56px minmax(0,1fr) 91px;gap:8px}.kpi-strip span{font-size:10px}.kpi-strip strong{font-size:27px;line-height:1.3}.kpi-strip em{font-size:7px}.left-stack,.right-stack{gap:12px;grid-template-rows:.95fr 1fr 1.05fr}.panel{padding:10px 12px}.panel h2{font-size:13px;padding-bottom:8px}.panel h2>span{font-size:6px;letter-spacing:.8px}.donut{width:90px;height:90px;padding:7px}.donut strong{font-size:24px}.donut span{font-size:8px}.usage-body{gap:8px;padding:12px 0}.usage-stats span{font-size:9px}.usage-stats strong{font-size:23px}.panel-foot{font-size:8px}.bar-chart{padding:14px 3px 10px;gap:13px}.bar-chart>div{width:34px}.bar-chart i{height:80px!important}.traffic-summary{flex-wrap:wrap;font-size:8px;gap:6px}.notice{gap:6px}.notice strong{font-size:10px}.notice small{font-size:8px}.notice>b{display:none}.health-line{font-size:7px}.health-line span:last-child{display:none}.eco-grid strong{font-size:23px}.eco-grid span{font-size:10px}.eco-grid>div{padding:8px}.bottom-panels .panel{padding:6px 10px}.bottom-panels h2{font-size:11px;padding-bottom:4px}.bottom-panels h2>span{font-size:6px}table{font-size:9px;margin-top:3px}th{font-size:8px;padding:3px 6px}td{padding:4px 6px}.scene-topline>span{font-size:11px}.scene-topline small{font-size:8px}.theme-switch button{font-size:10px}.floor-nav{width:82px;top:88px}.floor-buttons button{height:30px}.building-tabs button{font-size:8px}.scene-actions{top:57px}.lighting-caption{top:96px;font-size:9px}.cutaway-badge{top:86px;left:108px}.view-toolbar button{font-size:10px;padding:10px 15px}.statusbar{height:23px;font-size:7px}.room-row strong{font-size:10px}.room-row small{font-size:8px}.room-detail h3{font-size:15px}.floor-summary>div{font-size:10px}.floor-summary small{font-size:8px}.data-note{font-size:7px}.inspector h2{font-size:12px}.scene-expanded .dashboard{grid-template-columns:1fr}.scene-expanded .left-stack,.scene-expanded .right-stack,.scene-expanded .inspector{display:none}.scene-expanded .center-stack{grid-template-rows:46px minmax(0,1fr)}.scene-expanded .bottom-panels{display:none}.scene-expanded .kpi-strip{max-width:950px;width:100%;margin:auto}}@media(min-width:801px)and (max-width:1300px){.panel h2>span{display:none}.donut{width:75px;height:75px;padding:6px}.donut strong,.usage-stats strong{font-size:20px}.panel{padding:9px 10px}.usage-stats small{font-size:10px}.notice strong{font-size:9px}.header-meta>div{font-size:7px}.command-title h1{font-size:24px}.title-wing{width:25px}.view-toolbar button{padding:9px 10px;font-size:9px}.eco-grid strong{font-size:20px}}.scene-actions .expand-button{width:auto;display:flex;gap:5px;padding:0 7px;font-size:9px}.xinrui-shell .dashboard{grid-template-columns:260px minmax(380px,1fr) 286px;gap:12px;padding:16px 18px 12px}.xinrui-shell .left-stack{display:flex;flex-direction:column;gap:12px;min-height:0}.xinrui-shell .center-stack{grid-template-rows:72px minmax(360px,1fr) 108px}.xinrui-shell .command-title h1{font-size:27px;letter-spacing:4px}.xinrui-shell .right-stack{display:flex;flex-direction:column;gap:12px;min-height:0}.xinrui-shell .panel h2{height:40px;padding:0 13px}.xinrui-shell .kpi-strip{height:auto}.xinrui-shell .kpi-strip>div{padding:10px 16px}.xinrui-shell .kpi-strip strong{font-size:25px}.xinrui-shell .kpi-strip em{font-size:9px;margin-top:3px}.xinrui-shell .panel-foot{font-size:10px;padding:10px 12px;gap:6px}.xinrui-shell .panel-foot strong{font-size:11px}.campus-summary{flex-shrink:0}.summary-hero{display:flex;gap:24px;align-items:center;padding:16px 20px}.count-orbit{width:105px;height:105px;flex-shrink:0;border:7px solid #14405a;border-top-color:#36caed;border-left-color:#298ba9;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 0 24px #19b6dc13,inset 0 0 15px #19b6dc13}.count-orbit strong{font-size:35px;font-weight:600;color:#7eecff;line-height:1.1}.count-orbit span{font-size:10px;color:var(--muted);margin-top:5px}.summary-counts{display:flex;flex-direction:column;gap:12px}.summary-counts span{font-size:10px;color:var(--muted)}.summary-counts strong{display:block;font-size:23px;color:#d0f2ff;margin-top:2px}.summary-counts small{font-size:10px;font-weight:400;margin-left:5px;color:var(--muted)}.building-directory{display:flex;flex-direction:column;flex:1;min-height:190px}.building-list{overflow:auto;padding:0 10px 8px;scrollbar-width:thin;scrollbar-color:#285471 transparent}.building-list>button{display:flex;align-items:center;text-align:left;gap:10px;padding:9px 7px;width:100%;border-bottom:1px solid #1b3b503d}.building-list>button>span:nth-child(2){flex:1}.building-list strong{display:block;font-size:12px;font-weight:500}.building-list small{display:block;font-size:9px;color:var(--muted);margin-top:4px}.building-list .selected{background:#177a9c27;color:var(--bright)}.building-icon{width:30px;height:32px;display:grid;place-items:center;background:#2256782e;color:#58bddf;border:1px solid #245875}.source-summary{flex-shrink:0}.source-row{display:flex;gap:7px;align-items:center;padding:7px 13px;font-size:10px}.source-row b{margin-left:auto;font-weight:400;font-size:9px;color:var(--muted)}.source-link{display:flex;width:100%;padding:12px 14px;align-items:center;justify-content:space-between;font-size:10px;color:var(--cyan);border-top:1px solid var(--line);margin-top:8px}.xinrui-shell .floor-nav{top:85px;left:12px;width:91px;max-height:calc(100% - 160px);padding:0;gap:0;overflow:hidden;background:#071c30d9;border:1px solid #386e8955;display:flex;flex-direction:column;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.building-select select{background:#102f44;color:#b4e4f5;border:0;padding:10px 3px;width:100%;font-size:10px;cursor:pointer}.xinrui-shell .floor-buttons{overflow:auto;display:flex;flex-direction:column;gap:0;padding:3px 7px;scrollbar-width:thin;scrollbar-color:#1f6383 transparent}.xinrui-shell .floor-buttons button{width:100%;min-height:26px;height:26px;font-size:11px;flex-shrink:0;border-bottom:1px solid #2a526031}.xinrui-shell .floor-home{min-height:29px;width:100%;margin:0}.xinrui-shell .scene-actions{top:86px;right:12px}.xinrui-shell .scene-topline{left:16px;right:16px;top:17px}.xinrui-shell .scene-topline>span{font-size:12px}.xinrui-shell .scene-topline small{font-size:9px;max-width:200px}.xinrui-shell .view-toolbar{bottom:36px;padding:5px 7px;gap:2px;max-width:95%;white-space:nowrap}.xinrui-shell .view-toolbar button{padding:7px 8px;gap:4px;font-size:10px}.xinrui-shell .scene-footnote{font-size:8px;bottom:12px;left:14px;right:14px}.model-labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}.model-labels .building-label{position:absolute;pointer-events:auto;transform:translate(-50%,-100%);padding:5px 7px;background:#082c40e8;border:1px solid #52b6d188;border-radius:2px;display:flex;gap:6px;white-space:nowrap;box-shadow:0 2px 8px #00182255;color:#c8effa;font-size:10px}.model-labels .building-label strong{font-size:10px;font-weight:500}.model-labels .building-label small{font-size:8px;color:#6fcde6}.model-labels .building-label:after{content:"";height:7px;width:1px;position:absolute;bottom:-8px;left:50%;background:#6ad1e4aa}.model-labels .building-label:hover{background:#1a6180}.model-loading{position:absolute;inset:0;z-index:15;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;background:#081d2cf5;color:#cceefa}.model-loading>span,.model-loading>small{font-size:11px;color:#74a8bc}.model-loading progress{width:200px;height:3px;accent-color:#45cde8}.load-ring{width:40px;height:40px;border:2px solid #24526b;border-top-color:#53e5f9;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.facility-review{flex:1;min-height:300px}.facility-row{display:flex;align-items:center;gap:9px;padding:12px;border-bottom:1px solid #29465b44}.facility-no{font-size:13px;color:#4488a8;font-style:italic}.facility-row>div{flex:1;min-width:0}.facility-row strong{font-size:11px;font-weight:500;display:block}.facility-row small{font-size:8px;color:var(--muted);display:block;margin-top:5px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.facility-row>b{font-size:9px;font-weight:400;color:#65d8d4;white-space:nowrap}.illustrative{color:#efbb73!important}.environment-copy{padding:13px;font-size:11px;line-height:1.8;color:#a3c7d9}.environment-copy small{font-size:9px;color:var(--muted);display:block}.environment-switch{display:flex;gap:7px;margin:14px 0}.environment-switch button{display:flex;align-items:center;gap:5px;border:1px solid var(--border);padding:8px 6px;font-size:10px;flex:1}.environment-switch button.active{border-color:#2885a5;background:#1e687825;color:#73def4}.environment-switch i{margin-left:auto;font-style:normal;font-size:8px;color:var(--muted)}.explore-copy{padding:14px}.explore-copy>strong{font-weight:500;font-size:14px;color:#c6ecfa}.explore-copy>p{font-size:10px;line-height:1.8;color:var(--muted);margin:10px 0 15px}.explore-copy .explore-button{margin:0;width:100%}.facility-chips{display:flex;gap:12px;flex-wrap:wrap;padding:15px 12px;font-size:10px}.facility-chips>span{display:flex;align-items:center;gap:5px}.design-metrics{padding:16px 12px;display:flex;align-items:center;gap:12px;font-size:9px;flex-wrap:wrap}.design-metrics b{color:#8ce8f1;font-size:13px;font-weight:500;margin:0 4px}.design-metrics button{font-size:9px;color:var(--muted);margin-left:auto}.xinrui-shell .inspector{min-height:0}.xinrui-shell .floor-summary{padding:16px 14px;gap:14px}.xinrui-shell .floor-summary>strong{font-size:25px}.xinrui-shell .floor-summary small{font-size:10px}.floor-source{margin:4px 13px 10px;display:flex;flex-direction:column;gap:5px;color:var(--muted);font-size:9px}.floor-source span{color:#5e9cb5}.xinrui-shell .room-row{padding:11px 9px}.xinrui-shell .room-row strong{font-size:11px}.xinrui-shell .room-row b{font-size:12px}.xinrui-shell .room-detail{padding:14px}.xinrui-shell .room-detail h3{font-size:17px}.xinrui-shell .detail-metrics strong{font-size:23px}.evidence-card{display:flex;gap:8px;align-items:center;background:#153c4e60;padding:10px;margin:13px 0}.evidence-card strong{display:block;font-size:10px;font-weight:400}.evidence-card small{display:block;font-size:8px;margin-top:6px;color:var(--muted);overflow-wrap:anywhere}.xinrui-shell .data-note{font-size:9px;line-height:1.8;padding:10px 13px}.xinrui-shell .cutaway-badge{left:116px;top:85px;max-width:calc(100% - 185px);font-size:9px}.xinrui-shell .hover-tip{top:auto;bottom:87px;max-width:80%;font-size:11px}.modal-shade{position:fixed;inset:0;z-index:100;background:#000b;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:center;padding:24px}.evidence-modal{background:#0a2237;border:1px solid #2e6a88;box-shadow:0 20px 120px #0009;width:min(680px,100%);max-height:90dvh;overflow:auto}.evidence-modal>header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid var(--line)}.evidence-modal>header small{letter-spacing:3px;color:#4caccc;font-size:9px}.evidence-modal h2{font-size:21px;font-weight:500;margin-top:8px}.evidence-modal article{padding:17px 24px;border-bottom:1px solid var(--line)}.evidence-modal article>div{display:flex;justify-content:space-between}.evidence-modal article h3{font-size:13px;font-weight:500}.evidence-modal article b{font-size:10px;color:#6edcda;font-weight:400}.evidence-modal article p{font-size:12px;line-height:1.8;color:#a5c6d6;margin:10px 0}.evidence-modal article small{font-size:10px;color:#5e94b0}.evidence-modal footer{padding:18px 24px;font-size:10px;line-height:1.9;color:#729db5}.evidence-modal footer p+p{margin-top:8px}.evidence-modal footer a{display:flex;gap:7px;align-items:center;color:#65dbf3;margin-top:16px}.xinrui-shell.scene-expanded .dashboard{grid-template-columns:1fr}.xinrui-shell.scene-expanded .left-stack,.xinrui-shell.scene-expanded .right-stack,.xinrui-shell.scene-expanded .inspector,.xinrui-shell.scene-expanded .kpi-strip,.xinrui-shell.scene-expanded .bottom-panels{display:none}.xinrui-shell.scene-expanded .center-stack .viewport{grid-row:1}.xinrui-shell.scene-expanded .floor-nav{max-height:calc(100% - 180px)}@media(min-width:1600px){.xinrui-shell .dashboard{grid-template-columns:290px minmax(500px,1fr) 310px;gap:16px}.xinrui-shell .facility-row{padding:15px}.xinrui-shell .building-list>button{padding:11px 8px}}@media(max-width:1200px){.xinrui-shell .dashboard{grid-template-columns:215px minmax(350px,1fr) 242px;padding:10px;gap:9px}.xinrui-shell .summary-hero{gap:13px;padding:14px}.count-orbit{width:85px;height:85px}.xinrui-shell .command-title h1{font-size:23px;letter-spacing:2px}.xinrui-shell .brand strong{font-size:13px}.xinrui-shell .brand small{font-size:7px}.xinrui-shell .header-meta time{font-size:11px}.xinrui-shell .kpi-strip>div{padding:9px}.xinrui-shell .kpi-strip strong{font-size:21px}.xinrui-shell .kpi-strip em{font-size:8px}.xinrui-shell .view-toolbar button{padding:7px 5px;font-size:9px}.xinrui-shell .view-toolbar button svg{width:12px}.xinrui-shell .center-stack{grid-template-rows:68px minmax(340px,1fr) 108px}.facility-row{gap:6px;padding:11px 9px}.facility-row strong{font-size:10px}.facility-row small{font-size:7px}.facility-row>b{font-size:8px}.environment-copy{font-size:10px}.facility-chips{gap:8px;padding:10px}.design-metrics{padding:10px;gap:7px}.xinrui-shell .bottom-panels h2{font-size:11px}.xinrui-shell .bottom-panels h2 span{display:none}}@media(max-width:1000px){.xinrui-shell .dashboard{grid-template-columns:minmax(400px,1fr) 250px}.xinrui-shell .left-stack{display:none}.xinrui-shell .command-title{position:static;transform:none}.xinrui-shell .command-title h1{font-size:20px}.xinrui-shell .title-wing{display:none}.xinrui-shell .command-title p{font-size:8px;letter-spacing:2px}.xinrui-shell .command-header{padding:0 14px;height:73px}.xinrui-shell .brand strong{font-size:12px}.xinrui-shell .header-meta time{font-size:10px}.xinrui-shell .header-meta .demo-tag{display:none}}@media(max-width:760px){.xinrui-shell{height:auto;min-height:100dvh;overflow:visible}.xinrui-shell .dashboard{display:flex;flex-direction:column;padding:8px;gap:10px}.xinrui-shell .command-header{height:70px;min-height:70px}.xinrui-shell .brand{display:none}.xinrui-shell .command-title{text-align:left}.xinrui-shell .command-title h1{font-size:19px;letter-spacing:2px}.xinrui-shell .header-meta{font-size:8px}.xinrui-shell .header-meta time{font-size:10px}.xinrui-shell .center-stack{display:grid;grid-template-rows:65px 64dvh auto;gap:9px}.xinrui-shell .viewport{min-height:400px}.xinrui-shell .kpi-strip{grid-template-columns:repeat(4,1fr);gap:0}.xinrui-shell .kpi-strip>div{padding:8px}.xinrui-shell .kpi-strip strong{font-size:19px}.xinrui-shell .kpi-strip span{font-size:9px}.xinrui-shell .kpi-strip em{font-size:7px}.xinrui-shell .scene-topline>span{font-size:10px}.xinrui-shell .scene-topline small{font-size:8px;max-width:170px}.xinrui-shell .theme-switch button{padding:6px;font-size:9px}.xinrui-shell .floor-nav{width:78px;top:80px;max-height:calc(100% - 170px)}.xinrui-shell .scene-footnote>span:last-child{display:none}.xinrui-shell .bottom-panels{display:grid;grid-template-columns:1fr 1fr;min-height:100px}.xinrui-shell .overview-right{display:grid;grid-template-columns:1fr}.xinrui-shell .facility-review{min-height:0}.xinrui-shell .environment-panel,.xinrui-shell .explore-panel{display:block}.xinrui-shell .inspector{display:flex;min-height:400px;max-height:680px;width:100%;position:static}.xinrui-shell .statusbar{min-height:34px;font-size:8px;gap:8px;padding:8px 12px}.xinrui-shell .statusbar>span:nth-child(2){display:none}.xinrui-shell .cutaway-badge{left:98px;font-size:8px;max-width:calc(100% - 160px)}.xinrui-shell.scene-expanded{height:100dvh}.xinrui-shell.scene-expanded .center-stack{height:calc(100dvh - 130px);grid-template-rows:1fr}.xinrui-shell.scene-expanded .viewport{height:100%}.xinrui-shell .lighting-caption{font-size:8px;right:10px;bottom:78px;top:auto}.xinrui-shell .view-toolbar{gap:1px;padding:4px}.xinrui-shell .view-toolbar button{padding:6px 4px;font-size:9px;gap:3px}.model-labels .building-label{padding:3px 4px}.model-labels .building-label strong{font-size:8px}.model-labels .building-label small{display:none}}.xinrui-shell .panel{padding:0}.xinrui-shell .summary-hero{padding:13px 17px}.xinrui-shell .count-orbit{width:86px;height:86px;border-width:6px}.xinrui-shell .count-orbit strong{font-size:31px}.xinrui-shell .facility-review{min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#295776 transparent}.xinrui-shell .facility-row{padding:9px 12px}.xinrui-shell .environment-copy{padding:11px 13px}.xinrui-shell .environment-switch{margin:9px 0}.xinrui-shell .explore-copy{padding:11px 13px}.xinrui-shell .explore-copy>p{margin:6px 0 10px}.xinrui-shell .explore-copy>strong{font-size:12px}.xinrui-shell .source-summary .source-link{padding:10px 13px;margin-top:3px}.xinrui-shell .source-row{padding:6px 13px}.xinrui-shell .building-directory{min-height:100px}.xinrui-shell .building-list{flex:1}.xinrui-shell .floor-mode .scene-topline{z-index:5}.xinrui-shell .inspector .room-list{min-height:85px}.xinrui-shell .scene-topline,.xinrui-shell .floor-nav,.xinrui-shell .scene-actions,.xinrui-shell .view-toolbar{z-index:5}@media(min-width:761px){.xinrui-shell .overview-right .facility-review{flex:none;height:300px}.xinrui-shell .overview-right .facility-row{padding:7px 11px;min-height:43px}.xinrui-shell .overview-right .facility-row small{font-size:8px;margin-top:4px}.xinrui-shell .overview-right .facility-review .source-link{padding:8px 13px;margin-top:0}.xinrui-shell .overview-right .environment-panel{flex:1;min-height:135px}.xinrui-shell .overview-right .environment-copy{font-size:10px;padding:8px 13px}.xinrui-shell .overview-right .environment-copy>p{line-height:1.6}.xinrui-shell .overview-right .environment-copy>small{font-size:8px;line-height:1.5}.xinrui-shell .overview-right .environment-switch{margin:7px 0}.xinrui-shell .overview-right .environment-switch button{padding:6px}.xinrui-shell .overview-right .explore-panel{flex:none}.xinrui-shell .overview-right .explore-panel>h2{display:none}.xinrui-shell .overview-right .explore-copy>strong{display:none}.xinrui-shell .overview-right .explore-copy>p{margin:0 0 6px;font-size:9px}.xinrui-shell .overview-right .explore-copy{padding:10px 13px}}.xinrui-shell .lighting-caption{top:auto;bottom:78px;right:14px;font-size:9px;pointer-events:none}.xinrui-shell .fatal-error{z-index:25;padding:22px;text-align:center;background:#10283af5}.xinrui-shell .fatal-error button{display:block;margin:16px auto 0;color:#75dff3;border:1px solid #36758e;padding:8px 18px}html,body,#app{touch-action:pan-x pan-y;-webkit-text-size-adjust:100%;text-size-adjust:100%}.scene-host canvas{touch-action:none;overscroll-behavior:contain}.xinrui-shell .view-toolbar{max-width:97%;overflow-x:auto;scrollbar-width:none}.xinrui-shell .view-toolbar button{flex-shrink:0;padding:7px 6px}.xinrui-shell .environment-switch{gap:6px}.xinrui-shell .overview-right .environment-panel{min-height:188px}.xinrui-shell .overview-right .environment-copy>p{font-size:10px}.xinrui-shell .overview-right .environment-switch button{font-size:9px}.xinrui-shell .overview-right .explore-copy>p{display:none}.xinrui-shell .overview-right .explore-copy{padding:8px 12px}@media(max-width:760px){.xinrui-shell .view-toolbar{justify-content:flex-start;left:10px;right:10px;transform:none}.xinrui-shell .view-toolbar button{padding:7px 5px}.xinrui-shell .environment-switch button{font-size:11px;padding:9px}.xinrui-shell .scene-topline small{max-width:160px}}.xinrui-shell .left-stack,.xinrui-shell .overview-right{display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:12px}.xinrui-shell .left-stack>.panel,.xinrui-shell .overview-right>.panel{padding:10px 12px;min-height:0}.xinrui-shell .left-stack .panel h2,.xinrui-shell .overview-right .panel h2{height:auto;padding:0 0 9px;font-size:13px}.xinrui-shell .overview-right .environment-panel{min-height:0}.xinrui-shell .usage-body{padding:12px 0;gap:10px}.xinrui-shell .panel-foot{padding:8px 0 0;font-size:9px}.xinrui-shell .bottom-panels .panel{padding:9px 12px}.xinrui-shell .bottom-panels h2{height:auto;padding:0 0 8px}.xinrui-shell .bottom-panels table{margin-top:6px}.xinrui-shell .center-stack{grid-template-rows:72px minmax(340px,1fr) 132px}.xinrui-shell .overview-right .eco-grid{padding:14px 0;flex:1}.xinrui-shell .scene-actions{gap:3px}.xinrui-shell.scene-expanded .left-stack,.xinrui-shell.scene-expanded .overview-right{display:none}.xinrui-shell.scene-expanded .center-stack{grid-template-rows:minmax(0,1fr)}@media(max-width:1000px){.xinrui-shell .left-stack{display:none}}@media(max-width:760px){.xinrui-shell .overview-right{display:grid;grid-template-rows:repeat(3,220px)}.xinrui-shell .center-stack{grid-template-rows:65px 64dvh auto}.xinrui-shell .bottom-panels{min-height:145px}.xinrui-shell.scene-expanded .center-stack{grid-template-rows:1fr}.xinrui-shell .scene-actions{top:76px}.xinrui-shell .scene-actions button{width:26px;height:28px}.xinrui-shell .kpi-strip strong{font-size:17px}.xinrui-shell .kpi-strip>div{padding:5px}}.xinrui-shell .viewport{border:0;background:transparent;isolation:isolate}.xinrui-shell .scene-host{--fade-x:clamp(32px,7vw,112px);--fade-y:clamp(42px,7vh,84px);-webkit-mask-image:linear-gradient(to right,transparent,#000 var(--fade-x),#000 calc(100% - var(--fade-x)),transparent),linear-gradient(to bottom,transparent,#000 var(--fade-y),#000 calc(100% - var(--fade-y)),transparent);mask-image:linear-gradient(to right,transparent,#000 var(--fade-x),#000 calc(100% - var(--fade-x)),transparent),linear-gradient(to bottom,transparent,#000 var(--fade-y),#000 calc(100% - var(--fade-y)),transparent);-webkit-mask-composite:source-in;mask-composite:intersect}.xinrui-shell .scene-topline>span{background:linear-gradient(100deg,#092b40b8,#0b304b55);border-left-color:#48d5e48c;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.xinrui-shell .floor-nav{background:linear-gradient(90deg,#08243bbb,#0b304d65);border-color:#4c9bb22b;box-shadow:0 8px 28px #04172425;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.xinrui-shell .building-select select{background:#0a2b4266}.xinrui-shell .building-select option{background:#0b2b41}.xinrui-shell .floor-buttons button{border-color:#7cc6dc17;background:#163b5020}.xinrui-shell .floor-buttons button.selected{background:#1c83a765;color:#9af3ff}.xinrui-shell .theme-switch{background:#0b294778;border-color:#66bad536;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.xinrui-shell .scene-actions button{background:linear-gradient(135deg,#10374ed1,#092a43b8);border-color:#66bad536;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.xinrui-shell .view-toolbar{background:transparent}.xinrui-shell .view-toolbar button{background:linear-gradient(180deg,#0c3652d1,#0b2a43ad);border-color:#53a8c42e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.xinrui-shell .view-toolbar button.active{background:linear-gradient(180deg,#177f9db8,#145174a6)}.xinrui-shell .scene-footnote{color:#8ab6cc}.xinrui-shell .left-stack>.panel{background:linear-gradient(100deg,#0a2942e0,#0b2d4773);border-color:#4c8bab36;box-shadow:inset 0 0 24px #2790c00a}.xinrui-shell .overview-right>.panel{background:linear-gradient(260deg,#0a2942e0,#0b2d4773);border-color:#4c8bab36;box-shadow:inset 0 0 24px #2790c00a}.xinrui-shell .bottom-panels>.panel{background:linear-gradient(0deg,#09273fde,#0b2d4766);border-color:#4c8bab36;box-shadow:none}.xinrui-shell .left-stack>.panel:before,.xinrui-shell .left-stack>.panel:after,.xinrui-shell .overview-right>.panel:before,.xinrui-shell .overview-right>.panel:after,.xinrui-shell .bottom-panels>.panel:before,.xinrui-shell .bottom-panels>.panel:after{opacity:.4}@media(max-width:760px){.xinrui-shell .scene-host{--fade-x:30px;--fade-y:42px}}
