/* Tabs */
.course-widget-tabs {
  display:flex; gap:8px; margin-bottom:16px; flex-wrap:wrap;
}
.course-widget-tab {
  padding:10px 14px; background:#f1f1f1; border:1px solid #e2e2e2;
  cursor:pointer; border-radius:4px; font-weight:700;
}
.course-widget-tab.active {
  background:#000; color:#fff; border-color:#000;
}
.course-widget-panels { width:100%; }
.course-widget-panel { display:none; }
.course-widget-panel.active { display:block; }

/* Only one ILT layout visible at a time:
   - Cards for < 768px
   - Table for >= 768px */
.ecw-ilt--table { display:none; }
.ecw-ilt--cards { display:block; }
@media (min-width:768px) {
  .ecw-ilt--table { display:block; }
  .ecw-ilt--cards { display:none; }
}

/* ILT table */
:root { --ecw-location-col-width: 320px; }

.ilt_table { width:100%; border-collapse:collapse; }
.ilt_table th, .ilt_table td { border:1px solid #e2e2e2; padding:12px; vertical-align:middle; }
.ilt_table th {
  background:#f6f6f6; text-transform:uppercase; letter-spacing:.02em; font-weight:700; text-align:left;
}
.ilt_table th:nth-child(4), .ilt_table td:nth-child(4) {
  width: var(--ecw-location-col-width);
  max-width: var(--ecw-location-col-width);
}
.ilt_table td:nth-child(4) .select2-container { width:100% !important; }

/* Help icon */
.ecw-help {
  display:inline-block; width:18px; height:18px; line-height:18px; text-align:center;
  border:1px solid #ccc; border-radius:50%; font-size:12px; margin-left:6px; cursor:help;
}

/* Status star */
.ecw-status { display:inline-flex; align-items:center; gap:6px; }
.ecw-star { color:#f7b500; font-size:16px; line-height:1; }

/* Cards wrapper & fixed card width */
.ecw-cards {
  display:flex; flex-wrap:wrap; gap:16px;
}
.ecw-card {
  width:250px; border:1px solid #e2e2e2; border-radius:6px; padding:14px; background:#fff;
  box-shadow:0 2px 6px rgba(0,0,0,.05);
}
.ecw-card__row { margin:8px 0; }
.ecw-card__dates { font-weight:700; }
.ecw-card__time { color:#333; }
.ecw-card .select2-container { width:100% !important; }

/* static pill for single-location */
.ecw-location-pill {
  display:inline-block; padding:6px 10px; border:1px solid #dcdcdc; border-radius:6px;
  background:#fafafa; font-weight:600; white-space:nowrap;
}

/* Price + enroll same row */
.ecw-card__cta {
  display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:10px;
}
.ecw-card__cta .ecw-price { font-weight:700; }
.ecw-card__cta .ilt_add_to_cart_button {
  background:#000; color:#fff; border:0; padding:10px 14px; border-radius:6px; font-weight:700; cursor:pointer;
}
.ecw-card__cta .ilt_add_to_cart_button:hover { opacity:.9; }

/* ODL */
.ecw-odl-desc { margin-bottom:12px; }
.ecw-odl-cta { display:flex; align-items:center; gap:12px; }
.ecw-odl-price { font-weight:600; }

/* Buttons (table fallback) */
.ilt_add_to_cart_button, .odl_add_to_cart_button {
  background:#000; color:#fff; border:0; padding:10px 16px; border-radius:6px; font-weight:700; cursor:pointer;
}
.ilt_add_to_cart_button:hover, .odl_add_to_cart_button:hover { opacity:.9; }
