.welcome-app{background:#fefbf6;justify-content:center;align-items:flex-start;min-height:100vh;padding-top:0;font-family:Georgia,Times New Roman,serif;display:flex}.welcome-container{width:100%;max-width:480px;padding:0 20px 40px;animation:.7s fadeInUp}.welcome-hero-banner{margin:12px 0 36px;padding:0}.hero-banner-image{object-fit:cover;border-radius:32px;width:100%;height:auto;max-height:300px;animation:.8s .1s both heroFadeIn;display:block;box-shadow:0 4px 24px #0000000d}.welcome-content{animation:.6s .3s both contentFadeIn}.welcome-heading{color:#2d2420;letter-spacing:-.3px;margin:0 0 16px;font-family:Georgia,serif;font-size:38px;font-weight:700;line-height:1.2}.welcome-description{color:#8b7e74;margin:0 0 40px;font-family:Georgia,serif;font-size:18px;line-height:1.7}.welcome-actions{flex-direction:column;gap:14px;margin-bottom:32px;display:flex}.welcome-btn{cursor:pointer;letter-spacing:.2px;border:none;border-radius:100px;width:100%;padding:20px 24px;font-family:Georgia,serif;font-size:18px;font-weight:600;transition:all .25s}.welcome-btn.learner{color:#fffbf5;background:#2d2420}.welcome-btn.learner:hover{background:#1a1410;transform:translateY(-2px);box-shadow:0 8px 24px #2d242026}.welcome-btn.educator{color:#2d2420;background:#f5ede4;border:2px solid #e8d9cc}.welcome-btn.educator:hover{background:#ede0d4;border-color:#d4c4b2;transform:translateY(-2px)}.welcome-signin{text-align:center;justify-content:center;align-items:center;gap:6px;display:flex}.signin-text{color:#8b7e74;font-family:Georgia,serif;font-size:16px}.signin-link{color:#2d2420;cursor:pointer;text-underline-offset:4px;background:0 0;border:none;padding:0;font-family:Georgia,serif;font-size:16px;font-weight:600;-webkit-text-decoration:underline #d4c4b2;text-decoration:underline #d4c4b2;transition:opacity .2s}.signin-link:hover{opacity:.7}.auth-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#2d242066;justify-content:center;align-items:center;padding:20px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.auth-modal{background:#fefbf6;border-radius:32px;width:100%;max-width:440px;padding:44px 32px;animation:.3s slideUp;position:relative;box-shadow:0 24px 48px -12px #2d242026}.auth-close-btn{cursor:pointer;color:#8b7e74;background:#f5ede4;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:22px;transition:all .2s;display:flex;position:absolute;top:20px;right:20px}.auth-close-btn:hover{color:#2d2420;background:#ede0d4}.auth-modal-header{text-align:center;margin-bottom:36px}.auth-modal-logo{width:60px;height:60px;margin-bottom:24px}.auth-modal-header h2{color:#2d2420;margin:0 0 8px;font-family:Georgia,serif;font-size:28px;font-weight:700}.auth-modal-header p{color:#8b7e74;margin:0;font-family:Georgia,serif;font-size:16px}.auth-error{color:#c44;text-align:center;background:#fff0ed;border:1px solid #ffd4cc;border-radius:16px;margin-bottom:20px;padding:14px 18px;font-size:14px}.auth-input-group{margin-bottom:22px}.auth-input-group label{color:#5c4f45;margin-bottom:8px;font-family:Georgia,serif;font-size:15px;font-weight:600;display:block}.auth-input-wrapper{position:relative}.auth-input-icon{color:#b8a99a;pointer-events:none;font-size:17px;position:absolute;top:50%;left:18px;transform:translateY(-50%)}.auth-input-wrapper input{box-sizing:border-box;color:#2d2420;background:#fffbf6;border:2px solid #ede0d4;border-radius:16px;width:100%;padding:16px 18px 16px 50px;font-family:Georgia,serif;font-size:17px;transition:all .2s}.auth-input-wrapper input::placeholder{color:#b8a99a}.auth-input-wrapper input:focus{background:#fefbf6;border-color:#2d2420;outline:none;box-shadow:0 0 0 4px #2d24200d}.auth-password-toggle{cursor:pointer;color:#b8a99a;background:0 0;border:none;align-items:center;padding:0;font-size:18px;transition:color .2s;display:flex;position:absolute;top:50%;right:18px;transform:translateY(-50%)}.auth-password-toggle:hover{color:#8b7e74}.auth-submit-btn{color:#fffbf5;cursor:pointer;background:#2d2420;border:none;border-radius:100px;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:12px;padding:18px;font-family:Georgia,serif;font-size:18px;font-weight:600;transition:all .25s;display:flex}.auth-submit-btn:hover:not(:disabled){background:#1a1410;transform:translateY(-2px);box-shadow:0 8px 24px #2d242026}.auth-submit-btn:disabled{opacity:.6;cursor:not-allowed}.auth-footer{text-align:center;margin-top:28px}.auth-toggle-btn{color:#8b7e74;cursor:pointer;background:0 0;border:none;font-family:Georgia,serif;font-size:15px;font-weight:500;transition:color .2s}.auth-toggle-btn:hover{color:#2d2420}.onboarding-overlay{z-index:2000;background:#fefbf6;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow-y:auto}.onboarding-container{width:100%;max-width:580px;padding-bottom:40px;animation:.4s fadeInUp}.onboarding-progress{margin-bottom:48px}.progress-bar{background:#ede0d4;border-radius:5px;width:100%;height:5px;margin-bottom:14px;overflow:hidden}.progress-fill{background:#2d2420;border-radius:5px;height:100%;transition:width .3s}.progress-text{color:#b8a99a;font-family:Georgia,serif;font-size:14px;font-weight:500}.onboarding-step{margin-bottom:36px}.onboarding-title{color:#2d2420;text-align:center;margin:0 0 12px;font-family:Georgia,serif;font-size:30px;font-weight:700}.onboarding-subtitle{color:#8b7e74;text-align:center;margin:0 0 44px;font-family:Georgia,serif;font-size:17px}.level-card-overlay{background:linear-gradient(#0000,#2d2420b3);align-items:flex-end;height:100%;padding:20px 16px 16px;display:flex;position:absolute;bottom:0;left:0;right:0}.level-label{color:#fff;text-shadow:0 2px 8px #0000004d;letter-spacing:.3px;font-size:17px;font-weight:700}.profile-setup{flex-direction:column;gap:36px;display:flex}.name-input-group label,.avatar-section label{color:#5c4f45;margin-bottom:10px;font-family:Georgia,serif;font-size:15px;font-weight:600;display:block}.name-input-wrapper{position:relative}.name-input-icon{color:#b8a99a;pointer-events:none;font-size:18px;position:absolute;top:50%;left:18px;transform:translateY(-50%)}.name-input-wrapper input{color:#2d2420;background:#fffbf6;border:2px solid #ede0d4;border-radius:16px;width:100%;padding:18px 18px 18px 52px;font-family:Georgia,serif;font-size:18px;transition:all .2s}.name-input-wrapper input:focus{background:#fefbf6;border-color:#2d2420;outline:none;box-shadow:0 0 0 4px #2d24200d}.name-input-wrapper input::placeholder{color:#b8a99a}.avatar-grid{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.avatar-btn{cursor:pointer;background:#fffbf6;border:2px solid #ede0d4;border-radius:18px;flex-direction:column;align-items:center;gap:10px;min-width:84px;padding:18px 16px;font-family:Georgia,serif;transition:all .25s;display:flex}.avatar-btn:hover{border-color:#d4c4b2;transform:translateY(-2px)}.avatar-btn.selected{background:#fefbf6;border-color:#2d2420}.avatar-btn img{object-fit:cover;border-radius:50%;width:56px;height:56px}.avatar-btn span{color:#8b7e74;font-size:13px;font-weight:500}.subjects-grid{flex-wrap:wrap;gap:12px;display:flex}.subject-chip{cursor:pointer;color:#5c4f45;background:#fffbf6;border:2px solid #ede0d4;border-radius:100px;align-items:center;gap:8px;padding:14px 24px;font-family:Georgia,serif;font-size:16px;font-weight:500;transition:all .2s;display:flex}.subject-chip:hover{background:#f5ede4;border-color:#d4c4b2}.subject-chip.selected{color:#fffbf5;background:#2d2420;border-color:#2d2420}.subject-chip svg{font-size:12px}.performance-list{flex-direction:column;gap:16px;display:flex}.performance-item{background:#fffbf6;border:2px solid #ede0d4;border-radius:16px;justify-content:space-between;align-items:center;padding:18px 22px;display:flex}.performance-subject{color:#2d2420;font-family:Georgia,serif;font-size:17px;font-weight:600}.performance-bars{gap:8px;display:flex}.perf-bar{cursor:pointer;color:#8b7e74;background:#fefbf6;border:2px solid #ede0d4;border-radius:12px;padding:10px 18px;font-family:Georgia,serif;font-size:13px;font-weight:600;transition:all .15s}.perf-bar:hover{background:#f5ede4;border-color:#d4c4b2}.perf-bar.active{color:#fffbf5;background:#2d2420;border-color:#2d2420}.completion-card{text-align:center;padding:20px}.completion-check{margin-bottom:24px;font-size:72px}.completion-title{color:#2d2420;margin:0 0 12px;font-family:Georgia,serif;font-size:30px;font-weight:700}.completion-subtitle{color:#8b7e74;margin:0 0 36px;font-family:Georgia,serif;font-size:17px}.completion-summary{text-align:left;background:#fffbf6;border:2px solid #ede0d4;border-radius:18px;padding:24px}.summary-item{border-bottom:1px solid #ede0d4;justify-content:space-between;align-items:center;padding:16px 0;display:flex}.summary-item:last-child{border-bottom:none}.summary-label{color:#8b7e74;font-family:Georgia,serif;font-size:16px}.summary-value{color:#2d2420;font-family:Georgia,serif;font-size:16px;font-weight:600}.onboarding-nav{justify-content:space-between;gap:12px;display:flex}.onboarding-nav-btn{cursor:pointer;border-radius:100px;align-items:center;gap:8px;padding:18px 30px;font-family:Georgia,serif;font-size:17px;font-weight:600;transition:all .25s;display:flex}.onboarding-nav-btn.back{color:#8b7e74;background:#fffbf6;border:2px solid #ede0d4}.onboarding-nav-btn.back:hover{color:#5c4f45;background:#f5ede4;border-color:#d4c4b2}.onboarding-nav-btn.next,.onboarding-nav-btn.finish{color:#fffbf5;background:#2d2420;border:none;margin-left:auto}.onboarding-nav-btn.next:hover:not(:disabled),.onboarding-nav-btn.finish:hover{background:#1a1410;transform:translateY(-2px);box-shadow:0 8px 24px #2d242026}.onboarding-nav-btn.next:disabled{opacity:.4;cursor:not-allowed;background:#b8a99a}.spinner{animation:.8s linear infinite spin}@keyframes heroFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes contentFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (width<=500px){.welcome-heading{font-size:30px}.welcome-description{font-size:16px}.welcome-btn{padding:18px 24px;font-size:16px}.hero-banner-image{border-radius:24px;max-height:220px}.onboarding-overlay{align-items:flex-start;padding:20px 16px 40px;overflow-y:auto}.onboarding-container{max-width:100%;padding-bottom:20px}.onboarding-title{font-size:24px}.onboarding-subtitle{margin-bottom:28px;font-size:15px}.onboarding-progress{margin-bottom:32px}.level-grid{grid-template-columns:repeat(2,1fr);gap:10px}.level-card{border-radius:16px;height:140px}.level-label{font-size:15px}.grade-grid{grid-template-columns:repeat(3,1fr);gap:8px}.grade-btn{padding:16px 12px;font-size:15px}.performance-item{flex-direction:column;align-items:flex-start;gap:14px}.performance-bars{width:100%}.perf-bar{text-align:center;flex:1}.auth-modal{border-radius:24px;padding:32px 20px}.auth-modal-header h2{font-size:24px}.avatar-btn{min-width:70px;padding:14px 10px}.avatar-btn img{width:48px;height:48px}}@media (width<=380px){.welcome-heading{font-size:26px}.level-card{height:120px}.level-label{font-size:14px}.grade-grid{grid-template-columns:repeat(2,1fr)}.onboarding-nav-btn{padding:14px 20px;font-size:15px}}.neo-message{text-align:left;align-items:flex-start;gap:16px;margin-bottom:36px;animation:.5s .1s both slideUp;display:flex}.neo-avatar-wrapper{flex-shrink:0}.neo-avatar{object-fit:cover;border:2px solid #ede0d4;border-radius:50%;width:56px;height:56px;box-shadow:0 2px 12px #0000000f}.neo-greeting{color:#2d2420;margin:0 0 8px;font-family:Georgia,serif;font-size:26px;font-weight:700}.neo-question{color:#8b7e74;margin:0;font-family:Georgia,serif;font-size:16px;line-height:1.6}.learning-time-card{cursor:pointer;text-align:left;background:#fffbf6;border:2px solid #ede0d4;border-radius:20px;padding:24px 20px;font-family:Georgia,serif;transition:all .3s cubic-bezier(.4,0,.2,1);animation:.5s both cardFadeIn;position:relative;overflow:hidden}.learning-time-content{align-items:flex-start;gap:14px;display:flex}.learning-time-icon{flex-shrink:0;font-size:32px;line-height:1}.learning-time-info{flex-direction:column;gap:4px;display:flex}.learning-time-label{color:#2d2420;font-size:17px;font-weight:700}.learning-time-desc{color:#8b7e74;font-size:13px;line-height:1.4}.neo-begin-btn{background:linear-gradient(135deg,#2d2420 0%,#4a3d35 100%);padding:18px 36px;font-size:18px}@keyframes neoFadeIn{0%{opacity:0}to{opacity:1}}@keyframes cardFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{opacity:0;transform:scale(0)}80%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}@media (width<=500px){.neo-message{text-align:center;flex-direction:column;align-items:center;gap:12px}.neo-greeting{font-size:22px}.neo-question{font-size:15px}.learning-time-grid{grid-template-columns:1fr;gap:10px}.learning-time-card{padding:20px 16px}.learning-time-icon{font-size:28px}.learning-time-label{font-size:16px}}.level-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.level-card{cursor:pointer;background-position:50%;background-repeat:no-repeat;background-size:cover;border:2px solid #ede0d4;border-radius:20px;height:160px;padding:0;font-family:Georgia,serif;transition:all .25s;position:relative;overflow:hidden}.level-card:hover{border-color:#d4c4b2;transform:translateY(-3px);box-shadow:0 8px 24px #2d24201a}.level-card.selected{border-color:#2d2420;transform:translateY(-3px);box-shadow:0 8px 28px #2d242026}.level-card-overlay{background:linear-gradient(#2d24200d 0%,#2d242033 50%,#2d2420bf 100%);flex-direction:column;justify-content:flex-end;align-items:center;padding:20px 16px;display:flex;position:absolute;inset:0}.level-label{color:#fff;text-shadow:0 2px 8px #0006;letter-spacing:.3px;text-align:center;font-size:17px;font-weight:700}.level-desc-text{color:#ffffffe6;text-shadow:0 1px 4px #0000004d;text-align:center;margin-top:4px;font-size:13px;font-weight:400;display:block}.level-card.selected .level-card-overlay{background:linear-gradient(#2d24201a 0%,#2d24204d 50%,#2d2420e6 100%)}.grade-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.grade-btn{cursor:pointer;color:#5c4f45;background:#f7f7f7;border:2px solid #ede0d4;border-radius:16px;padding:20px;font-family:Georgia,serif;font-size:17px;font-weight:600;transition:all .2s}.grade-btn:hover{background:#ede0d4;border-color:#d4c4b2}.grade-btn.selected{color:#fffbf5;background:#2d2420;border-color:#2d2420}.neo-step{text-align:left}.neo-container{animation:.6s neoFadeIn}.neo-top-bar{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.neo-message{align-items:center;gap:20px;margin-bottom:40px;animation:.5s .1s both slideUp;display:flex}.neo-logo-wrapper{flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;display:flex}.neo-logo{object-fit:contain;border-radius:16px;width:56px;height:56px}.neo-text{flex:1}.neo-greeting{color:#2d2420;margin:0;font-family:Georgia,serif;font-size:28px;font-weight:700;line-height:1.2}.learning-time-grid{grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:40px;display:grid}.learning-time-card{cursor:pointer;background:#f7f7f7;border:2px solid #ede0d4;border-radius:20px;flex-direction:column;gap:16px;min-height:140px;padding:28px 24px 24px;font-family:Georgia,serif;transition:all .3s cubic-bezier(.4,0,.2,1);animation:.5s both cardFadeIn;display:flex;position:relative;overflow:hidden}.learning-time-card:hover{border-color:#d4c4b2;transform:translateY(-2px);box-shadow:0 4px 16px #2d24200f}.learning-time-card.selected{background:#fff;border-color:#2d2420;transform:scale(1.02);box-shadow:0 8px 28px #2d24201a}.learning-time-icon-wrapper{border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;font-size:28px;display:flex}.learning-time-icon-wrapper.morning{background:linear-gradient(135deg,#ffe0b2,#ffb74d)}.learning-time-icon-wrapper.afternoon{background:linear-gradient(135deg,#fff9c4,#ffd54f)}.learning-time-icon-wrapper.evening{background:linear-gradient(135deg,#e1bee7,#ce93d8)}.learning-time-icon-wrapper.flexible{background:linear-gradient(135deg,#f8bbd0,#f48fb1)}.learning-time-label{color:#2d2420;font-size:18px;font-weight:700;display:block}.learning-time-check{color:#fffbf5;background:#2d2420;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;animation:.3s cubic-bezier(.68,-.55,.27,1.55) popIn;display:flex;position:absolute;top:14px;right:14px}.neo-begin-section{padding-top:8px}.neo-begin-btn{cursor:pointer;color:#fffbf5;background:#2d2420;border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;padding:18px;font-family:Georgia,serif;font-size:18px;font-weight:600;transition:all .25s;display:flex}.neo-begin-btn:hover:not(:disabled){background:#1a1410;transform:translateY(-2px);box-shadow:0 8px 24px #2d242026}.neo-begin-btn:disabled{opacity:.4;cursor:not-allowed;background:#b8a99a}.neo-back-btn{color:#8b7e74;cursor:pointer;background:#fffbf6;border:1.5px solid #ede0d4;border-radius:14px;align-items:center;gap:8px;padding:14px 24px;font-family:Georgia,serif;font-size:16px;font-weight:600;transition:all .2s;display:flex}.neo-back-btn:hover{color:#5c4f45;background:#f5ede4;border-color:#d4c4b2}@media (width<=500px){.neo-message{gap:14px}.neo-logo-wrapper{width:48px;height:48px}.neo-logo{width:40px;height:40px}.neo-greeting{font-size:22px}.learning-time-grid{grid-template-columns:1fr;gap:10px}.learning-time-card{min-height:auto;padding:22px 18px 20px}.learning-time-label{font-size:16px}.learning-time-icon-wrapper{width:40px;height:40px;font-size:24px}}.onboarding-top-bar{align-items:center;gap:14px;margin-bottom:8px;display:flex}.top-back-btn{cursor:pointer;color:#2d2420;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;transition:all .2s;display:flex}.top-back-btn:hover{background:#f5ede4}.top-progress-bar{flex:1}.top-progress-bar .progress-bar{margin-bottom:0}.top-icon-btn{cursor:pointer;color:#b8a99a;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;transition:all .2s;display:flex}.top-icon-btn:hover{color:#8b7e74;background:#f5ede4}.notification-step{text-align:center}.notification-container{animation:.6s neoFadeIn}.notification-illustration{justify-content:center;align-items:center;height:220px;margin-bottom:36px;display:flex;position:relative}.neo-behind-card{z-index:1;animation:.7s .1s both neoFloatIn;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.neo-character{object-fit:cover;border:3px solid #fefbf6;border-radius:50%;width:100px;height:100px;box-shadow:0 4px 16px #2d24201f}.notification-card-float{z-index:2;animation:.6s .3s both cardSlideUp;position:absolute;top:20px;right:10%}.notification-card-inner{background:#fff;border:1px solid #ede0d4;border-radius:16px;align-items:flex-start;gap:12px;max-width:260px;padding:16px;display:flex;box-shadow:0 8px 24px #2d24201a}.notification-card-icon{color:#fff;background:linear-gradient(135deg,#ffb74d,#ffd54f);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:14px;display:flex}.notification-card-content{text-align:left;flex:1}.notification-card-header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.notification-app-name{color:#2d2420;font-size:13px;font-weight:700}.notification-time{color:#b8a99a;font-size:11px}.notification-card-text{color:#5c4f45;margin:0;font-size:13px;line-height:1.4}.notification-text-section{margin-bottom:36px;animation:.5s .5s both fadeInUp}.notification-heading{color:#2d2420;margin:0 0 14px;font-family:Georgia,serif;font-size:28px;font-weight:700}.notification-description{color:#8b7e74;max-width:400px;margin:0 auto;font-family:Georgia,serif;font-size:16px;line-height:1.6}.notification-buttons{flex-direction:column;gap:12px;animation:.5s .7s both fadeInUp;display:flex}.notification-btn{cursor:pointer;border-radius:14px;justify-content:center;align-items:center;width:100%;padding:18px 24px;font-family:Georgia,serif;font-size:17px;font-weight:600;transition:all .25s;display:flex}.notification-btn.primary{color:#fffbf5;background:#2d2420;border:none}.notification-btn.primary:hover{background:#1a1410;transform:translateY(-2px);box-shadow:0 8px 24px #2d242026}.notification-btn.secondary{color:#2d2420;background:#fff;border:1.5px solid #ede0d4}.notification-btn.secondary:hover{background:#f5ede4;border-color:#d4c4b2}@keyframes neoFloatIn{0%{opacity:0;transform:translate(-50%)translateY(20px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes cardSlideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (width<=500px){.notification-illustration{height:180px}.neo-character{width:80px;height:80px}.notification-card-inner{max-width:200px;padding:12px}.notification-heading{font-size:24px}.notification-description{font-size:14px}.notification-card-float{right:4%}}.assess-app{background:#fafafa;min-height:100vh}.assess-loading{background:#fafafa;justify-content:center;align-items:center;min-height:100vh;display:flex}.assess-spinner{border:3px solid #f5f5f5;border-top-color:#ff9800;border-radius:50%;width:28px;height:28px;animation:.7s linear infinite spin}.assess-header{background:#fff;border-bottom:1px solid #f5f5f5;padding:16px 20px}.assess-header-greeting{color:#1a1a1a;margin-bottom:12px;font-size:18px;font-weight:700;display:block}.assess-header-progress{width:100%}.assess-header-bar{background:#f5f5f5;border-radius:2px;width:100%;height:4px;overflow:hidden}.assess-header-fill{background:#ff9800;border-radius:2px;height:100%;transition:width .4s}.assess-main{width:100%;max-width:480px;margin:0 auto;padding:24px 20px}.assess-card{background:#fff;border:1px solid #f5f5f5;border-radius:20px;padding:28px 24px}.assess-neo{align-items:flex-start;gap:14px;margin-bottom:28px;display:flex}.assess-neo-img{object-fit:cover;border:2px solid #ffe0e0;border-radius:50%;flex-shrink:0;width:44px;height:44px}.assess-neo h2{color:#1a1a1a;margin:0 0 6px;font-size:20px;font-weight:700}.assess-neo p{color:#888;margin:0;font-size:14px}.marks-list{flex-direction:column;gap:16px;margin-bottom:28px;display:flex}.marks-list label{color:#555;margin-bottom:8px;font-size:14px;font-weight:600;display:block}.mark-input-wrap{position:relative}.mark-input-wrap input{color:#1a1a1a;background:#fafafa;border:2px solid #f5f5f5;border-radius:14px;outline:none;width:100%;padding:16px 52px 16px 18px;font-family:inherit;font-size:16px;transition:all .2s}.mark-input-wrap input:focus{background:#fff;border-color:#ffb74d}.mark-symbol{color:#999;font-size:16px;font-weight:600;position:absolute;top:50%;right:18px;transform:translateY(-50%)}.assess-btn{color:#fff;cursor:pointer;background:#1a1a1a;border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;padding:16px;font-size:16px;font-weight:600;display:flex}.assess-btn:disabled{opacity:.4;cursor:not-allowed}.assess-btn.primary{background:#ff9800}.question-num{color:#999;margin-bottom:20px;font-size:14px;font-weight:600;display:block}.question-text{color:#1a1a1a;margin:0 0 24px;font-size:18px;font-weight:600;line-height:1.5}.options-list{flex-direction:column;gap:10px;margin-bottom:24px;display:flex}.option-btn{cursor:pointer;text-align:left;color:#1a1a1a;background:#fff;border:2px solid #f5f5f5;border-radius:16px;align-items:center;gap:14px;padding:16px 18px;font-family:inherit;font-size:15px;transition:all .2s;display:flex}.option-btn:hover{border-color:#ddd}.option-btn.selected{background:#fff8f0;border-color:#ff9800}.option-letter{color:#888;background:#f5f5f5;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:flex}.option-btn.selected .option-letter{color:#fff;background:#ff9800}.option-check{color:#ff9800;margin-left:auto;font-size:16px}.question-nav{justify-content:space-between;gap:10px;display:flex}.qnav-btn{cursor:pointer;border:none;border-radius:14px;align-items:center;gap:6px;padding:14px 22px;font-family:inherit;font-size:15px;font-weight:600;display:flex}.qnav-btn.back{color:#666;background:#f5f5f5}.qnav-btn.next{color:#fff;background:#1a1a1a;margin-left:auto}.qnav-btn.finish{color:#fff;background:#ff9800;margin-left:auto}.qnav-btn:disabled{opacity:.4;cursor:not-allowed}.results-card{text-align:center}.results-wheel{justify-content:center;margin-bottom:24px;display:flex;position:relative}.results-wheel-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.rw-score{color:#1a1a1a;font-size:28px;font-weight:800}.results-title{color:#1a1a1a;margin:0 0 8px;font-size:22px;font-weight:700}.results-message{color:#888;margin:0 0 28px;font-size:14px}.neo-voice-icon-sm{background:linear-gradient(135deg,#7e57c2,#b39ddb);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;animation:2s infinite neoPulse;display:flex;box-shadow:0 0 16px #7e57c240}.neo-voice-icon-sm svg{color:#fff;font-size:16px}@keyframes neoPulse{0%,to{box-shadow:0 0 16px #7e57c240}50%{box-shadow:0 0 28px #7e57c280}}.dash-app{background:#fff;min-height:100vh;padding-bottom:72px}.dash-loading{background:#fff;justify-content:center;align-items:center;min-height:100vh;display:flex}.dash-spinner{border:3px solid #f5f5f5;border-top-color:#ff9800;border-radius:50%;width:28px;height:28px;animation:.7s linear infinite spin}.dash-header{z-index:50;background:#fff;border-bottom:1px solid #f5f5f5;justify-content:space-between;align-items:center;padding:16px 20px;display:flex;position:sticky;top:0}.dash-avatar{object-fit:cover;border:2px solid #f5f5f5;border-radius:50%;width:38px;height:38px}.sidebar-avatar{object-fit:cover;border:2px solid #ffe0e0;border-radius:50%;width:56px;height:56px;margin-bottom:10px}.dash-main{width:100%;max-width:500px;margin:0 auto;padding:24px 20px}.neo-question-section{margin-bottom:28px}.neo-line{align-items:center;gap:14px;display:flex}.neo-img{object-fit:cover;border:3px solid #ffe0e0;border-radius:50%;flex-shrink:0;width:48px;height:48px}.neo-question{color:#1a1a1a;font-size:18px;font-weight:600;line-height:1.3}.search-bar-wrap{align-items:center;margin-top:14px;display:flex;position:relative}.search-icon{color:#b0b0b0;pointer-events:none;font-size:15px;position:absolute;left:16px}.search-input{color:#1a1a1a;background:#fff;border:2px solid #f0ede8;border-radius:16px;outline:none;width:100%;padding:14px 44px 14px 46px;font-family:inherit;font-size:15px;transition:all .2s}.search-input::placeholder{color:#b0b0b0}.search-input:focus{border-color:#ffb74d;box-shadow:0 0 0 4px #ffb74d14}.search-clear{cursor:pointer;color:#999;background:#f5f5f5;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:10px;transition:all .15s;display:flex;position:absolute;right:12px}.search-clear:hover{color:#666;background:#e5e5e5}.section-label{color:#999;letter-spacing:1.5px;margin-bottom:14px;font-size:12px;font-weight:700;display:block}.subjects-compact-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.subject-compact{cursor:pointer;background:#fff;border:2px solid #f5f5f5;border-radius:18px;flex-direction:column;align-items:center;gap:10px;padding:16px 14px;transition:all .2s;display:flex;position:relative}.subject-compact:hover{border-color:#ffe0b2;transform:translateY(-2px);box-shadow:0 4px 16px #0000000a}.sc-emoji{font-size:32px}.sc-name{color:#1a1a1a;text-align:center;font-size:14px;font-weight:700}.sc-progress-mini{width:100%}.sc-mini-bar{background:#f5f5f5;border-radius:2px;width:100%;height:4px;overflow:hidden}.sc-mini-fill{background:#4caf50;border-radius:2px;height:100%;transition:width .5s}.speech-bubble{color:#fff;white-space:nowrap;z-index:20;pointer-events:none;background:#1a1a1a;border-radius:12px;padding:8px 14px;font-size:12px;font-weight:600;animation:.5s bubbleFloat,.4s 4.6s forwards bubbleFade;position:absolute;top:-42px;left:50%;transform:translate(-50%)}.speech-bubble-arrow{border-top:7px solid #1a1a1a;border-left:7px solid #0000;border-right:7px solid #0000;width:0;height:0;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)}.primary-actions{flex-direction:column;gap:10px;margin-bottom:28px;display:flex}.action-card{cursor:pointer;text-align:left;background:#fff;border:1px solid #f5f5f5;border-radius:18px;align-items:center;gap:16px;padding:18px;transition:all .2s;display:flex}.action-card:hover{border-color:#ffe0b2;transform:translate(4px)}.action-card:active{transform:scale(.98)}.action-icon{background:#fff8f0;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:24px;display:flex}.action-text{flex-direction:column;gap:2px;display:flex}.action-label{color:#1a1a1a;font-size:16px;font-weight:700}.action-desc{color:#999;font-size:13px}.section-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.section-sub{color:#ff9800;align-items:center;gap:4px;font-size:12px;font-weight:600;display:flex}.exercises-scroll{-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;gap:12px;padding-bottom:4px;display:flex;overflow-x:auto}.exercises-scroll::-webkit-scrollbar{display:none}.exercise-card{cursor:pointer;text-align:left;scroll-snap-align:start;background:#fff;border:1px solid #f5f5f5;border-radius:18px;flex-shrink:0;min-width:200px;padding:18px 16px;transition:all .2s}.exercise-card:hover{border-color:#ffe0b2;transform:translateY(-2px);box-shadow:0 4px 12px #0000000d}.exercise-card:active{transform:scale(.97)}.exercise-top{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.exercise-subject{text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:700}.exercise-questions{color:#999;background:#f5f5f5;border-radius:8px;padding:3px 8px;font-size:11px;font-weight:600}.exercise-topic{color:#1a1a1a;margin:0 0 14px;font-size:16px;font-weight:700;line-height:1.3}.exercise-bottom{justify-content:space-between;align-items:center;display:flex}.exercise-time{color:#999;font-size:13px}.exercise-start{color:#1a1a1a;align-items:center;gap:4px;font-size:13px;font-weight:700;display:flex}.exercise-start svg{font-size:10px}.continue-card{background:#fff;border:1px solid #f5f5f5;border-radius:20px;justify-content:space-between;align-items:center;padding:20px 22px;display:flex}.continue-left h3{color:#1a1a1a;margin:0 0 2px;font-size:18px;font-weight:700}.continue-left p{color:#999;margin:0 0 6px;font-size:14px}.continue-time{color:#4caf50;font-size:13px;font-weight:600}.continue-right{align-items:center;gap:14px;display:flex}.continue-play{color:#fff;cursor:pointer;background:#1a1a1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:14px;transition:all .2s;display:flex}.continue-play:hover{background:#000;transform:scale(1.05)}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes bubbleFloat{0%{opacity:0;transform:translate(-50%)translateY(10px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes bubbleFade{0%{opacity:1}to{opacity:0}}.sc-image{object-fit:contain;border-radius:16px;width:72px;height:72px}.action-icon-img{object-fit:contain;background:#fff8f0;border-radius:16px;flex-shrink:0;width:68px;height:68px;padding:8px}.neo-suggestions{flex-direction:column;gap:10px;margin-bottom:20px;display:flex}.neo-suggestion-card{background:linear-gradient(135deg,#f9f6fc,#fff);border:2px solid #ede0f4;border-radius:16px;align-items:flex-start;gap:14px;padding:16px 20px;transition:all .2s;display:flex}.neo-suggestion-card:hover{border-color:#7e57c2;transform:translate(4px);box-shadow:0 4px 16px #7e57c21a}.neo-suggestion-card.comeback{background:linear-gradient(135deg,#fff8f0,#fff);border-color:#ffe0b2}.neo-suggestion-card.celebration{background:linear-gradient(135deg,#fff9c4,#fff);border-color:#ffe082}.neo-suggestion-card.daily_plan{background:linear-gradient(135deg,#f0f4ff,#fff);border-color:#bbdefb}.neo-suggestion-icon{text-align:center;flex-shrink:0;width:40px;font-size:24px}.neo-suggestion-content{flex:1}.neo-suggestion-content p{color:#1a1a1a;margin:0 0 6px;font-size:15px;font-weight:500;line-height:1.4}.neo-suggestion-action{color:#7e57c2;font-size:13px;font-weight:700}.language-selector{color:#7e57c2;align-items:center;gap:6px;font-size:14px;display:flex}.language-selector select{color:#1a1a1a;cursor:pointer;background:#fff;border:1px solid #ede0f4;border-radius:8px;padding:4px 8px;font-family:inherit;font-size:13px}.dash-header-right{align-items:center;gap:12px;display:flex}.tasks-app{background:#fafafa;min-height:100vh;padding-bottom:72px}.tasks-loading{background:#fafafa;justify-content:center;align-items:center;min-height:100vh;display:flex}.tasks-spinner{border:3px solid #f0ede8;border-top-color:#ff9800;border-radius:50%;width:28px;height:28px;animation:.7s linear infinite spin}.tasks-header{z-index:50;background:#fff;padding:16px 20px 0;position:sticky;top:0;box-shadow:0 1px #0000000a}.tasks-header-row{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.tasks-tabs.full-tabs{grid-template-columns:1fr 1fr;gap:0;display:grid}.task-tab{cursor:pointer;color:#999;text-align:center;background:0 0;border:none;border-radius:10px 10px 0 0;justify-content:center;align-items:center;gap:6px;padding:12px 20px;font-size:14px;font-weight:600;transition:all .2s;display:flex}.task-tab.active{color:#1a1a1a;background:#fafafa}.task-tab svg{font-size:13px}.tasks-main{width:100%;max-width:500px;margin:0 auto;padding:20px}.section-head{color:#1a1a1a;margin:0 0 14px;font-size:14px;font-weight:700}.countdown-card{background:#fff;border-radius:20px;margin-bottom:28px;padding:24px;box-shadow:0 1px 4px #0000000a}.countdown-top{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.countdown-info{flex-direction:column;gap:4px;display:flex}.countdown-label{color:#999;text-transform:uppercase;letter-spacing:1px;font-size:13px;font-weight:700}.countdown-days{color:#1a1a1a;font-size:28px;font-weight:800;line-height:1}.countdown-date{color:#999;font-size:13px}.countdown-wheel-wrap{flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.countdown-wheel-text{color:#ff9800;font-size:18px;font-weight:800;position:absolute}.countdown-expand-btn{color:#fff;cursor:pointer;background:#1a1a1a;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;padding:14px;font-size:14px;font-weight:600;transition:all .2s;display:flex}.countdown-expand-btn:hover{background:#000}.schedules-big-list{flex-direction:column;gap:14px;display:flex}.schedule-big-card{cursor:pointer;text-align:left;border:none;border-radius:20px;width:100%;padding:20px 22px;font-family:inherit;transition:all .2s;box-shadow:0 1px 4px #0000000a}.schedule-big-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000000f}.sbc-top{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.sbc-icon-wrap{border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.sbc-icon{font-size:24px}.sbc-badge{border-radius:8px;padding:6px 12px;font-size:11px;font-weight:700}.sbc-body{margin-bottom:16px}.sbc-body h3{color:#1a1a1a;margin:0 0 4px;font-size:18px;font-weight:700}.sbc-body p{color:#999;margin:0;font-size:14px}.sbc-footer{border-top:1px solid #0000000f;justify-content:space-between;align-items:center;padding-top:14px;display:flex}.sbc-duration{color:#999;font-size:12px}.sbc-start{align-items:center;gap:4px;font-size:13px;font-weight:700;display:flex}.sbc-start svg{font-size:11px}.sessions-container{flex-direction:column;gap:16px;display:flex}.session-main-card{cursor:pointer;text-align:left;background:#fff;border:none;border-radius:20px;width:100%;padding:20px 22px;font-family:inherit;transition:all .2s;box-shadow:0 1px 4px #0000000a}.session-main-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000000f}.live-card{border:1px solid #ffe0e0}.session-main-top{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.session-live-indicator{align-items:center;gap:8px;display:flex}.live-pulse{background:#ef4444;border-radius:50%;width:10px;height:10px;animation:1.2s infinite pulse}.live-text{color:#ef4444;letter-spacing:1px;font-size:12px;font-weight:800}.session-rec-indicator{color:#42a5f5;letter-spacing:1px;align-items:center;gap:8px;font-size:12px;font-weight:800;display:flex}.session-rec-indicator svg{font-size:14px}.session-arrow{color:#d1d5db;font-size:14px}.session-main-body{align-items:center;gap:16px;margin-bottom:16px;display:flex}.session-main-icon{border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;font-size:28px;display:flex}.session-main-info h2{color:#1a1a1a;margin:0 0 2px;font-size:20px;font-weight:700}.session-main-info p{color:#999;margin:0 0 4px;font-size:14px}.session-main-tutor{color:#666;font-size:13px;font-weight:500}.session-main-count{color:#42a5f5;font-size:13px;font-weight:600}.session-main-footer{color:#999;border-top:1px solid #f5f5f5;justify-content:space-between;align-items:center;padding-top:14px;font-size:12px;display:flex}.session-main-footer svg{font-size:10px}.session-join-tag{color:#ef4444;font-size:13px;font-weight:700}.calendar-modal-overlay{z-index:300;background:#00000080;justify-content:center;align-items:center;padding:20px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.calendar-modal{background:#fff;border-radius:24px;width:100%;max-width:400px;padding:24px;animation:.3s popIn}.cal-modal-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.cal-modal-header button{cursor:pointer;color:#666;background:#f5f5f5;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:14px;display:flex}.cal-modal-header h2{color:#1a1a1a;font-size:18px;font-weight:700}.cal-day-names{text-align:center;grid-template-columns:repeat(7,1fr);margin-bottom:8px;display:grid}.cal-day-names span{color:#999;padding:8px 0;font-size:11px;font-weight:600}.cal-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.cal-empty-day{aspect-ratio:1}.cal-day{aspect-ratio:1;cursor:pointer;color:#1a1a1a;background:0 0;border:none;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-family:inherit;font-size:14px;font-weight:500;display:flex;position:relative}.cal-day:hover{background:#f5f5f5}.cal-day.today{color:#ff9800;background:#fff8f0;font-weight:700}.cal-close-btn{color:#fff;cursor:pointer;background:#1a1a1a;border:none;border-radius:12px;width:100%;margin-top:16px;padding:14px;font-size:14px;font-weight:600}.tasks-footer{z-index:50;background:#fff;border-top:1px solid #f0ede8;justify-content:space-around;padding:10px 20px 18px;display:flex;position:fixed;bottom:0;left:0;right:0}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(1.3)}}.section-head-icon{object-fit:contain;vertical-align:middle;width:20px;height:20px;margin-right:4px}.sbc-img,.session-icon-img{object-fit:contain;width:36px;height:36px}.countdown-progress-img{object-fit:contain;width:80px;height:80px}.sr-app{background:#fafafa;min-height:100vh;padding-bottom:72px}.sr-loading{background:#fafafa;justify-content:center;align-items:center;min-height:100vh;display:flex}.sr-spinner{border:3px solid #f5f5f5;border-top-color:#7e57c2;border-radius:50%;width:28px;height:28px;animation:.7s linear infinite spin}.sr-header{z-index:50;background:#fff;border-bottom:1px solid #f5f5f5;justify-content:space-between;align-items:center;padding:16px 20px;display:flex;position:sticky;top:0}.dash-profile-btn{cursor:pointer;background:0 0;border:none;padding:0}.dash-avatar{object-fit:cover;border-radius:50%;width:36px;height:36px}.sr-main{width:100%;max-width:900px;margin:0 auto;padding:20px}.sr-lobby{text-align:center;padding:40px 0}.sr-hero{margin-bottom:40px}.sr-hero-icon{margin-bottom:20px;font-size:64px}.sr-hero h2{color:#1a1a1a;margin:0 0 10px;font-size:28px;font-weight:700}.sr-hero p{color:#888;max-width:450px;margin:0 auto;font-size:15px;line-height:1.5}.sr-lobby-actions{flex-wrap:wrap;justify-content:center;gap:14px;margin-bottom:40px;display:flex}.sr-lobby-btn{cursor:pointer;border:none;border-radius:16px;align-items:center;gap:8px;padding:16px 28px;font-family:inherit;font-size:16px;font-weight:600;transition:all .2s;display:flex}.sr-lobby-btn.create{color:#fff;background:#7e57c2}.sr-lobby-btn.create:hover{background:#6a47b0;transform:translateY(-2px)}.sr-lobby-btn.join{color:#1a1a1a;background:#fff;border:2px solid #ede0d4}.sr-lobby-btn.join:hover{background:#f5ede4;transform:translateY(-2px)}.sr-active-rooms{text-align:left;margin-top:20px}.sr-active-rooms h3{color:#999;text-transform:uppercase;letter-spacing:1px;margin-bottom:14px;font-size:14px;font-weight:700}.sr-room-preview{cursor:pointer;text-align:left;background:#fff;border:2px solid #f0ede8;border-radius:16px;justify-content:space-between;align-items:center;width:100%;margin-bottom:8px;padding:16px 18px;font-family:inherit;transition:all .2s;display:flex}.sr-room-preview:hover{border-color:#d4c4b2}.sr-room-preview-info{flex-direction:column;gap:2px;display:flex}.sr-room-preview-name{color:#1a1a1a;font-size:15px;font-weight:700}.sr-room-preview-subject{color:#999;font-size:13px}.sr-room-preview-code{color:#7e57c2;background:#f3edfa;border-radius:8px;padding:6px 12px;font-size:14px;font-weight:700}.sr-form-card{background:#fff;border:1px solid #f5f5f5;border-radius:20px;max-width:480px;margin:20px auto;padding:28px 24px}.sr-back-btn{color:#7e57c2;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;margin-bottom:20px;padding:0;font-size:14px;font-weight:600;display:flex}.sr-form-card h2{color:#1a1a1a;margin:0 0 4px;font-size:22px;font-weight:700}.sr-form-subtitle{color:#999;margin:0 0 24px;font-size:14px}.sr-form-group{margin-bottom:18px}.sr-form-group label{color:#555;margin-bottom:6px;font-size:13px;font-weight:600;display:block}.sr-form-group input,.sr-form-group select{color:#1a1a1a;background:#fafafa;border:2px solid #f0ede8;border-radius:12px;outline:none;width:100%;padding:14px 16px;font-family:inherit;font-size:15px;transition:border-color .2s}.sr-form-group input:focus,.sr-form-group select:focus{background:#fff;border-color:#7e57c2}.sr-password-wrap{position:relative}.sr-password-wrap input{padding-right:44px}.sr-pw-icon{color:#999;font-size:16px;position:absolute;top:50%;right:16px;transform:translateY(-50%)}.sr-code-input{text-transform:uppercase;letter-spacing:3px;text-align:center;font-weight:700;font-size:20px!important}.sr-join-error{color:#dc2626;text-align:center;background:#fff0f0;border-radius:12px;margin-bottom:16px;padding:12px 16px;font-size:14px}.sr-form-submit{cursor:pointer;color:#fff;background:#7e57c2;border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:8px;padding:16px;font-family:inherit;font-size:16px;font-weight:600;transition:all .2s;display:flex}.sr-form-submit:hover:not(:disabled){background:#6a47b0}.sr-form-submit:disabled{opacity:.4;cursor:not-allowed}.sr-form-submit.join-btn{background:#1a1a1a}.sr-form-submit.join-btn:hover:not(:disabled){background:#000}.sr-room-wrapper{background:#fff;border:1px solid #f5f5f5;border-radius:20px;min-height:70vh;position:relative;overflow:hidden}.sr-room-topbar{background:#f9f6fc;border-bottom:1px solid #ede0f4;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.sr-room-leave{color:#7e57c2;cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;font-size:13px;font-weight:600;display:flex}.sr-room-info{text-align:center}.sr-room-name{color:#1a1a1a;font-size:16px;font-weight:700;display:block}.sr-room-subject{color:#999;font-size:12px}.sr-room-actions-top{align-items:center;gap:10px;display:flex}.sr-participant-count{color:#999;background:#f5f5f5;border-radius:8px;align-items:center;gap:4px;padding:6px 10px;font-size:12px;display:flex}.sr-room-code-btn{color:#7e57c2;cursor:pointer;background:#ede0f4;border:none;border-radius:8px;align-items:center;gap:4px;padding:6px 12px;font-family:inherit;font-size:12px;font-weight:700;display:flex}.sr-room-code-btn:hover{background:#d8c8ea}.sr-timer-bar{background:#fffbf5;border-bottom:1px solid #ffe0b2;justify-content:space-between;align-items:center;padding:10px 18px;display:flex}.sr-timer-bar-left{align-items:center;gap:10px;display:flex}.sr-timer-bar-icon{color:#ff9800;font-size:16px}.sr-timer-bar-text{color:#1a1a1a;font-size:22px;font-weight:800}.sr-timer-bar-mode{color:#999;background:#f5f5f5;border-radius:6px;padding:3px 8px;font-size:11px}.sr-timer-bar-controls{gap:6px;display:flex}.sr-timer-btn-sm{cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:12px;display:flex}.sr-timer-btn-sm.play{color:#fff;background:#4caf50}.sr-timer-btn-sm.pause{color:#fff;background:#ff9800}.sr-timer-btn-sm.reset{color:#666;background:#f5f5f5}.sr-content-tabs{border-bottom:1px solid #f5f5f5;padding:0 18px;display:flex}.sr-content-tab{color:#999;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:6px;padding:12px 20px;font-family:inherit;font-size:13px;font-weight:600;transition:all .2s;display:flex}.sr-content-tab.active{color:#7e57c2;border-bottom-color:#7e57c2}.sr-content-tab:hover{color:#7e57c2}.sr-content-area{min-height:400px;padding:20px}.sr-tasks-content{flex-direction:column;gap:16px;display:flex}.sr-create-task-btn{color:#7e57c2;cursor:pointer;background:#fff;border:2px dashed #ede0f4;border-radius:12px;align-items:center;gap:6px;width:fit-content;padding:10px 16px;font-family:inherit;font-size:14px;font-weight:600;transition:all .2s;display:flex}.sr-create-task-btn:hover{background:#f9f6fc;border-color:#7e57c2}.sr-create-task-btn.quiz{color:#ff9800;border-color:#ffe0b2}.sr-create-task-btn.quiz:hover{background:#fff8f0;border-color:#ff9800}.sr-task-builder{background:#f9f6fc;border-radius:16px;flex-direction:column;gap:14px;padding:20px;display:flex}.sr-task-builder h4{color:#1a1a1a;margin:0;font-size:16px;font-weight:700}.sr-task-input{border:2px solid #ede0f4;border-radius:10px;outline:none;width:100%;padding:12px 14px;font-family:inherit;font-size:14px}.sr-task-textarea{resize:vertical;border:2px solid #ede0f4;border-radius:10px;outline:none;width:100%;min-height:80px;padding:12px 14px;font-family:inherit;font-size:14px}.sr-task-time-row{color:#7e57c2;align-items:center;gap:8px;font-size:14px;display:flex}.sr-task-time-row input{border:2px solid #ede0f4;border-radius:8px;outline:none;width:80px;padding:8px 12px;font-size:14px}.sr-task-questions-section h5{color:#555;margin-bottom:10px;font-size:14px;font-weight:600}.sr-task-q-preview{background:#fff;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:6px;padding:8px 12px;font-size:13px;display:flex}.sr-task-q-preview button{color:#e57373;cursor:pointer;background:0 0;border:none}.sr-task-new-q{background:#fff;border-radius:10px;flex-direction:column;gap:8px;padding:12px;display:flex}.sr-task-new-q input[type=text]{border:2px solid #f0ede8;border-radius:8px;outline:none;padding:10px 12px;font-family:inherit;font-size:13px}.sr-task-opt-row{align-items:center;gap:8px;display:flex}.sr-task-opt-row input[type=text]{flex:1}.sr-task-opt-row input[type=radio]{cursor:pointer;width:16px;height:16px}.sr-task-add-q-btn{color:#fff;cursor:pointer;background:#7e57c2;border:none;border-radius:8px;align-items:center;gap:4px;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:600;display:flex}.sr-task-add-q-btn:disabled{opacity:.4;cursor:not-allowed}.sr-task-publish-btn{color:#fff;cursor:pointer;background:#4caf50;border:none;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:12px;font-family:inherit;font-size:14px;font-weight:600;display:flex}.sr-task-publish-btn:disabled{opacity:.4}.sr-task-publish-btn.quiz{background:#ff9800}.sr-task-list{flex-direction:column;gap:10px;display:flex}.sr-task-list h4{color:#555;margin-bottom:4px;font-size:14px;font-weight:700}.sr-empty-hint{color:#999;text-align:center;padding:20px;font-size:13px}.sr-task-card{background:#fff;border:1px solid #f5f5f5;border-radius:14px;padding:16px;transition:all .2s}.sr-task-card:hover{border-color:#ede0f4;box-shadow:0 2px 8px #0000000a}.sr-task-card.quiz-card{cursor:pointer;border-color:#ffe0b2}.sr-task-card-header{justify-content:space-between;align-items:flex-start;display:flex}.sr-task-card-header h5{color:#1a1a1a;margin:0 0 4px;font-size:15px;font-weight:700}.sr-task-card-header p{color:#666;margin:0 0 4px;font-size:13px}.sr-task-meta{color:#999;font-size:11px}.sr-task-card-actions{align-items:center;gap:6px;display:flex}.sr-task-start-btn{color:#fff;cursor:pointer;background:#7e57c2;border:none;border-radius:8px;align-items:center;gap:4px;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:600;display:flex}.sr-task-delete-btn{color:#ccc;cursor:pointer;background:0 0;border:none;padding:4px;font-size:13px}.sr-task-delete-btn:hover{color:#e57373}.sr-whiteboard-content{flex-direction:column;gap:14px;display:flex}.sr-whiteboard-colors-inline{gap:8px;display:flex}.sr-color-dot{cursor:pointer;border:2px solid #0000;border-radius:50%;width:28px;height:28px}.sr-color-dot.active{border-color:#1a1a1a;box-shadow:0 0 0 2px #fff,0 0 0 4px #1a1a1a}.sr-whiteboard-textarea{resize:vertical;border:2px solid #f0ede8;border-radius:14px;outline:none;width:100%;min-height:300px;padding:16px;font-family:Georgia,serif;font-size:16px;line-height:1.6}.sr-whiteboard-actions{gap:8px;display:flex}.sr-whiteboard-actions button{cursor:pointer;color:#fff;background:#7e57c2;border:none;border-radius:10px;padding:10px 18px;font-family:inherit;font-weight:600}.sr-whiteboard-actions .clear-btn{color:#666;background:#f5f5f5}.sr-participants-content h4{color:#555;margin-bottom:14px;font-size:14px;font-weight:700}.sr-participants-list-vertical{flex-direction:column;gap:8px;display:flex}.sr-participant-row{background:#fafafa;border-radius:10px;align-items:center;gap:10px;padding:10px 14px;display:flex}.sr-participant-avatar-sm{object-fit:cover;border-radius:50%;width:32px;height:32px}.sr-participant-row span{color:#1a1a1a;font-size:14px;font-weight:500}.sr-host-badge{color:#7e57c2;background:#ede0f4;border-radius:6px;margin-left:auto;padding:2px 8px;font-size:10px;font-weight:700}.sr-overlay{z-index:300;background:#0009;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.sr-task-take,.sr-task-results{background:#fff;border-radius:20px;width:100%;max-width:600px;max-height:85vh;padding:28px 24px;overflow-y:auto}.sr-task-take-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.sr-task-take-header h3{color:#1a1a1a;margin:0;font-size:20px;font-weight:700}.sr-task-take-timer{color:#ff9800;background:#fff0e0;border-radius:10px;align-items:center;gap:6px;padding:8px 14px;font-size:16px;font-weight:700;display:flex}.sr-task-take-desc{color:#666;margin-bottom:20px;font-size:14px;line-height:1.5}.sr-task-q-block{margin-bottom:20px}.sr-task-q-text{color:#1a1a1a;margin-bottom:10px;font-size:15px;font-weight:600}.sr-task-options{flex-direction:column;gap:6px;display:flex}.sr-task-opt{cursor:pointer;text-align:left;background:#fff;border:2px solid #f0ede8;border-radius:12px;padding:12px 16px;font-family:inherit;font-size:14px;transition:all .2s}.sr-task-opt:hover{border-color:#d4c4b2}.sr-task-opt.selected{background:#f9f6fc;border-color:#7e57c2}.sr-task-submit-btn{color:#fff;cursor:pointer;background:#7e57c2;border:none;border-radius:14px;width:100%;margin-bottom:8px;padding:14px;font-family:inherit;font-size:16px;font-weight:600}.sr-task-submit-btn:disabled{opacity:.4}.sr-task-close-btn{color:#666;cursor:pointer;background:#f5f5f5;border:none;border-radius:14px;width:100%;padding:12px;font-family:inherit;font-size:14px;font-weight:600}.sr-task-results{text-align:center}.sr-task-score-circle{background:linear-gradient(135deg,#7e57c2,#b39ddb);border-radius:50%;justify-content:center;align-items:center;width:100px;height:100px;margin:20px auto;display:flex}.sr-task-score-num{color:#fff;font-size:32px;font-weight:800}.sr-task-results p{color:#555;margin-bottom:20px;font-size:16px}.sr-task-results button{color:#fff;cursor:pointer;background:#1a1a1a;border:none;border-radius:12px;padding:12px 24px;font-family:inherit;font-size:14px;font-weight:600}.sr-chat-zone{z-index:100;flex-direction:column-reverse;align-items:flex-end;gap:8px;display:flex;position:fixed;bottom:90px;right:20px}.sr-chat-toggle-btn{color:#fff;cursor:pointer;background:#7e57c2;border:none;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;font-size:20px;transition:all .2s;display:flex;position:relative;box-shadow:0 4px 16px #7e57c24d}.sr-chat-toggle-btn:hover{background:#6a47b0;transform:scale(1.05)}.sr-chat-badge{color:#fff;background:#ef4444;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;font-weight:700;display:flex;position:absolute;top:-4px;right:-4px}.sr-chat-toast{color:#fff;cursor:pointer;background:#1a1a1a;border-radius:12px;max-width:260px;padding:10px 16px;font-size:13px;animation:.3s toastIn;box-shadow:0 4px 12px #0003}.sr-chat-toast strong{color:#b39ddb}.sr-chat-panel{background:#fff;border-radius:16px;flex-direction:column;width:300px;max-height:400px;animation:.25s slideUp;display:flex;overflow:hidden;box-shadow:0 8px 32px #0000001f}.sr-chat-panel-header{color:#7e57c2;background:#f9f6fc;border-bottom:1px solid #ede0f4;justify-content:space-between;align-items:center;padding:14px 16px;font-size:14px;font-weight:700;display:flex}.sr-chat-panel-header button{color:#999;cursor:pointer;background:0 0;border:none;font-size:14px}.sr-chat-panel-messages{flex-direction:column;flex:1;gap:10px;max-height:260px;padding:14px;display:flex;overflow-y:auto}.sr-chat-msg{align-items:flex-start;gap:8px;display:flex}.sr-chat-msg-avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:28px;height:28px}.sr-chat-msg-body{flex-direction:column;gap:1px;display:flex}.sr-chat-msg-sender{color:#7e57c2;font-size:11px;font-weight:600}.sr-chat-msg-text{color:#1a1a1a;margin:0;font-size:13px;line-height:1.4}.sr-chat-panel-input{border-top:1px solid #f5f5f5;gap:6px;padding:10px 14px;display:flex}.sr-chat-panel-input input{border:2px solid #f0ede8;border-radius:20px;outline:none;flex:1;padding:10px 14px;font-family:inherit;font-size:13px}.sr-chat-panel-input button{color:#fff;cursor:pointer;background:#7e57c2;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:13px;display:flex}.sr-chat-panel-input button:disabled{opacity:.4}.dash-footer{z-index:50;background:#fff;border-top:1px solid #f5f5f5;justify-content:space-around;padding:10px 20px 18px;display:flex;position:fixed;bottom:0;left:0;right:0}@keyframes toastIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}*{box-sizing:border-box;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.profile-app{background:#fafafa;min-height:100vh;padding-bottom:72px}.profile-loading{background:#fafafa;justify-content:center;align-items:center;min-height:100vh;display:flex}.profile-spinner{border:3px solid #f0ede8;border-top-color:#ff9800;border-radius:50%;width:28px;height:28px;animation:.7s linear infinite spin}.profile-header{z-index:50;background:#fff;justify-content:space-between;align-items:center;padding:16px 20px;display:flex;position:sticky;top:0}.header-greeting{color:#1a1a1a;font-size:18px;font-weight:700}.dash-profile-btn{cursor:pointer;color:#999;background:0 0;border:none;padding:8px;font-size:18px}.sidebar-overlay{z-index:200;background:#0000004d;animation:.2s fadeIn;position:fixed;inset:0}.sidebar{background:#fff;flex-direction:column;width:280px;padding:24px;animation:.25s slideIn;display:flex;position:fixed;top:0;bottom:0;right:0}.sidebar-close{cursor:pointer;color:#666;background:#f5f5f5;border:none;border-radius:50%;align-self:flex-end;width:32px;height:32px;font-size:15px}.sidebar-profile{text-align:center;margin:20px 0 28px}.sidebar-avatar{object-fit:cover;border-radius:50%;width:56px;height:56px;margin-bottom:10px}.sidebar-profile h3{color:#1a1a1a;font-size:16px;font-weight:700}.sidebar-menu{flex-direction:column;flex:1;gap:2px;display:flex}.sidebar-item{cursor:pointer;color:#444;background:0 0;border:none;border-radius:10px;align-items:center;gap:10px;padding:12px 14px;font-size:14px;display:flex}.sidebar-item:hover{background:#f5f5f5}.sidebar-logout{cursor:pointer;color:#dc2626;background:#fff0f0;border:none;border-radius:10px;align-items:center;gap:10px;margin-top:auto;padding:12px 14px;font-size:14px;display:flex}.profile-main{width:100%;max-width:500px;margin:0 auto;padding:20px}.profile-card{text-align:center;background:#fff;border-radius:20px;margin-bottom:28px;padding:28px 20px 20px;box-shadow:0 1px 4px #00000008}.profile-avatar-section{margin-bottom:20px}.profile-avatar-wrap{margin-bottom:14px;display:inline-block;position:relative}.profile-avatar{object-fit:cover;border:3px solid #ffe0b2;border-radius:50%;width:80px;height:80px}.profile-avatar-edit{color:#fff;cursor:pointer;background:#1a1a1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:11px;display:flex;position:absolute;bottom:0;right:0}.profile-name{color:#1a1a1a;margin:0 0 4px;font-size:20px;font-weight:700}.profile-level{color:#999;margin:0;font-size:14px}.profile-stats{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.profile-stat{text-align:center;flex-direction:column;align-items:center;gap:4px;display:flex}.profile-stat-icon{font-size:22px}.profile-stat-num{color:#1a1a1a;font-size:16px;font-weight:700}.profile-stat-label{color:#999;font-size:10px}.section-block{margin-bottom:28px}.section-title{color:#1a1a1a;margin:0 0 14px;font-size:14px;font-weight:700}.profile-subjects{flex-direction:column;gap:8px;display:flex}.profile-subject-item{background:#fff;border-radius:14px;align-items:center;gap:12px;padding:14px 16px;display:flex;box-shadow:0 1px 2px #00000005}.profile-subject-info{flex-direction:column;gap:2px;display:flex}.profile-subject-name{color:#1a1a1a;font-size:14px;font-weight:600}.profile-subject-status{font-size:12px;font-weight:600}.achievements-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.achievement-card{text-align:center;background:#fff;border-radius:16px;padding:18px 14px;box-shadow:0 1px 2px #00000005}.achievement-icon{margin-bottom:8px;font-size:28px;display:block}.achievement-label{color:#1a1a1a;font-size:14px;font-weight:700;display:block}.achievement-desc{color:#999;margin-top:2px;font-size:11px;display:block}.settings-list{flex-direction:column;gap:4px;display:flex}.setting-item{cursor:pointer;text-align:left;background:#fff;border:none;border-radius:14px;align-items:center;gap:14px;padding:16px;font-family:inherit;transition:all .15s;display:flex;box-shadow:0 1px 2px #00000005}.setting-item:hover{background:#f9f9f9}.setting-icon{text-align:center;width:24px;font-size:18px}.setting-label{color:#1a1a1a;flex:1;font-size:14px;font-weight:500}.setting-value{color:#999;font-size:13px}.setting-arrow{color:#ccc;font-size:12px}.profile-footer{z-index:50;background:#fff;border-top:1px solid #f0ede8;justify-content:space-around;padding:10px 20px 18px;display:flex;position:fixed;bottom:0;left:0;right:0}.ftab{cursor:pointer;color:#ccc;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;padding:8px;font-size:20px;transition:all .2s;display:flex}.ftab.active{color:#1a1a1a;background:#f5f5f5}.profile-stat-img{object-fit:contain;width:28px;height:28px}.section-title-icon{object-fit:contain;vertical-align:middle;width:20px;height:20px;margin-right:6px}.pw{justify-content:center;align-items:center;display:inline-flex;position:relative}.notes-input-row{gap:8px;margin-bottom:16px;display:flex}.notes-input{color:#1a1a1a;background:#fff;border:2px solid #f5f5f5;border-radius:14px;outline:none;flex:1;padding:12px 16px;font-family:inherit;font-size:14px;transition:border-color .2s}.notes-input:focus{border-color:#ffb74d}.notes-add-btn{color:#fff;cursor:pointer;background:#1a1a1a;border:none;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:16px;transition:background .2s;display:flex}.notes-add-btn:hover:not(:disabled){background:#333}.notes-add-btn:disabled{opacity:.4;cursor:not-allowed}.notes-empty{text-align:center;color:#999;margin:12px 0;font-size:14px}.notes-list{flex-direction:column;gap:10px;display:flex}.note-item{background:#fff;border:1px solid #f0ede8;border-radius:14px;flex-direction:column;gap:8px;padding:14px 16px;display:flex}.note-text{color:#1a1a1a;word-break:break-word;margin:0;font-size:15px;line-height:1.4}.note-meta{justify-content:space-between;align-items:center;display:flex}.note-date{color:#999;font-size:12px}.note-delete-btn{color:#e57373;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;font-size:14px;transition:background .2s;display:flex}.note-delete-btn:hover{background:#fff0f0}.neo-progress-card{background:linear-gradient(135deg,#f9f6fc,#fff);border:2px solid #ede0f4;border-radius:18px;align-items:flex-start;gap:16px;padding:20px;display:flex}.neo-progress-text h3{color:#7e57c2;margin:0 0 6px;font-size:16px;font-weight:700}.neo-progress-text p{color:#555;margin:0 0 12px;font-size:14px;line-height:1.5}.neo-progress-btn{color:#fff;cursor:pointer;background:#7e57c2;border:none;border-radius:12px;align-items:center;gap:6px;padding:10px 18px;font-family:inherit;font-size:14px;font-weight:600;display:flex}.topics-app{background:#fafafa;min-height:100vh}.topics-header{z-index:50;background:#fff;border-bottom:1px solid #f5f5f5;justify-content:space-between;align-items:center;padding:16px 20px;display:flex;position:sticky;top:0}.topics-back{color:#7e57c2;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;font-family:inherit;font-size:14px;font-weight:600;display:flex}.topics-header h1{color:#1a1a1a;margin:0;font-size:20px;font-weight:700}.topics-header-right{align-items:center;gap:12px;display:flex}.topics-neo-message{background:linear-gradient(135deg,#f9f6fc,#fff);border-bottom:1px solid #ede0f4;align-items:center;gap:14px;padding:16px 20px;display:flex}.topics-neo-wave{flex-shrink:0;align-items:flex-end;gap:2px;height:24px;display:flex}@keyframes wave{0%,to{transform:scaleY(1)}50%{transform:scaleY(.4)}}.topics-neo-message p{color:#1a1a1a;margin:0;font-size:15px;font-weight:500}.topics-main{max-width:800px;margin:0 auto;padding:20px}.topics-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.topic-card{cursor:pointer;background:#fff;border:2px solid #f5f5f5;border-radius:20px;flex-direction:column;gap:12px;padding:24px;transition:all .3s;display:flex}.topic-card:hover:not(.locked){border-color:#7e57c2;transform:translateY(-4px);box-shadow:0 8px 24px #7e57c21f}.topic-card.available{background:#fff;border-color:#7e57c2;box-shadow:0 4px 20px #7e57c21a}.topic-card.available:hover{box-shadow:0 8px 28px #7e57c22e}.topic-card.locked{opacity:.5;cursor:not-allowed;background:#f5f5f5;border-color:#e0e0e0}.topic-card.locked:hover{box-shadow:none;transform:none}.topic-card.completed{background:#f0fff4;border-color:#4caf50}.topic-card.in-progress{background:#fff8f0;border-color:#ff9800}.topic-card-header{justify-content:space-between;align-items:center;display:flex}.topic-icon{font-size:32px}.topic-status-icon{color:#4caf50;font-size:16px}.topic-card.completed .topic-status-icon{color:#4caf50}.topic-card.in-progress .topic-status-icon{color:#ff9800}.topic-card.locked .topic-status-icon{color:#999}.topic-card.available .topic-status-icon{color:#7e57c2}.topic-name{color:#1a1a1a;margin:0;font-size:18px;font-weight:700}.topic-description{color:#888;margin:0;font-size:14px;line-height:1.4}.topic-progress-section{flex-direction:column;gap:6px;display:flex}.topic-progress-bar{background:#f5f5f5;border-radius:3px;width:100%;height:6px;overflow:hidden}.topic-progress-fill{background:#7e57c2;border-radius:3px;height:100%;transition:width .5s}.topic-card.completed .topic-progress-fill{background:#4caf50}.topic-card.in-progress .topic-progress-fill{background:#ff9800}.topic-card.available .topic-progress-fill{background:#7e57c2}.topic-progress-text{color:#999;font-size:12px;font-weight:500}.topic-action-btn{cursor:pointer;color:#fff;background:#7e57c2;border:none;border-radius:12px;justify-content:center;align-items:center;gap:6px;padding:12px;font-family:inherit;font-size:14px;font-weight:600;transition:all .2s;display:flex}.topic-action-btn.available{color:#fff;background:#7e57c2}.topic-action-btn.in-progress{color:#fff;background:#ff9800}.topic-action-btn.completed{color:#fff;background:#4caf50}.topic-action-btn:disabled{color:#999;cursor:not-allowed;background:#ccc}@media (width<=600px){.topics-grid{grid-template-columns:1fr}}.tl-app{background:#fafafa;flex-direction:column;min-height:100vh;display:flex}.tl-loading{background:#fafafa;justify-content:center;align-items:center;min-height:100vh;display:flex}.tl-spinner{border:3px solid #f5f5f5;border-top-color:#7e57c2;border-radius:50%;width:28px;height:28px;animation:.7s linear infinite spin}.tl-header{z-index:50;background:#fff;border-bottom:1px solid #f5f5f5;justify-content:space-between;align-items:center;padding:16px 20px;display:flex;position:sticky;top:0}.tl-back{color:#7e57c2;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;font-family:inherit;font-size:14px;font-weight:600;display:flex}.tl-progress-mini{flex:1;align-items:center;gap:10px;max-width:200px;margin:0 16px;display:flex}.tl-progress-bar-mini{background:#f5f5f5;border-radius:2px;flex:1;height:4px;overflow:hidden}.tl-progress-fill-mini{background:#7e57c2;border-radius:2px;height:100%;transition:width .5s}.tl-progress-text-mini{color:#999;font-size:12px;font-weight:600}.tl-neo-message{background:linear-gradient(135deg,#f9f6fc,#fff);border-bottom:1px solid #ede0f4;align-items:center;gap:12px;padding:14px 20px;display:flex}.tl-neo-wave{flex-shrink:0;align-items:flex-end;gap:2px;height:20px;display:flex}.wave-bar{background:#7e57c2;border-radius:2px;width:3px;animation:1.2s ease-in-out infinite wave}.wave-bar:first-child{height:8px;animation-delay:0s}.wave-bar:nth-child(2){height:14px;animation-delay:.15s}.wave-bar:nth-child(3){height:20px;animation-delay:.3s}.wave-bar:nth-child(4){height:14px;animation-delay:.45s}.wave-bar:nth-child(5){height:8px;animation-delay:.6s}.tl-neo-message p{color:#1a1a1a;margin:0;font-size:15px;font-weight:500}.tl-main{flex:1;justify-content:center;align-items:flex-start;padding:40px 20px 24px;display:flex}.tl-generating{text-align:center;margin-top:80px;animation:.5s fadeInUp}.tl-spinner-icon{color:#7e57c2;margin-bottom:20px;font-size:48px;animation:1s linear infinite spin}.tl-generating h2{color:#1a1a1a;margin:0 0 8px;font-size:22px;font-weight:700}.tl-generating p{color:#888;font-size:15px}.tl-equation-section{text-align:center;width:100%;max-width:500px;margin-top:20px;animation:.5s fadeInUp}.tl-equation-label{color:#fff;background:#7e57c2;border-radius:20px;margin-bottom:24px;padding:6px 16px;font-size:13px;font-weight:700;display:inline-block}.tl-equation-card{background:#fff;border:2px solid #ede0f4;border-radius:24px;margin-bottom:20px;padding:40px 32px;box-shadow:0 4px 24px #7e57c20f}.tl-equation-card.small{margin-bottom:24px;padding:24px 20px}.tl-equation-text{color:#1a1a1a;margin:0 0 12px;font-family:Georgia,serif;font-size:36px;font-weight:800;line-height:1.3}.tl-equation-text.small{font-size:24px}.tl-equation-instruction{color:#888;margin:0;font-size:16px}.tl-equation-hint{color:#999;margin:0 0 32px;font-size:14px;line-height:1.5}.tl-result{margin-bottom:24px;animation:.4s cubic-bezier(.68,-.55,.27,1.55) popIn}.tl-result-icon{border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto;font-size:36px;display:flex}.tl-result-icon.correct{color:#4caf50;background:#e8f5e9;box-shadow:0 4px 24px #4caf5033}.tl-result-icon.incorrect{color:#e57373;background:#fff0f0;box-shadow:0 4px 24px #e5737326}.tl-result-x{font-size:40px;font-weight:700}.tl-result-text{color:#888;margin-top:12px;font-size:15px}.tl-camera-btn{color:#fff;cursor:pointer;background:#7e57c2;border:none;border-radius:18px;justify-content:center;align-items:center;gap:10px;width:100%;padding:20px;font-family:inherit;font-size:18px;font-weight:700;transition:all .3s;display:flex;box-shadow:0 4px 20px #7e57c24d}.tl-camera-btn:hover:not(:disabled){background:#6a47b0;transform:translateY(-2px)}.tl-camera-btn:disabled{opacity:.7;cursor:not-allowed}.tl-next-btn{color:#fff;cursor:pointer;background:#4caf50;border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;padding:18px;font-family:inherit;font-size:16px;font-weight:700;transition:all .3s;animation:.4s fadeInUp;display:flex}.tl-next-btn:hover{background:#43a047;transform:translateY(-2px)}.tl-teaching-section{width:100%;max-width:600px;animation:.5s fadeInUp}.tl-mistake-bubble{background:#fff8e1;border:1px solid #ffe082;border-radius:16px;align-items:flex-start;gap:12px;margin-bottom:24px;padding:16px 20px;animation:.4s fadeInUp;display:flex}.tl-mistake-icon{flex-shrink:0;font-size:24px}.tl-mistake-bubble p{color:#5d4037;margin:0;font-size:14px;line-height:1.5}.tl-teaching-equation{text-align:center;background:#fff;border:2px solid #ede0f4;border-radius:20px;margin-bottom:24px;padding:28px 24px;font-family:Georgia,serif;font-size:28px;font-weight:700}.math-normal{transition:all .4s}.math-highlighted{background:linear-gradient(#0000 60%,#7e57c240 60%);border-radius:2px;padding:0 2px;animation:1.5s ease-in-out infinite highlightPulse}@keyframes highlightPulse{0%,to{background:linear-gradient(#0000 60%,#7e57c240 60%)}50%{background:linear-gradient(#0000 60%,#7e57c273 60%)}}.tl-teaching-steps-container{flex-direction:column;gap:10px;margin-bottom:24px;display:flex}.tl-teaching-step{background:#fff;border:2px solid #f0ede8;border-radius:16px;align-items:flex-start;gap:14px;padding:16px 18px;transition:all .4s;display:flex}.tl-teaching-step.active{border-color:#7e57c2;transform:scale(1.02);box-shadow:0 2px 12px #7e57c21a}.tl-teaching-step.done{opacity:.7;border-color:#e0e0e0}.tl-teaching-step.pending{opacity:.4}.tl-step-indicator{color:#999;background:#f5f5f5;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:700;transition:all .3s;display:flex}.tl-teaching-step.active .tl-step-indicator{color:#fff;background:#7e57c2}.tl-teaching-step.done .tl-step-indicator{color:#fff;background:#4caf50}.tl-step-pulse{background:#fff;border-radius:50%;width:12px;height:12px;animation:1s ease-in-out infinite stepPulse}@keyframes stepPulse{0%,to{opacity:.6;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}.tl-step-content{color:#1a1a1a;flex:1;font-size:15px;line-height:1.6}.tl-step-content p{margin:0}.tl-step-pending-text{color:#ccc!important}.typewriter{position:relative}.typewriter-cursor{color:#7e57c2;font-weight:700;animation:.5s step-end infinite blink}.typewriter-cursor.visible{opacity:1}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.tl-teaching-nav{margin-top:8px}.tl-next-step-btn{color:#fff;cursor:pointer;background:#7e57c2;border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;padding:16px;font-family:inherit;font-size:16px;font-weight:700;transition:all .3s;animation:.4s fadeInUp;display:flex}.tl-next-step-btn:hover{background:#6a47b0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fefcfb;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif}#root{min-height:100vh}.splash-screen{z-index:9999;background:#fefcfb;justify-content:center;align-items:center;animation:.4s 1.6s forwards splashFadeOut;display:flex;position:fixed;inset:0}.splash-content{text-align:center;animation:.6s splashPulse}.splash-logo{object-fit:contain;width:120px;height:120px;margin-bottom:20px;animation:.8s logoBounce}.splash-title{color:#1a1a1a;letter-spacing:-.5px;opacity:0;font-size:32px;font-weight:700;animation:.5s .4s forwards fadeIn}@keyframes splashPulse{0%{opacity:0;transform:scale(.8)}50%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes logoBounce{0%{transform:scale(0)rotate(-10deg)}60%{transform:scale(1.1)rotate(3deg)}to{transform:scale(1)rotate(0)}}@keyframes splashFadeOut{to{opacity:0;pointer-events:none}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;color:#1a1a1a;background:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif}
