body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}body,html{max-width:100vw;overflow-x:hidden}html{font-size:16px}@media (max-width:900px){html{font-size:15px}}@media (max-width:600px){html{font-size:14px}}@media (max-width:480px){html{font-size:13px}}.responsive-container{box-sizing:border-box;max-width:100%;padding-left:16px;padding-right:16px;width:100%}@media (max-width:600px){.responsive-container{padding-left:8px;padding-right:8px}}.responsive-table-container{-webkit-overflow-scrolling:touch;overflow-x:auto;width:100%}.responsive-table{min-width:100%;table-layout:auto;width:100%}@media (max-width:900px){.responsive-table{table-layout:auto}.responsive-table td,.responsive-table th{word-wrap:break-word;height:auto;-webkit-hyphens:auto;hyphens:auto;max-width:none;min-width:auto;padding:8px 12px;vertical-align:top;white-space:normal;word-break:break-word}}@media (max-width:600px){.responsive-table td,.responsive-table th{font-size:.875rem;height:auto;max-width:none;min-width:auto;padding:6px 8px;vertical-align:top}}.responsive-table td,.responsive-table th{word-wrap:break-word!important;height:auto!important;line-height:1.4!important;max-width:none!important;min-width:auto!important;overflow-wrap:break-word!important;vertical-align:top!important;white-space:normal!important;width:auto!important}.responsive-table .sticky-column{flex-shrink:0;min-width:60px;width:auto}.responsive-table-container table{table-layout:auto!important;width:100%!important}.MuiTable-root{table-layout:auto!important}.attendance-table-container .MuiTable-root,.teacher-attendance-table-container .MuiTable-root{border-spacing:0!important}.MuiTableCell-root:not(.attendance-table-container *):not(.teacher-attendance-table-container *){word-wrap:break-word!important;height:auto!important;line-height:1.4!important;max-width:none!important;min-width:auto!important;overflow-wrap:break-word!important;padding:8px 12px!important;vertical-align:top!important;white-space:normal!important;width:auto!important}.MuiTableCell-root[class*=fixed]:not(.attendance-table-container *):not(.teacher-attendance-table-container *),.MuiTableCell-root[class*=sticky]:not(.attendance-table-container *):not(.teacher-attendance-table-container *){flex-shrink:0!important;min-width:60px!important}.MuiTableRow-root{height:auto!important;min-height:auto!important}.responsive-table .MuiTableCell-root:not(.attendance-table-container *):not(.teacher-attendance-table-container *){height:auto!important;max-width:none!important;min-width:auto!important;width:auto!important}.data-table-responsive .MuiTableCell-root:not(.attendance-table-container *):not(.teacher-attendance-table-container *){word-wrap:break-word!important;height:auto!important;max-width:none!important;min-width:auto!important;white-space:normal!important;width:auto!important}@media (max-width:600px){.MuiTableCell-root:not(.attendance-table-container *):not(.teacher-attendance-table-container *){font-size:.875rem!important;padding:6px 8px!important}.MuiTableCell-root[class*=fixed]:not(.attendance-table-container *):not(.teacher-attendance-table-container *),.MuiTableCell-root[class*=sticky]:not(.attendance-table-container *):not(.teacher-attendance-table-container *){min-width:50px!important}}.responsive-button{font-size:.875rem;min-height:36px;padding:8px 16px}@media (max-width:900px){.responsive-button{font-size:.9rem;min-height:40px;padding:10px 16px}}@media (max-width:600px){.responsive-button{font-size:1rem;min-height:44px;min-width:44px;padding:12px 16px}}.responsive-button-group{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-start}@media (max-width:600px){.responsive-button-group{flex-direction:column;width:100%}.responsive-button-group .responsive-button{justify-content:center;width:100%}}.sidebar-container{transition:margin-left .3s ease}@media (max-width:900px){.sidebar-container.sidebar-open{margin-left:0!important}.sidebar-overlay{background-color:#00000080;bottom:0;left:0;position:fixed;right:0;top:0;z-index:1200}}.main-content{max-width:100%;overflow-x:hidden;transition:all .3s ease;width:100%}@media (min-width:901px){.main-content.sidebar-open{margin-left:240px;width:calc(100% - 240px)}}@media (max-width:900px){.main-content{margin-left:0!important;width:100%!important}}.responsive-form-field{margin-bottom:16px;width:100%}@media (min-width:901px){.responsive-form-row{display:flex;gap:16px}.responsive-form-row .responsive-form-field{flex:1 1}}.responsive-card-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr}@media (min-width:600px){.responsive-card-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:901px){.responsive-card-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:1200px){.responsive-card-grid{grid-template-columns:repeat(4,1fr)}}.responsive-text{word-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word;word-break:break-word}.responsive-text-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:600px){.responsive-text-ellipsis{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;white-space:normal}}.responsive-icon-button{min-height:36px;min-width:36px;padding:6px}@media (max-width:600px){.responsive-icon-button{min-height:44px;min-width:44px;padding:10px}}.responsive-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;padding:8px}@media (max-width:600px){.responsive-toolbar{align-items:stretch;flex-direction:column;gap:12px}.responsive-toolbar>*{width:100%}}.responsive-search{max-width:400px;width:100%}@media (max-width:600px){.responsive-search{max-width:100%}}.responsive-pagination{display:flex;justify-content:center;margin:16px 0}@media (max-width:600px){.responsive-pagination{align-items:center;flex-direction:column;gap:8px}.responsive-pagination .MuiPagination-root{transform:scale(.9)}.responsive-dialog{margin:16px!important;max-height:calc(100% - 32px)!important;max-width:none!important;width:calc(100% - 32px)!important}.responsive-dialog .MuiDialogContent-root{padding:16px 12px}.responsive-menu{max-width:calc(100vw - 32px)}.responsive-select{font-size:1rem;min-height:44px}}.data-table-responsive{overflow:hidden;width:100%}@media (max-width:900px){.data-table-responsive table{display:block;overflow-x:auto;white-space:nowrap}.data-table-responsive td,.data-table-responsive th{min-width:80px;white-space:nowrap}}@media (max-width:600px){.data-table-responsive{font-size:.8rem}.data-table-responsive td,.data-table-responsive th{min-width:60px;padding:4px 8px}}.responsive-input{width:100%}@media (max-width:600px){.responsive-input .MuiInputBase-root{font-size:1rem;padding:12px 14px}.responsive-input .MuiInputLabel-root{font-size:1rem}}.bottom-navigation-spacer{height:72px}@media (min-width:600px){.bottom-navigation-spacer{display:none}}.main-content-container{min-height:calc(100vh - 64px);padding-bottom:0}@media (max-width:599px){.main-content-container{padding-bottom:80px}}.prevent-overflow{overflow:hidden}.prevent-overflow,.prevent-overflow *{box-sizing:border-box;max-width:100%}.responsive-image{display:block;height:auto;max-width:100%}.force-responsive{box-sizing:border-box!important;max-width:100%!important;overflow-x:hidden!important}.performance-optimized{transform:translateZ(0);will-change:transform}@media (pointer:coarse){.touch-optimized{min-height:44px!important;min-width:44px!important;padding:12px!important}}.ios-style-button{-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.ios-style-button:active{transform:scale(.95)!important}.ios-blur-background{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#f8f8f8f2}.ios-shadow{box-shadow:0 4px 20px #00000014,0 2px 8px #0000001f}@keyframes ios-bounce{0%{transform:scale(1)}50%{transform:scale(.95)}to{transform:scale(1)}}.ios-bounce{animation:ios-bounce .3s ease-in-out}.ios-rounded{border-radius:20px}.ios-rounded-small{border-radius:12px}.ios-gradient-blue{background:linear-gradient(135deg,#007aff,#0056cc)}.ios-gradient-green{background:linear-gradient(135deg,#34c759,#248a3d)}.ios-gradient-orange{background:linear-gradient(135deg,#ff9500,#c70)}.ios-gradient-red{background:linear-gradient(135deg,#ff3b30,#cc2e24)}.ios-gradient-purple{background:linear-gradient(135deg,#af52de,#8b41b3)}.ios-text-primary{color:#007aff;font-weight:600}.ios-text-secondary{color:#8e8e93;font-weight:500}.ios-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffe6;border:1px solid #fff3;border-radius:16px;box-shadow:0 8px 32px #0000001a,0 4px 16px #00000014}.ios-bottom-nav{border-top:1px solid #0000001a}.ios-bottom-nav,.ios-top-nav{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#f8f8f8f2}.ios-top-nav{border-bottom:1px solid #0000001a}.ios-button-grid{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#f8f8f8f2;border-radius:20px;box-shadow:0 4px 20px #00000014,0 2px 8px #0000001f;margin:8px;overflow-x:auto;padding:16px;white-space:nowrap}@media (max-width:600px){.ios-button-grid{align-items:center;border-radius:16px;display:flex;flex-direction:row;gap:8px;justify-content:flex-start;margin:4px;padding:12px}.ios-style-button{flex-shrink:0;margin:4px}}@media (prefers-color-scheme:dark){.ios-blur-background,.ios-bottom-nav,.ios-top-nav{background:#1c1c1ef2}.ios-card{background:#2c2c2ee6;border:1px solid #ffffff1a}.ios-button-grid{background:#1c1c1ef2}}@media (prefers-reduced-motion:reduce){.ios-bounce,.ios-style-button{animation:none;transition:none}.ios-style-button:active,.ios-style-button:hover{transform:none!important}}
/*# sourceMappingURL=main.51fb9813.css.map*/