/**
 * 오늘 일정 위젯 — 수업/자습 2개 카드
 * 경로: /common/dashboard/widgets/today-schedule.css
 */

.tsw-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-bottom: 1rem;
}

@media (max-width: 768px) {
  .tsw-grid {
    grid-template-columns: 1fr;
  }
}

.tsw-card {
  margin-bottom: 0;
}

.tsw-card--school .t-card-header .material-symbols-outlined {
  color: var(--t-clay-600);
}

.tsw-card--self .t-card-header .material-symbols-outlined {
  color: var(--t-sage-600);
}

/* 빈 상태 */
.tsw-empty {
  text-align: center;
  padding: 18px 12px;
  color: var(--t-text-sub);
}

.tsw-empty .material-symbols-outlined {
  font-size: 32px;
  color: var(--t-muted);
  display: block;
  margin: 0 auto 6px;
}

.tsw-empty p {
  margin: 0 0 6px;
  font-size: 13px;
}

/* 일정 리스트 */
.tsw-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.tsw-item {
  position: relative;
  border-left: 3px solid var(--tsw-bar, var(--t-border));
  padding-left: 10px;
  margin: 0 0 6px;
  border-radius: 4px;
  transition: background-color .15s ease, opacity .15s ease;
}

.tsw-item:last-child {
  margin-bottom: 0;
}

.tsw-item:hover {
  background-color: color-mix(in srgb, var(--tsw-bar) 8%, transparent);
}

/* ── 진행 상태 (시간 기반 자동) ────────────────────── */
/* 지난 일정 — 약하게 (bar 회색 + 텍스트 dim) */
.tsw-item--past {
  border-left-color: color-mix(in srgb, var(--tsw-bar) 30%, transparent);
  opacity: .55;
}
.tsw-item--past .tsw-item__name { text-decoration: line-through; }

/* 진행 중 — 강조 (굵은 bar + 배경 색 강하게) */
.tsw-item--current {
  border-left-width: 5px;
  background-color: color-mix(in srgb, var(--tsw-bar) 14%, transparent);
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--tsw-bar) 35%, transparent) inset;
}
.tsw-item--current .tsw-item__name { font-weight: 700; }

/* 예정 — 기본 (별도 스타일 없음) */

.tsw-item__link {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 6px 8px;
  text-decoration: none;
  color: var(--t-ink);
  font-size: 13px;
}

.tsw-item__link:hover {
  text-decoration: none;
}

.tsw-item__period {
  font-size: 11px;
  font-weight: 700;
  color: var(--t-clay-700);
  background-color: var(--t-clay-50);
  border: 1px solid color-mix(in srgb, var(--t-clay-300) 50%, transparent);
  border-radius: 10px;
  padding: 1px 6px;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.tsw-item__time {
  font-variant-numeric: tabular-nums;
  font-weight: 600;
  color: var(--t-text-sub);
  white-space: nowrap;
  min-width: 92px;
}

.tsw-item__name {
  flex: 1;
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tsw-item__memo .material-symbols-outlined {
  font-size: 16px;
  color: var(--t-mustard-600);
  vertical-align: middle;
}
