/* Activity heatmap grid (7x24 days-of-week x hours) */
.activity-grid {
    display: grid;
    grid-template-columns: 40px repeat(24, 1fr);
    gap: 2px;
    font-size: 0.7rem;
}

.activity-grid .header-cell {
    text-align: center;
    color: var(--text-secondary, #9ca3af);
    padding: 2px;
}

.activity-grid .row-label {
    text-align: right;
    padding-right: 6px;
    color: var(--text-secondary, #9ca3af);
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.activity-grid .cell {
    aspect-ratio: 1;
    border-radius: 2px;
    min-width: 12px;
}

.activity-none { background-color: var(--bg-tertiary, #1f2937); }
.activity-low { background-color: #1e3a5f; }
.activity-medium { background-color: #2563eb; }
.activity-high { background-color: #1d4ed8; }
.activity-very-high { background-color: #1e40af; }

/* Station resume badges */
.resume-card {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.resume-stat {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 8px 16px;
    border-radius: 8px;
    background: var(--bg-secondary, #111827);
    min-width: 100px;
}

.resume-stat .value {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary, #f9fafb);
}

.resume-stat .label {
    font-size: 0.75rem;
    color: var(--text-secondary, #9ca3af);
    margin-top: 2px;
}

/* IGate status indicators */
.status-green { color: #22c55e; }
.status-yellow { color: #eab308; }
.status-red { color: #ef4444; }

.status-dot {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    margin-right: 6px;
}

.status-dot.green { background-color: #22c55e; }
.status-dot.yellow { background-color: #eab308; }
.status-dot.red { background-color: #ef4444; }

/* Weather reliability grades */
.grade-badge {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 4px;
    font-weight: 700;
    font-size: 0.8rem;
}

.grade-a { background-color: #166534; color: #bbf7d0; }
.grade-b { background-color: #1e3a5f; color: #93c5fd; }
.grade-c { background-color: #854d0e; color: #fef08a; }
.grade-d { background-color: #9a3412; color: #fed7aa; }
.grade-f { background-color: #991b1b; color: #fecaca; }

/* Heatmap controls on map page */
#heatmap-controls {
    display: flex;
    align-items: center;
    gap: 8px;
}

#hour-slider {
    width: 200px;
}

#hour-label {
    min-width: 60px;
    text-align: center;
    font-variant-numeric: tabular-nums;
}
