body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin:30px 0;flex-wrap:wrap}.page-btn{padding:8px 14px;border:1px solid #ddd;background-color:#fff;color:#333;cursor:pointer;border-radius:4px;font-size:14px;transition:all .2s ease;min-width:38px}.page-btn:hover:not(:disabled){background-color:#f0f0f0;border-color:#999}.page-btn.active{background-color:#007bff;color:#fff;border-color:#007bff;font-weight:600}.page-btn:disabled{opacity:.5;cursor:not-allowed}.page-btn.nav-btn{font-weight:500;padding:8px 16px}.ellipsis{padding:8px 6px;color:#666}.problems-info{text-align:center;color:#666;margin-bottom:20px;font-size:14px}.loading{text-align:center;padding:40px;color:#666;font-size:16px}@media(max-width:768px){.pagination{gap:6px;margin:20px 0}.page-btn{padding:6px 10px;font-size:13px;min-width:32px}.page-btn.nav-btn{padding:6px 12px}.problems-info{font-size:13px;margin-bottom:15px}}@media(max-width:480px){.pagination{gap:4px}.page-btn{padding:5px 8px;font-size:12px;min-width:28px}.page-btn.nav-btn{padding:5px 10px;font-size:12px}.ellipsis{padding:5px 4px}.problems-info{font-size:12px}.loading{padding:30px;font-size:14px}}.difficulty{padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase;margin-left:10px}.difficulty.easy{background-color:#d4edda;color:#155724}.difficulty.medium{background-color:#fff3cd;color:#856404}.difficulty.hard{background-color:#f8d7da;color:#721c24}.homepage{background-color:#0d1117;min-height:calc(100vh - 80px);color:#c9d1d9}.hero{background:linear-gradient(135deg,#1a1f2e,#0d1117);padding:6rem 2rem;text-align:center;border-bottom:1px solid #30363d}.hero-content{max-width:1200px;margin:0 auto}.hero-title{font-size:3.5rem;font-weight:700;color:#f0f6fc;margin-bottom:1.5rem;line-height:1.2;background:linear-gradient(135deg,#58a6ff,#79c0ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:1.3rem;color:#8b949e;max-width:800px;margin:0 auto 3rem;line-height:1.6}.hero-cta{display:flex;gap:1rem;justify-content:center;margin-bottom:4rem}.btn{padding:4rem 5.5rem;border-radius:16px;font-size:1.8rem;font-weight:700;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);border:none;cursor:pointer;display:inline-block;position:relative;overflow:hidden;letter-spacing:.5px;min-width:250px;text-align:center;line-height:1.5}.btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.btn:hover:before{left:100%}.btn-primary{background:linear-gradient(135deg,#238636,#2ea043);color:#fff;box-shadow:0 8px 24px #23863666}.btn-primary:hover{background:linear-gradient(135deg,#2ea043,#3fb950);transform:translateY(-3px) scale(1.02);box-shadow:0 12px 32px #23863680}.btn-secondary{background:transparent;color:#58a6ff;border:3px solid #58a6ff;box-shadow:0 4px 16px #58a6ff33}.btn-secondary:hover{background:linear-gradient(135deg,#58a6ff,#79c0ff);color:#fff;border-color:#79c0ff;transform:translateY(-3px) scale(1.02);box-shadow:0 8px 24px #58a6ff66}.btn-large{padding:1.2rem 3rem;font-size:1.2rem}.btn:focus{outline:2px solid #58a6ff;outline-offset:2px}.hero-stats{display:flex;justify-content:center;gap:4rem;margin-top:3rem}.stat{text-align:center}.stat-number{font-size:2.5rem;font-weight:700;color:#58a6ff;margin-bottom:.5rem}.stat-label{font-size:1rem;color:#8b949e;text-transform:uppercase;letter-spacing:1px}section{padding:5rem 2rem}.section-header{text-align:center;max-width:800px;margin:0 auto 4rem}.section-header h2{font-size:2.5rem;font-weight:700;color:#f0f6fc;margin-bottom:1rem}.section-header p{font-size:1.2rem;color:#8b949e;line-height:1.6}.features{background-color:#0d1117}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.feature-card{background:#161b22;border:1px solid #30363d;border-radius:12px;padding:2rem;transition:all .3s ease}.feature-card:hover{transform:translateY(-4px);border-color:#58a6ff;box-shadow:0 8px 24px #0006}.feature-icon{font-size:3rem;margin-bottom:1rem}.feature-card h3{font-size:1.5rem;color:#f0f6fc;margin-bottom:1rem;font-weight:600}.feature-card p{color:#8b949e;line-height:1.6;margin-bottom:1.5rem}.feature-link{color:#58a6ff;text-decoration:none;font-weight:600;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem}.feature-link:hover{color:#79c0ff;gap:.75rem}.feature-link:focus{outline:2px solid #58a6ff;outline-offset:2px;border-radius:4px}.how-it-works{background:linear-gradient(135deg,#1a1f2e,#0d1117)}.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:3rem;max-width:1200px;margin:0 auto}.step{text-align:center;padding:2rem}.step-number{width:60px;height:60px;background:#238636;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.8rem;font-weight:700;margin:0 auto 1.5rem;box-shadow:0 4px 12px #2386364d}.step h3{font-size:1.5rem;color:#f0f6fc;margin-bottom:1rem;font-weight:600}.step p{color:#8b949e;line-height:1.6;max-width:400px;margin:0 auto}.languages{background-color:#0d1117}.language-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;max-width:900px;margin:0 auto}.language-tag{background:#161b22;color:#58a6ff;padding:.75rem 1.5rem;border-radius:20px;border:1px solid #30363d;font-weight:600;font-size:1rem;transition:all .3s ease}.language-tag:hover{background:#1f6feb;color:#fff;border-color:#1f6feb;transform:translateY(-2px)}.testimonials{background:linear-gradient(135deg,#1a1f2e,#0d1117)}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.testimonial-card{background:#161b22;border:1px solid #30363d;border-radius:12px;padding:2rem;transition:all .3s ease}.testimonial-card:hover{border-color:#58a6ff;transform:translateY(-4px);box-shadow:0 8px 24px #0006}.testimonial-quote{color:#c9d1d9;font-size:1.1rem;line-height:1.6;margin-bottom:1.5rem;font-style:italic}.testimonial-quote:before{content:'"';font-size:2rem;color:#58a6ff;margin-right:.25rem}.testimonial-author{display:flex;flex-direction:column;gap:.25rem}.testimonial-author strong{color:#f0f6fc;font-weight:600}.testimonial-author span{color:#8b949e;font-size:.9rem}.final-cta{background:linear-gradient(135deg,#1f6feb,#1a7f37);padding:6rem 2rem;text-align:center;border-top:1px solid #30363d}.final-cta-content{max-width:800px;margin:0 auto}.final-cta h2{font-size:2.5rem;font-weight:700;color:#fff;margin-bottom:1rem}.final-cta p{font-size:1.2rem;color:#e6edf3;margin-bottom:2rem;line-height:1.6}.final-cta-buttons{display:flex;gap:1rem;justify-content:center;margin-bottom:1.5rem}.final-cta-note{color:#e6edf3;font-size:.95rem;margin-top:1.5rem}.faq-section{padding:5rem 2rem;background:linear-gradient(180deg,#0d1117,#161b22)}.faq-container{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:1rem}.faq-item{background:#21262d;border:1px solid #30363d;border-radius:8px;overflow:hidden;transition:all .3s ease}.faq-item:hover{border-color:#58a6ff;box-shadow:0 0 0 1px #58a6ff33}.faq-item[open]{border-color:#58a6ff;box-shadow:0 4px 12px #58a6ff26}.faq-question{padding:1.5rem;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1rem;font-weight:600;color:#f0f6fc;font-size:1.1rem;-webkit-user-select:none;user-select:none;transition:all .2s ease}.faq-question:hover{color:#58a6ff}.faq-question::-webkit-details-marker{display:none}.faq-question svg{flex-shrink:0;transition:transform .3s ease;color:#58a6ff}.faq-item[open] .faq-question svg{transform:rotate(180deg)}.faq-answer{padding:0 1.5rem 1.5rem;color:#c9d1d9;line-height:1.7;font-size:1rem;animation:fadeIn .3s ease}.faq-answer p{margin:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:968px){.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.1rem}.hero-stats{flex-direction:column;gap:2rem}.features-grid,.testimonials-grid,.steps{grid-template-columns:1fr}.hero-cta,.final-cta-buttons{flex-direction:column;align-items:stretch}section{padding:3rem 1rem}.section-header h2,.final-cta h2{font-size:2rem}}@media(max-width:600px){.hero{padding:4rem 1rem}.hero-title{font-size:2rem}.hero-subtitle{font-size:1rem}.btn{padding:2.5rem 3rem;font-size:1.3rem;min-width:220px;line-height:1.5}.btn-large{padding:2.8rem 3.5rem;font-size:1.4rem;line-height:1.5}.feature-card,.testimonial-card{padding:1.5rem}}@media(prefers-contrast:high){.feature-card,.testimonial-card{border-width:2px}.btn:focus{outline-width:3px}}.code-editor-container{height:100%;width:100%;border:1px solid #3a3a3a;border-radius:4px;overflow:hidden;display:flex;flex-direction:column}.editor-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#666}.spinner{border:3px solid #f3f3f3;border-top:3px solid #007bff;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin-bottom:10px}.auth-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.auth-card{background:#fff;padding:40px;border-radius:10px;box-shadow:0 10px 25px #0003;width:100%;max-width:400px}@media(max-width:768px){.auth-container{padding:15px}.auth-card{padding:30px;max-width:100%}.auth-card h2{font-size:1.5rem;margin-bottom:25px}}@media(max-width:480px){.auth-container{padding:40px 10px 10px;align-items:flex-start}.auth-card{padding:25px 20px;border-radius:8px}.auth-card h2{font-size:1.3rem;margin-bottom:20px}.form-group{margin-bottom:15px}.form-group input{padding:10px;font-size:16px}.auth-button{padding:10px;font-size:15px}.auth-description{font-size:13px}.auth-link{font-size:14px}}.auth-card h2{margin-bottom:30px;color:#333;text-align:center}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:5px;color:#555;font-weight:500}.form-group input{width:100%;padding:12px;border:1px solid #ddd;border-radius:5px;font-size:14px;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#667eea}.auth-button{width:100%;padding:12px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:5px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s}.auth-button:hover:not(:disabled){transform:translateY(-2px)}.auth-button:disabled{opacity:.7;cursor:not-allowed}.error-message{background:#fee;color:#c33;padding:10px;border-radius:5px;margin-bottom:20px;text-align:center}.auth-link{text-align:center;margin-top:20px;color:#666}.auth-link a{color:#667eea;text-decoration:none;font-weight:600}.auth-link a:hover{text-decoration:underline}.auth-description{text-align:center;color:#666;margin-bottom:20px;font-size:14px}.success-message{background:#d4edda;color:#155724;padding:15px;border-radius:5px;margin-bottom:20px;border:1px solid #c3e6cb}.token-display{margin-top:15px;padding:15px;background:#f8f9fa;border:1px solid #dee2e6;border-radius:5px}.token-display p{margin:5px 0;font-size:13px}.reset-token{display:block;padding:10px;background:#fff;border:1px solid #ddd;border-radius:3px;font-family:monospace;word-break:break-all;margin:10px 0;font-size:12px}.token-note{color:#856404;background:#fff3cd;padding:8px;border-radius:3px;margin-top:10px;font-size:12px}.email-instructions{background:#f8f9fa;padding:20px;border-radius:5px;margin-top:20px;text-align:left}.email-instructions h4{margin-top:0;margin-bottom:15px;color:#333}.email-instructions ul{list-style-position:inside;padding-left:0;color:#666}.email-instructions li{margin-bottom:10px}.link-button{background:none;border:none;color:#667eea;text-decoration:underline;cursor:pointer;font-size:inherit;padding:0;font-family:inherit}.link-button:hover{color:#764ba2}.success-message h3{margin-top:0;color:#155724}.leaderboard-page{padding:40px 20px;max-width:1000px;margin:0 auto}.leaderboard-page h1{text-align:center;margin-bottom:40px;color:#333}.leaderboard-container{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;overflow:hidden}.leaderboard-table{width:100%;border-collapse:collapse}.leaderboard-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.leaderboard-table th{padding:15px;text-align:left;font-weight:600}.leaderboard-table tbody tr{border-bottom:1px solid #eee;transition:background-color .2s}.leaderboard-table tbody tr:hover{background-color:#f8f9fa}.leaderboard-table td{padding:15px}.leaderboard-table .rank{font-weight:600;font-size:1.2em;width:80px;text-align:center}.leaderboard-table .username{font-weight:500;color:#333}.leaderboard-table .score{color:#667eea;font-weight:600}.leaderboard-table .problems{color:#28a745;font-weight:500}.top-1{background:linear-gradient(90deg,rgba(255,215,0,.1) 0%,transparent 100%)}.top-2{background:linear-gradient(90deg,rgba(192,192,192,.1) 0%,transparent 100%)}.top-3{background:linear-gradient(90deg,rgba(205,127,50,.1) 0%,transparent 100%)}.loading{text-align:center;padding:60px 20px;font-size:18px;color:#666}.empty-state{padding:60px 20px;text-align:center;color:#999}@media(max-width:768px){.leaderboard-table th,.leaderboard-table td{padding:10px 8px;font-size:14px}.leaderboard-table .rank{font-size:1em;width:60px}}.learning-page{max-width:1200px;margin:0 auto;padding:2rem}.learning-header{text-align:center;margin-bottom:3rem}.learning-header h1{font-size:2.5rem;margin-bottom:1rem;color:var(--primary-color)}.learning-header .subtitle{font-size:1.1rem;color:var(--text-muted);max-width:800px;margin:0 auto;line-height:1.6}.filters{display:flex;gap:2rem;justify-content:center;margin-bottom:3rem;flex-wrap:wrap}.filter-group label{font-weight:600;color:var(--text-color)}.filter-group select{padding:.5rem 1rem;border-radius:8px;border:2px solid var(--border-color);background-color:var(--bg-secondary);color:var(--text-color);font-size:1rem;cursor:pointer;transition:border-color .3s}.filter-group select:hover,.filter-group select:focus{border-color:var(--primary-color);outline:none}.learning-sets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem;margin-bottom:4rem}.learning-set-card{background:var(--bg-secondary);border-radius:12px;padding:1.5rem;border:2px solid var(--border-color);transition:all .3s ease;text-decoration:none;color:var(--text-color);display:flex;flex-direction:column;gap:1rem}.learning-set-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0003;border-color:var(--primary-color)}.card-header{display:flex;align-items:center;gap:.75rem}.category-icon{font-size:1.5rem}.category-badge{background:var(--primary-color);color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:600}.learning-set-card h3{font-size:1.3rem;margin:0;color:var(--heading-color)}.learning-set-card .description{color:var(--text-muted);line-height:1.6;flex-grow:1}.card-footer{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding-top:.5rem;border-top:1px solid var(--border-color)}.difficulty-badge{font-weight:600;font-size:.9rem}.time-estimate{color:var(--text-muted);font-size:.9rem}.completed-badge{background:var(--success-color);color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:600;margin-left:auto}.tags{display:flex;gap:.5rem;flex-wrap:wrap}.tag{background:var(--bg-tertiary);color:var(--text-muted);padding:.25rem .75rem;border-radius:12px;font-size:.85rem}.no-sets{grid-column:1 / -1;text-align:center;padding:3rem;color:var(--text-muted);font-size:1.1rem}.learning-info{background:var(--bg-secondary);border-radius:12px;padding:2rem;margin-top:3rem}.learning-info h2{text-align:center;margin-bottom:2rem;color:var(--heading-color)}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.info-card{background:var(--bg-primary);border-radius:8px;padding:1.5rem;border:1px solid var(--border-color)}.info-card h3{margin-top:0;margin-bottom:.75rem;color:var(--primary-color)}.info-card p{margin:0;color:var(--text-muted);line-height:1.6}.loading{text-align:center;padding:3rem;font-size:1.2rem;color:var(--text-muted)}@media(max-width:768px){.learning-page{padding:1rem}.learning-header h1{font-size:2rem}.learning-sets-grid{grid-template-columns:1fr;gap:1.5rem}.filters{flex-direction:column;gap:1rem}.filter-group{width:100%;flex-direction:column;align-items:stretch}.filter-group select{width:100%}}.learning-set-page{max-width:1000px;margin:0 auto;padding:2rem}.set-header{margin-bottom:2rem}.back-link{display:inline-block;color:var(--primary-color);text-decoration:none;margin-bottom:1rem;font-weight:600;transition:transform .2s}.back-link:hover{transform:translate(-4px)}.header-content h1{font-size:2.5rem;margin-bottom:1rem;color:var(--heading-color)}.header-content .description{font-size:1.1rem;color:var(--text-muted);line-height:1.6;margin-bottom:1.5rem}.meta-info{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}.category-badge,.difficulty-badge,.time-badge,.completed-badge{padding:.5rem 1rem;border-radius:20px;font-size:.9rem;font-weight:600}.category-badge{background:var(--primary-color);color:#fff}.difficulty-badge{border:2px solid currentColor}.difficulty-badge.beginner{color:var(--easy-color)}.difficulty-badge.intermediate{color:var(--medium-color)}.difficulty-badge.advanced{color:var(--hard-color)}.time-badge{background:var(--bg-secondary);color:var(--text-muted)}.completed-badge{background:var(--success-color);color:#fff}.complete-btn{background:var(--primary-color);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s}.complete-btn:hover{background:var(--primary-dark);transform:translateY(-2px)}.tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid var(--border-color)}.tabs button{background:none;border:none;padding:1rem 1.5rem;font-size:1rem;font-weight:600;color:var(--text-muted);cursor:pointer;transition:all .3s;border-bottom:3px solid transparent}.tabs button:hover{color:var(--text-color)}.tabs button.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.tab-content{background:var(--bg-secondary);border-radius:12px;padding:2rem}.introduction{margin-bottom:3rem}.introduction h2{color:var(--heading-color);margin-bottom:1rem}.intro-text p{color:var(--text-color);line-height:1.8;margin-bottom:1rem}.concept-section{margin-bottom:3rem;padding-bottom:2rem;border-bottom:2px solid var(--border-color)}.concept-section:last-child{border-bottom:none}.concept-section h2{color:var(--primary-color);margin-bottom:1rem;font-size:1.8rem}.concept-description{color:var(--text-muted);line-height:1.8;margin-bottom:1.5rem;font-size:1.05rem}.key-points{background:var(--bg-tertiary);border-left:4px solid var(--primary-color);padding:1.5rem;border-radius:8px;margin-bottom:2rem}.key-points h3{margin-top:0;margin-bottom:1rem;color:var(--heading-color)}.key-points ul{margin:0;padding-left:1.5rem}.key-points li{color:var(--text-color);line-height:1.8;margin-bottom:.5rem}.example{margin-bottom:2.5rem;background:var(--bg-primary);border-radius:12px;padding:1.5rem;border:1px solid var(--border-color)}.example h3{color:var(--heading-color);margin-top:0;margin-bottom:1.5rem}.code-block{margin-bottom:1.5rem;border-radius:8px;overflow:hidden}.explanation{background:var(--bg-secondary);border-radius:8px;padding:1.25rem;margin-bottom:1rem}.explanation h4{margin-top:0;margin-bottom:.75rem;color:var(--primary-color)}.explanation p{margin:0;color:var(--text-color);line-height:1.8}.complexity{display:flex;gap:2rem;padding:1rem;background:var(--bg-tertiary);border-radius:8px;font-size:.95rem}.complexity span{color:var(--text-muted)}.complexity strong{color:var(--text-color)}.problems-tab h2,.resources-tab h2{margin-top:0;margin-bottom:.5rem;color:var(--heading-color)}.tab-description{color:var(--text-muted);margin-bottom:2rem;line-height:1.6}.problems-list{display:flex;flex-direction:column;gap:1rem}.problem-card{background:var(--bg-primary)!important;border:2px solid var(--border-color)!important;border-radius:8px;padding:1.25rem;display:flex;align-items:center;gap:1rem;text-decoration:none;color:var(--text-color);transition:all .3s}.problem-card:hover{transform:translate(8px);border-color:var(--primary-color)}.problem-number{background:var(--primary-color);color:#fff;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;flex-shrink:0}.problem-title{flex-grow:1;font-weight:600}.problem-card .difficulty{font-size:.9rem;font-weight:600;padding:.25rem .75rem;border-radius:12px}.problem-card .difficulty.easy{color:var(--easy-color);background:#00ff001a}.problem-card .difficulty.medium{color:var(--medium-color);background:#ffa5001a}.problem-card .difficulty.hard{color:var(--hard-color);background:#ff00001a}.resources-list{display:flex;flex-direction:column;gap:1rem}.resource-card{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:8px;padding:1.25rem;display:flex;align-items:center;gap:1rem;text-decoration:none;color:var(--text-color);transition:all .3s}.resource-card:hover{transform:translate(8px);border-color:var(--primary-color)}.resource-type{font-size:2rem;flex-shrink:0}.resource-info{flex-grow:1}.resource-info h3{margin:0 0 .25rem;color:var(--heading-color);font-size:1.1rem}.resource-type-label{color:var(--text-muted);font-size:.9rem}.external-link{color:var(--primary-color);font-size:1.5rem;font-weight:700}.no-problems,.no-resources{text-align:center;padding:3rem;color:var(--text-muted)}.loading,.error{text-align:center;padding:3rem;font-size:1.2rem;color:var(--text-muted)}@media(max-width:768px){.learning-set-page{padding:1rem}.header-content h1{font-size:1.8rem}.tabs{overflow-x:auto}.tabs button{flex-shrink:0;padding:.75rem 1rem;font-size:.9rem}.tab-content{padding:1rem}.complexity{flex-direction:column;gap:.5rem}.problem-card,.resource-card{flex-direction:column;align-items:flex-start}}.problem-card.completed{border-color:var(--success-color)!important;background:#00ff000d!important}.problem-card.completed .problem-number{background:var(--success-color)}.completed-checkmark{color:var(--success-color);font-size:1.5rem;font-weight:700;flex-shrink:0}.blog-page{max-width:1200px;margin:0 auto;padding:3rem 2rem}.blog-header{text-align:center;margin-bottom:4rem;padding:2rem 0}.blog-header h1{font-size:2.5rem;color:#fff;margin-bottom:1rem}.blog-subtitle{font-size:1.1rem;color:#fff;max-width:600px;margin:0 auto;line-height:1.6}.featured-section{margin-bottom:4rem}.featured-section h2{font-size:1.8rem;margin-bottom:2rem;color:#fff}.featured-posts{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:2rem}.featured-post-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;overflow:hidden;text-decoration:none;color:#fff;transition:transform .3s ease,box-shadow .3s ease}.featured-post-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #0003}.featured-image{width:100%;height:200px;object-fit:cover}.featured-content{padding:2rem}.featured-content h3{font-size:1.5rem;margin:.5rem 0 1.5rem;color:#fff;line-height:1.3}.featured-content p{color:#ffffffe6;margin-bottom:1.5rem;line-height:1.7}.blog-filters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:3rem;justify-content:center;padding:1rem 0}.category-btn{padding:.75rem 1.5rem;background:#f5f5f5;border:2px solid transparent;border-radius:25px;cursor:pointer;font-size:.95rem;font-weight:500;transition:all .3s ease;color:#333}.category-btn:hover{background:#e8e8e8;border-color:#4f46e5}.category-btn.active{background:#4f46e5;color:#fff;border-color:#4f46e5}.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2.5rem;margin-bottom:4rem}.blog-card{background:#fff;border-radius:12px;overflow:hidden;text-decoration:none;color:inherit;box-shadow:0 2px 10px #0000001a;transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column}.blog-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #00000026}.blog-card-image{width:100%;height:200px;object-fit:cover}.blog-card-content{padding:2rem;flex:1;display:flex;flex-direction:column}.blog-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.post-category{display:inline-block;padding:.25rem .75rem;background:#e8e8ff;color:#4f46e5;border-radius:15px;font-size:.85rem;font-weight:600}.difficulty-badge{padding:.25rem .75rem;border-radius:15px;font-size:.85rem;font-weight:600}.difficulty-badge.beginner{background:#d1fae5;color:#065f46}.difficulty-badge.intermediate{background:#fef3c7;color:#92400e}.difficulty-badge.advanced{background:#fee2e2;color:#991b1b}.blog-card h3{font-size:1.25rem;margin:.75rem 0 1rem;color:#1a1a1a;line-height:1.4}.blog-card-description{color:#666;line-height:1.7;margin:0 0 1.5rem;flex:1}.blog-tags{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.25rem}.tag{display:inline-block;padding:.25rem .5rem;background:#f5f5f5;border-radius:5px;font-size:.8rem;color:#666}.blog-card-footer{display:flex;justify-content:space-between;padding-top:1.25rem;margin-top:auto;border-top:1px solid #eee;font-size:.9rem;color:#999}.post-meta{display:flex;gap:1rem;font-size:.9rem;color:#fffc}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:2rem}.pagination-btn{padding:.75rem 1.5rem;background:#4f46e5;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;transition:background .3s ease}.pagination-btn:hover:not(:disabled){background:#4338ca}.pagination-btn:disabled{background:#ccc;cursor:not-allowed}.pagination-info{font-size:.95rem;color:#666}@media(max-width:768px){.blog-page{padding:1rem}.blog-header h1{font-size:2rem}.blog-grid{grid-template-columns:1fr;gap:1.5rem}.featured-posts{grid-template-columns:1fr}.blog-filters{justify-content:flex-start}}.blog-post-page{max-width:900px;margin:0 auto;padding:3rem 2rem}.blog-post-container{background:#fff;padding:2rem;border-radius:12px}.back-link{display:inline-flex;align-items:center;color:#4f46e5;text-decoration:none;font-weight:500;margin-bottom:2.5rem;padding:.5rem 0;transition:color .3s ease}.back-link:hover{color:#4338ca}.blog-post-header{margin-bottom:3rem;padding-bottom:2rem}.post-meta-top{display:flex;gap:1rem;margin-bottom:1.5rem}.blog-post-title{font-size:2.5rem;color:#1a1a1a;margin:1.5rem 0;line-height:1.3}.blog-post-description{font-size:1.2rem;color:#666;line-height:1.7;margin-bottom:2rem}.blog-post-meta{display:flex;flex-wrap:wrap;gap:1.5rem;padding:1.5rem 0;border-top:1px solid #eee;border-bottom:1px solid #eee;font-size:.95rem;color:#666;margin-bottom:1.5rem}.post-author{font-weight:600;color:#4f46e5}.blog-post-tags{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.blog-post-tags .tag{display:inline-block;padding:.6rem 1.2rem;background:#f5f5f5;border-radius:20px;font-size:.9rem;color:#666;transition:background .3s ease}.blog-post-tags .tag:hover{background:#e8e8e8}.blog-post-cover{width:100%;max-height:500px;object-fit:cover;border-radius:12px;margin-bottom:3rem}.blog-post-content{font-size:1.1rem;line-height:1.8;color:#333;margin-bottom:4rem;padding:1rem 0}.blog-post-content h1{font-size:2.25rem;margin:3rem 0 1.5rem;color:#000;font-weight:700;line-height:1.3;border-bottom:3px solid #4F46E5;padding-bottom:.75rem}.blog-post-content h2{font-size:2rem;margin:2.5rem 0 1.25rem;color:#000;font-weight:700;line-height:1.3;border-bottom:2px solid #e5e7eb;padding-bottom:.75rem}.blog-post-content h3{font-size:1.5rem;margin:2rem 0 1rem;color:#000;font-weight:600;line-height:1.4}.blog-post-content h4{font-size:1.25rem;margin:1.5rem 0 .75rem;color:#1a1a1a;font-weight:600;line-height:1.4}.blog-post-content h5{font-size:1.1rem;margin:1.25rem 0 .75rem;color:#1a1a1a;font-weight:600;line-height:1.4}.blog-post-content h6{font-size:1rem;margin:1rem 0 .5rem;color:#1a1a1a;font-weight:600;line-height:1.4}.blog-post-content p{margin:1.25rem 0}.blog-post-content code{background:#f5f5f5;padding:.2rem .5rem;border-radius:4px;font-family:Monaco,Courier New,monospace;font-size:.95em}.blog-post-content pre{background:#1a1a1a;color:#f5f5f5;padding:2rem;border-radius:8px;overflow-x:auto;margin:2rem 0}.blog-post-content pre code{background:none;padding:0;color:inherit}.blog-post-content ul,.blog-post-content ol{margin:1.5rem 0;padding-left:2.5rem}.blog-post-content li{margin:.75rem 0;line-height:1.7}.blog-post-content blockquote{border-left:4px solid #4F46E5;padding:1rem 1.5rem;margin:2rem 0;color:#666;font-style:italic;background:#f9f9f9;border-radius:0 8px 8px 0}.blog-post-content img{max-width:100%;height:auto;border-radius:8px;margin:2rem 0}.blog-post-content a{color:#4f46e5;text-decoration:none;border-bottom:1px solid #4F46E5;transition:color .3s ease}.blog-post-content a:hover{color:#4338ca}.blog-post-share{padding:2.5rem 0;border-top:2px solid #eee;border-bottom:2px solid #eee;margin-bottom:4rem}.blog-post-share h3{font-size:1.3rem;margin-bottom:1.5rem;color:#1a1a1a}.share-buttons{display:flex;gap:1.25rem;flex-wrap:wrap}.share-btn{padding:.75rem 1.5rem;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;transition:transform .3s ease,box-shadow .3s ease;color:#fff}.share-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}.share-btn.twitter{background:#1da1f2}.share-btn.linkedin{background:#0077b5}.share-btn.facebook{background:#1877f2}.related-problems{margin-top:4rem;padding-top:2rem}.related-problems h3{font-size:1.5rem;margin-bottom:2rem;color:#1a1a1a}.problems-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:2rem}.problem-card{background:#fff;border:2px solid #eee;border-radius:12px;padding:2rem;text-decoration:none;color:inherit;transition:all .3s ease;display:flex;flex-direction:column}.problem-card:hover{border-color:#4f46e5;transform:translateY(-3px);box-shadow:0 4px 12px #4f46e51a}.problem-card h4{font-size:1.1rem;margin:0 0 1rem;color:#1a1a1a;line-height:1.4}.problem-card p{color:#666;font-size:.95rem;line-height:1.7;margin-bottom:1.25rem;flex:1}.problem-card .difficulty-badge{align-self:flex-start}.loading,.error{text-align:center;padding:3rem;font-size:1.1rem;color:#666}.error{color:#dc2626}@media(max-width:768px){.blog-post-page{padding:1rem}.blog-post-title{font-size:2rem}.blog-post-description{font-size:1.1rem}.blog-post-content{font-size:1rem}.blog-post-content h1{font-size:1.75rem}.blog-post-content h2{font-size:1.5rem}.blog-post-content h3{font-size:1.25rem}.blog-post-content h4{font-size:1.1rem}.blog-post-content h5{font-size:1rem}.blog-post-content h6{font-size:.95rem}.problems-grid{grid-template-columns:1fr}.blog-post-meta{gap:1rem}.share-buttons{flex-direction:column}.share-btn{width:100%}}.games-page{max-width:1400px;margin:0 auto;padding:3rem 2rem}.games-header{text-align:center;margin-bottom:4rem;padding:2rem 0}.games-header h1{font-size:3rem;background:linear-gradient(135deg,#667eea,#764ba2,#f093fb);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:1.5rem;font-weight:800}.games-subtitle{font-size:1.3rem;color:#fff;max-width:700px;margin:0 auto;line-height:1.6}.games-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2.5rem;margin-bottom:5rem}.game-card{background:#fff;border-radius:20px;padding:2.5rem;text-decoration:none;color:inherit;position:relative;overflow:hidden;transition:all .4s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 10px 30px #0000001a;display:flex;flex-direction:column}.game-card:before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:var(--game-color, #667eea);transform:scaleX(0);transform-origin:left;transition:transform .4s ease}.game-card:hover{transform:translateY(-10px);box-shadow:0 20px 40px #00000026}.game-card:hover:before{transform:scaleX(1)}.game-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.game-icon{font-size:4rem;filter:drop-shadow(0 4px 8px rgba(0,0,0,.1));animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.game-difficulty{padding:.5rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.game-difficulty.easy{background:linear-gradient(135deg,#84fab0,#8fd3f4);color:#0a5f4f}.game-difficulty.medium{background:linear-gradient(135deg,#ffecd2,#fcb69f);color:#8b4513}.game-difficulty.hard{background:linear-gradient(135deg,#ff9a9e,#fecfef);color:#8b0000}.game-card h2{font-size:1.8rem;margin-bottom:1rem;color:#1a1a1a;font-weight:700}.game-card p{color:#666;line-height:1.7;margin-bottom:2rem;flex:1;font-size:1.05rem}.play-button{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:linear-gradient(135deg,var(--game-color, #667eea) 0%,var(--game-color, #764ba2) 100%);color:#fff;border-radius:12px;font-weight:600;font-size:1.1rem;transition:all .3s ease}.game-card:hover .play-button{transform:scale(1.05);box-shadow:0 10px 20px #0003}.play-button .arrow{font-size:1.5rem;transition:transform .3s ease}.game-card:hover .play-button .arrow{transform:translate(5px)}.games-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:4rem;padding:3rem 0}.info-card{background:linear-gradient(135deg,#ffffff1a,#ffffff0d);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:2.5rem;text-align:center;border:1px solid rgba(255,255,255,.2);transition:all .3s ease}.info-card:hover{transform:translateY(-5px);border-color:#fff6;background:linear-gradient(135deg,#ffffff26,#ffffff14)}.info-icon{font-size:3rem;margin-bottom:1.5rem;filter:drop-shadow(0 4px 8px rgba(0,0,0,.1))}.info-card h3{font-size:1.5rem;color:#fff;margin-bottom:1rem;font-weight:700}.info-card p{color:#fffc;line-height:1.6;font-size:1rem}@media(max-width:768px){.games-page{padding:2rem 1rem}.games-header h1{font-size:2.5rem}.games-subtitle{font-size:1.1rem}.games-grid{grid-template-columns:1fr;gap:2rem}.game-card{padding:2rem}.games-info{grid-template-columns:1fr}}.game-container{max-width:1200px;margin:0 auto;padding:3rem 2rem}.game-wrapper{position:relative;display:inline-block;margin:0 auto;border-radius:20px;overflow:hidden;box-shadow:0 20px 60px #0000004d}.game-canvas{display:block;background:#1a1a2e;border-radius:20px}.game-overlay{position:absolute;inset:0;background:#000000e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.game-overlay h2{font-size:3rem;color:#fff;margin-bottom:1.5rem;text-align:center;background:linear-gradient(135deg,#667eea,#764ba2,#f093fb);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:800}.game-overlay p{font-size:1.3rem;color:#ffffffe6;margin-bottom:2rem;text-align:center;max-width:500px;line-height:1.6}.final-score{font-size:2rem!important;font-weight:700;color:#ffd93d!important;margin-bottom:2.5rem!important}.button-group{display:flex;gap:1.5rem;flex-wrap:wrap;justify-content:center}.game-button{padding:1.2rem 2.5rem;font-size:1.2rem;font-weight:600;border:none;border-radius:12px;cursor:pointer;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;transition:all .3s ease;box-shadow:0 10px 30px #667eea66;text-transform:uppercase;letter-spacing:1px}.game-button:hover{transform:translateY(-3px);box-shadow:0 15px 40px #667eea99}.game-button:active{transform:translateY(-1px)}.game-button.secondary{background:linear-gradient(135deg,#4ecdc4,#44a08d);box-shadow:0 10px 30px #4ecdc466}.game-button.secondary:hover{box-shadow:0 15px 40px #4ecdc499}.game-info{margin-top:3rem;background:linear-gradient(135deg,#ffffff1a,#ffffff0d);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:2.5rem;border:1px solid rgba(255,255,255,.2)}.game-info h3{font-size:1.8rem;color:#fff;margin-bottom:1.5rem;font-weight:700}.game-info ul{list-style:none;padding:0;margin:0}.game-info li{font-size:1.1rem;color:#ffffffe6;margin-bottom:1rem;padding-left:2rem;position:relative;line-height:1.6}.game-info li:before{content:"▸";position:absolute;left:0;color:#ffd93d;font-weight:700;font-size:1.3rem}.game-info li ul{margin-top:.5rem;margin-left:1rem}.game-info li ul li{font-size:1rem;margin-bottom:.5rem}.game-info strong{color:#ffd93d;font-weight:600}@media(max-width:900px){.game-container{padding:2rem 1rem}.game-canvas{width:100%!important;height:auto!important}.game-overlay h2{font-size:2.5rem}.game-overlay p{font-size:1.1rem}.final-score{font-size:1.8rem!important}.game-button{padding:1rem 2rem;font-size:1rem}.button-group{flex-direction:column;width:100%}.game-button{width:100%}.game-info{padding:2rem}.game-info h3{font-size:1.5rem}.game-info li{font-size:1rem}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.game-loading{animation:pulse 2s ease-in-out infinite}.coding-game-layout{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:3rem}.code-editor-section{display:flex;flex-direction:column;gap:1rem}.editor-header-game{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#ffffff1a,#ffffff0d);padding:1rem 1.5rem;border-radius:12px;border:1px solid rgba(255,255,255,.2)}.editor-header-game h3,.editor-header-game h4{margin:0;color:#fff;font-size:1.2rem}.run-button{padding:.75rem 1.5rem;background:linear-gradient(135deg,#4ecdc4,#44a08d);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #4ecdc466}.run-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #4ecdc499}.run-button:disabled{opacity:.6;cursor:not-allowed}.code-textarea{width:100%;min-height:400px;padding:1.5rem;background:#1e1e1e;color:#d4d4d4;border:2px solid rgba(78,205,196,.3);border-radius:12px;font-family:Consolas,Monaco,Courier New,monospace;font-size:14px;line-height:1.6;resize:vertical;transition:border-color .3s ease}.code-textarea:focus{outline:none;border-color:#4ecdc4;box-shadow:0 0 0 3px #4ecdc41a}.code-textarea:disabled{opacity:.7;cursor:not-allowed}.game-canvas-section{display:flex;flex-direction:column;gap:1rem;align-items:center}.game-hint{background:linear-gradient(135deg,#ffd93d33,#ffd93d1a);padding:1rem 1.5rem;border-radius:12px;border-left:4px solid #FFD93D;color:#ffffffe6;width:100%}.game-hint strong{color:#ffd93d}.game-message{padding:1rem 1.5rem;border-radius:12px;font-weight:500;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.game-message.success{background:linear-gradient(135deg,#4caf5033,#4caf501a);border-left:4px solid #4caf50;color:#4caf50}.game-message.error{background:linear-gradient(135deg,#f4433633,#f443361a);border-left:4px solid #f44336;color:#f44336}.game-message.info{background:linear-gradient(135deg,#4ecdc433,#4ecdc41a);border-left:4px solid #4ECDC4;color:#4ecdc4}.code-examples{background:#0000004d;padding:1.5rem;border-radius:12px;margin-top:1.5rem}.code-examples h4{color:#ffd93d;margin-top:0;margin-bottom:1rem}.code-examples pre{background:#1e1e1e;padding:1.5rem;border-radius:8px;overflow-x:auto;color:#d4d4d4;font-family:Consolas,Monaco,Courier New,monospace;font-size:13px;line-height:1.6;margin:0}.debug-game-header{background:linear-gradient(135deg,#ffffff1a,#ffffff0d);padding:2rem;border-radius:16px;margin-bottom:2rem;border:1px solid rgba(255,255,255,.2)}.debug-stats h2{margin:0 0 1rem;color:#fff;font-size:2rem}.stats-row{display:flex;gap:2rem;flex-wrap:wrap}.stat{background:#4ecdc433;padding:.5rem 1.5rem;border-radius:20px;color:#fff;font-weight:600}.bug-challenge{background:linear-gradient(135deg,#ffffff0d,#ffffff05);padding:2rem;border-radius:16px;margin-bottom:2rem;border:1px solid rgba(255,255,255,.1)}.bug-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.bug-header h3{color:#fff;margin:0;font-size:1.5rem}.bug-actions{display:flex;gap:.75rem;flex-wrap:wrap}.hint-button,.bug-button,.reset-button{padding:.5rem 1rem;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease}.hint-button{background:linear-gradient(135deg,#ffd93d,#ffc93c);color:#000}.bug-button{background:linear-gradient(135deg,#ff6b6b,#ee5a6f);color:#fff}.reset-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.hint-button:hover,.bug-button:hover,.reset-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.bug-description{color:#ffffffe6;font-size:1.1rem;line-height:1.6;margin-bottom:2rem}.algo-header{background:linear-gradient(135deg,#ffffff1a,#ffffff0d);padding:2rem;border-radius:16px;margin-bottom:2rem;border:1px solid rgba(255,255,255,.2);text-align:center}.algo-header h2{margin:0 0 1rem;color:#fff;font-size:2rem}.maze-legend{display:flex;gap:2rem;justify-content:center;flex-wrap:wrap;padding:1rem;background:#0000004d;border-radius:12px;margin-top:1rem}.maze-legend div{color:#ffffffe6;font-weight:500}.game-header-controls{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#ffffff1a,#ffffff0d);padding:2rem;border-radius:16px;margin-bottom:2rem;border:1px solid rgba(255,255,255,.2);flex-wrap:wrap;gap:1rem}.game-header-controls h2{color:#fff;margin:0;font-size:2rem}.header-buttons{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.score-display{background:#4ecdc433;padding:.75rem 1.5rem;border-radius:20px;color:#fff;font-weight:600;font-size:1.1rem}.reset-game-button{padding:.75rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea66}.reset-game-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea99}@media(max-width:1200px){.coding-game-layout{grid-template-columns:1fr}.code-textarea{min-height:300px}}@media(max-width:768px){.debug-game-header,.algo-header,.bug-challenge{padding:1.5rem}.bug-header{flex-direction:column;align-items:flex-start}.bug-actions{width:100%}.hint-button,.bug-button,.reset-button{flex:1}.stats-row,.maze-legend{gap:1rem}}.test-results{margin-top:1.5rem;background:#0000004d;padding:1.5rem;border-radius:12px}.test-results h4{color:#fff;margin-top:0;margin-bottom:1rem;font-size:1.2rem}.test-result{display:flex;align-items:flex-start;gap:1rem;padding:1rem;margin-bottom:.75rem;border-radius:8px;transition:all .3s ease}.test-result.passed{background:linear-gradient(135deg,#4caf5026,#4caf500d);border-left:3px solid #4caf50}.test-result.failed{background:linear-gradient(135deg,#f4433626,#f443360d);border-left:3px solid #f44336}.test-icon{font-size:1.2rem;flex-shrink:0}.test-details{flex:1}.test-description{color:#ffffffe6;font-weight:500;margin-bottom:.5rem}.test-description code{background:#4ecdc433;padding:.2rem .5rem;border-radius:4px;font-family:Consolas,Monaco,Courier New,monospace;font-size:.9em}.test-comparison{display:flex;flex-direction:column;gap:.3rem;font-size:.9rem}.test-expected,.test-got{font-family:Consolas,Monaco,Courier New,monospace}.test-expected{color:#ffffffb3}.test-expected code,.test-got code{background:#0006;padding:.2rem .5rem;border-radius:4px;color:#ffd93d}.test-got{color:#ffffffb3}.test-error{color:#f44336;font-size:.9rem;font-family:Consolas,Monaco,Courier New,monospace;background:#f443361a;padding:.5rem;border-radius:4px;margin-top:.5rem}.io-display{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-bottom:1.5rem}.io-box{background:linear-gradient(135deg,#ffffff14,#ffffff08);padding:1.5rem;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.io-box h4{color:#4ecdc4;margin:0 0 1rem;font-size:1rem;text-transform:uppercase;letter-spacing:1px}.io-box pre{background:#1e1e1e;padding:1rem;border-radius:8px;overflow-x:auto;color:#d4d4d4;font-family:Consolas,Monaco,Courier New,monospace;font-size:13px;line-height:1.6;margin:0}.output-correct{border-left:3px solid #4caf50!important;background:#4caf501a!important;color:#4caf50!important}.output-incorrect{border-left:3px solid #f44336!important;background:#f443361a!important;color:#f44336!important}.game-info code{background:#4ecdc433;padding:.2rem .5rem;border-radius:4px;font-family:Consolas,Monaco,Courier New,monospace;color:#4ecdc4;font-size:.95em}.game-info h4{color:#ffd93d;font-size:1.3rem;margin-top:2rem;margin-bottom:1rem}@media(max-width:768px){.test-result{flex-direction:column;gap:.5rem}.io-display{grid-template-columns:1fr}.test-comparison{font-size:.85rem}}.mock-interview-list-page{max-width:1200px;margin:0 auto;padding:2rem;background-color:#0d1117;min-height:100vh}.page-header{text-align:center;margin-bottom:3rem}.page-header h1{font-size:2.5rem;margin-bottom:1rem;color:#f0f6fc;font-weight:600}.page-description{font-size:1.1rem;color:#8b949e;max-width:600px;margin:0 auto;line-height:1.6}.filters{display:flex;justify-content:center;gap:1rem;margin-bottom:2rem}.filters button{padding:.5rem 1.5rem;border:2px solid #30363d;background:#161b22;color:#c9d1d9;border-radius:20px;cursor:pointer;font-size:1rem;transition:all .3s ease;font-weight:500}.filters button:hover{border-color:#58a6ff;color:#58a6ff;background:#1c2128}.filters button:focus{outline:2px solid #58a6ff;outline-offset:2px}.filters button.active{background:#1f6feb;border-color:#1f6feb;color:#fff}.interviews-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;margin-top:2rem}.interview-card{background:#161b22;border:1px solid #30363d;border-radius:12px;padding:1.5rem;text-decoration:none;color:#c9d1d9;transition:all .3s ease;display:flex;flex-direction:column;gap:1rem}.interview-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0006;border-color:#58a6ff;background:#1c2128}.interview-card:focus{outline:2px solid #58a6ff;outline-offset:2px}.interview-card-header{display:flex;justify-content:space-between;align-items:start;gap:1rem}.interview-card-header h3{font-size:1.3rem;margin:0;color:#f0f6fc;font-weight:600}.difficulty-badge{padding:.25rem .75rem;border-radius:12px;color:#fff;font-size:.85rem;font-weight:700;white-space:nowrap}.interview-card-description{color:#8b949e;line-height:1.6;margin:0;font-size:.95rem}.interview-card-meta{display:flex;gap:1.5rem;padding-top:.5rem;border-top:1px solid #30363d}.meta-item{display:flex;align-items:center;gap:.5rem;color:#8b949e;font-size:.95rem}.meta-item .icon{font-size:1.1rem}.interview-card-topics{display:flex;flex-wrap:wrap;gap:.5rem}.topic-tag{background:#21262d;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;color:#7d8590;border:1px solid #30363d}.no-interviews{text-align:center;padding:3rem;color:#8b949e;font-size:1.1rem}.mock-interview-page{max-width:1400px;margin:0 auto;padding:2rem;background-color:#0d1117;min-height:100vh}.interview-header{text-align:center;margin-bottom:2rem}.interview-header h1{font-size:2rem;margin-bottom:.5rem;color:#f0f6fc;font-weight:600}.interview-description{color:#8b949e;font-size:1.1rem}.interview-start{max-width:700px;margin:0 auto;text-align:center}.interview-info{background:#161b22;border:1px solid #30363d;border-radius:12px;padding:2rem;margin-bottom:2rem;text-align:left}.interview-info h2{margin-top:0;color:#f0f6fc;font-weight:600}.interview-info h3{margin-top:1.5rem;color:#f0f6fc;font-weight:600}.interview-info ul,.interview-info ol{line-height:2;color:#c9d1d9}.start-button{padding:1rem 3rem;font-size:1.2rem;background:#238636;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;font-weight:600}.start-button:hover{background:#2ea043}.start-button:focus{outline:2px solid #238636;outline-offset:2px}.interview-controls{display:flex;justify-content:space-between;align-items:center;background:#161b22;border:1px solid #30363d;border-radius:12px;padding:1rem 1.5rem;margin-bottom:1.5rem}.question-progress{font-weight:600;color:#f0f6fc;font-size:1.1rem}.timer{display:flex;align-items:center;gap:.5rem;font-size:1.5rem;font-weight:700;color:#58a6ff;padding:.5rem 1rem;background:#1c2128;border-radius:8px;border:1px solid #30363d}.timer-warning{color:#ff7b72;background:#2d1517;border-color:#da3633;animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.timer-icon{font-size:1.3rem}.control-buttons{display:flex;gap:1rem}.nav-button,.complete-button{padding:.75rem 1.5rem;border:1px solid #30363d;background:#21262d;color:#c9d1d9;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s ease}.nav-button:hover:not(:disabled){background:#1f6feb;color:#fff;border-color:#1f6feb}.nav-button:focus{outline:2px solid #58a6ff;outline-offset:2px}.nav-button:disabled{opacity:.5;cursor:not-allowed}.complete-button{background:#238636;color:#fff;border-color:#238636}.complete-button:hover{background:#2ea043;border-color:#2ea043}.complete-button:focus{outline:2px solid #238636;outline-offset:2px}.problem-workspace{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.problem-description-panel{background:#161b22;border:1px solid #30363d;border-radius:12px;padding:1.5rem;overflow-y:auto;max-height:600px}.problem-description-panel h2{margin-top:0;color:#f0f6fc;font-weight:600}.problem-meta{margin:1rem 0}.difficulty{padding:.25rem .75rem;border-radius:12px;font-size:.9rem;font-weight:700;color:#fff}.difficulty.Easy{background:#238636}.difficulty.Medium{background:#d29922}.difficulty.Hard{background:#da3633}.description-content{color:#c9d1d9;line-height:1.8}.description-content h3{margin-top:1.5rem;color:#f0f6fc;font-weight:600}.description-content pre{background:#0d1117;padding:1rem;border-radius:8px;overflow-x:auto;border:1px solid #30363d}.description-content code{background:#0d1117;padding:.2rem .4rem;border-radius:4px;font-family:Courier New,monospace;color:#79c0ff;border:1px solid #30363d}.code-panel{background:#161b22;border:1px solid #30363d;border-radius:12px;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.editor-header{display:flex;justify-content:space-between;align-items:center}.language-selector{padding:.5rem 1rem;border:1px solid #30363d;border-radius:8px;font-size:1rem;cursor:pointer;background:#0d1117;color:#c9d1d9;font-weight:500}.language-selector:hover{border-color:#58a6ff}.language-selector:focus{outline:2px solid #58a6ff;outline-offset:2px;border-color:#58a6ff}.run-button{padding:.75rem 2rem;background:#238636;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s ease}.run-button:hover:not(:disabled){background:#2ea043;box-shadow:0 0 0 3px #2386364d}.run-button:focus{outline:2px solid #238636;outline-offset:2px}.run-button:disabled{background:#6e7681;cursor:not-allowed}.test-results{margin-top:1rem;max-height:300px;overflow-y:auto;padding:.5rem}.test-results h3{margin-top:0;margin-bottom:1rem;color:#f0f6fc;font-weight:600}.test-case{border:1px solid #30363d;border-radius:8px;padding:1rem;margin-bottom:.75rem;background:#0d1117}.test-case.passed{border-color:#238636;background:#0d1117;box-shadow:inset 0 0 0 1px #238636}.test-case.failed{border-color:#da3633;background:#0d1117;box-shadow:inset 0 0 0 1px #da3633}.test-header{display:flex;justify-content:space-between;align-items:center;font-weight:600;margin-bottom:.5rem;font-size:1rem}.test-case.passed .test-header{color:#3fb950}.test-case.failed .test-header{color:#ff7b72}.test-details{margin-top:.5rem;padding-top:.5rem;border-top:1px solid #30363d;font-family:Courier New,monospace;font-size:.9rem;color:#c9d1d9}.test-details div{margin:.25rem 0;padding:.25rem}.interview-complete{max-width:600px;margin:0 auto;text-align:center;background:#161b22;border:1px solid #30363d;border-radius:12px;padding:3rem 2rem}.interview-complete h2{color:#3fb950;font-size:2rem;margin-bottom:1rem;font-weight:600}.interview-complete p{color:#c9d1d9}.complete-actions{display:flex;justify-content:center;gap:1rem;margin-top:2rem}.restart-button,.back-button{padding:.75rem 2rem;border:1px solid #30363d;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.restart-button{background:#1f6feb;color:#fff;border-color:#1f6feb}.restart-button:hover{background:#388bfd;border-color:#388bfd}.restart-button:focus{outline:2px solid #58a6ff;outline-offset:2px}.back-button{background:#21262d;color:#c9d1d9;border-color:#30363d}.back-button:hover{background:#30363d;border-color:#8b949e}.back-button:focus{outline:2px solid #58a6ff;outline-offset:2px}.loading,.error{text-align:center;padding:3rem;font-size:1.2rem;color:#8b949e}.error{color:#ff7b72}@media(max-width:968px){.problem-workspace{grid-template-columns:1fr}.interview-controls{flex-direction:column;gap:1rem}.control-buttons{width:100%;justify-content:center}.interviews-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(prefers-contrast:high){.interview-card,.test-case{border-width:2px}button:focus{outline-width:3px}}.bootcamp-page{padding:2rem;max-width:1400px;margin:0 auto}.bootcamp-header{text-align:center;margin-bottom:3rem;padding:2rem 0}.header-content h1{font-size:2.5rem;margin-bottom:1rem;color:var(--primary-color)}.hero-tagline{font-size:1.2rem;color:var(--text-color);opacity:.9;max-width:800px;margin:0 auto 2rem;line-height:1.6}.stats-row{display:flex;justify-content:center;gap:3rem;margin-top:2rem}.stat{display:flex;flex-direction:column;align-items:center}.stat-number{font-size:2rem;font-weight:700;color:var(--primary-color)}.stat-label{font-size:.9rem;color:var(--text-color);opacity:.7;margin-top:.5rem}.filters{display:flex;gap:2rem;margin-bottom:2rem;align-items:center}.filter-group{display:flex;align-items:center;gap:.5rem}.filter-group label{font-weight:500}.filter-group select{padding:.5rem 1rem;border-radius:5px;border:1px solid #444;background:#2a2a2a;color:var(--text-color)}.bootcamps-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem;margin-bottom:3rem}.bootcamp-card{background:#2a2a2a;border-radius:12px;overflow:hidden;text-decoration:none;color:inherit;transition:transform .2s,box-shadow .2s;border:2px solid transparent;position:relative}.bootcamp-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #0000004d;border-color:var(--primary-color)}.bootcamp-card.featured{border-color:var(--primary-color)}.featured-badge{position:absolute;top:1rem;right:1rem;background:var(--primary-color);color:#fff;padding:.3rem .8rem;border-radius:20px;font-size:.75rem;font-weight:700;z-index:1;text-shadow:0 1px 2px rgba(0,0,0,.2)}.card-image{width:100%;height:200px;overflow:hidden}.card-image img{width:100%;height:100%;object-fit:cover}.card-content{padding:1.5rem}.card-content h3{font-size:1.4rem;margin-bottom:.5rem;color:var(--primary-color)}.tagline{font-size:1rem;font-weight:500;color:var(--text-color);margin-bottom:.8rem}.description{font-size:.9rem;line-height:1.5;opacity:.8;margin-bottom:1rem}.bootcamp-meta{display:flex;flex-wrap:wrap;gap:1rem;margin:1rem 0;padding:1rem 0;border-top:1px solid #444;border-bottom:1px solid #444}.meta-item{display:flex;align-items:center;gap:.3rem;font-size:.85rem}.meta-item .icon{font-size:1rem}.card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:1rem}.level-badge{padding:.3rem .8rem;border-radius:20px;font-size:.85rem;font-weight:700}.enrolled-badge{background:var(--easy-color);color:#000;padding:.3rem .8rem;border-radius:20px;font-size:.85rem;font-weight:700}.tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.tag{background:#333;padding:.3rem .6rem;border-radius:5px;font-size:.75rem}.bootcamp-info,.career-paths{background:#2a2a2a;padding:2rem;border-radius:12px;margin-top:3rem}.bootcamp-info h2,.career-paths h2{text-align:center;font-size:2rem;margin-bottom:2rem;color:var(--primary-color)}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.info-card{text-align:center}.info-icon{font-size:3rem;margin-bottom:1rem}.info-card h3{margin-bottom:.5rem;color:var(--primary-color)}.careers-list{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:1rem}.career-badge{background:var(--primary-color);color:#fff;padding:.5rem 1rem;border-radius:20px;font-weight:500}.bootcamp-detail-page{padding:2rem;max-width:1200px;margin:0 auto}.bootcamp-hero{background:linear-gradient(135deg,#1e3a5f,#0e639c);padding:3rem 2rem;border-radius:12px;margin-bottom:2rem}.hero-content{display:grid;grid-template-columns:2fr 1fr;gap:2rem;align-items:center}.hero-left h1{font-size:2.5rem;margin-bottom:1rem}.bootcamp-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin:2rem 0}.stat-item{display:flex;align-items:center;gap:.8rem}.stat-item .icon{font-size:2rem}.stat-value{font-size:1.2rem;font-weight:700}.stat-label{font-size:.85rem;opacity:.8}.hero-actions{margin-top:2rem}.access-notice{background:#ffc1071a;border:2px solid var(--medium-color);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.premium-notice{text-align:center;font-size:1.1rem;font-weight:600;color:var(--medium-color);margin-bottom:1rem}.access-options{display:flex;flex-direction:column;align-items:center;gap:1rem}.purchase-btn{background:var(--medium-color)!important;color:#000!important;padding:1rem 2rem;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s}.purchase-btn:hover{background:#d4a825!important;transform:translateY(-2px)}.purchase-btn:disabled{opacity:.6;cursor:not-allowed}.or-text{font-size:.9rem;opacity:.7;font-weight:500}.option-divider{font-size:.9rem;opacity:.7}.subscription-link{color:var(--primary-color);text-decoration:none;font-weight:600;transition:color .2s}.subscription-link:hover{color:#0c5484;text-decoration:underline}.subscription-link-btn{display:inline-block;background:var(--primary-color);color:#fff;padding:1rem 2rem;border-radius:8px;text-decoration:none;font-weight:600;transition:all .2s}.subscription-link-btn:hover{background:#0c5484;transform:translateY(-2px);box-shadow:0 5px 15px #0000004d}.enroll-btn,.continue-btn,.certificate-btn{background:var(--easy-color);color:#000;border:none;padding:1rem 2rem;border-radius:8px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .2s}.enroll-btn:hover,.continue-btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px #0000004d}.enrollment-status{display:flex;align-items:center;gap:1rem}.enrollment-status.completed{color:var(--easy-color)}.hero-right img{width:100%;border-radius:12px}.learning-outcomes{background:#2a2a2a;padding:2rem;border-radius:12px;margin-bottom:2rem}.outcomes-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}.outcomes-list li{display:flex;align-items:start;gap:.8rem}.checkmark{color:var(--easy-color);font-size:1.2rem;flex-shrink:0}.prerequisites{background:#2a2a2a;padding:1.5rem;border-radius:8px;margin-bottom:2rem}.curriculum{margin-bottom:2rem}.curriculum h2{font-size:2rem;margin-bottom:.5rem}.curriculum-subtitle{opacity:.7;margin-bottom:2rem}.weeks-list{display:flex;flex-direction:column;gap:1rem}.week-card{background:#2a2a2a;border-radius:8px;overflow:hidden}.week-header{padding:1.5rem;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background .2s}.week-header:hover{background:#333}.week-title-section h3{margin-bottom:.5rem;color:var(--primary-color)}.week-description{opacity:.8;font-size:.9rem}.week-meta{display:flex;align-items:center;gap:1rem}.expand-icon{transition:transform .2s}.expand-icon.expanded{transform:rotate(180deg)}.week-content{padding:0 1.5rem 1.5rem}.topics{margin-bottom:1rem;padding:1rem;background:#1e1e1e;border-radius:5px}.lessons-list{display:flex;flex-direction:column;gap:1rem}.lesson-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#1e1e1e;border-radius:8px;transition:background .2s}.lesson-item:hover{background:#252525}.lesson-item.completed{border-left:4px solid var(--easy-color)}.lesson-info{display:flex;gap:1rem;flex:1}.lesson-number{width:30px;height:30px;background:var(--primary-color);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.lesson-details h4{margin-bottom:.3rem}.lesson-meta{display:flex;gap:1rem;font-size:.85rem;opacity:.7;margin-top:.5rem}.quiz-badge,.problems-badge{background:#333;padding:.2rem .5rem;border-radius:5px}.lesson-actions{display:flex;align-items:center;gap:.5rem}.completed-icon{color:var(--easy-color);font-size:1.5rem}.start-lesson-btn{background:var(--primary-color);color:#fff;border:none;padding:.5rem 1rem;border-radius:5px;cursor:pointer;transition:all .2s}.start-lesson-btn:hover{transform:scale(1.05)}.start-lesson-btn.locked{background:#555;cursor:not-allowed}.certificate-info{background:linear-gradient(135deg,#2a2a2a,#1e3a5f);padding:2rem;border-radius:12px;margin-bottom:2rem}.certificate-preview{margin-top:2rem}.certificate-card{background:#fff;color:#000;padding:2rem;border-radius:8px;text-align:center}.certificate-title{font-size:1.5rem;font-weight:700;margin:1rem 0}.skills-acquired h4{margin:1.5rem 0 1rem}.skills-list{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem}.skill-badge{background:#0e639c;color:#fff;padding:.3rem .8rem;border-radius:20px;font-size:.85rem}.careers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:1rem}.career-card{background:#333;padding:1rem;border-radius:8px;text-align:center}.instructors{margin-bottom:2rem}.instructors-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.instructor-card{background:#2a2a2a;padding:1.5rem;border-radius:12px;text-align:center}.instructor-image{width:100px;height:100px;border-radius:50%;margin-bottom:1rem}.instructor-title{opacity:.8;font-size:.9rem;margin-bottom:1rem}.instructor-links{display:flex;justify-content:center;gap:1rem;margin-top:1rem}.instructor-links a{color:var(--primary-color);text-decoration:none}.bootcamp-lesson-page{padding:1rem 2rem 2rem;max-width:1400px;margin:0 auto}.lesson-breadcrumb{margin-bottom:1.5rem;font-size:.9rem;opacity:.8}.lesson-breadcrumb a{color:var(--primary-color);text-decoration:none}.lesson-container{display:grid;gap:2rem}.video-section h1{font-size:2rem;margin-bottom:.5rem}.lesson-description{opacity:.8;margin-bottom:1.5rem}.video-wrapper{position:relative;width:100%;padding-bottom:56.25%;background:#000;border-radius:8px;overflow:hidden}.lesson-video{position:absolute;top:0;left:0;width:100%;height:100%}.video-controls{margin-top:1rem}.watch-complete-btn{background:var(--primary-color);color:#fff;border:none;padding:.8rem 1.5rem;border-radius:5px;cursor:pointer;font-weight:700}.watch-complete-btn.completed{background:var(--easy-color);color:#000}.lesson-content{background:#2a2a2a;padding:2rem;border-radius:12px}.lesson-content h2,.lesson-content h3{color:var(--primary-color);margin-bottom:1rem}.content-text{line-height:1.8;margin-bottom:2rem}.key-takeaways{background:#1e1e1e;padding:1.5rem;border-radius:8px;margin:2rem 0}.key-takeaways ul{list-style-position:inside}.code-examples{margin:2rem 0}.code-example{margin-bottom:2rem}.code-block{background:#1e1e1e;padding:1.5rem;border-radius:8px;overflow-x:auto;margin:1rem 0}.code-block code{font-family:Courier New,monospace;font-size:.9rem}.explanation{margin-top:1rem;padding:1rem;background:#333;border-radius:5px}.quiz-section{background:#1e1e1e;padding:2rem;border-radius:12px;margin:2rem 0}.quiz-question{margin:2rem 0;padding:1.5rem;border-radius:8px;border-left:4px solid transparent;transition:all .3s}.quiz-question.question-correct{background:#1b5e201a;border-left-color:var(--easy-color)}.quiz-question.question-incorrect{background:#b71c1c1a;border-left-color:var(--hard-color)}.question-result-icon{font-size:1.2rem;font-weight:700}.question-result-icon.correct-icon{color:var(--easy-color)}.question-result-icon.incorrect-icon{color:var(--hard-color)}.quiz-options{display:flex;flex-direction:column;gap:.8rem;margin:1rem 0}.quiz-option{display:flex;align-items:center;gap:.8rem;padding:1rem;background:#2a2a2a;border-radius:8px;cursor:pointer;transition:all .2s}.quiz-option:hover{background:#333}.quiz-option.correct{background:#1b5e20;border:2px solid var(--easy-color)}.quiz-option.incorrect{background:#b71c1c;border:2px solid var(--hard-color)}.quiz-explanation{margin-top:1rem;padding:1rem;background:#333;border-radius:5px}.submit-quiz-btn{margin-top:1.5rem}.quiz-result{padding:1.5rem;border-radius:8px;margin-top:1.5rem;text-align:center}.quiz-result.pass{background:#1b5e20}.quiz-result.fail{background:#b71c1c}.retry-quiz-btn{background:var(--medium-color);color:#000;border:none;padding:.8rem 1.5rem;border-radius:5px;margin-top:1rem;cursor:pointer;font-weight:700}.practice-problems{margin:2rem 0}.problems-list{display:flex;flex-direction:column;gap:.8rem}.problem-card{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#1e1e1e;border-radius:8px;text-decoration:none;color:inherit;transition:background .2s}.problem-card:hover{background:#333}.difficulty-badge.easy{color:var(--easy-color)}.difficulty-badge.medium{color:var(--medium-color)}.difficulty-badge.hard{color:var(--hard-color)}.lesson-resources{margin:2rem 0}.resources-list{list-style:none;padding:0}.resources-list li{margin:.5rem 0}.resources-list a{color:var(--primary-color);text-decoration:none}.notes-section{margin:2rem 0}.notes-textarea{width:100%;background:#1e1e1e;color:var(--text-color);border:1px solid #444;border-radius:8px;padding:1rem;font-family:inherit;resize:vertical}.save-notes-btn{background:var(--primary-color);color:#fff;border:none;padding:.8rem 1.5rem;border-radius:5px;margin-top:1rem;cursor:pointer}.lesson-navigation{margin-top:2rem}.nav-buttons{display:grid;grid-template-columns:1fr auto 1fr;gap:1rem;align-items:center}.nav-btn{padding:.8rem 1.5rem;border-radius:8px;text-decoration:none;background:#333;color:var(--text-color);transition:all .2s}.nav-btn:hover{background:#444}.nav-btn.prev{text-align:left}.nav-btn.next{text-align:right;justify-self:end}.complete-lesson-btn{padding:1rem 2rem;font-size:1.1rem;font-weight:700}.completion-requirements{background:#2a2a2a;border:2px solid var(--primary-color);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.completion-requirements h4{color:var(--primary-color);margin-bottom:1rem;font-size:1.1rem}.completion-requirements ul{list-style:none;padding:0;margin:0}.completion-requirements li{padding:.5rem 0;font-size:1rem;color:#ccc}.completion-requirements li.requirement-met{color:var(--easy-color);font-weight:500}.complete-lesson-btn.disabled{opacity:.5;cursor:not-allowed;background:#555}.complete-lesson-btn.disabled:hover{background:#555;transform:none}@media(max-width:768px){.bootcamps-grid,.hero-content{grid-template-columns:1fr}.bootcamp-stats{grid-template-columns:repeat(2,1fr)}.outcomes-list{grid-template-columns:1fr}.stats-row{flex-direction:column;gap:1rem}.nav-buttons{grid-template-columns:1fr}.nav-btn.next{justify-self:start}}.admin-access-badge{background:linear-gradient(135deg,gold,#ffed4e);border:2px solid #ffd700;border-radius:12px;padding:1rem 1.5rem;margin-bottom:1.5rem;box-shadow:0 4px 12px #ffd7004d}.admin-notice{color:#000;font-weight:600;font-size:1.1rem;margin:0;text-align:center}.certificate-page{padding:2rem;max-width:1200px;margin:0 auto}.certificate-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.back-btn{color:var(--primary-color);text-decoration:none;font-weight:500;transition:opacity .2s}.back-btn:hover{opacity:.8}.action-buttons{display:flex;gap:1rem}.share-btn,.print-btn{background:var(--primary-color);color:#fff;border:none;padding:.8rem 1.5rem;border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s}.share-btn:hover,.print-btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px #0000004d}.certificate-container{margin:2rem 0;display:flex;justify-content:center}.certificate{width:100%;max-width:900px;background:linear-gradient(135deg,#f5f5f5,#e0e0e0);padding:2rem;border-radius:12px;box-shadow:0 10px 40px #0000004d}.certificate-border{border:8px solid #0e639c;border-radius:8px;padding:1rem;background:#fff;position:relative}.certificate-content{padding:3rem 2rem;position:relative}.certificate-header{text-align:center;margin-bottom:2rem;border-bottom:3px solid #0e639c;padding-bottom:1rem}.certificate-logo{font-size:2.5rem;color:#0e639c;margin-bottom:.5rem;font-weight:700}.certificate-type{font-size:1.2rem;color:#555;text-transform:uppercase;letter-spacing:3px;font-weight:500}.certificate-main{text-align:center;margin:2rem 0}.certificate-awarded-to{font-size:1.1rem;color:#666;margin-bottom:.5rem;font-style:italic}.certificate-name{font-size:2.8rem;color:#0e639c;margin:1rem 0;font-weight:700;font-family:Georgia,serif}.certificate-completion-text{font-size:1rem;color:#666;margin:1.5rem 0 .5rem}.certificate-bootcamp-title{font-size:2rem;color:#333;margin:1rem 0 2rem;font-weight:700}.certificate-details{display:flex;justify-content:center;gap:3rem;margin:2rem 0;padding:1.5rem;background:#f9f9f9;border-radius:8px}.detail-item{display:flex;flex-direction:column;align-items:center}.detail-label{font-size:.85rem;color:#666;text-transform:uppercase;letter-spacing:1px;margin-bottom:.3rem}.detail-value{font-size:1rem;color:#333;font-weight:700}.certificate-skills{margin:2rem 0;padding:1.5rem;background:#f0f8ff;border-radius:8px}.skills-title{font-size:1rem;color:#555;margin-bottom:1rem;font-weight:600}.certificate-skills .skills-list{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem}.certificate-skills .skill-badge{background:#0e639c;color:#fff;padding:.4rem 1rem;border-radius:20px;font-size:.85rem;font-weight:500}.certificate-stats{display:flex;justify-content:center;gap:3rem;margin:2rem 0;padding:1.5rem;background:#f9f9f9;border-radius:8px}.certificate-stats .stat{text-align:center}.certificate-stats .stat-value{font-size:2rem;color:#0e639c;font-weight:700}.certificate-stats .stat-label{font-size:.85rem;color:#666;margin-top:.3rem}.certificate-footer{margin-top:3rem;padding-top:2rem;border-top:2px solid #ddd}.certificate-signature-section{text-align:center;margin-bottom:2rem}.instructors-label{font-size:.85rem;color:#666;text-transform:uppercase;letter-spacing:1px;margin-bottom:.5rem}.instructors-names{font-size:1.1rem;color:#333;font-weight:500}.certificate-verification{text-align:center}.verification-info{font-size:.85rem;color:#666}.certificate-number{font-weight:700;color:#0e639c;margin-bottom:.3rem}.verification-code{font-family:Courier New,monospace;font-weight:700;margin-bottom:.3rem}.issue-date{font-style:italic}.certificate-seal{position:absolute;bottom:2rem;right:2rem}.seal-circle{width:100px;height:100px;border:4px solid #0e639c;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;position:relative}.seal-circle:before{content:"";position:absolute;width:90px;height:90px;border:2px solid #0e639c;border-radius:50%}.seal-content{text-align:center;z-index:1}.seal-year{font-size:1.5rem;font-weight:700;color:#0e639c}.seal-text{font-size:.7rem;color:#333;text-transform:uppercase;letter-spacing:1px}.verification-section{background:#2a2a2a;padding:2rem;border-radius:12px;margin:2rem 0}.verification-section h2{color:var(--primary-color);margin-bottom:1rem}.verification-url{background:#1e1e1e;padding:1rem;border-radius:8px;margin:1rem 0;word-break:break-all}.verification-url a{color:var(--primary-color);text-decoration:none}.share-tips{margin-top:2rem}.share-tips h3{color:var(--primary-color);margin-bottom:1rem}.tips-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-top:1rem}.tip{background:#1e1e1e;padding:1.5rem;border-radius:8px}.tip h4{color:var(--primary-color);margin-bottom:.5rem}.certificate-metadata{background:#2a2a2a;padding:2rem;border-radius:12px;margin:2rem 0}.certificate-metadata h3{color:var(--primary-color);margin-bottom:1rem}.metadata-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.metadata-item{background:#1e1e1e;padding:1rem;border-radius:8px;display:flex;justify-content:space-between}.metadata-label{font-weight:500;opacity:.8}.metadata-value{font-weight:700;color:var(--primary-color)}@media print{body{background:#fff}.certificate-page{padding:0}.no-print{display:none!important}.certificate{box-shadow:none;max-width:100%;page-break-after:avoid}.certificate-content{page-break-inside:avoid}}@media(max-width:768px){.certificate{padding:1rem}.certificate-content{padding:2rem 1rem}.certificate-name{font-size:2rem}.certificate-bootcamp-title{font-size:1.5rem}.certificate-details{flex-direction:column;gap:1rem}.certificate-stats{flex-direction:column;gap:1.5rem}.certificate-seal{position:static;display:flex;justify-content:center;margin-top:2rem}.action-buttons{flex-direction:column}.certificate-actions{flex-direction:column;align-items:flex-start;gap:1rem}}.live-preview-container{height:100%;display:flex;flex-direction:column;border:1px solid #ddd;border-radius:4px;overflow:hidden;background:#fff}.preview-header{background:#f5f5f5;padding:8px 12px;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;align-items:center}.preview-title{font-weight:600;color:#333;font-size:14px}.refresh-btn{background:#007bff;color:#fff;border:none;padding:4px 10px;border-radius:4px;cursor:pointer;font-size:16px}.refresh-btn:hover{background:#0056b3}.preview-frame{flex:1;width:100%;border:none;background:#fff}.practice-workspace{display:flex;height:calc(100vh - 60px);width:100%;overflow:hidden;background:#1e1e1e}.workspace-panel{display:flex;flex-direction:column;background:#252526;border-right:1px solid #3e3e42;overflow:hidden}.problem-panel{flex:0 0 350px;min-width:300px;max-width:500px;transition:all .3s ease}.problem-panel.collapsed{flex:0 0 60px;min-width:60px;max-width:60px}.problem-panel.collapsed .panel-content{display:none}.problem-panel.collapsed .panel-header{flex-direction:column;padding:12px 8px}.problem-panel.collapsed .panel-header h2{writing-mode:vertical-rl;transform:rotate(180deg);font-size:14px;white-space:nowrap}.editor-panel{flex:1;min-width:400px}.preview-panel{flex:0 0 400px;min-width:350px;max-width:600px;border-right:none;border-left:1px solid #3e3e42}.panel-header{padding:12px 16px;background:#2d2d30;border-bottom:1px solid #3e3e42;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.panel-header h2,.panel-header h3{margin:0;font-size:16px;font-weight:500;color:#ccc;display:flex;align-items:center;gap:10px}.difficulty{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.difficulty-easy{background:#1a472a;color:#5cb85c}.difficulty-medium{background:#5a4a1a;color:#f0ad4e}.difficulty-hard{background:#5a1a1a;color:#d9534f}.panel-content{flex:1;overflow-y:auto;color:#d4d4d4}.problem-panel .panel-content{padding:20px}.editor-panel .panel-content,.preview-panel .panel-content{padding:0;overflow:hidden}.problem-description{margin-bottom:24px;line-height:1.6}.problem-description p{margin:0 0 12px;color:#ccc}.test-cases{margin-top:24px}.test-cases h3{font-size:14px;margin:0 0 12px;color:#ccc;font-weight:600}.test-case{background:#1e1e1e;padding:12px;margin-bottom:12px;border-radius:4px;border-left:3px solid #007acc}.test-input,.test-output{margin:6px 0;font-size:13px;font-family:Consolas,Monaco,monospace}.test-input strong,.test-output strong{color:#569cd6;margin-right:8px}.hints-section{margin-top:24px;background:#1e1e1e;padding:12px;border-radius:4px}.hints-section summary{cursor:pointer;font-weight:600;color:#ccc;-webkit-user-select:none;user-select:none}.hints-section ul{margin:12px 0 0 20px;padding:0}.hints-section li{margin:8px 0;color:#ccc;line-height:1.5}.test-results{margin-top:24px;padding:16px;border-radius:4px}.test-results.success{background:#1a472a;border:1px solid #5cb85c}.test-results.failure{background:#5a1a1a;border:1px solid #d9534f}.test-results h3{margin:0 0 12px;font-size:16px}.test-details{margin-top:12px}.test-result{padding:8px;margin:6px 0;border-radius:3px;font-size:13px}.test-result.passed{background:#5cb85c1a;color:#5cb85c}.test-result.failed{background:#d9534f1a;color:#d9534f}.file-tabs{display:flex;gap:2px;flex:1}.file-tab{padding:8px 16px;background:#2d2d30;border:none;color:#969696;cursor:pointer;font-size:13px;transition:all .2s;border-top:2px solid transparent;position:relative}.file-tab:hover{background:#37373d;color:#ccc}.file-tab.active{background:#1e1e1e;color:#fff;border-top-color:#007acc}.dirty-indicator{margin-left:4px;color:#f0ad4e}.editor-actions{display:flex;gap:8px}.btn{padding:6px 16px;border:none;border-radius:3px;cursor:pointer;font-size:13px;font-weight:500;transition:all .2s}.btn-primary{background:#007acc;color:#fff}.btn-primary:hover{background:#0062a3}.btn-secondary{background:#3e3e42;color:#ccc}.btn-secondary:hover{background:#4e4e52}.btn-success{background:#5cb85c;color:#fff}.btn-success:hover{background:#4cae4c}.collapse-toggle{background:#3e3e42;border:none;color:#ccc;font-size:16px;line-height:1;cursor:pointer;padding:6px 10px;border-radius:3px;transition:all .2s;display:flex;align-items:center;justify-content:center}.collapse-toggle:hover{background:#4e4e52;color:#fff}.close-preview{background:none;border:none;color:#ccc;font-size:24px;line-height:1;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.close-preview:hover{background:#3e3e42;border-radius:3px}.show-preview-btn{position:fixed;right:20px;top:50%;transform:translateY(-50%);padding:12px 20px;background:#007acc;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;box-shadow:0 2px 8px #0000004d;z-index:100;transition:all .2s}.show-preview-btn:hover{background:#0062a3;box-shadow:0 4px 12px #0006}.loading,.error{display:flex;align-items:center;justify-content:center;height:100vh;font-size:18px;color:#ccc}.error{color:#d9534f}.editor-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#ccc;gap:12px}.panel-content::-webkit-scrollbar{width:14px}.panel-content::-webkit-scrollbar-track{background:#1e1e1e}.panel-content::-webkit-scrollbar-thumb{background:#424242;border-radius:7px;border:3px solid #1e1e1e}.panel-content::-webkit-scrollbar-thumb:hover{background:#4e4e4e}@media(max-width:1200px){.problem-panel{flex:0 0 300px}.preview-panel{flex:0 0 350px}}@media(max-width:992px){.practice-workspace{flex-direction:column}.workspace-panel{border-right:none;border-bottom:1px solid #3e3e42}.problem-panel,.editor-panel,.preview-panel{flex:1;max-width:100%;min-width:100%;height:50vh}.preview-panel{border-left:none}}.pricing-page{padding:2rem;max-width:1400px;margin:0 auto}.pricing-header{text-align:center;margin-bottom:3rem}.pricing-header h1{font-size:2.5rem;margin-bottom:.5rem;color:var(--primary-color)}.pricing-header p{font-size:1.2rem;opacity:.8}.pricing-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;margin-bottom:4rem}.pricing-card{background:#2a2a2a;border-radius:12px;padding:2rem;position:relative;border:2px solid transparent;transition:transform .3s,border-color .3s}.pricing-card:hover{transform:translateY(-5px)}.pricing-card.premium-card{border-color:var(--primary-color);box-shadow:0 10px 30px #0e639c4d}.pricing-card.yearly-card{border-color:var(--easy-color);box-shadow:0 10px 30px #1b5e204d}.featured-badge{position:absolute;top:-15px;left:50%;transform:translate(-50%);background:var(--primary-color);color:#fff;padding:.5rem 1.5rem;border-radius:20px;font-size:.85rem;font-weight:700}.plan-header{text-align:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #444}.plan-header h2{font-size:1.8rem;margin-bottom:1rem}.price{margin:1rem 0}.price .amount{font-size:3rem;font-weight:700;color:var(--primary-color)}.price .period{font-size:1.2rem;opacity:.7}.trial-notice,.one-time-notice{margin-top:.5rem;color:var(--easy-color);font-weight:500;font-size:.9rem}.plan-features{margin-bottom:2rem}.plan-features h3{font-size:1.1rem;margin-bottom:1rem;color:var(--primary-color)}.plan-features ul{list-style:none;padding:0}.plan-features li{padding:.75rem 0;display:flex;align-items:center;gap:.75rem}.checkmark{color:var(--easy-color);font-weight:700;font-size:1.2rem}.cross{color:#666;font-weight:700;font-size:1.2rem}.plan-button{width:100%;padding:1rem;font-size:1.1rem;font-weight:700;border:none;border-radius:8px;cursor:pointer;transition:all .3s}.premium-button{background:var(--primary-color);color:#fff}.premium-button:hover{background:#0c5484;transform:scale(1.02)}.yearly-button{background:var(--easy-color);color:#000}.yearly-button:hover{background:#2e7d32;transform:scale(1.02)}.free-button{background:#444;color:#999;cursor:not-allowed}.cancel-button{background:var(--hard-color);color:#fff;margin-top:1rem}.cancel-button:hover{background:#a31717}.subscription-active{text-align:center}.active-message{color:var(--easy-color);font-size:1.2rem;font-weight:700;margin-bottom:.5rem}.trial-ends{font-size:.9rem;opacity:.8;margin-bottom:1rem}.cancel-notice{color:var(--medium-color);font-size:1rem;font-weight:600;margin-bottom:1rem}.cancellation-pending{margin-top:1rem}.reactivate-button{background:var(--easy-color);color:#000}.reactivate-button:hover{background:#2e7d32;transform:scale(1.02)}.faq-section{margin-top:4rem;padding:3rem 0;border-top:1px solid #444}.faq-section h2{text-align:center;font-size:2rem;margin-bottom:2rem;color:var(--primary-color)}.faq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.faq-item{background:#2a2a2a;padding:1.5rem;border-radius:8px}.faq-item h3{font-size:1.1rem;margin-bottom:.75rem;color:var(--primary-color)}.faq-item p{opacity:.9;line-height:1.6}@media(max-width:768px){.pricing-cards{grid-template-columns:1fr}.pricing-header h1{font-size:2rem}.price .amount{font-size:2.5rem}.faq-grid{grid-template-columns:1fr}}.bootcamp-note{font-size:.85rem;color:var(--text-secondary);font-style:italic;margin-top:1rem;opacity:.8}.admin-banner{background:linear-gradient(135deg,gold,#ffed4e);border:2px solid #ffd700;border-radius:12px;padding:1.5rem;margin-bottom:2rem;text-align:center;box-shadow:0 4px 12px #ffd7004d}.admin-banner p{color:#000;font-weight:700;font-size:1.2rem;margin:0}.support-page{max-width:1200px;margin:0 auto;padding:2rem;min-height:calc(100vh - 80px)}.support-header{text-align:center;margin-bottom:3rem}.support-header h1{font-size:2.5rem;color:#61dafb;margin-bottom:.5rem}.support-header p{font-size:1.2rem;color:#b0b0b0}.support-content{display:grid;grid-template-columns:1fr 1.5fr;gap:3rem;margin-bottom:3rem}.contact-info{background:#1e1e1e;padding:2rem;border-radius:8px;border:1px solid #333}.contact-info h2,.contact-form-container h2{color:#61dafb;margin-bottom:1.5rem;font-size:1.8rem}.contact-info h3{color:#fff;font-size:1.2rem;margin-bottom:.5rem}.contact-details{margin-bottom:2rem}.contact-item{margin-bottom:1.5rem}.contact-item a{color:#61dafb;text-decoration:none;font-size:1.1rem;transition:opacity .3s}.contact-item a:hover{opacity:.8;text-decoration:underline}.contact-item p{color:#b0b0b0}.support-topics{margin-top:2rem;padding-top:2rem;border-top:1px solid #333}.support-topics ul{list-style:none;padding:0}.support-topics li{color:#b0b0b0;position:relative;padding:.5rem 0 .5rem 1.5rem}.support-topics li:before{content:"→";color:#61dafb;position:absolute;left:0}.contact-form-container{background:#1e1e1e;padding:2rem;border-radius:8px;border:1px solid #333}.success-message{background:#1e5128;color:#4ade80;padding:1rem;border-radius:4px;margin-bottom:1rem;text-align:center}.error-message{background:#5a1e1e;color:#f87171;padding:1rem;border-radius:4px;margin-bottom:1rem;text-align:center;border:1px solid #991b1b}.contact-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column}.form-group label{color:#fff;margin-bottom:.5rem;font-weight:500}.form-group input,.form-group textarea{background:#2a2a2a;border:1px solid #444;border-radius:4px;padding:.75rem;color:#fff;font-size:1rem;font-family:inherit;transition:border-color .3s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#61dafb}.form-group textarea{resize:vertical;min-height:150px}.submit-button{background:#61dafb;color:#282c34;border:none;padding:1rem 2rem;border-radius:4px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:background .3s}.submit-button:hover:not(:disabled){background:#4fa8c5}.submit-button:active:not(:disabled){transform:scale(.98)}.submit-button:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.support-page{padding:1rem}.support-header h1{font-size:2rem}.support-content{grid-template-columns:1fr;gap:2rem}.contact-info,.contact-form-container{padding:1.5rem}}.subscription-success-page{min-height:80vh;display:flex;align-items:center;justify-content:center;padding:2rem}.success-card{background:#2a2a2a;border-radius:12px;padding:3rem;max-width:600px;text-align:center;box-shadow:0 10px 30px #0000004d}.success-icon{display:inline-block;width:80px;height:80px;line-height:80px;font-size:3rem;color:var(--easy-color);background:#1b5e2033;border-radius:50%;margin-bottom:1.5rem}.error-icon{display:inline-block;width:80px;height:80px;line-height:80px;font-size:3rem;color:var(--hard-color);background:#b71c1c33;border-radius:50%;margin-bottom:1.5rem}.success-card h1{font-size:2.5rem;margin-bottom:1rem;color:var(--primary-color)}.success-card p{font-size:1.2rem;margin-bottom:2rem;opacity:.9}.benefits{background:#1e1e1e;padding:2rem;border-radius:8px;margin:2rem 0;text-align:left}.benefits h3{text-align:center;margin-bottom:1rem;color:var(--primary-color)}.benefits ul{list-style:none;padding:0}.benefits li{padding:.75rem 0;font-size:1.1rem}.actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.action-button{padding:1rem 2rem;font-size:1.1rem;font-weight:700;border:none;border-radius:8px;cursor:pointer;transition:all .3s;background:#444;color:#fff}.action-button.primary{background:var(--primary-color)}.action-button:hover{transform:scale(1.05)}.action-button.primary:hover{background:#0c5484}.loading-spinner{width:50px;height:50px;border:4px solid #444;border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:768px){.success-card{padding:2rem}.success-card h1{font-size:2rem}.actions{flex-direction:column}.action-button{width:100%}}.bootcamp-purchase-success-page{min-height:calc(100vh - 200px);display:flex;justify-content:center;align-items:center;padding:2rem}.processing-container,.success-container,.error-container{background:var(--card-background);border-radius:12px;padding:3rem;max-width:600px;width:100%;text-align:center;box-shadow:0 4px 6px #0000001a}.spinner{border:4px solid rgba(255,255,255,.1);border-top:4px solid var(--primary-color);border-radius:50%;width:50px;height:50px;animation:spin 1s linear infinite;margin:0 auto 1.5rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.success-icon{width:80px;height:80px;border-radius:50%;background:var(--easy-color);color:#000;display:flex;align-items:center;justify-content:center;font-size:3rem;margin:0 auto 1.5rem;font-weight:700}.error-icon{width:80px;height:80px;border-radius:50%;background:var(--hard-color);color:#fff;display:flex;align-items:center;justify-content:center;font-size:3rem;margin:0 auto 1.5rem;font-weight:700}.success-container h1,.error-container h2,.processing-container h2{margin-bottom:1rem;color:var(--text-primary)}.success-message{color:var(--text-secondary);margin-bottom:2rem;font-size:1.1rem}.action-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.start-button,.browse-button,.return-button{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:1rem;cursor:pointer;transition:all .3s ease;font-weight:500}.start-button{background:var(--primary-color);color:#fff}.start-button:hover{background:var(--primary-hover);transform:scale(1.05)}.browse-button,.return-button{background:transparent;color:var(--text-primary);border:2px solid var(--border-color)}.browse-button:hover,.return-button:hover{border-color:var(--primary-color);color:var(--primary-color)}.error-container p{color:var(--text-secondary);margin-bottom:2rem}.processing-container p{color:var(--text-secondary)}@media(max-width:768px){.bootcamp-purchase-success-page{padding:1rem}.processing-container,.success-container,.error-container{padding:2rem 1.5rem}.action-buttons{flex-direction:column}.start-button,.browse-button,.return-button{width:100%}}.company-dashboard{max-width:1400px;margin:0 auto;padding:2rem}.dashboard-header{margin-bottom:2rem;border-bottom:2px solid #e0e0e0;padding-bottom:1.5rem}.header-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.header-content h1{margin:0;color:#333}.header-actions{display:flex;gap:1rem;align-items:center}.company-selector{padding:.5rem 1rem;border:1px solid #ddd;border-radius:5px;background:#fff;font-size:1rem;cursor:pointer}.dashboard-tabs{display:flex;gap:.5rem;border-bottom:2px solid #e0e0e0;margin-bottom:2rem}.tab{padding:.75rem 1.5rem;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:1rem;color:#666;transition:all .3s}.tab:hover{color:#333;background:#f5f5f5}.tab.active{color:#667eea;border-bottom-color:#667eea;font-weight:600}.dashboard-content{min-height:400px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1.5rem;border-radius:10px;box-shadow:0 4px 6px #0000001a}.stat-card h3{margin:0 0 .5rem;font-size:.9rem;opacity:.9}.stat-value{font-size:2.5rem;font-weight:700;margin:0}.recent-activity{background:#fff;border-radius:10px;padding:1.5rem;box-shadow:0 2px 4px #0000001a}.recent-activity h2{margin-top:0;margin-bottom:1rem;color:#333}.activity-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid #f0f0f0;cursor:pointer;transition:background .2s}.activity-item:hover{background:#f9f9f9}.activity-item:last-child{border-bottom:none}.activity-info h4{margin:0 0 .25rem;color:#333}.activity-info p{margin:0;color:#666;font-size:.9rem}.activity-score{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.activity-score .score{font-size:1.5rem;font-weight:700;color:#667eea}.activity-score .problems{font-size:.85rem;color:#666}.data-table{width:100%;border-collapse:collapse;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.data-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.data-table th{padding:1rem;text-align:left;font-weight:600}.data-table td{padding:1rem;border-bottom:1px solid #f0f0f0}.data-table tbody tr:hover{background:#f9f9f9}.data-table tbody tr:last-child td{border-bottom:none}.status-badge{padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:600;text-transform:capitalize}.status-pending{background:#fff3cd;color:#856404}.status-started{background:#cce5ff;color:#004085}.status-completed{background:#d4edda;color:#155724}.status-expired{background:#f8d7da;color:#721c24}.score-badge{padding:.25rem .75rem;border-radius:20px;font-weight:700}.score-badge.good{background:#d4edda;color:#155724}.score-badge.medium{background:#fff3cd;color:#856404}.score-badge.low{background:#f8d7da;color:#721c24}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 8px #667eea4d}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:10px;padding:2rem;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 25px #0003}.modal-content.large{max-width:800px}.modal-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #f0f0f0}.modal-header h2{margin:0 0 .5rem;color:#333;font-size:1.75rem;font-weight:600}.modal-subtitle{margin:0;color:#666;font-size:.95rem;line-height:1.5}.modal-content h2{margin-top:0;color:#333}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:5px;font-size:1rem;box-sizing:border-box}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group textarea{resize:vertical;font-family:inherit}.form-group input::placeholder,.form-group textarea::placeholder{color:#999;opacity:1}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem;border-top:2px solid #f0f0f0}.problems-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.problems-header label{margin:0;font-weight:600;color:#333}.problems-actions{display:flex;gap:.5rem}.problems-loading{text-align:center;padding:3rem;color:#666;font-size:1.1rem}.problems-count{padding:.5rem .75rem;background:#f8f9fa;border-radius:5px;font-size:.9rem;color:#666;margin-bottom:.5rem;text-align:center}.problems-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:.75rem;margin-bottom:1rem}.search-input,.filter-select{width:100%;padding:.5rem;border:1px solid #ddd;border-radius:5px;font-size:.95rem;box-sizing:border-box}.search-input:focus,.filter-select:focus{outline:none;border-color:#667eea}.search-input::placeholder{color:#999}.problems-list{max-height:400px;overflow-y:auto;border:1px solid #ddd;border-radius:5px;padding:.5rem;background:#fff}.problem-checkbox{padding:.75rem;border-bottom:1px solid #f0f0f0;transition:background .2s}.problem-checkbox:hover{background:#f9f9f9}.problem-checkbox:last-child{border-bottom:none}.problem-checkbox input[type=checkbox]{width:auto;margin-right:.75rem;cursor:pointer}.problem-checkbox label{display:flex;justify-content:space-between;align-items:center;cursor:pointer;margin:0;width:100%}.problem-info{display:flex;flex-direction:column;gap:.25rem;flex:1}.problem-title{font-weight:500;color:#333}.problem-category{font-size:.85rem;color:#666;font-style:italic}.no-problems-found{text-align:center;padding:2rem;color:#666}.no-problems-found p{margin-bottom:1rem}.no-problems-found button{margin:0 auto}.load-more-container{text-align:center;padding:1rem;border-top:1px solid #e0e0e0}.btn-load-more{min-width:200px}.empty-state{text-align:center;padding:4rem 2rem}.empty-state h2{color:#333;margin-bottom:1rem}.empty-state p{color:#666;margin-bottom:2rem}.empty-message{text-align:center;padding:3rem;color:#666}.loading{display:flex;justify-content:center;align-items:center;min-height:400px;font-size:1.2rem;color:#666}@media(max-width:768px){.company-dashboard{padding:1rem}.header-content{flex-direction:column;align-items:flex-start}.header-actions{width:100%;flex-direction:column}.company-selector,.btn{width:100%}.stats-grid{grid-template-columns:1fr}.data-table{font-size:.85rem}.data-table th,.data-table td{padding:.5rem}.form-row{grid-template-columns:1fr}.modal-content{padding:1.5rem}.problems-header{flex-direction:column;align-items:flex-start}.problems-actions{width:100%}.problems-actions button{flex:1}.problems-filters{grid-template-columns:1fr}}.invitation-page{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;padding:2rem}.invitation-card{background:#fff;border-radius:15px;padding:3rem;max-width:700px;width:100%;box-shadow:0 10px 30px #0003}.company-header{text-align:center;margin-bottom:2rem}.company-logo{max-width:120px;max-height:80px;margin-bottom:1rem}.company-header h1{margin:0;color:#333}.invitation-card h2{color:#667eea;margin-bottom:1.5rem;text-align:center}.position-info{background:#f8f9fa;padding:1rem;border-radius:8px;margin-bottom:1.5rem;text-align:center}.custom-message{background:#e7f3ff;border-left:4px solid #2196F3;padding:1rem;margin-bottom:1.5rem}.assessment-details{margin-bottom:1.5rem}.assessment-details h3{color:#333;margin-bottom:.75rem}.assessment-details ul{list-style:none;padding:0}.assessment-details li{padding:.5rem 0;border-bottom:1px solid #f0f0f0}.assessment-details li:last-child{border-bottom:none}.mystery-note{background:#e7f3ff;border-left:4px solid #2196F3;padding:1rem;margin-top:1rem;border-radius:5px;color:#0c5460}.mystery-note strong{color:#004085}.problems-preview{margin-bottom:1.5rem}.problems-preview h3{color:#333;margin-bottom:.75rem}.problems-preview ul{list-style:none;padding:0}.problems-preview li{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#f8f9fa;border-radius:5px;margin-bottom:.5rem}.problem-title{flex:1}.difficulty{padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:600}.start-form{margin-top:2rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#333}.form-group input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:5px;font-size:1rem;box-sizing:border-box}.important-note{background:#fff3cd;border-left:4px solid #ffc107;padding:1rem;margin-bottom:1.5rem}.important-note strong{display:block;margin-bottom:.5rem}.important-note ul{margin:0;padding-left:1.5rem}.important-note li{margin:.25rem 0}.btn-large{width:100%;padding:1rem 2rem;font-size:1.1rem}.candidate-test-page{height:100vh;display:flex;flex-direction:column;background:#f5f5f5}.test-header{background:#fff;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #e0e0e0;box-shadow:0 2px 4px #0000001a}.header-left h2{margin:0 0 .5rem;color:#333;font-size:1.2rem}.problem-navigation{display:flex;gap:1rem;align-items:center}.problem-counter{font-weight:500;color:#666}.header-right{display:flex;gap:1.5rem;align-items:center}.timer{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#e7f3ff;border-radius:25px;font-size:1.2rem;font-weight:700;color:#2196f3}.timer.warning{background:#f8d7da;color:#721c24;animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.timer-icon{font-size:1.5rem}.test-workspace{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:1rem;flex:1;overflow:hidden}.problem-panel,.code-panel{background:#fff;border-radius:10px;padding:1.5rem;overflow-y:auto;box-shadow:0 2px 4px #0000001a}.problem-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #f0f0f0}.problem-header h1{margin:0;color:#333;font-size:1.5rem}.problem-description{line-height:1.8;color:#f0f0f0;font-size:1rem}.problem-description p{margin-bottom:1rem;line-height:1.8;color:#f0f0f0}.problem-description h1,.problem-description h2,.problem-description h3,.problem-description h4{margin-top:1.5rem;margin-bottom:1rem;color:#fff}.problem-description h1{font-size:1.5rem}.problem-description h2{font-size:1.3rem}.problem-description h3{font-size:1.1rem}.problem-description ul,.problem-description ol{margin-bottom:1rem;padding-left:2rem;color:#f0f0f0}.problem-description li{margin-bottom:.5rem;line-height:1.6;color:#f0f0f0}.problem-description code{background:#2d2d2d;padding:.2rem .4rem;border-radius:3px;font-family:Courier New,monospace;font-size:.9em;color:#ff79c6}.problem-description pre{background:#2d2d2d;padding:1rem;border-radius:5px;overflow-x:auto;margin:1rem 0}.problem-description pre code{background:none;padding:0;color:#e0e0e0}.problem-description strong{font-weight:600;color:#fff}.problem-description em{font-style:italic;color:#f0f0f0}.problem-description blockquote{border-left:4px solid #667eea;padding-left:1rem;margin:1rem 0;color:#d0d0d0;font-style:italic}.sample-cases{margin-top:1.5rem}.sample-cases h3{color:#333;margin-bottom:1rem}.sample-case{background:#f8f9fa;padding:1rem;border-radius:5px;margin-bottom:1rem;border-left:3px solid #667eea}.sample-case div{margin:.5rem 0}.editor-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.language-selector{padding:.5rem 1rem;border:1px solid #ddd;border-radius:5px;font-size:1rem;cursor:pointer}.results-panel{margin-top:1rem;max-height:30vh;overflow-y:auto}.completion-page{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;padding:2rem}.completion-card{background:#fff;border-radius:15px;padding:4rem 3rem;max-width:600px;width:100%;text-align:center;box-shadow:0 10px 30px #0003}.success-icon{width:100px;height:100px;background:#d4edda;color:#155724;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:3rem;margin:0 auto 2rem;font-weight:700}.completion-card h1{color:#333;margin-bottom:1rem}.completion-card p{color:#666;font-size:1.1rem;margin-bottom:1rem}.info-text{background:#e7f3ff;padding:1rem;border-radius:8px;margin-top:2rem}.error-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem}.error-page h1{color:#721c24;margin-bottom:1rem}.error-page p{color:#666}.btn-success{background:#28a745;color:#fff}.btn-success:hover{background:#218838}.btn-sm{padding:.35rem 1rem;font-size:.9rem}.loading{display:flex;justify-content:center;align-items:center;min-height:100vh;font-size:1.5rem;color:#666}@media(max-width:1024px){.test-workspace{grid-template-columns:1fr}.problem-panel{max-height:50vh}}@media(max-width:768px){.invitation-card{padding:2rem 1.5rem}.test-header{flex-direction:column;gap:1rem;align-items:flex-start}.header-right{width:100%;justify-content:space-between}.problem-navigation{flex-wrap:wrap}.completion-card{padding:3rem 2rem}}.results-review-page{max-width:1600px;margin:0 auto;padding:2rem;background:#f5f5f5;min-height:100vh}.results-header{display:flex;align-items:center;gap:1.5rem;margin-bottom:2rem}.results-header h1{margin:0;color:#333}.candidate-info-card{background:#fff;border-radius:10px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 4px #0000001a;display:grid;grid-template-columns:2fr 1fr;gap:2rem}.info-section{display:flex;flex-direction:column;gap:1.5rem}.info-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.info-item label{display:block;font-size:.85rem;color:#666;margin-bottom:.25rem}.info-item strong{font-size:1.1rem;color:#333}.score-section{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem}.score-circle{width:150px;height:150px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 8px #667eea4d}.score-value{font-size:2.5rem;font-weight:700}.score-label{font-size:.9rem;opacity:.9}.score-details{display:flex;gap:2rem}.score-stat{text-align:center}.stat-value{font-size:2rem;font-weight:700;color:#667eea}.stat-label{font-size:.85rem;color:#666;margin-top:.25rem}.results-content{display:grid;grid-template-columns:300px 1fr;gap:1.5rem;margin-bottom:2rem}.problems-sidebar{background:#fff;border-radius:10px;padding:1.5rem;box-shadow:0 2px 4px #0000001a;height:fit-content;max-height:calc(100vh - 200px);overflow-y:auto}.problems-sidebar h3{margin-top:0;margin-bottom:1rem;color:#333}.problems-list{display:flex;flex-direction:column;gap:.5rem}.problem-item{padding:1rem;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;transition:all .2s}.problem-item:hover{border-color:#667eea;background:#f9f9f9}.problem-item.active{border-color:#667eea;background:linear-gradient(135deg,#667eea1a,#764ba21a)}.problem-header-item{display:flex;gap:.5rem;margin-bottom:.5rem}.problem-number{font-weight:700;color:#667eea}.problem-name{flex:1;font-weight:500;color:#333}.problem-status-row{display:flex;justify-content:space-between;align-items:center;font-size:.85rem}.status-indicator{font-weight:600}.score-percentage{font-weight:700;color:#666}.problem-details{background:#fff;border-radius:10px;padding:2rem;box-shadow:0 2px 4px #0000001a}.problem-details-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #f0f0f0}.problem-details-header h2{margin:0;color:#333}.header-badges{display:flex;gap:.5rem}.difficulty,.language-badge,.status-badge{padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:600}.difficulty.easy{background:#d4edda;color:#155724}.difficulty.medium{background:#fff3cd;color:#856404}.difficulty.hard{background:#f8d7da;color:#721c24}.language-badge{background:#e7f3ff;color:#004085}.status-badge{color:#fff}.test-results-summary{display:flex;gap:2rem;padding:1rem;background:#f8f9fa;border-radius:8px;margin-bottom:1.5rem}.result-stat{color:#333}.result-stat strong{margin-right:.5rem}.code-section{margin-bottom:2rem}.code-section h3{margin-bottom:1rem;color:#333}.test-results-section{margin-bottom:2rem}.test-results-section h3{margin-bottom:1rem;color:#333}.test-result{background:#f8f9fa;border-left:4px solid #6c757d;border-radius:5px;padding:1rem;margin-bottom:1rem}.test-result.passed{border-left-color:#28a745}.test-result.failed{border-left-color:#dc3545}.test-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.test-number{font-weight:700;color:#333}.test-status{font-weight:600;padding:.25rem .75rem;border-radius:15px;font-size:.85rem}.test-status.passed{background:#d4edda;color:#155724}.test-status.failed{background:#f8d7da;color:#721c24}.test-details{display:flex;flex-direction:column;gap:.75rem}.test-detail-item{display:grid;grid-template-columns:100px 1fr;gap:1rem;align-items:start}.test-detail-item strong{color:#666}.test-detail-item code{background:#fff;padding:.5rem;border-radius:4px;display:block;font-family:Courier New,monospace}.test-detail-item code.correct{background:#d4edda}.test-detail-item code.incorrect{background:#f8d7da}.test-detail-item.error code{background:#fff3cd;color:#856404}.problem-description-section{margin-top:2rem;padding:2rem;background:#1e1e1e;border-radius:8px}.problem-description-section h3{margin-top:0;margin-bottom:1rem;color:#f0f0f0}.description-content{line-height:1.8;color:#e8e8e8}.description-content p{margin-bottom:1rem;line-height:1.8;color:#e8e8e8}.description-content h1,.description-content h2,.description-content h3,.description-content h4{margin-top:1.5rem;margin-bottom:1rem;color:#f0f0f0}.description-content h1{font-size:1.5rem}.description-content h2{font-size:1.3rem}.description-content h3{font-size:1.1rem}.description-content ul,.description-content ol{margin-bottom:1rem;padding-left:2rem;color:#e8e8e8}.description-content li{margin-bottom:.5rem;line-height:1.6;color:#e8e8e8}.description-content code{background:#2d2d2d;padding:.2rem .4rem;border-radius:3px;font-family:Courier New,monospace;font-size:.9em;color:#ffa07a}.description-content pre{background:#2d2d2d;padding:1rem;border-radius:5px;overflow-x:auto;margin:1rem 0}.description-content pre code{background:none;padding:0;color:#e8e8e8}.description-content strong{font-weight:600;color:#f5f5f5}.description-content em{font-style:italic;color:#e8e8e8}.description-content blockquote{border-left:4px solid #667eea;padding-left:1rem;margin:1rem 0;color:#d0d0d0;font-style:italic}.cheating-section{background:#fff3cd;border:2px solid #ffc107;border-radius:10px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 4px #ffc10733}.cheating-section h2{margin-top:0;margin-bottom:1.5rem;color:#856404}.cheating-summary{display:flex;gap:2rem;margin-bottom:1.5rem;padding:1rem;background:#fff;border-radius:8px}.cheating-score-badge,.total-violations{font-size:1.1rem;color:#333}.cheating-score-badge strong,.total-violations strong{color:#dc3545;font-size:1.3rem;margin-left:.5rem}.violations-list{display:flex;flex-direction:column;gap:.75rem}.violation-item{background:#fff;border-left:4px solid #ffc107;border-radius:5px;padding:1rem}.violation-item.copy{border-left-color:#ff9800}.violation-item.paste{border-left-color:#f44336}.violation-item.tab_switch{border-left-color:#2196f3}.violation-item.window_blur{border-left-color:#9c27b0}.violation-header{display:flex;align-items:center;gap:1rem}.violation-icon{font-size:1.5rem}.violation-type{flex:1;font-weight:600;color:#333}.violation-time{color:#666;font-size:.9rem}.violation-details{margin-top:.5rem;padding-left:2.5rem;color:#666;font-size:.9rem}.review-section{background:#fff;border-radius:10px;padding:2rem;box-shadow:0 2px 4px #0000001a}.review-section h2{margin-top:0;margin-bottom:1.5rem;color:#333}.review-form{display:flex;flex-direction:column;gap:1.5rem}.rating-section label,.notes-section label{display:block;font-weight:500;margin-bottom:.5rem;color:#333}.star-rating{display:flex;gap:.5rem}.star{background:none;border:none;font-size:2rem;color:#ddd;cursor:pointer;transition:color .2s;padding:0}.star:hover,.star.active{color:#ffc107}.notes-section textarea{width:100%;padding:1rem;border:1px solid #ddd;border-radius:8px;font-size:1rem;font-family:inherit;resize:vertical;box-sizing:border-box}.notes-section textarea:focus{outline:none;border-color:#667eea}.review-actions{display:flex;justify-content:space-between;align-items:center}.review-status{color:#28a745;font-weight:500}.btn{padding:.5rem 1.5rem;border:none;border-radius:5px;cursor:pointer;font-size:1rem;transition:all .3s;font-weight:500}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 8px #667eea4d}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#5a6268}.btn:disabled{opacity:.6;cursor:not-allowed}.loading,.error-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;gap:1rem}.loading{font-size:1.2rem;color:#666}@media(max-width:1200px){.candidate-info-card,.results-content{grid-template-columns:1fr}.problems-sidebar{max-height:none}}@media(max-width:768px){.results-review-page{padding:1rem}.info-row{grid-template-columns:1fr}.problem-details-header{flex-direction:column;align-items:flex-start;gap:1rem}.test-detail-item{grid-template-columns:1fr}.review-actions{flex-direction:column;gap:1rem;align-items:stretch}.review-status{text-align:center}}:root{--primary-color: #0e639c;--primary-dark: #0a4a73;--easy-color: #4caf50;--medium-color: #ff9800;--hard-color: #f44336;--success-color: #4caf50;--bg-primary: #1e1e1e;--bg-secondary: #252526;--bg-tertiary: #2a2d2e;--text-color: #d4d4d4;--text-muted: #9d9d9d;--heading-color: #ffffff;--border-color: #3a3a3a}*{box-sizing:border-box}body{background-color:var(--bg-primary);color:var(--text-color);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;overflow-x:hidden}img{max-width:100%;height:auto}html{scroll-behavior:smooth}.App-header{background-color:#252526;padding:1rem;border-bottom:1px solid #333}.header-content{display:flex;justify-content:space-between;align-items:center;max-width:100%;margin:0;flex-wrap:wrap;gap:1rem}.logo{text-decoration:none;color:#fff;display:flex;align-items:center;gap:.75rem}.logo h1{margin:0;font-size:1.5rem;color:#fff;font-weight:600}.logo:hover h1{color:#667eea}.logo-icon{width:40px;height:40px;flex-shrink:0}.nav-links{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.nav-links a{color:#9cdcfe;text-decoration:none;transition:color .2s}.nav-links a:hover{color:#fff}.user-info{color:#4caf50;font-weight:500}.logout-btn{background-color:#f44336;color:#fff;border:none;padding:.5rem 1rem;border-radius:5px;cursor:pointer;font-size:.9rem}.logout-btn:hover{background-color:#d32f2f}main{padding:2rem}.menu-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:999;opacity:0;pointer-events:none;transition:opacity .3s ease}.menu-overlay.open{opacity:1;pointer-events:auto}.hamburger{display:none;flex-direction:column;justify-content:space-around;width:30px;height:25px;background:transparent;border:none;cursor:pointer;padding:0;z-index:1001}.hamburger span{width:30px;height:3px;background-color:#d4d4d4;border-radius:3px;transition:all .3s ease;transform-origin:center}.hamburger span.active:nth-child(1){transform:translateY(8px) rotate(45deg)}.hamburger span.active:nth-child(2){opacity:0}.hamburger span.active:nth-child(3){transform:translateY(-8px) rotate(-45deg)}@media(max-width:768px){.App-header{padding:.75rem 1rem}.header-content{gap:.75rem;position:relative}.logo h1{font-size:1.2rem}.logo-icon{width:32px;height:32px}.hamburger{display:flex}.menu-overlay{display:block}.nav-links{position:fixed;top:0;right:-100%;width:280px;height:100vh;background-color:#252526;flex-direction:column;align-items:flex-start;padding:5rem 2rem 2rem;gap:1.5rem;font-size:1rem;transition:right .3s ease;box-shadow:-2px 0 10px #0000004d;overflow-y:auto;z-index:1000}.nav-links.open{right:0}.nav-links a,.nav-links .user-info,.nav-links .logout-btn{width:100%;text-align:left}.user-info{font-size:.95rem;padding:.5rem 0}.logout-btn{padding:.6rem 1rem;font-size:.9rem;width:100%;text-align:center}main{padding:1rem}}@media(max-width:480px){.logo h1{font-size:1rem}.logo-icon{width:28px;height:28px}.logo{gap:.5rem}.nav-links{width:75%;max-width:250px}}.problem-list ul{list-style:none;padding:0}.problem-list li{background-color:#2a2d2e;margin:.5rem 0;border-radius:5px;transition:all .2s ease;border:2px solid transparent}.problem-list li:hover{background-color:#323435;border-color:#667eea;transform:translate(4px)}.problem-list .problem-link{display:flex;justify-content:space-between;align-items:center;padding:1rem;color:inherit;text-decoration:none;width:100%;gap:1rem}.problem-list .problem-title{color:#9cdcfe;font-size:1.1rem;font-weight:500;flex:1;text-align:left}.problem-list li:hover .problem-title{color:#fff}.problem-list .problem-badges{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.completed-badge{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;padding:.35rem .75rem;border-radius:16px;font-size:.8rem;font-weight:600;display:inline-flex;align-items:center;gap:.3rem;box-shadow:0 2px 4px #4caf504d;border:1px solid rgba(255,255,255,.2)}@media(max-width:768px){.problem-list h2{font-size:1.5rem}.problem-list .problem-link{padding:.75rem;gap:.75rem}.problem-list .problem-title{font-size:1rem}.problem-list .problem-badges{gap:.5rem}.completed-badge{font-size:.75rem;padding:.3rem .6rem}}@media(max-width:480px){.problem-list .problem-link{padding:.6rem;flex-wrap:wrap;gap:.5rem}.problem-list .problem-title{font-size:.95rem;width:100%;flex:none}.problem-list .problem-badges{width:100%;justify-content:space-between}.completed-badge{font-size:.7rem;padding:.25rem .5rem}}.filter-section{background-color:#252526;padding:1.5rem;border-radius:10px;margin-bottom:1.5rem;border:1px solid #3a3a3a;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.filter-section label{display:block;margin-bottom:.5rem;font-weight:600;color:#fff;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.difficulty-filters{display:flex;gap:.75rem;flex-wrap:wrap}.filter-btn{padding:.5rem 1.25rem;border:2px solid #3a3a3a;background-color:#2a2d2e;color:#d4d4d4;border-radius:20px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease}.filter-btn:hover{background-color:#3a3a3a;border-color:#4a4a4a}.filter-btn.active{background-color:#0e639c;border-color:#0e639c;color:#fff}.filter-btn.easy.active{background-color:#4caf50;border-color:#4caf50}.filter-btn.medium.active{background-color:#ff9800;border-color:#ff9800}.filter-btn.hard.active{background-color:#f44336;border-color:#f44336}.filter-btn.solved.active{background-color:#4caf50;border-color:#4caf50}.filter-btn.unsolved.active{background-color:#ff9800;border-color:#ff9800}.filter-btn:disabled{opacity:.5;cursor:not-allowed;background-color:#2a2d2e;border-color:#3a3a3a}.filter-btn:disabled:hover{background-color:#2a2d2e;border-color:#3a3a3a}.status-filters{display:flex;gap:.75rem;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column}.filter-group:last-child{margin-bottom:0}.sort-select{width:100%;padding:.75rem 3rem .75rem 1rem;background-color:#1e1e1e;color:#fff;border:2px solid #444444;border-radius:8px;font-size:1rem;cursor:pointer;transition:all .3s ease;font-family:inherit;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23ffffff' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center}.sort-select:hover{border-color:#667eea;background-color:#2a2a2a}.sort-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.sort-select option{background-color:#1e1e1e;color:#fff;padding:.5rem}@media(max-width:1024px){.filter-section{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.25rem}}@media(max-width:768px){.filter-section{grid-template-columns:1fr;padding:1rem;margin-bottom:1rem;gap:1rem}.filter-section label{font-size:.85rem;margin-bottom:.5rem}.difficulty-filters,.status-filters{gap:.5rem}.filter-btn{padding:.5rem 1rem;font-size:.85rem}.sort-select{font-size:.95rem;padding:.65rem 2.5rem .65rem 1rem}}@media(max-width:480px){.filter-section{padding:.75rem}.difficulty-filters,.status-filters{gap:.4rem}.filter-btn{flex:1;min-width:calc(50% - .2rem);padding:.5rem;font-size:.8rem;text-align:center;padding:.5rem .75rem}}.workspace{display:grid;grid-template-columns:1fr 1.5fr;gap:2rem;height:calc(100vh - 80px);padding:1rem;overflow:hidden}.problem-description{background-color:#252526;padding:1.5rem;border-radius:8px;overflow-y:auto;max-height:100%;height:100%;transition:all .3s ease}.problem-description.collapsed{height:auto;max-height:80px;overflow:hidden}.problem-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.collapse-toggle-btn{background-color:#3e3e42;color:#ccc;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:13px;font-weight:500;transition:all .2s;white-space:nowrap}.collapse-toggle-btn:hover{background-color:#4e4e52;color:#fff}.description-content h1,.problem-description h1{color:#fff;font-size:1.8rem;margin-top:0;margin-bottom:1rem;border-bottom:2px solid #3a3a3a;padding-bottom:.5rem}.description-content h2,.problem-description h2{color:#fff;font-size:1.4rem;margin-top:1.5rem;margin-bottom:.75rem;border-bottom:1px solid #3a3a3a;padding-bottom:.3rem}.description-content h3,.problem-description h3{color:#e0e0e0;font-size:1.2rem;margin-top:1.25rem;margin-bottom:.5rem}.description-content h4,.problem-description h4{color:#d4d4d4;font-size:1.1rem;margin-top:1rem;margin-bottom:.5rem}.description-content p,.problem-description p{line-height:1.6;margin-bottom:1rem;color:#d4d4d4}.description-content ul,.description-content ol,.problem-description ul,.problem-description ol{margin:.75rem 0;padding-left:1.5rem;line-height:1.8}.description-content li,.problem-description li{margin-bottom:.5rem;color:#d4d4d4}.description-content code,.problem-description code{background-color:#1e1e1e;padding:.2rem .4rem;border-radius:3px;font-family:Consolas,Monaco,Courier New,monospace;font-size:.9em;color:#9cdcfe}.description-content pre,.problem-description pre{background-color:#1e1e1e;padding:1rem;border-radius:6px;overflow-x:auto;margin:1rem 0;border:1px solid #3a3a3a}.description-content pre code,.problem-description pre code{background-color:transparent;padding:0;color:#d4d4d4;font-size:.9rem}.description-content strong,.description-content b,.problem-description strong,.problem-description b{color:#fff;font-weight:600}.description-content blockquote,.problem-description blockquote{border-left:4px solid #0e639c;padding-left:1rem;margin:1rem 0;color:#9d9d9d;font-style:italic}.description-content hr,.problem-description hr{border:none;border-top:1px solid #3a3a3a;margin:1.5rem 0}.description-content a,.problem-description a{color:#9cdcfe;text-decoration:none}.description-content a:hover,.problem-description a:hover{color:#569cd6;text-decoration:underline}.description-content table,.problem-description table{border-collapse:collapse;width:100%;margin:1rem 0}.description-content th,.description-content td,.problem-description th,.problem-description td{border:1px solid #3a3a3a;padding:.5rem;text-align:left}.description-content th,.problem-description th{background-color:#2a2d2e;font-weight:600}.difficulty{display:inline-block;padding:.2rem .5rem;border-radius:12px;font-size:.8rem;margin-bottom:1rem}.difficulty.easy{background-color:#4caf50;color:#fff}.difficulty.medium{background-color:#ff9800;color:#fff}.difficulty.hard{background-color:#f44336;color:#fff}.sample-test-case{background-color:#2a2d2e;padding:1rem;border-radius:4px;margin-top:1rem;color:#e8e8e8}.sample-test-case h3,.sample-test-case h4,.sample-test-case strong{color:#fff}.sample-test-case p{color:#d4d4d4}pre{background-color:#1e1e1e;padding:.5rem;border-radius:4px;white-space:pre-wrap;word-wrap:break-word;overflow-x:auto;color:#d4d4d4}.sample-test-case pre{color:#e8e8e8}@media(max-width:1024px){.workspace{grid-template-columns:1fr;gap:1.5rem;height:auto;max-height:none}.problem-description{max-height:50vh;height:auto}.editor-container{height:auto;max-height:none}.editor-container>.code-editor-container{height:450px;min-height:450px;max-height:450px}}@media(max-width:768px){.workspace{gap:1rem;padding:.5rem}.problem-description{padding:1rem;max-height:40vh}.editor-container>.code-editor-container{height:400px;min-height:400px;max-height:400px}.sample-test-case{padding:.75rem}.test-results{max-height:300px}}.editor-container{display:flex;flex-direction:column;height:100%;max-height:100%;overflow-y:auto}.editor-container>.code-editor-container{height:500px;min-height:500px;max-height:500px;flex-shrink:0;overflow:hidden}.editor-header{background-color:#252526;padding:.75rem 1rem;border-bottom:1px solid #333;flex-shrink:0}.language-selector{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.language-selector label{color:#d4d4d4;font-weight:500}.language-selector select{background-color:#1e1e1e;color:#d4d4d4;border:1px solid #3a3a3a;padding:.5rem 1rem;border-radius:5px;font-size:.9rem;cursor:pointer}.language-selector select:hover{border-color:#0e639c}.language-selector select:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.editor-header{padding:.6rem .75rem}.language-selector{gap:.4rem}.language-selector label{font-size:.9rem}.language-selector select{padding:.4rem .8rem;font-size:.85rem}}@media(max-width:480px){.editor-header{padding:.5rem}.language-selector{width:100%;justify-content:space-between}.language-selector select{flex:1;max-width:200px}}.controls{background-color:#252526;padding:1rem;margin-top:-5px;display:flex;gap:1rem;flex-wrap:wrap;flex-shrink:0;border-top:1px solid #333}.controls button{background-color:#0e639c;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:5px;cursor:pointer;font-size:1rem;flex:1;min-width:150px}.controls button:disabled{background-color:#555;cursor:not-allowed}.controls .submit-btn{background-color:#4caf50}@media(max-width:768px){.controls{padding:.75rem;gap:.75rem}.controls button{padding:.6rem 1rem;font-size:.9rem;min-width:120px}}@media(max-width:480px){.controls{flex-direction:column}.controls button{width:100%;min-width:auto}}.test-results{margin-top:1.5rem;max-height:400px;overflow-y:auto;flex-shrink:0;padding:1rem;background-color:#1e1e1e;border-radius:8px;border:1px solid #3a3a3a}.test-results::-webkit-scrollbar{width:8px}.test-results::-webkit-scrollbar-track{background:#252526;border-radius:4px}.test-results::-webkit-scrollbar-thumb{background:#424242;border-radius:4px}.test-results::-webkit-scrollbar-thumb:hover{background:#4e4e4e}.result-case{background-color:#333;padding:1rem;margin-bottom:1rem;border-left:5px solid;border-radius:4px}.result-case.passed{border-color:#4caf50}.result-case.failed{border-color:#f44336}.result-case.error{border-color:#ff9800}.error-message{color:#f44336}.console-output{background-color:#1e1e1e;border:1px solid #3a3a3a;border-radius:4px;padding:.75rem;margin-top:.75rem}.console-output strong{display:block;color:#9cdcfe;margin-bottom:.5rem}.console-output pre{margin:0;color:#4ec9b0;font-family:Courier New,monospace;font-size:.9rem;white-space:pre-wrap;word-wrap:break-word}.overall-success{font-size:1.2rem;color:#4caf50;margin-bottom:1rem}.overall-fail{font-size:1.2rem;color:#f44336;margin-bottom:1rem}.submission-info{background-color:#333;padding:1.5rem;margin-top:1rem;border-radius:5px;border-left:5px solid;flex-shrink:0}.submission-info.accepted{border-color:#4caf50;background-color:#4caf501a}.submission-info.wrong{border-color:#ff9800;background-color:#ff98001a}.submission-info h3{margin-top:0;color:#fff}.submission-info p{margin:.5rem 0}@media(max-width:768px){.test-results{margin-top:1rem}.result-case{padding:.75rem;font-size:.9rem}.overall-success,.overall-fail{font-size:1rem}.submission-info{padding:1rem}.submission-info h3{font-size:1.1rem}}@media(max-width:480px){.result-case{padding:.6rem;font-size:.85rem}.submission-info{padding:.75rem}}
