+ {/* Primary blocks grid */}
+
+ {/* Noise */}
+ {hasNoise ? (
+
+ ) : (
+
+ )}
+
+ {/* Air quality */}
+ {hasAirQuality ? (
+
+ ) : (
+
+ )}
+
+ {/* Wind — prefer standalone wind, fall back to weather.wind */}
+ {hasWind ? (
+
+ ) : hasWeather && analysis.weather!.wind != null ? (
+
+ ) : (
+
+ )}
+
+
+ {/* Seasonal weather (climate normals) */}
+ {hasSeasonal && (
+
+
+
+ Климат (нормали 30 лет)
+
+
+
+ )}
+
+ ) : (
+ /* Full empty state — all fields null */
+