:root{font-family:system-ui,sans-serif;color:#17252a;background:#edf1f1}*{box-sizing:border-box}body{margin:0}header{display:flex;justify-content:space-between;align-items:center;padding:22px max(20px,calc((100% - 1120px)/2));background:#153d4a;color:white}header nav{display:flex;gap:8px}header form{margin:0}h1,h2,h3,p{margin-top:0}h1{margin-bottom:0}button{padding:10px 16px;border:0;background:#f1b434;font-weight:800}main{max-width:1120px;margin:auto;padding:24px 20px}.child{margin-bottom:38px}.child>h2{border-bottom:4px solid #d34836;padding-bottom:8px}.grid{display:grid;grid-template-columns:1fr;gap:14px}article{background:white;padding:18px;border-top:3px solid #238578}.schedule h3{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px}.schedule-day{color:#607076;font-size:14px;font-weight:600;text-align:right;text-transform:capitalize}.week-toggle{font-size:19px;height:38px;padding:0;width:42px}.schedule-timeline{overflow-x:hidden;padding:0 4px 8px}.timeline-inner{min-width:0;width:100%}.timeline-axis{height:30px;position:relative;color:#607076;font-size:11px}.timeline-axis span{bottom:5px;position:absolute;transform:translateX(-50%)}.timeline-axis span:first-child{transform:none}.timeline-axis span:last-child{transform:translateX(-100%)}.timeline-track,.week-day-track{background-image:repeating-linear-gradient(to right,transparent 0,transparent calc(14.286% - 1px),#dce3e3 calc(14.286% - 1px),#dce3e3 14.286%);border-top:1px solid #dce3e3;position:relative}.timeline-track{height:98px}.timeline-lesson{border-left:4px solid;height:82px;overflow:hidden;padding:7px 5px;position:absolute;top:8px}.timeline-lesson b,.timeline-lesson time,.timeline-lesson strong,.lesson-teacher{display:block}.timeline-lesson b{font-size:13px;line-height:1.15}.timeline-lesson time{color:inherit;font-size:10px;margin-top:5px;opacity:.78;white-space:nowrap}.lesson-teacher{font-size:10px;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timeline-lesson strong{font-size:10px;margin-top:3px}.subject-math{background:#f6c7c4;border-color:#c9362b}.subject-czech{background:#ffd7ad;border-color:#e87519}.subject-nature{background:#cfe8ce;border-color:#348a45}.subject-homeland{background:#dfc5ae;border-color:#87552f}.subject-it{background:#ccebf4;border-color:#3d94ae}.subject-art{background:#ffe99a;border-color:#d6a900}.subject-pe{background:#decdf1;border-color:#7650a6}.subject-english{background:#244f89;border-color:#112f59;color:#fff}.subject-music{background:#fff3c4;border-color:#d6b84c}.subject-other{background:#e7f0f5;border-color:#2166b1}.timeline-lesson.cancelled,.week-lesson.cancelled{background:#ffe7e2;border-color:#c83228;color:#9b2519}.week-schedule{border-top:1px solid #dce3e3;margin-top:12px;padding-top:6px}.week-row{display:grid;grid-template-columns:120px 1fr;gap:10px;padding:7px 0}.week-row>strong{align-self:center;text-transform:capitalize}.week-day-track{height:82px}.week-lesson{border-left:3px solid;height:72px;overflow:hidden;padding:6px 4px;position:absolute;top:5px}.week-lesson b,.week-lesson time{display:block}.week-lesson b{font-size:11px;line-height:1.1}.week-lesson time{font-size:9px;margin-top:4px;opacity:.78;white-space:nowrap}.subject-icon{display:inline-block;margin-right:6px}.flag-icon{display:inline-block;height:15px;object-fit:cover;vertical-align:-2px;width:20px}.homework-item,.exam-item,.subject{padding:9px 0;border-bottom:1px solid #dce3e3}.subject>summary{cursor:pointer;font-size:16px;padding:5px 0}.subject>p{margin:12px 0 8px}.curriculum-entries{border-left:3px solid #dce3e3;margin-top:12px;padding:4px 0 4px 12px}.cancelled{background:#ffe7e2;color:#9b2519;padding:8px}.meta{color:#607076;font-size:13px}details{margin-top:7px}details p{margin:6px 0}.login-page main{min-height:100vh;display:grid;place-items:center}.login-form{width:min(440px,100%);background:white;padding:28px;border-top:5px solid #238578}.login-form label{display:block;margin:16px 0;font-weight:700}.login-form input{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid #aebabc;font:inherit}.error{color:#a1261a;font-weight:700}@media(max-width:700px){header{padding:16px 20px}.schedule h3{grid-template-columns:1fr auto}.schedule-day{grid-column:1/-1;grid-row:2;text-align:left}.week-toggle{grid-column:2;grid-row:1}.schedule-timeline,.week-schedule{overflow-x:auto}.timeline-inner,.week-row{min-width:760px}}
