.school-main{max-width:1100px;padding-top:55px;padding-bottom:65px}.school-main h1{font-size:clamp(30px,4vw,45px);letter-spacing:-1.8px;margin-top:12px}.intro{color:var(--muted);margin:12px 0 30px}.panel{padding:28px;border:1px solid var(--line);border-radius:16px;background:var(--surface);margin-bottom:22px}.panel h2{font-size:23px;margin-bottom:19px}.school-main input,.school-main select,.school-main button{font:inherit;border:1px solid var(--line);border-radius:8px;padding:11px 14px;background:var(--paper);color:var(--ink);min-height:45px;max-width:100%}.school-main button{cursor:pointer}.search-row{display:flex;gap:10px;margin-top:8px}.search-row input{flex:1;min-width:0}.search-row button,.class-form button{background:var(--green);color:var(--on-accent);font-weight:700}.help,.school-source{font-size:12px;color:var(--muted);margin-top:13px;line-height:1.9}#searchStatus{margin-top:12px}#schoolResults{display:grid;gap:8px;margin-top:10px}.school-result{text-align:left;display:block;width:100%}.school-result small{display:block;color:var(--muted)}#selectedSchool:not(:empty){margin-top:18px;background:var(--soft);padding:16px;border-radius:10px;color:var(--green)}#selectedSchool small{display:block}.date-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:28px 0 20px}.date-bar label{display:flex;align-items:center;gap:10px}.school-columns{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.class-form{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.class-form label{display:grid;gap:6px;font-size:13px}.class-form input{width:100px}.meal{padding:16px 0;border-top:1px solid var(--line)}.meal h3{color:var(--green);font-size:18px;margin-bottom:9px}.menu-line{margin-bottom:5px}.calories{color:var(--muted);font-size:13px;margin-top:10px}details{margin-top:16px}summary{cursor:pointer;font-size:13px}.lessons{width:100%;border-collapse:collapse;margin-top:20px}.lessons th,.lessons td{border-bottom:1px solid var(--line);padding:13px 8px;text-align:left}.lessons th{color:var(--green);width:65px;white-space:nowrap}.empty{padding:30px 0;color:var(--muted)}.error{color:var(--green);padding:20px 0}.school-source a{text-decoration:underline}.brand-mascot{width:32px;height:44px;object-fit:contain}@media(max-width:700px){.school-main{padding:30px 20px}.school-columns{grid-template-columns:1fr;gap:0}.panel{padding:22px}.date-bar{gap:7px}.date-bar input{max-width:160px}.search-row button{padding:10px}.school-main label{font-size:13px}}
