@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;700&display=swap);*,body{font-family:Inter,sans-serif!important}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;padding:0}html{box-sizing:border-box;height:100%;margin:0;padding:0}*,:after,:before{box-sizing:inherit}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.navigation-bar{background:linear-gradient(270deg,#4bac81 68%,#306f78);box-sizing:border-box;color:#f0f9d6;height:70px;justify-content:space-between;padding:5px 20px}.nav-logo,.navigation-bar{align-items:center;display:flex;overflow:visible}.nav-logo{gap:.5rem;height:100%}.nav-logo a{align-items:center;display:flex;line-height:0;text-decoration:none}.logo-image{display:block;height:60px;object-fit:contain;width:60px}.logo-content{align-items:center;display:flex;flex-direction:row;gap:.5rem}.logo-text{font-size:1.2rem;font-weight:700;letter-spacing:2px}.logo-slogan,.logo-text{color:#fae4ca;font-family:inter,sans-serif}.logo-slogan{font-size:.7rem;line-height:1.2;max-width:300px}.nav-buttons{display:flex;flex:1 1;gap:2rem;justify-content:flex-end}.nav-button{align-items:center;background:#0000;border:none;border-radius:0;color:#f0f9d6;cursor:pointer;display:flex;flex-direction:row;flex-shrink:0;gap:.3rem;height:auto;justify-content:center;overflow:visible;padding:.5rem .8rem;transition:all .3s ease;width:auto}.nav-button.long-text{width:auto}.nav-button.small-button{height:auto;padding:0;width:auto}.nav-button.active,.nav-button.active:hover,.nav-button:hover{background:#0000}.nav-button.active .button-label{font-weight:700}.button-label{color:#f0f9d6;font-size:1.5rem;font-weight:100;text-align:center;white-space:nowrap}@media (max-width:768px){.navigation-bar{padding:0 1rem}.nav-buttons{gap:.6rem}.nav-button{min-width:80px;padding:.4rem .6rem;width:80px}.nav-button.long-text{width:80px}.nav-button.small-button{height:28px;padding:.3rem .5rem;width:60px}.button-label{font-size:.7rem}.logo-slogan{font-size:.6rem;max-width:200px}}body{background:linear-gradient(270deg,#44746d 5%,#283d40 97%);background-attachment:fixed;background-repeat:no-repeat;margin:0;min-height:100vh}.homepage{display:flex;flex-direction:column;min-height:100vh;overflow:hidden;width:100%}.homepage-content{align-items:center;background:linear-gradient(270deg,#44746d 5%,#283d40 97%);border:none;flex-grow:1;margin:0 auto;min-height:calc(100vh - 70px);outline:none;padding:1rem 3rem 3rem;width:100%}.homepage-bridge,.homepage-content{display:flex;justify-content:center}.homepage-bridge{color:#8e7558;flex-direction:column;height:38px;margin-bottom:-4.5rem;margin-left:-15rem;white-space:nowrap;width:229px}.homepage-bridge p{display:inline-block;font-family:Inter,Avenir Next,sans-serif;font-size:22px;font-weight:100;letter-spacing:.5px;line-height:1.75rem;margin:2.5rem 0 0 -6rem;white-space:nowrap}.homepage-text{border:none;box-shadow:none;color:#f0f9d6;display:flex;flex-direction:column;height:340px;justify-content:center;margin-bottom:-19rem;margin-left:-.5rem;outline:none;width:600px}.homepage-text h1{font-size:2.5rem;margin-bottom:1rem}.homepage-text p{border:none;font-family:Inter,Avenir Next,sans-serif;font-size:25px;font-weight:100;letter-spacing:.5px;line-height:1.75rem;outline:none}.ITZ-highlight-image{border:none;box-shadow:none;height:auto;margin:-20rem 0 1rem -1rem;max-width:1500px;opacity:1;outline:none;width:110%}.students-highlight-image{margin:3rem 2rem 4rem;max-width:1300px;opacity:1;width:45%}.homepage .nav-buttons{gap:1rem}@media (max-width:768px){.homepage-content{align-items:flex-start;flex-direction:column;padding:1.5rem}}.student-app-bg{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);display:flex;flex-direction:column;height:100vh;margin:0;min-height:100vh;padding:0}.student-app-body{display:flex;flex:1 1;height:calc(100vh - 80px);margin:0;padding:0}.student-left-section{border-right:1px solid #e0e0e0;flex:0 0 auto;max-width:320px;overflow-y:auto;padding:0;width:320px}.student-right-section{align-items:flex-start;background:#2c5057;box-sizing:border-box;display:flex;flex:1 1;justify-content:center;min-width:0;overflow:hidden;padding:1rem}.student-app{box-sizing:border-box;height:100vh;margin:0;padding:0;width:100vw}.student-app-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.student-app-logo{animation:App-logo-spin 20s linear infinite}}.student-app-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.student-app-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:1100px){.student-app-body{flex-direction:column;height:auto}.student-left-section{border-bottom:1px solid #e0e0e0;border-right:none;max-width:100vw;min-width:0;padding:0;width:100vw}.student-right-section{align-items:stretch;background:linear-gradient(90deg,#4bac81,#306f78);padding:1.2rem .5rem;width:100vw}}@media (max-width:700px){.student-app{min-width:0;width:100vw}.student-app-body{flex-direction:column;height:auto;min-width:0}.student-left-section{border-bottom:1px solid #e0e0e0;border-right:none;max-width:100vw;min-width:0;padding:0;width:100vw}.student-right-section{align-items:stretch;background:linear-gradient(90deg,#4bac81,#306f78);min-width:0;padding:.7rem .2rem;width:100vw}}.survey-popup-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:2000}.survey-popup{background:#fff;border-radius:16px;box-shadow:0 8px 32px #0003;max-width:420px;padding:24px 28px;position:relative;text-align:center;width:100%}.survey-popup-close{background:none;border:none;color:#666;cursor:pointer;font-size:1.5rem;line-height:1;padding:0 4px;position:absolute;right:14px;top:12px}.survey-popup-close:hover{color:#333}.survey-popup-text{color:#333;font-size:1.05rem;line-height:1.5;margin:0 0 20px}.survey-popup-btn{background:linear-gradient(135deg,#4bac81,#306f78);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 24px}.survey-popup-btn a{color:inherit;text-decoration:none}.survey-popup-btn:hover{opacity:.95}.quiz-interface-container{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.quiz-close-button{background:#2c5057;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:24px;height:40px;position:absolute;right:20px;top:20px;width:40px;z-index:1001}.quiz-close-button:hover{background:#306f78}.quiz-card-container{background:#f0f9d6;border:1px solid #d9d9d9;border-radius:20px;box-shadow:0 4px 20px #0000001a;max-width:1400px;min-height:90vh;padding:32px;width:95%}.quiz-error,.quiz-loading{text-align:center}.quiz-error-text,.quiz-loading-text{color:#4bac81;font-size:20px;margin-bottom:16px}.quiz-error-text{color:#b94a1d}.quiz-loading-spinner{animation:spin 1s linear infinite;border:2px solid #e7faf2;border-radius:50%;border-top-color:#4bac81;height:32px;margin:0 auto;width:32px}.quiz-retry-button{background:#4bac81;border:none;border-radius:8px;color:#fff;cursor:pointer;padding:12px 24px}.quiz-retry-button:hover{background:#306f78}.quiz-results-container{background:#f0f9d6;border:1px solid #d9d9d9;border-radius:20px;box-shadow:0 4px 20px #0000001a;max-width:1400px;min-height:90vh;padding:32px;width:95%}.quiz-results-header{background:#e7faf2;border-radius:8px;margin-bottom:24px;padding:16px;width:100%}.quiz-results-title{color:#4bac81;font-size:24px;font-weight:700;text-align:center}.quiz-results-questions{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.quiz-result-item{background:#e7faf2;border:1px solid #d9d9d9;border-radius:8px;padding:12px}.quiz-result-question{color:#2c5057;font-weight:600;margin-bottom:4px}.quiz-result-answer,.quiz-result-correct{color:#306f78;font-size:16px;margin-bottom:4px}.quiz-result-answer .correct{color:#4bac81;font-weight:700}.quiz-result-answer .incorrect{color:#b94a1d;font-weight:700}.quiz-result-answer .no-answer{color:#d9d9d9;font-style:italic}.quiz-result-correct .correct-answer{color:#4bac81;font-weight:700}.quiz-result-explanation{color:#306f78;font-size:14px;margin-top:8px}.quiz-continue-button{background:#4bac81;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:500;margin-top:8px;padding:12px;width:100%}.quiz-continue-button:hover{background:#306f78}.quiz-main-container{align-items:center;background:#0000;display:flex;flex-direction:column;min-height:100vh;padding:32px 0}.quiz-content-wrapper{align-items:flex-start;display:flex;flex-direction:row;margin-bottom:16px;max-width:1600px;position:relative;width:100%}.quiz-question-number{left:-128px;position:absolute;top:16px}.quiz-question-number span{color:#b94a1d;font-size:48px;font-weight:700;text-shadow:0 2px 4px #0000001a}.quiz-card{background:#2c5057;border-radius:8px;box-shadow:0 4px 20px #0000001a;flex:1 1;margin-left:32px;max-width:1000px;padding:32px;width:100%}.quiz-header{margin-bottom:12px;text-align:center}.quiz-title{color:#f0f9d6;font-size:20px;font-weight:700;margin-bottom:4px}.quiz-progress{color:#f0f9d6;font-size:14px}.quiz-question{background:#f0f9d6;border-radius:8px;color:#000;font-size:18px;font-weight:700;margin-bottom:16px;padding:12px;text-align:center}.quiz-time-up{background:#fff0ed;border:1px solid #b94a1d;border-radius:8px;margin-bottom:12px;padding:12px}.quiz-time-up-title{color:#b94a1d;font-size:16px;font-weight:700;margin-bottom:4px}.quiz-time-up-answer{color:#2c5057;font-weight:600}.quiz-time-up-explanation{color:#306f78;font-size:14px;margin-top:4px}.quiz-hint{background:#f0f9d6;border:1px solid #4bac81;border-radius:8px;margin-bottom:12px;padding:12px}.quiz-hint-title{color:#4bac81;font-size:16px;font-weight:700;margin-bottom:4px}.quiz-hint-text{color:#2c5057}.quiz-choices{display:flex;flex-direction:column;gap:12px}.quiz-choice{align-items:center;background:#fff;border:1px solid #f0f9d6;border-radius:8px;color:#000;cursor:pointer;display:flex;padding:8px;transition:all .2s ease}.quiz-choice:hover{background:#f0f9d6}.quiz-choice-selected{border:1px solid #b86de3;box-shadow:0 0 0 2px #b86de3}.quiz-choice-correct{background:#f0f9d6;border:1px solid #2c5057;color:#2c5057;font-weight:600}.quiz-choice-incorrect{background:#fff0ed;border:1px solid #b94a1d;color:#b94a1d;font-weight:600}.quiz-choice-radio{accent-color:#2c5057;border:2px solid #f0f9d6;height:20px;margin-right:12px;width:20px}.quiz-submit-button{border:none;border-radius:8px;color:#000;cursor:pointer;font-size:16px;font-weight:500;margin-top:12px;padding:8px;transition:all .2s ease;width:100%}.quiz-submit-button.disabled{background:#d1d5db;color:#6b7280;cursor:not-allowed}.quiz-submit-button.enabled{background:#f0f9d6}.quiz-submit-button.enabled:hover{background:#e7faf2}.quiz-submit-button.next{background:#b86de3;color:#fff}.quiz-submit-button.next:hover{background:#2c5057}.quiz-persona-section{align-items:center;display:flex;flex-direction:column;margin-left:32px;margin-top:8px;position:relative}.quiz-persona{position:relative}.quiz-persona-image{border:3px solid #f0f9d6;border-radius:50%;box-shadow:0 4px 20px #0000001a;height:96px;width:96px}.quiz-persona:after{border:2px solid #b86de3;border-radius:50%;content:"";inset:0;pointer-events:none;position:absolute}.quiz-timer{margin-top:8px;text-align:center}.quiz-timer-label{color:#2c5057;font-size:12px;font-weight:500;margin-bottom:4px}.quiz-timer-display{background:#f0f9d6;border-radius:8px;color:#2c5057;font-size:16px;font-weight:700;padding:4px 8px}.quiz-timer-display.warning{background:#b94a1d;color:#fff}.quiz-progress-bar{align-items:center;display:flex;flex-direction:column;margin-left:160px;margin-right:auto;margin-top:8px;width:1000px}.quiz-progress-label{color:#2c5057;font-size:16px;font-weight:600;margin-bottom:4px}.quiz-progress-container{align-items:center;display:flex;max-width:1000px;width:100%}.quiz-progress-track{background:#d9d9d9;border:2px solid #2c5057;border-radius:6px;box-shadow:inset 0 1px 3px #0000001a;flex:1 1;height:12px;overflow:hidden;position:relative}.quiz-progress-fill{background:#b94a1d;border-radius:6px;height:100%;left:0;position:absolute;top:0;transition:width .3s ease}.quiz-progress-text{color:#2c5057;font-weight:700;margin-left:12px}.countdown-container{background:#0000;flex:1 1;min-height:100vh;position:relative}.countdown-background,.countdown-container{align-items:center;display:flex;justify-content:center}.countdown-background{inset:0;opacity:.1;pointer-events:none;position:absolute}.countdown-background-content{color:#6b7280;font-size:18px;max-width:960px;text-align:center}.countdown-background-content h1{font-size:32px;font-weight:700;margin-bottom:16px}.countdown-background-content p{margin-bottom:8px}.countdown-overlay{align-items:center;display:flex;flex-direction:column;position:relative;z-index:10}.countdown-cat{margin-bottom:24px}.countdown-cat-image{border:4px solid #f0f9d6;border-radius:50%;box-shadow:0 4px 20px #0000001a;height:192px;width:192px}.countdown-sign{background:#fff;border:2px solid #4bac81;border-radius:8px;box-shadow:0 4px 20px #0000001a;margin-bottom:24px;padding:16px}.countdown-sign h2{color:#b86de3;font-size:32px;font-style:italic;font-weight:700;margin:0}.countdown-display{background:#f0f9d6;border:2px solid #4bac81;border-radius:8px;box-shadow:0 4px 20px #0000001a;padding:16px 32px}.countdown-text{color:#b86de3;font-size:32px;font-weight:700}.countdown-go{font-size:40px}.countdown-message{margin-top:32px;text-align:center}.countdown-message p{color:#2c5057;font-size:18px;font-weight:500}.quiz-dashboard{background:#d9d9d9;display:flex;flex-direction:column;min-height:100vh}.quiz-dashboard-header{background:#2c5057;color:#fff;left:0;padding:16px;position:fixed;right:0;top:0;z-index:10}.quiz-dashboard-header-content{justify-content:space-between}.quiz-dashboard-header-content,.quiz-dashboard-title{align-items:center;display:flex}.quiz-dashboard-brand{font-size:24px;font-weight:700;margin-right:8px}.quiz-dashboard-tagline{font-size:12px;opacity:.8}.quiz-dashboard-nav{align-items:center;display:flex;gap:24px}.quiz-dashboard-nav-item{align-items:center;border-radius:4px;cursor:pointer;display:flex;gap:8px;padding:4px 12px;transition:background-color .2s}.quiz-dashboard-nav-item:hover{background:#ffffff1a}.quiz-dashboard-nav-item.active{background:#fcd34d;color:#2c5057;font-weight:500}.quiz-dashboard-content{display:flex;flex:1 1;margin-top:64px}.quiz-dashboard-sidebar{background:#fff;box-shadow:0 4px 20px #0000001a;padding:24px;width:320px}.quiz-dashboard-profile{text-align:center}.quiz-dashboard-username{color:#2c5057;font-size:32px;font-weight:700;margin-bottom:16px}.quiz-dashboard-avatar{margin-bottom:16px}.quiz-dashboard-avatar-container{align-items:center;background:linear-gradient(135deg,#c084fc,#9333ea);border-radius:50%;display:flex;font-size:64px;height:128px;justify-content:center;margin:0 auto;overflow:hidden;position:relative;width:128px}.quiz-dashboard-avatar-image{border-radius:50%;display:block;height:100%;object-fit:cover;object-position:center;width:100%}.quiz-dashboard-avatar-border{border:4px solid #c084fc;border-radius:50%;inset:0;opacity:.5;position:absolute}.quiz-dashboard-user-info{margin-bottom:32px}.quiz-dashboard-grade{color:#306f78;font-size:18px;margin-bottom:8px}.quiz-dashboard-school{color:#306f78;font-size:16px}.quiz-dashboard-message-hub{text-align:center}.quiz-dashboard-message-hub p{color:#2c5057;font-size:14px;margin-bottom:12px}.quiz-dashboard-message-button{background:#b86de3;border:none;border-radius:50%;box-shadow:0 4px 20px #0000001a;color:#fff;cursor:pointer;font-size:18px;font-weight:700;height:64px;transition:background-color .2s;width:64px}.quiz-dashboard-message-button:hover{background:#a855cd}.quiz-dashboard-main{flex:1 1;padding:24px}.quiz-dashboard-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr;height:calc(100vh - 200px)}.quiz-dashboard-card{border-radius:8px;box-shadow:0 4px 20px #0000001a;padding:24px}.quiz-dashboard-card.feelings{background:linear-gradient(to bottom right,#e9d5ff,#ddd6fe)}.quiz-dashboard-card.performance,.quiz-dashboard-card.rewards{background:#dcfce7}.quiz-dashboard-card.subjects{background:#e9d5ff}.quiz-dashboard-card h2{color:#2c5057;font-size:20px;font-weight:700;margin-bottom:16px}.quiz-dashboard-card p{color:#306f78;font-size:14px;margin-bottom:16px}.quiz-dashboard-emoji-row{display:flex;justify-content:space-between;margin-bottom:16px}.quiz-dashboard-emoji{align-items:center;background:#fff;border:none;border-radius:50%;cursor:pointer;display:flex;font-size:20px;height:40px;justify-content:center;transition:all .2s;width:40px}.quiz-dashboard-emoji:hover{background:#f3f4f6}.quiz-dashboard-emoji.selected{background:#3b82f6;box-shadow:0 0 0 2px #2563eb;color:#fff}.quiz-dashboard-advice{color:#2563eb;font-size:14px;margin-bottom:16px}.quiz-dashboard-thoughts{border:1px solid #d1d5db;border-radius:8px;font-family:inherit;font-size:14px;height:80px;padding:12px;resize:none;width:100%}.quiz-dashboard-legend{display:flex;font-size:12px;gap:16px;justify-content:center;margin-bottom:16px}.quiz-dashboard-legend-item{align-items:center;display:flex;gap:4px}.quiz-dashboard-legend-color{border-radius:50%;height:12px;width:12px}.quiz-dashboard-legend-color.overall{background:#22c55e}.quiz-dashboard-legend-color.today{background:#8b5cf6}.quiz-dashboard-chart{background:#fff;border-radius:8px;height:192px;padding:16px;position:relative}.quiz-dashboard-bars{align-items:end;display:flex;height:128px;justify-content:space-between;margin-bottom:16px}.quiz-dashboard-bar-group{align-items:center;display:flex;flex-direction:column}.quiz-dashboard-day{color:#6b7280;font-size:12px;margin-bottom:4px}.quiz-dashboard-bar{border-radius:2px 2px 0 0;width:24px}.quiz-dashboard-bar.overall{background:#22c55e}.quiz-dashboard-bar.today{background:#8b5cf6;margin-top:4px}.quiz-dashboard-fun-facts-title{color:#306f78;font-size:18px;font-weight:600;margin-bottom:16px}.quiz-dashboard-fun-facts{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}.quiz-dashboard-fun-fact{border-radius:8px;color:#fff;padding:16px;text-align:center}.quiz-dashboard-fun-fact.food{background:#3b82f6}.quiz-dashboard-fun-fact.panda{background:#22c55e}.quiz-dashboard-fun-fact.sports{background:#f59e0b}.quiz-dashboard-fun-fact-icon{font-size:32px;margin-bottom:8px}.quiz-dashboard-fun-fact-label{font-size:12px}.quiz-dashboard-subject-chart{background:#fff;border-radius:8px;height:192px;padding:16px;position:relative}.quiz-dashboard-subject-bars{align-items:end;display:flex;height:128px;justify-content:space-between;margin-bottom:16px}.quiz-dashboard-subject-bar{align-items:center;display:flex;flex-direction:column}.quiz-dashboard-subject-name{color:#6b7280;font-size:12px;margin-bottom:4px}.quiz-dashboard-subject-value{background:#8b5cf6;border-radius:2px 2px 0 0;width:32px}.quiz-dashboard-subject-range{color:#6b7280;font-size:12px;text-align:center}.quiz-dashboard-start-button-container{margin-top:24px;text-align:center}.quiz-dashboard-start-button{background:#4bac81;border:none;border-radius:8px;box-shadow:0 4px 20px #0000001a;color:#fff;cursor:pointer;font-size:18px;font-weight:700;padding:12px 32px;transition:background-color .2s}.quiz-dashboard-start-button:hover{background:#306f78}.quiz-buttons-container{bottom:20px;display:flex;flex-direction:column;gap:10px;position:fixed;right:20px;z-index:100}.quiz-button{background:#4bac81;border:none;border-radius:6px;box-shadow:0 2px 8px #0003;color:#fff;cursor:pointer;font-size:14px;padding:10px 15px;transition:all .2s ease}.quiz-button:hover{background:#306f78;transform:translateY(-1px)}.quiz-overlay-container{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:20px;width:100%}.quiz-saving-status{align-items:center;background:#e3f2fd;border-radius:6px;color:#1976d2;display:flex;font-size:14px;gap:8px;margin-top:12px;padding:8px 12px}.quiz-saving-spinner{animation:spin 1s linear infinite;border:2px solid #e3f2fd;border-radius:50%;border-top-color:#1976d2;height:16px;width:16px}.quiz-saved-status{background:#e8f5e8;color:#2e7d32}.quiz-save-error,.quiz-saved-status{border-radius:6px;font-size:14px;margin-top:12px;padding:8px 12px}.quiz-save-error{background:#ffebee;color:#c62828}.dropdown-section{align-items:flex-start;background:#f8f9ff;border-radius:16px;box-shadow:0 2px 12px 0 #ede7f6aa;margin-bottom:18px;padding:18px 18px 10px;width:85%}.dropdown-label{color:#333;font-size:1.1rem;font-weight:500;margin-bottom:8px}.progress-section{align-items:flex-start;display:flex;flex-direction:column;margin-top:18px;width:85%}.progress-title{align-items:center;color:#222;display:flex;font-size:1.3rem;font-weight:700;margin-bottom:2px}.traffic-light{font-size:1.5rem;margin-right:8px}.progress-subtext{color:#888;font-size:.98rem;margin-bottom:12px}.progress-steps{display:flex;flex-direction:column;gap:12px;width:100%}.progress-step{gap:10px}.progress-dot{background:#7b68ee;border-radius:5px;display:inline-block;height:18px;margin-right:2px;width:18px}.progress-btn{background:#fff;border:2.5px solid #222;border-radius:8px;color:#222;flex:1 1;font-size:1.08rem;font-weight:700;letter-spacing:1px;padding:6px 0;text-align:center;transition:border .2s,background .2s}.progress-btn.active{background:#f8f9ff;border:2.5px solid #9370db;color:#9370db}.sidebar-container{background:radial-gradient(circle at 50% 0,#4bac81 68%,#306f78 97%);border-right:1.5px solid #d1c4e9;box-shadow:0 0 24px 0 #ede7f633;height:100%;justify-content:space-between;padding:0;width:100%}.profile-section,.sidebar-container{align-items:center;display:flex;flex-direction:column}.profile-section{margin-bottom:30px;margin-top:40px}.profile-window{border:3px solid #1a4a52;border-radius:16px;box-shadow:0 6px 20px #667eea4d;cursor:pointer;flex-direction:column;height:250px;position:relative;transition:all .3s ease;width:250px}.panda-container,.profile-window{align-items:center;background:#0000;display:flex;justify-content:center;overflow:hidden;padding:0}.panda-container{border-radius:12px;box-sizing:border-box;height:100%;margin:0;width:100%}.panda-container svg{max-height:280px;max-width:280px}.panda-container svg,.panda-image{filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));height:100%;transition:transform .3s ease;width:100%}.panda-image{border-radius:12px;display:block;margin:0 auto;object-fit:cover;object-position:center}.profile-image{margin-bottom:8px}.profile-avatar{filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));font-size:3rem}.profile-info{color:#fff}.profile-name{font-size:1.1rem;font-weight:700;margin:0 0 4px}.profile-name,.profile-title{text-shadow:0 1px 2px #0000004d}.profile-title{font-size:.85rem;margin:0 0 8px;opacity:.9}.profile-stats{display:flex;flex-direction:column;gap:2px}.stat{font-size:.75rem;opacity:.8;text-shadow:0 1px 2px #0000004d}.message-button{align-items:center;background:#306f78;border:3px solid #1a4a52;border-radius:50%;box-shadow:0 4px 15px #306f784d;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;height:120px;justify-content:center;letter-spacing:.5px;line-height:1.3;margin-bottom:0;margin-top:-110px;text-align:center;text-transform:uppercase;transition:all .3s ease;white-space:normal;width:120px}.message-button:hover{background:#2a5a63;box-shadow:0 6px 20px #306f7866;transform:translateY(-2px)}.message-button:active{box-shadow:0 2px 10px #667eea4d;transform:translateY(0)}.message-button:focus{box-shadow:0 4px 15px #667eea4d,0 0 0 3px #667eea33;outline:none}.student-name{color:#d4c4a8;font-size:1.75rem;font-weight:700;letter-spacing:.5px;margin-bottom:8px;margin-top:35px;text-align:center}.student-details{margin-top:8px;text-align:center}.student-grade,.student-school,.teacher-support{color:#d4c4a8;font-family:Segoe UI,Arial,sans-serif;font-weight:400;line-height:1.2}.student-grade{font-size:1.25rem!important;margin-bottom:2px}.student-school{font-size:1.25rem}.teacher-support{font-size:1.5rem}.message-label{font-size:1.08rem;font-weight:500;letter-spacing:.2px;line-height:1.2;margin-bottom:10px}.message-label,.teacher-hub{color:#d4c4a8;text-align:center}.teacher-hub{font-size:1rem;font-weight:400;line-height:1.3;margin-top:-140px}.message-popup-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.message-popup{animation:popupSlideIn .3s ease-out;background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-height:80vh;max-width:500px;overflow-y:auto;position:relative;width:90%}@keyframes popupSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.message-popup-close{align-items:center;background:none;border:none;border-radius:50%;color:#999;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;position:absolute;right:20px;top:15px;transition:all .2s ease;width:30px}.message-popup-close:hover{background:#f5f5f5;color:#666}.message-popup-content{padding:30px}.message-popup-title{color:#333;font-size:1.5rem;font-weight:700;margin:0 0 8px;text-align:center}.message-popup-subtitle{color:#666;font-size:1rem;margin:0 0 25px;text-align:center}.message-options{margin-bottom:25px}.message-option{align-items:center;background:#fafafa;border:2px solid #e8f5f5;border-radius:12px;cursor:pointer;display:flex;margin-bottom:8px;padding:12px 16px;transition:all .2s ease}.message-option:hover{background:#f8f9ff;border-color:#667eea}.message-option input[type=radio]{accent-color:#667eea;height:18px;margin-right:12px;width:18px}.option-text{color:#333;font-size:.95rem;font-weight:500}.message-textarea-container{margin-bottom:25px}.message-textarea-label{color:#333;display:block;font-size:.95rem;font-weight:600;margin-bottom:8px}.message-textarea{border:2px solid #e8f5f5;border-radius:12px;box-sizing:border-box;font-size:.9rem;padding:12px 16px;transition:border-color .2s ease}.message-popup-buttons{display:flex;gap:12px;justify-content:flex-end}.message-popup-cancel{background:#fff;border:2px solid #e0e0e0;border-radius:8px;color:#666;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 20px;transition:all .2s ease}.message-popup-cancel:hover{background:#f5f5f5;border-color:#ccc}.message-popup-send{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 20px;transition:all .2s ease}.message-popup-send:hover:not(:disabled){box-shadow:0 4px 12px #667eea4d;transform:translateY(-1px)}.message-popup-send:disabled{background:#ccc;cursor:not-allowed;opacity:.6}@media (max-width:600px){.message-popup{margin:20px;width:95%}.message-popup-content{padding:20px}.message-popup-buttons{flex-direction:column}.message-popup-cancel,.message-popup-send{width:100%}}.student-main-content{align-items:stretch;background:#2c5057;box-shadow:none;display:flex;flex:1 1;height:100%;justify-content:center;max-width:100%;min-width:0;padding:0;width:100%}.student-content-grid{grid-gap:16px;box-sizing:border-box;display:grid;gap:16px;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;height:100%;max-width:100%;width:100%}.content-box{align-items:stretch;background:#0000;border:3px solid #d8c8a7;border-radius:22px;box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;height:100%;min-height:0;min-width:0;overflow:hidden;padding:0}.content-box:has(.funfact-container){border:none;overflow:hidden;padding:0}.content-box .funfact-container{height:100%;margin:0;min-height:0;width:100%}.content-box h3{color:#9370db;font-size:1.2rem;font-weight:600;margin:0 0 16px}.content-box p{color:#666;line-height:1.5;margin:8px 0}.selected-text{background:#e6e6fa;border-radius:6px;color:#333!important;margin-top:16px!important;padding:8px 12px}.emotion-checkin-container{align-items:center;background:linear-gradient(135deg,#f0f9d6,#e8f5e8);border-radius:18px;box-sizing:border-box;display:flex;flex-direction:column;height:100%;justify-content:space-between;padding:18px 14px;width:100%}.emotion-title{color:#333;font-size:1.15rem;font-weight:700;margin-bottom:4px;margin-top:10px;text-align:center}.emotion-subtitle{color:#444;font-size:.95rem;margin-bottom:10px;text-align:center}@keyframes emojiBounce{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-8px) scale(1.08)}}@keyframes emojiWiggle{0%,to{transform:rotate(0deg)}25%{transform:rotate(-8deg)}75%{transform:rotate(8deg)}}.emotion-slider-row{grid-gap:40px 5px;display:grid;gap:40px 5px;grid-template-columns:repeat(5,1fr);justify-items:center;margin-bottom:10px;overflow:visible;padding:8px 4px;width:100%}.emotion-slider-row .emotion-emoji-label{max-width:56px;min-width:0;width:100%}.emotion-tooltip{animation:fadeInTooltip .18s;background:#fff;border-radius:8px;box-shadow:0 2px 12px #b39ddb55;color:#333;font-size:1.1rem;left:50%;opacity:.97;padding:8px 16px;pointer-events:none;position:absolute;top:-38px;transform:translateX(-50%);white-space:nowrap;z-index:10}.emotion-emoji-label{align-items:center;border-radius:12px;cursor:pointer;display:flex;flex:1 1;flex-direction:column;justify-content:center;margin-bottom:0;min-width:30px;padding:4px;position:relative;transition:all .3s cubic-bezier(.34,1.56,.64,1)}.emotion-emoji-label,.emotion-emoji-label.selected{background:linear-gradient(135deg,#f0f9d6,#e8f5e8)}.emotion-emoji-label:active .emotion-emoji{transform:scale(1.15)!important}.emotion-emoji-label.selected{z-index:2}.emotion-emoji-label.selected .emotion-emoji{animation:emojiWiggle .6s ease-in-out;filter:drop-shadow(0 0 20px rgba(179,157,219,.8)) drop-shadow(0 0 30px rgba(179,157,219,.6));transform:scale(1.2)}.emotion-emoji-label:hover .emotion-emoji{filter:drop-shadow(0 0 15px rgba(179,157,219,.6));transform:scale(1.35) translateY(-6px) rotate(5deg)}.emotion-emoji{align-items:center;background:#0000;border-radius:50%;display:flex;font-size:2rem;justify-content:center}.emotion-emoji .emotion-emoji-img{border-radius:50%;height:60px;object-fit:contain;transition:transform .3s ease;width:60px}.emotion-slider-row>div:first-child .emotion-emoji{animation-delay:0s}.emotion-slider-row>div:nth-child(2) .emotion-emoji{animation-delay:.1s}.emotion-slider-row>div:nth-child(3) .emotion-emoji{animation-delay:.2s}.emotion-slider-row>div:nth-child(4) .emotion-emoji{animation-delay:.3s}.emotion-slider-row>div:nth-child(5) .emotion-emoji{animation-delay:.4s}.emotion-slider-row>div:nth-child(6) .emotion-emoji{animation-delay:.5s}.emotion-slider-row>div:nth-child(7) .emotion-emoji{animation-delay:.6s}.emotion-slider-row>div:nth-child(8) .emotion-emoji{animation-delay:.7s}.emotion-slider-row>div:nth-child(9) .emotion-emoji{animation-delay:.8s}.emotion-slider-row>div:nth-child(10) .emotion-emoji{animation-delay:.9s}.emotion-feedback{animation:fadeInFeedback .3s;color:#000;font-size:1.25rem;font-weight:500;margin:10px 0 0;min-height:24px;text-align:center}@keyframes fadeInFeedback{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.confetti{position:absolute;right:0;z-index:20}.confetti-piece{animation:confetti-fall 1.1s linear forwards;border-radius:50%;opacity:.8}.confetti-piece-0{background:#ffd54f}.confetti-piece-1{background:#ff6b6b}.confetti-piece-2{background:#4fc3f7}.confetti-piece-3{animation-delay:.05s;background:#81c784}.confetti-piece-4{animation-delay:.15s;background:#9575cd;left:60%}.confetti-piece-5{animation-delay:.12s;background:#ffb74d;left:80%}.emotion-slider{accent-color:#7c4dff;background:linear-gradient(90deg,#a259c6,#f7c6ff);border-radius:6px;height:3px;margin-top:4px;width:98%}.emotion-slider::-webkit-slider-thumb{appearance:none;background:#7c4dff;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 6px #b39ddb55;cursor:pointer;height:14px;-webkit-transition:background .2s;transition:background .2s;width:14px}.emotion-slider::-moz-range-thumb{background:#7c4dff;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 6px #b39ddb55;cursor:pointer;height:14px;-moz-transition:background .2s;transition:background .2s;width:14px}.emotion-slider::-ms-thumb{background:#7c4dff;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 6px #b39ddb55;cursor:pointer;height:14px;-ms-transition:background .2s;transition:background .2s;width:14px}.emotion-slider:focus{outline:none}.emotion-thoughts-box{align-items:flex-start;box-sizing:border-box;display:flex;flex-direction:column;margin-top:8px;max-width:100%;width:100%}.emotion-thoughts-label{color:#444;font-size:.92rem;margin-bottom:2px;margin-left:2px}.emotion-thoughts-container{display:flex;flex:1 1;flex-direction:column;min-height:0;position:relative;width:100%}.emotion-thoughts-textarea{background:#fff;border:none;border-radius:7px;box-shadow:0 1px 4px #b39ddb22;box-sizing:border-box;color:#222;font-size:.85rem;height:clamp(45px,8vh,90px);margin-bottom:0;max-width:100%;min-height:clamp(45px,8vh,90px);overflow-wrap:break-word;padding:4px 90px 4px 8px;resize:none;transition:box-shadow .2s;width:100%}.emotion-thoughts-submit-btn{background:linear-gradient(135deg,#9370db,#7c5fb3);border:none;border-radius:5px;bottom:4px;box-shadow:0 2px 6px #9370db4d;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;padding:6px 16px;position:absolute;right:4px;transition:all .3s ease}.emotion-thoughts-submit-btn:hover:not(:disabled){background:linear-gradient(135deg,#7c5fb3,#6b4c9f);box-shadow:0 4px 10px #9370db66;transform:translateY(-1px)}.emotion-thoughts-submit-btn:active:not(:disabled){box-shadow:0 2px 6px #9370db4d;transform:translateY(0)}.emotion-thoughts-submit-btn:disabled{background:#d0d0d0;box-shadow:none;color:#888;cursor:not-allowed}.emotion-thoughts-textarea:focus{box-shadow:0 2px 8px #a259c655;outline:none}.rewards-container{align-items:flex-start;background:#c9ffe7;border-radius:18px;box-sizing:border-box;display:flex;flex-direction:column;height:100%;padding:18px 16px;width:100%}.rewards-title{color:#2e7d32;font-size:1.3rem;font-weight:700;margin:0 0 16px;text-align:center;width:100%}.rewards-content{flex:1 1;flex-direction:column}.fun-facts-section,.rewards-content{align-items:center;display:flex;justify-content:center;width:100%}.fun-facts-section{flex-direction:column}.fun-facts-title{color:#218838;display:block;font-family:Comic Sans MS,Comic Sans,Chalkboard SE,Comic Neue,cursive,sans-serif;font-size:2rem;font-weight:700;letter-spacing:1.5px;margin:0 0 18px;text-align:center;text-shadow:1px 2px 6px #b7e4c7aa,0 1px 0 #fff;width:100%}.fun-facts-list{list-style:none;margin:0;padding:0}.fun-facts-list li{color:#4a4a4a;font-size:1rem;line-height:1.4;margin-bottom:8px;padding-left:20px;position:relative}.fun-facts-list li:before{color:#4caf50;content:"•";font-size:1.2rem;font-weight:700;left:0;position:absolute;top:-2px}.subject-ranking-container{align-items:center;background:linear-gradient(135deg,#f0f9d6,#e8f5e8);border-radius:18px;box-sizing:border-box;display:flex;flex:1 1 auto;flex-direction:column;height:100%;min-height:0;padding:18px 16px;width:100%}.subject-ranking-title{color:#000!important;font-size:1.2rem;font-weight:700;margin:0 0 8px;text-align:center;width:100%}.pt-instruction{color:#7b1fa2;font-size:.9rem;font-weight:500;margin-bottom:12px;text-align:center}.performance-metrics-container{align-items:center;background:#c9ffe7;border-radius:18px;box-sizing:border-box;display:flex;flex-direction:column;height:100%;justify-content:flex-start;padding:0;width:100%}.performance-metrics-title{color:#9370db;font-size:1.3rem;font-weight:700;margin:0 0 8px;text-align:center;width:100%}.performance-metrics-chart{flex:1 1 auto;height:100%;min-height:220px;width:100%}.gift-popup-overlay,.performance-metrics-chart{align-items:center;display:flex;justify-content:center}.gift-popup-overlay{background:#0000002e;bottom:0;left:0;position:fixed;right:0;top:0;z-index:1000}.gift-popup{animation:popupIn .2s;background:#fff;border-radius:18px;box-shadow:0 8px 32px #667eea2e;max-width:90vw;min-width:320px;padding:32px 28px 24px;position:relative;text-align:center}@keyframes popupIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.gift-popup-close{background:none;border:none;color:#764ba2;cursor:pointer;font-size:2rem;position:absolute;right:18px;top:12px;transition:color .2s;z-index:2}.gift-popup-close:hover{color:#ff6b6b}.gift-popup-content h4{font-size:3.2rem!important;line-height:1.1;margin-bottom:8px}.gift-popup-content p{color:#333;font-size:1.08rem;margin:0}@media (max-width:1200px){.student-content-grid{gap:20px}.emotion-title{font-size:1.1rem}.emotion-subtitle{font-size:.9rem}.emotion-emoji{font-size:1.8rem}.rewards-title{font-size:1.2rem}.fun-facts-title{font-size:1.8rem}.icon-square{height:90px;width:90px}.icon-img{height:72px;width:72px}}@media (max-width:700px){.student-content-grid{gap:16px;grid-template-columns:1fr;grid-template-rows:repeat(4,1fr)}.content-box{min-height:0;min-width:0;padding:.5rem}.emotion-checkin-container{padding:12px 8px}.emotion-title{font-size:1rem;margin-bottom:2px}.emotion-subtitle{font-size:.85rem;margin-bottom:8px}.emotion-slider-row{gap:4px;margin-bottom:2px}.emotion-emoji-label{min-width:38px}.emotion-emoji{font-size:1.5rem;padding:2px}.emotion-feedback{font-size:.9rem;margin:6px 0 0}.emotion-thoughts-label{font-size:.85rem}.emotion-thoughts-textarea{font-size:.8rem;padding:3px 6px}.performance-metrics-title,.rewards-title{font-size:1.1rem}.fun-facts-title{font-size:1.6rem;margin-bottom:12px}.icon-row{gap:12px;margin-bottom:6px}.icon-square{height:75px;width:75px}.icon-img{height:60px;width:60px}.gift-popup{min-width:280px;padding:24px 20px 16px}.gift-popup-content h4{font-size:2.5rem!important}.gift-popup-content p{font-size:1rem}}@media (max-width:768px){.student-content-grid{gap:12px}.content-box{padding:.3rem}.emotion-checkin-container{padding:10px 6px}.emotion-title{font-size:.95rem}.emotion-subtitle{font-size:.8rem;margin-bottom:6px}.emotion-slider-row{gap:3px}.emotion-emoji-label{min-width:35px}.emotion-emoji{font-size:1.4rem;padding:2px}.emotion-feedback{font-size:.85rem;margin:4px 0 0}.emotion-thoughts-label{font-size:.8rem}.emotion-thoughts-textarea{font-size:.75rem;padding:2px 4px}.rewards-title{font-size:1rem;margin-bottom:12px}.fun-facts-title{font-size:1.4rem;margin-bottom:10px}.icon-row{gap:10px;margin-bottom:4px}.icon-square{height:65px;width:65px}.icon-img{height:52px;width:52px}.gift-popup{min-width:240px;padding:20px 16px 12px}.gift-popup-content h4{font-size:2rem!important}.gift-popup-content p{font-size:.9rem}}@media (max-width:480px){.student-content-grid{gap:8px}.content-box{padding:.2rem}.emotion-checkin-container{padding:8px 4px}.emotion-title{font-size:.9rem;margin-bottom:1px}.emotion-subtitle{font-size:.75rem;margin-bottom:4px}.emotion-slider-row{gap:2px}.emotion-emoji-label{min-width:30px}.emotion-emoji{font-size:1.2rem;padding:2px}.emotion-feedback{font-size:.8rem;margin:3px 0 0}.emotion-thoughts-label{font-size:.75rem}.emotion-thoughts-textarea{font-size:.7rem;padding:1px 3px}.rewards-title{font-size:.95rem;margin-bottom:10px}.fun-facts-title{font-size:1.2rem;margin-bottom:8px}.icon-row{gap:6px;margin-bottom:2px}.icon-square{height:55px;width:55px}.icon-img{height:44px;width:44px}.gift-popup{min-width:200px;padding:16px 12px 8px}.gift-popup-content h4{font-size:1.8rem!important}.gift-popup-content p{font-size:.85rem}.icon-tooltip{font-size:.8rem;padding:6px 12px}.emotion-tooltip{font-size:.8rem;padding:5px 10px}}@media (max-width:360px){.emotion-emoji{font-size:1.1rem;padding:2px}.icon-square{height:40px;width:40px}.icon-img{height:32px;width:32px}}@media (max-height:500px) and (orientation:landscape){.student-content-grid{gap:8px}.emotion-checkin-container{padding:6px 4px}.emotion-title{font-size:.85rem;margin-bottom:1px}.emotion-subtitle{font-size:.7rem;margin-bottom:2px}.emotion-emoji{font-size:1.1rem;padding:2px}.emotion-feedback{font-size:.75rem;margin:2px 0 0}.emotion-thoughts-textarea{min-height:20px}.icon-square{height:40px;width:40px}.icon-img{height:32px;width:32px}}.content-box,.emotion-checkin-container,.emotion-emoji,.icon-img,.icon-square,.rewards-container{transition:all .3s ease}.icon-grid-container{align-items:flex-end;height:100%}.icon-grid-container,.icon-row{display:flex;justify-content:center;width:100%}.icon-row{flex-direction:row;flex-wrap:wrap;gap:20px;margin-bottom:16px}.icon-square{align-items:center;background:#fff;border:3px solid #888;border-radius:12px;box-sizing:border-box;display:flex;flex-shrink:0;height:100px;justify-content:center;position:relative;transition:transform .18s,box-shadow .18s,border .18s;width:100px}.icon-square.icon-hovered{border:3px solid #764ba2;box-shadow:0 6px 24px #b39ddb44;transform:scale(1.13) rotate(-3deg);z-index:2}.icon-img{height:80px;object-fit:contain;transition:filter .18s;width:80px}.icon-tooltip{animation:fadeInTooltip .18s;background:#fff;border-radius:8px;bottom:110%;box-shadow:0 2px 12px #b39ddb55;color:#764ba2;font-size:1rem;left:50%;opacity:.97;padding:8px 16px;pointer-events:none;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:10}@keyframes fadeInTooltip{0%{opacity:0;transform:translateX(-50%) translateY(10px)}to{opacity:.97;transform:translateX(-50%) translateY(0)}}.settings-container{background:#f5f5f5;min-height:100vh;padding:2rem}.settings-title{color:#333;font-size:2.5rem;font-weight:700;margin-bottom:2rem;margin-left:1rem}.settings-cards{display:flex;flex-wrap:wrap;gap:2rem}.settings-card{box-shadow:0 4px 12px #0000001a;flex:1 1;min-width:300px;padding:2rem}.card-title{color:#333;font-size:1.3rem;font-weight:700}.card-title,.form-group{margin-bottom:1.5rem}.form-group label{color:#555;font-size:.9rem;margin-bottom:.5rem}.form-input,.form-select{background:#fff;border:1px solid #ddd;border-radius:8px;font-size:.9rem;padding:.75rem;transition:border-color .3s ease;width:100%}.form-input:focus,.form-select:focus{border-color:#4a90e2;box-shadow:0 0 0 2px #4a90e233;outline:none}.checkbox-label{align-items:center;cursor:pointer;display:flex!important;font-weight:500!important;gap:.5rem;margin-bottom:0!important}.form-checkbox{accent-color:#4a90e2;cursor:pointer;height:18px;width:18px}@media (max-width:768px){.settings-cards{flex-direction:column}.settings-card{min-width:auto}.settings-title{font-size:2rem}}.funfact-container{align-items:center;background:linear-gradient(135deg,#f0f9d6,#e8f5e8);border:3px solid #d8c8a7;border-radius:22px;box-shadow:0 8px 32px #0000001a;box-sizing:border-box;display:flex;flex-direction:column;height:100%;margin:0;min-height:0;overflow-x:hidden;overflow-y:auto;padding:10px;text-align:center;width:100%}.funfact-header{margin-bottom:80px}.funfact-title{color:#000!important;font-size:20px;font-weight:700;letter-spacing:1px;margin:0 0 8px;text-transform:uppercase}.funfact-subtitle{color:#2c5057;font-size:20px;font-weight:600;margin:0}.funfact-categories{align-items:flex-start;box-sizing:border-box;display:flex;flex-wrap:nowrap;gap:18px;justify-content:center;margin-bottom:8px;padding:0 10px;width:100%}.funfact-category-item{align-items:center;display:flex;flex-direction:column;gap:6px}.funfact-category-btn{align-items:center;border:none;border-radius:18px;box-shadow:0 6px 20px #00000040;cursor:pointer;display:flex;flex-shrink:0;height:120px;justify-content:center;overflow:hidden;position:relative;transition:all .3s ease;width:120px}.funfact-category-btn:hover{box-shadow:0 8px 25px #0000004d;transform:translateY(-5px)}.funfact-category-btn:active{transform:translateY(-2px)}.funfact-category-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.funfact-category-icon{filter:drop-shadow(0 3px 6px rgba(0,0,0,.4));font-size:36px}.funfact-category-label{word-wrap:break-word;color:#2c5057;font-size:14px;font-weight:700;letter-spacing:.5px;line-height:1.2;max-width:100%;text-align:center;text-transform:uppercase}.funfact-content{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:center;max-width:600px;min-height:60px;width:100%}.funfact-instruction{padding:6px;text-align:center}.funfact-instruction p{color:#2c5057;font-size:11px;font-weight:500;line-height:1.3;margin:0}.funfact-loading{align-items:center;display:flex;flex-direction:column;gap:15px}.funfact-spinner{animation:spin 1s linear infinite;border:4px solid #e8f5e8;border-radius:50%;border-top-color:#8b5cf6;height:40px;width:40px}.funfact-display{width:100%}.funfact-text{background:#ffffffb3;border-left:4px solid #8b5cf6;border-radius:12px;box-shadow:0 4px 15px #0000001a;color:#2c5057;font-size:14px;line-height:1.4;margin:0 0 8px;padding:10px}.funfact-topic{color:#8b5cf6;font-size:11px;font-weight:600;letter-spacing:.5px;margin:0;text-transform:uppercase}.funfact-error{background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;color:#ef4444;font-size:16px;margin:0 0 15px;padding:10px}.funfact-popup-overlay{align-items:center;animation:fadeIn .3s ease;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.funfact-popup{animation:slideIn .3s ease;background:linear-gradient(135deg,#f0f9d6,#e8f5e8);border-radius:20px;box-shadow:0 20px 60px #0000004d;max-height:80vh;max-width:500px;overflow-y:auto;padding:30px;position:relative;width:90%}@keyframes slideIn{0%{opacity:0;transform:translateY(-50px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.funfact-popup-close{align-items:center;background:none;border:none;border-radius:50%;color:#8b5cf6;cursor:pointer;display:flex;font-size:30px;height:40px;justify-content:center;position:absolute;right:20px;top:15px;transition:all .2s ease;width:40px}.funfact-popup-close:hover{background:#8b5cf61a;transform:scale(1.1)}.funfact-popup-content{text-align:center}.funfact-popup-title{color:#8b5cf6;font-size:24px;font-weight:700;letter-spacing:1px;margin:0 0 20px;text-transform:uppercase}.funfact-popup-text{background:#ffffffb3;border-left:5px solid #8b5cf6;border-radius:15px;box-shadow:0 4px 15px #0000001a;color:#2c5057;font-size:18px;line-height:1.6;margin:0 0 20px;padding:20px}.funfact-popup-error{background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;color:#ef4444;font-size:16px;margin:0 0 20px;padding:10px}.funfact-popup-actions{display:flex;justify-content:center}.funfact-popup-btn{border:none;border-radius:25px;cursor:pointer;font-size:16px;font-weight:600;min-width:120px;padding:12px 24px;transition:all .3s ease}.funfact-popup-btn-primary{background:linear-gradient(135deg,#8b5cf6,#a855f7);box-shadow:0 4px 15px #8b5cf64d;color:#fff}.funfact-popup-btn-primary:hover{box-shadow:0 6px 20px #8b5cf666;transform:translateY(-2px)}.funfact-popup-btn-secondary{background:linear-gradient(135deg,#6b7280,#9ca3af);box-shadow:0 4px 15px #6b72804d;color:#fff}.funfact-popup-btn-secondary:hover{box-shadow:0 6px 20px #6b728066;transform:translateY(-2px)}.funfact-popup-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.confetti{height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:1001}.confetti-piece{animation:confetti-fall 2s linear infinite;background:#8b5cf6;height:10px;position:absolute;width:10px}.confetti-piece-0{animation-delay:0s;background:#8b5cf6;left:10%}.confetti-piece-1{animation-delay:.1s;background:#a855f7;left:20%}.confetti-piece-2{animation-delay:.2s;background:#c084fc;left:30%}.confetti-piece-3{animation-delay:.3s;background:#ddd6fe;left:40%}.confetti-piece-4{animation-delay:.4s;background:#ede9fe;left:50%}.confetti-piece-5{animation-delay:.5s;background:#f3e8ff;left:60%}@keyframes confetti-fall{0%{opacity:1;transform:translateY(-100vh) rotate(0deg)}to{opacity:0;transform:translateY(100vh) rotate(2turn)}}@media (max-width:768px){.funfact-container{margin:10px;padding:20px}.funfact-title{font-size:24px}.funfact-categories{gap:10px}.funfact-category-btn{height:80px;width:80px}.funfact-category-icon{font-size:24px}.funfact-category-label{font-size:10px}.funfact-text{font-size:16px;padding:15px}.funfact-popup{margin:20px;padding:20px}.funfact-popup-title{font-size:20px}.funfact-popup-text{font-size:16px;padding:15px}.funfact-popup-actions{justify-content:center}.funfact-popup-btn{max-width:200px;width:100%}}.review-questions-container{background:linear-gradient(135deg,#f0f9d6,#e8f5e8);border-radius:18px;box-sizing:border-box;display:flex;flex-direction:column;height:100%;overflow:hidden;padding:18px;position:relative;width:100%}.review-questions-title{color:#000!important;font-size:18px;font-weight:700;letter-spacing:.5px;margin:0 0 16px;text-align:center;text-transform:uppercase}.review-questions-empty,.review-questions-loading{align-items:center;color:#666;display:flex;flex:1 1;flex-direction:column;font-size:14px;justify-content:center;padding:20px;text-align:center}.review-questions-empty p{margin:8px 0}.review-questions-list{display:flex;flex:1 1;flex-direction:column;gap:10px;overflow-y:auto;padding-right:4px}.review-questions-list::-webkit-scrollbar{width:6px}.review-questions-list::-webkit-scrollbar-track{background:#0000000d;border-radius:3px}.review-questions-list::-webkit-scrollbar-thumb{background:#2c5057;border-radius:3px}.review-questions-list::-webkit-scrollbar-thumb:hover{background:#1a3a3f}.review-question-item{background:#ffffffe6;border-radius:12px;box-shadow:0 2px 8px #0000001a;cursor:pointer;padding:12px;transition:all .2s ease}.review-question-item:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.review-question-item.correct{border-left:4px solid #28a745}.review-question-item.incorrect{border-left:4px solid #dc3545}.review-question-item.reviewed{background:#f0f0f0e6;opacity:.7}.review-question-item.reviewed.correct,.review-question-item.reviewed.incorrect{border-left:4px solid #6c757d}.review-question-header{align-items:center;display:flex;justify-content:space-between;width:100%}.review-question-info{align-items:center;display:flex;flex:1 1;flex-wrap:wrap;gap:12px}.review-question-number{background:#2c5057;border-radius:6px;color:#fff;font-size:12px;font-weight:700;min-width:32px;padding:4px 8px;text-align:center}.review-question-title{color:#333;flex:1 1;font-size:14px;font-weight:600;min-width:120px}.review-question-status{border-radius:6px;font-size:12px;font-weight:600;padding:4px 8px}.status-correct{background:#d4edda;color:#155724}.status-incorrect{background:#f8d7da;color:#721c24}.review-question-expand{color:#666;font-size:12px;font-weight:700;margin-left:8px}.review-question-details{animation:slideDown .2s ease;border-top:1px solid #e0e0e0;margin-top:12px;padding-top:12px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.review-question-meta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:8px}.review-meta-item{color:#555;font-size:12px}.review-meta-item strong{color:#2c5057;margin-right:4px}.review-question-date{color:#888;font-size:11px;font-style:italic;margin-top:4px}.review-question-text{background:#f8f9fa;border-left:3px solid #2c5057;border-radius:8px;margin-bottom:16px;padding:12px}.review-question-text strong{color:#2c5057;display:block;font-size:13px;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.review-question-text p{color:#333;font-size:14px;line-height:1.5;margin:0}.review-question-options{background:#f0f4f8;border-radius:8px;margin-bottom:16px;padding:12px}.review-question-options strong{color:#2c5057;display:block;font-size:13px;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.review-question-options ul{list-style-type:none;margin:8px 0 0;padding-left:20px}.review-question-options li{color:#555;font-size:13px;margin-bottom:6px;padding-left:20px;position:relative}.review-question-options li:before{color:#2c5057;content:"•";font-weight:700;left:0;position:absolute}.review-student-answer{border-left:4px solid;border-radius:8px;margin-bottom:16px;padding:12px}.review-student-answer.answer-correct{background:#d4edda;border-left-color:#28a745}.review-student-answer.answer-incorrect{background:#f8d7da;border-left-color:#dc3545}.review-student-answer strong{display:block;font-size:13px;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.review-student-answer.answer-correct strong{color:#155724}.review-student-answer.answer-incorrect strong{color:#721c24}.review-student-answer p{font-size:14px;font-weight:500;line-height:1.5;margin:0}.review-student-answer.answer-correct p{color:#155724}.review-student-answer.answer-incorrect p{color:#721c24}.review-correct-answer{background:#e7f3ff;border-left:4px solid #007bff;border-radius:8px;margin-bottom:16px;padding:12px}.review-correct-answer strong{color:#004085;display:block;font-size:13px;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.review-correct-answer p{color:#004085;font-size:14px;font-weight:500;line-height:1.5;margin:0}.review-completion-popup-overlay{align-items:center;animation:fadeIn .3s ease;background:#00000080;border-radius:18px;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:1000}.review-completion-popup{align-items:center;animation:slideUp .3s ease;background:#0000;border-radius:20px;display:flex;flex-direction:column;max-width:350px;padding:20px;position:relative;text-align:center;width:80%}.review-completion-icon{animation:bounce .6s ease;font-size:64px;margin-bottom:16px}.review-completion-image{animation:bounce .6s ease;border-radius:12px;height:auto;margin-bottom:20px;max-width:250px;width:100%}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.review-completion-title{color:#fff;font-size:28px;font-weight:700;letter-spacing:1px;margin:0 0 12px;text-transform:uppercase}.review-completion-message{color:#fff!important;font-size:16px;font-weight:600;margin:0 0 20px;text-align:center;text-shadow:0 2px 4px #0000004d}.review-completion-points{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:12px;display:flex;gap:10px;justify-content:center;margin:0 0 20px;padding:12px 20px}.review-points-icon{font-size:24px}.review-points-text{color:#fff;font-size:16px;font-weight:700}.review-completion-button{background:#fff;border:2px solid #2c5057;border-radius:12px;box-shadow:0 2px 8px #00000026;color:#2c5057;cursor:pointer;font-size:14px;font-weight:700;letter-spacing:.5px;padding:12px 28px;text-transform:uppercase;transition:all .3s ease}.review-completion-button:hover{background:#2c5057;box-shadow:0 4px 12px #2c50574d;color:#fff;transform:translateY(-2px)}.review-completion-button:active{transform:translateY(0)}.review-done-button-container{align-items:center;border-top:2px solid #2c505733;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:16px;padding-top:16px}.review-done-button{background:linear-gradient(135deg,#2c5057,#1a3a3f);border:none;border-radius:12px;box-shadow:0 4px 12px #2c50574d;color:#fff;cursor:pointer;font-size:16px;font-weight:700;letter-spacing:.5px;min-width:150px;padding:12px 32px;text-transform:uppercase;transition:all .3s ease}.review-done-button:hover{background:linear-gradient(135deg,#1a3a3f,#2c5057);box-shadow:0 6px 16px #2c505766;transform:translateY(-2px)}.review-done-button:active{box-shadow:0 2px 8px #2c50574d;transform:translateY(0)}.review-treats-collected-button{background:linear-gradient(135deg,#bba2ed,#9b7fd1);border:none;border-radius:12px;box-shadow:0 4px 12px #bba2ed4d;color:#fff;cursor:pointer;font-size:16px;font-weight:700;letter-spacing:.5px;min-width:150px;padding:12px 32px;text-transform:uppercase;transition:all .3s ease}.review-treats-collected-button:hover{background:linear-gradient(135deg,#9b7fd1,#bba2ed);box-shadow:0 6px 16px #bba2ed66;transform:translateY(-2px)}.review-treats-collected-button:active{box-shadow:0 2px 8px #bba2ed4d;transform:translateY(0)}.review-treats-popup-overlay{align-items:center;animation:fadeIn .3s ease;background:#00000080;border-radius:18px;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:1001}.review-treats-popup{align-items:center;animation:slideUp .3s ease;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 10px 40px #0000004d;display:flex;flex-direction:column;max-width:600px;padding:30px;position:relative;text-align:center;width:90%}.review-treats-popup-title{color:#fff;font-size:24px;font-weight:700;letter-spacing:1px;margin:0 0 24px;text-transform:uppercase}.review-treats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,1fr);margin-bottom:24px;padding:0 10px;width:100%}.review-treat-slot{align-items:center;aspect-ratio:1;border-radius:12px;display:flex;flex-direction:column;justify-content:center;position:relative;transition:all .3s ease}.review-treat-slot.unlocked{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3}.review-treat-slot.locked{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0000004d}.review-treat-image{animation:bounce .6s ease;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));height:auto;max-width:80px;width:80%}.review-treat-locked{align-items:center;color:#ffffff80;display:flex;height:100%;justify-content:center;width:100%}.lock-icon{font-size:32px;opacity:.6}.review-treat-number{background:#ffffffe6;border-radius:8px;bottom:-8px;box-shadow:0 2px 4px #0003;color:#2c5057;font-size:12px;font-weight:700;min-width:20px;padding:2px 6px;position:absolute;text-align:center}.review-treat-slot.locked .review-treat-number{background:#00000080;color:#ffffffb3}.review-video-popup-overlay{animation:fadeIn .3s ease;background:#000000b3;border-radius:18px;bottom:0;left:0;position:absolute;right:0;top:0;z-index:1002}.review-video-popup,.review-video-popup-overlay{align-items:center;display:flex;justify-content:center}.review-video-popup{animation:slideUp .3s ease;background:#0000;border-radius:20px;flex-direction:column;max-width:900px;padding:20px;position:relative;text-align:center;width:auto}.review-video-content{background:#000;border-radius:12px;box-shadow:0 4px 12px #0000004d;display:block;height:auto;margin-bottom:20px;margin-left:auto;margin-right:auto;max-height:600px;max-width:800px;object-fit:contain;width:100%}.teacher-dashboard-app{display:flex;flex-direction:column;min-height:100vh}.teacher-dashboard-main-container{display:flex;flex:1 1;height:calc(100vh - 70px)}.left-sidebar{background:linear-gradient(135deg,#7bc8a3,#5a9a8a);border-right:1px solid #e0e0e0;box-shadow:2px 0 5px #0000000d;overflow-y:auto;padding:20px;width:280px}.left-sidebar,.teacher-profile{display:flex;flex-direction:column}.teacher-profile{align-items:center;border-bottom:1px solid #f0f0f0;margin-bottom:110px;padding:20px 0;text-align:center}.profile-photo{background:#0000;border:4px solid #667eea;border-radius:50%;box-shadow:0 8px 25px #667eea4d;height:250px;margin-bottom:20px;overflow:hidden;position:relative;width:250px}.profile-image{display:block!important;height:100%!important;object-fit:cover!important;object-position:center!important;opacity:1!important;position:relative!important;transition:transform .3s ease;visibility:visible!important;width:100%!important;z-index:10!important}.profile-photo:hover .profile-image{transform:scale(1.05)}.profile-info{text-align:center}.teacher-name{color:#d4c4a8;font-size:2rem!important;margin:0 0 4px;text-shadow:0 1px 2px #0000004d}.teacher-subject{color:#ffffffe6;font-size:1.5rem;margin:0 0 8px;opacity:.9}.teacher-status{align-items:center;color:#28a745;display:flex;font-size:1rem;font-weight:600;gap:6px;justify-content:center;margin:0}.teacher-status:before{animation:pulse 2s infinite;background:#28a745;border-radius:50%;content:"";display:inline-block;height:8px;width:8px}.dropdown-section{align-items:center;background:#0000;gap:20px;margin-top:0;padding:0}.dropdown-item,.dropdown-section{display:flex;flex-direction:column}.dropdown-item{gap:8px;width:100%}.dropdown-item label{color:#fff;font-size:.95rem;font-weight:600;margin-bottom:5px}.dropdown-select{appearance:none;background:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;border:2px solid #e9ecef;border-radius:8px;color:#495057;cursor:pointer;font-size:14px;padding:12px 40px 12px 15px;transition:all .3s ease}.dropdown-select:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea1a}.dropdown-select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.dropdown-select option{font-size:14px;padding:8px}.info-display{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #ffffff4d;border-left:4px solid #ffffff80;border-radius:8px;font-weight:500;min-height:20px;padding:12px 15px}.education-button,.info-display{align-items:center;color:#fff;display:flex;font-size:14px}.education-button{background:#1a2a2b;border:2px solid #1a2a2b;border-radius:8px;box-shadow:none;cursor:pointer;font-weight:600;gap:8px;justify-content:center;padding:20px;transform:translateX(10px);transition:all .3s ease;width:100%}.education-button:hover{background:#0f1a1b;box-shadow:none;transform:translateY(-2px)}.education-button:active{box-shadow:none;transform:translateY(0)}.modal-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e9ecef;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;padding:20px 25px}.modal-header h3{color:#333;font-size:1.2rem;font-weight:600;margin:0}.close-button{align-items:center;background:none;border:none;border-radius:50%;color:#6c757d;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;transition:all .2s ease;width:30px}.close-button:hover{background:#e9ecef;color:#495057}.modal-content{padding:25px}.student-select{background:#fff;border:2px solid #e9ecef;border-radius:8px;color:#495057;cursor:pointer;font-size:14px;padding:12px 15px;transition:all .3s ease;width:100%}.student-select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}@media (max-width:768px){.left-sidebar{border-bottom:1px solid #e0e0e0;border-right:none;width:100%}.profile-photo{height:100px;width:100px}.teacher-name{font-size:2rem}.message-modal{margin:10px;width:95%}.modal-content{padding:20px}.modal-buttons{flex-direction:column}.cancel-button,.send-button{width:100%}}.right-sidebar-teacher{background:linear-gradient(135deg,#7bc8a3,#5a9a8a);border-left:1px solid #e0e0e0;box-shadow:-2px 0 5px #0000000d;overflow-y:auto;padding:20px;width:400px}.sidebar-section{margin-bottom:30px}.sidebar-section h3{border-bottom:2px solid #ffffff4d;color:#fff;font-size:16px;font-weight:600;margin-bottom:15px;padding-bottom:8px}.notifications{display:flex;flex-direction:column;gap:12px}.notification-item{background:#f8f9fa;border-left:4px solid;border-radius:8px;padding:12px;transition:all .3s ease}.notification-item:hover{box-shadow:0 2px 8px #0000001a;transform:translateX(-3px)}.notification-item.assignment{background:#d4edda;border-left-color:#28a745}.notification-item.message{background:#d1ecf1;border-left-color:#007bff}.notification-item.grade{background:#fff3cd;border-left-color:#ffc107}.notification-item.reminder{background:#f8d7da;border-left-color:#dc3545}.notification-content{display:flex;flex-direction:column;gap:4px}.notification-message{color:#1a2a2b;font-size:13px;font-weight:500}.notification-time{color:#306f78;font-size:11px}.student-tiles-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}.student-tile{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #fff3;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;padding:15px 10px;position:relative;text-align:center;transition:all .3s ease}.student-tile:hover{border-color:#667eea;box-shadow:0 8px 25px #00000026;transform:translateY(-5px)}.student-tile.present{border-left:4px solid #28a745}.student-tile.absent{border-left:4px solid #dc3545;opacity:.7}.student-avatar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:3px solid #fff;border-radius:50%;box-shadow:0 4px 15px #0000001a;display:flex;height:60px;justify-content:center;margin-bottom:10px;position:relative;width:60px}.avatar-emoji{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));font-size:32px}.avatar-image{border-radius:50%;height:100%;object-fit:cover;width:100%}.avatar-emoji-fallback{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));font-size:32px}.attendance-indicator{align-items:center;border:2px solid #fff;border-radius:50%;bottom:-5px;box-shadow:0 2px 4px #0003;color:#fff;display:flex;font-size:10px;font-weight:700;height:20px;justify-content:center;position:absolute;right:-5px;width:20px}.attendance-indicator.present{background:#28a745}.attendance-indicator.absent{background:#dc3545}.student-tile-info{display:flex;flex-direction:column;gap:4px;width:100%}.student-tile-name{color:#fff;font-size:12px;font-weight:600;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-tile-grade{color:#fffc;font-size:11px;font-weight:500}.expand-collapse-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:2px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-top:15px;padding:12px 20px;transition:all .3s ease;width:100%}.expand-collapse-btn:hover{background:#ffffff40;border-color:#ffffff80;box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.expand-collapse-btn:active{transform:translateY(0)}.floating-student-list{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;left:50%;max-height:80vh;max-width:600px;overflow:hidden;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:1000}.floating-list-header{align-items:center;background:linear-gradient(135deg,#7bc8a3,#5a9a8a);border-bottom:2px solid #fff3;color:#fff;display:flex;justify-content:space-between;padding:20px 25px}.floating-list-header h4{font-size:1.2rem;font-weight:600;margin:0}.close-floating-list{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;line-height:1;transition:all .2s ease;width:32px}.close-floating-list:hover{background:#ffffff4d;transform:scale(1.1)}.floating-list-content{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));max-height:calc(80vh - 80px);overflow-y:auto;padding:20px}.floating-student-item{align-items:center;background:#f8f9fa;border:2px solid #e9ecef;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;padding:15px 10px;text-align:center;transition:all .3s ease}.floating-student-item:hover{background:#fff;border-color:#667eea;box-shadow:0 6px 20px #00000026;transform:translateY(-3px)}.floating-student-item.present{border-left:4px solid #28a745}.floating-student-item.absent{border-left:4px solid #dc3545;opacity:.8}.floating-student-avatar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:2px solid #fff;border-radius:50%;box-shadow:0 2px 8px #0000001a;display:flex;height:50px;justify-content:center;margin-bottom:8px;position:relative;width:50px}.floating-student-info{display:flex;flex-direction:column;gap:2px;width:100%}.floating-student-name{color:#333;font-size:12px;font-weight:600;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.floating-student-grade{color:#666;font-size:11px;font-weight:500}.floating-list-overlay{animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;left:0;position:fixed;right:0;top:0;z-index:999}@media (max-width:768px){.right-sidebar{border-left:none;border-top:1px solid #e0e0e0;width:100%}.student-tiles-grid{gap:10px;grid-template-columns:repeat(4,1fr)}.student-tile{padding:12px 8px}.student-avatar{height:50px;width:50px}.avatar-emoji{font-size:24px}.student-tile-name{font-size:11px}.student-tile-grade{font-size:10px}}@media (max-width:480px){.student-tiles-grid{grid-template-columns:repeat(3,1fr)}}.teacher-dashboard-main-content{background:#283d40!important;flex:1 1;overflow-y:auto;padding:30px}.content-header{margin-bottom:30px}.content-header h1{color:#2e4142;font-size:2rem;font-weight:700;margin:0}.back-btn{background:#2e4142;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:all .3s ease}.back-btn:hover{background:#1a2a2b;transform:translateY(-2px)}.student-dashboard-content{background:#fff;border-radius:15px;box-shadow:0 4px 15px #0000001a;padding:30px}.student-profile-section{margin-top:20px}.student-profile-header{align-items:center;background:linear-gradient(135deg,#2e4142,#1a2a2b);border-radius:15px;color:#fff;display:flex;gap:25px;margin-bottom:30px;padding:25px}.student-profile-photo{border:4px solid #ffffff4d;border-radius:50%;height:120px;overflow:hidden;position:relative;width:120px}.student-profile-photo img{height:100%;object-fit:cover;width:100%}.attendance-badge{border:2px solid #fff;border-radius:20px;bottom:-5px;color:#fff;font-size:12px;font-weight:600;padding:5px 12px;position:absolute;right:-5px}.attendance-badge.present{background:#28a745}.attendance-badge.absent{background:#dc3545}.student-profile-info h2{font-size:2rem;font-weight:700;margin:0 0 10px}.student-profile-info p{font-size:1.1rem;margin:5px 0;opacity:.9}.student-stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.stat-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;display:flex;flex-direction:column;justify-content:center;min-height:180px;padding:35px 25px;text-align:center;transition:all .3s ease}.stat-card:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-5px)}.stat-card h3{color:#2e4142;font-size:1rem;font-weight:600;margin-bottom:15px}.stat-card .stat-value{color:#2e4142;font-size:2.2rem;font-weight:700;margin-bottom:10px}.stat-card .stat-label{color:#6c757d;font-size:.9rem;font-weight:500}.action-button{font-size:14px;padding:12px 20px;white-space:nowrap}.action-button.primary{background:#2e4142;color:#fff!important}.action-button.primary:hover{background:#1a2a2b;transform:translateY(-2px)}.action-button.secondary{border:2px solid #e9ecef;color:#2e4142}.action-button.secondary:hover{background:#e9ecef;border-color:#2e4142;transform:translateY(-2px)}.home-content .welcome-section{background:linear-gradient(135deg,#2e4142,#1a2a2b);border-radius:15px;color:#fff;margin-bottom:30px;padding:30px;text-align:center}.welcome-section h1{font-size:2.5rem;margin-bottom:10px}.welcome-section p{font-size:1.1rem;opacity:.9}.content-grid{display:flex;flex-direction:column;gap:20px}.content-card{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a;max-height:fit-content;padding:20px}.content-card h3{color:#2e4142;font-size:1.3rem;font-weight:600;margin-bottom:15px}.overview-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.overview-item{background:#f8f9fa;border-radius:8px;padding:15px;text-align:center}.overview-number{color:#2e4142;display:block;font-size:2rem;font-weight:700;margin-bottom:5px}.overview-label{color:#6c757d;font-size:.9rem;font-weight:500}.activity-list{display:flex;flex-direction:column;gap:8px;max-height:150px;overflow-y:auto;padding-right:5px}.activity-item{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;flex-shrink:0;gap:12px;padding:8px 12px;transition:all .3s ease}.activity-item:hover{background:#e9ecef;transform:translateX(5px)}.activity-icon{font-size:1.2rem}.activity-text{color:#2e4142;flex:1 1;font-weight:500}.activity-time{color:#6c757d;font-size:.8rem}.roster-content .content-header{margin-bottom:25px}.add-student-btn{background:#2e4142;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:12px 20px;transition:all .3s ease}.add-student-btn:hover{background:#1a2a2b;transform:translateY(-2px)}.roster-table{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a;overflow:hidden}.table-header{background:#2e4142;border-bottom:1px solid #e9ecef;color:#fff;font-weight:600}.table-header,.table-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1.5fr;padding:15px 20px}.table-row{border-bottom:1px solid #f1f3f4;transition:all .3s ease}.table-row:hover{background:#f8f9fa}.table-cell{align-items:center;color:#2e4142;display:flex;font-weight:500}.action-btn{background:#2e4142;color:#fff;font-size:.8rem;margin-right:8px;padding:6px 12px}.action-btn:hover{background:#1a2a2b}.dashboard-content .content-header{margin-bottom:25px}.date-selector{background:#fff;border:1px solid #e9ecef;border-radius:8px;color:#2e4142;font-weight:500;padding:8px 15px}.dashboard-grid{display:flex;flex-direction:column;gap:25px}.dashboard-card{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a;padding:25px}.dashboard-card.large{grid-column:span 1}.dashboard-card h3{color:#2e4142;font-size:1.2rem;font-weight:600;margin-bottom:20px}.grade-chart{display:flex;flex-direction:column;gap:15px}.grade-bar{align-items:center;display:flex;gap:15px}.grade-label{color:#2e4142;font-weight:600;min-width:20px}.grade-progress{background:#e9ecef;border-radius:10px;flex:1 1;height:20px;overflow:hidden}.grade-fill{background:linear-gradient(90deg,#2e4142,#1a2a2b);border-radius:10px;height:100%;transition:width .3s ease}.grade-count{color:#6c757d;font-size:.9rem;min-width:80px}.attendance-chart{align-items:end;display:flex;gap:8px;height:150px;justify-content:space-between}.chart-bar{background:linear-gradient(0deg,#2e4142,#1a2a2b);flex:1 1;transition:height .3s ease}.completion-stats{display:flex;flex-direction:column;gap:15px}.completion-item{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;justify-content:space-between;padding:12px}.completion-label{color:#2e4142;font-weight:500}.completion-value{color:#2e4142;font-size:1.1rem;font-weight:700}.settings-content .content-header{margin-bottom:25px}.settings-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:1fr 1fr 1fr}.settings-card{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a;padding:25px}.settings-card h3{color:#2e4142;font-size:1.2rem;font-weight:600}.setting-item,.settings-card h3{margin-bottom:20px}.setting-item label{color:#2e4142;display:block;font-weight:500;margin-bottom:8px}.setting-item input[type=email],.setting-item input[type=text],.setting-item select{border:1px solid #e9ecef;border-radius:6px;font-size:14px;padding:10px 12px;transition:border-color .3s ease;width:100%}.setting-item input:focus,.setting-item select:focus{border-color:#2e4142;box-shadow:0 0 0 3px #2e41421a;outline:none}.setting-item input[type=checkbox]{margin-right:8px}.adhd-students-content{background:#fff;border-radius:15px;box-shadow:0 4px 15px #0000001a;padding:30px}.students-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:30px}.student-card{background:#f8f9fa;border:2px solid #0000;border-radius:12px;padding:20px;position:relative;transition:all .3s ease}.student-card:hover{border-color:#2e4142;box-shadow:0 8px 25px #0000001a;transform:translateY(-5px)}.student-card-photo{align-items:center;background:linear-gradient(135deg,#2e4142,#1a2a2b);border:3px solid #fff;border-radius:50%;box-shadow:0 4px 15px #0000001a;display:flex;height:80px;justify-content:center;margin:0 auto 15px;overflow:hidden;position:relative;width:80px}.student-avatar-emoji{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));font-size:40px}.adhd-badge{border:2px solid #fff;border-radius:12px;bottom:-5px;color:#fff;font-size:10px;font-weight:600;padding:4px 8px;position:absolute;right:-5px}.adhd-badge.low{background:#28a745}.adhd-badge.moderate{background:#ffc107;color:#333}.adhd-badge.high{background:#dc3545}.student-card-info{text-align:center}.student-card-info h3{color:#2e4142;font-size:1.2rem;font-weight:600;margin:0 0 8px}.student-grade{color:#d4c4a8!important;font-size:1.5rem!important;font-weight:500;margin:0 0 15px}.student-actions{display:flex;gap:10px;justify-content:center}.action-btn{border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:600;padding:8px 16px;transition:all .3s ease}.action-btn.primary{background:#2e4142;color:#fff}.action-btn.primary:hover{background:#1a2a2b;transform:translateY(-2px)}.action-btn.secondary{background:#f8f9fa;border:1px solid #e9ecef;color:#2e4142}.action-btn.secondary:hover{background:#e9ecef;border-color:#2e4142;transform:translateY(-2px)}.no-students{color:#6c757d;padding:60px 20px;text-align:center}.no-students h3{color:#2e4142;font-size:1.5rem;margin-bottom:10px}.no-students p{font-size:1rem;opacity:.8}@media (max-width:1200px){.content-grid,.dashboard-grid,.overview-stats,.settings-grid,.student-stats-grid,.table-header,.table-row{grid-template-columns:1fr}.table-header,.table-row{gap:10px}.table-cell{justify-content:space-between}.student-profile-header{flex-direction:column;text-align:center}}@media (max-width:768px){.teacher-dashboard-main-content{padding:20px}.content-header{align-items:flex-start;flex-direction:column;gap:15px}.welcome-section h1{font-size:2rem}.action-button{width:100%}.students-grid{gap:20px;grid-template-columns:1fr}.student-card{padding:15px}.student-card-photo{height:60px;width:60px}.student-actions{flex-direction:column}.action-btn{width:100%}}.performance-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.performance-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 25px 80px #0000004d;max-height:90vh;max-width:900px;overflow-y:auto;width:95%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.performance-modal .modal-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #e9ecef;border-radius:16px 16px 0 0;color:#fff;display:flex;justify-content:space-between;padding:25px 30px}.performance-modal .modal-header h3{font-size:1.4rem;font-weight:600;margin:0}.performance-modal .close-button{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:24px;height:36px;justify-content:center;padding:8px;transition:all .2s ease;width:36px}.performance-modal .close-button:hover{background:#ffffff4d;transform:scale(1.1)}.performance-modal .modal-content{padding:30px}.performance-charts{display:flex;flex-direction:column;gap:30px}.chart-section{background:#f8f9fa;border-left:4px solid #667eea;border-radius:12px;padding:25px}.chart-section h4{color:#333;font-size:1.1rem;font-weight:600;margin:0 0 20px}.performance-chart{background:#fff;border:1px solid #e9ecef;border-radius:8px;padding:20px}.chart-bars{align-items:end;display:flex;gap:15px;height:200px;justify-content:space-around}.chart-bar-container{align-items:center;display:flex;flex:1 1;flex-direction:column;max-width:80px}.chart-bar{background:linear-gradient(135deg,#28a745,#20c997);border-radius:4px 4px 0 0;min-height:20px;position:relative;transition:all .3s ease;width:100%}.chart-bar:hover{box-shadow:0 4px 15px #28a7454d;transform:scale(1.05)}.chart-label{color:#6c757d;font-size:12px;font-weight:500;margin-top:8px}.chart-value{color:#333;font-size:14px;font-weight:600;margin-top:4px}.emotion-chart{background:#fff;border:1px solid #e9ecef;border-radius:8px;padding:20px}.emotion-indicators{display:flex;flex-direction:column;gap:15px}.emotion-item{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;gap:15px;padding:12px;transition:all .3s ease}.emotion-item:hover{background:#e9ecef;transform:translateX(5px)}.emotion-emoji{font-size:24px;text-align:center;width:30px}.emotion-label{color:#333;font-weight:500;min-width:60px}.emotion-bar{background:#e9ecef;border-radius:4px;flex:1 1;height:8px;overflow:hidden}.emotion-fill{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:4px;height:100%;transition:width .5s ease}.emotion-percentage{color:#333;font-weight:600;min-width:40px;text-align:right}.progress-summary{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.summary-card{background:#fff;border:1px solid #e9ecef;border-radius:12px;padding:20px;text-align:center;transition:all .3s ease}.summary-card:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-5px)}.summary-card h5{color:#333;font-size:1rem;font-weight:600;margin:0 0 10px}.summary-value{border-radius:20px;display:inline-block;font-size:1.3rem;font-weight:700;margin-bottom:10px;padding:8px 16px}.summary-value.excellent{background:#d4edda;color:#155724}.summary-value.good{background:#d1ecf1;color:#0c5460}.summary-card p{color:#6c757d;font-size:14px;line-height:1.4;margin:0}.performance-actions{border-top:1px solid #e9ecef;display:flex;gap:15px;justify-content:center;margin-top:30px;padding-top:25px}.message-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.message-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:500px;overflow-y:auto;width:90%}.message-modal .modal-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e9ecef;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;padding:20px 25px}.message-modal .modal-header h3{color:#333;font-size:1.2rem;font-weight:600;margin:0}.message-modal .close-button{align-items:center;background:none;border:none;border-radius:50%;color:#6c757d;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;transition:all .2s ease;width:30px}.message-modal .close-button:hover{background:#e9ecef;color:#495057}.message-modal .modal-content{padding:25px}.message-info{background:#f8f9fa;border-radius:8px;margin-bottom:20px;padding:15px}.message-info p{font-size:14px;margin:5px 0}.form-group{margin-bottom:20px}.form-group label{color:#333;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.message-textarea{background:#fff;border:2px solid #e9ecef;border-radius:8px;color:#495057;font-family:inherit;font-size:14px;min-height:100px;padding:12px 15px;resize:vertical;transition:all .3s ease;width:100%}.message-textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.message-textarea::placeholder{color:#adb5bd}.modal-buttons{border-top:1px solid #e9ecef;display:flex;gap:12px;justify-content:flex-end;margin-top:25px;padding-top:20px}.cancel-button{background:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .3s ease}.cancel-button:hover{background:#5a6268;transform:translateY(-1px)}.send-button{background:linear-gradient(135deg,#28a745,#20c997);border:none;border-radius:6px;box-shadow:0 2px 8px #28a74533;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .3s ease}.send-button:hover{background:linear-gradient(135deg,#218838,#1e7e34);box-shadow:0 4px 12px #28a7454d;transform:translateY(-1px)}@media (max-width:768px){.performance-modal{margin:10px;width:98%}.chart-section,.performance-modal .modal-content,.performance-modal .modal-header{padding:20px}.chart-bars{gap:10px;height:150px}.emotion-item{flex-wrap:wrap;gap:10px}.emotion-label{min-width:50px}.progress-summary{grid-template-columns:1fr}.message-modal{margin:10px;width:95%}.message-modal .modal-content{padding:20px}.modal-buttons{flex-direction:column}.cancel-button,.send-button{width:100%}}.parent-left-column{background:linear-gradient(135deg,#6bcf9a,#4a8b9a);border-right:1px solid #ddd;padding:.5rem 1rem 0;width:300px}.profile-card{align-items:center;background:#0000;border-radius:18px;display:flex;flex-direction:column;margin-bottom:1.5rem;padding:1rem 1rem 1.5rem}.profile-image{display:none!important}.photo-edit-overlay{align-items:center;background:#0009;border:6px solid #fff;border-radius:50%;bottom:0;cursor:pointer;display:flex;flex-direction:column;justify-content:center;left:0;opacity:.8;position:absolute;right:0;top:0;transition:opacity .3s ease;z-index:10}.photo-edit-overlay:hover{background:#000000b3;opacity:1}.photo-upload-hint{align-items:center;background:#6bcf9a!important;border:4px solid #fff;border-radius:50%;bottom:-5px;box-shadow:0 4px 12px #0006;cursor:pointer;display:flex!important;height:50px;justify-content:center;opacity:1!important;position:absolute;right:-5px;transition:all .3s ease;visibility:visible!important;width:50px;z-index:1000!important}.photo-upload-hint:hover{background:#5ab88a!important;box-shadow:0 6px 16px #00000080;transform:scale(1.2)}.photo-edit-icon-small{color:#fff;display:block!important;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3));font-size:1.8rem!important;line-height:1}.photo-edit-icon{font-size:2rem;margin-bottom:.5rem}.photo-edit-text{font-size:.9rem}.photo-edit-text,.profile-name{color:#fff;font-weight:600;text-align:center}.profile-name{font-size:1.5rem;margin:.3rem 0 .5rem}.profile-details{font-size:1.2rem}.parent-name,.profile-details{color:#fff;line-height:1.5;text-align:center}.parent-name{font-size:1.5rem;font-weight:600}.profile-card{cursor:pointer;transition:all .3s ease}.editable-detail{border-radius:4px;padding:.2rem .5rem;transition:all .2s ease}.editable-detail:hover{background:#ffffff1a}.editable-detail:focus{background:#fff3;outline:2px solid #4b5ae5}.teacher-info{align-items:center;background:#0000;border:none;border-radius:12px;box-shadow:none;display:flex;flex-direction:column;margin-top:1.5rem;overflow:hidden;padding:1rem;position:relative;transition:all .4s ease}.teacher-info:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.teacher-info:hover:before{left:100%}.teacher-info:hover{background:#0000;border-color:#0000;box-shadow:none;transform:translateY(-2px)}.teacher-title{color:#fff;font-size:.75rem;font-weight:600;letter-spacing:.5px;margin:0 0 .8rem;opacity:.9;text-align:center;text-transform:uppercase}.teacher-profile{width:100%}.info-section{margin-bottom:1.5rem}.section-title{color:#fff;font-size:.85rem;font-weight:600;margin:0 0 .5rem;text-align:left}.info-box{background:#f7fafc;border:2px solid #e2e8f0;border-left:4px solid #667eea;border-radius:8px;padding:.75rem 1rem;transition:all .3s ease}.info-box:hover{background:#edf2f7;border-left-color:#5a67d8}.info-text{color:#4a5568;font-size:.9rem;font-weight:500}.teacher-name{color:#fff;cursor:pointer;font-size:1.1rem;font-weight:700;margin:0 0 1.5rem;position:relative;text-align:center;transition:all .3s ease}.teacher-name:hover{color:#ffffffe6;transform:scale(1.05)}.teacher-name:after{background:#fffc;bottom:-2px;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);transition:all .3s ease;width:0}.teacher-name:hover:after{width:100%}.subject-taught{color:#fff;cursor:pointer;font-size:.85rem;font-weight:500;margin:0;transition:all .3s ease}.subject-taught:hover{color:#764ba2;transform:translateY(-1px)}.message-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 2px 8px #667eea4d;color:#fff;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.message-btn:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:0 6px 20px #667eea80;transform:translateY(-2px) scale(1.02)}.message-btn:active{transform:translateY(0) scale(.98);transition:all .1s ease}.message-icon{font-size:1.1rem;transition:transform .3s ease}.message-btn:hover .message-icon{transform:rotate(15deg) scale(1.1)}.profile-header{margin-bottom:.3rem}.profile-divider{background:linear-gradient(90deg,#0000,#d8c9ab,#0000);height:1px;margin:1rem auto;opacity:.6;width:80%}.teacher-details-section{align-self:stretch;background:#0000;box-sizing:border-box;margin-left:0;margin-right:0;margin-top:.8rem;max-width:100%;overflow:hidden;padding:.8rem;position:relative;text-align:left;transition:all .3s ease;width:100%}.teacher-details-section:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .6s ease;width:100%}.teacher-details-section:hover:before{left:100%}.teacher-details-section:hover{border-color:#0000;box-shadow:none;transform:translateY(-2px)}.teacher-section-title{color:#fff;font-size:1rem;font-weight:700;letter-spacing:.3px;margin:0 0 1rem;position:relative;text-align:left!important}.teacher-section-title:after{background:#fffc;border-radius:1px;bottom:-3px;content:"";height:2px;left:0;position:absolute;width:40px}.teacher-detail-item{background:#0000;border-left:3px solid #fff9;border-radius:8px;margin-bottom:1rem;padding:.6rem;position:relative;transition:all .3s ease}.teacher-detail-item:hover{background:#ffffff1a;border-left-color:#ffffffe6;box-shadow:0 4px 12px #ffffff1a;transform:translateX(5px)}.teacher-detail-item:last-of-type{margin-bottom:1rem}.detail-label{font-size:.75rem;letter-spacing:.5px;margin:0 0 .3rem;opacity:.9;text-transform:uppercase}.detail-label,.detail-value{color:#fff;font-weight:600;text-align:left!important}.detail-value{font-size:.9rem;margin:0;transition:color .3s ease}.teacher-detail-item:hover .detail-value{color:#ffffffe6}.simple-message-btn{align-items:center;background:#1a2a2b;border:2px solid #1a2a2b;border-radius:12px;box-shadow:none;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:.4rem;height:50px;justify-content:center;letter-spacing:.3px;overflow:hidden;padding:12px 20px;position:relative;text-transform:uppercase;transition:all .3s ease;width:200px}.simple-message-btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.simple-message-btn:hover:before{left:100%}.simple-message-btn:hover{background:#0f1a1b;box-shadow:none;transform:translateY(-2px)}.simple-message-btn:active{transform:translateY(-1px) scale(.98);transition:all .1s ease}.simple-message-btn .message-icon{font-size:1rem;transition:transform .3s ease}.simple-message-btn:hover .message-icon{transform:rotate(10deg) scale(1.1)}.parent-main-layout{display:flex;height:calc(100vh - 60px)}.parent-right-content{background:#2c5057;flex:1 1;height:calc(100vh - 60px);overflow:hidden;padding:.25rem}.right-board-layout{display:flex;gap:.25rem;height:100%;margin:0;padding:0}.vertical-board{align-items:center;background:#e8f5e9;border:1px solid #d8c9ab;border-radius:8px;display:flex;flex-direction:column;justify-content:center;margin-right:.5rem;padding:15px;width:60%}.stacked-sections{display:flex;flex:1 1;flex-direction:column;gap:.25rem;justify-content:space-between}.stacked-section{align-items:left;background:#f7f7f7;border:1px solid #d8c9ab;border-radius:8px;box-shadow:0 1px 4px #0000000a;display:flex;flex:1 1;justify-content:center;min-height:0;padding:10px}.stacked-section.top-section{background:#e8f5e9}.stacked-section.middle-section{background:#bfa7e6}.top-section{background:#ffe5e5}.middle-section{background:#e5ffe5}.bottom-section{background:#e5f0ff}.vertical-board.vertical-board-split{background:#e3eafc;border-radius:18px;display:flex;flex-direction:column;height:100%;overflow:hidden;padding:0}.vertical-subsection{align-items:center;background:#e3eafc;border-bottom:1px solid #d0dafc;display:flex;flex:1 1;font-size:1.2rem;font-weight:500;justify-content:center}.vertical-subsection:last-child{border-bottom:none}.vertical-board.vertical-board-grid{background:#e3eafc;border-radius:18px;display:flex;flex-direction:column;height:100%;overflow:hidden;padding:0}.quadrants{border-bottom:1.5px solid #d0dafc;display:grid;flex:2 1;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;height:60%}.quadrant{align-items:center;background:#e3eafc;border-bottom:1px solid #d0dafc;border-right:1px solid #d0dafc;display:flex;font-size:1.2rem;font-weight:500;justify-content:center}.quadrant:nth-child(2),.quadrant:nth-child(4){border-right:none}.quadrant:nth-child(3),.quadrant:nth-child(4){border-bottom:none}.horizontal-section{align-items:center;background:#e3eafc;display:flex;flex:1 1;font-size:1.2rem;font-weight:500;height:40%;justify-content:center}.vertical-board,.vertical-board.vertical-board-grid{background:#e8f5e9}.dynamic-calendar{background:#fff;border:1px solid #d8c9ab;border-radius:8px;box-shadow:0 2px 8px #0000000f;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;max-width:280px;overflow:hidden;width:100%}.calendar-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;justify-content:space-between;padding:.75rem 1rem}.calendar-nav{display:flex;gap:.25rem}.nav-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:600;padding:.25rem .5rem;transition:all .2s ease}.nav-btn:hover{background:#ffffff4d;transform:translateY(-1px)}.nav-btn:active{transform:translateY(0)}.calendar-title{flex:1 1;font-size:1rem;font-weight:700;margin:0;text-align:center}.calendar-grid{padding:.75rem}.calendar-weekdays{grid-gap:1px;display:grid;gap:1px;grid-template-columns:repeat(7,1fr);margin-bottom:.25rem}.weekday-header{border-bottom:1px dotted #e0e7ff;color:#4b5ae5;font-size:.7rem;font-weight:700;letter-spacing:.3px;padding:.25rem 0;text-align:center;text-transform:uppercase}.calendar-days{grid-gap:1px;display:grid;gap:1px;grid-template-columns:repeat(7,1fr)}.calendar-day{align-items:center;aspect-ratio:1;background:#f8fafc;border:1px solid #0000;border-radius:4px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;min-height:28px;position:relative;transition:all .2s ease}.calendar-day:hover{background:#e0e7ff;box-shadow:0 1px 4px #4b5ae526;transform:scale(1.02)}.calendar-day.other-month{background:#f1f5f9;color:#94a3b8}.calendar-day.other-month:hover{background:#e2e8f0}.calendar-day.today{background:linear-gradient(135deg,#fbbf24,#f59e0b);box-shadow:0 1px 4px #fbbf244d;color:#fff;font-weight:700}.calendar-day.today:hover{background:linear-gradient(135deg,#f59e0b,#d97706);transform:scale(1.02)}.calendar-day.selected{background:linear-gradient(135deg,#10b981,#059669);border:1px solid #047857;box-shadow:0 2px 6px #10b98166;color:#fff;font-weight:700}.calendar-day.selected:hover{background:linear-gradient(135deg,#059669,#047857)}.calendar-day.weekend{color:#dc2626;font-weight:600}.calendar-day.weekend.other-month{color:#fca5a5}.calendar-day.weekend.selected,.calendar-day.weekend.today{color:#fff}.day-number{font-size:.75rem;font-weight:500;z-index:2}.event-indicator{border-radius:50%;bottom:1px;box-shadow:0 1px 2px #0003;height:4px;left:50%;position:absolute;transform:translateX(-50%);width:4px;z-index:1}.calendar-controls{background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;gap:.25rem;padding:.75rem 1rem}.reminder-btn,.view-btn{border:none;border-radius:4px;cursor:pointer;flex:1 1;font-size:.7rem;font-weight:600;padding:.4rem .6rem;transition:all .2s ease}.view-btn{background:#e0e7ff;color:#4b5ae5}.view-btn:hover{background:#c7d2fe;transform:translateY(-1px)}.view-btn.active{background:#4b5ae5;box-shadow:0 1px 4px #4b5ae54d;color:#fff}.reminder-btn{background:linear-gradient(135deg,#a084e8,#8b5cf6);color:#fff}.reminder-btn:hover{background:linear-gradient(135deg,#8b5cf6,#7c3aed);box-shadow:0 1px 4px #8b5cf64d;transform:translateY(-1px)}@media (max-width:768px){.calendar-controls{flex-direction:column}.calendar-day{aspect-ratio:1;min-height:40px}.day-number{font-size:.8rem}}.report-section{background:#fff;border:2px solid #d8c9ab;border-radius:12px;box-shadow:0 2px 8px #0000000f;margin-bottom:.25rem;min-height:200px;overflow:hidden;transition:all .3s ease}.report-section:first-child{min-height:280px}.report-section:nth-child(2){min-height:260px}.report-section:nth-child(3){min-height:120px}.report-section:last-child{min-height:250px}.report-section:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-2px)}.section-header{align-items:center;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-bottom:1px solid #e2e8f0;cursor:pointer;display:flex;padding:1rem 1.2rem;transition:all .2s ease}.section-header:hover{background:linear-gradient(135deg,#e0e7ff,#c7d2fe)}.section-icon{font-size:1.5rem;margin-right:.75rem}.section-title{color:#1e293b;flex:1 1;font-size:1.1rem;font-weight:700}.section-arrow{color:#64748b;font-size:1.2rem;transition:transform .2s ease}.section-header:hover .section-arrow{color:#4b5ae5;transform:translateX(4px)}.section-content{padding:.5rem 0}.clickable-item{align-items:center;border-left:3px solid #0000;cursor:pointer;display:flex;padding:.75rem 1.2rem;transition:all .2s ease}.clickable-item:hover{background:#f1f5f9;border-left-color:#4b5ae5;transform:translateX(4px)}.clickable-item:active{background:#e2e8f0;transform:translateX(2px)}.item-icon{font-size:1.1rem;margin-right:.75rem;text-align:center;width:24px}.item-text{color:#374151;flex:1 1;font-size:.95rem;font-weight:500}.item-count{background:linear-gradient(135deg,#ef4444,#dc2626)}.item-count,.item-status{border-radius:12px;color:#fff;font-size:.75rem;font-weight:700;min-width:20px;padding:.2rem .6rem;text-align:center}.item-status{background:linear-gradient(135deg,#10b981,#059669)}.item-progress{background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:12px;color:#fff;font-size:.75rem;font-weight:700;min-width:20px;padding:.2rem .6rem;text-align:center}.quick-actions{display:flex;gap:1rem;margin-top:1.5rem}.action-button{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 2px 8px #667eea4d;color:#fff;flex:1 1;flex-direction:column;padding:1.5rem 1rem}.action-button:hover{box-shadow:0 8px 24px #667eea66;transform:translateY(-4px)}.action-button:active{transform:translateY(-2px)}.action-icon{font-size:2rem;margin-bottom:.5rem}.action-text{font-size:.9rem;font-weight:600;text-align:center}@media (max-width:768px){.quick-actions{flex-direction:column}.action-button{flex-direction:row;padding:1rem}.action-icon{font-size:1.5rem;margin-bottom:0;margin-right:.75rem}.clickable-item{padding:.6rem 1rem}.section-header{padding:.8rem 1rem}}.resource-link{color:inherit}.resource-link,.resource-link:hover{text-decoration:none}.item-status.available{background:linear-gradient(135deg,#10b981,#059669)}.item-status.new{background:linear-gradient(135deg,#3b82f6,#2563eb)}.item-status.updated{background:linear-gradient(135deg,#f59e0b,#d97706)}.reading-session{background:var(--color-bg);color:var(--color-text);flex-direction:column;height:100vh;max-height:100vh;min-height:100vh;min-width:100vw}.reading-main-content,.reading-session{display:flex;max-width:100vw;overflow:hidden;width:100vw}.reading-main-content{background:var(--color-bg-alt);flex:1 1;height:calc(100vh - 70px)}@media (max-width:768px){.reading-main-content{flex-direction:column;height:auto}}.reading-left-section{background:linear-gradient(180deg,#7bc8a3,#7bc8a3 68%,#5a9ba8 97%,#5a9ba8);border-right:1px solid #e0e0e0;flex:1 1;max-width:350px;overflow-y:auto;padding:0}.progress-bar-container{margin-bottom:2rem}.progress-bar{gap:.5rem;justify-content:space-between;margin-bottom:.75rem}.progress-bar,.progress-step{align-items:center;display:flex}.progress-step{background:#e0e0e0;border-radius:6px;flex:1 1;height:12px;justify-content:center;position:relative;transition:background .3s}.progress-step.active{background:linear-gradient(90deg,#667eea,#764ba2)}.step-number{align-items:center;background:#667eea;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 6px #667eea26;color:#fff;display:flex;font-size:1rem;font-weight:700;height:28px;justify-content:center;left:50%;position:absolute;top:-28px;transform:translateX(-50%);width:28px;z-index:1}.vertical-progress-container{align-items:flex-start;display:flex;flex-direction:row;gap:2rem;margin-bottom:2.5rem}.vertical-progress-bar{gap:.2rem;min-width:40px}.vertical-progress-bar,.vertical-progress-step{align-items:center;display:flex;flex-direction:column}.vertical-progress-step{position:relative}.vertical-step-number{align-items:center;background:#e0e0e0;border:3px solid #e0e0e0;border-radius:50%;color:#667eea;display:flex;font-size:1.1rem;font-weight:700;height:32px;justify-content:center;margin-bottom:.1rem;transition:background .3s,color .3s,border .3s;width:32px;z-index:1}.vertical-progress-step.active .vertical-step-number{background:linear-gradient(135deg,#667eea,#764ba2);border:3px solid #764ba2;box-shadow:0 2px 8px #667eea26;color:#fff}.vertical-progress-step.completed .vertical-step-number{background:#667eea;border:3px solid #667eea;color:#fff}.vertical-step-connector{background:#e0e0e0;border-radius:3px;height:32px;margin:0 auto;width:6px;z-index:0}.vertical-progress-step.active~.vertical-progress-step .vertical-step-connector,.vertical-progress-step.completed .vertical-step-connector{background:#764ba2}.vertical-progress-content{display:flex;flex:1 1;flex-direction:column;gap:1rem;justify-content:flex-start}.progress-label{color:#666;font-size:1rem;margin-bottom:.5rem}.motivational-message{align-items:center;background:#f8f9fa;border-left:4px solid #667eea;border-radius:8px;color:#333;display:flex;font-size:1.1rem;justify-content:flex-start;min-height:80px;padding:1.5rem 1rem;text-align:left}.action-buttons{flex-direction:row;gap:1rem;margin-bottom:2rem}.action-button,.action-buttons{display:flex;justify-content:center}.action-button{align-items:center;border:none;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.action-button.primary{background:#2c5057;border:2px solid #2c5057;color:#2c5057}.action-button.primary:disabled{background:#e0e0e0;color:#aaa;cursor:not-allowed}.action-button.primary:hover:not(:disabled){background:#2c5057;box-shadow:0 4px 12px #4bac814d;transform:translateY(-2px)}.action-button.secondary{background:#f8f9fa;border:2px solid #e0e0e0;color:#666}.action-button.secondary:disabled{background:#e0e0e0;color:#aaa;cursor:not-allowed}.action-button.secondary:hover:not(:disabled){background:#e9ecef;border-color:#adb5bd}.subject-dropdown-container{align-items:center;background:#f3f6ff;border-radius:12px;box-shadow:0 2px 12px #667eea1a;display:flex;flex-direction:column;margin:3rem auto 1.2rem;max-width:300px;padding:.8rem 0 1rem;transition:box-shadow .2s;width:100%}.react-select__control,.react-select__menu{margin:0 auto;max-width:220px!important;min-width:220px!important;width:220px!important}.subject-label{font-size:1.05rem;margin-bottom:.4rem}.subject-dropdown{appearance:none;background:linear-gradient(90deg,#f8f9fa 60%,#e9eefd);border:2.5px solid #764ba2;border-radius:10px;box-shadow:0 2px 8px #667eea21;color:#333;font-size:1.15rem;font-weight:600;margin-bottom:.2rem;max-width:350px;min-width:250px;outline:none;padding:.9rem 1.2rem;transition:border .2s,box-shadow .2s,transform .15s;width:100%}.subject-dropdown:focus,.subject-dropdown:hover{border-color:#667eea;box-shadow:0 4px 16px #667eea2e;transform:scale(1.03)}.subject-dropdown option{background:#f3f6ff;border-bottom:1px solid #e0e0e0;color:#222;font-size:1.1rem;font-weight:600;padding:1.1rem 1.2rem;transition:background .2s,color .2s}.subject-dropdown option:checked,.subject-dropdown option:focus,.subject-dropdown option:hover{background:#e0e0ff;color:#764ba2}.subject-dropdown option[disabled]{color:#aaa}.vertical-box-progress{align-items:center;display:flex;flex-direction:column;gap:2.2rem;margin:2rem 0 0}.progress-box{align-items:center;background:#fff;border:5px solid #444;border-radius:10px;box-sizing:border-box;color:#222;display:flex;font-size:1rem;font-weight:700;justify-content:center;letter-spacing:1px;max-width:320px;min-height:32px;transition:border .3s,background .3s,color .3s;width:90%}.progress-box.active{background:#f3f6ff;border:5px solid #667eea;box-shadow:0 2px 12px #667eea21;color:#111}.progress-square-icon{background:#667eea;border-radius:4px;box-shadow:0 1px 3px #667eea1a;display:inline-block;height:18px;margin-right:.2rem;width:18px}@media (max-width:768px){.reading-left-section{border-bottom:1px solid #e0e0e0;border-right:none;max-width:none}.vertical-progress-container{align-items:stretch;flex-direction:column;gap:1.2rem}.vertical-progress-bar{flex-direction:row;gap:.5rem;justify-content:center;min-width:0}.vertical-progress-step{flex-direction:row}.vertical-step-number{margin-bottom:0;margin-right:.2rem}.vertical-step-connector{height:6px;margin:0 .2rem;width:32px}.vertical-progress-content{padding-left:0}.motivational-message{font-size:1rem;padding:1.2rem .5rem}}.reading-right-section{background:#e7faf2;display:flex;flex:2 1;flex-direction:column;overflow-y:auto;padding:2rem}.content-layout{align-items:flex-start;display:flex;gap:1rem;margin-bottom:2rem}.content-buttons{align-items:center;display:flex;flex-direction:column;gap:1rem;margin-top:0}.avatar-container{flex-shrink:0;height:200px;position:relative;width:250px}.circular-timer-container{height:140px;position:relative;width:140px}.circular-timer-svg{height:100%;transform:scaleX(-1);width:100%}.circular-timer-content{align-items:center;display:flex;flex-direction:column;justify-content:center;left:50%;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%)}.timer-label{color:#d4a574;font-size:1.1rem;font-weight:700;letter-spacing:2px;margin-bottom:.3rem}.timer-time{color:#fae4ca;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:1.3rem;font-weight:700}.music-icon-button{align-items:center;cursor:pointer;display:flex;justify-content:center;opacity:.8;text-align:center;transition:transform .3s ease,opacity .3s ease;-webkit-user-select:none;user-select:none}.music-note-icon{height:4rem;object-fit:contain;transition:inherit;width:4rem}.music-icon-button:hover{opacity:1;transform:scale(1.2)}.music-icon-button:active{transform:scale(1.1)}.content-button{align-items:center;background:#2e4142;border:none;border-radius:8px;box-shadow:0 2px 8px #0000001a;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;min-width:120px;padding:.6rem 1rem;transition:all .3s ease;white-space:nowrap}.clock-content{align-items:flex-start;display:flex;flex-direction:column;gap:.2rem}.timer-display{color:#fae4ca;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:1.1rem}.timer-status{font-size:.7rem;letter-spacing:.5px;opacity:.8;text-transform:uppercase}.quiz-popup-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.quiz-popup{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000004d;max-width:400px;padding:2rem;text-align:center;width:90%}.quiz-popup h3{color:#2e4142;font-size:1.3rem;margin-bottom:1rem}.quiz-popup p{color:#666;font-size:1rem;margin-bottom:1.5rem}.quiz-popup-close{background:#2e4142;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.8rem 2rem;transition:all .3s ease}.quiz-popup-close:hover{background:#3a5253;transform:translateY(-2px)}.music-selection-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.music-selection-popup{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000004d;max-height:80vh;max-width:500px;overflow-y:auto;padding:2rem;width:90%}.music-selection-popup h3{color:#2e4142;font-size:1.4rem;margin-bottom:1.5rem;text-align:center}.currently-playing{background:#f8f9fa;border:2px solid #2e4142;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.currently-playing h4{color:#2e4142;font-size:1rem;margin:0 0 .8rem;text-align:center}.current-track{align-items:center;display:flex;gap:1rem}.current-track-icon{font-size:1.5rem;min-width:30px}.current-track-info{display:flex;flex:1 1;flex-direction:column;gap:.2rem}.current-track-name{color:#2e4142;font-weight:600}.current-track-status{color:#666;font-size:.9rem;letter-spacing:.5px;text-transform:uppercase}.current-track-controls{display:flex;gap:.5rem}.track-control-btn{background:#2e4142;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;padding:.5rem;transition:all .2s ease}.track-control-btn:hover{background:#3a5253;transform:scale(1.1)}.music-option{align-items:center;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;gap:1rem;padding:1rem;transition:all .3s ease}.music-option:hover{background:#f8f9fa;border-color:#2e4142;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.music-icon{font-size:1.5rem;min-width:30px}.music-name{color:#2e4142;font-weight:600;min-width:120px}.music-description{color:#666;font-size:.9rem}.music-selection-close{background:#2e4142;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.8rem 2rem;transition:all .3s ease;width:100%}.music-selection-close:hover{background:#3a5253;transform:translateY(-2px)}.music-option.active{background:#f0f8ff;border-color:#2e4142}.playing-indicator{animation:pulse 1.5s infinite;color:#2e4142;font-size:1.2rem;font-weight:700}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.music-options{grid-gap:.8rem;display:grid;gap:.8rem;margin-bottom:1.5rem}.content-button:hover{background:#3a5253;box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.content-button .button-icon{font-size:1rem}.content-button .button-label{font-weight:600}.vibes-content{align-items:flex-start;display:flex;flex-direction:column;gap:.2rem}.current-music{color:#fae4ca;font-size:.8rem;font-weight:500}.audio-controls{display:flex;gap:.3rem;margin-top:.2rem}.audio-control-btn{background:#fff3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;padding:.2rem .4rem;transition:all .2s ease}.audio-control-btn:hover{background:#ffffff4d;transform:scale(1.1)}.section-header{margin-bottom:2rem;text-align:center}.section-header h2{color:#333;font-size:1.5rem;margin-bottom:.5rem}.section-header p{color:#666;font-size:.9rem}.content-display{background:#fff;border:3px solid #d6c6a1;border-radius:16px;box-shadow:0 4px 16px #a86e4a12;height:85vh;margin:0 auto;overflow:hidden;position:relative;width:98%}.content-display,.empty-state{align-items:center;display:flex;justify-content:center}.empty-state{color:#666;flex-direction:column;padding:4rem 2rem;text-align:center;width:100%}.empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.empty-state h3{color:#333;font-size:1.2rem;margin-bottom:.5rem}.empty-state p{color:#666;font-size:.9rem;line-height:1.5;max-width:300px}.content-container{padding:2rem;width:100%}.content-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}.content-header h3{color:#333;font-size:1.1rem;margin:0}.content-type{background:#667eea;border-radius:20px;color:#fff;font-size:.8rem;font-weight:500;padding:.25rem .75rem}.content-text{word-wrap:break-word;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;color:#333;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.95rem;line-height:1.6;max-height:100%;overflow:hidden;padding:1.5rem;white-space:pre-wrap;width:100%}.file-preview-container{align-items:center;display:flex;flex-direction:column;width:100%}.file-image-preview{border:1px solid #e0e0e0;border-radius:12px;box-shadow:0 2px 8px #667eea1f;margin:2rem 0 1rem;max-height:350px;max-width:100%}.file-text-preview{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;color:#333;font-size:1rem;margin-top:1rem;max-height:100%;overflow:hidden;padding:1rem;width:100%}.file-info{background:#e9ecef;border-radius:6px;color:#333;display:inline-block;font-size:1.1rem;margin-top:1.5rem;padding:.7rem 1.2rem}.fit-preview{display:block;margin:0 auto;max-height:60vh;max-width:100%;object-fit:contain;width:100%}.pdf-preview{align-items:center;display:flex;flex-direction:column;max-height:60vh;overflow:auto;padding:1rem 0}.docx-preview,.pdf-preview{background:#f8f9fa;border-radius:8px;max-width:100%;width:100%}.docx-preview{color:#222;font-size:1rem;line-height:1.6;max-height:100%;overflow:hidden;padding:1rem}.progress-bar-container{background:#e7faf2;border-radius:6px;height:40px;margin:16px auto 0;max-width:600px;overflow:visible;position:relative;width:70%}.progress-bar-markers{display:flex;justify-content:space-between;left:0;pointer-events:none;position:absolute;top:12px;width:100%;z-index:2}.progress-marker{align-items:center;display:flex;flex-direction:column;width:0}.progress-marker:before{background:#2c5057;border:2px solid #fff;border-radius:50%;box-shadow:0 1px 4px #00000014;content:"";display:block;height:16px;margin-bottom:0;margin-top:-4px;width:16px;z-index:1}.progress-marker span{color:#444;font-size:12px;margin-top:8px;white-space:nowrap}.progress-bar{background:#4bac81;border-radius:6px;left:0;position:absolute;top:16px;transition:width .3s ease;z-index:1}.waveform-bar{animation:waveform 1.2s ease-in-out infinite;background:red;border-radius:2px;width:3px}@keyframes waveform{0%,to{height:4px;opacity:.4}50%{height:20px;opacity:1}}@media (max-width:768px){.content-container,.reading-right-section{padding:1rem}.content-header{align-items:flex-start;flex-direction:column;gap:.5rem}}:root{--react-pdf-annotation-layer:1;--annotation-unfocused-field-background:url('data:image/svg+xml;charset=utf-8,<svg width="1" height="1" xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%" style="fill:rgba(0,54,255,.13)"/></svg>');--input-focus-border-color:Highlight;--input-focus-outline:1px solid Canvas;--input-unfocused-border-color:#0000;--input-disabled-border-color:#0000;--input-hover-border-color:#000;--link-outline:none}@media screen and (forced-colors:active){:root{--input-focus-border-color:CanvasText;--input-unfocused-border-color:ActiveText;--input-disabled-border-color:GrayText;--input-hover-border-color:Highlight;--link-outline:1.5px solid LinkText}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .textWidgetAnnotation :is(input,textarea):required{outline:1.5px solid selectedItem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert(100%);backdrop-filter:invert(100%)}}.annotationLayer{left:0;pointer-events:none;position:absolute;top:0;transform-origin:0 0;z-index:3}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg) translateX(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg) translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg) translateY(-100%)}.annotationLayer canvas{height:100%;position:absolute;width:100%}.annotationLayer section{box-sizing:border-box;margin:0;pointer-events:auto;position:absolute;text-align:left;text-align:initial;transform-origin:0 0}.annotationLayer .linkAnnotation{outline:none;outline:var(--link-outline)}.textLayer.selecting~.annotationLayer section{pointer-events:none}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{font-size:1em;height:100%;left:0;position:absolute;top:0;width:100%}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{background:#ff0;box-shadow:0 2px 10px #ff0;opacity:.2}.annotationLayer .textAnnotation img{cursor:pointer;height:100%;left:0;position:absolute;top:0;width:100%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input,.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .textWidgetAnnotation :is(input,textarea){background-image:url('data:image/svg+xml;charset=utf-8,<svg width="1" height="1" xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%" style="fill:rgba(0,54,255,.13)"/></svg>');background-image:var(--annotation-unfocused-field-background);border:2px solid #0000;border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px*var(--total-scale-factor)) sans-serif;height:100%;margin:0;vertical-align:top;width:100%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .textWidgetAnnotation :is(input,textarea):required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled]{background:none;border:2px solid #0000;border:2px solid var(--input-disabled-border-color);cursor:not-allowed}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .textWidgetAnnotation :is(input,textarea):hover{border:2px solid #000;border:2px solid var(--input-hover-border-color)}.annotationLayer .buttonWidgetAnnotation.checkBox input:hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .textWidgetAnnotation :is(input,textarea):hover{border-radius:2px}.annotationLayer .choiceWidgetAnnotation select:focus,.annotationLayer .textWidgetAnnotation :is(input,textarea):focus{background:none;border:2px solid Highlight;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:1px solid Canvas;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-color:initial;background-image:none}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid Highlight;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:1px solid Canvas;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid Highlight;border:2px solid var(--input-focus-border-color);outline:1px solid Canvas;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:CanvasText;content:"";display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{height:80%;left:45%;width:1px}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;height:50%;left:30%;top:20%;width:50%}.annotationLayer .textWidgetAnnotation input.comb{font-family:monospace;padding-left:2px;padding-right:0}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{appearance:none}.annotationLayer .popupTriggerArea{height:100%;width:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{font-size:calc(9px*var(--total-scale-factor));min-width:calc(180px*var(--total-scale-factor));pointer-events:none;position:absolute;width:100%}.annotationLayer .popup{word-wrap:break-word;background-color:#ff9;border-radius:calc(2px*var(--total-scale-factor));box-shadow:0 calc(2px*var(--total-scale-factor)) calc(5px*var(--total-scale-factor)) #888;cursor:pointer;font:message-box;margin-left:calc(5px*var(--total-scale-factor));max-width:calc(180px*var(--total-scale-factor));padding:calc(6px*var(--total-scale-factor));pointer-events:auto;position:absolute;white-space:normal}.annotationLayer .popup>*{font-size:calc(9px*var(--total-scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{display:inline-block;margin-left:calc(5px*var(--total-scale-factor))}.annotationLayer .popupContent{border-top:1px solid #333;margin-top:calc(2px*var(--total-scale-factor));padding-top:calc(2px*var(--total-scale-factor))}.annotationLayer .richText>*{font-size:calc(9px*var(--total-scale-factor));white-space:pre-wrap}.annotationLayer .caretAnnotation,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .fileAttachmentAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .highlightAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .lineAnnotation svg line,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .squareAnnotation svg rect,.annotationLayer .squigglyAnnotation,.annotationLayer .stampAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .underlineAnnotation{cursor:pointer}.annotationLayer section svg{height:100%;left:0;position:absolute;top:0;width:100%}.annotationLayer .annotationTextContent{color:#0000;height:100%;opacity:0;pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none;width:100%}.annotationLayer .annotationTextContent span{display:inline-block;width:100%}:root{--react-pdf-text-layer:1;--highlight-bg-color:#b400aa;--highlight-selected-bg-color:#006400}@media screen and (forced-colors:active){:root{--highlight-bg-color:Highlight;--highlight-selected-bg-color:ButtonText}}[data-main-rotation="90"]{transform:rotate(90deg) translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg) translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg) translateX(-100%)}.textLayer{-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;forced-color-adjust:none;inset:0;line-height:1;overflow:hidden;text-align:left;text-align:initial;z-index:2}.textLayer,.textLayer :is(span,br){position:absolute;transform-origin:0 0}.textLayer :is(span,br){color:#0000;cursor:text;margin:0;white-space:pre}.textLayer span.markedContent{height:0;top:0}.textLayer .highlight{background-color:#b400aa;background-color:var(--highlight-bg-color);border-radius:4px;margin:-1px;padding:1px}.textLayer .highlight.appended{position:static}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:#006400;background-color:var(--highlight-selected-bg-color)}.textLayer br::selection{background:#0000}.textLayer .endOfContent{cursor:default;display:block;inset:100% 0 0;position:absolute;-webkit-user-select:none;user-select:none;z-index:-1}.textLayer.selecting .endOfContent{top:0}.hiddenCanvasElement{display:none;height:0;left:0;position:absolute;top:0;width:0}.login-page{background:linear-gradient(270deg,#44746d 5%,#283d40 97%);font-family:inter,sans-serif;min-height:100vh}.login-main{align-items:center;display:flex;flex-direction:row;justify-content:center;margin-left:70px;margin-top:64px;min-height:calc(100vh - 70px);position:relative;width:100%}.login-logo{display:block;height:auto;left:38px;max-width:90vw;position:absolute;top:40px;width:800px;z-index:1}.login-tagline{color:#f0f9d6;font-size:1.5rem;font-weight:100;left:60px;letter-spacing:.5px;line-height:1.75rem;margin-top:20px;position:absolute;text-align:left;top:auto}.login-form-container{align-items:center;display:flex;justify-content:center;margin-left:50vw;margin-top:-35vw;max-width:100%;min-width:0;position:relative;width:30vw;z-index:2}.login-form{max-width:100%;width:100%}.login-error{background:#dc2626e6;border-radius:8px;color:#f0f9d6;font-size:15px;margin-bottom:18px;padding:12px 16px;text-align:center}.login-label{color:#c7ab7d;display:block;font-size:20px;font-weight:400;margin-bottom:2px}.login-input{border:none;border-radius:3px;box-shadow:inset 0 0 0 1000px #f0f9d6!important;box-sizing:border-box;font-size:14px;padding:10px 4px 10px 8px;width:90%}.login-form-group{margin-bottom:12px}.login-submit{background:#557257;border:.5px solid #000;border-radius:4px;color:#c7ab7d;cursor:pointer;font-size:16px;font-weight:500;margin-top:15px;opacity:1;padding:3px 15px}.login-submit[disabled]{cursor:not-allowed;opacity:.6}.login-forgot-label{color:#c7ab7d;font-size:13px;font-weight:500}.login-forgot-or{color:#c7ab7d;font-size:12px;font-weight:400;margin:-5px}.login-forgot-link{color:#c7ab7d;cursor:pointer;font-size:13px;text-decoration:underline}.login-submit-row{align-items:center;display:flex;gap:18px}.login-forgot-inline{align-items:center;display:flex;gap:8px}.login-forgot-block{align-items:center;display:flex;flex-wrap:nowrap;gap:4px;margin-bottom:0;margin-top:10px}.signup-page{background:linear-gradient(270deg,#44746d 5%,#283d40 97%);font-family:Inter,sans-serif;min-height:100vh}.signup-main{margin:0 auto;max-width:1200px;padding:30px 40px}.signup-header{margin-bottom:40px;text-align:center}.signup-title{font-size:32px;font-weight:500;font-weight:Demi-bold;margin:0 auto}.signup-desc,.signup-title{color:#f0f9d6;font-family:Avenir Next,sans-serif;line-height:1.6}.signup-desc{font-size:20px;font-weight:Regular;margin:0 auto 50px;max-width:100%;width:80%}.signup-form{grid-gap:100px;display:grid;gap:100px;grid-template-columns:1fr 1fr;margin:0 auto 0 160px;max-width:900px;width:60%}.signup-input.error{background:#f0f9d6;border:2px solid #ec221f}.signup-error{color:#ec221f;font-size:14px;margin-top:5px}.signup-form-group{margin-bottom:25px}.signup-label{color:#c7ab7d;display:block;font-size:20px;font-weight:400;margin-bottom:2px;margin-top:-10px}.signup-input{background:#f0f9d6;border:none;border-radius:3px;box-sizing:border-box;font-size:14px;height:45px;margin-bottom:0;padding:3px;width:350px}.signup-role-label{align-items:center;color:#c7ab7d;cursor:pointer;display:flex;font-size:20px;gap:4px}.signup-radio{accent-color:#634775;background-color:#f0f9d6;height:25px;width:25px}.signup-terms-group{margin-bottom:30px;margin-top:50px}.signup-terms-label{align-items:center;color:#c7ab7d;cursor:pointer;display:flex;flex-wrap:nowrap;font-size:14px;gap:8px;line-height:1.4;white-space:nowrap}.signup-checkbox{accent-color:#634775;appearance:auto;background-color:#f0f9d6;border-radius:0;height:25px;width:25px}.signup-terms-link{background:none;border:none;color:#c7ab7d;cursor:pointer;font-family:inherit;font-size:14px;font-weight:inherit;margin:0;padding:0;text-decoration:underline;white-space:nowrap}.signup-terms-link:hover{color:#f0f9d6}.signup-submit-row{align-items:center;display:flex;gap:10px}.signup-submit{background:#557257;border:.5px solid #000;border-radius:4px;color:#c7ab7d;cursor:pointer;font-size:20px;font-weight:500;opacity:1;padding:10px 30px}.signup-submit:disabled{cursor:not-allowed;opacity:.6}.signup-email-verification{color:#c7ab7d;font-size:14px}.email-verification-italic{font-style:italic}.signup-terms-modal-bg{align-items:center;background-color:#000c;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.signup-terms-modal{background-color:#557257;border-radius:12px;color:#f0f9d6;max-height:80vh;max-width:800px;overflow:auto;padding:30px}.signup-terms-title{color:#c7ab7d;margin-bottom:20px}.signup-terms-list{line-height:1.6;margin-bottom:20px;padding-left:20px}.signup-terms-list li{margin-bottom:10px}.signup-terms-participation-checks{margin:12px 0}.signup-terms-check-row{align-items:flex-start;color:#f0f9d6;cursor:pointer;display:flex;gap:10px;line-height:1.5;margin-bottom:12px}.signup-terms-check-row .signup-terms-checkbox{accent-color:#634775;cursor:pointer;flex-shrink:0;height:20px;margin-top:2px;width:20px}.signup-terms-ack{margin-top:30px}.signup-terms-ack-title{color:#c7ab7d;margin-bottom:15px}.signup-terms-close{background-color:#7b1db9;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;margin-top:20px;padding:12px 24px}.signup-label-remember{color:#c7ab7d;font-size:14px;font-weight:Regular}.email-confirmation-page{background:linear-gradient(270deg,#44746d 5%,#3d6661 24%,#365956 51%,#2f4b4b 76%,#283d40 97%);font-family:inter,sans-serif;min-height:100vh}.email-confirmation-main{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:calc(100vh - 70px);padding:3rem;width:100%}.email-confirmation-content{color:#f0f9d6;margin:100px auto;max-width:700px;padding:40px;position:relative;z-index:2}.email-confirmation-title{color:#c7ab7d;font-size:28px;font-weight:600;margin-bottom:40px;text-align:center}.email-confirmation-details{background:#5772574d;border-left:4px solid #c7ab7d;border-radius:8px;margin-bottom:30px;padding:20px}.email-detail-line{color:#f0f9d6;font-size:16px;line-height:1.6;margin:10px 0}.email-confirmation-message{color:#f0f9d6;font-size:18px;line-height:1.8;text-align:left}.email-confirmation-message p{margin:20px 0}.email-confirmation-message strong{color:#c7ab7d;font-weight:600}.email-confirmation-loading{color:#f0f9d6;font-size:20px;padding:50px;text-align:center}.email-confirmation-verified{text-align:center}.email-verification-checkbox-container{align-items:center;display:flex;justify-content:center;margin:40px 0 30px}.email-verification-checkbox-label{align-items:center;color:#f0f9d6;cursor:pointer;display:flex;font-size:18px;gap:12px;-webkit-user-select:none;user-select:none}.email-verification-checkbox{accent-color:#557257;background-color:#f0f9d6;border-radius:3px;cursor:pointer;height:20px;width:20px}.verify-email-button{background:#557257;border:.5px solid #000;border-radius:4px;color:#c7ab7d;cursor:pointer;display:block;font-size:18px;font-weight:500;margin-left:auto;margin-right:auto;margin-top:30px;padding:12px 40px;transition:opacity .3s ease}.verify-email-button:hover{opacity:.9}.verification-popup-overlay{align-items:center;animation:fadeIn .3s ease;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.verification-popup{animation:slideUp .3s ease;background:linear-gradient(135deg,#365956,#2f4b4b);border-radius:16px;box-shadow:0 10px 40px #00000080;max-width:500px;padding:50px 60px;text-align:center}.verification-popup-icon{align-items:center;background:#557257;border-radius:50%;color:#c7ab7d;display:flex;font-size:50px;font-weight:700;height:80px;justify-content:center;margin:0 auto 25px;width:80px}.verification-popup-title{color:#c7ab7d;font-size:26px;font-weight:600;margin-bottom:20px}.verification-popup-message{color:#f0f9d6;font-size:16px;line-height:1.6;margin-bottom:35px}.verification-popup-button{background:#c7ab7d;border:none;border-radius:8px;color:#283d40;cursor:pointer;font-size:16px;font-weight:600;padding:14px 35px;transition:transform .2s ease,box-shadow .2s ease}.verification-popup-button:hover{box-shadow:0 5px 15px #c7ab7d4d;transform:translateY(-2px)}.reset-password-page{background:linear-gradient(270deg,#44746d 5%,#283d40 97%);font-family:inter,sans-serif;min-height:100vh}.reset-password-main{align-items:center;display:flex;flex-direction:row;justify-content:center;margin-left:70px;margin-top:64px;min-height:calc(100vh - 70px);position:relative;width:100%}.reset-password-logo{display:block;height:auto;left:38px;max-width:90vw;position:absolute;top:180px;width:50vw;z-index:1}.reset-password-form-container{align-items:center;display:flex;justify-content:center;margin-left:40vw;margin-top:-28vw;max-width:100%;min-width:0;position:relative;width:30vw;z-index:2}.reset-password-form{max-width:100%;width:100%}.reset-password-error{background:#dc2626e6}.reset-password-error,.reset-password-success{border-radius:8px;color:#f0f9d6;font-size:15px;margin-bottom:18px;padding:12px 16px;text-align:center}.reset-password-success{background:#4bac81e6}.reset-password-label{color:#c7ab7d;display:block;font-size:14px;font-weight:400;margin-bottom:2px}.reset-password-input{border:none;border-radius:3px;box-shadow:inset 0 0 0 1000px #f0f9d6!important;box-sizing:border-box;font-size:14px;padding:6px 5px 6px 8px;width:80%}.reset-password-input.error{border:1px solid #dc2626;box-shadow:inset 0 0 0 1000px #fcc!important}.reset-password-instructions{background:#0000;color:#f0f9d6;font-size:14px;line-height:1.6;margin-bottom:20px;padding:0}.reset-password-instructions-title{color:#f0f9d6;font-family:Avenir Next,sans-serif;font-size:30px;font-weight:700;margin:200px 0 10px;width:80%}.reset-password-instructions-title strong{color:#f0f9d6;font-family:Avenir Next,sans-serif;font-size:35px;width:80%}.reset-password-instructions-subheading{color:#f0f9d6;font-family:Avenir Next,sans-serif;font-size:16px;font-weight:700;margin:0 0 10px;width:80%}.reset-password-instructions-body{color:#f0f9d6;font-family:Avenir Next,sans-serif;font-size:16px;margin:0;width:80%}.reset-password-form-group{margin-bottom:12px}.reset-password-field-error{color:#ff6b6b;font-size:12px;margin-bottom:0;margin-top:4px}.reset-password-submit{background:#557257;border:.5px solid #000;border-radius:4px;color:#c7ab7d;cursor:pointer;font-size:16px;font-weight:500;margin-top:15px;opacity:1;padding:3px 15px}.reset-password-submit[disabled]{cursor:not-allowed;opacity:.6}.reset-password-submit-row{align-items:center;display:flex;gap:18px}.reset-password-email-sent{background:#4bac811a;border:2px solid #4bac81;border-radius:12px;color:#f0f9d6;padding:30px;text-align:center}.reset-password-email-sent h2{color:#c7ab7d;font-size:1.8rem;margin-bottom:1rem}.reset-password-email-sent p{color:#f0f9d6;font-size:1rem;line-height:1.6;margin-bottom:.8rem}.reset-password-note{font-size:.9rem;font-style:italic;margin-top:1rem;opacity:.8}.verification-success-page{align-items:center;background:linear-gradient(270deg,#44746d 5%,#3d6661 24%,#365956 51%,#2f4b4b 76%,#283d40 97%);display:flex;font-family:Inter,sans-serif;justify-content:center;min-height:100vh;padding:20px}.verification-success-container{animation:fadeIn .5s ease-in;background:#fffffff2;border-radius:20px;box-shadow:0 8px 32px #0000004d;max-width:600px;padding:60px 80px;text-align:center;width:90%}.verification-icon{font-size:5rem;margin-bottom:1.5rem}.verification-icon.success{animation:scaleIn .5s ease-out;color:#4caf50}.verification-icon.verifying{animation:rotate 1s linear infinite}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.verification-title{color:#2e4142;font-size:2rem;font-weight:700;line-height:1.3;margin-bottom:1rem}.verification-message{color:#555;font-size:1.2rem;line-height:1.5;margin-bottom:1.5rem}.verification-instruction{background:#f0f9d6;border:2px solid #c7ab7d;border-radius:10px;color:#333;font-size:1.3rem;font-weight:600;line-height:1.5;margin-bottom:2rem;padding:20px}.verification-note{color:#888;font-size:.95rem;font-style:italic;margin-top:1rem}@media (max-width:768px){.verification-success-container{padding:40px 30px}.verification-icon{font-size:4rem}.verification-title{font-size:1.5rem}.verification-message{font-size:1rem}.verification-instruction{font-size:1.1rem;padding:15px}}.student-profile-page{background:linear-gradient(270deg,#44746d 5%,#3d6661 24%,#365956 51%,#2f4b4b 76%,#283d40 97%);font-family:Inter,sans-serif;min-height:100vh}.student-profile-main{margin:0 auto;max-width:1200px;padding:30px 40px}.student-profile-header{background:none;border:none;box-shadow:none;padding:0;text-align:center}.student-profile-title{color:#f0f9d6;font-size:30px;line-height:1.6;margin:0 auto 50px;max-width:100%;width:80%}.student-profile-form{grid-gap:100px;display:grid;gap:100px;grid-template-columns:1fr 1fr;margin:0 0 0 10%;max-width:900px;text-align:left;width:60%}.student-profile-error{background:#f0f9d6;border:2px solid #ec221f;margin-bottom:25px}.student-profile-form-group{margin-bottom:25px}.student-profile-label{color:#c7ab7d;display:block;font-size:20px;font-weight:400;margin-bottom:2px;margin-top:-10px;text-align:left}.student-profile-input{background:#f0f9d6;border:none;border-radius:3px;box-sizing:border-box;font-size:14px;height:40px;margin-bottom:0;margin-top:10px;padding:3px;width:400px}.student-profile-footer{margin-top:auto;padding-top:30px;text-align:center}.student-profile-continue-btn{background:#557257;border:.5px solid #000;border-radius:4px;color:#c7ab7d;cursor:pointer;font-size:20px;font-weight:500;opacity:1;padding:15px 30px}.student-profile-continue-btn:disabled{cursor:not-allowed;opacity:.6}.buddy-selection-page{background:linear-gradient(270deg,#44746d 5%,#283d40 97%);font-family:Inter,sans-serif;min-height:100vh;padding-top:0}.buddy-selection-header{color:#f0f9d6;font-size:25px;line-height:1.2;margin:20px auto 50px;max-width:100%;text-align:center;width:80%}.buddy-selection-row{align-items:flex-start;display:flex;gap:20px;justify-content:center;margin:0 auto;max-width:1400px;padding:0 20px;width:100%}.buddy-selection-container-left,.buddy-selection-container-right{align-items:stretch;background:#0000;border:4px solid #c7ab7d;border-radius:5px;display:flex;flex-direction:column;flex-shrink:0;justify-content:flex-start;margin-top:0;min-height:400px;padding-top:0;width:600px}.buddy-selection-arrow{align-items:center;color:#c7ab7d;display:flex;flex-shrink:0;font-size:70px;justify-content:center;margin-top:180px;width:60px}.buddy-selection-title{color:#f0f9d6;font-size:25px;line-height:1.2;margin-bottom:30px;margin-top:0;padding-top:4px;text-align:center}.buddy-selection-options{display:flex;gap:20px;justify-content:center;margin-bottom:40px}.buddy-selection-option{align-items:center;background:#0000;border:3px solid #d9d9d9;border-radius:20px;cursor:pointer;display:flex;font-size:80px;height:250px;justify-content:center;overflow:hidden;transition:all .3s ease;width:220px}.buddy-selection-option.selected{border:6px solid #c7ab7d;transform:scale(1.05)}.buddy-image{height:250px;object-fit:contain;width:200px}.buddy-selection-option:has(.buddy-image){border:none}.buddy-selection-continue-btn{background:#439a7e;border:2px solid #000;border-radius:12px;box-shadow:0 4px 4px #0000001a;color:#c7ab7d;cursor:pointer;font-size:25px;font-weight:700;margin:50px auto 0;opacity:1;padding:20px 40px;transition:all .3s ease}.buddy-selection-continue-btn:disabled{cursor:not-allowed;opacity:.6}.buddy-selection-continue-btn:hover:not(:disabled){box-shadow:0 6px 20px #00000026;transform:translateY(-2px)}.buddy-selection-header-text{color:#f0f9d6;font-size:40px;margin-bottom:0;margin-top:0;padding-top:0;text-align:center Font-}body,html{height:100%;margin:0;overflow:hidden;padding:0}.video-container{background:linear-gradient(270deg,#44746d 5%,#3d6661 24%,#365956 51%,#2f4b4b 76%,#283d40 97%);overflow:hidden;position:fixed;z-index:1}.video-container,video{height:100vh;left:0;top:0;width:100vw}video{object-fit:cover;z-index:2}.sprite,video{position:absolute}.sprite{background:none;border:none;height:60px;object-fit:contain;transition:all .5s cubic-bezier(.4,0,.2,1);width:60px;z-index:3}.sprite.center{left:50%;top:50%;transform:translate(-50%,-50%)}.sprite.bottom{bottom:12px;top:auto}.sprite.bottom,.sprite.top{left:50%;transform:translate(-50%)}.sprite.top{top:12px}.sprite.left{left:12px}.sprite.left,.sprite.right{top:50%;transform:translateY(-50%)}.sprite.right{left:auto;right:12px}.calibration-complete{background:#0000;color:#c7ab7d;font-size:1.5rem;top:50%;transform:translate(-50%,-50%)}.calibration-complete,.calibration-countdown{left:50%;position:absolute;text-align:center;z-index:10}.calibration-countdown{color:#efe3dc;font-size:2rem;font-weight:700;margin-top:.5cm;top:calc(50% + 30px);transform:translateX(-50%,-50%)}.livekit-voice-assistant{background:#1a1a2e;color:#fff;font-family:system-ui,sans-serif;height:100vh;overflow-x:hidden;width:100%}.voice-assistant-container{align-items:center;display:flex;height:100vh;justify-content:center;padding:1rem}.voice-assistant-sidebar{display:flex;flex-direction:column;gap:1rem;height:90vh;max-width:500px;width:100%}.voice-assistant-sidebar h1{font-size:1.8rem;margin:0;text-align:center}.connect-btn,.disconnect-btn{border:none;border-radius:8px;cursor:pointer;font-size:1.2rem;font-weight:600;padding:1rem 2rem;transition:all .2s}.connect-btn{background:#4caf50;color:#fff}.connect-btn:hover:not(:disabled){background:#45a049}.connect-btn:disabled{background:#666;cursor:not-allowed}.disconnect-btn{background:#f44336;color:#fff}.disconnect-btn:hover:not(:disabled){background:#da190b}.disconnect-btn:disabled{background:#666;cursor:not-allowed}.mute-btn{background:#2196f3;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.2rem;font-weight:600;padding:1rem 2rem;transition:all .2s}.mute-btn:hover:not(:disabled){background:#0b7dda}.mute-btn:disabled{background:#666;cursor:not-allowed}.mute-btn.muted{background:#f44336}.mute-btn.muted:hover:not(:disabled){background:#da190b}.status-display{background:#16213e;border-radius:8px;font-size:1rem;padding:1rem;text-align:center}.audio-visualizer{background:#0f0f23;border-radius:8px;height:80px;width:100%}.transcripts-container{background:#0f0f23;border-radius:8px;flex:1 1;min-height:200px;overflow-y:auto;padding:1rem}.transcript-placeholder{color:#666;font-style:italic;padding:2rem;text-align:center}.transcript{word-wrap:break-word;border-radius:4px;margin:.5rem 0;padding:.75rem}.transcript.user{background:#1e3a5f}.transcript.agent{background:#2d4a3e}.transcript-label{font-weight:600;margin-right:.5rem}.transcript-text{display:block;margin-top:.25rem}.transcripts-container::-webkit-scrollbar{width:8px}.transcripts-container::-webkit-scrollbar-track{background:#0a0a15;border-radius:4px}.transcripts-container::-webkit-scrollbar-thumb{background:#4a4a6a;border-radius:4px}.transcripts-container::-webkit-scrollbar-thumb:hover{background:#5a5a7a}.browser-warning-overlay{align-items:center;animation:fadeIn .3s ease-in;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.browser-warning-card{animation:slideUp .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:500px;padding:32px;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.browser-warning-header{align-items:center;display:flex;gap:12px;margin-bottom:20px}.warning-icon{font-size:32px}.browser-warning-header h2{color:#333;font-size:24px;margin:0}.browser-warning-content{color:#555;line-height:1.6}.browser-warning-content p{font-size:16px;margin-bottom:20px}.browser-warning-reasons{background:#f5f5f5;border-radius:8px;margin-bottom:24px;padding:16px}.browser-warning-reasons h3{color:#333;font-size:18px;margin:0 0 12px}.browser-warning-reasons ul{margin:0;padding-left:20px}.browser-warning-reasons li{color:#555;margin-bottom:8px}.browser-warning-actions{display:flex;flex-wrap:wrap;gap:12px}.btn-download-chrome{background:#4285f4;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-block;flex:1 1;font-size:16px;font-weight:600;min-width:200px;padding:14px 24px;text-align:center;text-decoration:none;transition:background .2s ease}.btn-download-chrome:hover{background:#357ae8}.btn-continue-anyway{background:#0000;border:2px solid #ddd;border-radius:8px;color:#666;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;min-width:150px;padding:14px 24px;transition:all .2s ease}.btn-continue-anyway:hover{border-color:#999;color:#333}@media (max-width:600px){.browser-warning-card{padding:24px}.browser-warning-actions{flex-direction:column}.btn-continue-anyway,.btn-download-chrome{width:100%}}*{box-sizing:border-box;margin:0;padding:0}.app{background:linear-gradient(135deg,#4a5568,#2d3748 50%,#1a202c);color:#2d3748;font-family:Inter,sans-serif;min-height:100vh;overflow-x:hidden}.top-nav{background:linear-gradient(135deg,#f7fafc,#edf2f7);box-shadow:0 2px 10px #0000001a;padding:15px 0;position:relative;z-index:100}.nav-container{justify-content:space-between;margin:0 auto;max-width:1600px;padding:0 30px}.logo,.nav-container{align-items:center;display:flex}.logo{gap:10px}.logo-icon{align-items:center;background:linear-gradient(135deg,#9c8b47,#b8a055);border-radius:8px;color:#fff;display:flex;font-size:24px;font-weight:900;height:40px;justify-content:center;overflow:hidden;position:relative;width:40px}.logo-icon:before{animation:shine 2s infinite;background:linear-gradient(45deg,#0000 30%,#fff3 50%,#0000 70%);bottom:0;content:"";left:0;position:absolute;right:0;top:0;transform:translateX(-100%)}@keyframes shine{0%{transform:translateX(-100%)}50%{transform:translateX(100%)}to{transform:translateX(100%)}}.nav-menu{gap:40px;list-style:none}.auth-status,.nav-menu{align-items:center;display:flex}.auth-status{gap:15px;position:relative}.auth-btn{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:8px 20px;text-decoration:none;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#9c8b47,#b8a055);box-shadow:0 4px 15px #9c8b474d;color:#fff}.btn-primary:hover{box-shadow:0 6px 20px #9c8b4766;transform:translateY(-2px)}.btn-secondary{background:#0000;border:2px solid #9c8b47;color:#9c8b47}.btn-secondary:hover{background:#9c8b47;color:#fff}.user-welcome{color:#7c6635;font-size:14px;font-weight:600;margin-right:15px}.main-container{grid-gap:30px;display:grid;gap:30px;grid-template-columns:auto 1fr auto;margin:0 auto;max-width:1600px;min-height:calc(100vh - 100px);padding:30px}.timer-section{width:120px}.timer-box{background:#2d3748;border-radius:12px;box-shadow:0 4px 20px #0000004d;color:#fff;margin-bottom:20px;padding:20px;text-align:center}.timer-display{cursor:pointer;font-size:28px;font-weight:700;margin-bottom:5px;transition:transform .2s ease}.timer-display:hover{transform:scale(1.05)}.timer-label{color:#a0aec0;font-size:12px;letter-spacing:1px;text-transform:uppercase}.progress-section{margin-bottom:20px}.progress-label{color:#fff;font-size:14px;font-weight:600;margin-bottom:10px}.progress-bar{background:#fff3;border-radius:4px;height:8px;overflow:hidden;width:100%}.progress-fill{background:linear-gradient(90deg,#9c8b47,#b8a055);border-radius:4px;height:100%;transition:width .3s ease;width:45%}.content-area{background:#fff;border-radius:16px;box-shadow:0 10px 40px #0000001a;min-height:600px;padding:40px}.content-title{color:#2d3748;font-size:32px;font-weight:700;margin-bottom:30px}.content-text{color:#4a5568;font-size:18px;line-height:1.7;margin-bottom:25px}.quiz-bot-section{display:flex;flex-direction:column;gap:20px;width:560px}.avatar-card,.quiz-bot-card{background:#fff;border-radius:16px;box-shadow:0 10px 40px #0000001a;padding:25px;text-align:center}.bot-avatar{border-radius:16px;box-shadow:0 8px 30px #0003;height:120px;margin:0 auto 20px;overflow:hidden;width:120px}.avatar-title,.bot-title{color:#2d3748;font-size:20px;font-weight:700;margin-bottom:15px}.bot-status{align-items:center;background:#f0fff4;border:1px solid #9ae6b4;border-radius:20px;color:#38a169;display:inline-flex;font-size:14px;font-weight:600;gap:8px;margin-bottom:20px;padding:8px 16px}.status-dot{background:#38a169;border-radius:50%;height:8px;width:8px}.quiz-interface{align-items:center;background:#f8fafc;border:2px dashed #e2e8f0;border-radius:12px;color:#4a5568;display:flex;flex-direction:column;font-style:italic;justify-content:center;min-height:200px;padding:20px}#pixel-streaming-viewport{background:linear-gradient(135deg,#2d3748,#4a5568);border-radius:12px;height:315px;overflow:hidden;position:relative;width:100%}.loading-container{align-items:center;background:#f8fafc;display:flex;flex-direction:column;justify-content:center;min-height:100vh}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #e5e7eb;border-radius:50%;border-top-color:#ff9500;height:40px;margin-bottom:16px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-container p{color:#6b7280;font-size:16px;margin:0}@media (max-width:1200px){.main-container{gap:20px;grid-template-columns:1fr}.quiz-bot-section,.timer-section{width:100%}.nav-menu{gap:20px}}@media (max-width:768px){.nav-container{padding:0 15px}.nav-menu{display:none}.main-container{padding:15px}.content-area{padding:25px}}
/*# sourceMappingURL=main.6b9741bd.css.map*/