body{padding-top:var(--navbar-h,64px)}body.is-player{padding-top:0;overflow:hidden}.navbar{position:fixed;inset:0 0 auto 0;z-index:200;height:var(--navbar-h,64px);background:#0f172a;border-bottom:1px solid rgba(255,255,255,7%);box-shadow:0 2px 20px rgba(0,0,0,.4)}.navbar .container{max-width:1280px;margin:0 auto;padding:0 1.5rem;height:100%}.nav-inner{display:flex;align-items:center;height:100%;gap:1rem}.logo{display:flex;align-items:center;gap:.55rem;font-size:.94rem;font-weight:700;color:#fff;text-decoration:none;white-space:nowrap;flex-shrink:0;letter-spacing:-.01em;transition:opacity .12s ease}.logo:hover{opacity:.82}.logo-img{width:34px;height:34px;border-radius:50%;object-fit:cover;border:1.5px solid rgba(255,255,255,.18);background:rgba(255,255,255,6%)}.nav-menu{list-style:none;display:flex;align-items:center;gap:.1rem;margin:0;padding:0;margin-left:auto}.nav-menu>li{position:relative}.nav-menu>li>a,.nav-menu>li>.user-trigger{display:inline-flex;align-items:center;gap:.35rem;padding:.42rem .82rem;font-size:.86rem;font-weight:500;color:rgba(255,255,255,.75);text-decoration:none;border-radius:6px;cursor:pointer;white-space:nowrap;transition:color .12s ease,background .12s ease;user-select:none}.nav-menu>li>a:hover,.nav-menu>li>.user-trigger:hover{color:#fff;background:rgba(255,255,255,8%)}.nav-menu>li>a.active{color:#fff;background:rgba(8,145,178,.22)}.nav-menu>li>a.nav-btn-outline{border:1px solid rgba(255,255,255,.25);color:#fff;padding:.38rem .85rem}.nav-menu>li>a.nav-btn-outline:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.5)}.nav-menu>li>a.nav-btn-solid{background:#0891b2;color:#fff;font-weight:700;padding:.38rem .85rem;border:1px solid transparent}.nav-menu>li>a.nav-btn-solid:hover{background:#0e7490}.chevron{width:13px;height:13px;flex-shrink:0;transition:transform .15s ease}.user-menu:hover .chevron,.user-menu:focus-within .chevron{transform:rotate(180deg)}.user-dropdown{position:absolute;top:calc(100% + .5rem);right:0;min-width:190px;background:#1e293b;border:1px solid rgba(255,255,255,.1);border-radius:12px;box-shadow:0 16px 48px rgba(0,0,0,.5);list-style:none;padding:.35rem 0;opacity:0;visibility:hidden;transform:translateY(-8px)scale(.98);transform-origin:top right;transition:opacity .15s ease,transform .15s ease,visibility .15s ease;z-index:300}.user-menu:hover .user-dropdown,.user-menu:focus-within .user-dropdown{opacity:1;visibility:visible;transform:translateY(0)scale(1)}.user-dropdown li{margin:0}.user-dropdown a{display:flex;align-items:center;gap:.5rem;padding:.58rem 1.1rem;font-size:.85rem;font-weight:500;color:rgba(255,255,255,.72);text-decoration:none;transition:background .1s ease,color .1s ease}.user-dropdown a:hover{background:rgba(255,255,255,7%);color:#fff}.user-dropdown li:last-child a{color:#fca5a5;border-top:1px solid rgba(255,255,255,7%);margin-top:.2rem;padding-top:.65rem}.user-dropdown li:last-child a:hover{background:rgba(239,68,68,.1);color:#f87171}.menu-toggle{position:absolute;opacity:0;pointer-events:none}.hamburger-label{display:none;align-items:center;justify-content:center;cursor:pointer;padding:.45rem;border-radius:6px;color:rgba(255,255,255,.8);margin-left:auto;transition:background .12s ease;-webkit-tap-highlight-color:transparent}.hamburger-label:hover{background:rgba(255,255,255,9%)}.hamburger{width:22px;height:22px;display:block}.mobile-menu{position:fixed;top:var(--navbar-h,64px);left:0;right:0;background:#0f172a;border-bottom:1px solid rgba(255,255,255,8%);z-index:199;overflow-y:auto;max-height:calc(100dvh - var(--navbar-h,64px));box-shadow:0 12px 32px rgba(0,0,0,.5);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .18s ease,transform .18s ease,visibility .18s ease}#menu-toggle:checked~.mobile-menu{opacity:1;visibility:visible;transform:translateY(0)}.mobile-menu .container{padding:.6rem 1.5rem 1.25rem}.mobile-link{display:block;padding:.78rem .25rem;font-size:.94rem;font-weight:500;color:rgba(255,255,255,.72);text-decoration:none;border-bottom:1px solid rgba(255,255,255,6%);transition:color .12s ease}.mobile-link:last-child{border-bottom:none}.mobile-link:hover,.mobile-link:active{color:#fff}.mobile-link.strong{font-weight:700;color:#fff}.mobile-user{margin-top:.5rem;padding-top:.5rem;border-top:1px solid rgba(255,255,255,8%)}.mobile-user .mobile-link:last-child{color:#fca5a5;border-bottom:none}#menu-toggle:checked~.navbar .hamburger-label .hamburger{}@media(max-width:768px){.nav-menu{display:none}.hamburger-label{display:flex}}@media(min-width:769px){.mobile-menu{display:none!important}}.footer{background:#0f172a;color:rgba(255,255,255,.6);padding:3.5rem 0 0;border-top:1px solid rgba(255,255,255,6%)}.footer .container{max-width:1280px;margin:0 auto;padding:0 1.5rem}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:2.5rem;padding-bottom:2.75rem;border-bottom:1px solid rgba(255,255,255,7%)}@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr;gap:2rem}}@media(max-width:540px){.footer-grid{grid-template-columns:1fr;gap:1.75rem}}.footer-logo{display:inline-flex;align-items:center;gap:.6rem;font-size:.96rem;font-weight:700;color:rgba(255,255,255,.92);text-decoration:none;margin-bottom:.9rem;transition:opacity .12s ease}.footer-logo:hover{opacity:.8}.footer-logo-img{width:34px;height:34px;border-radius:50%;object-fit:cover;border:1.5px solid rgba(255,255,255,.18)}.footer-desc{font-size:.83rem;color:rgba(255,255,255,.48);line-height:1.8;max-width:270px}.footer-col-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:rgba(255,255,255,.38);margin-bottom:1rem}.footer-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.55rem}.footer-links a{display:inline-flex;align-items:center;gap:.35rem;font-size:.84rem;color:rgba(255,255,255,.52);text-decoration:none;transition:color .12s ease}.footer-links a::before{content:'›';color:#0891b2;font-size:1rem;line-height:1}.footer-links a:hover{color:#fff}.footer-contact{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.65rem}.footer-contact li{font-size:.83rem;color:rgba(255,255,255,.48);line-height:1.55;padding-left:.05rem}.footer-contact a{color:#0891b2;text-decoration:none;transition:color .12s ease}.footer-contact a:hover{color:#38bdf8}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;padding:1.2rem 0}.footer-bottom p{font-size:.76rem;color:rgba(255,255,255,.28);margin:0}:root{--player-bar-h:52px;--player-bg:#0a0a0b;--player-sidebar-bg:#141416;--player-border:rgba(255,255,255,.06)}.course-progress-bar{position:fixed;top:0;left:0;right:0;z-index:150;height:var(--player-bar-h);background:#1a1a1c;border-bottom:1px solid rgba(255,255,255,7%);display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0 1.25rem;box-shadow:0 2px 12px rgba(0,0,0,.4)}.course-progress-bar .progress-info{display:flex;align-items:center;gap:1rem;flex:1;min-width:0}.course-progress-bar h1{font-size:.9rem;font-weight:600;color:#fff;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:360px}.course-progress-bar .progress{display:flex;align-items:center;gap:.55rem;flex-shrink:0}.course-progress-bar .progress>span{font-size:.72rem;font-weight:600;color:rgba(255,255,255,.45);white-space:nowrap}.course-progress-bar .progress-fill{width:110px;height:4px;background:rgba(255,255,255,.1);border-radius:99px;overflow:hidden;position:relative}.course-progress-bar .progress-fill::after{content:'';position:absolute;inset:0;background:#0891b2;border-radius:99px;width:inherit}.btn-outline-small{display:inline-flex;align-items:center;gap:.35rem;padding:.38rem .9rem;font-size:.78rem;font-weight:600;color:rgba(255,255,255,.72);background:rgba(255,255,255,8%);border:1px solid rgba(255,255,255,.16);border-radius:6px;text-decoration:none;white-space:nowrap;flex-shrink:0;transition:background .12s ease,color .12s ease}.btn-outline-small:hover{background:rgba(255,255,255,.15);color:#fff}.btn-rate-bar{display:inline-flex;align-items:center;gap:.38rem;padding:.38rem .9rem;font-size:.78rem;font-weight:700;color:#fbbf24;background:rgba(251,191,36,.12);border:1px solid rgba(251,191,36,.28);border-radius:6px;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background .12s ease;font-family:var(--font,system-ui)}.btn-rate-bar:hover{background:rgba(251,191,36,.22)}.btn-rate-bar svg{width:15px;height:15px}.course-player{position:fixed;top:52px;left:0;right:0;bottom:0;background:var(--player-bg);display:flex;flex-direction:column}.course-layout{display:grid;grid-template-columns:1fr 300px;height:100%;overflow:hidden}.course-main{display:flex;flex-direction:column;overflow-y:auto;background:var(--player-bg);min-width:0}.course-sidebar{background:var(--player-sidebar-bg);border-left:1px solid var(--player-border);display:flex;flex-direction:column;overflow:auto}.course-sidebar>aside{display:contents}#capitulos-container{display:flex;flex-direction:column;overflow:hidden;height:100%}#capitulos-container>aside{display:contents}.course-sidebar h2,.modules-accordion~h2{display:none}aside.course-sidebar>h2{display:block;padding:.85rem 1.1rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.35);border-bottom:1px solid var(--player-border);margin:0;flex-shrink:0}.modules-accordion{flex:1;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.1)transparent}.modules-accordion::-webkit-scrollbar{width:4px}.modules-accordion::-webkit-scrollbar-thumb{background:rgba(255,255,255,.12);border-radius:99px}.module{border-bottom:1px solid rgba(255,255,255,4%)}.module-title{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.7rem 1.1rem;font-size:.82rem;font-weight:600;color:rgba(0,0,0,.7);cursor:pointer;user-select:none;transition:background .1s ease,color .1s ease;-webkit-tap-highlight-color:transparent}.module-title:hover{background:rgba(255,255,255,4%);color:rgba(0,0,0,.9)}.module-title::-webkit-details-marker{display:none}.module-progress{font-size:.68rem;font-weight:700;color:rgba(255,255,255,.3);background:rgba(255,255,255,7%);padding:.12rem .5rem;border-radius:99px;flex-shrink:0;min-width:2.5rem;text-align:center}.lessons-list{list-style:none;padding:0;margin:0}.lesson{border-bottom:1px solid rgba(255,255,255,3%);background:rgb(255,255,255,.9)}.lesson a,.lesson button{display:flex;align-items:flex-start;gap:.6rem;width:100%;padding:.52rem 1.1rem .52rem 1.5rem;font-size:.8rem;line-height:1.45;color:rgba(255,255,255,.52);text-decoration:none;background:0 0;border:none;cursor:pointer;font-family:var(--font,system-ui);text-align:left;transition:color .1s ease,background .1s ease}.lesson a:hover,.lesson button:hover{color:rgba(255,255,255,.88);background:rgba(255,255,255,4%)}.lesson.completed>a,.lesson.completed>button{color:rgba(110,231,183,.75)}.lesson.completed>a::before,.lesson.completed>button::before{content:'✓';font-size:.7rem;color:#6ee7b7;flex-shrink:0;margin-top:.12rem}.lesson.active>a,.lesson.active>button{background:rgba(8,145,178,.18);color:#fff;font-weight:600}.lesson.active>a::before,.lesson.active>button::before{content:'▶';font-size:.55rem;color:#0891b2;flex-shrink:0;margin-top:.18rem}.lesson-video{background:#000;flex-shrink:0;line-height:0}.lesson-video video{width:100%;max-height:56vh;display:block;object-fit:contain}.lesson-content{flex:1;padding:1.5rem 1.75rem 2rem;background:#fff;overflow-y:auto;color:#18181b}.lesson-content h2{font-size:1.1rem;font-weight:700;color:#18181b;margin:0 0 .35rem;line-height:1.3}.lesson-desc{font-size:.88rem;color:#52525b;margin-bottom:1.1rem}.lesson-materials{background:#f4f4f5;border:1px solid #e4e4e7;border-radius:10px;padding:.9rem 1rem;margin-bottom:1.1rem}.lesson-materials h3{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#a1a1aa;margin-bottom:.5rem}.lesson-materials ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.3rem}.lesson-materials li{font-size:.84rem}.lesson-materials a{color:#0891b2;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:.35rem;transition:color .12s ease}.lesson-materials a:hover{color:#0e7490;text-decoration:underline}.lesson-materials a::before{content:'📎';font-size:.82rem}.lesson-navigation{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:1.1rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.42rem;padding:.6rem 1.25rem;font-size:.875rem;font-weight:600;line-height:1;border:none;border-radius:8px;cursor:pointer;text-decoration:none;white-space:nowrap;font-family:var(--font,system-ui);transition:background .12s ease,box-shadow .12s ease,transform .12s ease}.btn:active{transform:scale(.97)}.btn.large{padding:.78rem 1.7rem;font-size:.95rem}.btn.full{width:100%}.btn svg{width:17px;height:17px}.btn-primary{background:#4f46e5;color:#fff;box-shadow:0 1px 4px rgba(79,70,229,.3)}.btn-primary:hover{background:#4338ca;box-shadow:0 4px 12px rgba(79,70,229,.4)}.btn-success{background:#059669;color:#fff}.btn-success:hover{background:#047857}.btn-cyan{background:#0891b2;color:#fff}.btn-cyan:hover{background:#0e7490}.btn-dark{background:#27272a;color:#fff}.btn-dark:hover{background:#18181b}.btn-completed-done{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0;cursor:default;gap:.4rem}.btn-completed-done::before{content:'✓';font-weight:800}.btn-rate-course{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1.1rem;font-size:.83rem;font-weight:700;background:#fffbeb;color:#92400e;border:1px solid #fcd34d;border-radius:8px;cursor:pointer;font-family:var(--font,system-ui);transition:background .12s ease}.btn-rate-course:hover{background:#fef3c7}.btn-rate-course svg{width:16px;height:16px}.qa-section{margin-top:2rem}.qa-title{font-size:.97rem;font-weight:700;color:#18181b;padding-bottom:.85rem;border-bottom:2px solid #e4e4e7;margin-bottom:1.1rem}.qa-form{margin-bottom:1.5rem}.qa-textarea{width:100%;padding:.72rem .95rem;border:1px solid #e4e4e7;border-radius:10px;font-size:.88rem;font-family:var(--font,system-ui);color:#18181b;background:#fff;resize:vertical;min-height:90px;outline:none;transition:border-color .12s ease,box-shadow .12s ease;display:block;margin-bottom:.55rem}.qa-textarea:focus{border-color:#0891b2;box-shadow:0 0 0 3px rgba(8,145,178,.12)}.qa-textarea::placeholder{color:#a1a1aa}.qa-submit{padding:.52rem 1.25rem;background:#27272a;color:#fff;border:none;border-radius:6px;font-size:.84rem;font-weight:600;cursor:pointer;font-family:var(--font,system-ui);transition:background .12s ease}.qa-submit:hover{background:#18181b}.qa-messages{display:flex;flex-direction:column;gap:1rem}.qa-message{background:#fafafa;border:1px solid #e4e4e7;border-radius:12px;padding:.9rem 1.1rem}.qa-message-name{font-size:.87rem;font-weight:700;color:#18181b;margin:0 0 .1rem}.qa-message-date{font-size:.71rem;font-weight:600;color:#0e7490;margin-bottom:.5rem}.qa-message-text{font-size:.86rem;color:#52525b;line-height:1.6;margin:0}.qa-reply{margin-top:.75rem;padding:.75rem .9rem;background:#e0f2fe;border-left:3px solid #0891b2;border-radius:0 8px 8px 0}.qa-reply-name{font-size:.84rem;font-weight:700;color:#075985;margin-bottom:.05rem}.qa-reply-date{font-size:.7rem;color:#0284c7;font-weight:500}.qa-reply-text{font-size:.83rem;color:#0c4a6e;line-height:1.55;margin-top:.2rem}.rating-overlay{position:fixed;inset:0;background:rgba(0,0,0,.65);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:500;padding:1rem}.rating-modal{background:#fff;border-radius:20px;padding:2.25rem 2rem;width:100%;max-width:420px;box-shadow:0 24px 64px rgba(0,0,0,.25);animation:popIn .22s cubic-bezier(.34,1.56,.64,1)both}@keyframes popIn{from{opacity:0;transform:scale(.92)translateY(12px)}to{opacity:1;transform:scale(1)translateY(0)}}.rating-modal h2{font-size:1.2rem;font-weight:800;color:#18181b;margin:0 0 1.5rem;text-align:center}.stars-row{display:flex;justify-content:center;gap:.3rem;margin-bottom:1.25rem}.star-btn{font-size:2.75rem;background:0 0;border:none;cursor:pointer;color:#d4d4d8;line-height:1;padding:.05rem;transition:color .1s ease,transform .1s ease}.star-btn:hover{transform:scale(1.18)}.star-btn.active{color:#eab308}.rating-comment{width:100%;padding:.72rem .9rem;border:1px solid #e4e4e7;border-radius:10px;font-size:.88rem;font-family:var(--font,system-ui);resize:vertical;min-height:88px;outline:none;color:#18181b;margin-bottom:1.25rem;transition:border-color .12s ease,box-shadow .12s ease}.rating-comment:focus{border-color:#0891b2;box-shadow:0 0 0 3px rgba(8,145,178,.12)}.rating-comment::placeholder{color:#a1a1aa}.rating-actions{display:flex;justify-content:flex-end;gap:.65rem}.btn-cancel-rating{background:#f4f4f5;color:#52525b;border:1px solid #e4e4e7;padding:.55rem 1.1rem;border-radius:8px;font-size:.84rem;font-weight:600;cursor:pointer;font-family:var(--font,system-ui);transition:background .12s ease}.btn-cancel-rating:hover{background:#e4e4e7}.certificate-section{padding:1.75rem;text-align:center;background:linear-gradient(135deg,#ecfdf5,#e0f2fe);border:1px solid #a7f3d0;border-radius:16px;margin-top:1.75rem}.certificate-icon{width:52px;height:52px;margin:0 auto .8rem;display:block}.certificate-section h3{font-size:1.1rem;font-weight:800;margin-bottom:.45rem}.certificate-section p{font-size:.89rem;margin-bottom:.9rem;line-height:1.6}.blocked-container{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem;background:#f4f4f5}.blocked-card{background:#fff;border:1px solid #e4e4e7;border-radius:20px;padding:3rem 2.25rem;text-align:center;max-width:400px;box-shadow:0 12px 32px rgba(0,0,0,.1)}.blocked-card svg{width:52px;height:52px;margin:0 auto 1rem;color:#e11d48}.blocked-card h2{font-size:1.2rem;font-weight:800;margin-bottom:.65rem}.blocked-card p{font-size:.9rem;color:#52525b;margin-bottom:1.5rem;line-height:1.6}.blocked-actions{display:flex;flex-direction:column;gap:.6rem}@keyframes spin{to{transform:rotate(360deg)}}.spinner-sm{width:26px;height:26px;animation:spin .75s linear infinite;display:block;margin:0 auto .6rem}@media(max-width:900px){.course-layout{grid-template-columns:1fr;grid-template-rows:1fr auto}.course-main{overflow-y:auto}.course-sidebar{border-left:none;border-top:1px solid var(--player-border);max-height:40vh;overflow-y:auto}.lesson-video video{max-height:42vw}}@media(max-width:640px){.course-progress-bar h1{font-size:.82rem;max-width:160px}.course-progress-bar .progress{display:none}.btn-rate-bar span{display:none}.lesson-content{padding:1.1rem 1rem 1.5rem}.rating-modal{padding:1.75rem 1.25rem}}