.mg-table-container { margin: 20px auto; max-width: 1170px; margin-bottom: 40px; }
.mg-table-wrap { overflow-x: auto; }
.mg-table { width: 100%; border-collapse: collapse; }
.mg-table th, .mg-table td { padding: 8px 10px; border-bottom: 1px solid #e5e5e5; }
.mg-table thead th { background: #f7f7f7; position: sticky; top: 0; z-index: 2; }
.mg-table th, .mg-table td { vertical-align: middle; }
.mg-table th .mg-th-label { line-height: 1; display: inline-block; vertical-align: middle; }
.mg-table th .mg-sort-icon { vertical-align: middle; }
.mg-table th.col-price, .mg-table td.col-price { white-space: nowrap; }
.mg-table th.col-price { min-width: 120px; }
.mg-table td.col-price { min-width: 120px; }
.mg-table th .mg-sort-icon { display: inline-flex; flex-direction: column; align-items: center; line-height: 1; margin-left: .35em; font-size: .85em; }
.mg-table th .mg-sort-icon .mg-arrow-up,
.mg-table th .mg-sort-icon .mg-arrow-down { opacity: .35; transition: opacity .15s ease-in-out; }
.mg-table th.mg-sorted-asc .mg-sort-icon .mg-arrow-up { opacity: 1; }
.mg-table th.mg-sorted-asc .mg-sort-icon .mg-arrow-down { opacity: .2; }
.mg-table th.mg-sorted-desc .mg-sort-icon .mg-arrow-down { opacity: 1; }
.mg-table th.mg-sorted-desc .mg-sort-icon .mg-arrow-up { opacity: .2; }
.mg-price-info { cursor: help; font-style: normal; }
.mg-status-badge { display: inline-block; padding: 2px 6px; border-radius: 3px; font-size: 12px; }
.mg-empty { padding: 20px; text-align: center; color: #666; }

/* Statusy (opcjonalne kolory, można dostosować) */
td.status-dostepne { color: #227700; }
td.status-rezerwacja { color: #c58a00; }
td.status-sprzedane { color: #a80000; }

/* Nowe statusy zgodne z klasami generowanymi przez JS */
td.status-dostepny { color: #1f7a1f; font-weight: 700; }
td.status-zarezerwowany { color: #c58a00; font-weight: 700; }
td.status-sprzedany { color: #b00020; font-weight: 700; }

