.landing{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:60px 24px;position:relative;overflow:hidden}.landing-content{max-width:900px;width:100%;text-align:center;z-index:1}.brand{margin-bottom:24px}.logo-container{position:relative;display:inline-block;margin-bottom:16px}.brand-icon{font-size:72px;display:block;animation:float 3s ease-in-out infinite;filter:drop-shadow(0 0 30px rgba(99,102,241,.5))}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.logo-glow{position:absolute;top:-20px;right:-20px;bottom:-20px;left:-20px;background:radial-gradient(circle,rgba(99,102,241,.3) 0%,transparent 70%);border-radius:50%;animation:pulse-glow 2s ease-in-out infinite}@keyframes pulse-glow{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.brand-name{font-size:52px;font-weight:800;letter-spacing:-2px;color:var(--text-primary)}.tagline-container{min-height:100px;display:flex;align-items:center;justify-content:center;margin-bottom:40px}.tagline{font-size:22px;color:var(--text-secondary);line-height:1.6;margin:0;transition:opacity .5s ease-in-out,transform .5s ease-in-out}.tagline.fade-in{opacity:1;transform:translateY(0)}.tagline.fade-out{opacity:0;transform:translateY(10px)}.url-form{margin-bottom:48px}.input-wrapper{display:flex;gap:12px;background:var(--bg-card);border:2px solid var(--border-color);border-radius:var(--radius-xl);padding:8px;transition:all .3s ease;max-width:700px;margin:0 auto}.input-wrapper:focus-within{border-color:var(--accent-primary);box-shadow:0 0 0 4px var(--accent-glow),0 0 40px var(--accent-glow)}.url-input{flex:1;background:transparent;border:none;padding:16px 24px;color:var(--text-primary);font-size:16px;font-family:var(--font-family)}.url-input:focus{outline:none}.url-input::placeholder{color:var(--text-muted)}.submit-btn{display:flex;align-items:center;gap:8px;padding:16px 32px;background:var(--accent-gradient);border:none;border-radius:var(--radius-lg);color:#fff;font-size:16px;font-weight:600;font-family:var(--font-family);cursor:pointer;transition:all .3s ease;white-space:nowrap}.submit-btn:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 0 40px var(--accent-glow)}.submit-btn:active{transform:translateY(0) scale(1)}.error-message{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);color:#f87171;font-size:14px;margin-bottom:24px;max-width:500px;margin-left:auto;margin-right:auto}.section-title{font-size:28px;font-weight:700;color:var(--text-primary);margin-bottom:24px;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.history-section{margin-bottom:60px}.history-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.history-header .section-title{margin-bottom:0}.clear-history-btn{padding:8px 16px;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-muted);font-size:13px;font-family:var(--font-family);cursor:pointer;transition:all .2s}.clear-history-btn:hover{background:#ef44441a;border-color:#ef444480;color:#f87171}.history-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.history-card{position:relative;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:20px;text-align:left;cursor:pointer;transition:all .3s ease}.history-card:hover{background:var(--bg-card-hover);border-color:var(--accent-primary);transform:translateY(-4px);box-shadow:0 10px 30px #0000004d,0 0 20px var(--accent-glow)}.history-remove{position:absolute;top:12px;right:12px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:50%;color:var(--text-muted);font-size:18px;cursor:pointer;opacity:0;transition:all .2s}.history-card:hover .history-remove{opacity:1}.history-remove:hover{background:#ef444433;color:#f87171}.history-platform{display:inline-block;padding:4px 10px;background:var(--accent-gradient);border-radius:12px;font-size:11px;font-weight:600;color:#fff;margin-bottom:12px}.history-title{font-size:16px;font-weight:600;color:var(--text-primary);margin-bottom:8px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.history-meta{display:flex;gap:8px;font-size:12px;color:var(--text-muted);margin-bottom:12px}.history-progress{display:flex;align-items:center;gap:10px}.history-progress-bar{flex:1;height:6px;background:var(--bg-secondary);border-radius:3px;overflow:hidden}.history-progress-fill{height:100%;background:var(--accent-gradient);border-radius:3px;transition:width .3s ease}.history-progress-text{font-size:12px;font-weight:600;color:var(--accent-primary);min-width:36px}.how-it-works{margin-bottom:60px}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.step-card{position:relative;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:32px 24px;transition:all .3s ease}.step-card:hover{transform:translateY(-8px);border-color:var(--accent-primary);box-shadow:0 20px 40px #0000004d,0 0 30px var(--accent-glow)}.step-number{position:absolute;top:-12px;left:24px;width:28px;height:28px;background:var(--accent-gradient);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:#fff}.step-icon{font-size:48px;margin-bottom:16px;display:block}.step-card h3{font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.step-card p{font-size:14px;color:var(--text-secondary);line-height:1.5}.why-section{margin-bottom:60px}.benefits-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;text-align:left}.benefit-item{display:flex;gap:16px;padding:20px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:all .3s ease}.benefit-item:hover{background:var(--bg-card-hover);transform:translate(8px);border-color:#ffffff26}.benefit-icon{font-size:32px;flex-shrink:0}.benefit-content h4{font-size:16px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.benefit-content p{font-size:14px;color:var(--text-secondary);line-height:1.4}.stats-section{display:flex;align-items:center;justify-content:center;gap:40px;padding:32px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);margin-bottom:40px}.stat-item{display:flex;flex-direction:column;align-items:center}.stat-number{font-size:36px;font-weight:800;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.stat-label{font-size:14px;color:var(--text-secondary);margin-top:4px}.stat-divider{width:1px;height:48px;background:var(--border-color)}.platforms{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;margin-bottom:48px}.platforms-label{color:var(--text-muted);font-size:14px}.platform-badges{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.platform-badge{padding:8px 16px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:24px;font-size:13px;color:var(--text-secondary);transition:all .2s}.platform-badge:hover{background:var(--bg-card-hover);border-color:var(--accent-primary);color:var(--text-primary)}.footer{color:var(--text-muted);font-size:14px}.footer p{margin-bottom:4px}.footer-tech{font-size:12px;opacity:.7}.floating-icons{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.floating-icon{position:absolute;font-size:28px;opacity:.12;animation:icon-float 8s ease-in-out infinite}@keyframes icon-float{0%{transform:translateY(100vh) rotate(0);opacity:0}5%{opacity:.12}95%{opacity:.12}to{transform:translateY(-50px) rotate(180deg);opacity:0}}.orb{position:absolute;border-radius:50%;pointer-events:none;filter:blur(60px);animation:orb-pulse 8s ease-in-out infinite}.orb-1{width:400px;height:400px;top:-100px;right:-100px;background:radial-gradient(circle,rgba(217,119,6,.12) 0%,transparent 70%);animation-delay:0s}.orb-2{width:350px;height:350px;bottom:10%;left:-80px;background:radial-gradient(circle,rgba(245,158,11,.1) 0%,transparent 70%);animation-delay:2s}.orb-3{width:250px;height:250px;top:50%;right:20%;background:radial-gradient(circle,rgba(180,83,9,.08) 0%,transparent 70%);animation-delay:4s}@keyframes orb-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.7}}[data-theme=light] .orb-1{background:radial-gradient(circle,rgba(217,119,6,.08) 0%,transparent 70%)}[data-theme=light] .orb-2{background:radial-gradient(circle,rgba(245,158,11,.06) 0%,transparent 70%)}[data-theme=light] .orb-3{background:radial-gradient(circle,rgba(180,83,9,.05) 0%,transparent 70%)}[data-theme=light] .floating-icon{opacity:.08}.animate-fade-in{opacity:0;animation:fadeIn .6s ease forwards}@media (max-width: 768px){.brand-icon{font-size:56px}.brand-name{font-size:36px;letter-spacing:-1px}.tagline{font-size:18px}.input-wrapper{flex-direction:column;border-radius:var(--radius-lg)}.submit-btn{width:100%;justify-content:center}.steps-grid{grid-template-columns:1fr;gap:32px}.benefits-grid{grid-template-columns:1fr}.stats-section{flex-direction:column;gap:24px}.stat-divider{width:48px;height:1px}.section-title{font-size:24px}}@media (max-width: 480px){.landing{padding:40px 16px}.brand-name{font-size:28px}.tagline{font-size:16px}}.milestone-row{position:relative;display:flex;align-items:flex-start;padding:20px 0}.milestone-row.left{justify-content:flex-start;padding-left:50px}.milestone-row.right{justify-content:flex-end;padding-right:50px}.connection-line{position:absolute;width:4px;height:60px;background:var(--border-color);left:50%;top:-30px;transform:translate(-50%);transition:background .3s ease}.connection-line.completed{background:var(--accent-gradient)}.milestone-node{display:flex;gap:20px;max-width:600px;cursor:pointer;animation:slideIn .5s ease forwards;opacity:0}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.milestone-row:nth-child(1) .milestone-node{animation-delay:0s}.milestone-row:nth-child(2) .milestone-node{animation-delay:.1s}.milestone-row:nth-child(3) .milestone-node{animation-delay:.2s}.milestone-row:nth-child(4) .milestone-node{animation-delay:.3s}.milestone-row:nth-child(5) .milestone-node{animation-delay:.4s}.milestone-row:nth-child(n+6) .milestone-node{animation-delay:.5s}.milestone-row.left .milestone-node{flex-direction:row}.milestone-row.right .milestone-node{flex-direction:row-reverse}.node-circle{position:relative;flex-shrink:0;width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:3px solid var(--border-color);border-radius:50%;transition:all .3s ease;z-index:2}.milestone-node:hover .node-circle{transform:scale(1.1);border-color:var(--accent-primary)}.milestone-node.completed .node-circle{background:var(--accent-gradient);border-color:transparent;color:#fff}.milestone-node.current .node-circle{border-color:var(--accent-primary);box-shadow:0 0 20px var(--accent-glow)}.milestone-node.locked .node-circle{opacity:.5}.node-number{font-size:20px;font-weight:700;color:var(--text-secondary)}.pulse-ring{position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;border:2px solid var(--accent-primary);border-radius:50%;animation:pulse-ring 2s ease-out infinite}@keyframes pulse-ring{0%{transform:scale(1);opacity:1}to{transform:scale(1.5);opacity:0}}.completion-burst{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.completion-burst span{position:absolute;font-size:24px;animation:burst 1s ease-out forwards}.completion-burst span:nth-child(1){animation-delay:0s;transform:rotate(0)}.completion-burst span:nth-child(2){animation-delay:.1s;transform:rotate(90deg)}.completion-burst span:nth-child(3){animation-delay:.2s;transform:rotate(180deg)}.completion-burst span:nth-child(4){animation-delay:.3s;transform:rotate(270deg)}@keyframes burst{0%{transform:scale(0) translate(0);opacity:1}to{transform:scale(1) translate(50px);opacity:0}}.node-content{flex:1;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:20px;transition:all .3s ease}.milestone-node:hover .node-content{border-color:var(--accent-primary);transform:translateY(-4px);box-shadow:0 10px 30px #0003}.milestone-node.completed .node-content{border-color:var(--success);background:#10b9810d}.milestone-node.current .node-content{border-color:var(--accent-primary);background:#d977060d}.milestone-node.locked .node-content{opacity:.6}.node-header{display:flex;align-items:center;gap:12px;margin-bottom:8px}.node-title{font-size:18px;font-weight:700;color:var(--text-primary);flex:1}.completed-badge,.current-badge{padding:4px 10px;border-radius:20px;font-size:11px;font-weight:600}.completed-badge{background:#10b98133;color:var(--success)}.current-badge{background:#d9770633;color:var(--accent-primary);animation:pulse 2s infinite}.node-description{font-size:14px;color:var(--text-secondary);line-height:1.5;margin-bottom:12px}.node-meta{display:flex;gap:16px;margin-bottom:16px}.meta-item{display:flex;align-items:center;gap:4px;font-size:13px;color:var(--text-muted)}.meta-icon{font-size:14px}.node-actions{display:flex;gap:12px}.view-btn{flex:1;padding:10px 16px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);font-size:13px;font-weight:500;font-family:var(--font-family);cursor:pointer;transition:all .2s}.view-btn:hover{background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--accent-primary)}.complete-btn{padding:10px 20px;background:var(--accent-gradient);border:none;border-radius:var(--radius-md);color:#fff;font-size:13px;font-weight:600;font-family:var(--font-family);cursor:pointer;transition:all .3s}.complete-btn:hover:not(:disabled){transform:scale(1.05);box-shadow:0 0 20px var(--accent-glow)}.complete-btn.completed{background:var(--success)}.complete-btn:disabled{opacity:.4;cursor:not-allowed}.milestone-row.just-completed .milestone-node{animation:celebrate .5s ease}@keyframes celebrate{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@media (max-width: 768px){.milestone-row.left,.milestone-row.right{padding-left:16px;padding-right:16px;justify-content:center}.milestone-row.left .milestone-node,.milestone-row.right .milestone-node{flex-direction:column;align-items:center;text-align:center}.node-content{padding:16px}.node-header{flex-direction:column;gap:8px}.node-meta{justify-content:center;flex-wrap:wrap}.node-actions{flex-direction:column}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:24px;z-index:1000;animation:fadeIn .2s ease}.modal-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-xl);max-width:700px;width:100%;max-height:85vh;overflow-y:auto;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:24px;border-bottom:1px solid var(--border-color)}.modal-title-section{display:flex;align-items:flex-start;gap:16px}.modal-number{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--accent-gradient);border-radius:50%;font-size:18px;font-weight:700;color:#fff}.modal-title{font-size:22px;font-weight:700;color:var(--text-primary);margin-bottom:4px}.modal-description{color:var(--text-secondary);font-size:14px;line-height:1.5}.modal-close{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:50%;color:var(--text-secondary);cursor:pointer;transition:all .2s}.modal-close:hover{background:var(--bg-card-hover);color:var(--text-primary)}.modal-meta{display:flex;gap:12px;padding:16px 24px;background:var(--bg-card);flex-wrap:wrap}.meta-badge{display:flex;align-items:center;gap:6px;padding:8px 16px;background:var(--bg-secondary);border-radius:20px;font-size:13px;color:var(--text-secondary)}.modal-section{padding:24px;border-bottom:1px solid var(--border-color)}.modal-section:last-of-type{border-bottom:none}.section-title{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:var(--text-primary);margin-bottom:16px}.section-icon{font-size:20px}.videos-grid{display:grid;gap:16px}.video-card{display:flex;gap:16px;padding:12px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);text-decoration:none;transition:all .2s}.video-card:hover{background:var(--bg-card-hover);border-color:#ffffff26;transform:translate(4px)}.video-thumbnail{position:relative;flex-shrink:0;width:160px;height:90px;border-radius:var(--radius-sm);overflow:hidden;background:var(--bg-secondary)}.video-thumbnail img{width:100%;height:100%;object-fit:cover}.video-duration{position:absolute;bottom:4px;right:4px;padding:2px 6px;background:#000c;border-radius:4px;font-size:11px;color:#fff}.video-info{flex:1;display:flex;flex-direction:column;justify-content:center}.video-title{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:8px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.video-meta{display:flex;gap:12px;font-size:12px;color:var(--text-muted)}.video-channel{color:var(--text-secondary)}.docs-list{display:flex;flex-direction:column;gap:12px}.doc-card{display:flex;align-items:center;gap:16px;padding:16px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);text-decoration:none;transition:all .2s}.doc-card:hover{background:var(--bg-card-hover);border-color:#ffffff26}.doc-icon{flex-shrink:0;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--accent-gradient);border-radius:var(--radius-sm);color:#fff}.doc-info{flex:1;min-width:0}.doc-title{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-snippet{font-size:13px;color:var(--text-secondary);margin-bottom:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.doc-url{font-size:12px;color:var(--text-muted)}.doc-arrow{flex-shrink:0;color:var(--text-muted)}.modal-footer{padding:20px 24px;background:var(--bg-card)}.complete-btn-large{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:16px 24px;background:var(--accent-gradient);border:none;border-radius:var(--radius-md);color:#fff;font-size:16px;font-weight:600;font-family:var(--font-family);cursor:pointer;transition:all .3s}.complete-btn-large:hover{transform:translateY(-2px);box-shadow:0 0 30px var(--accent-glow)}.complete-btn-large.completed{background:var(--success)}@media (max-width: 640px){.modal-content{max-height:90vh;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.modal-overlay{align-items:flex-end;padding:0}.video-card{flex-direction:column}.video-thumbnail{width:100%;height:180px}}.roadmap-container{min-height:100vh;padding:100px 24px 24px}.roadmap-header{position:fixed;top:0;left:0;right:0;display:flex;align-items:center;gap:24px;padding:16px 140px 16px 24px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.back-btn{padding:10px 20px;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);font-size:14px;font-family:var(--font-family);cursor:pointer;transition:all .2s;white-space:nowrap}.back-btn:hover{background:var(--bg-card);color:var(--text-primary);border-color:var(--accent-primary)}.header-info{display:flex;align-items:center;gap:16px;flex:1;min-width:0}.course-title{font-size:18px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-left{display:flex;flex-direction:column;gap:8px}.action-buttons{display:flex;gap:8px}.icon-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:12px;font-family:var(--font-family);cursor:pointer;transition:all .2s}.icon-btn:hover{background:var(--bg-card-hover);color:var(--accent-primary);border-color:var(--accent-primary)}.header-badges{display:flex;gap:8px;align-items:center}.duration-badge{background:#ffffff1a;color:var(--text-secondary);border:1px solid var(--border-color)}.platform-badge{padding:4px 12px;background:var(--accent-gradient);border-radius:20px;font-size:12px;font-weight:600;color:#fff;flex-shrink:0}.progress-section{max-width:600px;margin:0 auto 40px;text-align:center}.progress-bar{width:100%;height:8px;background:var(--bg-card);border-radius:4px;overflow:hidden;margin-bottom:12px}.progress-fill{height:100%;background:var(--accent-gradient);border-radius:4px;transition:width .5s ease}.progress-text{font-size:14px;color:var(--text-muted)}.gameboard{max-width:700px;margin:0 auto;padding:20px}.path-container{display:flex;flex-direction:column}.celebration-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;display:flex;align-items:center;justify-content:center;background:#000000d9;animation:fadeIn .5s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.confetti-container{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.confetti{position:absolute;width:10px;height:10px;top:-10px;animation:confetti-fall 3s ease-out forwards}@keyframes confetti-fall{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}.celebration-message{text-align:center;z-index:10;animation:bounceIn .6s ease}@keyframes bounceIn{0%{transform:scale(0)}50%{transform:scale(1.1)}to{transform:scale(1)}}.celebration-emoji{font-size:80px;display:block;margin-bottom:20px}.celebration-message h2{font-size:32px;font-weight:700;color:#fff;margin-bottom:12px}.celebration-message p{font-size:16px;color:var(--text-secondary)}@media (max-width: 768px){.roadmap-container{padding:80px 16px 16px}.roadmap-header{padding:12px 80px 12px 16px;gap:12px}.back-btn{padding:8px 12px;font-size:13px}.course-title{font-size:15px}.gameboard{padding:10px}}.loading-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 24px}.loading-content{max-width:500px;text-align:center}.loader-graphic{position:relative;width:120px;height:120px;margin:0 auto 32px}.loader-ring{position:absolute;top:0;right:0;bottom:0;left:0;border:3px solid transparent;border-top-color:var(--accent-primary);border-radius:50%;animation:spin 1.5s linear infinite}.loader-ring:nth-child(2){top:10px;right:10px;bottom:10px;left:10px;border-top-color:var(--accent-secondary);animation-duration:2s;animation-direction:reverse}.loader-ring:nth-child(3){top:20px;right:20px;bottom:20px;left:20px;border-top-color:#a855f7;animation-duration:2.5s}.loader-emoji{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:40px;animation:pulse 2s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.1)}}.loading-title{font-size:28px;font-weight:700;margin-bottom:8px;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.loading-subtitle{color:var(--text-secondary);margin-bottom:40px}.loading-steps{display:flex;flex-direction:column;gap:16px;margin-bottom:40px}.loading-step{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 20px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);opacity:0}.step-icon{font-size:20px}.step-text{color:var(--text-secondary);font-size:14px}.loading-tip{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px 20px;background:#6366f11a;border:1px solid rgba(99,102,241,.2);border-radius:var(--radius-md);color:var(--text-secondary);font-size:13px}.tip-icon{font-size:18px}.theme-toggle{position:fixed;top:20px;right:20px;z-index:1000;display:flex;align-items:center;gap:8px;padding:10px 16px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:30px;cursor:pointer;transition:all .3s ease;font-family:var(--font-family);color:var(--text-secondary);font-size:14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.theme-toggle:hover{background:var(--bg-card-hover);border-color:var(--accent-primary);transform:scale(1.05)}.theme-toggle-text{font-weight:500}@media (max-width: 640px){.theme-toggle{top:12px;right:12px;padding:8px 12px;font-size:12px}.theme-toggle-text{display:none}}:root{--bg-primary-light: #fafafa;--bg-secondary-light: #ffffff;--bg-card-light: #ffffff;--bg-card-hover-light: #f5f5f5;--text-primary-light: #1a1a2e;--text-secondary-light: #4a5568;--text-muted-light: #718096;--border-color-light: rgba(0, 0, 0, .08);--bg-primary-dark: #0d0d12;--bg-secondary-dark: #14141c;--bg-card-dark: #1c1c28;--bg-card-hover-dark: #252534;--text-primary-dark: #f0f0f5;--text-secondary-dark: #a0a0b0;--text-muted-dark: #6b6b80;--border-color-dark: rgba(255, 255, 255, .08);--accent-primary: #d97706;--accent-secondary: #b45309;--accent-tertiary: #f59e0b;--accent-gradient: linear-gradient(135deg, #f59e0b 0%, #d97706 50%, #b45309 100%);--accent-glow: rgba(217, 119, 6, .2);--success: #10b981;--success-glow: rgba(16, 185, 129, .25);--warning: #f59e0b;--warning-glow: rgba(245, 158, 11, .25);--error: #ef4444;--bg-primary: var(--bg-primary-dark);--bg-secondary: var(--bg-secondary-dark);--bg-card: var(--bg-card-dark);--bg-card-hover: var(--bg-card-hover-dark);--text-primary: var(--text-primary-dark);--text-secondary: var(--text-secondary-dark);--text-muted: var(--text-muted-dark);--border-color: var(--border-color-dark);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .15);--shadow-md: 0 4px 20px rgba(0, 0, 0, .2);--shadow-lg: 0 8px 40px rgba(0, 0, 0, .25);--shadow-glow: 0 0 30px var(--accent-glow);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif}[data-theme=light]{--bg-primary: var(--bg-primary-light);--bg-secondary: var(--bg-secondary-light);--bg-card: var(--bg-card-light);--bg-card-hover: var(--bg-card-hover-light);--text-primary: var(--text-primary-light);--text-secondary: var(--text-secondary-light);--text-muted: var(--text-muted-light);--border-color: var(--border-color-light);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .06);--shadow-md: 0 4px 20px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 40px rgba(0, 0, 0, .1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-family);background:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh;overflow-x:hidden;transition:background-color .3s ease,color .3s ease;scrollbar-width:none;-ms-overflow-style:none}body::-webkit-scrollbar{display:none}::-webkit-scrollbar{display:none}*{scrollbar-width:none;-ms-overflow-style:none}a{color:var(--accent-primary);text-decoration:none;transition:color .2s}a:hover{color:var(--accent-secondary)}.container{max-width:1200px;margin:0 auto;padding:0 24px}.gradient-text{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.theme-toggle{position:fixed;top:20px;right:20px;z-index:1000;display:flex;align-items:center;gap:8px;padding:10px 16px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:30px;cursor:pointer;transition:all .3s ease;font-family:var(--font-family);color:var(--text-secondary);font-size:14px}.theme-toggle:hover{background:var(--bg-card-hover);border-color:var(--accent-primary)}.theme-toggle-icon{font-size:18px;transition:transform .3s ease}.theme-toggle:hover .theme-toggle-icon{transform:rotate(20deg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 28px;border:none;border-radius:var(--radius-md);font-family:var(--font-family);font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-primary{background:var(--accent-gradient);color:#fff;box-shadow:var(--shadow-glow)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 0 40px var(--accent-glow)}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-card-hover);border-color:var(--accent-primary)}.input-group{position:relative;width:100%}.input{width:100%;padding:18px 24px;background:var(--bg-card);border:2px solid var(--border-color);border-radius:var(--radius-lg);color:var(--text-primary);font-family:var(--font-family);font-size:16px;transition:all .3s ease}.input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 4px var(--accent-glow)}.input::placeholder{color:var(--text-muted)}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:24px;transition:all .3s ease}.card:hover{background:var(--bg-card-hover);border-color:#ffffff26;transform:translateY(-2px);box-shadow:var(--shadow-md)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes glow{0%,to{box-shadow:0 0 20px var(--accent-glow)}50%{box-shadow:0 0 40px var(--accent-glow)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in{animation:fadeIn .6s ease forwards}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-glow{animation:glow 2s ease-in-out infinite}.spinner{width:48px;height:48px;border:3px solid var(--border-color);border-top-color:var(--accent-primary);border-radius:50%;animation:spin 1s linear infinite}.progress-bar{width:100%;height:8px;background:var(--bg-card);border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;background:var(--accent-gradient);border-radius:4px;transition:width .5s ease}.badge{display:inline-flex;align-items:center;padding:4px 12px;background:var(--bg-card);border-radius:20px;font-size:12px;font-weight:600;color:var(--text-secondary)}.badge-success{background:#10b98126;color:var(--success)}.badge-warning{background:#f59e0b26;color:var(--warning)}@media (max-width: 768px){.container{padding:0 16px}.btn{padding:12px 20px;font-size:14px}.input{padding:14px 18px;font-size:14px}.theme-toggle{top:12px;right:12px;padding:8px 12px;font-size:12px}}
