body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App-shell{box-sizing:border-box;max-width:1200px;margin:0 auto;padding:20px}.App-title{margin-bottom:16px;font-size:clamp(1.5rem,2.5vw,2rem)}.App-form{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;display:flex}.App-form input,.App-form select,.App-form button,.App-modal select,.App-modal button{border:1px solid #d0d7de;border-radius:6px;min-height:40px;padding:8px 10px;font-size:1rem}.App-form input,.App-form select{flex:160px}.App-form button,.App-modal button{color:#fff;cursor:pointer;background:#2563eb;border:none;flex:none}.App-form button:hover,.App-modal button:hover{background:#1d4ed8}.App-section{margin-bottom:30px}.App-scheduleWrapper{overflow-x:auto}.App-scheduleTable{border-collapse:collapse;width:100%;min-width:640px}.App-scheduleTable th,.App-scheduleTable td{vertical-align:top;border:1px solid #d0d7de;min-width:120px;padding:10px}.App-classCard{border-radius:8px;margin-bottom:10px;padding:10px;box-shadow:0 1px 3px #00000014}.App-classHeader{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.App-classList{margin:6px 0 0 14px;padding:0}.App-classList li{margin-bottom:2px;list-style:none}.App-modalBackdrop{z-index:1000;background-color:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.App-modal{box-sizing:border-box;background:#fff;border-radius:8px;width:min(420px,100%);padding:20px}.App-modalActions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.App-graduatedList{padding-left:20px}.App-graduatedList li{margin-bottom:6px}@media (width<=768px){.App-shell{padding:16px}.App-form{flex-direction:column;align-items:stretch}.App-form input,.App-form select,.App-form button,.App-modal select,.App-modal button{width:100%}.App-scheduleTable{min-width:560px}}@media (width<=480px){.App-shell{padding:12px}.App-modal{padding:16px}.App-classHeader{align-items:flex-start}}
