+ {/* DE Location */}
+
+
- {/* Row 2: Map + Side Panel */}
- 📍 DE - YOUR LOCATION
+
+
+ {deGrid}
+ {config.location.lat.toFixed(2)}°, {config.location.lon.toFixed(2)}°
+
+ ☀
+ {deSunTimes.sunrise}
+ →
+ {deSunTimes.sunset}
+
+
-
-
- Click anywhere on map to set DX location • Use buttons to change map style
+ {/* DX Location */}
+
+
- 🎯 DX - TARGET
+
+
{dxGrid}
+ {dxLocation.lat.toFixed(2)}°, {dxLocation.lon.toFixed(2)}°
+
+ ☀
+ {dxSunTimes.sunrise}
+ →
+ {dxSunTimes.sunset}
+
-
-
+
+ {/* Band Conditions - Compact */}
+
-
-
-
-
-
-
+ {/* Propagation Compact */}
+
+
- {/* Row 3 */}
- 📊 BAND CONDITIONS
+
+ {bandConditions.data.map(band => (
+
+
+ ))}
+ {band.band}
+ {band.status?.substring(0,4)}
+
+
+
+ {/* CENTER - MAP */}
+ 📡 PROPAGATION TO DX
+ {propagation.data ? (
+
+
+
+ {Math.round(propagation.data.distance).toLocaleString()} km path
+
+ {propagation.data.currentBands.slice(0, 6).map(b => (
+
+ = 50 ? 'var(--accent-green)' : 'var(--text-muted)' }}>{b.band}
+
+ ) : (
+
+
+ ))}
+ = 70 ? '#00ff88' : b.reliability >= 50 ? '#88ff00' : b.reliability >= 30 ? '#ffcc00' : '#ff4444', borderRadius: '2px' }} />
+
+ = 50 ? 'var(--accent-green)' : 'var(--text-muted)' }}>{b.reliability}%
+ Loading...
+ )}
+
+
+
+
+ {/* RIGHT SIDEBAR */}
+
+ Click map to set DX • 73 de {config.callsign}
+
+
+ {/* DX Cluster - Compact */}
+
{/* Settings Panel */}
+
+
+ {/* POTA - Compact */}
+
+ 🌐 DX CLUSTER ● LIVE
+
+
+ {dxCluster.data.slice(0, 8).map((s, i) => (
+
+
+
+ ))}
+ {dxCluster.data.length === 0 &&
+ {s.freq}
+ {s.call}
+ {s.time}
+
+ No spots
}
+
+
+
+ {/* Contests - Compact */}
+ 🏕 POTA ACTIVATORS
+
+ {potaSpots.data.slice(0, 5).map((a, i) => (
+
+
+ {a.call}
+ {a.ref}
+ {a.freq}
+
+ ))}
+ {potaSpots.data.length === 0 && No activators
}
+
+
+ 🏆 CONTESTS
+
+ {contests.data.slice(0, 6).map((c, i) => (
+
+
+
+ ))}
+
+ {c.name} {c.status === 'active' && ●}
+
+
+ {c.mode} • {new Date(c.start).toLocaleDateString('en-US', { month: 'short', day: 'numeric' })}
+
+