/* stage-52-schedule-variants-polish */

#entryModal[data-action="schedule"][data-mode="list"] .schedule-records-list {
  align-items: stretch;
}

.schedule-empty {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 156px;
  display: grid;
  place-items: center;
  border: 1px solid color-mix(in srgb, var(--label-schedule, #5f9073) 22%, var(--glass-border));
  border-radius: 28px;
  background:
    radial-gradient(circle at 16% 0%, color-mix(in srgb, var(--label-schedule, #5f9073) 12%, transparent), transparent 18rem),
    radial-gradient(circle at 96% 0%, color-mix(in srgb, var(--primary) 7%, transparent), transparent 16rem),
    color-mix(in srgb, var(--glass-surface) 76%, transparent);
  box-shadow:
    var(--focus-shadow),
    inset 0 1px 0 color-mix(in srgb, #fff 15%, transparent);
  backdrop-filter: blur(22px);
  -webkit-backdrop-filter: blur(22px);
  color: var(--muted-strong);
  font-size: 0.95rem;
  font-weight: 700;
  line-height: 1.45;
  text-align: center;
  text-wrap: balance;
  padding: clamp(18px, 3vw, 28px);
}

.schedule-empty::before {
  position: absolute;
  inset: 12px;
  border: 1px solid color-mix(in srgb, #fff 16%, transparent);
  border-radius: 22px;
  background:
    linear-gradient(135deg, color-mix(in srgb, #fff 16%, transparent), transparent 42%),
    radial-gradient(circle at 50% 100%, color-mix(in srgb, var(--label-schedule, #5f9073) 7%, transparent), transparent 16rem);
  content: "";
  pointer-events: none;
  z-index: -1;
}

.schedule-empty-filter {
  border-style: dashed;
  border-color: color-mix(in srgb, var(--primary) 26%, var(--glass-border));
  background:
    radial-gradient(circle at 20% 0%, color-mix(in srgb, var(--primary) 10%, transparent), transparent 17rem),
    color-mix(in srgb, var(--glass-surface) 72%, transparent);
  color: color-mix(in srgb, var(--primary) 54%, var(--muted-strong));
}

.schedule-entry-card.is-paused {
  filter: saturate(0.68) brightness(0.96);
  opacity: 0.9;
}

.schedule-entry-card.is-paused::before {
  background:
    linear-gradient(120deg, color-mix(in srgb, #fff 12%, transparent), transparent 36%),
    repeating-linear-gradient(135deg, color-mix(in srgb, var(--schedule-entry-color, var(--label-schedule, #5f9073)) 9%, transparent) 0 1px, transparent 1px 9px);
  opacity: 0.58;
}

.schedule-entry-card.is-paused:is(:hover, :focus-visible) {
  filter: saturate(0.8) brightness(1);
  opacity: 1;
}

.schedule-entry-status-pill.is-active {
  border-color: color-mix(in srgb, var(--schedule-entry-color, var(--label-schedule, #5f9073)) 34%, var(--glass-border));
  background:
    radial-gradient(circle at 20% 0%, color-mix(in srgb, #fff 18%, transparent), transparent 58%),
    color-mix(in srgb, var(--schedule-entry-color, var(--label-schedule, #5f9073)) 16%, var(--glass-surface));
  color: color-mix(in srgb, var(--schedule-entry-color, var(--label-schedule, #5f9073)) 72%, var(--text));
  box-shadow:
    inset 0 1px 0 color-mix(in srgb, #fff 14%, transparent),
    0 0 22px color-mix(in srgb, var(--schedule-entry-color, var(--label-schedule, #5f9073)) 18%, transparent);
}

.schedule-entry-status-pill.is-paused {
  border-color: color-mix(in srgb, var(--muted) 22%, var(--glass-border));
  background:
    radial-gradient(circle at 22% 0%, color-mix(in srgb, #fff 13%, transparent), transparent 58%),
    color-mix(in srgb, var(--glass-surface) 70%, transparent);
  color: var(--muted-strong);
}

.schedule-detail-view .focus-task-empty {
  position: relative;
  overflow: hidden;
  border: 1px dashed color-mix(in srgb, var(--schedule-detail-color, var(--label-schedule, #5f9073)) 22%, var(--glass-border));
  border-radius: 22px;
  background:
    radial-gradient(circle at 12% 0%, color-mix(in srgb, var(--schedule-detail-color, var(--label-schedule, #5f9073)) 9%, transparent), transparent 14rem),
    color-mix(in srgb, var(--glass-surface) 74%, transparent);
  box-shadow: inset 0 1px 0 color-mix(in srgb, #fff 12%, transparent);
  color: var(--muted-strong);
  font-weight: 700;
  text-align: center;
}

.music-detail {
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  align-items: start;
}

.music-detail .schedule-day-detail {
  min-height: 100%;
  border-color: color-mix(in srgb, var(--label-creative, #8c7ae6) 15%, var(--glass-border));
  background:
    radial-gradient(circle at 10% 0%, color-mix(in srgb, var(--label-creative, #8c7ae6) 12%, transparent), transparent 12rem),
    linear-gradient(145deg, color-mix(in srgb, var(--glass-elevated) 44%, transparent), color-mix(in srgb, var(--glass-surface) 90%, transparent));
}

.music-detail .schedule-day-detail h3 {
  color: color-mix(in srgb, var(--label-creative, #8c7ae6) 78%, var(--text));
}

.schedule-detail-lesson.practice {
  position: relative;
  overflow: hidden;
  border-style: dashed;
  border-color: color-mix(in srgb, var(--label-creative, #8c7ae6) 28%, var(--glass-border));
  background:
    radial-gradient(circle at 14% 0%, color-mix(in srgb, var(--label-creative, #8c7ae6) 16%, transparent), transparent 12rem),
    color-mix(in srgb, var(--glass-surface) 78%, transparent);
}

.schedule-detail-lesson.practice::before {
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: var(--label-creative, #8c7ae6);
  box-shadow: 0 0 18px color-mix(in srgb, var(--label-creative, #8c7ae6) 42%, transparent);
  content: "";
}

.schedule-detail-lesson.practice span {
  color: color-mix(in srgb, var(--label-creative, #8c7ae6) 62%, var(--text));
}

.schedule-extra-detail {
  border-color: color-mix(in srgb, var(--label-creative, #8c7ae6) 17%, var(--glass-border));
  border-radius: 24px;
  box-shadow: var(--shadow-xs), inset 0 1px 0 color-mix(in srgb, #fff 12%, transparent);
}

@media (max-width: 760px) {
  .schedule-empty {
    min-height: 126px;
    border-radius: 24px;
    padding: 16px;
  }

  .schedule-empty::before {
    inset: 9px;
    border-radius: 19px;
  }

  .music-detail {
    grid-template-columns: 1fr;
  }

  .schedule-detail-lesson.practice {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .schedule-detail-lesson.practice strong {
    grid-column: 2;
    text-align: left;
  }
}

@media (prefers-reduced-motion: reduce) {
  .schedule-entry-card.is-paused,
  .schedule-entry-card.is-paused::before,
  .schedule-empty,
  .schedule-detail-lesson.practice {
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}
