@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;0,800;1,400;1,600;1,700&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap");:root{--bg-base:#faf8f5;--bg-main:#faf8f5;--bg-dark:#f3eee7;--bg-mid:#fdfbf9;--bg-card:#fff;--bg-card-hover:#fff;--bg-surface:#f4efe6;--navy:#0f172a;--navy-dark:#090d16;--navy-light:#1e293b;--navy-glow:rgba(15,23,42,.08);--gold:#b89047;--gold-bright:#c9a358;--gold-dark:#8c6a29;--gold-glow:rgba(184,144,71,.15);--gold-glow-intense:rgba(184,144,71,.25);--forest:#14532d;--forest-light:#166534;--green:#15803d;--green-glow:rgba(21,128,61,.12);--purple:#3b2864;--purple-bright:#583d94;--purple-glow:rgba(59,40,100,.1);--purple-border:rgba(59,40,100,.18);--cyan:#0e7490;--cyan-glow:rgba(14,116,144,.12);--text-main:#0f172a;--text-muted:#52525b;--text-dim:#71717a;--text-gold:#967432;--border:rgba(15,23,42,.08);--border-mid:rgba(15,23,42,.14);--border-gold:rgba(184,144,71,.3);--border-purple:rgba(59,40,100,.18);--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:20px;--radius-full:9999px;--font-ui:"Plus Jakarta Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-serif:"Playfair Display",Georgia,serif;--font-sans:"Plus Jakarta Sans",system-ui,sans-serif;--shadow-card:0 2px 12px rgba(15,23,42,.04),0 1px 3px rgba(15,23,42,.02);--shadow-hover:0 12px 32px rgba(15,23,42,.08),0 2px 6px rgba(15,23,42,.03);--shadow-gold:0 4px 16px rgba(184,144,71,.15);--shadow-glow-lg:0 8px 32px rgba(15,23,42,.08)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body,html{background:var(--bg-base);color:var(--text-main);font-family:var(--font-ui);overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;outline:none;background:none}img{max-width:100%}body:before{content:"";position:fixed;top:0;left:0;right:0;height:480px;background:radial-gradient(ellipse 80% 60% at 50% -10%,rgba(184,144,71,.05) 0,transparent 80%);z-index:-1;pointer-events:none}.serif{font-family:var(--font-serif)}.font-ui{font-family:var(--font-ui)}.gold-text{color:var(--text-gold);background:linear-gradient(135deg,#b89047,#8c6a29);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.navy-text{color:var(--navy)}.purple-text{color:var(--purple-bright)}.cyan-text{color:var(--cyan)}.glass-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:transform .25s cubic-bezier(.16,1,.3,1),border-color .25s ease,box-shadow .25s ease}.glass-panel:hover{border-color:var(--border-mid);box-shadow:var(--shadow-hover)}.glass-gold{background:#fff;border:1px solid var(--border-gold);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.glass-purple{background:#fff;border:1px solid var(--border-purple);border-radius:var(--radius-lg)}.btn-executive,.btn-gold{background:var(--navy);color:#fff;font-weight:700;font-size:15px;padding:13px 28px;border-radius:var(--radius-md);border:1px solid rgba(184,144,71,.4);box-shadow:0 2px 8px rgba(15,23,42,.12);transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex;align-items:center;justify-content:center;gap:9px;position:relative;letter-spacing:.2px}.btn-executive:hover,.btn-gold:hover{background:#1e293b;border-color:var(--gold);transform:translateY(-1px);box-shadow:0 6px 18px rgba(15,23,42,.16);color:#fff}.btn-executive:active,.btn-gold:active{transform:scale(.98)}.btn-bronze{background:linear-gradient(135deg,#b89047,#967432);color:#fff;font-weight:700;font-size:14px;padding:12px 24px;border-radius:var(--radius-md);box-shadow:0 2px 10px rgba(184,144,71,.2);transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-bronze:hover{filter:brightness(1.05);transform:translateY(-1px)}.btn-outline{background:#fff;color:var(--text-main);font-weight:600;font-size:14px;padding:11px 22px;border-radius:var(--radius-md);border:1px solid var(--border-mid);box-shadow:0 1px 3px rgba(0,0,0,.05);transition:all .25s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-outline:hover{background:#f3f0e6;border-color:var(--border-gold);transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--text-muted);font-size:14px;padding:8px 14px;border-radius:var(--radius-sm);transition:all .2s ease}.btn-ghost:hover{background:hsla(0,0%,100%,.06);color:var(--text-main)}.btn-danger{background:rgba(239,68,68,.12);color:#f87171;border:1px solid rgba(239,68,68,.28);font-weight:600;padding:9px 16px;border-radius:var(--radius-md);transition:all .2s ease;display:inline-flex;align-items:center;gap:6px}.btn-danger:hover{background:rgba(239,68,68,.22)}.inp{background:#fff;border:1px solid var(--border-mid);color:var(--text-main);padding:12px 16px;border-radius:var(--radius-md);font-size:14px;font-family:var(--font-ui);width:100%;transition:all .2s ease;box-shadow:0 1px 3px rgba(0,0,0,.03)}.inp:focus{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-glow);outline:none}.inp::placeholder{color:var(--text-dim)}.badge-bronze,.badge-gold{background:rgba(184,144,71,.08);color:#8c6a29;border:1px solid rgba(184,144,71,.28);border-radius:var(--radius-full);letter-spacing:.6px;text-transform:uppercase;display:inline-flex;align-items:center;gap:5px}.badge-bronze,.badge-gold,.badge-purple{padding:4px 12px;font-size:11px;font-weight:700}.badge-purple{background:rgba(59,40,100,.08);color:var(--purple-bright);border:1px solid var(--border-purple);border-radius:var(--radius-full);letter-spacing:.5px}.badge-forest,.badge-green{background:rgba(20,83,45,.08);color:var(--forest);border:1px solid rgba(20,83,45,.25);border-radius:var(--radius-full);letter-spacing:.4px}.badge-cyan,.badge-forest,.badge-green{padding:4px 12px;font-size:11px;font-weight:700}.badge-cyan{background:rgba(14,116,144,.08);color:var(--cyan);border:1px solid rgba(14,116,144,.22);border-radius:var(--radius-full)}.xp-bar-track{background:rgba(15,23,42,.06);height:6px;overflow:hidden}.xp-bar-fill,.xp-bar-track{border-radius:var(--radius-full);position:relative}.xp-bar-fill{height:100%;background:var(--navy);transition:width .8s cubic-bezier(.16,1,.3,1)}.level-badge{width:34px;height:34px;border-radius:50%;background:var(--navy);display:grid;place-items:center;font-weight:800;font-size:13px;color:#fff;border:1px solid var(--border-gold);flex-shrink:0}.streak-fire{display:inline-flex;align-items:center;gap:4px;background:rgba(184,144,71,.1);border:1px solid rgba(184,144,71,.25);padding:3px 10px;border-radius:var(--radius-full);font-size:11px;font-weight:700;color:var(--text-gold)}.app-header{position:-webkit-sticky;position:sticky;top:0;z-index:100;background:hsla(36,33%,97%,.94);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border);padding:0 32px;display:flex;justify-content:space-between;align-items:center;height:68px;transition:all .25s ease}.app-header.scrolled{background:#fff;border-bottom-color:var(--border-mid);box-shadow:0 2px 12px rgba(15,23,42,.04)}.brand-title{display:flex;align-items:center;gap:12px;font-weight:700;font-family:var(--font-ui)}.brand-icon{width:38px;height:38px;border-radius:8px;background:var(--navy);border:1px solid var(--border-gold);display:grid;place-items:center;font-weight:800;font-size:19px;color:#fff;position:relative;overflow:hidden}.nav-group{display:flex;align-items:center;gap:22px}.nav-link{color:var(--text-muted);font-size:13.5px;font-weight:500;transition:color .2s ease;position:relative}.nav-link:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:1.5px;background:var(--gold);transition:width .2s ease;border-radius:1px}.nav-link:hover{color:var(--navy)}.nav-link:hover:after{width:100%}.hero-section{position:relative;padding:84px 24px 60px;max-width:1160px;margin:0 auto;text-align:center;overflow:hidden}.hero-content{position:relative;z-index:1}.courses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));grid-gap:24px;gap:24px}.course-card{display:flex;flex-direction:column;overflow:hidden;position:relative;background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .25s ease,border-color .25s ease}.course-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover);border-color:var(--border-gold)}.course-thumb-wrapper{position:relative;width:100%;height:195px;overflow:hidden;background:var(--navy)}.course-thumb{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.16,1,.3,1)}.course-card:hover .course-thumb{transform:scale(1.04)}.course-overlay{position:absolute;top:12px;left:12px;right:12px;display:flex;justify-content:space-between;align-items:flex-start}.course-xp-badge{position:absolute;bottom:12px;right:12px;background:rgba(15,23,42,.9);border:1px solid rgba(184,144,71,.4);padding:3px 10px;border-radius:var(--radius-full);font-size:11px;font-weight:700;color:#fff}.module-accordion{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.module-header{display:flex;align-items:center;gap:12px;padding:14px 16px;cursor:pointer;background:#fff;transition:background .2s ease}.module-header:hover{background:#f5f2e9}.module-icon{width:32px;height:32px;border-radius:8px;background:rgba(124,58,237,.08);border:1px solid var(--border-purple);display:grid;place-items:center;font-size:14px;flex-shrink:0}.module-lessons{border-top:1px solid var(--border);background:#faf8f3}.lesson-row{display:flex;align-items:center;gap:12px;padding:11px 16px;border-bottom:1px solid var(--border);cursor:pointer;transition:background .2s ease;font-size:13.5px}.lesson-row:last-child{border-bottom:none}.lesson-row:hover{background:rgba(196,145,15,.06)}.lesson-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.checkout-step-indicator{display:flex;align-items:center;gap:8px;margin-bottom:28px}.step-dot{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:800;transition:all .3s ease}.step-dot.active{background:var(--gold);color:#060710;box-shadow:0 0 12px var(--gold-glow)}.step-dot.done{background:var(--green);color:#060710}.step-dot.pending{background:hsla(0,0%,100%,.06);color:var(--text-dim);border:1px solid var(--border-mid)}.step-line{flex:1 1;height:2px;background:var(--border-mid);border-radius:1px;overflow:hidden}.step-line.done{background:var(--gold)}.card-flip-container{perspective:1000px;margin-bottom:20px}.card-flip-inner{position:relative;height:180px;transition:transform .7s cubic-bezier(.4,0,.2,1);transform-style:preserve-3d}.card-flip-inner.flipped{transform:rotateY(180deg)}.card-face{position:absolute;inset:0;border-radius:var(--radius-lg);backface-visibility:hidden;-webkit-backface-visibility:hidden;padding:24px;display:flex;flex-direction:column;justify-content:space-between}.card-face-front{background:linear-gradient(135deg,#1a1f3a,#2d1b69);border:1px solid var(--border-purple)}.card-face-back{background:linear-gradient(135deg,#1a2a1a,#0f3a2a);border:1px solid rgba(74,222,128,.3);transform:rotateY(180deg)}.pix-qr-box{background:#fff;border-radius:var(--radius-md);padding:16px;display:grid;place-items:center;width:160px;height:160px;margin:0 auto}.countdown-ring{animation:countdownRing 60s linear forwards}@keyframes countdownRing{0%{stroke-dashoffset:0}to{stroke-dashoffset:283}}.confetti-particle{position:absolute;border-radius:2px;animation:confettiFall 3s ease-in forwards}@keyframes confettiFall{0%{opacity:1;transform:translateY(-20px) rotate(0deg)}to{opacity:0;transform:translateY(300px) rotate(2turn)}}.lb-row{display:flex;align-items:center;gap:14px;padding:13px 16px;border-radius:var(--radius-md);transition:background .2s ease}.lb-row:hover{background:hsla(0,0%,100%,.04)}.lb-rank{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:800;flex-shrink:0}.lb-rank-1{background:linear-gradient(135deg,#fbbf24,#d97706);color:#060710;box-shadow:0 0 10px rgba(251,191,36,.5)}.lb-rank-2{background:linear-gradient(135deg,#cbd5e1,#94a3b8);color:#060710}.lb-rank-3{background:linear-gradient(135deg,#fb923c,#ea580c);color:#fff}.lb-rank-n{background:hsla(0,0%,100%,.07);color:var(--text-muted)}.badge-unlock-overlay{position:fixed;inset:0;background:rgba(0,0,0,.85);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:500;display:grid;place-items:center;animation:fadeIn .3s ease}.badge-unlock-card{background:var(--bg-card);border:1px solid var(--border-gold);border-radius:var(--radius-xl);padding:48px 40px;text-align:center;max-width:380px;position:relative;overflow:hidden;animation:popIn .5s cubic-bezier(.16,1,.3,1);box-shadow:0 0 60px rgba(245,200,66,.2)}@keyframes popIn{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.badge-icon-glow{font-size:72px;display:block;margin-bottom:20px;animation:badgeBounce .6s cubic-bezier(.34,1.56,.64,1) .3s both;filter:drop-shadow(0 0 20px rgba(245,200,66,.8))}@keyframes badgeBounce{0%{transform:scale(0) rotate(-15deg)}to{transform:scale(1) rotate(0deg)}}.modal-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.55);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:200;display:grid;place-items:center;padding:20px;animation:fadeIn .25s ease}.modal-content{width:100%;max-width:960px;max-height:92vh;overflow-y:auto;animation:modalSlideIn .35s cubic-bezier(.16,1,.3,1)}.modal-content::-webkit-scrollbar{width:4px}.modal-content::-webkit-scrollbar-thumb{background:#262938;border-radius:2px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.94) translateY(16px)}to{opacity:1;transform:scale(1) translateY(0)}}.skeleton{background:linear-gradient(90deg,#0f1020 25%,#1a1d35 37%,#0f1020 63%);background-size:400% 100%;animation:skeletonShimmer 1.6s ease infinite;border-radius:6px}@keyframes skeletonShimmer{0%{background-position:100% 50%}to{background-position:0 50%}}.skeleton-thumb{width:100%;height:195px}.skeleton-text{height:14px}.skeleton-btn{height:40px;border-radius:var(--radius-md)}.fade-in-up{opacity:0;transform:translateY(32px);transition:opacity .7s cubic-bezier(.4,0,.2,1),transform .7s cubic-bezier(.4,0,.2,1)}.fade-in-up.visible{opacity:1;transform:translateY(0)}.slide-in-left{opacity:0;transform:translateX(-40px);transition:opacity .7s ease,transform .7s ease}.slide-in-left.visible{opacity:1;transform:translateX(0)}.slide-in-right{opacity:0;transform:translateX(40px);transition:opacity .7s ease,transform .7s ease}.slide-in-right.visible{opacity:1;transform:translateX(0)}.zoom-in{opacity:0;transform:scale(.88);transition:opacity .6s ease,transform .6s cubic-bezier(.34,1.56,.64,1)}.zoom-in.visible{opacity:1;transform:scale(1)}.delay-100{transition-delay:.1s}.delay-200{transition-delay:.2s}.delay-300{transition-delay:.3s}.delay-400{transition-delay:.4s}.delay-500{transition-delay:.5s}.float-element{animation:floatAnim 4s ease-in-out infinite}@keyframes floatAnim{0%,to{transform:translateY(0)}50%{transform:translateY(-9px)}}::-webkit-scrollbar-track{background:var(--bg-base)}::-webkit-scrollbar-thumb{background:#1e2038;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--gold-dark)}@media print{body *{visibility:hidden}#certificate-print-area,#certificate-print-area *{visibility:visible}#certificate-print-area{position:absolute;left:0;top:0;width:100%;background:#fff!important;color:#000!important}}.modal-body-grid{display:grid;grid-template-columns:1fr 300px;grid-gap:28px;gap:28px;padding:28px}.modal-banner-hero{position:relative;width:100%;height:240px;overflow:hidden;background:#0a0b10}.modal-banner-title{font-size:26px;color:#fff;margin:0;line-height:1.2}.hero-instructor-card{display:inline-flex;align-items:center;gap:12px;padding:10px 20px;margin-top:40px;border:1px solid var(--border-gold);background:var(--bg-card);border-radius:var(--radius-full);max-width:100%;box-shadow:0 4px 20px rgba(0,0,0,.05);box-sizing:border-box}.mobile-bottom-nav{display:none;position:fixed;bottom:0;left:0;right:0;z-index:990;background:hsla(36,33%,97%,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid rgba(15,23,42,.09);padding:6px 10px max(10px,env(safe-area-inset-bottom));box-shadow:0 -4px 24px rgba(15,23,42,.07);justify-content:space-around;align-items:center}.mobile-nav-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;flex:1 1;min-width:0;min-height:48px;padding:4px;border-radius:var(--radius-md);color:var(--text-muted);font-size:11px;font-weight:600;letter-spacing:.01em;transition:all .2s cubic-bezier(.16,1,.3,1);text-decoration:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;background:transparent;border:none;cursor:pointer;-webkit-tap-highlight-color:transparent}.mobile-nav-btn:active{transform:scale(.93)}.mobile-nav-btn.active,.mobile-nav-btn:hover{color:var(--navy)}.mobile-nav-icon-wrap{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;transition:all .2s cubic-bezier(.16,1,.3,1)}.mobile-nav-btn.active .mobile-nav-icon-wrap{color:#fff;background:var(--navy);box-shadow:0 2px 8px rgba(15,23,42,.18)}.mobile-nav-btn.featured .mobile-nav-icon-wrap{color:#fff;background:linear-gradient(135deg,#b89047,#8c6a29);box-shadow:0 3px 10px rgba(184,144,71,.35)}.sheet-drag-handle{width:40px;height:4px;border-radius:2px;background:rgba(15,23,42,.18);margin:10px auto 14px;display:block}@keyframes sheetSlideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@media (max-width:1024px){.courses-grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr))}}@media (max-width:768px){.mobile-bottom-nav{display:flex}body,main{padding-bottom:calc(72px + env(safe-area-inset-bottom, 12px))!important}.app-header{padding:0 16px;flex-direction:row;justify-content:space-between;align-items:center;height:60px;gap:0}.nav-group .nav-link{display:none}.nav-group{display:flex;align-items:center;gap:8px;padding:0;border-top:none;overflow-x:visible}.hero-section{padding:36px 16px 28px;max-width:100%;overflow-x:hidden}.hero-instructor-card{padding:8px 14px!important;gap:10px!important;margin-top:24px!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important}.courses-grid{grid-template-columns:1fr;gap:18px}.modal-backdrop{padding:0!important;align-items:flex-end!important;background:rgba(15,23,42,.6)!important;-webkit-backdrop-filter:blur(8px)!important;backdrop-filter:blur(8px)!important}.modal-content{max-height:88dvh!important;border-radius:24px 24px 0 0!important;width:100%!important;margin:0!important;animation:sheetSlideUp .28s cubic-bezier(.16,1,.3,1)!important;box-shadow:0 -8px 32px rgba(15,23,42,.2)!important}.modal-body-grid{grid-template-columns:1fr!important;gap:16px!important;padding:16px 16px 24px!important}.modal-banner-hero{height:160px!important}.modal-banner-title{font-size:20px!important}.btn-executive,.btn-gold,.btn-outline{min-height:48px;font-size:14px;width:100%}.header-admin-btn{display:none!important}.hero-cta-group{flex-direction:column!important;align-items:stretch!important}.hero-cta-group .btn-gold,.hero-cta-group .btn-outline{width:100%!important}}.hero-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));grid-gap:16px;gap:16px;max-width:860px;margin:48px auto 0;width:100%}@media (max-width:768px){.hero-metrics-grid{grid-template-columns:repeat(2,1fr)!important;gap:10px!important;margin-top:28px!important}}@media (max-width:480px){.hero-section{padding:24px 14px 20px}.btn-gold,.btn-outline{font-size:13.5px;padding:12px 18px}.glass-panel{border-radius:var(--radius-md)}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:rgba(0,0,0,.03)}::-webkit-scrollbar-thumb{background:rgba(196,145,15,.35);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:rgba(196,145,15,.6)}*{scrollbar-width:thin;scrollbar-color:rgba(196,145,15,.35) rgba(0,0,0,.03)}.course-player-grid{display:grid;grid-template-columns:1fr 340px;grid-gap:24px;gap:24px;align-items:start}.admin-form-grid{display:grid;grid-template-columns:400px 1fr;grid-gap:32px;gap:32px}.admin-lessons-grid{display:grid;grid-template-columns:440px 1fr;grid-gap:32px;gap:32px}.admin-students-grid{display:grid;grid-template-columns:360px 1fr;grid-gap:32px;gap:32px}@media (max-width:960px){.admin-form-grid,.admin-lessons-grid,.admin-students-grid,.course-player-grid{grid-template-columns:1fr!important;gap:20px!important}}.btn-gold,.btn-outline{min-height:44px;transition:all .2s cubic-bezier(.16,1,.3,1)}.btn-gold:active,.btn-outline:active{transform:scale(.98)}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.spin{animation:spin .8s linear infinite}