:root{--bg-primary: #0c0f14;--bg-secondary: #12161d;--bg-tertiary: #181d27;--bg-card: #151a23;--bg-card-hover: #1a202b;--bg-elevated: #1e2530;--text-primary: #f4f4f6;--text-secondary: #8b8fa3;--text-muted: #5c6178;--text-dim: #3d4256;--accent-primary: #6366f1;--accent-secondary: #8b5cf6;--accent-tertiary: #a78bfa;--accent-cyan: #22d3ee;--accent-emerald: #34d399;--accent-amber: #fbbf24;--accent-rose: #f472b6;--accent-red: #f87171;--gradient-primary: linear-gradient(135deg, #6366f1, #8b5cf6);--gradient-accent: linear-gradient(135deg, #22d3ee, #6366f1);--gradient-warm: linear-gradient(135deg, #f59e0b, #f472b6);--gradient-success: linear-gradient(135deg, #34d399, #22d3ee);--go-blue: var(--accent-cyan);--go-teal: #14b8a6;--go-yellow: var(--accent-amber);--go-green: var(--accent-emerald);--danger: var(--accent-red);--neon-cyan: var(--accent-cyan);--neon-purple: var(--accent-secondary);--neon-green: var(--accent-emerald);--neon-yellow: var(--accent-amber);--neon-red: var(--accent-red);--border-color: rgba(255, 255, 255, .06);--border-subtle: rgba(255, 255, 255, .03);--border-active: rgba(99, 102, 241, .4);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-2xl: 32px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 4px 12px rgba(0, 0, 0, .25);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .35);--shadow-glow: 0 0 60px rgba(99, 102, 241, .15);--shadow-glow-sm: 0 0 30px rgba(99, 102, 241, .1);--font-mono: "JetBrains Mono", monospace;--font-sans: "Satoshi", "Inter", -apple-system, sans-serif;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.6;font-weight:400;letter-spacing:-.01em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse 80% 50% at 20% -10%,rgba(99,102,241,.12) 0%,transparent 50%),radial-gradient(ellipse 60% 40% at 80% 110%,rgba(139,92,246,.08) 0%,transparent 50%);pointer-events:none;z-index:-1}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff1f}.loading-screen{display:flex;align-items:center;justify-content:center;min-height:100vh;font-size:1rem;color:var(--text-secondary);letter-spacing:.1em;text-transform:uppercase}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-8);position:relative}.auth-page:before{content:"";position:absolute;top:50%;left:50%;width:1000px;height:1000px;transform:translate(-50%,-50%);background:radial-gradient(circle at 30% 40%,rgba(99,102,241,.15) 0%,transparent 40%),radial-gradient(circle at 70% 60%,rgba(139,92,246,.1) 0%,transparent 40%);pointer-events:none;animation:ambientPulse 15s ease-in-out infinite}@keyframes ambientPulse{0%,to{opacity:1;transform:translate(-50%,-50%) scale(1)}50%{opacity:.7;transform:translate(-50%,-50%) scale(1.1)}}.auth-container{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-2xl);padding:var(--space-12);width:100%;max-width:420px;box-shadow:var(--shadow-lg);position:relative;z-index:1}.auth-logo{text-align:center;margin-bottom:var(--space-10)}.auth-logo img{filter:drop-shadow(0 0 30px rgba(99,102,241,.3));transition:filter .5s ease}.auth-logo:hover img{filter:drop-shadow(0 0 50px rgba(99,102,241,.5))}.auth-logo h1{font-size:2rem;font-weight:700;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.03em;margin-top:var(--space-4)}.auth-logo p{color:var(--text-secondary);font-size:.95rem;margin-top:var(--space-2)}.auth-form{display:flex;flex-direction:column;gap:var(--space-5)}.form-group{display:flex;flex-direction:column;gap:var(--space-2)}.form-group label{font-size:.8rem;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em}.form-group input{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);font-size:1rem;color:var(--text-primary);font-family:var(--font-sans);transition:all .25s ease}.form-group input:focus{outline:none;border-color:var(--accent-primary);background:var(--bg-tertiary);box-shadow:0 0 0 3px #6366f11a}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted);font-size:.95rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-4) var(--space-6);font-size:.95rem;font-weight:600;font-family:var(--font-sans);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .25s ease;letter-spacing:-.01em}.btn-primary{background:var(--gradient-primary);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 30px #6366f159}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-elevated);border-color:var(--border-active)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover{background:#ffffff0d;color:var(--text-primary)}.error-message{background:#f871711a;border:1px solid rgba(248,113,113,.3);color:var(--accent-red);padding:var(--space-4);border-radius:var(--radius-md);font-size:.9rem}.layout{display:flex;min-height:100vh}.sidebar{width:260px;background:var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;position:fixed;height:100vh;z-index:100;transition:width .25s ease}.sidebar.collapsed{width:72px}.sidebar-header{padding:var(--space-6);border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.sidebar-toggle{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s;flex-shrink:0}.sidebar-toggle:hover{background:#ffffff0d;color:var(--text-primary)}.sidebar.collapsed .sidebar-header{justify-content:center;padding:var(--space-5)}.sidebar.collapsed .sidebar-toggle{margin:0}.sidebar-logo{display:flex;align-items:center;gap:var(--space-2);font-size:1.25rem;font-weight:700;color:var(--text-primary);letter-spacing:-.03em}.sidebar-logo svg{color:var(--accent-primary)}.sidebar-nav{flex:1;padding:var(--space-4) 0;overflow-y:auto}.nav-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);margin:var(--space-1) var(--space-3);color:var(--text-secondary);text-decoration:none;transition:all .2s ease;font-weight:500;font-size:.9rem;border-radius:var(--radius-md);position:relative}.nav-item:hover{background:#ffffff08;color:var(--text-primary)}.nav-item.active{background:#6366f11a;color:var(--accent-primary)}.nav-item.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:20px;background:var(--accent-primary);border-radius:0 3px 3px 0}.nav-item svg{width:18px;height:18px;opacity:.8;flex-shrink:0}.nav-item.active svg{opacity:1}.nav-item span{white-space:nowrap;overflow:hidden;transition:opacity .2s}.sidebar.collapsed .nav-item{padding:var(--space-3);margin:var(--space-1) var(--space-3);justify-content:center}.sidebar.collapsed .nav-item span{display:none}.sidebar.collapsed .nav-item.active:before{left:0}.sidebar-footer{padding:var(--space-4);border-top:1px solid var(--border-subtle);background:var(--bg-primary)}.sidebar.collapsed .sidebar-footer{padding:var(--space-3)}.sidebar.collapsed .user-info{justify-content:center}.user-info{display:flex;align-items:center;gap:var(--space-3)}.user-avatar{width:40px;height:40px;border-radius:var(--radius-md);background:var(--gradient-primary);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.95rem;color:#fff}.user-details{flex:1;min-width:0}.user-name{font-weight:600;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-coins{display:flex;align-items:center;gap:var(--space-1);font-size:.8rem;color:var(--accent-amber);font-weight:600}.coin-icon{height:1em;width:auto;vertical-align:middle}.main-content{flex:1;margin-left:260px;padding:var(--space-10);min-height:100vh;max-width:calc(100vw - 260px);transition:margin-left .25s ease,max-width .25s ease}.sidebar-collapsed .main-content{margin-left:72px;max-width:calc(100vw - 72px)}.page-header{margin-bottom:var(--space-8)}.page-header h1{font-size:2.25rem;font-weight:700;letter-spacing:-.03em;margin-bottom:var(--space-2)}.page-header h2{font-size:1.5rem;font-weight:600;letter-spacing:-.02em}.page-header p{color:var(--text-secondary);font-size:1rem}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:var(--space-6);transition:all .3s ease}.card:hover{border-color:var(--border-active);transform:translateY(-2px);box-shadow:var(--shadow-glow-sm)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-5)}.card-title{font-size:1.1rem;font-weight:600;letter-spacing:-.02em}.grid{display:grid;gap:var(--space-6)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 1200px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.sprint-card{position:relative;overflow:hidden;cursor:pointer;display:flex;flex-direction:column}.sprint-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-xl);padding:1px;background:linear-gradient(135deg,transparent,rgba(99,102,241,.3),transparent);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .3s ease;pointer-events:none}.sprint-card:hover:before{opacity:1}.sprint-number{position:absolute;top:var(--space-4);right:var(--space-5);font-family:var(--font-mono);font-size:4rem;font-weight:700;color:#6366f10f;line-height:1}.sprint-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:#6366f11a;color:var(--accent-primary);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;margin-bottom:var(--space-4);text-transform:uppercase;letter-spacing:.05em;width:fit-content}.sprint-title{font-size:1.35rem;font-weight:600;margin-bottom:var(--space-2);letter-spacing:-.02em;color:var(--text-primary)}.sprint-desc{color:var(--text-secondary);font-size:.9rem;margin-bottom:var(--space-5);line-height:1.5}.sprint-topics{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-6)}.sprint-topic{display:flex;align-items:flex-start;gap:var(--space-3);font-size:.85rem;color:var(--text-secondary)}.sprint-topic span:first-child{color:var(--accent-primary);flex-shrink:0;margin-top:2px}.sprint-progress{margin-top:auto}.progress-bar{height:4px;background:var(--bg-elevated);border-radius:2px;overflow:hidden;margin-bottom:var(--space-3)}.progress-fill{height:100%;background:var(--gradient-primary);border-radius:2px;transition:width .5s ease}.progress-text{font-size:.8rem;color:var(--text-muted);display:flex;justify-content:space-between;align-items:center}.sprint-card.locked{opacity:.5;cursor:not-allowed}.sprint-card.locked:hover{transform:none;box-shadow:none}.sprint-card.locked:before{display:none}.welcome-section{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-2xl);padding:var(--space-10);margin-bottom:var(--space-10);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:var(--space-8)}.welcome-section:before{content:"";position:absolute;top:-50%;right:-10%;width:600px;height:600px;background:radial-gradient(circle,rgba(99,102,241,.1) 0%,transparent 50%);pointer-events:none}.welcome-section:after{content:"";position:absolute;bottom:-30%;left:-10%;width:400px;height:400px;background:radial-gradient(circle,rgba(139,92,246,.06) 0%,transparent 50%);pointer-events:none}.welcome-content{max-width:400px}.welcome-greeting{font-size:.85rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-1)}.welcome-section h2{font-size:2.5rem;font-weight:700;letter-spacing:-.03em;margin-bottom:var(--space-2);background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.welcome-subtitle{color:var(--text-secondary);font-size:1rem;line-height:1.5}.dashboard{max-width:1200px}.dashboard .page-header h2{font-size:1.25rem;color:var(--text-primary);margin-bottom:var(--space-2)}.progress-overview{display:flex;align-items:center;gap:var(--space-10);position:relative;z-index:1}.progress-circle{width:120px;height:120px;border-radius:50%;background:conic-gradient(var(--accent-primary) var(--progress, 0%),var(--bg-elevated) 0%);display:flex;align-items:center;justify-content:center;position:relative;flex-shrink:0}.progress-circle:before{content:"";position:absolute;width:96px;height:96px;background:var(--bg-card);border-radius:50%}.progress-circle span{position:relative;font-weight:700;font-family:var(--font-mono);font-size:1.5rem;color:var(--accent-primary)}.progress-stats{display:flex;gap:var(--space-12)}.progress-stat{text-align:left}.progress-stat-value{font-size:2.5rem;font-weight:700;font-family:var(--font-mono);color:var(--text-primary);letter-spacing:-.03em;line-height:1;margin-bottom:var(--space-1)}.progress-stat-label{font-size:.85rem;color:var(--text-muted)}.lessons-list{display:flex;flex-direction:column;gap:var(--space-3)}.lesson-item{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);cursor:pointer;transition:all .2s ease;position:relative}.lesson-item:hover{border-color:var(--border-active);background:var(--bg-card-hover)}.lesson-item.completed{border-left:3px solid var(--accent-emerald)}.lesson-check{width:24px;height:24px;border:2px solid var(--border-color);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s}.lesson-item.completed .lesson-check{background:var(--accent-emerald);border-color:var(--accent-emerald);color:#000}.lesson-info{flex:1}.lesson-title{font-weight:500;margin-bottom:var(--space-1);display:flex;align-items:center;gap:var(--space-2);font-size:.95rem}.lesson-meta{font-size:.8rem;color:var(--text-muted);display:flex;align-items:center;gap:var(--space-4)}.lesson-type{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);background:var(--bg-tertiary);border-radius:4px;font-size:.7rem;text-transform:uppercase;font-weight:600;letter-spacing:.05em}.lesson-type.theory{color:#60a5fa}.lesson-type.practice{color:var(--accent-amber)}.lesson-type.video{color:var(--accent-secondary)}.lesson-coins{color:var(--accent-amber);font-weight:600}.lesson-arrow{color:var(--accent-primary);opacity:0;transition:opacity .2s;flex-shrink:0}.lesson-item:hover .lesson-arrow{opacity:1}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-5)}.achievement-card{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-5);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);transition:all .3s ease;position:relative;overflow:hidden}.achievement-card.earned{border-color:#6366f14d}.achievement-card.earned:after{content:"✓";position:absolute;top:var(--space-3);right:var(--space-3);width:22px;height:22px;background:var(--accent-emerald);color:#000;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700}.achievement-card.locked{opacity:.4}.achievement-icon{width:56px;height:56px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:1.75rem;flex-shrink:0}.achievement-icon.common{background:var(--bg-tertiary)}.achievement-icon.rare{background:linear-gradient(135deg,#60a5fa33,#60a5fa0d)}.achievement-icon.epic{background:linear-gradient(135deg,#8b5cf633,#8b5cf60d)}.achievement-icon.legendary{background:linear-gradient(135deg,#fbbf2433,#fbbf240d)}.achievement-info h3{font-size:1rem;font-weight:600;margin-bottom:var(--space-1)}.achievement-info p{font-size:.85rem;color:var(--text-secondary);margin-bottom:var(--space-2)}.achievement-reward{font-size:.8rem;color:var(--accent-amber);font-weight:600}.rarity-badge{display:inline-flex;padding:var(--space-1) var(--space-2);border-radius:4px;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.rarity-badge.common{background:var(--bg-tertiary);color:var(--text-secondary)}.rarity-badge.rare{background:#60a5fa26;color:#60a5fa}.rarity-badge.epic{background:#8b5cf626;color:var(--accent-secondary)}.rarity-badge.legendary{background:#fbbf2426;color:var(--accent-amber)}.balance-card{background:linear-gradient(135deg,var(--bg-card) 0%,rgba(251,191,36,.05) 100%);border-color:#fbbf2433}.balance-amount{font-size:3rem;font-weight:700;color:var(--accent-amber);font-family:var(--font-mono);letter-spacing:-.03em}.balance-label{color:var(--text-secondary);font-size:.9rem}.balance-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6);padding-bottom:var(--space-6);border-bottom:1px solid var(--border-color)}.balance-icon{width:64px;height:64px;background:linear-gradient(135deg,var(--accent-amber),#f59e0b);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:2rem}.transactions-list{margin-top:var(--space-6)}.transaction-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) 0;border-bottom:1px solid var(--border-subtle)}.transaction-item:last-child{border-bottom:none}.transaction-reason{font-size:.9rem}.transaction-amount{font-weight:600;font-family:var(--font-mono)}.transaction-amount.positive{color:var(--accent-emerald)}.transaction-amount.negative{color:var(--accent-red)}.leaderboard-list{display:flex;flex-direction:column;gap:var(--space-3)}.leaderboard-item{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.leaderboard-item.top-3{border-color:#fbbf244d}.leaderboard-rank{width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-weight:700;font-family:var(--font-mono);font-size:.9rem;border-radius:var(--radius-sm);background:var(--bg-tertiary)}.leaderboard-item.top-3 .leaderboard-rank{background:var(--gradient-warm);color:#000}.leaderboard-user{flex:1}.leaderboard-name{font-weight:600;font-size:.95rem}.leaderboard-stats{font-size:.8rem;color:var(--text-muted)}.leaderboard-coins{font-weight:700;font-family:var(--font-mono);color:var(--accent-amber)}.leaderboard-podium{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--space-5);margin-bottom:var(--space-8)}.podium-item{display:flex;flex-direction:column;align-items:center;padding:var(--space-6);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);text-align:center}.podium-item.gold{background:linear-gradient(135deg,rgba(251,191,36,.1),var(--bg-card));border-color:#fbbf244d;order:1;transform:scale(1.05)}.podium-item.silver{background:linear-gradient(135deg,rgba(192,192,192,.08),var(--bg-card));border-color:#c0c0c033;order:0}.podium-item.bronze{background:linear-gradient(135deg,rgba(205,127,50,.08),var(--bg-card));border-color:#cd7f3233;order:2}.podium-medal{font-size:2.5rem;margin-bottom:var(--space-3)}.podium-name{font-weight:700;font-size:1.1rem;margin-bottom:var(--space-1)}.podium-coins{font-family:var(--font-mono);font-weight:700;color:var(--accent-amber);font-size:1.25rem}.podium-stats{font-size:.8rem;color:var(--text-muted);margin-top:var(--space-1)}.feedback-form{max-width:600px}.rating-input{display:flex;gap:var(--space-2);margin-bottom:var(--space-5)}.rating-star{width:44px;height:44px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:transparent;cursor:pointer;font-size:1.5rem;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.rating-star:hover,.rating-star.active{border-color:var(--accent-amber);background:#fbbf241a}.form-group textarea{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-4);font-size:.95rem;color:var(--text-primary);font-family:var(--font-sans);resize:vertical;min-height:100px;width:100%;transition:all .25s}.form-group textarea:focus{outline:none;border-color:var(--accent-primary);background:var(--bg-tertiary)}.form-group select{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-4);font-size:.95rem;color:var(--text-primary);font-family:var(--font-sans);width:100%;cursor:pointer}.form-group select:focus{outline:none;border-color:var(--accent-primary)}.feedbacks-history{margin-top:var(--space-10)}.feedback-card{padding:var(--space-6);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);margin-bottom:var(--space-4);position:relative}.feedback-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gradient-primary);border-radius:3px 0 0 3px}.feedback-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.feedback-sprint{font-weight:600}.feedback-rating{color:var(--accent-amber)}.feedback-content h4{font-size:.85rem;color:var(--text-secondary);margin-bottom:var(--space-1)}.feedback-content p{margin-bottom:var(--space-4)}.admin-layout{min-height:100vh;background:var(--bg-primary)}.admin-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-8);background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.admin-header h1{font-size:1.5rem;font-weight:700;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.admin-content{padding:var(--space-8)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-5);margin-bottom:var(--space-8)}@media (max-width: 1200px){.stats-grid{grid-template-columns:repeat(2,1fr)}}.stat-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:var(--space-6)}.stat-label{font-size:.8rem;color:var(--text-secondary);margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:2.25rem;font-weight:700;font-family:var(--font-mono);letter-spacing:-.03em}.stat-value.cyan{color:var(--accent-cyan)}.stat-value.green{color:var(--accent-emerald)}.stat-value.yellow{color:var(--accent-amber)}.stat-value.purple{color:var(--accent-secondary)}.admin-grid{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-8)}@media (max-width: 1200px){.admin-grid{grid-template-columns:1fr}}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:var(--space-4);text-align:left;border-bottom:1px solid var(--border-color)}.admin-table th{font-weight:600;color:var(--text-secondary);font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}.admin-table tr:hover{background:#ffffff05}.tabs{display:flex;gap:var(--space-1);border-bottom:1px solid var(--border-color);margin-bottom:var(--space-6)}.tab{padding:var(--space-3) var(--space-5);background:transparent;border:none;color:var(--text-secondary);font-weight:500;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .2s;font-family:var(--font-sans);font-size:.9rem}.tab:hover{color:var(--text-primary)}.tab.active{color:var(--accent-primary);border-bottom-color:var(--accent-primary)}.toast{position:fixed;bottom:var(--space-8);right:var(--space-8);padding:var(--space-4) var(--space-6);background:var(--accent-emerald);color:#000;border-radius:var(--radius-md);font-weight:600;box-shadow:var(--shadow-lg);animation:slideIn .3s ease;z-index:1000}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4)}.modal-content{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-2xl);padding:var(--space-8);max-width:480px;width:100%;box-shadow:var(--shadow-lg);animation:modalIn .25s ease}@keyframes modalIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@media (max-width: 768px){.sidebar{width:100%;height:auto;position:relative}.main-content{margin-left:0;padding:var(--space-5);max-width:100%}.auth-container{padding:var(--space-8)}.welcome-section{padding:var(--space-6)}.progress-overview{flex-direction:column;align-items:flex-start;gap:var(--space-6)}.progress-stats{gap:var(--space-8)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.card,.sprint-card,.achievement-card,.lesson-item{animation:fadeIn .4s ease}.sprint-header-card{position:relative;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-2xl);padding:var(--space-10);margin-bottom:var(--space-8);overflow:hidden}.sprint-header-card:before{content:"";position:absolute;top:-50%;right:-20%;width:400px;height:400px;background:radial-gradient(circle,rgba(99,102,241,.08) 0%,transparent 60%);pointer-events:none}.sprint-header-number{position:absolute;top:var(--space-4);right:var(--space-6);font-family:var(--font-mono);font-size:5rem;font-weight:700;color:#6366f10f;line-height:1}.sprint-header-content{position:relative;z-index:1}.sprint-header-card h1{font-size:1.75rem;font-weight:700;margin-bottom:var(--space-2);letter-spacing:-.02em}.sprint-header-card>.sprint-header-content>p{color:var(--text-secondary);margin-bottom:var(--space-6)}.sprint-header-topics{display:flex;flex-wrap:wrap;gap:var(--space-6);margin-bottom:var(--space-6)}.sprint-header-topic{display:flex;align-items:center;gap:var(--space-2);color:var(--text-secondary);font-size:.9rem}.sprint-header-topic svg{color:var(--accent-primary)}.sprint-header-progress{max-width:400px}.sprint-header-progress .progress-bar{height:6px;margin-bottom:var(--space-2)}.lesson-page{max-width:860px;margin:0 auto}.lesson-header-card{display:flex;gap:var(--space-6);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-2xl);padding:var(--space-8);margin-bottom:var(--space-8)}.lesson-header-icon{width:64px;height:64px;font-size:2.5rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.lesson-header-content h1{font-size:1.5rem;font-weight:700;margin-bottom:var(--space-2);letter-spacing:-.02em}.lesson-header-content>p{color:var(--text-secondary);margin-bottom:var(--space-4)}.lesson-header-meta{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}.lesson-reward{color:var(--accent-amber);font-weight:600}.lesson-completed-badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);background:#34d39926;color:var(--accent-emerald);border-radius:var(--radius-sm);font-size:.8rem;font-weight:600}.lesson-content{margin-bottom:var(--space-6);line-height:1.8}.lesson-content h1,.lesson-content h2,.lesson-content h3{margin-top:var(--space-8);margin-bottom:var(--space-4);color:var(--text-primary);letter-spacing:-.02em}.lesson-content h1{font-size:1.75rem}.lesson-content h2{font-size:1.5rem}.lesson-content h3{font-size:1.25rem}.lesson-content p{margin-bottom:var(--space-4);color:var(--text-primary)}.lesson-content ul,.lesson-content ol{margin-bottom:var(--space-4);padding-left:var(--space-6)}.lesson-content li{margin-bottom:var(--space-2)}.lesson-content a{color:var(--accent-primary);text-decoration:none;transition:opacity .2s}.lesson-content a:hover{opacity:.8}.lesson-content code{background:var(--bg-tertiary);padding:var(--space-1) var(--space-2);border-radius:4px;font-family:var(--font-mono);font-size:.9em;color:var(--accent-primary)}.lesson-content pre{background:var(--bg-secondary);border:1px solid var(--border-color);padding:var(--space-5);border-radius:var(--radius-lg);overflow-x:auto;margin-bottom:var(--space-4)}.lesson-content pre code{background:none;padding:0;color:var(--text-primary)}.lesson-content blockquote{border-left:3px solid var(--accent-primary);padding-left:var(--space-5);color:var(--text-secondary);margin-bottom:var(--space-4)}.lesson-content details{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);margin:var(--space-4) 0}.lesson-content details summary{padding:var(--space-4);cursor:pointer;font-weight:600;color:var(--accent-primary);list-style:none;display:flex;align-items:center;gap:var(--space-2)}.lesson-content details summary::-webkit-details-marker{display:none}.lesson-content details summary:before{content:"▶";font-size:.7rem;transition:transform .2s}.lesson-content details[open] summary:before{transform:rotate(90deg)}.lesson-content details>*:not(summary){padding:0 var(--space-4) var(--space-4)}.lesson-content details[open]{border-color:var(--accent-primary)}.lesson-content strong{font-weight:600;color:var(--text-primary)}.lesson-actions{margin-top:var(--space-8);display:flex;gap:var(--space-4)}.lesson-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0}.lesson-check-inline{color:var(--accent-emerald)}.youtube-embed-container{position:relative;width:100%;padding-bottom:56.25%;margin:var(--space-6) 0;border-radius:var(--radius-xl);overflow:hidden;background:var(--bg-tertiary)}.youtube-embed-container iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.youtube-card{display:flex;align-items:stretch;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;margin:var(--space-4) 0;text-decoration:none;transition:all .2s ease}.youtube-card:hover{border-color:var(--border-active)}.youtube-card-content{flex:1;padding:var(--space-4) var(--space-5);display:flex;align-items:center;gap:var(--space-4);min-width:0}.youtube-card-icon{width:32px;height:32px;flex-shrink:0}.youtube-card-text{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.youtube-card-title{font-weight:600;color:var(--text-primary);font-size:.95rem}.youtube-card-author{font-size:.8rem;color:var(--text-muted)}.youtube-card-thumb{width:160px;height:90px;object-fit:cover;flex-shrink:0}.link-card{display:flex;align-items:stretch;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;margin:var(--space-4) 0;text-decoration:none;transition:all .2s ease}.link-card:hover{border-color:var(--border-active)}.link-card-content{flex:1;padding:var(--space-4) var(--space-5);display:flex;align-items:flex-start;gap:var(--space-3);min-width:0}.link-card-favicon{width:24px;height:24px;border-radius:4px;flex-shrink:0}.link-card-text{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.link-card-title{font-weight:600;color:var(--text-primary);font-size:.95rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.link-card-desc{font-size:.8rem;color:var(--text-secondary);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.link-card-url{font-size:.75rem;color:var(--text-muted)}.link-card-thumb{width:160px;height:auto;max-height:100px;object-fit:cover;flex-shrink:0}@media (max-width: 600px){.link-card-thumb,.youtube-card-thumb{display:none}}.download-card{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-5);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);margin:var(--space-6) 0}.download-card-icon{font-size:2rem;flex-shrink:0}.download-card-content{display:flex;flex-direction:column;flex:1;min-width:0}.download-card-title{font-weight:600;color:var(--text-primary);font-family:var(--font-mono)}.download-card-desc{font-size:.85rem;color:var(--text-muted)}.download-card-btn{padding:var(--space-2) var(--space-5);background:var(--gradient-primary);color:#fff;border-radius:var(--radius-md);font-weight:600;text-decoration:none;transition:all .2s;flex-shrink:0}.download-card-btn:hover{transform:translateY(-1px);box-shadow:0 4px 20px #6366f14d}.internal-link{color:var(--accent-primary);text-decoration:underline;cursor:pointer}.internal-link:hover{opacity:.8}.edit-input{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-3);font-size:1rem;color:var(--text-primary);width:100%}.edit-input:focus{outline:none;border-color:var(--accent-primary)}.edit-title{font-size:1.5rem;font-weight:600}.edit-textarea{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-4);font-size:.9rem;color:var(--text-primary);width:100%;min-height:400px;font-family:var(--font-mono);resize:vertical}.edit-textarea:focus{outline:none;border-color:var(--accent-primary)}.edit-select{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-2);font-size:.85rem;color:var(--text-primary)}.rich-editor{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.editor-toolbar{display:flex;flex-wrap:wrap;gap:var(--space-1);padding:var(--space-3);border-bottom:1px solid var(--border-color);background:var(--bg-primary)}.editor-toolbar button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s}.editor-toolbar button:hover{background:#ffffff0d;color:var(--text-primary)}.editor-toolbar button.active{background:var(--accent-primary);color:#fff}.toolbar-divider{width:1px;height:24px;background:var(--border-color);margin:4px var(--space-2)}.link-input-wrapper{display:flex;align-items:center;gap:var(--space-1)}.link-input-wrapper input{height:28px;padding:0 var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-primary);font-size:.85rem;width:200px}.link-input-wrapper button{width:auto;padding:0 var(--space-2);font-size:.8rem}.editor-content{padding:var(--space-4);min-height:300px;max-height:60vh;overflow-y:auto}.editor-content .tiptap{outline:none;min-height:280px}.editor-content .tiptap p.is-editor-empty:first-child:before{color:var(--text-muted);content:attr(data-placeholder);float:left;height:0;pointer-events:none}.editor-content .tiptap h1{font-size:1.75rem;font-weight:700;margin:var(--space-4) 0 var(--space-2)}.editor-content .tiptap h2{font-size:1.4rem;font-weight:600;margin:var(--space-3) 0 var(--space-2)}.editor-content .tiptap h3{font-size:1.15rem;font-weight:600;margin:var(--space-2) 0 var(--space-1)}.editor-content .tiptap p{margin:var(--space-2) 0;line-height:1.6}.editor-content .tiptap ul,.editor-content .tiptap ol{padding-left:var(--space-6);margin:var(--space-2) 0}.editor-content .tiptap li{margin:var(--space-1) 0}.editor-content .tiptap blockquote{border-left:3px solid var(--accent-primary);padding-left:var(--space-4);margin:var(--space-2) 0;color:var(--text-secondary)}.editor-content .tiptap pre{background:var(--bg-primary);border-radius:var(--radius-md);padding:var(--space-4);margin:var(--space-2) 0;overflow-x:auto}.editor-content .tiptap code{font-family:var(--font-mono);font-size:.9em}.editor-content .tiptap a,.editor-content .tiptap .editor-link{color:var(--accent-primary);text-decoration:underline;cursor:pointer}.bubble-menu{display:flex;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);overflow:hidden}.bubble-menu button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .15s}.bubble-menu button:hover{background:#ffffff0d;color:var(--text-primary)}.bubble-menu button.active{background:var(--accent-primary);color:#fff}.html-content{line-height:1.8}.html-content h1{font-size:1.75rem;font-weight:700;margin:var(--space-6) 0 var(--space-3)}.html-content h2{font-size:1.4rem;font-weight:600;margin:var(--space-5) 0 var(--space-2)}.html-content h3{font-size:1.15rem;font-weight:600;margin:var(--space-4) 0 var(--space-2)}.html-content p{margin:var(--space-3) 0}.html-content ul,.html-content ol{padding-left:var(--space-6);margin:var(--space-3) 0}.html-content li{margin:var(--space-1) 0}.html-content blockquote{border-left:3px solid var(--accent-primary);padding-left:var(--space-4);margin:var(--space-4) 0;color:var(--text-secondary)}.html-content pre{background:var(--bg-secondary);border-radius:var(--radius-md);padding:var(--space-4);margin:var(--space-4) 0;overflow-x:auto;border:1px solid var(--border-color)}.html-content code{font-family:var(--font-mono);font-size:.9em}.html-content a{color:var(--accent-primary);text-decoration:underline}.html-content a:hover{opacity:.8}.code-block-wrapper{position:relative;margin:var(--space-4) 0}.code-copy-btn{position:absolute;top:var(--space-2);right:var(--space-2);display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#ffffff1a;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:all .2s;z-index:1}.code-copy-btn:hover{background:#ffffff26;color:var(--text-primary)}.inline-code{background:var(--bg-tertiary);padding:var(--space-1) var(--space-2);border-radius:4px;font-family:var(--font-mono);font-size:.9em;color:var(--accent-primary)}.knowledge-base{max-width:1200px}.knowledge-base .page-header h1{font-size:2.25rem;font-style:italic}.kb-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-8)}@media (max-width: 1100px){.kb-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.kb-grid{grid-template-columns:1fr}}.kb-category{display:flex;flex-direction:column}.kb-category-title{font-size:1rem;font-weight:700;margin-bottom:var(--space-4);padding-bottom:var(--space-2);border-bottom:2px solid var(--border-color)}.kb-category-title.kb-folder-blue{color:var(--accent-primary);border-color:var(--accent-primary)}.kb-category-title.kb-folder-yellow{color:var(--accent-amber);border-color:var(--accent-amber)}.kb-category-title.kb-folder-orange{color:#f97316;border-color:#f97316}.kb-items{display:flex;flex-direction:column;gap:var(--space-2)}.kb-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all .2s}.kb-item:hover{background:var(--bg-card-hover);border-color:var(--border-active)}.kb-item.active{background:#6366f11a;border-color:var(--accent-primary)}.kb-item-icon{flex-shrink:0}.kb-item-icon.kb-folder-blue{color:var(--accent-primary)}.kb-item-icon.kb-folder-yellow{color:var(--accent-amber)}.kb-item-icon.kb-folder-orange{color:#f97316}.kb-item-title{flex:1;font-size:.9rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kb-item-arrow{flex-shrink:0;color:var(--accent-primary);opacity:0;transition:opacity .2s}.kb-item:hover .kb-item-arrow{opacity:1}.kb-item.disabled{opacity:.4;cursor:not-allowed}.kb-item.disabled:hover{background:var(--bg-card);border-color:var(--border-color)}.kb-modal{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-2xl);width:90%;max-width:800px;max-height:85vh;overflow-y:auto;position:relative;box-shadow:var(--shadow-lg)}.kb-modal-close{position:absolute;top:var(--space-4);right:var(--space-4);background:var(--bg-tertiary);border:none;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary);transition:all .2s;z-index:1}.kb-modal-close:hover{background:var(--bg-elevated);color:var(--text-primary)}.kb-modal-content{padding:var(--space-8)}.sprints-list{display:flex;flex-direction:column;gap:var(--space-2)}.sprint-item{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);transition:all .2s ease}.sprint-item:hover{border-color:var(--border-active);background:var(--bg-card-hover)}.sprint-item.completed{border-left:3px solid var(--accent-emerald)}.sprint-item-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2)}.sprint-number-badge{display:inline-flex;padding:var(--space-1) var(--space-2);background:#6366f11a;color:var(--accent-primary);border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase}.sprint-item-title{font-size:1rem;font-weight:600;flex:1}.sprint-check{color:var(--accent-emerald);font-weight:700}.sprint-item-topics{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);margin-bottom:var(--space-3)}.sprint-topic-inline{display:flex;align-items:center;gap:var(--space-2);font-size:.8rem;color:var(--text-secondary)}.sprint-topic-inline svg{color:var(--accent-primary)}.sprint-item-footer{display:flex;align-items:center;justify-content:space-between}.sprint-mini-progress{display:flex;align-items:center;gap:var(--space-2);font-size:.75rem;color:var(--text-muted)}.progress-bar-mini{width:80px;height:4px;background:var(--bg-elevated);border-radius:2px;overflow:hidden}.sprint-arrow{color:var(--accent-primary);opacity:0;transition:opacity .2s}.sprint-item:hover .sprint-arrow{opacity:1}
