:root{color:#101820;background:#f5f5f7;font-family:system-ui,sans-serif}body{margin:0}main{max-width:38rem;margin:10vh auto;padding:1.5rem}h1{font-size:clamp(1.7rem,5vw,2.5rem);line-height:1.3}p{line-height:1.7}.brand{letter-spacing:.12em;font-size:.8rem}select{min-height:44px;font:inherit;border-radius:.4rem;padding:.5rem}:focus-visible{outline-offset:4px;outline:3px solid #1d4f91}.auth-app{margin:2rem auto}header,.row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}section{background:#fff;border:1px solid #dedee4;border-radius:.75rem;margin:1.2rem 0;padding:1.25rem}button{color:#fff;min-height:44px;font:inherit;cursor:pointer;background:#101820;border:0;border-radius:.4rem;margin:.4rem .4rem .4rem 0;padding:.75rem 1rem}button:disabled{cursor:not-allowed;background:#62676b}input:not([type=checkbox]),textarea{box-sizing:border-box;width:100%;font:inherit;border:1px solid #8c9399;border-radius:.35rem;margin:.4rem 0 1rem;padding:.65rem;display:block}input[type=checkbox]{flex-shrink:0;width:1.25rem;height:1.25rem}.check{align-items:center;gap:.7rem;min-height:44px;display:flex}.notice{background:#eaf1f9;border-radius:.4rem;padding:1rem}.error{color:#851a27;background:#fff0f0}summary{cursor:pointer;min-height:44px;padding-top:.5rem;font-weight:600}.plain-text{white-space:pre-wrap;overflow-wrap:anywhere}fieldset{border:1px solid #dedee4;margin:1rem 0}.student-list{padding:0;list-style:none}.student-list li{overflow-wrap:anywhere;border-bottom:1px solid #dedee4;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.6rem 0;display:flex}.student-list small{display:block}fieldset select{max-width:100%;margin:.4rem 0 1rem;display:block}.auth-app:has(.calendar){max-width:72rem}.calendar-toolbar{flex-wrap:wrap;align-items:start;gap:1.25rem;display:flex}.calendar-toolbar select{max-width:100%;margin-top:.4rem;display:block}.calendar-days{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.7rem;display:grid}.calendar-day{border:1px solid #dedee4;border-radius:.5rem;min-width:0;padding:.65rem}.calendar-day h3{margin-top:0;font-size:1rem}.lesson-card{overflow-wrap:anywhere;background:#f5f5f7;border-left:3px solid #8a1538;margin-bottom:.65rem;padding:.65rem}.lesson-card p{margin:.35rem 0}.request-card{border-top:1px solid #dedee4;padding:1rem 0}button[aria-pressed=true]{background:#8a1538}select{max-width:100%}@media (width<=600px){.auth-app{margin:.5rem auto;padding:.65rem}section{padding:.8rem}.calendar-days{grid-template-columns:1fr}.calendar-day:has(>h3:only-child){min-height:1rem}}.install-help{overflow-wrap:anywhere;margin:1rem 0}.install-help p{font-size:.95rem}input,textarea,select{min-width:0}button{overflow-wrap:anywhere}nav{flex-wrap:wrap;gap:.2rem;display:flex}@media (width<=600px){.calendar-toolbar>label,.calendar-toolbar select{width:100%}.calendar nav button{flex:1 0 auto}.calendar .notice h3{overflow-wrap:anywhere}}
