.mapWrapper { width: 100%; height: 100%; position: relative; } .mapWrapper.fullscreen { width: 100vw; height: 100vh; } .fullscreenBtn { position: absolute; top: 0.625rem; right: 0.625rem; z-index: 1000; display: flex; align-items: center; justify-content: center; width: 34px; height: 34px; background: white; border: 2px solid rgba(0, 0, 0, 0.2); border-radius: 4px; cursor: pointer; color: #333; transition: background 0.15s ease, color 0.15s ease; } .fullscreenBtn:hover { background: #f4f4f4; color: #000; } .mapLoading { width: 100%; height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; background: var(--bg-secondary); border-radius: var(--radius-md); gap: 1rem; } .spinner { width: 2rem; height: 2rem; border: 3px solid rgba(224, 114, 86, 0.3); border-radius: 50%; border-top-color: var(--accent-coral, #e07256); animation: spin 0.8s linear infinite; } @keyframes spin { to { transform: rotate(360deg); } } .mapLoading p { color: var(--text-secondary); font-size: 0.9375rem; margin: 0; }