:root{--primary:#0d2d59;--primary-light:#1e40af;--secondary:#eba925;--secondary-hover:#d9961e;--text-main:#1e293b;--text-muted:#64748b;--bg-light:#f8fafc;--bg-white:#fff;--shadow-sm:0 2px 8px #0d2d590a;--shadow-md:0 10px 25px #0d2d5914;--shadow-lg:0 20px 40px #0d2d591f;--transition:all 0.3s cubic-bezier(0.4,0,0.2,1);--border-radius:18px}.app{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#1e293b;color:var(--text-main);font-family:Poppins,sans-serif}.topbar{align-items:center;background:linear-gradient(90deg,#0d2d59,#1e40af);border-bottom:1px solid #ffffff1a;color:#ffffffe6;font-size:13px;font-weight:500;gap:16px;justify-content:space-between;letter-spacing:.3px;padding:8px 24px}.topbar,.topbar-left{display:flex;flex-wrap:nowrap}.topbar-left{gap:18px}@media (max-width:650px){.topbar{font-size:10px;gap:6px;padding:6px 10px}.topbar-left{gap:8px}.topbar svg{height:12px!important;width:12px!important}}.topbar-left a,.topbar-left span,.topbar-right{align-items:center;color:inherit;display:flex;gap:6px;text-decoration:none}.topbar-left a:hover{color:#eba925;color:var(--secondary);transform:translateY(-1px)}.navbar{border-bottom:1px solid #0000000d;box-shadow:0 2px 8px #0d2d590a;box-shadow:var(--shadow-sm);justify-content:space-between;padding:16px 24px;position:-webkit-sticky;position:sticky;top:0;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition);z-index:1000}.brand,.navbar{align-items:center;display:flex}.brand{gap:12px}.logo{border-radius:12px;height:50px;object-fit:contain;width:50px}.brand-title{color:#0d2d59;color:var(--primary);font-size:22px;font-weight:800;letter-spacing:-.5px;line-height:1.1}.brand-subtitle{color:#eba925;color:var(--secondary);font-size:10px;font-weight:700;letter-spacing:.5px;margin-top:2px;text-transform:uppercase}.nav-links{display:flex;gap:6px}.nav-links a{align-items:center;color:inherit;display:flex;text-decoration:none}.nav-btn{background:#0000;border:none;border-radius:12px;color:#0d2d59;color:var(--primary);cursor:pointer;font-family:inherit;font-size:14px;font-weight:600;padding:10px 16px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.nav-btn:hover{background:#0d2d590d;color:#1e40af;color:var(--primary-light)}.nav-btn.active{background:#0d2d59;background:var(--primary);color:#fff!important}.join-btn,.nav-btn.active{box-shadow:0 4px 12px #0d2d5926}.join-btn{align-items:center;background:linear-gradient(135deg,#0d2d59,#1e40af);background:linear-gradient(135deg,var(--primary) 0,#1e40af 100%);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:11px 20px;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.join-btn:hover{background:linear-gradient(135deg,#1e40af,#2563eb);box-shadow:0 6px 18px #0d2d5940;transform:translateY(-2px)}.menu-btn{background:#0000;border:none;border-radius:8px;color:#0d2d59;color:var(--primary);cursor:pointer;display:none;padding:6px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.menu-btn:hover{background:#0000000d}.mobile-menu{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#fffffff0;border:1px solid #0d2d5914;border-radius:20px;box-shadow:0 15px 40px #0d2d591f;box-sizing:border-box;display:flex;flex-direction:column;gap:8px;left:16px;margin-top:12px;padding:20px 16px;position:absolute;right:16px;top:100%;z-index:1000}.mobile-menu a{color:inherit;display:block;text-decoration:none}.mobile-nav-btn{align-items:center;background:#0d2d5908;border:none;border-radius:12px;box-sizing:border-box;color:#0d2d59;color:var(--primary);cursor:pointer;display:flex;font-family:inherit;font-size:14.5px;font-weight:600;justify-content:space-between;padding:13px 18px;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:100%}.mobile-nav-btn:hover{background:#0d2d590f;padding-left:22px}.mobile-nav-btn.active{background:linear-gradient(135deg,#0d2d59,#1e40af);background:linear-gradient(135deg,var(--primary) 0,#1e40af 100%);box-shadow:0 4px 12px #0d2d5926;color:#fff!important}.section{padding:90px 24px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.section.light{background:#0000}.section.dark{background:linear-gradient(135deg,#0d2d59,#06152b);color:#fff}.highlight-dark:before,.highlight:before{background:#eba925;background:var(--secondary);box-shadow:0 0 15px #eba925;box-shadow:0 0 15px var(--secondary);content:"";height:100%;left:0;position:absolute;top:0;width:5px}.container{margin:auto;max-width:1100px;text-align:center}.badge{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffffd9;border:1px solid #0d2d5914;border-radius:30px;box-shadow:0 2px 8px #0d2d590a;box-shadow:var(--shadow-sm);display:inline-flex;font-size:13px;font-weight:700;gap:8px;letter-spacing:.5px;padding:10px 20px}.badge,.hero-title{color:#0d2d59;color:var(--primary)}.hero-title{font-size:54px;font-weight:800;letter-spacing:-1.5px;line-height:1.15;margin-bottom:20px;margin-top:24px}.hero-title span{-webkit-text-fill-color:#0000;background:linear-gradient(120deg,#eba925,#f59e0b);background:linear-gradient(120deg,var(--secondary) 0,#f59e0b 100%);-webkit-background-clip:text;display:inline-block}.heading{color:#0d2d59;color:var(--primary);font-size:42px;font-weight:850;letter-spacing:-1px;margin-bottom:18px}.heading.white{color:#fff}.para{color:#64748b;color:var(--text-muted);font-size:18px;font-weight:400;line-height:1.8;margin:0 auto 30px;max-width:820px}.para.white{color:#ffffffd9}.btn-row{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-top:30px}.main-btn{align-items:center;background:linear-gradient(135deg,#0d2d59,#1e40af);background:linear-gradient(135deg,var(--primary) 0,#1e40af 100%);border:none;border-radius:18px;border-radius:var(--border-radius);box-shadow:0 6px 18px #0d2d5926;color:#fff;cursor:pointer;display:flex;font-family:inherit;font-size:15px;font-weight:600;gap:8px;padding:15px 28px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.main-btn:hover{background:linear-gradient(135deg,#1e40af,#2563eb);box-shadow:0 10px 24px #0d2d5940;transform:translateY(-3px)}.outline-btn{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fff9;border:2px solid #0d2d59;border:2px solid var(--primary);border-radius:18px;border-radius:var(--border-radius);color:#0d2d59;color:var(--primary);cursor:pointer;display:flex;font-family:inherit;font-size:15px;font-weight:600;gap:8px;padding:13px 26px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.outline-btn:hover{background:#0d2d59;background:var(--primary);box-shadow:0 10px 24px #0d2d5926;color:#fff;transform:translateY(-3px)}.stats-row{display:flex;flex-wrap:wrap;gap:20px;justify-content:center;margin-top:55px}.stat-box{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffffa6;border:1px solid #0d2d5914;border-radius:18px;border-radius:var(--border-radius);box-shadow:0 2px 8px #0d2d590a;box-shadow:var(--shadow-sm);padding:24px 18px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:170px}.stat-box:hover{background:#ffffffe6;border-color:#0d2d5926;box-shadow:0 10px 25px #0d2d5914;box-shadow:var(--shadow-md);transform:translateY(-5px)}.stat-box h2{color:#0d2d59;color:var(--primary);font-size:34px;font-weight:850;letter-spacing:-.5px;margin:0}.stat-box p{color:#64748b;color:var(--text-muted);font-size:12px;font-weight:700;letter-spacing:.5px;margin:6px 0 0;text-transform:uppercase}.tags{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:35px}.tag{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffffb3;border:1px solid #0d2d5914;border-radius:30px;box-shadow:0 2px 8px #0d2d590a;box-shadow:var(--shadow-sm);color:#0d2d59;color:var(--primary);font-size:13px;font-weight:600;padding:10px 20px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.tag:hover{background:#0d2d59;background:var(--primary);box-shadow:0 10px 25px #0d2d5914;box-shadow:var(--shadow-md);color:#fff;transform:translateY(-2px)}.cards{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:45px}.card{align-items:center;background:#fff;border:1px solid #0d2d590d;border-radius:18px;border-radius:var(--border-radius);box-shadow:0 2px 8px #0d2d590a;box-shadow:var(--shadow-sm);color:#1e293b!important;color:var(--text-main)!important;display:flex;flex-direction:column;justify-content:center;padding:32px 24px;text-align:center;text-decoration:none!important;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.card:hover{border-color:#0d2d5926;box-shadow:0 20px 40px #0d2d591f;box-shadow:var(--shadow-lg);transform:translateY(-6px)}.card .icon{align-items:center;background:#0d2d590a;border-radius:16px;display:flex;height:64px;justify-content:center;margin-bottom:18px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:64px}.card:hover .icon{background:#0d2d59;background:var(--primary);color:#fff!important}.card:hover .icon svg{stroke:#fff!important;color:#fff!important}.card h2,.card h3{color:#0d2d59;color:var(--primary);font-size:20px;font-weight:750;margin:0 0 10px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.card:hover h2,.card:hover h3{color:#1e40af;color:var(--primary-light)}.card p{color:#64748b;color:var(--text-muted);font-size:14px;line-height:1.6;margin:0}.demo-box{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffffd9;border:2px solid #eba925;border:2px solid var(--secondary);border-radius:24px;box-shadow:0 20px 40px #0d2d591f;box-shadow:var(--shadow-lg);margin:40px auto;max-width:680px;padding:40px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.demo-box:hover{box-shadow:0 25px 50px #0d2d5926}.demo-box h3{color:#0d2d59;color:var(--primary);font-size:24px;font-weight:800;letter-spacing:-.5px;margin-bottom:24px;margin-top:0}.demo-box ul{font-size:16px;line-height:2;list-style:none;margin:0 auto 30px;max-width:480px;padding-left:0;text-align:left}.demo-box ul li{color:#1e293b;color:var(--text-main);font-weight:550;margin-bottom:10px;padding-left:28px;position:relative}.demo-box ul li:before{color:#10b981;content:"✓";font-weight:700;left:0;position:absolute}.demo-contact{background:#0d2d590a;border-radius:16px;margin-bottom:30px;margin-top:30px;padding:24px;text-align:center}.demo-contact-title{font-size:15px;letter-spacing:1px;margin-bottom:16px;text-transform:uppercase}.demo-contact-title,.demo-number{color:#0d2d59;color:var(--primary);font-weight:750}.demo-number{background:#fff;border:1px solid #0d2d5914;border-radius:12px;box-shadow:0 2px 8px #0d2d590a;box-shadow:var(--shadow-sm);font-size:16px;margin:8px auto;padding:12px 24px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:-webkit-fit-content;width:fit-content}.demo-number:hover{border-color:#eba925;border-color:var(--secondary);box-shadow:0 10px 25px #0d2d5914;box-shadow:var(--shadow-md);color:#d9961e;color:var(--secondary-hover);transform:translateY(-2px)}.demo-box .main-btn{margin:0 auto}.contact-info{display:flex;flex-wrap:wrap;font-size:17px;font-weight:600;gap:16px;justify-content:center;margin-top:35px}.contact-info p{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff14;border:1px solid #ffffff1a;border-radius:12px;color:#fff;margin:0;padding:12px 24px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.contact-info p:hover{background:#ffffff2e;border-color:#ffffff40;transform:translateY(-2px)}.footer{background:#00000026;border-top:1px solid #ffffff0f;color:#ffffffa6;font-size:13px;font-weight:500;margin-top:60px;padding:24px;text-align:center}.bg-blur{border-radius:50%;filter:blur(120px);-webkit-filter:blur(120px);opacity:.45;position:fixed;z-index:-1}.bg1{animation:floatBlob1 22s ease-in-out infinite alternate;background:#7c4dff;height:350px;left:-100px;top:-100px;width:350px}.bg2{animation:floatBlob2 28s ease-in-out infinite alternate;background:#4fc3f7;bottom:-100px;height:400px;right:-100px;width:400px}.bg3{animation:floatBlob3 25s ease-in-out infinite alternate;background:#ffb74d;height:280px;left:50%;top:40%;width:280px}@keyframes floatBlob1{0%{transform:translate(0) scale(1) rotate(0deg)}50%{filter:blur(100px);transform:translate(60px,40px) scale(1.15) rotate(45deg)}to{transform:translate(-30px,80px) scale(.9) rotate(90deg)}}@keyframes floatBlob2{0%{transform:translate(0) scale(1) rotate(0deg)}50%{filter:blur(140px);transform:translate(-80px,-50px) scale(.85) rotate(-60deg)}to{transform:translate(40px,-90px) scale(1.1) rotate(-120deg)}}@keyframes floatBlob3{0%{transform:translate(0) scale(1)}50%{filter:blur(110px);transform:translate(50px,-70px) scale(1.2)}to{transform:translate(-60px,30px) scale(.95)}}body{background:linear-gradient(135deg,#f5f7ff,#eef2ff 30%,#f9f5ff);font-family:Poppins,sans-serif;min-height:100vh}@media (max-width:900px){.cards{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.hero-title{font-size:40px}.heading{font-size:32px}.section{padding:60px 18px}}@media (max-width:650px){.join-btn,.nav-links{display:none}.menu-btn{display:block}.cards{grid-template-columns:1fr}.stat-box{max-width:320px;width:100%}.contact-info{align-items:center;flex-direction:column}.contact-info p{box-sizing:border-box;max-width:320px;text-align:center;width:100%}}.popup-overlay{align-items:center;animation:fadeIn .4s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#060a19b8;display:flex;height:100vh;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100%;z-index:99999}.popup-box{animation:popupScale .45s ease;background:linear-gradient(135deg,#fffffff7,#f8f8fff5);border-radius:32px;box-shadow:0 25px 60px #00000040;max-width:680px;overflow:hidden;padding:45px 40px;position:relative;text-align:center;width:100%}.popup-box:before{background:#7c4dff26;border-radius:50%;content:"";filter:blur(10px);height:260px;position:absolute;right:-100px;top:-120px;width:260px}.popup-icon{align-items:center;background:linear-gradient(135deg,#7c4dff,#4f46e5);border-radius:24px;box-shadow:0 15px 35px #4f46e54d;color:#fff;display:flex;height:80px;justify-content:center;margin:auto auto 22px;width:80px}.popup-box h1{color:#0d2d59;font-size:42px;font-weight:800;line-height:1.2;margin-bottom:18px}.popup-box h1 span{color:#7c4dff}.popup-subtitle{color:#555;font-size:18px;line-height:1.8;margin:auto auto 35px;max-width:560px}.popup-features{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:35px}.feature-card{align-items:center;background:#fff;border-radius:22px;box-shadow:0 10px 25px #0000000f;color:#4f46e5;display:flex;flex-direction:column;font-weight:600;gap:14px;padding:24px 18px;transition:all .3s ease}.feature-card:hover{transform:translateY(-6px)}.popup-buttons{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin-top:10px}.popup-main-btn{background:linear-gradient(135deg,#4f46e5,#7c4dff);border:none;border-radius:18px;box-shadow:0 12px 28px #4f46e547;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:15px 34px;transition:all .3s ease}.popup-main-btn:hover{transform:translateY(-4px)}.popup-secondary-btn{background:#fff;border:2px solid #4f46e5;border-radius:18px;color:#4f46e5;cursor:pointer;font-size:16px;font-weight:700;padding:15px 34px;transition:all .3s ease}.popup-secondary-btn:hover{background:#f4f2ff}.popup-footer{color:#777;font-size:15px;font-weight:500;margin-top:28px}.close-btn{align-items:center;background:#0000000d;display:flex;height:42px;justify-content:center;position:absolute;right:18px;top:18px;transition:all .3s ease;width:42px}.close-btn:hover{background:#0000001a;transform:rotate(90deg)}@keyframes popupScale{0%{opacity:0;transform:scale(.82)}to{opacity:1;transform:scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width:768px){.popup-box{padding:35px 24px}.popup-box h1{font-size:32px}.popup-subtitle{font-size:16px}.popup-buttons{flex-direction:column}.popup-main-btn,.popup-secondary-btn{width:100%}.popup-overlay{align-items:center;box-sizing:border-box;display:flex;justify-content:center;padding:18px}.popup-box{border-radius:24px;box-sizing:border-box;margin:auto;max-height:90vh;max-width:360px;overflow-y:auto;padding:28px 18px;text-align:center;width:100%}.popup-box:before{height:180px;right:-70px;top:-70px;width:180px}.popup-icon{border-radius:18px;height:62px;margin:0 auto 18px;width:62px}.popup-box h1{font-size:28px;line-height:1.3;margin-bottom:14px;text-align:center;word-break:break-word}.popup-box h1 span{display:inline-block}.popup-subtitle{font-size:15px;line-height:1.7;margin-bottom:24px;padding:0 2px;text-align:center}.popup-features{display:flex;flex-direction:column;gap:14px;margin-bottom:26px}.feature-card{align-items:center;border-radius:18px;box-sizing:border-box;gap:10px;justify-content:center;padding:16px 14px;text-align:center;width:100%}.feature-card svg{height:24px;width:24px}.feature-card span{font-size:14px;line-height:1.5}.popup-buttons{display:flex;flex-direction:column;gap:12px;width:100%}.popup-main-btn,.popup-secondary-btn{align-items:center;border-radius:15px;box-sizing:border-box;display:flex;font-size:15px;justify-content:center;padding:14px 16px;width:100%}.popup-footer{font-size:12px;line-height:1.6;margin-top:22px;padding:0 5px;text-align:center}.close-btn{height:36px;right:10px;top:10px;width:36px}}.navbar{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffffd9;border-bottom:1px solid #0d2d590f;box-shadow:0 4px 20px #0d2d5908;transition:all .3s ease}.nav-btn{overflow:hidden;position:relative}.nav-btn:after{background:var(--secondary);bottom:0;content:"";height:2.5px;left:50%;position:absolute;transform:translateX(-50%);transition:all .3s ease;width:0}.nav-btn:hover:after{width:40%}.nav-btn.active:after{background:#fff;width:60%}.trainer-dashboard{margin:0 auto;max-width:1200px;padding:40px 20px}.dashboard-header{flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:30px}.add-btn,.dashboard-header{align-items:center;display:flex}.add-btn{background:linear-gradient(135deg,#0d2d59,#17427a);border:none;border-radius:10px;box-shadow:0 4px 15px #0d2d5926;color:#fff;cursor:pointer;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s ease}.add-btn:hover{box-shadow:0 6px 20px #0d2d5940;filter:brightness(1.1);transform:translateY(-2px)}.add-btn.inline{margin-top:15px}.filter-bar{background:#fff;border:1px solid #0000000d;border-radius:16px;box-shadow:0 4px 25px #00000008;display:flex;gap:24px;margin-bottom:30px;padding:24px}.filter-group{display:flex;flex:1 1;flex-direction:column}.filter-group label{color:#0d2d59;font-size:.85rem;font-weight:700;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.filter-bar select{background-color:#fafafa;border:1px solid #0000001a;border-radius:10px;color:#333;cursor:pointer;font-size:1rem;outline:none;padding:12px;transition:all .2s ease}.filter-bar select:focus{background-color:#fff;border-color:#0d2d59;box-shadow:0 0 0 3px #0d2d5914}.empty-state,.loading-state{background:#fff;border:1px solid #0000000d;border-radius:16px;box-shadow:0 4px 25px #00000008;padding:80px 20px;text-align:center}.empty-state p,.loading-state p{color:#666;font-size:1.15rem;margin-bottom:10px}.lessons-table-wrapper{background:#fff;border:1px solid #0000000d;border-radius:16px;box-shadow:0 4px 25px #00000008;overflow-x:auto}.lessons-table{border-collapse:collapse;text-align:left;width:100%}.lessons-table th{background-color:#fafafa;border-bottom:2px solid #0000000d;color:#0d2d59;font-weight:700;padding:16px 24px}.lessons-table td{border-bottom:1px solid #0000000d;padding:20px 24px;vertical-align:middle}.lessons-table tr:last-child td{border-bottom:none}.lesson-title{color:#0d2d59;font-size:1.05rem;font-weight:600}.lesson-preview{color:#666;font-size:.92rem;line-height:1.5;margin:0;max-width:600px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.action-buttons{display:flex;gap:8px;justify-content:flex-end}.action-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;justify-content:center;padding:8px;transition:all .2s ease}.action-btn.edit{background-color:#0d2d5914;color:#0d2d59}.action-btn.edit:hover{background-color:#0d2d59;color:#fff;transform:translateY(-1px)}.action-btn.delete{background-color:#ef444414;color:#ef4444}.action-btn.delete:hover{background-color:#ef4444;color:#fff;transform:translateY(-1px)}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0d2d5966;display:flex;height:100vh;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100vw;z-index:1000}.modal-box{animation:modalFadeIn .3s cubic-bezier(.16,1,.3,1);background:#fff;border-radius:20px;box-shadow:0 10px 40px #00000026;display:flex;flex-direction:column;max-height:90vh;max-width:650px;overflow:hidden;width:100%}.modal-box.confirm{max-width:450px;padding:30px;text-align:center}.confirm-icon{align-items:center;background:#ef444414;border-radius:50%;display:inline-flex;justify-content:center;margin-bottom:20px;padding:16px}.modal-header{align-items:center;background-color:#fafafa;border-bottom:1px solid #0000000d;display:flex;justify-content:space-between;padding:24px 30px}.modal-header h2{color:#0d2d59;font-size:1.35rem;margin:0}.close-btn{background:none;border:none;border-radius:50%;color:#666;cursor:pointer;padding:4px;transition:all .2s ease}.close-btn:hover{background-color:#0000000d;color:#333}.modal-form{flex:1 1;max-height:calc(90vh - 80px);min-height:0;overflow-y:auto;padding:30px}.form-row{gap:20px}.form-group,.form-row{display:flex;margin-bottom:20px}.form-group{flex-direction:column}.form-group.half{flex:1 1}.form-group.half-wide{flex:2 1}.form-group label{color:#333;font-size:.9rem;font-weight:600;margin-bottom:8px}.helper-text{color:#666;font-size:.78rem;margin-bottom:8px;margin-top:-4px}.modal-form input[type=number],.modal-form input[type=text],.modal-form textarea{border:1px solid #0000001a;border-radius:8px;font-size:1rem;outline:none;padding:12px;transition:all .2s ease}.modal-form input[type=number]:focus,.modal-form input[type=text]:focus,.modal-form textarea:focus{border-color:#0d2d59;box-shadow:0 0 0 3px #0d2d5914}.modal-form input:disabled{background-color:#f0f2f5;color:#666;cursor:not-allowed}.message{align-items:center;border-radius:8px;display:flex;font-size:.92rem;font-weight:500;gap:8px;margin-bottom:20px;padding:12px 16px}.message.error{background-color:#ef444414;border:1px solid #ef444433;color:#ef4444}.message.success{background-color:#10b98114;border:1px solid #10b98133;color:#10b981}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:30px}.btn-cancel{background:#f0f2f5;border:none;border-radius:10px;color:#333;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .2s ease}.btn-cancel:hover{background-color:#e4e6eb}.btn-save{background:#0d2d59;border:none;border-radius:10px;color:#fff;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .2s ease}.btn-save:hover{filter:brightness(1.1)}.btn-delete-confirm{background:#ef4444;border:none;border-radius:10px;color:#fff;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .2s ease}.btn-delete-confirm:hover{background-color:#dc2626}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (max-width:768px){.dashboard-header{align-items:stretch;flex-direction:column;text-align:center}.dashboard-header div{margin-bottom:12px}.add-btn{justify-content:center;width:100%}.filter-bar{flex-direction:column;gap:16px;padding:16px}.lessons-table-wrapper{background:#0000;border:none;box-shadow:none}.lessons-table,.lessons-table tbody,.lessons-table td,.lessons-table th,.lessons-table thead,.lessons-table tr{display:block}.lessons-table thead tr{left:-9999px;position:absolute;top:-9999px}.lessons-table tr{background:#fff;border:1px solid #0000000d;border-radius:16px;box-shadow:0 4px 15px #00000005;margin-bottom:16px;padding:20px}.lessons-table td{border:none;border-bottom:1px solid #0000000d;padding:10px 0!important;position:relative;text-align:left}.lessons-table td:last-child{border-bottom:0;padding-top:15px!important}.lessons-table td:first-of-type:before{color:#0d2d59;content:"Lesson ID: ";font-weight:700}.lessons-table td:nth-of-type(2):before{color:#0d2d59;content:"Title: ";font-weight:700}.lessons-table td:nth-of-type(3):before{color:#0d2d59;content:"Preview: \A";font-weight:700;white-space:pre-wrap}.lessons-table td strong{font-size:1rem}.lessons-table td .lesson-title{display:inline-block}.lessons-table td .lesson-preview{display:block;margin-top:4px;max-width:100%;white-space:normal}.lessons-table .action-buttons{gap:12px;justify-content:flex-start}.lessons-table .action-btn{display:inline-flex;flex:1 1;font-size:.9rem;gap:8px;padding:10px 16px}.lessons-table .action-btn.edit:after{content:" Edit";font-weight:600}.lessons-table .action-btn.delete:after{content:" Delete";font-weight:600}.modal-box{border-radius:16px;display:flex;flex-direction:column;max-height:90vh}.modal-form{flex:1 1;max-height:calc(90vh - 70px);min-height:0;overflow-y:auto;padding:20px}.form-row{flex-direction:column;gap:0}.form-actions{flex-direction:column;gap:10px}.form-actions button{text-align:center;width:100%}.seed-banner{align-items:stretch;flex-direction:column;padding:16px}.seed-banner-btn{text-align:center;width:100%}}.seed-banner{background-color:#eba9251a;border:1px solid #eba9254d;border-radius:12px;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:30px;padding:16px 24px}.seed-banner,.seed-banner-text{align-items:center;display:flex}.seed-banner-text{color:#0d2d59;gap:12px}.seed-banner-text svg{color:#eba925}.seed-banner-btn{background-color:#eba925;border:none;border-radius:8px;box-shadow:0 4px 12px #eba92533;color:#0d2d59;cursor:pointer;font-weight:700;padding:10px 20px;transition:all .2s ease}.seed-banner-btn:hover:not(:disabled){background-color:#d8961b;transform:translateY(-1px)}.seed-banner-btn:disabled{cursor:not-allowed;opacity:.6}.container{margin:0 auto;max-width:900px;padding:40px 24px}.audio-buttons{display:flex;flex-wrap:nowrap;gap:16px;justify-content:center;margin:32px 0;position:-webkit-sticky;position:sticky;top:86px;z-index:99}.read-btn{align-items:center;background:linear-gradient(135deg,#7c4dff,#4f46e5);border:none;border-radius:16px;box-shadow:0 8px 20px #4f46e533;color:#fff;cursor:pointer;display:inline-flex;font-family:Poppins,sans-serif;font-size:15px;font-weight:600;gap:8px;padding:14px 28px;transition:all .3s cubic-bezier(.4,0,.2,1)}.read-btn:hover{background:linear-gradient(135deg,#8c5ffb,#5b53e8);box-shadow:0 12px 28px #4f46e54d;transform:translateY(-3px)}.read-btn:active{transform:scale(.97)}.stop-btn{align-items:center;background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:16px;box-shadow:0 8px 20px #ef444426;color:#fff;cursor:pointer;display:inline-flex;font-family:Poppins,sans-serif;font-size:15px;font-weight:600;gap:8px;padding:14px 28px;transition:all .3s cubic-bezier(.4,0,.2,1)}.stop-btn:hover{background:linear-gradient(135deg,#f87171,#ef4444);box-shadow:0 12px 28px #ef444440;transform:translateY(-3px)}.stop-btn:active{transform:scale(.97)}.content-box{background:#fff;border:1px solid #0d2d590f;border-radius:24px;box-shadow:0 15px 35px #0d2d590d;line-height:1.8;margin-top:30px;padding:48px 40px;text-align:left}.spacing-line{height:12px}.content-box p{color:var(--text-main);font-size:18px;margin-bottom:16px}.content-box h3,.content-box p{border-left:4px solid #0000;padding-left:12px;transition:all .25s ease}.content-box h3{color:var(--primary);font-size:22px;font-weight:700;margin-bottom:18px;margin-top:36px}.content-box li{border-left:4px solid #0000;color:var(--text-main);font-size:18px;margin-bottom:10px;padding-left:12px;transition:all .25s ease}.active-reading{animation:activeLinePulse 2s ease-in-out infinite alternate;background:linear-gradient(90deg,#eba92529,#eba92505)!important;border-left:5px solid var(--secondary)!important;border-radius:0 10px 10px 0;box-shadow:inset 2px 0 8px #eba9251a;font-weight:600;padding-left:16px!important;transform:translateX(6px)}@keyframes activeLinePulse{0%{background:linear-gradient(90deg,#eba9252e,#eba92505);border-left-color:var(--secondary);box-shadow:inset 2px 0 8px #eba9251f,0 2px 10px #eba92514}to{background:linear-gradient(90deg,#eba92514,#eba92503);border-left-color:#eba92588;box-shadow:inset 2px 0 4px #eba9250d,0 0 0 #0000}}.download-btn{background:linear-gradient(135deg,var(--primary) 0,#1e40af 100%);border:none;border-radius:16px;box-shadow:0 8px 24px #0d2d5926;color:#fff;cursor:pointer;display:block;font-family:Poppins,sans-serif;font-size:15px;font-weight:600;letter-spacing:.5px;margin:40px auto 20px;padding:15px 32px;transition:all .3s cubic-bezier(.4,0,.2,1)}.download-btn:hover{background:linear-gradient(135deg,#1e40af,#2563eb);box-shadow:0 12px 30px #0d2d5940;transform:translateY(-3px)}.download-btn:active{transform:scale(.97)}@media (max-width:768px){.content-box{padding:30px 20px}.content-box li,.content-box p{font-size:16px}.content-box h3{font-size:19px}.spacing-line{height:8px}}.trainer-popup-overlay{align-items:center;animation:trainerFadeIn .35s ease;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#060a19bf;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:99999}@keyframes trainerFadeIn{0%{opacity:0}to{opacity:1}}.trainer-popup-box{animation:trainerScaleUp .35s cubic-bezier(.34,1.56,.64,1);background:#fff;border:1px solid #0d2d590d;border-radius:28px;box-shadow:0 25px 60px #0d2d5940;max-width:400px;padding:48px 36px;text-align:center;width:100%}@keyframes trainerScaleUp{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.trainer-popup-box h1{color:#0d2d59;color:var(--primary,#0d2d59);font-size:28px;font-weight:800;letter-spacing:-.5px;margin:0 0 10px}.trainer-popup-box p{color:#64748b;color:var(--text-muted,#64748b);font-size:15px;font-weight:500;line-height:1.6;margin:0 0 28px}.trainer-popup-box input{background:#0d2d5905;border:1px solid #0d2d591f;border-radius:14px;box-sizing:border-box;color:#1e293b;color:var(--text-main,#1e293b);font-family:Poppins,sans-serif;font-size:16px;margin-bottom:16px;outline:none;padding:14px 18px;transition:all .3s ease;width:100%}.trainer-popup-box input:focus{background:#fff;border-color:#0d2d59;border-color:var(--primary,#0d2d59);box-shadow:0 0 0 4px #0d2d5914}.trainer-popup-box button{background:linear-gradient(135deg,#0d2d59,#1e40af);background:linear-gradient(135deg,var(--primary,#0d2d59) 0,#1e40af 100%);border:none;border-radius:14px;box-shadow:0 6px 16px #0d2d5926;color:#fff;cursor:pointer;font-family:Poppins,sans-serif;font-size:16px;font-weight:600;padding:15px;transition:all .3s ease;width:100%}.trainer-popup-box button:hover{background:linear-gradient(135deg,#1e40af,#2563eb);box-shadow:0 10px 22px #0d2d5940;transform:translateY(-2px)}.trainer-popup-box button:active{transform:scale(.98)}.trainer-popup-box span{color:#ef4444;display:block;font-size:14px;font-weight:600;margin-bottom:16px}.teacher-popup-overlay{align-items:center;animation:teacherFadeIn .35s ease;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#060a19bf;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:99999}@keyframes teacherFadeIn{0%{opacity:0}to{opacity:1}}.teacher-popup-box{animation:teacherScaleUp .35s cubic-bezier(.34,1.56,.64,1);background:#fff;border:1px solid #0d2d590d;border-radius:28px;box-shadow:0 25px 60px #0d2d5940;max-width:420px;padding:44px 32px;text-align:center;width:100%}@keyframes teacherScaleUp{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.teacher-popup-icon{font-size:48px;line-height:1;margin-bottom:8px}.teacher-popup-box h1{color:#0d2d59;color:var(--primary,#0d2d59);font-size:26px;font-weight:800;letter-spacing:-.5px;margin:0 0 8px}.teacher-popup-box p{color:#64748b;color:var(--text-muted,#64748b);font-size:14px;font-weight:500;line-height:1.6;margin:0 0 24px}.teacher-popup-box input{background:#0d2d5905;border:1px solid #0d2d591f;border-radius:14px;box-sizing:border-box;color:#1e293b;color:var(--text-main,#1e293b);font-family:Poppins,sans-serif;font-size:15px;margin-bottom:12px;outline:none;padding:14px 18px;transition:all .3s ease;width:100%}.teacher-popup-box input:focus{background:#fff;border-color:#0d2d59;border-color:var(--primary,#0d2d59);box-shadow:0 0 0 4px #0d2d5914}.teacher-popup-box input::placeholder{color:#94a3b8;font-weight:500}.teacher-popup-box select{appearance:none;-webkit-appearance:none;background:#0d2d5905;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230d2d59' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 18px center;background-repeat:no-repeat;background-size:16px;border:1px solid #0d2d591f;border-radius:14px;box-sizing:border-box;color:#1e293b;color:var(--text-main,#1e293b);cursor:pointer;font-family:Poppins,sans-serif;font-size:15px;margin-bottom:12px;outline:none;padding:14px 18px;transition:all .3s ease;width:100%}.teacher-popup-box select:focus{background-color:#fff;border-color:#0d2d59;border-color:var(--primary,#0d2d59);box-shadow:0 0 0 4px #0d2d5914}.teacher-popup-box button{background:linear-gradient(135deg,#0d2d59,#1e40af);background:linear-gradient(135deg,var(--primary,#0d2d59) 0,#1e40af 100%);border:none;border-radius:14px;box-shadow:0 6px 16px #0d2d5926;color:#fff;cursor:pointer;font-family:Poppins,sans-serif;font-size:16px;font-weight:600;margin-top:4px;padding:15px;transition:all .3s ease;width:100%}.teacher-popup-box button:hover{background:linear-gradient(135deg,#1e40af,#2563eb);box-shadow:0 10px 22px #0d2d5940;transform:translateY(-2px)}.teacher-popup-box button:active{transform:scale(.98)}.teacher-popup-error{color:#ef4444;display:block;font-size:13px;font-weight:600;margin-bottom:12px}.assistant-toggle{align-items:center;background:linear-gradient(135deg,#0d2d59,#1e40af);background:linear-gradient(135deg,var(--primary,#0d2d59) 0,#1e40af 100%);border:none;border-radius:50%;bottom:24px;box-shadow:0 4px 20px #0d2d5966;color:#fff;cursor:pointer;display:flex;height:60px;justify-content:center;position:fixed;right:24px;transition:all .3s cubic-bezier(.4,0,.2,1);width:60px;z-index:1000}.assistant-toggle:hover{box-shadow:0 8px 25px #0d2d5999;transform:scale(1.08) translateY(-2px)}.assistant-toggle.active{background:linear-gradient(135deg,#eba925,#d97706);background:linear-gradient(135deg,var(--secondary,#eba925) 0,#d97706 100%);box-shadow:0 4px 20px #eba92566}.assistant-pulse{animation:pulse-ring 2s cubic-bezier(.215,.61,.355,1) infinite;border:2px solid #0d2d59;border:2px solid var(--primary,#0d2d59);border-radius:50%;height:100%;left:0;opacity:0;pointer-events:none;position:absolute;top:0;width:100%}@keyframes pulse-ring{0%{opacity:.8;transform:scale(.95)}to{opacity:0;transform:scale(1.4)}}.voice-overlay{align-items:center;animation:voice-fade-in .4s ease forwards;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#080c15f2;box-sizing:border-box;display:flex;height:100vh;justify-content:center;left:0;overflow:hidden;position:fixed;top:0;width:100vw;z-index:2000}@keyframes voice-fade-in{0%{opacity:0}to{opacity:1}}.voice-container{align-items:center;box-sizing:border-box;height:80%;justify-content:space-between;max-width:600px;padding:40px 20px;text-align:center;width:100%}.voice-container,.voice-header{display:flex;flex-direction:column}.voice-header{gap:8px}.voice-logo{color:#fff;font-size:1.4rem;font-weight:800;letter-spacing:1px}.voice-logo-dot{color:#eba925;color:var(--secondary,#eba925)}.voice-helper-tip{background:#ffffff08;border:1px solid #ffffff1a;border-radius:100px;color:#ffffffb3;font-size:.85rem;padding:6px 16px}.voice-orb-wrapper{height:250px;margin:40px 0;position:relative;width:250px}.voice-orb,.voice-orb-wrapper{align-items:center;display:flex;justify-content:center}.voice-orb{background:radial-gradient(circle,#0d2d59 0,#1e40af 100%);background:radial-gradient(circle,var(--primary,#0d2d59) 0,#1e40af 100%);border-radius:50%;box-shadow:0 0 40px #1e40af99;color:#fff;height:100px;transition:all .3s ease;width:100px;z-index:10}.voice-orb.listening{background:radial-gradient(circle,#eba925 0,#d97706 100%);background:radial-gradient(circle,var(--secondary,#eba925) 0,#d97706 100%);box-shadow:0 0 40px #eba92599}.voice-orb.processing{background:radial-gradient(circle,#10b981 0,#059669 100%);box-shadow:0 0 40px #10b98199}.voice-ring{border:2px solid #0d2d59;border:2px solid var(--primary,#0d2d59);border-radius:50%;height:100px;left:50%;opacity:.8;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);width:100px}.voice-ring.listening{border-color:#eba925;border-color:var(--secondary,#eba925)}.voice-ring.processing{border-color:#10b981}.voice-ring.ring-1{animation:ripple-out-1 2.5s linear infinite}.voice-ring.ring-2{animation:ripple-out-2 2.5s linear infinite;animation-delay:.8s}.voice-ring.ring-3{animation:ripple-out-3 2.5s linear infinite;animation-delay:1.6s}@keyframes ripple-out-1{0%{opacity:.8;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(2.4)}}@keyframes ripple-out-2{0%{opacity:.8;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(2.4)}}@keyframes ripple-out-3{0%{opacity:.8;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(2.4)}}.voice-state-title{font-size:1.6rem;font-weight:700;letter-spacing:1px;margin-top:12px;text-transform:uppercase}.voice-state-title.speaking{color:#60a5fa}.voice-state-title.listening{color:#eba925;color:var(--secondary,#eba925)}.voice-state-title.processing{color:#34d399}.voice-captions-container{background:#ffffff05;border:1px solid #ffffff1a;border-radius:16px;box-sizing:border-box;display:flex;flex-direction:column;gap:16px;margin-top:20px;min-height:120px;padding:20px;text-align:left;width:100%}.voice-controls{display:flex;gap:16px;margin-top:24px}.btn-end-session{align-items:center;background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:14px;box-shadow:0 4px 15px #ef44444d;color:#fff;cursor:pointer;display:flex;font-family:inherit;font-size:15px;font-weight:600;gap:8px;padding:14px 28px;transition:all .3s ease}.btn-end-session:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 6px 20px #ef444480;transform:translateY(-2px)}@media (max-width:480px){.voice-container{height:90%;padding:20px 16px}.voice-orb-wrapper{height:200px;margin:20px 0;width:200px}.voice-state-title{font-size:1.3rem}}.teachers-portal{padding:30px 12px 60px}.teachers-header{margin-bottom:24px}.teachers-header .hero-title{font-size:28px;line-height:1.2}.teachers-header .para{font-size:14px;line-height:1.6}.teacher-welcome{align-items:center;background:linear-gradient(135deg,#eba92514,#eba92526);border:1px solid #eba92533;border-radius:30px;color:var(--text-main);display:inline-flex;font-size:14px;font-weight:600;gap:8px;margin-bottom:8px;padding:8px 18px}.teacher-welcome svg{color:var(--secondary);flex-shrink:0}.teacher-welcome strong{color:var(--primary);font-weight:800}.progress-container{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffffbf;border:1px solid #0d2d5914;border-radius:16px;box-shadow:var(--shadow-sm);margin-bottom:16px;padding:16px 14px}.progress-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.progress-label{align-items:center;color:var(--primary);display:flex;font-size:13px;font-weight:750;gap:6px;letter-spacing:.5px;text-transform:uppercase}.progress-label svg{color:var(--secondary)}.progress-stats{align-items:center;display:flex;gap:10px}.progress-fraction{color:var(--text-muted);font-size:12px;font-weight:600}.progress-percentage{background:#0d2d590d;border-radius:20px;color:var(--primary);font-size:14px;font-weight:800;padding:3px 10px}.progress-bar-track{background:#0d2d590f;border-radius:10px;height:10px;margin-bottom:12px;overflow:visible;position:relative}.progress-bar-fill{background:linear-gradient(90deg,var(--primary) 0,#1e40af 50%,var(--secondary) 100%);border-radius:10px;box-shadow:0 2px 8px #0d2d5933;height:100%;position:relative;z-index:1}.milestone-marker{background:#fff;border:2px solid #0d2d5933;border-radius:2px;height:10px;position:absolute;top:50%;transform:translate(-50%,-50%) rotate(45deg);transition:var(--transition);width:10px;z-index:2}.milestone-marker.reached{background:var(--secondary);border-color:var(--secondary);box-shadow:0 0 6px #eba92566}.milestone-labels{-ms-overflow-style:none;display:flex;flex-wrap:nowrap;gap:4px;justify-content:space-between;overflow-x:auto;scrollbar-width:none}.milestone-labels::-webkit-scrollbar{display:none}.milestone-tag{align-items:center;border-radius:8px;color:var(--text-muted);display:flex;font-size:10px;font-weight:600;gap:4px;padding:3px 6px;transition:var(--transition);white-space:nowrap}.milestone-tag.reached{background:#eba92514;color:var(--secondary-hover);font-weight:700}.milestone-tag svg{flex-shrink:0}.current-milestone-badge{align-items:center;background:linear-gradient(135deg,#eba92514,#eba92526);border:1px solid #eba92533;border-radius:20px;color:var(--text-main);display:inline-flex;font-size:11.5px;font-weight:600;gap:6px;margin-top:10px;padding:6px 14px}.current-milestone-badge strong{color:var(--secondary-hover);font-weight:800}.current-milestone-badge svg{color:var(--secondary)}.week-capsule.completed{background:#10b9810f;border-color:#10b9814d;color:#047857}.week-capsule.completed.active{background:linear-gradient(135deg,#047857,#10b981);border-color:#0000;color:#fff}.week-check-icon{flex-shrink:0}.curriculum-banner-left{display:flex;flex:1 1;flex-direction:column;gap:4px}.mark-complete-btn{align-items:center;background:#0d2d5908;border:1.5px solid #0d2d5926;border-radius:30px;color:var(--primary);cursor:pointer;display:inline-flex;flex-shrink:0;font-family:inherit;font-size:12px;font-weight:700;gap:5px;padding:8px 16px;transition:var(--transition);white-space:nowrap}.mark-complete-btn.ready{animation:pulse-ready 2s ease-in-out infinite;background:linear-gradient(135deg,var(--primary) 0,#1e40af 100%);border-color:#0000;box-shadow:0 3px 10px #0d2d5933;color:#fff}.mark-complete-btn.ready:hover{box-shadow:0 6px 16px #0d2d594d;transform:translateY(-1px)}@keyframes pulse-ready{0%,to{box-shadow:0 3px 10px #0d2d5933}50%{box-shadow:0 3px 18px #0d2d5966}}.mark-complete-btn.disabled{background:#0d2d590a;border-color:#0d2d5914;color:var(--text-muted);cursor:not-allowed;opacity:.85}.mark-complete-btn.disabled:hover{box-shadow:none;transform:none}.mark-complete-btn.completed{background:linear-gradient(135deg,#047857,#10b981);border-color:#0000;box-shadow:0 3px 10px #10b98133;color:#fff;cursor:default}.curriculum-banner-right{flex-shrink:0}.week-capsule.locked{background:#0d2d5905;border-color:#0d2d590f;color:var(--text-muted);cursor:not-allowed;opacity:.4}.week-capsule.locked:hover{background:#0d2d5905;border-color:#0d2d590f;transform:none}.week-lock-icon{flex-shrink:0;opacity:.6}.week-capsule.current{background:#eba9250f;border-color:var(--secondary);box-shadow:0 0 0 2px #eba92526;color:var(--primary)}.week-capsule.current:hover{background:#eba9251a}.weeks-selector-container{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffffb3;border:1px solid #0d2d5914;border-radius:16px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:10px;margin-bottom:16px;padding:12px 14px;text-align:left}.weeks-selector-label{align-items:center;color:var(--primary);display:flex;font-size:12px;font-weight:750;gap:5px;letter-spacing:.5px;text-transform:uppercase}.weeks-scroll-wrapper{-ms-overflow-style:none;display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.weeks-scroll-wrapper::-webkit-scrollbar{display:none}.week-capsule{background:#fff;border:1px solid #0d2d591f;border-radius:30px;color:var(--primary);cursor:pointer;flex-shrink:0;font-family:inherit;font-size:12px;font-weight:700;padding:7px 14px;transition:var(--transition);white-space:nowrap}.week-capsule:hover{background:#0d2d590a;border-color:var(--primary-light)}.week-capsule.active{background:linear-gradient(135deg,var(--primary) 0,#1e40af 100%);border-color:#0000;box-shadow:0 3px 8px #0d2d5926;color:#fff}.curriculum-banner{align-items:center;background:#0d2d5908;border-left:4px solid var(--secondary);border-radius:4px 14px 14px 4px;display:flex;flex-direction:row;gap:12px;justify-content:space-between;margin-bottom:20px;padding:12px 14px;text-align:left}.curriculum-focus,.curriculum-theme{color:var(--text-main);font-size:13px;line-height:1.4}.curriculum-focus strong,.curriculum-theme strong{color:var(--primary);font-size:10.5px;letter-spacing:.5px;margin-right:4px;text-transform:uppercase}.subject-tabs-container{-ms-overflow-style:none;display:flex;justify-content:flex-start;margin-bottom:20px;overflow-x:auto;padding:3px;scrollbar-width:none}.subject-tabs-container::-webkit-scrollbar{display:none}.subject-tabs{background:#0d2d590a;border:1px solid #0d2d590f;border-radius:16px;display:inline-flex;gap:4px;padding:4px;position:relative}.subject-tab-btn{align-items:center;background:#0000;border:none;border-radius:13px;color:var(--primary);cursor:pointer;display:flex;font-family:inherit;font-size:12px;font-weight:700;gap:5px;padding:9px 14px;position:relative;transition:var(--transition);white-space:nowrap;z-index:1}.subject-tab-btn span{display:inline}.subject-tab-btn:hover{color:var(--primary-light)}.subject-tab-btn.active{color:#fff!important}.subject-tab-btn .active-indicator{background:linear-gradient(135deg,var(--primary) 0,#1e40af 100%);border-radius:13px;bottom:0;box-shadow:0 3px 10px #0d2d5933;left:0;position:absolute;right:0;top:0;z-index:-1}.portal-layout{display:flex;flex-direction:column;gap:16px;text-align:left}.portal-sidebar{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffffa6;border:1px solid #0d2d5914;border-radius:16px;box-shadow:var(--shadow-sm);box-sizing:border-box;padding:10px;width:100%}.category-list{-ms-overflow-style:none;display:flex;flex-direction:row;gap:6px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.category-list::-webkit-scrollbar{display:none}.category-item-btn{align-items:center;background:#0000;border:none;border-radius:12px;color:var(--primary);cursor:pointer;display:flex;flex-shrink:0;font-family:inherit;font-size:12.5px;font-weight:600;justify-content:center;overflow:hidden;padding:9px 14px;position:relative;transition:var(--transition);white-space:nowrap;z-index:1}.category-item-content{align-items:center;display:flex;gap:6px}.category-item-btn .arrow-icon{display:none}.category-item-btn:hover{background:#0d2d5908;color:var(--primary-light)}.category-item-btn.active{color:var(--primary)!important;font-weight:700}.category-active-bg{background:#eba9251f;border-bottom:3px solid var(--secondary);border-radius:12px;bottom:0;left:0;position:absolute;right:0;top:0;z-index:-1}.portal-details-panel{width:100%}.details-content-card{background:#fff;border:1px solid #0d2d5914;border-radius:18px;box-shadow:var(--shadow-md);min-height:300px;padding:20px 16px}.details-header{border-bottom:1px solid #0d2d5914;display:flex;flex-direction:column;gap:12px;margin-bottom:20px;padding-bottom:16px}.details-header h3{color:var(--primary);font-size:20px;font-weight:850;letter-spacing:-.3px;margin:0}.details-header-right{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.read-aloud-btn{align-items:center;background:#0d2d5908;border:1.5px solid #0d2d5926;border-radius:30px;color:var(--primary);cursor:pointer;display:inline-flex;font-family:inherit;font-size:12.5px;font-weight:700;gap:6px;padding:8px 16px;transition:var(--transition);white-space:nowrap}.read-aloud-btn:hover{background:var(--primary);border-color:var(--primary);box-shadow:0 4px 12px #0d2d5926;color:#fff}.read-aloud-btn.speaking{animation:pulse-speaking 1.5s ease-in-out infinite;background:linear-gradient(135deg,#dc2626,#ef4444);border-color:#0000;box-shadow:0 4px 12px #dc262640;color:#fff}.read-aloud-btn.speaking:hover{background:linear-gradient(135deg,#b91c1c,#dc2626)}@keyframes pulse-speaking{0%,to{box-shadow:0 4px 12px #dc262640}50%{box-shadow:0 4px 20px #dc262666}}.category-badge{align-items:center;background:#0d2d590a;border:1px solid #0d2d5914;border-radius:20px;color:var(--primary);display:inline-flex;font-size:11.5px;font-weight:700;gap:6px;padding:6px 12px}.category-badge svg{color:var(--secondary)}.content-list{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}.content-item{align-items:flex-start;background:rgba(13,45,89,.015);border:1px solid #0d2d590a;border-radius:14px;display:flex;gap:12px;padding:14px;transition:var(--transition)}.content-item:hover{background:#0d2d5908;border-color:#0d2d5914;box-shadow:var(--shadow-sm)}.bullet-point{align-items:center;background:linear-gradient(135deg,var(--primary) 0,#1e40af 100%);border-radius:50%;box-shadow:0 2px 6px #0d2d5926;color:#fff;display:flex;flex-shrink:0;font-size:11.5px;font-weight:700;height:24px;justify-content:center;min-width:24px;width:24px}.content-text{color:var(--text-main);font-size:14px;font-weight:550;line-height:1.55;text-align:left}.roleplay-chat{display:flex;flex-direction:column;gap:16px}.roleplay-intro-text{color:var(--text-muted);font-size:13.5px;line-height:1.6;margin:0}.dialogue-container{display:flex;flex-direction:column;gap:12px;padding:6px 0}.dialogue-bubble-wrapper{display:flex;flex-direction:column;max-width:88%}.teacher-wrapper{align-items:flex-start;align-self:flex-start}.student-wrapper{align-items:flex-end;align-self:flex-end}.speaker-tag{color:var(--text-muted);font-size:10px;font-weight:700;letter-spacing:.5px;margin-bottom:3px;margin-left:6px;margin-right:6px;text-transform:uppercase}.dialogue-bubble{font-size:13.5px;font-weight:550;line-height:1.55;padding:12px 16px}.teacher-bubble{background:#0d2d590d;border:1px solid #0d2d5914;border-radius:4px 18px 18px 18px;color:var(--primary)}.student-bubble{background:#eba9251a;border:1px solid #eba92526;border-radius:18px 4px 18px 18px;color:var(--text-main)}.challenge-card{background:linear-gradient(135deg,#fff,#eba92508);border:1.5px solid #eba92559;border-radius:18px;box-shadow:var(--shadow-sm);padding:28px 18px;text-align:center}.challenge-icon-container{align-items:center;background:#eba92526;border-radius:50%;box-shadow:0 3px 8px #eba9251a;color:var(--secondary-hover);display:flex;height:56px;justify-content:center;margin:0 auto 16px;width:56px}.challenge-card h4{color:var(--primary);font-size:18px;font-weight:850;margin:0 0 12px}.challenge-main-text{color:var(--text-main);font-size:14.5px;font-weight:600;line-height:1.65;margin:0 auto 24px;max-width:600px}.challenge-action-steps{background:#fff;border:1px solid #0d2d590f;border-radius:14px;margin:0 auto;max-width:540px;padding:18px 16px;text-align:left}.challenge-action-steps h5{color:var(--primary);font-size:12px;font-weight:750;letter-spacing:.5px;margin:0 0 10px;text-transform:uppercase}.challenge-action-steps ul{display:flex;flex-direction:column;gap:8px;margin:0;padding-left:18px}.challenge-action-steps ul li{color:var(--text-main);font-size:13px;font-weight:550;line-height:1.5}@media (min-width:768px){.teachers-portal{padding-left:20px;padding-right:20px;padding-top:40px}.teachers-header .hero-title{font-size:40px}.teachers-header .para{font-size:16px}.progress-container{border-radius:18px;padding:18px 20px}.progress-label{font-size:14px}.milestone-tag{font-size:11px}.current-milestone-badge{font-size:12.5px}.weeks-selector-container{border-radius:18px;margin-bottom:20px;padding:14px 18px}.weeks-selector-label{font-size:13.5px}.week-capsule{font-size:13px;padding:8px 16px}.curriculum-banner{align-items:center;flex-direction:row;justify-content:space-between;margin-bottom:28px;padding:14px 20px}.curriculum-focus,.curriculum-theme{font-size:14px}.subject-tabs-container{justify-content:center;margin-bottom:30px}.subject-tab-btn{font-size:13.5px;padding:11px 20px}.details-content-card{border-radius:22px;min-height:380px;padding:28px 24px}.details-header{align-items:center;flex-direction:row;justify-content:space-between}.details-header h3{font-size:22px}.content-item{gap:14px;padding:16px 18px}.content-text{font-size:14.5px}.dialogue-bubble-wrapper{max-width:78%}.dialogue-bubble{font-size:14px;padding:14px 18px}}@media (min-width:1024px){.teachers-portal{padding-bottom:80px;padding-top:50px}.teachers-header .hero-title{font-size:54px}.teachers-header .para{font-size:18px}.progress-container{border-radius:20px;margin-bottom:24px;padding:20px 24px}.progress-label{font-size:14.5px}.progress-bar-track{height:12px}.milestone-marker{height:12px;width:12px}.milestone-tag{font-size:12px;padding:4px 8px}.current-milestone-badge{font-size:13px;padding:8px 18px}.mark-complete-btn{font-size:13px;padding:9px 20px}.weeks-selector-container{border-radius:20px;margin-bottom:24px;padding:16px 20px}.weeks-selector-label{font-size:14.5px}.week-capsule{font-size:13.5px;padding:8px 16px}.subject-tab-btn{font-size:14.5px;padding:12px 24px}.portal-layout{align-items:flex-start;flex-direction:row;gap:32px}.portal-sidebar{border-radius:20px;flex-shrink:0;padding:16px;width:280px}.category-list{flex-direction:column;gap:8px;overflow-x:visible}.category-item-btn{border-radius:14px;justify-content:space-between;padding:14px 16px;width:100%}.category-item-btn .arrow-icon{display:block;opacity:.4;transition:var(--transition)}.category-item-btn:hover .arrow-icon{opacity:.8;transform:translateX(3px)}.category-item-btn.active .arrow-icon{color:var(--secondary);opacity:1}.category-active-bg{border-bottom:none;border-left:4px solid var(--secondary);border-radius:0 14px 14px 0}.details-content-card{border-radius:24px;min-height:420px;padding:35px}.details-header h3{font-size:24px}.read-aloud-btn{font-size:13px;padding:8px 18px}.category-badge{font-size:13px;padding:8px 16px}.content-item{gap:16px;padding:16px 20px}.content-text{font-size:15px;line-height:1.6}.bullet-point{font-size:12.5px;height:26px;min-width:26px;width:26px}.dialogue-bubble-wrapper{max-width:70%}.dialogue-bubble{font-size:14.5px;padding:14px 20px}.challenge-card{padding:40px 30px}.challenge-card h4{font-size:22px}.challenge-main-text{font-size:17px}}.language-selector{align-items:center;background:#0d2d590d;border:1px solid #0d2d5914;border-radius:30px;display:inline-flex;margin-right:8px;padding:3px}.lang-btn{background:#0000;border:none;border-radius:20px;color:var(--text-muted);cursor:pointer;font-family:inherit;font-size:11.5px;font-weight:700;padding:6px 14px;transition:all .25s cubic-bezier(.4,0,.2,1)}.lang-btn.active,.lang-btn:hover{color:var(--primary)}.lang-btn.active{background:var(--bg-white);box-shadow:0 2px 8px #0d2d591f}.spinner{animation:spin .8s linear infinite;border:3.5px solid #0d2d5914;border-radius:50%;border-top:3.5px solid var(--primary);height:32px;margin:20px auto 10px;width:32px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes fadeInUp{0%{opacity:0;transform:translate(-50%,-90%) scale(.95)}to{opacity:1;transform:translate(-50%,-100%) scale(1)}}.word-translation-tooltip{pointer-events:none;-webkit-user-select:none;user-select:none}.teacher-logout-btn{background:#ef444414;border:1px solid #ef444426;border-radius:20px;color:#ef4444;cursor:pointer;font-family:inherit;font-size:11px;font-weight:700;margin-left:12px;padding:4px 10px;transition:all .2s ease}.teacher-logout-btn:hover{background:#ef444426;transform:translateY(-1px)}@media (max-width:768px){.details-body{-webkit-touch-callout:none!important;-webkit-user-select:none!important;user-select:none!important}}body{font-family:Arial,sans-serif;margin:0;padding:0}
/*# sourceMappingURL=main.5a42cd67.css.map*/