/* Compact table styling */
table td, table th { padding: 0.4rem 0.6rem; font-size: 0.9rem; }

/* Quick action buttons grid */
.grid a[role="button"] { text-align: center; text-decoration: none; }

/* Type pill toggles */
.type-pills { display: flex; gap: 0.5rem; margin-bottom: 1rem; }
.type-pills a { padding: 0.3rem 0.8rem; border-radius: 1rem; text-decoration: none; font-size: 0.85rem; }
.type-pills a.active { background: var(--pico-primary); color: white; }
.type-pills a:not(.active) { background: var(--pico-muted-border-color); }

/* Studio card grid */
.studio-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1rem;
}

/* Studio cards */
.studio-card { border: 1px solid var(--pico-muted-border-color); border-radius: 0.5rem; padding: 1rem; margin: 0; }
.studio-card h3 { margin-bottom: 0.3rem; }
.status-dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; }
.status-dot.ok { background: #2ecc71; }
.status-dot.stale { background: #f39c12; }
.status-dot.error { background: #e74c3c; }

/* Calendar subscribe button */
.cal-subscribe { display: inline-flex; align-items: center; gap: 0.3rem; }

/* Sidebar layout */
@media (min-width: 768px) {
    .schedule-layout { display: grid; grid-template-columns: 1fr 280px; gap: 1.5rem; }
}

/* Map */
#map { height: 70vh; width: 100%; border-radius: 0.5rem; }
.studio-map { height: 250px; width: 100%; border-radius: 0.5rem; margin: 1rem 0; }

/* Mobile: collapse filters */
@media (max-width: 767px) {
    .filters-section { display: none; }
    .filters-section.open { display: block; }
}
