/* Live Forecast — page-specific styles */

        @keyframes spin { to { transform: rotate(360deg); } }

        /* Guatemala map layout */
        .forecast-layout {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 2.5rem;
            align-items: start;
        }

        .map-col {
            position: relative;
        }

        .gt-map-wrap {
            position: relative;
            background: white;
            border-radius: 16px;
            box-shadow: 0 1px 3px rgba(0,0,0,0.04), 0 4px 12px rgba(0,0,0,0.03);
            overflow: hidden;
        }

        #gt-leaflet-map {
            width: 100%;
            height: 400px;
            border-radius: 16px;
        }

        /* Data column */
        .data-col {
            display: flex;
            flex-direction: column;
            gap: 1.2rem;
        }

        /* Summary bar */
        .fc-summary {
            background: var(--clr-dark-panel);
            color: white;
            border-radius: 12px;
            padding: 1.2rem 1.5rem;
        }
        .fc-summary h2 {
            font-size: 1.1rem;
            font-weight: 600;
            margin-bottom: 0.2rem;
        }
        .fc-summary .fc-sub {
            font-size: 0.78rem;
            color: var(--clr-text-muted);
        }
        .fc-summary .fc-peak {
            margin-top: 0.8rem;
            font-size: 0.88rem;
            line-height: 1.7;
        }
        .fc-summary .fc-peak strong {
            color: var(--clr-teal-light);
        }

        .risk-badge {
            display: inline-block;
            padding: 0.15rem 0.6rem;
            border-radius: 999px;
            font-size: 0.72rem;
            font-weight: 600;
            margin-left: 0.3rem;
        }

        /* Chart cards */
        .fc-chart-card {
            background: white;
            border-radius: 12px;
            box-shadow: 0 1px 3px rgba(0,0,0,0.04), 0 4px 12px rgba(0,0,0,0.03);
            padding: 1.2rem 1.5rem;
        }
        .fc-chart-label {
            font-size: 0.72rem;
            font-weight: 600;
            color: var(--clr-text-muted);
            text-transform: uppercase;
            letter-spacing: 0.06em;
            margin-bottom: 0.3rem;
        }
        .fc-chart-container {
            width: 100%;
            height: 180px;
        }

        /* CLI card */
        .cli-card {
            background: white;
            border-radius: 12px;
            box-shadow: 0 1px 3px rgba(0,0,0,0.04), 0 4px 12px rgba(0,0,0,0.03);
            padding: 1.2rem 1.5rem;
        }
        .cli-card h3 {
            font-size: 0.95rem;
            margin-bottom: 0.5rem;
        }
        .cli-card pre {
            background: var(--clr-dark-panel);
            color: var(--clr-bg);
            padding: 1rem;
            border-radius: 10px;
            overflow-x: auto;
            font-size: 0.82rem;
        }

        /* Leaflet overrides */
        .leaflet-control-attribution { font-size: 9px !important; }
        .gt-city-label {
            background: none !important;
            border: none !important;
            box-shadow: none !important;
            font-family: 'Inter', sans-serif;
            font-size: 11px;
            font-weight: 600;
            color: var(--clr-text);
        }


        /* Region sidebar */
        .region-sidebar {
            position: fixed;
            top: 50%;
            right: 1.5rem;
            transform: translateY(-50%);
            display: flex;
            flex-direction: column;
            gap: 0.5rem;
            z-index: 50;
        }
        .region-sidebar-label {
            font-size: 0.6rem;
            font-weight: 600;
            letter-spacing: 0.08em;
            text-transform: uppercase;
            color: var(--clr-text-muted);
            margin-bottom: 0.2rem;
            text-align: right;
        }
        .region-sidebar a {
            font-size: 0.72rem;
            font-weight: 500;
            color: var(--clr-text-muted);
            text-decoration: none;
            text-align: right;
            letter-spacing: 0.02em;
            transition: color 0.2s;
            padding: 0.15rem 0;
            display: block;
        }
        .region-sidebar a:hover {
            color: var(--clr-primary);
        }
        .region-sidebar a.active-region {
            color: var(--clr-primary);
            font-weight: 600;
        }

        @media (max-width: 900px) {
            .forecast-layout {
                grid-template-columns: 1fr;
            }
            #gt-leaflet-map { height: 300px; }
            .region-sidebar { display: none; }
        }
