body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.ai-generator{margin:20px auto;max-width:1000px;padding:20px}.ai-header{margin-bottom:30px;text-align:center}.ai-header h2{color:#2c3e50;margin-bottom:10px}.ai-header p{color:#7f8c8d}.ai-disabled{background:#fff3cd;border:2px solid #ffc107;border-radius:10px;padding:40px;text-align:center}.setup-instructions{background:#fff;border-radius:8px;margin-left:auto;margin-right:auto;margin-top:20px;max-width:600px;padding:20px;text-align:left}.setup-instructions h3{color:#2c3e50;margin-bottom:15px}.setup-instructions ol{line-height:1.8}.setup-instructions code{background:#f4f4f4;border-radius:3px;font-family:Courier New,monospace;padding:2px 6px}.ai-controls{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin-bottom:30px;padding:30px}.form-group{margin-bottom:20px}.form-group label{color:#2c3e50;display:block;font-weight:600;margin-bottom:8px}.form-group input,.form-group select{border:2px solid #e0e0e0;border-radius:5px;font-size:16px;padding:10px;transition:border-color .3s;width:100%}.form-group input:focus,.form-group select:focus{border-color:#3498db;outline:none}.generate-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:18px;font-weight:600;padding:15px;transition:transform .2s,box-shadow .2s;width:100%}.generate-btn:hover:not(:disabled){box-shadow:0 5px 15px #667eea66;transform:translateY(-2px)}.generate-btn:disabled{cursor:not-allowed;opacity:.6}.error-message{background:#fee;border-left:4px solid #c33;border-radius:8px;color:#c33;margin:20px 0;padding:15px}.ai-result{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;padding:30px}.ai-result h3{color:#27ae60;font-size:24px;margin-bottom:20px}.lesson-card,.question-card{background:#f8f9fa;border-left:4px solid #3498db;border-radius:8px;margin-bottom:20px;padding:20px}.lesson-card h4,.question-card h4{color:#2c3e50;margin-bottom:10px}.description{color:#7f8c8d;font-style:italic;margin-bottom:15px}.concepts,.objectives{margin:15px 0}.concepts ul,.objectives ul{line-height:1.8;margin-left:20px}.content{margin-top:20px}.content-text{background:#fff;border-radius:5px;line-height:1.6;padding:15px;white-space:pre-wrap}.question-card p{line-height:1.6;margin:10px 0}.question-card strong{color:#2c3e50}.question-card details{cursor:pointer;margin-top:10px}.question-card summary{color:#3498db;font-weight:600;padding:5px}.question-card details ul{line-height:1.6;margin-left:20px;margin-top:10px}.practice-info{background:#e8f4f8;border-left:4px solid #3498db;border-radius:8px;margin-bottom:20px;padding:20px}.practice-info h4{color:#2c3e50;margin-bottom:10px}.practice-info p{color:#555;margin:5px 0}@media (max-width:768px){.ai-generator{padding:10px}.ai-controls,.ai-result{padding:20px}}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;margin:0}@keyframes gradientShift{0%,to{background:linear-gradient(135deg,#667eea,#764ba2)}50%{background:linear-gradient(135deg,#f093fb,#f5576c)}}body.dark-mode{--bg-color:#121212;--card-bg-color:#1e1e1e;--text-color:#e0e0e0;--text-color-light:#999;--border-color:#333;--input-bg-color:#2c2c2c;--primary-color:#007aff}body{background:linear-gradient(120deg,#fdfbfb,#ebedee);color:#333;color:var(--text-color,#333);transition:background-color .3s,color .3s}#root{align-items:center;min-height:100vh;padding:20px}#root,.App{display:flex;justify-content:center}.App{width:100%}.btn{border:none;border-radius:12px;cursor:pointer;display:inline-block;font-size:16px;font-weight:600;letter-spacing:.5px;overflow:hidden;padding:14px 28px;position:relative;text-align:center;text-decoration:none;text-transform:uppercase;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.btn:hover:before{left:100%}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 15px #667eea66;color:#fff}.btn-primary:hover{box-shadow:0 8px 25px #667eea99;transform:translateY(-2px)}.btn-secondary{background:linear-gradient(135deg,#ffecd2,#fcb69f);box-shadow:0 4px 15px #fcb69f66;color:#333}.btn-secondary:hover{box-shadow:0 8px 25px #fcb69f99}.btn-danger{background-color:#ff3b30;width:100%}.btn-danger:hover{background-color:#c00}.input-group{margin-bottom:24px;position:relative;width:100%}.input-group label{color:var(--text-color,#333);font-size:14px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.input-group input,.input-group select,.input-group textarea{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;background:var(--input-bg-color,#ffffffe6);border:2px solid #e1e5e9;border:2px solid var(--border-color,#e1e5e9);border-radius:12px;box-sizing:border-box;color:#333;color:var(--text-color,#333);font-size:16px;padding:16px;transition:all .3s ease}.input-group input:focus,.input-group select:focus,.input-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;transform:translateY(-2px)}.correct{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-left:4px solid #10b981;color:#10b981}.correct,.incorrect{animation:slideInRight .5s ease;border-radius:12px;font-weight:600;padding:12px 20px}.incorrect{background:linear-gradient(135deg,#fee2e2,#fecaca);border-left:4px solid #ef4444;color:#ef4444}@keyframes slideInRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.login-container{animation:fadeInUp .8s ease;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border:1px solid #fff3;border-radius:24px;box-shadow:0 20px 60px #00000026;display:flex;max-width:95%;overflow:hidden;width:1100px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.login-left-panel{background:linear-gradient(135deg,#667eea,#764ba2);flex:1 1;flex-direction:column;position:relative}.login-illustration,.login-left-panel{align-items:center;display:flex;justify-content:center;overflow:hidden}.login-illustration{animation:float 3s ease-in-out infinite;background:#ffffff1a;border-radius:50%;color:#fff;cursor:pointer;font-size:120px;height:300px;transition:all .3s ease;width:300px;z-index:1}.login-illustration:hover{background:#ffffff26;transform:scale(1.05)}.logo-image{animation:logoFloat 3s ease-in-out infinite;filter:drop-shadow(0 4px 8px rgba(0,0,0,.2));height:80%;object-fit:contain;transition:all .4s cubic-bezier(.4,0,.2,1);width:80%}.login-illustration:hover .logo-image{filter:drop-shadow(0 6px 12px rgba(0,0,0,.3));transform:scale(1.1)}@keyframes logoFloat{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-10px) rotate(2deg)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.login-welcome-text{color:#fff;margin-top:20px;text-align:center;z-index:1}.login-welcome-text h3{font-size:24px;font-weight:700;margin:0 0 10px}.login-welcome-text p{font-size:16px;margin:0;opacity:.9}.logo-hint{animation:pulse 2s infinite;font-size:14px!important;font-style:italic;margin-top:15px!important;opacity:.7!important}@keyframes pulse{0%,to{opacity:.7}50%{opacity:1}}.login-right-panel{background:#fffc;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:60px}.login-form-box h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:36px;font-weight:800;margin-bottom:10px}.login-form-box p{color:#666;font-size:18px;line-height:1.6;margin-bottom:40px}#login-form{align-items:flex-start;display:flex;flex-direction:column}.account-type-options{align-items:center;display:flex;gap:20px;margin-bottom:8px;margin-top:8px}.account-type-options label{align-items:center;cursor:pointer;display:flex;font-weight:500;margin:0!important}.account-type-options input[type=radio]{cursor:pointer;margin-right:8px;width:auto}#login-form .btn{margin-bottom:10px;width:100%}.demo-credentials{background:#667eea1a;border-radius:8px;font-size:14px;margin-top:20px;padding:15px}.app-container{animation:fadeInUp .8s ease;background:var(--card-bg-color,#fffffff2);border:1px solid #fff3;border-radius:24px;box-shadow:0 20px 60px #00000026;margin:20px auto;max-width:900px;overflow:visible;width:100%}.app-header{background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:none;border-top-left-radius:24px;border-top-right-radius:24px;position:relative}.skills-button{margin-bottom:8px}.app-header h1{font-size:28px;font-weight:700;margin:0;text-shadow:0 2px 4px #0000001a}.role-badge{background:#10b9814d;border:1px solid #10b98180;border-radius:20px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.header-link{background:#fff3;border-radius:20px;color:#fff;font-weight:600;margin-left:10px;padding:8px 16px;text-decoration:none}.header-link:hover{background:#ffffff4d}.logout-btn{background:#ff3b3033!important;border:1px solid #ff3b304d;transition:all .3s ease}.logout-btn:hover{background:#ff3b3066!important;border-color:#ff3b3080;transform:translateY(-2px)}.admin-link{background:#10b98133!important;border:1px solid #10b9814d;transition:all .3s ease}.admin-link:hover{background:#10b98166!important;border-color:#10b98180;transform:translateY(-2px)}.settings-icon{cursor:pointer;display:inline-block;font-size:24px;margin-left:15px;vertical-align:middle}.admin-content,.lesson-content,.profile-content,.settings-content{margin-top:0;padding:20px 30px}#question-card{animation:slideInDown .6s ease;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:2px solid #667eea1a;border-radius:20px;margin-bottom:32px;overflow:hidden;padding:32px;position:relative}#question-card:before{background:linear-gradient(135deg,#667eea,#764ba2);content:"";height:4px;left:0;position:absolute;right:0;top:0}#question-card h2{color:#667eea;font-size:14px;font-weight:700;letter-spacing:1px;margin:0 0 16px;text-transform:uppercase}#question-card p{color:#1e293b;color:var(--text-color,#1e293b);font-size:24px;font-weight:600;line-height:1.4;margin:0}@keyframes slideInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.answer-box{animation:slideInUp .6s ease .3s both;display:flex;gap:16px}.answer-box input{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border:2px solid #e1e5e9;border-radius:16px;flex-grow:1;font-size:18px;padding:18px;transition:all .3s ease}.answer-box input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none;transform:translateY(-2px)}#feedback-box{font-size:18px;margin-top:24px;min-height:60px}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.profile-content h2{font-size:32px;font-weight:800;margin-top:0}.profile-content .skill-stats{grid-gap:20px;display:grid!important;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))!important;margin:32px 0}.profile-content .stat-card{animation:fadeInUp .6s ease;background:linear-gradient(135deg,#667eea,#764ba2)!important;border-radius:16px;box-shadow:0 8px 25px #667eea4d;padding:24px;text-align:center}.stat-number{font-size:36px;font-weight:800;margin-bottom:8px}.stat-label{font-size:14px;letter-spacing:.5px}.progress-bars-container{margin-top:20px}.progress-bar-group{animation:fadeInUp .6s ease;background:#fffc;background:var(--card-bg-color,#fffc);border:1px solid #667eea1a;border:1px solid var(--border-color,#667eea1a);border-radius:16px;margin-bottom:32px;padding:24px}.progress-label{align-items:center;color:#1e293b;color:var(--text-color,#1e293b);display:flex;font-size:18px;font-weight:700;justify-content:space-between;margin-bottom:12px}.progress-percentage{color:#667eea;font-size:16px;font-weight:600}.progress-bar-background{background:linear-gradient(135deg,#e2e8f0,#cbd5e1);position:relative;width:100%}.progress-bar-foreground{background:linear-gradient(135deg,#667eea,#764ba2);overflow:hidden;position:relative;transition:width 1s cubic-bezier(.4,0,.2,1)}.settings-card{background-color:#f9f9f9;background-color:var(--card-bg-color,#f9f9f9);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);margin-bottom:20px;padding:20px}.settings-card h2{color:var(--text-color,#333);margin-top:0}.settings-row{align-items:center;display:flex;justify-content:space-between}.settings-row label{color:#333;color:var(--text-color,#333);font-size:16px;font-weight:500}#settings-feedback{font-size:16px;font-weight:600;margin-top:20px;text-align:center}.feedback-box.correct{color:green}.feedback-box.incorrect{color:red}.switch{display:inline-block;height:34px;position:relative;width:60px}.switch input{height:0;opacity:0;width:0}.slider{background-color:#ccc;bottom:0;cursor:pointer;left:0;right:0;top:0}.slider,.slider:before{position:absolute;transition:.4s}.slider:before{background-color:#fff;bottom:4px;content:"";height:26px;left:4px;width:26px}input:checked+.slider{background-color:#007aff}input:checked+.slider:before{transform:translateX(26px)}.slider.round{border-radius:34px}.slider.round:before{border-radius:50%}.admin-form{background:#fffc;background:var(--card-bg-color,#fffc);border:1px solid #667eea1a;border:1px solid var(--border-color,#667eea1a);border-radius:16px;margin-bottom:30px;padding:30px}.admin-feedback{text-align:center}.admin-info{background:#fffc;background:var(--card-bg-color,#fffc);border:1px solid #667eea1a;border:1px solid var(--border-color,#667eea1a);border-radius:16px}.admin-info h3{color:var(--text-color,#333);margin-top:0}.admin-status{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 15px #10b9814d;margin-bottom:25px;text-align:center}.admin-status p{font-size:16px;font-weight:600}@media (max-width:768px){.login-container{flex-direction:column;max-width:400px;width:95%}.login-left-panel{padding:40px 20px}.login-right-panel{padding:40px 30px}.app-container{margin:10px;width:calc(100% - 20px)}.app-header{flex-direction:column;gap:15px;padding:20px;text-align:center}.app-header div{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.header-link{font-size:14px;padding:6px 12px}.answer-box{flex-direction:column}.skill-stats{grid-template-columns:1fr}#question-card{padding:20px}#question-card p{font-size:20px}}.hint-box{animation:fadeIn .3s ease-in;background:#ffc1071a;border:2px solid #ffc107;border-radius:8px;margin:10px 0;padding:12px}.hint-box p{color:#856404;margin:0}.button-group{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#5a6268;transform:translateY(-2px)}.modal-overlay{animation:fadeIn .3s ease-in;z-index:1000}.badge-modal{animation:slideUp .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 40px #0000004d;max-width:400px;padding:30px;text-align:center;width:90%}.badge-modal h2{color:#333;margin-bottom:20px}.new-badge{align-items:center;background:#f8f9fa;border-radius:12px;display:flex;gap:15px;margin:20px 0;padding:15px}.badge-icon{animation:bounce .6s ease-in-out;font-size:2.5rem}.badge-info h3{color:#333;margin:0 0 5px}.badge-info p{color:#666;font-size:14px;margin:0}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.badges-content{margin:0 auto;max-width:1200px;padding:20px}.badges-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin:20px 0}.badge-card{background:#fff;border-radius:16px;box-shadow:0 4px 12px #0000001a;padding:25px;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.badge-card:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-5px)}.badge-card.earned{background:linear-gradient(135deg,#fff,#f8fff8);border:2px solid #4caf50}.badge-card.available{border:2px solid #ddd;opacity:.7}.badge-card .badge-icon{display:block;font-size:3rem;margin-bottom:15px}.badge-card .badge-icon.locked{filter:grayscale(100%);opacity:.5}.badge-card h3{color:#333;font-size:1.2rem;margin:0 0 10px}.badge-card p{color:#666;font-size:14px;margin:0 0 10px}.badge-card small{color:#999;font-size:12px}.no-badges{background:#fff;border-radius:16px;box-shadow:0 4px 12px #0000001a;padding:40px;text-align:center}.tips-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:20px 0}.tip-card{background:#f8f9fa;border-left:4px solid #007bff;border-radius:12px;padding:20px}.tip-card h4{color:#333;margin:0 0 10px}.tip-card p{color:#666;font-size:14px;margin:0}.metrics-content{margin:0 auto;max-width:1200px;padding:20px}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:20px 0}.metrics-content .stat-card{background:#fff;border-radius:16px;box-shadow:0 4px 12px #0000001a;padding:25px;text-align:center;transition:transform .3s ease}.metrics-content .stat-card:hover{transform:translateY(-3px)}.metrics-content .stat-card h3{color:#007bff;font-size:2.5rem;font-weight:700;margin:0 0 10px}.metrics-content .stat-card p{color:#666;font-size:14px;letter-spacing:1px;margin:0;text-transform:uppercase}.skills-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin:20px 0}.skill-card{background:#fff;border-radius:16px;box-shadow:0 4px 12px #0000001a;padding:25px}.skill-card h3{border-bottom:2px solid #f0f0f0;color:#333;font-size:1.3rem;margin:0 0 15px;padding-bottom:10px}.skill-card .skill-stats{display:flex;flex-direction:column;gap:8px}.stat-row{align-items:center;display:flex;font-size:14px;justify-content:space-between}.stat-row span:first-child{color:#666}.stat-row span:last-child{font-weight:700}.mastery-bar{background:#f0f0f0;border-radius:4px;height:8px;margin:10px 0;overflow:hidden;width:100%}.mastery-fill{border-radius:4px;height:100%;transition:width .3s ease}.struggling-areas{background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;margin-top:10px;padding:8px}.struggling-areas small{color:#856404;font-size:12px}.recommendations-content{background:#fff;border-radius:16px;box-shadow:0 4px 12px #0000001a;padding:25px}.recommended-skills{display:flex;flex-wrap:wrap;gap:10px;margin:15px 0}.recommended-skill{align-items:center;background:#e3f2fd;border:1px solid #2196f3;border-radius:20px;display:flex;font-size:14px;gap:8px;padding:8px 16px}.skill-name{color:#333;font-weight:700}.skill-reason{color:#666;font-size:12px}.no-recommendations{background:#fff;border-radius:16px;box-shadow:0 4px 12px #0000001a;padding:40px;text-align:center}.time-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin:20px 0}.time-card{background:#fff;border-radius:16px;box-shadow:0 4px 12px #0000001a;padding:25px}.time-card h4{color:#333;font-size:1.1rem;margin:0 0 15px}.time-card p{color:#666;line-height:1.5;margin:0}.loading{color:#666;font-size:18px;padding:40px;text-align:center}section{margin:30px 0}section h2{border-bottom:3px solid #007bff;color:#333;display:inline-block;font-size:1.5rem;margin-bottom:20px;padding-bottom:10px}@media (max-width:768px){.badges-grid,.skills-grid,.stats-grid{grid-template-columns:1fr}.button-group{align-items:center;flex-direction:column}.badge-modal{padding:20px;width:95%}.new-badge{flex-direction:column;text-align:center}}.fade-in{animation:fadeIn .3s ease-in}.admin-tabs{border-bottom:2px solid #f0f0f0;display:flex;gap:10px;margin:20px 0}.tab-button{background:#f8f9fa;border:none;border-radius:8px 8px 0 0;color:#666;cursor:pointer;font-weight:500;padding:12px 24px;transition:all .3s ease}.tab-button.active{background:#007bff;box-shadow:0 2px 4px #007bff4d;color:#fff}.tab-button:hover:not(.active){background:#e9ecef;color:#333}.tab-content{padding:20px 0}.question-item{background:#fff;border:1px solid #ddd;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:20px;transition:transform .2s ease,box-shadow .2s ease}.question-item:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.question-header{border-bottom:1px solid #f0f0f0;padding-bottom:10px}.question-id{background:#f8f9fa;border-radius:4px;color:#666;font-family:monospace;font-size:12px;padding:4px 8px}.question-skill{background:#e3f2fd;border-radius:20px;color:#1976d2;font-size:12px;font-weight:500;padding:4px 12px;text-transform:capitalize}.question-content p{line-height:1.5;margin:8px 0}.question-content strong{color:#333;font-weight:600}.question-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:15px}.btn-danger{background:#dc3545;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .3s ease}.btn-danger:hover{background:#c82333;box-shadow:0 2px 8px #dc35454d;transform:translateY(-1px)}.admin-status{background:linear-gradient(135deg,#28a745,#20c997);border-radius:12px;box-shadow:0 4px 12px #28a7454d;color:#fff;margin:20px 0;padding:15px 20px}.admin-status p{font-weight:500;margin:0}.admin-info{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;margin:30px 0;padding:20px}.admin-info h3{color:#333;font-size:1.1rem;margin:0 0 15px}.admin-info p{color:#666;font-size:14px;margin:8px 0}.admin-form{background:#fff;border:1px solid #ddd;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin:20px 0;padding:25px}.input-group{margin-bottom:20px}.input-group label{color:#333;display:block;font-weight:500;margin-bottom:8px}.input-group input,.input-group select,.input-group textarea{border:1px solid #ddd;border-radius:8px;font-size:14px;padding:12px;transition:border-color .3s ease,box-shadow .3s ease;width:100%}.input-group input:focus,.input-group select:focus,.input-group textarea:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;outline:none}.input-group textarea{min-height:80px;resize:vertical}.admin-feedback{margin:20px 0}.feedback-box{border-radius:8px;font-weight:500;padding:15px 20px;text-align:center}.feedback-box.correct{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.feedback-box.incorrect{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.app-container{background:#fff;min-height:auto}.admin-content,.badges-content,.lesson-content,.metrics-content{background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;margin:20px auto;max-width:1200px;padding:30px}@media (max-width:768px){.admin-tabs{flex-direction:column}.tab-button{border-radius:8px;margin-bottom:5px}.question-header{align-items:flex-start;flex-direction:column;gap:10px}.question-actions{justify-content:center}.admin-form{padding:20px}}.btn-warning{background:#ffc107;border:none;border-radius:8px;color:#212529;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .3s ease}.btn-warning:hover{background:#e0a800;box-shadow:0 4px 12px #ffc1074d;transform:translateY(-1px)}.settings-card{background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 4px 12px #0000001a;margin:20px 0;padding:25px}.settings-card h2{border-bottom:2px solid #f0f0f0;color:#333;font-size:1.3rem;margin:0 0 15px;padding-bottom:10px}.settings-card p{color:#666;font-size:14px;margin:0 0 15px}.settings-content{margin:0 auto;max-width:800px;padding:20px}.profile-content{padding-top:20px!important}.profile-content,.profile-content h2:first-child{margin-top:0!important}.app-container{display:block!important}.app-header+.admin-content,.app-header+.badges-content,.app-header+.lesson-content,.app-header+.metrics-content,.app-header+.profile-content,.app-header+.settings-content{margin-top:0!important;padding-top:20px!important}*{box-sizing:border-box}body,html{background:#f5f7fa}#root,body,html{margin:0;padding:0}body{background:linear-gradient(135deg,#667eea,#764ba2 50%,#f093fb);background-attachment:fixed;min-height:100vh}.app-container{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;box-shadow:0 25px 50px #00000026}.profile-content .skill-stats{background:#0000}.profile-content .stat-card{background:linear-gradient(135deg,#4facfe,#00f2fe)!important;box-shadow:0 10px 30px #4facfe4d;color:#fff!important;transform:translateY(0);transition:all .3s ease}.profile-content .stat-card:hover{box-shadow:0 20px 40px #4facfe66;transform:translateY(-8px)}.progress-bar-group{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc!important;border:1px solid #ffffff4d!important;box-shadow:0 8px 25px #0000001a}.progress-bar-background{background:#667eea33;border-radius:6px;height:12px;overflow:hidden}.progress-bar-foreground{background:linear-gradient(90deg,#667eea,#764ba2);border-radius:6px;box-shadow:0 2px 8px #667eea4d;height:100%;transition:width .8s ease}.app-header{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#667eeae6,#764ba2e6)!important;border-bottom:1px solid #fff3;flex-wrap:nowrap}.header-right{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.app-header h1{color:#fff;text-shadow:0 2px 10px #0003}.header-link{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #fff3;transition:all .3s ease}.header-link:hover{background:#ffffff40;box-shadow:0 5px 15px #0003;transform:translateY(-2px)}.profile-content h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;margin-bottom:10px;text-align:center}.profile-content>p{color:#666;font-size:16px;margin-bottom:30px;text-align:center}.progress-bar-foreground{animation:progressFill 1.5s ease-out}@keyframes progressFill{0%{width:0}to{width:var(--progress-width)}}.stat-number{font-size:42px!important;font-weight:900!important;text-shadow:0 2px 10px #0003}.stat-label{font-size:13px!important;font-weight:600!important;letter-spacing:1px;opacity:.9;text-transform:uppercase}.results-content{margin:0 auto;max-width:1200px;padding:20px}.session-overview{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border-radius:16px;box-shadow:0 8px 25px #0000001a;margin-bottom:30px;padding:25px}.summary-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:20px 0}.summary-card{background:linear-gradient(135deg,#4facfe,#00f2fe);border-radius:12px;box-shadow:0 8px 20px #4facfe4d;color:#fff;padding:20px;text-align:center;transition:transform .3s ease}.summary-card:hover{transform:translateY(-5px)}.summary-number{font-size:2.5rem;font-weight:700;margin-bottom:8px}.summary-label{font-size:14px;letter-spacing:1px;opacity:.9;text-transform:uppercase}.skills-practiced{margin-top:20px}.skills-practiced h4{color:#333;margin:0 0 10px}.skill-tags{display:flex;flex-wrap:wrap;gap:8px}.skill-tag{background:#e3f2fd;border-radius:20px;color:#1976d2;font-size:12px;font-weight:500;padding:6px 12px}.skills-list--vertical{display:flex;flex-direction:column;gap:12px}.skill-tag--card{align-items:flex-start;background:#1e88e5;border:none;border-radius:12px;box-shadow:0 6px 14px #1e88e52e;color:#fff;display:flex;flex-direction:column;gap:4px;justify-content:space-between;padding:12px 14px;text-align:left;transition:transform .15s ease,box-shadow .15s ease;width:100%}.skill-tag--card:focus,.skill-tag--card:hover{box-shadow:0 10px 18px #1e88e542;transform:translateY(-1px)}.diagnostic-card{background:#fff;border-radius:16px;box-shadow:0 10px 30px #00000014;margin-bottom:20px;padding:24px}.recommend-banner{background:linear-gradient(135deg,#e3f2fd,#fff);border:1px solid #bbdefb;border-radius:16px;display:flex;flex-direction:column;gap:12px;margin-bottom:20px;padding:18px}.results-tabs{border-bottom:2px solid #f0f0f0;display:flex;gap:10px;margin:20px 0}.questions-list{display:flex;flex-direction:column;gap:15px;margin:20px 0}.question-result-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border-left:4px solid #ddd;border-radius:12px;box-shadow:0 4px 12px #0000001a;padding:20px;transition:transform .2s ease}.question-result-card:hover{transform:translateY(-2px)}.question-result-card.correct{border-left-color:#4caf50}.question-result-card.incorrect{border-left-color:#f44336}.question-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.question-status{align-items:center;display:flex;gap:10px}.status-icon{font-size:1.2rem}.status-icon.correct{color:#4caf50}.status-icon.incorrect{color:#f44336}.skill-badge{background:#f0f0f0;border-radius:12px;color:#333;font-size:12px;font-weight:500;padding:4px 8px}.question-stats{color:#666;display:flex;font-size:14px;gap:15px}.hints-stat,.time-stat{align-items:center;display:flex;gap:4px}.question-content{margin:15px 0}.question-text{color:#333;font-size:16px;line-height:1.5;margin-bottom:10px}.correct-answer{color:#4caf50;font-size:14px;margin:0}.question-actions{border-top:1px solid #f0f0f0;margin:15px 0;padding-top:15px}.btn-retry{background:#ff9800;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .3s ease}.btn-retry:hover{background:#f57c00;transform:translateY(-1px)}.question-timestamp{border-top:1px solid #f0f0f0;margin-top:10px;padding-top:10px}.question-timestamp small{color:#999;font-size:12px}.no-results{background:#ffffffe6;border-radius:12px;box-shadow:0 4px 12px #0000001a;padding:40px;text-align:center}.no-results p{color:#666;margin-bottom:20px}.retry-modal{background:#fff;border-radius:16px;box-shadow:0 20px 40px #0000004d;max-width:500px;padding:30px;width:90%}.retry-modal h3{color:#333;margin:0 0 20px;text-align:center}.retry-question-content{background:#f8f9fa;border-radius:12px;margin:20px 0;padding:20px}.retry-question-content p{line-height:1.5;margin:10px 0}.retry-actions{display:flex;gap:10px;justify-content:center;margin-top:20px}@media (max-width:768px){.summary-cards{grid-template-columns:repeat(2,1fr)}.question-header{align-items:flex-start;flex-direction:column;gap:10px}.question-stats{gap:5px}.question-stats,.retry-actions{flex-direction:column}}.logo-link{transition:all .3s ease}.logo-link,.logo-link:hover{color:inherit;text-decoration:none}.logo-link:hover{transform:scale(1.02)}.logo-link h1{color:#fff;cursor:pointer;margin:0;text-shadow:0 2px 10px #0003;transition:all .3s ease}.logo-link:hover h1{text-shadow:0 4px 15px #0000004d}.app-header{justify-content:space-between;padding:24px 40px}.app-header,.header-left{align-items:center;display:flex}.header-left{gap:15px}.header-left .logo-link{flex-shrink:0}.role-badge{background:#fff3;border:1px solid #ffffff4d;border-radius:12px;color:#fff;font-size:12px;font-weight:500;padding:4px 12px}.lesson-body{font-size:16px;line-height:1.8;margin:0 auto;max-width:800px}.lesson-body h1{border-bottom:2px solid #667eea;color:#667eea;font-size:2em;margin-bottom:.5em;margin-top:1.5em;padding-bottom:.3em}.lesson-body h2{color:#764ba2;font-size:1.6em;margin-bottom:.5em;margin-top:1.3em}.lesson-body h3{color:#667eea;font-size:1.3em;margin-bottom:.5em;margin-top:1.2em}.lesson-body p{color:#333;margin:1em 0}.lesson-body strong{color:#667eea;font-weight:600}.lesson-body em{color:#764ba2;font-style:italic}.lesson-body ol,.lesson-body ul{margin:1em 0;padding-left:2em}.lesson-body li{line-height:1.6;margin:.5em 0}.lesson-body code{background:#f4f4f4;border-radius:3px;color:#e83e8c;font-family:Courier New,monospace;font-size:.9em;padding:2px 6px}.lesson-body pre{background:#f4f4f4;border-radius:5px;margin:1em 0;overflow-x:auto;padding:15px}.lesson-body pre code{background:none;color:#333;padding:0}.lesson-body blockquote{border-left:4px solid #667eea;color:#666;font-style:italic;margin:1em 0;padding-left:1em}.lesson-body hr{border:none;border-top:2px solid #e0e0e0;margin:2em 0}.lesson-body a{border-bottom:1px solid #667eea;color:#667eea;text-decoration:none}.lesson-body a:hover{border-bottom-color:#764ba2;color:#764ba2}.lesson-body img{border-radius:8px;box-shadow:0 2px 8px #0000001a;height:auto;margin:1em 0;max-width:100%}.lesson-body table{border-collapse:collapse;margin:1em 0;width:100%}.lesson-body td,.lesson-body th{border:1px solid #ddd;padding:12px;text-align:left}.lesson-body th{background:#667eea;color:#fff;font-weight:600}.lesson-body tr:nth-child(2n){background:#f9f9f9}body.dark-mode .lesson-body p{color:#e0e0e0}body.dark-mode .lesson-body h1,body.dark-mode .lesson-body h2,body.dark-mode .lesson-body h3{color:#8b9cff}body.dark-mode .lesson-body code{background:#2c2c2c;color:#ff79c6}body.dark-mode .lesson-body pre{background:#2c2c2c}body.dark-mode .lesson-body pre code{color:#e0e0e0}body.dark-mode .lesson-body blockquote{border-left-color:#8b9cff;color:#999}body.dark-mode .lesson-body th{background:#667eea}body.dark-mode .lesson-body tr:nth-child(2n){background:#1e1e1e}body.dark-mode .lesson-body td{border-color:#333}.modal-overlay{align-items:center;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.modal{animation:modalSlideUp .4s cubic-bezier(.4,0,.2,1);background:#fff;background:var(--card-bg-color,#fff);border:1px solid #ffffff1a;border-radius:24px;box-shadow:0 20px 60px #0006;max-width:500px;padding:40px;width:90%}.danger-modal{background:linear-gradient(135deg,#1a0000,#3d0000);border:2px solid #ff3b30;color:#fff}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.danger-zone{background:#ff3b300d!important;border:1px solid #ff3b30!important;overflow:hidden;position:relative}.danger-zone:after{content:"⚠️";font-size:60px;opacity:.1;position:absolute;right:-10px;top:-10px;transform:rotate(15deg)}
/*# sourceMappingURL=main.84e988dd.css.map*/