body:has(.lesson-viewer){margin:0;padding:0;overflow:hidden;overflow:clip;height:100vh;height:100dvh}html:has(.lesson-viewer){overflow:hidden;overflow:clip}.lesson-viewer{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:52px 1fr;height:100vh;height:100dvh;width:100vw;overflow:hidden;overflow:clip;position:fixed;top:0;left:0}header.content-header{position:static!important;left:auto!important;top:auto!important;transform:none!important}.content-header{grid-column:2;grid-row:1;width:auto;height:52px;padding:0 20px;background:rgba(10,14,57,.72);border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:14px;z-index:100;backdrop-filter:blur(14px)}.lesson-title-section{flex:1;min-width:0}.current-lesson-title{font-size:.875rem;font-weight:800;letter-spacing:-.01em;color:#ECEEFB;margin:0;line-height:1.25}.current-chapter-name,.current-lesson-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.current-chapter-name{font-family:JetBrains Mono,monospace;font-size:.625rem;color:#8186B8;text-transform:uppercase;letter-spacing:.16em;margin-top:1px}.header-nav-cluster{display:flex;align-items:center;gap:6px;flex:none}.header-nav-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;background:#12164A;border:1px solid rgba(255,255,255,.08);border-radius:10px;color:#8186B8;cursor:pointer;transition:all .2s ease}.header-nav-btn:hover:not(:disabled){background:rgba(104,109,241,.25);border-color:rgba(255,255,255,.16);color:#ECEEFB}.header-nav-btn:disabled{opacity:.35;cursor:default}.header-nav-btn svg{width:18px;height:18px}.course-progress-pill{display:flex;align-items:center;gap:9px;flex:none;height:34px;padding:0 12px;border-radius:999px;background:#12164A;border:1px solid rgba(255,255,255,.08)}.course-progress-pill-bar{width:74px;height:5px;border-radius:999px;background:#1E2466;overflow:hidden;flex:none}.course-progress-pill-fill{height:100%;border-radius:999px;background:linear-gradient(135deg,#DE8569,#C85EDF 45%,#686DF1);transition:width .3s}.course-progress-pill-text{font-family:JetBrains Mono,monospace;font-size:.6875rem;color:#8186B8;white-space:nowrap}.header-actions{gap:10px;flex-wrap:nowrap;justify-content:flex-end;flex-shrink:0;min-width:0}.header-actions,.toggle-btn{display:flex;align-items:center}.toggle-btn{gap:6px;padding:6px 12px;background:#12164A;border:1px solid rgba(255,255,255,.08);border-radius:999px;color:#B6BAE0;font-size:.8125rem;cursor:pointer;transition:all .2s}.toggle-btn:hover{background:#181D58;border-color:rgba(255,255,255,.16);color:#ECEEFB}.toggle-icon{width:16px;height:16px;flex-shrink:0}.toggle-label{color:#B6BAE0;font-weight:600}.toggle-status{padding:2px 8px;border-radius:999px;font-size:.6875rem;font-weight:700;text-transform:uppercase}.toggle-btn.active .toggle-status{background:rgba(78,212,157,.2);color:#4ED49D}.toggle-btn:not(.active) .toggle-status{background:rgba(242,107,127,.2);color:#F26B7F}.download-files-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#12164A;border:1px solid rgba(255,255,255,.08);border-radius:999px;color:#B6BAE0;cursor:pointer;transition:all .2s;font-size:.8125rem;font-weight:600}.download-files-btn:hover{background:#181D58;border-color:rgba(255,255,255,.16);color:#ECEEFB}.download-icon{width:16px;height:16px;flex-shrink:0}.show-notes-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;background:rgba(104,109,241,.15);border:1px solid rgba(104,109,241,.3);border-radius:10px;color:#9DA1F7;cursor:pointer;transition:all .3s ease;font-size:.875rem;font-weight:600}.show-notes-btn:hover{background:rgba(104,109,241,.25);border-color:rgba(104,109,241,.5)}.show-notes-btn:active{transform:translateY(1px)}.show-notes-btn .notes-icon{width:16px;height:16px;flex-shrink:0}.read-lesson-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#12164A;border:1px solid rgba(255,255,255,.08);border-radius:999px;color:#B6BAE0;cursor:pointer;transition:all .2s;font-size:.8125rem;font-weight:600}.read-lesson-btn:hover{background:#181D58;border-color:rgba(255,255,255,.16);color:#ECEEFB}.read-lesson-btn .read-icon{width:16px;height:16px;flex-shrink:0}.get-video-access-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;background:var(--dt-accent);border:1px solid var(--dt-accent);border-radius:8px;color:var(--dt-on-accent);cursor:pointer;transition:background-color .15s ease,border-color .15s ease,transform .12s ease;font-size:.875rem;font-weight:600;box-shadow:var(--dt-glow-accent)}.get-video-access-btn:hover{background:var(--dt-accent-hover);border-color:var(--dt-accent-hover)}.get-video-access-btn:active{transform:translateY(1px)}.get-video-access-btn .play-icon{width:16px;height:16px;flex-shrink:0}.upgrade-modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(6,8,42,.82);backdrop-filter:blur(8px);z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px}.upgrade-modal{background:#12164A;border:1px solid rgba(255,255,255,.08);border-radius:18px;width:100%;max-width:480px;padding:40px;text-align:center;position:relative;box-shadow:0 32px 80px -24px rgba(0,0,0,.6)}.close-upgrade-btn{position:absolute;top:16px;right:16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;color:#B6BAE0}.close-upgrade-btn:hover{background:rgba(255,255,255,.12);color:#ECEEFB}.close-upgrade-btn svg{width:18px;height:18px}.upgrade-icon{margin-bottom:24px}.upgrade-icon svg{width:64px;height:64px}.upgrade-title{font-size:1.5rem;font-weight:700;color:#ECEEFB;margin-bottom:12px}.upgrade-message{font-size:1rem;color:#B6BAE0;line-height:1.6;margin-bottom:24px}.upgrade-benefits{list-style:none;padding:0;margin:0 0 32px;text-align:left}.upgrade-benefits li{display:flex;align-items:center;gap:12px;padding:10px 0;color:#B6BAE0;font-size:.9375rem;border-bottom:1px solid rgba(255,255,255,.08)}.upgrade-benefits li:last-child{border-bottom:none}.upgrade-benefits li svg{width:16px;height:16px;flex-shrink:0}.upgrade-actions{display:flex;justify-content:center}.upgrade-pro-btn{display:inline-flex;align-items:center;gap:10px;padding:14px 32px;background:var(--dt-accent);border:1px solid var(--dt-accent);border-radius:10px;color:var(--dt-on-accent);font-size:1rem;font-weight:600;text-decoration:none;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,transform .12s ease;box-shadow:var(--dt-glow-accent)}.upgrade-pro-btn:hover{background:var(--dt-accent-hover);border-color:var(--dt-accent-hover)}.upgrade-pro-btn:active{transform:translateY(1px)}.upgrade-pro-btn svg{width:20px;height:20px}@media (max-width:480px){.upgrade-modal{padding:28px 24px}.upgrade-title{font-size:1.25rem}.upgrade-message{font-size:.9375rem}}.sidebar-navigation{position:sticky;bottom:0;display:flex;flex-wrap:wrap;gap:8px;padding:12px 16px;background:rgba(10,14,57,.72);border-top:1px solid rgba(255,255,255,.08);backdrop-filter:blur(14px);z-index:10;margin-top:auto}.nav-arrow-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 12px;background:#181D58;border:1px solid rgba(255,255,255,.08);border-radius:10px;color:#B6BAE0;cursor:pointer;transition:all .3s ease;font-size:.875rem;font-weight:600}.nav-arrow-btn:hover:not(:disabled){background:#1E2466;border-color:rgba(255,255,255,.16)}.nav-arrow-btn:disabled{opacity:.3;cursor:not-allowed}.nav-arrow-btn svg{width:16px;height:16px;flex-shrink:0}.nav-arrow-btn span{color:#B6BAE0}.mark-complete-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 12px;background:rgba(78,212,157,.12);border:1px solid rgba(78,212,157,.3);border-radius:10px;color:#4ED49D;cursor:pointer;transition:all .3s ease;font-size:.875rem;font-weight:600}.mark-complete-btn:hover:not(:disabled){background:rgba(78,212,157,.18);border-color:rgba(78,212,157,.5)}.mark-complete-btn:disabled{opacity:.5;cursor:not-allowed}.mark-complete-btn svg{width:16px;height:16px;flex-shrink:0}.mark-complete-btn span{color:#4ED49D}.certificate-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 12px;background:rgba(104,109,241,.12);border:1px solid rgba(104,109,241,.4);border-radius:10px;color:#686DF1;cursor:pointer;transition:all .3s ease;font-size:.875rem;font-weight:600;text-decoration:none}.certificate-btn:hover{background:rgba(104,109,241,.2);border-color:rgba(104,109,241,.6);color:#9DA1F7}.certificate-btn svg{width:16px;height:16px;flex-shrink:0}.certificate-btn span{color:inherit}.curriculum-sidebar{--sidebar-rail-w:44px;grid-column:1;grid-row:1/3;background:#12164A;border-right:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;overflow:hidden;position:relative;width:340px;transition:none}.curriculum-sidebar.anim{transition:width .35s cubic-bezier(.4,0,.2,1)}.curriculum-sidebar.collapsed{width:var(--sidebar-rail-w);overflow:visible;z-index:500}@media (min-width:1025px){.curriculum-sidebar.drawer-mode{--sidebar-rail-w:0px;width:0;border-right:none}.curriculum-sidebar.drawer-mode.collapsed .sidebar-panel{top:52px}.curriculum-sidebar.drawer-mode .sidebar-collapse-btn{display:none}}.sidebar-panel{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;opacity:1;transition:opacity .25s ease .2s}.curriculum-sidebar.collapsed .sidebar-panel{position:absolute;top:0;bottom:0;left:var(--sidebar-rail-w);width:340px;flex:none;background:#12164A;border-right:1px solid rgba(255,255,255,.08);box-shadow:16px 0 40px rgba(0,0,0,.45);transform:translateX(-12px);opacity:0;visibility:hidden;pointer-events:none;transition:transform .2s ease,opacity .2s ease,visibility .2s}.curriculum-sidebar.collapsed.peek .sidebar-panel{transform:translateX(0);opacity:1;visibility:visible;pointer-events:auto}.sidebar-rail{display:none}.curriculum-sidebar.collapsed .sidebar-rail{position:absolute;top:0;bottom:0;left:0;width:var(--sidebar-rail-w);display:flex;flex-direction:column;align-items:center;padding:10px 0 8px;gap:12px;background:#12164A;transition:background .2s ease}.curriculum-sidebar.collapsed .sidebar-rail:hover,.curriculum-sidebar.collapsed.peek .sidebar-rail{background:#181D58}.sidebar-rail-pin{display:flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;background:rgba(104,109,241,.12);border:1px solid rgba(255,255,255,.08);border-radius:8px;color:#8186B8;cursor:pointer;flex-shrink:0;transition:all .2s ease}.sidebar-rail-pin:hover{background:rgba(104,109,241,.25);border-color:rgba(255,255,255,.16);color:#B6BAE0}.sidebar-rail-pin svg{width:16px;height:16px;flex-shrink:0}.sidebar-rail-outline{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1;min-height:0;overflow:hidden;padding:4px}.rail-chapter-group{display:flex;flex-direction:column;align-items:center;gap:6px;flex-shrink:0}.rail-chapter-group.current{padding:11px 4px 5px;border-radius:999px;background:rgba(104,109,241,.08);border:1px solid rgba(104,109,241,.22)}.rail-chapter{width:26px;height:7px;background:rgba(255,255,255,.1);overflow:hidden;text-decoration:none;flex-shrink:0;transition:all .2s ease}.rail-chapter,.rail-chapter-fill{display:block;border-radius:999px}.rail-chapter-fill{height:100%;background:#686DF1;transition:width .3s ease}.rail-chapter:hover{background:rgba(104,109,241,.35);box-shadow:0 0 0 2px rgba(104,109,241,.3)}.rail-chapter.done{background:rgba(78,212,157,.25)}.rail-chapter.done .rail-chapter-fill{background:#4ED49D}.rail-chapter.done:hover{box-shadow:0 0 0 2px rgba(78,212,157,.3)}.rail-chapter.current{background:rgba(255,255,255,.16)}.rail-lesson{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:#8186B8;font-size:.6875rem;font-weight:600;line-height:1;text-decoration:none;flex-shrink:0;transition:all .2s ease}.rail-lesson:hover{background:rgba(104,109,241,.25);border-color:rgba(104,109,241,.5);color:#FFFFFF}.rail-lesson.done{background:rgba(78,212,157,.12);border-color:rgba(78,212,157,.4);color:#4ED49D}.rail-lesson.done:hover{background:rgba(78,212,157,.25);color:#4ED49D}.rail-lesson.current{background:#686DF1;border-color:#686DF1;color:#FFFFFF;box-shadow:0 0 0 3px rgba(104,109,241,.3)}.rail-lesson-check{width:13px;height:13px;flex-shrink:0}.sidebar-rail-nav{display:flex;flex-direction:column;gap:6px;flex-shrink:0}.sidebar-rail-nav-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;background:#181D58;border:1px solid rgba(255,255,255,.08);border-radius:8px;color:#8186B8;cursor:pointer;transition:all .2s ease}.sidebar-rail-nav-btn:hover:not(:disabled){background:#1E2466;border-color:rgba(255,255,255,.16);color:#B6BAE0}.sidebar-rail-nav-btn:disabled{opacity:.3;cursor:not-allowed}.sidebar-rail-nav-btn svg{width:16px;height:16px;flex-shrink:0}.sidebar-header-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:0}.sidebar-collapse-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:rgba(104,109,241,.08);border:1px solid rgba(255,255,255,.08);border-radius:999px;color:#8186B8;font-size:.75rem;font-weight:500;cursor:pointer;flex-shrink:0;transition:all .2s ease}.sidebar-collapse-btn:hover{background:rgba(104,109,241,.2);border-color:rgba(255,255,255,.16);color:#B6BAE0}.sidebar-collapse-btn svg{width:15px;height:15px;flex-shrink:0}.lesson-content{grid-column:2;grid-row:2;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;background:linear-gradient(135deg,#0D1130,#1A1F4A);position:relative;transition:margin-right .3s ease-out}.video-section{align-items:center;justify-content:center;background:linear-gradient(135deg,#0D1130,#1A1F4A);min-height:0}.video-section,.written-content-section{width:100%;flex:1;display:flex;position:relative}.written-content-section{flex-direction:column;background:#0A0E39;overflow-y:auto}.written-content-wrapper{position:relative;flex-shrink:0}.written-content-container{max-width:1090px;width:100%;margin:0 auto;padding:40px 32px 80px}.written-content-modal-body .written-content-article,.written-content-modal-body .written-content-article li,.written-content-modal-body .written-content-article p,.written-content-modal-body .written-content-article td,.written-content-section .written-content-article,.written-content-section .written-content-article li,.written-content-section .written-content-article p,.written-content-section .written-content-article td{color:#B6BAE0;font-weight:450;line-height:1.8}.written-content-modal-body .written-content-article h2,.written-content-modal-body .written-content-article h3,.written-content-modal-body .written-content-article h4,.written-content-section .written-content-article h2,.written-content-section .written-content-article h3,.written-content-section .written-content-article h4{color:#ECEEFB;font-weight:600}.written-content-modal-body .written-content-article h2,.written-content-section .written-content-article h2{font-size:1.875rem;padding-top:5px;line-height:1.4;margin-bottom:16px}.written-content-modal-body .written-content-article h3,.written-content-section .written-content-article h3{padding-top:30px;font-size:1.5rem;line-height:1.4;margin-bottom:12px}.written-content-modal-body .written-content-article p,.written-content-section .written-content-article p{padding-bottom:5px;padding-top:5px;font-size:1.0625rem;line-height:1.8}.written-content-modal-body .written-content-article b,.written-content-modal-body .written-content-article strong,.written-content-section .written-content-article b,.written-content-section .written-content-article strong{color:#ECEEFB;font-weight:600}.written-content-modal-body .written-content-article em,.written-content-modal-body .written-content-article i,.written-content-section .written-content-article em,.written-content-section .written-content-article i{color:#ECEEFB;font-style:italic}.written-content-modal-body .written-content-article a,.written-content-section .written-content-article a{font-size:1.125rem;text-decoration:underline;color:#9DA1F7;font-weight:500;transition:color .2s ease}.written-content-modal-body .written-content-article a:hover,.written-content-section .written-content-article a:hover{color:#ECEEFB}.written-content-modal-body .written-content-article img,.written-content-section .written-content-article img{padding:20px;max-width:100%;height:auto}.written-content-modal-body .written-content-article p:has(>img),.written-content-section .written-content-article p:has(>img){justify-items:center;display:grid}.written-content-modal-body .written-content-article pre,.written-content-section .written-content-article pre{position:relative;border-radius:20px}.written-content-modal-body .written-content-article pre code,.written-content-section .written-content-article pre code{z-index:9000;position:relative;font-size:1rem;border-radius:20px;padding:1.5em;display:block;background:var(--syn-bg,#06082A);color:var(--syn-fg,#ECEEFB);overflow-x:auto}.written-content-modal-body .written-content-article code:not(pre code),.written-content-section .written-content-article code:not(pre code){background:rgba(104,109,241,.15);color:#9DA1F7;padding:4px 8px;border-radius:6px;font-size:.9em;font-weight:500;font-family:var(--editor-font);border:1px solid rgba(104,109,241,.28)}.written-content-modal-body .written-content-article blockquote,.written-content-section .written-content-article blockquote{font-size:1.4em;width:60%;margin:50px auto;font-family:Open Sans;font-style:italic;color:#B6BAE0;font-weight:500;padding:1.2em 30px 1.2em 75px;border-left:8px solid #ce84ca;line-height:1.7;position:relative;background:#12164A;border-radius:20px}.written-content-modal-body .written-content-article blockquote:before,.written-content-section .written-content-article blockquote:before{font-family:Arial;content:"\201C";color:#CE84CA;font-size:4em;position:absolute;left:10px;top:-10px}.written-content-modal-body .written-content-article ul,.written-content-section .written-content-article ul{list-style-type:none;padding-left:1.5em;margin:1em 0;color:#B6BAE0}.written-content-modal-body .written-content-article ul li,.written-content-section .written-content-article ul li{position:relative;padding:.5em 0;line-height:1.8;margin-bottom:.5em;font-weight:450}.written-content-modal-body .written-content-article ul li:before,.written-content-section .written-content-article ul li:before{content:"";position:absolute;left:-1.5em;top:.8em;width:8px;height:8px;border-radius:50%;background:linear-gradient(95deg,#DE8569,#C85EDF 55%,#686DF1)}.written-content-modal-body .written-content-article ol,.written-content-section .written-content-article ol{counter-reset:item;padding-left:1.5em;margin:1em 0;color:#B6BAE0}.written-content-modal-body .written-content-article ol li,.written-content-section .written-content-article ol li{position:relative;padding:.5em 0 .5em .5em;line-height:1.8;margin-bottom:.5em;counter-increment:item;list-style-type:none;font-weight:450}.written-content-modal-body .written-content-article ol li:before,.written-content-section .written-content-article ol li:before{content:counter(item) ".";position:absolute;left:-1.5em;top:.5em;line-height:1.6;font-weight:600;color:#fff;background:linear-gradient(95deg,#DE8569,#C85EDF 55%,#686DF1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.written-content-modal-body .written-content-article table,.written-content-section .written-content-article table{width:100%;margin:2rem 0;border-collapse:separate;border-spacing:0;border-radius:8px;overflow:hidden;background:#12164A;box-shadow:0 4px 6px rgba(0,0,0,.1)}.written-content-modal-body .written-content-article table th,.written-content-section .written-content-article table th{background:#181D58;color:#ECEEFB;font-weight:600;text-align:left;padding:1rem;border-bottom:2px solid #686df1}.written-content-modal-body .written-content-article table td,.written-content-section .written-content-article table td{padding:1rem;border-bottom:1px solid rgba(255,255,255,.08);color:#B6BAE0;font-weight:450;transition:background-color .2s ease}.written-content-modal-body .written-content-article table tr:last-child td,.written-content-section .written-content-article table tr:last-child td{border-bottom:none}.written-content-modal-body .written-content-article table tr:hover td,.written-content-section .written-content-article table tr:hover td{background-color:rgba(104,109,241,.1)}.written-content-fade{display:none;position:absolute;bottom:0;left:0;right:0;height:250px;background:linear-gradient(180deg,transparent 0,rgba(10,14,57,.5) 30%,rgba(10,14,57,.85) 60%,#0A0E39);pointer-events:none;z-index:5}.written-content-section.content-limited .written-content-wrapper{max-height:45vh;overflow:hidden}.written-content-section.content-limited .written-content-fade{display:block}.written-content-section.content-limited-half .written-content-wrapper{position:relative}.written-content-section.content-limited-half .written-content-article{max-height:60vh;overflow:hidden}.written-content-section.content-limited-half .written-content-fade{display:block}.video-access-banner{margin-bottom:32px;padding:24px 28px;background:linear-gradient(135deg,rgba(222,133,105,.12),rgba(200,94,223,.12) 50%,rgba(104,109,241,.18));border:1px solid rgba(104,109,241,.35);border-radius:14px;box-shadow:0 8px 32px rgba(104,109,241,.2),inset 0 0 0 1px rgba(255,255,255,.06)}.video-access-banner-content{display:flex;align-items:center;gap:20px}.video-access-icon{flex-shrink:0;width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#686DF1,#C85EDF);border-radius:14px;box-shadow:0 4px 16px rgba(104,109,241,.4)}.video-access-icon svg{width:26px;height:26px;stroke:#fff;fill:rgba(255,255,255,.1)}.video-access-text{flex:1}.video-access-message{margin:0 0 8px;font-size:1.0625rem;color:#ECEEFB;font-weight:600;line-height:1.5}.video-access-message strong{color:#fff;background:linear-gradient(90deg,#686DF1,#C85EDF);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.video-access-cta{margin:0;font-size:.9375rem;color:#B6BAE0;line-height:1.5}.video-access-cta a{display:inline-flex;align-items:center;gap:4px;color:var(--dt-accent);font-weight:700;text-decoration:none;padding:2px 0;border-bottom:2px solid var(--dt-accent);transition:color .15s ease,border-color .15s ease}.video-access-cta a:hover{color:var(--dt-accent-hover);border-bottom-color:var(--dt-accent-hover)}@media (max-width:480px){.video-access-banner{padding:20px}.video-access-banner-content{flex-direction:column;align-items:flex-start;gap:16px}.video-access-icon{width:48px;height:48px}.video-access-icon svg{width:22px;height:22px}.video-access-message{font-size:1rem}}.video-thumbnail-overlay{margin-bottom:32px;border-radius:16px;overflow:hidden;position:relative}.video-thumbnail-container{position:relative;width:100%;padding-bottom:56.25%;background:#0A0E39}.video-thumbnail-image{object-fit:cover}.video-thumbnail-blur,.video-thumbnail-image{position:absolute;top:0;left:0;width:100%;height:100%}.video-thumbnail-blur{backdrop-filter:blur(8px);background:rgba(6,8,42,.6)}.video-thumbnail-content{position:absolute;top:0;left:0;width:100%;height:100%;flex-direction:column;text-align:center;padding:24px}.video-thumbnail-content,.video-thumbnail-padlock{display:flex;align-items:center;justify-content:center}.video-thumbnail-padlock{width:80px;height:80px;background:linear-gradient(135deg,rgba(104,109,241,.25),rgba(200,94,223,.15));border:3px solid rgba(104,109,241,.5);border-radius:50%;margin-bottom:20px;box-shadow:0 8px 32px rgba(104,109,241,.3)}.video-thumbnail-padlock svg{width:36px;height:36px;stroke:#fff;stroke-width:2;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5))}.video-thumbnail-message{margin:0 0 12px;font-size:1.125rem;font-weight:600;max-width:480px}.video-thumbnail-cta,.video-thumbnail-message{color:#fff;line-height:1.5;text-shadow:0 2px 8px rgba(0,0,0,.7),0 1px 3px rgba(0,0,0,.5)}.video-thumbnail-cta{margin:0;font-size:.9375rem}.video-thumbnail-cta a{display:inline-flex;align-items:center;gap:4px;color:#CE84CA;font-weight:700;text-decoration:none;padding:2px 0;border-bottom:2px solid #686df1;transition:all .2s ease}.video-thumbnail-cta a:hover{color:#CE84CA;border-bottom-color:#C85EDF}@media (max-width:768px){.video-thumbnail-padlock{width:64px;height:64px}.video-thumbnail-padlock svg{width:28px;height:28px}.video-thumbnail-message{font-size:1rem}.video-thumbnail-cta{font-size:.875rem}}@media (max-width:480px){.video-thumbnail-overlay{margin-bottom:24px}.video-thumbnail-content{padding:16px}.video-thumbnail-padlock{width:56px;height:56px;margin-bottom:16px}.video-thumbnail-padlock svg{width:24px;height:24px}.video-thumbnail-message{font-size:.9375rem}.video-thumbnail-cta{font-size:.8125rem}}.written-content-cta{display:none;position:relative;z-index:10;text-align:center;padding:24px 24px 40px;flex-shrink:0}.cta-anonymous,.cta-anonymous-pro,.cta-authenticated{max-width:600px;margin:0 auto;padding:28px 36px;background:rgba(18,22,74,.92);border:1px solid rgba(255,255,255,.08);border-radius:18px;backdrop-filter:blur(10px);box-shadow:0 24px 60px -24px rgba(0,0,0,.6)}.written-content-cta h3{font-size:1.5rem;color:#ECEEFB;margin-bottom:8px;font-weight:700;background:linear-gradient(135deg,#ECEEFB,#B6BAE0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.written-content-cta p{color:#B6BAE0;margin-bottom:0;font-size:.9375rem;line-height:1.5;padding:0}.cta-buttons{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.cta-btn{display:inline-flex;align-items:center;gap:10px;padding:16px 32px;border-radius:60px;font-size:1rem;font-weight:700;text-decoration:none;transition:all .3s ease;border:none;cursor:pointer}.cta-btn-primary{background:var(--dt-accent);border:1px solid var(--dt-accent);color:var(--dt-on-accent);box-shadow:var(--dt-glow-accent)}.cta-btn-primary:hover{background:var(--dt-accent-hover);border-color:var(--dt-accent-hover)}.cta-btn-primary:active{transform:translateY(1px)}.cta-btn-secondary{background:rgba(104,109,241,.12);color:#ECEEFB;border:1px solid rgba(255,255,255,.16)}.cta-btn-secondary:hover{background:rgba(104,109,241,.2);border-color:rgba(255,255,255,.24)}.cta-btn svg{flex-shrink:0}.cta-anonymous:before,.cta-authenticated:before{content:"";display:block;width:64px;height:64px;margin:0 auto 24px;background:linear-gradient(135deg,rgba(104,109,241,.2),rgba(200,94,223,.2));border-radius:50%;border:1px solid rgba(255,255,255,.08)}.cta-anonymous:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 24 24' fill='none' stroke='%23686DF1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2'%3E%3C/path%3E%3Ccircle cx='8.5' cy='7' r='4'%3E%3C/circle%3E%3Cline x1='20' y1='8' x2='20' y2='14'%3E%3C/line%3E%3Cline x1='23' y1='11' x2='17' y2='11'%3E%3C/line%3E%3C/svg%3E");background-repeat:no-repeat;background-position:50%;background-size:28px}.cta-authenticated:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 24 24' fill='none' stroke='%23686DF1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2'%3E%3C/polygon%3E%3C/svg%3E");background-repeat:no-repeat;background-position:50%;background-size:28px}.cta-anonymous-pro:before{content:"";display:block;width:64px;height:64px;margin:0 auto 24px;background:linear-gradient(135deg,rgba(104,109,241,.2),rgba(200,94,223,.2));border-radius:50%;border:1px solid rgba(255,255,255,.08);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 24 24' fill='none' stroke='%23686DF1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2'%3E%3C/polygon%3E%3C/svg%3E");background-repeat:no-repeat;background-position:50%;background-size:28px}.cta-anonymous-pro .cta-buttons,.cta-anonymous-pro .cta-signin-section{margin-top:24px}.cta-signup-form{display:flex;flex-direction:column;gap:10px;margin:16px 0 12px}.cta-form-row{display:flex;gap:12px}.cta-form-row .cta-signup-input{flex:1;min-width:0}.cta-signup-input{padding:12px 16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:8px;color:#ECEEFB;font-size:.9375rem;transition:all .3s ease}.cta-signup-input::placeholder{color:#8186B8}.cta-signup-input:focus{outline:none;background:rgba(255,255,255,.08);border-color:rgba(104,109,241,.6);box-shadow:0 0 0 3px rgba(104,109,241,.15)}.cta-signup-input.cta-input-error{border-color:#F26B7F;background:rgba(242,107,127,.1)}.cta-field-error{color:#F26B7F;font-size:.8125rem;margin-top:4px;text-align:left}.cta-signup-btn{width:100%;margin-top:4px}.cta-disclaimer{font-size:.8125rem!important;color:#8186B8;line-height:1.5;margin:0;padding:0!important}.cta-signin-section{margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.cta-signin-text{font-size:.875rem;color:#8186B8;margin:0;padding:0!important}.cta-signin-btn{padding:8px 20px;font-size:.875rem}.cta-pro-upsell{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.08)}.cta-pro-upsell p{font-size:.875rem!important;color:#8186B8;margin:0;padding:0!important}.cta-pro-upsell a{color:#9DA1F7;text-decoration:none;font-weight:600}.cta-pro-upsell a:hover{text-decoration:underline}@media (max-width:480px){.cta-form-row{flex-direction:column}.cta-signup-input{font-size:1rem}}#lesson-content:fullscreen{background:#000}#lesson-content:fullscreen .trial-banner{display:none}#lesson-content:fullscreen .video-container,#lesson-content:fullscreen .video-section,#lesson-content:fullscreen .video-wrapper{height:100%;max-width:none;background:#000}.video-section.fullscreen-mode{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:9999;align-items:center;justify-content:center;background:#000}.video-section.fullscreen-mode .video-container,.video-section.fullscreen-mode .video-wrapper{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.video-section.fullscreen-mode .video-container{max-width:100%;aspect-ratio:unset}.video-section.fullscreen-mode mux-player{width:100%;height:100%;max-height:100vh}.video-container,.video-wrapper{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative;background:rgba(31,35,66,.95)}.video-container mux-player{display:block;width:100%;height:100%;background:transparent;--media-background-color:transparent;--media-object-fit:contain;--media-object-position:center}.auth-overlay{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;min-height:100%;background:#0A0E39;display:flex;align-items:center;justify-content:center;padding:40px 20px;box-sizing:border-box;z-index:100;overflow-y:auto}.auth-overlay-content{max-width:480px;width:100%;background:#12164A;border-radius:18px;padding:40px;box-shadow:0 32px 80px -24px rgba(0,0,0,.6);border:1px solid rgba(255,255,255,.08);box-sizing:border-box;margin:auto;flex-shrink:0}.auth-overlay-title{font-size:1.75rem;font-weight:700;color:#ECEEFB;margin:0 0 32px;text-align:center;line-height:1.3}.auth-section{margin-bottom:24px;width:100%}.auth-section:last-of-type{margin-bottom:0}.auth-section-label{font-size:.875rem;font-weight:600;color:#B6BAE0;margin:0 0 12px;text-align:center;display:block}.auth-signin-btn,.auth-signup-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 24px;background:var(--dt-accent);border:1px solid var(--dt-accent);border-radius:10px;color:var(--dt-on-accent);font-size:1rem;font-weight:600;text-decoration:none;cursor:pointer;transition:background-color .15s ease,border-color .15s ease;box-sizing:border-box;font-family:Montserrat,sans-serif;box-shadow:var(--dt-glow-accent)}.auth-signin-btn:hover,.auth-signup-btn:hover{background:var(--dt-accent-hover);border-color:var(--dt-accent-hover);color:var(--dt-on-accent)}.auth-signin-btn:active,.auth-signup-btn:active{transform:translateY(1px)}.auth-signin-btn svg,.auth-signup-btn svg{flex-shrink:0}.auth-divider{display:flex;align-items:center;text-align:center;margin:24px 0;width:100%}.auth-divider:after,.auth-divider:before{content:"";flex:1;border-bottom:1px solid rgba(255,255,255,.08)}.auth-divider span{padding:0 16px;color:#8186B8;font-size:.875rem;font-weight:500}.auth-signup-form{flex-direction:column}.auth-form-row,.auth-signup-form{display:flex;gap:12px;width:100%}.auth-form-group{flex:1;min-width:0}.auth-form-group input{width:100%;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:10px;color:#ECEEFB;padding:0 16px;height:48px;font-size:.9375rem;box-sizing:border-box;font-family:Montserrat,sans-serif}.auth-form-group input:focus{outline:none;border:1px solid rgba(104,109,241,.6);box-shadow:0 0 0 2px rgba(104,109,241,.15)}.auth-form-group input::placeholder{color:#8186B8}@media (max-width:1024px){.auth-overlay{padding:16px}}@media (max-width:768px){.auth-overlay{position:fixed;width:100vw;height:100vh;left:0;top:0;right:auto;bottom:auto;padding:24px 16px;z-index:2000}.auth-overlay-content{padding:32px 24px;max-width:100%;margin:0 auto}.auth-overlay-title{font-size:1.375rem;margin-bottom:24px}.auth-form-row{flex-direction:column;gap:12px}.auth-signin-btn,.auth-signup-btn{font-size:.9375rem;padding:12px 20px}}@media (max-width:480px){.auth-overlay{position:fixed;width:100vw;height:100vh;padding:20px 12px}.auth-overlay-content{padding:28px 20px;border-radius:16px}.auth-overlay-title{font-size:1.25rem;margin-bottom:20px}.auth-section{margin-bottom:20px}.auth-section-label{font-size:.8125rem;margin-bottom:10px}.auth-form-group input{height:44px;font-size:.875rem;padding:0 14px}.auth-signin-btn,.auth-signup-btn{font-size:.875rem;padding:11px 18px}.auth-divider{margin:20px 0}}@media (max-width:360px){.auth-overlay{position:fixed;width:100vw;height:100vh;padding:16px 8px}.auth-overlay-content{padding:24px 16px}.auth-overlay-title{font-size:1.125rem;margin-bottom:16px}.auth-section{margin-bottom:16px}.auth-form-group input{height:42px;font-size:.875rem}}.lesson-notes-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(6,8,42,.82);backdrop-filter:blur(5px);z-index:9999;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.lesson-notes-overlay.active{opacity:1;visibility:visible}.lesson-notes-modal{background:#12164A;border:1px solid rgba(255,255,255,.08);border-radius:18px;width:90%;max-width:900px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 32px 80px -24px rgba(0,0,0,.6);transform:scale(.95);transition:transform .3s ease}.lesson-notes-overlay.active .lesson-notes-modal{transform:scale(1)}.lesson-notes-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 28px;background:#181D58;border-bottom:1px solid rgba(255,255,255,.08);border-radius:18px 18px 0 0;flex-shrink:0}.lesson-notes-modal-title{display:flex;align-items:center;gap:12px;font-size:1.125rem;font-weight:700;color:#ECEEFB}.lesson-notes-modal-title .notes-icon{width:22px;height:22px;color:#686DF1;flex-shrink:0}.close-notes-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:rgba(242,107,127,.15);border:1px solid rgba(242,107,127,.3);border-radius:8px;color:#F26B7F;cursor:pointer;transition:all .2s ease;flex-shrink:0}.close-notes-btn:hover{background:rgba(242,107,127,.25);border-color:rgba(242,107,127,.5);transform:scale(1.05)}.close-notes-btn svg{width:18px;height:18px}.lesson-notes-modal-content{padding:28px 32px 32px;overflow-y:auto;color:#B6BAE0;line-height:1.7;font-size:.9375rem;flex:1}.lesson-notes-modal-content h1,.lesson-notes-modal-content h2,.lesson-notes-modal-content h3,.lesson-notes-modal-content h4,.lesson-notes-modal-content h5,.lesson-notes-modal-content h6{color:#ECEEFB;margin-top:24px;margin-bottom:12px;font-weight:700}.lesson-notes-modal-content h1{font-size:1.75rem}.lesson-notes-modal-content h2{font-size:1.5rem}.lesson-notes-modal-content h3{font-size:1.25rem}.lesson-notes-modal-content h4{font-size:1.125rem}.lesson-notes-modal-content p{margin-bottom:16px}.lesson-notes-modal-content a{color:#9DA1F7;text-decoration:none;transition:color .2s ease}.lesson-notes-modal-content a:hover{color:#ECEEFB;text-decoration:underline}.lesson-notes-modal-content ol,.lesson-notes-modal-content ul{margin-left:24px;margin-bottom:16px}.lesson-notes-modal-content li{margin-bottom:8px}.lesson-notes-modal-content code{background:rgba(104,109,241,.15);padding:2px 6px;border-radius:4px;font-family:var(--editor-font);font-size:.875rem;color:#9DA1F7}.lesson-notes-modal-content pre{background:var(--syn-bg,#06082A);padding:16px;border-radius:8px;overflow-x:auto;margin-bottom:16px;border:1px solid var(--syn-border,rgba(255,255,255,.08));font-family:var(--editor-font)}.lesson-notes-modal-content pre code{background:none;padding:0;color:var(--syn-fg,#ECEEFB)}.lesson-notes-modal-content blockquote{border-left:4px solid #686df1;padding-left:16px;margin-left:0;margin-bottom:16px;color:#8186B8;font-style:italic}.lesson-notes-modal-content img{max-width:100%;height:auto;border-radius:8px;margin:16px 0}.lesson-notes-modal-content table{width:100%;border-collapse:collapse;margin-bottom:16px}.lesson-notes-modal-content td,.lesson-notes-modal-content th{padding:12px;border:1px solid rgba(255,255,255,.08);text-align:left}.lesson-notes-modal-content th{background:rgba(104,109,241,.15);font-weight:600;color:#ECEEFB}.lesson-notes-modal-content hr{border:none;border-top:1px solid rgba(255,255,255,.08);margin:24px 0}.written-content-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(6,8,42,.82);backdrop-filter:blur(5px);z-index:9999;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.written-content-overlay.active{opacity:1;visibility:visible}.written-content-modal{background:#12164A;border:1px solid rgba(255,255,255,.08);border-radius:18px;width:90%;max-width:1000px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 32px 80px -24px rgba(0,0,0,.6);transform:scale(.95);transition:transform .3s ease}.written-content-overlay.active .written-content-modal{transform:scale(1)}.written-content-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 28px;background:#181D58;border-bottom:1px solid rgba(255,255,255,.08);border-radius:18px 18px 0 0;flex-shrink:0}.written-content-modal-title{display:flex;align-items:center;gap:12px;font-size:1.125rem;font-weight:700;color:#ECEEFB}.written-content-modal-title .read-icon{width:22px;height:22px;color:#686DF1;flex-shrink:0}.close-written-content-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:rgba(242,107,127,.15);border:1px solid rgba(242,107,127,.3);border-radius:8px;color:#F26B7F;cursor:pointer;transition:all .2s ease;flex-shrink:0}.close-written-content-btn:hover{background:rgba(242,107,127,.25);border-color:rgba(242,107,127,.5);transform:scale(1.05)}.close-written-content-btn svg{width:18px;height:18px}.written-content-modal-body{padding:28px 32px 32px;overflow-y:auto;flex:1}.written-content-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:60px 20px;color:#B6BAE0;font-size:.9375rem}.written-content-loading .loading-spinner{width:40px;height:40px;border:3px solid rgba(104,109,241,.2);border-top-color:#686df1;border-radius:50%;animation:spin 1s linear infinite}.written-content-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:60px 20px;color:#F26B7F;font-size:.9375rem;text-align:center}.written-content-error svg{width:48px;height:48px;opacity:.7}.written-content-article{color:#B6BAE0;line-height:1.8;font-size:1rem}.written-content-article h1,.written-content-article h2,.written-content-article h3,.written-content-article h4,.written-content-article h5,.written-content-article h6{color:#ECEEFB;margin-top:32px;margin-bottom:16px;font-weight:700;line-height:1.3}.written-content-article h1{font-size:2rem}.written-content-article h2{font-size:1.625rem}.written-content-article h3{font-size:1.375rem}.written-content-article h4{font-size:1.125rem}.written-content-article h1:first-child,.written-content-article h2:first-child,.written-content-article h3:first-child{margin-top:0}.written-content-article p{margin-bottom:18px}.written-content-article a{color:#9DA1F7;text-decoration:none;transition:color .2s ease}.written-content-article a:hover{color:#ECEEFB;text-decoration:underline}.written-content-article ol,.written-content-article ul{margin-left:24px;margin-bottom:18px}.written-content-article li{margin-bottom:10px}.written-content-article code{background:rgba(104,109,241,.15);padding:3px 8px;border-radius:4px;font-family:var(--editor-font);font-size:.875rem;color:#9DA1F7}.written-content-article pre{background:var(--syn-bg,#06082A);padding:20px;border-radius:8px;overflow-x:auto;margin-bottom:18px;border:1px solid var(--syn-border,rgba(255,255,255,.08));font-family:var(--editor-font)}.written-content-article pre code{background:none;padding:0;color:var(--syn-fg,#ECEEFB);font-size:.875rem;line-height:1.6}.written-content-article blockquote{border-left:4px solid #686df1;padding-left:20px;margin-left:0;margin-bottom:18px;color:#8186B8;font-style:italic}.written-content-article img{max-width:100%;height:auto;border-radius:8px;margin:20px 0;box-shadow:0 4px 20px rgba(0,0,0,.3)}.written-content-article table{width:100%;border-collapse:collapse;margin-bottom:18px}.written-content-article td,.written-content-article th{padding:12px 16px;border:1px solid rgba(255,255,255,.08);text-align:left}.written-content-article th{background:rgba(104,109,241,.15);font-weight:600;color:#ECEEFB}.written-content-article hr{border:none;border-top:1px solid rgba(255,255,255,.08);margin:32px 0}.sidebar-header{padding:18px 20px 16px;background:#12164A;border-bottom:1px solid rgba(255,255,255,.08);flex-shrink:0;display:flex;flex-direction:column;gap:12px}.back-to-courses-btn{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;background:rgba(104,109,241,.08);border:1px solid rgba(255,255,255,.08);border-radius:999px;color:#8186B8;text-decoration:none;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease}.back-to-courses-btn:hover{background:rgba(104,109,241,.2);border-color:rgba(255,255,255,.16);color:#B6BAE0}.back-to-courses-btn svg{width:14px;height:14px;flex-shrink:0}.course-title{font-size:1.0625rem;font-weight:700;color:#ECEEFB;margin:0;line-height:1.3}.course-meta{flex-wrap:wrap;margin-top:0}.course-meta,.course-meta-item{display:flex;align-items:center;gap:6px}.course-meta-item{padding:5px 10px;background:rgba(104,109,241,.1);border:1px solid rgba(255,255,255,.08);border-radius:999px;color:#B6BAE0;font-size:.6875rem;font-weight:500;transition:all .2s ease}.course-meta-item svg{width:14px;height:14px;flex-shrink:0;opacity:.8}.course-progress-section{margin-top:0;padding-top:14px;border-top:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:10px}.progress-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:0}.progress-label{font-size:.6875rem;font-weight:600;color:#8186B8;text-transform:none;letter-spacing:0}.progress-summary{font-size:.75rem;font-weight:600;color:#B6BAE0;line-height:1.3;min-width:0}.progress-percentage{font-size:.8125rem;font-weight:700;color:#9DA1F7;flex-shrink:0}.progress-bar-container{width:100%;height:6px;background:rgba(255,255,255,.08);border-radius:999px;overflow:hidden;margin-bottom:0}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#686DF1,#9DA1F7);border-radius:999px;transition:width .5s ease;width:0}.progress-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.progress-stat{font-size:.75rem;color:#8186B8;font-weight:500}.github-code-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#12164A;border:1px solid rgba(255,255,255,.08);border-radius:999px;color:#B6BAE0;cursor:pointer;transition:all .2s;font-size:.8125rem;font-weight:600;text-decoration:none}.github-code-btn:hover{background:#181D58;border-color:rgba(255,255,255,.16);color:#ECEEFB}.github-code-btn .github-icon{width:16px;height:16px;flex-shrink:0}.curriculum-content{padding:10px;overflow-y:auto;flex:1}.curriculum-chapter{margin-bottom:8px;background:linear-gradient(135deg,rgba(24,29,88,.4),rgba(24,29,88,.2));border-radius:14px;border:1px solid rgba(255,255,255,.08);overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.curriculum-chapter:hover{border-color:rgba(255,255,255,.16);box-shadow:0 8px 24px rgba(104,109,241,.15)}.chapter-header{display:flex;align-items:center;justify-content:space-between;padding:13px 15px;background:linear-gradient(135deg,rgba(104,109,241,.12),rgba(104,109,241,.06));cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);user-select:none;position:relative}.chapter-header:before{content:"";position:absolute;left:0;top:0;height:100%;width:4px;background:linear-gradient(180deg,#686DF1,#C85EDF);opacity:0;transition:opacity .3s ease}.chapter-header:hover:before{opacity:1}.chapter-header:hover{background:linear-gradient(135deg,rgba(104,109,241,.18),rgba(104,109,241,.1));padding-left:18px}.chapter-header-content{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.chapter-title{font-size:.875rem;font-weight:700;color:#ECEEFB;letter-spacing:.2px;text-shadow:0 2px 8px rgba(0,0,0,.3)}.chapter-lesson-count{font-size:.6875rem;font-weight:500;color:#8186B8;margin-left:-2px}.chapter-toggle{width:20px;height:20px;transition:transform .3s cubic-bezier(.4,0,.2,1);flex-shrink:0;color:#9DA1F7;filter:drop-shadow(0 2px 4px rgba(104,109,241,.4))}.curriculum-chapter.collapsed .chapter-toggle{transform:rotate(-90deg)}.chapter-lessons{padding:6px;display:flex;flex-direction:column;gap:3px;background:rgba(6,8,42,.3);max-height:3000px;opacity:1;overflow:hidden;transition:max-height .4s cubic-bezier(.4,0,.2,1),opacity .4s cubic-bezier(.4,0,.2,1),padding .4s cubic-bezier(.4,0,.2,1)}.curriculum-chapter.collapsed .chapter-lessons{max-height:0;opacity:0;padding-top:0;padding-bottom:0}.lesson-item{display:flex;align-items:center;gap:8px;padding:10px 12px;cursor:pointer;border-radius:9px;text-decoration:none;color:#B6BAE0;position:relative;background:rgba(24,29,88,.2);border:1px solid transparent}.lesson-item:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);height:60%;width:3px;background:linear-gradient(180deg,#686DF1,#C85EDF);border-radius:0 2px 2px 0;opacity:0}.lesson-item:hover{background:linear-gradient(135deg,rgba(104,109,241,.15),rgba(104,109,241,.08));color:#ECEEFB;border-color:rgba(255,255,255,.16);transform:translateX(2px);box-shadow:0 4px 12px rgba(104,109,241,.2);transition:background .12s ease,color .12s ease,border-color .12s ease}.lesson-item:hover:before{opacity:1}.lesson-item.active{background:linear-gradient(135deg,rgba(104,109,241,.25),rgba(200,94,223,.15));color:#ECEEFB;border-color:rgba(104,109,241,.5);font-weight:600;box-shadow:0 6px 16px rgba(104,109,241,.3),inset 0 1px 0 rgba(255,255,255,.1)}.lesson-item.active:before{opacity:1;height:80%;width:4px;background:linear-gradient(180deg,#686DF1,#686DF1)}.lesson-name{flex:1;font-size:.75rem;line-height:1.35;color:inherit;font-weight:500}.lesson-item.active .lesson-name{font-weight:700}.lesson-duration{font-size:.6875rem;color:#8186B8;background:rgba(104,109,241,.1);padding:3px 7px;border-radius:6px;font-weight:600;letter-spacing:.3px}.lesson-item:hover .lesson-duration{background:rgba(104,109,241,.15);color:#B6BAE0}.lesson-item.active .lesson-duration{background:rgba(255,255,255,.15);color:#ECEEFB}.lesson-saved-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0;color:#9DA1F7}.lesson-saved-icon{width:12px;height:12px;display:block}.lesson-item.active .lesson-saved-badge{color:#ECEEFB}.lesson-download-badge,.lesson-type-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border-radius:6px;background:rgba(104,109,241,.18);color:#9DA1F7;border:1px solid rgba(104,109,241,.3);flex-shrink:0}.lesson-download-badge svg,.lesson-type-badge svg{width:12px;height:12px;display:block}.free-preview-badge{border-radius:12px;background:rgba(78,212,157,.18);color:#4ED49D;border:1px solid rgba(78,212,157,.3)}.free-preview-badge,.read-free-badge{font-size:.625rem;padding:4px 10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.read-free-badge{display:inline-flex;align-items:center;gap:4px;border-radius:12px;background:rgba(235,189,139,.2);color:#EBBD8B;border:1px solid rgba(235,189,139,.4)}.read-free-badge svg{flex-shrink:0}.video-text-badge{display:inline-flex;align-items:center;gap:4px;font-size:.625rem;padding:4px 10px;border-radius:12px;background:rgba(104,109,241,.2);color:#9DA1F7;font-weight:700;text-transform:uppercase;letter-spacing:.5px;border:1px solid rgba(104,109,241,.4)}.video-text-badge svg{flex-shrink:0}.lesson-completed-icon{width:18px;height:18px;flex-shrink:0;color:#4ED49D;filter:drop-shadow(0 2px 4px rgba(78,212,157,.4));animation:checkmark-pop .4s cubic-bezier(.68,-.55,.265,1.55)}@keyframes checkmark-pop{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.chapter-completed-icon{width:20px;height:20px;flex-shrink:0;color:#4ED49D;filter:drop-shadow(0 2px 6px rgba(78,212,157,.5))}.curriculum-content::-webkit-scrollbar{width:8px}.curriculum-content::-webkit-scrollbar-track{background:rgba(6,8,42,.4);border-radius:4px;margin:8px 0}.curriculum-content::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#686DF1,#C85EDF);border-radius:4px;border:2px solid rgba(6,8,42,.4);transition:all .3s ease}.curriculum-content::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#9DA1F7,#CE84CA);border-color:rgba(6,8,42,.6)}.curriculum-sidebar::-webkit-scrollbar{width:8px}.curriculum-sidebar::-webkit-scrollbar-track{background:rgba(6,8,42,.4);border-radius:4px}.curriculum-sidebar::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#686DF1,#C85EDF);border-radius:4px;border:2px solid rgba(6,8,42,.4)}.curriculum-sidebar::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#9DA1F7,#CE84CA)}.mobile-curriculum-toggle{display:none;align-items:center;justify-content:center;width:40px;height:40px;padding:0;flex:none;background:var(--dt-accent);border:1px solid var(--dt-accent);border-radius:10px;color:var(--dt-on-accent);cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.mobile-curriculum-toggle:hover{background:var(--dt-accent-hover);border-color:var(--dt-accent-hover)}.mobile-curriculum-toggle:active{transform:translateY(1px)}.mobile-curriculum-toggle svg{width:20px;height:20px}.curriculum-backdrop{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.7);z-index:999;opacity:0;transition:opacity .3s ease;pointer-events:none}.curriculum-backdrop.active{display:block;opacity:1;pointer-events:auto}.mux-error,.mux-loading{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;color:#C2CEED;background:rgba(13,17,48,.95);text-align:center;padding:32px}.mux-error{color:#ff6b6b}.video-end-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(13,17,48,.95);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:200}.video-end-content{max-width:480px;width:100%;background:rgba(31,35,66,.95);border-radius:20px;padding:40px;box-shadow:0 20px 60px rgba(0,0,0,.4);border:1px solid rgba(117,106,246,.3);text-align:center}.video-end-content h3{font-size:1.5rem;font-weight:700;color:#fff;margin:0 0 8px}.next-lesson-name{font-size:1rem;color:#F5F7FF;margin:0 0 32px;line-height:1.5}.video-end-continue-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 24px;background:rgba(46,213,115,.12);border:1px solid rgba(46,213,115,.3);border-radius:10px;color:#2ed573;cursor:pointer;transition:all .3s ease;font-size:1rem;font-weight:600}.video-end-continue-btn:hover{background:rgba(46,213,115,.2);border-color:rgba(46,213,115,.5)}.lesson-lock{position:relative;width:100%;height:100%;min-height:60vh;overflow:hidden}.lesson-lock .mux-auth-btn{display:block;text-decoration:none;text-align:center}.video-end-continue-btn:disabled,.video-end-continue-btn:disabled:hover{opacity:.45;cursor:not-allowed;transform:none}.video-end-continue-btn svg{width:18px;height:18px;flex-shrink:0}.video-end-actions{display:flex;flex-direction:column;gap:12px}.video-end-rewatch-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 24px;background:transparent;border:1px solid rgba(255,255,255,.2);border-radius:10px;color:#C2CEED;cursor:pointer;transition:all .3s ease;font-size:.9375rem;font-weight:500}.video-end-rewatch-btn:hover{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.3);color:#fff}.video-end-rewatch-btn svg{width:18px;height:18px;flex-shrink:0}@media (max-width:1512px){.curriculum-sidebar,.curriculum-sidebar.collapsed .sidebar-panel{width:320px}}@media (max-width:1024px){.lesson-viewer{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.curriculum-sidebar{position:absolute;left:0;top:0;height:100%;width:340px;z-index:1000;transform:translateX(-100%);transition:transform .3s ease;grid-column:unset;grid-row:unset;pointer-events:auto}.curriculum-sidebar.mobile-open{transform:translateX(0);pointer-events:auto}.curriculum-sidebar.collapsed{width:340px;overflow:hidden;z-index:1000}.curriculum-sidebar.collapsed .sidebar-rail{display:none}.curriculum-sidebar.collapsed .sidebar-panel{position:static;width:auto;flex:1;transform:none;opacity:1;visibility:visible;pointer-events:auto;box-shadow:none;border-right:none;transition:none}.sidebar-collapse-btn{display:none}.content-header{grid-column:1;grid-row:1;padding:25px 20px 12px;flex-wrap:wrap;height:auto;gap:12px;align-items:center;align-content:flex-start}.lesson-title-section{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}.mobile-curriculum-toggle{display:flex}.header-nav-cluster{display:none}.current-lesson-title{font-size:.9375rem;line-height:1.4}.current-chapter-name{font-size:.6875rem}.header-actions{width:100%;justify-content:center;flex-wrap:wrap;gap:8px;padding:12px 0 0;border-top:1px solid rgba(255,255,255,.08);margin-top:4px}.course-progress-pill{display:none}.lesson-content{grid-column:1;grid-row:2;display:flex;flex-direction:column}.video-section{width:100vw;flex-shrink:0}.current-lesson-title{font-size:1rem}.toggle-icon{width:14px;height:14px}.sidebar-navigation{padding:12px 16px;gap:8px}.nav-arrow-btn{padding:10px 12px;font-size:.8125rem}.nav-arrow-btn svg{width:16px;height:16px}.mark-complete-btn{padding:10px 12px;font-size:.8125rem}.mark-complete-btn svg{width:16px;height:16px}.certificate-btn{padding:10px 12px;font-size:.8125rem}.certificate-btn svg{width:16px;height:16px}}@media (max-width:768px){.curriculum-sidebar{width:90%;max-width:320px}.current-lesson-title{font-size:.875rem}.current-chapter-name{font-size:.6875rem}.toggle-btn{padding:0;width:40px;height:40px;gap:0;justify-content:center;flex-shrink:0;border-radius:10px}.toggle-btn.active{background:rgba(104,109,241,.25);border-color:#686DF1}.toggle-icon{width:18px;height:18px}.toggle-label,.toggle-status{display:none}.toggle-btn.active .toggle-icon{color:#ECEEFB}.toggle-btn:not(.active) .toggle-icon{color:#8186B8}.download-files-btn,.github-code-btn,.read-lesson-btn,.show-notes-btn{padding:0;width:40px;height:40px;gap:0;justify-content:center;flex-shrink:0;border-radius:10px}.download-files-btn span,.github-code-btn span,.read-lesson-btn span,.show-notes-btn span{display:none}.download-icon,.github-icon,.read-lesson-btn .read-icon,.show-notes-btn .notes-icon{width:18px;height:18px}.sidebar-navigation{padding:10px 12px;gap:6px}.nav-arrow-btn{padding:8px 10px;font-size:.75rem}.nav-arrow-btn svg{width:14px;height:14px}.nav-arrow-btn span{display:none}.mark-complete-btn{padding:8px 10px;font-size:.6875rem}.mark-complete-btn svg{width:14px;height:14px}.certificate-btn{padding:8px 10px;font-size:.6875rem}.certificate-btn svg{width:14px;height:14px}}.course-completion-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;box-sizing:border-box}.course-completion-modal{background:var(--surface,#12164A);border:1px solid rgba(255,255,255,.16);border-radius:24px;max-width:560px;width:100%;box-shadow:0 20px 60px rgba(0,0,0,.5),0 0 0 1px rgba(255,255,255,.1);animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.course-completion-content{padding:48px 40px;text-align:center}.completion-icon{width:80px;height:80px;margin:0 auto 24px;background:var(--dt-accent);border-radius:50%;display:flex;align-items:center;justify-content:center;animation:iconPulse 1.5s ease-in-out infinite}@keyframes iconPulse{0%,to{transform:scale(1);box-shadow:0 0 0 0 rgba(117,106,246,.7)}50%{transform:scale(1.05);box-shadow:0 0 0 15px rgba(117,106,246,0)}}.completion-icon svg{width:48px;height:48px;stroke-width:3;color:#fff}.course-completion-content h2{font-size:2rem;font-weight:700;color:#fff;margin:0 0 16px}.completion-message{font-size:1.125rem;color:#C2C6E8;margin:0 0 12px;line-height:1.5}.completion-message strong{color:#fff;font-weight:600}.completion-submessage{font-size:.9375rem;color:#8E94B8;margin:0 0 32px;line-height:1.6}.completion-actions{display:flex;gap:12px;flex-direction:column}.completion-actions .btn-primary,.completion-actions .btn-secondary{padding:14px 24px;border-radius:12px;font-size:1rem;font-weight:600;border:none;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}.completion-actions .btn-primary{background:var(--dt-accent);border:1px solid var(--dt-accent);color:var(--dt-on-accent);box-shadow:var(--dt-glow-accent)}.completion-actions .btn-primary:hover{background:var(--dt-accent-hover);border-color:var(--dt-accent-hover)}.completion-actions .btn-primary:active{transform:translateY(1px)}.completion-actions .btn-primary svg{width:20px;height:20px;stroke-width:2}.completion-actions .btn-secondary{background:var(--surface-2,#181D58);color:var(--text,#ECEEFB);border:1px solid var(--line-strong,rgba(255,255,255,.16))}.completion-actions .btn-secondary:hover{background:var(--surface-3,#1E2466)}@media (max-width:768px){.course-completion-modal{max-width:100%;border-radius:20px}.course-completion-content{padding:36px 28px}.course-completion-content h2{font-size:1.625rem}.completion-message{font-size:1rem}.completion-submessage{font-size:.875rem}}@media (max-width:480px){.course-completion-overlay{padding:16px}.course-completion-content{padding:32px 24px}.completion-icon{width:64px;height:64px;margin-bottom:20px}.completion-icon svg{width:36px;height:36px}.course-completion-content h2{font-size:1.375rem;margin-bottom:12px}.completion-message{font-size:.9375rem}.completion-submessage{font-size:.8125rem;margin-bottom:24px}.completion-actions .btn-primary,.completion-actions .btn-secondary{padding:12px 20px;font-size:.875rem}}.congratulations-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(6,8,42,.82);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;animation:fadeIn .3s ease}.congratulations-modal{background:#12164A;border-radius:18px;max-width:540px;width:100%;padding:48px 40px;position:relative;border:1px solid rgba(255,255,255,.08);box-shadow:0 32px 80px -24px rgba(0,0,0,.6);animation:slideUp .4s ease;text-align:center}@keyframes slideUp{0%{transform:translateY(40px);opacity:0}to{transform:translateY(0);opacity:1}}.close-congrats-btn{position:absolute;top:20px;right:20px;width:36px;height:36px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;padding:0}.close-congrats-btn:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.16)}.close-congrats-btn svg{width:18px;height:18px;color:#B6BAE0}.congrats-icon{width:100px;height:100px;margin:0 auto 24px;animation:celebrationPulse 2s ease-in-out infinite}@keyframes celebrationPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.congrats-icon svg{width:100%;height:100%}.congrats-title{font-size:2.25rem;font-weight:700;color:#ECEEFB;margin:0 0 16px;background:linear-gradient(95deg,#DE8569,#C85EDF 55%,#686DF1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.congrats-message{font-size:1.125rem;color:#B6BAE0;margin:0 0 32px;line-height:1.6}.congrats-message strong{color:#ECEEFB;font-weight:600}.congrats-actions{margin-bottom:32px}.congrats-certificate-btn{width:100%;padding:16px 28px;background:var(--dt-accent);color:var(--dt-on-accent);border:1px solid var(--dt-accent);border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s,transform .12s;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:var(--dt-glow-accent)}.congrats-certificate-btn:hover{background:var(--dt-accent-hover);border-color:var(--dt-accent-hover)}.congrats-certificate-btn:active{transform:translateY(1px)}.congrats-certificate-btn svg{width:20px;height:20px;stroke-width:2}.congrats-download-row{display:flex;gap:10px;margin-top:10px}.congrats-download-btn{flex:1 1 0;padding:12px 18px;background:rgba(255,255,255,.06);color:#ECEEFB;border:1px solid rgba(255,255,255,.08);border-radius:12px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.congrats-download-btn:hover:not(:disabled){background:rgba(255,255,255,.12)}.congrats-download-btn:disabled{opacity:.6;cursor:default}.congrats-download-error{margin:8px 0 0;font-size:.82rem;color:#e5484d}.congrats-share{padding-top:24px;border-top:1px solid rgba(255,255,255,.08)}.congrats-share-label{font-size:.875rem;color:#8186B8;margin:0 0 16px;font-weight:500}.congrats-share-buttons{display:flex;gap:12px;justify-content:center}.congrats-share-btn{width:48px;height:48px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;padding:0}.congrats-share-btn svg{width:20px;height:20px}.congrats-share-btn.linkedin{color:#0077B5}.congrats-share-btn.linkedin:hover{background:rgba(0,119,181,.15);border-color:rgba(0,119,181,.3)}.congrats-share-btn.twitter{color:#1DA1F2}.congrats-share-btn.twitter:hover{background:rgba(29,161,242,.15);border-color:rgba(29,161,242,.3)}.congrats-share-btn.facebook{color:#1877F2}.congrats-share-btn.facebook:hover{background:rgba(24,119,242,.15);border-color:rgba(24,119,242,.3)}@media (max-width:768px){.congratulations-modal{max-width:100%;padding:40px 32px;border-radius:20px}.congrats-icon{width:80px;height:80px;margin-bottom:20px}.congrats-title{font-size:1.75rem}.congrats-message{font-size:1rem}.congrats-certificate-btn{padding:14px 24px;font-size:.9375rem}}@media (max-width:480px){.congratulations-overlay{padding:16px;width:auto;right:0;bottom:0}.congratulations-modal{padding:36px 24px}.congrats-icon{width:70px;height:70px;margin-bottom:16px}.congrats-title{font-size:1.5rem;margin-bottom:12px}.congrats-message{font-size:.9375rem;margin-bottom:24px}.congrats-certificate-btn{padding:12px 20px;font-size:.875rem}.congrats-share-label{font-size:.8125rem;margin-bottom:12px}.congrats-share-btn{width:44px;height:44px}.congrats-share-btn svg{width:18px;height:18px}}.trial-banner{position:relative;flex-shrink:0;background:linear-gradient(135deg,#1E2466,#181D58);border-top:2px solid #ebbd8b;border-bottom:2px solid #ebbd8b;padding:14px 24px;z-index:99;box-shadow:0 4px 24px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.08)}.trial-banner.collapsed{padding:0;border-top-width:0;box-shadow:none}.trial-banner.collapsed .trial-banner-content{justify-content:flex-end}.trial-banner.collapsed .trial-banner-info,.trial-banner.collapsed .trial-upgrade-btn{display:none}.trial-banner.collapsed .trial-banner-toggle{transform:rotate(180deg);background:transparent;border-width:0;border-radius:0;padding:3px 20px}.trial-banner-toggle{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:6px;padding:6px 10px;cursor:pointer;color:#ECEEFB;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.trial-banner-toggle:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.24)}.trial-banner-toggle svg{width:18px;height:18px;transition:transform .3s ease}.trial-banner-content{display:flex;align-items:center;justify-content:space-between;max-width:1200px;margin:0 auto;gap:16px}.trial-banner-info{display:flex;align-items:center;gap:12px}.trial-banner .trial-icon{width:28px;height:28px;color:#EBBD8B;flex-shrink:0;filter:drop-shadow(0 0 4px rgba(235,189,139,.5))}.trial-banner-text{display:flex;flex-direction:row;align-items:center;gap:12px}.trial-label{font-size:.8125rem;font-weight:700;color:#06082A;background:linear-gradient(135deg,#EBBD8B,#DE8569);padding:5px 12px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 8px rgba(222,133,105,.4)}.trial-time{font-size:.9375rem;color:#ECEEFB;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.3)}.trial-upgrade-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:#EBBD8B;color:#2B1A05;border:1px solid #ebbd8b;border-radius:6px;font-size:.875rem;font-weight:700;text-decoration:none;transition:background-color .15s ease,border-color .15s ease;flex-shrink:0}.trial-upgrade-btn:hover{background:#F0CA9F;border-color:#F0CA9F;color:#2B1A05}.trial-upgrade-btn svg{width:16px;height:16px}@media (max-width:768px){.trial-banner-content{flex-direction:column;gap:12px;text-align:center}.trial-banner-info{justify-content:center}}.trial-activate-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(6,8,42,.82);display:flex;align-items:center;justify-content:center;z-index:10001;backdrop-filter:blur(8px)}.trial-activate-content{background:#12164A;border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:40px;max-width:480px;width:90%;text-align:center;position:relative;box-shadow:0 32px 80px -24px rgba(0,0,0,.6)}.trial-activate-close{position:absolute;top:16px;right:16px;background:none;border:none;color:#8186B8;font-size:1.75rem;cursor:pointer;padding:4px 8px;line-height:1;transition:color .2s ease}.trial-activate-close:hover{color:#ECEEFB}.trial-activate-icon{margin-bottom:24px}.trial-activate-icon svg{width:80px;height:80px}.trial-activate-title{font-size:1.75rem;font-weight:700;color:#ECEEFB;margin:0 0 12px}.trial-activate-message{font-size:1rem;color:#B6BAE0;margin:0 0 24px;line-height:1.5}.trial-activate-benefits{background:rgba(78,212,157,.1);border:1px solid rgba(78,212,157,.2);border-radius:14px;padding:20px;margin-bottom:24px;text-align:left}.trial-activate-benefits p{font-size:.875rem;color:#4ED49D;font-weight:600;margin:0 0 12px}.trial-activate-benefits ul{list-style:none;margin:0;padding:0}.trial-activate-benefits li{display:flex;align-items:center;gap:10px;font-size:.875rem;color:#ECEEFB;margin-bottom:8px}.trial-activate-benefits li:last-child{margin-bottom:0}.trial-activate-benefits li svg{width:16px;height:16px;flex-shrink:0}.trial-activate-actions{display:flex;gap:12px;justify-content:center;margin-bottom:16px}.trial-activate-cancel{padding:14px 28px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:8px;color:#B6BAE0;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease}.trial-activate-cancel:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.24)}.trial-activate-confirm{padding:14px 28px;background:var(--dt-accent);border:1px solid var(--dt-accent);border-radius:8px;color:var(--dt-on-accent);font-size:.9375rem;font-weight:700;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:8px;box-shadow:var(--dt-glow-accent)}.trial-activate-confirm:hover:not(:disabled){background:var(--dt-accent-hover);border-color:var(--dt-accent-hover)}.trial-activate-confirm:active:not(:disabled){transform:translateY(1px)}.trial-activate-confirm:disabled{opacity:.7;cursor:not-allowed}.trial-activate-confirm .btn-loading{display:inline-flex;align-items:center;gap:8px}.trial-activate-confirm .spinner{width:18px;height:18px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.trial-activate-note{font-size:.75rem;color:#8186B8;margin:0}button.trial-upgrade-btn{cursor:pointer}.chapter-trial-badge{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono,"JetBrains Mono",ui-monospace,monospace);font-size:.6875rem;font-weight:700;color:var(--dt-trial-text);background:var(--dt-trial-bg);border:1px solid var(--dt-trial-line);box-shadow:var(--dt-trial-glow);padding:3px 9px;border-radius:999px;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;margin-left:8px;flex-shrink:0}.chapter-locked-icon{width:16px;height:16px;color:#8186B8;margin-left:8px;flex-shrink:0}.lesson-item.trial-locked{opacity:.6}.lesson-item.trial-locked .lesson-name{color:#8186B8}.lesson-locked-icon{width:14px;height:14px;color:#EBBD8B;flex-shrink:0;margin-right:4px}.trial-access-indicator{position:absolute;top:16px;left:16px;background:var(--dt-trial-bg);border:1px solid var(--dt-trial-line);border-radius:999px;padding:3px 9px;display:inline-flex;align-items:center;gap:6px;z-index:10;font-family:var(--mono,"JetBrains Mono",ui-monospace,monospace);font-size:.6875rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;box-shadow:var(--dt-trial-glow);color:var(--dt-trial-text)}.trial-access-indicator svg{width:16px;height:16px;color:currentColor;flex-shrink:0}.trial-access-indicator span{color:inherit}.progression-display{position:relative;display:flex;align-items:center}.progression-tooltip{position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%);padding:8px 12px;background:rgba(10,14,57,.98);border:1px solid rgba(255,255,255,.08);border-radius:10px;font-size:.75rem;line-height:1.4;color:#B6BAE0;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;z-index:1000;box-shadow:0 24px 60px -24px rgba(0,0,0,.6);pointer-events:none}.progression-tooltip.xp-ready{color:#4ED49D}.progression-display:hover .progression-tooltip{opacity:1;visibility:visible}.progression-display-link{position:relative;display:flex;align-items:center;gap:7px;padding:4px 8px 4px 4px;background:#12164A;border:1px solid rgba(255,255,255,.08);border-radius:999px;text-decoration:none;transition:all .2s;overflow:hidden}.progression-display-link:hover{background:#181D58;border-color:rgba(255,255,255,.16)}.watch-progress-fill{position:absolute;left:0;top:0;bottom:0;width:0;background:rgba(104,109,241,.3);transition:width 1s linear;pointer-events:none;z-index:0}.watch-progress-fill.xp-ready{background:rgba(104,109,241,.45)}.progression-display-link>:not(.watch-progress-fill){position:relative;z-index:1}.xp-level-badge{width:24px;height:24px;background:var(--dt-accent);border-radius:50%;justify-content:center;font-weight:800;font-size:.75rem;color:#fff;flex:none}.xp-info,.xp-level-badge{display:flex;align-items:center}.xp-amount{font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:700;letter-spacing:-.01em;color:#ECEEFB}.xp-progress-bar{display:none}.xp-progress-fill{height:100%;background:var(--dt-accent);transition:width .3s}.streak-display{display:flex;align-items:center;gap:4px;padding:0 3px 0 7px;margin-left:2px;color:#DE8569;border-left:1px solid rgba(255,255,255,.08);transition:all .2s}.streak-display.streak-active{color:var(--dt-streak-text)}.streak-display.streak-at-risk{color:var(--dt-danger-text)}.streak-display.streak-zero{color:#8186B8}.streak-display.streak-at-risk:after{content:"!";flex:none;font-size:.5625rem;font-weight:800;line-height:1;color:#FFD7DD;background:rgba(242,107,127,.28);border:1px solid rgba(242,107,127,.55);border-radius:50%;width:13px;height:13px;display:flex;align-items:center;justify-content:center;margin-left:1px;animation:streakRiskPulse 1.6s ease-in-out infinite}.streak-icon{display:block;width:14px;height:14px;flex:none}.streak-count{font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:700;color:inherit}@keyframes streakRiskPulse{0%,to{opacity:.72;transform:scale(1)}50%{opacity:1;transform:scale(1.13)}}.xp-award-popup{position:fixed;bottom:calc(24px + env(safe-area-inset-bottom, 0px));right:24px;top:auto;left:auto;display:flex;align-items:center;gap:14px;padding:13px 22px 13px 13px;border-radius:18px;z-index:10000;pointer-events:none;isolation:isolate;background:linear-gradient(145deg,rgba(43,38,82,.82),rgba(20,19,38,.9));-webkit-backdrop-filter:blur(14px) saturate(150%);backdrop-filter:blur(14px) saturate(150%);box-shadow:0 20px 44px -14px rgba(0,0,0,.65),0 8px 20px -10px rgba(117,106,246,.55),inset 0 1px 0 rgba(255,255,255,.08);animation:xpToastIn .5s cubic-bezier(.16,1,.3,1),xpToastOut .4s ease-in 2.1s forwards}.xp-award-popup:before{padding:1.5px;background:var(--dt-gradient-brand);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude}.xp-award-popup:after,.xp-award-popup:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none}.xp-award-popup:after{background:linear-gradient(105deg,transparent 32%,rgba(255,255,255,.16) 48%,transparent 64%);background-size:250% 100%;background-position:160% 0;animation:xpShimmer 1.1s ease-out .4s}.xp-award-icon{position:relative;flex:0 0 auto;width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#6166E3;box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 6px 14px -6px rgba(104,109,241,.6);animation:xpIconPop .6s cubic-bezier(.34,1.56,.64,1) .1s backwards}.xp-award-icon svg{width:21px;height:21px;color:#fff;filter:drop-shadow(0 1px 1.5px rgba(40,20,80,.4))}.xp-award-text{display:flex;flex-direction:column;gap:2px;line-height:1.12}.xp-award-amount{display:flex;align-items:baseline;gap:4px;font-size:1.45rem;font-weight:800;letter-spacing:-.015em;color:#fff;background:none;-webkit-background-clip:initial;background-clip:initial;-webkit-text-fill-color:unset}.xp-award-unit{font-size:.8rem;font-weight:700;letter-spacing:.04em}.xp-award-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.58)}.xp-award-label-icon{width:11px;height:11px;vertical-align:-1px}.xp-award-label.xp-award-freeze{color:#93c5fd;margin-top:2px}@keyframes xpToastIn{0%{opacity:0;transform:translateY(26px) scale(.92)}60%{opacity:1}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes xpToastOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(14px) scale(.96)}}@keyframes xpShimmer{to{background-position:-130% 0}}@keyframes xpIconPop{0%{opacity:0;transform:scale(.4) rotate(-25deg)}to{opacity:1;transform:scale(1) rotate(0)}}@media (max-width:768px){.xp-award-popup{right:12px;bottom:calc(12px + env(safe-area-inset-bottom, 0px));padding:11px 18px 11px 11px;gap:12px;max-width:calc(100vw - 24px)}.xp-award-icon{width:34px;height:34px}.xp-award-icon svg{width:19px;height:19px}.xp-award-amount{font-size:1.3rem}}@media (prefers-reduced-motion:reduce){.xp-award-popup{animation:xpFadeIn .2s ease-out,xpToastOut .3s ease-in 2.2s forwards}.xp-award-icon,.xp-award-popup:after{animation:none}}@keyframes xpFadeIn{0%{opacity:0}to{opacity:1}}.lesson-rewards{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin:20px 0;animation:rewardsSlideIn .4s ease-out}@keyframes rewardsSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.reward-item{display:flex;align-items:center;gap:8px;padding:10px 18px;background:color-mix(in oklab,#686DF1 14%,#12164A);border:1px solid color-mix(in oklab,#686df1 38%,transparent);border-radius:24px;animation:rewardPop .3s ease-out backwards}.reward-item:nth-child(2){animation-delay:.1s}.reward-item:nth-child(3){animation-delay:.2s}@keyframes rewardPop{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.reward-icon{font-size:1.25rem}.reward-icon img,.reward-icon svg{width:18px;height:18px;display:block}.reward-value{font-size:1rem;font-weight:600;color:#fff}.xp-reward{background:color-mix(in oklab,#686DF1 14%,#12164A);border-color:color-mix(in oklab,#686DF1 38%,transparent);color:#A9ACF8}.streak-reward{background:var(--dt-trial-bg);border-color:var(--dt-trial-line);color:var(--dt-trial-text)}.level-up-reward{background:var(--dt-free-bg);border-color:var(--dt-free-line);color:var(--dt-free-text)}.freeze-reward{background:color-mix(in oklab,#93c5fd 12%,#12164A);border-color:rgba(96,165,250,.35);color:#93c5fd}.gem-reward,.xp-award-label.xp-award-gem-milestone{color:#E3B7F0}.gem-reward{background:color-mix(in oklab,#CC7DDA 12%,#12164A);border-color:rgba(204,125,218,.35)}.potential-xp-display{display:flex;align-items:center;justify-content:center;gap:8px;margin:16px 0;padding:10px 20px;background:color-mix(in oklab,#686DF1 14%,#12164A);border:1px solid color-mix(in oklab,#686df1 38%,transparent);border-radius:24px}.potential-xp-text{font-size:.875rem;color:rgba(255,255,255,.7)}.potential-xp-value{font-size:1rem;font-weight:600;color:#b4a7f5}.autocomplete-rewards-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(13,17,48,.9);display:flex;align-items:center;justify-content:center;z-index:100;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.autocomplete-rewards-content{text-align:center;padding:32px}.autocomplete-rewards-title{font-size:1.75rem;font-weight:700;color:#fff;margin-bottom:24px;animation:slideDown .4s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.autocomplete-next-hint{margin-top:24px;display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:999px;font-size:.875rem;font-weight:500;color:rgba(245,247,255,.85)}.autocomplete-next-hint .next-up-label{color:rgba(255,255,255,.55)}.autocomplete-next-hint .next-up-name{color:#fff;font-weight:600}.autocomplete-spinner{width:16px;height:16px;flex-shrink:0;color:#756af6;animation:spin .8s linear infinite}@keyframes pulse{0%,to{opacity:.6}50%{opacity:1}}.xp-warning-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(6,8,42,.82);display:flex;align-items:center;justify-content:center;z-index:10001;animation:fadeIn .2s ease-out}.xp-warning-content{background:#12164A;border:1px solid rgba(222,133,105,.4);border-radius:18px;padding:32px;max-width:420px;text-align:center;box-shadow:0 32px 80px -24px rgba(0,0,0,.6);animation:slideDown .3s ease-out}.xp-warning-icon{font-size:3rem;margin-bottom:16px}.xp-warning-title{font-size:1.375rem;font-weight:700;color:#ECEEFB;margin-bottom:12px}.xp-warning-message{font-size:.875rem;color:#B6BAE0;line-height:1.6;margin-bottom:20px}.xp-warning-progress{background:rgba(6,8,42,.5);border-radius:10px;padding:12px 16px;margin-bottom:24px;display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.xp-warning-progress-label{font-size:.8125rem;color:#8186B8}.xp-warning-progress-value{font-size:1rem;font-weight:700;color:#EBBD8B}.xp-warning-progress-required{font-size:.75rem;color:#8186B8}.xp-warning-actions{display:flex;gap:12px;justify-content:center}.xp-warning-btn{padding:12px 24px;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;border:none}.xp-warning-cancel{background:var(--dt-accent);border:1px solid var(--dt-accent);color:var(--dt-on-accent);box-shadow:var(--dt-glow-accent)}.xp-warning-cancel:hover{background:var(--dt-accent-hover);border-color:var(--dt-accent-hover)}.xp-warning-cancel:active{transform:translateY(1px)}.xp-warning-confirm{background:rgba(255,255,255,.06);color:#B6BAE0;border:1px solid rgba(255,255,255,.16)}.xp-warning-confirm:hover{background:rgba(255,255,255,.12);color:#ECEEFB}.streak-started-popup{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--surface,#12164A);border:1px solid color-mix(in oklab,#de8569 42%,transparent);box-shadow:0 24px 48px -16px rgba(0,0,0,.5),0 0 44px -10px rgba(222,133,105,.35);padding:32px 48px;border-radius:16px;z-index:10000;text-align:center;animation:xpPopIn .3s ease-out,xpPopOut .3s ease-in 2.5s forwards}.streak-icon-large{margin-bottom:12px}.streak-icon-large svg{width:48px;height:48px}.streak-message{font-size:1.5rem;font-weight:700;color:var(--text,#ECEEFB)}.streak-submessage{font-size:.875rem;color:var(--text-2,#B6BAE0);margin-top:8px}.level-up-popup{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--surface,#12164A);border:1px solid rgba(255,255,255,.16);padding:48px 64px;border-radius:20px;z-index:10001;text-align:center;box-shadow:0 24px 48px -16px rgba(0,0,0,.5),0 0 44px -8px rgba(104,109,241,.35);animation:levelUpIn .5s ease-out,levelUpOut .5s ease-in 3.5s forwards}.level-up-badge{width:100px;height:100px;background:var(--dt-accent);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;font-size:3rem;font-weight:800;color:#fff;font-family:var(--mono,ui-monospace,monospace);box-shadow:var(--dt-glow-accent);animation:levelBadgePulse .6s ease-in-out 3}.level-up-message{font-size:2.25rem;font-weight:800;color:#ECEEFB;background:linear-gradient(95deg,#DE8569,#C85EDF 55%,#686DF1);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-transform:uppercase;letter-spacing:2px;margin-bottom:8px}.level-up-submessage{font-size:1rem;color:rgba(255,255,255,.9)}.level-up-gems{display:inline-flex;align-items:center;gap:6px;margin-top:14px;padding:4px 12px;border-radius:14px;background:color-mix(in oklab,#CC7DDA 12%,#12164A);border:1px solid rgba(204,125,218,.35);color:#E3B7F0;font-family:var(--mono,ui-monospace,monospace);font-size:.85rem;font-weight:700}.level-up-gems-icon{width:14px;height:14px}.gem-drop-popup{position:fixed;bottom:calc(104px + env(safe-area-inset-bottom, 0px));right:24px;gap:14px;padding:15px 24px 15px 15px;border-radius:18px;z-index:10002;pointer-events:none;isolation:isolate;background:linear-gradient(145deg,rgba(58,38,82,.88),rgba(24,19,38,.92));-webkit-backdrop-filter:blur(14px) saturate(150%);backdrop-filter:blur(14px) saturate(150%);border:1.5px solid rgba(204,125,218,.5);box-shadow:0 20px 44px -14px rgba(0,0,0,.65),0 8px 24px -8px rgba(204,125,218,.55),inset 0 1px 0 rgba(255,255,255,.08);animation:xpToastIn .5s cubic-bezier(.16,1,.3,1),xpToastOut .4s ease-in 3.6s forwards}.gem-drop-icon,.gem-drop-popup{display:flex;align-items:center}.gem-drop-icon{justify-content:center;width:46px;height:46px;border-radius:14px;background:rgba(204,125,218,.14)}.gem-drop-icon img,.gem-drop-icon svg{width:30px;height:30px}.gem-drop-amount{display:flex;align-items:baseline;gap:6px;font-family:var(--mono,ui-monospace,monospace);font-size:1.5rem;font-weight:800;color:#fff}.gem-drop-unit{font-size:.95rem;font-weight:700;background:linear-gradient(95deg,#DE8569,#C85EDF 55%,#686DF1);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.gem-drop-label{font-size:.8rem;color:rgba(255,255,255,.75)}@media (prefers-reduced-motion:reduce){.gem-drop-popup{animation:none}}@keyframes levelUpIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.5) rotate(-10deg)}to{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0deg)}}@keyframes levelUpOut{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(1.1)}}@keyframes levelBadgePulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.streak-at-risk-popup{position:fixed;top:20px;right:20px;background:var(--surface,#12164A);border:1px solid color-mix(in oklab,#de8569 42%,transparent);padding:20px 24px;border-radius:12px;z-index:10000;text-align:center;box-shadow:0 24px 48px -16px rgba(0,0,0,.5),0 0 36px -6px rgba(235,189,139,.4),0 0 14px -4px rgba(222,133,105,.35);animation:slideInRight .3s ease-out;max-width:320px}.streak-risk-icon{margin-bottom:8px}.streak-risk-icon svg{width:32px;height:32px}.streak-risk-message{font-size:1rem;font-weight:700;color:var(--text,#ECEEFB);margin-bottom:4px}.streak-risk-submessage{font-size:.8125rem;color:var(--text-2,#B6BAE0);margin-bottom:12px}.streak-risk-dismiss{background:var(--surface-2,#181D58);border:1px solid var(--line-strong,rgba(255,255,255,.16));color:var(--text,#ECEEFB);padding:8px 20px;border-radius:6px;cursor:pointer;font-size:.8125rem;font-weight:600;transition:all .2s}.streak-risk-dismiss:hover{background:var(--surface-3,#1E2466)}@keyframes slideInRight{0%{opacity:0;transform:translateX(100px)}to{opacity:1;transform:translateX(0)}}@keyframes xpPopIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.8)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes xpPopOut{0%{opacity:1}to{opacity:0}}@media (max-width:768px){.progression-display-link{padding:4px 10px;gap:8px}.xp-level-badge{width:26px;height:26px;font-size:.6875rem}.xp-info{display:none}.streak-display{padding:3px 8px}.streak-icon{width:14px;height:14px}.streak-count{font-size:.6875rem}}.achievement-toast-container{position:fixed;top:100px;right:20px;z-index:10000;display:flex;flex-direction:column;gap:12px;pointer-events:none}.achievement-toast{background:var(--surface,#12164A);border:1px solid rgba(255,255,255,.16);border-radius:16px;padding:16px 20px;min-width:320px;max-width:400px;box-shadow:0 24px 48px -16px rgba(0,0,0,.5),-8px 8px 30px -10px rgba(104,109,241,.5),8px -8px 30px -10px rgba(200,94,223,.45),0 0 18px -8px rgba(222,133,105,.3);backdrop-filter:blur(10px);transform:translateX(120%);opacity:0;transition:all .4s cubic-bezier(.34,1.56,.64,1);pointer-events:auto}.achievement-toast.show{transform:translateX(0);opacity:1}.achievement-toast.hide{transform:translateX(120%);opacity:0}.achievement-toast-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.achievement-toast-label{font-size:.6875rem;font-weight:600;font-family:var(--mono,"JetBrains Mono",ui-monospace,monospace);text-transform:uppercase;letter-spacing:.08em;color:#EBBD8B}.achievement-toast-points{font-size:.875rem;font-weight:700;color:#F6BE85}.achievement-toast-gems{color:#E3B7F0}.achievement-toast-gems-dot{color:rgba(255,255,255,.35)}.achievement-toast-content{display:flex;gap:14px;align-items:flex-start}.achievement-toast-icon{width:48px;height:48px;border-radius:12px;flex-shrink:0;object-fit:cover}.achievement-toast-icon-default{background:radial-gradient(circle at 32% 22%,rgba(255,255,255,.1),transparent 58%),rgba(104,109,241,.13);border:1px solid rgba(104,109,241,.38);display:flex;align-items:center;justify-content:center}.achievement-toast-icon-default svg{width:26px;height:26px;color:#CC7DDA}.achievement-toast-info{flex:1;min-width:0}.achievement-toast-title{font-size:1rem;font-weight:700;color:#fff;margin-bottom:4px;line-height:1.2}.achievement-toast-desc{font-size:.8125rem;color:rgba(255,255,255,.7);line-height:1.4;margin-bottom:6px}.achievement-toast-rarity{font-size:.625rem;font-weight:700;font-family:var(--mono,"JetBrains Mono",ui-monospace,monospace);text-transform:uppercase;letter-spacing:.3px}@media (max-width:768px){.achievement-toast-container{top:auto;bottom:20px;right:10px;left:10px}.achievement-toast{min-width:auto;max-width:none;width:100%}}.zen-mode-btn.active{background:rgba(104,109,241,.25);border-color:#686DF1;color:#ECEEFB}.zen-mode-btn.active .toggle-label{color:#ECEEFB}.player-settings-btn.active{background:#181D58;border-color:rgba(255,255,255,.2);color:#ECEEFB}.player-settings-backdrop{position:fixed;inset:0;z-index:10005;background:rgba(4,6,26,.45)}.player-settings-popover{position:fixed;top:60px;right:14px;width:340px;max-width:calc(100vw - 28px);max-height:calc(100vh - 76px);overflow-y:auto;background:#12164A;border:1px solid rgba(255,255,255,.12);border-radius:14px;box-shadow:0 18px 48px rgba(2,4,20,.6);padding:14px 16px 16px;outline:none}.player-settings-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.player-settings-title{margin:0;font-size:.875rem;font-weight:800;letter-spacing:-.01em;color:#ECEEFB}.player-settings-close,.shortcut-sheet-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:none;border-radius:8px;color:#8186B8;cursor:pointer;transition:all .15s}.player-settings-close:hover,.shortcut-sheet-close:hover{background:#1E2466;color:#ECEEFB}.player-settings-close svg,.shortcut-sheet-close svg{width:16px;height:16px}.player-settings-group{padding:10px 0;border-top:1px solid rgba(255,255,255,.07)}.player-settings-group-title{margin:0 0 8px;font-family:JetBrains Mono,monospace;font-size:.625rem;font-weight:700;color:#8186B8;text-transform:uppercase;letter-spacing:.14em}.player-settings-options{display:flex;flex-wrap:wrap;gap:6px}.player-settings-option{padding:6px 12px;background:#1E2466;border:1px solid rgba(255,255,255,.08);border-radius:999px;color:#B6BAE0;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .15s}.player-settings-option:hover{background:#262D7A;color:#ECEEFB}.player-settings-option.active{background:#686DF1;border-color:#686DF1;color:#FFFFFF}.player-settings-select{padding:6px 28px 6px 12px;background:#1E2466 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23B6BAE0' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 10px center;border:1px solid rgba(255,255,255,.08);border-radius:999px;color:#B6BAE0;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .15s;appearance:none;-webkit-appearance:none}.player-settings-select:hover:not(:disabled){background-color:#262D7A;color:#ECEEFB}.player-settings-select.active{background-color:#686DF1;border-color:#686DF1;color:#FFFFFF}.player-settings-select:disabled{opacity:.45;cursor:not-allowed}.player-settings-select option{background:#1E2466;color:#ECEEFB}.player-settings-hint{margin:8px 0 0;font-size:.75rem;line-height:1.4;color:#8186B8}.player-settings-switch-row{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:8px 0;background:transparent;border:none;cursor:pointer;text-align:left}.player-settings-switch-text{display:flex;flex-direction:column;gap:2px;min-width:0}.player-settings-switch-label{font-size:.8125rem;font-weight:700;color:#ECEEFB}.player-settings-switch-desc{font-size:.75rem;line-height:1.35;color:#8186B8}.player-settings-switch{flex:none;width:38px;height:22px;border-radius:999px;background:#1E2466;border:1px solid rgba(255,255,255,.1);position:relative;transition:background .2s,border-color .2s}.player-settings-switch-knob{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#8186B8;transition:transform .2s,background .2s}.player-settings-switch.on{background:rgba(78,212,157,.25);border-color:rgba(78,212,157,.5)}.player-settings-switch.on .player-settings-switch-knob{transform:translateX(16px);background:#4ED49D}.player-settings-shortcuts-entry{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;margin-top:10px;padding:9px 12px;background:#1E2466;border:1px solid rgba(255,255,255,.08);border-radius:10px;color:#ECEEFB;font-size:.8125rem;font-weight:700;cursor:pointer;transition:all .15s}.player-settings-shortcuts-entry:hover{background:#262D7A;border-color:rgba(255,255,255,.16)}@media (max-width:1024px){.player-settings-shortcuts-entry{display:none}}.player-settings-shortcuts-entry kbd,.shortcut-sheet kbd{font-family:JetBrains Mono,monospace;font-size:.6875rem;font-weight:700;color:#ECEEFB;background:#12164A;border:solid rgba(255,255,255,.16);border-width:1px 1px 2px;border-radius:6px;padding:2px 7px;min-width:22px;text-align:center;display:inline-block;line-height:1.4}.shortcut-sheet kbd{background:#1E2466}.shortcut-sheet-backdrop{position:fixed;inset:0;z-index:10010;background:rgba(4,6,26,.6);display:flex;align-items:center;justify-content:center;padding:20px}.shortcut-sheet{width:640px;max-width:100%;max-height:calc(100vh - 40px);overflow-y:auto;background:#12164A;border:1px solid rgba(255,255,255,.12);border-radius:16px;box-shadow:0 24px 64px rgba(2,4,20,.7);padding:18px 20px 16px;outline:none}.shortcut-sheet-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.shortcut-sheet-title{margin:0;font-size:1rem;font-weight:800;letter-spacing:-.01em;color:#ECEEFB}.shortcut-sheet-groups{display:grid;grid-template-columns:1fr 1fr;gap:6px 28px}.shortcut-sheet-group-title{margin:8px 0 6px;font-family:JetBrains Mono,monospace;font-size:.625rem;font-weight:700;color:#8186B8;text-transform:uppercase;letter-spacing:.14em}.shortcut-sheet-list{list-style:none;margin:0;padding:0}.shortcut-sheet-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 0}.shortcut-sheet-label{font-size:.8125rem;color:#B6BAE0;min-width:0}.shortcut-sheet-keys{display:flex;align-items:center;gap:5px;flex:none}.shortcut-sheet-combo,.shortcut-sheet-combo-part{display:inline-flex;align-items:center;gap:3px}.shortcut-sheet-or,.shortcut-sheet-plus{font-size:.6875rem;color:#8186B8}.shortcut-sheet-footnote{margin:14px 0 0;padding-top:10px;border-top:1px solid rgba(255,255,255,.07);font-size:.75rem;line-height:1.4;color:#8186B8}@media (max-width:768px){.player-settings-popover{top:auto;right:0;left:0;bottom:0;width:100%;max-width:none;max-height:78vh;border-radius:16px 16px 0 0;border-left:none;border-right:none;border-bottom:none;padding-bottom:calc(16px + env(safe-area-inset-bottom))}.player-settings-option,.player-settings-select,.player-settings-shortcuts-entry,.player-settings-switch-row{min-height:40px}.shortcut-sheet-groups{grid-template-columns:1fr;gap:2px}.player-settings-btn{width:auto;padding:0 12px;gap:6px;border-radius:10px}.player-settings-btn .toggle-label{display:inline;font-size:.8125rem}}