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}.form-group{margin-bottom:16px;width:100%}.form-group input[type=password],.form-group input[type=text]{border:1px solid #ccc;border-radius:4px;font-size:16px;padding:8px;width:100%}.text-input-header{align-items:center;display:flex;font-size:16px;font-weight:700;margin-bottom:8px}.header-icon{color:#343a40;font-size:18px;margin-right:8px}.text-input-container{align-items:center;display:flex;position:relative;width:100%}.text-input{border:1px solid #ccc;border-radius:4px;box-sizing:border-box;font-size:16px;height:39px;padding:8px 36px 8px 12px;width:100%}.password-toggle-icon{color:#999;cursor:pointer;font-size:18px;position:absolute;right:12px;top:55%;transform:translateY(-50%)}.password-toggle-icon:hover{color:#555}.primary-btn{background:#04abfd;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1em;font-weight:700;padding:15px;width:200px}.primary-btn:hover{background:#316fc5}.secondary-btn{background:#0000;border:2px solid #04abfd;border-radius:8px;color:#04abfd;cursor:pointer;font-size:1em;font-weight:700;padding:15px;transition:background-color .3s,color .3s;width:200px}.secondary-btn:hover{background:#e0e0e0;color:#04abfd}.login-container{background-color:#f9f9f9;border-radius:8px;box-shadow:0 4px 8px #0000001a;margin:50px auto;max-width:400px;padding:30px;position:relative}.logo{display:block;margin:0 auto 20px;max-width:100px}.notification{background-color:#f8d7da;border-color:#f5c6cb;border-radius:5px;color:#721c24;font-size:.9rem;margin:10px 0;padding:10px;text-align:center}.login-form{display:flex;flex-direction:column}.checkbox-container{align-items:center;display:flex;gap:10px;margin:10px 0;padding-left:4px}.checkbox-container input[type=checkbox]{cursor:pointer;height:16px;margin:0;width:16px}.checkbox-container label{color:#333;cursor:pointer;font-size:.9rem}.button-group{display:flex;gap:10px;justify-content:space-between;margin-top:20px}.loading-bar{animation:loadingAnimation 2s infinite;background-color:#04abfd;border-radius:2px;height:4px;left:0;position:absolute;top:0;width:0}@keyframes loadingAnimation{0%{left:0;width:0}50%{left:10%;width:80%}to{left:0;width:0}}@media (max-width:480px){.login-container{padding:20px;width:90%}.button-group{flex-direction:column;gap:10px}.primary-btn,.secondary-btn{width:100%}}.homepage{background-color:#f9fafb;color:#333;font-family:Roboto,Segoe UI,Arial,sans-serif;margin:0 auto;max-width:1200px;padding-bottom:40px}.hero-section{background:linear-gradient(135deg,#04abfd,#0388ca);border-radius:10px;box-shadow:0 4px 12px #0000001a;color:#fff;margin:20px 20px 40px;overflow:hidden}.hero-content{padding:60px 40px;text-align:center}.hero-content h1{font-size:32px;font-weight:600;margin-bottom:16px}.hero-content p{font-size:18px;margin-bottom:30px;opacity:.9}.hero-buttons{display:flex;gap:16px;justify-content:center}.button{border:none;border-radius:6px;cursor:pointer;display:inline-block;font-size:16px;font-weight:500;padding:12px 24px;text-decoration:none;transition:all .2s ease}.primary-button{background-color:#fff;color:#0388ca}.primary-button:hover{background-color:#f0f0f0}.secondary-button{background-color:#fff3;border:1px solid #ffffff80;color:#fff}.secondary-button:hover{background-color:#ffffff4d}.features-section{padding:40px 20px;text-align:center}.features-section h2{color:#2c3e50;font-size:24px;font-weight:600;margin-bottom:30px}.features-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:20px}.feature-card{background-color:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000f;padding:24px;transition:transform .3s ease,box-shadow .3s ease}.feature-card:hover{box-shadow:0 8px 16px #0000001a;transform:translateY(-5px)}.feature-icon{font-size:32px;margin-bottom:16px}.feature-card h3{color:#2c3e50;font-size:18px;font-weight:500;margin-bottom:12px}.feature-card p{color:#6c757d;font-size:14px;line-height:1.5}.quick-access-section{margin-bottom:40px;padding:20px}.quick-access-section h2{color:#2c3e50;font-size:24px;font-weight:600;margin-bottom:20px}.quick-access-cards{display:flex;flex-wrap:wrap;gap:16px}.quick-card{background-color:#e6f7ff;border-left:4px solid #04abfd;border-radius:10px;box-shadow:0 2px 5px #0000000d;color:inherit;flex:1 1;min-width:220px;overflow:hidden;padding:24px;position:relative;text-decoration:none;transition:all .2s ease}.quick-card:after{bottom:20px;color:#04abfd;content:"→";font-size:20px;opacity:0;position:absolute;right:20px;transition:opacity .2s ease}.quick-card:hover{box-shadow:0 5px 10px #0000001a;transform:translateY(-2px)}.quick-card:hover:after{opacity:1}.quick-card h3{color:#0388ca;font-size:18px;font-weight:500;margin-bottom:8px}.quick-card p{color:#6c757d;font-size:14px}.announcements-section{margin-bottom:40px;padding:20px}.announcements-section h2{color:#2c3e50;font-size:24px;font-weight:600;margin-bottom:20px}.announcement-list{display:flex;flex-direction:column;gap:16px}.announcement-card{background-color:#fff;border-left:3px solid #ffc107;border-radius:10px;box-shadow:0 2px 5px #0000000d;padding:20px}.announcement-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:10px}.announcement-header h3{color:#2c3e50;font-size:16px;font-weight:500;margin:0}.announcement-date{color:#6c757d;font-size:12px}.announcement-card p{color:#495057;font-size:14px;margin:0}.help-section{grid-gap:30px;background-color:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000f;display:grid;gap:30px;grid-template-columns:1fr 1fr;margin:0 20px;padding:30px}.help-content h2{color:#2c3e50;font-size:24px;font-weight:600;margin-bottom:16px}.help-content p{color:#6c757d;font-size:15px;margin-bottom:24px}.faq-preview h3{color:#2c3e50;font-size:18px;font-weight:500;margin-bottom:16px}.faq-item{border-bottom:1px solid #e9ecef;margin-bottom:16px;padding-bottom:16px}.faq-item h4{color:#2c3e50;font-size:14px;font-weight:500;margin-bottom:8px}.faq-item p{color:#6c757d;font-size:14px;margin:0}.text-link{color:#04abfd;display:inline-block;font-size:14px;font-weight:500;margin-top:8px;text-decoration:none}.text-link:hover{text-decoration:underline}@media (max-width:768px){.hero-content{padding:40px 20px}.hero-content h1{font-size:28px}.help-section{grid-template-columns:1fr}.hero-buttons{align-items:center;flex-direction:column;gap:12px}.button{max-width:300px;width:100%}}@media (max-width:480px){.hero-content h1{font-size:24px}.quick-access-cards{flex-direction:column}.announcement-card,.feature-card,.quick-card{padding:16px}.announcements-section h2,.features-section h2,.help-content h2,.quick-access-section h2{font-size:20px}}:root{--info-page-primary-color:#04abfd;--info-page-primary-dark:#0388ca;--info-page-primary-light:#e6f7ff;--info-page-passing-color:#34a853;--info-page-failing-color:#ea4335;--info-page-border-radius:10px;--info-page-box-shadow:0 2px 10px #00000014;--info-page-transition:all 0.3s ease}.info-page-container{background-color:#f9fafb;color:#333;font-family:Roboto,Segoe UI,Arial,sans-serif;margin:0 auto;max-width:1200px;min-height:100vh;padding:20px}.info-page-loading-container{align-items:center;display:flex;flex-direction:column;height:70vh;justify-content:center}.info-page-loading-spinner{animation:info-page-spin 1s linear infinite;border:5px solid #e6f7ff;border-top:5px solid #04abfd;border:5px solid var(--info-page-primary-light);border-radius:50%;border-top-color:var(--info-page-primary-color);height:50px;margin-bottom:20px;width:50px}@keyframes info-page-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.info-page-student-header{background-color:#fff;border-radius:10px;border-radius:var(--info-page-border-radius);box-shadow:0 2px 10px #00000014;box-shadow:var(--info-page-box-shadow);margin-bottom:25px;overflow:hidden}.info-page-header-content{padding:25px 30px}.info-page-student-info .info-page-title{color:#2c3e50;font-size:24px;font-weight:600;margin:0 0 15px}.info-page-student-details{display:flex;gap:20px;margin-bottom:10px}.info-page-detail-item{align-items:center;display:flex}.info-page-detail-label{color:#6c757d;font-size:14px;margin-right:5px}.info-page-detail-value{font-size:14px;font-weight:500}.info-page-term-info{color:#6c757d;display:flex;font-size:14px;justify-content:space-between;margin-top:10px}.info-page-update-info{font-style:italic}.info-page-nav-tabs{background-color:#f5f7f9;border-top:1px solid #e0e0e0;display:flex}.info-page-tab-button{background:none;border:none;color:#757575;cursor:pointer;flex:1 1;font-size:15px;font-weight:500;padding:15px;position:relative;transition:all .3s ease;transition:var(--info-page-transition)}.info-page-tab-button:hover:not(.info-page-disabled){background-color:#e6f7ff;color:#04abfd;color:var(--info-page-primary-color)}.info-page-tab-button.info-page-active{background-color:initial;color:#04abfd;color:var(--info-page-primary-color)}.info-page-tab-button.info-page-active:after{background-color:#04abfd;background-color:var(--info-page-primary-color);bottom:0;content:"";height:3px;left:0;position:absolute;width:100%}.info-page-tab-button.info-page-disabled{background-color:#f0f0f0;color:#aaa;cursor:not-allowed;opacity:.6}.info-page-coming-soon-badge{background-color:#e0e0e0;border-radius:10px;color:#666;display:inline-block;font-size:11px;font-weight:400;margin-left:8px;padding:2px 6px}.info-page-subjects-container{display:flex;flex-direction:column;gap:20px}.info-page-subject-card{background-color:#fff;border-radius:10px;border-radius:var(--info-page-border-radius);box-shadow:0 2px 10px #00000014;box-shadow:var(--info-page-box-shadow);overflow:hidden;transition:all .3s ease;transition:var(--info-page-transition)}.info-page-subject-card:hover{box-shadow:0 5px 15px #0000001a}.info-page-subject-header{align-items:center;border-left:4px solid #0000;cursor:pointer;display:flex;justify-content:space-between;padding:18px 25px;transition:all .3s ease;transition:var(--info-page-transition)}.info-page-subject-header:hover{background-color:#f8f9fa}.info-page-subject-info .info-page-subject-name{font-size:18px;font-weight:500;margin:0 0 5px}.info-page-subject-info p{color:#6c757d;font-size:14px;margin:0}.info-page-subject-grade{align-items:center;display:flex;gap:15px}.info-page-grade-display{align-items:center;border-radius:18px;color:#fff;display:flex;font-size:16px;font-weight:700;height:36px;justify-content:center;min-width:70px}.info-page-percentage-text{text-align:center;width:100%}.info-page-grade-details{display:flex;flex-direction:column;gap:4px}.info-page-assessment-count,.info-page-total-points{color:#6c757d;font-size:14px}.info-page-expand-icon{color:#adb5bd;font-size:12px;margin-left:10px;transition:transform .3s ease}.info-page-assessments-container{border-top:1px solid #f0f0f0;max-height:600px;overflow:hidden;overflow-y:auto;transition:all .3s ease;transition:var(--info-page-transition)}.info-page-assessment-filters{background-color:#f8f9fa;border-bottom:1px solid #e9ecef;padding:12px 15px}.info-page-filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.info-page-filter-title{color:#495057;font-size:14px;font-weight:500}.info-page-category-tag{background-color:#e9ecef;border-radius:4px;color:#495057;font-size:12px;padding:4px 8px}.info-page-assessments-table{border-collapse:collapse;font-size:14px;width:100%}.info-page-assessments-table th{background-color:#f8f9fa;box-shadow:0 1px 0 #0000001a;color:#495057;font-weight:600;padding:12px 15px;position:sticky;text-align:left;top:0;z-index:10}.info-page-assessments-table td{border-bottom:1px solid #f0f0f0;padding:12px 15px}.info-page-assessments-table tr:last-child td{border-bottom:none}.info-page-assessments-table tr:hover{background-color:#f8f9fa}.info-page-category-pill{background-color:#e9ecef;border-radius:20px;display:inline-block;font-size:12px;font-weight:500;padding:3px 8px}.info-page-percentage-cell{position:relative;width:100%}.info-page-percentage-value{font-weight:500;margin-bottom:3px}.info-page-percentage-bar{border-radius:3px;height:6px}.info-page-passing{background-color:#34a853;background-color:var(--info-page-passing-color)}.info-page-failing{background-color:#ea4335;background-color:var(--info-page-failing-color)}@media (max-width:768px){.info-page-subject-header{align-items:flex-start;flex-direction:column;gap:15px}.info-page-subject-grade{justify-content:space-between;width:100%}}@media (max-width:480px){.info-page-container{padding:10px}.info-page-header-content{padding:15px}.info-page-student-header .info-page-title{font-size:20px}.info-page-student-details{flex-direction:column;gap:5px}.info-page-assessments-table{font-size:12px}.info-page-assessments-table td,.info-page-assessments-table th{padding:8px 10px}}.not-found-container{align-items:center;background-color:#f9fafb;color:#333;display:flex;font-family:Roboto,Segoe UI,Arial,sans-serif;justify-content:center;min-height:100vh;padding:40px}.not-found-content{background-color:#fff;border-radius:12px;box-shadow:0 4px 16px #00000014;display:flex;max-width:800px;padding:40px;position:relative;width:100%}.error-code{color:#04abfd;font-size:72px;font-weight:700;line-height:1;margin:0;min-width:120px;text-align:center}.divider{background-color:#e0e0e0;margin:0 30px;width:2px}.error-details{flex:1 1}.error-details h2{color:#2c3e50;font-size:28px;margin:0 0 16px}.error-details p{color:#6c757d;font-size:16px;line-height:1.5;margin-bottom:24px}.suggestions{background-color:#f8f9fa;border-radius:8px;margin-bottom:24px;padding:20px}.suggestions h3{color:#2c3e50;font-size:16px;font-weight:500;margin:0 0 12px}.suggestions ul{margin:0;padding-left:20px}.suggestions li{color:#6c757d;font-size:14px;margin-bottom:8px}.suggestions li:last-child{margin-bottom:0}.action-buttons{display:flex;gap:12px}.primary-button,.secondary-button{border-radius:6px;cursor:pointer;display:inline-block;font-size:14px;font-weight:500;padding:10px 20px;text-align:center;text-decoration:none;transition:all .2s ease}.primary-button{background-color:#04abfd;border:none;color:#fff}.primary-button:hover{background-color:#0388ca;transform:translateY(-2px)}.secondary-button{background-color:#fff;border:1px solid #04abfd;color:#04abfd}.secondary-button:hover{background-color:#e6f7ff;transform:translateY(-2px)}.illustration{position:absolute;right:40px;top:-80px;transform:rotate(10deg)}@keyframes float{0%{transform:translateY(0) rotate(10deg)}50%{transform:translateY(-15px) rotate(12deg)}to{transform:translateY(0) rotate(10deg)}}.illustration{animation:float 6s ease-in-out infinite}@media (max-width:768px){.not-found-content{flex-direction:column;gap:20px;padding:30px;text-align:center}.error-code{font-size:60px;min-width:auto}.divider{height:2px;margin:10px auto;width:80%}.action-buttons{flex-direction:column}.illustration{display:none}}@media (max-width:480px){.not-found-container,.not-found-content{padding:20px}.error-code{font-size:48px}.error-details h2{font-size:22px}}:root{--primary-color:#04abfd;--primary-dark:#0388ca;--primary-light:#e6f7ff;--status-present:#34a853;--status-absent:#ea4335;--status-late:#fbbc04;--status-excused:#9c9c9c;--border-radius:10px;--box-shadow:0 2px 10px #00000014;--transition:all 0.3s ease}.attendance-page{background-color:#f9fafb;color:#333;font-family:Roboto,Segoe UI,Arial,sans-serif;margin:0 auto;max-width:1200px;min-height:100vh;padding:20px}.error-container,.loading-container{align-items:center;display:flex;flex-direction:column;height:70vh;justify-content:center}.loading-spinner{animation:spin 1s linear infinite;border:5px solid #e6f7ff;border-top:5px solid #04abfd;border:5px solid var(--primary-light);border-radius:50%;border-top-color:var(--primary-color);height:50px;margin-bottom:20px;width:50px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.student-header{background-color:#fff;border-radius:10px;border-radius:var(--border-radius);box-shadow:0 2px 10px #00000014;box-shadow:var(--box-shadow);margin-bottom:25px;overflow:hidden}.header-content{align-items:center;display:flex;justify-content:space-between;padding:25px 30px}.student-info h1{color:#2c3e50;font-size:24px;font-weight:600;margin:0 0 15px}.student-details{display:flex;gap:20px}.detail-item{align-items:center;display:flex}.detail-label{color:#6c757d;font-size:14px;margin-right:5px}.detail-value{font-size:14px;font-weight:500}.attendance-overview{display:flex;gap:20px}.overview-stat{min-width:90px;text-align:center}.stat-value{color:#2c3e50;font-size:24px;font-weight:600}.stat-label{color:#6c757d;font-size:14px}.nav-tabs{background-color:#f5f7f9;border-top:1px solid #e0e0e0;display:flex}.tab-button{background:none;border:none;color:#757575;cursor:pointer;flex:1 1;font-size:15px;font-weight:500;padding:15px;position:relative;transition:all .3s ease;transition:var(--transition)}.tab-button:hover{background-color:#e6f7ff}.tab-button.active,.tab-button:hover{color:#04abfd;color:var(--primary-color)}.tab-button.active{background-color:initial}.tab-button.active:after{background-color:#04abfd;background-color:var(--primary-color);bottom:0;content:"";height:3px;left:0;position:absolute;width:100%}.attendance-content{background-color:#fff;border-radius:10px;border-radius:var(--border-radius);box-shadow:0 2px 10px #00000014;box-shadow:var(--box-shadow);padding:25px}.month-selector{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.month-selector h2{color:#2c3e50;font-size:22px;margin:0}.month-nav{align-items:center;background-color:#fff;border:1px solid #e0e0e0;border-radius:50%;color:#6c757d;cursor:pointer;display:flex;font-size:18px;height:36px;justify-content:center;transition:all .3s ease;transition:var(--transition);width:36px}.month-nav:hover{background-color:#e6f7ff;background-color:var(--primary-light);border-color:#04abfd;border-color:var(--primary-color);color:#04abfd;color:var(--primary-color)}.attendance-legend{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:20px}.legend-item{align-items:center;display:flex;font-size:14px}.legend-color{border-radius:4px;height:16px;margin-right:6px;width:16px}.status-present{background-color:#34a853;background-color:var(--status-present);color:#fff}.status-absent{background-color:#ea4335;background-color:var(--status-absent);color:#fff}.status-late{background-color:#fbbc04;background-color:var(--status-late);color:#333}.status-excused{background-color:#9c9c9c;background-color:var(--status-excused);color:#fff}.no-data-message{background-color:#f8f9fa;border-radius:10px;border-radius:var(--border-radius);color:#6c757d;padding:40px;text-align:center}.days-container{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.day-card{border:1px solid #e0e0e0;border-radius:10px;border-radius:var(--border-radius);overflow:hidden}.day-header{background-color:#f8f9fa;border-bottom:1px solid #e0e0e0;padding:12px 15px}.day-header h3{color:#2c3e50;font-size:16px;font-weight:500;margin:0}.periods-list{padding:10px 0}.period-item{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:8px 15px}.period-item:last-child{border-bottom:none}.period-info{align-items:center;display:flex}.period-number{background-color:#f0f0f0;border-radius:4px;color:#495057;font-size:12px;font-weight:500;margin-right:10px;padding:2px 6px}.period-subject{font-size:14px}.period-status{align-items:center;border-radius:50%;display:flex;font-size:12px;font-weight:700;height:24px;justify-content:center;width:24px}.subjects-container{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.subject-card{border:1px solid #e0e0e0;border-radius:10px;border-radius:var(--border-radius);overflow:hidden;padding:20px}.subject-header{margin-bottom:15px}.subject-header h3{color:#2c3e50;font-size:18px;font-weight:500;margin:0 0 5px}.subject-teacher{color:#6c757d;font-size:14px}.subject-stats{margin-bottom:15px}.attendance-bar{background-color:#e9ecef;border-radius:5px;display:flex;height:10px;margin-bottom:10px;overflow:hidden}.attendance-progress{height:100%}.attendance-percentage{color:#2c3e50;font-size:16px;font-weight:500}.subject-details{background-color:#f8f9fa;border-radius:6px;padding:15px}.detail-row{display:flex;font-size:14px;justify-content:space-between;margin-bottom:8px}.detail-row:last-child{margin-bottom:0}.detail-row span:first-child{color:#6c757d}.detail-row span:last-child{font-weight:500}.summary-container{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:30px}.summary-card{border:1px solid #e0e0e0;border-radius:10px;border-radius:var(--border-radius);padding:20px}.summary-card h3{color:#2c3e50;font-size:18px;font-weight:500;margin:0 0 15px}.summary-chart{margin-bottom:20px}.chart-bar{background-color:#e9ecef;border-radius:12px;display:flex;height:24px;margin-bottom:15px;overflow:hidden}.chart-segment{height:100%;transition:width .3s ease}.chart-legend{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.summary-stats{display:flex;gap:20px}.stats-column{flex:1 1}.stat-item{display:flex;font-size:14px;justify-content:space-between;margin-bottom:10px}.stat-item:last-child{margin-bottom:0}.day-stats{display:flex;flex-direction:column;gap:15px;margin-top:15px}.day-stat-item{align-items:center;display:flex}.day-name{font-size:14px;font-weight:500;width:100px}.day-attendance-bar{background-color:#e9ecef;border-radius:8px;flex:1 1;height:16px;margin:0 15px;overflow:hidden}.day-progress{border-radius:8px;height:100%}.day-percentage{font-size:14px;font-weight:500;text-align:right;width:50px}.absence-details{margin-top:30px}.absence-details h3{color:#2c3e50;font-size:18px;font-weight:500;margin:0 0 15px}.absences-table{border-collapse:collapse;width:100%}.absences-table th{background-color:#f8f9fa;border-bottom:2px solid #e9ecef;color:#495057;font-size:14px;font-weight:600;padding:12px 15px;text-align:left}.absences-table td{border-bottom:1px solid #e9ecef;font-size:14px;padding:12px 15px}.status-pill{border-radius:20px;display:inline-block;font-size:12px;font-weight:500;padding:3px 8px}@media (max-width:992px){.summary-container{grid-template-columns:1fr}.header-content{align-items:flex-start;flex-direction:column}.attendance-overview{margin-top:15px}}@media (max-width:768px){.attendance-content{padding:15px}.summary-stats{flex-direction:column;gap:10px}.chart-legend{grid-template-columns:1fr}}@media (max-width:480px){.attendance-overview,.student-details{flex-direction:column;gap:10px}.month-selector h2{font-size:18px}.days-container,.subjects-container{grid-template-columns:1fr}.nav-tabs{flex-direction:column}.tab-button{padding:10px}.tab-button.active:after{bottom:auto;height:100%;top:0;width:4px}}.desktop-sidebar-button-container{display:flex;flex-direction:column;position:relative}.desktop-sidebar-button{align-items:center;border-radius:8px;color:#333;cursor:pointer;display:flex;font-size:16px;padding:10px 15px;position:relative;transition:background-color .3s,color .3s}.desktop-sidebar-button:hover{background-color:#f5f5f5}.desktop-sidebar-button.active{background-color:#e6f3ff;color:#07c;font-weight:700}.button-icon{font-size:20px;margin-right:10px}.button-title{flex-grow:1}.chevron-icon{font-size:14px;margin-left:auto}.dropdown{background-color:#fff;border-radius:8px;box-shadow:0 2px 5px #0000001a;left:0;margin-top:5px;max-height:200px;overflow-y:auto;padding:0;position:absolute;top:100%;width:100%;z-index:10}.dropdown-item{border-bottom:1px solid #eee;border-radius:4px;color:#333;cursor:pointer;font-size:14px;padding:10px 15px;transition:background-color .3s,color .3s}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover{background-color:#f5f5f5}.dropdown-item.selected{background-color:#e6f3ff;border-radius:8px;box-shadow:inset 0 0 0 2px #07c;color:#07c;font-weight:700}.dropdown::-webkit-scrollbar{width:8px}.dropdown::-webkit-scrollbar-thumb{background-color:#ccc;border-radius:4px}.dropdown::-webkit-scrollbar-thumb:hover{background-color:#aaa}.desktop-sidebar{background-color:#fff;box-shadow:2px 0 5px #0000001a;box-sizing:border-box;height:100vh;left:0;padding:20px;position:fixed;top:0;-webkit-user-select:none;user-select:none;width:250px;z-index:1000}.desktop-sidebar,.sidebar-menu{display:flex;flex-direction:column}.sidebar-menu{flex-grow:1;gap:10px}.logout-container{margin-top:auto;padding-top:20px}@media (max-width:768px){.topbar{align-items:center;background-color:#07c;box-shadow:0 2px 5px #0000001a;color:#fff;display:flex;height:60px;left:0;padding:0 20px;position:fixed;top:0;width:100%;z-index:1001}.hamburger-icon{color:#fff;cursor:pointer;font-size:24px;margin-right:10px}.topbar-title{font-size:18px;font-weight:700}.desktop-sidebar{background-color:#fff;box-shadow:2px 0 5px #0000001a;display:flex;flex-direction:column;height:100vh;left:-250px;padding:20px;position:fixed;top:0;transition:left .3s ease-in-out;width:250px;z-index:1000}.desktop-sidebar.open{left:0}.sidebar-menu{display:flex;flex-direction:column;flex-grow:1;gap:10px}.logout-container{margin-top:auto;padding-top:10px}}.App{display:flex;min-height:100vh}.main-content{background-color:#f9f9f9;box-sizing:border-box;flex-grow:1;margin-left:160px;overflow-y:auto;padding:20px}.main-content.no-margins{margin-left:0}@media (max-width:768px){.App{flex-direction:column}.main-content{height:auto;margin-left:0;margin-top:50px;padding:10px}}
/*# sourceMappingURL=main.1a2b49c7.css.map*/