@import"https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";.app-bar{position:fixed;top:0;left:0;width:100%;background-color:#2c3e50;color:#fff;padding:0 2rem;box-shadow:0 2px 10px #0003;z-index:1000;height:64px;display:flex;align-items:center}.app-bar h1{font-family:Poppins,sans-serif;font-weight:600;font-size:1.5rem;letter-spacing:1px}.home-container{font-family:Poppins,sans-serif;background-color:#fcfcfc;color:#334155;min-height:100vh;padding:8rem 1.5rem 4rem;box-sizing:border-box}.tab-nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem;width:100%;max-width:80rem;margin:0 auto}.tab{display:flex;align-items:center;gap:1.5rem;background-color:#fff;border:1px solid #e2e8f0;border-radius:.5rem;padding:1.5rem;text-decoration:none;color:inherit;box-shadow:0 1px 3px #0000000d;transition:transform .2s ease,box-shadow .2s ease,border-left .2s ease;border-left:4px solid transparent}.tab:hover{transform:translateY(-4px);box-shadow:0 7px 14px #00000012}.tab-icon{font-size:2.25rem}.tab h3{font-size:1.25rem;font-weight:600;color:#2c3e50;margin:0 0 .25rem}.tab p{color:#64748b;line-height:1.6;margin:0;font-size:.9rem}.tab.active{border-left:4px solid #c59d5f;box-shadow:0 7px 14px #00000012;transform:translateY(-2px)}.auth-container{display:flex;align-items:center;justify-content:center;min-height:100vh;box-sizing:border-box;width:100%;background-color:#f8fafc;font-family:Inter,sans-serif;padding:1rem}.auth-container .card{background:#fff;border-radius:1rem;box-shadow:0 10px 25px -5px #0000001a,0 4px 6px -2px #0000000d;padding:2.5rem;box-sizing:border-box;width:100%;max-width:420px}.auth-container h2{text-align:center;color:#1e293b;font-weight:700;font-size:2rem;margin:0 0 2rem}.auth-container form{display:flex;flex-direction:column;gap:1rem}.auth-container input{padding:.875rem 1rem;border-radius:.5rem;border:1px solid #cbd5e1;font-size:1rem;outline:none;transition:border-color .2s,box-shadow .2s}.auth-container input:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e533}.auth-container button{padding:.875rem;border-radius:.5rem;border:none;background-color:#2c3e50;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s;margin-top:1rem}.auth-container button:hover{background-color:#34495e}.toggle-link{color:#2c3e50;font-size:.875rem;text-align:center;display:block;margin-top:1.5rem;cursor:pointer;font-weight:500}.toggle-link:hover{text-decoration:underline}.msg{text-align:center;border-radius:.5rem;padding:.75rem;margin-top:1.5rem;font-weight:500}.success{color:#155724;background:#d4edda}.error{color:#721c24;background:#f8d7da}@media (max-width: 480px){.auth-container .card{padding:1.5rem}.auth-container h2{font-size:1.5rem}}.ai-container{font-family:Inter,sans-serif;background-color:#f8fafc;padding:4rem 1.5rem;min-height:100vh;box-sizing:border-box}.ai-header{text-align:center;margin-bottom:3rem}.ai-header h1{font-size:2.5rem;font-weight:700;color:#1e293b}.ai-header p{font-size:1.125rem;color:#64748b;margin-top:.5rem}.ai-grid{display:grid;grid-template-columns:1fr;gap:2rem;max-width:80rem;margin:0 auto}@media (min-width: 1024px){.ai-grid{grid-template-columns:1fr 1fr}}.ai-card{background-color:#fff;border-radius:1rem;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -2px #0000000d;border:1px solid #e2e8f0;padding:2rem}.ai-card h2{font-size:1.5rem;font-weight:600;color:#1e293b;margin:0 0 1.5rem}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.875rem;font-weight:500;color:#475569;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem 1rem;border:1px solid #cbd5e1;border-radius:.5rem;font-size:1rem;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e533}.ai-card button{width:100%;background-color:#4f46e5;color:#fff;font-weight:600;padding:.875rem 1rem;border:none;border-radius:.5rem;transition:background-color .2s;margin-top:1rem;cursor:pointer}.ai-card button:hover{background-color:#4338ca}.ai-card button:disabled{background-color:#a5b4fc;cursor:not-allowed}.result-box{margin-top:1.5rem;padding:1rem;background-color:#f8fafc;border:1px dashed #e2e8f0;border-radius:.5rem;min-height:120px;white-space:pre-wrap;word-wrap:break-word;font-size:.9rem;color:#334155}.ai-back-link{text-align:center;margin-top:3rem}.ai-back-link a{color:#4f46e5;text-decoration:none;font-weight:500}.ai-back-link a:hover{text-decoration:underline}.app{min-height:100vh;width:100vw;background-color:#f1f5f9;font-family:Inter,sans-serif;color:#334155}.app-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background:#fff;border-bottom:1px solid #e2e8f0}.app-header h1{font-size:1.25rem;font-weight:600;color:#1e293b}.main-content{display:flex}.sidebar{width:260px;background:#fff;padding:1.5rem;border-right:1px solid #e2e8f0;display:flex;flex-direction:column}.section-selector h3{color:#475569;margin-bottom:1rem;font-size:1.1rem;font-weight:600}.section-btn{display:block;width:100%;padding:.75rem 1rem;margin:.5rem 0;border:none;border-radius:.5rem;background:transparent;cursor:pointer;transition:all .2s ease;color:#475569;text-align:left;font-weight:500}.section-btn:hover{background:#f1f5f9;color:#1e293b}.section-btn.active{background:#2c3e50;color:#fff;font-weight:600}.content-area{flex:1;padding:2rem;overflow-y:auto;height:calc(100vh - 73px)}.content-area h2{font-size:1.875rem;font-weight:700;color:#1e293b;margin-bottom:2rem}.welcome-message{text-align:center;padding:3rem;color:#64748b}.welcome-message h2{margin-bottom:.5rem}.content-section{background:#fff;padding:1.5rem;margin-bottom:2rem;border-radius:1rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.content-section h3{font-size:1.25rem;font-weight:600;color:#1e293b;margin:0 0 1.5rem}.teacher-profile{display:flex;align-items:center;gap:.75rem}.profile-avatar{width:40px;height:40px;border-radius:50%;background-color:#4f46e5;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}.profile-info strong{display:block;color:#1e293b;font-weight:600}.profile-info p{margin:0;font-size:.8rem;color:#64748b}.table-container{overflow-x:auto}.student-table{width:100%;border-collapse:collapse;margin:1rem 0}.student-table th,.student-table td{padding:1rem;text-align:left;border-bottom:1px solid #e2e8f0}.student-table th{background:#f8fafc;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#64748b}.student-table tr:hover{background:#f8fafc}.low-score{color:#dc2626;font-weight:700}@media (max-width: 1024px){.main-content{flex-direction:column}.sidebar{width:100%;height:auto;border-right:none;border-bottom:1px solid #e2e8f0}.content-area{height:auto;overflow-y:visible}}@media (max-width: 768px){.app-header,.content-area{padding:1rem}.content-area h2{font-size:1.5rem}}.profile-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background-color:#f8fafc;font-family:Inter,sans-serif;padding:1rem;width:100%;box-sizing:border-box}.profile-container .card{background:#fff;border-radius:1rem;box-shadow:0 10px 25px -5px #0000001a,0 4px 6px -2px #0000000d;padding:2.5rem;width:100%;box-sizing:border-box;max-width:480px;text-align:center}.profile-container h2{color:#1e293b;font-weight:700;font-size:2rem;margin:0 0 2rem}.user-info{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem}.user-info-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background-color:#f1f5f9;border-radius:.5rem}.user-info-item strong{color:#64748b;font-weight:500;font-size:.9rem}.user-info-item span{color:#1e293b;font-weight:600}.action-buttons{display:flex;flex-direction:column;gap:.75rem}.btn{width:100%;padding:.875rem;border-radius:.5rem;border:none;color:#2c3e50;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s}.btn-danger{background-color:#dc2626}.btn-danger:hover{background-color:#b91c1c}.btn-confirm{background-color:#f97316}.btn-confirm:hover{background-color:#ea580c}.btn-secondary{background-color:#64748b}.btn-secondary:hover{background-color:#475569}.msg{padding:10px;margin:1.5rem 0;border-radius:.5rem;background-color:#f1f5f9;color:#475569;font-weight:500}.back-link{margin-top:1.5rem}.back-link a{color:#2c3e50;text-decoration:none;font-weight:500}.back-link a:hover{text-decoration:underline}@media (max-width: 480px){.profile-container .card{padding:1.5rem}.profile-container h2{font-size:1.5rem}}#root{width:100%;min-height:100vh}
