*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f7fa;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{background-color:#021d46;min-height:100vh}.loading{align-items:center;background-color:#f5f7fa;display:flex;flex-direction:column;height:100vh;justify-content:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #e3e8ef;border-radius:50%;border-top-color:#3b82f6;height:50px;margin-bottom:20px;width:50px}.loading p{color:#64748b;font-size:16px;font-weight:500}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.dashboard{background-color:#f3f4f5;min-height:100vh}.dashboard-content{margin:0 auto;max-width:1400px;padding:20px}.header{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 6px #0000001a;color:#fff;padding:20px 0}.header-content{justify-content:space-between;margin:0 auto;max-width:1400px;padding:0 20px}.header-content,.header-left{align-items:center;display:flex}.header-left{gap:20px}.back-button{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .3s ease}.back-button:hover{background:#ffffff4d;transform:translateY(-1px)}.dashboard-title{color:#fff;font-size:28px;font-weight:700;margin:0}.teacher-details{display:flex;font-size:14px;gap:15px;opacity:.9}.teacher-name{font-weight:600}.current-date{font-size:14px;opacity:.9}section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 4px #0000000d;margin-bottom:24px;padding:24px}.section-title{color:#1e293b;font-size:20px;font-weight:600;margin:0 0 8px}.section-description{color:#64748b;font-size:14px;margin:0 0 24px}.metrics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.metric-card{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 4px #0000000d;display:flex;gap:16px;padding:20px;transition:all .3s ease}.metric-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.metric-icon{border-radius:12px;font-size:24px;height:48px;width:48px}.metric-blue .metric-icon{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.metric-green .metric-icon{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.metric-purple .metric-icon{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.metric-orange .metric-icon{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.metric-content{flex:1 1}.metric-title{color:#64748b;font-size:14px;font-weight:500;margin:0 0 4px}.metric-value{font-size:24px;font-weight:700;margin:0}.metric-value.excellent{color:#059669}.metric-value.good{color:#3b82f6}.metric-value.average{color:#f59e0b}.metric-value.needs-improvement{color:#dc2626}.comparison-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.class-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 4px #0000000d;cursor:pointer;padding:20px;transition:all .3s ease}.class-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.class-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.class-name{color:#1e293b;font-size:18px;font-weight:600;margin:0}.class-overall{border-radius:8px;font-size:24px;font-weight:700;padding:8px 12px}.class-overall.excellent{background:#dcfce7;color:#059669}.class-overall.good{background:#dbeafe;color:#1d4ed8}.class-overall.average{background:#fef3c7;color:#d97706}.class-overall.needs-improvement{background:#fee2e2;color:#dc2626}.class-subjects{margin-bottom:16px}.subject-item{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:8px 0}.subject-item:last-child{border-bottom:none}.subject-label{color:#64748b;font-size:14px;font-weight:500}.subject-score{font-size:14px;font-weight:600}.subject-score.excellent{color:#059669}.subject-score.good{color:#1d4ed8}.subject-score.average{color:#d97706}.subject-score.needs-improvement{color:#dc2626}.class-footer{align-items:center;border-top:1px solid #f1f5f9;display:flex;justify-content:space-between;padding-top:16px}.student-count{color:#64748b;font-size:14px}.view-details-btn{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .3s ease}.view-details-btn:hover{background:#2563eb;transform:translateY(-1px)}.subjects-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.subject-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 4px #0000000d;padding:20px}.subject-header{gap:12px;margin-bottom:16px}.subject-header,.subject-icon{align-items:center;display:flex}.subject-icon{background:#f1f5f9;border-radius:8px;font-size:20px;height:40px;justify-content:center;width:40px}.subject-name{color:#1e293b;font-size:16px;font-weight:600;margin:0}.subject-comparison{align-items:center;display:flex;gap:16px;margin-bottom:12px}.class-score{align-items:center;display:flex;flex-direction:column;min-width:80px}.class-label{color:#64748b;font-size:12px;margin-bottom:4px}.score-value{font-size:16px;font-weight:600}.score-value.excellent{color:#059669}.score-value.good{color:#1d4ed8}.score-value.average{color:#d97706}.score-value.needs-improvement{color:#dc2626}.comparison-bar{background:#f1f5f9;border-radius:4px;flex:1 1;height:8px;overflow:hidden;position:relative}.bar-container{display:flex;height:100%}.bar{border-radius:4px;height:100%;transition:all .3s ease}.room201-bar{background:linear-gradient(90deg,#3b82f6,#1d4ed8)}.bar.excellent,.room202-bar{background:linear-gradient(90deg,#10b981,#059669)}.bar.good{background:linear-gradient(90deg,#3b82f6,#1d4ed8)}.bar.average{background:linear-gradient(90deg,#f59e0b,#d97706)}.bar.needs-improvement{background:linear-gradient(90deg,#dc2626,#b91c1c)}.subject-difference{align-items:center;border-top:1px solid #f1f5f9;display:flex;gap:8px;justify-content:center;padding-top:12px}.difference-label{color:#64748b;font-size:12px}.difference-value{font-size:14px;font-weight:600}.difference-value.significant{color:#dc2626}.difference-value.minimal{color:#059669}.class-detail{margin:0 auto;max-width:1400px;padding:20px}.detail-header{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 4px #0000000d;margin-bottom:24px;padding:24px}.detail-title h2{color:#1e293b;font-size:24px;font-weight:600;margin:0 0 8px}.detail-subtitle{color:#64748b;font-size:14px;margin:0}.detail-content{grid-gap:24px;display:grid;gap:24px}.detail-metrics{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 4px #0000000d;padding:24px}.metrics-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.metric-item{gap:12px}.metric-icon,.metric-item{align-items:center;display:flex}.metric-icon{background:#f1f5f9;border-radius:8px;font-size:20px;height:40px;justify-content:center;width:40px}.metric-info{display:flex;flex-direction:column}.metric-label{color:#64748b;font-size:12px;margin-bottom:4px}.student-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 4px #0000000d;padding:24px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.section-header h3{color:#1e293b;font-size:18px;font-weight:600;margin:0}.filter-select{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:14px;padding:8px 12px}.filter-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.student-list{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.list-header{background:#f8fafc;border-bottom:1px solid #e2e8f0;display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr}.header-cell{color:#374151;font-size:14px;font-weight:600;padding:12px 16px;text-align:center}.header-cell:first-child{text-align:left}.list-body{background:#fff}.student-row{border-bottom:1px solid #f1f5f9;display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;transition:background-color .2s ease}.student-row:hover{background:#f8fafc}.student-row:last-child{border-bottom:none}.student-cell{align-items:center;display:flex;justify-content:space-between;padding:12px 16px}.student-info{display:flex;flex-direction:column}.student-name{color:#1e293b;font-size:14px;font-weight:500}.student-rank{color:#64748b;font-size:12px}.score-cell{font-size:14px;font-weight:600;padding:12px 16px;text-align:center}.score-cell.excellent{color:#059669}.score-cell.good{color:#1d4ed8}.score-cell.average{color:#d97706}.score-cell.needs-improvement{color:#dc2626}.score-cell.average{font-weight:700}@media (max-width:768px){.dashboard-content{padding:16px}.header-content{flex-direction:column;gap:16px;text-align:center}.teacher-details{flex-direction:column;gap:8px}.comparison-grid,.metrics-grid,.metrics-row,.subjects-grid{grid-template-columns:1fr}.list-header,.student-row{gap:8px;grid-template-columns:1fr}.header-cell,.score-cell,.student-cell{padding:8px 12px;text-align:center}.student-cell{justify-content:center}}
/*# sourceMappingURL=main.2a5c0a8f.css.map*/