#root{position:relative;z-index:1}.nav{position:sticky;top:0;z-index:100;padding:18px 8%;display:flex;justify-content:space-between;align-items:center;background:#1e0a3ca6;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid rgba(168,85,247,.25)}.logo{text-decoration:none;font-size:22px;letter-spacing:1px;font-weight:600;background:linear-gradient(90deg,#c084fc,#a855f7,#e879f9);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.links{display:flex;gap:28px}.links a{text-decoration:none;color:#d8b4fe;font-size:15px;position:relative;transition:.3s ease}.links a:after{content:"";position:absolute;left:0;bottom:-6px;width:0%;height:2px;background:linear-gradient(90deg,#c084fc,#a855f7);transition:.3s ease}.links a:hover{color:#fff;text-shadow:0 0 8px rgba(168,85,247,.8)}.links a:hover:after{width:100%}.links .active{color:#fff;text-shadow:0 0 10px rgba(168,85,247,.9)}.links .active:after{width:100%}🌌 Moving Starfield Background body{background:radial-gradient(circle at 20% 30%,#2e1065,#0b0615 60%);overflow-x:hidden}body{margin:0;font-family:Inter,Segoe UI,sans-serif;background:#0b0615;color:#e9d5ff;line-height:1.6;letter-spacing:.3px}::selection{color:#0b0615;background:#a855f7}.home{position:relative;z-index:1;padding:80px 8%;max-width:1300px;margin:auto}.hero{text-align:center;margin-bottom:100px}.hero h1{font-size:56px;font-weight:700;margin-bottom:20px;background:linear-gradient(90deg,#a855f7,#e879f9,#7c3aed);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero p{color:#c4b5fd;font-size:20px;max-width:750px;margin:0 auto}.cases h2{font-size:36px;margin-bottom:40px;font-weight:600;color:#d8b4fe;text-align:center}.case-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:35px}.case-card{background:#4c1d9540;border:1px solid rgba(168,85,247,.25);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:28px;border-radius:16px;transition:all .35s ease;text-align:center}.case-card:hover{transform:translateY(-8px);border-color:#c084fc;box-shadow:0 10px 35px #a855f766}.case-card h3{color:#c084fc;margin-bottom:16px;font-size:22px;font-weight:600}.btn{display:inline-block;margin-top:12px;text-decoration:none;background:linear-gradient(90deg,#a855f7,#7c3aed);color:#f3e8ff;padding:10px 18px;border-radius:8px;font-weight:600;transition:all .3s ease}.btn:hover{background:linear-gradient(90deg,#c084fc,#8b5cf6);transform:translateY(-2px);box-shadow:0 8px 25px #a855f780}.leaderboard{padding:80px 8%;max-width:1100px;margin:auto;color:#e9d5ff}.lb-title{text-align:center;font-size:48px;margin-bottom:50px;background:linear-gradient(90deg,#a855f7,#e879f9,#7c3aed);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:700}.lb-table-wrap{background:#4c1d9540;border:1px solid rgba(168,85,247,.25);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:18px;padding:30px;box-shadow:0 0 40px #a855f726}.lb-table{width:100%;border-collapse:collapse;text-align:center}.lb-table th{color:#c084fc;font-size:18px;font-weight:600;padding:14px 10px;border-bottom:1px solid rgba(168,85,247,.2)}.lb-table td{padding:16px 10px;font-size:17px;color:#e9d5ff;border-bottom:1px solid rgba(168,85,247,.1);transition:all .25s ease}.lb-table tbody tr{transition:transform .25s ease,background .25s ease,box-shadow .25s ease}.lb-table tbody tr:hover{background:#a855f714;box-shadow:inset 0 0 20px #a855f740;transform:scale(1.01)}.top3 td{font-weight:700;color:#facc15;text-shadow:0 0 12px rgba(250,204,21,.7)}.lb-table td:first-child{font-size:20px;font-weight:700;color:#e879f9}.lb-loading{padding:40px;font-size:18px;opacity:.8;text-align:center}.case-page{min-height:100vh;padding:80px 8%;display:flex;flex-direction:column;align-items:center;background:transparent;color:#e2e8f0;font-family:Inter,sans-serif}.case-page-inner{width:100%;max-width:820px}.page-title{text-align:center;font-size:48px;font-weight:700;margin-bottom:60px;letter-spacing:.5px;background:linear-gradient(90deg,#c084fc,#a855f7,#7c3aed);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.accordion{width:100%;display:flex;flex-direction:column;gap:20px}.accordion-header{width:100%;box-sizing:border-box;display:flex;justify-content:space-between;align-items:center;background:#1e293bd9;border:1px solid rgba(168,85,247,.25);border-radius:16px;padding:22px 26px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.accordion-header:hover{transform:translateY(-2px);box-shadow:0 8px 25px #a855f740}.accordion-header .left{display:flex;align-items:center;gap:14px}.accordion-header .icon{font-size:24px}.accordion-header h2{margin:0;font-size:22px;font-weight:600;letter-spacing:.4px;color:#f1f5f9}.pill{background:#a855f740;color:#e9d5ff;padding:6px 16px;border-radius:999px;font-size:14px;font-weight:500;letter-spacing:.3px}.accordion-content{width:100%;box-sizing:border-box;margin-top:8px;padding:22px 26px;background:#0f172ad9;border:1px solid rgba(168,85,247,.25);border-radius:16px;display:flex;flex-direction:column;gap:18px;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.submit-section{display:flex;justify-content:space-between;align-items:center;background:#ffffff0a;padding:40px;border-radius:16px;margin-bottom:40px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);gap:30px}.submit-left{flex:1}.submit-left h2{font-size:24px;margin-bottom:10px}.submit-left p{opacity:.7;margin-bottom:20px}.submit-btn{display:inline-block;padding:12px 24px;background:linear-gradient(135deg,#6366f1,#9333ea);color:#fff;font-weight:600;border-radius:10px;text-decoration:none;transition:.3s ease}.submit-btn:hover{transform:translateY(-3px);box-shadow:0 8px 20px #9333ea66}.submit-right{flex:1;display:flex;justify-content:center}.submit-gif{max-width:250px;border-radius:12px}@media(max-width:768px){.submit-section{flex-direction:column;text-align:center}.submit-right{margin-top:20px}}.lesson-card{position:relative;width:100%;box-sizing:border-box;display:flex;flex-direction:row;align-items:flex-start;gap:18px;padding:18px 22px;min-height:64px;background:#1e293bd9;border-radius:12px;border:1px solid rgba(168,85,247,.3);box-shadow:0 4px 18px #a855f71f;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.lesson-card:before{content:"";position:absolute;left:0;top:18%;height:64%;width:4px;border-radius:4px;background:#a855f7;box-shadow:0 0 10px #a855f780}.lesson-card h3{font-size:17px;font-weight:600;color:#e9d5ff;margin:0;line-height:1.4}.lesson-card p{font-size:14px;color:#cbd5e1;margin:0;line-height:1.6}.lesson-card:hover{transform:translateY(-2px);box-shadow:0 8px 22px #a855f74d}.lesson-card:hover h3{color:#f3e8ff}.lesson-card:hover p{color:#e9d5ff}@media(max-width:768px){.page-title{text-align:center;font-size:48px;margin-bottom:50px;background:linear-gradient(90deg,#a855f7,#e879f9,#7c3aed);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:700}.accordion-header,.accordion-content{padding:16px 18px}.lesson-card{padding:14px 16px 14px 22px}.lesson-card:before{width:3px}.accordion-header h2{font-size:18px}.lesson-card h3{font-size:15px}.lesson-card p{font-size:13px}}.page{min-height:100vh;padding:100px 8%;display:flex;justify-content:center;background:transparent;color:#e2e8f0;font-family:Inter,sans-serif}.case-wrapper{width:100%;max-width:820px}.back-btn{margin-bottom:30px;background:transparent;color:#a855f7;border:1px solid rgba(168,85,247,.5);padding:8px 18px;border-radius:10px;font-weight:600;cursor:pointer;transition:all .2s ease}.back-btn:hover{background:#a855f726;transform:translateY(-2px)}.page-inner{background:#1e293bd9;border:1px solid rgba(168,85,247,.25);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:50px;border-radius:16px;box-shadow:0 8px 25px #a855f726}.case-detail h1{text-align:center;font-size:40px;font-weight:700;margin-bottom:10px;letter-spacing:.5px;background:linear-gradient(90deg,#c084fc,#a855f7,#7c3aed);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.subtitle{text-align:center;color:#94a3b8;margin-bottom:45px;font-size:16px;letter-spacing:.4px}.section{margin-bottom:40px;padding-bottom:20px;border-bottom:1px solid rgba(168,85,247,.15);animation:fadeInUp .4s ease}.section:last-child{border-bottom:none}.section h2{color:#e9d5ff;font-size:22px;margin-bottom:14px;font-weight:600}.section p{color:#cbd5e1;line-height:1.7;font-size:15px}.section ul{padding-left:20px;margin-top:10px}.section li{margin-bottom:8px;color:#cbd5e1;line-height:1.6;font-size:15px}.code-block{background:#0f172af2;color:#f8fafc;padding:18px;border-radius:12px;font-size:14px;overflow-x:auto;margin:18px 0;border:1px solid rgba(168,85,247,.2);box-shadow:0 6px 20px #a855f726}.code-block code{font-family:Consolas,Monaco,Courier New,monospace}.composite-block p{margin-bottom:12px}.highlight-box{background:#a855f71f;border-left:4px solid #a855f7;padding:16px 20px;border-radius:12px;margin-top:18px;color:#e9d5ff;font-size:15px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.page{padding:80px 6%}.page-inner{padding:30px 22px}.case-detail h1{font-size:28px}.section h2{font-size:18px}.section p,.section li{font-size:14px}}.starfield{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:-1;pointer-events:none;background:radial-gradient(circle at 20% 30%,#2e1065,#0b0615 60%)}.starfield:before,.starfield:after{content:"";position:absolute;inset:-200%;background-repeat:repeat}.starfield:before{background-image:radial-gradient(2px 2px at 10% 20%,#c084fc 100%,transparent),radial-gradient(2px 2px at 30% 80%,#a855f7 100%,transparent),radial-gradient(2px 2px at 60% 40%,#e879f9 100%,transparent),radial-gradient(2px 2px at 90% 60%,#c084fc 100%,transparent);background-size:800px 800px;animation:drift 150s linear infinite}.starfield:after{background-image:radial-gradient(3px 3px at 25% 35%,#a855f7 100%,transparent),radial-gradient(3px 3px at 75% 70%,#c084fc 100%,transparent);background-size:1200px 1200px;animation:drift 250s linear infinite}@keyframes drift{0%{transform:translate(0)}to{transform:translate(-1000px,-1000px)}}
