diff --git a/datagenerators/output/radarcities.json b/datagenerators/output/radarcities.json index 7459942..adac848 100644 --- a/datagenerators/output/radarcities.json +++ b/datagenerators/output/radarcities.json @@ -14,46 +14,16 @@ "lat": 47.6062, "lon": -122.3321 }, - { - "name": "Portland", - "lat": 45.5152, - "lon": -122.6784 - }, { "name": "San Francisco", "lat": 37.7749, "lon": -122.4194 }, - { - "name": "Sacramento", - "lat": 38.5816, - "lon": -121.4944 - }, - { - "name": "Fresno", - "lat": 36.7378, - "lon": -119.7871 - }, - { - "name": "Bakersfield", - "lat": 35.3733, - "lon": -119.0187 - }, { "name": "Los Angeles", "lat": 34.0522, "lon": -118.2437 }, - { - "name": "San Diego", - "lat": 32.7153, - "lon": -117.1573 - }, - { - "name": "Las Vegas", - "lat": 36.1699, - "lon": -115.1398 - }, { "name": "Phoenix", "lat": 33.4484, @@ -99,31 +69,11 @@ "lat": 43.6532, "lon": -79.3832 }, - { - "name": "Ottawa", - "lat": 45.4215, - "lon": -75.6972 - }, { "name": "Montreal", "lat": 45.5019, "lon": -73.5674 }, - { - "name": "Quebec City", - "lat": 46.8139, - "lon": -71.208 - }, - { - "name": "Calgary", - "lat": 51.0447, - "lon": -114.0719 - }, - { - "name": "Edmonton", - "lat": 53.5461, - "lon": -113.4938 - }, { "name": "New York", "lat": 40.7128, @@ -134,31 +84,16 @@ "lat": 42.3601, "lon": -71.0589 }, + { + "name": "Reykjavik", + "lat": 64.1466, + "lon": -21.9426 + }, { "name": "Mexico City", "lat": 19.4326, "lon": -99.1332 }, - { - "name": "Guadalajara", - "lat": 20.6597, - "lon": -103.3496 - }, - { - "name": "Monterrey", - "lat": 25.6866, - "lon": -100.3161 - }, - { - "name": "Tijuana", - "lat": 32.5149, - "lon": -117.0382 - }, - { - "name": "Merida", - "lat": 20.9674, - "lon": -89.5926 - }, { "name": "Guatemala City", "lat": 14.6349, @@ -179,76 +114,16 @@ "lat": 18.4655, "lon": -66.1057 }, - { - "name": "Port-au-Prince", - "lat": 18.5944, - "lon": -72.3074 - }, - { - "name": "Kingston", - "lat": 17.9712, - "lon": -76.7926 - }, - { - "name": "Nassau", - "lat": 25.0343, - "lon": -77.3963 - }, - { - "name": "Panama City", - "lat": 8.9824, - "lon": -79.5199 - }, - { - "name": "San Jose", - "lat": 9.9281, - "lon": -84.0907 - }, - { - "name": "Reykjavik", - "lat": 64.1466, - "lon": -21.9426 - }, { "name": "Bogota", "lat": 4.711, "lon": -74.0721 }, - { - "name": "Caracas", - "lat": 10.4806, - "lon": -66.9036 - }, - { - "name": "Maracaibo", - "lat": 10.6545, - "lon": -71.635 - }, - { - "name": "Georgetown", - "lat": 6.8013, - "lon": -58.1551 - }, - { - "name": "Paramaribo", - "lat": 5.852, - "lon": -55.2038 - }, - { - "name": "Cayenne", - "lat": 4.9224, - "lon": -52.3135 - }, { "name": "Quito", "lat": -0.1807, "lon": -78.4678 }, - { - "name": "Guayaquil", - "lat": -2.1894, - "lon": -79.8891 - }, { "name": "Lima", "lat": -12.0464, @@ -259,61 +134,21 @@ "lat": -16.4897, "lon": -68.1193 }, - { - "name": "Santa Cruz", - "lat": -17.7833, - "lon": -63.1821 - }, - { - "name": "Sucre", - "lat": -19.0333, - "lon": -65.2597 - }, { "name": "Santiago", "lat": -33.4489, "lon": -70.6693 }, - { - "name": "Valparaiso", - "lat": -33.0472, - "lon": -71.6127 - }, - { - "name": "La Serena", - "lat": -29.9045, - "lon": -71.2489 - }, { "name": "Buenos Aires", "lat": -34.6037, "lon": -58.3816 }, - { - "name": "Cordoba", - "lat": -31.4201, - "lon": -64.1888 - }, - { - "name": "Rosario", - "lat": -32.9442, - "lon": -60.6505 - }, - { - "name": "Mendoza", - "lat": -32.8895, - "lon": -68.8458 - }, { "name": "Montevideo", "lat": -34.9011, "lon": -56.1645 }, - { - "name": "Asuncion", - "lat": -25.2637, - "lon": -57.5759 - }, { "name": "Sao Paulo", "lat": -23.5558, @@ -324,41 +159,11 @@ "lat": -22.9068, "lon": -43.1729 }, - { - "name": "Brasilia", - "lat": -15.7975, - "lon": -47.8919 - }, - { - "name": "Salvador", - "lat": -12.9714, - "lon": -38.5014 - }, - { - "name": "Fortaleza", - "lat": -3.7327, - "lon": -38.527 - }, { "name": "Recife", "lat": -8.0476, "lon": -34.877 }, - { - "name": "Manaus", - "lat": -3.119, - "lon": -60.0217 - }, - { - "name": "Belem", - "lat": -1.4558, - "lon": -48.4902 - }, - { - "name": "Porto Alegre", - "lat": -30.0346, - "lon": -51.2177 - }, { "name": "London", "lat": 51.5072, @@ -374,26 +179,6 @@ "lat": 48.8566, "lon": 2.3522 }, - { - "name": "Marseille", - "lat": 43.2965, - "lon": 5.3698 - }, - { - "name": "Lyon", - "lat": 45.764, - "lon": 4.8357 - }, - { - "name": "Nice", - "lat": 43.7102, - "lon": 7.262 - }, - { - "name": "Toulouse", - "lat": 43.6047, - "lon": 1.4442 - }, { "name": "Amsterdam", "lat": 52.3676, @@ -404,21 +189,6 @@ "lat": 50.8503, "lon": 4.3517 }, - { - "name": "Antwerp", - "lat": 51.2194, - "lon": 4.4025 - }, - { - "name": "Rotterdam", - "lat": 51.9244, - "lon": 4.4777 - }, - { - "name": "Luxembourg", - "lat": 49.6116, - "lon": 6.1319 - }, { "name": "Berlin", "lat": 52.52, @@ -429,56 +199,11 @@ "lat": 53.5511, "lon": 9.9937 }, - { - "name": "Munich", - "lat": 48.1351, - "lon": 11.582 - }, - { - "name": "Cologne", - "lat": 50.9375, - "lon": 6.9603 - }, - { - "name": "Frankfurt", - "lat": 50.1109, - "lon": 8.6821 - }, - { - "name": "Stuttgart", - "lat": 48.7758, - "lon": 9.1829 - }, - { - "name": "Dusseldorf", - "lat": 51.2277, - "lon": 6.7735 - }, { "name": "Madrid", "lat": 40.4168, "lon": -3.7038 }, - { - "name": "Barcelona", - "lat": 41.3851, - "lon": 2.1734 - }, - { - "name": "Valencia", - "lat": 39.4699, - "lon": -0.3763 - }, - { - "name": "Seville", - "lat": 37.3891, - "lon": -5.9845 - }, - { - "name": "Bilbao", - "lat": 43.263, - "lon": -2.935 - }, { "name": "Lisbon", "lat": 38.7223, @@ -494,16 +219,6 @@ "lat": 45.4642, "lon": 9.19 }, - { - "name": "Naples", - "lat": 40.8518, - "lon": 14.2681 - }, - { - "name": "Turin", - "lat": 45.0703, - "lon": 7.6869 - }, { "name": "Vienna", "lat": 48.2082, @@ -519,91 +234,21 @@ "lat": 52.2297, "lon": 21.0122 }, - { - "name": "Krakow", - "lat": 50.0647, - "lon": 19.945 - }, - { - "name": "Budapest", - "lat": 47.4979, - "lon": 19.0402 - }, - { - "name": "Bratislava", - "lat": 48.1486, - "lon": 17.1077 - }, - { - "name": "Ljubljana", - "lat": 46.0569, - "lon": 14.5058 - }, - { - "name": "Zagreb", - "lat": 45.815, - "lon": 15.9819 - }, - { - "name": "Belgrade", - "lat": 44.7866, - "lon": 20.4489 - }, - { - "name": "Sofia", - "lat": 42.6977, - "lon": 23.3219 - }, - { - "name": "Bucharest", - "lat": 44.4268, - "lon": 26.1025 - }, { "name": "Stockholm", "lat": 59.3293, "lon": 18.0686 }, - { - "name": "Gothenburg", - "lat": 57.7089, - "lon": 11.9746 - }, { "name": "Oslo", "lat": 59.9139, "lon": 10.7522 }, - { - "name": "Bergen", - "lat": 60.3913, - "lon": 5.3221 - }, - { - "name": "Copenhagen", - "lat": 55.6761, - "lon": 12.5683 - }, { "name": "Helsinki", "lat": 60.1699, "lon": 24.9384 }, - { - "name": "Tallinn", - "lat": 59.437, - "lon": 24.7536 - }, - { - "name": "Riga", - "lat": 56.9496, - "lon": 24.1052 - }, - { - "name": "Vilnius", - "lat": 54.6872, - "lon": 25.2797 - }, { "name": "Athens", "lat": 37.9838, @@ -620,54 +265,9 @@ "lon": 30.5234 }, { - "name": "Moscow", - "lat": 55.7558, - "lon": 37.6173 - }, - { - "name": "Saint Petersburg", - "lat": 59.9311, - "lon": 30.3609 - }, - { - "name": "Kazan", - "lat": 55.8304, - "lon": 49.0661 - }, - { - "name": "Nizhny Novgorod", - "lat": 56.3269, - "lon": 44.0059 - }, - { - "name": "Yekaterinburg", - "lat": 56.8389, - "lon": 60.6057 - }, - { - "name": "Novosibirsk", - "lat": 55.0084, - "lon": 82.9357 - }, - { - "name": "Vladivostok", - "lat": 43.1332, - "lon": 131.9113 - }, - { - "name": "Rabat", - "lat": 34.0209, - "lon": -6.8416 - }, - { - "name": "Marrakech", - "lat": 31.6295, - "lon": -7.9811 - }, - { - "name": "Fez", - "lat": 34.0331, - "lon": -5.0003 + "name": "Cairo", + "lat": 30.0444, + "lon": 31.2357 }, { "name": "Casablanca", @@ -675,334 +275,24 @@ "lon": -7.5898 }, { - "name": "Algiers", - "lat": 36.7538, - "lon": 3.0588 - }, - { - "name": "Oran", - "lat": 35.6987, - "lon": -0.6349 - }, - { - "name": "Constantine", - "lat": 36.365, - "lon": 6.6147 - }, - { - "name": "Tunis", - "lat": 36.8065, - "lon": 10.1815 - }, - { - "name": "Sfax", - "lat": 34.7406, - "lon": 10.7603 - }, - { - "name": "Tripoli", - "lat": 32.8872, - "lon": 13.1913 - }, - { - "name": "Benghazi", - "lat": 32.1167, - "lon": 20.0667 - }, - { - "name": "Cairo", - "lat": 30.0444, - "lon": 31.2357 - }, - { - "name": "Alexandria", - "lat": 31.2001, - "lon": 29.9187 - }, - { - "name": "Luxor", - "lat": 25.6872, - "lon": 32.6396 - }, - { - "name": "Aswan", - "lat": 24.0889, - "lon": 32.8998 - }, - { - "name": "Dakar", - "lat": 14.7167, - "lon": -17.4677 - }, - { - "name": "Saint-Louis", - "lat": 16.0179, - "lon": -16.4896 - }, - { - "name": "Banjul", - "lat": 13.4549, - "lon": -16.579 - }, - { - "name": "Bissau", - "lat": 11.8817, - "lon": -15.6177 - }, - { - "name": "Conakry", - "lat": 9.6412, - "lon": -13.5784 - }, - { - "name": "Freetown", - "lat": 8.4657, - "lon": -13.2317 - }, - { - "name": "Monrovia", - "lat": 6.3156, - "lon": -10.8074 - }, - { - "name": "Abidjan", - "lat": 5.36, - "lon": -4.0083 - }, - { - "name": "Yamoussoukro", - "lat": 6.8276, - "lon": -5.2893 + "name": "Lagos", + "lat": 6.5244, + "lon": 3.3792 }, { "name": "Accra", "lat": 5.6037, "lon": -0.187 }, - { - "name": "Lomé", - "lat": 6.137, - "lon": 1.2125 - }, - { - "name": "Porto-Novo", - "lat": 6.4969, - "lon": 2.6289 - }, - { - "name": "Lagos", - "lat": 6.5244, - "lon": 3.3792 - }, - { - "name": "Ibadan", - "lat": 7.3775, - "lon": 3.947 - }, - { - "name": "Abuja", - "lat": 9.0765, - "lon": 7.3986 - }, - { - "name": "Kano", - "lat": 12.0022, - "lon": 8.592 - }, - { - "name": "Niamey", - "lat": 13.5116, - "lon": 2.1254 - }, - { - "name": "Ouagadougou", - "lat": 12.3714, - "lon": -1.5197 - }, - { - "name": "Bamako", - "lat": 12.6392, - "lon": -8.0029 - }, - { - "name": "Nouakchott", - "lat": 18.0735, - "lon": -15.9582 - }, - { - "name": "Kinshasa", - "lat": -4.4419, - "lon": 15.2663 - }, - { - "name": "Brazzaville", - "lat": -4.2634, - "lon": 15.2429 - }, - { - "name": "Lubumbashi", - "lat": -11.6876, - "lon": 27.5026 - }, - { - "name": "Bangui", - "lat": 4.3947, - "lon": 18.5582 - }, - { - "name": "Yaoundé", - "lat": 3.848, - "lon": 11.5021 - }, - { - "name": "Douala", - "lat": 4.0511, - "lon": 9.7679 - }, - { - "name": "Libreville", - "lat": 0.4162, - "lon": 9.4673 - }, - { - "name": "Malabo", - "lat": 3.75, - "lon": 8.7833 - }, - { - "name": "Sao Tome", - "lat": 0.3302, - "lon": 6.7333 - }, - { - "name": "Luanda", - "lat": 8.839, - "lon": 13.2894 - }, - { - "name": "Huambo", - "lat": 12.7761, - "lon": 15.7392 - }, - { - "name": "Khartoum", - "lat": 15.5007, - "lon": 32.5599 - }, - { - "name": "Juba", - "lat": 4.8594, - "lon": 31.5713 - }, - { - "name": "Asmara", - "lat": 15.3229, - "lon": 38.9251 - }, - { - "name": "Djibouti", - "lat": 11.5721, - "lon": 43.1456 - }, - { - "name": "Addis Ababa", - "lat": 8.9806, - "lon": 38.7578 - }, - { - "name": "Dire Dawa", - "lat": 9.6009, - "lon": 41.8501 - }, { "name": "Nairobi", "lat": -1.2864, "lon": 36.8172 }, { - "name": "Mombasa", - "lat": -4.0435, - "lon": 39.6682 - }, - { - "name": "Kampala", - "lat": 0.3476, - "lon": 32.5825 - }, - { - "name": "Kigali", - "lat": 1.9441, - "lon": 30.0619 - }, - { - "name": "Bujumbura", - "lat": 3.3614, - "lon": 29.3599 - }, - { - "name": "Dodoma", - "lat": 6.163, - "lon": 35.7516 - }, - { - "name": "Dar es Salaam", - "lat": -6.7924, - "lon": 39.2083 - }, - { - "name": "Zanzibar City", - "lat": -6.1659, - "lon": 39.2026 - }, - { - "name": "Windhoek", - "lat": -22.5609, - "lon": 17.0658 - }, - { - "name": "Walvis Bay", - "lat": -22.9575, - "lon": 14.5053 - }, - { - "name": "Gaborone", - "lat": -24.6282, - "lon": 25.9231 - }, - { - "name": "Harare", - "lat": -17.8252, - "lon": 31.0335 - }, - { - "name": "Bulawayo", - "lat": -20.1325, - "lon": 28.6265 - }, - { - "name": "Lusaka", - "lat": -15.3875, - "lon": 28.3228 - }, - { - "name": "Lilongwe", - "lat": -13.9627, - "lon": 33.7741 - }, - { - "name": "Blantyre", - "lat": -15.7861, - "lon": 35.0058 - }, - { - "name": "Maputo", - "lat": -25.9692, - "lon": 32.5732 - }, - { - "name": "Beira", - "lat": -19.7964, - "lon": 34.8845 + "name": "Addis Ababa", + "lat": 8.9806, + "lon": 38.7578 }, { "name": "Johannesburg", @@ -1014,116 +304,6 @@ "lat": -33.9249, "lon": 18.4241 }, - { - "name": "Durban", - "lat": -29.8587, - "lon": 31.0218 - }, - { - "name": "Port Elizabeth", - "lat": -33.9608, - "lon": 25.6022 - }, - { - "name": "Tehran", - "lat": 35.6892, - "lon": 51.389 - }, - { - "name": "Isfahan", - "lat": 32.6546, - "lon": 51.668 - }, - { - "name": "Shiraz", - "lat": 29.5926, - "lon": 52.5836 - }, - { - "name": "Mashhad", - "lat": 36.2605, - "lon": 59.6168 - }, - { - "name": "Baghdad", - "lat": 33.3152, - "lon": 44.3661 - }, - { - "name": "Basra", - "lat": 30.5156, - "lon": 47.7804 - }, - { - "name": "Mosul", - "lat": 36.3566, - "lon": 43.1641 - }, - { - "name": "Beirut", - "lat": 33.8938, - "lon": 35.5018 - }, - { - "name": "Damascus", - "lat": 33.5138, - "lon": 36.2765 - }, - { - "name": "Aleppo", - "lat": 36.2021, - "lon": 37.1343 - }, - { - "name": "Amman", - "lat": 31.9539, - "lon": 35.9106 - }, - { - "name": "Jerusalem", - "lat": 31.7683, - "lon": 35.2137 - }, - { - "name": "Riyadh", - "lat": 24.7136, - "lon": 46.6753 - }, - { - "name": "Jeddah", - "lat": 21.2854, - "lon": 39.2376 - }, - { - "name": "Mecca", - "lat": 21.3891, - "lon": 39.8579 - }, - { - "name": "Medina", - "lat": 24.5247, - "lon": 39.5692 - }, - { - "name": "Dammam", - "lat": 26.3927, - "lon": 50.0916 - }, - { - "name": "Kuwait City", - "lat": 29.3759, - "lon": 47.9774 - }, - { - "name": "Manama", - "lat": 26.2285, - "lon": 50.586 - }, - { - "name": "Doha", - "lat": 25.2854, - "lon": 51.531 - }, { "name": "Dubai", "lat": 25.2048, @@ -1135,45 +315,35 @@ "lon": 54.3773 }, { - "name": "Muscat", - "lat": 23.5859, - "lon": 58.4059 + "name": "Riyadh", + "lat": 24.7136, + "lon": 46.6753 }, { - "name": "Sana'a", - "lat": 15.3694, - "lon": 44.191 + "name": "Doha", + "lat": 25.2854, + "lon": 51.531 }, { - "name": "Aden", - "lat": 12.7855, - "lon": 45.0186 + "name": "Kuwait City", + "lat": 29.3759, + "lon": 47.9774 + }, + { + "name": "Jerusalem", + "lat": 31.7683, + "lon": 35.2137 + }, + { + "name": "Amman", + "lat": 31.9539, + "lon": 35.9106 }, { "name": "Karachi", "lat": 24.8607, "lon": 67.0011 }, - { - "name": "Lahore", - "lat": 31.5204, - "lon": 74.3587 - }, - { - "name": "Islamabad", - "lat": 33.6844, - "lon": 73.0479 - }, - { - "name": "Multan", - "lat": 30.1575, - "lon": 71.5249 - }, - { - "name": "Peshawar", - "lat": 34.0151, - "lon": 71.5249 - }, { "name": "Mumbai", "lat": 19.076, @@ -1184,236 +354,16 @@ "lat": 28.6139, "lon": 77.209 }, - { - "name": "Bangalore", - "lat": 12.9716, - "lon": 77.5946 - }, - { - "name": "Hyderabad", - "lat": 17.385, - "lon": 78.4867 - }, - { - "name": "Chennai", - "lat": 13.0827, - "lon": 80.2707 - }, - { - "name": "Kolkata", - "lat": 22.5726, - "lon": 88.3639 - }, - { - "name": "Ahmedabad", - "lat": 23.0225, - "lon": 72.5714 - }, - { - "name": "Pune", - "lat": 18.5204, - "lon": 73.8567 - }, - { - "name": "Surat", - "lat": 21.1702, - "lon": 72.8311 - }, - { - "name": "Jaipur", - "lat": 26.9124, - "lon": 75.7873 - }, - { - "name": "Lucknow", - "lat": 26.8467, - "lon": 80.9462 - }, - { - "name": "Kanpur", - "lat": 26.4499, - "lon": 80.3319 - }, - { - "name": "Nagpur", - "lat": 21.1458, - "lon": 79.0882 - }, - { - "name": "Indore", - "lat": 22.7196, - "lon": 75.8577 - }, - { - "name": "Visakhapatnam", - "lat": 17.6868, - "lon": 83.2185 - }, - { - "name": "Patna", - "lat": 25.5941, - "lon": 85.1376 - }, - { - "name": "Vadodara", - "lat": 22.3072, - "lon": 73.1812 - }, - { - "name": "Ghaziabad", - "lat": 28.6692, - "lon": 77.4538 - }, - { - "name": "Ludhiana", - "lat": 30.901, - "lon": 75.8573 - }, - { - "name": "Agra", - "lat": 27.1767, - "lon": 78.0081 - }, - { - "name": "Nashik", - "lat": 19.9975, - "lon": 73.7898 - }, - { - "name": "Faridabad", - "lat": 28.4089, - "lon": 77.3178 - }, - { - "name": "Meerut", - "lat": 28.9845, - "lon": 77.7064 - }, - { - "name": "Rajkot", - "lat": 22.3039, - "lon": 70.8022 - }, - { - "name": "Varanasi", - "lat": 25.3176, - "lon": 82.9739 - }, - { - "name": "Srinagar", - "lat": 34.0837, - "lon": 74.7973 - }, - { - "name": "Amritsar", - "lat": 31.634, - "lon": 74.8723 - }, - { - "name": "Jabalpur", - "lat": 23.1815, - "lon": 79.9864 - }, - { - "name": "Raipur", - "lat": 21.2514, - "lon": 81.6296 - }, - { - "name": "Coimbatore", - "lat": 11.0168, - "lon": 76.9558 - }, - { - "name": "Madurai", - "lat": 9.9252, - "lon": 78.1198 - }, - { - "name": "Mysore", - "lat": 12.2958, - "lon": 76.6394 - }, - { - "name": "Kochi", - "lat": 9.9312, - "lon": 76.2673 - }, - { - "name": "Guwahati", - "lat": 26.1445, - "lon": 91.7362 - }, - { - "name": "Chandigarh", - "lat": 30.7333, - "lon": 76.7794 - }, { "name": "Dhaka", "lat": 23.8103, "lon": 90.4125 }, - { - "name": "Chittagong", - "lat": 22.3569, - "lon": 91.7832 - }, - { - "name": "Khulna", - "lat": 22.8456, - "lon": 89.5403 - }, - { - "name": "Kathmandu", - "lat": 27.7172, - "lon": 85.324 - }, - { - "name": "Colombo", - "lat": 6.9271, - "lon": 79.8612 - }, - { - "name": "Kandy", - "lat": 7.2906, - "lon": 80.6337 - }, - { - "name": "Yangon", - "lat": 16.8661, - "lon": 96.1951 - }, - { - "name": "Mandalay", - "lat": 21.9813, - "lon": 96.0823 - }, { "name": "Bangkok", "lat": 13.7563, "lon": 100.5018 }, - { - "name": "Chiang Mai", - "lat": 18.7883, - "lon": 98.9853 - }, - { - "name": "Phuket", - "lat": 7.8804, - "lon": 98.3923 - }, - { - "name": "Vientiane", - "lat": 17.9757, - "lon": 102.6331 - }, - { - "name": "Luang Prabang", - "lat": 19.8968, - "lon": 102.141 - }, { "name": "Hanoi", "lat": 21.0278, @@ -1424,46 +374,6 @@ "lat": 10.8231, "lon": 106.6297 }, - { - "name": "Da Nang", - "lat": 16.0544, - "lon": 108.2022 - }, - { - "name": "Phnom Penh", - "lat": 11.5564, - "lon": 104.9282 - }, - { - "name": "Siem Reap", - "lat": 13.3633, - "lon": 103.8564 - }, - { - "name": "Kuala Lumpur", - "lat": 3.139, - "lon": 101.6869 - }, - { - "name": "Penang", - "lat": 5.4141, - "lon": 100.3288 - }, - { - "name": "Malacca", - "lat": 2.2008, - "lon": 102.2438 - }, - { - "name": "Johor Bahru", - "lat": 1.4927, - "lon": 103.7414 - }, - { - "name": "Kota Kinabalu", - "lat": 5.9804, - "lon": 116.0735 - }, { "name": "Singapore", "lat": 1.3521, @@ -1474,46 +384,11 @@ "lat": -6.2088, "lon": 106.8456 }, - { - "name": "Surabaya", - "lat": -7.2575, - "lon": 112.7521 - }, - { - "name": "Bandung", - "lat": -6.9175, - "lon": 107.6191 - }, - { - "name": "Medan", - "lat": 3.5952, - "lon": 98.6722 - }, - { - "name": "Makassar", - "lat": -5.1477, - "lon": 119.4327 - }, - { - "name": "Denpasar", - "lat": -8.6706, - "lon": 115.2126 - }, { "name": "Manila", "lat": 14.5995, "lon": 120.9842 }, - { - "name": "Cebu City", - "lat": 10.3157, - "lon": 123.8854 - }, - { - "name": "Davao City", - "lat": 7.1907, - "lon": 125.4553 - }, { "name": "Hong Kong", "lat": 22.3193, @@ -1525,180 +400,35 @@ "lon": 121.5654 }, { - "name": "Kaohsiung", - "lat": 22.6273, - "lon": 120.3014 - }, - { - "name": "Taichung", - "lat": 24.1477, - "lon": 120.6736 + "name": "Shanghai", + "lat": 31.2304, + "lon": 121.4737 }, { "name": "Beijing", "lat": 39.9042, "lon": 116.4074 }, - { - "name": "Shanghai", - "lat": 31.2304, - "lon": 121.4737 - }, - { - "name": "Guangzhou", - "lat": 23.1291, - "lon": 113.2644 - }, - { - "name": "Shenzhen", - "lat": 22.5431, - "lon": 114.0579 - }, - { - "name": "Chengdu", - "lat": 30.5728, - "lon": 104.0668 - }, - { - "name": "Wuhan", - "lat": 30.5928, - "lon": 114.3055 - }, - { - "name": "Hangzhou", - "lat": 30.2741, - "lon": 120.1551 - }, - { - "name": "Xi'an", - "lat": 34.3416, - "lon": 108.9398 - }, - { - "name": "Suzhou", - "lat": 31.2989, - "lon": 120.5853 - }, - { - "name": "Nanjing", - "lat": 32.0603, - "lon": 118.7969 - }, - { - "name": "Tianjin", - "lat": 39.0842, - "lon": 117.201 - }, - { - "name": "Zhengzhou", - "lat": 34.7466, - "lon": 113.6253 - }, - { - "name": "Changsha", - "lat": 28.228, - "lon": 112.9388 - }, - { - "name": "Qingdao", - "lat": 36.0671, - "lon": 120.3826 - }, - { - "name": "Shenyang", - "lat": 41.8057, - "lon": 123.4315 - }, - { - "name": "Dalian", - "lat": 38.914, - "lon": 121.6147 - }, - { - "name": "Harbin", - "lat": 45.8038, - "lon": 126.535 - }, - { - "name": "Changchun", - "lat": 43.8171, - "lon": 125.3235 - }, - { - "name": "Kunming", - "lat": 25.0389, - "lon": 102.7183 - }, { "name": "Seoul", "lat": 37.5665, "lon": 126.978 }, - { - "name": "Busan", - "lat": 35.1796, - "lon": 129.0756 - }, - { - "name": "Incheon", - "lat": 37.4563, - "lon": 126.7052 - }, - { - "name": "Daegu", - "lat": 35.8714, - "lon": 128.6014 - }, { "name": "Tokyo", "lat": 35.6762, "lon": 139.6503 }, - { - "name": "Yokohama", - "lat": 35.4437, - "lon": 139.638 - }, { "name": "Osaka", "lat": 34.6937, "lon": 135.5023 }, - { - "name": "Nagoya", - "lat": 35.1815, - "lon": 136.9066 - }, { "name": "Sapporo", "lat": 43.0618, "lon": 141.3545 }, - { - "name": "Fukuoka", - "lat": 33.5902, - "lon": 130.4017 - }, - { - "name": "Kobe", - "lat": 34.6901, - "lon": 135.1955 - }, - { - "name": "Kyoto", - "lat": 35.0116, - "lon": 135.7681 - }, - { - "name": "Sendai", - "lat": 38.2682, - "lon": 140.8694 - }, - { - "name": "Hiroshima", - "lat": 34.3853, - "lon": 132.4553 - }, { "name": "Sydney", "lat": -33.8688, @@ -1719,51 +449,6 @@ "lat": -31.9523, "lon": 115.8613 }, - { - "name": "Adelaide", - "lat": 34.9285, - "lon": 138.6007 - }, - { - "name": "Gold Coast", - "lat": 28.0167, - "lon": 153.4 - }, - { - "name": "Canberra", - "lat": 35.2809, - "lon": 149.13 - }, - { - "name": "Newcastle", - "lat": 32.9283, - "lon": 151.7817 - }, - { - "name": "Wollongong", - "lat": 34.4278, - "lon": 150.8931 - }, - { - "name": "Hobart", - "lat": 42.8821, - "lon": 147.3272 - }, - { - "name": "Darwin", - "lat": 12.4634, - "lon": 130.8456 - }, - { - "name": "Cairns", - "lat": 16.9186, - "lon": 145.7781 - }, - { - "name": "Townsville", - "lat": 19.259, - "lon": 146.8169 - }, { "name": "Auckland", "lat": -36.8509, @@ -1773,225 +458,5 @@ "name": "Wellington", "lat": -41.2866, "lon": 174.7756 - }, - { - "name": "Christchurch", - "lat": -43.532, - "lon": 172.6306 - }, - { - "name": "Hamilton", - "lat": 37.787, - "lon": 175.2793 - }, - { - "name": "Tauranga", - "lat": 37.6878, - "lon": 176.1651 - }, - { - "name": "Dunedin", - "lat": -45.8788, - "lon": 170.5028 - }, - { - "name": "Port Moresby", - "lat": -9.4438, - "lon": 147.1803 - }, - { - "name": "Lae", - "lat": -6.732, - "lon": 147.014 - }, - { - "name": "Honiara", - "lat": -9.4456, - "lon": 159.9729 - }, - { - "name": "Suva", - "lat": -18.1248, - "lon": 178.4501 - }, - { - "name": "Nouméa", - "lat": -22.2558, - "lon": 166.4125 - }, - { - "name": "Papeete", - "lat": -17.5516, - "lon": -149.5585 - }, - { - "name": "Majuro", - "lat": 7.1164, - "lon": 171.184 - }, - { - "name": "Palikir", - "lat": 6.9147, - "lon": 158.161 - }, - { - "name": "South Tarawa", - "lat": 1.3294, - "lon": 172.977 - }, - { - "name": "Funafuti", - "lat": -8.5243, - "lon": 179.1942 - }, - { - "name": "Nuku'alofa", - "lat": -21.1394, - "lon": -175.2018 - }, - { - "name": "Apia", - "lat": -13.8507, - "lon": 171.7514 - }, - { - "name": "Port Vila", - "lat": -17.7345, - "lon": 168.3207 - }, - { - "name": "Ngerulmud", - "lat": 7.5004, - "lon": 134.6243 - }, - { - "name": "Manchester", - "lat": 53.4808, - "lon": -2.2426 - }, - { - "name": "Birmingham", - "lat": 52.4862, - "lon": -1.8904 - }, - { - "name": "Leeds", - "lat": 53.8008, - "lon": -1.5491 - }, - { - "name": "Glasgow", - "lat": 55.8609, - "lon": -4.2514 - }, - { - "name": "Edinburgh", - "lat": 55.9533, - "lon": -3.1883 - }, - { - "name": "Liverpool", - "lat": 53.4084, - "lon": -2.9916 - }, - { - "name": "Newcastle", - "lat": 54.9783, - "lon": -1.6178 - }, - { - "name": "Sheffield", - "lat": 53.3811, - "lon": -1.4701 - }, - { - "name": "Bristol", - "lat": 51.4545, - "lon": -2.5879 - }, - { - "name": "Cardiff", - "lat": 51.4816, - "lon": -3.1791 - }, - { - "name": "Belfast", - "lat": 54.5973, - "lon": -5.9301 - }, - { - "name": "Aberdeen", - "lat": 57.1497, - "lon": -2.0943 - }, - { - "name": "Dundee", - "lat": 56.462, - "lon": -2.9707 - }, - { - "name": "Inverness", - "lat": 57.4778, - "lon": -4.2247 - }, - { - "name": "Portland ME", - "lat": 43.6591, - "lon": -70.2568 - }, - { - "name": "Burlington", - "lat": 44.4759, - "lon": -73.2121 - }, - { - "name": "Hartford", - "lat": 41.7658, - "lon": -72.6734 - }, - { - "name": "Providence", - "lat": 41.824, - "lon": -71.4128 - }, - { - "name": "Manchester NH", - "lat": 42.9956, - "lon": -71.4548 - }, - { - "name": "New Haven", - "lat": 41.3083, - "lon": -72.9279 - }, - { - "name": "Worcester", - "lat": 42.2626, - "lon": -71.8023 - }, - { - "name": "Portsmouth NH", - "lat": 43.0718, - "lon": -70.7626 - }, - { - "name": "Cambridge MA", - "lat": 42.3736, - "lon": -71.1097 - }, - { - "name": "Lowell", - "lat": 42.6334, - "lon": -71.3162 - }, - { - "name": "Augusta ME", - "lat": 44.3106, - "lon": -69.7795 - }, - { - "name": "Montpelier", - "lat": 44.2601, - "lon": -72.5754 } ] \ No newline at end of file diff --git a/datagenerators/radarcities-raw.json b/datagenerators/radarcities-raw.json index 530e760..2685981 100644 --- a/datagenerators/radarcities-raw.json +++ b/datagenerators/radarcities-raw.json @@ -2,14 +2,8 @@ { "name": "Anchorage", "lat": 61.2181, "lon": -149.9003 }, { "name": "Vancouver", "lat": 49.2827, "lon": -123.1207 }, { "name": "Seattle", "lat": 47.6062, "lon": -122.3321 }, - { "name": "Portland", "lat": 45.5152, "lon": -122.6784 }, { "name": "San Francisco", "lat": 37.7749, "lon": -122.4194 }, - { "name": "Sacramento", "lat": 38.5816, "lon": -121.4944 }, - { "name": "Fresno", "lat": 36.7378, "lon": -119.7871 }, - { "name": "Bakersfield", "lat": 35.3733, "lon": -119.0187 }, { "name": "Los Angeles", "lat": 34.0522, "lon": -118.2437 }, - { "name": "San Diego", "lat": 32.7153, "lon": -117.1573 }, - { "name": "Las Vegas", "lat": 36.1699, "lon": -115.1398 }, { "name": "Phoenix", "lat": 33.4484, "lon": -112.074 }, { "name": "Denver", "lat": 39.7392, "lon": -104.9903 }, { "name": "Dallas", "lat": 32.7767, "lon": -96.797 }, @@ -19,383 +13,82 @@ { "name": "Atlanta", "lat": 33.749, "lon": -84.388 }, { "name": "Miami", "lat": 25.7617, "lon": -80.1918 }, { "name": "Toronto", "lat": 43.6532, "lon": -79.3832 }, - { "name": "Ottawa", "lat": 45.4215, "lon": -75.6972 }, { "name": "Montreal", "lat": 45.5019, "lon": -73.5674 }, - { "name": "Quebec City", "lat": 46.8139, "lon": -71.208 }, - { "name": "Calgary", "lat": 51.0447, "lon": -114.0719 }, - { "name": "Edmonton", "lat": 53.5461, "lon": -113.4938 }, { "name": "New York", "lat": 40.7128, "lon": -74.006 }, { "name": "Boston", "lat": 42.3601, "lon": -71.0589 }, + { "name": "Reykjavik", "lat": 64.1466, "lon": -21.9426 }, { "name": "Mexico City", "lat": 19.4326, "lon": -99.1332 }, - { "name": "Guadalajara", "lat": 20.6597, "lon": -103.3496 }, - { "name": "Monterrey", "lat": 25.6866, "lon": -100.3161 }, - { "name": "Tijuana", "lat": 32.5149, "lon": -117.0382 }, - { "name": "Merida", "lat": 20.9674, "lon": -89.5926 }, { "name": "Guatemala City", "lat": 14.6349, "lon": -90.5069 }, { "name": "Havana", "lat": 23.1136, "lon": -82.3666 }, { "name": "Santo Domingo", "lat": 18.4861, "lon": -69.9312 }, { "name": "San Juan", "lat": 18.4655, "lon": -66.1057 }, - { "name": "Port-au-Prince", "lat": 18.5944, "lon": -72.3074 }, - { "name": "Kingston", "lat": 17.9712, "lon": -76.7926 }, - { "name": "Nassau", "lat": 25.0343, "lon": -77.3963 }, - { "name": "Panama City", "lat": 8.9824, "lon": -79.5199 }, - { "name": "San Jose", "lat": 9.9281, "lon": -84.0907 }, - { "name": "Reykjavik", "lat": 64.1466, "lon": -21.9426 }, { "name": "Bogota", "lat": 4.711, "lon": -74.0721 }, - { "name": "Caracas", "lat": 10.4806, "lon": -66.9036 }, - { "name": "Maracaibo", "lat": 10.6545, "lon": -71.635 }, - { "name": "Georgetown", "lat": 6.8013, "lon": -58.1551 }, - { "name": "Paramaribo", "lat": 5.852, "lon": -55.2038 }, - { "name": "Cayenne", "lat": 4.9224, "lon": -52.3135 }, { "name": "Quito", "lat": -0.1807, "lon": -78.4678 }, - { "name": "Guayaquil", "lat": -2.1894, "lon": -79.8891 }, { "name": "Lima", "lat": -12.0464, "lon": -77.0428 }, { "name": "La Paz", "lat": -16.4897, "lon": -68.1193 }, - { "name": "Santa Cruz", "lat": -17.7833, "lon": -63.1821 }, - { "name": "Sucre", "lat": -19.0333, "lon": -65.2597 }, { "name": "Santiago", "lat": -33.4489, "lon": -70.6693 }, - { "name": "Valparaiso", "lat": -33.0472, "lon": -71.6127 }, - { "name": "La Serena", "lat": -29.9045, "lon": -71.2489 }, { "name": "Buenos Aires", "lat": -34.6037, "lon": -58.3816 }, - { "name": "Cordoba", "lat": -31.4201, "lon": -64.1888 }, - { "name": "Rosario", "lat": -32.9442, "lon": -60.6505 }, - { "name": "Mendoza", "lat": -32.8895, "lon": -68.8458 }, { "name": "Montevideo", "lat": -34.9011, "lon": -56.1645 }, - { "name": "Asuncion", "lat": -25.2637, "lon": -57.5759 }, { "name": "Sao Paulo", "lat": -23.5558, "lon": -46.6396 }, { "name": "Rio", "lat": -22.9068, "lon": -43.1729 }, - { "name": "Brasilia", "lat": -15.7975, "lon": -47.8919 }, - { "name": "Salvador", "lat": -12.9714, "lon": -38.5014 }, - { "name": "Fortaleza", "lat": -3.7327, "lon": -38.527 }, { "name": "Recife", "lat": -8.0476, "lon": -34.877 }, - { "name": "Manaus", "lat": -3.119, "lon": -60.0217 }, - { "name": "Belem", "lat": -1.4558, "lon": -48.4902 }, - { "name": "Porto Alegre", "lat": -30.0346, "lon": -51.2177 }, { "name": "London", "lat": 51.5072, "lon": -0.1276 }, { "name": "Dublin", "lat": 53.3498, "lon": -6.2603 }, { "name": "Paris", "lat": 48.8566, "lon": 2.3522 }, - { "name": "Marseille", "lat": 43.2965, "lon": 5.3698 }, - { "name": "Lyon", "lat": 45.764, "lon": 4.8357 }, - { "name": "Nice", "lat": 43.7102, "lon": 7.262 }, - { "name": "Toulouse", "lat": 43.6047, "lon": 1.4442 }, { "name": "Amsterdam", "lat": 52.3676, "lon": 4.9041 }, { "name": "Brussels", "lat": 50.8503, "lon": 4.3517 }, - { "name": "Antwerp", "lat": 51.2194, "lon": 4.4025 }, - { "name": "Rotterdam", "lat": 51.9244, "lon": 4.4777 }, - { "name": "Luxembourg", "lat": 49.6116, "lon": 6.1319 }, { "name": "Berlin", "lat": 52.52, "lon": 13.405 }, { "name": "Hamburg", "lat": 53.5511, "lon": 9.9937 }, - { "name": "Munich", "lat": 48.1351, "lon": 11.582 }, - { "name": "Cologne", "lat": 50.9375, "lon": 6.9603 }, - { "name": "Frankfurt", "lat": 50.1109, "lon": 8.6821 }, - { "name": "Stuttgart", "lat": 48.7758, "lon": 9.1829 }, - { "name": "Dusseldorf", "lat": 51.2277, "lon": 6.7735 }, { "name": "Madrid", "lat": 40.4168, "lon": -3.7038 }, - { "name": "Barcelona", "lat": 41.3851, "lon": 2.1734 }, - { "name": "Valencia", "lat": 39.4699, "lon": -0.3763 }, - { "name": "Seville", "lat": 37.3891, "lon": -5.9845 }, - { "name": "Bilbao", "lat": 43.263, "lon": -2.935 }, { "name": "Lisbon", "lat": 38.7223, "lon": -9.1393 }, { "name": "Rome", "lat": 41.9028, "lon": 12.4964 }, { "name": "Milan", "lat": 45.4642, "lon": 9.19 }, - { "name": "Naples", "lat": 40.8518, "lon": 14.2681 }, - { "name": "Turin", "lat": 45.0703, "lon": 7.6869 }, { "name": "Vienna", "lat": 48.2082, "lon": 16.3738 }, { "name": "Prague", "lat": 50.0755, "lon": 14.4378 }, { "name": "Warsaw", "lat": 52.2297, "lon": 21.0122 }, - { "name": "Krakow", "lat": 50.0647, "lon": 19.945 }, - { "name": "Budapest", "lat": 47.4979, "lon": 19.0402 }, - { "name": "Bratislava", "lat": 48.1486, "lon": 17.1077 }, - { "name": "Ljubljana", "lat": 46.0569, "lon": 14.5058 }, - { "name": "Zagreb", "lat": 45.815, "lon": 15.9819 }, - { "name": "Belgrade", "lat": 44.7866, "lon": 20.4489 }, - { "name": "Sofia", "lat": 42.6977, "lon": 23.3219 }, - { "name": "Bucharest", "lat": 44.4268, "lon": 26.1025 }, { "name": "Stockholm", "lat": 59.3293, "lon": 18.0686 }, - { "name": "Gothenburg", "lat": 57.7089, "lon": 11.9746 }, { "name": "Oslo", "lat": 59.9139, "lon": 10.7522 }, - { "name": "Bergen", "lat": 60.3913, "lon": 5.3221 }, - { "name": "Copenhagen", "lat": 55.6761, "lon": 12.5683 }, { "name": "Helsinki", "lat": 60.1699, "lon": 24.9384 }, - { "name": "Tallinn", "lat": 59.437, "lon": 24.7536 }, - { "name": "Riga", "lat": 56.9496, "lon": 24.1052 }, - { "name": "Vilnius", "lat": 54.6872, "lon": 25.2797 }, { "name": "Athens", "lat": 37.9838, "lon": 23.7275 }, { "name": "Istanbul", "lat": 41.0082, "lon": 28.9784 }, { "name": "Kyiv", "lat": 50.4501, "lon": 30.5234 }, - { "name": "Moscow", "lat": 55.7558, "lon": 37.6173 }, - { "name": "Saint Petersburg", "lat": 59.9311, "lon": 30.3609 }, - { "name": "Kazan", "lat": 55.8304, "lon": 49.0661 }, - { "name": "Nizhny Novgorod", "lat": 56.3269, "lon": 44.0059 }, - { "name": "Yekaterinburg", "lat": 56.8389, "lon": 60.6057 }, - { "name": "Novosibirsk", "lat": 55.0084, "lon": 82.9357 }, - { "name": "Vladivostok", "lat": 43.1332, "lon": 131.9113 }, - { "name": "Rabat", "lat": 34.0209, "lon": -6.8416 }, - { "name": "Marrakech", "lat": 31.6295, "lon": -7.9811 }, - { "name": "Fez", "lat": 34.0331, "lon": -5.0003 }, - { "name": "Casablanca", "lat": 33.5731, "lon": -7.5898 }, - { "name": "Algiers", "lat": 36.7538, "lon": 3.0588 }, - { "name": "Oran", "lat": 35.6987, "lon": -0.6349 }, - { "name": "Constantine", "lat": 36.365, "lon": 6.6147 }, - { "name": "Tunis", "lat": 36.8065, "lon": 10.1815 }, - { "name": "Sfax", "lat": 34.7406, "lon": 10.7603 }, - { "name": "Tripoli", "lat": 32.8872, "lon": 13.1913 }, - { "name": "Benghazi", "lat": 32.1167, "lon": 20.0667 }, { "name": "Cairo", "lat": 30.0444, "lon": 31.2357 }, - { "name": "Alexandria", "lat": 31.2001, "lon": 29.9187 }, - { "name": "Luxor", "lat": 25.6872, "lon": 32.6396 }, - { "name": "Aswan", "lat": 24.0889, "lon": 32.8998 }, - { "name": "Dakar", "lat": 14.7167, "lon": -17.4677 }, - { "name": "Saint-Louis", "lat": 16.0179, "lon": -16.4896 }, - { "name": "Banjul", "lat": 13.4549, "lon": -16.579 }, - { "name": "Bissau", "lat": 11.8817, "lon": -15.6177 }, - { "name": "Conakry", "lat": 9.6412, "lon": -13.5784 }, - { "name": "Freetown", "lat": 8.4657, "lon": -13.2317 }, - { "name": "Monrovia", "lat": 6.3156, "lon": -10.8074 }, - { "name": "Abidjan", "lat": 5.36, "lon": -4.0083 }, - { "name": "Yamoussoukro", "lat": 6.8276, "lon": -5.2893 }, - { "name": "Accra", "lat": 5.6037, "lon": -0.187 }, - { "name": "Lomé", "lat": 6.137, "lon": 1.2125 }, - { "name": "Porto-Novo", "lat": 6.4969, "lon": 2.6289 }, + { "name": "Casablanca", "lat": 33.5731, "lon": -7.5898 }, { "name": "Lagos", "lat": 6.5244, "lon": 3.3792 }, - { "name": "Ibadan", "lat": 7.3775, "lon": 3.947 }, - { "name": "Abuja", "lat": 9.0765, "lon": 7.3986 }, - { "name": "Kano", "lat": 12.0022, "lon": 8.592 }, - { "name": "Niamey", "lat": 13.5116, "lon": 2.1254 }, - { "name": "Ouagadougou", "lat": 12.3714, "lon": -1.5197 }, - { "name": "Bamako", "lat": 12.6392, "lon": -8.0029 }, - { "name": "Nouakchott", "lat": 18.0735, "lon": -15.9582 }, - { "name": "Kinshasa", "lat": -4.4419, "lon": 15.2663 }, - { "name": "Brazzaville", "lat": -4.2634, "lon": 15.2429 }, - { "name": "Lubumbashi", "lat": -11.6876, "lon": 27.5026 }, - { "name": "Bangui", "lat": 4.3947, "lon": 18.5582 }, - { "name": "Yaoundé", "lat": 3.848, "lon": 11.5021 }, - { "name": "Douala", "lat": 4.0511, "lon": 9.7679 }, - { "name": "Libreville", "lat": 0.4162, "lon": 9.4673 }, - { "name": "Malabo", "lat": 3.75, "lon": 8.7833 }, - { "name": "Sao Tome", "lat": 0.3302, "lon": 6.7333 }, - { "name": "Luanda", "lat": 8.839, "lon": 13.2894 }, - { "name": "Huambo", "lat": 12.7761, "lon": 15.7392 }, - { "name": "Khartoum", "lat": 15.5007, "lon": 32.5599 }, - { "name": "Juba", "lat": 4.8594, "lon": 31.5713 }, - { "name": "Asmara", "lat": 15.3229, "lon": 38.9251 }, - { "name": "Djibouti", "lat": 11.5721, "lon": 43.1456 }, - { "name": "Addis Ababa", "lat": 8.9806, "lon": 38.7578 }, - { "name": "Dire Dawa", "lat": 9.6009, "lon": 41.8501 }, + { "name": "Accra", "lat": 5.6037, "lon": -0.187 }, { "name": "Nairobi", "lat": -1.2864, "lon": 36.8172 }, - { "name": "Mombasa", "lat": -4.0435, "lon": 39.6682 }, - { "name": "Kampala", "lat": 0.3476, "lon": 32.5825 }, - { "name": "Kigali", "lat": 1.9441, "lon": 30.0619 }, - { "name": "Bujumbura", "lat": 3.3614, "lon": 29.3599 }, - { "name": "Dodoma", "lat": 6.163, "lon": 35.7516 }, - { "name": "Dar es Salaam", "lat": -6.7924, "lon": 39.2083 }, - { "name": "Zanzibar City", "lat": -6.1659, "lon": 39.2026 }, - { "name": "Windhoek", "lat": -22.5609, "lon": 17.0658 }, - { "name": "Walvis Bay", "lat": -22.9575, "lon": 14.5053 }, - { "name": "Gaborone", "lat": -24.6282, "lon": 25.9231 }, - { "name": "Harare", "lat": -17.8252, "lon": 31.0335 }, - { "name": "Bulawayo", "lat": -20.1325, "lon": 28.6265 }, - { "name": "Lusaka", "lat": -15.3875, "lon": 28.3228 }, - { "name": "Lilongwe", "lat": -13.9627, "lon": 33.7741 }, - { "name": "Blantyre", "lat": -15.7861, "lon": 35.0058 }, - { "name": "Maputo", "lat": -25.9692, "lon": 32.5732 }, - { "name": "Beira", "lat": -19.7964, "lon": 34.8845 }, + { "name": "Addis Ababa", "lat": 8.9806, "lon": 38.7578 }, { "name": "Johannesburg", "lat": -26.2041, "lon": 28.0473 }, { "name": "Cape Town", "lat": -33.9249, "lon": 18.4241 }, - { "name": "Durban", "lat": -29.8587, "lon": 31.0218 }, - { "name": "Port Elizabeth", "lat": -33.9608, "lon": 25.6022 }, - { "name": "Tehran", "lat": 35.6892, "lon": 51.389 }, - { "name": "Isfahan", "lat": 32.6546, "lon": 51.668 }, - { "name": "Shiraz", "lat": 29.5926, "lon": 52.5836 }, - { "name": "Mashhad", "lat": 36.2605, "lon": 59.6168 }, - { "name": "Baghdad", "lat": 33.3152, "lon": 44.3661 }, - { "name": "Basra", "lat": 30.5156, "lon": 47.7804 }, - { "name": "Mosul", "lat": 36.3566, "lon": 43.1641 }, - { "name": "Beirut", "lat": 33.8938, "lon": 35.5018 }, - { "name": "Damascus", "lat": 33.5138, "lon": 36.2765 }, - { "name": "Aleppo", "lat": 36.2021, "lon": 37.1343 }, - { "name": "Amman", "lat": 31.9539, "lon": 35.9106 }, - { "name": "Jerusalem", "lat": 31.7683, "lon": 35.2137 }, - { "name": "Riyadh", "lat": 24.7136, "lon": 46.6753 }, - { "name": "Jeddah", "lat": 21.2854, "lon": 39.2376 }, - { "name": "Mecca", "lat": 21.3891, "lon": 39.8579 }, - { "name": "Medina", "lat": 24.5247, "lon": 39.5692 }, - { "name": "Dammam", "lat": 26.3927, "lon": 50.0916 }, - { "name": "Kuwait City", "lat": 29.3759, "lon": 47.9774 }, - { "name": "Manama", "lat": 26.2285, "lon": 50.586 }, - { "name": "Doha", "lat": 25.2854, "lon": 51.531 }, { "name": "Dubai", "lat": 25.2048, "lon": 55.2708 }, { "name": "Abu Dhabi", "lat": 24.4539, "lon": 54.3773 }, - { "name": "Muscat", "lat": 23.5859, "lon": 58.4059 }, - { "name": "Sana'a", "lat": 15.3694, "lon": 44.191 }, - { "name": "Aden", "lat": 12.7855, "lon": 45.0186 }, + { "name": "Riyadh", "lat": 24.7136, "lon": 46.6753 }, + { "name": "Doha", "lat": 25.2854, "lon": 51.531 }, + { "name": "Kuwait City", "lat": 29.3759, "lon": 47.9774 }, + { "name": "Jerusalem", "lat": 31.7683, "lon": 35.2137 }, + { "name": "Amman", "lat": 31.9539, "lon": 35.9106 }, { "name": "Karachi", "lat": 24.8607, "lon": 67.0011 }, - { "name": "Lahore", "lat": 31.5204, "lon": 74.3587 }, - { "name": "Islamabad", "lat": 33.6844, "lon": 73.0479 }, - { "name": "Multan", "lat": 30.1575, "lon": 71.5249 }, - { "name": "Peshawar", "lat": 34.0151, "lon": 71.5249 }, { "name": "Mumbai", "lat": 19.076, "lon": 72.8777 }, { "name": "Delhi", "lat": 28.6139, "lon": 77.209 }, - { "name": "Bangalore", "lat": 12.9716, "lon": 77.5946 }, - { "name": "Hyderabad", "lat": 17.385, "lon": 78.4867 }, - { "name": "Chennai", "lat": 13.0827, "lon": 80.2707 }, - { "name": "Kolkata", "lat": 22.5726, "lon": 88.3639 }, - { "name": "Ahmedabad", "lat": 23.0225, "lon": 72.5714 }, - { "name": "Pune", "lat": 18.5204, "lon": 73.8567 }, - { "name": "Surat", "lat": 21.1702, "lon": 72.8311 }, - { "name": "Jaipur", "lat": 26.9124, "lon": 75.7873 }, - { "name": "Lucknow", "lat": 26.8467, "lon": 80.9462 }, - { "name": "Kanpur", "lat": 26.4499, "lon": 80.3319 }, - { "name": "Nagpur", "lat": 21.1458, "lon": 79.0882 }, - { "name": "Indore", "lat": 22.7196, "lon": 75.8577 }, - { "name": "Visakhapatnam", "lat": 17.6868, "lon": 83.2185 }, - { "name": "Patna", "lat": 25.5941, "lon": 85.1376 }, - { "name": "Vadodara", "lat": 22.3072, "lon": 73.1812 }, - { "name": "Ghaziabad", "lat": 28.6692, "lon": 77.4538 }, - { "name": "Ludhiana", "lat": 30.901, "lon": 75.8573 }, - { "name": "Agra", "lat": 27.1767, "lon": 78.0081 }, - { "name": "Nashik", "lat": 19.9975, "lon": 73.7898 }, - { "name": "Faridabad", "lat": 28.4089, "lon": 77.3178 }, - { "name": "Meerut", "lat": 28.9845, "lon": 77.7064 }, - { "name": "Rajkot", "lat": 22.3039, "lon": 70.8022 }, - { "name": "Varanasi", "lat": 25.3176, "lon": 82.9739 }, - { "name": "Srinagar", "lat": 34.0837, "lon": 74.7973 }, - { "name": "Amritsar", "lat": 31.634, "lon": 74.8723 }, - { "name": "Jabalpur", "lat": 23.1815, "lon": 79.9864 }, - { "name": "Raipur", "lat": 21.2514, "lon": 81.6296 }, - { "name": "Coimbatore", "lat": 11.0168, "lon": 76.9558 }, - { "name": "Madurai", "lat": 9.9252, "lon": 78.1198 }, - { "name": "Mysore", "lat": 12.2958, "lon": 76.6394 }, - { "name": "Kochi", "lat": 9.9312, "lon": 76.2673 }, - { "name": "Guwahati", "lat": 26.1445, "lon": 91.7362 }, - { "name": "Chandigarh", "lat": 30.7333, "lon": 76.7794 }, { "name": "Dhaka", "lat": 23.8103, "lon": 90.4125 }, - { "name": "Chittagong", "lat": 22.3569, "lon": 91.7832 }, - { "name": "Khulna", "lat": 22.8456, "lon": 89.5403 }, - { "name": "Kathmandu", "lat": 27.7172, "lon": 85.324 }, - { "name": "Colombo", "lat": 6.9271, "lon": 79.8612 }, - { "name": "Kandy", "lat": 7.2906, "lon": 80.6337 }, - { "name": "Yangon", "lat": 16.8661, "lon": 96.1951 }, - { "name": "Mandalay", "lat": 21.9813, "lon": 96.0823 }, { "name": "Bangkok", "lat": 13.7563, "lon": 100.5018 }, - { "name": "Chiang Mai", "lat": 18.7883, "lon": 98.9853 }, - { "name": "Phuket", "lat": 7.8804, "lon": 98.3923 }, - { "name": "Vientiane", "lat": 17.9757, "lon": 102.6331 }, - { "name": "Luang Prabang", "lat": 19.8968, "lon": 102.141 }, { "name": "Hanoi", "lat": 21.0278, "lon": 105.8342 }, { "name": "Ho Chi Minh City", "lat": 10.8231, "lon": 106.6297 }, - { "name": "Da Nang", "lat": 16.0544, "lon": 108.2022 }, - { "name": "Phnom Penh", "lat": 11.5564, "lon": 104.9282 }, - { "name": "Siem Reap", "lat": 13.3633, "lon": 103.8564 }, - { "name": "Kuala Lumpur", "lat": 3.139, "lon": 101.6869 }, - { "name": "Penang", "lat": 5.4141, "lon": 100.3288 }, - { "name": "Malacca", "lat": 2.2008, "lon": 102.2438 }, - { "name": "Johor Bahru", "lat": 1.4927, "lon": 103.7414 }, - { "name": "Kota Kinabalu", "lat": 5.9804, "lon": 116.0735 }, { "name": "Singapore", "lat": 1.3521, "lon": 103.8198 }, { "name": "Jakarta", "lat": -6.2088, "lon": 106.8456 }, - { "name": "Surabaya", "lat": -7.2575, "lon": 112.7521 }, - { "name": "Bandung", "lat": -6.9175, "lon": 107.6191 }, - { "name": "Medan", "lat": 3.5952, "lon": 98.6722 }, - { "name": "Makassar", "lat": -5.1477, "lon": 119.4327 }, - { "name": "Denpasar", "lat": -8.6706, "lon": 115.2126 }, { "name": "Manila", "lat": 14.5995, "lon": 120.9842 }, - { "name": "Cebu City", "lat": 10.3157, "lon": 123.8854 }, - { "name": "Davao City", "lat": 7.1907, "lon": 125.4553 }, { "name": "Hong Kong", "lat": 22.3193, "lon": 114.1694 }, { "name": "Taipei", "lat": 25.033, "lon": 121.5654 }, - { "name": "Kaohsiung", "lat": 22.6273, "lon": 120.3014 }, - { "name": "Taichung", "lat": 24.1477, "lon": 120.6736 }, - { "name": "Beijing", "lat": 39.9042, "lon": 116.4074 }, { "name": "Shanghai", "lat": 31.2304, "lon": 121.4737 }, - { "name": "Guangzhou", "lat": 23.1291, "lon": 113.2644 }, - { "name": "Shenzhen", "lat": 22.5431, "lon": 114.0579 }, - { "name": "Chengdu", "lat": 30.5728, "lon": 104.0668 }, - { "name": "Wuhan", "lat": 30.5928, "lon": 114.3055 }, - { "name": "Hangzhou", "lat": 30.2741, "lon": 120.1551 }, - { "name": "Xi'an", "lat": 34.3416, "lon": 108.9398 }, - { "name": "Suzhou", "lat": 31.2989, "lon": 120.5853 }, - { "name": "Nanjing", "lat": 32.0603, "lon": 118.7969 }, - { "name": "Tianjin", "lat": 39.0842, "lon": 117.201 }, - { "name": "Zhengzhou", "lat": 34.7466, "lon": 113.6253 }, - { "name": "Changsha", "lat": 28.228, "lon": 112.9388 }, - { "name": "Qingdao", "lat": 36.0671, "lon": 120.3826 }, - { "name": "Shenyang", "lat": 41.8057, "lon": 123.4315 }, - { "name": "Dalian", "lat": 38.914, "lon": 121.6147 }, - { "name": "Harbin", "lat": 45.8038, "lon": 126.535 }, - { "name": "Changchun", "lat": 43.8171, "lon": 125.3235 }, - { "name": "Kunming", "lat": 25.0389, "lon": 102.7183 }, + { "name": "Beijing", "lat": 39.9042, "lon": 116.4074 }, { "name": "Seoul", "lat": 37.5665, "lon": 126.978 }, - { "name": "Busan", "lat": 35.1796, "lon": 129.0756 }, - { "name": "Incheon", "lat": 37.4563, "lon": 126.7052 }, - { "name": "Daegu", "lat": 35.8714, "lon": 128.6014 }, { "name": "Tokyo", "lat": 35.6762, "lon": 139.6503 }, - { "name": "Yokohama", "lat": 35.4437, "lon": 139.638 }, { "name": "Osaka", "lat": 34.6937, "lon": 135.5023 }, - { "name": "Nagoya", "lat": 35.1815, "lon": 136.9066 }, { "name": "Sapporo", "lat": 43.0618, "lon": 141.3545 }, - { "name": "Fukuoka", "lat": 33.5902, "lon": 130.4017 }, - { "name": "Kobe", "lat": 34.6901, "lon": 135.1955 }, - { "name": "Kyoto", "lat": 35.0116, "lon": 135.7681 }, - { "name": "Sendai", "lat": 38.2682, "lon": 140.8694 }, - { "name": "Hiroshima", "lat": 34.3853, "lon": 132.4553 }, { "name": "Sydney", "lat": -33.8688, "lon": 151.2093 }, { "name": "Melbourne", "lat": -37.8136, "lon": 144.9631 }, { "name": "Brisbane", "lat": -27.4698, "lon": 153.0251 }, { "name": "Perth", "lat": -31.9523, "lon": 115.8613 }, - { "name": "Adelaide", "lat": 34.9285, "lon": 138.6007 }, - { "name": "Gold Coast", "lat": 28.0167, "lon": 153.4 }, - { "name": "Canberra", "lat": 35.2809, "lon": 149.13 }, - { "name": "Newcastle", "lat": 32.9283, "lon": 151.7817 }, - { "name": "Wollongong", "lat": 34.4278, "lon": 150.8931 }, - { "name": "Hobart", "lat": 42.8821, "lon": 147.3272 }, - { "name": "Darwin", "lat": 12.4634, "lon": 130.8456 }, - { "name": "Cairns", "lat": 16.9186, "lon": 145.7781 }, - { "name": "Townsville", "lat": 19.259, "lon": 146.8169 }, { "name": "Auckland", "lat": -36.8509, "lon": 174.7645 }, - { "name": "Wellington", "lat": -41.2866, "lon": 174.7756 }, - { "name": "Christchurch", "lat": -43.532, "lon": 172.6306 }, - { "name": "Hamilton", "lat": 37.787, "lon": 175.2793 }, - { "name": "Tauranga", "lat": 37.6878, "lon": 176.1651 }, - { "name": "Dunedin", "lat": -45.8788, "lon": 170.5028 }, - { "name": "Port Moresby", "lat": -9.4438, "lon": 147.1803 }, - { "name": "Lae", "lat": -6.732, "lon": 147.014 }, - { "name": "Honiara", "lat": -9.4456, "lon": 159.9729 }, - { "name": "Suva", "lat": -18.1248, "lon": 178.4501 }, - { "name": "Nouméa", "lat": -22.2558, "lon": 166.4125 }, - { "name": "Papeete", "lat": -17.5516, "lon": -149.5585 }, - { "name": "Majuro", "lat": 7.1164, "lon": 171.184 }, - { "name": "Palikir", "lat": 6.9147, "lon": 158.161 }, - { "name": "South Tarawa", "lat": 1.3294, "lon": 172.977 }, - { "name": "Funafuti", "lat": -8.5243, "lon": 179.1942 }, - { "name": "Nuku'alofa", "lat": -21.1394, "lon": -175.2018 }, - { "name": "Apia", "lat": -13.8507, "lon": 171.7514 }, - { "name": "Port Vila", "lat": -17.7345, "lon": 168.3207 }, - { "name": "Ngerulmud", "lat": 7.5004, "lon": 134.6243 }, - { "name": "Manchester", "lat": 53.4808, "lon": -2.2426 }, - { "name": "Birmingham", "lat": 52.4862, "lon": -1.8904 }, - { "name": "Leeds", "lat": 53.8008, "lon": -1.5491 }, - { "name": "Glasgow", "lat": 55.8609, "lon": -4.2514 }, - { "name": "Edinburgh", "lat": 55.9533, "lon": -3.1883 }, - { "name": "Liverpool", "lat": 53.4084, "lon": -2.9916 }, - { "name": "Newcastle", "lat": 54.9783, "lon": -1.6178 }, - { "name": "Sheffield", "lat": 53.3811, "lon": -1.4701 }, - { "name": "Bristol", "lat": 51.4545, "lon": -2.5879 }, - { "name": "Cardiff", "lat": 51.4816, "lon": -3.1791 }, - { "name": "Belfast", "lat": 54.5973, "lon": -5.9301 }, - { "name": "Aberdeen", "lat": 57.1497, "lon": -2.0943 }, - { "name": "Dundee", "lat": 56.462, "lon": -2.9707 }, - { "name": "Inverness", "lat": 57.4778, "lon": -4.2247 }, - { "name": "Portland ME", "lat": 43.6591, "lon": -70.2568 }, - { "name": "Burlington", "lat": 44.4759, "lon": -73.2121 }, - { "name": "Hartford", "lat": 41.7658, "lon": -72.6734 }, - { "name": "Providence", "lat": 41.824, "lon": -71.4128 }, - { "name": "Manchester NH", "lat": 42.9956, "lon": -71.4548 }, - { "name": "New Haven", "lat": 41.3083, "lon": -72.9279 }, - { "name": "Worcester", "lat": 42.2626, "lon": -71.8023 }, - { "name": "Portsmouth NH", "lat": 43.0718, "lon": -70.7626 }, - { "name": "Cambridge MA", "lat": 42.3736, "lon": -71.1097 }, - { "name": "Lowell", "lat": 42.6334, "lon": -71.3162 }, - { "name": "Augusta ME", "lat": 44.3106, "lon": -69.7795 }, - { "name": "Montpelier", "lat": 44.2601, "lon": -72.5754 } + { "name": "Wellington", "lat": -41.2866, "lon": 174.7756 } ] diff --git a/server/scripts/modules/regionalforecast.mjs b/server/scripts/modules/regionalforecast.mjs index 159532a..c3dabbf 100644 --- a/server/scripts/modules/regionalforecast.mjs +++ b/server/scripts/modules/regionalforecast.mjs @@ -21,7 +21,6 @@ class RegionalForecast extends WeatherDisplay { this.locationMarker = null; this.nearbyMarkers = []; this.nearbyMarkersKey = ''; - this.refreshingMarkers = false; } async getData(weatherParameters, refresh) { @@ -55,40 +54,30 @@ class RegionalForecast extends WeatherDisplay { } async refreshNearbyMarkers() { - if (!this.map || !this.active || this.refreshingMarkers) return; + if (!this.map || !this.active) return; - this.refreshingMarkers = true; + this.map.invalidateSize(false); + this.map.setView([this.weatherParameters.latitude, this.weatherParameters.longitude], 6); - try { - this.map.invalidateSize(false); - this.map.setView([this.weatherParameters.latitude, this.weatherParameters.longitude], 6); + const bounds = this.map.getBounds(); + const markerKey = [ + this.weatherParameters.latitude.toFixed(2), + this.weatherParameters.longitude.toFixed(2), + bounds.getSouth().toFixed(2), + bounds.getWest().toFixed(2), + bounds.getNorth().toFixed(2), + bounds.getEast().toFixed(2), + ].join(':'); - const bounds = this.map.getBounds(); - const markerKey = [ - this.weatherParameters.latitude.toFixed(2), - this.weatherParameters.longitude.toFixed(2), - bounds.getSouth().toFixed(2), - bounds.getWest().toFixed(2), - bounds.getNorth().toFixed(2), - bounds.getEast().toFixed(2), - ].join(':'); + if (this.nearbyMarkers.length > 0 && this.nearbyMarkersKey === markerKey) return; - if (this.nearbyMarkers.length > 0 && this.nearbyMarkersKey === markerKey) return; - - this.nearbyMarkers = clearMarkers(this.map, this.nearbyMarkers); - this.nearbyMarkers = await loadNearbyObservationMarkers(this.map, { - latitude: this.weatherParameters.latitude, - longitude: this.weatherParameters.longitude, - }, { - maxMarkers: 7, - minCityDistanceMeters: 15000, - minMarkerPixelDistance: 60, - }); - this.nearbyMarkers.forEach((marker) => marker.addTo(this.map)); - this.nearbyMarkersKey = markerKey; - } finally { - this.refreshingMarkers = false; - } + this.nearbyMarkers = clearMarkers(this.map, this.nearbyMarkers); + this.nearbyMarkers = await loadNearbyObservationMarkers(this.map, { + latitude: this.weatherParameters.latitude, + longitude: this.weatherParameters.longitude, + }); + this.nearbyMarkers.forEach((marker) => marker.addTo(this.map)); + this.nearbyMarkersKey = markerKey; } async ensureMap() { diff --git a/server/styles/scss/_regional-forecast.scss b/server/styles/scss/_regional-forecast.scss index 9853be9..c8f67e6 100644 --- a/server/styles/scss/_regional-forecast.scss +++ b/server/styles/scss/_regional-forecast.scss @@ -57,6 +57,8 @@ flex-direction: column; align-items: center; min-width: 72px; + padding: 2px 4px; + background: rgb(255 255 255 / 0%); color: #fff; text-align: center; opacity: 0.35; @@ -74,15 +76,15 @@ .temp { font-family: 'Star4000'; - font-size: 21pt; + font-size: 18pt; line-height: 1; - color: #ff0; - text-shadow: 3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000; + color: c.$title-color; + @include u.text-shadow(); } img { width: auto; - height: 32px; + height: 20px; } } } diff --git a/server/styles/ws.min.css b/server/styles/ws.min.css index 6bcb1fa..3901f12 100644 --- a/server/styles/ws.min.css +++ b/server/styles/ws.min.css @@ -1 +1 @@ -@font-face{font-family:"Star4000";src:url("../fonts/Star4000.woff") format("woff");font-display:swap}body{font-family:"Star4000";margin:0}@media(prefers-color-scheme: dark){body{background-color:#000;color:#fff}}@media(prefers-color-scheme: dark){body a{color:#add8e6}}body.kiosk{margin:0px;padding:0px;overflow:hidden;width:100vw;background-color:#000 !important}#divQuery{max-width:640px;padding:8px}#divQuery .buttons{display:inline-block;width:150px;text-align:right}#divQuery .buttons #imgGetGps{height:13px;vertical-align:middle}#divQuery .buttons button{font-size:16pt;border:1px solid #a9a9a9}@media(prefers-color-scheme: dark){#divQuery .buttons button{background-color:#000;color:#fff}}#divQuery .buttons #btnGetGps img.dark{display:none}@media(prefers-color-scheme: dark){#divQuery .buttons #btnGetGps img.dark{display:inline-block}}@media(prefers-color-scheme: dark){#divQuery .buttons #btnGetGps img.light{display:none}}#divQuery .buttons #btnGetGps.active{background-color:#000}@media(prefers-color-scheme: dark){#divQuery .buttons #btnGetGps.active{background-color:#fff}}#divQuery .buttons #btnGetGps.active img{filter:invert(1)}#divQuery input,#divQuery button{font-family:"Star4000"}#divQuery #txtLocation{width:calc(100% - 170px);max-width:490px;font-size:16pt;min-width:200px;display:inline-block;background-color:#fff;color:#000;border:2px inset gray}@media(prefers-color-scheme: dark){#divQuery #txtLocation{background-color:#000;color:#fff;border:2px inset gray}}.autocomplete-suggestions{background-color:#fff;border:1px solid #000;position:absolute;z-index:9999}@media(prefers-color-scheme: dark){.autocomplete-suggestions{background-color:#000}}.autocomplete-suggestions div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:16pt}.autocomplete-suggestions div.selected{background-color:blue;color:#fff}#divTwc{display:block;background-color:#000;color:#fff;width:100%;max-width:640px;margin:0}#divTwc.wide{max-width:854px}.content-wrapper{padding:8px}#divTwcMain{width:640px;height:480px;position:relative}.wide #divTwcMain{width:854px}.kiosk #divTwc{max-width:unset}#divTwcLeft{display:none;text-align:right;flex-direction:column;vertical-align:middle}#divTwcLeft>div{flex:1;padding-right:12px;display:flex;flex-direction:column;justify-content:center}#divTwcRight{text-align:left;display:none;flex-direction:column;vertical-align:middle}#divTwcRight>div{flex:1;padding-left:12px;display:flex;flex-direction:column;justify-content:center}#divTwcBottom{display:flex;flex-direction:row;background-color:#000;color:#fff;width:640px}.wide #divTwcBottom{width:854px}@media(prefers-color-scheme: dark){#divTwcBottom{background-color:#303030}}#divTwcBottom>div{padding-left:6px;padding-right:6px}@media(max-width: 550px){#divTwcBottom>div{font-size:.9em}}@media(max-width: 500px){#divTwcBottom>div{font-size:.8em}}@media(max-width: 450px){#divTwcBottom>div{font-size:.7em}}@media(max-width: 400px){#divTwcBottom>div{font-size:.6em}}@media(max-width: 350px){#divTwcBottom>div{font-size:.5em}}#divTwcBottomLeft{flex:1;text-align:left}#divTwcBottomMiddle{flex:0;text-align:center}#divTwcBottomRight{flex:1;text-align:right}#divTwcNavContainer{display:none}#divTwcNav{width:100%;display:flex;flex-direction:row;background-color:#000;color:#fff;max-width:640px}#divTwcNav>div{padding-left:6px;padding-right:6px}#divTwcNavLeft{flex:1;text-align:left}#divTwcNavMiddle{flex:0;text-align:center}#divTwcNavRight{flex:1;text-align:right}#imgPause1x{visibility:hidden;position:absolute}.HideCursor{cursor:none !important}#txtScrollText{width:475px}@font-face{font-family:"Star4000 Extended";src:url("../fonts/Star4000 Extended.woff") format("woff");font-display:swap}@font-face{font-family:"Star4000 Large";src:url("../fonts/Star4000 Large.woff") format("woff");font-display:swap}@font-face{font-family:"Star4000 Small";src:url("../fonts/Star4000 Small.woff") format("woff");font-display:swap}:root{--theme-background-1: url('../images/backgrounds/1.png');--theme-background-1-chart: url('../images/backgrounds/1-chart.png');--theme-background-2: url('../images/backgrounds/2.png');--theme-background-3: url('../images/backgrounds/3.png');--theme-background-4: url('../images/backgrounds/4.png');--theme-background-5: url('../images/backgrounds/5.png');--theme-background-6: url('../images/backgrounds/6.png')}#display{font-family:"Star4000";margin:0 0 0 0;width:100%}#container{position:relative;width:640px;height:480px;background-image:var(--theme-background-1);transform-origin:0 0;background-repeat:no-repeat}.wide #container{padding-left:107px;padding-right:107px;background:url(../images/backgrounds/1-wide.png);background-repeat:no-repeat}#divTwc:fullscreen #container,.kiosk #divTwc #container{width:unset;height:unset}#loading{width:640px;height:480px;max-width:100%;text-shadow:4px 4px #000;display:flex;align-items:center;text-align:center;justify-content:center}#loading .title{font-family:Star4000 Large;font-size:36px;color:#ff0;margin-bottom:0px}#loading .version{margin-bottom:35px}#loading .instructions{font-size:18pt}.heading{font-weight:bold;margin-top:15px}#settings{margin-bottom:15px}#enabledDisplays,#settings{margin-bottom:15px}#enabledDisplays .loading,#enabledDisplays .retrying,#settings .loading,#settings .retrying{color:#ff0}#enabledDisplays .press-here,#settings .press-here{color:lime;cursor:pointer}#enabledDisplays .failed,#settings .failed{color:red}#enabledDisplays .no-data,#settings .no-data{color:silver}#enabledDisplays .disabled,#settings .disabled{color:silver}#enabledDisplays .press-here,#settings .press-here{color:#fff}@media(prefers-color-scheme: light){#enabledDisplays .loading,#enabledDisplays .retrying,#settings .loading,#settings .retrying{color:#990}#enabledDisplays .press-here,#settings .press-here{color:#000;cursor:pointer}#enabledDisplays .failed,#settings .failed{color:#900}#enabledDisplays .no-data,#settings .no-data{color:hsl(0,0%,30%)}#enabledDisplays .disabled,#settings .disabled{color:hsl(0,0%,30%)}}#enabledDisplays label,#settings label{display:block;max-width:fit-content;cursor:pointer}#enabledDisplays label .alert,#settings label .alert{display:none}#enabledDisplays label .alert.show,#settings label .alert.show{display:inline;color:red}#divTwcBottom img{transform:scale(0.75)}@media(max-width: 550px){.wide #divTwcBottom img{transform:scale(1)}}#divTwc:fullscreen,.kiosk #divTwc{display:flex;align-items:center;justify-content:center;align-content:center}#divTwc:fullscreen.no-cursor,.kiosk #divTwc.no-cursor{cursor:none}#divTwc:fullscreen #display,.kiosk #divTwc #display{position:relative}#divTwc:fullscreen #divTwcBottom,.kiosk #divTwc #divTwcBottom{display:flex;flex-direction:row;background-color:rgba(0,0,0,.5);color:#fff;width:100%;position:absolute;bottom:0px}.kiosk #divTwc #divTwcBottom{display:none}.navButton{cursor:pointer}#ToggleScanlines{display:inline-block}#ToggleScanlines .on{display:none}#ToggleScanlines .off{display:inline-block}#ToggleScanlines.on .on{display:inline-block}#ToggleScanlines.on .off{display:none}.visible{visibility:visible;opacity:1;transition:opacity .1s linear}#divTwc:fullscreen .hidden{visibility:hidden;opacity:0;transition:visibility 0s 1s,opacity 1s linear}.github-links{width:610px;max-width:calc(100vw - 30px);display:flex;justify-content:space-evenly;flex-wrap:wrap}.github-links span a{text-decoration:none;outline:0}.github-links span .widget{display:inline-block;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;font-size:0;line-height:0;white-space:nowrap}.github-links span .btn,.github-links span .social-count{position:relative;display:inline-block;display:inline-flex;height:14px;padding:2px 5px;font-size:11px;font-weight:600;line-height:14px;vertical-align:bottom;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-repeat:repeat-x;background-position:-1px -1px;background-size:110% 110%;border:1px solid}.github-links span .btn{border-radius:.25em}.github-links span .btn:not(:last-child){border-radius:.25em 0 0 .25em}.github-links span .social-count{border-left:0;border-radius:0 .25em .25em 0}.github-links span .widget-lg .btn,.github-links span .widget-lg .social-count{height:16px;padding:5px 10px;font-size:12px;line-height:16px}.github-links span .octicon{display:inline-block;vertical-align:text-top;fill:currentColor;overflow:visible}.github-links span .btn:focus-visible,.github-links span .social-count:focus-visible{outline:2px solid #0969da;outline-offset:-2px}.github-links span .btn{color:#24292f;background-color:#ebf0f4;border-color:#ccd1d5;border-color:rgba(27,31,36,.15);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg'%3e%3clinearGradient id='o' x2='0' y2='1'%3e%3cstop stop-color='%23f6f8fa'/%3e%3cstop offset='90%25' stop-color='%23ebf0f4'/%3e%3c/linearGradient%3e%3crect width='100%25' height='100%25' fill='url(%23o)'/%3e%3c/svg%3e");background-image:-moz-linear-gradient(top, #f6f8fa, #ebf0f4 90%);background-image:linear-gradient(180deg, #f6f8fa, #ebf0f4 90%);filter:progid:DXImageTransform.Microsoft.Gradient(startColorstr='#FFF6F8FA', endColorstr='#FFEAEFF3')}.github-links span :root .btn{filter:none}.github-links span .btn:hover,.github-links span .btn:focus{background-color:#e9ebef;background-position:0 -0.5em;border-color:#caccd1;border-color:rgba(27,31,36,.15);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg'%3e%3clinearGradient id='o' x2='0' y2='1'%3e%3cstop stop-color='%23f3f4f6'/%3e%3cstop offset='90%25' stop-color='%23e9ebef'/%3e%3c/linearGradient%3e%3crect width='100%25' height='100%25' fill='url(%23o)'/%3e%3c/svg%3e");background-image:-moz-linear-gradient(top, #f3f4f6, #e9ebef 90%);background-image:linear-gradient(180deg, #f3f4f6, #e9ebef 90%);filter:progid:DXImageTransform.Microsoft.Gradient(startColorstr='#FFF3F4F6', endColorstr='#FFE8EAEE')}.github-links span :root .btn:hover,.github-links span :root .btn:focus{filter:none}.github-links span .btn:active{background-color:#e5e9ed;border-color:#c7cbcf;border-color:rgba(27,31,36,.15);box-shadow:inset 0 .15em .3em rgba(27,31,36,.15);background-image:none;filter:none}.github-links span .social-count{color:#24292f;background-color:#fff;border-color:#ddddde;border-color:rgba(27,31,36,.15)}.github-links span .social-count:hover,.github-links span .social-count:focus{color:#0969da}.github-links span .octicon-heart{color:#bf3989}@media(prefers-color-scheme: light){.github-links span .btn:focus-visible,.github-links span .social-count:focus-visible{outline:2px solid #0969da;outline-offset:-2px}.github-links span .btn{color:#24292f;background-color:#ebf0f4;border-color:#ccd1d5;border-color:rgba(27,31,36,.15);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg'%3e%3clinearGradient id='o' x2='0' y2='1'%3e%3cstop stop-color='%23f6f8fa'/%3e%3cstop offset='90%25' stop-color='%23ebf0f4'/%3e%3c/linearGradient%3e%3crect width='100%25' height='100%25' fill='url(%23o)'/%3e%3c/svg%3e");background-image:-moz-linear-gradient(top, #f6f8fa, #ebf0f4 90%);background-image:linear-gradient(180deg, #f6f8fa, #ebf0f4 90%);filter:progid:DXImageTransform.Microsoft.Gradient(startColorstr='#FFF6F8FA', endColorstr='#FFEAEFF3')}.github-links span :root .btn{filter:none}.github-links span .btn:hover,.github-links span .btn:focus{background-color:#e9ebef;background-position:0 -0.5em;border-color:#caccd1;border-color:rgba(27,31,36,.15);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg'%3e%3clinearGradient id='o' x2='0' y2='1'%3e%3cstop stop-color='%23f3f4f6'/%3e%3cstop offset='90%25' stop-color='%23e9ebef'/%3e%3c/linearGradient%3e%3crect width='100%25' height='100%25' fill='url(%23o)'/%3e%3c/svg%3e");background-image:-moz-linear-gradient(top, #f3f4f6, #e9ebef 90%);background-image:linear-gradient(180deg, #f3f4f6, #e9ebef 90%);filter:progid:DXImageTransform.Microsoft.Gradient(startColorstr='#FFF3F4F6', endColorstr='#FFE8EAEE')}.github-links span :root .btn:hover,.github-links span :root .btn:focus{filter:none}.github-links span .btn:active{background-color:#e5e9ed;border-color:#c7cbcf;border-color:rgba(27,31,36,.15);box-shadow:inset 0 .15em .3em rgba(27,31,36,.15);background-image:none;filter:none}.github-links span .social-count{color:#24292f;background-color:#fff;border-color:#ddddde;border-color:rgba(27,31,36,.15)}.github-links span .social-count:hover,.github-links span .social-count:focus{color:#0969da}.github-links span .octicon-heart{color:#bf3989}}@media(prefers-color-scheme: dark){.github-links span .btn:focus-visible,.github-links span .social-count:focus-visible{outline:2px solid #58a6ff;outline-offset:-2px}.github-links span .btn{color:#c9d1d9;background-color:#1a1e23;border-color:#2f3439;border-color:rgba(240,246,252,.1);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg'%3e%3clinearGradient id='o' x2='0' y2='1'%3e%3cstop stop-color='%2321262d'/%3e%3cstop offset='90%25' stop-color='%231a1e23'/%3e%3c/linearGradient%3e%3crect width='100%25' height='100%25' fill='url(%23o)'/%3e%3c/svg%3e");background-image:-moz-linear-gradient(top, #21262d, #1a1e23 90%);background-image:linear-gradient(180deg, #21262d, #1a1e23 90%);filter:progid:DXImageTransform.Microsoft.Gradient(startColorstr='#FF21262D', endColorstr='#FF191D22')}.github-links span :root .btn{filter:none}.github-links span .btn:hover,.github-links span .btn:focus{background-color:#292e33;background-position:0 -0.5em;border-color:#8b949e;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg'%3e%3clinearGradient id='o' x2='0' y2='1'%3e%3cstop stop-color='%2330363d'/%3e%3cstop offset='90%25' stop-color='%23292e33'/%3e%3c/linearGradient%3e%3crect width='100%25' height='100%25' fill='url(%23o)'/%3e%3c/svg%3e");background-image:-moz-linear-gradient(top, #30363d, #292e33 90%);background-image:linear-gradient(180deg, #30363d, #292e33 90%);filter:progid:DXImageTransform.Microsoft.Gradient(startColorstr='#FF30363D', endColorstr='#FF282D32')}.github-links span :root .btn:hover,.github-links span :root .btn:focus{filter:none}.github-links span .btn:active{background-color:#161719;border-color:#8b949e;box-shadow:inset 0 .15em .3em rgba(1,4,9,.15);background-image:none;filter:none}.github-links span .social-count{color:#c9d1d9;background-color:#0d1117;border-color:#24282e;border-color:rgba(240,246,252,.1)}.github-links span .social-count:hover,.github-links span .social-count:focus{color:#58a6ff}.github-links span .octicon-heart{color:#db61a2}}#share-link-copied{color:#990;display:none}#share-link-instructions{display:none}body.kiosk #loading .instructions{display:none !important}.kiosk>*:not(#divTwc){display:none !important}#divInfo{display:grid;grid-template-columns:1fr 1fr;max-width:250px}.weather-display{width:640px;height:480px;overflow:hidden;position:relative;background-image:var(--theme-background-1);height:0px}.weather-display.show{height:480px}.weather-display .template{display:none}.weather-display .header{width:640px;height:60px;padding-top:30px;position:relative;z-index:20}.weather-display .header .title{color:#ff0;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;font-family:"Star4000";font-size:24pt;position:absolute;width:250px}.weather-display .header .title.single{left:170px;top:25px}.weather-display .header .title.dual{left:170px}.weather-display .header .title.dual>div{position:absolute}.weather-display .header .title.dual .top{top:-3px}.weather-display .header .title.dual .bottom{top:26px}.weather-display .header .logo{top:30px;left:50px;position:absolute;z-index:10}.weather-display .header .noaa-logo{position:absolute;top:39px;left:356px}.weather-display .header .title.single{top:40px}.weather-display .header .date-time{white-space:pre;color:#fff;font-family:"Star4000 Small";font-size:24pt;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;left:436px;width:170px;text-align:right;position:absolute}.weather-display .header .date-time.date{padding-top:22px}.weather-display .main{position:relative}.weather-display .main.has-scroll{width:640px;margin-top:0;height:320px;overflow:hidden}.weather-display .main.has-scroll.no-header{height:400px;margin-top:0}.weather-display .main.has-box{margin-left:64px;margin-right:64px;width:calc(100% - 128px)}#container>.scroll{display:none;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;width:640px;height:77px;overflow:hidden;margin-top:3px;position:absolute;bottom:0px;z-index:1}#container>.scroll.hazard{background-color:#702323}#container>.scroll .scroll-container{width:640px}#container>.scroll .scroll-container .fixed,#container>.scroll .scroll-container .scroll-header{margin-left:55px;margin-right:55px;overflow:hidden;white-space:nowrap}#container>.scroll .scroll-container .scroll-header{height:26px;font-family:"Star4000 Small";font-size:20pt;margin-top:-10px}#container>.scroll .scroll-container .fixed{font-family:"Star4000";font-size:24pt}#container>.scroll .scroll-container .fixed .scroll-area{text-wrap:nowrap;position:relative}.radar #container>.scroll{z-index:100}.radar #container>.scroll.hazard{z-index:1000 !important}.wide #container>.scroll{width:854px;margin-left:-107px}.wide #container>.scroll .scroll-container{margin-left:107px}.weather-display .main.current-weather.main .col{height:50px;width:255px;display:inline-block;margin-top:10px;padding-top:10px;position:absolute;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000}.weather-display .main.current-weather.main .col.left{font-family:"Star4000 Extended";font-size:24pt}.weather-display .main.current-weather.main .col.right{right:0px;font-family:"Star4000 Large";font-size:18px;font-weight:bold;line-height:24px}.weather-display .main.current-weather.main .col.right .row{margin-bottom:12px}.weather-display .main.current-weather.main .col.right .row .label,.weather-display .main.current-weather.main .col.right .row .value{display:inline-block}.weather-display .main.current-weather.main .col.right .row .label{margin-left:20px}.weather-display .main.current-weather.main .col.right .row .value{float:right;margin-right:10px}.weather-display .main.current-weather.main .center{text-align:center}.weather-display .main.current-weather.main .temp{font-family:"Star4000 Large";font-size:24pt}.weather-display .main.current-weather.main .icon img{margin:0 auto;display:block}.weather-display .main.current-weather.main .wind-container{margin-left:10px;display:flex}.weather-display .main.current-weather.main .wind-container>div{width:50%}.weather-display .main.current-weather.main .wind-container .wind{text-align:right}.weather-display .main.current-weather.main .wind-gusts{text-align:right;font-size:28px}.weather-display .main.current-weather.main .location{color:#ff0;max-height:32px;margin-bottom:10px;padding-top:4px;overflow:hidden;text-wrap:nowrap}:root[data-theme]:not([data-theme=default]) .weather-display .main.current-weather.main .col.left{margin-top:35px;font-size:20pt}:root[data-theme]:not([data-theme=default]) .weather-display .main.current-weather.main .col.right{margin-top:36px;padding:21px}:root[data-theme]:not([data-theme=default]) .weather-display .main.current-weather.main .wind-container{display:block}:root[data-theme]:not([data-theme=default]) .weather-display .main.current-weather.main .wind-container>div{width:50%}:root[data-theme]:not([data-theme=default]) .weather-display .main.current-weather.main .wind-container .wind{text-align:right;font-size:22px;display:contents}#extended-forecast-html.weather-display{background-image:var(--theme-background-2)}.weather-display .main.extended-forecast .day-container{margin-top:16px;margin-left:27px}.weather-display .main.extended-forecast .day{text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;padding:5px;height:285px;width:155px;display:inline-block;margin:0px 15px;font-family:"Star4000";font-size:24pt}.weather-display .main.extended-forecast .day .date{text-transform:uppercase;text-align:center;color:#ff0}.weather-display .main.extended-forecast .day .condition{text-align:center;height:74px;margin-top:5px}.weather-display .main.extended-forecast .day .icon{text-align:center;height:75px}.weather-display .main.extended-forecast .day .icon img{max-height:75px}.weather-display .main.extended-forecast .day .temperatures{width:100%}.weather-display .main.extended-forecast .day .temperatures .temperature-block{display:inline-block;width:44%;vertical-align:top}.weather-display .main.extended-forecast .day .temperatures .temperature-block>div{text-align:center}.weather-display .main.extended-forecast .day .temperatures .temperature-block .value{font-family:"Star4000 Large";margin-top:4px}.weather-display .main.extended-forecast .day .temperatures .temperature-block.lo .label{color:#8080ff}.weather-display .main.extended-forecast .day .temperatures .temperature-block.hi .label{color:#ff0}.weather-display .main.hourly.main{overflow-y:hidden}.weather-display .main.hourly.main .column-headers{background-color:#200057;height:20px;position:absolute;width:100%}.weather-display .main.hourly.main .column-headers{position:sticky;top:0px;z-index:5}.weather-display .main.hourly.main .column-headers div{display:inline-block;font-family:"Star4000 Small";font-size:24pt;color:#ff0;position:absolute;top:-14px;z-index:5;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000}.weather-display .main.hourly.main .column-headers .temp{left:355px}.weather-display .main.hourly.main .column-headers .like{left:435px}.weather-display .main.hourly.main .column-headers .wind{left:535px}.weather-display .main.hourly.main .hourly-lines{min-height:338px;padding-top:10px;background:#0b0b39}.weather-display .main.hourly.main .hourly-lines .hourly-row{font-family:"Star4000 Large";font-size:24pt;height:72px;color:#ff0;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;position:relative}.weather-display .main.hourly.main .hourly-lines .hourly-row>div{position:absolute;white-space:pre;top:8px}.weather-display .main.hourly.main .hourly-lines .hourly-row .hour{left:25px}.weather-display .main.hourly.main .hourly-lines .hourly-row .icon{left:255px;width:70px;text-align:center;top:unset}.weather-display .main.hourly.main .hourly-lines .hourly-row .temp{left:355px}.weather-display .main.hourly.main .hourly-lines .hourly-row .like{left:425px}.weather-display .main.hourly.main .hourly-lines .hourly-row .like.heat-index{color:#e00}.weather-display .main.hourly.main .hourly-lines .hourly-row .like.wind-chill{color:#8080ff}.weather-display .main.hourly.main .hourly-lines .hourly-row .wind{left:505px;width:100px;text-align:right}#hourly-graph-html{background-image:var(--theme-background-1-chart)}#hourly-graph-html .header .right{position:absolute;top:35px;right:60px;width:360px;font-family:"Star4000 Small";font-size:28px;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;text-align:right}#hourly-graph-html .header .right div{margin-top:-18px}#hourly-graph-html .header .right .temperature{color:red}#hourly-graph-html .header .right .dewpoint{color:green}#hourly-graph-html .header .right .cloud{color:#d3d3d3}#hourly-graph-html .header .right .rain{color:aqua}.weather-display .main.hourly-graph.main>div{position:absolute}.weather-display .main.hourly-graph.main .label{font-family:"Star4000 Small";font-size:24pt;color:#ff0;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;margin-top:-15px;position:absolute}.weather-display .main.hourly-graph.main .x-axis{bottom:0px;left:54px;width:532px;height:20px}.weather-display .main.hourly-graph.main .x-axis .label{text-align:center;transform:translateX(-50%);white-space:nowrap}.weather-display .main.hourly-graph.main .x-axis .label.l-1{left:0px}.weather-display .main.hourly-graph.main .x-axis .label.l-2{left:133px}.weather-display .main.hourly-graph.main .x-axis .label.l-3{left:266px}.weather-display .main.hourly-graph.main .x-axis .label.l-4{left:399px}.weather-display .main.hourly-graph.main .x-axis .label.l-5{left:532px}.weather-display .main.hourly-graph.main .chart{top:0px;left:50px}.weather-display .main.hourly-graph.main .chart img{width:532px;height:285px}.weather-display .main.hourly-graph.main .y-axis{top:0px;left:0px;width:50px;height:285px}.weather-display .main.hourly-graph.main .y-axis .label{text-align:right;right:0px}.weather-display .main.hourly-graph.main .y-axis .label.l-1{top:0px}.weather-display .main.hourly-graph.main .y-axis .label.l-2{top:93.3333333333px}.weather-display .main.hourly-graph.main .y-axis .label.l-3{bottom:82.3333333333px}.weather-display .main.hourly-graph.main .y-axis .label.l-4{bottom:0px}.weather-display .main.hourly-graph.main .column-headers{background-color:#200057;height:20px;position:absolute;width:100%}.weather-display .main.hourly-graph.main .column-headers{position:sticky;top:0px;z-index:5}.weather-display .main.hourly-graph.main .column-headers .temp{left:355px}.weather-display .main.hourly-graph.main .column-headers .like{left:435px}.weather-display .main.hourly-graph.main .column-headers .wind{left:535px}.weather-display .main.travel.main{overflow-y:hidden}.weather-display .main.travel.main .column-headers{background-color:#200057;height:20px;position:sticky;top:0px;width:100%;z-index:5;overflow:hidden}.weather-display .main.travel.main .column-headers div{display:inline-block;font-family:"Star4000 Small";font-size:24pt;color:#ff0;position:absolute;top:-14px;z-index:5;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000}.weather-display .main.travel.main .column-headers .temp{width:50px;text-align:center}.weather-display .main.travel.main .column-headers .temp.low{left:455px}.weather-display .main.travel.main .column-headers .temp.high{left:510px;width:60px}.weather-display .main.travel.main .travel-lines{min-height:338px;padding-top:10px;background:#0b0b39}.weather-display .main.travel.main .travel-lines .travel-row{font-family:"Star4000 Large";font-size:24pt;height:72px;color:#ff0;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;position:relative}.weather-display .main.travel.main .travel-lines .travel-row>div{position:absolute;white-space:pre;top:8px}.weather-display .main.travel.main .travel-lines .travel-row .city{left:80px}.weather-display .main.travel.main .travel-lines .travel-row .icon{left:330px;width:70px;text-align:center;top:unset}.weather-display .main.travel.main .travel-lines .travel-row .icon img{max-width:47px}.weather-display .main.travel.main .travel-lines .travel-row .temp{width:50px;text-align:center}.weather-display .main.travel.main .travel-lines .travel-row .temp.low{left:455px}.weather-display .main.travel.main .travel-lines .travel-row .temp.high{left:510px;width:60px}.weather-display .local-forecast .container{position:relative;top:15px;margin:0px 10px;box-sizing:border-box;height:280px;overflow:hidden}.weather-display .local-forecast .forecasts{position:relative}.weather-display .local-forecast .forecast{font-family:"Star4000";font-size:24pt;text-transform:uppercase;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;min-height:280px;line-height:40px}:root[data-theme]:not([data-theme=default]) .weather-display .local-forecast .forecasts{margin-top:16px}:root[data-theme]:not([data-theme=default]) .weather-display .local-forecast .forecast{font-size:24px;padding-right:20px}.weather-display .progress{text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;font-family:"Star4000 Extended";font-size:18pt}.weather-display .progress .container{position:relative;top:15px;margin:0px 10px;box-sizing:border-box;height:310px;overflow:hidden;line-height:26px}.weather-display .progress .container .item{position:relative}.weather-display .progress .container .item .name{white-space:nowrap}.weather-display .progress .container .item .name::after{content:"........................................................................"}.weather-display .progress .container .item .links{position:absolute;text-align:right;right:0px;top:0px}.weather-display .progress .container .item .links>div{background-color:#26235a;display:none;padding-left:4px}.weather-display .progress .container .item .links .loading,.weather-display .progress .container .item .links .retrying{color:#ff0}.weather-display .progress .container .item .links .press-here{color:lime;cursor:pointer}.weather-display .progress .container .item .links .failed{color:red}.weather-display .progress .container .item .links .no-data{color:silver}.weather-display .progress .container .item .links .disabled{color:silver}.weather-display .progress .container .item .links.loading .loading,.weather-display .progress .container .item .links.press-here .press-here,.weather-display .progress .container .item .links.failed .failed,.weather-display .progress .container .item .links.no-data .no-data,.weather-display .progress .container .item .links.disabled .disabled,.weather-display .progress .container .item .links.retrying .retrying{display:block}@keyframes progress-scroll{0%{background-position:-40px 0}100%{background-position:40px 0}}#progress-html.weather-display .scroll .progress-bar-container{border:2px solid #000;background-color:#fff;margin:20px auto;width:524px;position:relative;display:none}#progress-html.weather-display .scroll .progress-bar-container.show{display:block}#progress-html.weather-display .scroll .progress-bar-container .progress-bar{height:20px;margin:2px;width:520px;background:repeating-linear-gradient(90deg, #09246f 0px, #09246f 5px, #364ac0 5px, #364ac0 10px, #4f99f9 10px, #4f99f9 15px, #8ffdfa 15px, #8ffdfa 20px, #4f99f9 20px, #4f99f9 25px, #364ac0 25px, #364ac0 30px, #09246f 30px, #09246f 40px);animation-duration:2s;animation-fill-mode:forwards;animation-iteration-count:infinite;animation-name:progress-scroll;animation-timing-function:steps(8, end)}#progress-html.weather-display .scroll .progress-bar-container .cover{position:absolute;top:0px;right:0px;background-color:#fff;width:100%;height:24px;transition:width 1s steps(6)}#radar-html.weather-display{background-image:var(--theme-background-4)}#radar-html.weather-display .header{height:83px}#radar-html.weather-display .header .title.dual{color:#fff;font-family:"Arial",sans-serif;font-weight:bold;font-size:28pt;left:155px}#radar-html.weather-display .header .title.dual .top{top:-4px}#radar-html.weather-display .header .title.dual .bottom{top:31px}#radar-html.weather-display .header .right{position:absolute;right:0px;width:360px;margin-top:2px;font-family:"Star4000";font-size:18pt;font-weight:bold;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;text-align:center}#radar-html.weather-display .header .right .scale-table{display:flex;justify-content:center;gap:4px}#radar-html.weather-display .header .right .scale-table .item{display:flex;flex-direction:column;align-items:center;width:25px;gap:2px}#radar-html.weather-display .header .right .scale-table .box{display:block;border:2.7px solid #000;width:90%;height:12px;margin-top:4px;padding:0}#radar-html.weather-display .header .right .scale-table .box-1{background-color:#49bef6}#radar-html.weather-display .header .right .scale-table .box-2{background-color:#31d216}#radar-html.weather-display .header .right .scale-table .box-3{background-color:#f1e458}#radar-html.weather-display .header .right .scale-table .box-4{background-color:#e08e2f}#radar-html.weather-display .header .right .scale-table .box-5{background-color:#c42a2a}#radar-html.weather-display .header .right .scale-table .box-6{background-color:#913bb8}#radar-html.weather-display .header .right .scale-table .label{font-family:"Star4000 Small";font-size:10pt;line-height:1;white-space:nowrap}#radar-html.weather-display .header .right .scale{margin-top:-2px}#radar-html.weather-display .header .right .time{position:relative;font-weight:normal;top:-20px;font-family:"Star4000 Small";font-size:18pt;left:132px}.weather-display .main.radar{overflow:hidden;height:367px}.weather-display .main.radar .container{position:relative;height:100%}.weather-display .main.radar .container .scroll-area{position:relative;height:100%}.weather-display .main.radar .container .frame{height:100%}.weather-display .main.radar .container .map{height:100%;width:100%}.weather-display .main.radar .container .leaflet-map{height:100%;width:100%;background:#061f3e}.weather-display .main.radar .container .leaflet-container{background:#061f3e;font-family:inherit}.weather-display .main.radar .container .radar-base-layer,.weather-display .main.radar .container .radar-base-layer .leaflet-tile{filter:grayscale(0.35) brightness(0.58) contrast(1.1) saturate(0.2)}.weather-display .main.radar .container .radar-boundary-layer,.weather-display .main.radar .container .radar-boundary-layer .leaflet-tile{filter:grayscale(0.8) brightness(0.7) contrast(1.3) saturate(0.1)}.weather-display .main.radar .container .leaflet-control-container,.weather-display .main.radar .container .leaflet-control-attribution,.weather-display .main.radar .container .leaflet-control-zoom{display:none}.weather-display .main.radar .container .location-marker{background:#ff0;border:2px solid #000;border-radius:50%}.weather-display .main.radar .container .nearby-weather-marker{display:none;background:rgba(0,0,0,0);border:0}.weather-display .main.radar .container .nearby-weather-marker .nearby-weather-marker-inner{display:inline-flex;flex-direction:column;align-items:center;min-width:72px;padding:2px 4px;background:rgba(18,34,61,0);color:#fff;text-align:center;opacity:.35}.weather-display .main.radar .container .nearby-weather-marker .city{font-family:"Star4000 Small";font-size:11pt;line-height:1;white-space:nowrap;margin-bottom:1px;text-shadow:1px 1px 0 #000;display:none}.weather-display .main.radar .container .nearby-weather-marker .details{display:flex;align-items:center;gap:2px}.weather-display .main.radar .container .nearby-weather-marker .temp{font-family:"Star4000";font-size:18pt;line-height:1;color:#ff0;text-shadow:1px 1px 0 #000}.weather-display .main.radar .container .nearby-weather-marker img{width:auto;height:20px}.wide.radar #container{background:url(../images/backgrounds/4-wide.png)}#regional-forecast-html.weather-display{background-image:var(--theme-background-5)}.weather-display .main.regional-forecast{position:relative;overflow:hidden;z-index:0}.weather-display .main.regional-forecast .map{position:absolute;inset:0}.weather-display .main.regional-forecast .leaflet-map{height:100%;width:100%;background:#061f3e}.weather-display .main.regional-forecast .leaflet-container{background:#061f3e;font-family:inherit}.weather-display .main.regional-forecast .radar-base-layer,.weather-display .main.regional-forecast .radar-base-layer .leaflet-tile{filter:grayscale(0.35) brightness(0.58) contrast(1.1) saturate(0.2)}.weather-display .main.regional-forecast .radar-boundary-layer,.weather-display .main.regional-forecast .radar-boundary-layer .leaflet-tile{filter:grayscale(0.8) brightness(0.7) contrast(1.3) saturate(0.1)}.weather-display .main.regional-forecast .leaflet-control-container,.weather-display .main.regional-forecast .leaflet-control-attribution,.weather-display .main.regional-forecast .leaflet-control-zoom{display:none}.weather-display .main.regional-forecast .location-marker{background:#ff0;border:2px solid #000;border-radius:50%}.weather-display .main.regional-forecast .nearby-weather-marker{background:rgba(0,0,0,0);border:0}.weather-display .main.regional-forecast .nearby-weather-marker .nearby-weather-marker-inner{display:inline-flex;flex-direction:column;align-items:center;min-width:72px;color:#fff;text-align:center;opacity:.35}.weather-display .main.regional-forecast .nearby-weather-marker .city{display:none}.weather-display .main.regional-forecast .nearby-weather-marker .details{display:flex;align-items:center;gap:2px}.weather-display .main.regional-forecast .nearby-weather-marker .temp{font-family:"Star4000";font-size:21pt;line-height:1;color:#ff0;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000}.weather-display .main.regional-forecast .nearby-weather-marker img{width:auto;height:32px}#almanac-html.weather-display{background-image:var(--theme-background-3)}.weather-display .main.almanac{font-family:"Star4000";font-size:24pt;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000}.weather-display .main.almanac .sun{display:grid;grid-template-columns:auto auto auto;grid-template-rows:auto auto auto;gap:0px 90px;margin:3px auto 5px auto;width:fit-content;line-height:30px}.weather-display .main.almanac .sun .grid-item{width:auto;height:auto;padding:0;margin:0;position:relative}.weather-display .main.almanac .sun .grid-item.header{color:#ff0;text-align:center}.weather-display .main.almanac .sun .grid-item.row-label{text-align:right}.weather-display .main.almanac .sun .grid-item.time{text-align:center}.weather-display .main.almanac .moon{position:relative;padding:7px 50px;line-height:36px}.weather-display .main.almanac .moon .title{color:#ff0;padding-left:13px}.weather-display .main.almanac .moon .day{display:inline-block;text-align:center;width:132px}.weather-display .main.almanac .moon .day .icon{padding-left:10px}.weather-display .main.almanac .moon .day .date{position:relative;top:-10px}#hazards-html.weather-display{background-image:url("../images/backgrounds/7.png")}.weather-display .main.hazards.main{overflow-y:hidden;height:480px;background-color:#702323}.weather-display .main.hazards.main .hazard-lines{min-height:400px;padding-top:10px}.weather-display .main.hazards.main .hazard-lines .hazard{font-family:"Star4000";font-size:24pt;color:#fff;text-shadow:0px 0px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;position:relative;text-transform:uppercase;margin-top:10px;margin-left:80px;margin-right:80px;padding-bottom:10px}.wide.hazards #container{background:url(../images/backgrounds/7-wide.png)}.media{display:none}#ToggleMediaContainer{display:none;position:relative}#ToggleMediaContainer.available{display:inline-block}#ToggleMediaContainer.available img.on{display:none}#ToggleMediaContainer.available img.off{display:block}#ToggleMediaContainer.available.playing img.on{display:block}#ToggleMediaContainer.available.playing img.off{display:none}#ToggleMediaContainer .volume-slider{display:none;position:absolute;top:0px;transform:translateY(-100%);width:100%;background-color:#000;text-align:center;z-index:100}@media(prefers-color-scheme: dark){#ToggleMediaContainer .volume-slider{background-color:#303030}}#ToggleMediaContainer .volume-slider input[type=range]{writing-mode:vertical-lr;direction:rtl;margin-top:20px;margin-bottom:20px}#ToggleMediaContainer .volume-slider.show{display:block}#spc-outlook-html.weather-display{background-image:var(--theme-background-6)}.weather-display .spc-outlook .container{position:relative;top:0px;margin:0px 10px;box-sizing:border-box;height:300px;overflow:hidden}.weather-display .spc-outlook .risk-levels{position:absolute;left:206px;font-family:"Star4000 Small";font-size:32px;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000}.weather-display .spc-outlook .risk-levels .risk-level{position:relative;top:-14px;height:20px}.weather-display .spc-outlook .risk-levels .risk-level:nth-child(1){left:100px}.weather-display .spc-outlook .risk-levels .risk-level:nth-child(2){left:80px}.weather-display .spc-outlook .risk-levels .risk-level:nth-child(3){left:60px}.weather-display .spc-outlook .risk-levels .risk-level:nth-child(4){left:40px}.weather-display .spc-outlook .risk-levels .risk-level:nth-child(5){left:20px}.weather-display .spc-outlook .risk-levels .risk-level:nth-child(6){left:0px}.weather-display .spc-outlook .days{position:absolute;top:120px}.weather-display .spc-outlook .days .day{height:60px}.weather-display .spc-outlook .days .day .day-name{position:absolute;font-family:"Star4000";font-size:24pt;width:200px;text-align:right;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;padding-top:20px}.weather-display .spc-outlook .days .day .risk-bar{position:absolute;width:150px;height:40px;left:210px;margin-top:20px;border:3px outset hsl(0,0%,70%);background:linear-gradient(0deg, hsl(0, 0%, 40%) 0%, hsl(0, 0%, 60%) 50%, hsl(0, 0%, 40%) 100%)}#server-observations-html.weather-display .header .title.single{font-size:20pt}.weather-display .server-observations.main{height:auto !important;min-height:250px}.weather-display .server-observations .container{position:relative;top:15px;box-sizing:border-box;height:250px;overflow:hidden}.weather-display .server-observations .server-output{position:relative;font-family:"Star4000";font-size:20pt;line-height:32px;color:#fff;text-transform:uppercase;text-align:center;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000}.weather-display .server-observations .server-output .server-page{height:250px;padding:0 8px;box-sizing:border-box;margin-top:16px;padding-right:30px}.weather-display .server-observations .server-output .server-line{white-space:normal;overflow-wrap:anywhere;word-break:break-word;margin-bottom:6px}.weather-display .linux-news.main{height:auto !important;min-height:250px}.weather-display .linux-news .container{position:relative;top:15px;margin:0px 10px;box-sizing:border-box;height:250px;overflow:hidden}.weather-display .linux-news .news-output{position:relative}.weather-display .linux-news .news-output .news-page{height:250px;box-sizing:border-box;padding:0 8px;display:flex;flex-direction:column;justify-content:space-between}.weather-display .linux-news .news-output .story{height:116px;overflow:hidden;margin-top:20px}.weather-display .linux-news .news-output .headline{font-family:"Star4000";font-size:17pt;line-height:22px;color:#ff0;text-transform:uppercase;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;margin-bottom:4px}.weather-display .linux-news .news-output .blurb{font-family:"Star4000";font-size:12pt;line-height:10pt;color:#fff;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;overflow:hidden;padding-right:30px}.scanlines{position:relative;overflow:hidden;isolation:isolate}.scanlines #container{position:relative;z-index:1;transform:translateZ(0);will-change:filter;filter:blur(0.6px) saturate(1.12) contrast(1.02) brightness(1)}.scanlines #container::before,.scanlines #container::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:3}.scanlines #container::before{background:linear-gradient(to right, rgba(255, 0, 0, 0.05) 0%, rgba(255, 0, 0, 0.01) 15%, rgba(255, 0, 0, 0) 50%, rgba(255, 0, 0, 0.01) 85%, rgba(255, 0, 0, 0.05) 100%);transform:translateX(-1px);filter:blur(1.8px);mix-blend-mode:screen}.scanlines #container::after{background:linear-gradient(to right, rgba(0, 140, 255, 0.05) 0%, rgba(0, 140, 255, 0.01) 15%, rgba(0, 140, 255, 0) 50%, rgba(0, 140, 255, 0.01) 85%, rgba(0, 140, 255, 0.05) 100%);transform:translateX(1px);filter:blur(1.8px);mix-blend-mode:screen}.scanlines:before,.scanlines:after{display:block;pointer-events:none;content:"";position:absolute;left:0;right:0}.scanlines:before{height:var(--scanline-thickness, 1px);z-index:2147483650;background:rgba(0,0,0,.3);opacity:.75;animation:scanline 6s linear infinite}.scanlines:after{top:0;bottom:0;z-index:2147483648;background:repeating-linear-gradient(to bottom, transparent 0, transparent var(--scanline-thickness, 1px), rgba(0, 0, 0, 0.3) var(--scanline-thickness, 1px), rgba(0, 0, 0, 0.3) calc(var(--scanline-thickness, 1px) * 2));animation:none}.scanlines{box-shadow:inset 0 0 80px rgba(0,0,0,.16),inset 0 0 18px hsla(0,0%,100%,.08)}.scanlines.crt-panels-only #container{filter:none}.scanlines.crt-panels-only .weather-display{filter:blur(0.6px) saturate(1.12) contrast(1.02) brightness(1);transform:translateZ(0)}.scanlines .header,.scanlines .main,.scanlines .scroll,.scanlines .date-time,.scanlines .city,.scanlines .temp,.scanlines .condition,.scanlines .location,.scanlines .label,.scanlines .value,.scanlines .title{text-shadow:0 0 1px hsla(0,0%,100%,.18),0 0 2px hsla(0,0%,100%,.06)}@keyframes scanline{0%{transform:translate3d(0, 200000%, 0)}}@keyframes scanlines{0%{background-position:0 50%}} \ No newline at end of file +@font-face{font-family:"Star4000";src:url("../fonts/Star4000.woff") format("woff");font-display:swap}body{font-family:"Star4000";margin:0}@media(prefers-color-scheme: dark){body{background-color:#000;color:#fff}}@media(prefers-color-scheme: dark){body a{color:#add8e6}}body.kiosk{margin:0px;padding:0px;overflow:hidden;width:100vw;background-color:#000 !important}#divQuery{max-width:640px;padding:8px}#divQuery .buttons{display:inline-block;width:150px;text-align:right}#divQuery .buttons #imgGetGps{height:13px;vertical-align:middle}#divQuery .buttons button{font-size:16pt;border:1px solid #a9a9a9}@media(prefers-color-scheme: dark){#divQuery .buttons button{background-color:#000;color:#fff}}#divQuery .buttons #btnGetGps img.dark{display:none}@media(prefers-color-scheme: dark){#divQuery .buttons #btnGetGps img.dark{display:inline-block}}@media(prefers-color-scheme: dark){#divQuery .buttons #btnGetGps img.light{display:none}}#divQuery .buttons #btnGetGps.active{background-color:#000}@media(prefers-color-scheme: dark){#divQuery .buttons #btnGetGps.active{background-color:#fff}}#divQuery .buttons #btnGetGps.active img{filter:invert(1)}#divQuery input,#divQuery button{font-family:"Star4000"}#divQuery #txtLocation{width:calc(100% - 170px);max-width:490px;font-size:16pt;min-width:200px;display:inline-block;background-color:#fff;color:#000;border:2px inset gray}@media(prefers-color-scheme: dark){#divQuery #txtLocation{background-color:#000;color:#fff;border:2px inset gray}}.autocomplete-suggestions{background-color:#fff;border:1px solid #000;position:absolute;z-index:9999}@media(prefers-color-scheme: dark){.autocomplete-suggestions{background-color:#000}}.autocomplete-suggestions div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:16pt}.autocomplete-suggestions div.selected{background-color:blue;color:#fff}#divTwc{display:block;background-color:#000;color:#fff;width:100%;max-width:640px;margin:0}#divTwc.wide{max-width:854px}.content-wrapper{padding:8px}#divTwcMain{width:640px;height:480px;position:relative}.wide #divTwcMain{width:854px}.kiosk #divTwc{max-width:unset}#divTwcLeft{display:none;text-align:right;flex-direction:column;vertical-align:middle}#divTwcLeft>div{flex:1;padding-right:12px;display:flex;flex-direction:column;justify-content:center}#divTwcRight{text-align:left;display:none;flex-direction:column;vertical-align:middle}#divTwcRight>div{flex:1;padding-left:12px;display:flex;flex-direction:column;justify-content:center}#divTwcBottom{display:flex;flex-direction:row;background-color:#000;color:#fff;width:640px}.wide #divTwcBottom{width:854px}@media(prefers-color-scheme: dark){#divTwcBottom{background-color:#303030}}#divTwcBottom>div{padding-left:6px;padding-right:6px}@media(max-width: 550px){#divTwcBottom>div{font-size:.9em}}@media(max-width: 500px){#divTwcBottom>div{font-size:.8em}}@media(max-width: 450px){#divTwcBottom>div{font-size:.7em}}@media(max-width: 400px){#divTwcBottom>div{font-size:.6em}}@media(max-width: 350px){#divTwcBottom>div{font-size:.5em}}#divTwcBottomLeft{flex:1;text-align:left}#divTwcBottomMiddle{flex:0;text-align:center}#divTwcBottomRight{flex:1;text-align:right}#divTwcNavContainer{display:none}#divTwcNav{width:100%;display:flex;flex-direction:row;background-color:#000;color:#fff;max-width:640px}#divTwcNav>div{padding-left:6px;padding-right:6px}#divTwcNavLeft{flex:1;text-align:left}#divTwcNavMiddle{flex:0;text-align:center}#divTwcNavRight{flex:1;text-align:right}#imgPause1x{visibility:hidden;position:absolute}.HideCursor{cursor:none !important}#txtScrollText{width:475px}@font-face{font-family:"Star4000 Extended";src:url("../fonts/Star4000 Extended.woff") format("woff");font-display:swap}@font-face{font-family:"Star4000 Large";src:url("../fonts/Star4000 Large.woff") format("woff");font-display:swap}@font-face{font-family:"Star4000 Small";src:url("../fonts/Star4000 Small.woff") format("woff");font-display:swap}:root{--theme-background-1: url('../images/backgrounds/1.png');--theme-background-1-chart: url('../images/backgrounds/1-chart.png');--theme-background-2: url('../images/backgrounds/2.png');--theme-background-3: url('../images/backgrounds/3.png');--theme-background-4: url('../images/backgrounds/4.png');--theme-background-5: url('../images/backgrounds/5.png');--theme-background-6: url('../images/backgrounds/6.png')}#display{font-family:"Star4000";margin:0 0 0 0;width:100%}#container{position:relative;width:640px;height:480px;background-image:var(--theme-background-1);transform-origin:0 0;background-repeat:no-repeat}.wide #container{padding-left:107px;padding-right:107px;background:url(../images/backgrounds/1-wide.png);background-repeat:no-repeat}#divTwc:fullscreen #container,.kiosk #divTwc #container{width:unset;height:unset}#loading{width:640px;height:480px;max-width:100%;text-shadow:4px 4px #000;display:flex;align-items:center;text-align:center;justify-content:center}#loading .title{font-family:Star4000 Large;font-size:36px;color:#ff0;margin-bottom:0px}#loading .version{margin-bottom:35px}#loading .instructions{font-size:18pt}.heading{font-weight:bold;margin-top:15px}#settings{margin-bottom:15px}#enabledDisplays,#settings{margin-bottom:15px}#enabledDisplays .loading,#enabledDisplays .retrying,#settings .loading,#settings .retrying{color:#ff0}#enabledDisplays .press-here,#settings .press-here{color:lime;cursor:pointer}#enabledDisplays .failed,#settings .failed{color:red}#enabledDisplays .no-data,#settings .no-data{color:silver}#enabledDisplays .disabled,#settings .disabled{color:silver}#enabledDisplays .press-here,#settings .press-here{color:#fff}@media(prefers-color-scheme: light){#enabledDisplays .loading,#enabledDisplays .retrying,#settings .loading,#settings .retrying{color:#990}#enabledDisplays .press-here,#settings .press-here{color:#000;cursor:pointer}#enabledDisplays .failed,#settings .failed{color:#900}#enabledDisplays .no-data,#settings .no-data{color:hsl(0,0%,30%)}#enabledDisplays .disabled,#settings .disabled{color:hsl(0,0%,30%)}}#enabledDisplays label,#settings label{display:block;max-width:fit-content;cursor:pointer}#enabledDisplays label .alert,#settings label .alert{display:none}#enabledDisplays label .alert.show,#settings label .alert.show{display:inline;color:red}#divTwcBottom img{transform:scale(0.75)}@media(max-width: 550px){.wide #divTwcBottom img{transform:scale(1)}}#divTwc:fullscreen,.kiosk #divTwc{display:flex;align-items:center;justify-content:center;align-content:center}#divTwc:fullscreen.no-cursor,.kiosk #divTwc.no-cursor{cursor:none}#divTwc:fullscreen #display,.kiosk #divTwc #display{position:relative}#divTwc:fullscreen #divTwcBottom,.kiosk #divTwc #divTwcBottom{display:flex;flex-direction:row;background-color:rgba(0,0,0,.5);color:#fff;width:100%;position:absolute;bottom:0px}.kiosk #divTwc #divTwcBottom{display:none}.navButton{cursor:pointer}#ToggleScanlines{display:inline-block}#ToggleScanlines .on{display:none}#ToggleScanlines .off{display:inline-block}#ToggleScanlines.on .on{display:inline-block}#ToggleScanlines.on .off{display:none}.visible{visibility:visible;opacity:1;transition:opacity .1s linear}#divTwc:fullscreen .hidden{visibility:hidden;opacity:0;transition:visibility 0s 1s,opacity 1s linear}.github-links{width:610px;max-width:calc(100vw - 30px);display:flex;justify-content:space-evenly;flex-wrap:wrap}.github-links span a{text-decoration:none;outline:0}.github-links span .widget{display:inline-block;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;font-size:0;line-height:0;white-space:nowrap}.github-links span .btn,.github-links span .social-count{position:relative;display:inline-block;display:inline-flex;height:14px;padding:2px 5px;font-size:11px;font-weight:600;line-height:14px;vertical-align:bottom;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-repeat:repeat-x;background-position:-1px -1px;background-size:110% 110%;border:1px solid}.github-links span .btn{border-radius:.25em}.github-links span .btn:not(:last-child){border-radius:.25em 0 0 .25em}.github-links span .social-count{border-left:0;border-radius:0 .25em .25em 0}.github-links span .widget-lg .btn,.github-links span .widget-lg .social-count{height:16px;padding:5px 10px;font-size:12px;line-height:16px}.github-links span .octicon{display:inline-block;vertical-align:text-top;fill:currentColor;overflow:visible}.github-links span .btn:focus-visible,.github-links span .social-count:focus-visible{outline:2px solid #0969da;outline-offset:-2px}.github-links span .btn{color:#24292f;background-color:#ebf0f4;border-color:#ccd1d5;border-color:rgba(27,31,36,.15);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg'%3e%3clinearGradient id='o' x2='0' y2='1'%3e%3cstop stop-color='%23f6f8fa'/%3e%3cstop offset='90%25' stop-color='%23ebf0f4'/%3e%3c/linearGradient%3e%3crect width='100%25' height='100%25' fill='url(%23o)'/%3e%3c/svg%3e");background-image:-moz-linear-gradient(top, #f6f8fa, #ebf0f4 90%);background-image:linear-gradient(180deg, #f6f8fa, #ebf0f4 90%);filter:progid:DXImageTransform.Microsoft.Gradient(startColorstr='#FFF6F8FA', endColorstr='#FFEAEFF3')}.github-links span :root .btn{filter:none}.github-links span .btn:hover,.github-links span .btn:focus{background-color:#e9ebef;background-position:0 -0.5em;border-color:#caccd1;border-color:rgba(27,31,36,.15);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg'%3e%3clinearGradient id='o' x2='0' y2='1'%3e%3cstop stop-color='%23f3f4f6'/%3e%3cstop offset='90%25' stop-color='%23e9ebef'/%3e%3c/linearGradient%3e%3crect width='100%25' height='100%25' fill='url(%23o)'/%3e%3c/svg%3e");background-image:-moz-linear-gradient(top, #f3f4f6, #e9ebef 90%);background-image:linear-gradient(180deg, #f3f4f6, #e9ebef 90%);filter:progid:DXImageTransform.Microsoft.Gradient(startColorstr='#FFF3F4F6', endColorstr='#FFE8EAEE')}.github-links span :root .btn:hover,.github-links span :root .btn:focus{filter:none}.github-links span .btn:active{background-color:#e5e9ed;border-color:#c7cbcf;border-color:rgba(27,31,36,.15);box-shadow:inset 0 .15em .3em rgba(27,31,36,.15);background-image:none;filter:none}.github-links span .social-count{color:#24292f;background-color:#fff;border-color:#ddddde;border-color:rgba(27,31,36,.15)}.github-links span .social-count:hover,.github-links span .social-count:focus{color:#0969da}.github-links span .octicon-heart{color:#bf3989}@media(prefers-color-scheme: light){.github-links span .btn:focus-visible,.github-links span .social-count:focus-visible{outline:2px solid #0969da;outline-offset:-2px}.github-links span .btn{color:#24292f;background-color:#ebf0f4;border-color:#ccd1d5;border-color:rgba(27,31,36,.15);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg'%3e%3clinearGradient id='o' x2='0' y2='1'%3e%3cstop stop-color='%23f6f8fa'/%3e%3cstop offset='90%25' stop-color='%23ebf0f4'/%3e%3c/linearGradient%3e%3crect width='100%25' height='100%25' fill='url(%23o)'/%3e%3c/svg%3e");background-image:-moz-linear-gradient(top, #f6f8fa, #ebf0f4 90%);background-image:linear-gradient(180deg, #f6f8fa, #ebf0f4 90%);filter:progid:DXImageTransform.Microsoft.Gradient(startColorstr='#FFF6F8FA', endColorstr='#FFEAEFF3')}.github-links span :root .btn{filter:none}.github-links span .btn:hover,.github-links span .btn:focus{background-color:#e9ebef;background-position:0 -0.5em;border-color:#caccd1;border-color:rgba(27,31,36,.15);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg'%3e%3clinearGradient id='o' x2='0' y2='1'%3e%3cstop stop-color='%23f3f4f6'/%3e%3cstop offset='90%25' stop-color='%23e9ebef'/%3e%3c/linearGradient%3e%3crect width='100%25' height='100%25' fill='url(%23o)'/%3e%3c/svg%3e");background-image:-moz-linear-gradient(top, #f3f4f6, #e9ebef 90%);background-image:linear-gradient(180deg, #f3f4f6, #e9ebef 90%);filter:progid:DXImageTransform.Microsoft.Gradient(startColorstr='#FFF3F4F6', endColorstr='#FFE8EAEE')}.github-links span :root .btn:hover,.github-links span :root .btn:focus{filter:none}.github-links span .btn:active{background-color:#e5e9ed;border-color:#c7cbcf;border-color:rgba(27,31,36,.15);box-shadow:inset 0 .15em .3em rgba(27,31,36,.15);background-image:none;filter:none}.github-links span .social-count{color:#24292f;background-color:#fff;border-color:#ddddde;border-color:rgba(27,31,36,.15)}.github-links span .social-count:hover,.github-links span .social-count:focus{color:#0969da}.github-links span .octicon-heart{color:#bf3989}}@media(prefers-color-scheme: dark){.github-links span .btn:focus-visible,.github-links span .social-count:focus-visible{outline:2px solid #58a6ff;outline-offset:-2px}.github-links span .btn{color:#c9d1d9;background-color:#1a1e23;border-color:#2f3439;border-color:rgba(240,246,252,.1);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg'%3e%3clinearGradient id='o' x2='0' y2='1'%3e%3cstop stop-color='%2321262d'/%3e%3cstop offset='90%25' stop-color='%231a1e23'/%3e%3c/linearGradient%3e%3crect width='100%25' height='100%25' fill='url(%23o)'/%3e%3c/svg%3e");background-image:-moz-linear-gradient(top, #21262d, #1a1e23 90%);background-image:linear-gradient(180deg, #21262d, #1a1e23 90%);filter:progid:DXImageTransform.Microsoft.Gradient(startColorstr='#FF21262D', endColorstr='#FF191D22')}.github-links span :root .btn{filter:none}.github-links span .btn:hover,.github-links span .btn:focus{background-color:#292e33;background-position:0 -0.5em;border-color:#8b949e;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg'%3e%3clinearGradient id='o' x2='0' y2='1'%3e%3cstop stop-color='%2330363d'/%3e%3cstop offset='90%25' stop-color='%23292e33'/%3e%3c/linearGradient%3e%3crect width='100%25' height='100%25' fill='url(%23o)'/%3e%3c/svg%3e");background-image:-moz-linear-gradient(top, #30363d, #292e33 90%);background-image:linear-gradient(180deg, #30363d, #292e33 90%);filter:progid:DXImageTransform.Microsoft.Gradient(startColorstr='#FF30363D', endColorstr='#FF282D32')}.github-links span :root .btn:hover,.github-links span :root .btn:focus{filter:none}.github-links span .btn:active{background-color:#161719;border-color:#8b949e;box-shadow:inset 0 .15em .3em rgba(1,4,9,.15);background-image:none;filter:none}.github-links span .social-count{color:#c9d1d9;background-color:#0d1117;border-color:#24282e;border-color:rgba(240,246,252,.1)}.github-links span .social-count:hover,.github-links span .social-count:focus{color:#58a6ff}.github-links span .octicon-heart{color:#db61a2}}#share-link-copied{color:#990;display:none}#share-link-instructions{display:none}body.kiosk #loading .instructions{display:none !important}.kiosk>*:not(#divTwc){display:none !important}#divInfo{display:grid;grid-template-columns:1fr 1fr;max-width:250px}.weather-display{width:640px;height:480px;overflow:hidden;position:relative;background-image:var(--theme-background-1);height:0px}.weather-display.show{height:480px}.weather-display .template{display:none}.weather-display .header{width:640px;height:60px;padding-top:30px;position:relative;z-index:20}.weather-display .header .title{color:#ff0;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;font-family:"Star4000";font-size:24pt;position:absolute;width:250px}.weather-display .header .title.single{left:170px;top:25px}.weather-display .header .title.dual{left:170px}.weather-display .header .title.dual>div{position:absolute}.weather-display .header .title.dual .top{top:-3px}.weather-display .header .title.dual .bottom{top:26px}.weather-display .header .logo{top:30px;left:50px;position:absolute;z-index:10}.weather-display .header .noaa-logo{position:absolute;top:39px;left:356px}.weather-display .header .title.single{top:40px}.weather-display .header .date-time{white-space:pre;color:#fff;font-family:"Star4000 Small";font-size:24pt;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;left:436px;width:170px;text-align:right;position:absolute}.weather-display .header .date-time.date{padding-top:22px}.weather-display .main{position:relative}.weather-display .main.has-scroll{width:640px;margin-top:0;height:320px;overflow:hidden}.weather-display .main.has-scroll.no-header{height:400px;margin-top:0}.weather-display .main.has-box{margin-left:64px;margin-right:64px;width:calc(100% - 128px)}#container>.scroll{display:none;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;width:640px;height:77px;overflow:hidden;margin-top:3px;position:absolute;bottom:0px;z-index:1}#container>.scroll.hazard{background-color:#702323}#container>.scroll .scroll-container{width:640px}#container>.scroll .scroll-container .fixed,#container>.scroll .scroll-container .scroll-header{margin-left:55px;margin-right:55px;overflow:hidden;white-space:nowrap}#container>.scroll .scroll-container .scroll-header{height:26px;font-family:"Star4000 Small";font-size:20pt;margin-top:-10px}#container>.scroll .scroll-container .fixed{font-family:"Star4000";font-size:24pt}#container>.scroll .scroll-container .fixed .scroll-area{text-wrap:nowrap;position:relative}.radar #container>.scroll{z-index:100}.radar #container>.scroll.hazard{z-index:1000 !important}.wide #container>.scroll{width:854px;margin-left:-107px}.wide #container>.scroll .scroll-container{margin-left:107px}.weather-display .main.current-weather.main .col{height:50px;width:255px;display:inline-block;margin-top:10px;padding-top:10px;position:absolute;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000}.weather-display .main.current-weather.main .col.left{font-family:"Star4000 Extended";font-size:24pt}.weather-display .main.current-weather.main .col.right{right:0px;font-family:"Star4000 Large";font-size:18px;font-weight:bold;line-height:24px}.weather-display .main.current-weather.main .col.right .row{margin-bottom:12px}.weather-display .main.current-weather.main .col.right .row .label,.weather-display .main.current-weather.main .col.right .row .value{display:inline-block}.weather-display .main.current-weather.main .col.right .row .label{margin-left:20px}.weather-display .main.current-weather.main .col.right .row .value{float:right;margin-right:10px}.weather-display .main.current-weather.main .center{text-align:center}.weather-display .main.current-weather.main .temp{font-family:"Star4000 Large";font-size:24pt}.weather-display .main.current-weather.main .icon img{margin:0 auto;display:block}.weather-display .main.current-weather.main .wind-container{margin-left:10px;display:flex}.weather-display .main.current-weather.main .wind-container>div{width:50%}.weather-display .main.current-weather.main .wind-container .wind{text-align:right}.weather-display .main.current-weather.main .wind-gusts{text-align:right;font-size:28px}.weather-display .main.current-weather.main .location{color:#ff0;max-height:32px;margin-bottom:10px;padding-top:4px;overflow:hidden;text-wrap:nowrap}:root[data-theme]:not([data-theme=default]) .weather-display .main.current-weather.main .col.left{margin-top:35px;font-size:20pt}:root[data-theme]:not([data-theme=default]) .weather-display .main.current-weather.main .col.right{margin-top:36px;padding:21px}:root[data-theme]:not([data-theme=default]) .weather-display .main.current-weather.main .wind-container{display:block}:root[data-theme]:not([data-theme=default]) .weather-display .main.current-weather.main .wind-container>div{width:50%}:root[data-theme]:not([data-theme=default]) .weather-display .main.current-weather.main .wind-container .wind{text-align:right;font-size:22px;display:contents}#extended-forecast-html.weather-display{background-image:var(--theme-background-2)}.weather-display .main.extended-forecast .day-container{margin-top:16px;margin-left:27px}.weather-display .main.extended-forecast .day{text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;padding:5px;height:285px;width:155px;display:inline-block;margin:0px 15px;font-family:"Star4000";font-size:24pt}.weather-display .main.extended-forecast .day .date{text-transform:uppercase;text-align:center;color:#ff0}.weather-display .main.extended-forecast .day .condition{text-align:center;height:74px;margin-top:5px}.weather-display .main.extended-forecast .day .icon{text-align:center;height:75px}.weather-display .main.extended-forecast .day .icon img{max-height:75px}.weather-display .main.extended-forecast .day .temperatures{width:100%}.weather-display .main.extended-forecast .day .temperatures .temperature-block{display:inline-block;width:44%;vertical-align:top}.weather-display .main.extended-forecast .day .temperatures .temperature-block>div{text-align:center}.weather-display .main.extended-forecast .day .temperatures .temperature-block .value{font-family:"Star4000 Large";margin-top:4px}.weather-display .main.extended-forecast .day .temperatures .temperature-block.lo .label{color:#8080ff}.weather-display .main.extended-forecast .day .temperatures .temperature-block.hi .label{color:#ff0}.weather-display .main.hourly.main{overflow-y:hidden}.weather-display .main.hourly.main .column-headers{background-color:#200057;height:20px;position:absolute;width:100%}.weather-display .main.hourly.main .column-headers{position:sticky;top:0px;z-index:5}.weather-display .main.hourly.main .column-headers div{display:inline-block;font-family:"Star4000 Small";font-size:24pt;color:#ff0;position:absolute;top:-14px;z-index:5;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000}.weather-display .main.hourly.main .column-headers .temp{left:355px}.weather-display .main.hourly.main .column-headers .like{left:435px}.weather-display .main.hourly.main .column-headers .wind{left:535px}.weather-display .main.hourly.main .hourly-lines{min-height:338px;padding-top:10px;background:#0b0b39}.weather-display .main.hourly.main .hourly-lines .hourly-row{font-family:"Star4000 Large";font-size:24pt;height:72px;color:#ff0;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;position:relative}.weather-display .main.hourly.main .hourly-lines .hourly-row>div{position:absolute;white-space:pre;top:8px}.weather-display .main.hourly.main .hourly-lines .hourly-row .hour{left:25px}.weather-display .main.hourly.main .hourly-lines .hourly-row .icon{left:255px;width:70px;text-align:center;top:unset}.weather-display .main.hourly.main .hourly-lines .hourly-row .temp{left:355px}.weather-display .main.hourly.main .hourly-lines .hourly-row .like{left:425px}.weather-display .main.hourly.main .hourly-lines .hourly-row .like.heat-index{color:#e00}.weather-display .main.hourly.main .hourly-lines .hourly-row .like.wind-chill{color:#8080ff}.weather-display .main.hourly.main .hourly-lines .hourly-row .wind{left:505px;width:100px;text-align:right}#hourly-graph-html{background-image:var(--theme-background-1-chart)}#hourly-graph-html .header .right{position:absolute;top:35px;right:60px;width:360px;font-family:"Star4000 Small";font-size:28px;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;text-align:right}#hourly-graph-html .header .right div{margin-top:-18px}#hourly-graph-html .header .right .temperature{color:red}#hourly-graph-html .header .right .dewpoint{color:green}#hourly-graph-html .header .right .cloud{color:#d3d3d3}#hourly-graph-html .header .right .rain{color:aqua}.weather-display .main.hourly-graph.main>div{position:absolute}.weather-display .main.hourly-graph.main .label{font-family:"Star4000 Small";font-size:24pt;color:#ff0;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;margin-top:-15px;position:absolute}.weather-display .main.hourly-graph.main .x-axis{bottom:0px;left:54px;width:532px;height:20px}.weather-display .main.hourly-graph.main .x-axis .label{text-align:center;transform:translateX(-50%);white-space:nowrap}.weather-display .main.hourly-graph.main .x-axis .label.l-1{left:0px}.weather-display .main.hourly-graph.main .x-axis .label.l-2{left:133px}.weather-display .main.hourly-graph.main .x-axis .label.l-3{left:266px}.weather-display .main.hourly-graph.main .x-axis .label.l-4{left:399px}.weather-display .main.hourly-graph.main .x-axis .label.l-5{left:532px}.weather-display .main.hourly-graph.main .chart{top:0px;left:50px}.weather-display .main.hourly-graph.main .chart img{width:532px;height:285px}.weather-display .main.hourly-graph.main .y-axis{top:0px;left:0px;width:50px;height:285px}.weather-display .main.hourly-graph.main .y-axis .label{text-align:right;right:0px}.weather-display .main.hourly-graph.main .y-axis .label.l-1{top:0px}.weather-display .main.hourly-graph.main .y-axis .label.l-2{top:93.3333333333px}.weather-display .main.hourly-graph.main .y-axis .label.l-3{bottom:82.3333333333px}.weather-display .main.hourly-graph.main .y-axis .label.l-4{bottom:0px}.weather-display .main.hourly-graph.main .column-headers{background-color:#200057;height:20px;position:absolute;width:100%}.weather-display .main.hourly-graph.main .column-headers{position:sticky;top:0px;z-index:5}.weather-display .main.hourly-graph.main .column-headers .temp{left:355px}.weather-display .main.hourly-graph.main .column-headers .like{left:435px}.weather-display .main.hourly-graph.main .column-headers .wind{left:535px}.weather-display .main.travel.main{overflow-y:hidden}.weather-display .main.travel.main .column-headers{background-color:#200057;height:20px;position:sticky;top:0px;width:100%;z-index:5;overflow:hidden}.weather-display .main.travel.main .column-headers div{display:inline-block;font-family:"Star4000 Small";font-size:24pt;color:#ff0;position:absolute;top:-14px;z-index:5;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000}.weather-display .main.travel.main .column-headers .temp{width:50px;text-align:center}.weather-display .main.travel.main .column-headers .temp.low{left:455px}.weather-display .main.travel.main .column-headers .temp.high{left:510px;width:60px}.weather-display .main.travel.main .travel-lines{min-height:338px;padding-top:10px;background:#0b0b39}.weather-display .main.travel.main .travel-lines .travel-row{font-family:"Star4000 Large";font-size:24pt;height:72px;color:#ff0;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;position:relative}.weather-display .main.travel.main .travel-lines .travel-row>div{position:absolute;white-space:pre;top:8px}.weather-display .main.travel.main .travel-lines .travel-row .city{left:80px}.weather-display .main.travel.main .travel-lines .travel-row .icon{left:330px;width:70px;text-align:center;top:unset}.weather-display .main.travel.main .travel-lines .travel-row .icon img{max-width:47px}.weather-display .main.travel.main .travel-lines .travel-row .temp{width:50px;text-align:center}.weather-display .main.travel.main .travel-lines .travel-row .temp.low{left:455px}.weather-display .main.travel.main .travel-lines .travel-row .temp.high{left:510px;width:60px}.weather-display .local-forecast .container{position:relative;top:15px;margin:0px 10px;box-sizing:border-box;height:280px;overflow:hidden}.weather-display .local-forecast .forecasts{position:relative}.weather-display .local-forecast .forecast{font-family:"Star4000";font-size:24pt;text-transform:uppercase;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;min-height:280px;line-height:40px}:root[data-theme]:not([data-theme=default]) .weather-display .local-forecast .forecasts{margin-top:16px}:root[data-theme]:not([data-theme=default]) .weather-display .local-forecast .forecast{font-size:24px;padding-right:20px}.weather-display .progress{text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;font-family:"Star4000 Extended";font-size:18pt}.weather-display .progress .container{position:relative;top:15px;margin:0px 10px;box-sizing:border-box;height:310px;overflow:hidden;line-height:26px}.weather-display .progress .container .item{position:relative}.weather-display .progress .container .item .name{white-space:nowrap}.weather-display .progress .container .item .name::after{content:"........................................................................"}.weather-display .progress .container .item .links{position:absolute;text-align:right;right:0px;top:0px}.weather-display .progress .container .item .links>div{background-color:#26235a;display:none;padding-left:4px}.weather-display .progress .container .item .links .loading,.weather-display .progress .container .item .links .retrying{color:#ff0}.weather-display .progress .container .item .links .press-here{color:lime;cursor:pointer}.weather-display .progress .container .item .links .failed{color:red}.weather-display .progress .container .item .links .no-data{color:silver}.weather-display .progress .container .item .links .disabled{color:silver}.weather-display .progress .container .item .links.loading .loading,.weather-display .progress .container .item .links.press-here .press-here,.weather-display .progress .container .item .links.failed .failed,.weather-display .progress .container .item .links.no-data .no-data,.weather-display .progress .container .item .links.disabled .disabled,.weather-display .progress .container .item .links.retrying .retrying{display:block}@keyframes progress-scroll{0%{background-position:-40px 0}100%{background-position:40px 0}}#progress-html.weather-display .scroll .progress-bar-container{border:2px solid #000;background-color:#fff;margin:20px auto;width:524px;position:relative;display:none}#progress-html.weather-display .scroll .progress-bar-container.show{display:block}#progress-html.weather-display .scroll .progress-bar-container .progress-bar{height:20px;margin:2px;width:520px;background:repeating-linear-gradient(90deg, #09246f 0px, #09246f 5px, #364ac0 5px, #364ac0 10px, #4f99f9 10px, #4f99f9 15px, #8ffdfa 15px, #8ffdfa 20px, #4f99f9 20px, #4f99f9 25px, #364ac0 25px, #364ac0 30px, #09246f 30px, #09246f 40px);animation-duration:2s;animation-fill-mode:forwards;animation-iteration-count:infinite;animation-name:progress-scroll;animation-timing-function:steps(8, end)}#progress-html.weather-display .scroll .progress-bar-container .cover{position:absolute;top:0px;right:0px;background-color:#fff;width:100%;height:24px;transition:width 1s steps(6)}#radar-html.weather-display{background-image:var(--theme-background-4)}#radar-html.weather-display .header{height:83px}#radar-html.weather-display .header .title.dual{color:#fff;font-family:"Arial",sans-serif;font-weight:bold;font-size:28pt;left:155px}#radar-html.weather-display .header .title.dual .top{top:-4px}#radar-html.weather-display .header .title.dual .bottom{top:31px}#radar-html.weather-display .header .right{position:absolute;right:0px;width:360px;margin-top:2px;font-family:"Star4000";font-size:18pt;font-weight:bold;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;text-align:center}#radar-html.weather-display .header .right .scale-table{display:flex;justify-content:center;gap:4px}#radar-html.weather-display .header .right .scale-table .item{display:flex;flex-direction:column;align-items:center;width:25px;gap:2px}#radar-html.weather-display .header .right .scale-table .box{display:block;border:2.7px solid #000;width:90%;height:12px;margin-top:4px;padding:0}#radar-html.weather-display .header .right .scale-table .box-1{background-color:#49bef6}#radar-html.weather-display .header .right .scale-table .box-2{background-color:#31d216}#radar-html.weather-display .header .right .scale-table .box-3{background-color:#f1e458}#radar-html.weather-display .header .right .scale-table .box-4{background-color:#e08e2f}#radar-html.weather-display .header .right .scale-table .box-5{background-color:#c42a2a}#radar-html.weather-display .header .right .scale-table .box-6{background-color:#913bb8}#radar-html.weather-display .header .right .scale-table .label{font-family:"Star4000 Small";font-size:10pt;line-height:1;white-space:nowrap}#radar-html.weather-display .header .right .scale{margin-top:-2px}#radar-html.weather-display .header .right .time{position:relative;font-weight:normal;top:-20px;font-family:"Star4000 Small";font-size:18pt;left:132px}.weather-display .main.radar{overflow:hidden;height:367px}.weather-display .main.radar .container{position:relative;height:100%}.weather-display .main.radar .container .scroll-area{position:relative;height:100%}.weather-display .main.radar .container .frame{height:100%}.weather-display .main.radar .container .map{height:100%;width:100%}.weather-display .main.radar .container .leaflet-map{height:100%;width:100%;background:#061f3e}.weather-display .main.radar .container .leaflet-container{background:#061f3e;font-family:inherit}.weather-display .main.radar .container .radar-base-layer,.weather-display .main.radar .container .radar-base-layer .leaflet-tile{filter:grayscale(0.35) brightness(0.58) contrast(1.1) saturate(0.2)}.weather-display .main.radar .container .radar-boundary-layer,.weather-display .main.radar .container .radar-boundary-layer .leaflet-tile{filter:grayscale(0.8) brightness(0.7) contrast(1.3) saturate(0.1)}.weather-display .main.radar .container .leaflet-control-container,.weather-display .main.radar .container .leaflet-control-attribution,.weather-display .main.radar .container .leaflet-control-zoom{display:none}.weather-display .main.radar .container .location-marker{background:#ff0;border:2px solid #000;border-radius:50%}.weather-display .main.radar .container .nearby-weather-marker{display:none;background:rgba(0,0,0,0);border:0}.weather-display .main.radar .container .nearby-weather-marker .nearby-weather-marker-inner{display:inline-flex;flex-direction:column;align-items:center;min-width:72px;padding:2px 4px;background:rgba(18,34,61,0);color:#fff;text-align:center;opacity:.35}.weather-display .main.radar .container .nearby-weather-marker .city{font-family:"Star4000 Small";font-size:11pt;line-height:1;white-space:nowrap;margin-bottom:1px;text-shadow:1px 1px 0 #000;display:none}.weather-display .main.radar .container .nearby-weather-marker .details{display:flex;align-items:center;gap:2px}.weather-display .main.radar .container .nearby-weather-marker .temp{font-family:"Star4000";font-size:18pt;line-height:1;color:#ff0;text-shadow:1px 1px 0 #000}.weather-display .main.radar .container .nearby-weather-marker img{width:auto;height:20px}.wide.radar #container{background:url(../images/backgrounds/4-wide.png)}#regional-forecast-html.weather-display{background-image:var(--theme-background-5)}.weather-display .main.regional-forecast{position:relative;overflow:hidden;z-index:0}.weather-display .main.regional-forecast .map{position:absolute;inset:0}.weather-display .main.regional-forecast .leaflet-map{height:100%;width:100%;background:#061f3e}.weather-display .main.regional-forecast .leaflet-container{background:#061f3e;font-family:inherit}.weather-display .main.regional-forecast .radar-base-layer,.weather-display .main.regional-forecast .radar-base-layer .leaflet-tile{filter:grayscale(0.35) brightness(0.58) contrast(1.1) saturate(0.2)}.weather-display .main.regional-forecast .radar-boundary-layer,.weather-display .main.regional-forecast .radar-boundary-layer .leaflet-tile{filter:grayscale(0.8) brightness(0.7) contrast(1.3) saturate(0.1)}.weather-display .main.regional-forecast .leaflet-control-container,.weather-display .main.regional-forecast .leaflet-control-attribution,.weather-display .main.regional-forecast .leaflet-control-zoom{display:none}.weather-display .main.regional-forecast .location-marker{background:#ff0;border:2px solid #000;border-radius:50%}.weather-display .main.regional-forecast .nearby-weather-marker{background:rgba(0,0,0,0);border:0}.weather-display .main.regional-forecast .nearby-weather-marker .nearby-weather-marker-inner{display:inline-flex;flex-direction:column;align-items:center;min-width:72px;padding:2px 4px;background:hsla(0,0%,100%,0);color:#fff;text-align:center;opacity:.35}.weather-display .main.regional-forecast .nearby-weather-marker .city{display:none}.weather-display .main.regional-forecast .nearby-weather-marker .details{display:flex;align-items:center;gap:2px}.weather-display .main.regional-forecast .nearby-weather-marker .temp{font-family:"Star4000";font-size:18pt;line-height:1;color:#ff0;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000}.weather-display .main.regional-forecast .nearby-weather-marker img{width:auto;height:20px}#almanac-html.weather-display{background-image:var(--theme-background-3)}.weather-display .main.almanac{font-family:"Star4000";font-size:24pt;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000}.weather-display .main.almanac .sun{display:grid;grid-template-columns:auto auto auto;grid-template-rows:auto auto auto;gap:0px 90px;margin:3px auto 5px auto;width:fit-content;line-height:30px}.weather-display .main.almanac .sun .grid-item{width:auto;height:auto;padding:0;margin:0;position:relative}.weather-display .main.almanac .sun .grid-item.header{color:#ff0;text-align:center}.weather-display .main.almanac .sun .grid-item.row-label{text-align:right}.weather-display .main.almanac .sun .grid-item.time{text-align:center}.weather-display .main.almanac .moon{position:relative;padding:7px 50px;line-height:36px}.weather-display .main.almanac .moon .title{color:#ff0;padding-left:13px}.weather-display .main.almanac .moon .day{display:inline-block;text-align:center;width:132px}.weather-display .main.almanac .moon .day .icon{padding-left:10px}.weather-display .main.almanac .moon .day .date{position:relative;top:-10px}#hazards-html.weather-display{background-image:url("../images/backgrounds/7.png")}.weather-display .main.hazards.main{overflow-y:hidden;height:480px;background-color:#702323}.weather-display .main.hazards.main .hazard-lines{min-height:400px;padding-top:10px}.weather-display .main.hazards.main .hazard-lines .hazard{font-family:"Star4000";font-size:24pt;color:#fff;text-shadow:0px 0px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;position:relative;text-transform:uppercase;margin-top:10px;margin-left:80px;margin-right:80px;padding-bottom:10px}.wide.hazards #container{background:url(../images/backgrounds/7-wide.png)}.media{display:none}#ToggleMediaContainer{display:none;position:relative}#ToggleMediaContainer.available{display:inline-block}#ToggleMediaContainer.available img.on{display:none}#ToggleMediaContainer.available img.off{display:block}#ToggleMediaContainer.available.playing img.on{display:block}#ToggleMediaContainer.available.playing img.off{display:none}#ToggleMediaContainer .volume-slider{display:none;position:absolute;top:0px;transform:translateY(-100%);width:100%;background-color:#000;text-align:center;z-index:100}@media(prefers-color-scheme: dark){#ToggleMediaContainer .volume-slider{background-color:#303030}}#ToggleMediaContainer .volume-slider input[type=range]{writing-mode:vertical-lr;direction:rtl;margin-top:20px;margin-bottom:20px}#ToggleMediaContainer .volume-slider.show{display:block}#spc-outlook-html.weather-display{background-image:var(--theme-background-6)}.weather-display .spc-outlook .container{position:relative;top:0px;margin:0px 10px;box-sizing:border-box;height:300px;overflow:hidden}.weather-display .spc-outlook .risk-levels{position:absolute;left:206px;font-family:"Star4000 Small";font-size:32px;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000}.weather-display .spc-outlook .risk-levels .risk-level{position:relative;top:-14px;height:20px}.weather-display .spc-outlook .risk-levels .risk-level:nth-child(1){left:100px}.weather-display .spc-outlook .risk-levels .risk-level:nth-child(2){left:80px}.weather-display .spc-outlook .risk-levels .risk-level:nth-child(3){left:60px}.weather-display .spc-outlook .risk-levels .risk-level:nth-child(4){left:40px}.weather-display .spc-outlook .risk-levels .risk-level:nth-child(5){left:20px}.weather-display .spc-outlook .risk-levels .risk-level:nth-child(6){left:0px}.weather-display .spc-outlook .days{position:absolute;top:120px}.weather-display .spc-outlook .days .day{height:60px}.weather-display .spc-outlook .days .day .day-name{position:absolute;font-family:"Star4000";font-size:24pt;width:200px;text-align:right;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;padding-top:20px}.weather-display .spc-outlook .days .day .risk-bar{position:absolute;width:150px;height:40px;left:210px;margin-top:20px;border:3px outset hsl(0,0%,70%);background:linear-gradient(0deg, hsl(0, 0%, 40%) 0%, hsl(0, 0%, 60%) 50%, hsl(0, 0%, 40%) 100%)}#server-observations-html.weather-display .header .title.single{font-size:20pt}.weather-display .server-observations.main{height:auto !important;min-height:250px}.weather-display .server-observations .container{position:relative;top:15px;box-sizing:border-box;height:250px;overflow:hidden}.weather-display .server-observations .server-output{position:relative;font-family:"Star4000";font-size:20pt;line-height:32px;color:#fff;text-transform:uppercase;text-align:center;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000}.weather-display .server-observations .server-output .server-page{height:250px;padding:0 8px;box-sizing:border-box;margin-top:16px;padding-right:30px}.weather-display .server-observations .server-output .server-line{white-space:normal;overflow-wrap:anywhere;word-break:break-word;margin-bottom:6px}.weather-display .linux-news.main{height:auto !important;min-height:250px}.weather-display .linux-news .container{position:relative;top:15px;margin:0px 10px;box-sizing:border-box;height:250px;overflow:hidden}.weather-display .linux-news .news-output{position:relative}.weather-display .linux-news .news-output .news-page{height:250px;box-sizing:border-box;padding:0 8px;display:flex;flex-direction:column;justify-content:space-between}.weather-display .linux-news .news-output .story{height:116px;overflow:hidden;margin-top:20px}.weather-display .linux-news .news-output .headline{font-family:"Star4000";font-size:17pt;line-height:22px;color:#ff0;text-transform:uppercase;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;margin-bottom:4px}.weather-display .linux-news .news-output .blurb{font-family:"Star4000";font-size:12pt;line-height:10pt;color:#fff;text-shadow:3px 3px 0 #000,-1.5px -1.5px 0 #000,0 -1.5px 0 #000,1.5px -1.5px 0 #000,1.5px 0 0 #000,1.5px 1.5px 0 #000,0 1.5px 0 #000,-1.5px 1.5px 0 #000,-1.5px 0 0 #000;overflow:hidden;padding-right:30px}.scanlines{position:relative;overflow:hidden;isolation:isolate}.scanlines #container{position:relative;z-index:1;transform:translateZ(0);will-change:filter;filter:blur(0.6px) saturate(1.12) contrast(1.02) brightness(1)}.scanlines #container::before,.scanlines #container::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:3}.scanlines #container::before{background:linear-gradient(to right, rgba(255, 0, 0, 0.05) 0%, rgba(255, 0, 0, 0.01) 15%, rgba(255, 0, 0, 0) 50%, rgba(255, 0, 0, 0.01) 85%, rgba(255, 0, 0, 0.05) 100%);transform:translateX(-1px);filter:blur(1.8px);mix-blend-mode:screen}.scanlines #container::after{background:linear-gradient(to right, rgba(0, 140, 255, 0.05) 0%, rgba(0, 140, 255, 0.01) 15%, rgba(0, 140, 255, 0) 50%, rgba(0, 140, 255, 0.01) 85%, rgba(0, 140, 255, 0.05) 100%);transform:translateX(1px);filter:blur(1.8px);mix-blend-mode:screen}.scanlines:before,.scanlines:after{display:block;pointer-events:none;content:"";position:absolute;left:0;right:0}.scanlines:before{height:var(--scanline-thickness, 1px);z-index:2147483650;background:rgba(0,0,0,.3);opacity:.75;animation:scanline 6s linear infinite}.scanlines:after{top:0;bottom:0;z-index:2147483648;background:repeating-linear-gradient(to bottom, transparent 0, transparent var(--scanline-thickness, 1px), rgba(0, 0, 0, 0.3) var(--scanline-thickness, 1px), rgba(0, 0, 0, 0.3) calc(var(--scanline-thickness, 1px) * 2));animation:none}.scanlines{box-shadow:inset 0 0 80px rgba(0,0,0,.16),inset 0 0 18px hsla(0,0%,100%,.08)}.scanlines.crt-panels-only #container{filter:none}.scanlines.crt-panels-only .weather-display{filter:blur(0.6px) saturate(1.12) contrast(1.02) brightness(1);transform:translateZ(0)}.scanlines .header,.scanlines .main,.scanlines .scroll,.scanlines .date-time,.scanlines .city,.scanlines .temp,.scanlines .condition,.scanlines .location,.scanlines .label,.scanlines .value,.scanlines .title{text-shadow:0 0 1px hsla(0,0%,100%,.18),0 0 2px hsla(0,0%,100%,.06)}@keyframes scanline{0%{transform:translate3d(0, 200000%, 0)}}@keyframes scanlines{0%{background-position:0 50%}} \ No newline at end of file