/* weekly card styles for intro programming course page */
  .week-card {
    background: #ffffff;
    border: 1px solid #dce3ee;
    border-radius: 10px;
    margin-bottom: 1.5rem;
    box-shadow: 0 2px 6px rgba(0,0,0,0.05);
    overflow: hidden;
  }

  .progress-bar {
  width: 80px;
  height: 6px;
  background: #e5eaf3;
  border-radius: 3px;
  overflow: hidden;
  margin-right: 10px;
  display: inline-block;
  vertical-align: middle;
}

.progress-fill {
  width: 40%;
  height: 100%;
  background: #003366;
  animation: progressPulse 1s ease-in-out infinite;
}

@keyframes progressPulse {
  from { width: 20%; }
  to   { width: 80%; }
}

  .week-header {
    padding: 1rem 1.25rem;
    background: #eef4ff;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .week-header h3 {
    margin: 0;
    font-size: 1.1rem;
  }

  .week-description {
    background: #f9fbff;
    padding: 0.75rem 1.25rem;
    border-top: 1px solid #e2e8f3;
    border-bottom: 1px solid #e2e8f3;
    font-size: 0.95rem;
    color: #444;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
  }

  .week-description span.arrow {
    font-size: 1.2rem;
    transition: transform 0.3s ease;
    margin-left: 1rem;
  }

  .week-content {
    display: none;
    padding: 1rem 1.5rem;
    background: #ffffff;
  }

  .week-content ul {
    margin: 0;
    padding-left: 1.2rem;
  }

  .week-open-lesson {
  display: inline-block;
  padding: 8px 14px;
  background: #003366;
  color: #fff;
  border-radius: 4px;
  text-decoration: none;
  font-size: 0.9rem;
  font-weight: 500;
  white-space: nowrap;
}

.week-open-lesson:hover {
  background: #1d4ed8;
}
