.school-calendars{display:block!important;min-width:0}.school-calendar{margin:16px 0 30px;min-width:0}.school-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:18px 0}.school-controls strong{flex:1;min-width:170px}.school-legend{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:16px}.school-legend span{padding:6px 10px;border-radius:20px;font-size:.75rem;background:var(--lesson-bg);color:#142d3c}.tone-science{--lesson-bg:#e6e3ff;--lesson-edge:#7660d4}.tone-human{--lesson-bg:#fff0d9;--lesson-edge:#b57213}.tone-tech{--lesson-bg:#dceeff;--lesson-edge:#287bbb}.tone-sport{--lesson-bg:#d8f4e5;--lesson-edge:#208357}.tone-other{--lesson-bg:#f2e6ee;--lesson-edge:#995878}.tone-deadline{--lesson-bg:#ffe0df}.school-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:9px}.school-day{min-width:0;padding:7px;background:rgba(120,140,160,.06);border-radius:16px;border:1px solid rgba(120,140,160,.15)}.school-day h3{font-size:.85rem;margin:8px 2px 14px}.school-today{border:2px solid #147b72}.school-lesson{position:relative;background:var(--lesson-bg);color:#142d3c;border-left:4px solid var(--lesson-edge);border-radius:10px;padding:10px 8px;margin-bottom:8px;overflow-wrap:anywhere;display:flex;flex-direction:column;gap:6px}.school-lesson strong{font-size:.81rem;line-height:1.35}.school-time{font-size:.72rem;font-weight:750;font-variant-numeric:tabular-nums}.school-room{font-size:.7rem}.school-live{font-size:.7rem;font-weight:850;color:#075d58}.school-live[hidden]{display:none}.school-lesson.is-active{outline:2px solid #087d70;animation:lessonPulse 2.8s ease-in-out infinite}.school-deadline{background:#ffe0df;color:#5b2027;border:1px solid #e6989a;border-radius:10px;padding:9px;margin-bottom:12px;overflow-wrap:anywhere}.school-deadline b{font-size:.65rem;display:block;margin-bottom:7px}.school-deadline strong{font-size:.78rem;display:block}.school-deadline p,.school-empty{font-size:.75rem;line-height:1.5}.school-empty{opacity:.7;padding:5px}.school-detail{margin-top:20px}.school-detail summary{cursor:pointer;font-weight:700}.school-detail p{font-size:.9rem}@keyframes lessonPulse{0%,100%{box-shadow:0 0 0 2px rgba(8,125,112,.08)}50%{box-shadow:0 0 0 6px rgba(8,125,112,.28)}}@media(max-width:1050px){.school-week{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:650px){.school-week{grid-template-columns:1fr}.school-day{padding:12px}.school-lesson strong{font-size:1rem}.school-time,.school-room{font-size:.85rem}.school-controls strong{order:-1;width:100%;flex-basis:100%}.school-deadline strong{font-size:.95rem}}@media(prefers-reduced-motion:reduce){.school-lesson.is-active{animation:none}}

.calendar-day.day-saturday,.school-day.day-saturday{background:#e5efff;color:#163c67}.calendar-day.day-holiday,.school-day.day-holiday{background:#ffe7eb;color:#79283b}.calendar-day.day-schoolbreak,.school-day.day-schoolbreak{background:#dcf4e9;color:#174b3e}.day-label{display:block;font-size:.7rem;line-height:1.35;overflow-wrap:anywhere;font-weight:650;margin:5px 0}.calendar-day{height:auto;min-height:62px}.calendar-day .day-label{font-size:.62rem}.calendar-day.today{outline:2px solid #147b72}


.grades-scroll{overflow-x:auto}.diary-grades table{width:100%;border-collapse:collapse}.diary-grades caption{text-align:left;font-weight:700;padding:10px 0}.diary-grades th,.diary-grades td{text-align:left;padding:12px;border-bottom:1px solid #d7e5e2;vertical-align:top}.diary-grades thead{background:#e4f2ee;color:#173c37}.diary-grades tbody th{width:35%;font-weight:600}.diary-grades tbody tr:nth-child(even){background:rgba(80,150,140,.06)}.grade-entry{display:flex;gap:10px;align-items:flex-start;margin:4px 0}.grade-value{background:#e8e2ff;color:#40316f;padding:5px 9px;border-radius:9px;white-space:nowrap}.grade-entry span{font-size:.88rem}@media(max-width:650px){.diary-grades th,.diary-grades td{padding:8px}.grade-entry{display:block}.grade-entry span{display:block;margin-top:7px}.diary-grades tbody th{width:38%}}

.school-lesson.school-changed{border:2px solid #b66b00;background:#fff1d5;color:#332400}.school-changed p{font-size:.85rem}.school-changed a{color:#694000;text-decoration:underline}
