*{box-sizing:border-box;margin:0;padding:0}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;overflow:hidden}code{font-family:Courier New,monospace}.navbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(135deg,#0f172a,#1e293b 50%,#334155);border-bottom:1px solid #ffffff1a;box-shadow:0 4px 24px #00000026;height:64px;justify-content:space-between;left:0;padding:0 32px;position:fixed;top:0;width:100%;z-index:1000}.navbar,.navbar-brand{align-items:center;display:flex}.navbar-brand{gap:12px}.navbar-logo{filter:drop-shadow(0 2px 8px rgba(59,130,246,.3));height:42px;object-fit:contain;transition:all .3s cubic-bezier(.4,0,.2,1);width:42px}.navbar-logo:hover{filter:drop-shadow(0 4px 16px rgba(59,130,246,.5));transform:scale(1.1) rotate(5deg)}.navbar-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#60a5fa,#3b82f6,#14b8a6);-webkit-background-clip:text;background-clip:text;color:#fff;font-size:20px;font-weight:700;letter-spacing:.5px}.navbar-menu{gap:10px}.navbar-btn,.navbar-menu{align-items:center;display:flex}.navbar-btn{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(135deg,#60a5fa33,#3b82f64d);border:1px solid #60a5fa66;border-radius:10px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;gap:8px;overflow:hidden;padding:10px 20px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.navbar-btn:hover{background:linear-gradient(135deg,#60a5fa4d,#3b82f666);border-color:#60a5fa99;box-shadow:0 8px 24px #3b82f666;transform:translateY(-2px)}.navbar-btn:active{transform:translateY(0)}.btn-icon{font-size:18px;line-height:1}@media (max-width:768px){.navbar{padding:0 15px}.navbar-btn span:not(.btn-icon),.navbar-title{display:none}.navbar-btn{padding:10px 12px}}.sidebar{background:linear-gradient(180deg,#0f172a,#1e293b 50%,#334155);border-right:1px solid #ffffff1a;box-shadow:4px 0 24px #0003;color:#fff;display:flex;flex-direction:column;flex-shrink:0;height:100%;overflow:hidden;transition:width .3s cubic-bezier(.4,0,.2,1);width:280px}.sidebar.collapsed{width:0}.sidebar-header{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff08;border-bottom:1px solid #ffffff26;display:flex;flex-shrink:0;justify-content:space-between;padding:24px 20px;white-space:nowrap}.header-content{align-items:center;display:flex;flex:1 1;gap:10px}.sidebar-header h2{font-size:20px;font-weight:600;margin:0}.collapse-all-btn{background:#60a5fa33;border:1px solid #60a5fa66;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:6px 12px;transition:all .3s cubic-bezier(.4,0,.2,1)}.collapse-all-btn:hover{background:#60a5fa59;box-shadow:0 4px 16px #60a5fa4d;transform:scale(1.05)}.toggle-btn{background:#0000;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:22px;padding:6px 12px;transition:all .3s cubic-bezier(.4,0,.2,1)}.toggle-btn:hover{background:#60a5fa33;transform:scale(1.1)}.search-bar-container{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0000001a;border-bottom:1px solid #ffffff1a;padding:16px 20px}.search-bar{align-items:center;background:#ffffff0d;border:1px solid #60a5fa4d;border-radius:12px;display:flex;gap:8px;padding:10px 12px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.search-bar:focus-within{background:#ffffff14;border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa26,0 4px 12px #60a5fa33;transform:translateY(-1px)}.search-icon{flex-shrink:0;font-size:16px;opacity:.7}.search-input{background:#0000;border:none;color:#fff;flex:1 1;font-family:inherit;font-size:14px;outline:none;padding:0}.search-input::placeholder{color:#ffffff80;font-size:13px}.clear-search{align-items:center;background:#60a5fa33;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:12px;height:20px;justify-content:center;transition:all .2s;width:20px}.clear-search:hover{background:#60a5fa66;transform:scale(1.1)}.no-results{background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;color:#fca5a5;font-size:13px;margin-top:10px;padding:8px 12px;text-align:center}.sidebar-content{flex:1 1;overflow-y:auto;padding:10px 0 60px}.chapter{margin-bottom:5px}.chapter-title{align-items:center;cursor:pointer;display:flex;font-weight:600;gap:10px;padding:12px 20px;transition:background .3s}.chapter-title:hover{background:linear-gradient(90deg,#60a5fa26,#3b82f61a);border-left:3px solid #60a5fa}.chapter-icon{display:inline-block;flex-shrink:0;font-size:12px;text-align:center;width:15px}.subsections{background:#0000001a}.subsection{cursor:pointer;font-size:14px;padding:10px 20px 10px 50px;transition:background .3s}.subsection:hover{background:linear-gradient(90deg,#60a5fa33,#3b82f626);padding-left:54px;transition:all .3s cubic-bezier(.4,0,.2,1)}.subsection.active{background:linear-gradient(90deg,#60a5fa40,#3b82f633);border-left:4px solid #60a5fa;box-shadow:inset 0 0 20px #60a5fa1a;font-weight:600}.sidebar-content::-webkit-scrollbar{width:6px}.sidebar-content::-webkit-scrollbar-track{background:#ffffff0d}.sidebar-content::-webkit-scrollbar-thumb{background:#60a5fa66;border-radius:3px}.sidebar-content::-webkit-scrollbar-thumb:hover{background:#60a5fa99;box-shadow:0 0 10px #60a5fa80}.content-panel{background:linear-gradient(135deg,#f8fafc,#f1f5f9);height:calc(100vh - 64px);overflow:hidden}.content-panel,.panel-header{display:flex;flex-direction:column}.panel-header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffc;border-bottom:1px solid #94a3b833;box-shadow:0 2px 16px #0000000a;gap:16px;padding:24px 32px 20px 85px}.header-top{align-items:center;display:flex;gap:20px;justify-content:space-between}.header-top h1{color:#1e293b;flex:1 1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Segoe UI Emoji,Segoe UI Symbol,Roboto,Helvetica Neue,Arial,Noto Color Emoji,Apple Color Emoji,sans-serif;font-size:26px;font-weight:700;margin:0;min-width:0}.header-controls{align-items:center;display:flex;flex-shrink:0;gap:12px}.mode-tabs{display:flex;gap:10px}.tab{background:#e2e8f080;border:2px solid #0000;border-radius:10px;cursor:pointer;font-size:14px;font-weight:600;overflow:hidden;padding:10px 20px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.tab:hover{background:#cbd5e1cc;box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.tab.active{background:linear-gradient(135deg,#3b82f6,#2563eb 50%,#1d4ed8);border-color:#3b82f64d;box-shadow:0 4px 16px #3b82f666,inset 0 1px 0 #fff3;color:#fff}.panel-body{flex:1 1;overflow-y:auto;padding:32px}.welcome-message{color:#666;padding:100px 20px}.welcome-message h1{color:#667eea;margin-bottom:20px}.learning-mode-toggle{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff9;border-radius:12px;display:flex;gap:12px;margin-bottom:24px;padding:8px;width:-webkit-fit-content;width:fit-content}.mode-toggle-btn{background:#0000;border:2px solid #0000;border-radius:8px;color:#475569;cursor:pointer;font-size:15px;font-weight:600;padding:10px 20px;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap}.mode-toggle-btn:hover{background:#3b82f61a;color:#3b82f6}.mode-toggle-btn.active{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 4px 12px #3b82f666;color:#fff}.mode-toggle-btn.active:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 6px 16px #3b82f680}.video-container{background:#000;border-radius:12px;box-shadow:0 8px 32px #0000001a;margin-bottom:32px;overflow:hidden;width:100%}.video-container iframe{border:none;display:block}.lecture-content h1{border-bottom:3px solid #0000;border-image:linear-gradient(90deg,#3b82f6,#14b8a6) 1;color:#1e293b;font-size:32px;font-weight:700;margin-bottom:24px;padding-bottom:12px}.lecture-content h2{background:linear-gradient(90deg,#3b82f60d,#0000);border-left:4px solid #3b82f6;border-radius:0 8px 8px 0;color:#334155;font-size:24px;font-weight:700;margin:32px 0 16px;padding:12px 16px}.lecture-content h3{color:#475569;font-size:20px;font-weight:600;margin:24px 0 12px}.lecture-content p{color:#444;line-height:1.8;margin-bottom:15px}.lecture-content ol,.lecture-content ul{margin-bottom:20px;margin-left:20px;padding-left:20px}.lecture-content li{color:#444;line-height:1.8;margin-bottom:12px}.lecture-content code{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border:1px solid #e11d481a;border-radius:6px;color:#e11d48;font-family:JetBrains Mono,Fira Code,Courier New,monospace;font-size:.9em;padding:3px 8px}.lecture-content pre{background:#1e293b!important;border:1px solid #64748b33;border-radius:12px;box-shadow:0 8px 32px #00000026,inset 0 0 0 1px #ffffff0d;margin:20px 0;overflow:hidden}.lecture-content pre code{background:#0000!important;border:none!important;color:#e2e8f0!important;display:block;font-size:14px;line-height:1.6;padding:20px!important}.lecture-content pre>div,.lecture-content pre[class*=language-]{background:#1e1e1e!important;margin:0!important}.lecture-content table{background:#fff;border-collapse:collapse;border-radius:12px;box-shadow:0 4px 16px #00000014;margin:24px 0;overflow:hidden;width:100%}.lecture-content table thead{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.lecture-content table th{border-bottom:none;font-weight:700;padding:16px 20px;text-align:left}.lecture-content table td{border-bottom:1px solid #e2e8f0;color:#334155;padding:16px 20px}.lecture-content table tbody tr:hover{background:linear-gradient(90deg,#3b82f60d,#0000);transform:scale(1.01);transition:all .2s}.lecture-content table tbody tr:last-child td{border-bottom:none}.test-content h2{color:#667eea;margin-bottom:20px}.question-box{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #94a3b833;border-radius:16px;box-shadow:0 4px 16px #0000000f;margin-bottom:24px;padding:28px}.question-box h3{color:#333;font-size:18px;line-height:1.6;margin-bottom:20px;white-space:pre-line}.question-box p{color:#333;line-height:1.8;margin-bottom:15px}.question-box pre{background:#1e1e1e!important;border-radius:6px;margin:15px 0;overflow:hidden}.question-box pre code{background:#0000!important;color:#d4d4d4!important;display:block;padding:15px!important}.options{flex-direction:column}.option,.options{display:flex;gap:12px}.option{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000a;cursor:pointer;padding:16px 24px;transition:all .3s cubic-bezier(.4,0,.2,1)}.option:hover{background:linear-gradient(90deg,#3b82f608,#fff);border-color:#3b82f6;box-shadow:0 8px 24px #3b82f626;transform:translateX(8px) scale(1.02)}.option.selected{background:linear-gradient(135deg,#3b82f61a,#60a5fa26);border-color:#3b82f6;box-shadow:0 4px 16px #3b82f633}.option.correct{background:linear-gradient(135deg,#10b9811a,#34d39926);border-color:#10b981;box-shadow:0 4px 16px #10b98133}.option.incorrect{background:linear-gradient(135deg,#ef44441a,#f8717126);border-color:#ef4444;box-shadow:0 4px 16px #ef444433}.option-label{color:#3b82f6;font-size:16px;font-weight:700;min-width:28px}.result{border:2px solid;border-radius:16px;box-shadow:0 8px 32px #0000001a;margin-bottom:24px;padding:24px}.result.correct{background:linear-gradient(135deg,#10b9811a,#34d39926);border-color:#10b981}.result.incorrect{background:linear-gradient(135deg,#ef44441a,#f8717126);border-color:#ef4444}.result h3{font-size:20px;margin:0 0 15px}.result.correct h3{color:#059669;font-weight:700}.result.incorrect h3{color:#dc2626;font-weight:700}.explanation{color:#333;line-height:1.8;margin:10px 0}.drag-question{color:#1e293b;font-size:18px;font-weight:600;line-height:1.6;margin-bottom:24px}.answer-area{margin-bottom:28px}.available-area{margin-bottom:20px}.line-available-area{background:linear-gradient(135deg,#a78bfa0d,#c4b5fd14);border:2px solid #a78bfa33;border-radius:8px;margin-bottom:16px;margin-top:12px;padding:12px}.area-label{color:#334155;font-size:16px;font-weight:700;gap:8px;margin-bottom:12px}.area-label,.area-label-small{align-items:center;display:flex}.area-label-small{color:#6b7280;font-size:13px;font-weight:600;gap:6px;margin-bottom:8px}.blocks-container-small{background:#ffffff4d;border-radius:6px;min-height:40px;padding:8px}.blocks-container-small,.drop-zone{display:flex;flex-wrap:wrap;gap:8px}.drop-zone{align-items:center;background:linear-gradient(135deg,#3b82f60d,#60a5fa14);border:3px dashed #94a3b8;border-radius:12px;min-height:80px;padding:16px;position:relative;transition:all .3s ease}.drop-zone:hover{background:linear-gradient(135deg,#3b82f614,#60a5fa1f);border-color:#3b82f6}.drop-zone.indented{background:linear-gradient(135deg,#8b5cf60d,#a78bfa14);border-color:#a78bfa;margin-left:40px}.drop-zone.indented:hover{background:linear-gradient(135deg,#8b5cf614,#a78bfa1f);border-color:#8b5cf6}.drop-placeholder{color:#94a3b8;font-size:15px;font-style:italic;margin:auto}.code-block{background:linear-gradient(135deg,#fff,#f8fafc);border:2px solid #cbd5e1;border-radius:8px;box-shadow:0 2px 8px #00000014;color:#1e293b;cursor:grab;font-family:Courier New,monospace;font-size:16px;font-weight:600;padding:10px 16px;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none}.code-block:hover{border-color:#3b82f6;box-shadow:0 6px 20px #3b82f633;transform:translateY(-3px) scale(1.05)}.code-block:active{cursor:grabbing;transform:scale(.98)}.code-block.correct-block{background:linear-gradient(135deg,#10b98126,#34d39933);border-color:#10b981;cursor:default}.code-block.incorrect-block{background:linear-gradient(135deg,#ef444426,#f8717133);border-color:#ef4444;cursor:default}.drop-between{background:#0000;border-radius:4px;height:50px;transition:background .2s ease;width:12px}.drop-between:hover{background:#3b82f626}.result-code{background:#1e293b0d;border-left:4px solid #3b82f6;border-radius:8px;color:#334155;font-size:15px;margin-top:16px;padding:12px 16px}.result-code code{background:#3b82f61a;border-radius:4px;color:#1e293b;font-family:Courier New,monospace;font-size:16px;font-weight:700;padding:4px 8px}.blocks-container{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px solid #e2e8f0;border-radius:12px;display:flex;flex-wrap:wrap;gap:12px;min-height:70px;padding:16px;transition:all .3s ease}.blocks-container:hover{border-color:#cbd5e1}.empty-message{color:#94a3b8;font-size:14px;margin:auto}.btn-check{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:10px;box-shadow:0 4px 16px #10b9814d;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:12px 28px;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-check:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 6px 20px #10b98166;transform:translateY(-2px)}.btn-reset{background:linear-gradient(135deg,#64748b,#475569);border:none;border-radius:10px;box-shadow:0 4px 16px #64748b4d;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:12px 28px;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-reset:hover{background:linear-gradient(135deg,#475569,#334155);box-shadow:0 6px 20px #64748b66;transform:translateY(-2px)}.practice-content{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Segoe UI Emoji,Segoe UI Symbol,Roboto,Helvetica Neue,Arial,Noto Color Emoji,Apple Color Emoji,sans-serif}.practice-content h1{color:#667eea;font-size:28px;font-weight:700;margin-bottom:25px}.practice-content h2{color:#667eea;margin-bottom:20px}.practice-content h3{color:#5a7ba6;font-size:18px;margin:20px 0 15px}.practice-content p{color:#5a7ba6;line-height:1.8;margin-bottom:15px}.practice-content ol,.practice-content ul{margin-bottom:20px;margin-left:0;padding-left:25px}.practice-content li{color:#5a7ba6;line-height:1.8;margin-bottom:12px}.practice-content strong{color:#4a6fa5;font-weight:600}.practice-content pre{background:#1e1e1e!important;border-radius:6px;margin:15px 0;overflow:hidden}.practice-content pre code{background:#0000!important;color:#d4d4d4!important;display:block;padding:15px!important}.practice-content pre>div,.practice-content pre[class*=language-]{background:#1e1e1e!important;margin:0!important}.practice-hint{background:#fff3cd;border-left:4px solid #ffc107;border-radius:4px;margin:20px 0;padding:15px}.practice-hint p{color:#856404}.practice-buttons{display:flex;flex-wrap:wrap;gap:15px;margin:25px 0}.btn-hints{background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:12px;box-shadow:0 4px 16px #f59e0b4d;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 28px;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-hints:hover{box-shadow:0 8px 24px #f59e0b80;transform:translateY(-3px) scale(1.02)}.btn-solution{background:linear-gradient(135deg,#8b5cf6,#6d28d9);border:none;border-radius:12px;box-shadow:0 4px 16px #8b5cf64d;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 28px;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-solution:hover{box-shadow:0 8px 24px #8b5cf680;transform:translateY(-3px) scale(1.02)}.next-button-container{border-top:2px solid #e0e0e0;display:flex;justify-content:flex-end;margin-top:30px;padding-top:20px}.btn-next{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:12px;box-shadow:0 4px 16px #3b82f666;cursor:pointer;font-size:16px;font-weight:700;padding:16px 36px;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-next:hover{box-shadow:0 8px 32px #3b82f699;transform:translateY(-3px) scale(1.02)}.btn-next:active{transform:translateY(0)}.hints-box{animation:slideDown .3s ease-out;background:linear-gradient(135deg,#3b82f614,#60a5fa1f);border:2px solid #3b82f6;border-radius:16px;box-shadow:0 8px 24px #3b82f626;margin:24px 0;padding:24px}.hints-box h3{color:#1e40af;font-size:20px;font-weight:700;margin-bottom:16px;margin-top:0}.hints-box ol,.hints-box ul{margin-bottom:15px;margin-left:0;padding-left:25px}.hints-box li,.hints-box p{color:#1565c0;line-height:1.8;margin-bottom:10px}.solution-box{animation:slideDown .3s ease-out;background:linear-gradient(135deg,#10b98114,#34d3991f);border:2px solid #10b981;border-radius:16px;box-shadow:0 8px 24px #10b98126;margin:24px 0;padding:24px}.solution-box h3{color:#047857;font-size:20px;font-weight:700;margin-bottom:16px;margin-top:0}.solution-code,.solution-output{margin-bottom:20px}.solution-code h4,.solution-output h4{color:#333;font-size:16px;font-weight:600;margin-bottom:10px}.solution-code pre,.solution-output pre{border-radius:6px;margin:0;overflow:hidden}.action-buttons{display:flex;flex-wrap:wrap;gap:15px;margin-top:25px}.btn{border:none;border-radius:12px;box-shadow:0 4px 12px #0000001a;cursor:pointer;font-size:16px;font-weight:600;padding:14px 28px;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-test{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 4px 16px #3b82f64d;color:#fff}.btn-test:hover{box-shadow:0 8px 24px #3b82f680;transform:translateY(-3px) scale(1.02)}.btn-practice{background:linear-gradient(135deg,#ec4899,#db2777);box-shadow:0 4px 16px #ec48994d;color:#fff}.btn-practice:hover{box-shadow:0 8px 24px #ec489980;transform:translateY(-3px) scale(1.02)}.btn-retry{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 4px 16px #f59e0b4d;color:#fff}.btn-retry:hover{box-shadow:0 8px 24px #f59e0b80;transform:translateY(-3px) scale(1.02)}.btn-back{background:linear-gradient(135deg,#64748b,#475569);box-shadow:0 4px 16px #64748b4d}.btn-back:hover{background:linear-gradient(135deg,#475569,#334155);box-shadow:0 8px 24px #64748b80}.question-navigation{border-top:2px solid #3b82f633;display:flex;gap:15px;justify-content:space-between;margin-top:25px;padding-top:20px}.btn-next,.btn-prev{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:12px;box-shadow:0 4px 12px #0000001a;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 28px;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-next:hover:not(:disabled),.btn-prev:hover:not(:disabled){box-shadow:0 8px 24px #3b82f680;transform:translateY(-3px) scale(1.02)}.btn-next:disabled,.btn-prev:disabled{background:linear-gradient(135deg,#94a3b8,#64748b);cursor:not-allowed;opacity:.5}.panel-body::-webkit-scrollbar{width:10px}.panel-body::-webkit-scrollbar-track{background:#94a3b81a;border-radius:10px}.panel-body::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#3b82f6,#2563eb);border:2px solid #ffffff1a;border-radius:10px}.panel-body::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#2563eb,#1d4ed8);box-shadow:0 0 10px #3b82f680}@keyframes slideInRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}.lecture-content,.practice-content,.test-content{animation:fadeIn .4s ease-out}.welcome-message{animation:fadeIn .6s ease-out;color:#64748b;padding:120px 20px;text-align:center}.welcome-message h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#2563eb,#14b8a6);-webkit-background-clip:text;background-clip:text;font-size:36px;font-weight:700;margin-bottom:24px}.font-size-btn{align-items:center;background:linear-gradient(135deg,#10b98126,#05966933);border:2px solid #10b9814d;border-radius:12px;box-shadow:0 2px 8px #10b98126;color:#1e293b;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:8px;height:48px;padding:8px 16px;transition:all .3s cubic-bezier(.4,0,.2,1)}.font-size-btn .font-icon{font-size:18px;font-weight:700;line-height:1}.font-size-btn .font-label{font-size:12px;letter-spacing:.5px;text-transform:uppercase}.font-size-btn:hover{background:linear-gradient(135deg,#10b98140,#0596694d);border-color:#10b981;box-shadow:0 4px 16px #10b9814d;transform:scale(1.05)}.font-size-btn:active{transform:scale(.95)}.theme-toggle-btn{align-items:center;background:linear-gradient(135deg,#3b82f626,#2563eb33);border:2px solid #3b82f64d;border-radius:12px;box-shadow:0 2px 8px #3b82f626;color:#1e293b;cursor:pointer;display:flex;font-size:20px;height:48px;justify-content:center;min-width:48px;padding:10px 16px;transition:all .3s cubic-bezier(.4,0,.2,1)}.theme-toggle-btn:hover{background:linear-gradient(135deg,#3b82f640,#2563eb4d);border-color:#3b82f6;box-shadow:0 4px 16px #3b82f64d;transform:scale(1.05) rotate(10deg)}.theme-toggle-btn:active{transform:scale(.95) rotate(0deg)}.content-panel.dark{background:linear-gradient(135deg,#0f172a,#1e293b)}.content-panel.dark .panel-header{background:#0f172af2;border-bottom:1px solid #94a3b826;box-shadow:0 2px 16px #0000004d}.content-panel.dark .header-top h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#60a5fa,#3b82f6,#2563eb);-webkit-background-clip:text;background-clip:text}.content-panel.dark .tab{background:#94a3b81a;color:#cbd5e1}.content-panel.dark .tab:hover{background:#94a3b833}.content-panel.dark .tab.active{background:linear-gradient(135deg,#3b82f6,#2563eb 50%,#1d4ed8);color:#fff}.content-panel.dark .theme-toggle-btn{background:linear-gradient(135deg,#3b82f633,#2563eb40);border-color:#3b82f666;color:#e2e8f0}.content-panel.dark .theme-toggle-btn:hover{background:linear-gradient(135deg,#3b82f64d,#2563eb59);border-color:#60a5fa}.content-panel.dark .learning-mode-toggle{background:#1e293b99}.content-panel.dark .mode-toggle-btn{color:#cbd5e1}.content-panel.dark .mode-toggle-btn:hover{background:#3b82f633;color:#60a5fa}.content-panel.dark .mode-toggle-btn.active{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.content-panel.dark .video-container{box-shadow:0 8px 32px #0006}.content-panel.dark .lecture-content h1{border-image:linear-gradient(90deg,#60a5fa,#14b8a6) 1;color:#e2e8f0}.content-panel.dark .lecture-content h2{background:linear-gradient(90deg,#60a5fa26,#0000);border-left-color:#60a5fa;color:#cbd5e1}.content-panel.dark .lecture-content h3{color:#94a3b8}.content-panel.dark .lecture-content li,.content-panel.dark .lecture-content p{color:#cbd5e1}.content-panel.dark .lecture-content code{background:linear-gradient(135deg,#3b82f626,#2563eb33);border-color:#fbbf2433;color:#fbbf24}.content-panel.dark .lecture-content table{background:#0f172a99;box-shadow:0 4px 16px #0006}.content-panel.dark .lecture-content table thead{background:linear-gradient(135deg,#1e40af,#1e3a8a)}.content-panel.dark .lecture-content table td{border-bottom-color:#94a3b826;color:#cbd5e1}.content-panel.dark .lecture-content table tbody tr:hover{background:linear-gradient(90deg,#60a5fa1a,#0000)}.content-panel.dark .practice-content h1,.content-panel.dark .practice-content h2,.content-panel.dark .test-content h2{color:#60a5fa}.content-panel.dark .question-box{background:linear-gradient(135deg,#0f172acc,#1e293b99);border-color:#94a3b833;box-shadow:0 4px 16px #0000004d}.content-panel.dark .question-box h3,.content-panel.dark .question-box p{color:#cbd5e1}.content-panel.dark .option{background:#1e293b99;border-color:#94a3b833;box-shadow:0 2px 8px #0003;color:#cbd5e1}.content-panel.dark .option:hover{background:linear-gradient(90deg,#60a5fa1a,#1e293b99);border-color:#60a5fa;box-shadow:0 8px 24px #60a5fa33}.content-panel.dark .option.selected{background:linear-gradient(135deg,#60a5fa33,#3b82f640);border-color:#60a5fa}.content-panel.dark .option.correct{background:linear-gradient(135deg,#10b98133,#34d39940);border-color:#10b981}.content-panel.dark .option.incorrect{background:linear-gradient(135deg,#ef444433,#f8717140);border-color:#ef4444}.content-panel.dark .option-label{color:#60a5fa}.content-panel.dark .result.correct{background:linear-gradient(135deg,#10b98133,#34d39940);border-color:#10b981}.content-panel.dark .result.incorrect{background:linear-gradient(135deg,#ef444433,#f8717140);border-color:#ef4444}.content-panel.dark .result.correct h3{color:#34d399}.content-panel.dark .result.incorrect h3{color:#f87171}.content-panel.dark .explanation{color:#cbd5e1}.content-panel.dark .drag-question{color:#e2e8f0}.content-panel.dark .area-label{color:#cbd5e1}.content-panel.dark .line-available-area{background:linear-gradient(135deg,#a78bfa1a,#c4b5fd26);border-color:#a78bfa4d}.content-panel.dark .area-label-small{color:#9ca3af}.content-panel.dark .blocks-container-small{background:#1e293b66}.content-panel.dark .drop-zone{background:linear-gradient(135deg,#3b82f626,#60a5fa33);border-color:#94a3b866}.content-panel.dark .drop-zone:hover{background:linear-gradient(135deg,#3b82f633,#60a5fa40);border-color:#60a5fa}.content-panel.dark .drop-zone.indented{background:linear-gradient(135deg,#8b5cf626,#a78bfa33);border-color:#a78bfa66}.content-panel.dark .drop-zone.indented:hover{background:linear-gradient(135deg,#8b5cf633,#a78bfa40);border-color:#a78bfa}.content-panel.dark .drop-placeholder{color:#64748b}.content-panel.dark .code-block{background:linear-gradient(135deg,#1e293bcc,#33415599);border-color:#94a3b84d;box-shadow:0 2px 8px #0000004d;color:#e2e8f0}.content-panel.dark .code-block:hover{border-color:#60a5fa;box-shadow:0 6px 20px #60a5fa4d}.content-panel.dark .code-block.correct-block{background:linear-gradient(135deg,#10b98140,#34d3994d);border-color:#10b981}.content-panel.dark .code-block.incorrect-block{background:linear-gradient(135deg,#ef444440,#f871714d);border-color:#ef4444}.content-panel.dark .drop-between:hover{background:#60a5fa33}.content-panel.dark .result-code{background:#1e293b66;border-left-color:#60a5fa;color:#cbd5e1}.content-panel.dark .result-code code{background:#60a5fa33;color:#e2e8f0}.content-panel.dark .blocks-container{background:linear-gradient(135deg,#0f172a99,#1e293b80);border-color:#94a3b833}.content-panel.dark .blocks-container:hover{border-color:#94a3b84d}.content-panel.dark .empty-message{color:#64748b}.content-panel.dark .question-navigation{border-top-color:#3b82f64d}.content-panel.dark .btn-next,.content-panel.dark .btn-prev{background:linear-gradient(135deg,#3b82f666,#2563eb80);box-shadow:0 4px 12px #0000004d}.content-panel.dark .btn-next:hover:not(:disabled),.content-panel.dark .btn-prev:hover:not(:disabled){background:linear-gradient(135deg,#3b82f680,#2563eb99);box-shadow:0 8px 24px #3b82f666}.content-panel.dark .btn-next:disabled,.content-panel.dark .btn-prev:disabled{background:linear-gradient(135deg,#64748b66,#47556980);opacity:.4}.content-panel.dark .practice-content h3{color:#93c5fd}.content-panel.dark .practice-content li,.content-panel.dark .practice-content p{color:#bfdbfe}.content-panel.dark .practice-content strong{color:#60a5fa}.content-panel.dark .practice-hint{background:#fbbf2426;border-left-color:#fbbf24;color:#fde047}.content-panel.dark .practice-hint p{color:#fef3c7}.content-panel.dark .btn{color:#fff}.content-panel.dark .btn-test{background:linear-gradient(135deg,#3b82f6,#2563eb)}.content-panel.dark .btn-test:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8)}.content-panel.dark .btn-practice{background:linear-gradient(135deg,#14b8a6,#0d9488)}.content-panel.dark .btn-practice:hover{background:linear-gradient(135deg,#0d9488,#0f766e)}.content-panel.dark .btn-secondary{background:#94a3b833;color:#cbd5e1}.content-panel.dark .btn-secondary:hover{background:#94a3b84d}.content-panel.dark .btn-next{background:linear-gradient(135deg,#10b981,#059669)}.content-panel.dark .btn-next:hover{background:linear-gradient(135deg,#059669,#047857)}.content-panel.dark .welcome-message{color:#94a3b8}.content-panel.dark .welcome-message h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#60a5fa,#3b82f6,#22d3ee);-webkit-background-clip:text;background-clip:text}.content-panel.dark .panel-body::-webkit-scrollbar-track{background:#0f172a80}.content-panel.dark .panel-body::-webkit-scrollbar-thumb{background:#60a5fa66}.content-panel.dark .panel-body::-webkit-scrollbar-thumb:hover{background:#60a5fa99}.practice-hint{background:linear-gradient(135deg,#f59e0b1a,#fbbf2426);border-left:4px solid #f59e0b;border-radius:12px;box-shadow:0 4px 16px #f59e0b1a;margin:24px 0;padding:18px}.practice-hint p{color:#92400e;font-weight:500;margin:0}.content-panel.font-small .explanation,.content-panel.font-small .lecture-content li,.content-panel.font-small .lecture-content p,.content-panel.font-small .option,.content-panel.font-small .practice-content li,.content-panel.font-small .practice-content p,.content-panel.font-small .question-box p,.content-panel.font-small .test-content li,.content-panel.font-small .test-content p{font-size:17px;line-height:1.8}.content-panel.font-small .lecture-content h2,.content-panel.font-small .practice-content h2,.content-panel.font-small .test-content h2{font-size:28px}.content-panel.font-small .lecture-content h3,.content-panel.font-small .practice-content h3,.content-panel.font-small .question-box h3,.content-panel.font-small .test-content h3{font-size:21px}.content-panel.font-small .lecture-content code,.content-panel.font-small .question-box code{font-size:15px}.content-panel.font-small .lecture-content pre code,.content-panel.font-small .practice-content pre code,.content-panel.font-small .question-box pre code{font-size:15px!important}.content-panel.font-small .lecture-content table td,.content-panel.font-small .lecture-content table th{font-size:17px;padding:16px 20px}.content-panel.font-medium .explanation,.content-panel.font-medium .lecture-content li,.content-panel.font-medium .lecture-content p,.content-panel.font-medium .option,.content-panel.font-medium .practice-content li,.content-panel.font-medium .practice-content p,.content-panel.font-medium .question-box p,.content-panel.font-medium .test-content li,.content-panel.font-medium .test-content p{font-size:19px;line-height:1.9}.content-panel.font-medium .lecture-content h2,.content-panel.font-medium .practice-content h2,.content-panel.font-medium .test-content h2{font-size:30px}.content-panel.font-medium .lecture-content h3,.content-panel.font-medium .practice-content h3,.content-panel.font-medium .question-box h3,.content-panel.font-medium .test-content h3{font-size:23px}.content-panel.font-medium .lecture-content code,.content-panel.font-medium .question-box code{font-size:17px}.content-panel.font-medium .lecture-content pre code,.content-panel.font-medium .practice-content pre code,.content-panel.font-medium .question-box pre code{font-size:17px!important}.content-panel.font-medium .lecture-content table td,.content-panel.font-medium .lecture-content table th{font-size:19px;padding:18px 22px}.content-panel.font-large .explanation,.content-panel.font-large .lecture-content li,.content-panel.font-large .lecture-content p,.content-panel.font-large .option,.content-panel.font-large .practice-content li,.content-panel.font-large .practice-content p,.content-panel.font-large .question-box p,.content-panel.font-large .test-content li,.content-panel.font-large .test-content p{font-size:21px;line-height:2}.content-panel.font-large .lecture-content h2,.content-panel.font-large .practice-content h2,.content-panel.font-large .test-content h2{font-size:32px}.content-panel.font-large .lecture-content h3,.content-panel.font-large .practice-content h3,.content-panel.font-large .question-box h3,.content-panel.font-large .test-content h3{font-size:25px}.content-panel.font-large .lecture-content code,.content-panel.font-large .question-box code{font-size:18px}.content-panel.font-large .lecture-content pre code,.content-panel.font-large .practice-content pre code,.content-panel.font-large .question-box pre code{font-size:18px!important;line-height:1.8}.content-panel.font-large .lecture-content table td,.content-panel.font-large .lecture-content table th{font-size:21px;padding:20px 26px}.content-panel.dark .font-size-btn{background:linear-gradient(135deg,#10b98133,#05966940);border-color:#10b98166;color:#e2e8f0}.content-panel.dark .font-size-btn:hover{background:linear-gradient(135deg,#10b9814d,#05966959);border-color:#34d399}.code-editor{background:#0f172a;border-radius:16px;box-shadow:0 8px 32px #0000004d,inset 0 0 0 1px #ffffff0d;direction:ltr;display:flex;flex-direction:column;height:100%;overflow:hidden}.editor-header{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(135deg,#1e293b,#0f172a);border-bottom:1px solid #94a3b833;display:flex;justify-content:space-between;padding:14px 24px}.editor-title-section{align-items:center;display:flex;gap:16px}.editor-header h3{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#60a5fa,#3b82f6);-webkit-background-clip:text;background-clip:text;font-size:16px;font-weight:700;margin:0}.ask-ai-btn{align-items:center;background:linear-gradient(135deg,#8b5cf626,#7c3aed33);border:2px solid #8b5cf666;border-radius:10px;box-shadow:0 2px 8px #8b5cf633;color:#c4b5fd;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;padding:8px 16px;transition:all .3s cubic-bezier(.4,0,.2,1)}.ask-ai-btn:hover:not(:disabled){background:linear-gradient(135deg,#8b5cf640,#7c3aed4d);border-color:#8b5cf6;box-shadow:0 4px 16px #8b5cf666;color:#e9d5ff;transform:translateY(-2px) scale(1.05)}.ask-ai-btn:disabled{cursor:not-allowed;opacity:.5}.editor-controls{display:flex;gap:10px}.control-btn{border:none;border-radius:10px;box-shadow:0 4px 12px #0003;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s cubic-bezier(.4,0,.2,1)}.control-btn:disabled{cursor:not-allowed;opacity:.6}.run-btn{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 16px #10b98166;color:#fff}.run-btn:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);box-shadow:0 8px 24px #10b98199;transform:translateY(-2px) scale(1.05)}.reset-btn{background:linear-gradient(135deg,#64748b,#475569);box-shadow:0 4px 16px #64748b66;color:#fff}.reset-btn:hover:not(:disabled){background:linear-gradient(135deg,#475569,#334155);box-shadow:0 8px 24px #64748b99;transform:translateY(-2px) scale(1.05)}.editor-container{direction:ltr;flex:1 1;overflow:hidden;unicode-bidi:normal}.output-panel{background:#0f172a;border-radius:16px;box-shadow:0 8px 32px #0000004d,inset 0 0 0 1px #ffffff0d;display:flex;flex-direction:column;height:100%;overflow:hidden}.output-tabs{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(135deg,#1e293b,#0f172a);border-bottom:1px solid #94a3b833;display:flex}.tab-btn{background:#0000;border:none;border-bottom:3px solid #0000;color:#94a3b8;cursor:pointer;font-size:13px;font-weight:600;letter-spacing:.8px;padding:14px 28px;text-transform:uppercase;transition:all .3s cubic-bezier(.4,0,.2,1)}.tab-btn:hover{background:#60a5fa1a;color:#f1f5f9}.tab-btn.active{background:#10b9811a;border-bottom-color:#10b981;color:#f1f5f9}.output-content-wrapper{flex:1 1;overflow:hidden}.split-output{background:#0f172a;display:grid;grid-template-columns:1fr 1px 1fr;height:100%}.output-section{display:flex;flex-direction:column}.output-section-header{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(135deg,#1e293b,#0f172a);border-bottom:1px solid #94a3b833;color:#94a3b8;display:flex;font-size:13px;font-weight:600;justify-content:space-between;min-height:52px;padding:12px 20px}.output-section-header-text{flex:1 1}.result-indicator{animation:fadeIn .3s ease-in;border-radius:8px;flex-shrink:0;font-size:18px;font-weight:700;padding:4px 12px}.result-indicator.correct{background:#10b98133;box-shadow:0 0 20px #10b9814d;color:#10b981}.result-indicator.incorrect{background:#ef444433;box-shadow:0 0 20px #ef44444d;color:#ef4444}.output-section-content{flex:1 1;overflow-y:auto;padding:16px}.output-section-content pre{word-wrap:break-word;color:#e2e8f0;font-family:JetBrains Mono,Fira Code,Consolas,Monaco,Courier New,monospace;font-size:14px;line-height:1.7;margin:0;white-space:pre-wrap}.output-section-content pre.error{background:#ef44441a;border-left:4px solid #ef4444;border-radius:8px;color:#fca5a5;padding:12px}.output-divider{background:#3e3e3e}.console-output{height:100%;overflow-y:auto;padding:16px}.console-output pre{word-wrap:break-word;color:#e2e8f0;font-family:JetBrains Mono,Fira Code,Consolas,Monaco,Courier New,monospace;font-size:14px;line-height:1.7;margin:0;white-space:pre-wrap}.console-output pre.error{background:#ef44441a;border-left:4px solid #ef4444;border-radius:8px;color:#fca5a5;padding:12px}.empty-message{color:#6b7280;font-size:13px;font-style:italic}.console-output::-webkit-scrollbar,.output-section-content::-webkit-scrollbar{width:10px}.console-output::-webkit-scrollbar-track,.output-section-content::-webkit-scrollbar-track{background:#94a3b81a;border-radius:10px}.console-output::-webkit-scrollbar-thumb,.output-section-content::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#10b981,#059669);border:2px solid #0000001a;border-radius:10px}.console-output::-webkit-scrollbar-thumb:hover,.output-section-content::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#059669,#047857);box-shadow:0 0 10px #10b98180}.resizable-container{display:flex;gap:0;height:calc(100vh - 64px);overflow:hidden;width:100%}.left-panel,.right-panel{height:100%;overflow:hidden;position:relative}.right-panel{display:flex;flex-direction:column}.code-section,.output-section{overflow:hidden;position:relative}.resizer{align-items:center;background:linear-gradient(135deg,#334155,#1e293b);border-left:1px solid #94a3b81a;border-right:1px solid #94a3b81a;display:flex;flex-shrink:0;justify-content:center;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.resizer.horizontal{cursor:col-resize;width:6px}.resizer.vertical{cursor:row-resize;height:6px;width:100%}.resizer:hover{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 0 20px #10b98180}.resizer:hover .resizer-line{background:#fff}.resizer:active{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 0 30px #10b981b3}.resizer.horizontal .resizer-line{height:48px;width:3px}.resizer.horizontal .resizer-line,.resizer.vertical .resizer-line{background:#94a3b866;border-radius:4px;transition:all .3s cubic-bezier(.4,0,.2,1)}.resizer.vertical .resizer-line{height:3px;width:48px}.resizable-container.dragging{cursor:col-resize}.resizable-container.dragging *{-webkit-user-select:none;user-select:none}.dashboard{background:linear-gradient(135deg,#f8fafc,#f1f5f9);min-height:calc(100vh - 64px);overflow-y:auto;padding:96px 32px 32px}.dashboard-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.dashboard-header h1{align-items:center;color:#1e293b;display:flex;font-size:36px;font-weight:700;gap:12px;margin:0}.dashboard-header h1 span{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#1e293b,#334155,#0f172a);-webkit-background-clip:text;background-clip:text}.btn-back{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:12px;box-shadow:0 4px 16px #3b82f666;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:8px;padding:14px 28px;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-back:hover{box-shadow:0 8px 24px #3b82f699;transform:translateY(-3px) scale(1.02)}.stats-cards{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:32px}.stat-card{align-items:center;background:#fff;border:1px solid #94a3b81a;border-radius:16px;box-shadow:0 4px 16px #00000014;display:flex;gap:20px;overflow:hidden;padding:28px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.stat-card:hover{border-color:#3b82f64d;box-shadow:0 12px 32px #00000026;transform:translateY(-6px) scale(1.02)}.stat-icon{filter:drop-shadow(0 4px 8px rgba(0,0,0,.1));font-size:52px;line-height:1}.stat-content h3{color:#64748b;font-size:13px;font-weight:600;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.stat-value{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#2563eb 50%,#1d4ed8);-webkit-background-clip:text;background-clip:text;font-size:36px;font-weight:800}.charts-section{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(2,1fr);margin-bottom:30px}.chart-card{background:#fff;border:1px solid #94a3b81a;border-radius:16px;box-shadow:0 4px 16px #00000014;padding:28px;transition:all .3s cubic-bezier(.4,0,.2,1)}.chart-card-wide{grid-column:span 2}.chart-card h3{color:#1e293b;font-size:20px;font-weight:700;margin:0 0 24px}.weak-points-section{background:#fff;border:1px solid #94a3b81a;border-radius:16px;box-shadow:0 4px 16px #00000014;margin-bottom:30px;padding:28px}.weak-points-section h3{align-items:center;color:#1e293b;display:flex;font-size:22px;font-weight:700;gap:10px;margin:0 0 24px}.weak-points-section h3 span{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#1e293b,#334155);-webkit-background-clip:text;background-clip:text}.weak-points-list{display:flex;flex-direction:column;gap:20px}.weak-point-item{background:linear-gradient(135deg,#ef44440d,#f8717114);border-left:4px solid #ef4444;border-radius:12px;box-shadow:0 2px 8px #ef44441a;padding:20px;transition:all .3s cubic-bezier(.4,0,.2,1)}.weak-point-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.weak-point-topic{color:#1e293b;font-size:17px;font-weight:700}.weak-point-accuracy{color:#ef4444;font-size:17px;font-weight:800}.weak-point-bar{background:#e2e8f0cc;border-radius:10px;box-shadow:inset 0 2px 4px #0000000f;height:10px;margin-bottom:10px;overflow:hidden;width:100%}.weak-point-fill{background:linear-gradient(90deg,#ef4444,#dc2626);box-shadow:0 0 10px #ef444480;height:100%;transition:width .5s cubic-bezier(.4,0,.2,1)}.weak-point-attempts{color:#64748b;font-size:13px;font-weight:500}.achievements-section{background:#fff;border:1px solid #94a3b81a;border-radius:16px;box-shadow:0 4px 16px #00000014;padding:28px}.achievements-section h3{align-items:center;color:#1e293b;display:flex;font-size:22px;font-weight:700;gap:10px;margin:0 0 24px}.achievements-section h3 span{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#1e293b,#334155);-webkit-background-clip:text;background-clip:text}.achievements-list{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.achievement-badge{align-items:center;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;overflow:hidden;padding:24px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.achievement-badge.earned{background:linear-gradient(135deg,#ec4899,#db2777 50%,#be185d);border:2px solid #fff3;box-shadow:0 8px 24px #ec489966;color:#fff}.achievement-badge.earned:hover{box-shadow:0 12px 32px #ec489999;transform:scale(1.1) rotate(2deg)}.achievement-badge.locked{background:linear-gradient(135deg,#e2e8f0,#cbd5e1);border:2px solid #94a3b833;color:#94a3b8;opacity:.5}.badge-icon{filter:drop-shadow(0 4px 8px rgba(0,0,0,.2));font-size:44px;margin-bottom:10px}.badge-name{font-size:13px;font-weight:700;line-height:1.4;text-align:center}@media (max-width:1024px){.charts-section{grid-template-columns:1fr}.chart-card-wide{grid-column:span 1}}@media (max-width:768px){.dashboard{padding:20px}.stats-cards{grid-template-columns:1fr}.dashboard-header{align-items:flex-start;flex-direction:column;gap:15px}}.dashboard::-webkit-scrollbar{width:10px}.dashboard::-webkit-scrollbar-track{background:#94a3b81a;border-radius:10px}.dashboard::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#3b82f6,#2563eb);border:2px solid #ffffff1a;border-radius:10px}.dashboard::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#2563eb,#1d4ed8);box-shadow:0 0 10px #3b82f680}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.stat-card{animation:fadeInUp .5s ease-out}.stat-card:first-child{animation-delay:.1s}.stat-card:nth-child(2){animation-delay:.2s}.stat-card:nth-child(3){animation-delay:.3s}.stat-card:nth-child(4){animation-delay:.4s}.chart-card{animation:fadeInUp .6s ease-out}.stat-card:before{background:radial-gradient(circle,#3b82f60d 0,#0000 70%);content:"";height:100%;pointer-events:none;position:absolute;right:-50%;top:-50%;width:100%}.chart-card:hover{border-color:#3b82f633;box-shadow:0 8px 24px #0000001f;transform:translateY(-4px)}.weak-point-item:hover{box-shadow:0 4px 16px #ef444433;transform:translateX(4px)}@keyframes shimmer{0%{background-position:-100% 0}to{background-position:200% 0}}.achievement-badge.earned:after{animation:shimmer 3s infinite;background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:200%;left:-50%;pointer-events:none;position:absolute;top:-50%;width:200%}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.file-manager{background:#2d2d2d;border-radius:8px;border-top:2px solid #444;color:#fff;display:flex;flex-direction:column;padding:10px 15px;transition:all .3s ease}.file-manager.collapsed{height:auto;padding:8px 15px}.file-manager.expanded{height:250px}.file-manager-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding-bottom:8px;-webkit-user-select:none;user-select:none}.file-manager.expanded .file-manager-header{border-bottom:1px solid #444;margin-bottom:10px}.file-manager.collapsed .file-manager-header{border-bottom:none;margin-bottom:0}.header-left{align-items:center;display:flex;gap:8px}.expand-icon{color:#999;font-size:12px;transition:transform .3s}.file-manager-header:hover .expand-icon{color:#667eea}.file-manager-header h3{font-size:14px;font-weight:600;margin:0}.file-count{color:#10b981;font-size:12px;font-weight:600}.btn-create-file{align-items:center;background:#10b981;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;height:30px;justify-content:center;transition:all .3s;width:30px}.btn-create-file:hover{background:#059669;transform:scale(1.1)}.file-list{flex:1 1;overflow-y:auto}.file-item{align-items:center;background:#1e1e1e;border-radius:6px;cursor:pointer;display:flex;margin-bottom:4px;padding:8px 10px;transition:all .2s}.file-item:hover{background:#3d3d3d}.file-item.selected{background:#667eea}.file-icon{font-size:16px;margin-right:8px}.file-name{flex:1 1;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s}.file-item:hover .file-actions{opacity:1}.btn-delete-file,.btn-edit-file{background:#0000;border:none;cursor:pointer;font-size:16px;padding:4px;transition:transform .2s}.btn-edit-file{color:#667eea}.btn-edit-file:hover{transform:scale(1.2)}.btn-delete-file{color:#ff6b6b}.btn-delete-file:hover{transform:scale(1.2)}.loading{padding:20px}.empty-state,.loading{color:#999;text-align:center}.empty-state{padding:40px 20px}.empty-state p{margin:10px 0}.empty-state .hint{color:#666;font-size:12px}.modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#2d2d2d;border-radius:12px;box-shadow:0 10px 40px #00000080;max-width:500px;padding:25px;width:90%}.modal-content h3{color:#fff;font-size:20px;margin:0 0 20px}.form-group{margin-bottom:20px}.form-group label{color:#fff;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.form-group input,.form-group textarea{background:#1e1e1e;border:1px solid #444;border-radius:6px;color:#fff;font-family:Courier New,monospace;font-size:14px;padding:10px;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#667eea;outline:none}.form-group textarea{min-height:80px;resize:vertical}.form-group .hint{color:#999;display:block;font-size:12px;margin-top:5px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:25px}.upload-mode-toggle{background:#1e1e1e;border-radius:8px;display:flex;gap:8px;margin-bottom:20px;padding:4px}.mode-btn{align-items:center;background:#0000;border:none;border-radius:6px;color:#999;cursor:pointer;display:flex;flex:1 1;font-size:14px;gap:6px;justify-content:center;padding:10px 15px;transition:all .3s}.mode-btn:hover{background:#2d2d2d;color:#fff}.mode-btn.active{background:#667eea;color:#fff;font-weight:600}.file-input{background:#1e1e1e!important;border:2px dashed #444!important;cursor:pointer;padding:12px!important}.file-input:hover{border-color:#667eea!important}.upload-preview{background:#1e1e1e;border:1px solid #444;border-radius:6px;margin-top:15px;padding:12px}.upload-preview p{color:#ccc;font-size:13px;margin:8px 0}.upload-preview strong{color:#667eea}.content-preview{word-wrap:break-word;background:#0d0d0d;border-radius:4px;color:#999;font-family:Courier New,monospace;font-size:12px;margin-top:8px;max-height:100px;overflow-y:auto;padding:10px;white-space:pre-wrap}.btn-confirm:disabled{background:#444;cursor:not-allowed;opacity:.5}.btn-cancel,.btn-confirm{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .3s}.btn-cancel{background:#555;color:#fff}.btn-cancel:hover{background:#666}.btn-confirm{background:#10b981;color:#fff}.btn-confirm:hover{background:#059669}.file-list::-webkit-scrollbar{width:6px}.file-list::-webkit-scrollbar-track{background:#1e1e1e;border-radius:3px}.file-list::-webkit-scrollbar-thumb{background:#555;border-radius:3px}.file-list::-webkit-scrollbar-thumb:hover{background:#666}.hint-panel{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.hint-content{padding:0}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.hint-intro{color:#ccc;margin-bottom:20px;text-align:center}.hint-intro p{margin:10px 0}.hint-intro p:first-child{color:#667eea;font-size:18px;font-weight:600}.hint-note{background:#1e1e1e;border-left:3px solid #667eea;border-radius:6px;font-size:13px;margin-top:15px;padding:12px;text-align:left}.hint-note strong{color:#667eea}.hint-message{animation:fadeIn .5s ease;background:linear-gradient(135deg,#1e1e1e,#252525);border-left:4px solid #667eea;border-radius:8px;margin-bottom:15px;padding:18px}.hint-level{align-items:center;display:flex;font-size:12px;font-weight:600;gap:6px;margin-bottom:10px}.hint-text{color:#e0e0e0;font-size:14px;line-height:1.6;white-space:pre-wrap}.hint-loading{align-items:center;color:#667eea;display:flex;font-weight:500;gap:12px;justify-content:center;padding:20px}.spinner{animation:spin .8s linear infinite;border:3px solid #444;border-radius:50%;border-top-color:#667eea;height:20px;width:20px}@keyframes spin{to{transform:rotate(1turn)}}.hint-actions{flex-direction:column;gap:10px}.btn-get-hint,.hint-actions{align-items:center;display:flex}.btn-get-hint{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;gap:6px;justify-content:center;max-width:300px;padding:12px 20px;transition:all .3s;width:100%}.btn-get-hint:hover:not(:disabled){box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.btn-get-hint:disabled{background:#444;cursor:not-allowed;opacity:.6;transform:none}.hint-limit-message{animation:fadeIn .5s ease;background:#ef44441a;border:1px solid #ef44444d;border-radius:6px;font-size:13px;margin-top:10px;padding:10px 15px;text-align:center}.ai-modal-overlay{align-items:center;animation:fadeIn .2s ease-out;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.ai-modal-content{animation:slideUp .3s ease-out;background:linear-gradient(135deg,#1e1e1e,#2d2d30);border:1px solid #ffffff1a;border-radius:12px;box-shadow:0 20px 60px #00000080;display:flex;flex-direction:column;max-height:80vh;max-width:600px;width:90%}.ai-modal-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;padding:20px 24px}.ai-modal-title{align-items:center;display:flex;gap:12px}.ai-icon{animation:bounce 2s infinite;font-size:28px}.ai-modal-title h3{color:#fff;font-size:20px;font-weight:600;margin:0}.ai-modal-close{align-items:center;background:#0000;border:none;border-radius:4px;color:#999;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;transition:all .2s;width:32px}.ai-modal-close:hover{background:#ffffff1a;color:#fff}.ai-modal-body{flex:1 1;overflow-y:auto;padding:24px}.ai-modal-body .hint-panel{background:#0000;border:none;box-shadow:none}.ai-modal-body .hint-panel-header{border:none;padding:0}.ai-modal-body .hint-panel-toggle{display:none}.ai-modal-body .hint-panel-content{max-height:none;padding:0}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@media (max-width:768px){.ai-modal-content{max-height:90vh;width:95%}.ai-modal-header{padding:16px 20px}.ai-modal-body{padding:20px}}.congratulations-overlay{align-items:center;animation:fadeIn .3s ease-in-out;background-color:#000000d9;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.congratulations-modal{animation:modalSlideIn .5s cubic-bezier(.68,-.55,.265,1.55);background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 20px 60px #00000080;max-width:600px;overflow:hidden;padding:3rem 2.5rem;position:relative;width:90%}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.5) translateY(-100px)}to{opacity:1;transform:scale(1) translateY(0)}}.confetti-container{height:100%;left:0;overflow:hidden;pointer-events:none;position:absolute;top:0;width:100%}.confetti{animation:confettiFall linear infinite;height:10px;opacity:.8;position:absolute;top:-10px;width:10px}@keyframes confettiFall{0%{opacity:1;transform:translateY(0) rotate(0deg)}to{opacity:0;transform:translateY(100vh) rotate(2turn)}}.trophy-icon{animation:trophyBounce 1s ease-in-out infinite;font-size:5rem;margin-bottom:1rem;text-align:center}@keyframes trophyBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.congrats-title{animation:titlePulse 2s ease-in-out infinite;color:#fff;font-size:2.5rem;font-weight:800;margin-bottom:.5rem;text-align:center;text-shadow:2px 2px 8px #0000004d}@keyframes titlePulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.congrats-subtitle{color:gold;font-size:1.5rem;font-weight:600;margin-bottom:2rem;text-align:center;text-shadow:1px 1px 4px #0000004d}.congrats-message{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#ffffff1a;border-radius:12px;color:#fff;font-size:1rem;line-height:1.6;margin-bottom:2rem;padding:1.5rem}.congrats-message p{margin-bottom:1rem;text-align:center}.achievement-list{list-style:none;margin:1rem 0;padding:0}.achievement-list li{align-items:center;animation:achievementSlideIn .5s ease-out forwards;display:flex;font-size:1.1rem;font-weight:500;justify-content:center;opacity:0;padding:.5rem 0}.achievement-list li:first-child{animation-delay:.2s}.achievement-list li:nth-child(2){animation-delay:.4s}.achievement-list li:nth-child(3){animation-delay:.6s}.achievement-list li:nth-child(4){animation-delay:.8s}@keyframes achievementSlideIn{0%{opacity:0;transform:translateX(-50px)}to{opacity:1;transform:translateX(0)}}.final-message{color:gold;font-size:1.1rem;font-style:italic;font-weight:600;margin-top:1rem;text-align:center}.emoji-celebration{display:flex;gap:1rem;justify-content:center;margin-bottom:2rem}.emoji{animation:emojiFloat 2s ease-in-out infinite;font-size:2rem}.emoji:first-child{animation-delay:0s}.emoji:nth-child(2){animation-delay:.2s}.emoji:nth-child(3){animation-delay:.4s}.emoji:nth-child(4){animation-delay:.6s}.emoji:nth-child(5){animation-delay:.8s}@keyframes emojiFloat{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-15px) rotate(10deg)}}.congrats-close-btn{background:linear-gradient(135deg,gold,orange);border:none;border-radius:50px;box-shadow:0 4px 15px #ffd70066;color:#667eea;cursor:pointer;font-size:1.2rem;font-weight:700;letter-spacing:1px;padding:1rem 2rem;text-transform:uppercase;transition:all .3s ease;width:100%}.congrats-close-btn:hover{background:linear-gradient(135deg,orange,gold);box-shadow:0 6px 25px #ffd70099;transform:translateY(-3px)}.congrats-close-btn:active{transform:translateY(-1px)}@media (max-width:768px){.congratulations-modal{max-width:90%;padding:2rem 1.5rem}.trophy-icon{font-size:4rem}.congrats-title{font-size:2rem}.congrats-subtitle{font-size:1.2rem}.achievement-list li{font-size:1rem}.emoji{font-size:1.5rem}}.final-test-container{background:linear-gradient(135deg,#1e1e2e,#2a2a3e);box-sizing:border-box;display:flex;flex-direction:column;height:100%;width:100%}.final-test-header{align-items:center;background:#ffffff0d;border-bottom:2px solid #ffffff1a;display:flex;gap:2rem;justify-content:space-between;padding:1.5rem 2rem}.restart-button{background:linear-gradient(135deg,#ff6b6b,#ee5a6f);border:none;border-radius:8px;box-shadow:0 2px 8px #ff6b6b4d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:.6rem 1.2rem;transition:all .3s ease;white-space:nowrap}.restart-button:hover{background:linear-gradient(135deg,#ee5a6f,#ff6b6b);box-shadow:0 4px 12px #ff6b6b80;transform:translateY(-2px)}.restart-button:active{transform:translateY(0)}.loading-container{color:#fff;font-size:1.1rem;padding:3rem}.final-test-progress,.loading-container{align-items:center;display:flex;justify-content:center}.final-test-progress{flex:1 1}.progress-stage{align-items:center;display:flex;flex:1 1;flex-direction:column;max-width:200px;position:relative}.progress-stage:not(:last-child):after{background:#fff3;content:"";height:3px;left:60%;position:absolute;top:20px;width:80%;z-index:0}.progress-stage.completed:not(:last-child):after{background:linear-gradient(90deg,#4caf50,#45a049)}.progress-circle{align-items:center;background:#ffffff1a;border:3px solid #ffffff4d;border-radius:50%;color:#ccc;display:flex;font-size:1.1rem;font-weight:700;height:40px;justify-content:center;transition:all .3s ease;width:40px;z-index:1}.progress-stage.active .progress-circle{background:linear-gradient(135deg,#2196f3,#1976d2);border-color:#2196f3;box-shadow:0 0 20px #2196f380;color:#fff}.progress-stage.completed .progress-circle{background:linear-gradient(135deg,#4caf50,#45a049);border-color:#4caf50;color:#fff}.progress-label{color:#aaa;font-size:.9rem;margin-top:.5rem;text-align:center}.progress-stage.active .progress-label{color:#2196f3;font-weight:600}.progress-stage.completed .progress-label{color:#4caf50}.progress-stage.clickable{cursor:pointer}.progress-stage.clickable:hover .progress-circle{border-color:#a5d6a7;box-shadow:0 0 20px #4caf5099;transform:scale(1.15)}.progress-stage.clickable:hover .progress-label{color:#a5d6a7}.final-test-content{flex:1 1;overflow:hidden}.final-test-content,.final-test-stage{box-sizing:border-box;display:flex;flex-direction:column;width:100%}.final-test-stage{background:#ffffff0d;box-shadow:none;height:100%;margin:0;padding:2rem}.stage-dropdown,.stage-mc{box-sizing:border-box;flex:1 1;overflow-y:auto;width:100%}.stage-coding{background:#0000;box-shadow:none;display:flex;flex:1 1;flex-direction:column;margin:0;max-width:100%;overflow:hidden;padding:0;width:100%}.stage-header{border-bottom:2px solid #ffffff1a;margin-bottom:2rem;padding-bottom:1rem;text-align:center}.stage-header h2{color:#fff;font-size:1.8rem;margin-bottom:.5rem}.stage-header p{color:#aaa;font-size:1rem}.question-container{box-sizing:border-box;margin-top:1.5rem;width:100%}.question-text{box-sizing:border-box;color:#fff;font-size:1.2rem;line-height:1.6;margin-bottom:1.5rem;width:100%}.options-list{flex-direction:column;gap:1rem;margin-bottom:2rem}.option-item,.options-list{box-sizing:border-box;display:flex;width:100%}.option-item{align-items:center;background:#ffffff0d;border:2px solid #fff3;border-radius:8px;cursor:pointer;padding:1rem 1.5rem;transition:all .3s ease}.option-item:hover{background:#ffffff1a;border-color:#fff6;transform:translateX(5px)}.option-item.selected{background:#2196f333;border-color:#2196f3}.option-item.correct{background:#4caf5033;border-color:#4caf50}.option-item.incorrect{background:#f4433633;border-color:#f44336}.correct-badge{background:#4caf5026;border:1px solid #4caf50;border-radius:4px;color:#4caf50;font-size:.78rem;font-weight:700;margin-left:auto;padding:2px 8px;white-space:nowrap}.question-nav{align-items:center;display:flex;gap:1rem;justify-content:center;margin-bottom:1.2rem}.question-counter{color:#aaa;font-size:.95rem;min-width:120px;text-align:center}.nav-arrow-btn{align-items:center;background:#ffffff12;border:2px solid #ffffff40;border-radius:50%;color:#ddd;cursor:pointer;display:flex;font-size:1.1rem;height:36px;justify-content:center;transition:all .2s ease;width:36px}.nav-arrow-btn:hover:not(:disabled){background:#2196f340;border-color:#2196f3;color:#fff}.nav-arrow-btn:disabled{cursor:not-allowed;opacity:.3}.blank-wrapper{align-items:center;display:inline-flex;gap:4px}.correct-answer-hint{color:#4caf50;font-size:.82rem;font-weight:600;white-space:nowrap}.option-letter{align-items:center;background:#ffffff1a;border-radius:50%;display:inline-flex;flex-shrink:0;font-weight:700;height:35px;justify-content:center;margin-right:1rem;width:35px}.option-text{color:#ddd;flex:1 1;font-size:1rem}.explanation{border-radius:8px;margin-bottom:2rem;padding:1.5rem}.explanation.correct{background:#4caf5026;border-left:4px solid #4caf50}.explanation.incorrect{background:#f4433626;border-left:4px solid #f44336}.explanation strong{display:block;font-size:1.1rem;margin-bottom:.5rem}.explanation p{color:#ddd;line-height:1.6;margin:0}.code-template{background:#1e1e1e;border-radius:8px;margin-bottom:1.5rem;overflow-x:auto;padding:1.5rem}.code-template pre{color:#d4d4d4;line-height:1.8;margin:0;white-space:pre-wrap}.blank-select,.code-template pre{font-family:Consolas,Monaco,Courier New,monospace;font-size:.95rem}.blank-select{background:#2196f333;border:2px solid #2196f3;border-radius:4px;color:#2196f3;cursor:pointer;margin:0 .2rem;outline:none;padding:.2rem .5rem}.blank-select:hover{background:#2196f34d}.blank-select.correct{background:#4caf5033;border-color:#4caf50;color:#4caf50}.blank-select.incorrect{background:#f4433633;border-color:#f44336;color:#f44336}.blank-select option{background:#2a2a3e;color:#ddd}.question-actions{display:flex;gap:1rem;justify-content:center}.btn-next,.btn-submit{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;padding:.8rem 2rem;transition:all .3s ease}.btn-submit{background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff}.btn-submit:hover:not(:disabled){background:linear-gradient(135deg,#1976d2,#1565c0);box-shadow:0 4px 15px #2196f366;transform:translateY(-2px)}.btn-submit:disabled{background:#ffffff1a;color:#666;cursor:not-allowed}.btn-next{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff}.btn-next:hover{background:linear-gradient(135deg,#45a049,#3d8b40);box-shadow:0 4px 15px #4caf5066;transform:translateY(-2px)}.stage-coding .resizable-container,.stage-coding .resizable-panel-container{flex:1 1;height:100%}.coding-description{background:#1e1e2e;height:100%;overflow-y:auto;padding:2rem}.description-content{color:#ddd;line-height:1.8}.description-content h1,.description-content h2,.description-content h3{color:#fff;margin-bottom:1rem;margin-top:1.5rem}.description-content code{background:#ffffff1a;border-radius:3px;font-size:.9em;padding:.2rem .4rem}.coding-workspace{background:#1e1e2e;display:flex;flex-direction:column;height:100%}.final-test-footer{background:#ffffff0d;border-top:1px solid #ffffff1a;padding:1rem 2rem;text-align:center}.final-test-footer p{color:#aaa;font-size:.95rem;margin:0}@media (max-width:768px){.final-test-progress{padding:1rem}.progress-stage{max-width:100px}.progress-circle{font-size:.9rem;height:30px;width:30px}.progress-label{font-size:.75rem}.final-test-content,.final-test-stage{padding:1rem}.stage-header h2{font-size:1.4rem}.question-text{font-size:1rem}.option-item{padding:.8rem 1rem}}.app{background:linear-gradient(135deg,#0f172a,#1e293b 50%,#334155);flex-direction:column;height:100vh}.app,.app-content{display:flex;overflow:hidden}.app-content{flex:1 1;margin-top:64px}.collapsed-sidebar-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border:2px solid #60a5fa4d;border-radius:50%;box-shadow:0 8px 24px #3b82f680;color:#fff;cursor:pointer;display:flex;font-size:22px;height:48px;justify-content:center;left:16px;opacity:0;pointer-events:none;position:fixed;top:78px;transform:scale(.8);transition:all .3s cubic-bezier(.4,0,.2,1);width:48px;z-index:1000}.collapsed-sidebar-btn.show{opacity:1;pointer-events:auto;transform:scale(1)}.collapsed-sidebar-btn:hover{box-shadow:0 12px 32px #3b82f6b3;transform:scale(1.15)}
/*# sourceMappingURL=main.aed32fb8.css.map*/