/* =========================================================
   NetMob 2026 — Conference Schedule
   Scoped to .schedule to avoid affecting the rest of the site.
   ========================================================= */

   .schedule {
    --schedule-brand: #275dbd;
    --schedule-header: #e8f2ff;
    --schedule-border: #d8e3f2;
    --schedule-text: #333;
    --schedule-muted: #6b7280;
  }
  
  /* Container */
  .schedule .schedule-wrap {
    width: 100%;
    overflow-x: auto;
    margin: 0 auto;
  }
  
  /* Table — scoped so it does not affect other tables */
  .schedule .schedule-wrap table {
    width: 100%;
    min-width: 1050px;
    border-collapse: collapse;
    table-layout: fixed;
    font-size: 16px;
    color: var(--schedule-text);
    background: #fff;
    font-family: inherit;
  }
  
  .schedule .schedule-wrap col.time {
    width: 13%;
  }
  
  .schedule .schedule-wrap col.day {
    width: 29%;
  }
  
  /* All cells centered */
  .schedule .schedule-wrap th,
  .schedule .schedule-wrap td {
    border: 1px solid var(--schedule-border);
    text-align: center;
    vertical-align: middle;
    padding: 9px 10px;
  }
  
  /* Only the table header uses the site's blue */
  .schedule .schedule-wrap thead th {
    background: var(--schedule-header);
    color: var(--schedule-brand);
    font-weight: 700;
    height: 46px;
  }
  
  /* Time column */
  .schedule .schedule-wrap .time {
    font-weight: 700;
    white-space: nowrap;
    background: #fff;
    color: var(--schedule-text);
  }
  
  /* Regular events */
  .schedule .schedule-wrap .event {
    font-weight: 500;
    background: #fff;
  }
  
  /* Sessions — original neutral/green appearance retained */
  .schedule .schedule-wrap .session-cell {
    background: #dcebd7;
    color: #2f7d32;
    font-weight: 700;
    font-size: 18px;
  }
  
  /* Keynotes */
  .schedule .schedule-wrap .keynote-cell {
    background: #fff200;
    color: var(--schedule-text);
    text-align: center;
    font-weight: 500;
  }
  
  /* Opening */
  .schedule .schedule-wrap .opening-cell {
    background: #f7dfc7;
    color: var(--schedule-text);
    text-align: center;
  }
  
  /* Lunch */
  .schedule .schedule-wrap .lunch-cell {
    background: #ddd5eb;
    color: var(--schedule-text);
    font-weight: 500;
  }
  
  /* Qualcomm talk */
  .schedule .schedule-wrap .talk-cell {
    background: #fff200;
    color: var(--schedule-text);
    text-align: center;
  }
  
  .schedule .schedule-wrap .talk-cell strong {
    color: var(--schedule-brand);
  }
  
  /* Panel */
  .schedule .schedule-wrap .panel-cell {
    background: #d8e8f8;
    color: var(--schedule-text);
    text-align: center;
    font-size: 15px;
    line-height: 1.35;
  }
  
  .schedule .schedule-wrap .panel-cell strong {
    color: var(--schedule-brand);
  }
  
  /* Conference cocktail */
  .schedule .schedule-wrap .cocktail-cell {
    background: #f7a12b;
    color: var(--schedule-text);
    text-align: center;
    font-weight: 500;
  }
  
  /* Optional event */
  .schedule .schedule-wrap .optional-cell {
    background: #f7a12b;
    color: var(--schedule-text);
    text-align: center;
    font-size: 16px;
    line-height: 1.35;
    font-weight: 500;
  }
  
  /* Awards */
  .schedule .schedule-wrap .awards-cell {
    background: #f7dfc7;
    color: var(--schedule-text);
    text-align: center;
  }
  
  /* Small secondary text */
  .schedule .schedule-wrap .small {
    font-size: 14px;
    color: #000;
    font-weight: 700;
  }
  /* Mobile */
  @media (max-width: 800px) {
    .schedule .schedule-wrap table {
      min-width: 850px;
      font-size: 14px;
    }
  
    .schedule .schedule-wrap th,
    .schedule .schedule-wrap td {
      padding: 8px;
    }
  
    .schedule .schedule-wrap .session-cell {
      font-size: 16px;
    }
  }
  