@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&display=swap";@import "https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css";:root{--primary:#4f46e5;--primary-hover:#4338ca;--secondary:#ec4899;--dark:#0f172a;--darker:#0b1120;--light:#f8fafc;--card-bg:#ffffff0d;--card-border:#ffffff1a;--text-main:#f8fafc;--text-muted:#94a3b8}*{box-sizing:border-box;margin:0;padding:0;font-family:Outfit,sans-serif}body{background-color:var(--darker);color:var(--text-main);min-height:100vh;overflow-x:hidden}.bg-mesh{z-index:-1;background:radial-gradient(at 0 0,#100f15 0,#0000 50%),radial-gradient(at 100% 100%,#2f3e6a4d 0,#0000 50%),radial-gradient(at 100% 0,#7227414d 0,#0000 50%);width:100vw;height:100vh;animation:15s ease-in-out infinite alternate breathe;position:fixed;top:0;left:0}@keyframes breathe{0%{opacity:.8}to{opacity:1}}#root{min-height:100vh;display:flex}.sidebar{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-right:1px solid var(--card-border);z-index:100;background:#0f172acc;flex-direction:column;width:280px;height:100vh;padding:30px 20px;transition:all .3s;display:flex;position:fixed}.brand{border-bottom:1px solid var(--card-border);align-items:center;gap:15px;margin-bottom:30px;padding-bottom:30px;display:flex}.brand-icon{background:linear-gradient(135deg, var(--primary), var(--secondary));color:#fff;border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex;box-shadow:0 4px 15px #4f46e566}.brand-text{background:linear-gradient(90deg,#fff,#a5b4fc);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:24px;font-weight:700}.nav-items{flex-direction:column;flex:1;gap:10px;display:flex}.nav-item{color:var(--text-muted);cursor:pointer;border-radius:12px;align-items:center;gap:15px;padding:12px 20px;font-weight:500;text-decoration:none;transition:all .3s;display:flex}.nav-item:hover{color:#fff;background:#ffffff0d;transform:translate(5px)}.nav-item.active{color:#fff;border-left:4px solid var(--primary);background:linear-gradient(135deg,#4f46e533,#ec489933)}.nav-item i{text-align:center;width:24px;font-size:18px}.main-content{flex:1;width:calc(100% - 280px);margin-left:280px;padding:40px}.header{background:var(--card-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--card-border);border-radius:20px;justify-content:space-between;align-items:center;margin-bottom:40px;padding:20px 30px;animation:.5s ease-out forwards slideDown;display:flex;box-shadow:0 10px 30px #0003}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.greeting h1{margin-bottom:5px;font-size:28px}.greeting span{color:var(--text-muted);font-size:15px}.user-profile{align-items:center;gap:15px;display:flex}.avatar{background:linear-gradient(135deg, var(--secondary), var(--primary));color:#fff;border:2px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;font-size:20px;font-weight:700;display:flex}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:25px;margin-bottom:40px;display:grid}.stat-card{background:var(--card-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--card-border);opacity:0;border-radius:24px;align-items:center;gap:20px;padding:30px;transition:all .4s cubic-bezier(.175,.885,.32,1.275);animation:.8s ease-out forwards fadeIn;display:flex;position:relative;overflow:hidden}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.stat-card:hover{border-color:#fff3;transform:translateY(-10px);box-shadow:0 20px 40px #0000004d}.stat-card:before{content:"";background:linear-gradient(45deg,#0000,#ffffff0d,#0000);width:100%;height:100%;transition:transform .6s;position:absolute;top:0;left:0;transform:translate(-100%)}.stat-card:hover:before{transform:translate(100%)}.stat-icon{color:#fff;border-radius:20px;justify-content:center;align-items:center;width:70px;height:70px;font-size:28px;display:flex;box-shadow:0 10px 20px #0003}.icon-primary{background:linear-gradient(135deg,#6366f1,#4f46e5)}.icon-success{background:linear-gradient(135deg,#10b981,#059669)}.icon-warning{background:linear-gradient(135deg,#f59e0b,#d97706)}.stat-info h3{margin-bottom:5px;font-size:36px;font-weight:800;line-height:1}.stat-info p{color:var(--text-muted);margin:0;font-size:15px;font-weight:500}.section-header{justify-content:space-between;align-items:center;margin-bottom:25px;display:flex}.section-header h2{align-items:center;gap:10px;font-size:24px;font-weight:700;display:flex}.section-header h2 i{color:var(--primary)}.courses-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:25px;display:grid}.course-card{background:var(--card-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--card-border);opacity:0;cursor:pointer;border-radius:20px;flex-direction:column;padding:25px;transition:all .3s;animation:.8s ease-out forwards fadeIn;display:flex;position:relative;overflow:hidden}.course-card:hover{background:#ffffff14;border-color:#fff3;transform:translateY(-5px)}.course-badge{color:#a5b4fc;background:#4f46e533;border:1px solid #4f46e54d;border-radius:20px;padding:5px 12px;font-size:12px;font-weight:600;position:absolute;top:25px;right:25px}.course-title{color:#fff;margin-top:15px;margin-bottom:10px;font-size:20px;font-weight:700;line-height:1.4}.course-teacher{color:var(--text-muted);align-items:center;gap:8px;margin-bottom:25px;font-size:14px;display:flex}.course-teacher i{color:var(--secondary)}.btn-view{color:#fff;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:auto;padding:12px;font-weight:600;transition:all .3s;display:flex}.course-card:hover .btn-view{background:linear-gradient(135deg, var(--primary), var(--secondary));border-color:#0000;box-shadow:0 5px 15px #4f46e54d}.loader-container{background:var(--darker);z-index:1000;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.loader{border:5px solid #4f46e54d;border-top-color:var(--primary);border-radius:50%;width:50px;height:50px;animation:1s ease-in-out infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.course-content-area{color:#1e293b;background:#fff;border-radius:20px;width:100%;padding:40px;font-size:16px;line-height:1.8}.course-content-area img{border-radius:12px;max-width:100%;height:auto;margin:20px 0}.course-content-area h1,.course-content-area h2,.course-content-area h3{color:#0f172a;margin-top:25px;margin-bottom:15px}.option-container{cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;align-items:center;margin-bottom:15px;padding:15px;transition:all .3s;display:flex}.option-container:hover{background:#ffffff1a}.option-container.selected{border-color:var(--primary);background:#4f46e533}.option-container input[type=radio]{display:none}.option-letter{background:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:35px;height:35px;margin-right:15px;font-weight:700;display:flex}.option-container.selected .option-letter{background:var(--primary)}@media (width<=1024px){.sidebar{width:80px;padding:20px 10px}.brand-text,.nav-item span{display:none}.nav-item{justify-content:center;padding:12px}.nav-item i{font-size:20px}.main-content{width:calc(100% - 80px);margin-left:80px}}@media (width<=768px){.stats-grid{grid-template-columns:1fr}.header{text-align:center;flex-direction:column;gap:20px}.main-content{padding:20px}}.login-wrapper{justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:relative;overflow:hidden}.floating-shape{filter:blur(80px);opacity:.5;z-index:0;border-radius:50%;animation:20s infinite float;position:absolute}.shape-1{background:var(--primary);width:400px;height:400px;animation-delay:0s;top:-10%;left:-10%}.shape-2{background:var(--secondary);width:500px;height:500px;animation-delay:-5s;bottom:-20%;right:-10%}@keyframes float{0%,to{transform:translate(0)rotate(0)}33%{transform:translate(30px,-50px)rotate(120deg)}66%{transform:translate(-20px,20px)rotate(240deg)}}.glass-card{-webkit-backdrop-filter:blur(20px);opacity:0;z-index:10;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:24px;width:100%;max-width:420px;padding:40px;animation:.8s cubic-bezier(.16,1,.3,1) forwards slideUp;transform:translateY(20px);box-shadow:0 25px 50px -12px #00000080}@keyframes slideUp{to{opacity:1;transform:translateY(0)}}.logo-area{text-align:center;margin-bottom:30px}.logo-icon{background:linear-gradient(135deg, var(--primary), var(--secondary));color:#fff;border-radius:16px;justify-content:center;align-items:center;width:60px;height:60px;margin:0 auto 15px;font-size:28px;display:flex;box-shadow:0 10px 20px #4f46e54d}.logo-area h1{color:#fff;margin:0 0 5px;font-size:28px;font-weight:700}.logo-area p{color:#94a3b8;margin:0;font-size:15px}.input-group{width:100%;margin-bottom:20px;position:relative}.input-group label{color:#cbd5e1;margin-bottom:8px;font-size:14px;font-weight:500;display:block}.input-wrapper{width:100%;position:relative}.input-wrapper i{color:#64748b;transition:color .3s;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.input-field{color:#fff;background:#0f172a99;border:1px solid #ffffff1a;border-radius:12px;outline:none;width:100%;padding:14px 16px 14px 45px;font-size:15px;transition:all .3s}.input-field:focus{border-color:var(--primary);background:#0f172acc;box-shadow:0 0 0 4px #4f46e526}.input-field:focus+i{color:var(--primary)}.btn-submit{background:linear-gradient(135deg, var(--primary), var(--secondary));color:#fff;cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:10px;width:100%;padding:14px;font-size:16px;font-weight:600;transition:all .3s;display:flex;box-shadow:0 4px 15px #4f46e566}.btn-submit:hover{filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 8px 25px #4f46e580}.btn-submit:disabled{opacity:.7;cursor:not-allowed;transform:none}.error-message{color:#fca5a5;background:#ef44441a;border:1px solid #ef44444d;border-radius:10px;align-items:center;gap:8px;margin-bottom:20px;padding:12px;font-size:14px;animation:.5s shake;display:flex}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}
