/* One saved schedule, two reading modes. Shared by the cabinet and local preview. */
.study-view.study-calendar-page > * { max-width: 1120px; }
.study-calendar-toolbar, .study-plan-modes, .study-week-nav { display: flex; align-items: center; gap: var(--space-2); }
.study-calendar-toolbar { margin: var(--space-4) 0 var(--space-6); }
.study-plan-edit { margin-top: var(--space-4); }
.study-plan-edit summary { cursor: pointer; width: fit-content; padding: var(--space-3) 0; min-height: 44px; }
.study-plan-edit .study-form { margin-top: var(--space-4); }
.study-plan-modes .button { background: transparent; }
.study-plan-modes .button[aria-pressed="true"] { color: var(--ink); background: var(--paper); border-color: var(--amber-deep); font-weight: 650; }
.study-plan-layout { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(280px, 1fr); gap: var(--space-8); }
.study-calendar, .study-event-details { min-width: 0; }
.study-week-nav { justify-content: space-between; margin-bottom: var(--space-4); }
.study-week-nav h3 { margin: 0; font-size: 16px; font-variant-numeric: tabular-nums; }
.study-week-nav button { min-width: 44px; }
.study-week-days { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); list-style: none; padding: 0; margin: 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.study-calendar-day { min-width: 0; min-height: 240px; padding: var(--space-3) var(--space-1); border-right: 1px solid var(--line); }
.study-calendar-day:last-child { border-right: 0; }
.study-calendar-day > time { display: block; min-height: 48px; padding: 0 var(--space-1); font-size: 13px; color: var(--muted); font-variant-numeric: tabular-nums; }
.study-calendar-day > time[aria-current="date"] { color: var(--amber-deep); font-weight: 650; }
.study-calendar-event { width: 100%; display: grid; gap: var(--space-3); padding: var(--space-3) var(--space-2); border: 0; border-radius: var(--radius-control); text-align: left; background: var(--paper); color: var(--ink); font: inherit; cursor: pointer; }
.study-calendar-event:hover { background: var(--sidebar); }
.study-calendar-event:focus-visible { outline: 2px solid var(--amber-deep); outline-offset: 2px; }
.study-calendar-event[aria-pressed="true"] { box-shadow: inset 0 -3px var(--amber-deep); }
.study-event-title { display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; font-size: 13px; line-height: 1.5; overflow-wrap: normal; }
.study-event-status { color: var(--muted); font-size: 12px; line-height: 1.5; overflow-wrap: normal; }
.study-calendar-empty { display: block; padding: var(--space-2); color: var(--muted); font-size: 12px; }
.study-event-details { border-top: 1px solid var(--line); padding-top: var(--space-4); }
.study-event-details h2 { font: 24px/1.35 var(--reading); margin: 0 0 var(--space-3); }
.study-lesson-details h3 { font-size: 14px; margin: var(--space-6) 0 var(--space-2); }
.study-lesson-details p { line-height: 1.65; margin: var(--space-2) 0 var(--space-4); }
.study-event-meta { color: var(--muted); font-size: 13px; font-variant-numeric: tabular-nums; }
.study-move { margin-top: var(--space-4); }
.study-move summary { display: list-item; width: fit-content; cursor: pointer; padding: var(--space-3) 0; min-height: 44px; }
.study-move .study-form { margin-top: var(--space-3); }
.study-move input[type="date"] { min-width: 0; width: 100%; min-height: 44px; padding: var(--space-2) var(--space-3); font: inherit; color: var(--ink); background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius-control); }
.study-move-feedback:empty { display: none; }
.study-move-feedback .button { margin-top: var(--space-3); }
.study-move .button[hidden] { display: none; }
@media (min-width: 1601px) {
  .study-view.study-calendar-page > * { max-width: 1280px; }
  .study-plan-layout { grid-template-columns: minmax(0, 2.4fr) minmax(300px, 1fr); }
}
@media (max-width: 1600px) {
  .study-week-days { grid-template-columns: 1fr; border-bottom: 0; }
  .study-calendar-day { display: grid; grid-template-columns: 84px minmax(0, 1fr); gap: var(--space-3); min-height: 72px; padding: var(--space-3) 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .study-calendar-day > time { padding-top: var(--space-2); }
  .study-event-title { font-size: 14px; overflow-wrap: normal; }
  .study-calendar-event { gap: var(--space-1); }
}
@media (max-width: 900px) {
  .study-plan-layout { grid-template-columns: 1fr; gap: var(--space-6); }
  .study-event-details h2 { font-size: 23px; }
}
