:root,:root[data-color-theme=power-vis-dark-v1]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-canvas:rgb(var(--pv-tone-071214));--color-surface:rgb(var(--pv-tone-081619) / .82);--color-surface-strong:rgb(var(--pv-tone-071215) / .94);--color-text-primary:rgb(var(--pv-tone-edf5f2));--color-text-secondary:rgb(var(--pv-tone-a8bbb6));--color-text-muted:rgb(var(--pv-tone-71847f));--color-accent-primary:rgb(var(--pv-tone-67e0b1));--color-accent-secondary:rgb(var(--pv-tone-78c8d8));--color-status-online:rgb(var(--pv-tone-67e0b1));--color-status-normal:rgb(var(--pv-tone-67e0b1));--color-status-delayed:rgb(var(--pv-tone-efbd6a));--color-status-offline:rgb(var(--pv-tone-f2786d));--color-status-alert:rgb(var(--pv-tone-f2786d));--color-status-unknown:rgb(var(--pv-tone-7e9295));--color-selection:rgb(var(--pv-tone-78c8d8));--color-selection-bright:rgb(var(--pv-tone-d7fbff));--color-map-road:rgb(var(--pv-tone-4f8583));--color-map-road-dim:rgb(var(--pv-tone-345f5f));--color-map-mask:rgb(var(--pv-tone-02090b));--color-map-boundary-glow:rgb(var(--pv-tone-67e0b1));--color-map-boundary:rgb(var(--pv-tone-8af0c8));--color-map-boundary-fallback:rgb(var(--pv-tone-efbd6a));--color-map-road-focus:rgb(var(--pv-tone-6eb0b8));--color-map-road-neutral:rgb(var(--pv-tone-70817f));--color-map-hit-target:rgb(var(--pv-tone-000000));--color-map-marker-body:rgb(var(--pv-tone-17363a));--color-map-marker-highlight:rgb(var(--pv-tone-f4fff9));--color-map-marker-draft:rgb(var(--pv-tone-e38b2f));--color-map-marker-preview:rgb(var(--pv-tone-f0aa4e));--color-map-marker-core:rgb(var(--pv-tone-07171b));--color-map-marker-health-normal:rgb(var(--pv-tone-dff7ef));--color-map-place-panel:rgb(var(--pv-tone-061519));--color-map-place-panel-border:rgb(var(--pv-tone-4b7774));--color-map-place-title:rgb(var(--pv-tone-d8e8e5));--color-map-place-summary:rgb(var(--pv-tone-789491));--color-map-place-ring:rgb(var(--pv-tone-8aa6a3));--color-map-place-count:rgb(var(--pv-tone-e1efed));--color-map-building-panel-start:rgb(var(--pv-tone-0b292d));--color-map-building-panel-end:rgb(var(--pv-tone-07181b));--color-map-building-tower-start:rgb(var(--pv-tone-4ca3aa));--color-map-building-tower-end:rgb(var(--pv-tone-183d42));--color-map-building-window:rgb(var(--pv-tone-b9fbef));--color-map-pole-panel:rgb(var(--pv-tone-061519));--color-map-pole-core:rgb(var(--pv-tone-07191d));--color-map-pole-title:rgb(var(--pv-tone-dcebe8));--color-map-pole-name:rgb(var(--pv-tone-89a29f));--color-map-pole-meta:rgb(var(--pv-tone-718d8c));--color-map-admin-route-preview:rgb(var(--pv-tone-b8fff1));--color-map-admin-road-draft:rgb(var(--pv-tone-78c8d8));--color-chart-series-primary-line:rgb(var(--pv-tone-70e8ba));--color-chart-series-primary-shadow:rgb(var(--pv-tone-67e0b1) / .24);--color-chart-series-primary-point:rgb(var(--pv-tone-b8ffe5));--color-chart-point-border:rgb(var(--pv-tone-07171b));--color-chart-series-primary-area-start:rgb(var(--pv-tone-67e0b1) / .28);--color-chart-series-primary-area-mid:rgb(var(--pv-tone-4b9c89) / .09);--color-chart-series-primary-emphasis:rgb(var(--pv-tone-dffff3));--color-chart-series-primary-ripple:rgb(var(--pv-tone-9fffdc));--color-chart-text:rgb(var(--pv-tone-a8bbb6));--color-chart-tooltip-background:rgb(var(--pv-tone-071215) / .96);--color-chart-tooltip-border:rgb(var(--pv-tone-67e0b1) / .24);--color-chart-tooltip-text:rgb(var(--pv-tone-edf5f2));--color-chart-grid-strong:rgb(var(--pv-tone-9dbeb5) / .12);--color-chart-grid-soft:rgb(var(--pv-tone-9dbeb5) / .055);--color-building-ground-start:rgb(var(--pv-tone-10282c));--color-building-ground-end:rgb(var(--pv-tone-08181b));--color-building-grid:rgb(var(--pv-tone-78c8d8) / .12);--color-building-ground-border:rgb(var(--pv-tone-78c8d8) / .18);--map-provider-style:amap://styles/grey;--pv-tone-000000:0 0 0;--pv-tone-010607:1 6 7;--pv-tone-010708:1 7 8;--pv-tone-020809:2 8 9;--pv-tone-02090a:2 9 10;--pv-tone-02090b:2 9 11;--pv-tone-020a0b:2 10 11;--pv-tone-030e11:3 14 17;--pv-tone-040d0f:4 13 15;--pv-tone-040e10:4 14 16;--pv-tone-040f11:4 15 17;--pv-tone-041013:4 16 19;--pv-tone-041114:4 17 20;--pv-tone-041216:4 18 22;--pv-tone-050f12:5 15 18;--pv-tone-051113:5 17 19;--pv-tone-051114:5 17 20;--pv-tone-051214:5 18 20;--pv-tone-051215:5 18 21;--pv-tone-051216:5 18 22;--pv-tone-051417:5 20 23;--pv-tone-051418:5 20 24;--pv-tone-05181c:5 24 28;--pv-tone-051c1f:5 28 31;--pv-tone-061012:6 16 18;--pv-tone-061113:6 17 19;--pv-tone-061214:6 18 20;--pv-tone-061215:6 18 21;--pv-tone-061315:6 19 21;--pv-tone-061316:6 19 22;--pv-tone-061416:6 20 22;--pv-tone-061518:6 21 24;--pv-tone-061519:6 21 25;--pv-tone-061713:6 23 19;--pv-tone-06171b:6 23 27;--pv-tone-071113:7 17 19;--pv-tone-071214:7 18 20;--pv-tone-071215:7 18 21;--pv-tone-071416:7 20 22;--pv-tone-071417:7 20 23;--pv-tone-071418:7 20 24;--pv-tone-071517:7 21 23;--pv-tone-071519:7 21 25;--pv-tone-071618:7 22 24;--pv-tone-071619:7 22 25;--pv-tone-071719:7 23 25;--pv-tone-07171b:7 23 27;--pv-tone-071813:7 24 19;--pv-tone-07181b:7 24 27;--pv-tone-07191d:7 25 29;--pv-tone-071a1d:7 26 29;--pv-tone-071c1f:7 28 31;--pv-tone-071d23:7 29 35;--pv-tone-081315:8 19 21;--pv-tone-081619:8 22 25;--pv-tone-081719:8 23 25;--pv-tone-08181a:8 24 26;--pv-tone-08181b:8 24 27;--pv-tone-08181c:8 24 28;--pv-tone-08191b:8 25 27;--pv-tone-08191d:8 25 29;--pv-tone-081a1c:8 26 28;--pv-tone-081b1d:8 27 29;--pv-tone-081c1e:8 28 30;--pv-tone-081c1f:8 28 31;--pv-tone-081f22:8 31 34;--pv-tone-08272b:8 39 43;--pv-tone-091416:9 20 22;--pv-tone-091719:9 23 25;--pv-tone-09191c:9 25 28;--pv-tone-091b1d:9 27 29;--pv-tone-091b1f:9 27 31;--pv-tone-091f21:9 31 33;--pv-tone-091f22:9 31 34;--pv-tone-092024:9 32 36;--pv-tone-092122:9 33 34;--pv-tone-0a191c:10 25 28;--pv-tone-0a1c1f:10 28 31;--pv-tone-0a1c20:10 28 32;--pv-tone-0a1d20:10 29 32;--pv-tone-0a1d21:10 29 33;--pv-tone-0a2022:10 32 34;--pv-tone-0a2a2e:10 42 46;--pv-tone-0a3437:10 52 55;--pv-tone-0a535b:10 83 91;--pv-tone-0b191a:11 25 26;--pv-tone-0b1b1d:11 27 29;--pv-tone-0b2022:11 32 34;--pv-tone-0b2427:11 36 39;--pv-tone-0b292d:11 41 45;--pv-tone-0c1f21:12 31 33;--pv-tone-0c2629:12 38 41;--pv-tone-0c2728:12 39 40;--pv-tone-0c3036:12 48 54;--pv-tone-0d2126:13 33 38;--pv-tone-0f2023:15 32 35;--pv-tone-0f2327:15 35 39;--pv-tone-10282c:16 40 44;--pv-tone-102b2d:16 43 45;--pv-tone-102b31:16 43 49;--pv-tone-102f2b:16 47 43;--pv-tone-102f35:16 47 53;--pv-tone-123834:18 56 52;--pv-tone-13272a:19 39 42;--pv-tone-132d30:19 45 48;--pv-tone-142528:20 37 40;--pv-tone-143a40:20 58 64;--pv-tone-143b35:20 59 53;--pv-tone-143f35:20 63 53;--pv-tone-147e91:20 126 145;--pv-tone-154343:21 67 67;--pv-tone-163f3e:22 63 62;--pv-tone-168c7a:22 140 122;--pv-tone-17150d:23 21 13;--pv-tone-17150f:23 21 15;--pv-tone-17363a:23 54 58;--pv-tone-17383d:23 56 61;--pv-tone-173b40:23 59 64;--pv-tone-173f47:23 63 71;--pv-tone-176054:23 96 84;--pv-tone-178a72:23 138 114;--pv-tone-183d40:24 61 64;--pv-tone-183d42:24 61 66;--pv-tone-19302f:25 48 47;--pv-tone-1b180f:27 24 15;--pv-tone-1b2d31:27 45 49;--pv-tone-1c453b:28 69 59;--pv-tone-1e190f:30 25 15;--pv-tone-1e4d45:30 77 69;--pv-tone-1e4e55:30 78 85;--pv-tone-1f8171:31 129 113;--pv-tone-211506:33 21 6;--pv-tone-211b12:33 27 18;--pv-tone-23393c:35 57 60;--pv-tone-238c78:35 140 120;--pv-tone-241405:36 20 5;--pv-tone-245b72:36 91 114;--pv-tone-245d79:36 93 121;--pv-tone-24665c:36 102 92;--pv-tone-263c3e:38 60 62;--pv-tone-266a64:38 106 100;--pv-tone-275c57:39 92 87;--pv-tone-275d51:39 93 81;--pv-tone-278d74:39 141 116;--pv-tone-285d51:40 93 81;--pv-tone-285e64:40 94 100;--pv-tone-295d60:41 93 96;--pv-tone-2a0e11:42 14 17;--pv-tone-2a675e:42 103 94;--pv-tone-2b7065:43 112 101;--pv-tone-2d8c76:45 140 118;--pv-tone-304c49:48 76 73;--pv-tone-306b71:48 107 113;--pv-tone-341f20:52 31 32;--pv-tone-345f5f:52 95 95;--pv-tone-34675a:52 103 90;--pv-tone-356b5d:53 107 93;--pv-tone-397b68:57 123 104;--pv-tone-397c83:57 124 131;--pv-tone-397f70:57 127 112;--pv-tone-3a7564:58 117 100;--pv-tone-3c5553:60 85 83;--pv-tone-3cae9b:60 174 155;--pv-tone-401d21:64 29 33;--pv-tone-445855:68 88 85;--pv-tone-44635e:68 99 94;--pv-tone-458e80:69 142 128;--pv-tone-461416:70 20 22;--pv-tone-463212:70 50 18;--pv-tone-486366:72 99 102;--pv-tone-492b0f:73 43 15;--pv-tone-49625f:73 98 95;--pv-tone-4b2024:75 32 36;--pv-tone-4b7774:75 119 116;--pv-tone-4b9c89:75 156 137;--pv-tone-4ca3aa:76 163 170;--pv-tone-4d686b:77 104 107;--pv-tone-4f6b6d:79 107 109;--pv-tone-4f6d70:79 109 112;--pv-tone-4f8583:79 133 131;--pv-tone-506d70:80 109 112;--pv-tone-506e70:80 110 112;--pv-tone-50706a:80 112 106;--pv-tone-526d70:82 109 112;--pv-tone-526e70:82 110 112;--pv-tone-527173:82 113 115;--pv-tone-536e70:83 110 112;--pv-tone-536f72:83 111 114;--pv-tone-53cbaf:83 203 175;--pv-tone-54706f:84 112 111;--pv-tone-553a16:85 58 22;--pv-tone-557275:85 114 117;--pv-tone-567174:86 113 116;--pv-tone-57736f:87 115 111;--pv-tone-577477:87 116 119;--pv-tone-58726f:88 114 111;--pv-tone-587274:88 114 116;--pv-tone-587476:88 116 118;--pv-tone-587477:88 116 119;--pv-tone-5b8f89:91 143 137;--pv-tone-5c6c6a:92 108 106;--pv-tone-5c7678:92 118 120;--pv-tone-5f777a:95 119 122;--pv-tone-5f797b:95 121 123;--pv-tone-607976:96 121 118;--pv-tone-607b7d:96 123 125;--pv-tone-608584:96 133 132;--pv-tone-617579:97 117 121;--pv-tone-62d8d4:98 216 212;--pv-tone-647f82:100 127 130;--pv-tone-65787a:101 120 122;--pv-tone-658488:101 132 136;--pv-tone-667876:102 120 118;--pv-tone-667f7c:102 127 124;--pv-tone-668084:102 128 132;--pv-tone-668184:102 129 132;--pv-tone-668481:102 132 129;--pv-tone-67817f:103 129 127;--pv-tone-67e0b1:103 224 177;--pv-tone-682c2b:104 44 43;--pv-tone-688184:104 129 132;--pv-tone-688486:104 132 134;--pv-tone-69817d:105 129 125;--pv-tone-698185:105 129 133;--pv-tone-6c3b0e:108 59 14;--pv-tone-6c7d7b:108 125 123;--pv-tone-6c9291:108 146 145;--pv-tone-6ce2d7:108 226 215;--pv-tone-6d8580:109 133 128;--pv-tone-6d8588:109 133 136;--pv-tone-6eb0b8:110 176 184;--pv-tone-6f8984:111 137 132;--pv-tone-6f8c88:111 140 136;--pv-tone-6f8d8e:111 141 142;--pv-tone-70817f:112 129 127;--pv-tone-708b8c:112 139 140;--pv-tone-70a59e:112 165 158;--pv-tone-70d8f0:112 216 240;--pv-tone-70e8ba:112 232 186;--pv-tone-71847f:113 132 127;--pv-tone-71898a:113 137 138;--pv-tone-718b8e:113 139 142;--pv-tone-718d8c:113 141 140;--pv-tone-718e8c:113 142 140;--pv-tone-71908e:113 144 142;--pv-tone-719092:113 144 146;--pv-tone-72817f:114 129 127;--pv-tone-728d8d:114 141 141;--pv-tone-749a97:116 154 151;--pv-tone-789093:120 144 147;--pv-tone-78928f:120 146 143;--pv-tone-789294:120 146 148;--pv-tone-789395:120 147 149;--pv-tone-789491:120 148 145;--pv-tone-789693:120 150 147;--pv-tone-789794:120 151 148;--pv-tone-789795:120 151 149;--pv-tone-78c8d8:120 200 216;--pv-tone-79a09c:121 160 156;--pv-tone-7b9396:123 147 150;--pv-tone-7b9997:123 153 151;--pv-tone-7c9296:124 146 150;--pv-tone-7e9295:126 146 149;--pv-tone-7f9992:127 153 146;--pv-tone-7f9a9b:127 154 155;--pv-tone-7fa29e:127 162 158;--pv-tone-80969a:128 150 154;--pv-tone-81979a:129 151 154;--pv-tone-81999a:129 153 154;--pv-tone-819c9d:129 156 157;--pv-tone-829895:130 152 149;--pv-tone-829b9c:130 155 156;--pv-tone-82a6a3:130 166 163;--pv-tone-84c4b8:132 196 184;--pv-tone-89a29f:137 162 159;--pv-tone-89a5a1:137 165 161;--pv-tone-8aa0a3:138 160 163;--pv-tone-8aa5a3:138 165 163;--pv-tone-8aa6a3:138 166 163;--pv-tone-8af0c8:138 240 200;--pv-tone-8b7470:139 116 112;--pv-tone-8ba29f:139 162 159;--pv-tone-8ba3a1:139 163 161;--pv-tone-8ba4a2:139 164 162;--pv-tone-8ca9a6:140 169 166;--pv-tone-8cb4ad:140 180 173;--pv-tone-8da19d:141 161 157;--pv-tone-8de8cb:141 232 203;--pv-tone-8eaaa7:142 170 167;--pv-tone-8eb9b5:142 185 181;--pv-tone-8fa5a1:143 165 161;--pv-tone-8fb7b4:143 183 180;--pv-tone-8fbcb4:143 188 180;--pv-tone-91a6a7:145 166 167;--pv-tone-91a7a8:145 167 168;--pv-tone-91aaa7:145 170 167;--pv-tone-91aaa8:145 170 168;--pv-tone-93aaa9:147 170 169;--pv-tone-95aaa5:149 170 165;--pv-tone-95aaa8:149 170 168;--pv-tone-97bfbc:151 191 188;--pv-tone-9aadae:154 173 174;--pv-tone-9ab0ae:154 176 174;--pv-tone-9ac8c0:154 200 192;--pv-tone-9bb0ae:155 176 174;--pv-tone-9bb1af:155 177 175;--pv-tone-9bb9b5:155 185 181;--pv-tone-9bc5bc:155 197 188;--pv-tone-9bc8c0:155 200 192;--pv-tone-9cb1af:156 177 175;--pv-tone-9cb3b1:156 179 177;--pv-tone-9db2ae:157 178 174;--pv-tone-9db5b4:157 181 180;--pv-tone-9dbeb5:157 190 181;--pv-tone-9eb2af:158 178 175;--pv-tone-9eb3b1:158 179 177;--pv-tone-9eb3b2:158 179 178;--pv-tone-9ec8c3:158 200 195;--pv-tone-9fffdc:159 255 220;--pv-tone-a0b5b3:160 181 179;--pv-tone-a57b78:165 123 120;--pv-tone-a5b6b5:165 182 181;--pv-tone-a6bcba:166 188 186;--pv-tone-a7c1bf:167 193 191;--pv-tone-a8bbb6:168 187 182;--pv-tone-a8c9c4:168 201 196;--pv-tone-a9bcba:169 188 186;--pv-tone-a9bdb9:169 189 185;--pv-tone-aabfbc:170 191 188;--pv-tone-aebfbd:174 191 189;--pv-tone-aec2bf:174 194 191;--pv-tone-b16d6a:177 109 106;--pv-tone-b1c3c1:177 195 193;--pv-tone-b39254:179 146 84;--pv-tone-b5c6c4:181 198 196;--pv-tone-b5d4cf:181 212 207;--pv-tone-b7d8d0:183 216 208;--pv-tone-b7f5df:183 245 223;--pv-tone-b8751f:184 117 31;--pv-tone-b8cbc7:184 203 199;--pv-tone-b8cfca:184 207 202;--pv-tone-b8ffe5:184 255 229;--pv-tone-b8fff1:184 255 241;--pv-tone-b9cbc7:185 203 199;--pv-tone-b9fbef:185 251 239;--pv-tone-bad0cc:186 208 204;--pv-tone-badbd9:186 219 217;--pv-tone-bccfcd:188 207 205;--pv-tone-bcded8:188 222 216;--pv-tone-bd8326:189 131 38;--pv-tone-bda980:189 169 128;--pv-tone-bdd0cd:189 208 205;--pv-tone-bfe7df:191 231 223;--pv-tone-c0d1cf:192 209 207;--pv-tone-c1d4d1:193 212 209;--pv-tone-c2a46c:194 164 108;--pv-tone-c2ebe2:194 235 226;--pv-tone-c4d5d2:196 213 210;--pv-tone-c64f49:198 79 73;--pv-tone-c6d6d2:198 214 210;--pv-tone-c6e2dc:198 226 220;--pv-tone-c7d1ce:199 209 206;--pv-tone-c7d6d2:199 214 210;--pv-tone-c7d9d6:199 217 214;--pv-tone-c8d7d3:200 215 211;--pv-tone-c8dcda:200 220 218;--pv-tone-c8e6e1:200 230 225;--pv-tone-c9d7d4:201 215 212;--pv-tone-caa762:202 167 98;--pv-tone-cfe0dc:207 224 220;--pv-tone-d0dfdd:208 223 221;--pv-tone-d1ad67:209 173 103;--pv-tone-d2dad7:210 218 215;--pv-tone-d2e1dd:210 225 221;--pv-tone-d3ac65:211 172 101;--pv-tone-d3dfdd:211 223 221;--pv-tone-d4574e:212 87 78;--pv-tone-d4a85b:212 168 91;--pv-tone-d4e1dd:212 225 221;--pv-tone-d4e2de:212 226 222;--pv-tone-d5e4e0:213 228 224;--pv-tone-d5e5e2:213 229 226;--pv-tone-d5f1ee:213 241 238;--pv-tone-d6e5e1:214 229 225;--pv-tone-d7b979:215 185 121;--pv-tone-d7c18e:215 193 142;--pv-tone-d7e7e4:215 231 228;--pv-tone-d7ebe7:215 235 231;--pv-tone-d7eef0:215 238 240;--pv-tone-d7f8ff:215 248 255;--pv-tone-d7fbff:215 251 255;--pv-tone-d7fff2:215 255 242;--pv-tone-d8dfdd:216 223 221;--pv-tone-d8e4e0:216 228 224;--pv-tone-d8e7e3:216 231 227;--pv-tone-d8e8e4:216 232 228;--pv-tone-d8e8e5:216 232 229;--pv-tone-d8fff3:216 255 243;--pv-tone-d9cdc0:217 205 192;--pv-tone-d9ebe8:217 235 232;--pv-tone-d9fff0:217 255 240;--pv-tone-dbe8e4:219 232 228;--pv-tone-dbe8e5:219 232 229;--pv-tone-dce8e4:220 232 228;--pv-tone-dce8e5:220 232 229;--pv-tone-dce9e7:220 233 231;--pv-tone-dcebe7:220 235 231;--pv-tone-dcebe8:220 235 232;--pv-tone-dcebea:220 235 234;--pv-tone-dff4ef:223 244 239;--pv-tone-dff7ef:223 247 239;--pv-tone-dffff3:223 255 243;--pv-tone-dffff4:223 255 244;--pv-tone-e0c4c1:224 196 193;--pv-tone-e1efed:225 239 237;--pv-tone-e2ece9:226 236 233;--pv-tone-e2f3ef:226 243 239;--pv-tone-e38b2f:227 139 47;--pv-tone-e6eae8:230 234 232;--pv-tone-e7f8f5:231 248 245;--pv-tone-e7fffa:231 255 250;--pv-tone-edf5f2:237 245 242;--pv-tone-efbd6a:239 189 106;--pv-tone-efffff:239 255 255;--pv-tone-f0aa4e:240 170 78;--pv-tone-f1ffff:241 255 255;--pv-tone-f2786d:242 120 109;--pv-tone-f2a59e:242 165 158;--pv-tone-f48b82:244 139 130;--pv-tone-f4fff9:244 255 249;--pv-tone-f4ffff:244 255 255;--pv-tone-f6f8f7:246 248 247;--pv-tone-f6f9f8:246 249 248;--pv-tone-f7faf8:247 250 248;--pv-tone-f9fcfc:249 252 252;--pv-tone-ff9a92:255 154 146;--pv-tone-ffc0b9:255 192 185;--pv-tone-ffc1bb:255 193 187;--pv-tone-ffd595:255 213 149;--pv-tone-ffd9d5:255 217 213;--pv-tone-ffe0a8:255 224 168;--pv-tone-ffe6bf:255 230 191;--pv-tone-fff0cf:255 240 207;--pv-tone-fff4df:255 244 223;--pv-tone-fff6e7:255 246 231;--pv-tone-ffffff:255 255 255}:root[data-color-theme=power-vis-light-v1]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-canvas:#f2f6f4;--color-surface:#ffffffe6;--color-surface-strong:#e6eeebf5;--color-text-primary:#132824;--color-text-secondary:#405c56;--color-text-muted:#5d726d;--color-accent-primary:#087a5b;--color-accent-secondary:#0b6f8a;--color-status-online:#087a5b;--color-status-normal:#087a5b;--color-status-delayed:#8a5a00;--color-status-offline:#b33b34;--color-status-alert:#b33b34;--color-status-unknown:#60736e;--color-selection:#0b6f8a;--color-selection-bright:#075d73;--color-map-road:#5c7b74;--color-map-road-dim:#aabab6;--color-map-mask:#dde7e3;--color-map-boundary-glow:#087a5b;--color-map-boundary:#075d73;--color-map-boundary-fallback:#8a5a00;--color-map-road-focus:#0b6f8a;--color-map-road-neutral:#7a918b;--color-map-hit-target:#000;--color-map-marker-body:#21423b;--color-map-marker-highlight:#fff;--color-map-marker-draft:#a45100;--color-map-marker-preview:#c16a00;--color-map-marker-core:#f7faf9;--color-map-marker-health-normal:#087a5b;--color-map-place-panel:#fff;--color-map-place-panel-border:#7a918b;--color-map-place-title:#132824;--color-map-place-summary:#5d726d;--color-map-place-ring:#7a918b;--color-map-place-count:#132824;--color-map-building-panel-start:#fff;--color-map-building-panel-end:#e6eeeb;--color-map-building-tower-start:#4f8e86;--color-map-building-tower-end:#2e615b;--color-map-building-window:#f6fffc;--color-map-pole-panel:#fff;--color-map-pole-core:#edf3f1;--color-map-pole-title:#132824;--color-map-pole-name:#405c56;--color-map-pole-meta:#5d726d;--color-map-admin-route-preview:#075d73;--color-map-admin-road-draft:#0b6f8a;--color-chart-series-primary-line:#087a5b;--color-chart-series-primary-shadow:#087a5b2e;--color-chart-series-primary-point:#d8f4e9;--color-chart-point-border:#132824;--color-chart-series-primary-area-start:#087a5b2e;--color-chart-series-primary-area-mid:#0b6f8a0f;--color-chart-series-primary-emphasis:#fff;--color-chart-series-primary-ripple:#29a57f;--color-chart-text:#405c56;--color-chart-tooltip-background:#132824f5;--color-chart-tooltip-border:#087a5b59;--color-chart-tooltip-text:#f2f6f4;--color-chart-grid-strong:#60736e2e;--color-chart-grid-soft:#60736e17;--color-building-ground-start:#f9fbfa;--color-building-ground-end:#e6eeeb;--color-building-grid:#0b6f8a29;--color-building-ground-border:#0b6f8a47;--map-provider-style:amap://styles/whitesmoke;--pv-tone-000000:0 0 0;--pv-tone-010607:227 243 247;--pv-tone-010708:226 244 247;--pv-tone-020809:227 242 245;--pv-tone-02090a:226 243 245;--pv-tone-02090b:225 241 245;--pv-tone-020a0b:225 243 245;--pv-tone-030e11:221 239 244;--pv-tone-040d0f:224 239 242;--pv-tone-040e10:223 239 242;--pv-tone-040f11:222 239 242;--pv-tone-041013:221 238 243;--pv-tone-041114:220 238 243;--pv-tone-041216:218 237 243;--pv-tone-050f12:222 237 241;--pv-tone-051113:221 238 241;--pv-tone-051114:221 237 241;--pv-tone-051214:221 239 241;--pv-tone-051215:220 237 241;--pv-tone-051216:219 236 241;--pv-tone-051417:218 238 242;--pv-tone-051418:218 237 242;--pv-tone-05181c:215 237 242;--pv-tone-051c1f:213 238 242;--pv-tone-061012:223 237 240;--pv-tone-061113:222 237 240;--pv-tone-061214:221 237 240;--pv-tone-061215:220 236 240;--pv-tone-061315:220 238 240;--pv-tone-061316:220 236 240;--pv-tone-061416:220 238 240;--pv-tone-061518:218 237 240;--pv-tone-061519:217 236 240;--pv-tone-061713:219 240 235;--pv-tone-06171b:216 236 240;--pv-tone-071113:222 236 239;--pv-tone-071214:242 246 244;--pv-tone-071215:230 238 235;--pv-tone-071416:220 237 239;--pv-tone-071417:219 235 239;--pv-tone-071418:219 234 239;--pv-tone-071517:219 237 239;--pv-tone-071519:218 234 239;--pv-tone-071618:219 237 239;--pv-tone-071619:218 236 239;--pv-tone-071719:218 237 239;--pv-tone-07171b:216 235 239;--pv-tone-071813:219 239 233;--pv-tone-07181b:216 236 239;--pv-tone-07191d:215 235 239;--pv-tone-071a1d:215 236 239;--pv-tone-071c1f:213 236 239;--pv-tone-071d23:211 233 239;--pv-tone-081315:221 235 238;--pv-tone-081619:255 255 255;--pv-tone-081719:218 236 238;--pv-tone-08181a:217 236 238;--pv-tone-08181b:217 235 238;--pv-tone-08181c:216 234 238;--pv-tone-08191b:217 236 238;--pv-tone-08191d:215 234 238;--pv-tone-081a1c:216 236 238;--pv-tone-081b1d:215 236 238;--pv-tone-081c1e:214 236 238;--pv-tone-081c1f:214 235 238;--pv-tone-081f22:212 235 238;--pv-tone-08272b:205 234 238;--pv-tone-091416:221 234 237;--pv-tone-091719:219 235 237;--pv-tone-09191c:216 234 237;--pv-tone-091b1d:216 235 237;--pv-tone-091b1f:214 233 237;--pv-tone-091f21:213 235 237;--pv-tone-091f22:212 234 237;--pv-tone-092024:211 233 237;--pv-tone-092122:212 236 237;--pv-tone-0a191c:217 233 236;--pv-tone-0a1c1f:214 233 236;--pv-tone-0a1c20:214 232 236;--pv-tone-0a1d20:214 233 236;--pv-tone-0a1d21:213 232 236;--pv-tone-0a2022:212 234 236;--pv-tone-0a2a2e:204 233 236;--pv-tone-0a3437:198 233 236;--pv-tone-0a535b:175 228 234;--pv-tone-0b191a:219 234 235;--pv-tone-0b1b1d:216 233 235;--pv-tone-0b2022:213 233 235;--pv-tone-0b2427:209 233 235;--pv-tone-0b292d:205 232 235;--pv-tone-0c1f21:214 232 234;--pv-tone-0c2629:208 232 234;--pv-tone-0c2728:209 234 234;--pv-tone-0c3036:199 229 234;--pv-tone-0d2126:210 229 234;--pv-tone-0f2023:213 229 232;--pv-tone-0f2327:210 228 232;--pv-tone-10282c:207 227 231;--pv-tone-102b2d:206 229 231;--pv-tone-102b31:203 226 231;--pv-tone-102f2b:204 231 227;--pv-tone-102f35:200 226 231;--pv-tone-123834:199 229 226;--pv-tone-13272a:208 226 228;--pv-tone-132d30:204 226 228;--pv-tone-142528:210 225 227;--pv-tone-143a40:193 223 227;--pv-tone-143b35:197 227 223;--pv-tone-143f35:194 227 219;--pv-tone-147e91:142 210 222;--pv-tone-154343:192 226 226;--pv-tone-163f3e:194 226 225;--pv-tone-168c7a:145 221 209;--pv-tone-17150d:233 230 222;--pv-tone-17150f:231 229 222;--pv-tone-17363a:198 222 225;--pv-tone-17383d:196 221 225;--pv-tone-173b40:194 221 225;--pv-tone-173f47:189 219 225;--pv-tone-176054:173 223 215;--pv-tone-178a72:147 220 205;--pv-tone-183d40:194 222 224;--pv-tone-183d42:192 220 224;--pv-tone-19302f:205 223 223;--pv-tone-1b180f:231 228 219;--pv-tone-1b2d31:204 219 222;--pv-tone-1c453b:191 221 213;--pv-tone-1e190f:231 226 216;--pv-tone-1e4d45:186 219 213;--pv-tone-1e4e55:180 214 219;--pv-tone-1f8171:152 215 205;--pv-tone-211506:240 228 212;--pv-tone-211b12:229 223 215;--pv-tone-23393c:197 213 216;--pv-tone-238c78:145 212 199;--pv-tone-241405:241 225 209;--pv-tone-245b72:162 198 213;--pv-tone-245d79:157 194 212;--pv-tone-24665c:169 213 207;--pv-tone-263c3e:196 212 213;--pv-tone-266a64:167 212 208;--pv-tone-275c57:176 212 208;--pv-tone-275d51:175 212 204;--pv-tone-278d74:145 209 193;--pv-tone-285d51:175 211 203;--pv-tone-285e64:171 207 211;--pv-tone-295d60:173 208 210;--pv-tone-2a0e11:233 208 210;--pv-tone-2a675e:169 209 203;--pv-tone-2b7065:163 208 201;--pv-tone-2d8c76:145 205 191;--pv-tone-304c49:187 206 204;--pv-tone-306b71:163 200 204;--pv-tone-341f20:219 203 203;--pv-tone-345f5f:170 186 182;--pv-tone-34675a:169 202 194;--pv-tone-356b5d:166 201 192;--pv-tone-397b68:156 197 185;--pv-tone-397c83:151 193 197;--pv-tone-397f70:153 197 188;--pv-tone-3a7564:160 197 186;--pv-tone-3c5553:181 197 196;--pv-tone-3cae9b:124 192 181;--pv-tone-401d21:220 194 197;--pv-tone-445855:179 192 190;--pv-tone-44635e:171 191 188;--pv-tone-458e80:144 188 180;--pv-tone-461416:227 189 191;--pv-tone-463212:229 213 189;--pv-tone-486366:169 186 188;--pv-tone-492b0f:231 208 187;--pv-tone-49625f:172 188 186;--pv-tone-4b2024:218 187 190;--pv-tone-4b7774:158 185 184;--pv-tone-4b9c89:135 183 172;--pv-tone-4ca3aa:126 177 181;--pv-tone-4d686b:166 183 185;--pv-tone-4f6b6d:165 182 183;--pv-tone-4f6d70:163 181 183;--pv-tone-4f8583:92 123 116;--pv-tone-506d70:163 181 182;--pv-tone-506e70:163 181 182;--pv-tone-50706a:163 182 179;--pv-tone-526d70:163 179 181;--pv-tone-526e70:163 180 181;--pv-tone-527173:161 180 181;--pv-tone-536e70:163 179 180;--pv-tone-536f72:161 178 180;--pv-tone-53cbaf:95 184 163;--pv-tone-54706f:162 180 179;--pv-tone-553a16:225 205 180;--pv-tone-557275:159 177 179;--pv-tone-567174:160 176 178;--pv-tone-57736f:160 178 175;--pv-tone-577477:158 176 177;--pv-tone-58726f:161 177 175;--pv-tone-587274:160 176 177;--pv-tone-587476:158 176 177;--pv-tone-587477:158 175 177;--pv-tone-5b8f89:142 173 170;--pv-tone-5c6c6a:165 175 173;--pv-tone-5c7678:157 173 174;--pv-tone-5f777a:156 170 172;--pv-tone-5f797b:155 171 172;--pv-tone-607976:156 171 170;--pv-tone-607b7d:154 170 171;--pv-tone-608584:148 171 170;--pv-tone-617579:156 168 171;--pv-tone-62d8d4:76 184 180;--pv-tone-647f82:150 166 168;--pv-tone-65787a:155 167 168;--pv-tone-658488:146 165 167;--pv-tone-667876:157 167 166;--pv-tone-667f7c:152 167 165;--pv-tone-668084:149 164 167;--pv-tone-668184:149 165 167;--pv-tone-668481:149 167 165;--pv-tone-67817f:151 166 165;--pv-tone-67e0b1:8 122 91;--pv-tone-682c2b:208 169 168;--pv-tone-688184:149 164 165;--pv-tone-688486:147 164 165;--pv-tone-69817d:151 165 163;--pv-tone-698185:148 162 165;--pv-tone-6c3b0e:229 196 165;--pv-tone-6c7d7b:156 161 160;--pv-tone-6c9291:140 162 161;--pv-tone-6ce2d7:64 182 171;--pv-tone-6d8580:148 162 159;--pv-tone-6d8588:146 160 162;--pv-tone-6eb0b8:108 160 166;--pv-tone-6f8984:145 161 158;--pv-tone-6f8c88:143 160 158;--pv-tone-6f8d8e:142 160 160;--pv-tone-70817f:153 158 157;--pv-tone-708b8c:143 159 160;--pv-tone-70a59e:124 161 156;--pv-tone-70d8f0:49 159 184;--pv-tone-70e8ba:57 181 134;--pv-tone-71847f:93 114 109;--pv-tone-71898a:144 159 159;--pv-tone-718b8e:142 157 159;--pv-tone-718d8c:143 159 158;--pv-tone-718e8c:142 159 158;--pv-tone-71908e:140 159 158;--pv-tone-719092:139 158 159;--pv-tone-72817f:152 157 156;--pv-tone-728d8d:142 158 158;--pv-tone-749a97:133 158 156;--pv-tone-789093:138 153 155;--pv-tone-78928f:138 155 153;--pv-tone-789294:137 154 155;--pv-tone-789395:136 154 155;--pv-tone-789491:137 155 153;--pv-tone-789693:135 155 153;--pv-tone-789794:135 155 153;--pv-tone-789795:135 155 154;--pv-tone-78c8d8:11 111 138;--pv-tone-79a09c:127 155 152;--pv-tone-7b9396:135 151 153;--pv-tone-7b9997:133 153 152;--pv-tone-7c9296:135 150 153;--pv-tone-7e9295:96 115 110;--pv-tone-7f9992:132 151 146;--pv-tone-7f9a9b:131 150 151;--pv-tone-7fa29e:125 152 149;--pv-tone-80969a:132 147 150;--pv-tone-81979a:132 148 150;--pv-tone-81999a:132 149 150;--pv-tone-819c9d:129 149 150;--pv-tone-829895:133 149 147;--pv-tone-829b9c:130 149 149;--pv-tone-82a6a3:122 151 148;--pv-tone-84c4b8:93 157 145;--pv-tone-89a29f:125 145 143;--pv-tone-89a5a1:122 146 142;--pv-tone-8aa0a3:124 142 145;--pv-tone-8aa5a3:122 145 143;--pv-tone-8aa6a3:121 145 143;--pv-tone-8af0c8:48 167 120;--pv-tone-8b7470:160 146 144;--pv-tone-8ba29f:125 144 141;--pv-tone-8ba3a1:124 144 142;--pv-tone-8ba4a2:123 144 143;--pv-tone-8ca9a6:119 144 142;--pv-tone-8cb4ad:108 147 140;--pv-tone-8da19d:126 142 139;--pv-tone-8de8cb:57 161 128;--pv-tone-8eaaa7:118 143 140;--pv-tone-8eb9b5:104 146 142;--pv-tone-8fa5a1:122 142 138;--pv-tone-8fb7b4:106 145 142;--pv-tone-8fbcb4:101 146 138;--pv-tone-91a6a7:121 140 140;--pv-tone-91a7a8:120 140 141;--pv-tone-91aaa7:118 141 138;--pv-tone-91aaa8:118 141 139;--pv-tone-93aaa9:118 140 139;--pv-tone-95aaa5:118 138 133;--pv-tone-95aaa8:118 138 136;--pv-tone-97bfbc:99 141 137;--pv-tone-9aadae:115 134 135;--pv-tone-9ab0ae:113 135 133;--pv-tone-9ac8c0:91 140 132;--pv-tone-9bb0ae:113 134 132;--pv-tone-9bb1af:113 134 132;--pv-tone-9bb9b5:105 136 132;--pv-tone-9bc5bc:94 139 129;--pv-tone-9bc8c0:91 140 131;--pv-tone-9cb1af:113 134 132;--pv-tone-9cb3b1:111 134 132;--pv-tone-9db2ae:112 133 129;--pv-tone-9db5b4:109 134 133;--pv-tone-9dbeb5:101 135 126;--pv-tone-9eb2af:112 132 129;--pv-tone-9eb3b1:111 132 130;--pv-tone-9eb3b2:111 132 131;--pv-tone-9ec8c3:92 137 132;--pv-tone-9fffdc:40 150 110;--pv-tone-a0b5b3:110 131 129;--pv-tone-a57b78:157 126 123;--pv-tone-a5b6b5:109 127 126;--pv-tone-a6bcba:104 128 125;--pv-tone-a7c1bf:100 128 126;--pv-tone-a8bbb6:64 92 86;--pv-tone-a8c9c4:92 129 124;--pv-tone-a9bcba:104 125 123;--pv-tone-a9bdb9:104 125 121;--pv-tone-aabfbc:102 125 122;--pv-tone-aebfbd:102 121 119;--pv-tone-aec2bf:100 122 119;--pv-tone-b16d6a:166 117 115;--pv-tone-b1c3c1:99 120 117;--pv-tone-b39254:177 157 118;--pv-tone-b5c6c4:97 117 115;--pv-tone-b5d4cf:83 122 115;--pv-tone-b7d8d0:79 121 111;--pv-tone-b7f5df:41 139 104;--pv-tone-b8751f:211 170 118;--pv-tone-b8cbc7:93 116 111;--pv-tone-b8cfca:89 117 111;--pv-tone-b8ffe5:36 136 99;--pv-tone-b8fff1:36 136 116;--pv-tone-b9cbc7:93 115 110;--pv-tone-b9fbef:37 138 119;--pv-tone-bad0cc:88 116 111;--pv-tone-badbd9:76 120 117;--pv-tone-bccfcd:89 114 111;--pv-tone-bcded8:73 120 111;--pv-tone-bd8326:206 171 115;--pv-tone-bda980:157 139 100;--pv-tone-bdd0cd:89 113 109;--pv-tone-bfe7df:62 122 110;--pv-tone-c0d1cf:88 111 108;--pv-tone-c1d4d1:85 111 107;--pv-tone-c2a46c:170 145 98;--pv-tone-c2ebe2:57 122 108;--pv-tone-c4d5d2:85 108 104;--pv-tone-c64f49:186 107 103;--pv-tone-c6d6d2:84 107 101;--pv-tone-c6e2dc:70 113 104;--pv-tone-c7d1ce:90 104 100;--pv-tone-c7d6d2:85 106 100;--pv-tone-c7d9d6:81 107 103;--pv-tone-c8d7d3:84 105 99;--pv-tone-c8dcda:78 108 105;--pv-tone-c8e6e1:65 113 105;--pv-tone-c9d7d4:84 104 100;--pv-tone-caa762:178 149 92;--pv-tone-cfe0dc:75 103 96;--pv-tone-d0dfdd:77 101 98;--pv-tone-d1ad67:178 146 83;--pv-tone-d2dad7:84 96 91;--pv-tone-d2e1dd:75 100 93;--pv-tone-d3ac65:180 145 81;--pv-tone-d3dfdd:78 98 94;--pv-tone-d4574e:189 94 87;--pv-tone-d4a85b:185 148 83;--pv-tone-d4e1dd:76 98 91;--pv-tone-d4e2de:74 98 92;--pv-tone-d5e4e0:72 99 92;--pv-tone-d5e5e2:71 99 94;--pv-tone-d5f1ee:52 110 104;--pv-tone-d6e5e1:71 98 91;--pv-tone-d7b979:170 139 75;--pv-tone-d7c18e:154 130 75;--pv-tone-d7e7e4:69 99 93;--pv-tone-d7ebe7:62 102 94;--pv-tone-d7eef0:54 103 107;--pv-tone-d7f8ff:32 104 119;--pv-tone-d7fbff:7 93 115;--pv-tone-d7fff2:32 119 90;--pv-tone-d8dfdd:80 92 89;--pv-tone-d8e4e0:73 95 88;--pv-tone-d8e7e3:69 98 90;--pv-tone-d8e8e4:67 98 91;--pv-tone-d8e8e5:67 98 93;--pv-tone-d8fff3:31 118 92;--pv-tone-d9cdc0:114 97 79;--pv-tone-d9ebe8:63 100 94;--pv-tone-d9fff0:31 118 84;--pv-tone-dbe8e4:69 95 87;--pv-tone-dbe8e5:69 95 89;--pv-tone-dce8e4:69 94 86;--pv-tone-dce8e5:69 94 88;--pv-tone-dce9e7:68 94 90;--pv-tone-dcebe7:65 96 88;--pv-tone-dcebe8:65 96 90;--pv-tone-dcebea:65 96 94;--pv-tone-dff4ef:49 103 90;--pv-tone-dff7ef:43 108 86;--pv-tone-dffff3:30 114 83;--pv-tone-dffff4:30 114 86;--pv-tone-e0c4c1:116 76 71;--pv-tone-e1efed:60 94 89;--pv-tone-e2ece9:66 90 83;--pv-tone-e2f3ef:53 98 87;--pv-tone-e38b2f:205 145 83;--pv-tone-e6eae8:72 82 77;--pv-tone-e7f8f5:44 100 90;--pv-tone-e7fffa:29 110 93;--pv-tone-edf5f2:19 40 36;--pv-tone-efbd6a:138 90 0;--pv-tone-efffff:28 106 106;--pv-tone-f0aa4e:202 138 55;--pv-tone-f1ffff:28 104 104;--pv-tone-f2786d:179 59 52;--pv-tone-f2a59e:155 54 45;--pv-tone-f48b82:172 56 46;--pv-tone-f4fff9:27 103 62;--pv-tone-f4ffff:27 103 103;--pv-tone-f6f8f7:61 73 67;--pv-tone-f6f9f8:57 76 70;--pv-tone-f7faf8:55 77 62;--pv-tone-f9fcfc:49 80 80;--pv-tone-ff9a92:157 50 42;--pv-tone-ffc0b9:135 46 36;--pv-tone-ffc1bb:134 44 36;--pv-tone-ffd595:155 110 41;--pv-tone-ffd9d5:120 40 32;--pv-tone-ffe0a8:145 107 38;--pv-tone-ffe6bf:132 94 35;--pv-tone-fff0cf:123 95 33;--pv-tone-fff4df:114 86 30;--pv-tone-fff6e7:110 80 29;--pv-tone-ffffff:61 61 61}:root[data-color-theme=power-vis-electric-blue-v1]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-canvas:#030818;--color-surface:#05112bdb;--color-surface-strong:#040c22f5;--color-text-primary:#e8f5ff;--color-text-secondary:#9dbee2;--color-text-muted:#5e7ea6;--color-accent-primary:#0084ff;--color-accent-secondary:#00dcff;--color-status-online:#1cdecf;--color-status-normal:#1cdecf;--color-status-delayed:#ffc738;--color-status-offline:#ff6851;--color-status-alert:#ff6851;--color-status-unknown:#6f89aa;--color-selection:#09f;--color-selection-bright:#9ae5ff;--color-map-road:#1d70bd;--color-map-road-dim:#173d69;--color-map-mask:#010512;--color-map-boundary-glow:#00dcff;--color-map-boundary:#4cd2ff;--color-map-boundary-fallback:#ffc738;--color-map-road-focus:#09f;--color-map-road-neutral:#526f94;--color-map-hit-target:#000;--color-map-marker-body:#082b53;--color-map-marker-highlight:#ecf9ff;--color-map-marker-draft:#ff9720;--color-map-marker-preview:#ffc738;--color-map-marker-core:#020f28;--color-map-marker-health-normal:#c4fff9;--color-map-place-panel:#04112b;--color-map-place-panel-border:#1562ac;--color-map-place-title:#e2f3ff;--color-map-place-summary:#7a9ec6;--color-map-place-ring:#357ec5;--color-map-place-count:#eef8ff;--color-map-building-panel-start:#07264f;--color-map-building-panel-end:#03102b;--color-map-building-tower-start:#1181da;--color-map-building-tower-end:#082d5b;--color-map-building-window:#9cecff;--color-map-pole-panel:#04112b;--color-map-pole-core:#031230;--color-map-pole-title:#e2f3ff;--color-map-pole-name:#84aad3;--color-map-pole-meta:#5d85b0;--color-map-admin-route-preview:#7ce8ff;--color-map-admin-road-draft:#09f;--color-chart-series-primary-line:#09f;--color-chart-series-primary-shadow:#0084ff4d;--color-chart-series-primary-point:#91e1ff;--color-chart-point-border:#020f28;--color-chart-series-primary-area-start:#0084ff61;--color-chart-series-primary-area-mid:#00dcff1a;--color-chart-series-primary-emphasis:#daf4ff;--color-chart-series-primary-ripple:#4cd2ff;--color-chart-text:#9dbee2;--color-chart-tooltip-background:#040c22f7;--color-chart-tooltip-border:#0099ff75;--color-chart-tooltip-text:#e8f5ff;--color-chart-grid-strong:#4680be38;--color-chart-grid-soft:#4680be1a;--color-building-ground-start:#061c3d;--color-building-ground-end:#030d25;--color-building-grid:#0099ff2e;--color-building-ground-border:#00dcff3d;--map-provider-style:amap://styles/grey;--pv-tone-000000:0 0 0;--pv-tone-010607:1 4 7;--pv-tone-010708:1 4 8;--pv-tone-020809:2 5 9;--pv-tone-02090a:2 6 10;--pv-tone-02090b:2 6 11;--pv-tone-020a0b:2 6 11;--pv-tone-030e11:3 9 17;--pv-tone-040d0f:3 9 16;--pv-tone-040e10:3 10 17;--pv-tone-040f11:3 10 18;--pv-tone-041013:3 11 20;--pv-tone-041114:4 11 20;--pv-tone-041216:4 12 22;--pv-tone-050f12:3 11 20;--pv-tone-051113:4 12 20;--pv-tone-051114:4 12 21;--pv-tone-051214:4 12 21;--pv-tone-051215:4 12 22;--pv-tone-051216:4 12 23;--pv-tone-051417:4 14 24;--pv-tone-051418:4 14 25;--pv-tone-05181c:5 16 28;--pv-tone-051c1f:5 18 31;--pv-tone-061012:4 12 20;--pv-tone-061113:4 12 21;--pv-tone-061214:4 13 22;--pv-tone-061215:4 13 23;--pv-tone-061315:4 13 23;--pv-tone-061316:4 13 24;--pv-tone-061416:4 14 24;--pv-tone-061518:4 14 26;--pv-tone-061519:5 15 26;--pv-tone-061713:4 18 25;--pv-tone-06171b:5 16 28;--pv-tone-071113:4 13 22;--pv-tone-071214:4 13 23;--pv-tone-071215:4 13 24;--pv-tone-071416:4 14 25;--pv-tone-071417:4 14 26;--pv-tone-071418:5 14 26;--pv-tone-071517:4 15 26;--pv-tone-071519:5 15 27;--pv-tone-071618:5 15 26;--pv-tone-071619:5 15 27;--pv-tone-071719:5 16 27;--pv-tone-07171b:5 16 29;--pv-tone-071813:4 19 27;--pv-tone-07181b:5 17 29;--pv-tone-07191d:5 17 31;--pv-tone-071a1d:5 18 31;--pv-tone-071c1f:6 19 32;--pv-tone-071d23:6 20 36;--pv-tone-081315:4 14 25;--pv-tone-081619:5 16 28;--pv-tone-081719:5 16 28;--pv-tone-08181a:5 17 29;--pv-tone-08181b:5 17 30;--pv-tone-08181c:5 17 31;--pv-tone-08191b:5 18 30;--pv-tone-08191d:6 18 31;--pv-tone-081a1c:5 18 31;--pv-tone-081b1d:6 19 31;--pv-tone-081c1e:6 19 32;--pv-tone-081c1f:6 19 33;--pv-tone-081f22:6 21 36;--pv-tone-08272b:8 25 43;--pv-tone-091416:5 15 26;--pv-tone-091719:5 17 29;--pv-tone-09191c:6 18 31;--pv-tone-091b1d:6 19 32;--pv-tone-091b1f:6 19 34;--pv-tone-091f21:6 21 36;--pv-tone-091f22:6 21 37;--pv-tone-092024:7 22 38;--pv-tone-092122:6 22 37;--pv-tone-0a191c:6 18 32;--pv-tone-0a1c1f:6 20 35;--pv-tone-0a1c20:6 20 36;--pv-tone-0a1d20:6 21 36;--pv-tone-0a1d21:6 21 37;--pv-tone-0a2022:7 22 37;--pv-tone-0a2a2e:8 28 48;--pv-tone-0a3437:10 33 55;--pv-tone-0a535b:10 51 91;--pv-tone-0b191a:6 19 31;--pv-tone-0b1b1d:6 20 34;--pv-tone-0b2022:7 23 38;--pv-tone-0b2427:8 25 43;--pv-tone-0b292d:8 28 48;--pv-tone-0c1f21:7 23 38;--pv-tone-0c2629:8 27 45;--pv-tone-0c2728:8 27 44;--pv-tone-0c3036:10 32 56;--pv-tone-0d2126:8 24 43;--pv-tone-0f2023:8 24 43;--pv-tone-0f2327:8 26 46;--pv-tone-10282c:9 29 51;--pv-tone-102b2d:9 31 52;--pv-tone-102b31:10 31 55;--pv-tone-102f2b:9 37 54;--pv-tone-102f35:10 33 59;--pv-tone-123834:10 43 64;--pv-tone-13272a:9 30 52;--pv-tone-132d30:10 34 57;--pv-tone-142528:9 29 51;--pv-tone-143a40:13 41 71;--pv-tone-143b35:11 47 68;--pv-tone-143f35:12 50 71;--pv-tone-147e91:20 80 145;--pv-tone-154343:13 47 75;--pv-tone-163f3e:13 46 72;--pv-tone-168c7a:22 96 140;--pv-tone-17150d:32 27 5;--pv-tone-17150f:34 27 5;--pv-tone-17363a:12 40 69;--pv-tone-17383d:13 41 71;--pv-tone-173b40:13 43 74;--pv-tone-173f47:14 45 80;--pv-tone-176054:17 71 102;--pv-tone-178a72:23 97 138;--pv-tone-183d40:13 45 75;--pv-tone-183d42:13 45 77;--pv-tone-19302f:11 40 62;--pv-tone-1b180f:37 29 6;--pv-tone-1b2d31:11 36 65;--pv-tone-1c453b:14 59 83;--pv-tone-1e190f:40 29 6;--pv-tone-1e4d45:15 64 92;--pv-tone-1e4e55:17 57 98;--pv-tone-1f8171:22 95 138;--pv-tone-211506:35 22 6;--pv-tone-211b12:45 30 7;--pv-tone-23393c:14 47 81;--pv-tone-238c78:25 105 151;--pv-tone-241405:37 21 5;--pv-tone-245b72:23 67 128;--pv-tone-245d79:24 68 133;--pv-tone-24665c:19 82 119;--pv-tone-263c3e:15 51 85;--pv-tone-266a64:20 84 124;--pv-tone-275c57:18 77 113;--pv-tone-275d51:18 80 114;--pv-tone-278d74:25 109 155;--pv-tone-285d51:19 80 114;--pv-tone-285e64:21 70 119;--pv-tone-295d60:21 71 116;--pv-tone-2a0e11:48 8 13;--pv-tone-2a675e:20 86 125;--pv-tone-2b7065:22 92 133;--pv-tone-2d8c76:26 112 159;--pv-tone-304c49:17 73 107;--pv-tone-306b71:24 81 137;--pv-tone-341f20:71 12 15;--pv-tone-345f5f:22 78 125;--pv-tone-34675a:22 94 133;--pv-tone-356b5d:22 97 138;--pv-tone-397b68:25 110 155;--pv-tone-397c83:28 95 160;--pv-tone-397f70:26 111 158;--pv-tone-3a7564:25 107 151;--pv-tone-3c5553:22 81 123;--pv-tone-3cae9b:33 139 201;--pv-tone-401d21:79 14 21;--pv-tone-445855:22 93 134;--pv-tone-44635e:23 99 144;--pv-tone-458e80:30 127 181;--pv-tone-461416:77 13 16;--pv-tone-463212:78 53 13;--pv-tone-486366:26 88 148;--pv-tone-492b0f:78 44 13;--pv-tone-49625f:24 101 147;--pv-tone-4b2024:91 16 23;--pv-tone-4b7774:29 107 165;--pv-tone-4b9c89:32 140 199;--pv-tone-4ca3aa:37 126 209;--pv-tone-4d686b:28 93 156;--pv-tone-4f6b6d:28 96 160;--pv-tone-4f6d70:29 97 162;--pv-tone-4f8583:32 115 180;--pv-tone-506d70:29 97 163;--pv-tone-506e70:29 99 163;--pv-tone-50706a:27 115 165;--pv-tone-526d70:29 98 165;--pv-tone-526e70:29 100 165;--pv-tone-527173:30 101 167;--pv-tone-536e70:29 100 166;--pv-tone-536f72:30 99 167;--pv-tone-53cbaf:62 167 224;--pv-tone-54706f:29 107 167;--pv-tone-553a16:95 61 15;--pv-tone-557275:30 102 172;--pv-tone-567174:30 102 172;--pv-tone-57736f:28 120 174;--pv-tone-577477:31 104 175;--pv-tone-58726f:28 119 174;--pv-tone-587274:31 104 173;--pv-tone-587476:31 106 175;--pv-tone-587477:31 104 176;--pv-tone-5b8f89:33 138 201;--pv-tone-5c6c6a:28 118 172;--pv-tone-5c7678:32 108 180;--pv-tone-5f777a:33 108 184;--pv-tone-5f797b:33 112 185;--pv-tone-607976:30 128 187;--pv-tone-607b7d:33 113 188;--pv-tone-608584:34 124 195;--pv-tone-617579:33 105 185;--pv-tone-62d8d4:88 166 226;--pv-tone-647f82:35 116 195;--pv-tone-65787a:33 113 190;--pv-tone-658488:36 118 201;--pv-tone-667876:31 131 191;--pv-tone-667f7c:32 135 197;--pv-tone-668084:35 115 199;--pv-tone-668184:35 118 199;--pv-tone-668481:33 137 201;--pv-tone-67817f:35 129 197;--pv-tone-67e0b1:0 153 255;--pv-tone-682c2b:125 24 22;--pv-tone-688184:35 118 201;--pv-tone-688486:36 122 202;--pv-tone-69817d:33 139 201;--pv-tone-698185:36 117 202;--pv-tone-6c3b0e:111 61 14;--pv-tone-6c7d7b:84 111 149;--pv-tone-6c9291:38 137 216;--pv-tone-6ce2d7:104 182 230;--pv-tone-6d8580:34 146 208;--pv-tone-6d8588:37 122 208;--pv-tone-6eb0b8:71 147 223;--pv-tone-6f8984:35 149 213;--pv-tone-6f8c88:35 149 216;--pv-tone-6f8d8e:38 132 215;--pv-tone-70817f:87 115 154;--pv-tone-708b8c:38 132 214;--pv-tone-70a59e:55 160 222;--pv-tone-70d8f0:112 172 240;--pv-tone-70e8ba:0 171 255;--pv-tone-71847f:88 117 157;--pv-tone-71898a:38 131 213;--pv-tone-718b8e:38 128 217;--pv-tone-718d8c:38 138 216;--pv-tone-718e8c:38 141 217;--pv-tone-71908e:40 142 217;--pv-tone-719092:42 133 217;--pv-tone-72817f:87 116 156;--pv-tone-728d8d:38 136 217;--pv-tone-749a97:51 149 219;--pv-tone-789093:48 133 219;--pv-tone-78928f:45 155 221;--pv-tone-789294:49 137 219;--pv-tone-789395:50 138 219;--pv-tone-789491:47 155 221;--pv-tone-789693:49 156 221;--pv-tone-789794:49 156 222;--pv-tone-789795:52 148 219;--pv-tone-78c8d8:0 194 255;--pv-tone-79a09c:58 160 223;--pv-tone-7b9396:54 136 219;--pv-tone-7b9997:56 150 220;--pv-tone-7c9296:54 134 220;--pv-tone-7e9295:55 136 220;--pv-tone-7f9992:57 165 223;--pv-tone-7f9a9b:61 146 221;--pv-tone-7fa29e:65 164 224;--pv-tone-80969a:61 138 221;--pv-tone-81979a:62 141 221;--pv-tone-81999a:62 146 221;--pv-tone-819c9d:65 148 221;--pv-tone-829895:59 162 223;--pv-tone-829b9c:65 148 221;--pv-tone-82a6a3:71 166 225;--pv-tone-84c4b8:98 182 230;--pv-tone-89a29f:74 168 225;--pv-tone-89a5a1:76 170 226;--pv-tone-8aa0a3:77 150 224;--pv-tone-8aa5a3:79 163 224;--pv-tone-8aa6a3:78 170 226;--pv-tone-8af0c8:138 207 240;--pv-tone-8b7470:213 64 38;--pv-tone-8ba29f:75 169 226;--pv-tone-8ba3a1:78 163 224;--pv-tone-8ba4a2:79 163 224;--pv-tone-8ca9a6:82 172 227;--pv-tone-8cb4ad:92 178 228;--pv-tone-8da19d:76 172 226;--pv-tone-8de8cb:137 203 236;--pv-tone-8eaaa7:85 173 227;--pv-tone-8eb9b5:98 179 229;--pv-tone-8fa5a1:81 174 227;--pv-tone-8fb7b4:99 173 227;--pv-tone-8fbcb4:101 183 230;--pv-tone-91a6a7:87 160 225;--pv-tone-91a7a8:88 160 225;--pv-tone-91aaa7:87 175 228;--pv-tone-91aaa8:89 169 226;--pv-tone-93aaa9:91 167 226;--pv-tone-95aaa5:91 180 228;--pv-tone-95aaa8:91 176 228;--pv-tone-97bfbc:112 180 230;--pv-tone-9aadae:100 167 228;--pv-tone-9ab0ae:100 180 230;--pv-tone-9ac8c0:121 192 233;--pv-tone-9bb0ae:101 181 230;--pv-tone-9bb1af:102 181 230;--pv-tone-9bb9b5:109 186 231;--pv-tone-9bc5bc:119 192 233;--pv-tone-9bc8c0:122 193 233;--pv-tone-9cb1af:103 182 230;--pv-tone-9cb3b1:105 182 230;--pv-tone-9db2ae:105 185 230;--pv-tone-9db5b4:109 177 229;--pv-tone-9dbeb5:115 192 232;--pv-tone-9eb2af:105 184 231;--pv-tone-9eb3b1:106 183 231;--pv-tone-9eb3b2:108 177 229;--pv-tone-9ec8c3:124 193 234;--pv-tone-9fffdc:159 224 255;--pv-tone-a0b5b3:110 185 231;--pv-tone-a57b78:221 74 64;--pv-tone-a5b6b5:116 182 231;--pv-tone-a6bcba:121 190 233;--pv-tone-a7c1bf:127 188 233;--pv-tone-a8bbb6:122 195 233;--pv-tone-a8c9c4:134 198 235;--pv-tone-a9bcba:123 192 234;--pv-tone-a9bdb9:124 194 234;--pv-tone-aabfbc:127 194 234;--pv-tone-aebfbd:130 195 235;--pv-tone-aec2bf:133 197 235;--pv-tone-b16d6a:221 69 62;--pv-tone-b1c3c1:136 198 236;--pv-tone-b39254:222 162 49;--pv-tone-b5c6c4:142 201 237;--pv-tone-b5d4cf:154 208 239;--pv-tone-b7d8d0:160 211 239;--pv-tone-b7f5df:183 225 245;--pv-tone-b8751f:190 121 31;--pv-tone-b8cbc7:149 206 238;--pv-tone-b8cfca:153 208 238;--pv-tone-b8ffe5:184 232 255;--pv-tone-b8fff1:184 229 255;--pv-tone-b9cbc7:150 207 238;--pv-tone-b9fbef:185 227 251;--pv-tone-bad0cc:155 208 239;--pv-tone-badbd9:166 208 239;--pv-tone-bccfcd:156 208 239;--pv-tone-bcded8:169 215 241;--pv-tone-bd8326:201 136 33;--pv-tone-bda980:229 186 97;--pv-tone-bdd0cd:158 209 239;--pv-tone-bfe7df:179 220 243;--pv-tone-c0d1cf:161 210 240;--pv-tone-c1d4d1:165 212 240;--pv-tone-c2a46c:227 177 84;--pv-tone-c2ebe2:185 223 244;--pv-tone-c4d5d2:168 214 241;--pv-tone-c64f49:219 60 52;--pv-tone-c6d6d2:171 217 241;--pv-tone-c6e2dc:181 221 243;--pv-tone-c7d1ce:167 216 241;--pv-tone-c7d6d2:172 217 241;--pv-tone-c7d9d6:174 217 242;--pv-tone-c8d7d3:173 218 242;--pv-tone-c8dcda:178 218 242;--pv-tone-c8e6e1:186 223 244;--pv-tone-c9d7d4:174 218 242;--pv-tone-caa762:227 178 82;--pv-tone-cfe0dc:187 224 244;--pv-tone-d0dfdd:187 223 244;--pv-tone-d1ad67:229 182 93;--pv-tone-d2dad7:184 224 244;--pv-tone-d2e1dd:190 226 244;--pv-tone-d3ac65:229 180 93;--pv-tone-d3dfdd:190 224 244;--pv-tone-d4574e:222 78 68;--pv-tone-d4a85b:227 175 85;--pv-tone-d4e1dd:192 227 245;--pv-tone-d4e2de:193 227 245;--pv-tone-d5e4e0:196 228 245;--pv-tone-d5e5e2:197 228 245;--pv-tone-d5f1ee:207 232 247;--pv-tone-d6e5e1:197 229 246;--pv-tone-d7b979:232 194 114;--pv-tone-d7c18e:235 204 132;--pv-tone-d7e7e4:200 229 246;--pv-tone-d7ebe7:203 231 247;--pv-tone-d7eef0:208 228 247;--pv-tone-d7f8ff:215 234 255;--pv-tone-d7fbff:215 235 255;--pv-tone-d7fff2:215 242 255;--pv-tone-d8dfdd:194 228 245;--pv-tone-d8e4e0:198 230 246;--pv-tone-d8e7e3:201 230 246;--pv-tone-d8e8e4:202 231 246;--pv-tone-d8e8e5:202 230 246;--pv-tone-d8fff3:216 242 255;--pv-tone-d9cdc0:235 186 132;--pv-tone-d9ebe8:205 232 247;--pv-tone-d9fff0:217 243 255;--pv-tone-dbe8e4:204 232 247;--pv-tone-dbe8e5:204 232 247;--pv-tone-dce8e4:205 233 247;--pv-tone-dce8e5:205 232 247;--pv-tone-dce9e7:206 232 247;--pv-tone-dcebe7:208 234 247;--pv-tone-dcebe8:208 233 247;--pv-tone-dcebea:208 230 247;--pv-tone-dff4ef:218 238 249;--pv-tone-dff7ef:221 240 249;--pv-tone-dffff3:223 245 255;--pv-tone-dffff4:223 244 255;--pv-tone-e0c4c1:241 182 176;--pv-tone-e1efed:215 236 249;--pv-tone-e2ece9:214 237 248;--pv-tone-e2f3ef:220 239 249;--pv-tone-e38b2f:228 143 54;--pv-tone-e6eae8:215 239 249;--pv-tone-e7f8f5:228 243 251;--pv-tone-e7fffa:231 246 255;--pv-tone-edf5f2:231 245 251;--pv-tone-efbd6a:240 193 115;--pv-tone-efffff:239 248 255;--pv-tone-f0aa4e:241 174 87;--pv-tone-f1ffff:241 249 255;--pv-tone-f2786d:242 120 109;--pv-tone-f2a59e:242 165 158;--pv-tone-f48b82:244 139 130;--pv-tone-f4fff9:244 252 255;--pv-tone-f4ffff:244 250 255;--pv-tone-f6f8f7:241 249 253;--pv-tone-f6f9f8:242 249 253;--pv-tone-f7faf8:244 251 253;--pv-tone-f9fcfc:247 251 254;--pv-tone-ff9a92:255 154 146;--pv-tone-ffc0b9:255 192 185;--pv-tone-ffc1bb:255 193 187;--pv-tone-ffd595:255 198 112;--pv-tone-ffd9d5:255 217 213;--pv-tone-ffe0a8:255 204 112;--pv-tone-ffe6bf:255 199 112;--pv-tone-fff0cf:255 210 112;--pv-tone-fff4df:255 206 112;--pv-tone-fff6e7:255 201 112;--pv-tone-ffffff:255 255 255}:root[data-color-theme=power-vis-shouning-v1]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-canvas:#000716;--color-surface:#001123;--color-surface-strong:#001020;--color-text-primary:#d4b59b;--color-text-secondary:#bd9b82;--color-text-muted:#927b69;--color-accent-primary:#0080ff;--color-accent-secondary:#00e0e8;--color-status-online:#547b32;--color-status-normal:#547b32;--color-status-delayed:#ffb039;--color-status-offline:#f2786d;--color-status-alert:#f2786d;--color-status-unknown:#7e92a1;--color-selection:#0080ff;--color-selection-bright:#a0e7ff;--color-map-road:#185274;--color-map-road-dim:#0c3147;--color-map-mask:#000716;--color-map-boundary-glow:#00e0e8;--color-map-boundary:#73d3ff;--color-map-boundary-fallback:#ffb039;--color-map-road-focus:#00b2e6;--color-map-road-neutral:#5b717b;--color-map-hit-target:#000;--color-map-marker-body:#042b49;--color-map-marker-highlight:#eff;--color-map-marker-draft:#ff9600;--color-map-marker-preview:#ffb039;--color-map-marker-core:#001023;--color-map-marker-health-normal:#d5f8ff;--color-map-place-panel:#001123;--color-map-place-panel-border:#085474;--color-map-place-title:#d4b59b;--color-map-place-summary:#aa8c78;--color-map-place-ring:#24678f;--color-map-place-count:#eee8db;--color-map-building-panel-start:#002139;--color-map-building-panel-end:#001123;--color-map-building-tower-start:#0a528c;--color-map-building-tower-end:#032343;--color-map-building-window:#a0ebff;--color-map-pole-panel:#001123;--color-map-pole-core:#001228;--color-map-pole-title:#d4b59b;--color-map-pole-name:#c8a68d;--color-map-pole-meta:#aa8c78;--color-map-admin-route-preview:#00e0e8;--color-map-admin-road-draft:#0080ff;--color-chart-series-primary-line:#00e0e8;--color-chart-series-primary-shadow:#0080ff4d;--color-chart-series-primary-point:#e0ffff;--color-chart-point-border:#001023;--color-chart-series-primary-area-start:#00e0e833;--color-chart-series-primary-area-mid:#0080ff14;--color-chart-series-primary-emphasis:#e0ffff;--color-chart-series-primary-ripple:#00e0e8;--color-chart-text:#c8a68d;--color-chart-tooltip-background:#001023f7;--color-chart-tooltip-border:#00e0e875;--color-chart-tooltip-text:#eee8db;--color-chart-grid-strong:#264051b3;--color-chart-grid-soft:#14334980;--color-building-ground-start:#041f36;--color-building-ground-end:#000f20;--color-building-grid:#00e0e824;--color-building-ground-border:#0080ff42;--map-provider-style:amap://styles/grey;--pv-tone-000000:0 0 0;--pv-tone-010607:1 4 7;--pv-tone-010708:1 4 8;--pv-tone-020809:2 5 9;--pv-tone-02090a:2 6 10;--pv-tone-02090b:2 6 11;--pv-tone-020a0b:2 6 11;--pv-tone-030e11:3 9 17;--pv-tone-040d0f:3 9 16;--pv-tone-040e10:3 10 17;--pv-tone-040f11:3 10 18;--pv-tone-041013:3 11 20;--pv-tone-041114:4 11 20;--pv-tone-041216:4 12 22;--pv-tone-050f12:3 11 20;--pv-tone-051113:4 12 20;--pv-tone-051114:4 12 21;--pv-tone-051214:4 12 21;--pv-tone-051215:4 12 22;--pv-tone-051216:4 12 23;--pv-tone-051417:4 14 24;--pv-tone-051418:4 14 25;--pv-tone-05181c:5 16 28;--pv-tone-051c1f:5 18 31;--pv-tone-061012:4 12 20;--pv-tone-061113:4 12 21;--pv-tone-061214:4 13 22;--pv-tone-061215:4 13 23;--pv-tone-061315:4 13 23;--pv-tone-061316:4 13 24;--pv-tone-061416:4 14 24;--pv-tone-061518:4 14 26;--pv-tone-061519:5 15 26;--pv-tone-061713:4 18 25;--pv-tone-06171b:5 16 28;--pv-tone-071113:4 13 22;--pv-tone-071214:4 13 23;--pv-tone-071215:4 13 24;--pv-tone-071416:4 14 25;--pv-tone-071417:4 14 26;--pv-tone-071418:5 14 26;--pv-tone-071517:4 15 26;--pv-tone-071519:5 15 27;--pv-tone-071618:5 15 26;--pv-tone-071619:5 15 27;--pv-tone-071719:5 16 27;--pv-tone-07171b:5 16 29;--pv-tone-071813:4 19 27;--pv-tone-07181b:5 17 29;--pv-tone-07191d:5 17 31;--pv-tone-071a1d:5 18 31;--pv-tone-071c1f:6 19 32;--pv-tone-071d23:6 20 36;--pv-tone-081315:4 14 25;--pv-tone-081619:5 16 28;--pv-tone-081719:5 16 28;--pv-tone-08181a:5 17 29;--pv-tone-08181b:5 17 30;--pv-tone-08181c:5 17 31;--pv-tone-08191b:5 18 30;--pv-tone-08191d:6 18 31;--pv-tone-081a1c:5 18 31;--pv-tone-081b1d:6 19 31;--pv-tone-081c1e:6 19 32;--pv-tone-081c1f:6 19 33;--pv-tone-081f22:6 21 36;--pv-tone-08272b:8 25 43;--pv-tone-091416:5 15 26;--pv-tone-091719:5 17 29;--pv-tone-09191c:6 18 31;--pv-tone-091b1d:6 19 32;--pv-tone-091b1f:6 19 34;--pv-tone-091f21:6 21 36;--pv-tone-091f22:6 21 37;--pv-tone-092024:7 22 38;--pv-tone-092122:6 22 37;--pv-tone-0a191c:6 18 32;--pv-tone-0a1c1f:6 20 35;--pv-tone-0a1c20:6 20 36;--pv-tone-0a1d20:6 21 36;--pv-tone-0a1d21:6 21 37;--pv-tone-0a2022:7 22 37;--pv-tone-0a2a2e:8 28 48;--pv-tone-0a3437:10 33 55;--pv-tone-0a535b:10 51 91;--pv-tone-0b191a:6 19 31;--pv-tone-0b1b1d:6 20 34;--pv-tone-0b2022:7 23 38;--pv-tone-0b2427:8 25 43;--pv-tone-0b292d:8 28 48;--pv-tone-0c1f21:7 23 38;--pv-tone-0c2629:8 27 45;--pv-tone-0c2728:8 27 44;--pv-tone-0c3036:10 32 56;--pv-tone-0d2126:8 24 43;--pv-tone-0f2023:8 24 43;--pv-tone-0f2327:8 26 46;--pv-tone-10282c:9 29 51;--pv-tone-102b2d:9 31 52;--pv-tone-102b31:10 31 55;--pv-tone-102f2b:9 37 54;--pv-tone-102f35:10 33 59;--pv-tone-123834:10 43 64;--pv-tone-13272a:9 30 52;--pv-tone-132d30:10 34 57;--pv-tone-142528:9 29 51;--pv-tone-143a40:13 41 71;--pv-tone-143b35:11 47 68;--pv-tone-143f35:12 50 71;--pv-tone-147e91:20 80 145;--pv-tone-154343:13 47 75;--pv-tone-163f3e:13 46 72;--pv-tone-168c7a:22 96 140;--pv-tone-17150d:32 27 5;--pv-tone-17150f:34 27 5;--pv-tone-17363a:12 40 69;--pv-tone-17383d:13 41 71;--pv-tone-173b40:13 43 74;--pv-tone-173f47:14 45 80;--pv-tone-176054:17 71 102;--pv-tone-178a72:23 97 138;--pv-tone-183d40:13 45 75;--pv-tone-183d42:13 45 77;--pv-tone-19302f:11 40 62;--pv-tone-1b180f:37 29 6;--pv-tone-1b2d31:11 36 65;--pv-tone-1c453b:14 59 83;--pv-tone-1e190f:40 29 6;--pv-tone-1e4d45:15 64 92;--pv-tone-1e4e55:17 57 98;--pv-tone-1f8171:22 95 138;--pv-tone-211506:35 22 6;--pv-tone-211b12:45 30 7;--pv-tone-23393c:14 47 81;--pv-tone-238c78:25 105 151;--pv-tone-241405:37 21 5;--pv-tone-245b72:23 67 128;--pv-tone-245d79:24 68 133;--pv-tone-24665c:19 82 119;--pv-tone-263c3e:15 51 85;--pv-tone-266a64:20 84 124;--pv-tone-275c57:18 77 113;--pv-tone-275d51:18 80 114;--pv-tone-278d74:25 109 155;--pv-tone-285d51:19 80 114;--pv-tone-285e64:21 70 119;--pv-tone-295d60:21 71 116;--pv-tone-2a0e11:48 8 13;--pv-tone-2a675e:20 86 125;--pv-tone-2b7065:22 92 133;--pv-tone-2d8c76:26 112 159;--pv-tone-304c49:17 73 107;--pv-tone-306b71:24 81 137;--pv-tone-341f20:71 12 15;--pv-tone-345f5f:22 78 125;--pv-tone-34675a:22 94 133;--pv-tone-356b5d:22 97 138;--pv-tone-397b68:25 110 155;--pv-tone-397c83:28 95 160;--pv-tone-397f70:26 111 158;--pv-tone-3a7564:25 107 151;--pv-tone-3c5553:22 81 123;--pv-tone-3cae9b:33 139 201;--pv-tone-401d21:79 14 21;--pv-tone-445855:22 93 134;--pv-tone-44635e:23 99 144;--pv-tone-458e80:30 127 181;--pv-tone-461416:77 13 16;--pv-tone-463212:78 53 13;--pv-tone-486366:26 88 148;--pv-tone-492b0f:78 44 13;--pv-tone-49625f:24 101 147;--pv-tone-4b2024:91 16 23;--pv-tone-4b7774:29 107 165;--pv-tone-4b9c89:32 140 199;--pv-tone-4ca3aa:37 126 209;--pv-tone-4d686b:28 93 156;--pv-tone-4f6b6d:28 96 160;--pv-tone-4f6d70:29 97 162;--pv-tone-4f8583:32 115 180;--pv-tone-506d70:29 97 163;--pv-tone-506e70:29 99 163;--pv-tone-50706a:27 115 165;--pv-tone-526d70:29 98 165;--pv-tone-526e70:29 100 165;--pv-tone-527173:30 101 167;--pv-tone-536e70:29 100 166;--pv-tone-536f72:30 99 167;--pv-tone-53cbaf:62 167 224;--pv-tone-54706f:29 107 167;--pv-tone-553a16:95 61 15;--pv-tone-557275:30 102 172;--pv-tone-567174:30 102 172;--pv-tone-57736f:28 120 174;--pv-tone-577477:31 104 175;--pv-tone-58726f:28 119 174;--pv-tone-587274:31 104 173;--pv-tone-587476:31 106 175;--pv-tone-587477:31 104 176;--pv-tone-5b8f89:33 138 201;--pv-tone-5c6c6a:28 118 172;--pv-tone-5c7678:32 108 180;--pv-tone-5f777a:33 108 184;--pv-tone-5f797b:33 112 185;--pv-tone-607976:30 128 187;--pv-tone-607b7d:33 113 188;--pv-tone-608584:34 124 195;--pv-tone-617579:33 105 185;--pv-tone-62d8d4:88 166 226;--pv-tone-647f82:35 116 195;--pv-tone-65787a:33 113 190;--pv-tone-658488:36 118 201;--pv-tone-667876:31 131 191;--pv-tone-667f7c:32 135 197;--pv-tone-668084:35 115 199;--pv-tone-668184:35 118 199;--pv-tone-668481:33 137 201;--pv-tone-67817f:35 129 197;--pv-tone-67e0b1:0 224 232;--pv-tone-682c2b:125 24 22;--pv-tone-688184:35 118 201;--pv-tone-688486:36 122 202;--pv-tone-69817d:33 139 201;--pv-tone-698185:36 117 202;--pv-tone-6c3b0e:111 61 14;--pv-tone-6c7d7b:84 111 149;--pv-tone-6c9291:38 137 216;--pv-tone-6ce2d7:104 182 230;--pv-tone-6d8580:34 146 208;--pv-tone-6d8588:37 122 208;--pv-tone-6eb0b8:71 147 223;--pv-tone-6f8984:35 149 213;--pv-tone-6f8c88:35 149 216;--pv-tone-6f8d8e:38 132 215;--pv-tone-70817f:87 115 154;--pv-tone-708b8c:38 132 214;--pv-tone-70a59e:55 160 222;--pv-tone-70d8f0:112 172 240;--pv-tone-70e8ba:0 171 255;--pv-tone-71847f:88 117 157;--pv-tone-71898a:38 131 213;--pv-tone-718b8e:38 128 217;--pv-tone-718d8c:38 138 216;--pv-tone-718e8c:38 141 217;--pv-tone-71908e:40 142 217;--pv-tone-719092:42 133 217;--pv-tone-72817f:87 116 156;--pv-tone-728d8d:38 136 217;--pv-tone-749a97:51 149 219;--pv-tone-789093:48 133 219;--pv-tone-78928f:45 155 221;--pv-tone-789294:49 137 219;--pv-tone-789395:50 138 219;--pv-tone-789491:47 155 221;--pv-tone-789693:49 156 221;--pv-tone-789794:49 156 222;--pv-tone-789795:52 148 219;--pv-tone-78c8d8:0 194 255;--pv-tone-79a09c:58 160 223;--pv-tone-7b9396:54 136 219;--pv-tone-7b9997:56 150 220;--pv-tone-7c9296:54 134 220;--pv-tone-7e9295:55 136 220;--pv-tone-7f9992:57 165 223;--pv-tone-7f9a9b:61 146 221;--pv-tone-7fa29e:65 164 224;--pv-tone-80969a:61 138 221;--pv-tone-81979a:62 141 221;--pv-tone-81999a:62 146 221;--pv-tone-819c9d:65 148 221;--pv-tone-829895:59 162 223;--pv-tone-829b9c:65 148 221;--pv-tone-82a6a3:71 166 225;--pv-tone-84c4b8:98 182 230;--pv-tone-89a29f:74 168 225;--pv-tone-89a5a1:76 170 226;--pv-tone-8aa0a3:77 150 224;--pv-tone-8aa5a3:79 163 224;--pv-tone-8aa6a3:78 170 226;--pv-tone-8af0c8:138 207 240;--pv-tone-8b7470:213 64 38;--pv-tone-8ba29f:75 169 226;--pv-tone-8ba3a1:78 163 224;--pv-tone-8ba4a2:79 163 224;--pv-tone-8ca9a6:82 172 227;--pv-tone-8cb4ad:92 178 228;--pv-tone-8da19d:76 172 226;--pv-tone-8de8cb:137 203 236;--pv-tone-8eaaa7:85 173 227;--pv-tone-8eb9b5:98 179 229;--pv-tone-8fa5a1:81 174 227;--pv-tone-8fb7b4:99 173 227;--pv-tone-8fbcb4:101 183 230;--pv-tone-91a6a7:87 160 225;--pv-tone-91a7a8:88 160 225;--pv-tone-91aaa7:87 175 228;--pv-tone-91aaa8:89 169 226;--pv-tone-93aaa9:91 167 226;--pv-tone-95aaa5:91 180 228;--pv-tone-95aaa8:91 176 228;--pv-tone-97bfbc:112 180 230;--pv-tone-9aadae:100 167 228;--pv-tone-9ab0ae:100 180 230;--pv-tone-9ac8c0:121 192 233;--pv-tone-9bb0ae:101 181 230;--pv-tone-9bb1af:102 181 230;--pv-tone-9bb9b5:109 186 231;--pv-tone-9bc5bc:119 192 233;--pv-tone-9bc8c0:122 193 233;--pv-tone-9cb1af:103 182 230;--pv-tone-9cb3b1:105 182 230;--pv-tone-9db2ae:105 185 230;--pv-tone-9db5b4:109 177 229;--pv-tone-9dbeb5:115 192 232;--pv-tone-9eb2af:105 184 231;--pv-tone-9eb3b1:106 183 231;--pv-tone-9eb3b2:108 177 229;--pv-tone-9ec8c3:124 193 234;--pv-tone-9fffdc:159 224 255;--pv-tone-a0b5b3:110 185 231;--pv-tone-a57b78:221 74 64;--pv-tone-a5b6b5:116 182 231;--pv-tone-a6bcba:121 190 233;--pv-tone-a7c1bf:127 188 233;--pv-tone-a8bbb6:122 195 233;--pv-tone-a8c9c4:134 198 235;--pv-tone-a9bcba:123 192 234;--pv-tone-a9bdb9:124 194 234;--pv-tone-aabfbc:127 194 234;--pv-tone-aebfbd:130 195 235;--pv-tone-aec2bf:133 197 235;--pv-tone-b16d6a:221 69 62;--pv-tone-b1c3c1:136 198 236;--pv-tone-b39254:222 162 49;--pv-tone-b5c6c4:142 201 237;--pv-tone-b5d4cf:154 208 239;--pv-tone-b7d8d0:160 211 239;--pv-tone-b7f5df:203 189 172;--pv-tone-b8751f:190 121 31;--pv-tone-b8cbc7:149 206 238;--pv-tone-b8cfca:153 208 238;--pv-tone-b8ffe5:184 232 255;--pv-tone-b8fff1:184 229 255;--pv-tone-b9cbc7:150 207 238;--pv-tone-b9fbef:185 227 251;--pv-tone-bad0cc:155 208 239;--pv-tone-badbd9:166 208 239;--pv-tone-bccfcd:156 208 239;--pv-tone-bcded8:169 215 241;--pv-tone-bd8326:201 136 33;--pv-tone-bda980:229 186 97;--pv-tone-bdd0cd:158 209 239;--pv-tone-bfe7df:200 185 169;--pv-tone-c0d1cf:161 210 240;--pv-tone-c1d4d1:165 212 240;--pv-tone-c2a46c:227 177 84;--pv-tone-c2ebe2:203 188 171;--pv-tone-c4d5d2:168 214 241;--pv-tone-c64f49:219 60 52;--pv-tone-c6d6d2:171 217 241;--pv-tone-c6e2dc:201 186 169;--pv-tone-c7d1ce:167 216 241;--pv-tone-c7d6d2:172 217 241;--pv-tone-c7d9d6:174 217 242;--pv-tone-c8d7d3:173 218 242;--pv-tone-c8dcda:198 184 168;--pv-tone-c8e6e1:203 189 172;--pv-tone-c9d7d4:174 218 242;--pv-tone-caa762:227 178 82;--pv-tone-cfe0dc:204 189 172;--pv-tone-d0dfdd:203 189 172;--pv-tone-d1ad67:229 182 93;--pv-tone-d2dad7:203 188 171;--pv-tone-d2e1dd:205 191 173;--pv-tone-d3ac65:229 180 93;--pv-tone-d3dfdd:205 190 173;--pv-tone-d4574e:222 78 68;--pv-tone-d4a85b:227 175 85;--pv-tone-d4e1dd:207 192 174;--pv-tone-d4e2de:207 192 175;--pv-tone-d5e4e0:208 193 176;--pv-tone-d5e5e2:208 194 176;--pv-tone-d5f1ee:213 198 180;--pv-tone-d6e5e1:209 194 177;--pv-tone-d7b979:232 194 114;--pv-tone-d7c18e:235 204 132;--pv-tone-d7e7e4:210 195 177;--pv-tone-d7ebe7:212 197 179;--pv-tone-d7eef0:212 197 179;--pv-tone-d7f8ff:219 203 185;--pv-tone-d7fbff:219 204 185;--pv-tone-d7fff2:222 206 187;--pv-tone-d8dfdd:208 193 175;--pv-tone-d8e4e0:210 195 177;--pv-tone-d8e7e3:211 196 178;--pv-tone-d8e8e4:211 196 178;--pv-tone-d8e8e5:211 196 178;--pv-tone-d8fff3:222 206 187;--pv-tone-d9cdc0:235 186 132;--pv-tone-d9ebe8:213 198 180;--pv-tone-d9fff0:222 207 188;--pv-tone-dbe8e4:212 197 179;--pv-tone-dbe8e5:212 197 179;--pv-tone-dce8e4:213 198 180;--pv-tone-dce8e5:213 198 180;--pv-tone-dce9e7:213 198 180;--pv-tone-dcebe7:214 199 181;--pv-tone-dcebe8:214 199 181;--pv-tone-dcebea:213 198 180;--pv-tone-dff4ef:219 204 185;--pv-tone-dff7ef:221 205 187;--pv-tone-dffff3:225 209 190;--pv-tone-dffff4:225 209 190;--pv-tone-e0c4c1:241 182 176;--pv-tone-e1efed:218 202 184;--pv-tone-e2ece9:217 202 184;--pv-tone-e2f3ef:220 205 186;--pv-tone-e38b2f:228 143 54;--pv-tone-e6eae8:219 203 185;--pv-tone-e7f8f5:225 209 190;--pv-tone-e7fffa:228 211 192;--pv-tone-edf5f2:226 210 191;--pv-tone-efbd6a:240 193 115;--pv-tone-efffff:231 214 195;--pv-tone-f0aa4e:241 174 87;--pv-tone-f1ffff:232 215 196;--pv-tone-f2786d:242 120 109;--pv-tone-f2a59e:242 165 158;--pv-tone-f48b82:244 139 130;--pv-tone-f4fff9:234 217 197;--pv-tone-f4ffff:233 216 197;--pv-tone-f6f8f7:231 215 195;--pv-tone-f6f9f8:231 215 195;--pv-tone-f7faf8:233 216 197;--pv-tone-f9fcfc:234 217 198;--pv-tone-ff9a92:255 154 146;--pv-tone-ffc0b9:255 192 185;--pv-tone-ffc1bb:255 193 187;--pv-tone-ffd595:255 198 112;--pv-tone-ffd9d5:213 198 180;--pv-tone-ffe0a8:255 204 112;--pv-tone-ffe6bf:255 199 112;--pv-tone-fff0cf:255 210 112;--pv-tone-fff4df:255 206 112;--pv-tone-fff6e7:255 201 112;--pv-tone-ffffff:238 221 201}:root{color:var(--color-text-primary);background:var(--color-canvas);font-synthesis:none;text-rendering:optimizelegibility;--mint:var(--color-accent-primary);--cyan:var(--color-accent-secondary);--amber:var(--color-status-delayed);--coral:var(--color-status-alert);--text-primary:var(--color-text-primary);--text-secondary:var(--color-text-secondary);--text-muted:var(--color-text-muted);--muted:var(--color-text-muted);--line:rgb(var(--pv-tone-9dbeb5) / .11);--surface:var(--color-surface);--surface-strong:var(--color-surface-strong);--panel:var(--surface);--radius-lg:14px;--radius-md:10px;--motion-instant:.16s;--motion-acquire:.56s;--motion-scene:.88s;--ease-out-expo:cubic-bezier(.16, 1, .3, 1);font-family:Noto Sans SC,Microsoft YaHei,system-ui,sans-serif}body.building-page-body{min-width:0}.building-lab-shell{background:radial-gradient(circle at 52% 46%, rgb(var(--pv-tone-24665c) / .14), transparent 38%), linear-gradient(155deg, rgb(var(--pv-tone-071719)), rgb(var(--pv-tone-050f12)) 72%);width:100%;height:100vh;min-height:760px;padding:clamp(10px,.8vw,20px);overflow:hidden}.building-mapping-error{height:100%;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:18px;font-size:16px;display:flex}.building-mapping-error a{color:var(--cyan)}.building-scene-panel>.building-mapping-error{z-index:24;background:rgb(var(--pv-tone-050f12) / .82);position:absolute;inset:0}.building-lab-workspace{isolation:isolate;border-radius:16px;grid-template-rows:62px minmax(330px,1fr) minmax(330px,1fr);grid-template-columns:minmax(0,1fr) clamp(460px,28vw,520px);gap:12px;width:100%;min-width:0;height:100%;min-height:0;display:grid;position:relative;overflow:hidden}.building-workspace-header,.building-campus-panel,.building-scene-panel{z-index:1;border:1px solid rgb(var(--pv-tone-9dbeb5) / .12);background:rgb(var(--pv-tone-071719));min-width:0;min-height:0;box-shadow:0 18px 48px rgb(var(--pv-tone-000000) / .18);border-radius:14px;position:relative;overflow:hidden}.building-workspace-header{z-index:30;background:linear-gradient(135deg, rgb(var(--pv-tone-0a1d20) / .96), rgb(var(--pv-tone-061215) / .96));grid-area:1/1/auto/-1;align-items:center;display:flex;overflow:visible}.building-campus-panel{flex-direction:column;grid-area:2/1/-1;display:flex}.building-scene-panel{border-color:rgb(var(--pv-tone-9dbeb5) / .2);width:100%;box-shadow:0 24px 70px rgb(var(--pv-tone-000000) / .38);background:radial-gradient(ellipse at 52% 56%, rgb(var(--pv-tone-2b7065) / .18), transparent 43%), linear-gradient(rgb(var(--pv-tone-78c8d8) / .022) 1px, transparent 1px), linear-gradient(90deg, rgb(var(--pv-tone-78c8d8) / .022) 1px, transparent 1px), linear-gradient(160deg, rgb(var(--pv-tone-081c1e)), rgb(var(--pv-tone-061416)) 72%);background-size:auto,42px 42px,42px 42px,auto;grid-area:2/2;margin:0;display:grid}.building-scene-panel:after{content:"";z-index:2;pointer-events:none;background:linear-gradient(90deg, rgb(var(--pv-tone-040d0f) / .34), transparent 22%, transparent 75%, rgb(var(--pv-tone-040d0f) / .36));position:absolute;inset:0}.building-campus-viewport{aspect-ratio:1728/910;border-bottom:1px solid rgb(var(--pv-tone-9dbeb5) / .1);background:rgb(var(--pv-tone-071416));width:100%;height:auto;position:relative;overflow:hidden}.building-campus-viewport:after{content:"";z-index:2;pointer-events:none;background:linear-gradient(180deg, rgb(var(--pv-tone-040d0f) / .14), transparent 20% 78%, rgb(var(--pv-tone-040d0f) / .2));position:absolute;inset:0}.building-campus-panel>.building-campus-viewport{aspect-ratio:auto;flex:auto;height:auto;min-height:0}.building-floor-rail{z-index:7;border:1px solid rgb(var(--pv-tone-9dbeb5) / .14);background:rgb(var(--pv-tone-061215) / .92);border-radius:9px;grid-template-columns:repeat(8,minmax(0,1fr));gap:5px;margin:8px 14px 0;padding:7px;display:grid;position:relative}.building-floor-rail button{min-width:0;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;gap:2px;padding:5px 4px;font-size:8px;display:grid}.building-floor-rail button b{text-overflow:ellipsis;white-space:nowrap;font-weight:550;overflow:hidden}.building-floor-rail button small{color:var(--text-muted);font:8px IBM Plex Mono,monospace}.building-floor-rail button.active,.building-floor-rail button:hover{color:var(--cyan);border-color:rgb(var(--pv-tone-78c8d8) / .4);background:rgb(var(--pv-tone-78c8d8) / .1)}.building-floor-rail.empty{grid-template-columns:minmax(0,1fr)}.building-floor-rail.empty button{cursor:default;text-align:left}.building-floor-rail.empty button:hover{color:var(--text-muted);background:0 0;border-color:#0000}.building-zone-selector{display:none!important}.building-zone-rail{z-index:7;border:1px solid rgb(var(--pv-tone-9dbeb5) / .14);background:rgb(var(--pv-tone-061215) / .92);border-radius:9px;flex-wrap:wrap;gap:5px;margin:8px 14px 0;padding:7px;display:flex;position:relative;overflow:hidden}.building-zone-rail button{min-width:90px;color:var(--text-muted);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;flex:110px;gap:2px;padding:6px 9px;font-size:9px;display:grid}.building-zone-rail button small{color:var(--text-muted);font-size:7px}.building-zone-rail button.active,.building-zone-rail button:hover{color:var(--cyan);border-color:rgb(var(--pv-tone-78c8d8) / .4);background:rgb(var(--pv-tone-78c8d8) / .1)}.building-panel-label{z-index:18;color:var(--text-secondary);border:1px solid rgb(var(--pv-tone-9dbeb5) / .13);background:rgb(var(--pv-tone-071517) / .88);box-shadow:0 10px 28px rgb(var(--pv-tone-000000) / .18);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:none;border-radius:8px;align-items:center;gap:8px;padding:7px 9px;display:flex;position:absolute;top:14px;left:14px}.building-panel-label span{color:var(--mint);font:8px IBM Plex Mono,monospace}.building-panel-label b{letter-spacing:.08em;font-size:9px;font-weight:550}.building-scene-context{z-index:1;align-items:center;gap:12px;height:100%;padding:9px 14px;display:flex;position:relative}.building-scene-context>a,.building-scene-context>button{width:42px;height:42px;color:var(--cyan);border:1px solid rgb(var(--pv-tone-78c8d8) / .18);background:rgb(var(--pv-tone-78c8d8) / .04);cursor:pointer;border-radius:9px;place-items:center;font-size:19px;text-decoration:none;display:grid}.building-scene-context span,.building-scene-context h1{display:block}.building-scene-context span{color:var(--text-muted);letter-spacing:.08em;font-size:9px}.building-scene-context h1{color:rgb(var(--pv-tone-e2ece9));letter-spacing:.05em;margin:3px 0 0;font-size:17px;font-weight:600}.building-scene-context>b{color:var(--amber);border:1px solid rgb(var(--pv-tone-d4a85b) / .2);background:rgb(var(--pv-tone-553a16) / .13);border-radius:7px;padding:6px 8px;font-size:9px;font-weight:500}.building-primary-nav{align-items:center;gap:6px;margin-left:auto;display:flex}.building-primary-nav a{min-height:34px;color:var(--text-secondary);border:1px solid rgb(var(--pv-tone-78c8d8) / .2);background:rgb(var(--pv-tone-78c8d8) / .05);white-space:nowrap;border-radius:7px;align-items:center;padding:0 11px;font-size:10px;text-decoration:none;display:inline-flex}.building-primary-nav a:hover,.building-primary-nav a:focus-visible{color:var(--cyan);border-color:var(--cyan);outline:2px solid rgb(var(--pv-tone-78c8d8) / .35);outline-offset:2px}.building-header-stats{align-items:center;gap:7px;margin-left:auto;display:flex}.building-header-stats span{border:1px solid rgb(var(--pv-tone-9dbeb5) / .12);background:rgb(var(--pv-tone-000000) / .12);border-radius:7px;gap:2px;min-width:58px;padding:5px 8px;display:grid}.building-header-stats small{color:var(--text-muted);font-size:7px}.building-header-stats b{color:var(--cyan);font:11px IBM Plex Mono,monospace}.building-theme-selector{color:var(--text-muted);white-space:nowrap;align-items:center;gap:7px;margin-left:auto;font-size:10px;display:flex}.building-theme-selector select{min-width:76px;min-height:42px;color:var(--text-secondary);border:1px solid rgb(var(--pv-tone-9dbeb5) / .22);background:rgb(var(--pv-tone-071719) / .9);cursor:pointer;font:inherit;border-radius:7px;padding:7px 24px 7px 9px}.building-theme-selector select:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.building-breadcrumb{color:var(--text-muted);align-items:center;gap:6px;font-size:9px;display:flex}.building-breadcrumb button{color:var(--cyan);cursor:pointer;font:inherit;background:0 0;border:0;padding:0}.building-breadcrumb button:hover,.building-breadcrumb button:focus-visible{color:var(--mint);outline:none}.building-breadcrumb i{color:rgb(var(--pv-tone-789794));font-style:normal}.building-breadcrumb b{color:var(--text-secondary);font-weight:550}.building-utility-menu{z-index:30;margin:0 14px 0 auto;position:relative}.building-utility-menu summary{width:42px;height:42px;color:rgb(var(--pv-tone-8ba29f));border:1px solid rgb(var(--pv-tone-9dbeb5) / .13);background:rgb(var(--pv-tone-071517) / .9);cursor:pointer;letter-spacing:.12em;border-radius:9px;place-items:center;list-style:none;display:grid}.building-utility-menu summary::-webkit-details-marker{display:none}.building-utility-menu>div{border:1px solid rgb(var(--pv-tone-9dbeb5) / .15);background:rgb(var(--pv-tone-061214) / .98);width:190px;box-shadow:0 20px 50px rgb(var(--pv-tone-000000) / .42);border-radius:10px;gap:5px;padding:10px;display:grid;position:absolute;top:50px;right:0}.building-utility-menu span{color:rgb(var(--pv-tone-d5e4e0));border-bottom:1px solid rgb(var(--pv-tone-9dbeb5) / .08);padding:7px 8px;font-size:11px}.building-utility-menu a,.building-utility-menu button{color:rgb(var(--pv-tone-9eb2af));text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:8px;font-size:11px;text-decoration:none}.building-utility-menu a:hover,.building-utility-menu button:hover{color:var(--mint);background:rgb(var(--pv-tone-67e0b1) / .06)}.building-scene{z-index:1;touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.building-scene:active{cursor:grabbing}.building-campus-overview,.building-floor-plan-view{z-index:1;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;inset:0}.building-floor-plan-shell{flex-direction:column;height:100%;min-height:0;display:flex;position:relative}.building-gltf-view{border:1px solid rgb(var(--pv-tone-67e0b1) / .18);background:#071417;min-height:0;position:absolute;inset:0;overflow:hidden}.building-gltf-view canvas{width:100%;height:100%;display:block}.building-floor-plan-shell>.building-floor-plan-view{z-index:auto;flex:auto;width:100%;height:auto;min-height:0;position:relative;inset:auto}.building-gltf-caption{color:rgb(var(--pv-tone-9ab0ae));background:rgb(var(--pv-tone-051215) / .8);padding:4px 6px;font-size:9px;position:absolute;bottom:7px;right:8px}.building-spatial-unavailable{z-index:20;color:var(--text-muted);text-align:center;background:rgb(var(--pv-tone-061416) / .96);align-content:center;justify-items:center;gap:8px;padding:24px;display:grid;position:absolute;inset:0}.building-spatial-unavailable b{color:var(--amber);font-size:13px}.building-spatial-unavailable span{max-width:420px;font-size:10px;line-height:1.6}.building-spatial-controls-note{color:var(--text-muted);align-self:center;padding:5px 8px;font-size:9px}.building-campus-overview{background:rgb(var(--pv-tone-071416))}.building-campus-viewport .building-campus-overview{transform-origin:50%;transform:scale(1.16)}.building-campus-overview,.building-floor-plan-view{transition:opacity var(--motion-fast), transform var(--motion-fast)}.building-campus-overview image{pointer-events:none}.building-campus-region{cursor:pointer;outline:none}.building-campus-region-hit{fill:#0000;stroke:#0000;stroke-width:18px}.building-campus-region-outline{fill:rgb(var(--pv-tone-67e0b1) / .015);stroke:rgb(var(--pv-tone-c2ebe2) / .32);stroke-width:1.8px;vector-effect:non-scaling-stroke;transition:fill var(--motion-instant), stroke var(--motion-instant), filter var(--motion-instant);pointer-events:none;opacity:0}.building-campus-region-label{pointer-events:none;opacity:.72;transition:opacity var(--motion-instant)}.building-campus-region-label circle{fill:rgb(var(--pv-tone-07181b) / .92);stroke:rgb(var(--pv-tone-78c8d8) / .72);stroke-width:2px;vector-effect:non-scaling-stroke}.building-campus-region-label text{fill:rgb(var(--pv-tone-dcebea));stroke:rgb(var(--pv-tone-040e10) / .9);stroke-width:3px;paint-order:stroke;letter-spacing:.03em;font:600 16px IBM Plex Sans,sans-serif}.building-campus-region:hover .building-campus-region-outline,.building-campus-region:focus-visible .building-campus-region-outline,.building-campus-region.selected .building-campus-region-outline{fill:rgb(var(--pv-tone-67e0b1) / .13);stroke:rgb(var(--pv-tone-8de8cb));filter:drop-shadow(0 0 9px rgb(var(--pv-tone-67e0b1) / .45));opacity:1}.building-campus-region:hover .building-campus-region-label,.building-campus-region:focus-visible .building-campus-region-label,.building-campus-region.selected .building-campus-region-label{opacity:1}.building-campus-region.hovered .building-campus-region-outline{stroke:rgb(var(--pv-tone-f1ffff));stroke-width:1.35px}.building-campus-region:focus-visible .building-campus-region-label circle{stroke:rgb(var(--pv-tone-ffffff));stroke-width:3px}.building-campus-energy-region{cursor:pointer;pointer-events:none;outline:none}.building-campus-energy-region-hit{fill:#0000;stroke:#0000;stroke-width:22px;pointer-events:none}.building-campus-energy-region-outline{fill:#0000;stroke-width:2.2px;vector-effect:non-scaling-stroke;opacity:.38;pointer-events:none;transition:opacity var(--motion-instant), filter var(--motion-instant), fill var(--motion-instant)}.building-campus-energy-region.kind-pv .building-campus-energy-region-outline{stroke:rgb(var(--pv-tone-78c8d8))}.building-campus-energy-region.kind-charging .building-campus-energy-region-outline{stroke:rgb(var(--pv-tone-ffe0a8))}.building-campus-energy-region:hover .building-campus-energy-region-outline,.building-campus-energy-region.hovered .building-campus-energy-region-outline,.building-campus-energy-region:focus-visible .building-campus-energy-region-outline,.building-campus-energy-region.selected .building-campus-energy-region-outline{opacity:1;filter:drop-shadow(0 0 8px)}.building-campus-energy-region.kind-pv:hover .building-campus-energy-region-outline,.building-campus-energy-region.kind-pv.selected .building-campus-energy-region-outline{fill:rgb(var(--pv-tone-78c8d8) / .2)}.building-campus-energy-region.kind-charging:hover .building-campus-energy-region-outline,.building-campus-energy-region.kind-charging.selected .building-campus-energy-region-outline{fill:rgb(var(--pv-tone-ffe0a8) / .2)}.building-campus-energy-region-label{pointer-events:none;opacity:.92}.building-campus-energy-region-label text{opacity:0;transition:opacity var(--motion-instant)}.building-campus-energy-region-marker{pointer-events:auto}.building-campus-energy-region:hover .building-campus-energy-region-label,.building-campus-energy-region.hovered .building-campus-energy-region-label,.building-campus-energy-region:focus-visible .building-campus-energy-region-label,.building-campus-energy-region.selected .building-campus-energy-region-label,.building-campus-energy-region:hover .building-campus-energy-region-label text,.building-campus-energy-region.hovered .building-campus-energy-region-label text,.building-campus-energy-region:focus-visible .building-campus-energy-region-label text,.building-campus-energy-region.selected .building-campus-energy-region-label text{opacity:1}.building-campus-energy-region-label circle{fill:rgb(var(--pv-tone-07181b) / .95);stroke-width:2px;vector-effect:non-scaling-stroke}.building-campus-energy-region.kind-pv .building-campus-energy-region-label circle{stroke:rgb(var(--pv-tone-78c8d8))}.building-campus-energy-region.kind-charging .building-campus-energy-region-label circle{stroke:rgb(var(--pv-tone-ffe0a8))}.building-campus-energy-region-label text{fill:rgb(var(--pv-tone-dcebea));stroke:rgb(var(--pv-tone-040e10) / .9);stroke-width:3px;paint-order:stroke;font:600 12px IBM Plex Sans,sans-serif}.building-campus-energy-region-marker{transition:transform var(--motion-instant), fill var(--motion-instant), filter var(--motion-instant);transform-box:fill-box;transform-origin:50%}.building-campus-energy-region-marker:hover,.building-campus-energy-region-marker:focus-visible{fill:rgb(var(--pv-tone-ffffff));filter:drop-shadow(0 0 7px);transform:scale(1.35)}.building-campus-energy-region.kind-pv .building-campus-energy-region-marker:hover{stroke:rgb(var(--pv-tone-78c8d8))}.building-campus-energy-region.kind-charging .building-campus-energy-region-marker:hover{stroke:rgb(var(--pv-tone-ffe0a8))}.campus-energy-summary.kind-pv>span{color:rgb(var(--pv-tone-78c8d8))}.campus-energy-summary.kind-charging>span{color:rgb(var(--pv-tone-ffe0a8))}.campus-energy-back{color:var(--text-muted);cursor:pointer;background:0 0;border:0;margin:0 0 14px;padding:0;font:10px IBM Plex Sans,sans-serif;display:inline-flex}.campus-energy-back:hover,.campus-energy-back:focus-visible{color:var(--cyan)}.building-device-readings-empty{border:1px dashed rgb(var(--pv-tone-9dbeb5) / .16);background:rgb(var(--pv-tone-071719) / .46);border-radius:8px;gap:5px;margin-top:10px;padding:12px;display:grid}.building-device-readings-empty b{color:var(--text-secondary);font-size:11px;font-weight:550}.building-device-readings-empty small{color:var(--text-muted);font-size:9px;line-height:1.6}.campus-energy-list{border-top:1px solid rgb(var(--pv-tone-9dbeb5) / .08);margin-top:18px;padding-top:14px}.campus-energy-list-title{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:baseline;margin-bottom:8px;font-size:9px;display:flex}.campus-energy-list-title small{letter-spacing:0;text-transform:none;font-size:8px}.campus-energy-list button{border:0;border-bottom:1px solid rgb(var(--pv-tone-9dbeb5) / .06);width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:9px;padding:8px 0;display:flex}.campus-energy-list button:hover,.campus-energy-list button:focus-visible{color:var(--cyan)}.campus-energy-list button i{border-radius:50%;flex:none;width:7px;height:7px}.campus-energy-list button i.kind-pv{background:rgb(var(--pv-tone-78c8d8));box-shadow:0 0 7px rgb(var(--pv-tone-78c8d8) / .7)}.campus-energy-list button i.kind-charging{background:rgb(var(--pv-tone-ffe0a8));box-shadow:0 0 7px rgb(var(--pv-tone-ffe0a8) / .7)}.campus-energy-list button span{flex:1;font-size:10px}.campus-energy-list button em{color:var(--text-muted);font-size:9px;font-style:normal}.building-energy-management-summary{border:1px solid rgb(var(--pv-tone-78c8d8) / .2);background:linear-gradient(135deg, rgb(var(--pv-tone-78c8d8) / .08), transparent 70%);border-radius:12px;margin:0 0 18px;padding:14px}.building-energy-management-summary .building-panel-label{margin-bottom:12px;position:static}.building-energy-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.building-energy-kpis div{gap:3px;display:grid}.building-energy-kpis small{color:var(--text-muted);font-size:9px}.building-energy-kpis strong{color:var(--text);font-size:18px}.building-energy-kpis strong i{color:var(--text-muted);font-size:10px;font-style:normal}.building-energy-kpis strong.up{color:var(--coral)}.building-energy-kpis strong.down{color:var(--mint)}.building-energy-boundary{color:var(--text-muted);margin:12px 0 0;font-size:10px;line-height:1.5}.building-energy-context{border:1px solid rgb(var(--pv-tone-78c8d8) / .18);background:linear-gradient(145deg, rgb(var(--pv-tone-78c8d8) / .07), rgb(var(--pv-tone-061215) / .42));border-bottom:1px solid rgb(var(--pv-tone-9dbeb5) / .1);border-radius:11px;margin:-4px -4px 14px;padding:12px}.building-energy-context .building-panel-label{margin-bottom:10px;position:static}.building-energy-context>p{color:var(--text-muted);margin:8px 0 0;font-size:10px;line-height:1.5}.building-energy-context-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.building-energy-context-grid div{gap:3px;display:grid}.building-energy-context-grid small{color:var(--text-muted);font-size:9px}.building-energy-context-grid div{border:1px solid rgb(var(--pv-tone-9dbeb5) / .08);background:rgb(var(--pv-tone-000000) / .12);border-radius:7px;padding:7px 8px}.building-energy-context-grid b{font:600 13px IBM Plex Mono,monospace}.building-energy-context-grid b.up{color:var(--coral)}.building-energy-context-grid b.down{color:var(--mint)}.building-energy-context-grid i{color:var(--text-muted);font-size:9px;font-style:normal}.building-energy-trend-head{color:var(--text-secondary);justify-content:space-between;align-items:baseline;margin:12px 0 4px;font-size:10px;display:flex}.building-energy-trend-head small{color:var(--text-muted);font-size:8px}.building-energy-context .trend-chart-wrap{height:150px;min-height:150px;box-shadow:none;background:0 0;border:0;margin:0 -3px;padding:0}.building-energy-context .trend-chart{height:138px}.building-energy-guidance{border-left:2px solid var(--mint);background:rgb(var(--pv-tone-67e0b1) / .055);gap:4px;margin-top:8px;padding:8px 9px;display:grid}.building-energy-guidance b{color:var(--mint);font-size:9px}.building-energy-guidance span{color:var(--text-muted);font-size:8px;line-height:1.45}.building-energy-empty-visual{border:1px dashed rgb(var(--pv-tone-78c8d8) / .18);text-align:center;background:linear-gradient(180deg, rgb(var(--pv-tone-78c8d8) / .025), transparent);border-radius:8px;place-content:center;height:118px;margin-top:10px;display:grid;position:relative;overflow:hidden}.building-energy-empty-visual .empty-grid{background:linear-gradient(rgb(var(--pv-tone-78c8d8) / .05) 1px, transparent 1px),linear-gradient(90deg,rgb(var(--pv-tone-78c8d8) / .05) 1px,transparent 1px);background-size:36px 24px;position:absolute;inset:10px;-webkit-mask-image:linear-gradient(#0000,#000 35% 75%,#0000);mask-image:linear-gradient(#0000,#000 35% 75%,#0000)}.building-energy-empty-visual:after{content:"";border-top:1px dashed rgb(var(--pv-tone-78c8d8) / .3);position:absolute;bottom:28px;left:12px;right:12px}.building-energy-empty-visual span,.building-energy-empty-visual small{z-index:1;position:relative}.building-energy-empty-visual span{color:var(--text-secondary);font-size:10px}.building-energy-empty-visual small{color:var(--text-muted);margin-top:5px;font-size:8px}.building-floor-plan-view{padding:clamp(56px,7vh,82px) clamp(18px,2vw,38px) clamp(20px,3vh,36px)}.building-floor-plan-grid rect{fill:rgb(var(--pv-tone-071417) / .5);stroke:rgb(var(--pv-tone-78c8d8) / .08);stroke-width:.2px}.building-floor-plan-geometry path,.building-floor-plan-parameterized rect{vector-effect:non-scaling-stroke}.building-floor-plan-wall,.building-floor-plan-envelope{fill:none;stroke:rgb(var(--pv-tone-b5d4cf));stroke-width:1.3px}.building-floor-plan-slab{fill:rgb(var(--pv-tone-78c8d8) / .045);stroke:rgb(var(--pv-tone-78c8d8) / .28);stroke-width:.8px}.building-floor-plan-opening{fill:none;stroke:rgb(var(--pv-tone-6ce2d7));stroke-width:1.15px}.building-floor-plan-circulation{fill:none;stroke:rgb(var(--pv-tone-d1ad67));stroke-width:1.05px}.building-floor-plan-overhead{fill:none;stroke:rgb(var(--pv-tone-789794));stroke-width:.8px;stroke-dasharray:5 4}.building-floor-plan-parameterized rect{fill:rgb(var(--pv-tone-78c8d8) / .055);stroke:rgb(var(--pv-tone-9ec8c3));stroke-width:1.2px}.building-floor-device{cursor:pointer;outline:none}.building-floor-device-hit{fill:#0000}.building-floor-device-halo{fill:rgb(var(--pv-tone-67e0b1) / .14);stroke:rgb(var(--pv-tone-67e0b1) / .5);stroke-width:1.1px;vector-effect:non-scaling-stroke}.building-floor-device-core{fill:var(--mint);filter:drop-shadow(0 0 4px rgb(var(--pv-tone-67e0b1) / .9))}.building-floor-device text{fill:rgb(var(--pv-tone-d8e8e4));paint-order:stroke;stroke:rgb(var(--pv-tone-071416));stroke-width:.55px;font:500 1.8px IBM Plex Sans,sans-serif}.building-floor-device.delayed .building-floor-device-core{fill:var(--amber)}.building-floor-device.alert .building-floor-device-core,.building-floor-device.offline .building-floor-device-core{fill:var(--coral)}.building-floor-device:hover .building-floor-device-halo,.building-floor-device:focus-visible .building-floor-device-halo,.building-floor-device.selected .building-floor-device-halo{fill:rgb(var(--pv-tone-67e0b1) / .3);stroke:rgb(var(--pv-tone-dffff4));stroke-width:2px}.building-selection-summary{border-bottom:1px solid rgb(var(--pv-tone-9dbeb5) / .1);padding:4px 4px 14px}.building-selection-summary>span{color:var(--mint);letter-spacing:.12em;font:9px IBM Plex Mono,monospace}.building-selection-summary h2{color:rgb(var(--pv-tone-e2ece9));margin:8px 0 5px;font-size:22px;font-weight:620}.building-selection-summary p{color:var(--text-muted);margin:0;font-size:10px;line-height:1.55}.building-selection-summary dl{grid-template-columns:1fr 1fr;gap:8px;margin:14px 0 0;display:grid}.building-selection-summary dl div{border:1px solid rgb(var(--pv-tone-9dbeb5) / .08);background:rgb(var(--pv-tone-9dbeb5) / .035);border-radius:8px;justify-content:space-between;align-items:baseline;padding:9px 10px;display:flex}.building-selection-summary dt{color:var(--text-muted);font-size:9px}.building-selection-summary dd{color:var(--cyan);margin:0;font:13px IBM Plex Mono,monospace}.building-detail-empty{z-index:3;border:1px solid rgb(var(--pv-tone-9dbeb5) / .1);background:linear-gradient(160deg, color-mix(in srgb, var(--color-map-building-panel-start) 96%, transparent), rgb(var(--pv-tone-061416) / .98));width:calc(100% - 32px);height:calc(100% - 72px);box-shadow:0 18px 52px rgb(var(--pv-tone-000000) / .16);border-radius:14px;place-self:start center;margin-top:42px;padding:22px;display:grid;position:relative}.building-detail-empty>span{color:var(--mint);letter-spacing:.14em;font:9px IBM Plex Mono,monospace}.building-detail-empty h2{color:rgb(var(--pv-tone-e2ece9));margin:10px 0 7px;font-size:24px;font-weight:600}.building-detail-empty p{color:var(--text-muted);margin:0;font-size:10px;line-height:1.7}.building-detail-empty dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:18px 0 0;display:grid}.building-detail-empty dl div{border:1px solid rgb(var(--pv-tone-9dbeb5) / .08);border-radius:8px;justify-content:space-between;align-items:baseline;padding:10px;display:flex}.building-detail-empty dt{color:var(--text-muted);font-size:8px}.building-detail-empty dd{color:var(--cyan);margin:0;font:13px IBM Plex Mono,monospace}.building-floor-stack{border:1px solid rgb(var(--pv-tone-9dbeb5) / .1);background:rgb(var(--pv-tone-000000) / .14);border-radius:8px;gap:4px;margin-top:16px;padding:10px;display:grid}.building-floor-stack>div{grid-template-columns:58px minmax(0,1fr) 58px;align-items:center;gap:7px;min-height:18px;display:grid}.building-floor-stack span,.building-floor-stack small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.building-floor-stack small{text-align:right;font-size:7px}.building-floor-stack i{border:1px solid rgb(var(--pv-tone-9dbeb5) / .14);background:rgb(var(--pv-tone-9dbeb5) / .08);border-radius:4px;height:7px;display:block;overflow:hidden}.building-floor-stack i b{width:var(--floor-fill,0%);border-radius:inherit;background:var(--mint);height:100%;display:block}.building-floor-stack .no-data i{border-style:dashed}.building-floor-stack .no-data i b{background:var(--text-muted)}.building-entry-actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:12px;display:grid}.building-entry-actions button{min-width:0;color:var(--text-secondary);text-align:left;border:1px solid rgb(var(--pv-tone-78c8d8) / .2);background:rgb(var(--pv-tone-78c8d8) / .06);cursor:pointer;border-radius:7px;gap:3px;padding:8px 6px;font-size:9px;display:grid}.building-entry-actions button:hover{border-color:rgb(var(--pv-tone-78c8d8) / .55);background:rgb(var(--pv-tone-78c8d8) / .12)}.building-entry-actions small{color:var(--text-muted);font-size:7px}.building-entry-insights{gap:6px;margin-top:18px;padding-top:0;display:grid}.building-entry-insights div{border:1px solid rgb(var(--pv-tone-9dbeb5) / .1);background:rgb(var(--pv-tone-000000) / .12);border-radius:7px;grid-template-columns:88px minmax(0,1fr);align-items:center;gap:8px;min-height:44px;padding:8px 9px;display:grid}.building-entry-insights b{color:var(--cyan);font-size:9px}.building-entry-insights span{color:var(--text-muted);font-size:8px;line-height:1.45}.building-workbench-panel{z-index:12;border:1px solid rgb(var(--pv-tone-9dbeb5) / .12);background:linear-gradient(145deg, rgb(var(--pv-tone-0a1d20) / .93), rgb(var(--pv-tone-061215) / .9));border-color:rgb(var(--pv-tone-9dbeb5) / .2);width:100%;min-width:0;min-height:0;max-height:100%;box-shadow:0 24px 70px rgb(var(--pv-tone-000000) / .38);border-radius:14px;grid-area:3/2;margin:0;padding:20px;position:relative;overflow:hidden}.campus-view .building-workbench-panel{grid-row:2/-1}.building-view .building-workbench-panel{grid-row:2}.building-view .building-scene-panel{grid-row:3}.building-workbench-panel:before{content:"";background:var(--mint);width:42px;height:2px;position:absolute;top:-1px;left:20px}.building-provenance-note,.building-unpositioned-note{border:1px solid rgb(var(--pv-tone-d4a85b) / .22);background:rgb(var(--pv-tone-17150d) / .88);max-width:none;box-shadow:0 12px 32px rgb(var(--pv-tone-000000) / .18);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:9px;padding:10px 12px;position:relative}.building-provenance-note b,.building-provenance-note span{display:block}.building-provenance-note b{color:rgb(var(--pv-tone-d7c18e));font-size:9px}.building-provenance-note span{color:var(--text-muted);margin-top:4px;font-size:8px;line-height:1.45}.building-unpositioned-note{color:var(--text-muted);border-color:rgb(var(--pv-tone-9dbeb5) / .12);background:rgb(var(--pv-tone-071517) / .82);font-size:9px}.building-section-title{border-bottom:1px solid rgb(var(--pv-tone-9dbeb5) / .08);padding-bottom:16px}.building-section-title>span,.building-device-list>div>span,.building-device-detail>span,.building-device-detail section>span{color:rgb(var(--pv-tone-6f8d8e));letter-spacing:.13em;font:9px IBM Plex Mono,monospace}.building-section-title h2,.building-device-detail h2{color:rgb(var(--pv-tone-dce8e5));margin:7px 0 5px;font-size:17px;font-weight:600;line-height:1.35}.building-section-title p,.building-device-detail>p{color:var(--text-muted);margin:0;font-size:10px;line-height:1.55}.building-list{gap:7px;padding:15px 0;display:grid}.campus-view .building-list{scrollbar-gutter:stable;max-height:min(42vh,460px);padding-right:5px;overflow-y:auto}.building-list button,.building-device-list>button{min-width:0;color:var(--text-secondary);text-align:left;border:1px solid rgb(var(--pv-tone-9dbeb5) / .09);background:rgb(var(--pv-tone-051114) / .58);cursor:pointer;transition:border-color var(--motion-instant), background var(--motion-instant), transform var(--motion-instant);border-radius:9px;align-items:center;display:grid}.building-list button{grid-template-columns:3px minmax(0,1fr) auto;gap:10px;min-height:64px;padding:10px}.building-list button:hover,.building-device-list>button:hover{border-color:rgb(var(--pv-tone-78c8d8) / .25);transform:translate(2px)}.building-list button.hovered{border-color:rgb(var(--pv-tone-78c8d8) / .5);background:rgb(var(--pv-tone-78c8d8) / .1);transform:translate(2px)}.building-list button.selected{border-color:rgb(var(--pv-tone-78c8d8) / .34);background:rgb(var(--pv-tone-183d40) / .46)}.building-list>button>i{background:var(--cyan);width:3px;height:36px;box-shadow:0 0 12px rgb(var(--pv-tone-78c8d8) / .34)}.building-list>button>i.mint{background:var(--mint);box-shadow:0 0 12px rgb(var(--pv-tone-67e0b1) / .3)}.building-list button span,.building-device-list button span{min-width:0}.building-list button b,.building-list button small,.building-device-list button b,.building-device-list button small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.building-list button b,.building-device-list button b{color:rgb(var(--pv-tone-dce9e7));font-size:11px;font-weight:550}.building-list button small,.building-device-list button small{color:var(--text-muted);margin-top:5px;font-size:8px}.building-list button em,.building-device-list button em{color:var(--cyan);font-size:8px;font-style:normal}.building-demo-note{border:1px solid rgb(var(--pv-tone-d4a85b) / .2);background:rgb(var(--pv-tone-553a16) / .13);border-radius:9px;padding:12px}.building-demo-note b{color:rgb(var(--pv-tone-d7c18e));font-size:9px;font-weight:500}.building-demo-note p{color:var(--text-muted);margin:6px 0 0;font-size:8px;line-height:1.55}.building-overview-guidance{border:1px solid rgb(var(--pv-tone-78c8d8) / .14);background:rgb(var(--pv-tone-78c8d8) / .045);border-radius:9px;margin-top:12px;padding:13px}.building-overview-guidance b{color:rgb(var(--pv-tone-badbd9));font-size:10px;font-weight:550}.building-overview-guidance p{color:var(--text-muted);margin:6px 0 0;font-size:9px;line-height:1.55}.building-parameters{margin:0;padding:13px 0}.building-parameters div,.building-device-detail dl div{border-bottom:1px solid rgb(var(--pv-tone-9dbeb5) / .065);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.building-parameters dt,.building-device-detail dt{color:var(--text-muted);font-size:9px}.building-parameters dd,.building-device-detail dd{color:rgb(var(--pv-tone-bad0cc));text-align:right;margin:0;font:9px IBM Plex Mono,monospace}.building-device-list{padding-top:10px}.building-device-list>div{justify-content:space-between;align-items:center;padding:7px 0 10px;display:flex}.building-device-list>div>b{color:var(--mint);font:11px IBM Plex Mono,monospace}.building-device-list>button{grid-template-columns:9px minmax(0,1fr) auto;gap:9px;width:100%;margin-bottom:6px;padding:9px}.building-device-list>button>i{background:var(--mint);width:7px;height:7px;box-shadow:0 0 8px rgb(var(--pv-tone-67e0b1) / .4);border-radius:50%}.building-device-list>button>i.delayed{background:var(--amber)}.building-device-list>button>i.alert{background:var(--coral);box-shadow:0 0 8px rgb(var(--pv-tone-f2786d) / .44)}.building-device-list>p{color:var(--text-muted);font-size:9px}.building-device-detail>button{color:var(--cyan);border:1px solid rgb(var(--pv-tone-78c8d8) / .16);background:rgb(var(--pv-tone-78c8d8) / .04);cursor:pointer;border-radius:7px;margin-bottom:18px;padding:7px 9px;font-size:9px}.building-device-detail>p{margin-bottom:13px}.building-device-warning{border:1px solid rgb(var(--pv-tone-d4a85b) / .22);background:rgb(var(--pv-tone-553a16) / .14);border-radius:8px;padding:11px}.building-device-warning b,.building-device-warning span{display:block}.building-device-warning b{color:rgb(var(--pv-tone-d7c18e));font-size:9px}.building-device-warning span{color:var(--text-muted);margin-top:5px;font-size:8px;line-height:1.5}.building-device-warning.registered{border-color:rgb(var(--pv-tone-67e0b1) / .22);background:rgb(var(--pv-tone-67e0b1) / .055)}.building-device-warning.registered b{color:var(--mint)}.building-device-status{gap:6px;padding:12px 0 4px;display:flex}.building-device-status span{color:var(--mint);background:rgb(var(--pv-tone-67e0b1) / .07);border-radius:6px;padding:5px 7px;font-size:8px}.building-device-status span.delayed{color:var(--amber);background:rgb(var(--pv-tone-d4a85b) / .08)}.building-device-status span.offline,.building-device-status span.alert{color:var(--coral);background:rgb(var(--pv-tone-f2786d) / .08)}.building-device-status span.unknown{color:rgb(var(--pv-tone-9aadae));background:rgb(var(--pv-tone-7e9295) / .1)}.building-device-detail dl{margin:8px 0 14px}.building-device-detail section{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.building-device-detail section>span{grid-column:1/-1;margin-bottom:2px}.building-device-detail section>div{background:rgb(var(--pv-tone-9dbeb5) / .04);border-radius:8px;padding:10px}.building-device-detail section small,.building-device-detail section b{display:block}.building-device-detail section small{color:var(--text-muted);font-size:8px}.building-device-detail section b{color:rgb(var(--pv-tone-d6e5e1));margin-top:5px;font:11px IBM Plex Mono,monospace}.building-navigation-panel{flex-direction:column;place-content:flex-start;align-items:stretch;gap:12px;width:100%;min-width:0;min-height:0;display:flex}.building-floor-selector{flex-wrap:wrap;gap:5px;width:100%;min-width:0;max-width:none;display:flex;overflow:visible}.building-zone-selector{justify-content:flex-start}.building-navigation-panel .building-zone-selector{display:none!important}.building-floor-selector button{min-width:calc(33.333% - 4px);height:40px;color:rgb(var(--pv-tone-829895));border:1px solid rgb(var(--pv-tone-9dbeb5) / .1);background:rgb(var(--pv-tone-061215) / .68);cursor:pointer;border-radius:7px;flex:1 0 calc(33.333% - 4px);align-content:center;padding:0 7px;display:grid}.building-floor-selector button b{font-size:9px;font-weight:550}.building-floor-selector button small{color:rgb(var(--pv-tone-607b7d));text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:6px;display:block;overflow:hidden}.building-floor-selector button.active,.building-floor-selector button:hover{color:rgb(var(--pv-tone-d7fbff));border-color:rgb(var(--pv-tone-78c8d8) / .42);background:rgb(var(--pv-tone-295d60) / .34)}.building-scope-controls{flex-wrap:wrap;gap:5px;display:flex}.building-scope-controls button{min-width:110px;height:40px;color:rgb(var(--pv-tone-829895));border:1px solid rgb(var(--pv-tone-9dbeb5) / .1);background:rgb(var(--pv-tone-061215) / .68);cursor:pointer;border-radius:7px;padding:0 10px}.building-scope-controls button.active,.building-scope-controls button:hover{color:rgb(var(--pv-tone-d7fbff));border-color:rgb(var(--pv-tone-78c8d8) / .42);background:rgb(var(--pv-tone-295d60) / .34)}.building-view-controls{border-top:1px solid rgb(var(--pv-tone-9dbeb5) / .08);flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:4px;padding-top:4px;display:flex}.building-view-controls button{height:40px;color:rgb(var(--pv-tone-9cb3b1));white-space:nowrap;border:1px solid rgb(var(--pv-tone-9dbeb5) / .1);background:rgb(var(--pv-tone-061316) / .8);cursor:pointer;border-radius:7px;padding:0 9px;font-size:9px}.building-view-controls button:hover,.building-view-controls button.active{color:var(--cyan);border-color:rgb(var(--pv-tone-78c8d8) / .34);background:rgb(var(--pv-tone-78c8d8) / .07)}.building-view-readout{color:var(--text-muted);justify-content:flex-start;gap:16px;font:7px IBM Plex Mono,monospace;display:flex}.building-view-readout b{color:var(--cyan);font-weight:500}.building-volume{cursor:pointer;transition:opacity var(--motion-acquire), filter var(--motion-acquire);outline:none}.building-volume.connector-volume{cursor:default}.building-volume .face{vector-effect:non-scaling-stroke;stroke:rgb(var(--pv-tone-78c8d8) / .42);stroke-width:.7px;transition:fill var(--motion-acquire), stroke var(--motion-acquire), opacity var(--motion-acquire)}.building-volume.cyan .roof{fill:rgb(var(--pv-tone-397c83))}.building-volume.cyan .side-a{fill:rgb(var(--pv-tone-1e4e55))}.building-volume.cyan .side-b{fill:rgb(var(--pv-tone-143a40))}.building-volume.cyan .side-c{fill:rgb(var(--pv-tone-102f35))}.building-volume.cyan .side-d{fill:rgb(var(--pv-tone-285e64))}.building-volume.mint .face{stroke:rgb(var(--pv-tone-67e0b1) / .42)}.building-volume.mint .roof{fill:rgb(var(--pv-tone-397b68))}.building-volume.mint .side-a{fill:rgb(var(--pv-tone-1e4d45))}.building-volume.mint .side-b{fill:rgb(var(--pv-tone-143b35))}.building-volume.mint .side-c{fill:rgb(var(--pv-tone-102f2b))}.building-volume.mint .side-d{fill:rgb(var(--pv-tone-285d51))}.building-volume.other-building{opacity:.25;filter:saturate(.48)}.building-volume.other-component{opacity:.48;filter:saturate(.68)}.building-volume.building-selected{filter:saturate(1.08) drop-shadow(0 0 6px rgb(var(--pv-tone-78c8d8) / .2))}.building-volume.active-floor{filter:saturate(1.15) drop-shadow(0 0 11px rgb(var(--pv-tone-d7fbff) / .4))}.building-volume.active-floor .face{stroke:rgb(var(--pv-tone-d7fbff));stroke-width:1.5px}.building-volume.below-floor{opacity:.16;filter:saturate(.38)}.building-volume.above-floor{opacity:.055;filter:saturate(.2)}.floor-focused .building-volume.other-building,.floor-focused .building-volume.other-component{opacity:0;pointer-events:none}.building-volume:hover .face,.building-volume:focus-visible .face{stroke:rgb(var(--pv-tone-f1ffff));stroke-width:1.35px}.building-map-label{cursor:pointer;opacity:.52;pointer-events:none;outline:none}.building-map-label-hit{fill:#0000;pointer-events:none}.building-map-label.selected{opacity:1}.building-map-label circle{fill:rgb(var(--pv-tone-0a1c1f));stroke:var(--cyan);stroke-width:1px;pointer-events:all}.building-map-label path{fill:none;stroke:rgb(var(--pv-tone-78c8d8) / .65);stroke-width:.7px}.building-map-label text{fill:rgb(var(--pv-tone-a7c1bf));letter-spacing:.04em;font:8px Noto Sans SC,sans-serif}.building-map-label.selected text{fill:rgb(var(--pv-tone-d7fbff))}.building-cad-floor{pointer-events:none;filter:drop-shadow(0 0 3px rgb(var(--pv-tone-78c8d8) / .14))}.building-cad-floor path{vector-effect:non-scaling-stroke;fill:none;stroke-linecap:round;stroke-linejoin:round}.building-cad-slab{stroke:rgb(var(--pv-tone-78c8d8) / .24);stroke-width:1.1px;fill:rgb(var(--pv-tone-071a1d) / .82)!important}.building-cad-wall{stroke:rgb(var(--pv-tone-d5f1ee));stroke-width:1.35px}.building-cad-opening{stroke:rgb(var(--pv-tone-62d8d4));stroke-width:.95px}.building-cad-envelope{stroke:rgb(var(--pv-tone-70d8f0));stroke-width:1px}.building-cad-circulation{stroke:rgb(var(--pv-tone-d1ad67));stroke-width:.85px}.building-cad-overhead{stroke:rgb(var(--pv-tone-8fb7b4) / .42);stroke-width:.65px;stroke-dasharray:3 2}.building-device-marker{cursor:pointer;outline:none}.building-device-marker .building-device-hit{fill:#0000;pointer-events:all}.building-device-marker .building-device-halo{fill:rgb(var(--pv-tone-67e0b1) / .08);stroke:rgb(var(--pv-tone-67e0b1) / .5);stroke-width:.8px}.building-device-marker .building-device-core{fill:var(--mint)}.building-device-marker.delayed .building-device-halo{fill:rgb(var(--pv-tone-d4a85b) / .08);stroke:rgb(var(--pv-tone-d4a85b) / .6)}.building-device-marker.delayed .building-device-core{fill:var(--amber)}.building-device-marker.offline .building-device-halo{fill:rgb(var(--pv-tone-f2786d) / .08);stroke:rgb(var(--pv-tone-f2786d) / .66)}.building-device-marker.offline .building-device-core{fill:var(--coral)}.building-device-marker.alert .building-device-halo{fill:rgb(var(--pv-tone-f2786d) / .08);stroke:rgb(var(--pv-tone-f2786d) / .66)}.building-device-marker.alert .building-device-core{fill:var(--coral)}.building-device-marker.unknown .building-device-halo{fill:rgb(var(--pv-tone-7e9295) / .08);stroke:rgb(var(--pv-tone-7e9295) / .66)}.building-device-marker.unknown .building-device-core{fill:rgb(var(--pv-tone-7e9295))}.building-device-marker>path{stroke:rgb(var(--pv-tone-bcded8) / .56);stroke-width:.65px}.building-device-marker text{fill:rgb(var(--pv-tone-d7ebe7));font:7px Noto Sans SC,sans-serif}.building-device-marker text.room{fill:rgb(var(--pv-tone-789693));font-size:5.5px}.building-device-marker.selected .building-device-halo,.building-device-marker:hover .building-device-halo,.building-device-marker:focus-visible .building-device-halo{stroke:rgb(var(--pv-tone-f1ffff));stroke-width:1.5px}.building-device-marker.selected text{fill:rgb(var(--pv-tone-ffffff));font-weight:600}@media (width>=3000px){.building-lab-shell{min-height:1200px;padding:24px}.building-lab-workspace{border-radius:24px;grid-template-rows:128px minmax(500px,1.15fr) minmax(400px,.85fr);grid-template-columns:minmax(0,1fr) 760px;gap:20px}.building-workspace-header,.building-campus-panel,.building-scene-panel,.building-workbench-panel{border-radius:22px}.building-scene-context{gap:18px;height:100%;padding:12px 24px}.building-scene-context>a,.building-scene-context>button{width:66px;height:66px;font-size:30px}.building-scene-context span{font-size:15px}.building-scene-context h1{font-size:27px}.building-scene-context>b{padding:10px 13px;font-size:14px}.building-utility-menu{margin-right:24px}.building-utility-menu summary{width:64px;height:64px;font-size:20px}.building-utility-menu>div{width:280px;padding:15px;top:74px}.building-utility-menu span,.building-utility-menu a,.building-utility-menu button{font-size:16px}.building-panel-label{gap:13px;padding:11px 14px;top:24px;left:24px}.building-panel-label span{font-size:13px}.building-panel-label b{font-size:14px}.building-campus-summary{margin:36px;padding:32px}.building-campus-summary>span{font-size:13px}.building-campus-summary h2{font-size:34px}.building-campus-summary p{font-size:16px}.building-campus-summary dt{font-size:13px}.building-campus-summary dd{font-size:20px}.building-workbench-panel{padding:30px}.building-workbench-panel:before{width:64px;top:-1px;left:30px}.building-section-title{padding-bottom:25px}.building-section-title>span,.building-device-list>div>span,.building-device-detail>span,.building-device-detail section>span{font-size:14px}.building-section-title h2,.building-device-detail h2{margin-top:12px;font-size:27px}.building-section-title p,.building-device-detail>p{font-size:16px}.building-list{gap:11px;padding:24px 0}.building-list button{gap:15px;min-height:98px;padding:15px}.building-list>button>i{height:55px}.building-list button b,.building-device-list button b{font-size:17px}.building-list button small,.building-device-list button small,.building-list button em,.building-device-list button em{font-size:13px}.building-demo-note{padding:18px}.building-demo-note b{font-size:14px}.building-demo-note p{font-size:13px}.building-parameters{padding:20px 0}.building-parameters div,.building-device-detail dl div{padding:13px 0}.building-parameters dt,.building-device-detail dt,.building-parameters dd,.building-device-detail dd{font-size:14px}.building-device-list>button{grid-template-columns:14px minmax(0,1fr) auto;gap:14px;margin-bottom:9px;padding:14px}.building-device-list>button>i{width:11px;height:11px}.building-device-warning{padding:17px}.building-device-warning b{font-size:14px}.building-device-warning span{font-size:13px}.building-device-status span{padding:8px 11px;font-size:13px}.building-device-detail section{gap:11px}.building-device-detail section>div{padding:16px}.building-device-detail section small{font-size:13px}.building-device-detail section b{font-size:17px}.building-floor-selector{gap:8px}.building-floor-selector button{min-width:100px;height:62px;padding:0 11px}.building-floor-selector button b{font-size:14px}.building-floor-selector button small{font-size:10px}.building-view-controls{gap:7px}.building-view-controls button{height:62px;padding:0 14px;font-size:14px}.building-view-readout{gap:26px;font-size:11px}.building-selection-summary>span{font-size:14px}.building-selection-summary h2{font-size:32px}.building-selection-summary p{font-size:15px}.building-selection-summary dt{font-size:13px}.building-selection-summary dd{font-size:19px}.building-map-label text{font-size:11px}.building-device-marker text{font-size:9px}.building-device-marker text.room{font-size:7px}.building-floor-plan-view{padding:110px 64px 54px}.building-detail-empty{width:min(78%,720px);padding:46px}.building-detail-empty>span{font-size:14px}.building-detail-empty h2{font-size:38px}.building-detail-empty p{font-size:16px}.building-detail-empty dt{font-size:13px}.building-detail-empty dd{font-size:20px}.building-floor-device text{font-size:2.3px}}@media (width<=1500px){.building-lab-workspace{grid-template-columns:minmax(0,1fr) clamp(360px,32vw,480px)}.building-workbench-panel{padding-left:16px;padding-right:16px}.building-floor-selector button{min-width:54px}}@media (width<=1180px){.building-lab-shell{height:auto;min-height:100dvh;overflow:auto}.building-lab-workspace{grid-template-rows:74px auto minmax(440px,58dvh) auto;grid-template-columns:minmax(0,1fr);height:auto;min-height:calc(100dvh - 24px);overflow:visible}.building-workspace-header{grid-area:1/1/auto/-1}.building-campus-panel{grid-area:2/1}.building-scene-panel{grid-area:3/1;margin:0}.building-workbench-panel,.campus-view .building-workbench-panel{grid-area:4/1;margin:0;padding:18px;overflow:visible}.building-view-controls{flex-wrap:wrap}.campus-view .building-list{max-height:none;overflow:visible}}@media (width<=780px){.building-lab-shell{height:auto;min-height:100dvh;padding:8px;overflow:auto}.building-lab-workspace{grid-template-rows:70px auto minmax(440px,58dvh) auto;grid-template-columns:minmax(0,1fr);gap:8px;min-height:calc(100dvh - 16px)}.building-workspace-header{grid-area:1/1}.building-campus-panel{grid-area:2/1;min-height:360px}.building-scene-panel{aspect-ratio:auto;grid-area:3/1;min-height:440px}.building-workbench-panel{grid-area:4/1;padding:18px 16px}.building-workbench-panel:before{top:-1px;left:16px}.building-floor-selector{max-width:100%}.building-scene-context{min-width:0;max-width:calc(100% - 62px);padding:7px}.building-scene-context>b{display:none}.building-theme-selector{gap:4px;font-size:9px;position:absolute;right:52px}.building-theme-selector select{min-width:64px;padding:6px 18px 6px 7px}.building-utility-menu{margin-right:8px}.building-floor-plan-view{padding:58px 12px 18px}.building-detail-empty{width:calc(100% - 32px);padding:20px}.building-campus-summary{margin:12px;padding:16px}.building-floor-rail{grid-template-columns:repeat(4,minmax(0,1fr));margin:8px 10px 0}.building-campus-region-label text{display:none}}@media (prefers-reduced-motion:reduce){.building-list button,.building-device-list>button,.building-volume,.building-volume .face,.building-campus-region-outline,.building-campus-overview,.building-floor-plan-view{transition:none}}.building-navigation-panel .building-view-controls{order:-1}.building-spatial-note{z-index:18;color:var(--text-muted);background:var(--bg-panel);pointer-events:none;padding:8px;font-size:10px;position:absolute;bottom:10px;left:12px;right:12px}.building-placement-card,.building-anchor-card{min-width:0}.building-anchor-card>.admin-help,.building-placement-card>.admin-help{color:var(--text-secondary);margin:0;padding:18px 24px 0;font-size:12px;line-height:1.7}.admin-table .button-link{color:var(--cyan);border:1px solid var(--line);background:rgb(var(--pv-tone-000000) / .12);border-radius:7px;margin-top:6px;padding:6px 9px;text-decoration:none;display:inline-block}.building-anchor-card{margin-bottom:16px}.building-anchor-workspace{grid-template-columns:minmax(180px,220px) minmax(420px,1fr) minmax(220px,270px);gap:12px;min-height:410px;margin-top:16px;display:grid}.building-anchor-places,.building-anchor-actions,.building-anchor-map-panel{border:1px solid var(--line);background:rgb(var(--pv-tone-ffffff) / .02);border-radius:13px;min-width:0;overflow:hidden}.building-anchor-places{flex-direction:column;gap:7px;padding:12px;display:flex}.building-anchor-places button{color:var(--text-secondary);text-align:left;border:1px solid var(--line);background:rgb(var(--pv-tone-000000) / .12);cursor:pointer;border-radius:9px;gap:4px;padding:11px;display:grid}.building-anchor-places button b{color:var(--text-primary);font-size:12px}.building-anchor-places button small{color:var(--text-muted);font-size:9px}.building-anchor-places button.active{border-color:rgb(var(--pv-tone-78c8d8) / .48);background:rgb(var(--pv-tone-78c8d8) / .08)}.building-anchor-places button:disabled{cursor:not-allowed;opacity:.55}.building-anchor-map-panel,.building-anchor-map{min-height:390px;position:relative}.building-anchor-map{background:rgb(var(--pv-tone-091719));width:100%;height:100%}.building-anchor-map-state{z-index:3;color:var(--text-secondary);border:1px solid rgb(var(--pv-tone-78c8d8) / .2);background:rgb(var(--pv-tone-051214) / .84);pointer-events:none;border-radius:7px;padding:7px 9px;font-size:9px;position:absolute;bottom:12px;left:12px}.building-anchor-map-state.unavailable{color:var(--amber);border-color:rgb(var(--pv-tone-efbd6a) / .35)}.building-anchor-marker{width:max-content;max-width:none;color:rgb(var(--pv-tone-dff4ef));white-space:nowrap;border:1px solid rgb(var(--pv-tone-78c8d8) / .55);background:rgb(var(--pv-tone-071c1f) / .93);box-shadow:0 5px 18px rgb(var(--pv-tone-000000) / .35);cursor:grab;border-radius:8px;align-items:center;gap:6px;padding:6px 8px;font:11px inherit;display:inline-flex;overflow:visible}.building-anchor-marker .map-marker-decoration{border:2px solid var(--cyan);border-radius:50% 50% 50% 0;flex:0 0 10px;width:10px;height:10px;transform:rotate(-45deg)}.building-anchor-marker .map-marker-label{text-overflow:clip;min-width:max-content;display:block;overflow:visible}.building-anchor-marker.draft{color:var(--amber);border-color:rgb(var(--pv-tone-efbd6a) / .68)}.building-anchor-marker.draft .map-marker-decoration{border-color:var(--amber)}.building-model-marker{color:rgb(var(--pv-tone-17383d));border-color:rgb(var(--pv-tone-0a535b) / .42);background:rgb(var(--pv-tone-f9fcfc) / .94);cursor:pointer;box-shadow:0 3px 10px rgb(var(--pv-tone-0a2a2e) / .2);padding:4px 7px}.building-model-marker.selected{border-width:2px;border-color:rgb(var(--pv-tone-168c7a))}.building-model-marker.draft{color:rgb(var(--pv-tone-6c3b0e));background:rgb(var(--pv-tone-fff6e7));cursor:grab}.building-anchor-actions{flex-direction:column;gap:10px;padding:14px;display:flex}.building-anchor-actions>span{color:var(--text-muted);letter-spacing:.08em;font-size:10px}.building-anchor-actions h3{color:var(--text-primary);margin:0;font-size:16px}.building-anchor-actions label{color:var(--text-muted);gap:5px;font-size:10px;display:grid}.building-anchor-actions label small{color:var(--text-muted);font-size:9px;line-height:1.45}.building-anchor-actions select,.building-anchor-actions input{box-sizing:border-box;width:100%;color:var(--text-primary);border:1px solid var(--line);background:rgb(var(--pv-tone-0b2022));border-radius:7px;padding:8px}.building-anchor-actions input:disabled{opacity:.65}.building-anchor-actions code{color:var(--cyan);border:1px solid var(--line);background:rgb(var(--pv-tone-000000) / .14);border-radius:7px;padding:9px;font-size:10px}.building-anchor-actions>div{gap:7px;display:flex}.building-anchor-actions button,.building-anchor-actions a{color:var(--text-secondary);text-align:center;border:1px solid var(--line);background:rgb(var(--pv-tone-000000) / .14);cursor:pointer;border-radius:8px;flex:1;padding:9px;text-decoration:none}.building-anchor-actions button.primary{color:rgb(var(--pv-tone-092024));background:var(--cyan);border-color:#0000}.building-anchor-actions button.danger{color:var(--red)}.building-anchor-actions>a{color:var(--cyan);border-color:rgb(var(--pv-tone-78c8d8) / .32);margin-top:auto}.building-anchor-actions hr{border:0;border-top:1px solid var(--line);width:100%;margin:2px 0}.building-placement-workspace{grid-template-columns:minmax(190px,230px) minmax(420px,1fr) minmax(230px,290px);gap:14px;height:clamp(620px,100vh - 180px,820px);min-height:0;margin-top:18px;display:grid}.building-placement-buildings,.building-placement-devices,.building-placement-main{border:1px solid var(--line);background:rgb(var(--pv-tone-ffffff) / .022);border-radius:14px;min-width:0}.building-placement-buildings,.building-placement-devices{scrollbar-gutter:stable;overscroll-behavior:contain;flex-direction:column;gap:8px;min-height:0;padding:14px;display:flex;overflow:hidden auto}.building-placement-buildings>span,.building-placement-devices>span,.building-placement-floors>span,.building-placement-canvas-head span{color:var(--text-muted);letter-spacing:.08em;font-size:11px}.building-placement-buildings>button{color:var(--text-secondary);text-align:left;border:1px solid var(--line);background:rgb(var(--pv-tone-000000) / .12);cursor:pointer;border-radius:10px;gap:5px;padding:12px;display:grid}.building-placement-buildings>button b{color:var(--text-primary);font-size:13px}.building-placement-buildings>button small{color:var(--text-muted);font-size:10px;line-height:1.45}.building-placement-buildings>button.active{border-color:rgb(var(--pv-tone-78c8d8) / .48);background:rgb(var(--pv-tone-78c8d8) / .09)}.building-placement-buildings>button:disabled{cursor:not-allowed;opacity:.62}.building-placement-main{grid-template-rows:auto minmax(0,1fr);display:grid;overflow:hidden}.building-placement-floors{border-bottom:1px solid var(--line);align-items:stretch;gap:7px;min-width:0;padding:13px;display:flex;overflow-x:auto}.building-placement-floors>span{align-self:center;min-width:max-content;margin-right:4px}.building-placement-floors button{min-width:126px;color:var(--text-secondary);text-align:left;border:1px solid var(--line);background:rgb(var(--pv-tone-000000) / .12);cursor:pointer;border-radius:9px;gap:4px;padding:9px 11px;display:grid}.building-placement-floors button b{font-size:12px}.building-placement-floors button small{min-width:0;color:var(--text-muted);justify-content:space-between;align-items:center;gap:7px;font-size:9px;display:flex}.building-placement-floors button small span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.building-placement-floors button small em{color:rgb(var(--pv-tone-89a5a1));flex:none;font-style:normal}.building-placement-floors button.active{color:var(--cyan);border-color:rgb(var(--pv-tone-78c8d8) / .5);background:rgb(var(--pv-tone-78c8d8) / .08)}.building-placement-floors button:disabled{cursor:not-allowed;opacity:.62}.building-placement-canvas-wrap{grid-template-rows:auto minmax(0,1fr) auto;min-height:480px;padding:14px;display:grid;position:relative;overflow:hidden}.building-placement-canvas-wrap.is-editing{box-shadow:inset 0 0 0 1px rgb(var(--pv-tone-efbd6a) / .35)}.building-placement-canvas-head{justify-content:space-between;align-items:end;gap:14px;padding-bottom:10px;display:flex}.building-placement-canvas-head h3{color:var(--text-primary);margin:4px 0 0;font-size:16px}.building-placement-canvas-head>small{color:var(--text-muted);font-size:10px}.building-placement-canvas{touch-action:none;border:1px solid rgb(var(--pv-tone-78c8d8) / .13);background:radial-gradient(circle at center,rgb(var(--pv-tone-78c8d8) / .06),transparent 64%),rgb(var(--pv-tone-071719));cursor:crosshair;border-radius:12px;width:100%;height:100%;min-height:390px;overflow:visible}.building-placement-boundary{fill:rgb(var(--pv-tone-081f22) / .9);stroke:rgb(var(--pv-tone-78c8d8) / .32);stroke-width:.15px;vector-effect:non-scaling-stroke}.building-placement-floor-plan path{fill:none;stroke:rgb(var(--pv-tone-c8e6e1) / .58);stroke-width:.13px;vector-effect:non-scaling-stroke}.building-placement-floor-plan .category-slab{fill:rgb(var(--pv-tone-78c8d8) / .035);stroke:rgb(var(--pv-tone-78c8d8) / .22)}.building-placement-floor-plan .category-opening{stroke:rgb(var(--pv-tone-62d8d4))}.building-placement-floor-plan .category-circulation{stroke:rgb(var(--pv-tone-d1ad67))}.building-placement-floor-plan .category-overhead{stroke-dasharray:.5 .4;opacity:.55}.building-placement-grid path{fill:none;stroke:rgb(var(--pv-tone-78c8d8) / .12);stroke-width:.1px;vector-effect:non-scaling-stroke;stroke-dasharray:.5 .5}.building-placement-marker{cursor:grab;outline:none}.building-placement-marker:active{cursor:grabbing}.building-placement-marker circle{fill:rgb(var(--pv-tone-102b2d));stroke:var(--mint);stroke-width:.24px;vector-effect:non-scaling-stroke}.building-placement-marker path{stroke:rgb(var(--pv-tone-bcded8) / .62);stroke-width:.12px;vector-effect:non-scaling-stroke}.building-placement-marker text{fill:rgb(var(--pv-tone-d7ebe7));paint-order:stroke;stroke:rgb(var(--pv-tone-071719));stroke-width:.42px;stroke-linejoin:round;font-size:1.55px}.building-placement-marker.selected circle{stroke:var(--cyan);stroke-width:.42px}.building-placement-marker.draft circle{fill:rgb(var(--pv-tone-efbd6a) / .22);stroke:var(--amber);stroke-width:.48px;stroke-dasharray:.6 .35}.building-placement-scale{color:var(--text-muted);align-items:center;gap:8px;padding-top:9px;font-size:9px;display:flex}.building-placement-scale i{border:solid var(--cyan);border-width:0 1px 1px;width:42px;height:5px}.building-placement-device-group{border-bottom:1px solid var(--line);padding:12px 0}.building-placement-device-group>div{justify-content:space-between;margin-bottom:7px;display:flex}.building-placement-device-group>div b{color:var(--text-primary);font-size:12px}.building-placement-device-group>div em{color:var(--mint);font-size:11px;font-style:normal}.building-placement-device-group>button{width:100%;color:var(--text-secondary);text-align:left;border:1px solid var(--line);background:rgb(var(--pv-tone-000000) / .12);cursor:pointer;border-radius:9px;justify-content:space-between;align-items:center;gap:8px;margin-top:6px;padding:9px;display:flex}.building-placement-device-group>article{grid-template-columns:minmax(0,1fr) auto;gap:6px;margin-top:6px;display:grid}.building-placement-device-group>article>button{min-width:0;color:var(--text-secondary);text-align:left;border:1px solid var(--line);background:rgb(var(--pv-tone-000000) / .12);cursor:pointer;border-radius:9px;padding:9px}.building-placement-device-group>article>button b,.building-placement-device-group>article>button small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.building-placement-device-group>article>button b{color:var(--text-primary);font-size:11px}.building-placement-device-group>article>button small{color:var(--text-muted);margin-top:3px;font-size:9px}.building-placement-device-group>article>button.active{border-color:rgb(var(--pv-tone-78c8d8) / .42);background:rgb(var(--pv-tone-78c8d8) / .07)}.building-placement-device-group>button span{min-width:0}.building-placement-device-group>button b,.building-placement-device-group>button small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.building-placement-device-group>button b{color:var(--text-primary);font-size:11px}.building-placement-device-group>button small{color:var(--text-muted);margin-top:3px;font-size:9px}.building-placement-device-group>button em{color:var(--cyan);white-space:nowrap;font-size:9px;font-style:normal}.building-placement-device-group>button.active{border-color:rgb(var(--pv-tone-78c8d8) / .42);background:rgb(var(--pv-tone-78c8d8) / .07)}.building-placement-device-group>p{color:var(--text-muted);font-size:10px}.building-placement-device-group>p button{color:var(--cyan);border:1px solid var(--line);background:rgb(var(--pv-tone-000000) / .12);cursor:pointer;border-radius:6px;margin-left:6px;padding:4px 7px}.building-placement-device-group.unpositioned>button{border-style:dashed}.building-placement-device-group.unpositioned>button em{color:var(--amber)}.building-placement-device-group.candidates>button{border-style:dashed;border-color:rgb(var(--pv-tone-67e0b1) / .2)}.building-placement-device-group.candidates>button em{color:var(--mint)}.building-placement-device-group.candidates label{color:var(--text-muted);gap:6px;margin:9px 0 4px;font-size:10px;display:grid}.building-placement-device-group.candidates input{width:100%;min-width:0;height:38px;color:var(--text-primary);border:1px solid rgb(var(--pv-tone-9dbeb5) / .18);background:rgb(var(--pv-tone-08191b));font:inherit;border-radius:8px;outline:none;padding:0 10px}.building-placement-device-group.candidates input::placeholder{color:rgb(var(--pv-tone-607976));opacity:1}.building-placement-device-group.candidates input:focus-visible{border-color:var(--mint);box-shadow:0 0 0 3px rgb(var(--pv-tone-67e0b1) / .08)}.building-placement-device-group.candidates .candidate-metadata{max-width:100%}.building-placement-row-actions{flex:none;gap:5px;display:flex}.building-placement-row-actions button{color:var(--cyan);border:1px solid var(--line);background:rgb(var(--pv-tone-000000) / .12);cursor:pointer;border-radius:7px;padding:6px;font-size:9px}.building-placement-row-actions button.danger{color:var(--red)}.building-placement-selection,.building-placement-draft{border:1px solid rgb(var(--pv-tone-78c8d8) / .16);background:rgb(var(--pv-tone-78c8d8) / .045);border-radius:10px;gap:7px;margin-top:12px;padding:12px;display:grid}.building-placement-selection small,.building-placement-draft>small{color:var(--text-muted);font-size:9px}.building-placement-selection b,.building-placement-draft h3{color:var(--text-primary);font-size:13px}.building-placement-selection span{color:var(--text-secondary);font-size:10px}.building-placement-selection code{color:var(--cyan);font-size:10px}.building-placement-draft{border-color:rgb(var(--pv-tone-efbd6a) / .28);background:rgb(var(--pv-tone-efbd6a) / .055)}.building-placement-draft h3{margin:0}.building-placement-draft dl{margin:4px 0}.building-placement-draft dl div{border-bottom:1px solid var(--line);justify-content:space-between;padding:6px 0;display:flex}.building-placement-draft dt{color:var(--text-muted);font-size:10px}.building-placement-draft dd{color:var(--amber);margin:0;font:10px monospace}.building-placement-draft>div{gap:7px;display:flex}.building-placement-draft button{color:var(--text-secondary);border:1px solid var(--line);background:rgb(var(--pv-tone-000000) / .14);cursor:pointer;border-radius:8px;flex:1;padding:9px}.building-placement-draft button.primary{color:rgb(var(--pv-tone-092024));background:var(--cyan);border-color:#0000}.building-placement-draft button.danger,.building-placement-draft.is-delete h3{color:var(--red)}.building-placement-draft.is-delete{border-color:rgb(var(--pv-tone-f2786d) / .3);background:rgb(var(--pv-tone-f2786d) / .05)}.building-placement-empty{min-height:180px;color:var(--text-muted);place-items:center;display:grid}@media (width<=1180px){.building-anchor-workspace{grid-template-columns:190px minmax(380px,1fr)}.building-anchor-actions{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.building-anchor-actions>span,.building-anchor-actions h3{grid-column:1/-1}.building-anchor-actions>a{margin-top:0}.building-placement-workspace{grid-template-columns:minmax(150px,180px) minmax(360px,1fr) minmax(210px,250px);gap:10px}.building-placement-buildings,.building-placement-devices{padding:11px}}@media (width<=760px){.building-anchor-workspace{flex-direction:column;min-height:0;display:flex}.building-anchor-places{flex-direction:row;overflow-x:auto}.building-anchor-places button{min-width:180px}.building-anchor-map-panel,.building-anchor-map{min-height:360px}.building-anchor-actions{display:flex}.building-placement-workspace{flex-direction:column;height:auto;min-height:0;display:flex}.building-placement-buildings{flex-direction:row;overflow-x:auto}.building-placement-buildings>span{min-width:100%}.building-placement-buildings>button{min-width:190px}.building-placement-canvas-wrap{min-height:430px;padding:10px}.building-placement-canvas{min-height:330px}.building-placement-devices{display:block}}*{box-sizing:border-box}body{background:radial-gradient(circle at 48% -12%, rgb(var(--pv-tone-356b5d) / .15), transparent 35%), linear-gradient(135deg, rgb(var(--pv-tone-071214)), rgb(var(--pv-tone-081719)) 52%, rgb(var(--pv-tone-061113)));background-size:auto,auto;min-width:1180px;min-height:100vh;margin:0;overflow-x:auto}button{font:inherit}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--mint);outline-offset:2px}.auth-loading,.login-shell{background:radial-gradient(circle at 34% 42%, rgb(var(--pv-tone-3a7564) / .18), transparent 34%), linear-gradient(145deg, rgb(var(--pv-tone-071416)), rgb(var(--pv-tone-061012)) 66%);min-height:100vh}.auth-loading{color:rgb(var(--pv-tone-5f797b));letter-spacing:.16em;place-content:center;justify-items:center;gap:18px;font:10px IBM Plex Mono,monospace;display:grid}.auth-loading .brand-mark{transform:scale(1.2)}.route-load-error{text-align:center;padding:32px}.route-load-error h1{color:var(--text-primary);font:600 24px/1.3 var(--font-sans,sans-serif);letter-spacing:.04em;margin:4px 0 0}.route-load-error p{max-width:520px;color:var(--text-secondary);font:14px/1.7 var(--font-sans,sans-serif);letter-spacing:0;margin:0}.route-load-error button{min-width:160px;height:44px;color:rgb(var(--pv-tone-071813));background:var(--mint);cursor:pointer;font:700 13px var(--font-sans,sans-serif);letter-spacing:.04em;border:0;border-radius:8px;padding:0 20px}.login-shell{isolation:isolate;grid-template-columns:minmax(510px,680px) 430px;place-content:center;gap:clamp(70px,8vw,150px);padding:64px;display:grid;position:relative;overflow:hidden}.login-shell:after{content:"";z-index:-1;border:1px solid rgb(var(--pv-tone-67e0b1) / .06);width:70vw;height:70vw;box-shadow:0 0 0 120px rgb(var(--pv-tone-67e0b1) / .018), 0 0 0 260px rgb(var(--pv-tone-67e0b1) / .012);border-radius:50%;position:absolute;bottom:-26vh;right:-12vw}.login-context{align-self:center;min-height:510px;padding:50px 0;position:relative}.login-context>span{color:var(--mint);letter-spacing:.16em;font-size:13px;font-weight:600}.login-context h2{color:var(--text-primary);letter-spacing:-.035em;margin:28px 0 20px;font-size:clamp(42px,3.7vw,66px);font-weight:600;line-height:1.22}.login-context>p{max-width:560px;color:var(--text-secondary);margin:0;font-size:16px;line-height:1.9}.login-context dl{background:var(--line);grid-template-columns:repeat(3,1fr);gap:1px;max-width:560px;margin:46px 0 0;display:grid}.login-context dl div{background:rgb(var(--pv-tone-071416) / .86);padding:16px 18px}.login-context dt{color:var(--text-muted);font-size:11px}.login-context dd{color:rgb(var(--pv-tone-d4e2de));margin:7px 0 0;font:12px IBM Plex Mono,monospace}.login-map-motif{opacity:.45;border-right:1px solid rgb(var(--pv-tone-67e0b1) / .25);border-bottom:1px solid rgb(var(--pv-tone-67e0b1) / .25);background:linear-gradient(rgb(var(--pv-tone-67e0b1) / .07) 1px, transparent 1px), linear-gradient(90deg, rgb(var(--pv-tone-67e0b1) / .07) 1px, transparent 1px);width:220px;height:150px;-webkit-mask-image:linear-gradient(135deg, transparent, rgb(var(--pv-tone-000000)) 35%);mask-image:linear-gradient(135deg, transparent, rgb(var(--pv-tone-000000)) 35%);background-size:24px 24px;position:absolute;bottom:6px;right:8px}.login-map-motif i{border:2px solid var(--mint);background:rgb(var(--pv-tone-071416));border-radius:50%;width:7px;height:7px;position:absolute}.login-map-motif i:first-child{top:32px;left:66px}.login-map-motif i:nth-child(2){top:70px;left:124px}.login-map-motif i:nth-child(3){border-color:var(--amber);top:48px;right:25px}.login-map-motif b{color:var(--text-secondary);text-align:right;font:10px/1.5 IBM Plex Mono,monospace;position:absolute;bottom:10px;right:9px}.login-panel{border:1px solid rgb(var(--pv-tone-9dbeb5) / .14);border-radius:var(--radius-lg);background:linear-gradient(150deg, rgb(var(--pv-tone-0c1f21) / .97), rgb(var(--pv-tone-071215) / .96));width:430px;box-shadow:0 36px 100px rgb(var(--pv-tone-000000) / .34);padding:42px;position:relative}.login-panel:before{content:"";background:var(--mint);width:74px;height:2px;position:absolute;top:-1px;left:42px}.login-brand{border-bottom:1px solid var(--line);align-items:center;gap:18px;padding-bottom:30px;display:flex}.login-brand p{color:var(--text-muted);letter-spacing:.1em;margin:0 0 6px;font-size:11px}.login-brand h1{letter-spacing:.06em;font-size:25px}.login-panel form{gap:19px;padding:30px 0 22px;display:grid}.login-panel label{color:var(--text-secondary);gap:9px;font-size:12px;display:grid}.login-panel input{width:100%;height:46px;color:var(--text-primary);border:1px solid rgb(var(--pv-tone-9dbeb5) / .16);background:rgb(var(--pv-tone-040f11) / .66);border-radius:8px;outline:none;padding:0 14px}.login-panel input:focus{border-color:rgb(var(--pv-tone-67e0b1) / .55);box-shadow:0 0 0 3px rgb(var(--pv-tone-67e0b1) / .07)}.login-panel form>button{height:46px;color:rgb(var(--pv-tone-071813));background:var(--mint);cursor:pointer;letter-spacing:.08em;border:0;border-radius:8px;font-weight:700}.login-panel form>button:disabled{cursor:wait;opacity:.6}.login-error{color:var(--coral);margin:-4px 0 0;font-size:11px}.login-panel>small{color:var(--text-muted);text-align:center;font-size:10px;display:block}.dashboard-shell{width:min(100%,3520px);min-height:100vh;margin:0 auto;padding:clamp(20px,1.55vw,48px)}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:72px;margin-bottom:20px;display:flex}.brand-lockup,.system-meta{align-items:center;display:flex}.brand-lockup{gap:16px}.brand-mark{width:38px;height:44px;display:block;position:relative}.brand-mark i{background:var(--mint);width:8px;box-shadow:0 0 12px rgb(var(--pv-tone-67e0b1) / .24);position:absolute;transform:skewY(-28deg)}.brand-mark i:first-child{height:25px;top:12px;left:2px}.brand-mark i:nth-child(2){height:38px;top:2px;left:14px}.brand-mark i:nth-child(3){opacity:.55;height:20px;top:8px;left:26px}.eyebrow{color:rgb(var(--pv-tone-658488));letter-spacing:.24em;margin:0 0 4px;font:500 9px/1.2 IBM Plex Mono,monospace}h1{letter-spacing:.1em;margin:0;font-size:clamp(20px,1.45vw,34px);font-weight:600}.system-meta{color:rgb(var(--pv-tone-81979a));gap:17px;font:400 12px IBM Plex Mono,monospace}.separator{background:var(--line);width:1px;height:18px}.data-badge{color:rgb(var(--pv-tone-93aaa9));border:1px solid var(--line);background:rgb(var(--pv-tone-071519) / .8);align-items:center;gap:8px;padding:7px 10px;display:inline-flex}.data-badge i{background:var(--amber);border-radius:50%;width:6px;height:6px;box-shadow:0 0 9px}.data-badge.live i{background:var(--mint)}.data-badge.loading i{background:var(--cyan);animation:1.4s ease-in-out infinite status-pulse}.data-badge.empty{color:rgb(var(--pv-tone-a5b6b5))}.data-badge.empty i{background:var(--amber)}.data-badge.unavailable{color:rgb(var(--pv-tone-ffc1bb));border-color:rgb(var(--pv-tone-f2786d) / .3);background:rgb(var(--pv-tone-461416) / .42)}.data-badge.unavailable i{background:var(--coral)}.data-badge.demo{color:rgb(var(--pv-tone-ffe0a8));border-color:rgb(var(--pv-tone-efbd6a) / .28);background:rgb(var(--pv-tone-463212) / .34)}.data-badge.demo i{background:var(--amber)}.profile-button{color:rgb(var(--pv-tone-b5c6c4));border:1px solid var(--line);background:rgb(var(--pv-tone-0f2327) / .6);cursor:pointer;padding:8px 12px}.admin-entry{color:var(--mint);border:1px solid rgb(var(--pv-tone-67e0b1) / .22);padding:8px 12px;text-decoration:none}.metric-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:14px;display:grid}.metric-card,.panel{border:1px solid var(--line);background:linear-gradient(145deg, rgb(var(--pv-tone-0d2126) / .9), rgb(var(--pv-tone-071418) / .84));box-shadow:inset 0 1px rgb(var(--pv-tone-ffffff) / .018), 0 14px 50px rgb(var(--pv-tone-000000) / .12);position:relative;overflow:hidden}.metric-card:before,.panel:before{content:"";background:var(--mint);opacity:.55;width:32px;height:1px;position:absolute;top:-1px;left:-1px}.metric-card{min-height:128px;padding:18px 20px 16px}.metric-top{color:rgb(var(--pv-tone-80969a));justify-content:space-between;font-size:12px;display:flex}.metric-top i{background:currentColor;width:26px;height:4px;margin-top:7px;box-shadow:0 0 14px}.metric-card p{margin:12px 0 5px}.metric-card strong{letter-spacing:-.04em;font:500 clamp(28px,2.1vw,50px)/1 IBM Plex Mono,monospace}.metric-card p span{color:rgb(var(--pv-tone-7c9296));margin-left:9px;font-size:11px}.metric-card small{color:rgb(var(--pv-tone-789093));font-size:11px}.metric-card.mint strong,.metric-card.mint .metric-top i{color:var(--mint)}.metric-card.cyan strong,.metric-card.cyan .metric-top i{color:var(--cyan)}.metric-card.amber strong,.metric-card.amber .metric-top i{color:var(--amber)}.metric-card.coral strong,.metric-card.coral .metric-top i{color:var(--coral)}.metric-card.neutral strong{color:rgb(var(--pv-tone-dcebea))}.metric-card.neutral .metric-top i{color:rgb(var(--pv-tone-789093));box-shadow:none}.communication-summary{flex-wrap:wrap;gap:4px 10px;display:flex}.communication-summary>span{white-space:nowrap;align-items:center;display:inline-flex}.communication-summary i{background:rgb(var(--pv-tone-7e9295));border-radius:50%;width:7px;height:7px;margin-right:4px}.communication-summary i.online{background:var(--mint)}.communication-summary i.delayed{background:var(--amber)}.communication-summary i.offline{background:var(--coral)}.communication-summary i.starting{background:var(--cyan)}.communication-summary i.standby{background:var(--color-status-unknown)}.content-grid{grid-template-rows:minmax(475px,56vh) 255px;grid-template-columns:minmax(0,1.9fr) minmax(460px,1.1fr);gap:14px;display:grid}.side-stack{grid-template-rows:1fr 1fr;gap:14px;min-height:0;display:grid}.trend-panel{grid-column:1}.device-panel{grid-column:2}.panel{min-height:0}.panel-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:66px;padding:0 18px;display:flex}.panel-header span{color:rgb(var(--pv-tone-719092));letter-spacing:.16em;margin-bottom:2px;font:500 10px IBM Plex Mono,monospace;display:block}.panel-header h2{letter-spacing:.06em;margin:0;font-size:16px;font-weight:500}.panel-header button{color:rgb(var(--pv-tone-91a7a8));border:1px solid var(--line);background:rgb(var(--pv-tone-0a1d21) / .6);cursor:pointer;padding:6px 9px;font-size:10px}.panel-header button b{color:var(--mint);margin-left:8px}.map-stage{background:radial-gradient(circle at 52% 44%, rgb(var(--pv-tone-2a675e) / .12), transparent 42%), rgb(var(--pv-tone-07171b));position:absolute;inset:66px 0 0;overflow:hidden}.map-grid{opacity:.35;background:linear-gradient(rgb(var(--pv-tone-67e0b1) / .045) 1px, transparent 1px), linear-gradient(90deg, rgb(var(--pv-tone-67e0b1) / .045) 1px, transparent 1px);background-size:36px 36px;position:absolute;inset:0;transform:perspective(600px)rotateX(25deg)scale(1.25)}.road-network{width:100%;height:100%;filter:drop-shadow(0 0 4px rgb(var(--pv-tone-53cbaf) / .1));position:absolute;inset:0}.road-network path{fill:none;stroke:rgb(var(--pv-tone-70a59e) / .19);stroke-width:12px}.road-network path:after{stroke-width:1px}.road-network .minor{stroke-width:3px;stroke:rgb(var(--pv-tone-70a59e) / .09)}.road-segment-network{overflow:visible}.road-segment-network .road-segment{stroke-width:15px;stroke-linecap:round;opacity:.9;vector-effect:non-scaling-stroke;transition:opacity .2s,stroke-width .2s,filter .2s}.road-segment-network .road-segment.status-online{stroke:rgb(var(--pv-tone-67e0b1))}.road-segment-network .road-segment.status-delayed{stroke:rgb(var(--pv-tone-efbd6a))}.road-segment-network .road-segment.status-offline{stroke:rgb(var(--pv-tone-f2786d))}.road-segment-network .road-segment.status-unknown{stroke:rgb(var(--pv-tone-7e9295));stroke-dasharray:8 7}.road-segment-network .road-segment.selected{stroke-width:23px;filter:drop-shadow(0 0 8px);opacity:1}.road-segment-network .road-segment.dimmed{opacity:.16}.schematic-topology-map.has-cabinet-focus .demo-cabinet:not(.selected){opacity:.42}.topology-caption{z-index:3;border-left:2px solid var(--cyan);background:rgb(var(--pv-tone-051216) / .82);gap:3px;padding:10px 13px;display:grid;position:absolute;top:18px;left:22px}.topology-caption small{color:rgb(var(--pv-tone-7b9997));letter-spacing:.12em;font:9px IBM Plex Mono,monospace}.topology-caption b{color:rgb(var(--pv-tone-d7ebe7));font-size:13px;font-weight:600}.topology-caption span{color:rgb(var(--pv-tone-71908e));font-size:9px}.demo-cabinet-layer{z-index:4;pointer-events:none;position:absolute;inset:0}.demo-cabinet{min-width:158px;color:rgb(var(--pv-tone-d7ebe7));text-align:left;border:1px solid rgb(var(--pv-tone-78c8d8) / .35);background:rgb(var(--pv-tone-051418) / .92);box-shadow:0 8px 24px rgb(var(--pv-tone-000000) / .28);cursor:pointer;pointer-events:auto;border-radius:6px;align-items:center;gap:8px;padding:8px 10px;transition:opacity .2s,border-color .2s,box-shadow .2s;display:flex;position:absolute;transform:translate(-12px,-50%)}.demo-cabinet:hover,.demo-cabinet:focus-visible,.demo-cabinet.selected{border-color:var(--cyan);box-shadow:0 0 0 2px rgb(var(--pv-tone-78c8d8) / .18), 0 0 20px rgb(var(--pv-tone-78c8d8) / .22)}.demo-cabinet.selected{color:rgb(var(--pv-tone-f4ffff))}.demo-cabinet span:last-child{gap:3px;display:grid}.demo-cabinet b{white-space:nowrap;font-size:10px;font-weight:650}.demo-cabinet small{color:rgb(var(--pv-tone-789795));font:8px IBM Plex Mono,monospace}.cabinet-glyph{border:1px solid;border-radius:2px;flex:none;width:14px;height:18px;position:relative}.cabinet-glyph:after{content:"";background:currentColor;height:2px;position:absolute;bottom:4px;left:3px;right:3px;box-shadow:0 -5px}.demo-lamp{color:rgb(var(--pv-tone-d7ebe7));cursor:pointer;pointer-events:auto;background:0 0;border:0;justify-items:center;gap:2px;padding:4px;transition:opacity .2s,transform .2s;display:grid;position:absolute;transform:translate(-50%,-50%)}.demo-lamp.dimmed{opacity:.18}.demo-lamp.selected{color:rgb(var(--pv-tone-f4ffff));filter:drop-shadow(0 0 8px rgb(var(--pv-tone-78c8d8)));transform:translate(-50%,-50%)scale(1.3)}.demo-lamp-glyph{background:rgb(var(--pv-tone-07171b));border:2px solid;border-radius:50%;width:12px;height:12px}.demo-lamp-label{color:currentColor;white-space:nowrap;font:8px IBM Plex Mono,monospace}.demo-cabinet-detail{z-index:6;width:230px;color:rgb(var(--pv-tone-9db5b4));border:1px solid rgb(var(--pv-tone-78c8d8) / .34);background:rgb(var(--pv-tone-051216) / .94);box-shadow:0 16px 36px rgb(var(--pv-tone-000000) / .3);border-radius:7px;gap:6px;padding:13px;display:grid;position:absolute;top:78px;right:20px}.demo-cabinet-detail>small{color:rgb(var(--pv-tone-78c8d8));letter-spacing:.12em;font:8px IBM Plex Mono,monospace}.demo-cabinet-detail>b{color:rgb(var(--pv-tone-e2f3ef));font-size:14px}.demo-cabinet-detail>span{color:rgb(var(--pv-tone-789795));font-size:10px}.demo-cabinet-detail>div{border-top:1px solid rgb(var(--pv-tone-9dbeb5) / .1);grid-template-columns:42px 1fr auto;align-items:center;gap:6px;padding-top:6px;font-size:9px;display:grid}.demo-cabinet-detail strong{color:rgb(var(--pv-tone-d7ebe7));font:9px IBM Plex Mono,monospace}.demo-cabinet-detail em{font-style:normal}.demo-cabinet-detail em.status-online{color:rgb(var(--pv-tone-67e0b1))}.demo-cabinet-detail em.status-delayed{color:rgb(var(--pv-tone-efbd6a))}.demo-cabinet-detail em.status-offline{color:rgb(var(--pv-tone-f2786d))}.district{color:rgb(var(--pv-tone-6c9291) / .22);letter-spacing:.32em;font-size:clamp(14px,1.2vw,26px);position:absolute;transform:rotate(-8deg)}.district-one{top:14%;left:22%}.district-two{top:62%;right:14%}.district-three{bottom:12%;left:37%}.map-point{cursor:pointer;width:28px;height:34px;color:var(--mint);background:0 0;border:0;margin:-30px -14px -4px;padding:0;position:absolute}.map-point.delayed{color:var(--amber)}.map-point.offline{color:var(--coral)}.map-point.unknown{color:rgb(var(--pv-tone-7e9295))}.map-point.starting{color:var(--cyan)}.map-point.standby{color:var(--color-status-unknown);opacity:.72}.map-point.selected .point-core{filter:drop-shadow(0 0 5px)}.point-core{filter:drop-shadow(0 2px 3px rgb(var(--pv-tone-041216) / .7));place-items:end center;display:grid;position:absolute;inset:0 3px 2px}.point-core:before{content:"";background:rgb(var(--pv-tone-07171b) / .5);opacity:.72;border:1.5px solid;border-radius:50%;width:24px;height:24px;position:absolute;top:2px;left:-1px}.map-point.offline .point-core:before{border-width:2.5px}.map-point.selected .point-core:before{border-color:var(--cyan);opacity:1}.point-core .streetlight-glyph{width:22px;height:29px;overflow:visible}.map-point:after{content:"";opacity:.82;background:currentColor;border-radius:2px;width:16px;height:2px;position:absolute;bottom:0;left:6px}.map-point.freshness-lagging:after{background:var(--amber)}.map-point.freshness-expired:after{background:var(--coral);height:3px}.map-point.freshness-unavailable:after{background:rgb(var(--pv-tone-7e9295));opacity:.58}.point-health{border:1px solid rgb(var(--pv-tone-07171b));background:var(--mint);border-radius:50%;width:6px;height:6px;position:absolute;top:4px;right:1px}.point-health.alert{background:var(--coral);border-radius:0;transform:rotate(45deg)}.point-health.unknown{background:rgb(var(--pv-tone-7e9295));border-radius:0}.point-pulse{opacity:.35;border:1px solid;border-radius:50%;animation:2.4s ease-out infinite pulse;position:absolute;inset:0}.point-label{text-align:left;min-width:100px;color:rgb(var(--pv-tone-789294));background:rgb(var(--pv-tone-051114) / .78);white-space:nowrap;border-left:1px solid;padding:5px 7px;font-size:9px;position:absolute;top:-3px;left:25px}.point-label b{color:rgb(var(--pv-tone-c1d4d1));font:500 10px IBM Plex Mono,monospace;display:block}.map-scale{color:rgb(var(--pv-tone-5f777a));font:9px IBM Plex Mono,monospace;position:absolute;bottom:16px;left:18px}.map-scale span{border-top:2px solid rgb(var(--pv-tone-536e70));width:62px;margin-right:7px;display:inline-block}.map-legend{color:rgb(var(--pv-tone-8aa0a3));background:rgb(var(--pv-tone-041013) / .86);align-items:center;padding:8px 10px;font-size:10px;display:flex;position:absolute;bottom:14px;right:18px}.map-legend i{background:var(--mint);border-radius:50%;width:6px;height:6px;margin:0 5px 0 10px;display:inline-block}.map-legend span{color:rgb(var(--pv-tone-b1c3c1));font-weight:600}.map-legend .delayed{background:var(--amber)}.map-legend .offline{background:var(--coral)}.map-legend .unknown{background:rgb(var(--pv-tone-617579))}.topology-legend .legend-group i.segment-online,.topology-legend .legend-group i.segment-delayed,.topology-legend .legend-group i.segment-offline{border-radius:3px;width:22px;height:4px}.topology-legend .legend-group i.segment-online{background:rgb(var(--pv-tone-67e0b1))}.topology-legend .legend-group i.segment-delayed{background:rgb(var(--pv-tone-efbd6a))}.topology-legend .legend-group i.segment-offline{background:rgb(var(--pv-tone-f2786d))}.topology-node{z-index:12;border:1px solid rgb(var(--pv-tone-67e0b1) / .55);background:rgb(var(--pv-tone-051216) / .9);color:rgb(var(--pv-tone-d7ebe7));cursor:pointer;border-radius:4px;align-items:center;gap:5px;padding:4px 6px;font-size:10px;display:flex;position:absolute;transform:translate(-50%,-50%)}.topology-node.selected{border-color:rgb(var(--pv-tone-67e0b1));box-shadow:0 0 0 3px rgb(var(--pv-tone-67e0b1) / .2), 0 0 18px rgb(var(--pv-tone-67e0b1) / .45)}.topology-node-glyph{border:2px solid rgb(var(--pv-tone-67e0b1));background:rgb(var(--pv-tone-163f3e));border-radius:2px;width:10px;height:10px;display:inline-block}.road-segment.selected{filter:drop-shadow(0 0 5px rgb(var(--pv-tone-67e0b1) / .8))}.road-segment.dimmed{opacity:.18}.amap-topology-node{transform:translate(-50%,-50%)}.topology-context{margin-top:8px}.admin-tabs{border-bottom:1px solid rgb(var(--pv-tone-9dbeb5) / .14);gap:6px;margin:18px 0;display:flex}.admin-tabs button{color:rgb(var(--pv-tone-789795));cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:9px 13px}.admin-tabs button.active{color:rgb(var(--pv-tone-67e0b1));border-bottom-color:rgb(var(--pv-tone-67e0b1))}.topology-editor-canvas{border:1px solid rgb(var(--pv-tone-67e0b1) / .32);background:radial-gradient(circle at 68% 36%,rgb(var(--pv-tone-266a64) / .24),transparent 34%),linear-gradient(135deg,rgb(var(--pv-tone-091f22) / .98),rgb(var(--pv-tone-041216) / .99));min-height:360px;box-shadow:inset 0 0 0 1px rgb(var(--pv-tone-78c8d8) / .06),0 12px 30px rgb(var(--pv-tone-000000) / .16);border-radius:10px;margin:14px 0 20px;position:relative;overflow:hidden}.topology-editor-canvas:before{content:"寿宁县空间拓扑 · GCJ-02";z-index:1;color:rgb(var(--pv-tone-9ac8c0));letter-spacing:.04em;pointer-events:none;font:600 12px IBM Plex Mono,monospace;position:absolute;top:14px;left:16px}.topology-editor-canvas:after{content:"选择道路分段后点击地图追加左右照明带节点";z-index:1;color:rgb(var(--pv-tone-789795));pointer-events:none;font-size:11px;position:absolute;bottom:14px;right:16px}.topology-editor-canvas svg{cursor:crosshair;background-image:linear-gradient(32deg,transparent 48%,rgb(var(--pv-tone-5b8f89) / .13) 49%,rgb(var(--pv-tone-5b8f89) / .13) 50%,transparent 51%),linear-gradient(-25deg,transparent 48%,rgb(var(--pv-tone-5b8f89) / .1) 49%,rgb(var(--pv-tone-5b8f89) / .1) 50%,transparent 51%),linear-gradient(rgb(var(--pv-tone-67e0b1) / .05) 1px,transparent 1px),linear-gradient(90deg,rgb(var(--pv-tone-67e0b1) / .05) 1px,transparent 1px);background-size:240px 180px,310px 220px,24px 24px,24px 24px;width:100%;height:360px;display:block}.topology-editor-canvas small{color:rgb(var(--pv-tone-789795));font-size:10px;position:absolute;bottom:10px;left:12px}.topology-editor-canvas .road-segment{fill:none;stroke-width:2.8px;stroke-linecap:round;opacity:.9;pointer-events:none}.topology-editor-canvas .road-segment.status-online{stroke:rgb(var(--pv-tone-67e0b1))}.topology-editor-canvas .road-segment.status-delayed{stroke:rgb(var(--pv-tone-efbd6a))}.topology-editor-canvas .road-segment.status-offline{stroke:rgb(var(--pv-tone-f2786d))}.topology-editor-canvas .road-segment.status-unknown{stroke:rgb(var(--pv-tone-7e9295));stroke-dasharray:4 3}.topology-editor-canvas .road-segment{stroke-width:3.8px;filter:drop-shadow(0 0 3px rgb(var(--pv-tone-67e0b1) / .24))}.topology-map-outline{fill:rgb(var(--pv-tone-154343) / .18);stroke:rgb(var(--pv-tone-78c8d8) / .42);stroke-width:.45px}.topology-map-road{fill:none;stroke:rgb(var(--pv-tone-8fbcb4) / .2);stroke-width:1.2px;stroke-linecap:round}.topology-map-node circle{fill:rgb(var(--pv-tone-163f3e));stroke:rgb(var(--pv-tone-b7f5df));stroke-width:.55px}.topology-map-node text{fill:rgb(var(--pv-tone-b7d8d0));font-size:2.3px}.topology-real-map{border:1px solid rgb(var(--pv-tone-78c8d8) / .3);background:rgb(var(--pv-tone-061519));min-width:0;box-shadow:0 16px 44px rgb(var(--pv-tone-000000) / .18);border-radius:12px;overflow:hidden}.topology-map-viewport{border-bottom:1px solid rgb(var(--pv-tone-78c8d8) / .16);min-height:clamp(340px,42vh,520px);position:relative;overflow:hidden}.topology-real-map-canvas{width:100%;height:100%;position:absolute;inset:0}.topology-map-status{text-align:center;background:rgb(var(--pv-tone-041216) / .94);color:rgb(var(--pv-tone-a8c9c4));z-index:5;place-content:center;gap:8px;font-size:13px;display:grid;position:absolute;inset:0}.topology-map-status span{color:rgb(var(--pv-tone-789795));font-size:11px}.topology-map-status.warning b{color:rgb(var(--pv-tone-efbd6a))}.topology-map-status.warning{pointer-events:none}.topology-map-status.warning .topology-map-actions{pointer-events:auto}.topology-fallback-svg{background:rgb(var(--pv-tone-071d23));width:100%;height:100%;position:absolute;inset:0}.topology-fallback-bg{fill:rgb(var(--pv-tone-071d23))}.topology-fallback-svg .topology-edit-road{fill:none;stroke-width:1.3px;stroke-linecap:round;vector-effect:non-scaling-stroke;cursor:pointer}.topology-fallback-svg .topology-edit-road-hit{fill:none;stroke:#0000;stroke-width:12px;stroke-linecap:round;vector-effect:non-scaling-stroke;cursor:pointer}.topology-fallback-svg .topology-edit-road.status-online{stroke:rgb(var(--pv-tone-67e0b1))}.topology-fallback-svg .topology-edit-road.status-delayed{stroke:rgb(var(--pv-tone-efbd6a))}.topology-fallback-svg .topology-edit-road.status-offline{stroke:rgb(var(--pv-tone-f2786d))}.topology-fallback-svg .topology-edit-road.status-unknown{stroke:rgb(var(--pv-tone-7e9295));stroke-dasharray:5 4}.topology-fallback-svg .topology-edit-road.selected{stroke-width:2.4px;filter:drop-shadow(0 0 4px)}.topology-fallback-svg .topology-draft-line{fill:none;stroke:rgb(var(--pv-tone-b8fff1));stroke-width:1.4px;stroke-dasharray:5 4;vector-effect:non-scaling-stroke;pointer-events:none}.topology-fallback-handle{fill:rgb(var(--pv-tone-b8fff1));stroke:rgb(var(--pv-tone-08272b));stroke-width:.65px;vector-effect:non-scaling-stroke;cursor:grab}.topology-fallback-handle:active{cursor:grabbing}.topology-fallback-handle.draft{fill:rgb(var(--pv-tone-78c8d8))}.topology-real-map-caption{border:1px solid rgb(var(--pv-tone-67e0b1) / .28);background:rgb(var(--pv-tone-041216) / .9);max-width:min(460px,100% - 28px);color:rgb(var(--pv-tone-9bc8c0));pointer-events:none;border-radius:6px;gap:3px;padding:8px 11px;font-size:11px;display:grid;position:absolute;top:14px;left:14px}.topology-real-map-caption strong{color:rgb(var(--pv-tone-d8fff3));font-size:11px}.topology-real-map-caption span{color:rgb(var(--pv-tone-9bb9b5));font-size:10px}.topology-map-draftbar{z-index:9;border:1px solid rgb(var(--pv-tone-efbd6a) / .42);background:rgb(var(--pv-tone-1e190f) / .95);max-height:calc(100% - 88px);box-shadow:0 10px 32px rgb(var(--pv-tone-000000) / .4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:8px;gap:7px;padding:8px;display:grid;position:absolute;top:76px;left:12px;right:12px;overflow:auto}.topology-map-draft-row{align-items:end;gap:8px;min-width:0;display:flex}.topology-map-draft-row>div{gap:2px;min-width:190px;margin-right:auto;display:grid}.topology-map-draft-row span,.topology-map-draft-row label{color:rgb(var(--pv-tone-d7b979));font-size:9px}.topology-map-draft-row b{color:rgb(var(--pv-tone-fff0cf));font-size:11px}.topology-map-draft-row small{color:rgb(var(--pv-tone-bda980));font-size:9px}.topology-map-draft-row label{gap:3px;display:grid}.topology-map-draft-row input{width:150px;height:31px;color:rgb(var(--pv-tone-fff0cf));border:1px solid rgb(var(--pv-tone-efbd6a) / .32);background:rgb(var(--pv-tone-17150f));border-radius:5px;padding:0 8px}.topology-map-draft-row code{color:rgb(var(--pv-tone-efbd6a));align-self:center;font-size:9px}.topology-map-draft-row button{min-height:31px;color:rgb(var(--pv-tone-d9cdc0));white-space:nowrap;border:1px solid rgb(var(--pv-tone-efbd6a) / .28);background:rgb(var(--pv-tone-211b12));cursor:pointer;border-radius:5px;padding:6px 10px}.topology-map-draft-row button.primary{color:rgb(var(--pv-tone-211506));border-color:rgb(var(--pv-tone-efbd6a));background:rgb(var(--pv-tone-efbd6a));font-weight:700}.topology-map-draft-row button:disabled{cursor:not-allowed;opacity:.48}.topology-mode-summary{border-bottom:1px solid rgb(var(--pv-tone-78c8d8) / .12);background:rgb(var(--pv-tone-081c1f) / .92);grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:8px 12px;padding:11px 14px;display:grid}.topology-mode-summary span{color:rgb(var(--pv-tone-577477));letter-spacing:.1em;font-size:9px}.topology-mode-summary strong{color:rgb(var(--pv-tone-d8fff3));font-size:11px}.topology-mode-summary p{min-width:0;color:rgb(var(--pv-tone-789795));overflow-wrap:anywhere;margin:0;font-size:10px;line-height:1.45}.topology-lamp-editor{border-bottom:1px solid rgb(var(--pv-tone-78c8d8) / .12);background:rgb(var(--pv-tone-07181b) / .96);grid-template-columns:minmax(240px,.9fr) minmax(0,1.2fr);gap:12px;padding:12px 14px;display:grid}.topology-pole-binding-editor{border:1px solid rgb(var(--pv-tone-67e0b1) / .2);background:rgb(var(--pv-tone-092122) / .82);border-radius:7px;grid-column:1/-1;grid-template-columns:minmax(220px,1fr) minmax(180px,.8fr) minmax(110px,.45fr) auto auto;align-items:end;gap:8px;padding:9px 10px;display:grid}.topology-pole-binding-editor>div{align-self:center;gap:2px;display:grid}.topology-pole-binding-editor>div span{color:rgb(var(--pv-tone-d8fff3));font-size:10px;font-weight:700}.topology-pole-binding-editor small,.topology-pole-binding-editor label{color:rgb(var(--pv-tone-789795));font-size:9px}.topology-pole-binding-editor label{gap:4px;display:grid}.topology-pole-binding-editor select{width:100%;min-width:0}.topology-pole-binding-editor p{color:rgb(var(--pv-tone-a8c9c4));grid-column:1/-1;margin:0;font-size:9px}.topology-lamp-list,.topology-layout-editor{align-content:start;gap:7px;display:grid}.topology-lamp-list>div:first-child,.topology-layout-editor>div:first-child{color:rgb(var(--pv-tone-8ca9a6));justify-content:space-between;align-items:center;gap:8px;font-size:10px;display:flex}.topology-lamp-list article{border:1px solid rgb(var(--pv-tone-9dbeb5) / .13);background:rgb(var(--pv-tone-0c2629) / .7);border-radius:6px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 8px;display:grid}.topology-lamp-list article>span{color:rgb(var(--pv-tone-d8fff3));background:rgb(var(--pv-tone-176054));border-radius:4px;padding:3px 5px;font-size:9px}.topology-lamp-list article>span.side-right{background:rgb(var(--pv-tone-245b72))}.topology-lamp-list article div{gap:2px;min-width:0;display:grid}.topology-lamp-list article b{color:rgb(var(--pv-tone-d8fff3));text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.topology-lamp-list article small,.topology-layout-editor small{color:rgb(var(--pv-tone-789795));font-size:9px}.topology-lamp-editor button{border:1px solid rgb(var(--pv-tone-67e0b1) / .38);background:rgb(var(--pv-tone-0b2427));color:rgb(var(--pv-tone-bfe7df));cursor:pointer;border-radius:5px;padding:6px 9px;font-size:10px}.topology-lamp-editor button.primary{color:rgb(var(--pv-tone-071813));border-color:var(--mint);background:var(--mint);font-weight:700}.topology-lamp-editor button:disabled{opacity:.42;cursor:not-allowed}.topology-lamp-draft{border:1px solid rgb(var(--pv-tone-e38b2f) / .35);background:rgb(var(--pv-tone-492b0f) / .35);border-radius:7px;grid-column:1/-1;align-items:end;gap:9px;padding:9px;display:flex}.topology-lamp-draft>div,.topology-lamp-draft label{color:rgb(var(--pv-tone-a8c9c4));gap:3px;font-size:9px;display:grid}.topology-lamp-draft b{color:rgb(var(--pv-tone-ffe6bf));font-size:11px}.topology-lamp-draft input{min-width:150px}.topology-lamp-draft code{color:rgb(var(--pv-tone-ffd595));margin-right:auto;font-size:10px}.topology-layout-editor{grid-template-columns:minmax(110px,.7fr) auto auto;align-items:end}.topology-layout-editor>div:first-child,.topology-layout-impact,.topology-layout-editor ul,.topology-layout-blocked{grid-column:1/-1}.topology-layout-editor label{color:rgb(var(--pv-tone-789795));gap:4px;font-size:9px;display:grid}.topology-layout-editor input{width:100%}.topology-layout-impact,.topology-layout-blocked{color:rgb(var(--pv-tone-a8c9c4));margin:0;font-size:10px}.topology-layout-blocked{color:rgb(var(--pv-tone-efbd6a))}.topology-layout-editor ul{color:rgb(var(--pv-tone-f2a59e));margin:0;padding-left:18px;font-size:10px}.topology-map-actions{z-index:7;background:rgb(var(--pv-tone-041216) / .98);grid-template-columns:auto minmax(330px,1fr) auto minmax(250px,.75fr);align-items:end;gap:10px;padding:12px 14px 14px;display:grid;position:relative}.topology-map-actions button{border:1px solid rgb(var(--pv-tone-67e0b1) / .42);background:rgb(var(--pv-tone-041216) / .9);color:rgb(var(--pv-tone-bfe7df));cursor:pointer;border-radius:5px;padding:7px 10px;font-size:11px}.topology-map-actions button.primary{color:rgb(var(--pv-tone-071813));border-color:var(--mint);background:var(--mint);font-weight:700}.topology-tool-primary,.topology-tool-edit,.topology-tool-merge{align-items:end;gap:6px;display:flex}.topology-tool-edit{flex-wrap:wrap}.topology-tool-primary label,.topology-tool-merge label{color:rgb(var(--pv-tone-789795));white-space:nowrap;grid-template-columns:auto auto auto;align-items:center;gap:6px;font-size:9px;display:grid}.topology-tool-primary input{width:58px;height:31px;color:rgb(var(--pv-tone-d8fff3));border:1px solid rgb(var(--pv-tone-9dbeb5) / .2);background:rgb(var(--pv-tone-08191b));border-radius:5px;padding:0 7px}.topology-tool-primary em{color:rgb(var(--pv-tone-789795));font-style:normal}.topology-tool-merge{justify-content:flex-end}.topology-tool-merge label{grid-template-columns:auto minmax(145px,1fr)}.topology-tool-merge select{max-width:220px;height:31px}.topology-map-actions button:hover:not(:disabled),.topology-map-actions button:focus-visible{border-color:rgb(var(--pv-tone-67e0b1));color:rgb(var(--pv-tone-ffffff))}.topology-map-actions button:disabled{opacity:.42;cursor:not-allowed}.topology-tool-navigation{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.topology-tool-navigation>span{color:rgb(var(--pv-tone-8cb4ad));font-size:11px;font-weight:700}.topology-tool-navigation small{color:rgb(var(--pv-tone-9bc5bc));flex-basis:100%;font-size:11px;line-height:1.4}.topology-navigation-point{border:2px solid rgb(var(--pv-tone-e7fffa));background:rgb(var(--pv-tone-1f8171));width:22px;height:22px;color:rgb(var(--pv-tone-ffffff));box-shadow:0 2px 7px rgb(var(--pv-tone-000000) / .35);border-radius:50%;place-items:center;font-size:12px;font-weight:800;display:grid}.topology-real-map-canvas.is-editing{cursor:crosshair}.topology-amap-node{border:1px solid rgb(var(--pv-tone-67e0b1) / .72);background:rgb(var(--pv-tone-041216) / .92);color:rgb(var(--pv-tone-d7ebe7));white-space:nowrap;cursor:pointer;border-radius:5px;align-items:center;gap:5px;padding:5px 7px;font:11px sans-serif;display:flex}.topology-amap-node span{border:2px solid rgb(var(--pv-tone-67e0b1));background:rgb(var(--pv-tone-163f3e));border-radius:2px;width:9px;height:9px}.streetlight-glyph{color:inherit;display:block;overflow:visible}.streetlight-pole-shadow{fill:none;stroke:currentColor;stroke-width:4.2px;stroke-linecap:round;stroke-linejoin:round}.streetlight-pole-highlight{fill:none;stroke:rgb(var(--pv-tone-f4fff9));stroke-width:1.1px;stroke-linecap:round;opacity:.76}.streetlight-arm-brace{fill:none;stroke:currentColor;stroke-width:1.45px;stroke-linecap:round;opacity:.78}.streetlight-housing{fill:rgb(var(--pv-tone-17363a));stroke:currentColor;stroke-width:1.7px;stroke-linejoin:round}.streetlight-lens{fill:rgb(var(--pv-tone-f4fff9));stroke:currentColor;stroke-width:.75px}.streetlight-cap{fill:currentColor}.streetlight-base{fill:rgb(var(--pv-tone-17363a));stroke:currentColor;stroke-width:1.5px}.streetlight-ground{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;opacity:.28}.streetlight-base-bolt{fill:rgb(var(--pv-tone-f4fff9))}.streetlight-dimmed{opacity:.55}.streetlight-marker{width:32px;height:45px;color:rgb(var(--pv-tone-168c7a));cursor:grab;filter:drop-shadow(0 2px 3px rgb(var(--pv-tone-051c1f) / .48));background:0 0;border:0;place-items:end center;padding:0;display:grid;position:relative}.streetlight-marker .streetlight-glyph{width:27px;height:36px}.streetlight-marker-label{visibility:hidden;opacity:0;border:1px solid rgb(var(--pv-tone-0a535b) / .46);background:rgb(var(--pv-tone-f9fcfc) / .94);max-width:130px;color:rgb(var(--pv-tone-17383d));white-space:nowrap;text-overflow:ellipsis;pointer-events:none;transition:opacity var(--motion-instant) ease,transform var(--motion-instant) ease,visibility 0s linear var(--motion-instant);box-shadow:0 2px 7px rgb(var(--pv-tone-0a2a2e) / .18);border-radius:4px;padding:3px 6px;font:600 10px sans-serif;position:absolute;bottom:7px;left:27px;overflow:hidden;transform:translate(-3px)}.streetlight-marker:hover .streetlight-marker-label,.streetlight-marker:focus-visible .streetlight-marker-label,.streetlight-marker-selected .streetlight-marker-label,.streetlight-marker-draft .streetlight-marker-label{visibility:visible;opacity:1;transition-delay:0s;transform:none}.streetlight-marker-selected{color:rgb(var(--pv-tone-78c8d8));filter:drop-shadow(0 0 7px rgb(var(--pv-tone-78c8d8) / .82))}.streetlight-marker-draft{color:rgb(var(--pv-tone-e38b2f));filter:drop-shadow(0 0 6px rgb(var(--pv-tone-e38b2f) / .78))}.streetlight-marker-draft .streetlight-marker-label{border-color:rgb(var(--pv-tone-e38b2f));background:rgb(var(--pv-tone-fff6e7));color:rgb(var(--pv-tone-6c3b0e))}.streetlight-marker-preview{color:rgb(var(--pv-tone-e38b2f));cursor:default;filter:drop-shadow(0 0 5px rgb(var(--pv-tone-e38b2f) / .7))}.streetlight-marker-preview .streetlight-glyph{opacity:.82}.streetlight-marker-badge{border:1.5px solid rgb(var(--pv-tone-ffffff));background:rgb(var(--pv-tone-e38b2f));min-width:16px;height:16px;color:rgb(var(--pv-tone-241405));border-radius:50%;place-items:center;padding:0 2px;font:700 8px IBM Plex Mono,monospace;display:grid;position:absolute;top:0;right:-1px}.topology-fallback-lamp{color:rgb(var(--pv-tone-168c7a));cursor:grab;overflow:visible}.topology-fallback-lamp.draft{color:rgb(var(--pv-tone-e38b2f));filter:drop-shadow(0 0 2px rgb(var(--pv-tone-e38b2f) / .8))}.topology-fallback-lamp-hit{fill:#0000;stroke:none}.topology-fallback-layout-preview{color:rgb(var(--pv-tone-e38b2f));pointer-events:none;filter:drop-shadow(0 0 1.5px rgb(var(--pv-tone-e38b2f) / .75))}.topology-fallback-layout-preview text{fill:rgb(var(--pv-tone-6c3b0e));stroke:rgb(var(--pv-tone-fff4df));stroke-width:.35px;paint-order:stroke;font:700 2.4px IBM Plex Mono,monospace}.topology-draft-point{border:2px solid rgb(var(--pv-tone-b8fff1));background:rgb(var(--pv-tone-0a3437));width:18px;height:18px;color:rgb(var(--pv-tone-ffffff));box-shadow:0 0 0 4px rgb(var(--pv-tone-78c8d8) / .22),0 0 12px rgb(var(--pv-tone-b8fff1) / .7);border-radius:50%;place-items:center;font:700 10px IBM Plex Mono,monospace;display:grid}.topology-geometry-point.is-delete-target{border-color:rgb(var(--pv-tone-f2786d));background:rgb(var(--pv-tone-4b2024));width:22px;height:22px;color:rgb(var(--pv-tone-ffd9d5));box-shadow:0 0 0 4px rgb(var(--pv-tone-f2786d) / .2),0 0 14px rgb(var(--pv-tone-f2786d) / .7);cursor:pointer;place-items:center;font-size:16px;line-height:1;display:grid}.topology-geometry-point.is-delete-target.is-endpoint{border-color:rgb(var(--pv-tone-f2786d));background:rgb(var(--pv-tone-4b2024));color:rgb(var(--pv-tone-ffd9d5));opacity:1;cursor:pointer}.topology-geometry-point.is-split-target{border-color:rgb(var(--pv-tone-78c8d8));background:rgb(var(--pv-tone-173f47));color:rgb(var(--pv-tone-d7f8ff));cursor:crosshair}.topology-fallback-handle.is-delete-target{fill:rgb(var(--pv-tone-f2786d));stroke:rgb(var(--pv-tone-401d21));cursor:pointer}.topology-fallback-handle.is-delete-target.is-endpoint{fill:rgb(var(--pv-tone-f2786d));opacity:1;cursor:pointer}.topology-fallback-handle.is-split-target{fill:rgb(var(--pv-tone-78c8d8));cursor:crosshair}.topology-summary{gap:8px;padding:12px 14px;display:grid}.topology-summary div{color:rgb(var(--pv-tone-a8c9c4));justify-content:space-between;gap:12px;font-size:11px;display:flex}.topology-summary b{color:rgb(var(--pv-tone-67e0b1))}.topology-summary small{color:rgb(var(--pv-tone-6f8c88));font-size:10px}.topology-management{overflow:visible}.topology-intro{color:var(--text-secondary);margin:0;padding:18px 24px 10px;font-size:12px;line-height:1.7}.topology-workspace-nav{z-index:15;border-block:1px solid rgb(var(--pv-tone-9dbeb5) / .09);background:rgb(var(--pv-tone-08181b) / .97);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);grid-template-columns:repeat(4,minmax(145px,1fr));gap:7px;margin:0;padding:10px 20px;display:grid;position:sticky;top:0;overflow-x:auto}.topology-workspace-nav button{min-height:42px;color:rgb(var(--pv-tone-789795));text-align:left;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:9px;padding:8px 12px;font-size:11px;display:flex}.topology-workspace-nav button span{color:rgb(var(--pv-tone-4f6b6d));font:9px IBM Plex Mono,monospace}.topology-workspace-nav button:hover,.topology-workspace-nav button:focus-visible{color:rgb(var(--pv-tone-c6e2dc));border-color:rgb(var(--pv-tone-67e0b1) / .15);background:rgb(var(--pv-tone-67e0b1) / .05)}.topology-workspace-nav button.active{color:rgb(var(--pv-tone-071813));border-color:var(--mint);background:var(--mint);box-shadow:0 6px 20px rgb(var(--pv-tone-67e0b1) / .12);font-weight:700}.topology-workspace-nav button.active span{color:rgb(var(--pv-tone-275d51))}.topology-map-workspace{background:rgb(var(--pv-tone-030e11) / .26);grid-template-columns:minmax(0,1fr) 260px;gap:12px;padding:16px 20px 22px;display:grid}.topology-selection-panel{border:1px solid rgb(var(--pv-tone-9dbeb5) / .12);background:rgb(var(--pv-tone-051215) / .72);border-radius:10px;align-self:start;max-height:calc(100vh - 110px);padding:18px;position:sticky;top:74px;overflow:auto}.topology-selection-panel>span{color:rgb(var(--pv-tone-577477));letter-spacing:.12em;margin-bottom:14px;font-size:9px;display:block}.topology-selection-panel strong{color:rgb(var(--pv-tone-d8e7e3));font-size:14px;display:block}.topology-selection-panel small,.topology-selection-panel p{color:rgb(var(--pv-tone-789795));margin-top:7px;font-size:10px;line-height:1.6;display:block}.topology-selection-panel dl{margin:18px 0 0}.topology-selection-panel dl div{border-top:1px solid rgb(var(--pv-tone-9dbeb5) / .08);justify-content:space-between;gap:12px;padding:9px 0;display:flex}.topology-selection-panel dt,.topology-selection-panel dd{color:rgb(var(--pv-tone-668184));margin:0;font-size:10px}.topology-selection-panel dd{color:rgb(var(--pv-tone-b8cbc7));text-align:right}.topology-section-heading{border-bottom:1px solid rgb(var(--pv-tone-9dbeb5) / .08);justify-content:space-between;align-items:center;gap:20px;min-height:92px;padding:18px 24px 14px;display:flex}.topology-section-heading.compact{border-top:1px solid rgb(var(--pv-tone-9dbeb5) / .08)}.topology-section-heading span{color:rgb(var(--pv-tone-577477));letter-spacing:.12em;font-size:9px}.topology-section-heading h3{color:rgb(var(--pv-tone-cfe0dc));margin:5px 0 0;scroll-margin-top:80px;font-size:15px}.topology-section-heading p{max-width:760px;color:rgb(var(--pv-tone-6f8c88));margin:6px 0 0;font-size:11px;line-height:1.55}.topology-section-heading>button,.topology-section-actions button{color:var(--mint);border:1px solid rgb(var(--pv-tone-67e0b1) / .28);background:rgb(var(--pv-tone-67e0b1) / .05);cursor:pointer;border-radius:7px;flex:none;padding:9px 13px}.topology-section-actions{justify-content:flex-end;padding:0 24px 10px;display:flex}.topology-section-actions button{color:var(--mint);border:1px solid rgb(var(--pv-tone-67e0b1) / .28);background:rgb(var(--pv-tone-67e0b1) / .05);cursor:pointer;border-radius:7px;padding:8px 12px}.topology-management>.admin-table-wrap{border:1px solid rgb(var(--pv-tone-9dbeb5) / .1);scrollbar-color:rgb(var(--pv-tone-67e0b1) / .24) transparent;border-radius:9px;max-height:min(48vh,480px);margin:14px 20px 20px;overflow:auto}.topology-management>.admin-table-wrap thead{z-index:2;position:sticky;top:0}.topology-management .admin-table tr.is-selected td{background:rgb(var(--pv-tone-67e0b1) / .065);box-shadow:inset 0 1px rgb(var(--pv-tone-67e0b1) / .08),inset 0 -1px rgb(var(--pv-tone-67e0b1) / .08)}.topology-management .admin-table tr.is-selected td:first-child{box-shadow:inset 3px 0 var(--mint),inset 0 1px rgb(var(--pv-tone-67e0b1) / .08),inset 0 -1px rgb(var(--pv-tone-67e0b1) / .08)}.topology-management .admin-help{color:rgb(var(--pv-tone-6f8c88));margin:0;padding:0 24px 14px;font-size:11px;line-height:1.65}.topology-management .admin-tabs-nested{margin:0 20px 12px}.topology-coordinate-fields{grid-template-columns:repeat(2,minmax(130px,1fr));gap:6px;display:grid}.topology-coordinate-fields input{min-width:130px;min-height:38px;color:var(--text-primary);border:1px solid rgb(var(--pv-tone-9dbeb5) / .16);background:rgb(var(--pv-tone-08191b));border-radius:7px;padding:0 9px}.topology-json-editor{min-width:150px}.topology-json-editor summary{color:rgb(var(--pv-tone-7fa29e));border:1px solid rgb(var(--pv-tone-9dbeb5) / .12);cursor:pointer;border-radius:6px;padding:8px 10px;font-size:10px}.topology-json-editor textarea{width:360px;max-width:50vw;color:rgb(var(--pv-tone-b8cbc7));background:rgb(var(--pv-tone-061519));resize:vertical;margin-top:7px;font:10px/1.55 IBM Plex Mono,monospace}.topology-edge-form{border:1px solid rgb(var(--pv-tone-9dbeb5) / .1);background:rgb(var(--pv-tone-051215) / .45);border-radius:9px;grid-template-columns:160px minmax(180px,1fr) minmax(180px,1fr) auto;align-items:end;margin:0 20px 14px;padding:16px}.topology-save-bar{z-index:14;border:1px solid rgb(var(--pv-tone-67e0b1) / .25);background:rgb(var(--pv-tone-06171b) / .96);box-shadow:0 12px 40px rgb(var(--pv-tone-000000) / .38);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:9px;justify-content:flex-end;align-items:center;gap:16px;margin:16px 20px 20px;padding:12px 14px;display:flex;position:sticky;bottom:12px}.topology-save-bar span{color:rgb(var(--pv-tone-789795));font-size:10px}.topology-save-bar button{color:rgb(var(--pv-tone-071813));background:var(--mint);cursor:pointer;border:0;border-radius:7px;padding:10px 16px;font-weight:700}.topology-save-bar button:disabled{color:rgb(var(--pv-tone-69817d));background:rgb(var(--pv-tone-19302f));cursor:default}.topology-legend .legend-group em.topology-demo{background:rgb(var(--pv-tone-78c8d8));border-radius:2px;width:7px;height:7px}.map-legend b{background:rgb(var(--pv-tone-97bfbc) / .2);width:1px;height:14px;margin:0 10px}.map-legend em{background:var(--mint);border-radius:50%;width:7px;height:7px;margin:0 5px 0 10px;display:inline-block}.map-legend em.alert{background:var(--coral);border-radius:0;transform:rotate(45deg)}.map-legend em.unknown{background:rgb(var(--pv-tone-7e9295));border-radius:0}.map-coordinate-note{z-index:2;color:rgb(var(--pv-tone-7b9396));font:9px IBM Plex Mono,monospace;position:absolute;bottom:15px;left:18px}.map-region-note{z-index:2;color:rgb(var(--pv-tone-8eb9b5));border:1px solid rgb(var(--pv-tone-67e0b1) / .18);background:rgb(var(--pv-tone-06171b) / .78);padding:5px 8px;font:9px IBM Plex Mono,monospace;position:absolute;top:15px;left:18px}.map-region-note.warning{color:var(--amber);border-color:rgb(var(--pv-tone-efbd6a) / .28)}.map-road-selector{z-index:3;border:1px solid rgb(var(--pv-tone-67e0b1) / .18);background:rgb(var(--pv-tone-06171b) / .9);scrollbar-width:thin;gap:6px;max-width:calc(100% - 36px);padding:5px;display:flex;position:absolute;top:15px;right:18px;overflow-x:auto}.map-road-selector button{color:rgb(var(--pv-tone-82a6a3));cursor:pointer;background:0 0;border:1px solid #0000;flex:none;padding:5px 9px;font:9px IBM Plex Mono,monospace}.map-road-selector button.active{color:rgb(var(--pv-tone-07171b));border-color:var(--cyan);background:var(--cyan)}.road-segments-fallback{width:100%;height:100%;position:absolute;inset:0}.road-segments-fallback polyline{fill:none;stroke:rgb(var(--pv-tone-3cae9b) / .62);stroke-width:.65px;vector-effect:non-scaling-stroke}.road-segments-fallback polyline.selected{stroke:var(--cyan);stroke-width:1.1px}.map-provider-stage .map-legend,.map-provider-stage .pole-detail{z-index:5}.amap-container{background:rgb(var(--pv-tone-07171b));position:absolute;inset:0}.map-loading{z-index:4;color:rgb(var(--pv-tone-718b8e));background:rgb(var(--pv-tone-07171b) / .86);letter-spacing:.16em;place-items:center;font:10px IBM Plex Mono,monospace;display:grid;position:absolute;inset:0}.map-empty-overlay{z-index:4;text-align:center;border:1px solid rgb(var(--pv-tone-67e0b1) / .16);background:rgb(var(--pv-tone-051216) / .86);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);min-width:220px;padding:14px 18px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.map-empty-overlay strong{color:rgb(var(--pv-tone-9db5b4));font-size:14px;font-weight:500;display:block}.map-empty-overlay span{color:rgb(var(--pv-tone-607b7d));margin-top:6px;font-size:10px;display:block}.pole-detail{width:min(280px,38%);color:rgb(var(--pv-tone-9eb3b2));border:1px solid rgb(var(--pv-tone-67e0b1) / .2);background:rgb(var(--pv-tone-051216) / .94);box-shadow:0 18px 45px rgb(var(--pv-tone-000000) / .32);padding:16px;position:absolute;top:62px;right:18px}.pole-detail>.pole-detail-close{color:rgb(var(--pv-tone-688184));cursor:pointer;background:0 0;border:0;position:absolute;top:8px;right:9px}.pole-detail>span{color:rgb(var(--pv-tone-527173));letter-spacing:.12em;font-size:8px}.pole-detail>strong{color:var(--mint);margin-top:5px;font:500 17px IBM Plex Mono,monospace;display:block}.pole-detail>p{color:rgb(var(--pv-tone-a9bcba));margin:5px 0 12px;font-size:11px}.pole-detail dl{margin:0}.pole-detail dl div{border-top:1px solid rgb(var(--pv-tone-97bfbc) / .08);justify-content:space-between;gap:12px;padding:5px 0;display:flex}.pole-detail dt,.pole-detail dd{margin:0;font-size:9px}.pole-detail dt{color:rgb(var(--pv-tone-526d70))}.pole-detail dd{color:rgb(var(--pv-tone-81999a));text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pole-detail dd.online{color:var(--mint)}.pole-detail dd.delayed{color:var(--amber)}.pole-detail dd.alert,.pole-detail dd.offline{color:var(--coral)}.pole-detail dd.normal{color:var(--mint)}.pole-detail dd.unknown{color:rgb(var(--pv-tone-9aadae))}.pole-detail .pole-open-device{width:100%;color:var(--mint);border:1px solid rgb(var(--pv-tone-67e0b1) / .25);background:rgb(var(--pv-tone-67e0b1) / .05);cursor:pointer;margin-top:11px;padding:8px;font-size:9px}.map-place-overview{z-index:6;border:1px solid rgb(var(--pv-tone-67e0b1) / .18);background:rgb(var(--pv-tone-051216) / .92);width:min(310px,42%);box-shadow:0 16px 38px rgb(var(--pv-tone-000000) / .28);gap:7px;padding:13px;display:grid;position:absolute;top:58px;left:20px}.map-place-heading{border-bottom:1px solid rgb(var(--pv-tone-97bfbc) / .1);justify-content:space-between;align-items:end;padding-bottom:8px;display:flex}.map-place-heading b{color:rgb(var(--pv-tone-c4d5d2));font-size:11px}.map-place-heading span{color:rgb(var(--pv-tone-506e70));font-size:8px}.map-place-overview>button{color:rgb(var(--pv-tone-9bb0ae));text-align:left;border:1px solid rgb(var(--pv-tone-97bfbc) / .1);background:rgb(var(--pv-tone-091b1f) / .88);cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:9px;display:flex}.map-place-overview>button:hover{border-color:rgb(var(--pv-tone-67e0b1) / .35)}.map-place-overview button b,.map-place-overview button small{display:block}.map-place-overview button b{font-size:10px}.map-place-overview button small{color:rgb(var(--pv-tone-506d70));margin-top:3px;font-size:8px}.place-status{max-width:180px;color:rgb(var(--pv-tone-8aa0a3));flex-wrap:wrap;justify-content:flex-end;gap:3px 8px;font:9px IBM Plex Mono,monospace;display:flex}.place-status .health-alert{color:var(--coral)}.map-place-overview>.unassigned-entry{color:rgb(var(--pv-tone-71898a));border:1px dashed rgb(var(--pv-tone-efbd6a) / .3);background:rgb(var(--pv-tone-efbd6a) / .035);justify-content:space-between;padding:8px 9px;font-size:9px;display:flex}.unassigned-entry b{font-weight:500}.unassigned-entry span{color:var(--amber)}.map-unassigned-list{z-index:6;border:1px solid rgb(var(--pv-tone-efbd6a) / .24);background:rgb(var(--pv-tone-051216) / .94);width:min(360px,48%);max-height:calc(100% - 120px);box-shadow:0 16px 38px rgb(var(--pv-tone-000000) / .3);gap:5px;padding:13px;display:grid;position:absolute;top:58px;left:20px;overflow:auto}.map-unassigned-list>div{border-bottom:1px solid rgb(var(--pv-tone-97bfbc) / .1);justify-content:space-between;padding-bottom:8px;display:flex}.map-unassigned-list>div b{color:rgb(var(--pv-tone-d3dfdd));font-size:11px}.map-unassigned-list>div span,.map-unassigned-list p{color:rgb(var(--pv-tone-587274));font-size:8px}.map-unassigned-list>button{color:rgb(var(--pv-tone-728d8d));text-align:left;border:1px solid rgb(var(--pv-tone-97bfbc) / .1);background:rgb(var(--pv-tone-091b1f) / .88);cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:8px;display:flex}.map-unassigned-list>button.selected{color:var(--amber);border-color:var(--amber);background:rgb(var(--pv-tone-efbd6a) / .08)}.map-unassigned-list button b,.map-unassigned-list button small{display:block}.map-unassigned-list button b{color:rgb(var(--pv-tone-aebfbd));font-size:9px}.map-unassigned-list button small{color:rgb(var(--pv-tone-526e70));margin-top:2px;font-size:7px}@keyframes pulse{0%{opacity:.65;transform:scale(.7)}80%,to{opacity:0;transform:scale(2.3)}}@keyframes status-pulse{0%,to{opacity:.42}50%{opacity:1}}.load-panel{padding-bottom:12px}.load-value{align-items:baseline;padding:16px 18px 6px;display:flex}.load-value strong{color:var(--mint);font:500 clamp(30px,2.5vw,54px)/1 IBM Plex Mono,monospace}.load-value span{color:rgb(var(--pv-tone-668084));margin-left:8px;font-size:11px}.load-gauge{background:rgb(var(--pv-tone-79a09c) / .1);height:5px;margin:8px 18px 3px}.load-gauge i{background:linear-gradient(90deg, rgb(var(--pv-tone-238c78)), var(--mint));height:100%;box-shadow:0 0 10px rgb(var(--pv-tone-67e0b1) / .28);display:block}.load-range{color:rgb(var(--pv-tone-4d686b));justify-content:space-between;margin:0 18px 9px;font:8px IBM Plex Mono,monospace;display:flex}.phase-list{margin:0 18px}.phase-list div{grid-template-columns:35px 1fr;align-items:center;margin-top:6px;display:grid}.phase-list dt{color:rgb(var(--pv-tone-698185));font-size:9px}.phase-list dd{height:17px;color:rgb(var(--pv-tone-91a6a7));background:rgb(var(--pv-tone-749a97) / .07);text-align:right;margin:0;padding:2px 5px;font:8px IBM Plex Mono,monospace;position:relative}.phase-list dd i{z-index:0;background:rgb(var(--pv-tone-67e0b1) / .13);position:absolute;inset:0 auto 0 0}.alert-list{padding:7px 14px}.alert-row{width:100%;color:var(--text-secondary);text-align:left;border:0;border-bottom:1px solid rgb(var(--pv-tone-9dbeb5) / .065);cursor:pointer;background:0 0;grid-template-columns:28px 1fr 10px;align-items:center;gap:10px;padding:11px 5px;display:grid}.alert-row:hover{background:rgb(var(--pv-tone-9dbeb5) / .035)}.alert-icon{width:26px;height:26px;color:var(--amber);background:rgb(var(--pv-tone-efbd6a) / .055);border:1px solid;border-radius:7px;place-items:center;font:600 11px IBM Plex Mono,monospace;display:grid}.alert-icon.critical{color:var(--coral);background:rgb(var(--pv-tone-f2786d) / .06)}.alert-row b{font-size:10px;font-weight:500;display:block}.alert-row.selected{background:rgb(var(--pv-tone-67e0b1) / .065);box-shadow:inset 2px 0 var(--mint)}.alert-row small{color:var(--text-muted);font-size:10px}.alert-empty{min-height:130px;color:rgb(var(--pv-tone-688486));text-align:center;place-content:center;justify-items:center;gap:5px;font-size:10px;display:grid}.alert-empty i{width:32px;height:32px;color:var(--mint);border:1px solid rgb(var(--pv-tone-67e0b1) / .26);background:rgb(var(--pv-tone-67e0b1) / .05);border-radius:50%;place-items:center;margin-bottom:5px;font-size:15px;font-style:normal;display:grid}.alert-empty b{color:rgb(var(--pv-tone-a6bcba));font-size:12px;font-weight:500}.alert-empty span{color:rgb(var(--pv-tone-587476));font-size:9px}.row-arrow{color:rgb(var(--pv-tone-486366))}.trend-chart-wrap{grid-template-rows:minmax(0,1fr);height:calc(100% - 66px);min-height:170px;display:grid;position:relative}.trend-chart-wrap .trend-chart{grid-row:1;width:100%;min-width:0;height:100%;min-height:0}.trend-empty{color:var(--text-muted);pointer-events:none;background:0 0;place-content:center;justify-items:center;gap:6px;display:grid;position:absolute;inset:0}.trend-empty b{color:var(--text-secondary);font-size:14px;font-weight:600}.trend-empty span{font-size:11px}.trend-sparse{color:rgb(var(--pv-tone-526d70));text-align:center;pointer-events:none;place-content:center;justify-items:center;gap:5px;display:grid;position:absolute;inset:62px 0 22px}.trend-sparse b{color:rgb(var(--pv-tone-829b9c));font-size:12px;font-weight:500}.trend-sparse span{font-size:9px}.trend-summary{z-index:2;border:1px solid rgb(var(--pv-tone-67e0b1) / .16);background:rgb(var(--pv-tone-07171b) / .76);pointer-events:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);align-items:baseline;gap:5px;max-width:calc(100% - 28px);padding:5px 8px;display:flex;position:absolute;top:8px;right:14px}.trend-summary span,.trend-summary small{color:var(--text-muted);white-space:nowrap;font-size:9px}.trend-summary b{min-width:0;color:rgb(var(--pv-tone-d2e1dd));text-overflow:ellipsis;white-space:nowrap;font:600 12px IBM Plex Mono,monospace;overflow:hidden}.chart-loading{height:calc(100% - 66px);color:rgb(var(--pv-tone-567174));letter-spacing:.16em;place-items:center;font:10px IBM Plex Mono,monospace;display:grid}.trend-panel-action{align-items:center;gap:10px;display:flex}.trend-panel-action>span{text-overflow:ellipsis;white-space:nowrap;max-width:150px;overflow:hidden}.hourly-trend-panel .trend-panel-action>span{display:none}.trend-granularity{border:1px solid rgb(var(--pv-tone-97bfbc) / .12);background:rgb(var(--pv-tone-051216) / .45);border-radius:5px;padding:2px;display:flex}.trend-granularity button{min-width:38px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:3px;padding:4px 7px;font-size:9px}.trend-granularity button.active{color:var(--mint);background:rgb(var(--pv-tone-67e0b1) / .12);box-shadow:inset 0 0 0 1px rgb(var(--pv-tone-67e0b1) / .18)}.insight-mode-action{align-items:center;gap:7px;display:flex}.insight-mode-action>button,.insight-mode-return{color:var(--text-muted);border:1px solid rgb(var(--pv-tone-97bfbc) / .14);background:rgb(var(--pv-tone-051216) / .42);cursor:pointer;white-space:nowrap;border-radius:4px;padding:5px 8px;font-size:9px}.insight-mode-action>button:hover,.insight-mode-return:hover{color:var(--mint);border-color:rgb(var(--pv-tone-67e0b1) / .28)}.health-layout{grid-template-columns:.9fr 1.1fr;align-items:center;height:calc(100% - 66px);padding:12px 18px;display:grid}.health-ring{--rate:0deg;aspect-ratio:1;background:conic-gradient(var(--mint) 0 var(--rate), rgb(var(--pv-tone-608584) / .1) var(--rate));width:132px;box-shadow:0 0 35px rgb(var(--pv-tone-67e0b1) / .05);border-radius:50%;justify-self:center;place-items:center;display:grid}.health-ring:before{content:"";aspect-ratio:1;background:rgb(var(--pv-tone-0a1c20));border:1px solid var(--line);border-radius:50%;grid-area:1/1;width:105px}.health-ring div{z-index:1;text-align:center;grid-area:1/1}.health-ring strong{color:var(--mint);font:500 22px IBM Plex Mono,monospace;display:block}.health-ring span{color:rgb(var(--pv-tone-5c7678));font-size:8px}.health-breakdown{margin:0}.health-breakdown div{border-bottom:1px solid rgb(var(--pv-tone-97bfbc) / .08);padding:8px 0}.health-breakdown dt,.health-breakdown dd{color:rgb(var(--pv-tone-6d8588));justify-content:space-between;align-items:center;margin:0;font-size:9px;display:flex}.health-breakdown dd{padding:3px 0 0 17px;font:9px IBM Plex Mono,monospace}.health-breakdown dd strong{color:rgb(var(--pv-tone-c0d1cf))}.health-breakdown i{background:var(--mint);width:7px;height:7px;box-shadow:0 0 8px rgb(var(--pv-tone-67e0b1) / .3);margin-right:9px}.health-breakdown i.lamp{background:var(--cyan)}.health-breakdown i.gateway{background:var(--amber)}.energy-analysis{gap:12px;padding:14px 17px;display:grid}.energy-analysis-heading{color:var(--text-secondary);justify-content:space-between;align-items:baseline;gap:8px;font-size:12px;display:flex}.energy-analysis-heading small{color:var(--text-muted);font-size:10px}.energy-analysis select{width:100%;height:38px;color:var(--text-secondary);border:1px solid rgb(var(--pv-tone-9dbeb5) / .12);background:rgb(var(--pv-tone-08191b));border-radius:7px;padding:0 11px;font-size:11px}.energy-analysis>p,.energy-analysis-placeholder{min-height:110px;color:var(--text-muted);place-items:center;margin:0;font-size:11px;display:grid}.energy-comparison{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px;min-width:0;min-height:0;display:grid}.energy-comparison>span{background:rgb(var(--pv-tone-9dbeb5) / .045);border:0;border-radius:8px;min-width:0;padding:11px}.energy-comparison small,.energy-comparison b,.energy-comparison i{display:block}.energy-comparison small{color:var(--text-muted);font-size:11px}.energy-comparison b{color:var(--mint);margin:6px 0 2px;font:600 22px IBM Plex Mono,monospace}.energy-comparison i{color:var(--text-muted);overflow-wrap:anywhere;font-size:10px;font-style:normal}.energy-bars{gap:8px;display:grid}.energy-bars span{grid-template-columns:36px 1fr;align-items:center;gap:8px;display:grid}.energy-bars i{color:var(--text-muted);font-size:10px;font-style:normal}.energy-bars b{background:rgb(var(--pv-tone-9dbeb5) / .07);border-radius:6px;height:6px;overflow:hidden}.energy-bars em{border-radius:inherit;background:linear-gradient(90deg, rgb(var(--pv-tone-397f70)), var(--mint));min-width:2px;height:100%;display:block}.energy-bars span:last-child em{background:rgb(var(--pv-tone-6d8580));box-shadow:none}.energy-change{gap:3px;min-width:0;min-height:0;padding-top:2px;display:grid}.energy-change b{color:var(--amber);font:600 13px IBM Plex Mono,monospace}.energy-change span{min-width:0;color:var(--text-muted);overflow-wrap:anywhere;font-size:10px;line-height:1.35}.energy-change.insufficient b{color:rgb(var(--pv-tone-caa762))}.energy-change.saving b{color:var(--mint)}.energy-change.increased b{color:var(--amber)}.energy-opportunity{border-left:2px solid var(--amber);background:rgb(var(--pv-tone-caa762) / .07);gap:3px;padding:8px 10px;display:grid}.energy-opportunity b{color:var(--amber);font-size:11px}.energy-opportunity span{color:var(--text-muted);font-size:10px;line-height:1.35}.energy-ranking{gap:6px;padding-top:4px;display:grid}.energy-ranking>div:first-child{justify-content:space-between;align-items:baseline;display:flex}.energy-ranking>div:first-child b{color:var(--text-secondary);font-size:11px}.energy-ranking>div:first-child small{color:var(--text-muted);font-size:9px}.energy-ranking-row{grid-template-columns:18px minmax(0,1fr) auto auto;align-items:center;gap:6px;min-width:0;display:grid}.energy-ranking-row i{color:var(--text-muted);font:10px IBM Plex Mono,monospace}.energy-ranking-row span{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.energy-ranking-row strong{color:var(--mint);font:10px IBM Plex Mono,monospace}.energy-ranking-row em{font:9px IBM Plex Mono,monospace}.energy-ranking-row em.up{color:var(--amber)}.energy-ranking-row em.down{color:var(--mint)}.device-detail-empty{height:calc(100% - 66px);min-height:170px;color:rgb(var(--pv-tone-607b7d));place-items:center;font-size:11px;display:grid}.device-detail-360{height:calc(100% - 66px);padding:14px 16px;overflow:auto}.device-identity{justify-content:space-between;align-items:start;gap:10px;display:flex}.device-identity b,.device-identity span{display:block}.device-identity b{color:rgb(var(--pv-tone-d0dfdd));font-size:13px}.device-identity span{color:rgb(var(--pv-tone-668184));margin-top:3px;font:9px IBM Plex Mono,monospace}.device-dual-status{gap:5px;display:flex}.device-dual-status span{border:1px solid;margin:0;padding:4px 7px;font-size:8px}.device-dual-status .online,.device-dual-status .normal{color:var(--mint)}.device-dual-status .delayed{color:var(--amber)}.device-dual-status .offline,.device-dual-status .alert{color:var(--coral)}.device-freshness{grid-template-columns:repeat(3,1fr);gap:6px;margin:10px 0;display:grid}.device-freshness span{color:rgb(var(--pv-tone-668184));background:rgb(var(--pv-tone-97bfbc) / .05);padding:6px;font-size:8px}.device-freshness b{color:rgb(var(--pv-tone-95aaa8));margin-top:3px;font:8px IBM Plex Mono,monospace;display:block}.device-detail-columns section{border:1px solid rgb(var(--pv-tone-97bfbc) / .11);background:rgb(var(--pv-tone-051215) / .25);min-width:0;padding:9px}.device-detail-columns h3{color:rgb(var(--pv-tone-819c9d));margin:0 0 7px;font-size:9px;font-weight:500}.device-detail-columns p{color:rgb(var(--pv-tone-9ab0ae));text-overflow:ellipsis;white-space:nowrap;margin:4px 0;font-size:8px;overflow:hidden}.related-assets,.latest-metrics,.recent-events{gap:5px;display:grid}.related-assets>span,.latest-metrics>span,.recent-events>span{color:rgb(var(--pv-tone-708b8c));font-size:8px}.related-assets button{color:rgb(var(--pv-tone-91aaa8));text-align:left;border:1px solid rgb(var(--pv-tone-67e0b1) / .16);background:rgb(var(--pv-tone-67e0b1) / .035);cursor:pointer;padding:6px}.related-assets button small,.related-assets button b,.related-assets button span,.latest-metrics b,.latest-metrics small,.recent-events b,.recent-events small{display:block}.related-assets button small,.latest-metrics small,.recent-events small{color:rgb(var(--pv-tone-607b7d));font-size:7px}.related-assets button b,.latest-metrics b,.recent-events b{color:rgb(var(--pv-tone-aec2bf));margin:2px 0;font-size:8px;font-weight:500}.panel-header h2{font-size:16px}.panel-header button{font-size:12px}.map-road-selector button,.map-coordinate-note,.map-region-note,.map-legend,.point-label{font-size:11px}.point-label b{font-size:12px}.pole-detail dt,.pole-detail dd,.pole-detail .pole-open-device{font-size:11px}.alert-row b{font-size:12px}.alert-row small{font-size:10px;line-height:1.45}.energy-analysis select,.energy-comparison small{font-size:11px}.energy-comparison i,.energy-bars i,.energy-change span{font-size:10px}.energy-change b{font-size:13px}.device-identity b{font-size:15px}.device-identity span{font-size:11px}.device-dual-status span,.device-freshness span,.device-freshness b{font-size:10px}.device-detail-columns h3{font-size:11px}.device-detail-columns p,.related-assets>span,.latest-metrics>span,.recent-events>span{font-size:10px}.related-assets button small,.latest-metrics small,.recent-events small{font-size:9px;line-height:1.4}.related-assets button b,.latest-metrics b,.recent-events b{font-size:10px}@media (width>=1500px) and (width<=1999px) and (height<=1200px){.dashboard-shell{padding:16px 24px}.topbar{min-height:60px;margin-bottom:12px}.metric-grid{gap:10px;margin-bottom:10px}.metric-card{min-height:104px;padding:13px 16px 12px}.metric-card p{margin:8px 0 4px}.content-grid{grid-template-rows:minmax(420px,50vh) 290px;gap:10px}.side-stack{gap:10px}.panel-header{height:58px;padding:0 15px}.map-stage{inset:58px 0 0}.trend-chart-wrap,.health-layout,.device-detail-360,.device-detail-empty{height:calc(100% - 58px)}.load-panel .energy-analysis{gap:6px;padding:8px 15px}.load-panel .energy-comparison>span{padding:6px 8px}}@media (width>=2000px) and (width<=2999px){.dashboard-shell{padding:28px 36px}.topbar{min-height:64px;margin-bottom:14px}.metric-grid{gap:12px;margin-bottom:12px}.metric-card{min-height:136px;padding:20px 22px 18px}.content-grid{grid-template-rows:minmax(570px,54vh) 280px;gap:12px}.side-stack{gap:12px}}@media (width>=3000px) and (height>=1800px){.content-grid{grid-template-rows:minmax(700px,59vh) 360px}.metric-card{min-height:170px;padding:26px 28px}h1{font-size:40px}.metric-card strong{font-size:64px}.panel-header{height:84px;padding:0 26px}.map-stage{inset:84px 0 0}.panel-header h2{font-size:19px}.panel-header span,.eyebrow{font-size:11px}.metric-top{font-size:16px}.metric-card small{font-size:13px}.trend-chart-wrap,.health-layout,.device-detail-360,.device-detail-empty{height:calc(100% - 84px)}.health-ring{width:190px}.health-ring:before{width:152px}.alert-row{padding:14px 8px}.alert-row b{font-size:13px}.alert-row small{font-size:11px}.energy-analysis{gap:16px;padding:19px 22px}.energy-analysis select{height:44px;font-size:13px}.energy-comparison small{font-size:12px}.energy-comparison b{font-size:28px}.energy-comparison i,.energy-bars i,.energy-change span{font-size:11px}.energy-change b{font-size:16px}.related-assets button b,.latest-metrics b,.recent-events b,.trend-summary span,.trend-summary small{font-size:10px}.trend-summary b{font-size:14px}.trend-sparse b{font-size:16px}.trend-sparse span{font-size:12px}.alert-empty b{font-size:16px}.alert-empty span{font-size:12px}.system-meta{font-size:14px}.panel-header button,.map-road-selector button,.map-coordinate-note,.map-region-note,.map-legend{font-size:13px}.point-label{min-width:150px;padding:8px 10px;font-size:13px}.point-label b{font-size:15px}.pole-detail{width:min(350px,38%);padding:21px}.pole-detail>span{font-size:11px}.pole-detail>strong{font-size:21px}.pole-detail>p{font-size:14px}.pole-detail dt,.pole-detail dd,.pole-detail .pole-open-device{font-size:12px}.pole-detail dl div{padding:8px 0}.map-place-overview{width:min(390px,42%);padding:17px}.map-place-heading b{font-size:15px}.map-place-heading span{font-size:11px}.map-place-overview button b{font-size:13px}.map-place-overview button small,.map-place-overview>.unassigned-entry,.place-status{font-size:11px}.device-identity b{font-size:18px}.device-identity span{font-size:13px}.device-dual-status span,.device-freshness span,.device-freshness b{font-size:12px}.device-detail-columns h3{font-size:14px}.device-detail-columns p,.related-assets>span,.latest-metrics>span,.recent-events>span{font-size:12px}.related-assets button small,.latest-metrics small,.recent-events small{font-size:11px}.related-assets button b,.latest-metrics b,.recent-events b{font-size:12px}.device-detail-360{padding:18px 20px}}@media (width>=3000px) and (height<=1600px){.dashboard-shell{padding:28px 36px}.topbar{min-height:64px;margin-bottom:14px}.metric-grid{gap:12px;margin-bottom:12px}.metric-card{min-height:136px;padding:20px 22px 18px}.content-grid{grid-template-rows:minmax(570px,54vh) 280px;gap:12px}.side-stack{gap:12px}.panel-header{height:66px;padding:0 18px}.map-stage{inset:66px 0 0}.panel-header h2{font-size:16px}.panel-header span,.eyebrow{font-size:9px}.metric-top{font-size:14px}.metric-card small{font-size:11px}.trend-chart-wrap,.health-layout,.device-detail-360,.device-detail-empty{height:calc(100% - 66px)}.alert-row{padding:9px 5px}.alert-row b{font-size:11px}.alert-row small{font-size:9px}.system-meta{font-size:12px}.map-road-selector button,.map-coordinate-note,.map-region-note,.map-legend{font-size:10px}.point-label{min-width:100px;padding:5px 7px;font-size:10px}.point-label b{font-size:11px}.pole-detail{width:min(280px,38%);padding:16px}.pole-detail>span{font-size:8px}.pole-detail>strong{font-size:17px}.pole-detail>p{font-size:11px}.pole-detail dt,.pole-detail dd,.pole-detail .pole-open-device{font-size:10px}.pole-detail dl div{padding:5px 0}.map-place-overview{width:min(310px,42%);padding:13px}.map-place-heading b{font-size:11px}.map-place-heading span{font-size:8px}.map-place-overview button b{font-size:10px}.map-place-overview button small,.map-place-overview>.unassigned-entry,.place-status{font-size:9px}.device-identity b{font-size:15px}.device-identity span{font-size:10px}.device-dual-status span,.device-freshness span,.device-freshness b{font-size:9px}.device-detail-columns h3{font-size:10px}.device-detail-columns p,.related-assets>span,.latest-metrics>span,.recent-events>span{font-size:9px}.related-assets button small,.latest-metrics small,.recent-events small{font-size:8px}.related-assets button b,.latest-metrics b,.recent-events b{font-size:9px}.device-detail-360{padding:14px 16px}}@media (width>=2000px) and (height<=1200px){.dashboard-shell{padding:16px 24px}.topbar{min-height:60px;margin-bottom:12px}.metric-grid{gap:10px;margin-bottom:10px}.metric-card{min-height:104px;padding:13px 16px 12px}.metric-card p{margin:8px 0 4px}.content-grid{grid-template-rows:minmax(420px,50vh) 290px;gap:10px}.side-stack{gap:10px}.panel-header{height:58px;padding:0 15px}.map-stage{inset:58px 0 0}.trend-chart-wrap,.health-layout,.device-detail-360,.device-detail-empty{height:calc(100% - 58px)}}@media (prefers-reduced-motion:reduce){.point-pulse{animation:none}}.admin-shell{background:linear-gradient(135deg, rgb(var(--pv-tone-091416)), rgb(var(--pv-tone-0b191a)) 60%, rgb(var(--pv-tone-081315)));grid-template-columns:268px minmax(0,1fr);min-height:100vh;display:grid}.admin-sidebar{border-right:1px solid rgb(var(--pv-tone-9dbeb5) / .09);background:rgb(var(--pv-tone-071113) / .82);flex-direction:column;height:100vh;padding:30px 22px;display:flex;position:sticky;top:0}.admin-brand{color:var(--text-primary);border-bottom:1px solid var(--line);align-items:center;gap:15px;padding:0 10px 30px;text-decoration:none;display:flex}.admin-brand b,.admin-brand small{display:block}.admin-brand b{letter-spacing:.15em;font-size:15px}.admin-brand small{color:var(--text-muted);letter-spacing:.12em;margin-top:5px;font-size:10px}.admin-sidebar nav{gap:5px;margin-top:28px;display:grid}.admin-sidebar nav a{color:rgb(var(--pv-tone-8da19d));border-radius:8px;padding:14px 15px;font-size:13px;text-decoration:none;position:relative}.admin-sidebar nav a:before{content:"";background:0 0;border-radius:2px;width:2px;position:absolute;top:12px;bottom:12px;left:0}.admin-sidebar nav a:hover{color:rgb(var(--pv-tone-c8d7d3));background:rgb(var(--pv-tone-9dbeb5) / .045)}.admin-sidebar nav a.active{color:var(--text-primary);background:rgb(var(--pv-tone-67e0b1) / .08)}.admin-sidebar nav a.active:before{background:var(--mint)}.admin-account{border-top:1px solid var(--line);margin-top:auto;padding:20px 12px 0;display:grid}.admin-account span{color:rgb(var(--pv-tone-c7d6d2));font-size:13px}.admin-account small{color:var(--text-muted);margin:5px 0 15px;font-size:11px}.admin-account button{height:38px;color:rgb(var(--pv-tone-95aaa5));border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:8px}.admin-workspace{min-width:0;max-width:1900px;padding:0 48px 64px}.admin-topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:116px;display:flex}.admin-topbar span,.admin-card-head span,.admin-modal>span{color:var(--text-muted);letter-spacing:.1em;font-size:11px}.admin-topbar h1{letter-spacing:.06em;margin-top:7px;font-size:28px}.admin-topbar a{color:var(--text-secondary);border-radius:8px;padding:9px 12px;font-size:12px;text-decoration:none}.admin-topbar a:hover{color:var(--mint);background:rgb(var(--pv-tone-67e0b1) / .06)}.admin-page{gap:20px;padding-top:28px;display:grid}.admin-card{border:1px solid rgb(var(--pv-tone-9dbeb5) / .1);border-radius:var(--radius-lg);background:rgb(var(--pv-tone-0b1b1d) / .78);box-shadow:0 16px 45px rgb(var(--pv-tone-000000) / .08);overflow:hidden}.admin-card-head{border-bottom:1px solid rgb(var(--pv-tone-9dbeb5) / .09);justify-content:space-between;align-items:center;min-height:76px;padding:0 24px;display:flex}.admin-card-head h2{color:rgb(var(--pv-tone-dbe8e4));margin:5px 0 0;font-size:17px;font-weight:600}.admin-card-head small{color:var(--text-muted);font-size:11px}.admin-card-head button,.admin-pagination button{min-height:36px;color:var(--text-secondary);border:1px solid var(--line);background:rgb(var(--pv-tone-071416) / .72);cursor:pointer;border-radius:8px;padding:7px 12px}.admin-card-actions{align-items:center;gap:12px;display:flex}.admin-card-actions button.danger{color:var(--coral);border-color:rgb(var(--pv-tone-f2786d) / .3)}.admin-form{gap:16px;padding:24px;display:grid}.user-create-form,.device-create-form{grid-template-columns:repeat(4,minmax(130px,1fr)) auto;align-items:end}.admin-form label{color:var(--text-secondary);gap:8px;font-size:12px;display:grid}.admin-form label>small{color:var(--text-muted);font:10px/1.5 IBM Plex Mono,monospace}.admin-form input,.admin-form select,.admin-filters input,.admin-filters select{width:100%;height:44px;color:var(--text-primary);border:1px solid rgb(var(--pv-tone-9dbeb5) / .14);background:rgb(var(--pv-tone-051113) / .72);border-radius:8px;outline:none;padding:0 12px}.admin-page select{appearance:none;min-height:38px;color:var(--text-secondary);border:1px solid rgb(var(--pv-tone-9dbeb5) / .18);background-color:rgb(var(--pv-tone-08191b));background-image:linear-gradient(45deg, transparent 50%, rgb(var(--pv-tone-7fa29e)) 50%), linear-gradient(135deg, rgb(var(--pv-tone-7fa29e)) 50%, transparent 50%);font:inherit;cursor:pointer;background-position:calc(100% - 16px),calc(100% - 11px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;border-radius:8px;outline:none;padding:0 34px 0 11px}.admin-page select:hover:not(:disabled){color:var(--text-primary);border-color:rgb(var(--pv-tone-67e0b1) / .35)}.admin-page select:focus-visible{border-color:var(--mint);box-shadow:0 0 0 3px rgb(var(--pv-tone-67e0b1) / .09)}.admin-page select:disabled{cursor:not-allowed;opacity:.45}.admin-form input:focus,.admin-form select:focus,.admin-filters input:focus,.admin-filters select:focus{border-color:rgb(var(--pv-tone-67e0b1) / .48);box-shadow:0 0 0 3px rgb(var(--pv-tone-67e0b1) / .05)}.admin-form>button{height:44px;color:rgb(var(--pv-tone-071813));background:var(--mint);cursor:pointer;border:0;border-radius:8px;padding:0 20px;font-weight:700}.inventory-import{justify-content:space-between;align-items:end;gap:16px;padding:20px;display:flex}.inventory-import label{color:var(--text-secondary);gap:8px;font-size:12px;display:grid}.inventory-file-picker{position:relative}.inventory-file-action{width:max-content;min-width:170px;height:40px;color:var(--text-secondary);border:1px solid var(--line);background:rgb(var(--pv-tone-051113) / .72);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:0 15px;display:inline-flex}.inventory-file-picker:hover .inventory-file-action{color:var(--mint);border-color:rgb(var(--pv-tone-67e0b1) / .28)}.inventory-file-picker input[type=file]{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.inventory-archive-missing{grid-template-columns:auto 1fr;align-items:center;max-width:360px;display:grid;gap:5px 8px!important}.inventory-archive-missing input{grid-row:1/span 2}.inventory-archive-missing small{color:var(--text-muted);font-size:10px}.inventory-summary{color:var(--text-secondary);margin:0;padding:0 24px 24px;font:11px IBM Plex Mono,monospace}.imports-intro .admin-help{margin:0;padding:0 24px 22px}.imports-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:20px 24px 14px;list-style:none;display:grid}.imports-steps li{color:var(--text-secondary);border:1px solid rgb(var(--pv-tone-9dbeb5) / .1);background:rgb(var(--pv-tone-051113) / .42);border-radius:9px;align-items:center;gap:10px;padding:12px;font-size:11px;display:flex}.imports-steps b{width:24px;height:24px;color:var(--mint);border:1px solid rgb(var(--pv-tone-67e0b1) / .28);border-radius:50%;place-items:center;font:11px IBM Plex Mono,monospace;display:grid}.imports-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.import-source{min-width:0;transition:border-color .2s,box-shadow .2s}.import-source.is-selected{border-color:rgb(var(--pv-tone-67e0b1) / .32);box-shadow:inset 0 0 0 1px rgb(var(--pv-tone-67e0b1) / .06)}.import-source-body{align-content:start;gap:18px;min-height:194px;padding:20px 24px 24px;display:grid}.import-source-body>p{color:var(--text-muted);margin:0;font-size:11px;line-height:1.65}.import-source-body .inventory-file-action{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.import-source-warning{border:1px solid rgb(var(--pv-tone-efbd6a) / .18);background:rgb(var(--pv-tone-efbd6a) / .035);border-radius:8px;padding:10px 12px;color:var(--amber)!important}.import-review-actions{justify-content:space-between;align-items:center;gap:20px;padding:20px 24px;display:flex}.import-review-actions>div:first-child{gap:5px;display:grid}.import-review-actions b{color:var(--text-primary);font-size:13px}.import-review-actions span{color:var(--text-muted);font-size:10px}.import-review-actions .table-actions{gap:8px;display:flex}.import-review-actions .table-actions button{margin:0}.import-review-actions .table-actions .primary{color:rgb(var(--pv-tone-061713));border-color:var(--mint);background:var(--mint);font-weight:700}.import-impact-group{border:1px solid rgb(var(--pv-tone-9dbeb5) / .1);background:rgb(var(--pv-tone-051113) / .36);border-radius:9px;margin-top:12px;padding:14px}.import-impact-group h3{color:var(--mint);margin:0 0 8px;font:11px IBM Plex Mono,monospace}.import-impact-group p{margin:6px 0 0;line-height:1.65}.import-impact-danger{color:var(--coral)}.import-issue-count{color:var(--coral);border:1px solid rgb(var(--pv-tone-f2786d) / .24);background:rgb(var(--pv-tone-f2786d) / .04);border-radius:8px;margin:0 24px 22px;padding:10px 12px;font-size:11px}@media (width<=980px){.imports-grid,.imports-steps{grid-template-columns:1fr}.import-review-actions{flex-direction:column;align-items:stretch}}.admin-form>button:disabled{opacity:.55}.admin-filters{border-bottom:1px solid var(--line);grid-template-columns:minmax(260px,1fr) 170px 150px auto;gap:12px;padding:18px 24px;display:grid}.admin-filters button{color:rgb(var(--pv-tone-071813));background:var(--mint);cursor:pointer;border:0;border-radius:8px;padding:0 20px;font-weight:700}.admin-table-wrap{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%}.admin-table th{color:var(--text-muted);text-align:left;background:rgb(var(--pv-tone-051113) / .42);padding:13px 16px;font-size:11px;font-weight:600}.admin-table td{min-width:100px;color:var(--text-secondary);border-top:1px solid rgb(var(--pv-tone-9dbeb5) / .07);padding:15px 16px;font-size:12px}.admin-table td b,.admin-table td small{display:block}.admin-table td b{color:rgb(var(--pv-tone-d4e1dd));font-weight:600}.admin-table td small{color:var(--text-muted);margin-top:5px;font:10px IBM Plex Mono,monospace}.admin-table td>input,.admin-table td>select,.admin-table td>textarea{width:100%;min-width:112px;min-height:38px;color:var(--text-primary);border:1px solid rgb(var(--pv-tone-9dbeb5) / .16);background:rgb(var(--pv-tone-051113) / .68);border-radius:7px;padding:8px 10px}.table-actions{white-space:nowrap}.table-actions button{color:var(--text-secondary);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:7px;margin-right:7px;padding:7px 9px;font-size:11px}.table-actions button.warning{color:var(--amber);border-color:rgb(var(--pv-tone-efbd6a) / .3);background:rgb(var(--pv-tone-efbd6a) / .04)}.table-actions button.danger{color:var(--coral);border-color:rgb(var(--pv-tone-f2786d) / .22)}.device-batch-actions{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;padding:0 20px 16px;font-size:11px;display:flex}.device-batch-actions button{color:var(--text-secondary);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:7px;padding:7px 10px;font-size:11px}.device-batch-actions button:disabled{cursor:default;opacity:.4}.inventory-mismatch-row{background:rgb(var(--pv-tone-efbd6a) / .035)}.inventory-mismatch-badge{color:var(--amber);border:1px solid rgb(var(--pv-tone-efbd6a) / .3);background:rgb(var(--pv-tone-efbd6a) / .06);margin-top:7px;padding:4px 7px;font-size:9px;display:inline-flex}.status-pill{color:var(--text-muted);align-items:center;gap:7px;font-size:11px;display:inline-flex}.status-pill:before{content:"";background:rgb(var(--pv-tone-65787a));border-radius:50%;width:6px;height:6px}.status-pill.online{color:var(--mint)}.status-pill.online:before{background:var(--mint);box-shadow:0 0 8px rgb(var(--pv-tone-67e0b1) / .45)}.status-pill.delayed{color:var(--amber)}.status-pill.delayed:before{background:var(--amber)}.status-pill.offline{color:var(--coral)}.status-pill.offline:before{background:var(--coral)}.status-pill.starting{color:var(--cyan)}.status-pill.starting:before{background:var(--cyan)}.status-pill.standby{color:var(--color-status-unknown)}.status-pill.standby:before{background:var(--color-status-unknown)}.status-pill.alert{color:var(--amber)}.status-pill.alert:before{background:var(--amber)}.admin-pagination{color:var(--text-muted);border-top:1px solid var(--line);justify-content:flex-end;align-items:center;gap:12px;padding:14px 20px;font:11px IBM Plex Mono,monospace;display:flex}.admin-pagination button:disabled{cursor:default;opacity:.35}.admin-notice{border-radius:var(--radius-md);border:1px solid;margin:0;padding:13px 16px;font-size:12px}.admin-notice.success{color:var(--mint);border-color:rgb(var(--pv-tone-67e0b1) / .22);background:rgb(var(--pv-tone-67e0b1) / .05)}.admin-notice.error{color:var(--coral);border-color:rgb(var(--pv-tone-f2786d) / .22);background:rgb(var(--pv-tone-f2786d) / .05)}.admin-empty{min-height:100px;color:var(--text-muted);place-items:center;font-size:12px;display:grid}.admin-modal-backdrop{z-index:20;background:rgb(var(--pv-tone-02090b) / .78);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);place-items:center;display:grid;position:fixed;inset:0}.admin-modal{border:1px solid rgb(var(--pv-tone-9dbeb5) / .14);border-radius:var(--radius-lg);background:rgb(var(--pv-tone-0b2022));width:480px;box-shadow:0 30px 100px rgb(var(--pv-tone-000000) / .48);padding:32px;position:relative}.admin-modal h2{margin:8px 0 9px;font-size:21px}.admin-modal p{color:var(--text-secondary);margin:0;font-size:12px;line-height:1.65}.admin-modal .admin-form{padding:22px 0 0}.modal-close{color:rgb(var(--pv-tone-668184));cursor:pointer;background:0 0;border:0;font-size:20px;position:absolute;top:10px;right:12px}.inventory-reconciliation-modal{width:min(680px,100vw - 40px);max-height:calc(100vh - 40px);overflow-y:auto}.inventory-comparison{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:20px;display:grid}.inventory-comparison>div{border:1px solid rgb(var(--pv-tone-97bfbc) / .14);background:rgb(var(--pv-tone-051215) / .55);gap:5px;padding:14px;display:grid}.inventory-comparison>div.observed{border-color:rgb(var(--pv-tone-efbd6a) / .25);background:rgb(var(--pv-tone-efbd6a) / .035)}.inventory-comparison small{color:rgb(var(--pv-tone-557275));font-size:9px}.inventory-comparison b{color:rgb(var(--pv-tone-bccfcd));font-size:12px}.inventory-comparison span{color:rgb(var(--pv-tone-789395));font:10px IBM Plex Mono,monospace}.inventory-observed-meta{font-family:IBM Plex Mono,monospace;margin-top:10px!important}.inventory-impact,.inventory-issues{border:1px solid var(--line);color:rgb(var(--pv-tone-789395));gap:6px;margin-top:14px;padding:13px;font-size:9px;line-height:1.55;display:grid}.inventory-impact b,.inventory-issues b{color:rgb(var(--pv-tone-aabfbc));font-size:10px}.inventory-issues.blockers{color:rgb(var(--pv-tone-ff9a92));border-color:rgb(var(--pv-tone-f2786d) / .3);background:rgb(var(--pv-tone-f2786d) / .05)}.inventory-issues.blockers b{color:var(--coral)}.inventory-issues.warnings{color:rgb(var(--pv-tone-c2a46c));border-color:rgb(var(--pv-tone-efbd6a) / .2);background:rgb(var(--pv-tone-efbd6a) / .035)}.inventory-issues.warnings b{color:var(--amber)}.inventory-reconciliation-actions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.inventory-reconciliation-actions button{color:rgb(var(--pv-tone-8ba4a2));border:1px solid var(--line);cursor:pointer;background:0 0;padding:9px 13px;font-size:10px}.inventory-reconciliation-actions button.primary{color:rgb(var(--pv-tone-061713));border-color:var(--mint);background:var(--mint);font-weight:600}.inventory-reconciliation-actions button:disabled{cursor:default;opacity:.4}.diagnostic-grid{grid-template-columns:repeat(4,1fr);gap:12px;padding:24px;display:grid}.diagnostic{border:1px solid var(--line);border-radius:var(--radius-md);background:rgb(var(--pv-tone-051214) / .48);padding:18px}.diagnostic span,.diagnostic b,.diagnostic small{display:block}.diagnostic span{color:var(--text-muted);font-size:11px}.diagnostic b{color:rgb(var(--pv-tone-c6d6d2));text-overflow:ellipsis;white-space:nowrap;margin:9px 0 6px;font:12px IBM Plex Mono,monospace;overflow:hidden}.diagnostic small{color:var(--text-muted);font-size:10px}.diagnostic.ok{border-top-color:rgb(var(--pv-tone-67e0b1) / .45)}.diagnostic.warning{border-top-color:rgb(var(--pv-tone-efbd6a) / .45)}.system-detail{padding:20px}.system-detail dl{margin:0}.system-detail dl div{border-bottom:1px solid rgb(var(--pv-tone-97bfbc) / .08);grid-template-columns:200px 1fr;padding:11px 4px;display:grid}.system-detail dt,.system-detail dd{margin:0;font-size:10px}.system-detail dt{color:rgb(var(--pv-tone-587477))}.system-detail dd{color:rgb(var(--pv-tone-a0b5b3));font-family:IBM Plex Mono,monospace}.admin-advanced{border:1px solid rgb(var(--pv-tone-97bfbc) / .12);color:rgb(var(--pv-tone-7f9a9b));border-radius:10px;margin:0 20px 20px}.admin-advanced summary{cursor:pointer;padding:12px 16px;font-size:11px}.admin-advanced[open] summary{border-bottom:1px solid rgb(var(--pv-tone-97bfbc) / .1)}.admin-advanced .system-detail{padding:8px 16px 14px}.row-advanced{color:rgb(var(--pv-tone-587477));margin-top:5px}.row-advanced summary{cursor:pointer;font-size:9px}.row-advanced small{margin-top:4px}.map-config-form{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.map-config-actions{align-items:end;gap:10px;display:flex}.map-config-actions button{height:38px;color:rgb(var(--pv-tone-061713));border:1px solid var(--mint);background:var(--mint);cursor:pointer;padding:0 16px;font-size:10px;font-weight:600}.map-config-actions button.danger{color:var(--coral);border-color:rgb(var(--pv-tone-f2786d) / .3);background:rgb(var(--pv-tone-f2786d) / .04)}.map-config-actions button:disabled{cursor:default;opacity:.5}.map-config-actions.is-busy button:disabled{cursor:wait}.map-config-form>small{color:rgb(var(--pv-tone-526d70));grid-column:1/-1;font-size:9px;line-height:1.7}.diagnostic-warning{color:var(--amber);border:1px solid rgb(var(--pv-tone-efbd6a) / .2);background:rgb(var(--pv-tone-efbd6a) / .04);margin:16px 0 0;padding:12px;font-size:10px}.persistent-discovery-warning{color:rgb(var(--pv-tone-ff9a92));border:1px solid rgb(var(--pv-tone-f2786d) / .42);background:rgb(var(--pv-tone-f2786d) / .08);gap:5px;margin:20px 20px 0;padding:14px;font-size:10px;line-height:1.65;display:grid}.persistent-discovery-warning strong{color:var(--coral);font-size:11px}.discovery-form{grid-template-columns:minmax(180px,.65fr) minmax(150px,.45fr) minmax(430px,1.9fr) auto;align-items:end}.discovery-preset-control{color:rgb(var(--pv-tone-647f82));gap:7px;font-size:10px;display:grid}.discovery-preset-toggle{grid-template-columns:repeat(2,minmax(150px,1fr));gap:7px;display:grid}.discovery-preset-toggle button{height:38px;color:rgb(var(--pv-tone-789395));border:1px solid rgb(var(--pv-tone-97bfbc) / .16);background:rgb(var(--pv-tone-08191d));cursor:pointer;padding:0 12px;font-size:10px}.discovery-preset-toggle button.active{color:var(--mint);border-color:rgb(var(--pv-tone-67e0b1) / .5);background:rgb(var(--pv-tone-67e0b1) / .08);box-shadow:inset 0 0 0 1px rgb(var(--pv-tone-67e0b1) / .08)}.discovery-preset-control small{color:rgb(var(--pv-tone-4f6d70));font:8px/1.55 IBM Plex Mono,monospace}.discovery-preset-warning{color:rgb(var(--pv-tone-d3ac65));border:1px solid rgb(var(--pv-tone-efbd6a) / .24);background:rgb(var(--pv-tone-efbd6a) / .05);grid-column:1/-1;gap:4px;margin:0;padding:11px 13px;font-size:9px;line-height:1.6;display:grid}.discovery-preset-warning strong{color:var(--amber);font-size:10px}.identity-request-form{border-bottom:1px solid var(--line);grid-template-columns:minmax(260px,.65fr) minmax(420px,1.5fr) auto;align-items:end}.identity-request-form>div{color:rgb(var(--pv-tone-8ba3a1));gap:5px;font-size:10px;line-height:1.5;display:grid}.identity-request-form>div small{color:rgb(var(--pv-tone-536f72));font-size:9px}.admin-forbidden{text-align:center;place-items:center;min-height:100vh;display:grid}.admin-forbidden div{border:1px solid var(--line);background:rgb(var(--pv-tone-08181c) / .85);padding:45px}.admin-forbidden span{color:var(--coral);letter-spacing:.18em;font:9px IBM Plex Mono,monospace}.admin-forbidden h1{margin:12px 0}.admin-forbidden p{color:rgb(var(--pv-tone-607b7d))}.admin-forbidden a{color:var(--mint);border:1px solid rgb(var(--pv-tone-67e0b1) / .2);margin-top:15px;padding:9px 14px;text-decoration:none;display:inline-block}@media (width<=1450px){.user-create-form,.device-create-form{grid-template-columns:repeat(2,1fr)}.discovery-form{grid-template-columns:repeat(2,minmax(0,1fr))}.discovery-preset-control{grid-column:1/-1}.identity-request-form{grid-template-columns:1fr}.diagnostic-grid{grid-template-columns:repeat(2,1fr)}.topology-map-workspace{grid-template-columns:1fr}.topology-selection-panel{grid-template-columns:150px 1fr;column-gap:16px;max-height:none;display:grid;position:static}.topology-selection-panel>span,.topology-selection-panel dl{grid-column:1/-1}.topology-map-actions{grid-template-columns:1fr auto}.topology-tool-primary{grid-column:1/-1}}@media (width<=900px){.topology-workspace-nav{grid-template-columns:repeat(4,minmax(132px,1fr));padding-inline:10px}.topology-map-workspace{padding:10px}.topology-map-viewport{min-height:420px}.topology-mode-summary{grid-template-columns:auto 1fr}.topology-mode-summary p{grid-column:1/-1}.topology-map-draft-row{flex-wrap:wrap;align-items:stretch}.topology-map-draft-row>div{flex:100%}.topology-pole-binding-editor{grid-template-columns:1fr 1fr;align-items:stretch}.topology-pole-binding-editor>div,.topology-pole-binding-editor p{grid-column:1/-1}.topology-map-actions{grid-template-columns:1fr;max-height:none;overflow:visible}.topology-tool-primary,.topology-tool-edit,.topology-tool-merge{flex-wrap:wrap;justify-content:flex-start}.topology-tool-merge label{flex:1}.topology-tool-merge select{max-width:none}.topology-edge-form{grid-template-columns:1fr}.topology-management>.admin-table-wrap{max-height:360px;margin-inline:10px}.topology-section-heading{align-items:flex-start;padding-inline:14px}.topology-save-bar{margin:10px;bottom:6px}}@media (width<=620px){.topology-selection-panel{display:block}.topology-map-viewport{min-height:390px}.topology-map-actions{padding:10px}.topology-tool-primary,.topology-tool-edit,.topology-tool-merge{align-items:stretch}.topology-tool-primary label,.topology-tool-merge label{width:100%}.topology-tool-primary input,.topology-tool-merge select{min-width:0;max-width:none}.topology-section-heading{flex-direction:column}.topology-save-bar{flex-direction:column;align-items:stretch}}.dashboard-shell{flex-direction:column;width:100%;max-width:none;height:100vh;min-height:760px;padding:clamp(18px,1.25vw,38px);display:flex;overflow:hidden}.topbar{border-bottom-color:rgb(var(--pv-tone-9dbeb5) / .09);flex:none;min-height:66px;margin-bottom:14px}.topbar h1{color:var(--text-primary);letter-spacing:.075em;font-size:clamp(23px,1.55vw,35px)}.eyebrow{color:rgb(var(--pv-tone-7f9992));letter-spacing:.13em;font-size:11px}.system-meta{color:var(--text-secondary);font-size:12px}.data-badge,.profile-button,.admin-entry{border-color:rgb(var(--pv-tone-9dbeb5) / .1);background:rgb(var(--pv-tone-081719) / .62);border-radius:8px}.admin-entry{color:var(--text-secondary)}.admin-entry:hover,.profile-button:hover{color:var(--mint);background:rgb(var(--pv-tone-67e0b1) / .06)}.content-grid{--context-rail:clamp(400px, 23vw, 520px);--insight-height:clamp(218px, 23vh, 280px);isolation:isolate;flex:auto;min-height:0;display:block;position:relative}.content-grid>.metric-grid{top:20px;right:calc(var(--context-rail) + 40px);z-index:12;border:1px solid rgb(var(--pv-tone-9dbeb5) / .1);background:rgb(var(--pv-tone-071517) / .82);box-shadow:0 14px 38px rgb(var(--pv-tone-000000) / .16);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:12px;gap:0;margin:0;position:absolute;left:298px;overflow:hidden}.content-grid>.metric-grid .metric-card{border:0;border-right:1px solid rgb(var(--pv-tone-9dbeb5) / .085);min-height:76px;box-shadow:none;background:0 0;border-radius:0;padding:10px 15px 9px}.content-grid>.metric-grid .metric-card:last-child{border-right:0}.content-grid>.metric-grid .metric-card:before{display:none}.content-grid>.metric-grid .metric-top{color:var(--text-secondary);font-size:11px}.content-grid>.metric-grid .metric-top i{width:14px;height:2px;box-shadow:none;border-radius:2px;margin-top:6px}.content-grid>.metric-grid .metric-card p{margin:5px 0 2px}.content-grid>.metric-grid .metric-card strong{font-size:clamp(25px,1.55vw,38px)}.content-grid>.metric-grid .metric-card small{color:var(--text-muted);font-size:10px;line-height:1.4}.map-panel{z-index:1;border-color:rgb(var(--pv-tone-9dbeb5) / .12);background:rgb(var(--pv-tone-071719));box-shadow:0 24px 70px rgb(var(--pv-tone-000000) / .2), inset 0 0 110px rgb(var(--pv-tone-143f35) / .055);border-radius:16px;position:absolute;inset:0}.map-panel:before{content:"";z-index:2;pointer-events:none;border-radius:inherit;background:linear-gradient(180deg, rgb(var(--pv-tone-040e10) / .28), transparent 18%, transparent 72%, rgb(var(--pv-tone-040e10) / .28));width:auto;height:auto;box-shadow:inset 0 0 80px rgb(var(--pv-tone-020a0b) / .2);position:absolute;inset:0}.map-panel>.panel-header{z-index:13;background:rgb(var(--pv-tone-071517) / .84);width:258px;height:76px;box-shadow:0 14px 38px rgb(var(--pv-tone-000000) / .16);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:0;border-radius:12px;padding:0 16px;position:absolute;top:20px;left:20px}.dashboard-state-notice{top:160px;left:calc((100% - var(--context-rail) - 28px) / 2);z-index:14;width:min(520px, calc(100% - var(--context-rail) - 390px));min-width:360px;color:rgb(var(--pv-tone-9cb1af));border:1px solid rgb(var(--pv-tone-f2786d) / .26);border-radius:var(--radius-md);background:rgb(var(--pv-tone-2a0e11) / .9);box-shadow:0 16px 42px rgb(var(--pv-tone-000000) / .3);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);align-items:center;gap:12px;padding:10px 13px;display:flex;position:absolute;transform:translate(-50%)}.dashboard-state-notice>i{background:var(--coral);width:8px;height:8px;box-shadow:0 0 12px rgb(var(--pv-tone-f2786d) / .58);border-radius:50%;flex:none}.dashboard-state-notice span{flex:1;min-width:0}.dashboard-state-notice small,.dashboard-state-notice b{display:block}.dashboard-state-notice small{color:rgb(var(--pv-tone-b16d6a));letter-spacing:.12em;margin-bottom:2px;font:8px IBM Plex Mono,monospace}.dashboard-state-notice b{color:rgb(var(--pv-tone-e0c4c1));text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:500;overflow:hidden}.dashboard-state-notice em{color:rgb(var(--pv-tone-a57b78));white-space:nowrap;font-size:9px;font-style:normal}.side-stack{z-index:11;width:var(--context-rail);grid-template-rows:minmax(170px,.74fr) minmax(260px,1.26fr);gap:12px;min-height:0;display:grid;position:absolute;top:20px;bottom:20px;right:20px}.side-stack.has-selection{grid-template-rows:minmax(150px,.58fr) minmax(300px,1.42fr)}.side-stack:not(.has-selection){grid-template-rows:minmax(220px,32vh) 190px;bottom:auto}.side-stack .panel,.trend-panel,.load-panel{border-color:rgb(var(--pv-tone-9dbeb5) / .085);border-radius:var(--radius-lg);background:linear-gradient(150deg, rgb(var(--pv-tone-08181a) / .9), rgb(var(--pv-tone-061214) / .86));box-shadow:0 18px 46px rgb(var(--pv-tone-000000) / .18);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.side-stack .panel:before,.trend-panel:before,.load-panel:before{display:none}.side-stack:not(.has-selection) .device-panel{opacity:.78}.side-stack.has-selection .device-panel{border-color:rgb(var(--pv-tone-67e0b1) / .15);background:linear-gradient(150deg, rgb(var(--pv-tone-091b1d) / .95), rgb(var(--pv-tone-061214) / .92))}.side-stack .device-panel{grid-column:auto}.trend-panel,.load-panel{z-index:10;height:var(--insight-height);position:absolute;bottom:20px}.trend-panel{left:20px;right:calc(var(--context-rail) + clamp(380px, 25vw, 520px) + 54px)}.load-panel{right:calc(var(--context-rail) + 32px);width:clamp(380px,25vw,520px)}.panel-header{border-bottom-color:rgb(var(--pv-tone-9dbeb5) / .08);height:62px;padding:0 18px}.panel-header span{color:var(--text-muted);letter-spacing:.04em;font-family:Noto Sans SC,Microsoft YaHei,sans-serif;font-size:11px}.panel-header h2{color:rgb(var(--pv-tone-e2ece9));letter-spacing:.04em;font-size:18px;font-weight:600}.panel-action{color:rgb(var(--pv-tone-9bb1af));border:1px solid rgb(var(--pv-tone-9dbeb5) / .11);background:rgb(var(--pv-tone-061518) / .7);border-radius:7px;padding:6px 9px;font-size:11px}.map-stage{background:radial-gradient(circle at 48% 44%, rgb(var(--pv-tone-34675a) / .14), transparent 46%), linear-gradient(150deg, rgb(var(--pv-tone-081a1c)), rgb(var(--pv-tone-061416)) 65%);inset:0}.map-stage.coordinate-fallback{background-color:rgb(var(--pv-tone-d8dfdd));background-image:radial-gradient(circle at 48% 42%, rgb(var(--pv-tone-f6f8f7) / .72), transparent 48%), linear-gradient(150deg, rgb(var(--pv-tone-e6eae8)), rgb(var(--pv-tone-d2dad7)) 68%, rgb(var(--pv-tone-c7d1ce)))}.coordinate-fallback .map-grid{opacity:.42;background-image:linear-gradient(rgb(var(--pv-tone-304c49) / .075) 1px, transparent 1px), linear-gradient(90deg, rgb(var(--pv-tone-304c49) / .075) 1px, transparent 1px);background-size:54px 54px}.coordinate-fallback .map-atmosphere-vignette{background:linear-gradient(180deg, rgb(var(--pv-tone-ffffff) / .22), transparent 18%, transparent 78%, rgb(var(--pv-tone-44635e) / .08)), radial-gradient(ellipse at 45% 46%, transparent 48%, rgb(var(--pv-tone-50706a) / .08) 100%)}.coordinate-fallback .road-segments-fallback polyline{stroke:rgb(var(--pv-tone-275c57) / .58)}.coordinate-fallback .road-segments-fallback polyline.selected{stroke:rgb(var(--pv-tone-147e91));filter:drop-shadow(0 0 1px rgb(var(--pv-tone-147e91) / .24))}.coordinate-fallback .road-segments-fallback .road-carriageway{fill:rgb(var(--pv-tone-5c6c6a) / .2);stroke:rgb(var(--pv-tone-445855) / .24);stroke-width:.32px;vector-effect:non-scaling-stroke}.coordinate-fallback .road-segments-fallback .road-center-guide{fill:none;stroke:rgb(var(--pv-tone-f6f9f8) / .7);stroke-width:.42px;stroke-dasharray:2.4 2.4;vector-effect:non-scaling-stroke}.coordinate-fallback .road-segments-fallback .road-carriageway.selected{fill:rgb(var(--pv-tone-147e91) / .22);stroke:rgb(var(--pv-tone-147e91) / .5)}.coordinate-fallback .road-segments-fallback .road-carriageway.scope-selected:not(.selected){fill:rgb(var(--pv-tone-147e91) / .12);stroke:rgb(var(--pv-tone-147e91) / .32)}.coordinate-fallback .road-segments-fallback .road-carriageway.dimmed,.coordinate-fallback .road-segments-fallback .road-center-guide.dimmed{opacity:.2}.coordinate-fallback .road-segments-fallback .road-segment{fill:none;stroke-width:1.15px;stroke-linecap:round;opacity:.88;vector-effect:non-scaling-stroke}.coordinate-fallback .road-segments-fallback .road-segment.status-online{stroke:rgb(var(--pv-tone-178a72))}.coordinate-fallback .road-segments-fallback .road-segment.status-delayed{stroke:rgb(var(--pv-tone-b8751f))}.coordinate-fallback .road-segments-fallback .road-segment.status-offline{stroke:rgb(var(--pv-tone-c64f49))}.coordinate-fallback .road-segments-fallback .road-segment.status-unknown{stroke:rgb(var(--pv-tone-667876));stroke-dasharray:3 2}.coordinate-fallback .road-segments-fallback .road-segment.selected{stroke-width:1.9px;filter:drop-shadow(0 0 1px rgb(var(--pv-tone-147e91) / .6));opacity:1}.coordinate-fallback .road-segments-fallback .road-segment.scope-selected:not(.selected){stroke-width:1.35px;opacity:.94}.coordinate-fallback .road-segments-fallback .road-segment.dimmed{opacity:.2}.coordinate-fallback .road-segment-select-target{cursor:pointer;outline:none}.coordinate-fallback .road-segment-select-target:focus-visible .road-carriageway{stroke:rgb(var(--pv-tone-147e91));stroke-width:.7px;filter:drop-shadow(0 0 2px rgb(var(--pv-tone-147e91) / .42))}.map-state-stage{place-items:center;display:grid}.map-state-stage.unavailable{background:radial-gradient(circle at 50% 46%, rgb(var(--pv-tone-682c2b) / .12), transparent 42%), rgb(var(--pv-tone-061519))}.map-state-card{z-index:2;text-align:center;border:1px solid rgb(var(--pv-tone-9dbeb5) / .11);border-radius:var(--radius-lg);background:rgb(var(--pv-tone-071416) / .9);width:min(430px,48%);min-width:330px;box-shadow:0 24px 70px rgb(var(--pv-tone-000000) / .28);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);justify-items:center;padding:32px 36px 30px;display:grid;position:relative}.map-state-stage.unavailable .map-state-card{border-color:rgb(var(--pv-tone-f2786d) / .22)}.map-state-card>i{border:1px solid rgb(var(--pv-tone-67e0b1) / .32);border-radius:50%;place-items:center;width:42px;height:42px;margin-bottom:15px;display:grid;position:relative}.map-state-card>i:before,.map-state-card>i:after{content:"";border-radius:50%;position:absolute}.map-state-card>i:before{border:1px dashed rgb(var(--pv-tone-67e0b1) / .42);animation:5s linear infinite map-state-spin;inset:7px}.map-state-card>i:after{background:var(--mint);width:6px;height:6px;box-shadow:0 0 12px rgb(var(--pv-tone-67e0b1) / .62);top:4px;right:5px}.map-state-card>i>span{background:var(--mint);width:7px;height:7px;box-shadow:0 0 12px rgb(var(--pv-tone-67e0b1) / .62);border-radius:50%;display:block}.map-state-stage.unavailable .map-state-card>i{border-color:rgb(var(--pv-tone-f2786d) / .34)}.map-state-stage.unavailable .map-state-card>i:before{border-color:rgb(var(--pv-tone-f2786d) / .38);animation:none}.map-state-stage.unavailable .map-state-card>i:after,.map-state-stage.unavailable .map-state-card>i>span{background:var(--coral);box-shadow:0 0 12px rgb(var(--pv-tone-f2786d) / .48)}.map-state-stage.unavailable .map-state-card>i:after{display:none}.map-state-stage.unavailable .map-state-card>i>span{border-radius:1px;transform:rotate(45deg)}.map-state-card>small{color:var(--text-muted);letter-spacing:.08em;font-size:11px}.map-state-card>strong{color:rgb(var(--pv-tone-c7d9d6));margin-top:8px;font-size:19px;font-weight:600}.map-state-card>span{color:var(--text-secondary);margin-top:7px;font-size:12px;line-height:1.6}.map-loading{letter-spacing:0;justify-content:center;align-items:center;gap:13px;display:flex}.map-loading>i{border:1px solid rgb(var(--pv-tone-67e0b1) / .22);border-top-color:var(--mint);border-radius:50%;width:22px;height:22px;animation:1.2s linear infinite map-state-spin}.map-loading b,.map-loading small{display:block}.map-loading b{color:var(--text-secondary);font-size:13px;font-weight:500}.map-loading small{color:var(--text-muted);margin-top:3px;font-size:11px}@keyframes map-state-spin{to{transform:rotate(360deg)}}.map-grid{pointer-events:none;opacity:.08;background:radial-gradient(circle, rgb(var(--pv-tone-67e0b1) / .24) 1px, transparent 1.5px);background-size:54px 54px;transform:none}.map-scope-navigator.map-road-selector{top:108px;right:calc(var(--context-rail) + 32px);z-index:8;background:0 0;border:0;justify-content:space-between;align-items:center;gap:18px;width:auto;max-width:none;padding:0;display:flex;position:absolute;left:20px;overflow:visible}.map-scope-path{border:1px solid rgb(var(--pv-tone-9dbeb5) / .1);border-radius:var(--radius-md);background:rgb(var(--pv-tone-071517) / .84);min-width:0;box-shadow:0 12px 28px rgb(var(--pv-tone-000000) / .13);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);align-items:center;gap:10px;padding:9px 12px;display:flex}.map-scope-path>span{color:var(--text-muted);font-size:11px}.map-scope-path button{color:rgb(var(--pv-tone-dce8e4));background:0 0;border:0;padding:0;font-family:Noto Sans SC,Microsoft YaHei,sans-serif;font-size:13px;font-weight:600}.map-scope-path button.active{color:var(--cyan);background:0 0;border:0}.map-current-scope{max-width:220px;color:var(--cyan);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.map-current-segment-selection{align-items:center;gap:5px;min-width:0;display:inline-flex}.map-current-segment{max-width:180px;color:rgb(var(--pv-tone-d7fbff));text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;overflow:hidden}.map-scope-path .map-current-segment-selection>button{width:18px;height:18px;color:rgb(var(--pv-tone-8eaaa7));cursor:pointer;border-radius:50%;font-size:15px;font-weight:400;line-height:18px}.map-scope-path .map-current-segment-selection>button:hover,.map-scope-path .map-current-segment-selection>button:focus-visible{color:rgb(var(--pv-tone-e7f8f5));background:rgb(var(--pv-tone-78c8d8) / .14);outline:none}.map-scope-path i{color:rgb(var(--pv-tone-54706f));font-style:normal}.map-scope-path b{color:var(--cyan);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.map-scope-device{max-width:150px;color:rgb(var(--pv-tone-d7fbff));text-overflow:ellipsis;white-space:nowrap;font:600 12px IBM Plex Mono,monospace;overflow:hidden}.map-scope-navigator>label{border:1px solid rgb(var(--pv-tone-9dbeb5) / .1);border-radius:var(--radius-md);background:rgb(var(--pv-tone-071517) / .86);box-shadow:0 12px 28px rgb(var(--pv-tone-000000) / .13);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);flex:0 270px;align-items:center;gap:10px;padding:6px 8px;display:flex}.map-scope-navigator>label>span{color:var(--text-muted);flex:none;font-size:11px}.map-scope-navigator select{width:100%;min-width:0;height:30px;color:rgb(var(--pv-tone-d8e4e0));background:rgb(var(--pv-tone-0a2022));border:0;border-radius:6px;outline:none;padding:0 28px 0 8px;font-size:12px}.map-coverage{z-index:7;min-height:36px;color:var(--text-secondary);border-left:2px solid var(--mint);background:rgb(var(--pv-tone-071517) / .8);box-shadow:0 12px 28px rgb(var(--pv-tone-000000) / .12);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);border-radius:0 9px 9px 0;align-items:center;gap:10px;padding:7px 10px;display:flex;position:absolute;top:166px;left:146px}.map-semantic-zoom{z-index:8;width:116px;color:var(--text-secondary);border:1px solid rgb(var(--pv-tone-9dbeb5) / .09);border-radius:var(--radius-md);background:rgb(var(--pv-tone-071517) / .82);box-shadow:0 12px 28px rgb(var(--pv-tone-000000) / .12);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);justify-content:space-between;align-items:center;gap:8px;padding:4px 5px 4px 10px;display:flex;position:absolute;top:166px;left:20px}.map-pitch-control{z-index:180;border:1px solid rgb(var(--pv-tone-84c4b8) / .24);background:rgb(var(--pv-tone-051114) / .84);color:var(--ink-muted);box-shadow:0 10px 24px rgb(var(--pv-tone-000000) / .18);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:9px;align-items:center;gap:6px;padding:5px;display:flex;position:absolute;top:220px;left:20px}.map-pitch-label{color:var(--cyan);padding:0 3px;font:700 11px IBM Plex Mono,monospace}.map-pitch-control>strong{min-width:28px;color:var(--text-secondary);text-align:center;font:600 10px IBM Plex Mono,monospace}.map-pitch-actions{gap:3px;display:flex}.map-pitch-actions button{border:1px solid rgb(var(--pv-tone-84c4b8) / .28);background:rgb(var(--pv-tone-132d30) / .9);width:25px;height:25px;color:var(--ink);cursor:pointer;border-radius:5px;padding:0;font-size:17px;line-height:1}.map-pitch-actions button:disabled{cursor:not-allowed;opacity:.4}.map-semantic-zoom strong{color:rgb(var(--pv-tone-d5e5e2));font-size:11px;font-weight:600}.map-semantic-scale{grid-template-columns:repeat(3,1fr);gap:4px;display:grid}.map-semantic-scale i{background:rgb(var(--pv-tone-718e8c) / .28);border-radius:3px;height:3px}.map-semantic-scale i.passed{background:rgb(var(--pv-tone-78c8d8) / .38)}.map-semantic-scale i.active{background:var(--cyan);box-shadow:0 0 9px rgb(var(--pv-tone-78c8d8) / .38)}.map-semantic-actions{gap:3px;display:flex}.map-semantic-actions button{width:27px;height:27px;color:rgb(var(--pv-tone-bdd0cd));border:1px solid rgb(var(--pv-tone-9dbeb5) / .12);background:rgb(var(--pv-tone-091f21) / .9);cursor:pointer;border-radius:7px;font:500 17px/1 IBM Plex Mono,monospace}.map-semantic-actions button:hover:not(:disabled){color:rgb(var(--pv-tone-061519));border-color:var(--mint);background:var(--mint)}.map-semantic-actions button:disabled{cursor:default;opacity:.28}.map-spatial-canvas{--map-layer-road:4;--map-layer-building:5;--map-layer-pole:6;--map-layer-selection:7;top:104px;right:calc(var(--context-rail) + 32px);bottom:calc(var(--insight-height) + 32px);position:absolute;left:0}.map-spatial-canvas .road-segments-fallback,.map-spatial-canvas .map-place-overview{position:absolute;inset:0}.map-spatial-canvas .road-segments-fallback{z-index:var(--map-layer-road);pointer-events:none}.map-spatial-canvas .road-segments-fallback .road-segment-select-target{pointer-events:auto}.map-spatial-canvas .map-point{z-index:var(--map-layer-pole)}.map-coverage>span{color:var(--text-secondary);font-size:11px}.map-coverage>span>b{color:rgb(var(--pv-tone-d7e7e4));font:600 12px IBM Plex Mono,monospace}.map-coverage.warning{border-left-color:var(--amber)}.map-place-overview{z-index:4;pointer-events:none;width:auto;box-shadow:none;background:0 0;border:0;padding:0;display:block;position:absolute;inset:0}.map-place-overview>.place-aggregate{--aggregate-anchor-x:32px;width:max-content;max-width:250px;color:var(--text-secondary);text-align:left;pointer-events:auto;border:1px solid rgb(var(--pv-tone-9dbeb5) / .16);background:rgb(var(--pv-tone-071517) / .9);box-shadow:0 14px 35px rgb(var(--pv-tone-000000) / .24);transform:translate(calc(var(--aggregate-anchor-x) * -1), -50%);border-radius:12px;align-items:center;gap:10px;padding:7px 11px 7px 6px;transition:border-color .18s,box-shadow .18s,transform .18s;display:flex;position:absolute}.map-place-overview>.place-aggregate:hover,.map-place-overview>.place-aggregate:focus-visible{z-index:2;border-color:rgb(var(--pv-tone-67e0b1) / .48);box-shadow:0 16px 42px rgb(var(--pv-tone-000000) / .3), 0 0 22px rgb(var(--pv-tone-67e0b1) / .07);transform:translate(calc(var(--aggregate-anchor-x) * -1), -50%) scale(1.04)}.map-place-overview>.place-aggregate.compact{border-radius:50%;width:62px;height:62px;padding:4px;overflow:visible}.map-place-overview>.place-aggregate.compact .place-aggregate-label{display:none}.map-place-overview>.place-aggregate.compact:hover,.map-place-overview>.place-aggregate.compact:focus-visible{border-radius:12px;width:max-content;max-width:230px;padding-right:9px}.map-place-overview>.place-aggregate.compact:hover .place-aggregate-label,.map-place-overview>.place-aggregate.compact:focus-visible .place-aggregate-label{display:block}.place-aggregate-symbol{background:rgb(var(--pv-tone-081b1d));border-radius:50%;flex:0 0 50px;place-items:center;width:50px;height:50px;display:grid;position:relative}.place-aggregate-ring{-webkit-mask:radial-gradient(circle, transparent 0 56%, rgb(var(--pv-tone-000000)) 58% 100%);-webkit-mask:radial-gradient(circle, transparent 0 56%, rgb(var(--pv-tone-000000)) 58% 100%);mask:radial-gradient(circle, transparent 0 56%, rgb(var(--pv-tone-000000)) 58% 100%);border-radius:50%;position:absolute;inset:1px}.place-aggregate-symbol>strong{z-index:1;color:rgb(var(--pv-tone-e1efed));font:600 15px IBM Plex Mono,monospace}.place-aggregate-symbol>i{z-index:2;width:20px;height:20px;color:rgb(var(--pv-tone-07171b));background:var(--coral);place-items:center;font:700 9px IBM Plex Mono,monospace;display:grid;position:absolute;top:-5px;right:-5px;transform:rotate(45deg)}.place-aggregate-symbol>i>span{display:block;transform:rotate(-45deg)}.place-aggregate-label b,.place-aggregate-label small{display:block}.place-aggregate-label b{max-width:170px;color:rgb(var(--pv-tone-d5e5e2));text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.place-aggregate-label small{max-width:180px;color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:10px;overflow:hidden}.map-place-empty{color:var(--text-muted);text-align:center;border-radius:var(--radius-md);background:rgb(var(--pv-tone-071517) / .86);gap:6px;padding:15px 18px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.map-place-empty b{color:var(--text-secondary);font-size:14px}.map-place-empty span{font-size:11px}.map-unassigned-dock{bottom:calc(var(--insight-height) + 42px);z-index:7;width:auto;color:var(--text-secondary);text-align:left;border:1px dashed rgb(var(--pv-tone-efbd6a) / .3);border-radius:var(--radius-md);background:rgb(var(--pv-tone-1b180f) / .82);box-shadow:0 12px 30px rgb(var(--pv-tone-000000) / .14);cursor:pointer;align-items:center;gap:9px;padding:8px 10px;display:flex;position:absolute;left:20px}.map-unassigned-dock>b{color:rgb(var(--pv-tone-c9d7d4));font-size:11px;font-weight:500}.map-unassigned-dock span b,.map-unassigned-dock span small{display:block}.map-unassigned-dock span b{color:rgb(var(--pv-tone-c9d7d4));font-size:12px}.map-unassigned-dock span small{color:rgb(var(--pv-tone-6c7d7b));margin-top:3px;font-size:10px}.map-unassigned-dock>strong{color:var(--amber);align-self:center;font:600 20px IBM Plex Mono,monospace}.map-unassigned-dock>strong i{margin-left:3px;font:9px Noto Sans SC,sans-serif}.map-unassigned-dock>em{color:rgb(var(--pv-tone-b39254));grid-column:1/-1;font-size:10px;font-style:normal}.map-place-overview>.place-building-object{width:max-content;max-width:270px;color:var(--text-secondary);text-align:left;pointer-events:auto;border:1px solid rgb(var(--pv-tone-78c8d8) / .5);background:linear-gradient(135deg, rgb(var(--pv-tone-0b292d) / .96), rgb(var(--pv-tone-07181b) / .94));box-shadow:0 14px 36px rgb(var(--pv-tone-000000) / .28), 0 0 24px rgb(var(--pv-tone-78c8d8) / .08);cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:8px 13px 8px 8px;transition:border-color .18s,box-shadow .18s,transform .18s;display:flex;position:absolute;transform:translate(-36px,-50%)}.map-place-overview>.place-building-object.compact{z-index:2;border-radius:50%;justify-content:center;width:58px;height:58px;padding:4px;overflow:visible;transform:translate(-73px,-50%)}.map-place-overview>.place-building-object.compact:after{content:"";border-top:1px solid rgb(var(--pv-tone-78c8d8) / .58);pointer-events:none;width:44px;position:absolute;top:50%;left:100%}.map-place-overview>.place-building-object.compact>span:last-child{border:1px solid rgb(var(--pv-tone-78c8d8) / .28);background:rgb(var(--pv-tone-07181b) / .94);border-radius:6px;min-width:max-content;padding:5px 8px;display:none;position:absolute;top:64px;left:50%;transform:translate(-50%)}.map-place-overview>.place-building-object.compact:hover,.map-place-overview>.place-building-object.compact:focus-visible{transform:translate(-73px,-50%)scale(1.08)}.map-place-overview>.place-building-object.compact:hover>span:last-child,.map-place-overview>.place-building-object.compact:focus-visible>span:last-child{display:block}.map-place-overview>.place-building-object:hover,.map-place-overview>.place-building-object:focus-visible{z-index:3;border-color:rgb(var(--pv-tone-67e0b1) / .78);box-shadow:0 18px 44px rgb(var(--pv-tone-000000) / .34), 0 0 28px rgb(var(--pv-tone-67e0b1) / .13);transform:translate(-36px,-50%)scale(1.04)}.place-building-object>span:last-child b,.place-building-object>span:last-child small{display:block}.place-building-object>span:last-child b{color:rgb(var(--pv-tone-d9ebe8));font-size:12px;font-weight:600}.place-building-object>span:last-child small{color:rgb(var(--pv-tone-78c8d8));margin-top:4px;font-size:9px}.place-building-object-glyph{border-bottom:1px solid rgb(var(--pv-tone-67e0b1) / .45);flex:0 0 50px;width:50px;height:48px;position:relative}.place-building-object.compact .place-building-object-glyph{flex-basis:46px;width:46px;height:44px}.place-building-object.compact .place-building-object-glyph i:first-child{width:20px;height:27px;left:3px}.place-building-object.compact .place-building-object-glyph i:nth-child(2){width:16px;height:35px;right:3px}.place-building-object.compact .place-building-object-glyph i:nth-child(3){width:15px;height:10px;right:15px}.place-building-object-glyph i{border:1px solid rgb(var(--pv-tone-78c8d8) / .76);background:linear-gradient(rgb(var(--pv-tone-306b71)), rgb(var(--pv-tone-173b40)));position:absolute;bottom:1px}.place-building-object-glyph i:first-child{width:22px;height:30px;left:3px}.place-building-object-glyph i:nth-child(2){width:18px;height:39px;right:3px}.place-building-object-glyph i:nth-child(3){border-color:rgb(var(--pv-tone-67e0b1) / .66);width:17px;height:12px;right:17px}.map-building-layer{z-index:var(--map-layer-building,5);pointer-events:none;contain:layout paint;position:absolute;inset:0;overflow:hidden}.map-building-geometry{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.map-building-plan-shape,.map-building-campus-area,.map-building-volume{color:rgb(var(--pv-tone-78c8d8));cursor:pointer;pointer-events:visiblePainted;outline:none}.map-building-layer.level-place .map-building-plan-shape,.map-building-campus-area{cursor:pointer;pointer-events:visiblePainted}.map-building-campus-area polygon{fill:currentColor;fill-opacity:.1;stroke:currentColor;stroke-opacity:.82;stroke-width:1.8px;stroke-linejoin:round;vector-effect:non-scaling-stroke;transition:fill-opacity .16s,stroke-opacity .16s}.map-building-campus-area:hover polygon{fill-opacity:.2;stroke-opacity:1}.map-building-plan-shape.mint,.map-building-campus-area.mint,.map-building-volume.mint{color:rgb(var(--pv-tone-67e0b1))}.map-building-plan-shape polygon{fill:currentColor;fill-opacity:.12;stroke:currentColor;stroke-opacity:.86;stroke-width:1.5px;vector-effect:non-scaling-stroke;transition:fill-opacity .16s,stroke-opacity .16s}.map-building-plan-shape.part-annex polygon{fill-opacity:.07;stroke-opacity:.62;stroke-width:1.1px}.map-building-plan-shape:hover polygon,.map-building-plan-shape:focus-visible polygon{fill-opacity:.2;stroke-opacity:1}.map-building-volume polygon{stroke:currentColor;stroke-width:1.05px;stroke-linejoin:round;vector-effect:non-scaling-stroke}.map-building-volume .building-side{fill:rgb(var(--pv-tone-0c3036));fill-opacity:.8;stroke-opacity:.68}.map-building-volume .building-side.side-1{fill:rgb(var(--pv-tone-102b31));fill-opacity:.72}.map-building-volume.part-annex .building-side{fill-opacity:.6;stroke-opacity:.5}.map-building-volume .building-roof{fill:currentColor;fill-opacity:.13;stroke-opacity:.9}.map-building-volume.part-annex .building-roof{fill-opacity:.08;stroke-opacity:.68}.map-building-volume .building-floor-line{fill:none;stroke-opacity:.25;stroke-width:.7px;pointer-events:none}.map-building-volume:hover .building-side,.map-building-volume:focus-visible .building-side{fill-opacity:.92;stroke-opacity:.96}.map-building-volume:hover .building-roof,.map-building-volume:focus-visible .building-roof{fill-opacity:.22;stroke-opacity:1}.map-building-direct-label{width:max-content;max-width:150px;color:rgb(var(--pv-tone-d9ebe8));text-align:left;border:0;border-left:2px solid rgb(var(--pv-tone-78c8d8));background:rgb(var(--pv-tone-041013) / .76);box-shadow:0 5px 14px rgb(var(--pv-tone-000000) / .24);cursor:pointer;pointer-events:auto;border-radius:2px;gap:2px;padding:3px 6px;transition:background .16s,transform .16s;display:grid;position:absolute;transform:translate(-50%,-100%)}.map-building-direct-label.mint{border-left-color:rgb(var(--pv-tone-67e0b1))}.map-building-direct-label:hover,.map-building-direct-label:focus-visible{z-index:2;background:rgb(var(--pv-tone-05181c) / .94);transform:translate(-50%,-100%)translateY(-2px)}.map-building-direct-label b{font-size:10px;font-weight:650;line-height:1.2}.map-building-direct-label small{color:rgb(var(--pv-tone-8aa5a3));white-space:nowrap;font-size:8px;display:none}.map-building-direct-label.level-device:hover small,.map-building-direct-label.level-device:focus-visible small{display:block}.map-provider-stage.is-map-dragging .map-building-direct-label{visibility:hidden}.map-unassigned-list{border-color:rgb(var(--pv-tone-efbd6a) / .25);border-radius:var(--radius-md);background:rgb(var(--pv-tone-071517) / .95);width:min(410px,46%);max-height:calc(100% - 178px);padding:14px;top:118px;left:20px}.map-point{z-index:var(--map-layer-pole,5);width:34px;height:34px;transition:opacity var(--motion-instant) ease, filter var(--motion-instant) ease, transform var(--motion-instant) var(--ease-out-expo);margin:-17px}.point-core{box-shadow:0 0 0 1.5px rgb(var(--pv-tone-dff7ef) / .9), 0 2px 5px rgb(var(--pv-tone-041216) / .72);background:currentColor;border-radius:50%;inset:11px}.point-core:before{content:"";opacity:.28;background:0 0;border:1px solid;border-radius:50%;width:18px;height:18px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.point-core:after{content:"";background:rgb(var(--pv-tone-f4fff9) / .76);border-radius:50%;width:3px;height:3px;position:absolute;top:2px;left:2px}.coordinate-fallback.has-focus-context .map-point:not(.selected):not(.health-alert){opacity:.58;filter:saturate(.72);animation:none}.coordinate-fallback.has-focus-context .map-point.selected,.coordinate-fallback.has-focus-context .map-point.health-alert{opacity:1}.map-point.delayed .point-core:before{border-style:dashed}.map-point.offline .point-core:before{opacity:.52;border-width:2px}.map-point.unknown .point-core:before{border-style:dotted}.map-point.selected .point-core:before{border-color:var(--cyan);opacity:1;border-width:2px}.point-health{border:1px solid rgb(var(--pv-tone-07171b));width:7px;height:7px;top:8px;left:21px}.point-label{visibility:hidden;opacity:0;border:1px solid rgb(var(--pv-tone-9dbeb5) / .11);background:rgb(var(--pv-tone-071517) / .94);min-width:176px;box-shadow:0 10px 26px rgb(var(--pv-tone-000000) / .25);transition:opacity var(--motion-instant) ease, transform var(--motion-instant) var(--ease-out-expo), border-color var(--motion-instant) ease;border-left:2px solid;border-radius:0 8px 8px 0;padding:8px 10px;top:-14px;left:31px;transform:translate(-4px)}.point-label:before{content:"";opacity:.55;background:currentColor;width:14px;height:1px;position:absolute;top:23px;right:100%}.point-label>span,.point-label>small{display:block}.point-label>span{color:rgb(var(--pv-tone-91aaa7));margin-top:2px}.point-label>small{color:rgb(var(--pv-tone-67817f));margin-top:4px;font-size:8px}.map-point.show-label .point-label,.map-point:hover .point-label,.map-point:focus-visible .point-label{visibility:visible;opacity:1;transform:translate(0)}.map-point.selected{z-index:var(--map-layer-selection,7);filter:none;transform:scale(1.12)}.map-point.selected .point-core{box-shadow:0 0 0 2px var(--cyan), 0 0 18px color-mix(in srgb, var(--cyan) 55%, transparent)}.map-point.selected .point-label{border-color:color-mix(in srgb, var(--cyan) 58%, transparent);border-left-color:var(--cyan);animation:map-device-label-acquire .42s var(--ease-out-expo) both}.map-point:hover:not(.selected),.map-point:focus-visible:not(.selected){z-index:5;transform:scale(1.08);opacity:1!important;filter:saturate(1) drop-shadow(0 0 7px color-mix(in srgb, currentColor 36%, transparent))!important}.road-segments-fallback polyline{stroke:rgb(var(--pv-tone-4f8583) / .34);stroke-width:.68px}.road-segments-fallback polyline.selected{stroke:var(--cyan);stroke-width:1.15px;filter:drop-shadow(0 0 2px rgb(var(--pv-tone-78c8d8) / .22))}.map-coordinate-note{bottom:calc(var(--insight-height) + 32px);max-width:52%;color:var(--text-muted);font-family:Noto Sans SC,Microsoft YaHei,sans-serif;font-size:11px;left:20px}.map-legend{right:calc(var(--context-rail) + 32px);bottom:calc(var(--insight-height) + 30px);z-index:7;color:var(--text-secondary);border:1px solid rgb(var(--pv-tone-9dbeb5) / .09);background:rgb(var(--pv-tone-071517) / .86);box-shadow:0 10px 25px rgb(var(--pv-tone-000000) / .12);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);border-radius:9px;padding:0;font-size:11px}.map-legend summary{color:rgb(var(--pv-tone-9eb3b1));cursor:pointer;padding:7px 10px;font-size:10px;list-style:none}.map-legend summary::-webkit-details-marker{display:none}.map-legend summary:before{content:"?";color:var(--cyan);margin-right:6px;font-family:IBM Plex Mono,monospace}.map-legend[open] summary{border-bottom:1px solid rgb(var(--pv-tone-9dbeb5) / .09)}.map-legend>div{grid-template-columns:repeat(2,max-content);gap:7px 18px;padding:9px 12px;display:grid}.map-legend .legend-group{color:var(--text-secondary);white-space:nowrap;grid-template-columns:54px auto;align-items:center;font-weight:400;display:grid}.map-legend .legend-group>strong{color:rgb(var(--pv-tone-b1c3c1));font-weight:600}.map-legend .legend-group>span{color:var(--text-secondary);font-weight:400}.map-legend .legend-group i,.map-legend .legend-group em,.map-legend .legend-group u{margin-left:7px}.map-legend i{border:2px solid var(--mint);background:0 0;width:9px;height:9px}.map-legend i.delayed{border-color:var(--amber);background:0 0;border-style:dashed}.map-legend i.offline{border-width:3px;border-color:var(--coral);background:0 0;border-style:double}.map-legend i.unknown{border-color:rgb(var(--pv-tone-7e9295));background:0 0;border-style:dotted}.map-legend i.aggregate,.map-legend i.located,.map-legend i.focus{border-color:var(--mint);background:rgb(var(--pv-tone-67e0b1) / .18)}.map-legend i.focus{box-shadow:0 0 0 2px rgb(var(--pv-tone-ffffff) / .55), 0 0 8px rgb(var(--pv-tone-67e0b1) / .45)}.map-legend u{background:var(--mint);border-radius:2px;width:12px;height:3px;margin:0 5px 0 10px;text-decoration:none;display:inline-block}.map-legend u.lagging{background:var(--amber)}.map-legend u.expired{background:var(--coral)}.map-legend u.unknown{background:rgb(var(--pv-tone-7e9295))}.map-empty-overlay{z-index:6;border-color:rgb(var(--pv-tone-9dbeb5) / .11);border-radius:var(--radius-lg);background:rgb(var(--pv-tone-071517) / .9);min-width:320px;box-shadow:0 20px 60px rgb(var(--pv-tone-000000) / .25);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);padding:20px 24px}.map-empty-overlay>small{color:var(--text-muted);letter-spacing:.08em;margin-bottom:7px;font-size:10px;display:block}.map-empty-overlay.map-county-empty{left:calc((100% - var(--context-rail) - 32px) / 2);top:calc(48px + (100% - var(--insight-height)) / 2)}.trend-chart-wrap,.device-detail-empty{height:calc(100% - 62px)}.device-detail-360{grid-template-rows:auto auto minmax(0,1fr);height:100%;padding:0;display:grid;overflow:hidden}.device-detail-empty{color:var(--text-muted);font-size:12px}.same-pole-controllers{border-bottom:1px solid rgb(var(--pv-tone-9dbeb5) / .09);background:rgb(var(--pv-tone-041114) / .24);align-items:center;gap:10px;min-width:0;padding:9px 16px;display:flex}.same-pole-controllers>span{color:var(--text-muted);white-space:nowrap;flex:none;font-size:9px}.same-pole-controllers>div{gap:6px;min-width:0;display:flex;overflow-x:auto}.same-pole-controllers button b,.same-pole-controllers button small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.same-pole-controllers button{min-width:112px;color:rgb(var(--pv-tone-91aaa8));text-align:left;background:rgb(var(--pv-tone-9dbeb5) / .035);cursor:pointer;border:1px solid #0000;border-radius:6px;padding:6px 8px}.same-pole-controllers button b{font-size:10px;font-weight:600}.same-pole-controllers button small{color:var(--text-muted);font-size:8px}.same-pole-controllers button.active{color:var(--mint);border-color:rgb(var(--pv-tone-67e0b1) / .32);background:rgb(var(--pv-tone-67e0b1) / .075)}.device-inspector-header{border-bottom:1px solid rgb(var(--pv-tone-9dbeb5) / .09);background:linear-gradient(135deg, rgb(var(--pv-tone-67e0b1) / .055), transparent 62%);padding:15px 16px 13px}.device-inspector-kicker{justify-content:space-between;align-items:center;gap:12px;margin-bottom:9px;display:flex}.device-inspector-kicker>span{color:var(--cyan);letter-spacing:.1em;font:9px IBM Plex Mono,monospace}.device-inspector-kicker button{width:25px;height:25px;color:var(--text-muted);border:1px solid rgb(var(--pv-tone-9dbeb5) / .12);cursor:pointer;background:0 0;border-radius:50%;place-items:center;padding:0;font-size:16px;line-height:1;display:grid}.device-inspector-kicker button:hover,.device-inspector-kicker button:focus-visible{color:var(--cyan);border-color:rgb(var(--pv-tone-78c8d8) / .42)}.device-identity{align-items:center}.device-identity h2{color:rgb(var(--pv-tone-dbe8e4));margin:0;font-size:16px;font-weight:600;line-height:1.3}.device-identity p{color:var(--text-muted);margin:4px 0 0;font:10px IBM Plex Mono,monospace}.device-dual-status span{background:rgb(var(--pv-tone-9dbeb5) / .06);border:0;border-radius:6px;padding:5px 8px;font-size:10px}.device-inspector-body{min-height:0;padding:14px 16px 18px;overflow:auto}.device-section-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.device-section-heading h3{color:var(--text-secondary);margin:0;font-size:11px;font-weight:600}.device-section-heading>span{color:var(--text-muted);font:8px IBM Plex Mono,monospace}.device-primary-data .latest-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:9px;display:grid}.device-primary-data .latest-metrics>span{background:rgb(var(--pv-tone-9dbeb5) / .045);border-radius:7px;min-width:0;padding:9px 10px}.device-primary-data .latest-metrics b,.device-primary-data .latest-metrics em{display:block}.device-primary-data .latest-metrics b{color:rgb(var(--pv-tone-e2ece9));font:15px IBM Plex Mono,monospace}.device-primary-data .latest-metrics b small{color:var(--text-muted);font-size:9px}.device-primary-data .latest-metrics em{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:9px;font-style:normal;overflow:hidden}.device-freshness{border-top:1px solid rgb(var(--pv-tone-9dbeb5) / .075);border-bottom:1px solid rgb(var(--pv-tone-9dbeb5) / .075);grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:13px 0 0;padding:11px 0;display:grid}.device-freshness span{background:0 0;min-width:0;padding:0}.device-freshness small,.device-freshness b{display:block}.device-freshness small{color:var(--text-muted);margin-bottom:4px;font-size:8px}.device-freshness b{color:rgb(var(--pv-tone-aec2bf));text-overflow:ellipsis;white-space:nowrap;font:8px IBM Plex Mono,monospace;overflow:hidden}.device-detail-columns{grid-template-columns:minmax(0,1fr);gap:0;display:grid}.device-detail-columns section{border:0;border-bottom:1px solid rgb(var(--pv-tone-9dbeb5) / .075);background:0 0;border-radius:0;padding:14px 0 0}.device-detail-columns section:last-child{border-bottom:0;padding-bottom:4px}.device-detail-columns .place-trail{color:var(--text-secondary);text-overflow:clip;white-space:normal;margin:8px 0 0;line-height:1.45;overflow:visible}.device-pole-reference{color:var(--text-muted)!important}.related-assets,.recent-events{margin-top:8px}.related-assets button{box-sizing:border-box;background:rgb(var(--pv-tone-9dbeb5) / .04);border-color:#0000;border-radius:6px;width:100%;min-width:0;max-width:100%;display:grid;overflow:hidden}.related-assets button small,.related-assets button b,.related-assets button span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.recent-events>span{border-left:2px solid rgb(var(--pv-tone-9dbeb5) / .18);background:rgb(var(--pv-tone-9dbeb5) / .035);border-radius:0 6px 6px 0;padding:8px 9px}.recent-events>span.warning,.recent-events>span.alert,.recent-events>span.critical{border-left-color:var(--coral)}.device-section-empty{grid-column:1/-1;color:var(--text-muted)!important;background:0 0!important;border:0!important;padding:9px 0!important}.alert-list{max-height:calc(100% - 62px);overflow:auto}.load-panel .energy-analysis{grid-template:"scope scope"36px"comparison bars"minmax(0,1fr)"comparison change"/minmax(220px,.78fr) minmax(0,1.22fr);align-items:start;gap:6px 12px;min-width:0;height:calc(100% - 62px);min-height:0;padding:10px 16px}.load-panel .energy-analysis>*{min-width:0;min-height:0}.load-panel .energy-analysis-heading{display:none}.load-panel .energy-ranking{max-height:118px;overflow:auto}.load-panel .energy-scope-tabs{grid-area:scope}.energy-scope-tabs{gap:5px;min-width:0;display:flex}.energy-scope-tabs button{min-width:0;height:36px;color:var(--text-muted);text-align:left;border:1px solid rgb(var(--pv-tone-9dbeb5) / .1);background:rgb(var(--pv-tone-08191b) / .84);cursor:pointer;border-radius:7px;flex:1 1 0;align-items:center;gap:6px;padding:0 9px;display:flex;overflow:hidden}.energy-scope-tabs button small{color:rgb(var(--pv-tone-668481));flex:none;font-size:8px}.energy-scope-tabs button span{min-width:0;color:rgb(var(--pv-tone-a9bdb9));text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.energy-scope-tabs button.active{color:var(--cyan);border-color:rgb(var(--pv-tone-78c8d8) / .38);background:rgb(var(--pv-tone-78c8d8) / .08);box-shadow:inset 0 -2px var(--cyan)}.energy-scope-tabs button.active small,.energy-scope-tabs button.active span{color:rgb(var(--pv-tone-d7eef0))}.energy-scope-tabs button:hover,.energy-scope-tabs button:focus-visible{border-color:rgb(var(--pv-tone-78c8d8) / .48)}.load-panel .energy-analysis>p,.load-panel .energy-analysis-placeholder{grid-area:comparison}.load-panel .energy-comparison{grid-area:comparison;align-content:stretch;align-self:stretch}.load-panel .energy-comparison>span{padding:7px 8px}.load-panel .energy-comparison b{margin:4px 0 1px;font-size:18px}.load-panel .energy-change{grid-area:change;align-self:start;padding-top:0}.panel-header>div:first-child{min-width:0}.panel-header h2,.panel-header .panel-action{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.panel-header .panel-action{max-width:48%}.dashboard-shell.dashboard-v05{height:100vh;min-height:760px;padding:clamp(10px,.8vw,20px)}.workspace-stage{--context-rail:clamp(400px, 23vw, 620px);--insight-height:clamp(230px, 24vh, 330px);--hourly-panel-width:clamp(610px, 34vw, 680px);grid-template-columns:minmax(0, 1fr) var(--context-rail);grid-template-rows:minmax(0, 1fr) var(--insight-height);isolation:isolate;flex:auto;min-height:0;display:grid;position:relative}.dashboard-map-panel{z-index:1;grid-area:1/1/-1/-1;position:relative;inset:auto}.dashboard-map-panel>.panel-header{width:260px;height:72px;top:18px;left:18px}.dashboard-kpis{z-index:12;border:1px solid rgb(var(--pv-tone-9dbeb5) / .1);background:rgb(var(--pv-tone-071517) / .86);box-shadow:0 14px 38px rgb(var(--pv-tone-000000) / .18);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:12px;grid-area:1/1;grid-template-columns:repeat(4,minmax(0,1fr));align-self:start;margin:18px 18px 0 296px;display:grid;position:relative;overflow:hidden}.dashboard-kpis .metric-card{border:0;border-right:1px solid rgb(var(--pv-tone-9dbeb5) / .085);min-width:0;min-height:72px;box-shadow:none;background:0 0;border-radius:0;padding:9px 14px 8px}.dashboard-kpis .metric-card:last-child{border-right:0}.dashboard-kpis .metric-card:before{display:none}.dashboard-kpis .metric-top{color:var(--text-secondary);font-size:10px}.dashboard-kpis .metric-top i{width:14px;height:2px;box-shadow:none;border-radius:2px;margin-top:5px}.dashboard-kpis .metric-card p{margin:4px 0 1px}.dashboard-kpis .metric-card strong{font-size:clamp(24px,1.45vw,34px)}.dashboard-kpis .metric-card small{color:var(--text-muted);font-size:9px;line-height:1.35}.context-rail{z-index:14;border:1px solid rgb(var(--pv-tone-9dbeb5) / .1);border-radius:var(--radius-lg);background:linear-gradient(150deg, rgb(var(--pv-tone-08181a) / .94), rgb(var(--pv-tone-061214) / .9));min-width:0;min-height:0;box-shadow:0 18px 46px rgb(var(--pv-tone-000000) / .2);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);grid-area:1/2;grid-template-rows:48px minmax(0,1fr);margin:18px 18px 12px 0;display:grid;position:relative}.context-rail.has-selection{border-color:rgb(var(--pv-tone-67e0b1) / .15);grid-row:1/-1;margin-bottom:18px}.context-rail.no-selection{align-self:start;height:min(390px,100% - 6px)}.context-rail-head{border-bottom:1px solid rgb(var(--pv-tone-9dbeb5) / .08);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;padding:6px 7px 6px 9px;display:grid}.context-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;min-width:0;display:grid}.context-tabs button{height:34px;color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:0 10px;font-size:11px;position:relative;overflow:hidden}.context-tabs button.active{color:rgb(var(--pv-tone-dcebe7));background:rgb(var(--pv-tone-78c8d8) / .09);box-shadow:inset 0 -2px var(--cyan)}.context-tabs button:disabled{cursor:default;opacity:.34}.context-tabs button b{color:var(--coral);margin-left:7px;font:600 10px IBM Plex Mono,monospace}.workspace-menu{position:relative}.workspace-menu summary{width:36px;height:34px;color:rgb(var(--pv-tone-8ba29f));border:1px solid rgb(var(--pv-tone-9dbeb5) / .11);background:rgb(var(--pv-tone-071618) / .86);cursor:pointer;letter-spacing:.12em;border-radius:7px;place-items:center;font:600 14px IBM Plex Mono,monospace;list-style:none;display:grid}.workspace-menu summary::-webkit-details-marker{display:none}.workspace-menu[open] summary{color:var(--cyan);border-color:rgb(var(--pv-tone-78c8d8) / .34)}.workspace-menu>div{z-index:40;border:1px solid rgb(var(--pv-tone-9dbeb5) / .14);background:rgb(var(--pv-tone-061214) / .98);width:210px;box-shadow:0 22px 52px rgb(var(--pv-tone-000000) / .42);border-radius:10px;gap:5px;padding:10px;display:grid;position:absolute;top:42px;right:0}.workspace-menu>div>span{border-bottom:1px solid rgb(var(--pv-tone-9dbeb5) / .08);padding:8px 9px 10px}.workspace-menu>div>span b,.workspace-menu>div>span small{display:block}.workspace-menu>div>span b{color:rgb(var(--pv-tone-d5e4e0));font-size:12px}.workspace-menu>div>span small{color:var(--text-muted);margin-top:4px;font-size:10px}.workspace-menu a,.workspace-menu button{color:rgb(var(--pv-tone-9eb2af));text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:9px;font:11px Noto Sans SC,Microsoft YaHei,sans-serif;text-decoration:none}.workspace-menu a:hover,.workspace-menu button:hover{color:var(--mint);background:rgb(var(--pv-tone-67e0b1) / .06)}.context-panel{border-radius:0 0 var(--radius-lg) var(--radius-lg);min-width:0;height:auto;min-height:0;box-shadow:none;background:0 0;border:0;grid-area:2/1;grid-template-rows:58px minmax(0,1fr);display:grid;overflow:hidden}.context-panel:before{display:none}.context-panel .panel-header{height:58px}.context-panel.device-panel{grid-template-rows:minmax(0,1fr)}.context-panel .alert-list{min-height:0;max-height:none;overflow:auto}.context-panel .device-detail-360,.context-panel .device-detail-empty{min-width:0;height:auto;min-height:0}.context-panel .device-identity>div:first-child{min-width:0;overflow:hidden}.context-panel .device-identity>div:first-child h2,.context-panel .device-identity>div:first-child p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.context-panel .device-dual-status{flex:none}.dashboard-insights{z-index:12;grid-area:2/1;grid-template-columns:minmax(0, 1fr) var(--hourly-panel-width);gap:12px;min-width:0;min-height:0;margin:0 12px 18px 18px;display:grid;position:relative}.dashboard-insights>.trend-panel,.dashboard-insights>.load-panel{grid-template-rows:58px minmax(0,1fr);width:auto;min-width:0;height:auto;min-height:0;display:grid;position:relative;inset:auto}.dashboard-insights .trend-chart-wrap,.dashboard-insights .load-panel .energy-analysis{height:auto;min-height:0}.dashboard-insights>.trend-panel{left:auto;right:auto}.dashboard-insights>.load-panel{right:auto}@media (width>=3000px){.dashboard-shell.dashboard-v05{padding:24px}.workspace-stage{--context-rail:700px;--insight-height:450px;--hourly-panel-width:920px}.dashboard-map-panel>.panel-header{width:400px;height:104px;top:30px;left:30px}.dashboard-kpis{border-radius:16px;margin:30px 30px 0 460px}.dashboard-kpis .metric-card{min-height:104px;padding:14px 22px 12px}.dashboard-kpis .metric-top{font-size:16px}.dashboard-kpis .metric-card strong{font-size:46px}.dashboard-kpis .metric-card small{font-size:14px}.context-rail{grid-template-rows:68px minmax(0,1fr);margin:30px 30px 18px 0}.context-rail.has-selection{margin-bottom:30px}.context-rail.no-selection{height:560px}.context-tabs button{height:48px;font-size:17px}.context-tabs button b{font-size:16px}.workspace-menu summary{width:50px;height:48px;font-size:18px}.workspace-menu>div{width:300px;padding:15px;top:58px}.workspace-menu>div>span b{font-size:18px}.workspace-menu>div>span small,.workspace-menu a,.workspace-menu button{font-size:16px}.context-panel{grid-template-rows:86px minmax(0,1fr)}.context-panel .panel-header{height:86px}.context-panel .panel-header h2{font-size:27px}.dashboard-insights{gap:18px;margin:0 18px 30px 30px}.dashboard-insights>.trend-panel,.dashboard-insights>.load-panel{grid-template-rows:86px minmax(0,1fr)}.dashboard-insights .panel-header{height:86px}.dashboard-insights .panel-header h2{font-size:27px}}.map-scope-path .map-dashboard-return{min-height:36px;color:var(--color-text-primary);background:var(--color-surface-strong);border:1px solid var(--color-selection);border-radius:6px;flex-shrink:0;padding:6px 12px}.map-scope-path .map-dashboard-return:hover,.map-scope-path .map-dashboard-return:focus-visible{color:var(--color-selection);outline:2px solid var(--color-selection);outline-offset:2px}.login-panel,.admin-page>.admin-card{animation:surface-acquire .62s var(--ease-out-expo) both}.admin-page>.admin-card:nth-child(2){animation-delay:45ms}.admin-page>.admin-card:nth-child(3){animation-delay:90ms}.login-panel form>button,.admin-sidebar nav a,.admin-entry,.profile-button{transition:color var(--motion-instant) ease, border-color var(--motion-instant) ease, background-color var(--motion-instant) ease, box-shadow var(--motion-instant) ease, transform var(--motion-instant) ease}.login-panel form>button:hover:not(:disabled){box-shadow:0 12px 32px rgb(var(--pv-tone-67e0b1) / .18), 0 0 0 1px rgb(var(--pv-tone-d7fff2) / .22) inset;transform:translateY(-1px)}.login-panel form>button:active:not(:disabled){transform:translateY(1px)scale(.995)}.admin-sidebar nav a:hover,.admin-sidebar nav a:focus-visible{transform:translate(3px)}.dashboard-kpis .metric-card{transition:background-color var(--motion-instant) ease, box-shadow var(--motion-instant) ease}.dashboard-kpis .metric-card:hover{background:rgb(var(--pv-tone-67e0b1) / .035);box-shadow:inset 0 -1px rgb(var(--pv-tone-67e0b1) / .12)}.dashboard-kpis .metric-card:after{content:"";opacity:.32;height:1px;transition:opacity var(--motion-instant) ease, transform var(--motion-instant) ease;background:linear-gradient(90deg,#0000,currentColor,#0000);position:absolute;bottom:0;left:15px;right:15px;transform:scaleX(.42)}.dashboard-kpis .metric-card:hover:after{opacity:.7;transform:scaleX(1)}.metric-value-acquire{transform-origin:0 100%;animation:metric-value-acquire .52s var(--ease-out-expo) both;display:inline-block}.context-panel,.trend-panel,.load-panel,.alert-row{transition:border-color var(--motion-instant) ease, background-color var(--motion-instant) ease, box-shadow var(--motion-instant) ease, opacity var(--motion-instant) ease, transform var(--motion-instant) ease}.context-rail.has-selection .device-panel{animation:information-layer-acquire var(--motion-acquire) var(--ease-out-expo) both}.alert-row:hover,.alert-row:focus-visible{background:linear-gradient(90deg, rgb(var(--pv-tone-67e0b1) / .075), rgb(var(--pv-tone-67e0b1) / .018));transform:translate(2px)}.alert-row.selected{box-shadow:inset 2px 0 var(--mint), inset 24px 0 32px -30px rgb(var(--pv-tone-67e0b1) / .55)}.trend-chart-wrap{background:linear-gradient(180deg, rgb(var(--pv-tone-67e0b1) / .025), transparent 54%), radial-gradient(ellipse at 78% 65%, rgb(var(--pv-tone-458e80) / .06), transparent 36%);overflow:hidden}.trend-chart-wrap:after{content:"";opacity:.45;background:linear-gradient(90deg, transparent, rgb(var(--pv-tone-67e0b1) / .2), transparent);pointer-events:none;height:1px;position:absolute;bottom:12px;left:18px;right:18px}.trend-summary{animation:trend-summary-acquire var(--motion-acquire) var(--ease-out-expo) both}.load-panel .energy-visual{grid-area:bars;grid-template-columns:74px minmax(0,1fr);align-items:center;gap:10px;min-width:0;display:grid}.load-panel .energy-bars{grid-area:auto;align-self:center}.energy-orbit{flex:none;place-items:center;width:68px;height:68px;display:grid;position:relative}.energy-orbit svg{width:100%;height:100%;filter:drop-shadow(0 0 6px rgb(var(--pv-tone-67e0b1) / .1));position:absolute;inset:0;overflow:visible;transform:rotate(-90deg)}.energy-orbit circle{fill:none;stroke-linecap:round}.energy-orbit .orbit-track{stroke:rgb(var(--pv-tone-9dbeb5) / .075);stroke-width:4px}.energy-orbit .orbit-track.current{stroke-width:6px}.energy-orbit .orbit-value.previous{stroke:rgb(var(--pv-tone-6f8984));stroke-width:4px}.energy-orbit .orbit-value.current{stroke:rgb(var(--pv-tone-70e8ba));stroke-width:6px;filter:drop-shadow(0 0 3px rgb(var(--pv-tone-67e0b1) / .48))}.energy-orbit .orbit-value{animation:energy-orbit-acquire .92s var(--ease-out-expo) both}.energy-orbit>span{z-index:1;justify-items:center;line-height:1.1;display:grid}.energy-orbit>span b{color:var(--amber);font:600 12px IBM Plex Mono,monospace}.energy-orbit>span small{color:var(--text-muted);margin-top:4px;font-size:8px}.energy-bars span{grid-template-columns:32px minmax(0,1fr) 30px}.energy-bars span>small{color:var(--text-muted);text-align:right;font:9px IBM Plex Mono,monospace}.energy-bars b{isolation:isolate;position:relative}.energy-bars em{animation:energy-flow-acquire .82s var(--ease-out-expo) both;position:relative;overflow:hidden}@keyframes metric-value-acquire{0%{opacity:.16;filter:blur(4px);transform:translateY(7px)scale(.96)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}@keyframes surface-acquire{0%{opacity:0;filter:blur(5px);transform:translateY(12px)}to{opacity:1;filter:blur();transform:translateY(0)}}@keyframes information-layer-acquire{0%{opacity:.55;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes trend-summary-acquire{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@keyframes energy-orbit-acquire{0%{stroke-dasharray:0 100;opacity:.24}to{opacity:1}}@keyframes energy-flow-acquire{0%{opacity:.3;max-width:0}to{opacity:1;max-width:100%}}.map-provider-stage .amap-container{z-index:0}.map-atmosphere{z-index:2;pointer-events:none;contain:paint;position:absolute;inset:0;overflow:hidden}.map-provider-stage.is-map-dragging .map-atmosphere,.map-provider-stage.is-map-dragging .amap-spatial-effect{visibility:hidden}.map-atmosphere>span{pointer-events:none;display:block;position:absolute;inset:0}.map-atmosphere-vignette{background:linear-gradient(180deg, rgb(var(--pv-tone-020809) / .2), transparent 16%, transparent 72%, rgb(var(--pv-tone-010708) / .45)), radial-gradient(ellipse at 45% 46%, transparent 38%, rgb(var(--pv-tone-02090a) / .15) 67%, rgb(var(--pv-tone-010607) / .52) 100%)}.map-spatial-canvas{z-index:3}.road-segments-fallback .selected-path-halo,.road-segments-fallback .selected-path-center{fill:none;vector-effect:non-scaling-stroke;pointer-events:none}.road-segments-fallback .selected-path-halo{stroke:rgb(var(--pv-tone-78c8d8) / .16);stroke-width:7px;filter:blur(3px);animation:map-road-range-acquire var(--motion-acquire) var(--ease-out-expo) both}.road-segments-fallback .selected-path-center{stroke:rgb(var(--pv-tone-d7fbff));stroke-width:.32px;stroke-linecap:round;filter:drop-shadow(0 0 1.5px rgb(var(--pv-tone-78c8d8) / .52));animation:map-road-center-acquire .42s var(--ease-out-expo) both}.map-alert-ripple,.map-focus-lens,.amap-spatial-effect{pointer-events:none;display:block;position:absolute;top:50%;left:50%}.map-alert-ripple,.amap-spatial-effect.alert{width:62px;height:62px;color:var(--coral);transform:translate(-50%,-50%)}.map-alert-ripple:before,.map-alert-ripple>i,.amap-spatial-effect.alert:before,.amap-spatial-effect.alert>i{content:"";opacity:0;animation:map-alert-wave 2.8s var(--ease-out-expo) infinite;border:1px solid;border-radius:50%;position:absolute;inset:12px}.map-alert-ripple>i:first-child,.amap-spatial-effect.alert>i:first-child{animation-delay:.72s}.map-focus-lens,.amap-spatial-effect.focus{width:58px;height:58px;color:var(--cyan);background:linear-gradient(var(--cyan) 0 0) left top / 18px 2px no-repeat, linear-gradient(var(--cyan) 0 0) left top / 2px 18px no-repeat, linear-gradient(var(--cyan) 0 0) right top / 18px 2px no-repeat, linear-gradient(var(--cyan) 0 0) right top / 2px 18px no-repeat, linear-gradient(var(--cyan) 0 0) left bottom / 18px 2px no-repeat, linear-gradient(var(--cyan) 0 0) left bottom / 2px 18px no-repeat, linear-gradient(var(--cyan) 0 0) right bottom / 18px 2px no-repeat, linear-gradient(var(--cyan) 0 0) right bottom / 2px 18px no-repeat;filter:drop-shadow(0 0 7px rgb(var(--pv-tone-78c8d8) / .42));animation:map-focus-acquire var(--motion-acquire) var(--ease-out-expo) both;transform:translate(-50%,-50%)}.map-focus-lens:before,.map-focus-lens:after,.amap-spatial-effect.focus:before,.amap-spatial-effect.focus:after{content:"";background:rgb(var(--pv-tone-d7fbff) / .68);box-shadow:0 0 7px rgb(var(--pv-tone-78c8d8) / .38);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.map-focus-lens:before,.amap-spatial-effect.focus:before{width:76px;height:1px;-webkit-mask:linear-gradient(90deg, rgb(var(--pv-tone-000000)) 0 24%, transparent 24% 76%, rgb(var(--pv-tone-000000)) 76%);-webkit-mask:linear-gradient(90deg, rgb(var(--pv-tone-000000)) 0 24%, transparent 24% 76%, rgb(var(--pv-tone-000000)) 76%);mask:linear-gradient(90deg, rgb(var(--pv-tone-000000)) 0 24%, transparent 24% 76%, rgb(var(--pv-tone-000000)) 76%)}.map-focus-lens:after,.amap-spatial-effect.focus:after{width:1px;height:76px;-webkit-mask:linear-gradient(rgb(var(--pv-tone-000000)) 0 24%, transparent 24% 76%, rgb(var(--pv-tone-000000)) 76%);-webkit-mask:linear-gradient(rgb(var(--pv-tone-000000)) 0 24%, transparent 24% 76%, rgb(var(--pv-tone-000000)) 76%);mask:linear-gradient(rgb(var(--pv-tone-000000)) 0 24%, transparent 24% 76%, rgb(var(--pv-tone-000000)) 76%)}.map-focus-lens>i,.amap-spatial-effect.focus>i{border:1px solid rgb(var(--pv-tone-78c8d8) / .28);border-radius:50%;position:absolute;inset:15px}.map-focus-lens>i:last-child,.amap-spatial-effect.focus>i:last-child{display:none}.amap-spatial-effect.focus.steady{animation:none}.amap-spatial-effect{top:0;left:0}.map-state-change,.amap-spatial-effect.state-change{border:2px solid var(--amber);opacity:0;pointer-events:none;width:62px;height:62px;animation:map-local-state-change 1.2s var(--ease-out-expo) both;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.35)}.map-state-change.communication-recovered,.map-state-change.health-recovered,.amap-spatial-effect.state-change.communication-recovered,.amap-spatial-effect.state-change.health-recovered{border-color:var(--mint);animation-name:map-local-recovery}.map-state-change.health-alert,.amap-spatial-effect.state-change.health-alert{border-color:var(--coral)}.amap-spatial-effect.state-change{top:0;left:0}.map-place-overview>.place-aggregate,.map-place-overview>.place-building-object,.map-point{animation:map-object-acquire var(--motion-acquire) var(--ease-out-expo) both}.map-semantic-scale i.active{position:relative;overflow:hidden}.map-semantic-scale i.active:after{content:"";background:linear-gradient(90deg, rgb(var(--pv-tone-78c8d8) / .34), rgb(var(--pv-tone-d7fbff) / .92), rgb(var(--pv-tone-78c8d8) / .34));box-shadow:0 0 7px rgb(var(--pv-tone-78c8d8) / .48);position:absolute;inset:0}@keyframes map-alert-wave{0%{opacity:.7;transform:scale(.38)}78%,to{opacity:0;transform:scale(2.35)}}@keyframes map-local-state-change{0%{opacity:.9;transform:translate(-50%,-50%)scale(.35)}72%,to{opacity:0;transform:translate(-50%,-50%)scale(1.9)}}@keyframes map-local-recovery{0%{opacity:0;transform:translate(-50%,-50%)scale(1.8)}32%{opacity:.85}to{opacity:0;transform:translate(-50%,-50%)scale(.55)}}@keyframes map-focus-acquire{0%{opacity:0;transform:translate(-50%,-50%)scale(1.34)}68%{opacity:1;transform:translate(-50%,-50%)scale(.96)}to{transform:translate(-50%,-50%)scale(1)}}@keyframes map-road-range-acquire{0%{opacity:0;filter:blur(7px)}to{opacity:1;filter:blur(3px)}}@keyframes map-road-center-acquire{0%{opacity:0;filter:blur(3px)}to{opacity:1;filter:drop-shadow(0 0 1.5px rgb(var(--pv-tone-78c8d8) / .52))}}@keyframes map-device-label-acquire{0%{opacity:0;transform:translate(-10px)scale(.97)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes map-object-acquire{0%{opacity:0;filter:blur(3px)}to{opacity:1;filter:blur()}}@media (width>=3000px){.dashboard-shell{padding:38px 48px}.topbar{min-height:124px;margin-bottom:24px}.topbar h1{font-size:52px}.eyebrow{font-size:20px}.system-meta{gap:28px;font-size:22px}.data-badge,.profile-button,.admin-entry{padding:14px 18px}.content-grid{--context-rail:800px;--insight-height:450px}.content-grid>.metric-grid{top:40px;right:calc(var(--context-rail) + 80px);border-radius:16px;gap:0;left:596px}.content-grid>.metric-grid .metric-card{min-height:152px;padding:20px 28px 18px}.content-grid>.metric-grid .metric-top{font-size:21px}.content-grid>.metric-grid .metric-card strong{font-size:56px}.content-grid>.metric-grid .metric-card small{font-size:19px}.side-stack{gap:24px;top:40px;bottom:40px;right:40px}.side-stack:not(.has-selection){grid-template-rows:minmax(440px,32vh) 380px}.trend-panel,.load-panel{bottom:40px}.trend-panel{left:40px;right:calc(var(--context-rail) + 900px + 108px)}.load-panel{right:calc(var(--context-rail) + 64px);width:900px}.panel-header{height:124px;padding:0 36px}.panel-header h2{font-size:36px}.panel-header span,.panel-action{font-size:21px}.map-stage{inset:0}.map-panel>.panel-header{width:516px;height:152px;top:40px;left:40px}.dashboard-state-notice{width:min(680px, calc(100% - var(--context-rail) - 520px));gap:16px;min-width:520px;padding:14px 18px;top:230px}.dashboard-state-notice small,.dashboard-state-notice em{font-size:11px}.dashboard-state-notice b{font-size:14px}.map-state-card{width:540px;padding:42px 46px 38px}.map-state-card>i{width:54px;height:54px}.map-state-card>small,.map-state-card>span,.map-empty-overlay>small{font-size:12px}.map-state-card>strong{font-size:22px}.map-scope-navigator.map-road-selector{top:216px;right:calc(var(--context-rail) + 64px);left:40px}.map-scope-path,.map-scope-navigator>label{padding:16px 20px}.map-scope-path>span,.map-scope-navigator>label>span{font-size:21px}.map-scope-path button,.map-current-scope,.map-scope-device,.map-scope-navigator select{font-size:24px}.map-scope-navigator select{height:54px}.map-coverage{min-width:0;min-height:58px;padding:12px 18px;top:332px;left:260px}.map-semantic-zoom{width:196px;padding:8px 9px 8px 16px;top:332px;left:40px}.map-pitch-control{top:402px;left:40px}.map-semantic-zoom strong{font-size:20px}.map-semantic-actions button{width:46px;height:56px;font-size:30px}.map-spatial-canvas{top:208px;right:calc(var(--context-rail) + 64px);bottom:calc(var(--insight-height) + 64px)}.map-empty-overlay.map-county-empty{left:calc((100% - var(--context-rail) - 44px) / 2);top:calc(79px + (100% - var(--insight-height)) / 2)}.map-coverage>span{font-size:20px}.map-coverage>span>b{font-size:22px}.place-aggregate-symbol{flex-basis:100px;width:100px;height:100px}.map-place-overview>.place-aggregate{--aggregate-anchor-x:58px;gap:18px;max-width:440px;padding:14px 20px 14px 10px}.map-place-overview>.place-aggregate.compact{width:116px;height:116px}.place-aggregate-label b{max-width:290px;font-size:26px}.place-aggregate-label small{max-width:310px;font-size:20px}.map-unassigned-dock{bottom:calc(var(--insight-height) + 58px);width:auto;padding:13px 16px;left:30px}.map-unassigned-dock>b{font-size:18px}.map-unassigned-dock span b{font-size:17px}.map-unassigned-dock span small,.map-unassigned-dock>em{font-size:14px}.map-place-overview>.place-building-object{gap:18px;padding:13px 21px 13px 13px;transform:translate(-64px,-50%)}.map-place-overview>.place-building-object:hover,.map-place-overview>.place-building-object:focus-visible{transform:translate(-64px,-50%)scale(1.04)}.place-building-object-glyph{flex-basis:88px;width:88px;height:82px}.place-building-object-glyph i:first-child{width:39px;height:52px;left:5px}.place-building-object-glyph i:nth-child(2){width:31px;height:68px;right:5px}.place-building-object-glyph i:nth-child(3){width:29px;height:21px;right:30px}.place-building-object>span:last-child b{font-size:21px}.place-building-object>span:last-child small{font-size:16px}.map-place-overview>.place-building-object.compact{width:104px;height:104px;padding:7px;transform:translate(-130px,-50%)}.map-place-overview>.place-building-object.compact:hover,.map-place-overview>.place-building-object.compact:focus-visible{transform:translate(-130px,-50%)scale(1.08)}.map-place-overview>.place-building-object.compact:after{width:78px}.place-building-object.compact .place-building-object-glyph{flex-basis:82px;width:82px;height:78px}.place-building-object.compact .place-building-object-glyph i:first-child{width:36px;height:48px;left:5px}.place-building-object.compact .place-building-object-glyph i:nth-child(2){width:28px;height:62px;right:5px}.place-building-object.compact .place-building-object-glyph i:nth-child(3){width:27px;height:18px;right:27px}.map-place-overview>.place-building-object.compact>span:last-child{top:114px}.map-building-direct-label{border-left-width:3px;gap:4px;max-width:260px;padding:6px 10px}.map-building-direct-label b{font-size:18px}.map-building-direct-label small{font-size:14px}.map-coordinate-note,.map-legend{bottom:calc(var(--insight-height) + 58px);font-size:21px}.map-coordinate-note{left:30px}.map-legend{right:calc(var(--context-rail) + 44px)}.map-legend summary{padding:12px 16px;font-size:18px}.map-legend>div{gap:12px 28px;padding:15px 20px}.trend-chart-wrap,.device-detail-empty{height:calc(100% - 124px)}.alert-list{max-height:calc(100% - 124px)}.alert-row{grid-template-columns:38px 1fr 14px;gap:14px;padding:16px 8px}.alert-icon{width:34px;height:34px;font-size:15px}.alert-row b{font-size:23px}.alert-row small{font-size:19px}.device-detail-360{height:100%;padding:0}.device-inspector-header{padding:25px 26px 21px}.device-inspector-kicker>span{font-size:15px}.device-inspector-kicker button{width:40px;height:40px;font-size:25px}.device-identity h2{font-size:28px}.device-identity p{font-size:18px}.device-dual-status span,.device-freshness b{font-size:17px}.device-inspector-body{padding:22px 25px 28px}.device-section-heading h3{font-size:20px}.device-section-heading>span{font-size:15px}.device-primary-data .latest-metrics b{font-size:26px}.device-primary-data .latest-metrics b small,.device-primary-data .latest-metrics em,.device-freshness small{font-size:15px}.device-detail-columns{grid-template-columns:minmax(0,1fr)}.device-detail-columns p,.related-assets>span,.latest-metrics>span,.recent-events>span{font-size:17px}.related-assets button small,.latest-metrics small,.recent-events small{font-size:16px}.related-assets button b,.latest-metrics b,.recent-events b{font-size:18px}.trend-summary span,.trend-summary small{font-size:15px}.trend-summary b{font-size:20px}.load-panel .energy-analysis{grid-template-rows:54px minmax(0,1fr) auto;gap:12px 18px;height:calc(100% - 124px);padding:16px 22px}.energy-scope-tabs{gap:9px}.energy-scope-tabs button{gap:10px;height:54px;padding:0 14px}.energy-scope-tabs button small{font-size:15px}.energy-scope-tabs button span{font-size:18px}.load-panel .energy-comparison>span{padding:14px}.load-panel .energy-comparison small{font-size:19px}.load-panel .energy-comparison b{font-size:38px}.load-panel .energy-comparison i,.load-panel .energy-bars i,.load-panel .energy-change span{font-size:17px}.load-panel .energy-change b{font-size:23px}.load-panel .energy-visual{grid-template-columns:156px minmax(0,1fr);gap:18px}.energy-orbit{width:146px;height:146px}.energy-orbit .orbit-track,.energy-orbit .orbit-value.previous{stroke-width:6px}.energy-orbit .orbit-track.current,.energy-orbit .orbit-value.current{stroke-width:9px}.energy-orbit>span b{font-size:19px}.energy-orbit>span small{font-size:13px}.energy-bars span{grid-template-columns:58px minmax(0,1fr) 50px}.energy-bars span>small{font-size:16px}.map-point{width:68px;height:68px;margin:-34px}.point-core{inset:14px}.point-health{width:14px;height:14px;top:27px;left:27px}.point-label{min-width:280px;padding:14px 18px;font-size:21px;left:50px}.point-label b{font-size:24px}.point-label>small{margin-top:7px;font-size:16px}.map-alert-ripple,.amap-spatial-effect.alert{width:112px;height:112px}.map-focus-lens,.amap-spatial-effect.focus{background:linear-gradient(var(--cyan) 0 0) left top / 30px 3px no-repeat, linear-gradient(var(--cyan) 0 0) left top / 3px 30px no-repeat, linear-gradient(var(--cyan) 0 0) right top / 30px 3px no-repeat, linear-gradient(var(--cyan) 0 0) right top / 3px 30px no-repeat, linear-gradient(var(--cyan) 0 0) left bottom / 30px 3px no-repeat, linear-gradient(var(--cyan) 0 0) left bottom / 3px 30px no-repeat, linear-gradient(var(--cyan) 0 0) right bottom / 30px 3px no-repeat, linear-gradient(var(--cyan) 0 0) right bottom / 3px 30px no-repeat;width:96px;height:96px;filter:drop-shadow(0 0 12px rgb(var(--pv-tone-78c8d8) / .42))}.map-focus-lens:before,.amap-spatial-effect.focus:before{width:126px}.map-focus-lens:after,.amap-spatial-effect.focus:after{height:126px}.road-segments-fallback .selected-path-halo{stroke-width:11px}.road-segments-fallback .selected-path-center{stroke-width:.7px}.login-shell{grid-template-columns:minmax(1020px,1360px) 860px;gap:300px;padding:128px}.login-context{min-height:1020px;padding:100px 0}.login-context>span{font-size:26px}.login-context h2{margin:56px 0 40px;font-size:132px}.login-context>p{max-width:1120px;font-size:32px}.login-context dl{max-width:1120px;margin-top:92px}.login-context dl div{padding:32px 36px}.login-context dt{font-size:22px}.login-context dd{margin-top:14px;font-size:24px}.login-map-motif{background-size:48px 48px;width:440px;height:300px}.login-map-motif b{font-size:20px}.login-panel{width:860px;padding:84px}.login-brand{gap:36px;padding-bottom:60px}.login-brand .brand-mark{margin:0 14px;transform:scale(1.8)}.login-brand h1{font-size:50px}.login-brand p,.login-panel label{font-size:24px}.login-panel form{gap:38px;padding:60px 0 44px}.login-panel input,.login-panel form>button{height:92px;font-size:26px}.login-panel>small{font-size:20px}.admin-shell{grid-template-columns:536px minmax(0,1fr)}.admin-sidebar{padding:60px 44px}.admin-brand{gap:30px;padding:0 20px 60px}.admin-brand .brand-mark{margin:0 12px;transform:scale(1.8)}.admin-brand b{font-size:30px}.admin-brand small{font-size:20px}.admin-sidebar nav{gap:10px;margin-top:56px}.admin-sidebar nav a{padding:28px 30px;font-size:26px}.admin-account{padding:40px 24px 0}.admin-account span{font-size:26px}.admin-account small{font-size:22px}.admin-account button{height:76px;font-size:24px}.admin-workspace{justify-self:center;width:100%;max-width:3200px;padding:0 96px 128px}.admin-topbar{min-height:232px}.admin-topbar span,.admin-card-head span,.admin-modal>span{font-size:22px}.admin-topbar h1{font-size:56px}.admin-topbar a{font-size:24px}.admin-page{gap:40px;padding-top:56px}.admin-card-head{min-height:152px;padding:0 48px}.admin-card-head h2{font-size:34px}.admin-card-head small{font-size:22px}.admin-form{gap:30px;padding:48px}.admin-form label,.inventory-import label{font-size:24px}.admin-form label>small{font-size:20px}.admin-form input,.admin-form select,.admin-filters input,.admin-filters select,.admin-form>button{height:88px;font-size:24px}.admin-filters{gap:24px;padding:36px 48px}.admin-table th{padding:26px 32px;font-size:22px}.admin-table td{padding:30px 32px;font-size:24px}.admin-table td small{font-size:20px}.table-actions button,.status-pill{font-size:21px}.inventory-file-action{height:80px;font-size:22px}.imports-grid{gap:40px}.imports-intro .admin-help{padding:0 48px 44px;font-size:22px}.imports-steps{gap:24px;padding:40px 48px 28px}.imports-steps li{gap:20px;padding:24px;font-size:22px}.imports-steps b{width:48px;height:48px;font-size:22px}.import-source-body{gap:36px;min-height:388px;padding:40px 48px 48px}.import-source-body>p{font-size:22px}.inventory-archive-missing{max-width:720px;font-size:24px}.inventory-archive-missing small{font-size:20px}.import-source-warning{padding:20px 24px}.import-review-actions{gap:40px;padding:40px 48px}.import-review-actions b{font-size:26px}.import-review-actions span{font-size:20px}.import-review-actions .table-actions{gap:16px}.batch-configuration-summary{padding:0 48px 48px;font-size:22px}.import-impact-group{margin-top:24px;padding:28px}.import-impact-group h3{margin-bottom:16px;font-size:22px}.import-issue-count{margin:0 48px 44px;padding:20px 24px;font-size:22px}}@media (prefers-reduced-motion:reduce){.map-place-overview>.place-aggregate,.map-place-overview>.place-building-object,.map-building-plan-shape polygon,.map-building-volume polygon,.map-building-direct-label,.point-label{transition:none}.map-state-card>i:before,.map-loading>i,.map-alert-ripple:before,.map-alert-ripple>i,.amap-spatial-effect.alert:before,.amap-spatial-effect.alert>i,.map-focus-lens,.map-focus-lens>i,.amap-spatial-effect.focus,.amap-spatial-effect.focus>i,.map-place-overview>.place-aggregate,.map-point,.map-point.selected .point-label,.road-segments-fallback .selected-path-halo,.road-segments-fallback .selected-path-center,.map-state-change,.amap-spatial-effect.state-change,.metric-value-acquire,.login-panel,.admin-page>.admin-card,.context-rail.has-selection .device-panel,.trend-summary,.energy-orbit .orbit-value,.energy-bars em{animation:none}.dashboard-kpis .metric-card,.login-panel form>button,.admin-sidebar nav a,.admin-entry,.profile-button,.context-panel,.trend-panel,.load-panel,.alert-row{transition:none}.map-alert-ripple:before,.map-alert-ripple>i,.amap-spatial-effect.alert:before,.amap-spatial-effect.alert>i{opacity:.28}}.county-overview{min-height:100vh;color:rgb(var(--pv-tone-d7e7e4));background:rgb(var(--pv-tone-071619));font-family:var(--font-sans,Inter, sans-serif);overflow:hidden}.county-overview:before{content:"";pointer-events:none;background:radial-gradient(circle at 50% 42%, rgb(var(--pv-tone-23393c) / .86) 0, rgb(var(--pv-tone-13272a) / .9) 40%, rgb(var(--pv-tone-09191c) / .96) 76%, rgb(var(--pv-tone-061315)) 100%), rgb(var(--pv-tone-071619));position:fixed;inset:0}.county-overview-header{z-index:8;pointer-events:none;justify-content:space-between;align-items:center;padding:22px 28px;display:flex;position:absolute;inset:0 0 auto}.overview-brand,.overview-account{pointer-events:auto}.overview-brand{align-items:center;display:flex}.county-overview .brand-mark i{background:rgb(var(--pv-tone-67e0b1));box-shadow:0 0 12px rgb(var(--pv-tone-67e0b1) / .24)}.overview-account button,.view-reset,.overview-enter{border:1px solid rgb(var(--pv-tone-84c4b8) / .24);color:rgb(var(--pv-tone-b9cbc7));background:rgb(var(--pv-tone-051417) / .82);box-shadow:0 9px 28px rgb(var(--pv-tone-000000) / .28), inset 0 1px 0 rgb(var(--pv-tone-ffffff) / .06);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;border-radius:50%;place-items:center;padding:0;transition:color .2s,border-color .2s,background .2s,transform .2s;display:grid}.overview-account button{width:32px;height:32px;font-size:18px;line-height:1}.view-reset{z-index:7;width:40px;height:40px;font-size:20px;position:absolute;top:7%;right:4%}.overview-enter{z-index:7;opacity:.82;width:44px;height:44px;position:absolute;bottom:7%;right:4%}.overview-enter b{color:inherit;font-size:20px;font-weight:500}.overview-account button:hover,.view-reset:hover,.overview-enter:hover{color:rgb(var(--pv-tone-d9fff0));border-color:rgb(var(--pv-tone-67e0b1) / .62);background:rgb(var(--pv-tone-0c2728) / .96)}.view-reset:hover{transform:rotate(-32deg)}.county-overview-stage{isolation:isolate;min-height:100vh;position:relative}.county-model-wrap{z-index:2;cursor:grab;touch-action:none;width:min(82vw,106vh);height:min(82vw,106vh);position:absolute;top:47%;left:50%;transform:translate(-50%,-50%)}.county-model-wrap.is-dragging{cursor:grabbing}.county-model{transform-origin:50%;transform-style:preserve-3d;filter:drop-shadow(0 38px 30px rgb(var(--pv-tone-000000) / .34));transition:filter .25s;position:absolute;inset:0}.county-model-wrap:hover .county-model{filter:drop-shadow(0 42px 34px rgb(var(--pv-tone-000000) / .42))}.county-map-svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.county-surface{fill:rgb(var(--pv-tone-1b2d31));stroke:rgb(var(--pv-tone-57736f));stroke-width:1px;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 12px rgb(var(--pv-tone-67e0b1) / .08))}.county-extrusion{stroke:rgb(var(--pv-tone-263c3e));stroke-width:.5px;vector-effect:non-scaling-stroke}.extrusion-1{fill:rgb(var(--pv-tone-142528))}.extrusion-2{fill:rgb(var(--pv-tone-0f2023))}.extrusion-3{fill:rgb(var(--pv-tone-0a191c))}.county-context-road,.model-road{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.context-motorway{stroke:rgb(var(--pv-tone-78928f));stroke-width:1.35px;opacity:.88;filter:drop-shadow(0 1px 2px rgb(var(--pv-tone-000000) / .44))}.context-trunk{stroke:rgb(var(--pv-tone-667f7c));stroke-width:1.1px;opacity:.84}.context-primary{stroke:rgb(var(--pv-tone-58726f));stroke-width:.9px;opacity:.8}.context-secondary{stroke:rgb(var(--pv-tone-49625f));stroke-width:.68px;opacity:.72}.context-tertiary{stroke:rgb(var(--pv-tone-3c5553));stroke-width:.48px;opacity:.66}.county-road-label{fill:rgb(var(--pv-tone-9db2ae));stroke:rgb(var(--pv-tone-071619) / .96);stroke-width:.52px;paint-order:stroke fill;pointer-events:none;font-size:1.35px;font-weight:650}.road-corridor{stroke:rgb(var(--pv-tone-8fa5a1));stroke-width:7px;opacity:.14}.business-road{stroke-width:2px;opacity:.98}.business-road.status-online{stroke:rgb(var(--pv-tone-67e0b1))}.business-road.status-delayed{stroke:rgb(var(--pv-tone-efbd6a))}.business-road.status-offline{stroke:rgb(var(--pv-tone-f2786d))}.business-road.status-unknown{stroke:rgb(var(--pv-tone-7e9295));stroke-dasharray:3 2}.county-place-aggregate .aggregate-halo{fill:none;stroke:none}.county-place-aggregate .aggregate-ring{fill:none;stroke:rgb(var(--pv-tone-2d8c76));stroke-width:.72px;vector-effect:non-scaling-stroke}.county-place-aggregate .aggregate-core{fill:rgb(var(--pv-tone-278d74));stroke:rgb(var(--pv-tone-f7faf8));stroke-width:.42px;vector-effect:non-scaling-stroke;filter:drop-shadow(0 1px 2px rgb(var(--pv-tone-1c453b) / .4))}.county-place-aggregate.delayed .aggregate-ring{stroke:rgb(var(--pv-tone-bd8326))}.county-place-aggregate.delayed .aggregate-core{fill:rgb(var(--pv-tone-bd8326))}.county-place-aggregate.offline .aggregate-ring{stroke:rgb(var(--pv-tone-d4574e));stroke-dasharray:1.5 1}.county-place-aggregate.offline .aggregate-core{fill:rgb(var(--pv-tone-8b7470))}.county-place-aggregate.unknown .aggregate-core{fill:rgb(var(--pv-tone-72817f))}.county-place-aggregate.has-alert .aggregate-halo{fill:none;stroke:rgb(var(--pv-tone-d4574e));stroke-width:.5px;vector-effect:non-scaling-stroke}.county-place-aggregate.is-building .aggregate-building{fill:rgb(var(--pv-tone-278d74));stroke:rgb(var(--pv-tone-f7faf8));stroke-width:.3px;vector-effect:non-scaling-stroke;filter:drop-shadow(0 1px 2px rgb(var(--pv-tone-1c453b) / .45))}.county-place-aggregate.is-building.delayed .aggregate-building{fill:rgb(var(--pv-tone-bd8326))}.county-place-aggregate.is-building.offline .aggregate-building{fill:rgb(var(--pv-tone-8b7470))}.county-place-aggregate.is-building.unknown .aggregate-building{fill:rgb(var(--pv-tone-72817f))}.county-business-road,.county-place-aggregate{cursor:pointer;outline:none}.county-business-road:focus .business-road,.county-place-aggregate:focus .aggregate-ring{stroke:rgb(var(--pv-tone-245d79));filter:drop-shadow(0 0 2px rgb(var(--pv-tone-245d79) / .55))}.county-data-state{z-index:8;border:1px solid rgb(var(--pv-tone-f48b82) / .42);color:rgb(var(--pv-tone-ffc0b9));background:rgb(var(--pv-tone-341f20) / .8);border-radius:6px;padding:7px 10px;font-size:10px;position:absolute;bottom:18px;left:22px}.dashboard-shell.dashboard-v05.county-scene-active{height:100vh;min-height:0;padding:0}.county-scene-active .workspace-stage{min-height:100vh;display:block}.county-scene-active .dashboard-kpis,.county-scene-active .context-rail,.county-scene-active .dashboard-insights,.county-scene-active .dashboard-state-notice,.county-scene-active .dashboard-map-panel>.panel-header{display:none}.county-scene-active .dashboard-map-panel{border:0;border-radius:0;position:absolute;inset:0}.lamp-map-scene-stack,.lamp-map-scene{position:absolute;inset:0;overflow:hidden}.lamp-map-scene{opacity:0;pointer-events:none;transition:opacity .44s,transform .6s cubic-bezier(.16,1,.3,1),filter .6s}.lamp-map-scene.is-active{opacity:1;pointer-events:auto;filter:none;transform:scale(1)}.county-map-scene.is-hidden{filter:blur(4px);transform:scale(1.045)}.spatial-map-scene.is-hidden{filter:blur(3px);transform:scale(.985)}.county-overview{animation:.52s cubic-bezier(.16,1,.3,1) county-scene-arrive}.dashboard-shell.dashboard-v05:not(.county-scene-active) .dashboard-map-panel{animation:.56s cubic-bezier(.16,1,.3,1) spatial-scene-arrive}.dashboard-shell.dashboard-v05:not(.county-scene-active) .dashboard-kpis,.dashboard-shell.dashboard-v05:not(.county-scene-active) .context-rail,.dashboard-shell.dashboard-v05:not(.county-scene-active) .dashboard-insights{animation:.42s .1s both workspace-chrome-arrive}@keyframes county-scene-arrive{0%{opacity:0;filter:blur(4px);transform:scale(1.035)}to{opacity:1;filter:none;transform:scale(1)}}@keyframes spatial-scene-arrive{0%{opacity:.25;filter:blur(3px);transform:scale(.985)}to{opacity:1;filter:none;transform:scale(1)}}@keyframes workspace-chrome-arrive{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@media (width<=900px){.county-overview-header{padding:18px}.county-model-wrap{width:min(128vw,105vh);height:min(128vw,105vh);top:46%}.view-reset{top:8%;right:6%}.overview-enter{bottom:7%;right:6%}}@media (prefers-reduced-motion:reduce){.lamp-map-scene{transition-duration:.01ms}.county-overview,.dashboard-shell.dashboard-v05:not(.county-scene-active) .dashboard-map-panel,.dashboard-shell.dashboard-v05:not(.county-scene-active) .dashboard-kpis,.dashboard-shell.dashboard-v05:not(.county-scene-active) .context-rail,.dashboard-shell.dashboard-v05:not(.county-scene-active) .dashboard-insights{animation-duration:.01ms;animation-delay:0s}}
