.q-loading__box.calendar-lesson-setup {
  width: min(540px, calc(100vw - 32px));
  max-width: 540px;
  max-height: calc(100dvh - 32px);
  padding: 26px;
  overflow: auto;
  border: 1px solid white;
  border-radius: 30px;
  background: white;
  color: #303038;
  box-shadow: 0 12px 45px #0003;
}
.calendar-lesson-setup > .q-loading__spinner { display: none; }
.calendar-lesson-setup > .q-loading__message { width: 100%; margin: 0; text-align: left; }
.calendar-lesson-setup__title { margin: 0; color: var(--primary-color, #905d95); font-size: 25px; line-height: 1.3; font-weight: 700; }
.calendar-lesson-setup__range { margin-top: 6px; color: #666; }
.calendar-lesson-setup__summary { margin-top: 20px; font-weight: 600; }
.calendar-lesson-setup__bar { height: 7px; margin: 10px 0 20px; overflow: hidden; border-radius: 20px; background: #eee; }
.calendar-lesson-setup__bar > span { display: block; height: 100%; border-radius: inherit; background: var(--primary-color, #905d95); transition: width .2s; }
.calendar-lesson-setup__steps { margin: 0; padding: 0; list-style: none; }
.calendar-lesson-setup__step { display: grid; grid-template-columns: 24px 1fr; gap: 12px; align-items: start; padding: 9px 0; color: #777; }
.calendar-lesson-setup__indicator { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; width: 22px; height: 22px; border: 2px solid #d6d6dc; border-radius: 50%; font-size: 14px; line-height: 1; }
.calendar-lesson-setup__step--active { color: #303038; }
.calendar-lesson-setup__step--active .calendar-lesson-setup__label { font-weight: 700; }
.calendar-lesson-setup__step--active .calendar-lesson-setup__indicator { border-color: color-mix(in srgb, var(--primary-color, #905d95) 25%, white); border-top-color: var(--primary-color, #905d95); animation: calendar-lesson-setup-spin 1s linear infinite; }
.calendar-lesson-setup__step--done .calendar-lesson-setup__indicator { border-color: #42935a; background: #42935a; color: white; }
.calendar-lesson-setup__step--done { color: #3d6248; }
.calendar-lesson-setup__detail { margin-top: 3px; color: #64646f; font-size: 12px; line-height: 1.5; overflow-wrap: anywhere; }
.calendar-lesson-setup__footer { margin: 18px 0 0; color: #777; font-size: 12px; line-height: 1.5; }
@keyframes calendar-lesson-setup-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .calendar-lesson-setup__step--active .calendar-lesson-setup__indicator { animation: none; } }
