@import"https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap";.glass-card{background-color:#1a1a1a;border-radius:12px;border:1px solid #133a32;padding:20px;color:#e0e0e0;box-shadow:0 4px 12px #0003;transition:background-color .3s ease,border-color .3s ease}.glass-card:hover{background-color:#222;border-color:#23f0cb}.animated-notification{position:fixed;bottom:90px;left:50%;transform:translate(-50%);padding:12px 20px;border-radius:10px;font-weight:700;box-shadow:0 5px 15px #0000004d;z-index:3000;display:flex;align-items:center;gap:10px;font-size:14px;animation:slideIn .3s forwards}.animated-notification.exiting{animation:slideOut .3s forwards}.animated-notification.success{background:#23f0cbe6;color:#121212}.animated-notification.error{background:#ff5252e6;color:#fff}.notification-custom-icon{width:24px;height:24px;object-fit:contain}@keyframes slideIn{0%{transform:translate(-50%,50px);opacity:0}to{transform:translate(-50%);opacity:1}}@keyframes slideOut{0%{transform:translate(-50%);opacity:1}to{transform:translate(-50%,50px);opacity:0}}.earn-refer-card{padding:20px}.earn-refer-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:center}.stat-item{text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}.stat-label{font-size:14px;color:#e0e0e0}.stat-value{font-size:28px;font-weight:700;color:#fff}.icon-buttons-container{display:flex;gap:15px}.icon-button{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 20px;background-color:#23f0cb;color:#121212;border:none;border-radius:20px;font-size:16px;font-weight:700;cursor:pointer;transition:opacity .3s}.icon-button:hover{opacity:.9}.withdraw-button{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 20px;background-color:#23f0cb;color:#121212;border:none;border-radius:20px;font-size:16px;font-weight:700;cursor:pointer;transition:opacity .3s}.withdraw-button:hover{opacity:.9}.modal-backdrop{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease}.modal-backdrop.exiting{animation:fadeOut .3s ease forwards}.modal-content-wrapper{position:relative;animation:scaleIn .3s cubic-bezier(.175,.885,.32,1.275) forwards;width:auto;display:flex;justify-content:center}.modal-backdrop.exiting .modal-content-wrapper{animation:scaleOut .3s cubic-bezier(.6,-.28,.735,.045) forwards}.modal-content-base{max-height:90vh;overflow-y:auto;position:relative}.modal-close-btn{position:absolute;top:10px;right:10px;padding:8px;background:#23f0cb;border:none;cursor:pointer;z-index:1010;border-radius:50%;transition:background-color .2s ease;line-height:0}.modal-close-btn:hover{background-color:#ffffff26}.modal-close-btn>svg{width:18px;height:18px;color:#000;display:block}.info-modal-content{width:100%;max-width:450px}.info-modal-header{display:flex;justify-content:flex-start;align-items:center;margin-bottom:20px}.info-modal-header h3{margin:0;color:#fff;padding-right:48px}.info-modal-body{max-height:70vh;overflow-y:auto;line-height:1.6}.modal-options{display:flex;flex-direction:column;gap:15px}.modal-option{width:100%;padding:15px;background-color:#ffffff1a;color:#e0e0e0;border:1px solid rgba(255,255,255,.2);border-radius:10px;font-size:16px;cursor:pointer;transition:background-color .3s;text-align:left}.modal-option:hover{background-color:#fff3}.contact-details{display:flex;flex-direction:column;gap:20px}.contact-item{display:flex;align-items:flex-start;gap:15px}.contact-icon-wrapper{flex-shrink:0;color:#23f0cb;background-color:#23f0cb1a;border-radius:50%;width:44px;height:44px;display:flex;align-items:center;justify-content:center}.contact-icon-wrapper svg{width:24px;height:24px}.contact-text-wrapper{display:flex;flex-direction:column;gap:2px}.contact-label{font-size:14px;font-weight:700;color:#fff}.contact-value{font-size:16px;color:#e0e0e0;text-decoration:none;line-height:1.5;word-break:break-word;transition:color .2s}.contact-value:hover{color:#23f0cb;text-decoration:underline}.social-links{display:flex;justify-content:center;gap:20px;margin-top:20px}.social-links a{color:#23f0cb;font-size:28px}.faq-item{margin-bottom:15px}.faq-item strong{color:#23f0cb}.info-section-container{margin-top:20px}.info-section-container h3{margin-top:0;color:#fff;font-size:18px}.info-links{display:flex;flex-direction:column;gap:15px;margin-top:15px}.info-link{background:none;border:none;padding:0;font-family:inherit;display:flex;align-items:center;gap:15px;width:100%;text-align:left;color:#e0e0e0;text-decoration:none;font-size:16px;cursor:pointer;transition:color .3s}.info-link:hover{color:#23f0cb}.ad-modal-content{width:90%;max-width:350px;text-align:center;padding:40px 20px 20px;position:relative}.ad-modal-content h2{margin-top:0;color:#fff;font-size:24px}.ad-modal-content p{margin-bottom:20px;font-size:16px;color:#e0e0e0}.modal-button{width:100%;padding:15px;background-color:#23f0cb;color:#121212;border:none;border-radius:10px;font-size:16px;font-weight:700;cursor:pointer;transition:opacity .3s;margin-top:20px}.modal-button:hover{opacity:.9}.ad-card{padding:0;text-align:center;position:relative;cursor:pointer;overflow:hidden;transition:transform .3s ease;animation:pulse 2s infinite}.ad-card:hover{transform:scale(1.02)}.ad-image{width:100%;height:auto;border-radius:15px;display:block}.ad-play-icon-container{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;background:#fff3;border-radius:50%;padding:10px;animation:pulse 2s infinite}.ad-click-icon{width:30px;height:40px;transition:transform .1s ease}.ad-click-icon:active{transform:scale(.9)}@keyframes pulse{0%{box-shadow:0 0 #23f0cb66}70%{box-shadow:0 0 0 20px #23f0cb00}to{box-shadow:0 0 #23f0cb00}}.status-settings-modal-content{width:90%;max-width:450px;padding:50px 25px 25px;border-radius:12px;box-shadow:0 8px 25px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;position:relative;z-index:1}.modal-header h3{margin:0;color:#fff;font-size:18px;font-weight:600}.modal-options{display:flex;flex-direction:column;gap:12px}.modal-option{width:100%;padding:14px 18px;background-color:#2a2a2a;color:#e0e0e0;border:1px solid #444;border-radius:8px;font-size:15px;font-weight:500;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease;text-align:left}.modal-option:hover{background-color:#333;border-color:#555;color:#fff}.modal-option:active{background-color:#3a3a3a}.notification-icon-container{cursor:pointer;z-index:10;position:relative;margin-top:-5px}.notification-image{margin-top:-10px;width:44px;height:44px}.notification-badge{margin-top:-10px;position:absolute;top:10px;right:-5px;background-color:#23f0cb;color:#121212;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.notification-modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;justify-content:center;align-items:flex-start;z-index:2000;padding-top:5vh;animation:fadeIn .3s ease-in-out}.notification-modal-content{width:90%;max-width:450px;max-height:80vh;overflow-y:auto;z-index:2001;animation:slideDown .4s cubic-bezier(.25,.46,.45,.94);position:relative;overflow:hidden}.notification-modal-backdrop.exiting{animation:fadeOut .3s ease-in-out forwards}.notification-modal-content.exiting{animation:slideUp .3s ease-in-out forwards}.notification-view{animation:enterView .3s forwards}.notification-view.exiting{animation:exitView .3s forwards}.notification-modal-content h2{color:#fff;margin-top:0}.notification-modal-content ul{list-style:none;padding:0;margin:20px 0}.notification-modal-content li{padding:10px 0;border-bottom:1px solid rgba(255,255,255,.2)}.notification-modal-content li.read{opacity:.6}.notification-modal-content button{background:#23f0cb;border:none;padding:10px 20px;border-radius:5px;color:#121212;font-weight:700;cursor:pointer}.notification-modal-content li.clickable{cursor:pointer;font-weight:700}.notification-modal-content .back-button{background:transparent;border:1px solid #23f0cb;color:#23f0cb;margin-top:10px}@keyframes slideDown{0%{transform:translateY(-100vh)}to{transform:translateY(0)}}@keyframes slideUp{0%{transform:translateY(0)}to{transform:translateY(-100vh)}}@keyframes enterView{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}@keyframes exitView{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-50px)}}.header-card{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;margin-top:0}.header-left{display:flex;align-items:center;gap:15px}.header-logo{height:40px;width:auto}.welcome-message{font-size:20px;font-weight:700;color:#fff;margin:0}.header-right{display:flex;align-items:center;gap:15px}.header-right .profile-pic{width:40px;height:40px;border-radius:50%;cursor:pointer;border:2px solid #23f0cb}.profile-pic-placeholder{width:40px;height:40px;border-radius:50%;background-color:#fff3;border:2px solid #23f0cb}.winners-modal-content{width:90%;max-width:400px;padding:20px}.winners-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.winners-modal-header h3{margin:0;color:#fff}.winners-list{list-style:none;padding:0;margin:0;max-height:60vh;overflow-y:auto}.winner-item{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.1);gap:100px}.winner-item:last-child{border-bottom:none}.winner-info{display:flex;align-items:center;gap:12px}.winner-profile-pic{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid #23f0cb}.winner-prize{font-weight:700;color:#23f0cb}.more-winners-text{text-align:center;margin-top:15px;font-style:italic;color:#a0a0a0}.prizes-display-container{padding:20px}.tabs-container{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.2);margin-bottom:20px}.tab-buttons-wrapper{display:flex;position:relative}.tab-button{position:relative;background:none;border:none;color:#e0e0e0;padding:10px 20px;font-size:16px;cursor:pointer;transition:color .3s}.tab-button.active{color:#23f0cb;font-weight:700}.active-tab-indicator{position:absolute;bottom:-1px;left:0;height:2px;background:#23f0cb;transition:transform .3s,width .3s}.rewards-page-link{font-size:12px;font-weight:700;color:#23f0cb;text-decoration:none;padding:6px 12px;border-radius:16px;border:1px solid #23f0cb;transition:all .3s ease;margin-bottom:10px}.rewards-page-link:hover{background-color:#23f0cb;color:#121212;box-shadow:0 0 10px #23f0cb}.prize-content{text-align:center;animation:fadeIn .3s forwards}.prize-content.exiting{animation:fadeOut .3s forwards}.prize-image{width:100%;border-radius:10px;margin-bottom:15px}.prize-description{font-size:18px;margin-bottom:20px}.view-winners-button{padding:12px 25px;background-color:transparent;color:#23f0cb;border:1px solid #23f0cb;border-radius:20px;font-size:16px;font-weight:700;cursor:pointer;transition:background-color .3s,color .3s}.view-winners-button:hover{background-color:#23f0cb;color:#121212}.prize-countdown{margin:25px auto;padding:15px;background:#0003;border-radius:12px;border:1px solid rgba(35,240,203,.2);text-align:center;max-width:300px}.countdown-header{display:flex;align-items:center;justify-content:center;gap:8px;font-size:.9em;color:#e0e0e0;margin-bottom:10px;text-transform:uppercase;letter-spacing:1px}.countdown-icon{color:#23f0cb;animation:pulse-icon 4s infinite ease-in-out}.countdown-timer{display:flex;align-items:baseline;justify-content:center;gap:0px;font-family:"monospace",Courier New;color:#23f0cb;text-shadow:0 0 8px rgba(35,240,203,.7)}.countdown-segment{display:flex;align-items:baseline;background:#0003;padding:1px 5px;border-radius:5px}.countdown-value{font-size:2em;font-weight:700;line-height:1}.countdown-segment:last-of-type .countdown-value{animation:tick 1s ease-in-out infinite}.countdown-label{font-size:.8em;font-weight:400;margin-left:3px;color:#a0a0a0}.countdown-separator{font-size:1.5em;font-weight:700;padding:0;animation:pulse-colon 2s infinite}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-20px)}}@keyframes tick{50%{opacity:.7;transform:scale(.95)}}@keyframes pulse-colon{50%{opacity:.5}}@keyframes pulse-icon{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}@media (max-width: 400px){.prizes-display-container{padding:15px}.tab-button{padding:8px 12px;font-size:14px}.prize-description{font-size:16px}.view-winners-button{padding:10px 20px;font-size:14px}}.home-register-card{text-align:center}.home-register-content h3{margin-top:0;font-size:18px;color:#fff;line-height:1.5}.home-register-button{width:100%;padding:15px;background-color:#23f0cb;color:#121212;border:none;border-radius:10px;font-size:16px;font-weight:700;cursor:pointer;transition:opacity .3s;margin-top:15px}.home-register-button:hover{opacity:.9}.admin-login-content{width:90%;max-width:400px;position:relative;text-align:center;padding:40px 20px 20px}.admin-login-content h2{margin-top:0;color:#fff}.admin-password-input{width:100%;padding:12px;margin:20px 0;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#0003;color:#e0e0e0;font-size:16px;box-sizing:border-box}.admin-login-button{width:100%;padding:15px;background-color:#23f0cb;color:#121212;border:none;border-radius:10px;font-size:16px;font-weight:700;cursor:pointer;transition:opacity .3s}.admin-login-button:hover{opacity:.9}.error-message{color:#ff5252;margin-top:-10px;margin-bottom:15px;font-size:14px}.home-page{display:flex;flex-direction:column;gap:20px;position:relative;min-height:100vh;padding-bottom:20px}.static-background{background-color:#121212}.background-container{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;overflow:hidden}.home-background{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center}.background-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0006;z-index:1}.home-content{position:relative;z-index:2;display:flex;flex-direction:column;gap:20px}.profile-picture-card{padding:10px}.profile-picture-container{display:flex;justify-content:center;align-items:center}.profile-main-picture{width:120px;height:120px;border-radius:50%;border:4px solid #23f0cb}.username-id-card{text-align:center}.username-id-card h2{margin:0;font-size:28px;color:#fff}.username-id-card p{margin:5px 0 0;font-size:14px;color:#e0e0e0}.status-card{padding:15px 20px}.status-content{display:flex;justify-content:space-between;align-items:center;font-size:16px}.status-badge{padding:5px 15px;border-radius:15px;font-weight:700}.status-badge.student{background-color:#0096ff33;color:#0096ff}.status-badge.admin{background-color:#ffc10733;color:#23f0cb}.status-badge.pending{background-color:#fff3;color:#e0e0e0}.status-badge.expired{background-color:#ff525233;color:#ff5252}.achievements-card h3{margin-top:0;color:#fff;font-size:18px}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:20px;margin-top:15px}.achievement-item{display:flex;flex-direction:column;align-items:center;text-align:center;color:#23f0cb}.achievement-item span{margin-top:10px;font-size:12px;color:#e0e0e0}.referrals-card h3{margin-top:0;color:#fff;font-size:18px}.referrals-list{list-style:none;padding:0;margin-top:15px}.referral-item{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.2)}.referral-item:last-child{border-bottom:none}.referral-status{font-size:12px;padding:3px 10px;border-radius:10px}.referral-status.joined{background-color:#0096ff33;color:#0096ff}.referral-status.completed-first-lesson{background-color:#ffc10733;color:#23f0cb}.referral-status.awarded{background-color:#00c85333;color:#00c853}.subscription-card h3{margin-top:0;color:#fff;font-size:18px}.subscription-info{margin:15px 0}.subscription-info p{display:flex;justify-content:space-between;margin:10px 0}.subscription-info span{font-weight:700;color:#23f0cb}.renew-button{width:100%;padding:15px;background-color:#23f0cb;color:#121212;border:none;border-radius:10px;font-size:16px;font-weight:700;cursor:pointer;transition:opacity .3s}.renew-button:hover{opacity:.9}.profile-page{display:flex;flex-direction:column;gap:20px}.ticket-balance-card{text-align:center;background:linear-gradient(135deg,#23f0cb,#1acba2)}.ticket-balance-content p{margin:0;font-size:16px;color:#121212;font-weight:500}.ticket-balance-content h2{margin:10px 0 0;font-size:48px;color:#fff;text-shadow:0px 2px 4px rgba(0,0,0,.2)}.reward-item-card{padding:10px}.reward-item-image{width:100%;height:100px;object-fit:cover;border-radius:10px}.reward-item-info{margin:10px 0}.reward-item-info h5{margin:0;font-size:14px;color:#fff}.reward-item-info p{margin:5px 0 0;font-size:12px;color:#23f0cb;font-weight:700}.redeem-button{width:100%;padding:8px;background-color:#23f0cb;color:#121212;border:none;border-radius:8px;font-size:14px;font-weight:700;cursor:pointer;transition:opacity .3s}.redeem-button:hover{opacity:.9}.reward-catalog-container{margin-top:20px}.reward-catalog-container h3{margin-top:0;color:#fff;font-size:18px}.reward-catalog-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-top:15px}@media (min-width: 768px){.reward-catalog-grid{grid-template-columns:repeat(4,1fr)}}.rewards-page{display:flex;flex-direction:column;gap:20px}.course-card{display:flex;flex-direction:column;height:100%;width:100%;padding:10px;align-items:center}.course-card h4{margin-top:0;font-size:18px;color:#fff}.course-description{flex-grow:1;font-size:14px;line-height:1.5;margin:10px 0}.course-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto}.course-price{font-size:20px;font-weight:700;color:#23f0cb}.syllabus-link{color:#23f0cb;text-decoration:none;font-weight:700;font-size:14px}.syllabus-link:hover{text-decoration:underline}.course-icon{width:60px;height:60px;object-fit:contain;margin-bottom:10px}.course-list-container{margin-top:20px;padding-right:20px}.course-list-container h3{margin-top:0;color:#fff;font-size:18px}.course-list-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:40px;margin-top:15px}@media (min-width: 768px){.course-list-grid{grid-template-columns:repeat(2,1fr)}}.registration-button{width:100%;padding:18px;background-color:#23f0cb;color:#121212;border:none;border-radius:10px;font-size:18px;font-weight:700;cursor:pointer;transition:opacity .3s;margin-top:20px}.registration-button:hover{opacity:.9}.learn-page{display:flex;flex-direction:column;gap:20px;padding-bottom:80px}.announcement-banner{text-align:center;background:linear-gradient(135deg,#0096ff,#00c853)}.announcement-banner h3{margin-top:0;color:#fff;font-size:20px}.announcement-banner p{margin-bottom:0;color:#fff}.language-selector-card{display:flex;justify-content:space-between;align-items:center}.language-selector-card label{font-size:16px;color:#fff}.language-select{padding:10px;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#ffffff1a;color:#e0e0e0;font-size:16px}.version-info-container{text-align:center;margin-top:40px;color:#e0e0e0;font-size:12px;opacity:.7}.settings-page h2{margin-top:0;color:#fff;font-size:24px}.settings-list{display:flex;flex-direction:column;gap:20px;margin-top:20px}.learn-app-container{min-height:100vh;display:flex;flex-direction:column}.learn-main-content{flex-grow:2;padding:2px 2px 80px;overflow-y:auto}.coming-soon-modal-content{background:#2a2a2a;border:1px solid rgba(255,255,255,.2);border-radius:15px;width:90%;max-width:400px;text-align:center;padding:40px 20px 20px;position:relative}.coming-soon-modal-content h2{margin-top:0;color:#fff;font-size:24px}.coming-soon-modal-content p{margin-bottom:20px;font-size:16px;color:#e0e0e0}.clock-icon{width:35px;height:auto;margin-bottom:10px;animation:rotateClock 2s ease-in-out infinite}@keyframes rotateClock{0%{transform:rotate(0)}25%{transform:rotate(10deg)}75%{transform:rotate(-10deg)}to{transform:rotate(0)}}.course-details-page h2{color:#fff;font-size:24px}.chapters-list{display:flex;flex-direction:column;gap:15px;margin-top:20px}.chapter-card{display:flex;justify-content:space-between;align-items:center;padding:15px;cursor:pointer}.chapter-card.locked{cursor:not-allowed;opacity:.6}.chapter-title{font-size:16px}.status-free{background-color:#23f0cb33;color:#23f0cb;padding:5px 10px;border-radius:12px;font-size:12px;font-weight:700}.status-locked{background-color:#ff525233;color:#ff5252;padding:5px 10px;border-radius:12px;font-size:12px;font-weight:700}.lesson-list-page h2{color:#fff;font-size:24px}.lessons-list{display:flex;flex-direction:column;gap:15px;margin-top:20px}.lesson-card{padding:15px;cursor:pointer}.lesson-title{font-size:16px}.lesson-player-nav-container{position:fixed;bottom:0;left:0;right:0;z-index:1000}.lesson-player-nav{display:flex;justify-content:space-around;align-items:center;height:60px;background-color:rgba(var(--bg-color-rgb),.85);border-top:1px solid var(--border-color);position:relative}.lesson-player-nav button{background:none;border:none;color:var(--text-color);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;flex:1;height:100%;font-size:12px;cursor:pointer;position:relative;z-index:1;transition:color .3s ease,transform .1s ease}.lesson-player-nav button:active{transform:scale(.95)}.lesson-player-nav button.active{color:var(--accent-color)}.progress-indicator-container{height:4px;background-color:var(--component-bg-color);width:100%}.progress-indicator-bar{height:100%;background-color:var(--accent-color);border-radius:0 2px 2px 0;transition:width .5s ease-out}.active-tab-pill{position:absolute;bottom:10%;transform:translateY(50%);left:0;height:50px;background-color:var(--accent-color);opacity:.4;border-radius:15px;z-index:0;transition:transform .3s cubic-bezier(.175,.885,.32,1.275),width .3s cubic-bezier(.175,.885,.32,1.275)}@media (max-width: 360px){.lesson-player-nav button span{display:none}}.lesson-notes{color:inherit}.lesson-notes h2{color:var(--header-color);margin-top:20px}.glossary-term{color:var(--accent-color);cursor:pointer;text-decoration:underline;text-decoration-style:dotted}.code-snippet-container pre{background:var(--code-bg-color)!important}.custom-audio-player-container,.pdf-viewer-container,.map-viewer-container,.model-viewer-container{background-color:var(--component-bg-color)}.lesson-image{max-width:100%;height:auto;border-radius:10px;margin:20px 0;opacity:1;transition:opacity .3s ease-in-out}.lesson-image.loading{opacity:0}.image-container{position:relative;min-height:100px}.image-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#ffffff1a;border-radius:10px;padding:20px;min-height:150px;border:1px dashed rgba(255,255,255,.2)}.reload-button{display:flex;align-items:center;gap:10px;background-color:#23f0cb;color:#121212;border:none;border-radius:8px;padding:10px 15px;cursor:pointer;margin-top:15px}.loading-spinner{border:4px solid rgba(255,255,255,.3);border-left-color:#23f0cb;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite}.video-container{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;max-width:100%;background:#000;border-radius:10px;margin:20px 0}.video-container iframe{position:absolute;top:0;left:0;width:100%;height:100%}.video-thumbnail-container{position:relative;cursor:pointer;border-radius:10px;overflow:hidden;margin:20px 0}.video-thumbnail-img{width:100%;display:block;transition:transform .3s ease}.video-thumbnail-container:hover .video-thumbnail-img{transform:scale(1.05)}.video-play-button{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transition:transform .3s ease,opacity .3s ease;opacity:.8}.video-thumbnail-container:hover .video-play-button{transform:translate(-50%,-50%) scale(1.1);opacity:1}.phet-simulation-container{position:relative;width:100%;height:500px;border-radius:10px;margin:20px 0;overflow:hidden}.phet-simulation-container iframe{width:100%;height:100%}.phet-preview{width:100%;height:100%;background-size:cover;background-position:center;position:relative}.phet-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#000000b3;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--text-color);padding:20px}.rotate-icon{width:180px;height:150px;margin-bottom:20px;opacity:.7;animation:gentle-rotate 3s ease-in-out infinite}.code-snippet-container{margin:20px 0;border-radius:10px;overflow:hidden;font-size:.9em}.code-snippet-container pre{background:var(--code-bg-color)!important;border-radius:10px!important;border:1px solid var(--border-color)!important}.timeline-container{position:relative;padding-left:30px;margin-left:20px}.timeline-container:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background-color:var(--timeline-border-color);border-radius:3px}.timeline-item{position:relative;margin-bottom:25px;animation:slideInFromLeft .5s ease-out forwards;opacity:0}.timeline-dot{position:absolute;left:-41px;top:4px;width:20px;height:20px;background-color:var(--bg-color);border:3px solid var(--timeline-border-color);border-radius:50%}.timeline-content h4{margin:0 0 5px;color:var(--header-color)}.timeline-content p{margin:0}.audio-player-container{margin:20px 0}.audio-player-container audio{width:100%}.glossary-modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:4000;animation:fadeIn .3s ease-in-out}.glossary-modal-backdrop.exiting{animation:fadeOut .3s ease-in-out forwards}.glossary-modal-content{padding:20px;max-width:80%;text-align:center;animation:scaleIn .3s ease-in-out}.glossary-modal-content.exiting{animation:scaleOut .3s ease-in-out forwards}.glossary-modal-content h3{margin-top:0;color:var(--header-color)}@keyframes gentle-rotate{0%,to{transform:rotate(0)}50%{transform:rotate(15deg)}}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}@keyframes scaleOut{0%{transform:scale(1);opacity:1}to{transform:scale(.8);opacity:0}}.custom-audio-player-container{background:#ffffff1a;border-radius:10px;padding:15px;margin:20px 0;transition:all .3s ease-in-out}.custom-audio-player-container.mini-player{position:fixed;bottom:75px;left:50%;transform:translate(-50%);width:90%;max-width:500px;z-index:1001;box-shadow:0 0 20px #00000080}.audio-title{margin:0 0 10px;font-weight:700}.controls-wrapper{display:flex;align-items:center;gap:15px}.play-pause-btn,.skip-btn{background-color:transparent;border:none;cursor:pointer;flex-shrink:0;padding:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;color:var(--text-color)}.play-pause-btn img{width:100%;height:100%;object-fit:contain}.time{font-size:.9em;min-width:40px;text-align:center}.progress-bar{flex-grow:1;-webkit-appearance:none;appearance:none;height:8px;border-radius:5px;outline:none;background:linear-gradient(to right,#23f0cb var(--progress-percent, 0%),rgba(255,255,255,.3) var(--progress-percent, 0%))}.progress-bar::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;background:#23f0cb;cursor:pointer;border-radius:50%;margin-top:-4px}.progress-bar::-moz-range-thumb{width:16px;height:16px;background:#23f0cb;cursor:pointer;border-radius:50%}.playback-speed{display:flex;gap:5px}.playback-speed button{background:transparent;border:1px solid var(--border-color);color:var(--text-color);border-radius:5px;padding:5px 8px;cursor:pointer}.playback-speed button.active{background-color:var(--accent-color);color:var(--bg-color);border-color:var(--accent-color)}.volume-control{display:flex;align-items:center;gap:5px}@media (max-width: 480px){.controls-wrapper{gap:10px}.volume-control,.playback-speed{display:none}}.image-slider-container{margin:20px 0}.slider-wrapper{position:relative;height:300px;overflow:hidden;border-radius:10px}.slide{position:absolute;width:100%;height:100%;opacity:0;transition:opacity .5s ease-in-out}.slide.active{opacity:1}.slide-image{width:100%;height:100%;object-fit:cover}.slide-caption{position:absolute;bottom:0;left:0;right:0;background:#00000080;color:#fff;padding:10px;text-align:center}.slider-control{position:absolute;top:50%;transform:translateY(-50%);background:#00000080;color:#fff;border:none;padding:10px;cursor:pointer;border-radius:50%}.slider-control.prev{left:10px}.slider-control.next{right:10px}.slider-control.fullscreen-btn{top:10px;right:10px;transform:none}.thumbnails-wrapper{display:flex;justify-content:center;margin-top:10px}.thumbnail{width:60px;height:40px;object-fit:cover;margin:0 5px;cursor:pointer;border-radius:5px;border:2px solid transparent;transition:border-color .3s}.thumbnail.active{border-color:var(--accent-color)}.fullscreen-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000e6;z-index:2000;display:flex;align-items:center;justify-content:center}.close-fullscreen{position:absolute;top:20px;right:20px;background:transparent;border:none;color:#fff;font-size:2rem;cursor:pointer}.zoom-controls{position:absolute;bottom:20px;left:50%;transform:translate(-50%);background:#00000080;border-radius:10px;padding:5px;display:flex;gap:10px}.zoom-controls button{background:transparent;border:none;color:#fff;font-size:1.5rem;cursor:pointer}.fullscreen-image-wrapper{width:100%;height:100%;overflow:hidden;cursor:grab}.fullscreen-image-wrapper img{width:100%;height:100%;object-fit:contain;transition:transform .3s}:root{--react-pdf-annotation-layer: 1;--annotation-unfocused-field-background: url("data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>");--input-focus-border-color: Highlight;--input-focus-outline: 1px solid Canvas;--input-unfocused-border-color: transparent;--input-disabled-border-color: transparent;--input-hover-border-color: black;--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 .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid selectedItem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert(100%);backdrop-filter:invert(100%)}}.annotationLayer{position:absolute;top:0;left:0;pointer-events:none;transform-origin:0 0;z-index:3}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg) translate(-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{position:absolute;width:100%;height:100%}.annotationLayer section{position:absolute;text-align:initial;pointer-events:auto;box-sizing:border-box;margin:0;transform-origin:0 0}.annotationLayer .linkAnnotation{outline:var(--link-outline)}.textLayer.selecting~.annotationLayer section{pointer-events:none}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{position:absolute;font-size:1em;top:0;left:0;width:100%;height:100%}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{opacity:.2;background:#ff0;box-shadow:0 2px 10px #ff0}.annotationLayer .textAnnotation img{position:absolute;cursor:pointer;width:100%;height:100%;top:0;left:0}.annotationLayer .textWidgetAnnotation :is(input,textarea),.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{background-image:var(--annotation-unfocused-field-background);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 .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input: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 .textWidgetAnnotation :is(input,textarea)[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled]{background:none;border:2px solid var(--input-disabled-border-color);cursor:not-allowed}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation.checkBox input:hover{border-radius:2px}.annotationLayer .textWidgetAnnotation :is(input,textarea):focus,.annotationLayer .choiceWidgetAnnotation select:focus{background:none;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-image:none;background-color:transparent}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:CanvasText;content:"";display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{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{position:absolute;font-size:calc(9px * var(--total-scale-factor));width:100%;min-width:calc(180px * var(--total-scale-factor));pointer-events:none}.annotationLayer .popup{position:absolute;max-width:calc(180px * var(--total-scale-factor));background-color:#ff9;box-shadow:0 calc(2px * var(--total-scale-factor)) calc(5px * var(--total-scale-factor)) #888;border-radius:calc(2px * var(--total-scale-factor));padding:calc(6px * var(--total-scale-factor));margin-left:calc(5px * var(--total-scale-factor));cursor:pointer;font:message-box;white-space:normal;word-wrap:break-word;pointer-events:auto}.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 rgba(51,51,51,1);margin-top:calc(2px * var(--total-scale-factor));padding-top:calc(2px * var(--total-scale-factor))}.annotationLayer .richText>*{white-space:pre-wrap;font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .highlightAnnotation,.annotationLayer .underlineAnnotation,.annotationLayer .squigglyAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .lineAnnotation svg line,.annotationLayer .squareAnnotation svg rect,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .caretAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .stampAnnotation,.annotationLayer .fileAttachmentAnnotation{cursor:pointer}.annotationLayer section svg{position:absolute;width:100%;height:100%;top:0;left:0}.annotationLayer .annotationTextContent{position:absolute;width:100%;height:100%;opacity:0;color:transparent;-webkit-user-select:none;user-select:none;pointer-events:none}.annotationLayer .annotationTextContent span{width:100%;display:inline-block}.pdf-reader-container{margin:20px 0;border:1px solid var(--border-color);border-radius:10px;overflow:hidden}.pdf-controls{display:flex;justify-content:center;align-items:center;gap:10px;padding:10px;background:var(--component-bg-color);border-bottom:1px solid var(--border-color)}.pdf-controls button,.pdf-controls a{background:transparent;border:none;color:var(--text-color);cursor:pointer}.pdf-document-wrapper{max-height:500px;overflow:auto}.pdf-reader-container.dark-mode .react-pdf__Page__canvas{filter:invert(1) hue-rotate(180deg)}.map-renderer-container{position:relative;width:100%;height:400px;margin:20px 0;border-radius:10px;overflow:hidden}.map-renderer-container.fullscreen{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:2000;border-radius:0}.map-controls{position:absolute;top:10px;right:10px;z-index:1}.map-controls button{background:#00000080;border:none;color:#fff;padding:10px;border-radius:50%;cursor:pointer}.model-renderer-container{width:100%;height:400px;margin:20px 0;border-radius:10px;overflow:hidden}@media (max-width: 768px){.model-renderer-container{height:300px}}.lesson-practice{display:flex;flex-direction:column;gap:20px}.practice-question-card{padding:20px}.question-header{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.question-text{font-size:1.1em;margin-bottom:15px;color:var(--text-color);line-height:1.5;flex-grow:1}.bookmark-btn{background:none;border:none;color:var(--text-color);cursor:pointer;font-size:1.2em}.bookmark-btn.bookmarked{color:var(--accent-color)}.question-image{width:100%;border-radius:8px;margin-bottom:15px}.options-container{display:flex;flex-direction:column;gap:10px}.option-button{width:100%;padding:12px;background:var(--component-bg-color);border:1px solid var(--border-color);color:var(--text-color);border-radius:8px;cursor:pointer;transition:all .2s ease-in-out;text-align:left}.option-button.correct{background-color:#00c853cc;color:#fff;border-color:#00c853}.option-button.incorrect{background-color:#ff5252cc;color:#fff;border-color:#ff5252}.fill-in-the-blank-input{width:100%;padding:12px;background:var(--component-bg-color);border:1px solid var(--border-color);color:var(--text-color);border-radius:8px;font-size:1em}.fill-in-the-blank-input.correct{border-color:#00c853}.fill-in-the-blank-input.incorrect{border-color:#ff5252}.question-footer{margin-top:20px}.footer-buttons{display:flex;justify-content:space-between;gap:10px}.show-answer-btn,.submit-button{padding:10px 15px;border:1px solid var(--accent-color);border-radius:8px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:8px}.show-answer-btn{background:transparent;color:var(--accent-color)}.submit-button{background-color:var(--accent-color);color:var(--bg-color)}.submit-button:disabled{background-color:#555;border-color:#555;cursor:not-allowed}.feedback-container{margin-top:15px;animation:fadeInUp .4s ease-out}.walkthrough-wrapper{overflow:hidden;transition:max-height .4s ease-in-out,opacity .4s ease-in-out;max-height:0;opacity:0}.walkthrough-wrapper.open{max-height:1000px;opacity:1;margin-top:15px}.feedback-message{font-weight:700;display:flex;align-items:center;gap:8px}.feedback-message.correct{color:#00c853}.feedback-message.incorrect{color:#ff5252}.explanation-box{margin-top:10px;padding:15px;background:#0003;border-left:4px solid var(--accent-color);border-radius:0 8px 8px 0}.explanation-box img{width:100%;border-radius:8px;margin-top:10px}.matching-container{display:flex;justify-content:space-between;gap:20px;align-items:center}.matching-prompts,.matching-options{display:flex;flex-direction:column;gap:10px;flex:1}.matching-prompt,.matching-option{padding:12px;border-radius:8px;background:var(--component-bg-color);border:1px solid var(--border-color);min-height:40px;display:flex;align-items:center;justify-content:space-between}.matching-option{cursor:grab}.matching-option:active{cursor:grabbing}.matching-prompt.correct{border-color:#00c853}.matching-prompt.incorrect{border-color:#ff5252}.diagram-labeling-container{display:flex;flex-direction:column;gap:20px}.diagram-image-wrapper{position:relative;width:100%;max-width:500px;margin:0 auto}.diagram-image-wrapper img{width:100%;border-radius:8px}.diagram-hotspot{width:30px;height:30px;border-radius:50%;background-color:#23f0cbb3;border:2px solid white;display:flex;align-items:center;justify-content:center;transition:background-color .3s,border-color .3s}.hotspot-placeholder{color:#fff;font-weight:700}.placed-label{font-size:.8em;font-weight:700;color:var(--bg-color)}.diagram-labels-pool{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;padding:10px;border:1px dashed var(--border-color);border-radius:8px;min-height:50px}.diagram-label{padding:8px 12px;border-radius:8px;background:var(--component-bg-color);cursor:grab}.diagram-label:active{cursor:grabbing}.diagram-hotspot.correct{background-color:#00c853b3;border-color:#00c853}.diagram-hotspot.incorrect{background-color:#ff5252b3;border-color:#ff5252}.walkthrough-btn{background-color:transparent;color:#f0cb23;border:1px solid #f0cb23;padding:10px 15px;border-radius:8px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:8px}.worked-example-container{margin-top:20px;border:1px solid var(--border-color);border-radius:8px;padding:15px}.walkthrough-step{min-height:100px;position:relative;overflow:hidden}.step-content{position:absolute;width:100%;animation-duration:.3s;animation-fill-mode:forwards}.step-content.enter-next{animation-name:slideInFromRight}.step-content.enter-prev{animation-name:slideInFromLeft}.step-content.exit-next{animation-name:slideOutToLeft}.step-content.exit-prev{animation-name:slideOutToRight}.step-description{line-height:1.6}.step-image{width:100%;border-radius:8px;margin-top:10px}.walkthrough-navigation{display:flex;justify-content:space-between;align-items:center;margin-top:15px;border-top:1px solid var(--border-color);padding-top:10px}.walkthrough-navigation button{background:transparent;color:var(--accent-color);border:1px solid var(--accent-color);border-radius:8px;padding:8px 12px;cursor:pointer;display:flex;align-items:center;gap:5px}.walkthrough-navigation button:disabled{opacity:.5;cursor:not-allowed}@keyframes slideInFromRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}@keyframes slideOutToLeft{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-50px)}}@keyframes slideOutToRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(50px)}}/**
* Copyright (c) 2014 The xterm.js authors. All rights reserved.
* Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
* https://github.com/chjj/term.js
* @license MIT
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*
* Originally forked from (with the author's permission):
*   Fabrice Bellard's javascript vt100 for jslinux:
*   http://bellard.org/jslinux/
*   Copyright (c) 2011 Fabrice Bellard
*   The original design remains. The terminal itself
*   has been extended to include xterm CSI codes, among
*   other features.
*/.xterm{cursor:text;position:relative;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;inset:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm .xterm-scroll-area{visibility:hidden}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility,.xterm .xterm-message{position:absolute;inset:0;z-index:10;color:transparent;pointer-events:none}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{text-decoration:double underline}.xterm-underline-3{text-decoration:wavy underline}.xterm-underline-4{text-decoration:dotted underline}.xterm-underline-5{text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{text-decoration:overline double underline}.xterm-overline.xterm-underline-3{text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}.code-snippet-question{display:flex;flex-direction:column;gap:10px;background-color:var(--component-bg-color);padding:10px;border-radius:8px;border:1px solid var(--border-color)}.code-editor-toolbar{display:flex;justify-content:flex-end;gap:10px;margin-bottom:5px}.code-editor-toolbar button{background:none;border:none;color:var(--text-color);font-size:1.1em;cursor:pointer;opacity:.7;transition:opacity .2s}.code-editor-toolbar button:hover{opacity:1}.editor-container{border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.terminal-and-feedback-container{margin-top:10px}.terminal-header{font-size:.8em;font-weight:700;text-transform:uppercase;color:#a0a0a0;margin-bottom:5px;padding:0 5px}.code-output-terminal{border-radius:8px;overflow:hidden;padding:10px;background-color:#1e1e1e;min-height:80px}.code-output-terminal .xterm-viewport{-webkit-user-select:text;user-select:text}.code-snippet-footer{display:flex;justify-content:space-between;align-items:center;margin-top:10px}.solution-indicator{font-style:italic;font-size:.9em;color:#f0cb23}.run-code-btn{background-color:#00c853;color:#fff;border:none;border-radius:8px;padding:12px 20px;display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:700;transition:background-color .2s;margin-left:auto}.run-code-btn:hover:not(:disabled){background-color:#00e05d}.run-code-btn:disabled{background-color:#555;cursor:not-allowed;opacity:.7}.run-code-btn .spinner{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.code-snippet-question.fullscreen{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:5000;background-color:var(--bg-color);padding:15px;box-sizing:border-box}.fullscreen .editor-container{flex-grow:1}.feedback-panel{margin-top:15px;border-radius:8px;padding:15px;border-left:5px solid;animation:fadeInUp .4s ease-out}.feedback-panel.success{background-color:#23f0cb1a;border-color:#23f0cb}.feedback-panel.error{background-color:#ff52521a;border-color:#ff5252}.feedback-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.feedback-header h4{margin:0;font-size:1.1em}.feedback-panel.success .feedback-header h4{color:#23f0cb}.feedback-panel.error .feedback-header h4{color:#ff5252}.feedback-body .feedback-message{line-height:1.6;white-space:pre-wrap;font-family:Courier New,Courier,monospace}.feedback-explanation{margin-top:15px}.feedback-explanation h5{margin-bottom:10px;color:var(--text-color)}.feedback-animation{font-size:24px;display:flex;align-items:center;justify-content:center}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.image-viewer-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;display:flex;justify-content:center;align-items:center;z-index:5000;animation:fadeIn .3s ease-in-out}.image-viewer-backdrop.exiting{animation:fadeOut .3s ease-in-out forwards}.image-viewer-content{width:100%;height:100%;display:flex;justify-content:center;align-items:center;overflow:hidden;position:relative;cursor:default;animation:scaleIn .3s cubic-bezier(.175,.885,.32,1.275) forwards}.image-viewer-content.exiting{animation:scaleOut .3s cubic-bezier(.6,-.28,.735,.045) forwards}.zoomable-image{max-width:90vw;max-height:90vh;object-fit:contain;cursor:zoom-in;transition:transform .3s cubic-bezier(.175,.885,.32,1.275)}.zoomable-image.zoomed{cursor:grab}.zoomable-image.dragging{cursor:grabbing}.image-viewer-controls{position:absolute;bottom:5%;background:#23f0cbcc;padding:10px 15px;border-radius:25px;display:flex;gap:15px;z-index:10}.image-viewer-controls button{background:none;border:none;color:var(--bg-color);font-size:24px;cursor:pointer}.image-viewer-close{position:absolute;top:10px;right:10px;background:transparent;border:none;cursor:pointer;z-index:10;padding:10px;border-radius:50%;transition:background-color .2s ease}.image-viewer-close:hover{background-color:#0003}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes scaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}.lesson-quiz{display:flex;flex-direction:column;align-items:center;width:100%;font-family:inherit;font-size:inherit;box-sizing:border-box;perspective:1000px}.lesson-quiz button,.lesson-quiz input{font-family:inherit;font-size:1em}.quiz-intro-card,.quiz-results-card,.quiz-question-card-wrapper{width:100%;max-width:500px;box-sizing:border-box;text-align:center}.quiz-question-card{padding:clamp(20px,5vw,30px);width:100%;height:100%;transform-style:preserve-3d;transition:transform .6s}.quiz-question-card-wrapper{animation-duration:.6s;animation-fill-mode:forwards}.quiz-question-card-wrapper.enter{animation-name:flipIn}.quiz-question-card-wrapper.exit{animation-name:flipOut}.quiz-intro-card h2,.quiz-results-card h2{margin-top:0;color:var(--accent-color)}.score-text{font-size:1.1em}.score-display{margin:10px 0;font-size:clamp(2.5em,8vw,3em);font-weight:700;color:var(--accent-color)}.results-actions{display:flex;flex-direction:column;gap:15px;margin-top:20px}.start-quiz-button,.results-button,.next-question-button,.option-button{padding:15px;border-radius:12px;border:1px solid transparent;cursor:pointer;transition:all .2s ease-in-out;font-weight:700}.next-question-button{margin-top:10px}.start-quiz-button,.next-question-button,.results-button.review{background-color:var(--accent-color);color:var(--bg-color);border-color:var(--accent-color)}.next-question-button:disabled{background-color:#555;border-color:#555;cursor:not-allowed;opacity:.7}.results-button.retry-incorrect{background-color:transparent;border:1px solid var(--accent-color);color:var(--accent-color)}.results-button{display:flex;align-items:center;justify-content:center;gap:10px}.quiz-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;font-size:.9em;color:#a0a0a0}.quiz-timer{color:var(--accent-color);font-weight:700;font-size:1.1em}.time-bar-container{width:100%;height:6px;background-color:#fff3;border-radius:6px;margin-bottom:20px;overflow:hidden}.time-bar{height:100%;background-color:var(--accent-color);border-radius:6px;transition-property:width}.question-image{width:100%;max-height:200px;object-fit:cover;border-radius:8px;margin-bottom:15px;cursor:zoom-in}.question-text{font-size:1.2em;margin-bottom:20px;color:var(--text-color);line-height:1.5}.multi-select-prompt{font-style:italic;color:#a0a0a0;margin-top:-15px;margin-bottom:15px;font-size:.9em}.options-container{display:grid;gap:10px}.options-container.image-choice,.options-container.multi-image-choice{grid-template-columns:repeat(2,1fr)}.option-button{width:100%;background:var(--component-bg-color);border:1px solid var(--border-color);color:var(--text-color);text-align:left;display:flex;justify-content:space-between;align-items:center}.option-button:hover{border-color:var(--accent-color)}.option-button.selected{background-color:var(--accent-color);color:var(--bg-color);border-color:var(--accent-color)}.option-button.correct{background-color:#00c853cc;border-color:#00c853;color:#fff}.option-button.incorrect{background-color:#ff5252cc;border-color:#ff5252;color:#fff}.option-icon{font-size:1.5em}.image-option-content{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;width:100%}.image-option-content img{width:100%;height:100px;object-fit:cover;border-radius:5px}.zoom-icon-button{position:absolute;top:5px;right:5px;background:#0009;color:#fff;border:none;border-radius:50%;width:28px;height:28px;font-size:1em;display:flex;align-items:center;justify-content:center;padding:0}.short-answer-input{width:100%;padding:12px;background:var(--component-bg-color);border:1px solid var(--border-color);color:var(--text-color);border-radius:8px;font-size:1em;box-sizing:border-box}.explanation-box{margin-top:20px;padding:15px;background:#0003;border-radius:8px;border-left:4px solid var(--accent-color);text-align:left;animation:fadeIn .4s ease-out}.time-up-message{color:#ff5252;font-weight:700;display:flex;align-items:center;gap:10px}.explanation-image{width:100%;border-radius:8px;margin-top:10px;cursor:pointer;max-height:150px;object-fit:cover}.placeholder-text{color:#e0e0e0;text-align:center;margin-top:20px}@keyframes flipIn{0%{opacity:0;transform:scale(.9) rotateY(-90deg)}to{opacity:1;transform:scale(1) rotateY(0)}}@keyframes flipOut{0%{opacity:1;transform:scale(1) rotateY(0)}to{opacity:0;transform:scale(.9) rotateY(90deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@font-face{font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,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) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.22"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}.lesson-shorts-container{display:flex;flex-direction:column;gap:20px}.short-note-card-wrapper{animation:fadeInUp .5s ease-out forwards;opacity:0}.short-note-card{padding:20px;display:flex;flex-direction:column;gap:15px;background-color:var(--component-bg-color);border:1px solid var(--border-color);color:var(--text-color)}.short-note-header{display:flex;align-items:center;gap:12px}.short-note-icon{font-size:22px;color:var(--accent-color)}.short-note-title{font-size:1.1em;font-weight:700;color:var(--header-color);margin:0}.short-note-content{font-size:1em;line-height:1.6;margin:0}.card-type-formula .short-note-content{font-family:Courier New,Courier,monospace;font-weight:700;font-size:1.2em;color:var(--accent-color)}.code-snippet-wrapper{-webkit-user-select:none;user-select:none;pointer-events:none;border-radius:8px;overflow:hidden}.short-note-image{width:100%;border-radius:8px}.list-card-content ul{list-style-type:none;padding-left:0;margin:0}.list-card-content li{padding:5px 0}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.lesson-resources{display:flex;flex-direction:column;gap:15px}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px}.search-bar{display:flex;align-items:center;background:var(--component-bg-color);padding:8px 12px;border-radius:20px;flex-grow:1;color:var(--text-color)}.search-bar input{background:transparent;border:none;color:var(--text-color);margin-left:8px;outline:none;width:100%}.view-toggle button{background:none;border:none;color:var(--text-color);font-size:20px;cursor:pointer}.view-toggle button.active{color:var(--accent-color)}.filter-container{display:flex;gap:10px;margin-bottom:10px;flex-wrap:wrap}.filter-btn{background:var(--component-bg-color);color:var(--text-color);border:1px solid var(--border-color);padding:8px 15px;border-radius:20px;cursor:pointer;transition:all .2s ease-in-out}.filter-btn.active{background:var(--accent-color);color:var(--bg-color);border-color:var(--accent-color)}.resources-list{display:grid;grid-template-columns:1fr;gap:15px}.resources-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.resource-card{display:flex;flex-direction:column;justify-content:space-between;padding:15px;transition:all .2s ease-in-out;position:relative;animation:popIn .4s ease-out forwards}.resource-card.primary-resource{border:2px solid transparent;animation:pulse-border 2s infinite,popIn .4s ease-out forwards}.card-content{display:flex;align-items:center;gap:15px;margin-bottom:15px}.resource-preview{width:60px;height:60px;flex-shrink:0;position:relative}.viewed-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#0006;color:#fff;display:flex;align-items:center;justify-content:center;font-size:24px;border-radius:8px;z-index:2}.preview-image{width:100%;height:100%;object-fit:cover;border-radius:8px}.icon-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:#ffffff1a;border-radius:8px;font-size:24px}.resource-details h4{margin:0 0 5px;color:var(--text-color)}.star-rating{display:flex;gap:3px;cursor:pointer;color:var(--border-color)}.star-rating .rated{color:#ffc107}.card-actions{display:flex;justify-content:flex-end;gap:10px}.card-actions .action-btn{background-color:transparent;color:var(--accent-color);border:1px solid var(--accent-color);padding:8px 15px;border-radius:20px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;text-decoration:none;transition:all .2s ease-in-out}.card-actions .action-btn svg{stroke:currentColor}.card-actions .action-btn:hover,.card-actions .action-btn.play,.card-actions .action-btn.bookmark.bookmarked{background-color:var(--accent-color);color:var(--bg-color)}.resources-grid .resource-card{align-items:center;padding:1px 1px 10px}.resources-grid .start-here-badge{top:5px;right:5px}.resources-grid .card-content{flex-direction:column;text-align:center}.resources-grid .resource-details{margin-top:10px}.resources-grid .star-rating{justify-content:center}.resources-grid .card-actions{width:100%}.resources-grid .action-btn{flex-grow:1;justify-content:center}.resources-grid .action-btn.bookmark{flex-grow:0;padding:8px 10px}.video-player-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;display:flex;align-items:center;justify-content:center;z-index:5000;animation:fadeIn .3s ease-in-out}.video-player-overlay.exiting{animation:fadeOut .3s ease-in-out forwards}.video-player-container{width:90%;max-width:800px}.close-video-btn{position:absolute;top:20px;right:20px;background:none;border:none;color:#fff;font-size:24px;cursor:pointer}.skeleton-card{background-color:var(--component-bg-color);border-radius:15px;padding:15px;animation:pulse 1s infinite ease-in-out}.skeleton-image{height:120px;background-color:#ffffff1a;border-radius:8px;margin-bottom:10px}.skeleton-text{height:20px;background-color:#ffffff1a;border-radius:4px;margin-bottom:10px}.skeleton-button{height:30px;width:100px;background-color:#ffffff1a;border-radius:15px;margin-left:auto}.empty-state-container{text-align:center;padding:40px 20px}@keyframes pulse-border{0%{border-color:var(--accent-color)}70%{border-color:rgba(var(--accent-color-rgb),0)}to{border-color:var(--accent-color)}}@keyframes pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}@keyframes popIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.ai-modal-content{width:90%;max-width:500px;height:70vh;display:flex;flex-direction:column;position:relative;padding-top:40px}.ai-chat-window{flex-grow:1;overflow-y:auto;padding:15px;display:flex;flex-direction:column;gap:15px}.user-prompt{align-self:flex-end;background-color:var(--accent-color);color:var(--bg-color);padding:8px 12px;border-radius:15px 15px 0;max-width:80%}.ai-response{align-self:flex-start;background-color:var(--component-bg-color);padding:8px 12px;border-radius:15px 15px 15px 0;max-width:80%}.ai-prompt-options{padding:15px;display:flex;flex-wrap:wrap;gap:10px;border-top:1px solid var(--border-color);justify-content:center}.ai-prompt-options button{background-color:transparent;border:1px solid var(--accent-color);color:var(--accent-color);padding:8px 12px;border-radius:20px;cursor:pointer;transition:background-color .2s,color .2s}.ai-prompt-options button:hover{background-color:var(--accent-color);color:var(--bg-color)}.interactive-modal-content{width:90%;max-width:500px;text-align:center;position:relative;padding:40px 20px 20px}.interactive-modal-content h3{margin-top:0}.interactive-question{font-size:1.2rem;margin:20px 0}.interactive-options{display:flex;flex-direction:column;gap:10px}.interactive-option{padding:12px;border-radius:8px;border:1px solid var(--border-color);background-color:var(--component-bg-color);color:var(--text-color);cursor:pointer;transition:background-color .2s,border-color .2s}.interactive-option:hover{border-color:var(--accent-color);background-color:var(--hover-bg-color)}.interactive-option.correct{background-color:var(--accent-color);color:var(--bg-color);border-color:var(--accent-color)}.interactive-option.incorrect{background-color:#ff5252cc;border-color:#ff5252;color:#fff}.interactive-feedback{margin-top:20px;font-weight:700}.interactive-feedback.correct{color:var(--accent-color)}.interactive-feedback.incorrect{color:#ff5252}.navigator-modal-content{width:90%;max-width:500px;max-height:70vh;overflow-y:auto;position:relative;padding:40px 20px 20px}.navigator-modal-content h3{margin-top:0;margin-bottom:15px}.lesson-list{list-style:none;padding:0;margin:0}.lesson-list li{padding:12px 15px;border-radius:8px;cursor:pointer;transition:background-color .2s}.lesson-list li:hover{background-color:#ffffff1a}.lesson-list li.active{background-color:#23f0cb;color:#121212;font-weight:700}.display-modal-content{width:90%;max-width:350px;max-height:80vh;position:relative;display:flex;flex-direction:column;padding:40px 20px 20px}.option-group{margin-bottom:20px}.option-group h4{margin-top:0;margin-bottom:10px;color:#e0e0e0}.button-group button{flex-grow:1;padding:8px;border-radius:8px;border:1px solid rgba(255,255,255,.3);background-color:#ffffff1a;color:#fff;cursor:pointer}.button-group.theme-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:10px}.button-group button.active{background-color:#23f0cb;color:#121212;font-weight:700}.text-size-slider{-webkit-appearance:none;appearance:none;width:100%;height:8px;background:#fff3;border-radius:5px;outline:none;cursor:pointer}.text-size-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;background:var(--accent-color, #23f0cb);border-radius:50%;border:2px solid var(--bg-color, #121212);box-shadow:0 0 5px #00000080}.text-size-slider::-moz-range-thumb{width:20px;height:20px;background:var(--accent-color, #23f0cb);border-radius:50%;border:2px solid var(--bg-color, #121212);box-shadow:0 0 5px #00000080}.custom-font-select{position:relative}.font-select-trigger{width:100%;padding:12px;border-radius:8px;border:1px solid rgba(255,255,255,.3);background-color:#ffffff1a;color:#fff;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:16px}.font-select-trigger svg{transition:transform .3s}.font-select-trigger.open svg{transform:rotate(180deg)}.font-select-list{position:absolute;bottom:100%;left:0;right:0;background:var(--bg-color);border:1px solid var(--border-color);border-radius:8px;list-style:none;padding:5px;margin:0 0 10px;max-height:200px;overflow-y:auto;z-index:20;box-shadow:0 -5px 15px #0003;animation:slideUpFadeIn .3s ease-out}.font-select-item{padding:10px;border-radius:5px;cursor:pointer;color:var(--text-color);transition:background-color .2s,color .2s}.font-select-item:hover{background-color:var(--hover-bg-color)}.font-select-item.active{background-color:var(--accent-color);color:var(--bg-color);font-weight:700}@keyframes slideUpFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.flashcard-modal-content{width:90%;max-width:500px;height:70vh;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;background-color:transparent}.flashcard-container{width:80%;height:60%;perspective:1000px;cursor:pointer}.flashcard{width:100%;height:100%;position:relative;transform-style:preserve-3d;transition:transform .6s}.flashcard.flipped{transform:rotateY(180deg)}.flashcard-face{position:absolute;width:100%;height:100%;backface-visibility:hidden;display:flex;align-items:center;justify-content:center;text-align:center;border-radius:15px;font-size:1.5rem;padding:20px}.flashcard-front{background-color:var(--accent-color);color:var(--bg-color);border:1px solid var(--border-color)}.flashcard-back{background-color:var(--component-bg-color);color:var(--text-color);transform:rotateY(180deg);border:1px solid var(--border-color)}.flashcard-next-button{margin-top:20px;padding:10px 20px;background-color:var(--accent-color);color:var(--bg-color);border:none;border-radius:8px;font-weight:700;cursor:pointer;transition:opacity .2s}.flashcard-next-button:hover{opacity:.9}.lesson-player{--bg-color: #121212;--bg-color-rgb: 18, 18, 18;--text-color: #e0e0e0;--header-color: #23f0cb;--accent-color: #23f0cb;--accent-color-rgb: 35, 240, 203;--component-bg-color: rgba(255, 255, 255, .1);--border-color: rgba(255, 255, 255, .2);--hover-bg-color: rgba(255, 255, 255, .2);--code-bg-color: #1e1e1e;--timeline-border-color: var(--accent-color);--fab-bg-color: rgba(35, 240, 203, .8);--fab-text-color: #121212}.lesson-player.theme-light{--bg-color: #FFFFFF;--bg-color-rgb: 255, 255, 255;--text-color: #000000;--header-color: #005A9C;--accent-color: #00769c;--accent-color-rgb: 0, 118, 156;--component-bg-color: rgba(0, 0, 0, .05);--border-color: rgba(0, 0, 0, .2);--hover-bg-color: rgba(0, 0, 0, .1);--code-bg-color: #f5f2f0;--fab-bg-color: var(--accent-color);--fab-text-color: #FFFFFF}.lesson-player.theme-dark{--bg-color: #121212;--bg-color-rgb: 18, 18, 18;--text-color: #e0e0e0;--header-color: #23f0cb;--accent-color: #23f0cb;--accent-color-rgb: 35, 240, 203;--component-bg-color: rgba(255, 255, 255, .1);--border-color: rgba(255, 255, 255, .2);--hover-bg-color: rgba(255, 255, 255, .2);--code-bg-color: #1e1e1e;--fab-bg-color: rgba(35, 240, 203, .8);--fab-text-color: #121212}.lesson-player.theme-sepia{--bg-color: #fbf0d9;--bg-color-rgb: 251, 240, 217;--text-color: #5b4636;--header-color: #7d6a4a;--accent-color: #7d6a4a;--accent-color-rgb: 125, 106, 74;--component-bg-color: rgba(0, 0, 0, .05);--border-color: rgba(0, 0, 0, .15);--hover-bg-color: rgba(0, 0, 0, .1);--code-bg-color: #e6dbc9;--fab-bg-color: var(--accent-color);--fab-text-color: #FFFFFF}.lesson-player.theme-solarized-light{--bg-color: #fdf6e3;--bg-color-rgb: 253, 246, 227;--text-color: #657b83;--header-color: #268bd2;--accent-color: #2aa198;--accent-color-rgb: 42, 161, 152;--component-bg-color: rgba(0, 43, 54, .05);--border-color: rgba(0, 43, 54, .2);--hover-bg-color: rgba(0, 43, 54, .1);--code-bg-color: #eee8d5;--fab-bg-color: var(--accent-color);--fab-text-color: #FFFFFF}.lesson-player.theme-solarized-dark{--bg-color: #002b36;--bg-color-rgb: 0, 43, 54;--text-color: #839496;--header-color: #268bd2;--accent-color: #2aa198;--accent-color-rgb: 42, 161, 152;--component-bg-color: rgba(255, 255, 255, .05);--border-color: rgba(255, 255, 255, .15);--hover-bg-color: rgba(255, 255, 255, .1);--code-bg-color: #00212b;--fab-bg-color: var(--accent-color);--fab-text-color: #002b36}.lesson-player.theme-nord{--bg-color: #2E3440;--bg-color-rgb: 46, 52, 64;--text-color: #D8DEE9;--header-color: #88C0D0;--accent-color: #8FBCBB;--accent-color-rgb: 143, 188, 187;--component-bg-color: #3B4252;--border-color: #4C566A;--hover-bg-color: #434C5E;--code-bg-color: #20242c;--fab-bg-color: var(--accent-color);--fab-text-color: #2E3440}.lesson-player.theme-matrix{--bg-color: #000000;--bg-color-rgb: 0, 0, 0;--text-color: #00FF41;--header-color: #00FF41;--accent-color: #00FF41;--accent-color-rgb: 0, 255, 65;--component-bg-color: rgba(0, 255, 65, .1);--border-color: rgba(0, 255, 65, .2);--hover-bg-color: rgba(0, 255, 65, .2);--code-bg-color: #020f02;--fab-bg-color: var(--accent-color);--fab-text-color: #000000}.lesson-player{background-color:var(--bg-color);color:var(--text-color);display:flex;flex-direction:column;height:100vh;overflow:hidden}.lesson-header{flex-shrink:0;padding:15px;display:flex;justify-content:space-between;align-items:center;background:var(--bg-color);border-bottom:1px solid var(--border-color);z-index:10;position:sticky;top:0}.lesson-header h1{font-size:1em;margin:0 10px;flex-grow:1;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-icon-btn{background:none;border:none;color:inherit;font-size:20px;cursor:pointer;min-width:40px}.lesson-content{flex-grow:1;overflow-y:auto;position:relative;padding-bottom:70px}.slide-content{padding:20px;box-sizing:border-box;position:absolute;width:100%;height:100%;animation-duration:.4s;animation-timing-function:ease-in-out;animation-fill-mode:forwards}.slide-content.enter-next{animation-name:slideInFromRight}.slide-content.enter-prev{animation-name:slideInFromLeft}.slide-content.exit-next{animation-name:slideOutToLeft}.slide-content.exit-prev{animation-name:slideOutToRight}.floating-buttons-container{position:fixed;bottom:80px;right:20px;display:flex;flex-direction:column;align-items:center;gap:15px;z-index:1001}.secondary-fabs-wrapper{display:flex;flex-direction:column;gap:15px;transition:all .2s ease-in-out;transform:translateY(20px);opacity:0}.secondary-fabs-wrapper.open{transform:translateY(0);opacity:1}.floating-btn{background:var(--fab-bg-color);color:var(--fab-text-color);border:none;border-radius:50%;width:56px;height:56px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 15px #0003;cursor:pointer;transition:transform .2s}.floating-btn:active{transform:scale(.9)}.floating-btn svg{width:28px;height:28px}.primary-fab{background:var(--accent-color);color:var(--bg-color);transition:transform .3s}.primary-fab.rotated{transform:rotate(45deg)}.primary-fab svg{width:24px;height:24px}@media (max-width: 480px){.floating-buttons-container{right:15px;bottom:75px}.floating-btn{width:48px;height:48px}.floating-btn svg{width:24px;height:24px}.primary-fab svg{width:20px;height:20px}}.widget-toggle-list{display:flex;flex-direction:column;gap:18px;margin-top:20px}.widget-toggle-item{display:flex;justify-content:space-between;align-items:center;font-size:16px;background:#0003;padding:12px 18px;border-radius:10px}.widget-switch{position:relative;display:inline-block;width:52px;height:30px}.widget-switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:#3e3e3e;transition:.4s}.slider:before{position:absolute;content:"";height:22px;width:22px;left:4px;bottom:4px;background-color:#fff;transition:.4s}input:checked+.slider{background-color:#23f0cb}input:focus+.slider{box-shadow:0 0 1px #23f0cb}input:checked+.slider:before{transform:translate(22px)}.slider.round{border-radius:30px}.slider.round:before{border-radius:50%}.notification-input-group{display:flex;gap:10px;margin:15px 0}.notification-input-group input{flex-grow:1;padding:12px;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#0000004d;color:#e0e0e0;font-size:14px;transition:all .2s ease-in-out}.notification-input-group input:focus{outline:none;border-color:#23f0cb;box-shadow:0 0 10px #23f0cb80}.notification-input-group button{padding:0 20px;border:none;border-radius:8px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease-in-out}.notification-input-group .save-button{background-color:#23f0cb;color:#121212}.notification-input-group .save-button:hover{background-color:#1de9b6;box-shadow:0 0 15px #23f0cbb3}.notification-input-group .cancel-button{background-color:#757575;color:#fff}.notification-input-group .cancel-button:hover{background-color:#616161}.notification-manage-list{list-style:none;padding:0;margin-top:20px;max-height:300px;overflow-y:auto}.notification-manage-list li{display:flex;justify-content:space-between;align-items:center;padding:12px 15px;border-radius:8px;background:#00000026;margin-bottom:8px}.notification-manage-list li:last-child{border-bottom:none}.notification-manage-list .actions{display:flex;gap:10px}.action-btn{background:none;border:none;cursor:pointer;padding:5px;color:#9e9e9e;transition:color .2s}.action-btn.edit-btn:hover{color:#23f0cb}.action-btn.delete-btn:hover{color:#ff5252}.detailed-toggle{margin:20px 0;display:flex;align-items:center;gap:10px}.detailed-fields{display:flex;flex-direction:column;gap:15px;margin-bottom:20px;padding:15px;border:1px dashed rgba(255,255,255,.2);border-radius:8px}.detailed-fields textarea,.detailed-fields input{padding:12px;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#0000004d;color:#e0e0e0;font-size:14px;transition:all .2s ease-in-out}.detailed-fields textarea:focus,.detailed-fields input:focus{outline:none;border-color:#23f0cb;box-shadow:0 0 10px #23f0cb80}.app-settings-form{display:flex;flex-direction:column;gap:25px;margin-top:15px}.form-group{display:flex;flex-direction:column;gap:10px}.form-group label{font-weight:700;color:#e0e0e0}.form-group input,.form-group textarea{padding:12px;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#0000004d;color:#e0e0e0;font-size:14px;transition:all .2s ease-in-out}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#23f0cb;box-shadow:0 0 10px #23f0cb80}.image-preview{margin-top:10px;background:#0003;padding:15px;border-radius:8px;display:flex;justify-content:center;align-items:center;min-height:120px;border:1px dashed rgba(255,255,255,.2)}.image-preview img{max-width:120px;max-height:120px;border-radius:8px}.save-container{display:flex;align-items:center;gap:15px;margin-top:15px}.save-settings-button{padding:12px 25px;background-color:#23f0cb;color:#121212;border:none;border-radius:8px;font-weight:700;cursor:pointer;transition:all .3s}.save-settings-button:hover:not(:disabled){background-color:#1de9b6;box-shadow:0 0 15px #23f0cbb3;transform:translateY(-2px)}.save-settings-button:disabled{background-color:#555;cursor:not-allowed;opacity:.7}.status-message{font-weight:700;font-size:14px;padding:8px 12px;border-radius:6px}.status-message.success{color:#121212;background-color:#23f0cb}.status-message.error{color:#fff;background-color:#ff5252}.user-list{list-style:none;padding:0;margin-top:20px;max-height:400px;overflow-y:auto}.user-item{display:flex;align-items:center;gap:15px;padding:10px;border-radius:8px;background:#0003;margin-bottom:10px}.user-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover}.user-info{flex-grow:1}.user-info h4{margin:0;font-size:16px;color:#e0e0e0}.user-info p{margin:2px 0 0;font-size:12px;color:#a0a0a0}.admin-dashboard{display:flex;flex-direction:column;gap:25px}.admin-widget{padding:25px;border:1px solid rgba(255,255,255,.1)}.admin-widget h3{margin-top:0;color:#23f0cb;border-bottom:1px solid rgba(35,240,203,.3);padding-bottom:10px;margin-bottom:20px}.account-switcher-controls{display:flex;gap:10px;margin-top:15px}.account-switcher-controls input{flex-grow:1;padding:12px;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#0000004d;color:#e0e0e0;font-size:14px;transition:all .2s ease-in-out}.account-switcher-controls input:focus{outline:none;border-color:#23f0cb;box-shadow:0 0 10px #23f0cb80}.account-switcher-controls button{padding:12px 22px;background-color:#23f0cb;color:#121212;border:none;border-radius:8px;font-weight:700;cursor:pointer;transition:all .2s ease-in-out}.account-switcher-controls button:hover{background-color:#1de9b6;box-shadow:0 0 15px #23f0cbb3}.admin-logout-button{padding:15px;background-color:#ff525233;color:#ff5252;border:1px solid #ff5252;border-radius:10px;font-size:16px;font-weight:700;cursor:pointer;margin-top:20px;transition:all .3s}.admin-logout-button:hover{background-color:#ff5252;color:#121212;box-shadow:0 0 15px #ff525299;transform:translateY(-2px)}.admin-page-title{margin-top:0;color:#fff;font-size:24px;text-align:center;margin-bottom:20px}.register-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - 160px);position:relative;overflow:hidden;width:100%}.step-container{width:100%;max-width:500px;position:absolute;animation-duration:.5s;animation-timing-function:cubic-bezier(.25,.46,.45,.94);animation-fill-mode:forwards}.step-container.enter-next{animation-name:slideInFromRight}.step-container.enter-prev{animation-name:slideInFromLeft}.step-container.exit-next{animation-name:slideOutToLeft}.step-container.exit-prev{animation-name:slideOutToRight}@keyframes slideInFromRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInFromLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOutToLeft{0%{transform:translate(0);opacity:1}to{transform:translate(-100%);opacity:0}}@keyframes slideOutToRight{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.register-step-card{padding:25px;width:100%;box-sizing:border-box}.text-center{text-align:center}.step-title{color:#fff;font-size:22px;margin-top:0;margin-bottom:15px}.step-description{line-height:1.6;margin-bottom:25px}.register-button{width:100%;padding:15px;background-color:#23f0cb;color:#121212;border:none;border-radius:10px;font-size:16px;font-weight:700;cursor:pointer;transition:opacity .3s,background-color .3s}.register-button:disabled{background-color:#555;cursor:not-allowed;opacity:.7}.register-button.secondary{background-color:transparent;color:#23f0cb;border:1px solid #23f0cb;margin-bottom:15px}.step-navigation{display:flex;gap:15px;margin-top:20px}.back-button{position:absolute;top:20px;left:20px;background:#fff3;border:none;color:#fff;width:40px;height:40px;border-radius:50%;font-size:20px;cursor:pointer;z-index:10}.course-selection-list{max-height:300px;overflow-y:auto;margin:20px 0}.course-item{display:flex;align-items:center;padding:12px;border-radius:8px;margin-bottom:10px;cursor:pointer;border:1px solid transparent;transition:background-color .2s,border-color .2s}.course-item:hover{background-color:#ffffff1a}.course-item.selected{background-color:#23f0cb26;border-color:#23f0cb}.course-item input[type=checkbox]{margin-right:15px;width:20px;height:20px;pointer-events:none}.agree-checkbox{display:flex;align-items:center;justify-content:center;margin:20px 0}.agree-checkbox input{margin-right:10px}.payment-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.payment-option{background-color:#ffffff1a;border-radius:10px;padding:20px;cursor:pointer;transition:background-color .2s;display:flex;justify-content:center;align-items:center}.payment-option:hover{background-color:#fff3}.payment-option img{max-width:100%;border-radius:8px}.payment-details{text-align:center;margin-bottom:20px}.payment-details p{margin:5px 0}.qr-code{margin-top:15px;border-radius:8px}.payer-info{display:flex;flex-direction:column;gap:15px;margin-bottom:20px}.register-input{width:100%;padding:12px;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#0003;color:#e0e0e0;font-size:16px;box-sizing:border-box}.proof-form{display:flex;flex-direction:column;gap:15px;margin-bottom:20px}.upload-label{padding:15px;background-color:#ffffff1a;border:1px dashed rgba(255,255,255,.3);border-radius:8px;text-align:center;cursor:pointer}.register-textarea{min-height:80px;resize:vertical;width:100%;padding:12px;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#0003;color:#e0e0e0;font-size:16px;box-sizing:border-box;font-family:inherit}.lesson-generator-page{padding:20px;color:#e0e0e0}.lesson-generator-page h1,.lesson-generator-page h2{color:#fff}.generator-section{margin-bottom:30px;padding:20px;background:#ffffff1a;border-radius:15px;border:1px solid rgba(255,255,255,.2)}.generator-section input,.generator-section textarea{width:100%;padding:10px;margin-bottom:10px;background:#0003;border:1px solid rgba(255,255,255,.2);color:#e0e0e0;border-radius:8px}.generator-section button{padding:10px 20px;background-color:#23f0cb;color:#121212;border:none;border-radius:8px;cursor:pointer;font-weight:700}pre{background:#0000004d;padding:15px;border-radius:8px;white-space:pre-wrap;word-wrap:break-word}.bottom-nav-container{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:center;z-index:1000;padding:0 16px calc(6px + env(safe-area-inset-bottom)) 6px;pointer-events:none}.bottom-nav{position:relative;width:100%;max-width:480px;display:flex;background-color:#000;border-radius:28px;padding:4px;box-shadow:0 10px 30px #0006;pointer-events:auto;border:1px solid rgba(10,199,233,.918)}.active-indicator{position:absolute;top:4px;left:4px;width:25%;height:calc(100% - 8px);background-color:#23f0cb;border-radius:24px;z-index:0;pointer-events:none;transition:transform .4s cubic-bezier(.2,.8,.2,1);box-shadow:0 0 20px #23f0cbb3}.nav-item{flex:1;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:6px 0;text-decoration:none;color:#8a8a8e;transition:color .3s ease;z-index:1;-webkit-tap-highlight-color:transparent;cursor:pointer}.nav-icon{height:28px;display:flex;align-items:center;transition:color .3s ease}.nav-label{font-size:12px;font-weight:500;transition:color .3s ease}.nav-item.active .nav-icon,.nav-item.active .nav-label{color:#121212}.nav-item.active .nav-label{font-weight:600}.popup-image{width:100%;max-height:180px;object-fit:cover;border-radius:10px;margin-bottom:15px}.popup-message-content a{color:#23f0cb;text-decoration:underline;font-weight:700}.popup-message-content strong{color:#fff}.popup-video-container{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;max-width:100%;background:#000;border-radius:10px;margin-bottom:15px}.popup-video-container iframe{position:absolute;top:0;left:0;width:100%;height:100%}.app-container{min-height:100vh;display:flex;flex-direction:column}.main-content{flex-grow:1;padding:20px 20px 80px;overflow-y:auto}.main-content.lesson-player-active{padding:0;overflow-y:hidden}.static-background-body{background-color:#121212}body{margin:0;font-family:Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#121212;color:#e0e0e0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
