body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.hero-section{align-items:center;background:linear-gradient(145deg,#0a1628,#0d1f38 30%,#1b4f72 70%,#2e86c1);display:flex;justify-content:center;min-height:92vh;overflow:hidden;position:relative}.hero-particles{bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:1}.hero-particle{animation:float-particle linear infinite;background:#f4b94266;border-radius:50%;position:absolute}@keyframes float-particle{0%{opacity:0;transform:translateY(0) scale(1)}10%{opacity:1}90%{opacity:1}to{opacity:0;transform:translateY(-100vh) scale(.3)}}.hero-orbit{animation:orbit-rotate 30s linear infinite;border:1px solid #2e86c126;border-radius:50%;position:absolute}.hero-orbit:first-child{height:400px;left:50%;top:50%;transform:translate(-50%,-50%);width:400px}.hero-orbit:nth-child(2){animation-direction:reverse;animation-duration:45s;border-color:#f4b9421a;height:600px;left:50%;top:50%;transform:translate(-50%,-50%);width:600px}.hero-orbit:nth-child(3){animation-duration:60s;border-color:#ffffff0d;height:800px;left:50%;top:50%;transform:translate(-50%,-50%);width:800px}@keyframes orbit-rotate{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}.orbit-dot{background:#f4b942;border-radius:50%;box-shadow:0 0 12px #f4b94299;height:6px;left:50%;position:absolute;top:0;transform:translate(-50%,-50%);width:6px}.hero-orbit:nth-child(2) .orbit-dot{background:#2e86c1;box-shadow:0 0 12px #2e86c199;top:100%}.hero-content{max-width:720px;padding:0 24px;position:relative;text-align:center;z-index:2}.hero-badge{align-items:center;animation:fadeInDown .8s ease-out;background:#f4b94226;border:1px solid #f4b9424d;border-radius:100px;color:#f4b942;display:inline-flex;font-size:12px;gap:8px;letter-spacing:2px;margin-bottom:24px;padding:6px 18px;text-transform:uppercase}.hero-badge-dot{animation:pulse-dot 2s ease-in-out infinite;background:#f4b942;border-radius:50%;height:6px;width:6px}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.5)}}.hero-title{animation:fadeInUp .8s ease-out .2s backwards;color:#fff;font-size:48px;font-weight:700;line-height:1.15;margin-bottom:16px}.hero-title-highlight{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#f4b942,#f39c12 50%,#e74c3c);-webkit-background-clip:text;background-clip:text}.hero-subtitle{animation:fadeInUp .8s ease-out .4s backwards;color:#ffffffb3;font-size:18px;line-height:1.7;margin-bottom:36px}.hero-actions{animation:fadeInUp .8s ease-out .6s backwards;display:flex;flex-wrap:wrap;gap:16px;justify-content:center}.hero-btn-primary{align-items:center;background:linear-gradient(135deg,#f4b942,#f39c12);border:none;border-radius:12px;box-shadow:0 4px 24px #f4b94259;color:#0a1628;cursor:pointer;display:inline-flex;font-size:17px;font-weight:700;gap:8px;letter-spacing:.3px;padding:16px 36px;text-shadow:none;transition:all .3s ease}.hero-btn-primary:hover{box-shadow:0 8px 36px #f4b94280;transform:translateY(-2px) scale(1.03)}.hero-btn-secondary{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1f;border:1px solid #ffffff4d;border-radius:12px;color:#fff;cursor:pointer;display:inline-flex;font-size:17px;font-weight:600;gap:8px;padding:16px 36px;text-shadow:0 1px 2px #0003;transition:all .3s ease}.hero-btn-secondary:hover{background:#fff3;border-color:#ffffff80;transform:translateY(-2px)}.hero-scroll-hint{animation:bounce-scroll 2s ease-in-out infinite;bottom:32px;left:50%;position:absolute;transform:translateX(-50%);z-index:2}.hero-scroll-hint span{border:2px solid #ffffff4d;border-radius:12px;display:block;height:38px;position:relative;width:24px}.hero-scroll-hint span:after{animation:scroll-inner 2s ease-in-out infinite;background:#fff9;border-radius:2px;content:"";height:8px;left:50%;position:absolute;top:6px;transform:translateX(-50%);width:4px}@keyframes bounce-scroll{0%,to{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(8px)}}@keyframes scroll-inner{0%{opacity:1;top:6px}to{opacity:0;top:20px}}.stats-bar{background:#0a1628;border-bottom:1px solid #2e86c133;padding:24px 0}.stats-bar-inner{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(4,1fr);margin:0 auto;max-width:960px;padding:0 24px;text-align:center}.stat-item-number{color:#f4b942;font-size:32px;font-weight:700;line-height:1}.stat-item-label{color:#ffffff80;font-size:13px;margin-top:6px}.programs-section{background:#f0f4f8;padding:80px 24px}.section-header{margin:0 auto 48px;max-width:600px;text-align:center}.section-tag{color:#2e86c1;display:inline-block;font-size:12px;font-weight:600;letter-spacing:2px;margin-bottom:12px;text-transform:uppercase}.section-title{color:#0a1628;font-size:32px;font-weight:700;line-height:1.3;margin-bottom:12px}.section-desc{color:#5d6d7e;font-size:16px;line-height:1.6}.programs-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin:0 auto;max-width:960px}.program-card{background:#fff;border:1px solid #0000000f;border-radius:16px;cursor:pointer;overflow:hidden;padding:28px 24px;position:relative;transition:all .3s ease}.program-card:hover{box-shadow:0 12px 40px #0a16281f;transform:translateY(-6px)}.program-card:before{content:"";height:4px;left:0;position:absolute;right:0;top:0}.program-card[data-brand=kids]:before{background:linear-gradient(90deg,#ff6b9d,#ff8fb3)}.program-card[data-brand=junior]:before{background:linear-gradient(90deg,#4ecdc4,#6fe4db)}.program-card[data-brand=explorer]:before{background:linear-gradient(90deg,#5b6abf,#7b88d4)}.program-card[data-brand=pro]:before{background:linear-gradient(90deg,#2c3e50,#4a6375)}.program-icon{align-items:center;border-radius:16px;display:flex;font-size:28px;height:56px;justify-content:center;margin-bottom:16px;width:56px}.program-card[data-brand=kids] .program-icon{background:#ff6b9d1f}.program-card[data-brand=junior] .program-icon{background:#4ecdc41f}.program-card[data-brand=explorer] .program-icon{background:#5b6abf1f}.program-card[data-brand=pro] .program-icon{background:#2c3e501f}.program-name{font-size:20px;font-weight:700;margin-bottom:4px}.program-card[data-brand=kids] .program-name{color:#ff6b9d}.program-card[data-brand=junior] .program-name{color:#4ecdc4}.program-card[data-brand=explorer] .program-name{color:#5b6abf}.program-card[data-brand=pro] .program-name{color:#2c3e50}.program-age{color:#85929e;font-size:13px;margin-bottom:12px}.program-desc{color:#5d6d7e;font-size:14px;line-height:1.6;margin-bottom:16px}.program-topics{display:flex;flex-wrap:wrap;gap:6px}.program-topic-tag{background:#f0f4f8;border-radius:100px;color:#5d6d7e;font-size:11px;padding:4px 10px}.features-section{background:#fff;padding:80px 24px}.features-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin:0 auto;max-width:960px}.feature-card{border-radius:16px;padding:32px 24px;text-align:center;transition:all .3s ease}.feature-card:hover{background:#f0f4f8}.feature-icon-wrap{align-items:center;border-radius:20px;display:flex;font-size:32px;height:72px;justify-content:center;margin:0 auto 20px;position:relative;width:72px}.feature-icon-wrap:after{border:1px dashed #2e86c133;border-radius:24px;content:"";inset:-4px;position:absolute}.feature-title{color:#0a1628;font-size:18px;font-weight:600;margin-bottom:8px}.feature-desc{color:#5d6d7e;font-size:14px;line-height:1.6}.passport-section{background:linear-gradient(180deg,#0a1628,#1b4f72);overflow:hidden;padding:80px 24px;position:relative}.passport-grid{grid-gap:60px;align-items:center;display:grid;gap:60px;grid-template-columns:1fr 1fr;margin:0 auto;max-width:960px}.passport-text .section-tag{color:#f4b942}.passport-text .section-title{color:#fff}.passport-text .section-desc{color:#fff9}.passport-feature-list{display:flex;flex-direction:column;gap:16px;margin-top:24px}.passport-feature-item{align-items:center;color:#fffc;display:flex;font-size:15px;gap:12px}.passport-feature-check{align-items:center;background:#f4b94233;border-radius:50%;color:#f4b942;display:flex;flex-shrink:0;font-size:14px;height:24px;justify-content:center;width:24px}.passport-preview-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff0f;border:1px solid #ffffff1a;border-radius:20px;padding:32px;position:relative}.passport-preview-header{align-items:center;display:flex;gap:12px;margin-bottom:24px}.passport-star-icon{align-items:center;background:linear-gradient(135deg,#f4b942,#f39c12);border-radius:12px;color:#0a1628;display:flex;font-size:22px;height:40px;justify-content:center;width:40px}.passport-preview-title{color:#fff;font-size:16px;font-weight:600}.passport-preview-sub{color:#ffffff80;font-size:12px}.passport-weeks{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(8,1fr)}.passport-week{text-align:center}.passport-week-label{color:#fff6;font-size:10px;margin-bottom:6px}.passport-week-circle{align-items:center;border-radius:50%;display:flex;font-size:14px;height:40px;justify-content:center;margin:0 auto;transition:all .3s ease;width:40px}.passport-week-circle.completed{background:linear-gradient(135deg,#f4b942,#f39c12);box-shadow:0 0 16px #f4b9424d;color:#0a1628}.passport-week-circle.current{animation:pulse-current 2s ease-in-out infinite;background:#4ecdc44d;border:2px solid #4ecdc4;color:#4ecdc4}.passport-week-circle.locked{background:#ffffff0f;border:1px dashed #fff3;color:#fff3}@keyframes pulse-current{0%,to{box-shadow:0 0 0 0 #4ecdc44d}50%{box-shadow:0 0 0 8px #4ecdc400}}.cta-section{background:#f0f4f8;padding:80px 24px;text-align:center}.cta-inner{margin:0 auto;max-width:600px}.cta-title{color:#0a1628;font-size:32px;font-weight:700;margin-bottom:12px}.cta-desc{color:#5d6d7e;font-size:16px;line-height:1.6;margin-bottom:32px}.cta-btn{align-items:center;animation:cta-glow 2.5s ease-in-out infinite;background:linear-gradient(135deg,#f4b942,#f39c12);border:none;border-radius:14px;box-shadow:0 4px 24px #f4b94259;color:#0a1628;cursor:pointer;display:inline-flex;font-size:20px;font-weight:700;gap:10px;letter-spacing:.5px;padding:18px 48px;transition:all .3s ease}.cta-btn:hover{box-shadow:0 8px 40px #f4b94280;transform:translateY(-3px) scale(1.03)}@keyframes cta-glow{0%,to{box-shadow:0 4px 24px #f4b94259}50%{box-shadow:0 4px 36px #f4b9428c,0 0 60px #f4b94226}}.landing-footer{background:#0a1628;color:#ffffff80;padding:48px 24px 24px}.landing-footer-inner{grid-gap:40px;display:grid;gap:40px;grid-template-columns:2fr 1fr 1fr;margin:0 auto;max-width:960px}.landing-footer-brand{align-items:center;color:#fff;display:flex;font-size:18px;font-weight:600;gap:8px;margin-bottom:12px}.landing-footer-desc{color:#fff6;font-size:13px;line-height:1.6;margin-bottom:16px}.landing-footer-ffuture{color:#f4b942;font-size:12px;letter-spacing:1px}.landing-footer-title{color:#ffffffb3;font-size:13px;font-weight:600;letter-spacing:1px;margin-bottom:16px;text-transform:uppercase}.landing-footer-link{color:#fff6;cursor:pointer;display:block;font-size:14px;margin-bottom:10px;transition:color .2s}.landing-footer-link:hover{color:#2e86c1}.landing-footer-bottom{border-top:1px solid #ffffff14;color:#ffffff4d;font-size:12px;margin:32px auto 0;max-width:960px;padding-top:24px;text-align:center}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}.fade-in-section{opacity:0;transform:translateY(30px);transition:opacity .7s ease,transform .7s ease}.fade-in-section.visible{opacity:1;transform:translateY(0)}@media (max-width:768px){.hero-title{font-size:32px}.hero-subtitle{font-size:15px}.hero-section{min-height:85vh}.stats-bar-inner{gap:16px;grid-template-columns:repeat(2,1fr)}.section-title,.stat-item-number{font-size:24px}.features-grid,.passport-grid,.programs-grid{grid-template-columns:1fr}.passport-grid{gap:32px}.passport-weeks{grid-template-columns:repeat(4,1fr)}.landing-footer-inner{gap:24px;grid-template-columns:1fr}.hero-orbit:first-child{height:250px;width:250px}.hero-orbit:nth-child(2){height:380px;width:380px}.hero-orbit:nth-child(3){display:none}}@media (max-width:480px){.hero-title{font-size:26px}.hero-actions{align-items:center;flex-direction:column}.hero-btn-primary,.hero-btn-secondary{justify-content:center;width:100%}.passport-weeks{grid-template-columns:repeat(4,1fr)}.cta-title{font-size:24px}.chat-float{bottom:16px;right:16px}.chat-float-menu{bottom:64px;right:0}}.chat-float{bottom:24px;position:fixed;right:24px;z-index:1000}.chat-float-btn{align-items:center;background:linear-gradient(135deg,#1b4f72,#2e86c1);border:none;border-radius:50%;box-shadow:0 4px 20px #1b4f7266;cursor:pointer;display:flex;height:56px;justify-content:center;position:relative;transition:all .3s ease;width:56px}.chat-float-btn:hover{box-shadow:0 6px 28px #1b4f7280;transform:scale(1.08)}.chat-float-btn.open{background:linear-gradient(135deg,#e74c3c,#c0392b);box-shadow:0 4px 20px #e74c3c66}.chat-float-btn svg{transition:transform .3s ease}.chat-float-btn.open svg{transform:rotate(45deg)}.chat-float-ping{animation:chat-ping 2s ease-in-out infinite;background:#e74c3c;border:2px solid #fff;border-radius:50%;height:14px;position:absolute;right:-2px;top:-2px;width:14px}@keyframes chat-ping{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.chat-float-btn.open .chat-float-ping{display:none}.chat-float-menu{bottom:68px;display:flex;flex-direction:column;gap:10px;opacity:0;pointer-events:none;position:absolute;right:0;transform:translateY(12px) scale(.9);transition:all .3s cubic-bezier(.34,1.56,.64,1)}.chat-float-menu.open{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}.chat-float-option{align-items:center;background:#fff;border:none;border-radius:28px;box-shadow:0 4px 16px #0000001f;color:#0a1628;cursor:pointer;display:flex;font-family:inherit;font-size:14px;font-weight:500;gap:10px;padding:10px 20px 10px 12px;transition:all .2s ease;white-space:nowrap}.chat-float-option:hover{box-shadow:0 6px 24px #00000029;transform:translateX(-4px)}.chat-float-option-icon{align-items:center;border-radius:50%;display:flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.chat-float-option-icon.messenger{background:linear-gradient(135deg,#00b2ff,#006aff)}.chat-float-option-icon.zalo{background:#0068ff}.chat-float-option-icon.phone{background:linear-gradient(135deg,#27ae60,#1e8449)}.chat-float-label{background:#0a1628;border-radius:8px;color:#fff;font-size:13px;font-weight:500;opacity:0;padding:6px 14px;pointer-events:none;position:absolute;right:68px;top:50%;transform:translateY(-50%);transition:opacity .2s;white-space:nowrap}.chat-float-btn:not(.open):hover .chat-float-label{opacity:1}.courses-page{background:linear-gradient(180deg,#0a0e27,#141832 40%,#1a1f3d);color:#e8e8f0;min-height:100vh;padding-bottom:80px}.courses-hero{padding:60px 24px 40px;position:relative;text-align:center}.courses-hero h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#f4b942,#e8d5a3 50%,#f4b942);-webkit-background-clip:text;background-clip:text;font-size:40px;font-weight:800;margin-bottom:12px}.courses-hero p{color:#ffffffa6;font-size:18px;line-height:1.6;margin:0 auto;max-width:600px}.courses-filters{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:40px;padding:0 24px}.filter-tab{background:#ffffff0d;border:1px solid #ffffff26;border-radius:24px;color:#ffffffb3;cursor:pointer;font-size:14px;font-weight:500;padding:10px 24px;transition:all .3s ease;white-space:nowrap}.filter-tab:hover{background:#f4b9421a;border-color:#f4b94266;color:#f4b942}.filter-tab.active{background:linear-gradient(135deg,#f4b94233,#f4b9421a);border-color:#f4b942;color:#f4b942;font-weight:600}.programs-container{margin:0 auto;max-width:1200px;padding:0 24px}.program-group{margin-bottom:56px}.program-header{align-items:center;border-bottom:1px solid #ffffff14;display:flex;gap:16px;margin-bottom:24px;padding-bottom:16px}.program-badge{align-items:center;border-radius:12px;color:#fff;display:inline-flex;flex-shrink:0;font-size:20px;font-weight:700;height:48px;justify-content:center;width:48px}.program-info h2{color:#fff;font-size:24px;font-weight:700;margin:0 0 4px}.program-meta{color:#ffffff80;font-size:14px}.courses-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.course-card{background:#ffffff0a;border:1px solid #ffffff14;border-radius:16px;cursor:pointer;overflow:hidden;position:relative;transition:all .3s ease}.course-card:hover{background:#ffffff0f;border-color:#f4b9424d;box-shadow:0 12px 40px #0000004d,0 0 20px #f4b9420d;transform:translateY(-4px)}.course-thumbnail{height:160px;overflow:hidden;position:relative}.course-thumbnail,.course-thumbnail-gradient{align-items:center;display:flex;justify-content:center}.course-thumbnail-gradient{inset:0;position:absolute}.course-thumbnail-icon{font-size:48px;opacity:.3}.course-duration-badge{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;border-radius:8px;color:#fffc;font-size:12px;font-weight:500;padding:4px 10px;position:absolute;right:12px;top:12px}.course-body{padding:20px}.course-body h3{color:#fff;font-size:18px;font-weight:600;line-height:1.4;margin:0 0 8px}.course-body p{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#ffffff8c;display:-webkit-box;font-size:14px;line-height:1.6;margin:0 0 16px;overflow:hidden}.course-footer{align-items:center;display:flex;justify-content:space-between;padding:0 20px 16px}.course-lessons-count{color:#ffffff80;font-size:13px}.course-cta{align-items:center;color:#f4b942;display:flex;font-size:13px;font-weight:600;gap:4px;transition:gap .2s ease}.course-card:hover .course-cta{gap:8px}.courses-empty{color:#fff6;padding:80px 24px;text-align:center}.courses-empty h3{color:#fff9;font-size:20px;margin-bottom:8px}.courses-loading{display:flex;justify-content:center;padding:80px 24px}.courses-cta-section{background:#f4b9420d;border:1px solid #f4b94226;border-radius:20px;margin:60px auto 0;max-width:600px;padding:40px 24px;text-align:center}.courses-cta-section h3{color:#f4b942;font-size:24px;font-weight:700;margin-bottom:8px}.courses-cta-section p{color:#fff9;font-size:15px;margin-bottom:20px}.courses-cta-btn{align-items:center;background:linear-gradient(135deg,#f4b942,#e8a832);border:none;border-radius:12px;color:#0a0e27;cursor:pointer;display:inline-flex;font-size:16px;font-weight:700;gap:8px;padding:12px 32px;transition:all .3s ease}.courses-cta-btn:hover{box-shadow:0 8px 24px #f4b9424d;transform:translateY(-2px)}@media (max-width:768px){.courses-hero{padding:40px 16px 24px}.courses-hero h1{font-size:28px}.courses-hero p{font-size:15px}.courses-filters{gap:8px}.filter-tab{font-size:13px;padding:8px 16px}.programs-container{padding:0 12px}.courses-grid{gap:16px;grid-template-columns:1fr}.program-info h2{font-size:20px}.course-thumbnail{height:120px}.courses-cta-section{margin:40px 12px 0;padding:24px 16px}}header .ant-menu-dark{background-color:inherit;color:#fff}.btn-header-logout{background:#0000!important;background-color:initial!important;color:#fff!important}.ant-menu>li:not(:first-child){border-left:1px solid hsla(0,0%,93%,.232)}.ant-menu-horizontal{line-height:32px}.admin-menu .ant-menu-horizontal{line-height:normal}@media (min-width:768px){.hide-on-desk{display:none}}@media (max-width:768px){.hide-on-mobile{display:none}.header-buttons-desktop,.header-nav-desktop{display:none!important}.header-hamburger{display:inline-flex!important}.main-div.container{margin-top:0!important;padding:8px!important}.passport-grid{gap:10px!important;grid-template-columns:repeat(4,1fr)!important}.next-lesson-btn{max-width:100%!important}.paywall-banner-inner{flex-wrap:wrap}.paywall-banner-inner .ant-btn{margin-top:8px;width:100%}.ai-sandbox-chat{max-height:60vh!important;min-height:180px!important}.lesson-nav-buttons{flex-wrap:wrap}.lesson-nav-buttons .ant-btn{flex:1 1;font-size:13px!important;min-width:0;padding-inline:12px!important}.ant-steps-item-title{display:none!important}.b2b-cta-col{margin-top:16px;text-align:left!important}.b2b-cta-col .ant-btn{width:100%}.ant-btn{min-height:40px}body{overflow-x:hidden}.site-layout-content.container{padding-left:8px!important;padding-right:8px!important}.class-detail-drawer .ant-drawer-content-wrapper,.student-detail-drawer .ant-drawer-content-wrapper{max-width:100vw!important;width:100%!important}.teacher-student-table .ant-table{font-size:13px}}
/*# sourceMappingURL=main.a4f9f3b4.css.map*/